#include "tree_sitter/parser.h" #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #ifdef _MSC_VER #pragma optimize("", off) #elif defined(__clang__) #pragma clang optimize off #elif defined(__GNUC__) #pragma GCC optimize ("O0") #endif #define LANGUAGE_VERSION 14 #define STATE_COUNT 8061 #define LARGE_STATE_COUNT 3241 #define SYMBOL_COUNT 475 #define ALIAS_COUNT 1 #define TOKEN_COUNT 229 #define EXTERNAL_TOKEN_COUNT 8 #define FIELD_COUNT 13 #define MAX_ALIAS_SEQUENCE_LENGTH 12 #define PRODUCTION_ID_COUNT 42 enum ts_symbol_identifiers { sym_identifier = 1, anon_sym_BOM = 2, sym_shebang = 3, aux_sym_escape_sequence_token1 = 4, aux_sym_escape_sequence_token2 = 5, aux_sym_escape_sequence_token3 = 6, aux_sym_escape_sequence_token4 = 7, aux_sym_escape_sequence_token5 = 8, sym_htmlentity = 9, sym_end_file = 10, sym_comment = 11, anon_sym_q_LBRACE = 12, anon_sym_RBRACE = 13, anon_sym_LBRACE = 14, anon_sym_SLASH = 15, anon_sym_SLASH_EQ = 16, anon_sym_DOT = 17, anon_sym_DOT_DOT = 18, anon_sym_DOT_DOT_DOT = 19, anon_sym_AMP = 20, anon_sym_AMP_EQ = 21, anon_sym_AMP_AMP = 22, anon_sym_PIPE = 23, anon_sym_PIPE_EQ = 24, anon_sym_PIPE_PIPE = 25, anon_sym_DASH = 26, anon_sym_DASH_EQ = 27, anon_sym_DASH_DASH = 28, anon_sym_PLUS = 29, anon_sym_PLUS_EQ = 30, anon_sym_PLUS_PLUS = 31, anon_sym_LT = 32, anon_sym_LT_EQ = 33, anon_sym_LT_LT = 34, anon_sym_LT_LT_EQ = 35, anon_sym_GT = 36, anon_sym_GT_EQ = 37, anon_sym_GT_GT_EQ = 38, anon_sym_GT_GT_GT_EQ = 39, anon_sym_GT_GT = 40, anon_sym_GT_GT_GT = 41, anon_sym_BANG = 42, anon_sym_BANG_EQ = 43, anon_sym_LPAREN = 44, anon_sym_RPAREN = 45, anon_sym_LBRACK = 46, anon_sym_RBRACK = 47, anon_sym_QMARK = 48, anon_sym_COMMA = 49, anon_sym_SEMI = 50, anon_sym_COLON = 51, anon_sym_DOLLAR = 52, anon_sym_EQ = 53, anon_sym_EQ_EQ = 54, anon_sym_STAR = 55, anon_sym_STAR_EQ = 56, anon_sym_PERCENT = 57, anon_sym_PERCENT_EQ = 58, anon_sym_CARET = 59, anon_sym_CARET_EQ = 60, anon_sym_CARET_CARET = 61, anon_sym_CARET_CARET_EQ = 62, anon_sym_TILDE = 63, anon_sym_TILDE_EQ = 64, anon_sym_AT = 65, anon_sym_EQ_GT = 66, anon_sym_POUND = 67, anon_sym_BANGin = 68, anon_sym_BANGis = 69, sym_bool = 70, sym_byte = 71, sym_ubyte = 72, sym_char = 73, sym_short = 74, sym_ushort = 75, sym_int = 76, sym_uint = 77, sym_long = 78, sym_ulong = 79, sym_cent = 80, sym_ucent = 81, sym_wchar = 82, sym_dchar = 83, sym_float = 84, sym_double = 85, sym_real = 86, sym_ifloat = 87, sym_idouble = 88, sym_ireal = 89, sym_cfloat = 90, sym_cdouble = 91, sym_creal = 92, sym_size_t = 93, sym_ptrdiff_t = 94, sym_string = 95, sym_cstring = 96, sym_dstring = 97, sym_wstring = 98, sym_noreturn = 99, sym_true = 100, sym_false = 101, sym_null = 102, sym_super = 103, sym_this = 104, sym_abstract = 105, sym_alias = 106, sym_align = 107, sym_asm = 108, sym_assert = 109, sym_auto = 110, sym_break = 111, sym_case = 112, sym_cast = 113, sym_catch = 114, sym_class = 115, sym_const = 116, sym_continue = 117, sym_debug = 118, sym_default = 119, sym_delegate = 120, sym_delete = 121, sym_deprecated = 122, sym_do = 123, sym_else = 124, sym_enum = 125, sym_export = 126, sym_extern = 127, sym_final = 128, sym_finally = 129, sym_for = 130, sym_foreach = 131, sym_foreach_reverse = 132, sym_function = 133, sym_goto = 134, sym_if = 135, sym_immutable = 136, sym_import = 137, sym_in = 138, sym_inout = 139, sym_interface = 140, sym_invariant = 141, sym_is = 142, sym_lazy = 143, sym_mixin = 144, sym_module = 145, sym_new = 146, sym_nothrow = 147, sym_out = 148, sym_override = 149, sym_package = 150, sym_pragma = 151, sym_private = 152, sym_protected = 153, sym_public = 154, sym_pure = 155, sym_ref = 156, sym_return = 157, sym_scope = 158, sym_shared = 159, sym_static = 160, sym_struct = 161, sym_switch = 162, sym_synchronized = 163, sym_template = 164, sym_throw = 165, sym_try = 166, sym_typeid = 167, sym_typeof = 168, sym_union = 169, sym_unittest = 170, sym_version = 171, sym_while = 172, sym_with = 173, sym_parameters_ = 174, sym_gshared = 175, sym_traits = 176, sym_vector = 177, sym_void = 178, anon_sym_C = 179, anon_sym_D = 180, anon_sym_Windows = 181, anon_sym_System = 182, anon_sym_Objective = 183, anon_sym_BQUOTE = 184, aux_sym_raw_string_token1 = 185, aux_sym_raw_string_token2 = 186, anon_sym_r_DQUOTE = 187, aux_sym_raw_string_token3 = 188, aux_sym_raw_string_token4 = 189, anon_sym_x_DQUOTE = 190, aux_sym_hex_string_token1 = 191, anon_sym_DQUOTE = 192, aux_sym_quoted_string_token1 = 193, anon_sym_DOLLAR_LPAREN = 194, anon_sym_i_BQUOTE = 195, aux_sym_interpolated_raw_string_token1 = 196, aux_sym_interpolated_raw_string_token2 = 197, anon_sym_DOLLAR_BQUOTE = 198, sym_interpolated_escape = 199, anon_sym_i_DQUOTE = 200, aux_sym_interpolated_quoted_string_token1 = 201, aux_sym_interpolated_quoted_string_token2 = 202, anon_sym_DOLLAR_DQUOTE = 203, anon_sym_iq_LBRACE = 204, aux_sym_char_literal_token1 = 205, anon_sym_SQUOTE = 206, anon_sym___DATE__ = 207, anon_sym___FILE__ = 208, anon_sym___FILE_FULL_PATH__ = 209, anon_sym___FUNCTION__ = 210, anon_sym___LINE__ = 211, anon_sym___MODULE__ = 212, anon_sym___PRETTY_FUNCTION__ = 213, anon_sym___TIME__ = 214, anon_sym___TIMESTAMP__ = 215, anon_sym___VENDOR__ = 216, anon_sym___VERSION__ = 217, anon_sym_exit = 218, anon_sym_success = 219, anon_sym_failure = 220, sym_directive = 221, sym_int_literal = 222, sym_float_literal = 223, sym__string = 224, sym_not_in = 225, sym_not_is = 226, sym__after_eof = 227, sym_error_sentinel = 228, sym_source_file = 229, sym__bom = 230, sym_escape_sequence = 231, sym_token_string = 232, aux_sym__token_string_tokens = 233, sym__token_string_token = 234, sym__token_no_braces = 235, sym_keyword = 236, sym_dollar = 237, sym_module_def = 238, sym_module_declaration = 239, sym_module_fqn = 240, sym_import_declaration = 241, sym__import_list = 242, sym_imported = 243, sym_import_bind = 244, sym_mixin_declaration = 245, sym__declaration = 246, sym__declaration2 = 247, sym_variable_declaration = 248, sym_declarator = 249, sym_bitfield_declarator = 250, sym_manifest_constant = 251, sym_manifest_declarator = 252, sym_storage_class = 253, sym__initializer = 254, sym_auto_declaration = 255, sym__auto_assignment = 256, sym_alias_declaration = 257, sym_alias_initializer = 258, sym_alias_reassign = 259, sym_type = 260, sym_type_ctor = 261, sym__type2 = 262, sym_vector_type = 263, sym__builtin_type = 264, sym__type_suffix = 265, sym__qualified_id = 266, sym_typeof_expression = 267, sym_attribute_declaration = 268, sym_align_attribute = 269, sym_deprecated_attribute = 270, sym__attribute = 271, sym_at_attribute = 272, sym__function_attribute_kwd = 273, sym_linkage_attribute = 274, sym__argument_list = 275, sym_arguments = 276, sym_named_argument = 277, sym__named_argument_list = 278, sym_named_arguments = 279, sym_pragma_declaration = 280, sym_pragma_statement = 281, sym_pragma_expression = 282, sym_expression_list = 283, sym_expression = 284, sym__expr = 285, sym_ternary_expression = 286, sym_call_expression = 287, sym_primary_expression = 288, sym__primary_expr = 289, sym_index_expression = 290, sym_index = 291, sym_assignment_expression = 292, sym_binary_expression = 293, sym_logical_or_expression = 294, sym_logical_and_expression = 295, sym_or_expression = 296, sym_xor_expression = 297, sym_and_expression = 298, sym_equal_expression = 299, sym_rel_expression = 300, sym_identity_expression = 301, sym_add_expression = 302, sym_mul_expression = 303, sym_shift_expression = 304, sym_power_expression = 305, sym_postfix_expression = 306, sym_unary_expression = 307, sym__unary_expr = 308, sym_property_expression = 309, sym_cast_expression = 310, sym_cast_qualifier = 311, sym_delete_expression = 312, sym_throw_expression = 313, sym_assert_expression = 314, sym_assert_arguments = 315, sym_mixin_expression = 316, sym_import_expression = 317, sym_new_expression = 318, sym_typeid_expression = 319, sym_is_expression = 320, sym_type_specialization = 321, sym_raw_string = 322, sym_hex_string = 323, sym_quoted_string = 324, sym_interpolation_expression = 325, sym_interpolated_raw_string = 326, sym_interpolated_quoted_string = 327, sym_interpolated_token_string = 328, aux_sym__i_token_string_tokens = 329, sym_string_literal = 330, sym_char_literal = 331, sym_array_literal = 332, sym__array_member_init = 333, sym_function_literal = 334, sym__parameter_with_attributes = 335, sym__parameter_with_member_attributes = 336, sym_special_keyword = 337, sym__statement = 338, aux_sym__declarations_and_statements = 339, sym__declaration_or_statement = 340, sym_scope_statement = 341, sym__statement_no_case_no_default = 342, sym_labeled_statement = 343, sym_label = 344, sym_block_statement = 345, sym_expression_statement = 346, sym_if_statement = 347, sym_if_condition = 348, sym_while_statement = 349, sym_do_statement = 350, sym_for_statement = 351, sym__foreach = 352, sym_foreach_statement = 353, sym_foreach_type = 354, sym_switch_statement = 355, sym_case_statement = 356, sym_final_switch_statement = 357, sym_continue_statement = 358, sym_break_statement = 359, sym_return_statement = 360, sym_goto_statement = 361, sym_with_statement = 362, sym_synchronized_statement = 363, sym_try_statement = 364, sym_catch_statement = 365, sym_finally_statement = 366, sym_scope_guard_statement = 367, sym_asm_statement = 368, sym_asm_inline = 369, sym_struct_declaration = 370, sym_union_declaration = 371, sym_aggregate_body = 372, sym_aggregate_initializer = 373, sym_member_initializer = 374, sym_postblit = 375, sym_invariant_declaration = 376, sym_class_declaration = 377, sym__base_class_list = 378, sym_base_class = 379, sym_constructor = 380, sym_destructor = 381, sym_alias_this = 382, sym_interface_declaration = 383, sym_enum_declaration = 384, sym__enum_body = 385, sym__enum_member_attribute = 386, sym_enum_member = 387, sym_anonymous_enum_declaration = 388, sym_anonymous_enum_member = 389, sym_function_declaration = 390, sym_parameters = 391, sym__parameters = 392, sym_parameter = 393, sym_parameter_attribute = 394, sym_ellipses = 395, aux_sym__variadic_arguments_attributes = 396, sym_variadic_arguments_attribute = 397, sym__function_attribute = 398, sym_member_function_attribute = 399, sym_function_body = 400, sym__specified_function_body = 401, sym__function_contract = 402, aux_sym__in_out_contract_expressions = 403, sym__in_out_contract_expression = 404, sym__in_out_statement = 405, sym_in_contract_expression = 406, sym_out_contract_expression = 407, sym_in_statement = 408, sym_out_statement = 409, sym_template_declaration = 410, sym_template_instance = 411, sym_template_arguments = 412, sym_template_argument = 413, sym__template_argument_list = 414, sym__template_single_arg = 415, sym_template_parameter = 416, sym_template_parameters = 417, sym__template_parameter_list = 418, sym_constraint = 419, sym_mixin_template_declaration = 420, sym_template_mixin = 421, sym_conditional_declaration = 422, sym_conditional_statement = 423, sym_condition = 424, sym_version_condition = 425, sym_version_specification = 426, sym_debug_condition = 427, sym_debug_specification = 428, sym_static_if_condition = 429, sym_static_foreach_statement = 430, sym_static_foreach_declaration = 431, sym_static_assert = 432, sym_traits_expression = 433, sym_unittest_declaration = 434, aux_sym_source_file_repeat1 = 435, aux_sym_module_declaration_repeat1 = 436, aux_sym_module_fqn_repeat1 = 437, aux_sym_import_declaration_repeat1 = 438, aux_sym__import_list_repeat1 = 439, aux_sym_variable_declaration_repeat1 = 440, aux_sym_variable_declaration_repeat2 = 441, aux_sym__declarator_identifier_list_repeat1 = 442, aux_sym_manifest_constant_repeat1 = 443, aux_sym_auto_declaration_repeat1 = 444, aux_sym_alias_declaration_repeat1 = 445, aux_sym_alias_declaration_repeat2 = 446, aux_sym_type_repeat1 = 447, aux_sym_type_repeat2 = 448, aux_sym__type_suffix_repeat1 = 449, aux_sym__argument_list_repeat1 = 450, aux_sym__named_argument_list_repeat1 = 451, aux_sym_expression_list_repeat1 = 452, aux_sym_index_expression_repeat1 = 453, aux_sym_quoted_string_repeat1 = 454, aux_sym_interpolated_raw_string_repeat1 = 455, aux_sym_interpolated_quoted_string_repeat1 = 456, aux_sym_array_literal_repeat1 = 457, aux_sym_foreach_statement_repeat1 = 458, aux_sym_foreach_type_repeat1 = 459, aux_sym_case_statement_repeat1 = 460, aux_sym_try_statement_repeat1 = 461, aux_sym_asm_inline_repeat1 = 462, aux_sym_aggregate_initializer_repeat1 = 463, aux_sym__base_class_list_repeat1 = 464, aux_sym__enum_body_repeat1 = 465, aux_sym_enum_member_repeat1 = 466, aux_sym_anonymous_enum_declaration_repeat1 = 467, aux_sym_parameters_repeat1 = 468, aux_sym__parameters_repeat1 = 469, aux_sym__parameter_repeat1 = 470, aux_sym_function_body_repeat1 = 471, aux_sym__template_argument_list_repeat1 = 472, aux_sym__template_parameter_list_repeat1 = 473, aux_sym_template_mixin_repeat1 = 474, alias_sym_namespace_list = 475, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", [anon_sym_BOM] = "\ufeff", [sym_shebang] = "shebang", [aux_sym_escape_sequence_token1] = "escape_sequence_token1", [aux_sym_escape_sequence_token2] = "escape_sequence_token2", [aux_sym_escape_sequence_token3] = "escape_sequence_token3", [aux_sym_escape_sequence_token4] = "escape_sequence_token4", [aux_sym_escape_sequence_token5] = "escape_sequence_token5", [sym_htmlentity] = "htmlentity", [sym_end_file] = "end_file", [sym_comment] = "comment", [anon_sym_q_LBRACE] = "q{", [anon_sym_RBRACE] = "}", [anon_sym_LBRACE] = "{", [anon_sym_SLASH] = "/", [anon_sym_SLASH_EQ] = "/=", [anon_sym_DOT] = ".", [anon_sym_DOT_DOT] = "..", [anon_sym_DOT_DOT_DOT] = "...", [anon_sym_AMP] = "&", [anon_sym_AMP_EQ] = "&=", [anon_sym_AMP_AMP] = "&&", [anon_sym_PIPE] = "|", [anon_sym_PIPE_EQ] = "|=", [anon_sym_PIPE_PIPE] = "||", [anon_sym_DASH] = "-", [anon_sym_DASH_EQ] = "-=", [anon_sym_DASH_DASH] = "--", [anon_sym_PLUS] = "+", [anon_sym_PLUS_EQ] = "+=", [anon_sym_PLUS_PLUS] = "++", [anon_sym_LT] = "<", [anon_sym_LT_EQ] = "<=", [anon_sym_LT_LT] = "<<", [anon_sym_LT_LT_EQ] = "<<=", [anon_sym_GT] = ">", [anon_sym_GT_EQ] = ">=", [anon_sym_GT_GT_EQ] = ">>=", [anon_sym_GT_GT_GT_EQ] = ">>>=", [anon_sym_GT_GT] = ">>", [anon_sym_GT_GT_GT] = ">>>", [anon_sym_BANG] = "!", [anon_sym_BANG_EQ] = "!=", [anon_sym_LPAREN] = "(", [anon_sym_RPAREN] = ")", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", [anon_sym_QMARK] = "\?", [anon_sym_COMMA] = ",", [anon_sym_SEMI] = ";", [anon_sym_COLON] = ":", [anon_sym_DOLLAR] = "$", [anon_sym_EQ] = "=", [anon_sym_EQ_EQ] = "==", [anon_sym_STAR] = "*", [anon_sym_STAR_EQ] = "*=", [anon_sym_PERCENT] = "%", [anon_sym_PERCENT_EQ] = "%=", [anon_sym_CARET] = "^", [anon_sym_CARET_EQ] = "^=", [anon_sym_CARET_CARET] = "^^", [anon_sym_CARET_CARET_EQ] = "^^=", [anon_sym_TILDE] = "~", [anon_sym_TILDE_EQ] = "~=", [anon_sym_AT] = "@", [anon_sym_EQ_GT] = "=>", [anon_sym_POUND] = "#", [anon_sym_BANGin] = "!in", [anon_sym_BANGis] = "!is", [sym_bool] = "bool", [sym_byte] = "byte", [sym_ubyte] = "ubyte", [sym_char] = "char", [sym_short] = "short", [sym_ushort] = "ushort", [sym_int] = "int", [sym_uint] = "uint", [sym_long] = "long", [sym_ulong] = "ulong", [sym_cent] = "cent", [sym_ucent] = "ucent", [sym_wchar] = "wchar", [sym_dchar] = "dchar", [sym_float] = "float", [sym_double] = "double", [sym_real] = "real", [sym_ifloat] = "ifloat", [sym_idouble] = "idouble", [sym_ireal] = "ireal", [sym_cfloat] = "cfloat", [sym_cdouble] = "cdouble", [sym_creal] = "creal", [sym_size_t] = "size_t", [sym_ptrdiff_t] = "ptrdiff_t", [sym_string] = "string", [sym_cstring] = "cstring", [sym_dstring] = "dstring", [sym_wstring] = "wstring", [sym_noreturn] = "noreturn", [sym_true] = "true", [sym_false] = "false", [sym_null] = "null", [sym_super] = "super", [sym_this] = "this", [sym_abstract] = "abstract", [sym_alias] = "alias", [sym_align] = "align", [sym_asm] = "asm", [sym_assert] = "assert", [sym_auto] = "auto", [sym_break] = "break", [sym_case] = "case", [sym_cast] = "cast", [sym_catch] = "catch", [sym_class] = "class", [sym_const] = "const", [sym_continue] = "continue", [sym_debug] = "debug", [sym_default] = "default", [sym_delegate] = "delegate", [sym_delete] = "delete", [sym_deprecated] = "deprecated", [sym_do] = "do", [sym_else] = "else", [sym_enum] = "enum", [sym_export] = "export", [sym_extern] = "extern", [sym_final] = "final", [sym_finally] = "finally", [sym_for] = "for", [sym_foreach] = "foreach", [sym_foreach_reverse] = "foreach_reverse", [sym_function] = "function", [sym_goto] = "goto", [sym_if] = "if", [sym_immutable] = "immutable", [sym_import] = "import", [sym_in] = "in", [sym_inout] = "inout", [sym_interface] = "interface", [sym_invariant] = "invariant", [sym_is] = "is", [sym_lazy] = "lazy", [sym_mixin] = "mixin", [sym_module] = "module", [sym_new] = "new", [sym_nothrow] = "nothrow", [sym_out] = "out", [sym_override] = "override", [sym_package] = "package", [sym_pragma] = "pragma", [sym_private] = "private", [sym_protected] = "protected", [sym_public] = "public", [sym_pure] = "pure", [sym_ref] = "ref", [sym_return] = "return", [sym_scope] = "scope", [sym_shared] = "shared", [sym_static] = "static", [sym_struct] = "struct", [sym_switch] = "switch", [sym_synchronized] = "synchronized", [sym_template] = "template", [sym_throw] = "throw", [sym_try] = "try", [sym_typeid] = "typeid", [sym_typeof] = "typeof", [sym_union] = "union", [sym_unittest] = "unittest", [sym_version] = "version", [sym_while] = "while", [sym_with] = "with", [sym_parameters_] = "parameters_", [sym_gshared] = "gshared", [sym_traits] = "traits", [sym_vector] = "vector", [sym_void] = "void", [anon_sym_C] = "C", [anon_sym_D] = "D", [anon_sym_Windows] = "Windows", [anon_sym_System] = "System", [anon_sym_Objective] = "Objective", [anon_sym_BQUOTE] = "`", [aux_sym_raw_string_token1] = "raw_string_token1", [aux_sym_raw_string_token2] = "raw_string_token2", [anon_sym_r_DQUOTE] = "r\"", [aux_sym_raw_string_token3] = "raw_string_token3", [aux_sym_raw_string_token4] = "raw_string_token4", [anon_sym_x_DQUOTE] = "x\"", [aux_sym_hex_string_token1] = "hex_string_token1", [anon_sym_DQUOTE] = "\"", [aux_sym_quoted_string_token1] = "quoted_string_token1", [anon_sym_DOLLAR_LPAREN] = "$(", [anon_sym_i_BQUOTE] = "i`", [aux_sym_interpolated_raw_string_token1] = "interpolated_raw_string_token1", [aux_sym_interpolated_raw_string_token2] = "interpolated_raw_string_token2", [anon_sym_DOLLAR_BQUOTE] = "$`", [sym_interpolated_escape] = "interpolated_escape", [anon_sym_i_DQUOTE] = "i\"", [aux_sym_interpolated_quoted_string_token1] = "interpolated_quoted_string_token1", [aux_sym_interpolated_quoted_string_token2] = "interpolated_quoted_string_token2", [anon_sym_DOLLAR_DQUOTE] = "$\"", [anon_sym_iq_LBRACE] = "iq{", [aux_sym_char_literal_token1] = "char_literal_token1", [anon_sym_SQUOTE] = "'", [anon_sym___DATE__] = "__DATE__", [anon_sym___FILE__] = "__FILE__", [anon_sym___FILE_FULL_PATH__] = "__FILE_FULL_PATH__", [anon_sym___FUNCTION__] = "__FUNCTION__", [anon_sym___LINE__] = "__LINE__", [anon_sym___MODULE__] = "__MODULE__", [anon_sym___PRETTY_FUNCTION__] = "__PRETTY_FUNCTION__", [anon_sym___TIME__] = "__TIME__", [anon_sym___TIMESTAMP__] = "__TIMESTAMP__", [anon_sym___VENDOR__] = "__VENDOR__", [anon_sym___VERSION__] = "__VERSION__", [anon_sym_exit] = "exit", [anon_sym_success] = "success", [anon_sym_failure] = "failure", [sym_directive] = "directive", [sym_int_literal] = "int_literal", [sym_float_literal] = "float_literal", [sym__string] = "_string", [sym_not_in] = "not_in", [sym_not_is] = "not_is", [sym__after_eof] = "_after_eof", [sym_error_sentinel] = "error_sentinel", [sym_source_file] = "source_file", [sym__bom] = "_bom", [sym_escape_sequence] = "escape_sequence", [sym_token_string] = "token_string", [aux_sym__token_string_tokens] = "_token_string_tokens", [sym__token_string_token] = "_token_string_token", [sym__token_no_braces] = "_token_no_braces", [sym_keyword] = "keyword", [sym_dollar] = "dollar", [sym_module_def] = "module_def", [sym_module_declaration] = "module_declaration", [sym_module_fqn] = "module_fqn", [sym_import_declaration] = "import_declaration", [sym__import_list] = "_import_list", [sym_imported] = "imported", [sym_import_bind] = "import_bind", [sym_mixin_declaration] = "mixin_declaration", [sym__declaration] = "_declaration", [sym__declaration2] = "_declaration2", [sym_variable_declaration] = "variable_declaration", [sym_declarator] = "declarator", [sym_bitfield_declarator] = "bitfield_declarator", [sym_manifest_constant] = "manifest_constant", [sym_manifest_declarator] = "manifest_declarator", [sym_storage_class] = "storage_class", [sym__initializer] = "_initializer", [sym_auto_declaration] = "auto_declaration", [sym__auto_assignment] = "_auto_assignment", [sym_alias_declaration] = "alias_declaration", [sym_alias_initializer] = "alias_initializer", [sym_alias_reassign] = "alias_reassign", [sym_type] = "type", [sym_type_ctor] = "type_ctor", [sym__type2] = "_type2", [sym_vector_type] = "vector_type", [sym__builtin_type] = "_builtin_type", [sym__type_suffix] = "_type_suffix", [sym__qualified_id] = "_qualified_id", [sym_typeof_expression] = "typeof_expression", [sym_attribute_declaration] = "attribute_declaration", [sym_align_attribute] = "align_attribute", [sym_deprecated_attribute] = "deprecated_attribute", [sym__attribute] = "_attribute", [sym_at_attribute] = "at_attribute", [sym__function_attribute_kwd] = "_function_attribute_kwd", [sym_linkage_attribute] = "linkage_attribute", [sym__argument_list] = "_argument_list", [sym_arguments] = "arguments", [sym_named_argument] = "named_argument", [sym__named_argument_list] = "_named_argument_list", [sym_named_arguments] = "named_arguments", [sym_pragma_declaration] = "pragma_declaration", [sym_pragma_statement] = "pragma_statement", [sym_pragma_expression] = "pragma_expression", [sym_expression_list] = "expression_list", [sym_expression] = "expression", [sym__expr] = "_expr", [sym_ternary_expression] = "ternary_expression", [sym_call_expression] = "call_expression", [sym_primary_expression] = "primary_expression", [sym__primary_expr] = "_primary_expr", [sym_index_expression] = "index_expression", [sym_index] = "index", [sym_assignment_expression] = "assignment_expression", [sym_binary_expression] = "binary_expression", [sym_logical_or_expression] = "logical_or_expression", [sym_logical_and_expression] = "logical_and_expression", [sym_or_expression] = "or_expression", [sym_xor_expression] = "xor_expression", [sym_and_expression] = "and_expression", [sym_equal_expression] = "equal_expression", [sym_rel_expression] = "rel_expression", [sym_identity_expression] = "identity_expression", [sym_add_expression] = "add_expression", [sym_mul_expression] = "mul_expression", [sym_shift_expression] = "shift_expression", [sym_power_expression] = "power_expression", [sym_postfix_expression] = "postfix_expression", [sym_unary_expression] = "unary_expression", [sym__unary_expr] = "_unary_expr", [sym_property_expression] = "property_expression", [sym_cast_expression] = "cast_expression", [sym_cast_qualifier] = "cast_qualifier", [sym_delete_expression] = "delete_expression", [sym_throw_expression] = "throw_expression", [sym_assert_expression] = "assert_expression", [sym_assert_arguments] = "assert_arguments", [sym_mixin_expression] = "mixin_expression", [sym_import_expression] = "import_expression", [sym_new_expression] = "new_expression", [sym_typeid_expression] = "typeid_expression", [sym_is_expression] = "is_expression", [sym_type_specialization] = "type_specialization", [sym_raw_string] = "raw_string", [sym_hex_string] = "hex_string", [sym_quoted_string] = "quoted_string", [sym_interpolation_expression] = "interpolation_expression", [sym_interpolated_raw_string] = "interpolated_raw_string", [sym_interpolated_quoted_string] = "interpolated_quoted_string", [sym_interpolated_token_string] = "interpolated_token_string", [aux_sym__i_token_string_tokens] = "_i_token_string_tokens", [sym_string_literal] = "string_literal", [sym_char_literal] = "char_literal", [sym_array_literal] = "array_literal", [sym__array_member_init] = "_array_member_init", [sym_function_literal] = "function_literal", [sym__parameter_with_attributes] = "_parameter_with_attributes", [sym__parameter_with_member_attributes] = "_parameter_with_member_attributes", [sym_special_keyword] = "special_keyword", [sym__statement] = "_statement", [aux_sym__declarations_and_statements] = "_declarations_and_statements", [sym__declaration_or_statement] = "_declaration_or_statement", [sym_scope_statement] = "scope_statement", [sym__statement_no_case_no_default] = "_statement_no_case_no_default", [sym_labeled_statement] = "labeled_statement", [sym_label] = "label", [sym_block_statement] = "block_statement", [sym_expression_statement] = "expression_statement", [sym_if_statement] = "if_statement", [sym_if_condition] = "if_condition", [sym_while_statement] = "while_statement", [sym_do_statement] = "do_statement", [sym_for_statement] = "for_statement", [sym__foreach] = "_foreach", [sym_foreach_statement] = "foreach_statement", [sym_foreach_type] = "foreach_type", [sym_switch_statement] = "switch_statement", [sym_case_statement] = "case_statement", [sym_final_switch_statement] = "final_switch_statement", [sym_continue_statement] = "continue_statement", [sym_break_statement] = "break_statement", [sym_return_statement] = "return_statement", [sym_goto_statement] = "goto_statement", [sym_with_statement] = "with_statement", [sym_synchronized_statement] = "synchronized_statement", [sym_try_statement] = "try_statement", [sym_catch_statement] = "catch_statement", [sym_finally_statement] = "finally_statement", [sym_scope_guard_statement] = "scope_guard_statement", [sym_asm_statement] = "asm_statement", [sym_asm_inline] = "asm_inline", [sym_struct_declaration] = "struct_declaration", [sym_union_declaration] = "union_declaration", [sym_aggregate_body] = "aggregate_body", [sym_aggregate_initializer] = "aggregate_initializer", [sym_member_initializer] = "member_initializer", [sym_postblit] = "postblit", [sym_invariant_declaration] = "invariant_declaration", [sym_class_declaration] = "class_declaration", [sym__base_class_list] = "_base_class_list", [sym_base_class] = "base_class", [sym_constructor] = "constructor", [sym_destructor] = "destructor", [sym_alias_this] = "alias_this", [sym_interface_declaration] = "interface_declaration", [sym_enum_declaration] = "enum_declaration", [sym__enum_body] = "_enum_body", [sym__enum_member_attribute] = "_enum_member_attribute", [sym_enum_member] = "enum_member", [sym_anonymous_enum_declaration] = "anonymous_enum_declaration", [sym_anonymous_enum_member] = "anonymous_enum_member", [sym_function_declaration] = "function_declaration", [sym_parameters] = "parameters", [sym__parameters] = "_parameters", [sym_parameter] = "parameter", [sym_parameter_attribute] = "parameter_attribute", [sym_ellipses] = "ellipses", [aux_sym__variadic_arguments_attributes] = "_variadic_arguments_attributes", [sym_variadic_arguments_attribute] = "variadic_arguments_attribute", [sym__function_attribute] = "_function_attribute", [sym_member_function_attribute] = "member_function_attribute", [sym_function_body] = "function_body", [sym__specified_function_body] = "_specified_function_body", [sym__function_contract] = "_function_contract", [aux_sym__in_out_contract_expressions] = "_in_out_contract_expressions", [sym__in_out_contract_expression] = "_in_out_contract_expression", [sym__in_out_statement] = "_in_out_statement", [sym_in_contract_expression] = "in_contract_expression", [sym_out_contract_expression] = "out_contract_expression", [sym_in_statement] = "in_statement", [sym_out_statement] = "out_statement", [sym_template_declaration] = "template_declaration", [sym_template_instance] = "template_instance", [sym_template_arguments] = "template_arguments", [sym_template_argument] = "template_argument", [sym__template_argument_list] = "_template_argument_list", [sym__template_single_arg] = "_template_single_arg", [sym_template_parameter] = "template_parameter", [sym_template_parameters] = "template_parameters", [sym__template_parameter_list] = "_template_parameter_list", [sym_constraint] = "constraint", [sym_mixin_template_declaration] = "mixin_template_declaration", [sym_template_mixin] = "template_mixin", [sym_conditional_declaration] = "conditional_declaration", [sym_conditional_statement] = "conditional_statement", [sym_condition] = "condition", [sym_version_condition] = "version_condition", [sym_version_specification] = "version_specification", [sym_debug_condition] = "debug_condition", [sym_debug_specification] = "debug_specification", [sym_static_if_condition] = "static_if_condition", [sym_static_foreach_statement] = "static_foreach_statement", [sym_static_foreach_declaration] = "static_foreach_declaration", [sym_static_assert] = "static_assert", [sym_traits_expression] = "traits_expression", [sym_unittest_declaration] = "unittest_declaration", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_module_declaration_repeat1] = "module_declaration_repeat1", [aux_sym_module_fqn_repeat1] = "module_fqn_repeat1", [aux_sym_import_declaration_repeat1] = "import_declaration_repeat1", [aux_sym__import_list_repeat1] = "_import_list_repeat1", [aux_sym_variable_declaration_repeat1] = "variable_declaration_repeat1", [aux_sym_variable_declaration_repeat2] = "variable_declaration_repeat2", [aux_sym__declarator_identifier_list_repeat1] = "_declarator_identifier_list_repeat1", [aux_sym_manifest_constant_repeat1] = "manifest_constant_repeat1", [aux_sym_auto_declaration_repeat1] = "auto_declaration_repeat1", [aux_sym_alias_declaration_repeat1] = "alias_declaration_repeat1", [aux_sym_alias_declaration_repeat2] = "alias_declaration_repeat2", [aux_sym_type_repeat1] = "type_repeat1", [aux_sym_type_repeat2] = "type_repeat2", [aux_sym__type_suffix_repeat1] = "_type_suffix_repeat1", [aux_sym__argument_list_repeat1] = "_argument_list_repeat1", [aux_sym__named_argument_list_repeat1] = "_named_argument_list_repeat1", [aux_sym_expression_list_repeat1] = "expression_list_repeat1", [aux_sym_index_expression_repeat1] = "index_expression_repeat1", [aux_sym_quoted_string_repeat1] = "quoted_string_repeat1", [aux_sym_interpolated_raw_string_repeat1] = "interpolated_raw_string_repeat1", [aux_sym_interpolated_quoted_string_repeat1] = "interpolated_quoted_string_repeat1", [aux_sym_array_literal_repeat1] = "array_literal_repeat1", [aux_sym_foreach_statement_repeat1] = "foreach_statement_repeat1", [aux_sym_foreach_type_repeat1] = "foreach_type_repeat1", [aux_sym_case_statement_repeat1] = "case_statement_repeat1", [aux_sym_try_statement_repeat1] = "try_statement_repeat1", [aux_sym_asm_inline_repeat1] = "asm_inline_repeat1", [aux_sym_aggregate_initializer_repeat1] = "aggregate_initializer_repeat1", [aux_sym__base_class_list_repeat1] = "_base_class_list_repeat1", [aux_sym__enum_body_repeat1] = "_enum_body_repeat1", [aux_sym_enum_member_repeat1] = "enum_member_repeat1", [aux_sym_anonymous_enum_declaration_repeat1] = "anonymous_enum_declaration_repeat1", [aux_sym_parameters_repeat1] = "parameters_repeat1", [aux_sym__parameters_repeat1] = "_parameters_repeat1", [aux_sym__parameter_repeat1] = "_parameter_repeat1", [aux_sym_function_body_repeat1] = "function_body_repeat1", [aux_sym__template_argument_list_repeat1] = "_template_argument_list_repeat1", [aux_sym__template_parameter_list_repeat1] = "_template_parameter_list_repeat1", [aux_sym_template_mixin_repeat1] = "template_mixin_repeat1", [alias_sym_namespace_list] = "namespace_list", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_identifier] = sym_identifier, [anon_sym_BOM] = anon_sym_BOM, [sym_shebang] = sym_shebang, [aux_sym_escape_sequence_token1] = aux_sym_escape_sequence_token1, [aux_sym_escape_sequence_token2] = aux_sym_escape_sequence_token2, [aux_sym_escape_sequence_token3] = aux_sym_escape_sequence_token3, [aux_sym_escape_sequence_token4] = aux_sym_escape_sequence_token4, [aux_sym_escape_sequence_token5] = aux_sym_escape_sequence_token5, [sym_htmlentity] = sym_htmlentity, [sym_end_file] = sym_end_file, [sym_comment] = sym_comment, [anon_sym_q_LBRACE] = anon_sym_q_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_SLASH] = anon_sym_SLASH, [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, [anon_sym_DOT] = anon_sym_DOT, [anon_sym_DOT_DOT] = anon_sym_DOT_DOT, [anon_sym_DOT_DOT_DOT] = anon_sym_DOT_DOT_DOT, [anon_sym_AMP] = anon_sym_AMP, [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, [anon_sym_PIPE] = anon_sym_PIPE, [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, [anon_sym_DASH] = anon_sym_DASH, [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, [anon_sym_DASH_DASH] = anon_sym_DASH_DASH, [anon_sym_PLUS] = anon_sym_PLUS, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS, [anon_sym_LT] = anon_sym_LT, [anon_sym_LT_EQ] = anon_sym_LT_EQ, [anon_sym_LT_LT] = anon_sym_LT_LT, [anon_sym_LT_LT_EQ] = anon_sym_LT_LT_EQ, [anon_sym_GT] = anon_sym_GT, [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_GT_GT_EQ] = anon_sym_GT_GT_EQ, [anon_sym_GT_GT_GT_EQ] = anon_sym_GT_GT_GT_EQ, [anon_sym_GT_GT] = anon_sym_GT_GT, [anon_sym_GT_GT_GT] = anon_sym_GT_GT_GT, [anon_sym_BANG] = anon_sym_BANG, [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_RPAREN] = anon_sym_RPAREN, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_QMARK] = anon_sym_QMARK, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_SEMI] = anon_sym_SEMI, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_DOLLAR] = anon_sym_DOLLAR, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_EQ_EQ] = anon_sym_EQ_EQ, [anon_sym_STAR] = anon_sym_STAR, [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, [anon_sym_PERCENT] = anon_sym_PERCENT, [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, [anon_sym_CARET] = anon_sym_CARET, [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, [anon_sym_CARET_CARET] = anon_sym_CARET_CARET, [anon_sym_CARET_CARET_EQ] = anon_sym_CARET_CARET_EQ, [anon_sym_TILDE] = anon_sym_TILDE, [anon_sym_TILDE_EQ] = anon_sym_TILDE_EQ, [anon_sym_AT] = anon_sym_AT, [anon_sym_EQ_GT] = anon_sym_EQ_GT, [anon_sym_POUND] = anon_sym_POUND, [anon_sym_BANGin] = anon_sym_BANGin, [anon_sym_BANGis] = anon_sym_BANGis, [sym_bool] = sym_bool, [sym_byte] = sym_byte, [sym_ubyte] = sym_ubyte, [sym_char] = sym_char, [sym_short] = sym_short, [sym_ushort] = sym_ushort, [sym_int] = sym_int, [sym_uint] = sym_uint, [sym_long] = sym_long, [sym_ulong] = sym_ulong, [sym_cent] = sym_cent, [sym_ucent] = sym_ucent, [sym_wchar] = sym_wchar, [sym_dchar] = sym_dchar, [sym_float] = sym_float, [sym_double] = sym_double, [sym_real] = sym_real, [sym_ifloat] = sym_ifloat, [sym_idouble] = sym_idouble, [sym_ireal] = sym_ireal, [sym_cfloat] = sym_cfloat, [sym_cdouble] = sym_cdouble, [sym_creal] = sym_creal, [sym_size_t] = sym_size_t, [sym_ptrdiff_t] = sym_ptrdiff_t, [sym_string] = sym_string, [sym_cstring] = sym_cstring, [sym_dstring] = sym_dstring, [sym_wstring] = sym_wstring, [sym_noreturn] = sym_noreturn, [sym_true] = sym_true, [sym_false] = sym_false, [sym_null] = sym_null, [sym_super] = sym_super, [sym_this] = sym_this, [sym_abstract] = sym_abstract, [sym_alias] = sym_alias, [sym_align] = sym_align, [sym_asm] = sym_asm, [sym_assert] = sym_assert, [sym_auto] = sym_auto, [sym_break] = sym_break, [sym_case] = sym_case, [sym_cast] = sym_cast, [sym_catch] = sym_catch, [sym_class] = sym_class, [sym_const] = sym_const, [sym_continue] = sym_continue, [sym_debug] = sym_debug, [sym_default] = sym_default, [sym_delegate] = sym_delegate, [sym_delete] = sym_delete, [sym_deprecated] = sym_deprecated, [sym_do] = sym_do, [sym_else] = sym_else, [sym_enum] = sym_enum, [sym_export] = sym_export, [sym_extern] = sym_extern, [sym_final] = sym_final, [sym_finally] = sym_finally, [sym_for] = sym_for, [sym_foreach] = sym_foreach, [sym_foreach_reverse] = sym_foreach_reverse, [sym_function] = sym_function, [sym_goto] = sym_goto, [sym_if] = sym_if, [sym_immutable] = sym_immutable, [sym_import] = sym_import, [sym_in] = sym_in, [sym_inout] = sym_inout, [sym_interface] = sym_interface, [sym_invariant] = sym_invariant, [sym_is] = sym_is, [sym_lazy] = sym_lazy, [sym_mixin] = sym_mixin, [sym_module] = sym_module, [sym_new] = sym_new, [sym_nothrow] = sym_nothrow, [sym_out] = sym_out, [sym_override] = sym_override, [sym_package] = sym_package, [sym_pragma] = sym_pragma, [sym_private] = sym_private, [sym_protected] = sym_protected, [sym_public] = sym_public, [sym_pure] = sym_pure, [sym_ref] = sym_ref, [sym_return] = sym_return, [sym_scope] = sym_scope, [sym_shared] = sym_shared, [sym_static] = sym_static, [sym_struct] = sym_struct, [sym_switch] = sym_switch, [sym_synchronized] = sym_synchronized, [sym_template] = sym_template, [sym_throw] = sym_throw, [sym_try] = sym_try, [sym_typeid] = sym_typeid, [sym_typeof] = sym_typeof, [sym_union] = sym_union, [sym_unittest] = sym_unittest, [sym_version] = sym_version, [sym_while] = sym_while, [sym_with] = sym_with, [sym_parameters_] = sym_parameters_, [sym_gshared] = sym_gshared, [sym_traits] = sym_traits, [sym_vector] = sym_vector, [sym_void] = sym_void, [anon_sym_C] = anon_sym_C, [anon_sym_D] = anon_sym_D, [anon_sym_Windows] = anon_sym_Windows, [anon_sym_System] = anon_sym_System, [anon_sym_Objective] = anon_sym_Objective, [anon_sym_BQUOTE] = anon_sym_BQUOTE, [aux_sym_raw_string_token1] = aux_sym_raw_string_token1, [aux_sym_raw_string_token2] = aux_sym_raw_string_token2, [anon_sym_r_DQUOTE] = anon_sym_r_DQUOTE, [aux_sym_raw_string_token3] = aux_sym_raw_string_token3, [aux_sym_raw_string_token4] = aux_sym_raw_string_token4, [anon_sym_x_DQUOTE] = anon_sym_x_DQUOTE, [aux_sym_hex_string_token1] = aux_sym_hex_string_token1, [anon_sym_DQUOTE] = anon_sym_DQUOTE, [aux_sym_quoted_string_token1] = aux_sym_quoted_string_token1, [anon_sym_DOLLAR_LPAREN] = anon_sym_DOLLAR_LPAREN, [anon_sym_i_BQUOTE] = anon_sym_i_BQUOTE, [aux_sym_interpolated_raw_string_token1] = aux_sym_interpolated_raw_string_token1, [aux_sym_interpolated_raw_string_token2] = aux_sym_interpolated_raw_string_token2, [anon_sym_DOLLAR_BQUOTE] = anon_sym_DOLLAR_BQUOTE, [sym_interpolated_escape] = sym_interpolated_escape, [anon_sym_i_DQUOTE] = anon_sym_i_DQUOTE, [aux_sym_interpolated_quoted_string_token1] = aux_sym_interpolated_quoted_string_token1, [aux_sym_interpolated_quoted_string_token2] = aux_sym_interpolated_quoted_string_token2, [anon_sym_DOLLAR_DQUOTE] = anon_sym_DOLLAR_DQUOTE, [anon_sym_iq_LBRACE] = anon_sym_iq_LBRACE, [aux_sym_char_literal_token1] = aux_sym_char_literal_token1, [anon_sym_SQUOTE] = anon_sym_SQUOTE, [anon_sym___DATE__] = anon_sym___DATE__, [anon_sym___FILE__] = anon_sym___FILE__, [anon_sym___FILE_FULL_PATH__] = anon_sym___FILE_FULL_PATH__, [anon_sym___FUNCTION__] = anon_sym___FUNCTION__, [anon_sym___LINE__] = anon_sym___LINE__, [anon_sym___MODULE__] = anon_sym___MODULE__, [anon_sym___PRETTY_FUNCTION__] = anon_sym___PRETTY_FUNCTION__, [anon_sym___TIME__] = anon_sym___TIME__, [anon_sym___TIMESTAMP__] = anon_sym___TIMESTAMP__, [anon_sym___VENDOR__] = anon_sym___VENDOR__, [anon_sym___VERSION__] = anon_sym___VERSION__, [anon_sym_exit] = anon_sym_exit, [anon_sym_success] = anon_sym_success, [anon_sym_failure] = anon_sym_failure, [sym_directive] = sym_directive, [sym_int_literal] = sym_int_literal, [sym_float_literal] = sym_float_literal, [sym__string] = sym__string, [sym_not_in] = sym_not_in, [sym_not_is] = sym_not_is, [sym__after_eof] = sym__after_eof, [sym_error_sentinel] = sym_error_sentinel, [sym_source_file] = sym_source_file, [sym__bom] = sym__bom, [sym_escape_sequence] = sym_escape_sequence, [sym_token_string] = sym_token_string, [aux_sym__token_string_tokens] = aux_sym__token_string_tokens, [sym__token_string_token] = sym__token_string_token, [sym__token_no_braces] = sym__token_no_braces, [sym_keyword] = sym_keyword, [sym_dollar] = sym_dollar, [sym_module_def] = sym_module_def, [sym_module_declaration] = sym_module_declaration, [sym_module_fqn] = sym_module_fqn, [sym_import_declaration] = sym_import_declaration, [sym__import_list] = sym__import_list, [sym_imported] = sym_imported, [sym_import_bind] = sym_import_bind, [sym_mixin_declaration] = sym_mixin_declaration, [sym__declaration] = sym__declaration, [sym__declaration2] = sym__declaration2, [sym_variable_declaration] = sym_variable_declaration, [sym_declarator] = sym_declarator, [sym_bitfield_declarator] = sym_bitfield_declarator, [sym_manifest_constant] = sym_manifest_constant, [sym_manifest_declarator] = sym_manifest_declarator, [sym_storage_class] = sym_storage_class, [sym__initializer] = sym__initializer, [sym_auto_declaration] = sym_auto_declaration, [sym__auto_assignment] = sym__auto_assignment, [sym_alias_declaration] = sym_alias_declaration, [sym_alias_initializer] = sym_alias_initializer, [sym_alias_reassign] = sym_alias_reassign, [sym_type] = sym_type, [sym_type_ctor] = sym_type_ctor, [sym__type2] = sym__type2, [sym_vector_type] = sym_vector_type, [sym__builtin_type] = sym__builtin_type, [sym__type_suffix] = sym__type_suffix, [sym__qualified_id] = sym__qualified_id, [sym_typeof_expression] = sym_typeof_expression, [sym_attribute_declaration] = sym_attribute_declaration, [sym_align_attribute] = sym_align_attribute, [sym_deprecated_attribute] = sym_deprecated_attribute, [sym__attribute] = sym__attribute, [sym_at_attribute] = sym_at_attribute, [sym__function_attribute_kwd] = sym__function_attribute_kwd, [sym_linkage_attribute] = sym_linkage_attribute, [sym__argument_list] = sym__argument_list, [sym_arguments] = sym_arguments, [sym_named_argument] = sym_named_argument, [sym__named_argument_list] = sym__named_argument_list, [sym_named_arguments] = sym_named_arguments, [sym_pragma_declaration] = sym_pragma_declaration, [sym_pragma_statement] = sym_pragma_statement, [sym_pragma_expression] = sym_pragma_expression, [sym_expression_list] = sym_expression_list, [sym_expression] = sym_expression, [sym__expr] = sym__expr, [sym_ternary_expression] = sym_ternary_expression, [sym_call_expression] = sym_call_expression, [sym_primary_expression] = sym_primary_expression, [sym__primary_expr] = sym__primary_expr, [sym_index_expression] = sym_index_expression, [sym_index] = sym_index, [sym_assignment_expression] = sym_assignment_expression, [sym_binary_expression] = sym_binary_expression, [sym_logical_or_expression] = sym_logical_or_expression, [sym_logical_and_expression] = sym_logical_and_expression, [sym_or_expression] = sym_or_expression, [sym_xor_expression] = sym_xor_expression, [sym_and_expression] = sym_and_expression, [sym_equal_expression] = sym_equal_expression, [sym_rel_expression] = sym_rel_expression, [sym_identity_expression] = sym_identity_expression, [sym_add_expression] = sym_add_expression, [sym_mul_expression] = sym_mul_expression, [sym_shift_expression] = sym_shift_expression, [sym_power_expression] = sym_power_expression, [sym_postfix_expression] = sym_postfix_expression, [sym_unary_expression] = sym_unary_expression, [sym__unary_expr] = sym__unary_expr, [sym_property_expression] = sym_property_expression, [sym_cast_expression] = sym_cast_expression, [sym_cast_qualifier] = sym_cast_qualifier, [sym_delete_expression] = sym_delete_expression, [sym_throw_expression] = sym_throw_expression, [sym_assert_expression] = sym_assert_expression, [sym_assert_arguments] = sym_assert_arguments, [sym_mixin_expression] = sym_mixin_expression, [sym_import_expression] = sym_import_expression, [sym_new_expression] = sym_new_expression, [sym_typeid_expression] = sym_typeid_expression, [sym_is_expression] = sym_is_expression, [sym_type_specialization] = sym_type_specialization, [sym_raw_string] = sym_raw_string, [sym_hex_string] = sym_hex_string, [sym_quoted_string] = sym_quoted_string, [sym_interpolation_expression] = sym_interpolation_expression, [sym_interpolated_raw_string] = sym_interpolated_raw_string, [sym_interpolated_quoted_string] = sym_interpolated_quoted_string, [sym_interpolated_token_string] = sym_interpolated_token_string, [aux_sym__i_token_string_tokens] = aux_sym__i_token_string_tokens, [sym_string_literal] = sym_string_literal, [sym_char_literal] = sym_char_literal, [sym_array_literal] = sym_array_literal, [sym__array_member_init] = sym__array_member_init, [sym_function_literal] = sym_function_literal, [sym__parameter_with_attributes] = sym__parameter_with_attributes, [sym__parameter_with_member_attributes] = sym__parameter_with_member_attributes, [sym_special_keyword] = sym_special_keyword, [sym__statement] = sym__statement, [aux_sym__declarations_and_statements] = aux_sym__declarations_and_statements, [sym__declaration_or_statement] = sym__declaration_or_statement, [sym_scope_statement] = sym_scope_statement, [sym__statement_no_case_no_default] = sym__statement_no_case_no_default, [sym_labeled_statement] = sym_labeled_statement, [sym_label] = sym_label, [sym_block_statement] = sym_block_statement, [sym_expression_statement] = sym_expression_statement, [sym_if_statement] = sym_if_statement, [sym_if_condition] = sym_if_condition, [sym_while_statement] = sym_while_statement, [sym_do_statement] = sym_do_statement, [sym_for_statement] = sym_for_statement, [sym__foreach] = sym__foreach, [sym_foreach_statement] = sym_foreach_statement, [sym_foreach_type] = sym_foreach_type, [sym_switch_statement] = sym_switch_statement, [sym_case_statement] = sym_case_statement, [sym_final_switch_statement] = sym_final_switch_statement, [sym_continue_statement] = sym_continue_statement, [sym_break_statement] = sym_break_statement, [sym_return_statement] = sym_return_statement, [sym_goto_statement] = sym_goto_statement, [sym_with_statement] = sym_with_statement, [sym_synchronized_statement] = sym_synchronized_statement, [sym_try_statement] = sym_try_statement, [sym_catch_statement] = sym_catch_statement, [sym_finally_statement] = sym_finally_statement, [sym_scope_guard_statement] = sym_scope_guard_statement, [sym_asm_statement] = sym_asm_statement, [sym_asm_inline] = sym_asm_inline, [sym_struct_declaration] = sym_struct_declaration, [sym_union_declaration] = sym_union_declaration, [sym_aggregate_body] = sym_aggregate_body, [sym_aggregate_initializer] = sym_aggregate_initializer, [sym_member_initializer] = sym_member_initializer, [sym_postblit] = sym_postblit, [sym_invariant_declaration] = sym_invariant_declaration, [sym_class_declaration] = sym_class_declaration, [sym__base_class_list] = sym__base_class_list, [sym_base_class] = sym_base_class, [sym_constructor] = sym_constructor, [sym_destructor] = sym_destructor, [sym_alias_this] = sym_alias_this, [sym_interface_declaration] = sym_interface_declaration, [sym_enum_declaration] = sym_enum_declaration, [sym__enum_body] = sym__enum_body, [sym__enum_member_attribute] = sym__enum_member_attribute, [sym_enum_member] = sym_enum_member, [sym_anonymous_enum_declaration] = sym_anonymous_enum_declaration, [sym_anonymous_enum_member] = sym_anonymous_enum_member, [sym_function_declaration] = sym_function_declaration, [sym_parameters] = sym_parameters, [sym__parameters] = sym__parameters, [sym_parameter] = sym_parameter, [sym_parameter_attribute] = sym_parameter_attribute, [sym_ellipses] = sym_ellipses, [aux_sym__variadic_arguments_attributes] = aux_sym__variadic_arguments_attributes, [sym_variadic_arguments_attribute] = sym_variadic_arguments_attribute, [sym__function_attribute] = sym__function_attribute, [sym_member_function_attribute] = sym_member_function_attribute, [sym_function_body] = sym_function_body, [sym__specified_function_body] = sym__specified_function_body, [sym__function_contract] = sym__function_contract, [aux_sym__in_out_contract_expressions] = aux_sym__in_out_contract_expressions, [sym__in_out_contract_expression] = sym__in_out_contract_expression, [sym__in_out_statement] = sym__in_out_statement, [sym_in_contract_expression] = sym_in_contract_expression, [sym_out_contract_expression] = sym_out_contract_expression, [sym_in_statement] = sym_in_statement, [sym_out_statement] = sym_out_statement, [sym_template_declaration] = sym_template_declaration, [sym_template_instance] = sym_template_instance, [sym_template_arguments] = sym_template_arguments, [sym_template_argument] = sym_template_argument, [sym__template_argument_list] = sym__template_argument_list, [sym__template_single_arg] = sym__template_single_arg, [sym_template_parameter] = sym_template_parameter, [sym_template_parameters] = sym_template_parameters, [sym__template_parameter_list] = sym__template_parameter_list, [sym_constraint] = sym_constraint, [sym_mixin_template_declaration] = sym_mixin_template_declaration, [sym_template_mixin] = sym_template_mixin, [sym_conditional_declaration] = sym_conditional_declaration, [sym_conditional_statement] = sym_conditional_statement, [sym_condition] = sym_condition, [sym_version_condition] = sym_version_condition, [sym_version_specification] = sym_version_specification, [sym_debug_condition] = sym_debug_condition, [sym_debug_specification] = sym_debug_specification, [sym_static_if_condition] = sym_static_if_condition, [sym_static_foreach_statement] = sym_static_foreach_statement, [sym_static_foreach_declaration] = sym_static_foreach_declaration, [sym_static_assert] = sym_static_assert, [sym_traits_expression] = sym_traits_expression, [sym_unittest_declaration] = sym_unittest_declaration, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_module_declaration_repeat1] = aux_sym_module_declaration_repeat1, [aux_sym_module_fqn_repeat1] = aux_sym_module_fqn_repeat1, [aux_sym_import_declaration_repeat1] = aux_sym_import_declaration_repeat1, [aux_sym__import_list_repeat1] = aux_sym__import_list_repeat1, [aux_sym_variable_declaration_repeat1] = aux_sym_variable_declaration_repeat1, [aux_sym_variable_declaration_repeat2] = aux_sym_variable_declaration_repeat2, [aux_sym__declarator_identifier_list_repeat1] = aux_sym__declarator_identifier_list_repeat1, [aux_sym_manifest_constant_repeat1] = aux_sym_manifest_constant_repeat1, [aux_sym_auto_declaration_repeat1] = aux_sym_auto_declaration_repeat1, [aux_sym_alias_declaration_repeat1] = aux_sym_alias_declaration_repeat1, [aux_sym_alias_declaration_repeat2] = aux_sym_alias_declaration_repeat2, [aux_sym_type_repeat1] = aux_sym_type_repeat1, [aux_sym_type_repeat2] = aux_sym_type_repeat2, [aux_sym__type_suffix_repeat1] = aux_sym__type_suffix_repeat1, [aux_sym__argument_list_repeat1] = aux_sym__argument_list_repeat1, [aux_sym__named_argument_list_repeat1] = aux_sym__named_argument_list_repeat1, [aux_sym_expression_list_repeat1] = aux_sym_expression_list_repeat1, [aux_sym_index_expression_repeat1] = aux_sym_index_expression_repeat1, [aux_sym_quoted_string_repeat1] = aux_sym_quoted_string_repeat1, [aux_sym_interpolated_raw_string_repeat1] = aux_sym_interpolated_raw_string_repeat1, [aux_sym_interpolated_quoted_string_repeat1] = aux_sym_interpolated_quoted_string_repeat1, [aux_sym_array_literal_repeat1] = aux_sym_array_literal_repeat1, [aux_sym_foreach_statement_repeat1] = aux_sym_foreach_statement_repeat1, [aux_sym_foreach_type_repeat1] = aux_sym_foreach_type_repeat1, [aux_sym_case_statement_repeat1] = aux_sym_case_statement_repeat1, [aux_sym_try_statement_repeat1] = aux_sym_try_statement_repeat1, [aux_sym_asm_inline_repeat1] = aux_sym_asm_inline_repeat1, [aux_sym_aggregate_initializer_repeat1] = aux_sym_aggregate_initializer_repeat1, [aux_sym__base_class_list_repeat1] = aux_sym__base_class_list_repeat1, [aux_sym__enum_body_repeat1] = aux_sym__enum_body_repeat1, [aux_sym_enum_member_repeat1] = aux_sym_enum_member_repeat1, [aux_sym_anonymous_enum_declaration_repeat1] = aux_sym_anonymous_enum_declaration_repeat1, [aux_sym_parameters_repeat1] = aux_sym_parameters_repeat1, [aux_sym__parameters_repeat1] = aux_sym__parameters_repeat1, [aux_sym__parameter_repeat1] = aux_sym__parameter_repeat1, [aux_sym_function_body_repeat1] = aux_sym_function_body_repeat1, [aux_sym__template_argument_list_repeat1] = aux_sym__template_argument_list_repeat1, [aux_sym__template_parameter_list_repeat1] = aux_sym__template_parameter_list_repeat1, [aux_sym_template_mixin_repeat1] = aux_sym_template_mixin_repeat1, [alias_sym_namespace_list] = alias_sym_namespace_list, }; static const TSSymbolMetadata ts_symbol_metadata[] = { [ts_builtin_sym_end] = { .visible = false, .named = true, }, [sym_identifier] = { .visible = true, .named = true, }, [anon_sym_BOM] = { .visible = true, .named = false, }, [sym_shebang] = { .visible = true, .named = true, }, [aux_sym_escape_sequence_token1] = { .visible = false, .named = false, }, [aux_sym_escape_sequence_token2] = { .visible = false, .named = false, }, [aux_sym_escape_sequence_token3] = { .visible = false, .named = false, }, [aux_sym_escape_sequence_token4] = { .visible = false, .named = false, }, [aux_sym_escape_sequence_token5] = { .visible = false, .named = false, }, [sym_htmlentity] = { .visible = true, .named = true, }, [sym_end_file] = { .visible = true, .named = true, }, [sym_comment] = { .visible = true, .named = true, }, [anon_sym_q_LBRACE] = { .visible = true, .named = false, }, [anon_sym_RBRACE] = { .visible = true, .named = false, }, [anon_sym_LBRACE] = { .visible = true, .named = false, }, [anon_sym_SLASH] = { .visible = true, .named = false, }, [anon_sym_SLASH_EQ] = { .visible = true, .named = false, }, [anon_sym_DOT] = { .visible = true, .named = false, }, [anon_sym_DOT_DOT] = { .visible = true, .named = false, }, [anon_sym_DOT_DOT_DOT] = { .visible = true, .named = false, }, [anon_sym_AMP] = { .visible = true, .named = false, }, [anon_sym_AMP_EQ] = { .visible = true, .named = false, }, [anon_sym_AMP_AMP] = { .visible = true, .named = false, }, [anon_sym_PIPE] = { .visible = true, .named = false, }, [anon_sym_PIPE_EQ] = { .visible = true, .named = false, }, [anon_sym_PIPE_PIPE] = { .visible = true, .named = false, }, [anon_sym_DASH] = { .visible = true, .named = false, }, [anon_sym_DASH_EQ] = { .visible = true, .named = false, }, [anon_sym_DASH_DASH] = { .visible = true, .named = false, }, [anon_sym_PLUS] = { .visible = true, .named = false, }, [anon_sym_PLUS_EQ] = { .visible = true, .named = false, }, [anon_sym_PLUS_PLUS] = { .visible = true, .named = false, }, [anon_sym_LT] = { .visible = true, .named = false, }, [anon_sym_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_LT_LT] = { .visible = true, .named = false, }, [anon_sym_LT_LT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT] = { .visible = true, .named = false, }, [anon_sym_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_GT_GT_EQ] = { .visible = true, .named = false, }, [anon_sym_GT_GT] = { .visible = true, .named = false, }, [anon_sym_GT_GT_GT] = { .visible = true, .named = false, }, [anon_sym_BANG] = { .visible = true, .named = false, }, [anon_sym_BANG_EQ] = { .visible = true, .named = false, }, [anon_sym_LPAREN] = { .visible = true, .named = false, }, [anon_sym_RPAREN] = { .visible = true, .named = false, }, [anon_sym_LBRACK] = { .visible = true, .named = false, }, [anon_sym_RBRACK] = { .visible = true, .named = false, }, [anon_sym_QMARK] = { .visible = true, .named = false, }, [anon_sym_COMMA] = { .visible = true, .named = false, }, [anon_sym_SEMI] = { .visible = true, .named = false, }, [anon_sym_COLON] = { .visible = true, .named = false, }, [anon_sym_DOLLAR] = { .visible = true, .named = false, }, [anon_sym_EQ] = { .visible = true, .named = false, }, [anon_sym_EQ_EQ] = { .visible = true, .named = false, }, [anon_sym_STAR] = { .visible = true, .named = false, }, [anon_sym_STAR_EQ] = { .visible = true, .named = false, }, [anon_sym_PERCENT] = { .visible = true, .named = false, }, [anon_sym_PERCENT_EQ] = { .visible = true, .named = false, }, [anon_sym_CARET] = { .visible = true, .named = false, }, [anon_sym_CARET_EQ] = { .visible = true, .named = false, }, [anon_sym_CARET_CARET] = { .visible = true, .named = false, }, [anon_sym_CARET_CARET_EQ] = { .visible = true, .named = false, }, [anon_sym_TILDE] = { .visible = true, .named = false, }, [anon_sym_TILDE_EQ] = { .visible = true, .named = false, }, [anon_sym_AT] = { .visible = true, .named = false, }, [anon_sym_EQ_GT] = { .visible = true, .named = false, }, [anon_sym_POUND] = { .visible = true, .named = false, }, [anon_sym_BANGin] = { .visible = true, .named = false, }, [anon_sym_BANGis] = { .visible = true, .named = false, }, [sym_bool] = { .visible = true, .named = true, }, [sym_byte] = { .visible = true, .named = true, }, [sym_ubyte] = { .visible = true, .named = true, }, [sym_char] = { .visible = true, .named = true, }, [sym_short] = { .visible = true, .named = true, }, [sym_ushort] = { .visible = true, .named = true, }, [sym_int] = { .visible = true, .named = true, }, [sym_uint] = { .visible = true, .named = true, }, [sym_long] = { .visible = true, .named = true, }, [sym_ulong] = { .visible = true, .named = true, }, [sym_cent] = { .visible = true, .named = true, }, [sym_ucent] = { .visible = true, .named = true, }, [sym_wchar] = { .visible = true, .named = true, }, [sym_dchar] = { .visible = true, .named = true, }, [sym_float] = { .visible = true, .named = true, }, [sym_double] = { .visible = true, .named = true, }, [sym_real] = { .visible = true, .named = true, }, [sym_ifloat] = { .visible = true, .named = true, }, [sym_idouble] = { .visible = true, .named = true, }, [sym_ireal] = { .visible = true, .named = true, }, [sym_cfloat] = { .visible = true, .named = true, }, [sym_cdouble] = { .visible = true, .named = true, }, [sym_creal] = { .visible = true, .named = true, }, [sym_size_t] = { .visible = true, .named = true, }, [sym_ptrdiff_t] = { .visible = true, .named = true, }, [sym_string] = { .visible = true, .named = true, }, [sym_cstring] = { .visible = true, .named = true, }, [sym_dstring] = { .visible = true, .named = true, }, [sym_wstring] = { .visible = true, .named = true, }, [sym_noreturn] = { .visible = true, .named = true, }, [sym_true] = { .visible = true, .named = true, }, [sym_false] = { .visible = true, .named = true, }, [sym_null] = { .visible = true, .named = true, }, [sym_super] = { .visible = true, .named = true, }, [sym_this] = { .visible = true, .named = true, }, [sym_abstract] = { .visible = true, .named = true, }, [sym_alias] = { .visible = true, .named = true, }, [sym_align] = { .visible = true, .named = true, }, [sym_asm] = { .visible = true, .named = true, }, [sym_assert] = { .visible = true, .named = true, }, [sym_auto] = { .visible = true, .named = true, }, [sym_break] = { .visible = true, .named = true, }, [sym_case] = { .visible = true, .named = true, }, [sym_cast] = { .visible = true, .named = true, }, [sym_catch] = { .visible = true, .named = true, }, [sym_class] = { .visible = true, .named = true, }, [sym_const] = { .visible = true, .named = true, }, [sym_continue] = { .visible = true, .named = true, }, [sym_debug] = { .visible = true, .named = true, }, [sym_default] = { .visible = true, .named = true, }, [sym_delegate] = { .visible = true, .named = true, }, [sym_delete] = { .visible = true, .named = true, }, [sym_deprecated] = { .visible = true, .named = true, }, [sym_do] = { .visible = true, .named = true, }, [sym_else] = { .visible = true, .named = true, }, [sym_enum] = { .visible = true, .named = true, }, [sym_export] = { .visible = true, .named = true, }, [sym_extern] = { .visible = true, .named = true, }, [sym_final] = { .visible = true, .named = true, }, [sym_finally] = { .visible = true, .named = true, }, [sym_for] = { .visible = true, .named = true, }, [sym_foreach] = { .visible = true, .named = true, }, [sym_foreach_reverse] = { .visible = true, .named = true, }, [sym_function] = { .visible = true, .named = true, }, [sym_goto] = { .visible = true, .named = true, }, [sym_if] = { .visible = true, .named = true, }, [sym_immutable] = { .visible = true, .named = true, }, [sym_import] = { .visible = true, .named = true, }, [sym_in] = { .visible = true, .named = true, }, [sym_inout] = { .visible = true, .named = true, }, [sym_interface] = { .visible = true, .named = true, }, [sym_invariant] = { .visible = true, .named = true, }, [sym_is] = { .visible = true, .named = true, }, [sym_lazy] = { .visible = true, .named = true, }, [sym_mixin] = { .visible = true, .named = true, }, [sym_module] = { .visible = true, .named = true, }, [sym_new] = { .visible = true, .named = true, }, [sym_nothrow] = { .visible = true, .named = true, }, [sym_out] = { .visible = true, .named = true, }, [sym_override] = { .visible = true, .named = true, }, [sym_package] = { .visible = true, .named = true, }, [sym_pragma] = { .visible = true, .named = true, }, [sym_private] = { .visible = true, .named = true, }, [sym_protected] = { .visible = true, .named = true, }, [sym_public] = { .visible = true, .named = true, }, [sym_pure] = { .visible = true, .named = true, }, [sym_ref] = { .visible = true, .named = true, }, [sym_return] = { .visible = true, .named = true, }, [sym_scope] = { .visible = true, .named = true, }, [sym_shared] = { .visible = true, .named = true, }, [sym_static] = { .visible = true, .named = true, }, [sym_struct] = { .visible = true, .named = true, }, [sym_switch] = { .visible = true, .named = true, }, [sym_synchronized] = { .visible = true, .named = true, }, [sym_template] = { .visible = true, .named = true, }, [sym_throw] = { .visible = true, .named = true, }, [sym_try] = { .visible = true, .named = true, }, [sym_typeid] = { .visible = true, .named = true, }, [sym_typeof] = { .visible = true, .named = true, }, [sym_union] = { .visible = true, .named = true, }, [sym_unittest] = { .visible = true, .named = true, }, [sym_version] = { .visible = true, .named = true, }, [sym_while] = { .visible = true, .named = true, }, [sym_with] = { .visible = true, .named = true, }, [sym_parameters_] = { .visible = true, .named = true, }, [sym_gshared] = { .visible = true, .named = true, }, [sym_traits] = { .visible = true, .named = true, }, [sym_vector] = { .visible = true, .named = true, }, [sym_void] = { .visible = true, .named = true, }, [anon_sym_C] = { .visible = true, .named = false, }, [anon_sym_D] = { .visible = true, .named = false, }, [anon_sym_Windows] = { .visible = true, .named = false, }, [anon_sym_System] = { .visible = true, .named = false, }, [anon_sym_Objective] = { .visible = true, .named = false, }, [anon_sym_BQUOTE] = { .visible = true, .named = false, }, [aux_sym_raw_string_token1] = { .visible = false, .named = false, }, [aux_sym_raw_string_token2] = { .visible = false, .named = false, }, [anon_sym_r_DQUOTE] = { .visible = true, .named = false, }, [aux_sym_raw_string_token3] = { .visible = false, .named = false, }, [aux_sym_raw_string_token4] = { .visible = false, .named = false, }, [anon_sym_x_DQUOTE] = { .visible = true, .named = false, }, [aux_sym_hex_string_token1] = { .visible = false, .named = false, }, [anon_sym_DQUOTE] = { .visible = true, .named = false, }, [aux_sym_quoted_string_token1] = { .visible = false, .named = false, }, [anon_sym_DOLLAR_LPAREN] = { .visible = true, .named = false, }, [anon_sym_i_BQUOTE] = { .visible = true, .named = false, }, [aux_sym_interpolated_raw_string_token1] = { .visible = false, .named = false, }, [aux_sym_interpolated_raw_string_token2] = { .visible = false, .named = false, }, [anon_sym_DOLLAR_BQUOTE] = { .visible = true, .named = false, }, [sym_interpolated_escape] = { .visible = true, .named = true, }, [anon_sym_i_DQUOTE] = { .visible = true, .named = false, }, [aux_sym_interpolated_quoted_string_token1] = { .visible = false, .named = false, }, [aux_sym_interpolated_quoted_string_token2] = { .visible = false, .named = false, }, [anon_sym_DOLLAR_DQUOTE] = { .visible = true, .named = false, }, [anon_sym_iq_LBRACE] = { .visible = true, .named = false, }, [aux_sym_char_literal_token1] = { .visible = false, .named = false, }, [anon_sym_SQUOTE] = { .visible = true, .named = false, }, [anon_sym___DATE__] = { .visible = true, .named = false, }, [anon_sym___FILE__] = { .visible = true, .named = false, }, [anon_sym___FILE_FULL_PATH__] = { .visible = true, .named = false, }, [anon_sym___FUNCTION__] = { .visible = true, .named = false, }, [anon_sym___LINE__] = { .visible = true, .named = false, }, [anon_sym___MODULE__] = { .visible = true, .named = false, }, [anon_sym___PRETTY_FUNCTION__] = { .visible = true, .named = false, }, [anon_sym___TIME__] = { .visible = true, .named = false, }, [anon_sym___TIMESTAMP__] = { .visible = true, .named = false, }, [anon_sym___VENDOR__] = { .visible = true, .named = false, }, [anon_sym___VERSION__] = { .visible = true, .named = false, }, [anon_sym_exit] = { .visible = true, .named = false, }, [anon_sym_success] = { .visible = true, .named = false, }, [anon_sym_failure] = { .visible = true, .named = false, }, [sym_directive] = { .visible = true, .named = true, }, [sym_int_literal] = { .visible = true, .named = true, }, [sym_float_literal] = { .visible = true, .named = true, }, [sym__string] = { .visible = false, .named = true, }, [sym_not_in] = { .visible = true, .named = true, }, [sym_not_is] = { .visible = true, .named = true, }, [sym__after_eof] = { .visible = false, .named = true, }, [sym_error_sentinel] = { .visible = true, .named = true, }, [sym_source_file] = { .visible = true, .named = true, }, [sym__bom] = { .visible = false, .named = true, }, [sym_escape_sequence] = { .visible = true, .named = true, }, [sym_token_string] = { .visible = true, .named = true, }, [aux_sym__token_string_tokens] = { .visible = false, .named = false, }, [sym__token_string_token] = { .visible = false, .named = true, }, [sym__token_no_braces] = { .visible = false, .named = true, }, [sym_keyword] = { .visible = true, .named = true, }, [sym_dollar] = { .visible = true, .named = true, }, [sym_module_def] = { .visible = true, .named = true, }, [sym_module_declaration] = { .visible = true, .named = true, }, [sym_module_fqn] = { .visible = true, .named = true, }, [sym_import_declaration] = { .visible = true, .named = true, }, [sym__import_list] = { .visible = false, .named = true, }, [sym_imported] = { .visible = true, .named = true, }, [sym_import_bind] = { .visible = true, .named = true, }, [sym_mixin_declaration] = { .visible = true, .named = true, }, [sym__declaration] = { .visible = false, .named = true, }, [sym__declaration2] = { .visible = false, .named = true, }, [sym_variable_declaration] = { .visible = true, .named = true, }, [sym_declarator] = { .visible = true, .named = true, }, [sym_bitfield_declarator] = { .visible = true, .named = true, }, [sym_manifest_constant] = { .visible = true, .named = true, }, [sym_manifest_declarator] = { .visible = true, .named = true, }, [sym_storage_class] = { .visible = true, .named = true, }, [sym__initializer] = { .visible = false, .named = true, }, [sym_auto_declaration] = { .visible = true, .named = true, }, [sym__auto_assignment] = { .visible = false, .named = true, }, [sym_alias_declaration] = { .visible = true, .named = true, }, [sym_alias_initializer] = { .visible = true, .named = true, }, [sym_alias_reassign] = { .visible = true, .named = true, }, [sym_type] = { .visible = true, .named = true, }, [sym_type_ctor] = { .visible = true, .named = true, }, [sym__type2] = { .visible = false, .named = true, }, [sym_vector_type] = { .visible = true, .named = true, }, [sym__builtin_type] = { .visible = false, .named = true, }, [sym__type_suffix] = { .visible = false, .named = true, }, [sym__qualified_id] = { .visible = false, .named = true, }, [sym_typeof_expression] = { .visible = true, .named = true, }, [sym_attribute_declaration] = { .visible = true, .named = true, }, [sym_align_attribute] = { .visible = true, .named = true, }, [sym_deprecated_attribute] = { .visible = true, .named = true, }, [sym__attribute] = { .visible = false, .named = true, }, [sym_at_attribute] = { .visible = true, .named = true, }, [sym__function_attribute_kwd] = { .visible = false, .named = true, }, [sym_linkage_attribute] = { .visible = true, .named = true, }, [sym__argument_list] = { .visible = false, .named = true, }, [sym_arguments] = { .visible = true, .named = true, }, [sym_named_argument] = { .visible = true, .named = true, }, [sym__named_argument_list] = { .visible = false, .named = true, }, [sym_named_arguments] = { .visible = true, .named = true, }, [sym_pragma_declaration] = { .visible = true, .named = true, }, [sym_pragma_statement] = { .visible = true, .named = true, }, [sym_pragma_expression] = { .visible = true, .named = true, }, [sym_expression_list] = { .visible = true, .named = true, }, [sym_expression] = { .visible = true, .named = true, }, [sym__expr] = { .visible = false, .named = true, }, [sym_ternary_expression] = { .visible = true, .named = true, }, [sym_call_expression] = { .visible = true, .named = true, }, [sym_primary_expression] = { .visible = true, .named = true, }, [sym__primary_expr] = { .visible = false, .named = true, }, [sym_index_expression] = { .visible = true, .named = true, }, [sym_index] = { .visible = true, .named = true, }, [sym_assignment_expression] = { .visible = true, .named = true, }, [sym_binary_expression] = { .visible = true, .named = true, }, [sym_logical_or_expression] = { .visible = true, .named = true, }, [sym_logical_and_expression] = { .visible = true, .named = true, }, [sym_or_expression] = { .visible = true, .named = true, }, [sym_xor_expression] = { .visible = true, .named = true, }, [sym_and_expression] = { .visible = true, .named = true, }, [sym_equal_expression] = { .visible = true, .named = true, }, [sym_rel_expression] = { .visible = true, .named = true, }, [sym_identity_expression] = { .visible = true, .named = true, }, [sym_add_expression] = { .visible = true, .named = true, }, [sym_mul_expression] = { .visible = true, .named = true, }, [sym_shift_expression] = { .visible = true, .named = true, }, [sym_power_expression] = { .visible = true, .named = true, }, [sym_postfix_expression] = { .visible = true, .named = true, }, [sym_unary_expression] = { .visible = true, .named = true, }, [sym__unary_expr] = { .visible = false, .named = true, }, [sym_property_expression] = { .visible = true, .named = true, }, [sym_cast_expression] = { .visible = true, .named = true, }, [sym_cast_qualifier] = { .visible = true, .named = true, }, [sym_delete_expression] = { .visible = true, .named = true, }, [sym_throw_expression] = { .visible = true, .named = true, }, [sym_assert_expression] = { .visible = true, .named = true, }, [sym_assert_arguments] = { .visible = true, .named = true, }, [sym_mixin_expression] = { .visible = true, .named = true, }, [sym_import_expression] = { .visible = true, .named = true, }, [sym_new_expression] = { .visible = true, .named = true, }, [sym_typeid_expression] = { .visible = true, .named = true, }, [sym_is_expression] = { .visible = true, .named = true, }, [sym_type_specialization] = { .visible = true, .named = true, }, [sym_raw_string] = { .visible = true, .named = true, }, [sym_hex_string] = { .visible = true, .named = true, }, [sym_quoted_string] = { .visible = true, .named = true, }, [sym_interpolation_expression] = { .visible = true, .named = true, }, [sym_interpolated_raw_string] = { .visible = true, .named = true, }, [sym_interpolated_quoted_string] = { .visible = true, .named = true, }, [sym_interpolated_token_string] = { .visible = true, .named = true, }, [aux_sym__i_token_string_tokens] = { .visible = false, .named = false, }, [sym_string_literal] = { .visible = true, .named = true, }, [sym_char_literal] = { .visible = true, .named = true, }, [sym_array_literal] = { .visible = true, .named = true, }, [sym__array_member_init] = { .visible = false, .named = true, }, [sym_function_literal] = { .visible = true, .named = true, }, [sym__parameter_with_attributes] = { .visible = false, .named = true, }, [sym__parameter_with_member_attributes] = { .visible = false, .named = true, }, [sym_special_keyword] = { .visible = true, .named = true, }, [sym__statement] = { .visible = false, .named = true, }, [aux_sym__declarations_and_statements] = { .visible = false, .named = false, }, [sym__declaration_or_statement] = { .visible = false, .named = true, }, [sym_scope_statement] = { .visible = true, .named = true, }, [sym__statement_no_case_no_default] = { .visible = false, .named = true, }, [sym_labeled_statement] = { .visible = true, .named = true, }, [sym_label] = { .visible = true, .named = true, }, [sym_block_statement] = { .visible = true, .named = true, }, [sym_expression_statement] = { .visible = true, .named = true, }, [sym_if_statement] = { .visible = true, .named = true, }, [sym_if_condition] = { .visible = true, .named = true, }, [sym_while_statement] = { .visible = true, .named = true, }, [sym_do_statement] = { .visible = true, .named = true, }, [sym_for_statement] = { .visible = true, .named = true, }, [sym__foreach] = { .visible = false, .named = true, }, [sym_foreach_statement] = { .visible = true, .named = true, }, [sym_foreach_type] = { .visible = true, .named = true, }, [sym_switch_statement] = { .visible = true, .named = true, }, [sym_case_statement] = { .visible = true, .named = true, }, [sym_final_switch_statement] = { .visible = true, .named = true, }, [sym_continue_statement] = { .visible = true, .named = true, }, [sym_break_statement] = { .visible = true, .named = true, }, [sym_return_statement] = { .visible = true, .named = true, }, [sym_goto_statement] = { .visible = true, .named = true, }, [sym_with_statement] = { .visible = true, .named = true, }, [sym_synchronized_statement] = { .visible = true, .named = true, }, [sym_try_statement] = { .visible = true, .named = true, }, [sym_catch_statement] = { .visible = true, .named = true, }, [sym_finally_statement] = { .visible = true, .named = true, }, [sym_scope_guard_statement] = { .visible = true, .named = true, }, [sym_asm_statement] = { .visible = true, .named = true, }, [sym_asm_inline] = { .visible = true, .named = true, }, [sym_struct_declaration] = { .visible = true, .named = true, }, [sym_union_declaration] = { .visible = true, .named = true, }, [sym_aggregate_body] = { .visible = true, .named = true, }, [sym_aggregate_initializer] = { .visible = true, .named = true, }, [sym_member_initializer] = { .visible = true, .named = true, }, [sym_postblit] = { .visible = true, .named = true, }, [sym_invariant_declaration] = { .visible = true, .named = true, }, [sym_class_declaration] = { .visible = true, .named = true, }, [sym__base_class_list] = { .visible = false, .named = true, }, [sym_base_class] = { .visible = true, .named = true, }, [sym_constructor] = { .visible = true, .named = true, }, [sym_destructor] = { .visible = true, .named = true, }, [sym_alias_this] = { .visible = true, .named = true, }, [sym_interface_declaration] = { .visible = true, .named = true, }, [sym_enum_declaration] = { .visible = true, .named = true, }, [sym__enum_body] = { .visible = false, .named = true, }, [sym__enum_member_attribute] = { .visible = false, .named = true, }, [sym_enum_member] = { .visible = true, .named = true, }, [sym_anonymous_enum_declaration] = { .visible = true, .named = true, }, [sym_anonymous_enum_member] = { .visible = true, .named = true, }, [sym_function_declaration] = { .visible = true, .named = true, }, [sym_parameters] = { .visible = true, .named = true, }, [sym__parameters] = { .visible = false, .named = true, }, [sym_parameter] = { .visible = true, .named = true, }, [sym_parameter_attribute] = { .visible = true, .named = true, }, [sym_ellipses] = { .visible = true, .named = true, }, [aux_sym__variadic_arguments_attributes] = { .visible = false, .named = false, }, [sym_variadic_arguments_attribute] = { .visible = true, .named = true, }, [sym__function_attribute] = { .visible = false, .named = true, }, [sym_member_function_attribute] = { .visible = true, .named = true, }, [sym_function_body] = { .visible = true, .named = true, }, [sym__specified_function_body] = { .visible = false, .named = true, }, [sym__function_contract] = { .visible = false, .named = true, }, [aux_sym__in_out_contract_expressions] = { .visible = false, .named = false, }, [sym__in_out_contract_expression] = { .visible = false, .named = true, }, [sym__in_out_statement] = { .visible = false, .named = true, }, [sym_in_contract_expression] = { .visible = true, .named = true, }, [sym_out_contract_expression] = { .visible = true, .named = true, }, [sym_in_statement] = { .visible = true, .named = true, }, [sym_out_statement] = { .visible = true, .named = true, }, [sym_template_declaration] = { .visible = true, .named = true, }, [sym_template_instance] = { .visible = true, .named = true, }, [sym_template_arguments] = { .visible = true, .named = true, }, [sym_template_argument] = { .visible = true, .named = true, }, [sym__template_argument_list] = { .visible = false, .named = true, }, [sym__template_single_arg] = { .visible = false, .named = true, }, [sym_template_parameter] = { .visible = true, .named = true, }, [sym_template_parameters] = { .visible = true, .named = true, }, [sym__template_parameter_list] = { .visible = false, .named = true, }, [sym_constraint] = { .visible = true, .named = true, }, [sym_mixin_template_declaration] = { .visible = true, .named = true, }, [sym_template_mixin] = { .visible = true, .named = true, }, [sym_conditional_declaration] = { .visible = true, .named = true, }, [sym_conditional_statement] = { .visible = true, .named = true, }, [sym_condition] = { .visible = true, .named = true, }, [sym_version_condition] = { .visible = true, .named = true, }, [sym_version_specification] = { .visible = true, .named = true, }, [sym_debug_condition] = { .visible = true, .named = true, }, [sym_debug_specification] = { .visible = true, .named = true, }, [sym_static_if_condition] = { .visible = true, .named = true, }, [sym_static_foreach_statement] = { .visible = true, .named = true, }, [sym_static_foreach_declaration] = { .visible = true, .named = true, }, [sym_static_assert] = { .visible = true, .named = true, }, [sym_traits_expression] = { .visible = true, .named = true, }, [sym_unittest_declaration] = { .visible = true, .named = true, }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, }, [aux_sym_module_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_module_fqn_repeat1] = { .visible = false, .named = false, }, [aux_sym_import_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym__import_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_variable_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_variable_declaration_repeat2] = { .visible = false, .named = false, }, [aux_sym__declarator_identifier_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_manifest_constant_repeat1] = { .visible = false, .named = false, }, [aux_sym_auto_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_alias_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_alias_declaration_repeat2] = { .visible = false, .named = false, }, [aux_sym_type_repeat1] = { .visible = false, .named = false, }, [aux_sym_type_repeat2] = { .visible = false, .named = false, }, [aux_sym__type_suffix_repeat1] = { .visible = false, .named = false, }, [aux_sym__argument_list_repeat1] = { .visible = false, .named = false, }, [aux_sym__named_argument_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_expression_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_index_expression_repeat1] = { .visible = false, .named = false, }, [aux_sym_quoted_string_repeat1] = { .visible = false, .named = false, }, [aux_sym_interpolated_raw_string_repeat1] = { .visible = false, .named = false, }, [aux_sym_interpolated_quoted_string_repeat1] = { .visible = false, .named = false, }, [aux_sym_array_literal_repeat1] = { .visible = false, .named = false, }, [aux_sym_foreach_statement_repeat1] = { .visible = false, .named = false, }, [aux_sym_foreach_type_repeat1] = { .visible = false, .named = false, }, [aux_sym_case_statement_repeat1] = { .visible = false, .named = false, }, [aux_sym_try_statement_repeat1] = { .visible = false, .named = false, }, [aux_sym_asm_inline_repeat1] = { .visible = false, .named = false, }, [aux_sym_aggregate_initializer_repeat1] = { .visible = false, .named = false, }, [aux_sym__base_class_list_repeat1] = { .visible = false, .named = false, }, [aux_sym__enum_body_repeat1] = { .visible = false, .named = false, }, [aux_sym_enum_member_repeat1] = { .visible = false, .named = false, }, [aux_sym_anonymous_enum_declaration_repeat1] = { .visible = false, .named = false, }, [aux_sym_parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym__parameters_repeat1] = { .visible = false, .named = false, }, [aux_sym__parameter_repeat1] = { .visible = false, .named = false, }, [aux_sym_function_body_repeat1] = { .visible = false, .named = false, }, [aux_sym__template_argument_list_repeat1] = { .visible = false, .named = false, }, [aux_sym__template_parameter_list_repeat1] = { .visible = false, .named = false, }, [aux_sym_template_mixin_repeat1] = { .visible = false, .named = false, }, [alias_sym_namespace_list] = { .visible = true, .named = true, }, }; enum ts_field_identifiers { field_alias = 1, field_alternative = 2, field_body = 3, field_condition = 4, field_consequence = 5, field_init = 6, field_key = 7, field_operand = 8, field_operator = 9, field_step = 10, field_test = 11, field_value = 12, field_variable = 13, }; static const char * const ts_field_names[] = { [0] = NULL, [field_alias] = "alias", [field_alternative] = "alternative", [field_body] = "body", [field_condition] = "condition", [field_consequence] = "consequence", [field_init] = "init", [field_key] = "key", [field_operand] = "operand", [field_operator] = "operator", [field_step] = "step", [field_test] = "test", [field_value] = "value", [field_variable] = "variable", }; static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [1] = {.index = 0, .length = 2}, [2] = {.index = 2, .length = 1}, [3] = {.index = 3, .length = 1}, [4] = {.index = 4, .length = 1}, [5] = {.index = 5, .length = 1}, [6] = {.index = 6, .length = 1}, [7] = {.index = 7, .length = 1}, [8] = {.index = 8, .length = 2}, [9] = {.index = 10, .length = 2}, [10] = {.index = 12, .length = 4}, [11] = {.index = 16, .length = 4}, [12] = {.index = 20, .length = 2}, [13] = {.index = 22, .length = 1}, [14] = {.index = 23, .length = 1}, [15] = {.index = 24, .length = 4}, [16] = {.index = 28, .length = 2}, [17] = {.index = 30, .length = 2}, [18] = {.index = 32, .length = 4}, [19] = {.index = 36, .length = 4}, [20] = {.index = 40, .length = 1}, [21] = {.index = 41, .length = 2}, [22] = {.index = 43, .length = 1}, [23] = {.index = 44, .length = 3}, [25] = {.index = 47, .length = 1}, [26] = {.index = 48, .length = 2}, [27] = {.index = 50, .length = 2}, [28] = {.index = 52, .length = 2}, [29] = {.index = 54, .length = 1}, [30] = {.index = 55, .length = 2}, [31] = {.index = 57, .length = 2}, [32] = {.index = 59, .length = 3}, [33] = {.index = 62, .length = 2}, [34] = {.index = 64, .length = 2}, [35] = {.index = 66, .length = 3}, [36] = {.index = 69, .length = 3}, [37] = {.index = 72, .length = 1}, [38] = {.index = 73, .length = 3}, [39] = {.index = 76, .length = 4}, [40] = {.index = 80, .length = 1}, [41] = {.index = 81, .length = 1}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = {field_value, 1, .inherited = true}, {field_variable, 1, .inherited = true}, [2] = {field_operator, 0}, [3] = {field_value, 0}, [4] = {field_operator, 1}, [5] = {field_alias, 0}, [6] = {field_body, 1}, [7] = {field_consequence, 1}, [8] = {field_value, 2, .inherited = true}, {field_variable, 2, .inherited = true}, [10] = {field_value, 2}, {field_variable, 0}, [12] = {field_value, 1, .inherited = true}, {field_value, 2, .inherited = true}, {field_variable, 1, .inherited = true}, {field_variable, 2, .inherited = true}, [16] = {field_value, 0, .inherited = true}, {field_value, 1, .inherited = true}, {field_variable, 0, .inherited = true}, {field_variable, 1, .inherited = true}, [20] = {field_key, 1, .inherited = true}, {field_value, 1, .inherited = true}, [22] = {field_consequence, 2}, [23] = {field_body, 2}, [24] = {field_value, 2, .inherited = true}, {field_value, 3, .inherited = true}, {field_variable, 2, .inherited = true}, {field_variable, 3, .inherited = true}, [28] = {field_value, 3}, {field_variable, 0}, [30] = {field_key, 0}, {field_value, 2}, [32] = {field_key, 1, .inherited = true}, {field_key, 2, .inherited = true}, {field_value, 1, .inherited = true}, {field_value, 2, .inherited = true}, [36] = {field_key, 0, .inherited = true}, {field_key, 1, .inherited = true}, {field_value, 0, .inherited = true}, {field_value, 1, .inherited = true}, [40] = {field_operand, 3}, [41] = {field_alternative, 3}, {field_consequence, 1}, [43] = {field_operand, 4}, [44] = {field_alternative, 4}, {field_condition, 0}, {field_consequence, 2}, [47] = {field_body, 4}, [48] = {field_body, 4}, {field_init, 2}, [50] = {field_alternative, 4}, {field_consequence, 2}, [52] = {field_body, 1}, {field_condition, 4}, [54] = {field_body, 5}, [55] = {field_body, 5}, {field_test, 3}, [57] = {field_body, 5}, {field_init, 2}, [59] = {field_body, 5}, {field_init, 2}, {field_test, 3}, [62] = {field_body, 6}, {field_step, 4}, [64] = {field_body, 6}, {field_test, 3}, [66] = {field_body, 6}, {field_init, 2}, {field_step, 4}, [69] = {field_body, 6}, {field_init, 2}, {field_test, 3}, [72] = {field_body, 6}, [73] = {field_body, 7}, {field_step, 5}, {field_test, 3}, [76] = {field_body, 7}, {field_init, 2}, {field_step, 5}, {field_test, 3}, [80] = {field_body, 7}, [81] = {field_body, 8}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, [24] = { [5] = alias_sym_namespace_list, }, }; static const uint16_t ts_non_terminal_alias_map[] = { sym__argument_list, 2, sym__argument_list, alias_sym_namespace_list, 0, }; static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, [3] = 2, [4] = 4, [5] = 5, [6] = 6, [7] = 7, [8] = 4, [9] = 4, [10] = 7, [11] = 11, [12] = 11, [13] = 6, [14] = 11, [15] = 11, [16] = 11, [17] = 11, [18] = 18, [19] = 11, [20] = 11, [21] = 21, [22] = 6, [23] = 23, [24] = 18, [25] = 18, [26] = 11, [27] = 6, [28] = 7, [29] = 29, [30] = 30, [31] = 31, [32] = 32, [33] = 33, [34] = 34, [35] = 4, [36] = 11, [37] = 11, [38] = 18, [39] = 6, [40] = 7, [41] = 11, [42] = 7, [43] = 4, [44] = 18, [45] = 45, [46] = 46, [47] = 47, [48] = 48, [49] = 49, [50] = 50, [51] = 46, [52] = 50, [53] = 46, [54] = 49, [55] = 48, [56] = 45, [57] = 48, [58] = 32, [59] = 48, [60] = 47, [61] = 50, [62] = 46, [63] = 49, [64] = 45, [65] = 48, [66] = 47, [67] = 31, [68] = 50, [69] = 46, [70] = 49, [71] = 48, [72] = 30, [73] = 45, [74] = 49, [75] = 46, [76] = 50, [77] = 48, [78] = 33, [79] = 47, [80] = 34, [81] = 45, [82] = 45, [83] = 48, [84] = 47, [85] = 29, [86] = 47, [87] = 50, [88] = 45, [89] = 49, [90] = 5, [91] = 45, [92] = 48, [93] = 48, [94] = 23, [95] = 49, [96] = 45, [97] = 47, [98] = 47, [99] = 50, [100] = 46, [101] = 46, [102] = 50, [103] = 46, [104] = 49, [105] = 47, [106] = 50, [107] = 45, [108] = 21, [109] = 45, [110] = 46, [111] = 50, [112] = 48, [113] = 45, [114] = 47, [115] = 50, [116] = 45, [117] = 47, [118] = 118, [119] = 46, [120] = 50, [121] = 46, [122] = 49, [123] = 49, [124] = 48, [125] = 47, [126] = 50, [127] = 46, [128] = 49, [129] = 47, [130] = 49, [131] = 131, [132] = 132, [133] = 133, [134] = 134, [135] = 135, [136] = 136, [137] = 137, [138] = 138, [139] = 139, [140] = 140, [141] = 141, [142] = 142, [143] = 143, [144] = 144, [145] = 145, [146] = 132, [147] = 131, [148] = 148, [149] = 149, [150] = 150, [151] = 151, [152] = 152, [153] = 153, [154] = 153, [155] = 155, [156] = 156, [157] = 157, [158] = 23, [159] = 5, [160] = 152, [161] = 161, [162] = 149, [163] = 161, [164] = 157, [165] = 156, [166] = 155, [167] = 150, [168] = 151, [169] = 169, [170] = 133, [171] = 134, [172] = 135, [173] = 136, [174] = 137, [175] = 138, [176] = 139, [177] = 140, [178] = 141, [179] = 142, [180] = 143, [181] = 144, [182] = 145, [183] = 132, [184] = 131, [185] = 148, [186] = 149, [187] = 187, [188] = 148, [189] = 152, [190] = 29, [191] = 161, [192] = 192, [193] = 193, [194] = 30, [195] = 157, [196] = 31, [197] = 152, [198] = 131, [199] = 193, [200] = 132, [201] = 145, [202] = 156, [203] = 161, [204] = 157, [205] = 156, [206] = 155, [207] = 150, [208] = 144, [209] = 192, [210] = 151, [211] = 169, [212] = 133, [213] = 134, [214] = 135, [215] = 136, [216] = 137, [217] = 138, [218] = 139, [219] = 140, [220] = 141, [221] = 142, [222] = 143, [223] = 144, [224] = 145, [225] = 132, [226] = 131, [227] = 148, [228] = 149, [229] = 143, [230] = 230, [231] = 152, [232] = 142, [233] = 32, [234] = 155, [235] = 192, [236] = 141, [237] = 149, [238] = 140, [239] = 139, [240] = 148, [241] = 187, [242] = 161, [243] = 157, [244] = 156, [245] = 155, [246] = 150, [247] = 151, [248] = 150, [249] = 169, [250] = 133, [251] = 134, [252] = 135, [253] = 136, [254] = 137, [255] = 138, [256] = 139, [257] = 140, [258] = 141, [259] = 142, [260] = 143, [261] = 144, [262] = 145, [263] = 132, [264] = 131, [265] = 148, [266] = 149, [267] = 267, [268] = 187, [269] = 152, [270] = 138, [271] = 137, [272] = 192, [273] = 230, [274] = 136, [275] = 193, [276] = 135, [277] = 152, [278] = 132, [279] = 267, [280] = 161, [281] = 157, [282] = 156, [283] = 155, [284] = 150, [285] = 151, [286] = 169, [287] = 133, [288] = 134, [289] = 135, [290] = 136, [291] = 137, [292] = 138, [293] = 139, [294] = 140, [295] = 141, [296] = 142, [297] = 143, [298] = 144, [299] = 145, [300] = 132, [301] = 131, [302] = 148, [303] = 149, [304] = 132, [305] = 192, [306] = 152, [307] = 134, [308] = 145, [309] = 230, [310] = 267, [311] = 193, [312] = 144, [313] = 133, [314] = 143, [315] = 142, [316] = 267, [317] = 187, [318] = 192, [319] = 161, [320] = 157, [321] = 156, [322] = 230, [323] = 155, [324] = 150, [325] = 151, [326] = 169, [327] = 133, [328] = 134, [329] = 135, [330] = 136, [331] = 137, [332] = 138, [333] = 139, [334] = 140, [335] = 141, [336] = 142, [337] = 153, [338] = 143, [339] = 144, [340] = 145, [341] = 132, [342] = 131, [343] = 148, [344] = 33, [345] = 149, [346] = 193, [347] = 192, [348] = 169, [349] = 230, [350] = 151, [351] = 152, [352] = 193, [353] = 151, [354] = 150, [355] = 141, [356] = 169, [357] = 230, [358] = 187, [359] = 155, [360] = 140, [361] = 133, [362] = 267, [363] = 34, [364] = 230, [365] = 139, [366] = 156, [367] = 138, [368] = 137, [369] = 134, [370] = 192, [371] = 230, [372] = 135, [373] = 161, [374] = 157, [375] = 156, [376] = 136, [377] = 155, [378] = 150, [379] = 151, [380] = 169, [381] = 133, [382] = 134, [383] = 135, [384] = 136, [385] = 137, [386] = 138, [387] = 139, [388] = 140, [389] = 141, [390] = 142, [391] = 143, [392] = 144, [393] = 145, [394] = 132, [395] = 131, [396] = 148, [397] = 149, [398] = 136, [399] = 230, [400] = 137, [401] = 138, [402] = 152, [403] = 193, [404] = 135, [405] = 157, [406] = 134, [407] = 139, [408] = 140, [409] = 141, [410] = 161, [411] = 230, [412] = 192, [413] = 133, [414] = 142, [415] = 152, [416] = 169, [417] = 151, [418] = 143, [419] = 192, [420] = 144, [421] = 145, [422] = 161, [423] = 157, [424] = 156, [425] = 153, [426] = 155, [427] = 187, [428] = 150, [429] = 151, [430] = 169, [431] = 133, [432] = 267, [433] = 134, [434] = 135, [435] = 136, [436] = 137, [437] = 138, [438] = 139, [439] = 140, [440] = 141, [441] = 150, [442] = 142, [443] = 155, [444] = 143, [445] = 144, [446] = 145, [447] = 169, [448] = 131, [449] = 131, [450] = 156, [451] = 148, [452] = 149, [453] = 157, [454] = 161, [455] = 192, [456] = 149, [457] = 193, [458] = 148, [459] = 152, [460] = 193, [461] = 193, [462] = 131, [463] = 193, [464] = 132, [465] = 230, [466] = 145, [467] = 144, [468] = 143, [469] = 142, [470] = 230, [471] = 141, [472] = 140, [473] = 139, [474] = 138, [475] = 137, [476] = 136, [477] = 148, [478] = 193, [479] = 21, [480] = 135, [481] = 149, [482] = 192, [483] = 161, [484] = 157, [485] = 156, [486] = 155, [487] = 150, [488] = 151, [489] = 169, [490] = 133, [491] = 134, [492] = 34, [493] = 493, [494] = 493, [495] = 493, [496] = 21, [497] = 493, [498] = 493, [499] = 493, [500] = 29, [501] = 493, [502] = 493, [503] = 30, [504] = 33, [505] = 493, [506] = 23, [507] = 31, [508] = 493, [509] = 493, [510] = 32, [511] = 493, [512] = 5, [513] = 513, [514] = 513, [515] = 513, [516] = 513, [517] = 513, [518] = 513, [519] = 513, [520] = 513, [521] = 513, [522] = 513, [523] = 513, [524] = 513, [525] = 525, [526] = 526, [527] = 526, [528] = 526, [529] = 529, [530] = 529, [531] = 529, [532] = 529, [533] = 526, [534] = 529, [535] = 529, [536] = 529, [537] = 526, [538] = 526, [539] = 526, [540] = 526, [541] = 529, [542] = 529, [543] = 529, [544] = 526, [545] = 526, [546] = 529, [547] = 529, [548] = 529, [549] = 526, [550] = 550, [551] = 526, [552] = 526, [553] = 553, [554] = 553, [555] = 555, [556] = 556, [557] = 555, [558] = 553, [559] = 556, [560] = 553, [561] = 556, [562] = 553, [563] = 553, [564] = 556, [565] = 553, [566] = 566, [567] = 553, [568] = 556, [569] = 553, [570] = 556, [571] = 556, [572] = 572, [573] = 553, [574] = 556, [575] = 556, [576] = 553, [577] = 572, [578] = 556, [579] = 556, [580] = 553, [581] = 556, [582] = 553, [583] = 556, [584] = 584, [585] = 585, [586] = 586, [587] = 587, [588] = 588, [589] = 588, [590] = 590, [591] = 588, [592] = 587, [593] = 587, [594] = 594, [595] = 587, [596] = 596, [597] = 597, [598] = 598, [599] = 588, [600] = 600, [601] = 601, [602] = 602, [603] = 603, [604] = 604, [605] = 596, [606] = 586, [607] = 590, [608] = 585, [609] = 594, [610] = 602, [611] = 601, [612] = 600, [613] = 584, [614] = 598, [615] = 597, [616] = 616, [617] = 616, [618] = 616, [619] = 616, [620] = 620, [621] = 621, [622] = 622, [623] = 623, [624] = 624, [625] = 625, [626] = 626, [627] = 627, [628] = 628, [629] = 629, [630] = 630, [631] = 631, [632] = 632, [633] = 633, [634] = 634, [635] = 635, [636] = 636, [637] = 637, [638] = 638, [639] = 639, [640] = 640, [641] = 640, [642] = 621, [643] = 627, [644] = 626, [645] = 622, [646] = 634, [647] = 629, [648] = 635, [649] = 624, [650] = 625, [651] = 636, [652] = 637, [653] = 620, [654] = 628, [655] = 631, [656] = 632, [657] = 633, [658] = 639, [659] = 623, [660] = 630, [661] = 661, [662] = 662, [663] = 663, [664] = 664, [665] = 665, [666] = 666, [667] = 667, [668] = 668, [669] = 669, [670] = 663, [671] = 668, [672] = 672, [673] = 672, [674] = 672, [675] = 672, [676] = 663, [677] = 672, [678] = 669, [679] = 672, [680] = 666, [681] = 661, [682] = 662, [683] = 664, [684] = 672, [685] = 672, [686] = 672, [687] = 667, [688] = 672, [689] = 663, [690] = 672, [691] = 672, [692] = 665, [693] = 693, [694] = 693, [695] = 693, [696] = 696, [697] = 662, [698] = 698, [699] = 698, [700] = 700, [701] = 701, [702] = 700, [703] = 703, [704] = 700, [705] = 703, [706] = 706, [707] = 701, [708] = 708, [709] = 706, [710] = 706, [711] = 701, [712] = 703, [713] = 713, [714] = 714, [715] = 715, [716] = 715, [717] = 717, [718] = 715, [719] = 719, [720] = 720, [721] = 721, [722] = 721, [723] = 714, [724] = 724, [725] = 714, [726] = 719, [727] = 721, [728] = 714, [729] = 724, [730] = 714, [731] = 719, [732] = 721, [733] = 724, [734] = 719, [735] = 735, [736] = 721, [737] = 724, [738] = 719, [739] = 721, [740] = 724, [741] = 717, [742] = 742, [743] = 715, [744] = 744, [745] = 719, [746] = 721, [747] = 724, [748] = 719, [749] = 719, [750] = 719, [751] = 719, [752] = 715, [753] = 714, [754] = 754, [755] = 720, [756] = 754, [757] = 714, [758] = 715, [759] = 759, [760] = 714, [761] = 715, [762] = 715, [763] = 714, [764] = 715, [765] = 719, [766] = 715, [767] = 714, [768] = 715, [769] = 714, [770] = 717, [771] = 724, [772] = 720, [773] = 719, [774] = 754, [775] = 775, [776] = 776, [777] = 777, [778] = 778, [779] = 779, [780] = 780, [781] = 779, [782] = 778, [783] = 783, [784] = 783, [785] = 785, [786] = 786, [787] = 787, [788] = 776, [789] = 789, [790] = 777, [791] = 791, [792] = 792, [793] = 791, [794] = 787, [795] = 783, [796] = 779, [797] = 777, [798] = 791, [799] = 799, [800] = 787, [801] = 801, [802] = 777, [803] = 776, [804] = 804, [805] = 799, [806] = 787, [807] = 778, [808] = 808, [809] = 777, [810] = 783, [811] = 787, [812] = 777, [813] = 783, [814] = 814, [815] = 815, [816] = 787, [817] = 791, [818] = 775, [819] = 819, [820] = 783, [821] = 821, [822] = 775, [823] = 779, [824] = 787, [825] = 825, [826] = 776, [827] = 801, [828] = 828, [829] = 819, [830] = 783, [831] = 831, [832] = 785, [833] = 833, [834] = 777, [835] = 787, [836] = 791, [837] = 777, [838] = 838, [839] = 777, [840] = 840, [841] = 819, [842] = 783, [843] = 778, [844] = 783, [845] = 799, [846] = 791, [847] = 787, [848] = 778, [849] = 779, [850] = 850, [851] = 851, [852] = 787, [853] = 853, [854] = 785, [855] = 791, [856] = 791, [857] = 801, [858] = 791, [859] = 776, [860] = 860, [861] = 778, [862] = 778, [863] = 787, [864] = 778, [865] = 828, [866] = 783, [867] = 799, [868] = 801, [869] = 801, [870] = 777, [871] = 871, [872] = 799, [873] = 777, [874] = 777, [875] = 783, [876] = 787, [877] = 783, [878] = 785, [879] = 819, [880] = 791, [881] = 881, [882] = 799, [883] = 791, [884] = 775, [885] = 885, [886] = 886, [887] = 887, [888] = 888, [889] = 889, [890] = 890, [891] = 891, [892] = 892, [893] = 893, [894] = 894, [895] = 895, [896] = 896, [897] = 897, [898] = 890, [899] = 888, [900] = 900, [901] = 901, [902] = 902, [903] = 903, [904] = 904, [905] = 905, [906] = 890, [907] = 907, [908] = 891, [909] = 909, [910] = 890, [911] = 911, [912] = 912, [913] = 903, [914] = 885, [915] = 905, [916] = 897, [917] = 901, [918] = 894, [919] = 919, [920] = 895, [921] = 921, [922] = 896, [923] = 890, [924] = 890, [925] = 897, [926] = 900, [927] = 901, [928] = 900, [929] = 897, [930] = 919, [931] = 902, [932] = 903, [933] = 909, [934] = 919, [935] = 896, [936] = 886, [937] = 885, [938] = 896, [939] = 891, [940] = 892, [941] = 885, [942] = 887, [943] = 894, [944] = 894, [945] = 902, [946] = 895, [947] = 895, [948] = 896, [949] = 897, [950] = 900, [951] = 901, [952] = 902, [953] = 891, [954] = 894, [955] = 911, [956] = 885, [957] = 895, [958] = 887, [959] = 886, [960] = 960, [961] = 903, [962] = 903, [963] = 902, [964] = 901, [965] = 891, [966] = 900, [967] = 904, [968] = 897, [969] = 901, [970] = 888, [971] = 885, [972] = 891, [973] = 919, [974] = 894, [975] = 895, [976] = 887, [977] = 977, [978] = 905, [979] = 902, [980] = 896, [981] = 890, [982] = 885, [983] = 896, [984] = 984, [985] = 890, [986] = 897, [987] = 896, [988] = 900, [989] = 901, [990] = 902, [991] = 903, [992] = 890, [993] = 919, [994] = 894, [995] = 895, [996] = 896, [997] = 897, [998] = 919, [999] = 900, [1000] = 919, [1001] = 888, [1002] = 901, [1003] = 891, [1004] = 902, [1005] = 903, [1006] = 911, [1007] = 894, [1008] = 895, [1009] = 909, [1010] = 911, [1011] = 1011, [1012] = 895, [1013] = 894, [1014] = 885, [1015] = 896, [1016] = 897, [1017] = 900, [1018] = 901, [1019] = 885, [1020] = 897, [1021] = 902, [1022] = 885, [1023] = 911, [1024] = 885, [1025] = 919, [1026] = 903, [1027] = 900, [1028] = 894, [1029] = 895, [1030] = 896, [1031] = 891, [1032] = 885, [1033] = 897, [1034] = 900, [1035] = 901, [1036] = 902, [1037] = 903, [1038] = 894, [1039] = 895, [1040] = 896, [1041] = 897, [1042] = 904, [1043] = 901, [1044] = 902, [1045] = 900, [1046] = 886, [1047] = 900, [1048] = 919, [1049] = 903, [1050] = 891, [1051] = 895, [1052] = 921, [1053] = 903, [1054] = 902, [1055] = 894, [1056] = 1056, [1057] = 903, [1058] = 886, [1059] = 901, [1060] = 1060, [1061] = 1061, [1062] = 1062, [1063] = 1063, [1064] = 1064, [1065] = 1065, [1066] = 1066, [1067] = 1062, [1068] = 1068, [1069] = 1069, [1070] = 1068, [1071] = 1071, [1072] = 1072, [1073] = 1073, [1074] = 1068, [1075] = 1075, [1076] = 1076, [1077] = 1066, [1078] = 1076, [1079] = 1079, [1080] = 1080, [1081] = 1066, [1082] = 1082, [1083] = 1083, [1084] = 1071, [1085] = 1085, [1086] = 1062, [1087] = 1087, [1088] = 1088, [1089] = 1089, [1090] = 1087, [1091] = 1066, [1092] = 1061, [1093] = 1093, [1094] = 1094, [1095] = 1065, [1096] = 1096, [1097] = 1097, [1098] = 1098, [1099] = 1060, [1100] = 1069, [1101] = 1072, [1102] = 1102, [1103] = 1073, [1104] = 1062, [1105] = 1105, [1106] = 1065, [1107] = 1069, [1108] = 1108, [1109] = 1062, [1110] = 1088, [1111] = 1108, [1112] = 1088, [1113] = 1089, [1114] = 1089, [1115] = 1087, [1116] = 1087, [1117] = 1061, [1118] = 1093, [1119] = 1065, [1120] = 1093, [1121] = 1085, [1122] = 1073, [1123] = 1069, [1124] = 1098, [1125] = 1108, [1126] = 1096, [1127] = 1088, [1128] = 1089, [1129] = 1060, [1130] = 1130, [1131] = 1105, [1132] = 1065, [1133] = 1098, [1134] = 1105, [1135] = 1093, [1136] = 1087, [1137] = 1069, [1138] = 1061, [1139] = 1087, [1140] = 1061, [1141] = 1065, [1142] = 1093, [1143] = 1069, [1144] = 1108, [1145] = 1098, [1146] = 1088, [1147] = 1105, [1148] = 1089, [1149] = 1060, [1150] = 1087, [1151] = 1061, [1152] = 1076, [1153] = 1096, [1154] = 1105, [1155] = 1108, [1156] = 1060, [1157] = 1060, [1158] = 1068, [1159] = 1098, [1160] = 1093, [1161] = 1096, [1162] = 1085, [1163] = 1061, [1164] = 1093, [1165] = 1165, [1166] = 1088, [1167] = 1061, [1168] = 1168, [1169] = 1098, [1170] = 1105, [1171] = 1060, [1172] = 1096, [1173] = 1089, [1174] = 1087, [1175] = 1105, [1176] = 1068, [1177] = 1072, [1178] = 1089, [1179] = 1088, [1180] = 1108, [1181] = 1068, [1182] = 1069, [1183] = 1087, [1184] = 1065, [1185] = 1098, [1186] = 1105, [1187] = 1061, [1188] = 1093, [1189] = 1108, [1190] = 1098, [1191] = 1089, [1192] = 1096, [1193] = 1193, [1194] = 1194, [1195] = 1066, [1196] = 1060, [1197] = 1060, [1198] = 1105, [1199] = 1096, [1200] = 1073, [1201] = 1098, [1202] = 1105, [1203] = 1203, [1204] = 1093, [1205] = 1061, [1206] = 1087, [1207] = 1072, [1208] = 1060, [1209] = 1209, [1210] = 1089, [1211] = 1072, [1212] = 1088, [1213] = 1108, [1214] = 1069, [1215] = 1215, [1216] = 1088, [1217] = 1085, [1218] = 1073, [1219] = 1108, [1220] = 1065, [1221] = 1069, [1222] = 1108, [1223] = 1096, [1224] = 1069, [1225] = 1225, [1226] = 1226, [1227] = 1088, [1228] = 1089, [1229] = 1087, [1230] = 1230, [1231] = 1068, [1232] = 1065, [1233] = 1072, [1234] = 1061, [1235] = 1093, [1236] = 1098, [1237] = 1065, [1238] = 1073, [1239] = 1069, [1240] = 1108, [1241] = 1071, [1242] = 1105, [1243] = 1096, [1244] = 1065, [1245] = 1085, [1246] = 1071, [1247] = 1076, [1248] = 1068, [1249] = 1249, [1250] = 1250, [1251] = 1085, [1252] = 1252, [1253] = 1066, [1254] = 1068, [1255] = 1255, [1256] = 1068, [1257] = 1257, [1258] = 1071, [1259] = 1096, [1260] = 1260, [1261] = 1071, [1262] = 1093, [1263] = 1096, [1264] = 1062, [1265] = 1075, [1266] = 1076, [1267] = 1088, [1268] = 1073, [1269] = 1065, [1270] = 1060, [1271] = 1068, [1272] = 1069, [1273] = 1066, [1274] = 1089, [1275] = 1108, [1276] = 1088, [1277] = 1089, [1278] = 1087, [1279] = 1085, [1280] = 1076, [1281] = 1068, [1282] = 1098, [1283] = 1061, [1284] = 1093, [1285] = 1076, [1286] = 1098, [1287] = 1071, [1288] = 1105, [1289] = 1060, [1290] = 1096, [1291] = 1291, [1292] = 1291, [1293] = 1293, [1294] = 1293, [1295] = 1293, [1296] = 1293, [1297] = 1291, [1298] = 1298, [1299] = 1291, [1300] = 1300, [1301] = 1301, [1302] = 1302, [1303] = 1303, [1304] = 1301, [1305] = 1305, [1306] = 1306, [1307] = 1305, [1308] = 1308, [1309] = 1305, [1310] = 1301, [1311] = 1302, [1312] = 1298, [1313] = 1308, [1314] = 1300, [1315] = 1301, [1316] = 1303, [1317] = 1317, [1318] = 1317, [1319] = 1306, [1320] = 1300, [1321] = 1308, [1322] = 1302, [1323] = 1303, [1324] = 1300, [1325] = 1306, [1326] = 1300, [1327] = 1306, [1328] = 1301, [1329] = 1308, [1330] = 1301, [1331] = 1305, [1332] = 1305, [1333] = 1302, [1334] = 1303, [1335] = 1308, [1336] = 1306, [1337] = 1302, [1338] = 1305, [1339] = 1300, [1340] = 1303, [1341] = 1300, [1342] = 1300, [1343] = 1317, [1344] = 1306, [1345] = 1303, [1346] = 1308, [1347] = 1300, [1348] = 1302, [1349] = 1317, [1350] = 1300, [1351] = 1300, [1352] = 1300, [1353] = 1317, [1354] = 1354, [1355] = 1355, [1356] = 1356, [1357] = 1357, [1358] = 1358, [1359] = 1359, [1360] = 1360, [1361] = 1361, [1362] = 1362, [1363] = 1363, [1364] = 1364, [1365] = 1365, [1366] = 1366, [1367] = 1367, [1368] = 1368, [1369] = 1369, [1370] = 1370, [1371] = 1371, [1372] = 1372, [1373] = 1373, [1374] = 1374, [1375] = 1375, [1376] = 1376, [1377] = 1377, [1378] = 1378, [1379] = 1379, [1380] = 1380, [1381] = 1381, [1382] = 1382, [1383] = 1383, [1384] = 1384, [1385] = 1385, [1386] = 1386, [1387] = 1387, [1388] = 1388, [1389] = 1389, [1390] = 1390, [1391] = 1391, [1392] = 1392, [1393] = 1393, [1394] = 1394, [1395] = 1395, [1396] = 1396, [1397] = 1397, [1398] = 1398, [1399] = 1399, [1400] = 1400, [1401] = 1401, [1402] = 1402, [1403] = 1403, [1404] = 1404, [1405] = 1405, [1406] = 1406, [1407] = 1407, [1408] = 1408, [1409] = 1409, [1410] = 1410, [1411] = 1411, [1412] = 1412, [1413] = 1413, [1414] = 1414, [1415] = 1415, [1416] = 1416, [1417] = 1417, [1418] = 1418, [1419] = 1419, [1420] = 1420, [1421] = 1421, [1422] = 1422, [1423] = 1423, [1424] = 1424, [1425] = 1425, [1426] = 1426, [1427] = 1427, [1428] = 1428, [1429] = 1429, [1430] = 1430, [1431] = 1431, [1432] = 1432, [1433] = 1433, [1434] = 1434, [1435] = 1435, [1436] = 1436, [1437] = 1437, [1438] = 1438, [1439] = 1439, [1440] = 1440, [1441] = 1441, [1442] = 1442, [1443] = 1443, [1444] = 1444, [1445] = 1445, [1446] = 1446, [1447] = 1447, [1448] = 1448, [1449] = 1449, [1450] = 1373, [1451] = 1451, [1452] = 1452, [1453] = 1453, [1454] = 1454, [1455] = 1455, [1456] = 1456, [1457] = 1457, [1458] = 1458, [1459] = 1459, [1460] = 1460, [1461] = 1461, [1462] = 1462, [1463] = 1463, [1464] = 1464, [1465] = 1465, [1466] = 1466, [1467] = 1467, [1468] = 1468, [1469] = 1469, [1470] = 1470, [1471] = 1471, [1472] = 1472, [1473] = 1473, [1474] = 1474, [1475] = 1475, [1476] = 1476, [1477] = 1477, [1478] = 1478, [1479] = 1479, [1480] = 1480, [1481] = 1481, [1482] = 1482, [1483] = 1483, [1484] = 1484, [1485] = 1485, [1486] = 1486, [1487] = 1487, [1488] = 1488, [1489] = 1489, [1490] = 1490, [1491] = 1491, [1492] = 1492, [1493] = 1493, [1494] = 1494, [1495] = 1495, [1496] = 1496, [1497] = 1497, [1498] = 1498, [1499] = 1499, [1500] = 1500, [1501] = 1501, [1502] = 1502, [1503] = 1503, [1504] = 1504, [1505] = 666, [1506] = 665, [1507] = 1507, [1508] = 1508, [1509] = 1509, [1510] = 664, [1511] = 1511, [1512] = 1512, [1513] = 1513, [1514] = 1514, [1515] = 1515, [1516] = 1516, [1517] = 1517, [1518] = 1518, [1519] = 1519, [1520] = 1520, [1521] = 1521, [1522] = 1522, [1523] = 1523, [1524] = 1524, [1525] = 1525, [1526] = 1526, [1527] = 1372, [1528] = 1528, [1529] = 1529, [1530] = 1530, [1531] = 1531, [1532] = 1532, [1533] = 1533, [1534] = 1534, [1535] = 1440, [1536] = 1536, [1537] = 1537, [1538] = 1538, [1539] = 1539, [1540] = 1540, [1541] = 1541, [1542] = 1542, [1543] = 1543, [1544] = 1544, [1545] = 1545, [1546] = 1546, [1547] = 1547, [1548] = 1548, [1549] = 1549, [1550] = 1550, [1551] = 1551, [1552] = 1552, [1553] = 1553, [1554] = 1554, [1555] = 1555, [1556] = 1556, [1557] = 1557, [1558] = 1558, [1559] = 1465, [1560] = 1528, [1561] = 1482, [1562] = 1447, [1563] = 1373, [1564] = 1508, [1565] = 664, [1566] = 1391, [1567] = 1412, [1568] = 1470, [1569] = 1441, [1570] = 1440, [1571] = 1487, [1572] = 1386, [1573] = 1554, [1574] = 1549, [1575] = 1468, [1576] = 1467, [1577] = 1545, [1578] = 1400, [1579] = 1430, [1580] = 1461, [1581] = 1542, [1582] = 1541, [1583] = 1481, [1584] = 1480, [1585] = 1488, [1586] = 1534, [1587] = 1476, [1588] = 1372, [1589] = 1491, [1590] = 1373, [1591] = 1471, [1592] = 1533, [1593] = 1532, [1594] = 1531, [1595] = 1486, [1596] = 1428, [1597] = 1503, [1598] = 1504, [1599] = 1442, [1600] = 1516, [1601] = 1514, [1602] = 1374, [1603] = 1380, [1604] = 1466, [1605] = 1462, [1606] = 1512, [1607] = 1511, [1608] = 1485, [1609] = 1425, [1610] = 1509, [1611] = 1459, [1612] = 1455, [1613] = 1385, [1614] = 1507, [1615] = 1355, [1616] = 1501, [1617] = 1375, [1618] = 1499, [1619] = 1484, [1620] = 1498, [1621] = 1483, [1622] = 1524, [1623] = 1522, [1624] = 1544, [1625] = 1354, [1626] = 1538, [1627] = 1557, [1628] = 1556, [1629] = 1492, [1630] = 1490, [1631] = 1423, [1632] = 1489, [1633] = 1477, [1634] = 1474, [1635] = 1440, [1636] = 1421, [1637] = 1419, [1638] = 1418, [1639] = 1417, [1640] = 1415, [1641] = 1464, [1642] = 1463, [1643] = 1460, [1644] = 1409, [1645] = 1407, [1646] = 1458, [1647] = 1456, [1648] = 1420, [1649] = 1369, [1650] = 665, [1651] = 1389, [1652] = 1452, [1653] = 1451, [1654] = 1449, [1655] = 1513, [1656] = 1448, [1657] = 1387, [1658] = 1416, [1659] = 1517, [1660] = 1446, [1661] = 1443, [1662] = 1521, [1663] = 1478, [1664] = 1411, [1665] = 1406, [1666] = 1403, [1667] = 1402, [1668] = 1523, [1669] = 1525, [1670] = 1401, [1671] = 1555, [1672] = 1453, [1673] = 1399, [1674] = 1357, [1675] = 1372, [1676] = 1422, [1677] = 1558, [1678] = 1398, [1679] = 1396, [1680] = 1472, [1681] = 1473, [1682] = 1475, [1683] = 1479, [1684] = 1494, [1685] = 1496, [1686] = 1526, [1687] = 1376, [1688] = 1378, [1689] = 1414, [1690] = 1394, [1691] = 1445, [1692] = 1444, [1693] = 1424, [1694] = 1551, [1695] = 1548, [1696] = 1429, [1697] = 1547, [1698] = 1439, [1699] = 1520, [1700] = 1392, [1701] = 1530, [1702] = 1546, [1703] = 1388, [1704] = 1381, [1705] = 1519, [1706] = 1515, [1707] = 1382, [1708] = 1379, [1709] = 1502, [1710] = 1500, [1711] = 1495, [1712] = 1359, [1713] = 1360, [1714] = 1363, [1715] = 1366, [1716] = 1377, [1717] = 1371, [1718] = 1368, [1719] = 1365, [1720] = 1362, [1721] = 1358, [1722] = 1457, [1723] = 1426, [1724] = 1427, [1725] = 1438, [1726] = 1553, [1727] = 1437, [1728] = 1436, [1729] = 1536, [1730] = 1537, [1731] = 1552, [1732] = 1539, [1733] = 666, [1734] = 1431, [1735] = 1433, [1736] = 1454, [1737] = 1413, [1738] = 1469, [1739] = 1493, [1740] = 1497, [1741] = 1390, [1742] = 1356, [1743] = 1361, [1744] = 1364, [1745] = 1367, [1746] = 1410, [1747] = 1518, [1748] = 1408, [1749] = 1435, [1750] = 1383, [1751] = 1384, [1752] = 1434, [1753] = 1543, [1754] = 1393, [1755] = 1395, [1756] = 1397, [1757] = 1404, [1758] = 1432, [1759] = 1540, [1760] = 1405, [1761] = 1529, [1762] = 1762, [1763] = 1762, [1764] = 1762, [1765] = 1762, [1766] = 1762, [1767] = 1767, [1768] = 1768, [1769] = 1769, [1770] = 1770, [1771] = 1771, [1772] = 1772, [1773] = 1773, [1774] = 1774, [1775] = 1775, [1776] = 1776, [1777] = 1777, [1778] = 602, [1779] = 600, [1780] = 585, [1781] = 586, [1782] = 596, [1783] = 584, [1784] = 594, [1785] = 598, [1786] = 590, [1787] = 601, [1788] = 597, [1789] = 598, [1790] = 596, [1791] = 590, [1792] = 594, [1793] = 584, [1794] = 596, [1795] = 585, [1796] = 602, [1797] = 594, [1798] = 597, [1799] = 586, [1800] = 586, [1801] = 584, [1802] = 590, [1803] = 601, [1804] = 585, [1805] = 600, [1806] = 597, [1807] = 600, [1808] = 602, [1809] = 598, [1810] = 601, [1811] = 1811, [1812] = 1812, [1813] = 1813, [1814] = 1814, [1815] = 1815, [1816] = 1816, [1817] = 1817, [1818] = 1818, [1819] = 1819, [1820] = 1820, [1821] = 1821, [1822] = 1822, [1823] = 1823, [1824] = 1824, [1825] = 1825, [1826] = 1823, [1827] = 1827, [1828] = 1828, [1829] = 1829, [1830] = 1830, [1831] = 1830, [1832] = 1832, [1833] = 1821, [1834] = 1834, [1835] = 1835, [1836] = 1836, [1837] = 1834, [1838] = 1838, [1839] = 1839, [1840] = 1823, [1841] = 1815, [1842] = 1822, [1843] = 1828, [1844] = 1844, [1845] = 1845, [1846] = 1846, [1847] = 1847, [1848] = 1848, [1849] = 1824, [1850] = 1848, [1851] = 1820, [1852] = 1822, [1853] = 1827, [1854] = 1838, [1855] = 1844, [1856] = 1824, [1857] = 1819, [1858] = 1832, [1859] = 1817, [1860] = 1816, [1861] = 1845, [1862] = 1862, [1863] = 1823, [1864] = 1829, [1865] = 1819, [1866] = 1866, [1867] = 1819, [1868] = 1868, [1869] = 1825, [1870] = 1870, [1871] = 1839, [1872] = 1829, [1873] = 1846, [1874] = 1874, [1875] = 1875, [1876] = 1828, [1877] = 1877, [1878] = 1819, [1879] = 1879, [1880] = 1839, [1881] = 1839, [1882] = 1870, [1883] = 1862, [1884] = 1884, [1885] = 1885, [1886] = 1875, [1887] = 1836, [1888] = 1846, [1889] = 1889, [1890] = 1823, [1891] = 1835, [1892] = 1830, [1893] = 1844, [1894] = 1829, [1895] = 1895, [1896] = 1896, [1897] = 1830, [1898] = 1866, [1899] = 1844, [1900] = 1816, [1901] = 1817, [1902] = 1832, [1903] = 1834, [1904] = 1879, [1905] = 1847, [1906] = 1877, [1907] = 1885, [1908] = 1835, [1909] = 1830, [1910] = 1868, [1911] = 1838, [1912] = 1862, [1913] = 1877, [1914] = 1914, [1915] = 1836, [1916] = 1848, [1917] = 1835, [1918] = 1866, [1919] = 1885, [1920] = 1839, [1921] = 1834, [1922] = 1830, [1923] = 1884, [1924] = 1818, [1925] = 1835, [1926] = 1874, [1927] = 1844, [1928] = 1838, [1929] = 1889, [1930] = 1816, [1931] = 1879, [1932] = 1817, [1933] = 1823, [1934] = 1830, [1935] = 1822, [1936] = 1870, [1937] = 1817, [1938] = 1885, [1939] = 1827, [1940] = 1832, [1941] = 1914, [1942] = 1823, [1943] = 1820, [1944] = 1846, [1945] = 1834, [1946] = 1835, [1947] = 1825, [1948] = 1870, [1949] = 1846, [1950] = 1819, [1951] = 1822, [1952] = 1828, [1953] = 1828, [1954] = 1866, [1955] = 1827, [1956] = 1825, [1957] = 1844, [1958] = 1889, [1959] = 1889, [1960] = 1874, [1961] = 1824, [1962] = 1825, [1963] = 1839, [1964] = 1838, [1965] = 1820, [1966] = 1914, [1967] = 1825, [1968] = 1874, [1969] = 1821, [1970] = 1825, [1971] = 1824, [1972] = 1824, [1973] = 1875, [1974] = 1828, [1975] = 1836, [1976] = 1847, [1977] = 1879, [1978] = 1844, [1979] = 1845, [1980] = 1895, [1981] = 1844, [1982] = 1848, [1983] = 1889, [1984] = 1868, [1985] = 1846, [1986] = 1836, [1987] = 1818, [1988] = 1822, [1989] = 1874, [1990] = 1816, [1991] = 1914, [1992] = 1914, [1993] = 1866, [1994] = 1848, [1995] = 1817, [1996] = 1885, [1997] = 1822, [1998] = 1817, [1999] = 1845, [2000] = 1838, [2001] = 1839, [2002] = 1832, [2003] = 1825, [2004] = 1815, [2005] = 1830, [2006] = 1875, [2007] = 1866, [2008] = 1896, [2009] = 1885, [2010] = 1895, [2011] = 1817, [2012] = 1846, [2013] = 1819, [2014] = 1896, [2015] = 1884, [2016] = 1823, [2017] = 1889, [2018] = 1884, [2019] = 1820, [2020] = 1844, [2021] = 1834, [2022] = 1834, [2023] = 1877, [2024] = 1821, [2025] = 1874, [2026] = 1847, [2027] = 1868, [2028] = 1818, [2029] = 1838, [2030] = 1914, [2031] = 1818, [2032] = 1847, [2033] = 1895, [2034] = 1884, [2035] = 1868, [2036] = 1829, [2037] = 1877, [2038] = 1829, [2039] = 1830, [2040] = 1846, [2041] = 1862, [2042] = 1835, [2043] = 1896, [2044] = 1847, [2045] = 1839, [2046] = 1848, [2047] = 1820, [2048] = 1862, [2049] = 1879, [2050] = 1845, [2051] = 1884, [2052] = 1875, [2053] = 1862, [2054] = 1884, [2055] = 1846, [2056] = 1834, [2057] = 1875, [2058] = 1815, [2059] = 1834, [2060] = 1879, [2061] = 1836, [2062] = 1895, [2063] = 1877, [2064] = 1868, [2065] = 1838, [2066] = 1818, [2067] = 1822, [2068] = 1835, [2069] = 1821, [2070] = 1827, [2071] = 1847, [2072] = 1838, [2073] = 1847, [2074] = 1825, [2075] = 1817, [2076] = 1816, [2077] = 1832, [2078] = 1821, [2079] = 1815, [2080] = 1819, [2081] = 1822, [2082] = 1870, [2083] = 1835, [2084] = 1823, [2085] = 1896, [2086] = 1827, [2087] = 1896, [2088] = 1819, [2089] = 1847, [2090] = 1839, [2091] = 1845, [2092] = 1815, [2093] = 1884, [2094] = 1884, [2095] = 1895, [2096] = 1870, [2097] = 2097, [2098] = 2098, [2099] = 2099, [2100] = 662, [2101] = 2101, [2102] = 2102, [2103] = 2097, [2104] = 2101, [2105] = 2097, [2106] = 2098, [2107] = 2098, [2108] = 2099, [2109] = 2102, [2110] = 668, [2111] = 2099, [2112] = 2101, [2113] = 2102, [2114] = 661, [2115] = 2099, [2116] = 667, [2117] = 2097, [2118] = 663, [2119] = 2101, [2120] = 2097, [2121] = 2102, [2122] = 663, [2123] = 2101, [2124] = 664, [2125] = 2101, [2126] = 665, [2127] = 2099, [2128] = 666, [2129] = 2098, [2130] = 2102, [2131] = 669, [2132] = 2099, [2133] = 2097, [2134] = 2098, [2135] = 2097, [2136] = 2101, [2137] = 2101, [2138] = 2099, [2139] = 2101, [2140] = 2099, [2141] = 2099, [2142] = 2097, [2143] = 2097, [2144] = 663, [2145] = 663, [2146] = 1293, [2147] = 1291, [2148] = 1293, [2149] = 1291, [2150] = 2150, [2151] = 1293, [2152] = 1298, [2153] = 2150, [2154] = 2150, [2155] = 2150, [2156] = 1291, [2157] = 2150, [2158] = 2150, [2159] = 2150, [2160] = 2150, [2161] = 2150, [2162] = 1291, [2163] = 1293, [2164] = 1298, [2165] = 2165, [2166] = 1441, [2167] = 1541, [2168] = 1397, [2169] = 1395, [2170] = 1393, [2171] = 1384, [2172] = 1455, [2173] = 1383, [2174] = 1462, [2175] = 1367, [2176] = 1364, [2177] = 1361, [2178] = 1466, [2179] = 1471, [2180] = 1356, [2181] = 1476, [2182] = 1480, [2183] = 1372, [2184] = 1440, [2185] = 1481, [2186] = 1497, [2187] = 1482, [2188] = 1493, [2189] = 1374, [2190] = 1375, [2191] = 1376, [2192] = 1378, [2193] = 1382, [2194] = 1385, [2195] = 1386, [2196] = 1387, [2197] = 1389, [2198] = 1390, [2199] = 1392, [2200] = 1457, [2201] = 1469, [2202] = 1454, [2203] = 1413, [2204] = 1488, [2205] = 1431, [2206] = 1427, [2207] = 1405, [2208] = 1408, [2209] = 1491, [2210] = 1503, [2211] = 1410, [2212] = 1426, [2213] = 1484, [2214] = 1414, [2215] = 1416, [2216] = 1504, [2217] = 1420, [2218] = 1423, [2219] = 1513, [2220] = 1517, [2221] = 1538, [2222] = 1521, [2223] = 1544, [2224] = 1523, [2225] = 1358, [2226] = 1483, [2227] = 1502, [2228] = 1485, [2229] = 1525, [2230] = 1486, [2231] = 1362, [2232] = 1365, [2233] = 1368, [2234] = 664, [2235] = 1373, [2236] = 1377, [2237] = 1379, [2238] = 1381, [2239] = 1388, [2240] = 1394, [2241] = 1508, [2242] = 1396, [2243] = 1398, [2244] = 1399, [2245] = 1401, [2246] = 1402, [2247] = 1403, [2248] = 1406, [2249] = 1526, [2250] = 1470, [2251] = 665, [2252] = 666, [2253] = 1468, [2254] = 1540, [2255] = 1411, [2256] = 1467, [2257] = 1380, [2258] = 1461, [2259] = 1543, [2260] = 1459, [2261] = 1355, [2262] = 1546, [2263] = 1552, [2264] = 1443, [2265] = 1354, [2266] = 1446, [2267] = 1448, [2268] = 1449, [2269] = 1451, [2270] = 1452, [2271] = 1456, [2272] = 1458, [2273] = 1425, [2274] = 1460, [2275] = 1553, [2276] = 1463, [2277] = 1464, [2278] = 1465, [2279] = 1474, [2280] = 1477, [2281] = 1453, [2282] = 1445, [2283] = 1428, [2284] = 1489, [2285] = 1490, [2286] = 1492, [2287] = 1498, [2288] = 1430, [2289] = 1442, [2290] = 1499, [2291] = 1555, [2292] = 1500, [2293] = 1447, [2294] = 1444, [2295] = 1501, [2296] = 1439, [2297] = 1438, [2298] = 1437, [2299] = 1507, [2300] = 1436, [2301] = 1509, [2302] = 1511, [2303] = 1518, [2304] = 1512, [2305] = 1514, [2306] = 1435, [2307] = 1516, [2308] = 1373, [2309] = 1529, [2310] = 1556, [2311] = 1531, [2312] = 1532, [2313] = 1533, [2314] = 1534, [2315] = 1434, [2316] = 1432, [2317] = 1404, [2318] = 1478, [2319] = 1542, [2320] = 1545, [2321] = 1522, [2322] = 1524, [2323] = 1549, [2324] = 1554, [2325] = 1557, [2326] = 1371, [2327] = 1366, [2328] = 1370, [2329] = 1363, [2330] = 1360, [2331] = 1539, [2332] = 1537, [2333] = 1473, [2334] = 1530, [2335] = 1359, [2336] = 1528, [2337] = 1495, [2338] = 1550, [2339] = 1391, [2340] = 1515, [2341] = 1487, [2342] = 1433, [2343] = 1536, [2344] = 1372, [2345] = 1440, [2346] = 1519, [2347] = 1520, [2348] = 1547, [2349] = 1400, [2350] = 1548, [2351] = 1551, [2352] = 1421, [2353] = 1424, [2354] = 1496, [2355] = 1419, [2356] = 1494, [2357] = 1479, [2358] = 1475, [2359] = 1418, [2360] = 1472, [2361] = 1558, [2362] = 1422, [2363] = 1357, [2364] = 1369, [2365] = 1417, [2366] = 1415, [2367] = 1429, [2368] = 1407, [2369] = 1409, [2370] = 1412, [2371] = 1515, [2372] = 1373, [2373] = 1487, [2374] = 1372, [2375] = 1440, [2376] = 1440, [2377] = 1391, [2378] = 1372, [2379] = 1433, [2380] = 1373, [2381] = 2381, [2382] = 2382, [2383] = 2383, [2384] = 2383, [2385] = 2385, [2386] = 2381, [2387] = 2383, [2388] = 2383, [2389] = 2381, [2390] = 2383, [2391] = 2381, [2392] = 2383, [2393] = 2393, [2394] = 2381, [2395] = 2395, [2396] = 2381, [2397] = 627, [2398] = 639, [2399] = 2399, [2400] = 634, [2401] = 637, [2402] = 629, [2403] = 621, [2404] = 631, [2405] = 2405, [2406] = 2406, [2407] = 626, [2408] = 628, [2409] = 632, [2410] = 623, [2411] = 2411, [2412] = 630, [2413] = 636, [2414] = 633, [2415] = 625, [2416] = 2416, [2417] = 624, [2418] = 2418, [2419] = 2419, [2420] = 2420, [2421] = 2421, [2422] = 2422, [2423] = 2423, [2424] = 666, [2425] = 665, [2426] = 664, [2427] = 1524, [2428] = 2428, [2429] = 1558, [2430] = 1380, [2431] = 2428, [2432] = 2428, [2433] = 2428, [2434] = 1518, [2435] = 2428, [2436] = 1522, [2437] = 2428, [2438] = 666, [2439] = 2428, [2440] = 2428, [2441] = 2428, [2442] = 664, [2443] = 2428, [2444] = 665, [2445] = 2428, [2446] = 2428, [2447] = 1558, [2448] = 2448, [2449] = 1522, [2450] = 2448, [2451] = 1380, [2452] = 2448, [2453] = 1524, [2454] = 1518, [2455] = 664, [2456] = 2448, [2457] = 1518, [2458] = 1522, [2459] = 2448, [2460] = 1558, [2461] = 1380, [2462] = 2448, [2463] = 2448, [2464] = 1524, [2465] = 2448, [2466] = 665, [2467] = 2448, [2468] = 666, [2469] = 1509, [2470] = 1418, [2471] = 1395, [2472] = 1397, [2473] = 1404, [2474] = 1405, [2475] = 1408, [2476] = 1410, [2477] = 1508, [2478] = 1413, [2479] = 1414, [2480] = 1486, [2481] = 1416, [2482] = 1420, [2483] = 1423, [2484] = 1456, [2485] = 1474, [2486] = 1384, [2487] = 1383, [2488] = 1367, [2489] = 1364, [2490] = 1361, [2491] = 1485, [2492] = 1356, [2493] = 1484, [2494] = 1548, [2495] = 1465, [2496] = 1497, [2497] = 1429, [2498] = 1483, [2499] = 1464, [2500] = 1463, [2501] = 1460, [2502] = 1493, [2503] = 1538, [2504] = 1544, [2505] = 1458, [2506] = 1469, [2507] = 1483, [2508] = 1484, [2509] = 1454, [2510] = 1485, [2511] = 1486, [2512] = 1489, [2513] = 1508, [2514] = 1490, [2515] = 1492, [2516] = 1547, [2517] = 1526, [2518] = 2518, [2519] = 1498, [2520] = 1470, [2521] = 1499, [2522] = 1500, [2523] = 1468, [2524] = 1467, [2525] = 1431, [2526] = 1461, [2527] = 1762, [2528] = 1501, [2529] = 1459, [2530] = 1355, [2531] = 1507, [2532] = 1453, [2533] = 1445, [2534] = 1444, [2535] = 1439, [2536] = 1438, [2537] = 1437, [2538] = 1436, [2539] = 1427, [2540] = 1551, [2541] = 1426, [2542] = 1435, [2543] = 1366, [2544] = 1434, [2545] = 1457, [2546] = 1358, [2547] = 1362, [2548] = 1365, [2549] = 1432, [2550] = 1368, [2551] = 1511, [2552] = 1512, [2553] = 1377, [2554] = 1434, [2555] = 1514, [2556] = 1516, [2557] = 1379, [2558] = 1381, [2559] = 1388, [2560] = 1394, [2561] = 1371, [2562] = 1366, [2563] = 1363, [2564] = 1360, [2565] = 1359, [2566] = 1439, [2567] = 1495, [2568] = 1502, [2569] = 1519, [2570] = 1452, [2571] = 1396, [2572] = 1520, [2573] = 1369, [2574] = 1547, [2575] = 1398, [2576] = 1479, [2577] = 1548, [2578] = 1551, [2579] = 1424, [2580] = 1496, [2581] = 1494, [2582] = 1479, [2583] = 1475, [2584] = 1473, [2585] = 1472, [2586] = 1477, [2587] = 1459, [2588] = 1422, [2589] = 1399, [2590] = 1357, [2591] = 1544, [2592] = 1529, [2593] = 1531, [2594] = 1532, [2595] = 1533, [2596] = 1438, [2597] = 1451, [2598] = 1435, [2599] = 1371, [2600] = 1534, [2601] = 1449, [2602] = 1541, [2603] = 1369, [2604] = 1538, [2605] = 1542, [2606] = 1391, [2607] = 1401, [2608] = 1407, [2609] = 1409, [2610] = 1412, [2611] = 1402, [2612] = 1415, [2613] = 1417, [2614] = 1393, [2615] = 1419, [2616] = 1421, [2617] = 1407, [2618] = 1403, [2619] = 1406, [2620] = 1448, [2621] = 1446, [2622] = 1409, [2623] = 1411, [2624] = 1443, [2625] = 1412, [2626] = 1355, [2627] = 1545, [2628] = 1443, [2629] = 1446, [2630] = 1448, [2631] = 1449, [2632] = 1549, [2633] = 1451, [2634] = 1554, [2635] = 1452, [2636] = 1456, [2637] = 1415, [2638] = 1458, [2639] = 1400, [2640] = 1460, [2641] = 1417, [2642] = 1463, [2643] = 1464, [2644] = 1494, [2645] = 1465, [2646] = 1474, [2647] = 1477, [2648] = 1489, [2649] = 1490, [2650] = 1492, [2651] = 1498, [2652] = 1499, [2653] = 1500, [2654] = 1501, [2655] = 1507, [2656] = 1418, [2657] = 1509, [2658] = 1511, [2659] = 1512, [2660] = 1514, [2661] = 1516, [2662] = 1419, [2663] = 1529, [2664] = 1421, [2665] = 1429, [2666] = 1531, [2667] = 1532, [2668] = 1533, [2669] = 1534, [2670] = 1541, [2671] = 1542, [2672] = 1545, [2673] = 1549, [2674] = 1423, [2675] = 1420, [2676] = 1554, [2677] = 1424, [2678] = 1762, [2679] = 1496, [2680] = 1411, [2681] = 1416, [2682] = 1406, [2683] = 1403, [2684] = 1402, [2685] = 1414, [2686] = 1413, [2687] = 2687, [2688] = 1401, [2689] = 1410, [2690] = 1399, [2691] = 1398, [2692] = 1396, [2693] = 1394, [2694] = 1762, [2695] = 1461, [2696] = 1400, [2697] = 1762, [2698] = 1520, [2699] = 1388, [2700] = 1381, [2701] = 1475, [2702] = 1432, [2703] = 1408, [2704] = 1405, [2705] = 1379, [2706] = 1377, [2707] = 1762, [2708] = 1368, [2709] = 1365, [2710] = 1502, [2711] = 1453, [2712] = 1357, [2713] = 1404, [2714] = 1362, [2715] = 1358, [2716] = 1422, [2717] = 1457, [2718] = 1762, [2719] = 1426, [2720] = 1427, [2721] = 1467, [2722] = 1397, [2723] = 1468, [2724] = 1519, [2725] = 1395, [2726] = 1363, [2727] = 1431, [2728] = 1526, [2729] = 1454, [2730] = 1393, [2731] = 1469, [2732] = 1495, [2733] = 1493, [2734] = 1433, [2735] = 1487, [2736] = 1515, [2737] = 1445, [2738] = 1359, [2739] = 1497, [2740] = 1470, [2741] = 1356, [2742] = 1361, [2743] = 1364, [2744] = 1437, [2745] = 1367, [2746] = 1444, [2747] = 1472, [2748] = 1360, [2749] = 1473, [2750] = 1383, [2751] = 1384, [2752] = 1436, [2753] = 1487, [2754] = 1454, [2755] = 1411, [2756] = 1487, [2757] = 1443, [2758] = 1446, [2759] = 1448, [2760] = 1449, [2761] = 1451, [2762] = 1452, [2763] = 1394, [2764] = 1403, [2765] = 1421, [2766] = 1419, [2767] = 1418, [2768] = 2768, [2769] = 1406, [2770] = 1529, [2771] = 1415, [2772] = 1402, [2773] = 1409, [2774] = 1407, [2775] = 1369, [2776] = 2768, [2777] = 1401, [2778] = 1500, [2779] = 1399, [2780] = 1456, [2781] = 1458, [2782] = 1433, [2783] = 1398, [2784] = 1460, [2785] = 1463, [2786] = 1464, [2787] = 1465, [2788] = 1396, [2789] = 1474, [2790] = 1477, [2791] = 1357, [2792] = 1388, [2793] = 1381, [2794] = 1379, [2795] = 1422, [2796] = 1472, [2797] = 2768, [2798] = 1473, [2799] = 1377, [2800] = 1368, [2801] = 1475, [2802] = 1479, [2803] = 1489, [2804] = 2804, [2805] = 1496, [2806] = 1490, [2807] = 1492, [2808] = 1365, [2809] = 1417, [2810] = 1362, [2811] = 1358, [2812] = 1551, [2813] = 1457, [2814] = 1548, [2815] = 1515, [2816] = 1498, [2817] = 1499, [2818] = 1486, [2819] = 1426, [2820] = 1427, [2821] = 1547, [2822] = 1501, [2823] = 1520, [2824] = 1507, [2825] = 1509, [2826] = 1511, [2827] = 1512, [2828] = 1519, [2829] = 1515, [2830] = 1514, [2831] = 1516, [2832] = 2768, [2833] = 1431, [2834] = 1433, [2835] = 1502, [2836] = 1531, [2837] = 1532, [2838] = 1533, [2839] = 1534, [2840] = 1541, [2841] = 1542, [2842] = 1469, [2843] = 1493, [2844] = 1497, [2845] = 1356, [2846] = 1545, [2847] = 1361, [2848] = 1495, [2849] = 1364, [2850] = 1359, [2851] = 1367, [2852] = 1360, [2853] = 1549, [2854] = 1363, [2855] = 1366, [2856] = 1371, [2857] = 1554, [2858] = 2768, [2859] = 2859, [2860] = 1383, [2861] = 1384, [2862] = 1393, [2863] = 1391, [2864] = 1395, [2865] = 1397, [2866] = 1404, [2867] = 1405, [2868] = 1408, [2869] = 1410, [2870] = 1413, [2871] = 1414, [2872] = 1416, [2873] = 1420, [2874] = 1423, [2875] = 2768, [2876] = 2768, [2877] = 1483, [2878] = 2768, [2879] = 2768, [2880] = 2768, [2881] = 1538, [2882] = 1544, [2883] = 1424, [2884] = 1484, [2885] = 1485, [2886] = 1494, [2887] = 1429, [2888] = 1508, [2889] = 2768, [2890] = 1526, [2891] = 1470, [2892] = 1468, [2893] = 1467, [2894] = 1412, [2895] = 1432, [2896] = 1391, [2897] = 1400, [2898] = 1434, [2899] = 1435, [2900] = 1461, [2901] = 1459, [2902] = 1355, [2903] = 1453, [2904] = 1436, [2905] = 2905, [2906] = 1445, [2907] = 2768, [2908] = 1444, [2909] = 1437, [2910] = 1439, [2911] = 1438, [2912] = 2912, [2913] = 2913, [2914] = 2912, [2915] = 2915, [2916] = 2913, [2917] = 1774, [2918] = 2918, [2919] = 2915, [2920] = 2920, [2921] = 2921, [2922] = 2912, [2923] = 2913, [2924] = 1772, [2925] = 2925, [2926] = 2913, [2927] = 2913, [2928] = 1770, [2929] = 2912, [2930] = 2925, [2931] = 2931, [2932] = 2913, [2933] = 2925, [2934] = 2934, [2935] = 2935, [2936] = 2925, [2937] = 2913, [2938] = 1773, [2939] = 640, [2940] = 2913, [2941] = 2912, [2942] = 2942, [2943] = 2913, [2944] = 2944, [2945] = 2925, [2946] = 2913, [2947] = 1771, [2948] = 2925, [2949] = 2912, [2950] = 2915, [2951] = 2915, [2952] = 2952, [2953] = 2915, [2954] = 2925, [2955] = 2955, [2956] = 2912, [2957] = 2913, [2958] = 2913, [2959] = 2915, [2960] = 2925, [2961] = 1769, [2962] = 2962, [2963] = 2915, [2964] = 2964, [2965] = 2915, [2966] = 2912, [2967] = 2967, [2968] = 2968, [2969] = 2969, [2970] = 2970, [2971] = 2971, [2972] = 2972, [2973] = 2973, [2974] = 2974, [2975] = 2975, [2976] = 2976, [2977] = 2977, [2978] = 2977, [2979] = 2976, [2980] = 2977, [2981] = 2977, [2982] = 2976, [2983] = 2976, [2984] = 2976, [2985] = 2977, [2986] = 2977, [2987] = 2976, [2988] = 2988, [2989] = 2989, [2990] = 2989, [2991] = 2991, [2992] = 2989, [2993] = 2991, [2994] = 2991, [2995] = 2988, [2996] = 2988, [2997] = 2989, [2998] = 2998, [2999] = 2998, [3000] = 2998, [3001] = 2989, [3002] = 2988, [3003] = 2988, [3004] = 2991, [3005] = 2988, [3006] = 2988, [3007] = 2988, [3008] = 2989, [3009] = 2998, [3010] = 2991, [3011] = 2998, [3012] = 2989, [3013] = 2991, [3014] = 2989, [3015] = 2998, [3016] = 3016, [3017] = 3017, [3018] = 3018, [3019] = 3019, [3020] = 3020, [3021] = 3020, [3022] = 3016, [3023] = 3019, [3024] = 3018, [3025] = 3016, [3026] = 3026, [3027] = 3019, [3028] = 3018, [3029] = 3026, [3030] = 3017, [3031] = 3026, [3032] = 3020, [3033] = 3033, [3034] = 3034, [3035] = 3020, [3036] = 3016, [3037] = 3034, [3038] = 3016, [3039] = 3016, [3040] = 3034, [3041] = 3017, [3042] = 3016, [3043] = 3034, [3044] = 3017, [3045] = 3034, [3046] = 3020, [3047] = 3020, [3048] = 3034, [3049] = 3016, [3050] = 3026, [3051] = 3019, [3052] = 3034, [3053] = 3018, [3054] = 3017, [3055] = 3017, [3056] = 3034, [3057] = 3026, [3058] = 3026, [3059] = 3019, [3060] = 3018, [3061] = 3019, [3062] = 3018, [3063] = 3063, [3064] = 3064, [3065] = 3065, [3066] = 3065, [3067] = 3067, [3068] = 3067, [3069] = 3069, [3070] = 3069, [3071] = 3064, [3072] = 3065, [3073] = 3067, [3074] = 3065, [3075] = 3065, [3076] = 3063, [3077] = 3063, [3078] = 3069, [3079] = 3065, [3080] = 3065, [3081] = 3063, [3082] = 3064, [3083] = 3065, [3084] = 3064, [3085] = 3067, [3086] = 3067, [3087] = 3064, [3088] = 3065, [3089] = 3065, [3090] = 3065, [3091] = 3065, [3092] = 3069, [3093] = 3063, [3094] = 3067, [3095] = 3065, [3096] = 3069, [3097] = 3063, [3098] = 3069, [3099] = 3064, [3100] = 2406, [3101] = 2399, [3102] = 626, [3103] = 621, [3104] = 629, [3105] = 630, [3106] = 623, [3107] = 2405, [3108] = 3108, [3109] = 3109, [3110] = 3108, [3111] = 2419, [3112] = 3108, [3113] = 639, [3114] = 3109, [3115] = 3109, [3116] = 3109, [3117] = 624, [3118] = 627, [3119] = 2422, [3120] = 3108, [3121] = 2420, [3122] = 2411, [3123] = 637, [3124] = 636, [3125] = 634, [3126] = 625, [3127] = 3108, [3128] = 3109, [3129] = 2418, [3130] = 3108, [3131] = 628, [3132] = 631, [3133] = 632, [3134] = 3109, [3135] = 3108, [3136] = 2416, [3137] = 633, [3138] = 3109, [3139] = 3139, [3140] = 3140, [3141] = 3139, [3142] = 3142, [3143] = 3140, [3144] = 3142, [3145] = 3140, [3146] = 3139, [3147] = 3142, [3148] = 3139, [3149] = 3142, [3150] = 3140, [3151] = 3139, [3152] = 3140, [3153] = 3139, [3154] = 3140, [3155] = 3142, [3156] = 3140, [3157] = 3157, [3158] = 3139, [3159] = 3142, [3160] = 3140, [3161] = 3139, [3162] = 3142, [3163] = 3140, [3164] = 3139, [3165] = 3142, [3166] = 3142, [3167] = 3167, [3168] = 3168, [3169] = 3169, [3170] = 3170, [3171] = 3171, [3172] = 3170, [3173] = 3169, [3174] = 3169, [3175] = 3170, [3176] = 3176, [3177] = 3169, [3178] = 3178, [3179] = 3168, [3180] = 3170, [3181] = 3168, [3182] = 3170, [3183] = 2421, [3184] = 3168, [3185] = 3185, [3186] = 3176, [3187] = 3176, [3188] = 3188, [3189] = 3168, [3190] = 3169, [3191] = 3191, [3192] = 3169, [3193] = 3176, [3194] = 3169, [3195] = 3168, [3196] = 3176, [3197] = 3170, [3198] = 3176, [3199] = 3170, [3200] = 3200, [3201] = 3201, [3202] = 3168, [3203] = 3176, [3204] = 640, [3205] = 3205, [3206] = 3206, [3207] = 3207, [3208] = 3208, [3209] = 2421, [3210] = 3208, [3211] = 3205, [3212] = 3207, [3213] = 3213, [3214] = 3214, [3215] = 3208, [3216] = 3206, [3217] = 3214, [3218] = 3214, [3219] = 3219, [3220] = 3220, [3221] = 2968, [3222] = 2944, [3223] = 2967, [3224] = 3224, [3225] = 3157, [3226] = 2975, [3227] = 2972, [3228] = 3205, [3229] = 2974, [3230] = 3230, [3231] = 3206, [3232] = 3207, [3233] = 3233, [3234] = 3234, [3235] = 2969, [3236] = 3236, [3237] = 2421, [3238] = 3238, [3239] = 3239, [3240] = 2406, [3241] = 636, [3242] = 627, [3243] = 3243, [3244] = 2405, [3245] = 3245, [3246] = 3246, [3247] = 2418, [3248] = 2422, [3249] = 2421, [3250] = 3250, [3251] = 3251, [3252] = 634, [3253] = 2411, [3254] = 2419, [3255] = 626, [3256] = 637, [3257] = 2399, [3258] = 2416, [3259] = 3259, [3260] = 621, [3261] = 629, [3262] = 624, [3263] = 3263, [3264] = 639, [3265] = 625, [3266] = 628, [3267] = 631, [3268] = 632, [3269] = 623, [3270] = 633, [3271] = 2420, [3272] = 630, [3273] = 3273, [3274] = 3274, [3275] = 3273, [3276] = 3276, [3277] = 2406, [3278] = 3278, [3279] = 3279, [3280] = 3276, [3281] = 3278, [3282] = 3279, [3283] = 3278, [3284] = 3274, [3285] = 3278, [3286] = 3274, [3287] = 3278, [3288] = 3279, [3289] = 3273, [3290] = 3274, [3291] = 3273, [3292] = 3276, [3293] = 3276, [3294] = 3274, [3295] = 3279, [3296] = 3279, [3297] = 3276, [3298] = 3276, [3299] = 3278, [3300] = 3273, [3301] = 3279, [3302] = 3273, [3303] = 3274, [3304] = 630, [3305] = 2422, [3306] = 3306, [3307] = 3307, [3308] = 2420, [3309] = 3309, [3310] = 3251, [3311] = 3246, [3312] = 2399, [3313] = 3309, [3314] = 3314, [3315] = 3315, [3316] = 3316, [3317] = 3309, [3318] = 3318, [3319] = 3307, [3320] = 634, [3321] = 636, [3322] = 3314, [3323] = 637, [3324] = 3263, [3325] = 3307, [3326] = 639, [3327] = 623, [3328] = 633, [3329] = 3306, [3330] = 632, [3331] = 631, [3332] = 3306, [3333] = 3309, [3334] = 2411, [3335] = 3250, [3336] = 3314, [3337] = 628, [3338] = 3259, [3339] = 625, [3340] = 3309, [3341] = 2405, [3342] = 621, [3343] = 2419, [3344] = 3314, [3345] = 3307, [3346] = 3245, [3347] = 3347, [3348] = 3314, [3349] = 3309, [3350] = 629, [3351] = 3243, [3352] = 3306, [3353] = 2416, [3354] = 3307, [3355] = 624, [3356] = 2406, [3357] = 3306, [3358] = 2418, [3359] = 3306, [3360] = 3307, [3361] = 3314, [3362] = 627, [3363] = 626, [3364] = 637, [3365] = 3213, [3366] = 2419, [3367] = 632, [3368] = 633, [3369] = 630, [3370] = 623, [3371] = 639, [3372] = 2416, [3373] = 2420, [3374] = 2399, [3375] = 636, [3376] = 634, [3377] = 2422, [3378] = 2418, [3379] = 627, [3380] = 2411, [3381] = 626, [3382] = 3246, [3383] = 621, [3384] = 629, [3385] = 2421, [3386] = 3263, [3387] = 3245, [3388] = 624, [3389] = 3250, [3390] = 3251, [3391] = 3259, [3392] = 3243, [3393] = 625, [3394] = 628, [3395] = 631, [3396] = 2405, [3397] = 3397, [3398] = 3398, [3399] = 3399, [3400] = 3400, [3401] = 3399, [3402] = 3399, [3403] = 3400, [3404] = 3400, [3405] = 3399, [3406] = 3399, [3407] = 3400, [3408] = 3399, [3409] = 3316, [3410] = 3400, [3411] = 3399, [3412] = 3400, [3413] = 3397, [3414] = 3399, [3415] = 3397, [3416] = 3397, [3417] = 3315, [3418] = 3400, [3419] = 3397, [3420] = 3318, [3421] = 3400, [3422] = 3397, [3423] = 3239, [3424] = 3399, [3425] = 3400, [3426] = 3238, [3427] = 3397, [3428] = 3397, [3429] = 3397, [3430] = 3399, [3431] = 3400, [3432] = 3400, [3433] = 3399, [3434] = 3400, [3435] = 3399, [3436] = 627, [3437] = 634, [3438] = 628, [3439] = 2405, [3440] = 623, [3441] = 639, [3442] = 3315, [3443] = 2416, [3444] = 630, [3445] = 3316, [3446] = 3318, [3447] = 631, [3448] = 2411, [3449] = 633, [3450] = 632, [3451] = 2406, [3452] = 625, [3453] = 624, [3454] = 2421, [3455] = 629, [3456] = 636, [3457] = 621, [3458] = 3458, [3459] = 3459, [3460] = 3460, [3461] = 637, [3462] = 626, [3463] = 2399, [3464] = 3251, [3465] = 3465, [3466] = 3466, [3467] = 3467, [3468] = 2418, [3469] = 3469, [3470] = 3465, [3471] = 3243, [3472] = 3472, [3473] = 3467, [3474] = 2421, [3475] = 3469, [3476] = 3467, [3477] = 2422, [3478] = 2420, [3479] = 3479, [3480] = 3245, [3481] = 3469, [3482] = 3259, [3483] = 3465, [3484] = 2419, [3485] = 3263, [3486] = 3486, [3487] = 3250, [3488] = 3488, [3489] = 2406, [3490] = 3490, [3491] = 3491, [3492] = 3488, [3493] = 3493, [3494] = 3494, [3495] = 3495, [3496] = 3459, [3497] = 3497, [3498] = 665, [3499] = 3499, [3500] = 3488, [3501] = 664, [3502] = 3488, [3503] = 3488, [3504] = 666, [3505] = 3505, [3506] = 628, [3507] = 3263, [3508] = 3259, [3509] = 3509, [3510] = 632, [3511] = 631, [3512] = 2405, [3513] = 628, [3514] = 633, [3515] = 3515, [3516] = 636, [3517] = 2411, [3518] = 630, [3519] = 623, [3520] = 2416, [3521] = 3459, [3522] = 637, [3523] = 2411, [3524] = 3524, [3525] = 2406, [3526] = 2399, [3527] = 634, [3528] = 636, [3529] = 637, [3530] = 3245, [3531] = 3459, [3532] = 625, [3533] = 2422, [3534] = 2420, [3535] = 624, [3536] = 629, [3537] = 621, [3538] = 626, [3539] = 3539, [3540] = 639, [3541] = 623, [3542] = 630, [3543] = 633, [3544] = 632, [3545] = 3251, [3546] = 627, [3547] = 634, [3548] = 3548, [3549] = 3459, [3550] = 2419, [3551] = 3551, [3552] = 2416, [3553] = 3553, [3554] = 3524, [3555] = 3250, [3556] = 3556, [3557] = 3557, [3558] = 3557, [3559] = 3524, [3560] = 631, [3561] = 639, [3562] = 3557, [3563] = 625, [3564] = 624, [3565] = 629, [3566] = 621, [3567] = 626, [3568] = 627, [3569] = 3243, [3570] = 3557, [3571] = 3557, [3572] = 2399, [3573] = 3573, [3574] = 2418, [3575] = 3557, [3576] = 2405, [3577] = 3577, [3578] = 3578, [3579] = 3579, [3580] = 3580, [3581] = 3472, [3582] = 3259, [3583] = 3583, [3584] = 3243, [3585] = 3251, [3586] = 3586, [3587] = 3587, [3588] = 3588, [3589] = 3589, [3590] = 3590, [3591] = 3250, [3592] = 3592, [3593] = 3245, [3594] = 3594, [3595] = 3493, [3596] = 3263, [3597] = 3583, [3598] = 3494, [3599] = 3599, [3600] = 3600, [3601] = 2418, [3602] = 3602, [3603] = 2422, [3604] = 3497, [3605] = 3605, [3606] = 3490, [3607] = 3459, [3608] = 3608, [3609] = 3491, [3610] = 3610, [3611] = 3499, [3612] = 3459, [3613] = 3459, [3614] = 3583, [3615] = 3615, [3616] = 3616, [3617] = 2420, [3618] = 2419, [3619] = 3619, [3620] = 3459, [3621] = 3621, [3622] = 3622, [3623] = 3623, [3624] = 3624, [3625] = 3625, [3626] = 3626, [3627] = 3623, [3628] = 3628, [3629] = 3629, [3630] = 3630, [3631] = 3631, [3632] = 3632, [3633] = 3633, [3634] = 3634, [3635] = 3472, [3636] = 3636, [3637] = 3637, [3638] = 3638, [3639] = 3630, [3640] = 3499, [3641] = 3641, [3642] = 3490, [3643] = 3633, [3644] = 3630, [3645] = 3645, [3646] = 3646, [3647] = 3647, [3648] = 3648, [3649] = 3628, [3650] = 3636, [3651] = 3651, [3652] = 3652, [3653] = 3497, [3654] = 3634, [3655] = 3631, [3656] = 3638, [3657] = 3625, [3658] = 3622, [3659] = 3659, [3660] = 3633, [3661] = 3646, [3662] = 3623, [3663] = 3659, [3664] = 3645, [3665] = 3665, [3666] = 3666, [3667] = 3667, [3668] = 3637, [3669] = 3472, [3670] = 3626, [3671] = 3624, [3672] = 3626, [3673] = 3626, [3674] = 3624, [3675] = 3628, [3676] = 3494, [3677] = 3647, [3678] = 3645, [3679] = 3624, [3680] = 3680, [3681] = 3646, [3682] = 3634, [3683] = 3652, [3684] = 3636, [3685] = 3641, [3686] = 3645, [3687] = 3687, [3688] = 3630, [3689] = 3622, [3690] = 3493, [3691] = 3622, [3692] = 3641, [3693] = 3625, [3694] = 3622, [3695] = 3625, [3696] = 3624, [3697] = 3697, [3698] = 3698, [3699] = 3647, [3700] = 3652, [3701] = 3652, [3702] = 3632, [3703] = 3631, [3704] = 3622, [3705] = 3634, [3706] = 3706, [3707] = 3637, [3708] = 3459, [3709] = 3628, [3710] = 3472, [3711] = 3623, [3712] = 3472, [3713] = 3713, [3714] = 3625, [3715] = 3633, [3716] = 3716, [3717] = 3659, [3718] = 3641, [3719] = 3706, [3720] = 3659, [3721] = 3638, [3722] = 3722, [3723] = 3638, [3724] = 3636, [3725] = 3472, [3726] = 3646, [3727] = 3630, [3728] = 3491, [3729] = 3634, [3730] = 3631, [3731] = 3633, [3732] = 3732, [3733] = 3733, [3734] = 3734, [3735] = 3636, [3736] = 3637, [3737] = 3626, [3738] = 3637, [3739] = 3623, [3740] = 3706, [3741] = 3641, [3742] = 3633, [3743] = 3647, [3744] = 3645, [3745] = 3630, [3746] = 3637, [3747] = 3659, [3748] = 3646, [3749] = 3631, [3750] = 3634, [3751] = 3636, [3752] = 3628, [3753] = 3626, [3754] = 3647, [3755] = 3631, [3756] = 3623, [3757] = 3625, [3758] = 3624, [3759] = 3645, [3760] = 3646, [3761] = 3638, [3762] = 3659, [3763] = 3628, [3764] = 3647, [3765] = 3641, [3766] = 3766, [3767] = 3767, [3768] = 3768, [3769] = 663, [3770] = 3770, [3771] = 3515, [3772] = 3553, [3773] = 1400, [3774] = 1429, [3775] = 3577, [3776] = 3602, [3777] = 3573, [3778] = 3539, [3779] = 3768, [3780] = 3770, [3781] = 3781, [3782] = 3551, [3783] = 3768, [3784] = 3784, [3785] = 3505, [3786] = 3548, [3787] = 662, [3788] = 3768, [3789] = 3789, [3790] = 3790, [3791] = 3791, [3792] = 3792, [3793] = 3793, [3794] = 3697, [3795] = 3795, [3796] = 3796, [3797] = 3797, [3798] = 3697, [3799] = 3768, [3800] = 3587, [3801] = 3605, [3802] = 3802, [3803] = 3472, [3804] = 3804, [3805] = 3805, [3806] = 3806, [3807] = 3807, [3808] = 3768, [3809] = 3610, [3810] = 3615, [3811] = 667, [3812] = 3619, [3813] = 669, [3814] = 3814, [3815] = 3551, [3816] = 3600, [3817] = 668, [3818] = 3768, [3819] = 3616, [3820] = 3599, [3821] = 3821, [3822] = 663, [3823] = 3823, [3824] = 3824, [3825] = 3697, [3826] = 3586, [3827] = 3590, [3828] = 3828, [3829] = 3829, [3830] = 3608, [3831] = 3831, [3832] = 3832, [3833] = 3768, [3834] = 3834, [3835] = 3835, [3836] = 3697, [3837] = 3553, [3838] = 3505, [3839] = 3580, [3840] = 3579, [3841] = 3594, [3842] = 3842, [3843] = 3843, [3844] = 3844, [3845] = 3845, [3846] = 3846, [3847] = 3548, [3848] = 3848, [3849] = 3849, [3850] = 3850, [3851] = 661, [3852] = 3852, [3853] = 3853, [3854] = 3854, [3855] = 3855, [3856] = 3856, [3857] = 3857, [3858] = 3858, [3859] = 3859, [3860] = 3860, [3861] = 3861, [3862] = 3608, [3863] = 3863, [3864] = 3577, [3865] = 3573, [3866] = 3539, [3867] = 696, [3868] = 3632, [3869] = 3605, [3870] = 3870, [3871] = 3651, [3872] = 3648, [3873] = 3610, [3874] = 3615, [3875] = 3875, [3876] = 3680, [3877] = 3515, [3878] = 3577, [3879] = 3573, [3880] = 3600, [3881] = 3539, [3882] = 3619, [3883] = 3883, [3884] = 3539, [3885] = 3885, [3886] = 3573, [3887] = 3887, [3888] = 3577, [3889] = 3889, [3890] = 3515, [3891] = 3891, [3892] = 3892, [3893] = 3666, [3894] = 3894, [3895] = 3895, [3896] = 3667, [3897] = 3897, [3898] = 3898, [3899] = 3899, [3900] = 3900, [3901] = 3629, [3902] = 3515, [3903] = 3594, [3904] = 3579, [3905] = 3905, [3906] = 3539, [3907] = 3687, [3908] = 3632, [3909] = 3602, [3910] = 3573, [3911] = 3580, [3912] = 3621, [3913] = 3515, [3914] = 3577, [3915] = 3515, [3916] = 3916, [3917] = 3587, [3918] = 3918, [3919] = 3590, [3920] = 3586, [3921] = 3921, [3922] = 3577, [3923] = 3923, [3924] = 3924, [3925] = 3616, [3926] = 3599, [3927] = 3539, [3928] = 3573, [3929] = 3766, [3930] = 3857, [3931] = 3814, [3932] = 1429, [3933] = 3666, [3934] = 3667, [3935] = 3621, [3936] = 663, [3937] = 3860, [3938] = 3859, [3939] = 1400, [3940] = 3870, [3941] = 3806, [3942] = 3823, [3943] = 3821, [3944] = 3828, [3945] = 3651, [3946] = 3850, [3947] = 3573, [3948] = 3791, [3949] = 3632, [3950] = 3577, [3951] = 3648, [3952] = 3824, [3953] = 3515, [3954] = 3680, [3955] = 3629, [3956] = 3870, [3957] = 3790, [3958] = 3829, [3959] = 3835, [3960] = 3842, [3961] = 3861, [3962] = 3767, [3963] = 3539, [3964] = 3789, [3965] = 3856, [3966] = 3843, [3967] = 3804, [3968] = 3795, [3969] = 3802, [3970] = 663, [3971] = 664, [3972] = 3972, [3973] = 3855, [3974] = 3870, [3975] = 665, [3976] = 3796, [3977] = 3687, [3978] = 3849, [3979] = 3848, [3980] = 3831, [3981] = 666, [3982] = 3832, [3983] = 3807, [3984] = 3858, [3985] = 3846, [3986] = 3870, [3987] = 3797, [3988] = 3845, [3989] = 3632, [3990] = 3854, [3991] = 3844, [3992] = 3853, [3993] = 3834, [3994] = 3852, [3995] = 3805, [3996] = 3924, [3997] = 3897, [3998] = 3831, [3999] = 3832, [4000] = 3834, [4001] = 3796, [4002] = 3795, [4003] = 4003, [4004] = 3916, [4005] = 3828, [4006] = 3843, [4007] = 3844, [4008] = 3854, [4009] = 3766, [4010] = 3853, [4011] = 3875, [4012] = 3852, [4013] = 3845, [4014] = 3805, [4015] = 3846, [4016] = 666, [4017] = 3899, [4018] = 3887, [4019] = 3898, [4020] = 3899, [4021] = 3897, [4022] = 3842, [4023] = 3895, [4024] = 3829, [4025] = 3835, [4026] = 3894, [4027] = 1429, [4028] = 3898, [4029] = 3824, [4030] = 3892, [4031] = 3905, [4032] = 3823, [4033] = 3850, [4034] = 3858, [4035] = 665, [4036] = 3891, [4037] = 3889, [4038] = 3887, [4039] = 3875, [4040] = 3863, [4041] = 3918, [4042] = 3806, [4043] = 3916, [4044] = 3885, [4045] = 3790, [4046] = 3918, [4047] = 3883, [4048] = 3804, [4049] = 3863, [4050] = 3802, [4051] = 3814, [4052] = 3767, [4053] = 3848, [4054] = 3861, [4055] = 3849, [4056] = 3875, [4057] = 3863, [4058] = 3860, [4059] = 3883, [4060] = 1400, [4061] = 3885, [4062] = 3789, [4063] = 3923, [4064] = 3924, [4065] = 3791, [4066] = 3859, [4067] = 664, [4068] = 3924, [4069] = 3887, [4070] = 3797, [4071] = 3905, [4072] = 3889, [4073] = 3891, [4074] = 3892, [4075] = 3807, [4076] = 3895, [4077] = 3857, [4078] = 3856, [4079] = 3894, [4080] = 3895, [4081] = 3897, [4082] = 3883, [4083] = 3898, [4084] = 3899, [4085] = 3894, [4086] = 3855, [4087] = 3892, [4088] = 3923, [4089] = 3821, [4090] = 3923, [4091] = 3918, [4092] = 3885, [4093] = 3916, [4094] = 3905, [4095] = 3891, [4096] = 3889, [4097] = 3895, [4098] = 4003, [4099] = 3883, [4100] = 3889, [4101] = 3887, [4102] = 3916, [4103] = 3807, [4104] = 3885, [4105] = 3918, [4106] = 3863, [4107] = 3899, [4108] = 3875, [4109] = 4109, [4110] = 4003, [4111] = 4003, [4112] = 4003, [4113] = 3905, [4114] = 3898, [4115] = 3897, [4116] = 3892, [4117] = 3894, [4118] = 3891, [4119] = 3923, [4120] = 3924, [4121] = 3863, [4122] = 3892, [4123] = 3905, [4124] = 3916, [4125] = 3918, [4126] = 3923, [4127] = 3924, [4128] = 3875, [4129] = 3883, [4130] = 3885, [4131] = 3899, [4132] = 3898, [4133] = 3887, [4134] = 3889, [4135] = 3897, [4136] = 3891, [4137] = 3895, [4138] = 3894, [4139] = 4139, [4140] = 3891, [4141] = 3894, [4142] = 3885, [4143] = 4143, [4144] = 4144, [4145] = 3892, [4146] = 4146, [4147] = 3875, [4148] = 3898, [4149] = 3863, [4150] = 3883, [4151] = 3887, [4152] = 3889, [4153] = 3895, [4154] = 3897, [4155] = 3899, [4156] = 4156, [4157] = 4157, [4158] = 4158, [4159] = 4159, [4160] = 4160, [4161] = 4161, [4162] = 4162, [4163] = 4163, [4164] = 4164, [4165] = 4165, [4166] = 4166, [4167] = 3875, [4168] = 3892, [4169] = 4169, [4170] = 4170, [4171] = 4171, [4172] = 4169, [4173] = 4169, [4174] = 4171, [4175] = 4171, [4176] = 4176, [4177] = 4169, [4178] = 3875, [4179] = 4179, [4180] = 4180, [4181] = 4181, [4182] = 3899, [4183] = 3898, [4184] = 4171, [4185] = 3895, [4186] = 3894, [4187] = 4169, [4188] = 3807, [4189] = 3899, [4190] = 4166, [4191] = 4169, [4192] = 3898, [4193] = 3897, [4194] = 3895, [4195] = 3894, [4196] = 4169, [4197] = 3892, [4198] = 3891, [4199] = 4169, [4200] = 4169, [4201] = 3875, [4202] = 3889, [4203] = 3887, [4204] = 3899, [4205] = 3898, [4206] = 3885, [4207] = 4169, [4208] = 3897, [4209] = 3895, [4210] = 3894, [4211] = 3892, [4212] = 4170, [4213] = 3891, [4214] = 3889, [4215] = 3887, [4216] = 3885, [4217] = 3883, [4218] = 3863, [4219] = 3891, [4220] = 3883, [4221] = 3863, [4222] = 3887, [4223] = 3885, [4224] = 4171, [4225] = 3883, [4226] = 3863, [4227] = 4227, [4228] = 4169, [4229] = 4171, [4230] = 4230, [4231] = 3897, [4232] = 3889, [4233] = 4233, [4234] = 4162, [4235] = 3923, [4236] = 3905, [4237] = 4237, [4238] = 3892, [4239] = 3894, [4240] = 3895, [4241] = 4241, [4242] = 4242, [4243] = 4243, [4244] = 3883, [4245] = 4242, [4246] = 4246, [4247] = 3885, [4248] = 4166, [4249] = 3887, [4250] = 3863, [4251] = 4251, [4252] = 2421, [4253] = 4253, [4254] = 3924, [4255] = 3889, [4256] = 3916, [4257] = 4257, [4258] = 4258, [4259] = 3899, [4260] = 4260, [4261] = 4242, [4262] = 4262, [4263] = 4263, [4264] = 4264, [4265] = 3918, [4266] = 4242, [4267] = 3897, [4268] = 4268, [4269] = 4269, [4270] = 4242, [4271] = 4269, [4272] = 3898, [4273] = 4233, [4274] = 4274, [4275] = 4275, [4276] = 3875, [4277] = 4277, [4278] = 3891, [4279] = 4279, [4280] = 4269, [4281] = 4281, [4282] = 4282, [4283] = 3894, [4284] = 4166, [4285] = 3891, [4286] = 3892, [4287] = 3895, [4288] = 3897, [4289] = 3898, [4290] = 4282, [4291] = 4281, [4292] = 4281, [4293] = 3887, [4294] = 3899, [4295] = 3885, [4296] = 4282, [4297] = 3883, [4298] = 3889, [4299] = 4282, [4300] = 4281, [4301] = 4301, [4302] = 4281, [4303] = 3863, [4304] = 4282, [4305] = 4281, [4306] = 3875, [4307] = 4282, [4308] = 4308, [4309] = 4308, [4310] = 4308, [4311] = 4308, [4312] = 4308, [4313] = 4308, [4314] = 2423, [4315] = 4315, [4316] = 4316, [4317] = 4315, [4318] = 4318, [4319] = 4319, [4320] = 4320, [4321] = 4316, [4322] = 4316, [4323] = 4318, [4324] = 4318, [4325] = 4325, [4326] = 4326, [4327] = 4327, [4328] = 4319, [4329] = 4326, [4330] = 4316, [4331] = 4327, [4332] = 4327, [4333] = 4326, [4334] = 4315, [4335] = 4320, [4336] = 4325, [4337] = 4319, [4338] = 4318, [4339] = 4325, [4340] = 4318, [4341] = 4320, [4342] = 4326, [4343] = 4315, [4344] = 4325, [4345] = 4320, [4346] = 4315, [4347] = 4327, [4348] = 4327, [4349] = 4325, [4350] = 4319, [4351] = 4326, [4352] = 4320, [4353] = 4319, [4354] = 4315, [4355] = 4320, [4356] = 4325, [4357] = 4315, [4358] = 4318, [4359] = 4320, [4360] = 4325, [4361] = 4326, [4362] = 4327, [4363] = 4327, [4364] = 4315, [4365] = 4320, [4366] = 4325, [4367] = 4316, [4368] = 4318, [4369] = 4319, [4370] = 4316, [4371] = 4316, [4372] = 4326, [4373] = 4319, [4374] = 4319, [4375] = 4318, [4376] = 4326, [4377] = 4316, [4378] = 4327, [4379] = 4379, [4380] = 4380, [4381] = 4381, [4382] = 4382, [4383] = 4381, [4384] = 4384, [4385] = 4385, [4386] = 4381, [4387] = 4387, [4388] = 4388, [4389] = 4384, [4390] = 4390, [4391] = 4388, [4392] = 4390, [4393] = 4393, [4394] = 4394, [4395] = 4395, [4396] = 4395, [4397] = 4397, [4398] = 4388, [4399] = 4388, [4400] = 4400, [4401] = 4401, [4402] = 4390, [4403] = 4382, [4404] = 4394, [4405] = 4385, [4406] = 4401, [4407] = 4407, [4408] = 4408, [4409] = 4381, [4410] = 4397, [4411] = 4384, [4412] = 4412, [4413] = 4413, [4414] = 4412, [4415] = 4380, [4416] = 4416, [4417] = 4417, [4418] = 4384, [4419] = 4387, [4420] = 4380, [4421] = 4416, [4422] = 4412, [4423] = 4423, [4424] = 4424, [4425] = 4425, [4426] = 4417, [4427] = 4417, [4428] = 4379, [4429] = 4393, [4430] = 4380, [4431] = 4380, [4432] = 4417, [4433] = 4412, [4434] = 4384, [4435] = 4381, [4436] = 4390, [4437] = 4394, [4438] = 4395, [4439] = 4388, [4440] = 4390, [4441] = 4387, [4442] = 4424, [4443] = 4423, [4444] = 4425, [4445] = 4379, [4446] = 4417, [4447] = 4417, [4448] = 4448, [4449] = 4394, [4450] = 4450, [4451] = 4395, [4452] = 4408, [4453] = 4407, [4454] = 4401, [4455] = 4385, [4456] = 4400, [4457] = 4412, [4458] = 4393, [4459] = 4397, [4460] = 4382, [4461] = 4413, [4462] = 4397, [4463] = 4416, [4464] = 4385, [4465] = 4416, [4466] = 4416, [4467] = 4412, [4468] = 4388, [4469] = 4448, [4470] = 4384, [4471] = 4395, [4472] = 4412, [4473] = 4379, [4474] = 4417, [4475] = 4413, [4476] = 4381, [4477] = 4382, [4478] = 4400, [4479] = 4382, [4480] = 4450, [4481] = 4425, [4482] = 4400, [4483] = 4416, [4484] = 4408, [4485] = 4393, [4486] = 4401, [4487] = 4407, [4488] = 4387, [4489] = 4423, [4490] = 4425, [4491] = 4448, [4492] = 4380, [4493] = 4448, [4494] = 4450, [4495] = 4397, [4496] = 4416, [4497] = 4450, [4498] = 4424, [4499] = 4408, [4500] = 4385, [4501] = 4388, [4502] = 4394, [4503] = 4394, [4504] = 4423, [4505] = 4381, [4506] = 4393, [4507] = 4413, [4508] = 4408, [4509] = 4397, [4510] = 4390, [4511] = 4395, [4512] = 4413, [4513] = 4397, [4514] = 4413, [4515] = 4448, [4516] = 4424, [4517] = 4382, [4518] = 4408, [4519] = 4401, [4520] = 4395, [4521] = 4407, [4522] = 4412, [4523] = 4401, [4524] = 4407, [4525] = 4382, [4526] = 4408, [4527] = 4413, [4528] = 4407, [4529] = 4401, [4530] = 4381, [4531] = 4400, [4532] = 4393, [4533] = 4425, [4534] = 4450, [4535] = 4379, [4536] = 4423, [4537] = 4380, [4538] = 4416, [4539] = 4388, [4540] = 4424, [4541] = 4424, [4542] = 4390, [4543] = 4393, [4544] = 4450, [4545] = 4400, [4546] = 4384, [4547] = 4413, [4548] = 4401, [4549] = 4387, [4550] = 4407, [4551] = 4448, [4552] = 4423, [4553] = 4397, [4554] = 4450, [4555] = 4417, [4556] = 4380, [4557] = 4448, [4558] = 4385, [4559] = 4382, [4560] = 4379, [4561] = 4394, [4562] = 4400, [4563] = 4385, [4564] = 4425, [4565] = 4424, [4566] = 4387, [4567] = 4423, [4568] = 4448, [4569] = 4394, [4570] = 4393, [4571] = 4387, [4572] = 4425, [4573] = 4450, [4574] = 4424, [4575] = 4400, [4576] = 4387, [4577] = 4379, [4578] = 4407, [4579] = 4384, [4580] = 4390, [4581] = 4423, [4582] = 4425, [4583] = 4408, [4584] = 4395, [4585] = 4379, [4586] = 4385, [4587] = 3251, [4588] = 3263, [4589] = 3250, [4590] = 3246, [4591] = 3245, [4592] = 3243, [4593] = 3259, [4594] = 3206, [4595] = 3207, [4596] = 3205, [4597] = 3205, [4598] = 626, [4599] = 3207, [4600] = 637, [4601] = 2405, [4602] = 639, [4603] = 636, [4604] = 3206, [4605] = 627, [4606] = 634, [4607] = 628, [4608] = 623, [4609] = 621, [4610] = 630, [4611] = 631, [4612] = 633, [4613] = 629, [4614] = 624, [4615] = 2416, [4616] = 625, [4617] = 632, [4618] = 2411, [4619] = 2399, [4620] = 3207, [4621] = 3205, [4622] = 3206, [4623] = 3206, [4624] = 2406, [4625] = 3205, [4626] = 2421, [4627] = 3205, [4628] = 3207, [4629] = 3207, [4630] = 3206, [4631] = 2418, [4632] = 2421, [4633] = 2421, [4634] = 2422, [4635] = 3206, [4636] = 2420, [4637] = 2419, [4638] = 2421, [4639] = 3315, [4640] = 2406, [4641] = 3318, [4642] = 2421, [4643] = 3316, [4644] = 2422, [4645] = 3259, [4646] = 3250, [4647] = 2419, [4648] = 3245, [4649] = 2418, [4650] = 4650, [4651] = 4651, [4652] = 3251, [4653] = 3246, [4654] = 2420, [4655] = 3243, [4656] = 3263, [4657] = 3599, [4658] = 3579, [4659] = 3616, [4660] = 3608, [4661] = 3590, [4662] = 3548, [4663] = 3551, [4664] = 3619, [4665] = 3553, [4666] = 3505, [4667] = 3580, [4668] = 4668, [4669] = 3316, [4670] = 626, [4671] = 4671, [4672] = 627, [4673] = 3594, [4674] = 4674, [4675] = 4675, [4676] = 2399, [4677] = 621, [4678] = 4674, [4679] = 4679, [4680] = 4680, [4681] = 629, [4682] = 4682, [4683] = 4683, [4684] = 624, [4685] = 4685, [4686] = 4685, [4687] = 4687, [4688] = 4679, [4689] = 625, [4690] = 4690, [4691] = 4680, [4692] = 4692, [4693] = 4679, [4694] = 4683, [4695] = 4695, [4696] = 2405, [4697] = 4674, [4698] = 4687, [4699] = 3600, [4700] = 628, [4701] = 2411, [4702] = 4671, [4703] = 4671, [4704] = 4668, [4705] = 4675, [4706] = 4668, [4707] = 4675, [4708] = 4690, [4709] = 4668, [4710] = 4683, [4711] = 4682, [4712] = 4680, [4713] = 4675, [4714] = 634, [4715] = 2416, [4716] = 4671, [4717] = 4683, [4718] = 636, [4719] = 4679, [4720] = 4675, [4721] = 4685, [4722] = 4668, [4723] = 4695, [4724] = 4680, [4725] = 637, [4726] = 4674, [4727] = 4685, [4728] = 4679, [4729] = 4695, [4730] = 4680, [4731] = 631, [4732] = 4687, [4733] = 4674, [4734] = 4679, [4735] = 4687, [4736] = 4680, [4737] = 4682, [4738] = 4682, [4739] = 4690, [4740] = 4695, [4741] = 4674, [4742] = 4690, [4743] = 4680, [4744] = 4682, [4745] = 4683, [4746] = 4683, [4747] = 4685, [4748] = 4685, [4749] = 4685, [4750] = 4668, [4751] = 4687, [4752] = 4682, [4753] = 4668, [4754] = 3315, [4755] = 4671, [4756] = 4690, [4757] = 4675, [4758] = 4675, [4759] = 4687, [4760] = 4690, [4761] = 4682, [4762] = 4682, [4763] = 4695, [4764] = 4671, [4765] = 4695, [4766] = 4683, [4767] = 3586, [4768] = 4695, [4769] = 4675, [4770] = 632, [4771] = 3318, [4772] = 633, [4773] = 630, [4774] = 623, [4775] = 639, [4776] = 4685, [4777] = 4671, [4778] = 4679, [4779] = 4690, [4780] = 4674, [4781] = 4687, [4782] = 4668, [4783] = 4695, [4784] = 3316, [4785] = 4671, [4786] = 637, [4787] = 2421, [4788] = 3318, [4789] = 3315, [4790] = 4790, [4791] = 621, [4792] = 626, [4793] = 2416, [4794] = 2399, [4795] = 4795, [4796] = 2411, [4797] = 2405, [4798] = 4798, [4799] = 4799, [4800] = 623, [4801] = 629, [4802] = 624, [4803] = 625, [4804] = 628, [4805] = 631, [4806] = 632, [4807] = 636, [4808] = 633, [4809] = 630, [4810] = 634, [4811] = 627, [4812] = 4812, [4813] = 4813, [4814] = 639, [4815] = 4815, [4816] = 4816, [4817] = 4817, [4818] = 4818, [4819] = 4818, [4820] = 4820, [4821] = 4821, [4822] = 4822, [4823] = 4823, [4824] = 4824, [4825] = 4816, [4826] = 4826, [4827] = 3318, [4828] = 4828, [4829] = 4829, [4830] = 4830, [4831] = 4831, [4832] = 4832, [4833] = 4821, [4834] = 4832, [4835] = 4817, [4836] = 4836, [4837] = 4831, [4838] = 4820, [4839] = 4839, [4840] = 4823, [4841] = 4831, [4842] = 4842, [4843] = 4842, [4844] = 4844, [4845] = 4822, [4846] = 4820, [4847] = 4826, [4848] = 4832, [4849] = 4824, [4850] = 4828, [4851] = 4823, [4852] = 4839, [4853] = 4822, [4854] = 4836, [4855] = 4818, [4856] = 4826, [4857] = 4829, [4858] = 4823, [4859] = 4859, [4860] = 4831, [4861] = 4861, [4862] = 4820, [4863] = 4815, [4864] = 4830, [4865] = 4815, [4866] = 4832, [4867] = 4818, [4868] = 4830, [4869] = 4869, [4870] = 4816, [4871] = 4871, [4872] = 4816, [4873] = 4842, [4874] = 3499, [4875] = 4836, [4876] = 4876, [4877] = 4816, [4878] = 4816, [4879] = 4831, [4880] = 4830, [4881] = 4844, [4882] = 4828, [4883] = 4823, [4884] = 4817, [4885] = 4824, [4886] = 4820, [4887] = 4887, [4888] = 4820, [4889] = 4821, [4890] = 4836, [4891] = 4816, [4892] = 4824, [4893] = 4830, [4894] = 4839, [4895] = 4832, [4896] = 4876, [4897] = 4844, [4898] = 4887, [4899] = 4836, [4900] = 4820, [4901] = 4820, [4902] = 4821, [4903] = 4861, [4904] = 4826, [4905] = 4830, [4906] = 4818, [4907] = 4816, [4908] = 4836, [4909] = 4871, [4910] = 3315, [4911] = 4859, [4912] = 4871, [4913] = 4829, [4914] = 4842, [4915] = 4876, [4916] = 4816, [4917] = 4844, [4918] = 4816, [4919] = 4859, [4920] = 4822, [4921] = 4815, [4922] = 4887, [4923] = 4861, [4924] = 4861, [4925] = 4817, [4926] = 4887, [4927] = 4828, [4928] = 4817, [4929] = 4887, [4930] = 4824, [4931] = 4820, [4932] = 4871, [4933] = 4861, [4934] = 4821, [4935] = 4859, [4936] = 4844, [4937] = 4842, [4938] = 4836, [4939] = 4815, [4940] = 4876, [4941] = 4859, [4942] = 4830, [4943] = 4871, [4944] = 4831, [4945] = 4876, [4946] = 4826, [4947] = 4820, [4948] = 4820, [4949] = 4829, [4950] = 4832, [4951] = 4826, [4952] = 4859, [4953] = 4876, [4954] = 4871, [4955] = 4816, [4956] = 4817, [4957] = 4823, [4958] = 4826, [4959] = 4887, [4960] = 4829, [4961] = 4861, [4962] = 3316, [4963] = 4832, [4964] = 4844, [4965] = 4815, [4966] = 4816, [4967] = 4842, [4968] = 4820, [4969] = 4816, [4970] = 4818, [4971] = 4829, [4972] = 4828, [4973] = 4820, [4974] = 4824, [4975] = 4828, [4976] = 4821, [4977] = 4818, [4978] = 4822, [4979] = 4822, [4980] = 4980, [4981] = 4981, [4982] = 4981, [4983] = 4983, [4984] = 4981, [4985] = 4981, [4986] = 4981, [4987] = 4987, [4988] = 4981, [4989] = 4989, [4990] = 3494, [4991] = 4991, [4992] = 4981, [4993] = 4993, [4994] = 4994, [4995] = 2406, [4996] = 3493, [4997] = 3491, [4998] = 4998, [4999] = 4999, [5000] = 4981, [5001] = 3490, [5002] = 5002, [5003] = 5003, [5004] = 3497, [5005] = 3499, [5006] = 5006, [5007] = 3615, [5008] = 3259, [5009] = 5009, [5010] = 5006, [5011] = 3243, [5012] = 5009, [5013] = 2420, [5014] = 3605, [5015] = 3251, [5016] = 3263, [5017] = 3499, [5018] = 5018, [5019] = 5009, [5020] = 2419, [5021] = 5018, [5022] = 5022, [5023] = 5009, [5024] = 5009, [5025] = 3250, [5026] = 5018, [5027] = 5027, [5028] = 2418, [5029] = 5009, [5030] = 5009, [5031] = 5018, [5032] = 5018, [5033] = 5018, [5034] = 5006, [5035] = 3610, [5036] = 5009, [5037] = 5018, [5038] = 3245, [5039] = 5027, [5040] = 5018, [5041] = 2422, [5042] = 5006, [5043] = 5043, [5044] = 5043, [5045] = 5045, [5046] = 5046, [5047] = 3610, [5048] = 3605, [5049] = 5045, [5050] = 5045, [5051] = 3491, [5052] = 3615, [5053] = 3493, [5054] = 5054, [5055] = 5045, [5056] = 3497, [5057] = 5057, [5058] = 5043, [5059] = 5059, [5060] = 638, [5061] = 5043, [5062] = 5043, [5063] = 5045, [5064] = 5059, [5065] = 3494, [5066] = 5045, [5067] = 3490, [5068] = 5043, [5069] = 5069, [5070] = 5070, [5071] = 5071, [5072] = 3580, [5073] = 3553, [5074] = 3499, [5075] = 3490, [5076] = 3499, [5077] = 5077, [5078] = 3493, [5079] = 3497, [5080] = 3615, [5081] = 3610, [5082] = 5070, [5083] = 5083, [5084] = 3605, [5085] = 3491, [5086] = 5086, [5087] = 3494, [5088] = 5088, [5089] = 5077, [5090] = 5090, [5091] = 5090, [5092] = 3490, [5093] = 5090, [5094] = 5094, [5095] = 3497, [5096] = 3493, [5097] = 5094, [5098] = 5094, [5099] = 3490, [5100] = 5090, [5101] = 5090, [5102] = 3497, [5103] = 3494, [5104] = 3494, [5105] = 5094, [5106] = 3493, [5107] = 5090, [5108] = 3491, [5109] = 5109, [5110] = 5094, [5111] = 5111, [5112] = 5111, [5113] = 5109, [5114] = 5094, [5115] = 5109, [5116] = 5090, [5117] = 5117, [5118] = 5094, [5119] = 5111, [5120] = 5094, [5121] = 3491, [5122] = 5111, [5123] = 5094, [5124] = 5109, [5125] = 5090, [5126] = 5126, [5127] = 5109, [5128] = 5109, [5129] = 5094, [5130] = 5111, [5131] = 5131, [5132] = 5090, [5133] = 5133, [5134] = 5090, [5135] = 5090, [5136] = 5094, [5137] = 5111, [5138] = 5094, [5139] = 5094, [5140] = 5090, [5141] = 5090, [5142] = 5142, [5143] = 5143, [5144] = 5144, [5145] = 5145, [5146] = 5146, [5147] = 5146, [5148] = 5148, [5149] = 5149, [5150] = 5143, [5151] = 3580, [5152] = 5152, [5153] = 5146, [5154] = 1518, [5155] = 5144, [5156] = 5148, [5157] = 5148, [5158] = 5152, [5159] = 3615, [5160] = 5144, [5161] = 1558, [5162] = 5148, [5163] = 5144, [5164] = 665, [5165] = 5143, [5166] = 5166, [5167] = 664, [5168] = 5168, [5169] = 1524, [5170] = 5170, [5171] = 5148, [5172] = 5152, [5173] = 5152, [5174] = 5148, [5175] = 5152, [5176] = 5143, [5177] = 5177, [5178] = 3553, [5179] = 5144, [5180] = 3605, [5181] = 5152, [5182] = 3605, [5183] = 1380, [5184] = 5184, [5185] = 5152, [5186] = 5145, [5187] = 5152, [5188] = 5143, [5189] = 5146, [5190] = 3610, [5191] = 5144, [5192] = 666, [5193] = 5146, [5194] = 5145, [5195] = 5146, [5196] = 5196, [5197] = 3615, [5198] = 1522, [5199] = 5152, [5200] = 3610, [5201] = 5146, [5202] = 5144, [5203] = 5143, [5204] = 5146, [5205] = 5144, [5206] = 5144, [5207] = 5146, [5208] = 3608, [5209] = 5209, [5210] = 3505, [5211] = 5211, [5212] = 5209, [5213] = 3594, [5214] = 3586, [5215] = 3551, [5216] = 5216, [5217] = 5211, [5218] = 5211, [5219] = 3590, [5220] = 3548, [5221] = 3616, [5222] = 5222, [5223] = 5211, [5224] = 3600, [5225] = 5222, [5226] = 5222, [5227] = 3579, [5228] = 5222, [5229] = 5046, [5230] = 5059, [5231] = 3599, [5232] = 3619, [5233] = 5233, [5234] = 5209, [5235] = 5222, [5236] = 5209, [5237] = 5222, [5238] = 5238, [5239] = 5239, [5240] = 1293, [5241] = 5241, [5242] = 5242, [5243] = 5242, [5244] = 5077, [5245] = 5239, [5246] = 5238, [5247] = 5241, [5248] = 5239, [5249] = 5249, [5250] = 5250, [5251] = 5249, [5252] = 5252, [5253] = 5249, [5254] = 5252, [5255] = 5242, [5256] = 5252, [5257] = 5257, [5258] = 5239, [5259] = 5259, [5260] = 5242, [5261] = 5252, [5262] = 5249, [5263] = 1291, [5264] = 5250, [5265] = 5249, [5266] = 5239, [5267] = 5238, [5268] = 5268, [5269] = 5239, [5270] = 5270, [5271] = 5239, [5272] = 5272, [5273] = 5238, [5274] = 5249, [5275] = 5249, [5276] = 5241, [5277] = 5249, [5278] = 5238, [5279] = 5252, [5280] = 5238, [5281] = 5259, [5282] = 5250, [5283] = 5238, [5284] = 5284, [5285] = 5059, [5286] = 5239, [5287] = 5252, [5288] = 5242, [5289] = 5249, [5290] = 5238, [5291] = 5241, [5292] = 1291, [5293] = 5249, [5294] = 5238, [5295] = 5295, [5296] = 5238, [5297] = 5238, [5298] = 5250, [5299] = 5239, [5300] = 5239, [5301] = 5252, [5302] = 5241, [5303] = 5259, [5304] = 5242, [5305] = 5238, [5306] = 5249, [5307] = 5249, [5308] = 5239, [5309] = 5259, [5310] = 5241, [5311] = 5259, [5312] = 5250, [5313] = 5259, [5314] = 1293, [5315] = 5252, [5316] = 5250, [5317] = 5242, [5318] = 5239, [5319] = 5249, [5320] = 5070, [5321] = 5238, [5322] = 5239, [5323] = 5323, [5324] = 5242, [5325] = 5077, [5326] = 5326, [5327] = 5327, [5328] = 5326, [5329] = 5329, [5330] = 5330, [5331] = 5331, [5332] = 5332, [5333] = 5333, [5334] = 5334, [5335] = 5335, [5336] = 5336, [5337] = 5331, [5338] = 5338, [5339] = 5339, [5340] = 5340, [5341] = 5341, [5342] = 5342, [5343] = 5343, [5344] = 1291, [5345] = 5345, [5346] = 5346, [5347] = 5331, [5348] = 5070, [5349] = 5349, [5350] = 5350, [5351] = 5326, [5352] = 5333, [5353] = 5353, [5354] = 5345, [5355] = 5346, [5356] = 5353, [5357] = 5340, [5358] = 5358, [5359] = 5359, [5360] = 5360, [5361] = 5332, [5362] = 5349, [5363] = 5339, [5364] = 5349, [5365] = 5353, [5366] = 5366, [5367] = 5349, [5368] = 5345, [5369] = 5359, [5370] = 5370, [5371] = 5326, [5372] = 5372, [5373] = 5373, [5374] = 5341, [5375] = 5375, [5376] = 5360, [5377] = 5375, [5378] = 5378, [5379] = 5350, [5380] = 5331, [5381] = 5350, [5382] = 5358, [5383] = 5370, [5384] = 5373, [5385] = 5372, [5386] = 5333, [5387] = 5366, [5388] = 5334, [5389] = 5389, [5390] = 5339, [5391] = 5333, [5392] = 5327, [5393] = 5331, [5394] = 5346, [5395] = 5358, [5396] = 1298, [5397] = 5373, [5398] = 5341, [5399] = 5345, [5400] = 5400, [5401] = 5353, [5402] = 5345, [5403] = 5353, [5404] = 5370, [5405] = 5332, [5406] = 5359, [5407] = 5407, [5408] = 5339, [5409] = 5339, [5410] = 5372, [5411] = 5373, [5412] = 5372, [5413] = 5373, [5414] = 5372, [5415] = 5415, [5416] = 5416, [5417] = 5358, [5418] = 5326, [5419] = 5333, [5420] = 5375, [5421] = 5375, [5422] = 5370, [5423] = 5359, [5424] = 5360, [5425] = 5349, [5426] = 5360, [5427] = 1293, [5428] = 1291, [5429] = 5359, [5430] = 5333, [5431] = 1293, [5432] = 5375, [5433] = 5334, [5434] = 5366, [5435] = 5332, [5436] = 5366, [5437] = 5334, [5438] = 5346, [5439] = 5327, [5440] = 5340, [5441] = 5350, [5442] = 5442, [5443] = 5340, [5444] = 5332, [5445] = 5358, [5446] = 5373, [5447] = 5349, [5448] = 5448, [5449] = 5449, [5450] = 5339, [5451] = 5350, [5452] = 5334, [5453] = 5375, [5454] = 5454, [5455] = 5359, [5456] = 5350, [5457] = 5331, [5458] = 5346, [5459] = 5370, [5460] = 5358, [5461] = 5332, [5462] = 5345, [5463] = 5370, [5464] = 5341, [5465] = 5327, [5466] = 5326, [5467] = 5372, [5468] = 5353, [5469] = 5360, [5470] = 5360, [5471] = 5340, [5472] = 5472, [5473] = 5366, [5474] = 5334, [5475] = 5340, [5476] = 5476, [5477] = 5477, [5478] = 5346, [5479] = 5327, [5480] = 5341, [5481] = 5366, [5482] = 5327, [5483] = 5483, [5484] = 5484, [5485] = 5485, [5486] = 5486, [5487] = 5485, [5488] = 5488, [5489] = 5489, [5490] = 5490, [5491] = 5491, [5492] = 5492, [5493] = 5493, [5494] = 5492, [5495] = 5488, [5496] = 5496, [5497] = 5496, [5498] = 5484, [5499] = 5496, [5500] = 5490, [5501] = 5489, [5502] = 638, [5503] = 5491, [5504] = 5489, [5505] = 5493, [5506] = 5484, [5507] = 5490, [5508] = 5491, [5509] = 5492, [5510] = 5510, [5511] = 5511, [5512] = 5493, [5513] = 5488, [5514] = 5484, [5515] = 5485, [5516] = 5489, [5517] = 5517, [5518] = 5510, [5519] = 5519, [5520] = 5520, [5521] = 5511, [5522] = 5490, [5523] = 5496, [5524] = 5524, [5525] = 5525, [5526] = 5491, [5527] = 5488, [5528] = 1298, [5529] = 5493, [5530] = 5510, [5531] = 5488, [5532] = 5484, [5533] = 5511, [5534] = 5496, [5535] = 5491, [5536] = 5493, [5537] = 5484, [5538] = 5511, [5539] = 5510, [5540] = 5492, [5541] = 5490, [5542] = 5542, [5543] = 5492, [5544] = 5489, [5545] = 5545, [5546] = 5485, [5547] = 5496, [5548] = 5493, [5549] = 5511, [5550] = 5491, [5551] = 5545, [5552] = 5488, [5553] = 5553, [5554] = 5554, [5555] = 5511, [5556] = 5489, [5557] = 5490, [5558] = 5492, [5559] = 5510, [5560] = 5560, [5561] = 5510, [5562] = 5485, [5563] = 5563, [5564] = 1528, [5565] = 5565, [5566] = 5566, [5567] = 1386, [5568] = 5568, [5569] = 5569, [5570] = 5570, [5571] = 5568, [5572] = 5572, [5573] = 5563, [5574] = 5574, [5575] = 5563, [5576] = 5576, [5577] = 5577, [5578] = 1373, [5579] = 5579, [5580] = 5580, [5581] = 1478, [5582] = 5582, [5583] = 5583, [5584] = 5580, [5585] = 5585, [5586] = 5586, [5587] = 1372, [5588] = 5588, [5589] = 1440, [5590] = 1392, [5591] = 1390, [5592] = 1387, [5593] = 5576, [5594] = 5570, [5595] = 1385, [5596] = 1433, [5597] = 5597, [5598] = 1382, [5599] = 5574, [5600] = 1378, [5601] = 1376, [5602] = 1375, [5603] = 5603, [5604] = 5568, [5605] = 1447, [5606] = 5576, [5607] = 1374, [5608] = 5608, [5609] = 5586, [5610] = 5577, [5611] = 5583, [5612] = 5612, [5613] = 5613, [5614] = 5576, [5615] = 5603, [5616] = 5616, [5617] = 5580, [5618] = 5576, [5619] = 5586, [5620] = 1391, [5621] = 5621, [5622] = 5608, [5623] = 5570, [5624] = 1354, [5625] = 5625, [5626] = 5577, [5627] = 1425, [5628] = 5628, [5629] = 1428, [5630] = 5630, [5631] = 1430, [5632] = 1441, [5633] = 5582, [5634] = 1442, [5635] = 1491, [5636] = 5636, [5637] = 1389, [5638] = 5638, [5639] = 5583, [5640] = 5583, [5641] = 5568, [5642] = 5642, [5643] = 5570, [5644] = 5616, [5645] = 5608, [5646] = 5646, [5647] = 1530, [5648] = 5648, [5649] = 1536, [5650] = 5650, [5651] = 1537, [5652] = 5582, [5653] = 1539, [5654] = 5654, [5655] = 5650, [5656] = 5603, [5657] = 1557, [5658] = 1556, [5659] = 1555, [5660] = 5577, [5661] = 1553, [5662] = 1552, [5663] = 5563, [5664] = 1546, [5665] = 1543, [5666] = 1540, [5667] = 5577, [5668] = 5586, [5669] = 5669, [5670] = 5570, [5671] = 1525, [5672] = 1523, [5673] = 1521, [5674] = 5583, [5675] = 1517, [5676] = 1513, [5677] = 1504, [5678] = 5583, [5679] = 1503, [5680] = 5583, [5681] = 1488, [5682] = 1370, [5683] = 1482, [5684] = 1481, [5685] = 5580, [5686] = 5577, [5687] = 1480, [5688] = 5688, [5689] = 1476, [5690] = 5690, [5691] = 1550, [5692] = 5603, [5693] = 5576, [5694] = 5608, [5695] = 1471, [5696] = 1466, [5697] = 1462, [5698] = 1455, [5699] = 5580, [5700] = 5700, [5701] = 5701, [5702] = 5563, [5703] = 1487, [5704] = 1372, [5705] = 5705, [5706] = 5568, [5707] = 5583, [5708] = 5563, [5709] = 5568, [5710] = 5586, [5711] = 5570, [5712] = 5582, [5713] = 5608, [5714] = 1440, [5715] = 5576, [5716] = 5603, [5717] = 5603, [5718] = 5616, [5719] = 5582, [5720] = 5650, [5721] = 5721, [5722] = 5576, [5723] = 1373, [5724] = 5608, [5725] = 5580, [5726] = 5726, [5727] = 5582, [5728] = 5728, [5729] = 5586, [5730] = 1515, [5731] = 5731, [5732] = 5732, [5733] = 5733, [5734] = 5734, [5735] = 5735, [5736] = 5736, [5737] = 5737, [5738] = 5737, [5739] = 5739, [5740] = 5740, [5741] = 5741, [5742] = 5742, [5743] = 5743, [5744] = 5744, [5745] = 5744, [5746] = 5746, [5747] = 5743, [5748] = 5748, [5749] = 5749, [5750] = 5628, [5751] = 5751, [5752] = 5752, [5753] = 5753, [5754] = 5754, [5755] = 5755, [5756] = 5756, [5757] = 5757, [5758] = 5758, [5759] = 5759, [5760] = 5760, [5761] = 5761, [5762] = 5762, [5763] = 5763, [5764] = 5764, [5765] = 5765, [5766] = 5766, [5767] = 5767, [5768] = 5768, [5769] = 5769, [5770] = 5770, [5771] = 5771, [5772] = 5772, [5773] = 5773, [5774] = 5774, [5775] = 5775, [5776] = 5776, [5777] = 5777, [5778] = 5778, [5779] = 5732, [5780] = 5780, [5781] = 5781, [5782] = 5782, [5783] = 5783, [5784] = 5784, [5785] = 5785, [5786] = 5786, [5787] = 5787, [5788] = 5788, [5789] = 5789, [5790] = 5790, [5791] = 5791, [5792] = 5792, [5793] = 5793, [5794] = 5794, [5795] = 5795, [5796] = 5796, [5797] = 5797, [5798] = 5798, [5799] = 5799, [5800] = 5800, [5801] = 5801, [5802] = 5802, [5803] = 5803, [5804] = 5804, [5805] = 5805, [5806] = 5806, [5807] = 5807, [5808] = 5808, [5809] = 5809, [5810] = 5742, [5811] = 5811, [5812] = 5752, [5813] = 5813, [5814] = 5814, [5815] = 5815, [5816] = 5816, [5817] = 5813, [5818] = 5818, [5819] = 5819, [5820] = 5820, [5821] = 5821, [5822] = 5822, [5823] = 5823, [5824] = 5824, [5825] = 5825, [5826] = 5737, [5827] = 5827, [5828] = 5739, [5829] = 5829, [5830] = 5808, [5831] = 5831, [5832] = 5733, [5833] = 5753, [5834] = 5754, [5835] = 5835, [5836] = 5836, [5837] = 5762, [5838] = 5766, [5839] = 5769, [5840] = 5818, [5841] = 5823, [5842] = 5825, [5843] = 5831, [5844] = 5769, [5845] = 5818, [5846] = 5823, [5847] = 5847, [5848] = 5766, [5849] = 5849, [5850] = 5849, [5851] = 5735, [5852] = 5825, [5853] = 5831, [5854] = 5811, [5855] = 5847, [5856] = 5741, [5857] = 5748, [5858] = 5762, [5859] = 5859, [5860] = 5754, [5861] = 5734, [5862] = 5753, [5863] = 5818, [5864] = 5823, [5865] = 5836, [5866] = 5825, [5867] = 5824, [5868] = 5816, [5869] = 5758, [5870] = 5831, [5871] = 5814, [5872] = 5739, [5873] = 5768, [5874] = 5774, [5875] = 5775, [5876] = 5777, [5877] = 5821, [5878] = 5782, [5879] = 5835, [5880] = 5819, [5881] = 5749, [5882] = 5882, [5883] = 5786, [5884] = 5791, [5885] = 5793, [5886] = 5886, [5887] = 5887, [5888] = 5572, [5889] = 5889, [5890] = 5818, [5891] = 5761, [5892] = 5733, [5893] = 5807, [5894] = 5805, [5895] = 5806, [5896] = 5806, [5897] = 5897, [5898] = 5823, [5899] = 5804, [5900] = 5825, [5901] = 5757, [5902] = 5793, [5903] = 5831, [5904] = 5804, [5905] = 5829, [5906] = 5803, [5907] = 5791, [5908] = 5786, [5909] = 5827, [5910] = 5910, [5911] = 5814, [5912] = 5816, [5913] = 5824, [5914] = 5782, [5915] = 5822, [5916] = 5820, [5917] = 5777, [5918] = 5836, [5919] = 5775, [5920] = 5920, [5921] = 5774, [5922] = 5815, [5923] = 5768, [5924] = 5818, [5925] = 5823, [5926] = 5809, [5927] = 5825, [5928] = 5831, [5929] = 5802, [5930] = 5758, [5931] = 5801, [5932] = 5800, [5933] = 5933, [5934] = 5849, [5935] = 5799, [5936] = 5796, [5937] = 5889, [5938] = 5785, [5939] = 5847, [5940] = 5748, [5941] = 5735, [5942] = 5818, [5943] = 5741, [5944] = 5740, [5945] = 5823, [5946] = 5811, [5947] = 5735, [5948] = 5790, [5949] = 5787, [5950] = 5825, [5951] = 5831, [5952] = 5700, [5953] = 5787, [5954] = 5811, [5955] = 5784, [5956] = 5781, [5957] = 5957, [5958] = 5741, [5959] = 5769, [5960] = 5766, [5961] = 5762, [5962] = 5754, [5963] = 5753, [5964] = 5780, [5965] = 5739, [5966] = 5737, [5967] = 5818, [5968] = 5732, [5969] = 5823, [5970] = 5821, [5971] = 5819, [5972] = 5825, [5973] = 5831, [5974] = 5770, [5975] = 5748, [5976] = 5752, [5977] = 5977, [5978] = 5757, [5979] = 5829, [5980] = 5751, [5981] = 5887, [5982] = 5815, [5983] = 5807, [5984] = 5765, [5985] = 5985, [5986] = 5805, [5987] = 5804, [5988] = 5787, [5989] = 5749, [5990] = 5803, [5991] = 5784, [5992] = 5781, [5993] = 5764, [5994] = 5801, [5995] = 5800, [5996] = 5799, [5997] = 5763, [5998] = 5796, [5999] = 5999, [6000] = 6000, [6001] = 6001, [6002] = 5765, [6003] = 5764, [6004] = 5763, [6005] = 5790, [6006] = 5818, [6007] = 5823, [6008] = 5825, [6009] = 5789, [6010] = 5736, [6011] = 6011, [6012] = 5773, [6013] = 5831, [6014] = 5772, [6015] = 6015, [6016] = 5736, [6017] = 5771, [6018] = 5767, [6019] = 5740, [6020] = 5759, [6021] = 5755, [6022] = 5773, [6023] = 5749, [6024] = 5772, [6025] = 5771, [6026] = 5767, [6027] = 5772, [6028] = 5742, [6029] = 5743, [6030] = 5744, [6031] = 6011, [6032] = 6032, [6033] = 5773, [6034] = 5759, [6035] = 5751, [6036] = 5756, [6037] = 5758, [6038] = 6032, [6039] = 5752, [6040] = 5768, [6041] = 5790, [6042] = 5774, [6043] = 5755, [6044] = 5756, [6045] = 5755, [6046] = 5775, [6047] = 6000, [6048] = 5829, [6049] = 5761, [6050] = 5755, [6051] = 5753, [6052] = 5756, [6053] = 5762, [6054] = 6032, [6055] = 5777, [6056] = 5785, [6057] = 5782, [6058] = 5786, [6059] = 6059, [6060] = 5835, [6061] = 5831, [6062] = 6000, [6063] = 5759, [6064] = 5791, [6065] = 6065, [6066] = 5767, [6067] = 5736, [6068] = 5771, [6069] = 5793, [6070] = 5772, [6071] = 5773, [6072] = 5764, [6073] = 5835, [6074] = 6074, [6075] = 5760, [6076] = 5772, [6077] = 5744, [6078] = 5744, [6079] = 6011, [6080] = 5743, [6081] = 5743, [6082] = 5742, [6083] = 6083, [6084] = 6015, [6085] = 6085, [6086] = 5887, [6087] = 6087, [6088] = 6088, [6089] = 5740, [6090] = 6000, [6091] = 5760, [6092] = 5742, [6093] = 5829, [6094] = 5787, [6095] = 5790, [6096] = 5736, [6097] = 5740, [6098] = 5796, [6099] = 6099, [6100] = 6100, [6101] = 5799, [6102] = 5760, [6103] = 5800, [6104] = 5765, [6105] = 5999, [6106] = 5801, [6107] = 5736, [6108] = 5821, [6109] = 5763, [6110] = 5764, [6111] = 5765, [6112] = 6011, [6113] = 5803, [6114] = 5770, [6115] = 5736, [6116] = 6015, [6117] = 6117, [6118] = 6000, [6119] = 5757, [6120] = 5732, [6121] = 5780, [6122] = 5781, [6123] = 5784, [6124] = 5804, [6125] = 5835, [6126] = 5805, [6127] = 5790, [6128] = 5795, [6129] = 5807, [6130] = 5789, [6131] = 5785, [6132] = 5771, [6133] = 5827, [6134] = 5760, [6135] = 5798, [6136] = 6136, [6137] = 6011, [6138] = 5802, [6139] = 5999, [6140] = 5809, [6141] = 6015, [6142] = 5849, [6143] = 5785, [6144] = 5999, [6145] = 5763, [6146] = 5815, [6147] = 5815, [6148] = 5764, [6149] = 6000, [6150] = 5763, [6151] = 5757, [6152] = 5820, [6153] = 5822, [6154] = 5819, [6155] = 5821, [6156] = 5827, [6157] = 5829, [6158] = 5765, [6159] = 5757, [6160] = 5733, [6161] = 5829, [6162] = 5889, [6163] = 5737, [6164] = 5739, [6165] = 5753, [6166] = 5762, [6167] = 5751, [6168] = 6168, [6169] = 5701, [6170] = 5766, [6171] = 5769, [6172] = 5736, [6173] = 5765, [6174] = 5770, [6175] = 5808, [6176] = 5780, [6177] = 6177, [6178] = 5806, [6179] = 5781, [6180] = 5749, [6181] = 6181, [6182] = 5784, [6183] = 6011, [6184] = 6015, [6185] = 5847, [6186] = 5813, [6187] = 5889, [6188] = 6000, [6189] = 5733, [6190] = 5748, [6191] = 5790, [6192] = 5734, [6193] = 5735, [6194] = 5811, [6195] = 5819, [6196] = 5741, [6197] = 5825, [6198] = 5748, [6199] = 5789, [6200] = 5802, [6201] = 6015, [6202] = 5752, [6203] = 5836, [6204] = 5823, [6205] = 5770, [6206] = 5824, [6207] = 5816, [6208] = 6208, [6209] = 5814, [6210] = 5767, [6211] = 5809, [6212] = 5754, [6213] = 5751, [6214] = 5758, [6215] = 5815, [6216] = 5768, [6217] = 5732, [6218] = 6218, [6219] = 5780, [6220] = 5774, [6221] = 5775, [6222] = 5777, [6223] = 5781, [6224] = 5782, [6225] = 5829, [6226] = 5806, [6227] = 5809, [6228] = 6011, [6229] = 5820, [6230] = 5793, [6231] = 5791, [6232] = 6015, [6233] = 5786, [6234] = 5822, [6235] = 5784, [6236] = 5814, [6237] = 5816, [6238] = 5782, [6239] = 6000, [6240] = 5824, [6241] = 5827, [6242] = 5786, [6243] = 5791, [6244] = 5777, [6245] = 5775, [6246] = 5774, [6247] = 5793, [6248] = 5836, [6249] = 5768, [6250] = 5795, [6251] = 5829, [6252] = 5790, [6253] = 5758, [6254] = 6254, [6255] = 5798, [6256] = 6256, [6257] = 5806, [6258] = 6258, [6259] = 5835, [6260] = 6260, [6261] = 5889, [6262] = 5814, [6263] = 5816, [6264] = 5824, [6265] = 5836, [6266] = 6266, [6267] = 5789, [6268] = 6268, [6269] = 5821, [6270] = 5741, [6271] = 5811, [6272] = 5749, [6273] = 6273, [6274] = 5735, [6275] = 6275, [6276] = 5818, [6277] = 5829, [6278] = 5625, [6279] = 5823, [6280] = 5820, [6281] = 6281, [6282] = 5769, [6283] = 5766, [6284] = 5762, [6285] = 5754, [6286] = 5796, [6287] = 5753, [6288] = 5825, [6289] = 6011, [6290] = 5831, [6291] = 6015, [6292] = 5827, [6293] = 6000, [6294] = 6294, [6295] = 5739, [6296] = 5737, [6297] = 5799, [6298] = 5733, [6299] = 5835, [6300] = 5800, [6301] = 6301, [6302] = 6302, [6303] = 5829, [6304] = 5847, [6305] = 5759, [6306] = 5762, [6307] = 5753, [6308] = 5752, [6309] = 5801, [6310] = 5889, [6311] = 5803, [6312] = 6312, [6313] = 6313, [6314] = 5805, [6315] = 5818, [6316] = 5819, [6317] = 5807, [6318] = 5849, [6319] = 6000, [6320] = 5802, [6321] = 5889, [6322] = 5849, [6323] = 5829, [6324] = 5733, [6325] = 5757, [6326] = 6326, [6327] = 5755, [6328] = 5847, [6329] = 6329, [6330] = 6330, [6331] = 5829, [6332] = 5807, [6333] = 5827, [6334] = 5822, [6335] = 5820, [6336] = 5815, [6337] = 5805, [6338] = 5804, [6339] = 5803, [6340] = 5809, [6341] = 5801, [6342] = 5829, [6343] = 5757, [6344] = 5835, [6345] = 5800, [6346] = 5802, [6347] = 5799, [6348] = 6348, [6349] = 5789, [6350] = 5796, [6351] = 5784, [6352] = 5781, [6353] = 5818, [6354] = 5790, [6355] = 5823, [6356] = 5787, [6357] = 5749, [6358] = 5780, [6359] = 5815, [6360] = 5825, [6361] = 6011, [6362] = 5831, [6363] = 6363, [6364] = 5772, [6365] = 6015, [6366] = 5732, [6367] = 5773, [6368] = 6368, [6369] = 5772, [6370] = 5770, [6371] = 5765, [6372] = 5771, [6373] = 5764, [6374] = 5767, [6375] = 6000, [6376] = 5763, [6377] = 5999, [6378] = 5759, [6379] = 5755, [6380] = 5751, [6381] = 5760, [6382] = 5822, [6383] = 6383, [6384] = 5761, [6385] = 6032, [6386] = 6386, [6387] = 5756, [6388] = 5740, [6389] = 5784, [6390] = 5755, [6391] = 5742, [6392] = 6392, [6393] = 5743, [6394] = 5744, [6395] = 5829, [6396] = 5889, [6397] = 5736, [6398] = 5733, [6399] = 6032, [6400] = 5785, [6401] = 5756, [6402] = 6000, [6403] = 6403, [6404] = 6404, [6405] = 1373, [6406] = 1372, [6407] = 6407, [6408] = 6403, [6409] = 3802, [6410] = 6410, [6411] = 3806, [6412] = 3797, [6413] = 6413, [6414] = 6414, [6415] = 6415, [6416] = 6416, [6417] = 6417, [6418] = 6418, [6419] = 6419, [6420] = 6420, [6421] = 6421, [6422] = 6422, [6423] = 3796, [6424] = 1391, [6425] = 6425, [6426] = 6426, [6427] = 1440, [6428] = 6428, [6429] = 6429, [6430] = 6430, [6431] = 6431, [6432] = 6432, [6433] = 6413, [6434] = 6434, [6435] = 6435, [6436] = 6436, [6437] = 6437, [6438] = 6414, [6439] = 6439, [6440] = 3791, [6441] = 6434, [6442] = 6442, [6443] = 6443, [6444] = 6417, [6445] = 6445, [6446] = 6446, [6447] = 1515, [6448] = 6448, [6449] = 6449, [6450] = 6443, [6451] = 6449, [6452] = 6452, [6453] = 6453, [6454] = 3790, [6455] = 6455, [6456] = 6456, [6457] = 6457, [6458] = 6458, [6459] = 6459, [6460] = 6460, [6461] = 6461, [6462] = 6428, [6463] = 6463, [6464] = 6464, [6465] = 6431, [6466] = 6466, [6467] = 6467, [6468] = 6428, [6469] = 6469, [6470] = 6436, [6471] = 6431, [6472] = 6472, [6473] = 6458, [6474] = 6442, [6475] = 6420, [6476] = 6476, [6477] = 6477, [6478] = 6478, [6479] = 6479, [6480] = 6448, [6481] = 6481, [6482] = 6430, [6483] = 6483, [6484] = 6446, [6485] = 6435, [6486] = 6437, [6487] = 3789, [6488] = 6488, [6489] = 6489, [6490] = 6490, [6491] = 6464, [6492] = 6430, [6493] = 6443, [6494] = 6434, [6495] = 6410, [6496] = 6496, [6497] = 6403, [6498] = 6428, [6499] = 6431, [6500] = 6460, [6501] = 6407, [6502] = 1487, [6503] = 6436, [6504] = 6504, [6505] = 6505, [6506] = 6437, [6507] = 6507, [6508] = 6428, [6509] = 6509, [6510] = 6510, [6511] = 6417, [6512] = 6512, [6513] = 6434, [6514] = 6514, [6515] = 6504, [6516] = 6516, [6517] = 6403, [6518] = 6430, [6519] = 6478, [6520] = 6520, [6521] = 6481, [6522] = 6483, [6523] = 6523, [6524] = 6425, [6525] = 6429, [6526] = 6526, [6527] = 6527, [6528] = 6428, [6529] = 6445, [6530] = 6431, [6531] = 6431, [6532] = 6532, [6533] = 6469, [6534] = 6436, [6535] = 6535, [6536] = 6437, [6537] = 6537, [6538] = 6407, [6539] = 6477, [6540] = 6514, [6541] = 6523, [6542] = 6542, [6543] = 6543, [6544] = 1433, [6545] = 6545, [6546] = 6420, [6547] = 6547, [6548] = 6537, [6549] = 6549, [6550] = 6434, [6551] = 6467, [6552] = 6437, [6553] = 6466, [6554] = 6436, [6555] = 6404, [6556] = 6489, [6557] = 6489, [6558] = 6490, [6559] = 6559, [6560] = 6430, [6561] = 6561, [6562] = 6562, [6563] = 6425, [6564] = 6564, [6565] = 6436, [6566] = 6410, [6567] = 6429, [6568] = 6437, [6569] = 6464, [6570] = 6431, [6571] = 6410, [6572] = 6572, [6573] = 6428, [6574] = 6574, [6575] = 6463, [6576] = 6431, [6577] = 6403, [6578] = 6428, [6579] = 6579, [6580] = 1373, [6581] = 6490, [6582] = 6407, [6583] = 6583, [6584] = 6436, [6585] = 6585, [6586] = 6586, [6587] = 6437, [6588] = 6588, [6589] = 6589, [6590] = 6545, [6591] = 6591, [6592] = 6592, [6593] = 6453, [6594] = 6456, [6595] = 6425, [6596] = 6596, [6597] = 1372, [6598] = 6429, [6599] = 6445, [6600] = 1440, [6601] = 6601, [6602] = 6585, [6603] = 6579, [6604] = 6588, [6605] = 6596, [6606] = 6572, [6607] = 6420, [6608] = 6608, [6609] = 6432, [6610] = 6457, [6611] = 6591, [6612] = 6489, [6613] = 6613, [6614] = 6526, [6615] = 6458, [6616] = 6559, [6617] = 6574, [6618] = 6523, [6619] = 6559, [6620] = 6489, [6621] = 6410, [6622] = 6512, [6623] = 6514, [6624] = 6509, [6625] = 6403, [6626] = 6407, [6627] = 6436, [6628] = 6425, [6629] = 6429, [6630] = 6467, [6631] = 6445, [6632] = 6417, [6633] = 6437, [6634] = 6477, [6635] = 6483, [6636] = 6481, [6637] = 6572, [6638] = 6638, [6639] = 6458, [6640] = 6640, [6641] = 6435, [6642] = 6642, [6643] = 6643, [6644] = 6509, [6645] = 6457, [6646] = 6410, [6647] = 6460, [6648] = 6579, [6649] = 6403, [6650] = 6407, [6651] = 6651, [6652] = 6652, [6653] = 6653, [6654] = 6416, [6655] = 6535, [6656] = 6439, [6657] = 6425, [6658] = 6439, [6659] = 6504, [6660] = 6434, [6661] = 6429, [6662] = 6445, [6663] = 6430, [6664] = 6452, [6665] = 6421, [6666] = 6446, [6667] = 6452, [6668] = 6420, [6669] = 6669, [6670] = 6670, [6671] = 6417, [6672] = 6672, [6673] = 6585, [6674] = 6410, [6675] = 3804, [6676] = 6676, [6677] = 6466, [6678] = 6678, [6679] = 6413, [6680] = 6467, [6681] = 6442, [6682] = 6466, [6683] = 6425, [6684] = 6445, [6685] = 6457, [6686] = 6686, [6687] = 6687, [6688] = 6426, [6689] = 6417, [6690] = 6690, [6691] = 6469, [6692] = 6410, [6693] = 6413, [6694] = 6463, [6695] = 6432, [6696] = 6448, [6697] = 6592, [6698] = 6449, [6699] = 6426, [6700] = 6453, [6701] = 6453, [6702] = 6461, [6703] = 6449, [6704] = 6458, [6705] = 6678, [6706] = 6448, [6707] = 6707, [6708] = 6413, [6709] = 6709, [6710] = 6432, [6711] = 6711, [6712] = 6418, [6713] = 6676, [6714] = 6415, [6715] = 6430, [6716] = 6434, [6717] = 6717, [6718] = 6428, [6719] = 6719, [6720] = 6489, [6721] = 6676, [6722] = 6545, [6723] = 6410, [6724] = 6431, [6725] = 6464, [6726] = 6416, [6727] = 6676, [6728] = 6585, [6729] = 6490, [6730] = 6596, [6731] = 6443, [6732] = 6414, [6733] = 6410, [6734] = 6436, [6735] = 6416, [6736] = 6437, [6737] = 6404, [6738] = 6535, [6739] = 6651, [6740] = 6421, [6741] = 6404, [6742] = 6545, [6743] = 6404, [6744] = 6526, [6745] = 6504, [6746] = 6430, [6747] = 6416, [6748] = 6523, [6749] = 6434, [6750] = 6463, [6751] = 6591, [6752] = 6439, [6753] = 6512, [6754] = 6414, [6755] = 6676, [6756] = 6443, [6757] = 6410, [6758] = 6509, [6759] = 6759, [6760] = 6434, [6761] = 6415, [6762] = 6418, [6763] = 6403, [6764] = 6467, [6765] = 6426, [6766] = 6443, [6767] = 6414, [6768] = 6443, [6769] = 6769, [6770] = 6430, [6771] = 6676, [6772] = 6426, [6773] = 6574, [6774] = 6425, [6775] = 6413, [6776] = 6477, [6777] = 6477, [6778] = 6678, [6779] = 6779, [6780] = 6426, [6781] = 6413, [6782] = 6417, [6783] = 6463, [6784] = 6784, [6785] = 6469, [6786] = 6457, [6787] = 6466, [6788] = 6467, [6789] = 6452, [6790] = 6442, [6791] = 6458, [6792] = 6792, [6793] = 6434, [6794] = 6439, [6795] = 6434, [6796] = 6509, [6797] = 6430, [6798] = 6798, [6799] = 6512, [6800] = 6421, [6801] = 6801, [6802] = 6446, [6803] = 6457, [6804] = 6523, [6805] = 6504, [6806] = 6526, [6807] = 6535, [6808] = 6808, [6809] = 6809, [6810] = 6810, [6811] = 6460, [6812] = 6463, [6813] = 6526, [6814] = 6574, [6815] = 6466, [6816] = 6467, [6817] = 6481, [6818] = 6469, [6819] = 6545, [6820] = 6483, [6821] = 6821, [6822] = 6822, [6823] = 6823, [6824] = 6437, [6825] = 6591, [6826] = 6436, [6827] = 6458, [6828] = 6514, [6829] = 6490, [6830] = 6420, [6831] = 6831, [6832] = 6596, [6833] = 6833, [6834] = 6489, [6835] = 6559, [6836] = 6836, [6837] = 6585, [6838] = 6579, [6839] = 6464, [6840] = 6431, [6841] = 6572, [6842] = 6572, [6843] = 6510, [6844] = 6442, [6845] = 6430, [6846] = 6428, [6847] = 6432, [6848] = 6435, [6849] = 6579, [6850] = 6448, [6851] = 6449, [6852] = 6852, [6853] = 6461, [6854] = 6453, [6855] = 6421, [6856] = 6446, [6857] = 6585, [6858] = 6858, [6859] = 6559, [6860] = 6489, [6861] = 6861, [6862] = 6596, [6863] = 6504, [6864] = 6461, [6865] = 6428, [6866] = 6591, [6867] = 6431, [6868] = 6460, [6869] = 6464, [6870] = 6535, [6871] = 6428, [6872] = 6574, [6873] = 6514, [6874] = 6415, [6875] = 6478, [6876] = 6418, [6877] = 6481, [6878] = 6483, [6879] = 6483, [6880] = 6490, [6881] = 6481, [6882] = 6431, [6883] = 6436, [6884] = 6460, [6885] = 6445, [6886] = 6437, [6887] = 6514, [6888] = 6545, [6889] = 6572, [6890] = 6537, [6891] = 6891, [6892] = 6892, [6893] = 6535, [6894] = 6894, [6895] = 6504, [6896] = 6420, [6897] = 6638, [6898] = 6458, [6899] = 6489, [6900] = 6559, [6901] = 6526, [6902] = 6446, [6903] = 6523, [6904] = 6436, [6905] = 6437, [6906] = 6523, [6907] = 6512, [6908] = 6453, [6909] = 6638, [6910] = 6449, [6911] = 6448, [6912] = 6442, [6913] = 6579, [6914] = 6432, [6915] = 6469, [6916] = 6585, [6917] = 6588, [6918] = 6918, [6919] = 6592, [6920] = 6463, [6921] = 6921, [6922] = 6467, [6923] = 6466, [6924] = 6924, [6925] = 6596, [6926] = 6926, [6927] = 6927, [6928] = 6457, [6929] = 6421, [6930] = 6711, [6931] = 6591, [6932] = 6417, [6933] = 6430, [6934] = 6443, [6935] = 6434, [6936] = 6439, [6937] = 6512, [6938] = 6574, [6939] = 6416, [6940] = 6535, [6941] = 6477, [6942] = 6676, [6943] = 6509, [6944] = 6426, [6945] = 6413, [6946] = 6504, [6947] = 6947, [6948] = 6948, [6949] = 6949, [6950] = 6950, [6951] = 6951, [6952] = 6952, [6953] = 6953, [6954] = 6954, [6955] = 6955, [6956] = 6956, [6957] = 6957, [6958] = 6958, [6959] = 6959, [6960] = 6960, [6961] = 6961, [6962] = 6962, [6963] = 6963, [6964] = 6964, [6965] = 6965, [6966] = 6966, [6967] = 6967, [6968] = 6968, [6969] = 6969, [6970] = 6970, [6971] = 6971, [6972] = 6972, [6973] = 6973, [6974] = 6974, [6975] = 6975, [6976] = 6976, [6977] = 6977, [6978] = 6978, [6979] = 6979, [6980] = 6980, [6981] = 6981, [6982] = 6982, [6983] = 6983, [6984] = 6984, [6985] = 6985, [6986] = 6986, [6987] = 6987, [6988] = 6988, [6989] = 6989, [6990] = 6990, [6991] = 6991, [6992] = 6992, [6993] = 6993, [6994] = 6994, [6995] = 6995, [6996] = 6996, [6997] = 6997, [6998] = 6998, [6999] = 6999, [7000] = 7000, [7001] = 7001, [7002] = 7002, [7003] = 6968, [7004] = 6967, [7005] = 6966, [7006] = 6965, [7007] = 7007, [7008] = 7008, [7009] = 7009, [7010] = 7010, [7011] = 7011, [7012] = 7012, [7013] = 7013, [7014] = 7014, [7015] = 7015, [7016] = 6971, [7017] = 7017, [7018] = 7018, [7019] = 7019, [7020] = 7020, [7021] = 7021, [7022] = 7017, [7023] = 7023, [7024] = 7018, [7025] = 7025, [7026] = 7026, [7027] = 7027, [7028] = 7028, [7029] = 7023, [7030] = 7025, [7031] = 7031, [7032] = 7032, [7033] = 7026, [7034] = 7034, [7035] = 7035, [7036] = 7036, [7037] = 7037, [7038] = 7038, [7039] = 7034, [7040] = 7040, [7041] = 7035, [7042] = 7042, [7043] = 7036, [7044] = 7009, [7045] = 7045, [7046] = 7046, [7047] = 7002, [7048] = 7048, [7049] = 7049, [7050] = 6970, [7051] = 7051, [7052] = 6998, [7053] = 7053, [7054] = 7054, [7055] = 7055, [7056] = 6995, [7057] = 7036, [7058] = 7035, [7059] = 7034, [7060] = 7060, [7061] = 7061, [7062] = 7062, [7063] = 7026, [7064] = 6979, [7065] = 7065, [7066] = 7032, [7067] = 6977, [7068] = 7068, [7069] = 7025, [7070] = 7023, [7071] = 6984, [7072] = 7072, [7073] = 7073, [7074] = 6964, [7075] = 7018, [7076] = 7017, [7077] = 7077, [7078] = 7078, [7079] = 7079, [7080] = 6988, [7081] = 6949, [7082] = 6950, [7083] = 7011, [7084] = 6953, [7085] = 7010, [7086] = 7086, [7087] = 6965, [7088] = 7088, [7089] = 6969, [7090] = 6975, [7091] = 6966, [7092] = 7092, [7093] = 6967, [7094] = 6968, [7095] = 6994, [7096] = 6992, [7097] = 6948, [7098] = 6955, [7099] = 7099, [7100] = 6957, [7101] = 6958, [7102] = 7102, [7103] = 6999, [7104] = 6987, [7105] = 7079, [7106] = 6986, [7107] = 7073, [7108] = 7054, [7109] = 6948, [7110] = 7099, [7111] = 6982, [7112] = 6970, [7113] = 6971, [7114] = 7102, [7115] = 6981, [7116] = 7116, [7117] = 7117, [7118] = 7118, [7119] = 7119, [7120] = 7120, [7121] = 6981, [7122] = 6982, [7123] = 7123, [7124] = 7124, [7125] = 6971, [7126] = 6986, [7127] = 6987, [7128] = 6970, [7129] = 7129, [7130] = 7130, [7131] = 6950, [7132] = 6992, [7133] = 6958, [7134] = 6994, [7135] = 6957, [7136] = 6955, [7137] = 7137, [7138] = 7138, [7139] = 7139, [7140] = 7140, [7141] = 7141, [7142] = 7142, [7143] = 6968, [7144] = 6967, [7145] = 6966, [7146] = 6965, [7147] = 7147, [7148] = 7148, [7149] = 7140, [7150] = 7010, [7151] = 7011, [7152] = 7148, [7153] = 7141, [7154] = 7138, [7155] = 6975, [7156] = 6969, [7157] = 7139, [7158] = 7129, [7159] = 7137, [7160] = 6953, [7161] = 7017, [7162] = 7120, [7163] = 7018, [7164] = 7037, [7165] = 6983, [7166] = 6949, [7167] = 6988, [7168] = 7023, [7169] = 7025, [7170] = 7102, [7171] = 7032, [7172] = 7026, [7173] = 7034, [7174] = 7035, [7175] = 7036, [7176] = 6964, [7177] = 7099, [7178] = 7009, [7179] = 6948, [7180] = 7180, [7181] = 7002, [7182] = 6984, [7183] = 7054, [7184] = 7184, [7185] = 7073, [7186] = 6998, [7187] = 6977, [7188] = 6979, [7189] = 7079, [7190] = 6995, [7191] = 6999, [7192] = 7124, [7193] = 6995, [7194] = 7194, [7195] = 7195, [7196] = 7092, [7197] = 6979, [7198] = 7198, [7199] = 6998, [7200] = 7088, [7201] = 7123, [7202] = 6984, [7203] = 7086, [7204] = 7119, [7205] = 6964, [7206] = 7002, [7207] = 7009, [7208] = 7118, [7209] = 7065, [7210] = 6988, [7211] = 6949, [7212] = 6950, [7213] = 7117, [7214] = 6953, [7215] = 7061, [7216] = 7116, [7217] = 7060, [7218] = 7218, [7219] = 6969, [7220] = 6975, [7221] = 7055, [7222] = 7222, [7223] = 7053, [7224] = 7051, [7225] = 7049, [7226] = 7048, [7227] = 7046, [7228] = 6955, [7229] = 7040, [7230] = 6957, [7231] = 6958, [7232] = 7038, [7233] = 6998, [7234] = 7234, [7235] = 7014, [7236] = 7013, [7237] = 7021, [7238] = 7238, [7239] = 6973, [7240] = 7008, [7241] = 7007, [7242] = 6970, [7243] = 6971, [7244] = 7001, [7245] = 7180, [7246] = 6996, [7247] = 6989, [7248] = 6985, [7249] = 7023, [7250] = 6981, [7251] = 6982, [7252] = 7078, [7253] = 6986, [7254] = 6987, [7255] = 7092, [7256] = 7077, [7257] = 6974, [7258] = 6972, [7259] = 6992, [7260] = 6968, [7261] = 6994, [7262] = 6967, [7263] = 6966, [7264] = 6965, [7265] = 6963, [7266] = 6954, [7267] = 6952, [7268] = 6990, [7269] = 7269, [7270] = 6968, [7271] = 6967, [7272] = 6966, [7273] = 6965, [7274] = 7274, [7275] = 6995, [7276] = 6960, [7277] = 7010, [7278] = 7011, [7279] = 6951, [7280] = 7036, [7281] = 7035, [7282] = 7034, [7283] = 6956, [7284] = 7027, [7285] = 7026, [7286] = 6978, [7287] = 7032, [7288] = 7017, [7289] = 7088, [7290] = 7018, [7291] = 7291, [7292] = 7025, [7293] = 7027, [7294] = 7023, [7295] = 7025, [7296] = 7021, [7297] = 7026, [7298] = 7034, [7299] = 7035, [7300] = 7036, [7301] = 7020, [7302] = 7302, [7303] = 7303, [7304] = 6998, [7305] = 7305, [7306] = 7306, [7307] = 6997, [7308] = 6979, [7309] = 7018, [7310] = 7086, [7311] = 6988, [7312] = 6949, [7313] = 6950, [7314] = 7017, [7315] = 7315, [7316] = 7012, [7317] = 7000, [7318] = 6957, [7319] = 6958, [7320] = 7012, [7321] = 7072, [7322] = 7015, [7323] = 7011, [7324] = 6981, [7325] = 6994, [7326] = 6951, [7327] = 7010, [7328] = 6993, [7329] = 6968, [7330] = 6967, [7331] = 6966, [7332] = 6965, [7333] = 7120, [7334] = 7010, [7335] = 7335, [7336] = 6959, [7337] = 7017, [7338] = 6965, [7339] = 6966, [7340] = 7017, [7341] = 7341, [7342] = 7018, [7343] = 6967, [7344] = 6968, [7345] = 7018, [7346] = 7023, [7347] = 7025, [7348] = 6973, [7349] = 7026, [7350] = 7034, [7351] = 7035, [7352] = 7036, [7353] = 7019, [7354] = 7020, [7355] = 6988, [7356] = 6949, [7357] = 6950, [7358] = 6959, [7359] = 5046, [7360] = 6985, [7361] = 7023, [7362] = 6994, [7363] = 6992, [7364] = 7364, [7365] = 6968, [7366] = 6967, [7367] = 6966, [7368] = 6965, [7369] = 7025, [7370] = 7370, [7371] = 6987, [7372] = 6986, [7373] = 7017, [7374] = 7374, [7375] = 7018, [7376] = 7026, [7377] = 6958, [7378] = 7023, [7379] = 7025, [7380] = 6982, [7381] = 7026, [7382] = 7034, [7383] = 7035, [7384] = 7036, [7385] = 7048, [7386] = 6988, [7387] = 6949, [7388] = 6950, [7389] = 7049, [7390] = 6981, [7391] = 7028, [7392] = 7031, [7393] = 7034, [7394] = 7035, [7395] = 6968, [7396] = 6967, [7397] = 6966, [7398] = 6965, [7399] = 7399, [7400] = 7400, [7401] = 7036, [7402] = 7399, [7403] = 7017, [7404] = 7404, [7405] = 7018, [7406] = 7077, [7407] = 7078, [7408] = 7023, [7409] = 7025, [7410] = 6971, [7411] = 7026, [7412] = 7034, [7413] = 7035, [7414] = 7036, [7415] = 6970, [7416] = 6988, [7417] = 6949, [7418] = 6950, [7419] = 7419, [7420] = 7140, [7421] = 7120, [7422] = 6957, [7423] = 6968, [7424] = 6967, [7425] = 6966, [7426] = 6965, [7427] = 6955, [7428] = 7065, [7429] = 7116, [7430] = 7017, [7431] = 7117, [7432] = 7018, [7433] = 7433, [7434] = 7118, [7435] = 7023, [7436] = 7025, [7437] = 7042, [7438] = 7026, [7439] = 7034, [7440] = 7035, [7441] = 7036, [7442] = 7060, [7443] = 6988, [7444] = 6949, [7445] = 6950, [7446] = 7061, [7447] = 7447, [7448] = 6988, [7449] = 6949, [7450] = 6950, [7451] = 7180, [7452] = 6988, [7453] = 6949, [7454] = 6950, [7455] = 7119, [7456] = 7123, [7457] = 7457, [7458] = 7124, [7459] = 6975, [7460] = 6969, [7461] = 7461, [7462] = 7364, [7463] = 7117, [7464] = 7142, [7465] = 7238, [7466] = 7037, [7467] = 7129, [7468] = 6953, [7469] = 6998, [7470] = 7055, [7471] = 7274, [7472] = 7400, [7473] = 7077, [7474] = 7474, [7475] = 6950, [7476] = 7476, [7477] = 6979, [7478] = 7478, [7479] = 7479, [7480] = 6949, [7481] = 7481, [7482] = 6988, [7483] = 7034, [7484] = 7137, [7485] = 7139, [7486] = 7486, [7487] = 7487, [7488] = 7488, [7489] = 7489, [7490] = 7490, [7491] = 7148, [7492] = 7492, [7493] = 7493, [7494] = 7494, [7495] = 7141, [7496] = 7496, [7497] = 7036, [7498] = 7498, [7499] = 7042, [7500] = 7500, [7501] = 7501, [7502] = 7502, [7503] = 6957, [7504] = 6958, [7505] = 6964, [7506] = 7138, [7507] = 7507, [7508] = 7370, [7509] = 7053, [7510] = 7315, [7511] = 6984, [7512] = 7129, [7513] = 7035, [7514] = 7514, [7515] = 6970, [7516] = 6971, [7517] = 6977, [7518] = 7051, [7519] = 7002, [7520] = 6979, [7521] = 7521, [7522] = 7031, [7523] = 7461, [7524] = 7002, [7525] = 6981, [7526] = 6995, [7527] = 7147, [7528] = 7528, [7529] = 7529, [7530] = 6994, [7531] = 7102, [7532] = 6991, [7533] = 7533, [7534] = 7099, [7535] = 7535, [7536] = 6998, [7537] = 7010, [7538] = 7538, [7539] = 6948, [7540] = 7028, [7541] = 7054, [7542] = 7073, [7543] = 7027, [7544] = 7026, [7545] = 7032, [7546] = 7092, [7547] = 7088, [7548] = 7086, [7549] = 7073, [7550] = 7025, [7551] = 7032, [7552] = 7023, [7553] = 7021, [7554] = 7009, [7555] = 7073, [7556] = 7054, [7557] = 6948, [7558] = 7099, [7559] = 7065, [7560] = 7560, [7561] = 7061, [7562] = 7060, [7563] = 7055, [7564] = 7053, [7565] = 7474, [7566] = 7020, [7567] = 7019, [7568] = 7051, [7569] = 7073, [7570] = 7020, [7571] = 7027, [7572] = 7049, [7573] = 7048, [7574] = 7046, [7575] = 7018, [7576] = 7054, [7577] = 6981, [7578] = 7457, [7579] = 7017, [7580] = 7364, [7581] = 7116, [7582] = 7142, [7583] = 7238, [7584] = 7274, [7585] = 7400, [7586] = 7049, [7587] = 7474, [7588] = 7099, [7589] = 7476, [7590] = 7478, [7591] = 7140, [7592] = 6993, [7593] = 7048, [7594] = 7487, [7595] = 7488, [7596] = 7489, [7597] = 7490, [7598] = 7598, [7599] = 7521, [7600] = 7493, [7601] = 7015, [7602] = 7040, [7603] = 7498, [7604] = 7038, [7605] = 7500, [7606] = 7501, [7607] = 7502, [7608] = 7370, [7609] = 7476, [7610] = 7315, [7611] = 6985, [7612] = 6979, [7613] = 7478, [7614] = 7092, [7615] = 7073, [7616] = 7479, [7617] = 7072, [7618] = 7054, [7619] = 7619, [7620] = 6948, [7621] = 7528, [7622] = 7529, [7623] = 6991, [7624] = 7533, [7625] = 7099, [7626] = 7102, [7627] = 7538, [7628] = 7078, [7629] = 7629, [7630] = 7118, [7631] = 7008, [7632] = 7007, [7633] = 6989, [7634] = 7046, [7635] = 6985, [7636] = 7045, [7637] = 6983, [7638] = 6977, [7639] = 6974, [7640] = 7457, [7641] = 7138, [7642] = 7364, [7643] = 6972, [7644] = 7142, [7645] = 7238, [7646] = 7274, [7647] = 7400, [7648] = 7141, [7649] = 7474, [7650] = 6963, [7651] = 7476, [7652] = 7478, [7653] = 6959, [7654] = 7654, [7655] = 6954, [7656] = 7487, [7657] = 6952, [7658] = 7493, [7659] = 6985, [7660] = 6990, [7661] = 7502, [7662] = 7370, [7663] = 7012, [7664] = 7315, [7665] = 7092, [7666] = 6984, [7667] = 7054, [7668] = 6948, [7669] = 7099, [7670] = 7102, [7671] = 6960, [7672] = 6951, [7673] = 7118, [7674] = 7528, [7675] = 7529, [7676] = 7533, [7677] = 7099, [7678] = 6978, [7679] = 6964, [7680] = 6997, [7681] = 7681, [7682] = 7682, [7683] = 7148, [7684] = 7000, [7685] = 7000, [7686] = 7015, [7687] = 7457, [7688] = 7688, [7689] = 7364, [7690] = 7012, [7691] = 7142, [7692] = 7238, [7693] = 7274, [7694] = 7400, [7695] = 7015, [7696] = 7474, [7697] = 6978, [7698] = 7476, [7699] = 6993, [7700] = 7019, [7701] = 7701, [7702] = 7487, [7703] = 6983, [7704] = 7493, [7705] = 7502, [7706] = 7370, [7707] = 6985, [7708] = 7315, [7709] = 7709, [7710] = 7710, [7711] = 7020, [7712] = 7088, [7713] = 7092, [7714] = 7538, [7715] = 6982, [7716] = 6997, [7717] = 7073, [7718] = 7528, [7719] = 7529, [7720] = 7140, [7721] = 7054, [7722] = 6948, [7723] = 7099, [7724] = 7102, [7725] = 6980, [7726] = 6962, [7727] = 6988, [7728] = 6958, [7729] = 7457, [7730] = 6949, [7731] = 7364, [7732] = 6950, [7733] = 7238, [7734] = 7274, [7735] = 7027, [7736] = 7474, [7737] = 7119, [7738] = 7476, [7739] = 7118, [7740] = 7028, [7741] = 6957, [7742] = 7487, [7743] = 7502, [7744] = 7493, [7745] = 7502, [7746] = 7370, [7747] = 7747, [7748] = 7315, [7749] = 7749, [7750] = 7139, [7751] = 7487, [7752] = 7752, [7753] = 6953, [7754] = 6978, [7755] = 7488, [7756] = 7489, [7757] = 7015, [7758] = 7528, [7759] = 7529, [7760] = 7490, [7761] = 6978, [7762] = 7077, [7763] = 7763, [7764] = 7037, [7765] = 6956, [7766] = 7011, [7767] = 7457, [7768] = 7078, [7769] = 6983, [7770] = 7476, [7771] = 6985, [7772] = 7502, [7773] = 7088, [7774] = 7092, [7775] = 7073, [7776] = 7054, [7777] = 7777, [7778] = 7009, [7779] = 6948, [7780] = 6978, [7781] = 7529, [7782] = 7102, [7783] = 7137, [7784] = 7119, [7785] = 7118, [7786] = 7116, [7787] = 7117, [7788] = 7788, [7789] = 6955, [7790] = 7118, [7791] = 7119, [7792] = 7116, [7793] = 7117, [7794] = 7124, [7795] = 7027, [7796] = 7118, [7797] = 7020, [7798] = 7015, [7799] = 7799, [7800] = 7800, [7801] = 7012, [7802] = 7137, [7803] = 7139, [7804] = 7119, [7805] = 7086, [7806] = 7140, [7807] = 6951, [7808] = 6959, [7809] = 6951, [7810] = 7010, [7811] = 6960, [7812] = 7812, [7813] = 7148, [7814] = 6983, [7815] = 6985, [7816] = 7141, [7817] = 7048, [7818] = 7049, [7819] = 7457, [7820] = 7138, [7821] = 7088, [7822] = 7129, [7823] = 6990, [7824] = 7092, [7825] = 7825, [7826] = 6952, [7827] = 7073, [7828] = 7457, [7829] = 7120, [7830] = 6954, [7831] = 7269, [7832] = 7832, [7833] = 7054, [7834] = 6948, [7835] = 7476, [7836] = 7099, [7837] = 7102, [7838] = 3795, [7839] = 7681, [7840] = 7498, [7841] = 7102, [7842] = 6959, [7843] = 7500, [7844] = 7501, [7845] = 7502, [7846] = 6961, [7847] = 7140, [7848] = 7099, [7849] = 6963, [7850] = 7447, [7851] = 6983, [7852] = 6948, [7853] = 7529, [7854] = 7854, [7855] = 7054, [7856] = 7856, [7857] = 7073, [7858] = 7123, [7859] = 7538, [7860] = 7119, [7861] = 6965, [7862] = 7118, [7863] = 7092, [7864] = 7856, [7865] = 6966, [7866] = 6967, [7867] = 6968, [7868] = 7117, [7869] = 7869, [7870] = 7088, [7871] = 6972, [7872] = 7533, [7873] = 7854, [7874] = 7269, [7875] = 6973, [7876] = 6960, [7877] = 7681, [7878] = 7498, [7879] = 6974, [7880] = 7500, [7881] = 7501, [7882] = 7501, [7883] = 7500, [7884] = 7884, [7885] = 7447, [7886] = 6976, [7887] = 7854, [7888] = 7053, [7889] = 7856, [7890] = 7051, [7891] = 7049, [7892] = 7048, [7893] = 7040, [7894] = 7038, [7895] = 7269, [7896] = 7123, [7897] = 7008, [7898] = 7681, [7899] = 7498, [7900] = 7007, [7901] = 7500, [7902] = 7501, [7903] = 7903, [7904] = 6969, [7905] = 7447, [7906] = 7856, [7907] = 6989, [7908] = 6985, [7909] = 7028, [7910] = 7027, [7911] = 6975, [7912] = 7269, [7913] = 7198, [7914] = 6963, [7915] = 7681, [7916] = 7498, [7917] = 6959, [7918] = 7500, [7919] = 7501, [7920] = 6954, [7921] = 6952, [7922] = 7856, [7923] = 7020, [7924] = 7019, [7925] = 6990, [7926] = 7194, [7927] = 7124, [7928] = 7269, [7929] = 7015, [7930] = 7012, [7931] = 7681, [7932] = 7498, [7933] = 6985, [7934] = 7500, [7935] = 7501, [7936] = 6963, [7937] = 6951, [7938] = 7000, [7939] = 7939, [7940] = 6978, [7941] = 7941, [7942] = 7498, [7943] = 6978, [7944] = 7498, [7945] = 6983, [7946] = 7500, [7947] = 7501, [7948] = 6951, [7949] = 6960, [7950] = 6990, [7951] = 7012, [7952] = 6959, [7953] = 7498, [7954] = 7015, [7955] = 7500, [7956] = 7501, [7957] = 7117, [7958] = 7180, [7959] = 7019, [7960] = 7020, [7961] = 6983, [7962] = 7498, [7963] = 7963, [7964] = 7500, [7965] = 7501, [7966] = 7027, [7967] = 6985, [7968] = 7007, [7969] = 7008, [7970] = 7498, [7971] = 7028, [7972] = 7500, [7973] = 7501, [7974] = 7974, [7975] = 7000, [7976] = 7038, [7977] = 7040, [7978] = 6989, [7979] = 6991, [7980] = 7629, [7981] = 6996, [7982] = 7048, [7983] = 7049, [7984] = 7051, [7985] = 7800, [7986] = 7986, [7987] = 7433, [7988] = 7481, [7989] = 7001, [7990] = 7854, [7991] = 7007, [7992] = 7856, [7993] = 7008, [7994] = 7053, [7995] = 7493, [7996] = 7077, [7997] = 7997, [7998] = 7494, [7999] = 7086, [8000] = 7629, [8001] = 7078, [8002] = 7013, [8003] = 7800, [8004] = 7433, [8005] = 7481, [8006] = 7088, [8007] = 7014, [8008] = 7092, [8009] = 8009, [8010] = 7629, [8011] = 8011, [8012] = 7073, [8013] = 7054, [8014] = 6948, [8015] = 7099, [8016] = 7629, [8017] = 7102, [8018] = 7184, [8019] = 8019, [8020] = 7629, [8021] = 7120, [8022] = 7138, [8023] = 7629, [8024] = 7141, [8025] = 6994, [8026] = 7629, [8027] = 7529, [8028] = 7148, [8029] = 6992, [8030] = 7140, [8031] = 7137, [8032] = 7528, [8033] = 7629, [8034] = 7800, [8035] = 7433, [8036] = 7481, [8037] = 7124, [8038] = 6987, [8039] = 7800, [8040] = 7481, [8041] = 7800, [8042] = 7481, [8043] = 7800, [8044] = 7481, [8045] = 7800, [8046] = 7481, [8047] = 7800, [8048] = 7481, [8049] = 7800, [8050] = 7481, [8051] = 7800, [8052] = 7481, [8053] = 7800, [8054] = 7481, [8055] = 7123, [8056] = 6986, [8057] = 7038, [8058] = 7119, [8059] = 7040, [8060] = 7118, }; static TSCharacterRange aux_sym_escape_sequence_token1_character_set_1[] = { {'"', '"'}, {'\'', '\''}, {'?', '?'}, {'\\', '\\'}, {'a', 'b'}, {'f', 'f'}, {'n', 'n'}, {'r', 'r'}, {'t', 't'}, {'v', 'v'}, }; static TSCharacterRange sym_identifier_character_set_1[] = { {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3}, {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5}, {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828}, {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950}, {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0}, {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1}, {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61}, {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32}, {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2}, {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c}, {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa}, {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x1123f, 0x11240}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a}, {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f}, {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32}, {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11f02, 0x11f02}, {0x11f04, 0x11f10}, {0x11f12, 0x11f33}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13441, 0x13446}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e030, 0x1e06d}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad}, {0x1e2c0, 0x1e2eb}, {0x1e4d0, 0x1e4eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, }; static TSCharacterRange sym_identifier_character_set_2[] = { {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374}, {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2}, {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc}, {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd}, {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x898, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f}, {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4}, {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe}, {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75}, {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5}, {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d}, {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2}, {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63}, {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4}, {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf3}, {0xd00, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f}, {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4}, {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xece}, {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39}, {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734}, {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b}, {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x200c, 0x200d}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a}, {0x309d, 0x309f}, {0x30a1, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873}, {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b}, {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff65, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10efd, 0x10f1c}, {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba}, {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176}, {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x11241}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461}, {0x11480, 0x114c5}, {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644}, {0x11650, 0x11659}, {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a}, {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943}, {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11f00, 0x11f10}, {0x11f12, 0x11f3a}, {0x11f3e, 0x11f42}, {0x11f50, 0x11f59}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342f}, {0x13440, 0x13455}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4}, {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b132, 0x1b132}, {0x1b150, 0x1b152}, {0x1b155, 0x1b155}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1df25, 0x1df2a}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e030, 0x1e06d}, {0x1e08f, 0x1e08f}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae}, {0x1e2c0, 0x1e2f9}, {0x1e4d0, 0x1e4f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b}, {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b739}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2ebf0, 0x2ee5d}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0x31350, 0x323af}, {0xe0100, 0xe01ef}, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { START_LEXER(); eof = lexer->eof(lexer); switch (state) { case 0: if (eof) ADVANCE(174); ADVANCE_MAP( 0x1a, 185, '!', 326, '"', 629, '#', 357, '$', 337, '%', 346, '&', 297, '\'', 1012, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 290, '/', 287, ':', 335, ';', 334, '<', 314, '=', 340, '>', 318, '?', 332, '@', 355, '[', 330, '\\', 24, ']', 331, '^', 348, '_', 278, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '|', 300, '}', 285, '~', 353, 0xfeff, 175, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(171); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 1: if (lookahead == '\n') ADVANCE(176); if (lookahead != 0) ADVANCE(1); END_STATE(); case 2: if (lookahead == '\r') ADVANCE(268); if (lookahead == '\\') ADVANCE(190); if (lookahead != 0) ADVANCE(267); END_STATE(); case 3: ADVANCE_MAP( '!', 326, '"', 629, '#', 357, '$', 337, '%', 346, '&', 297, '\'', 1012, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 290, '/', 287, ':', 335, ';', 334, '<', 314, '=', 340, '>', 318, '?', 332, '@', 355, '[', 330, ']', 331, '^', 348, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(3); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 4: ADVANCE_MAP( '!', 326, '"', 629, '#', 357, '$', 336, '%', 346, '&', 297, '\'', 1012, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 290, '/', 287, ':', 335, ';', 334, '<', 314, '=', 340, '>', 318, '?', 332, '@', 355, '[', 330, ']', 331, '^', 348, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(4); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 5: if (lookahead == '!') ADVANCE(1); END_STATE(); case 6: ADVANCE_MAP( '!', 324, '"', 629, '$', 336, '&', 296, '\'', 1012, '(', 328, ')', 329, '*', 343, '+', 309, ',', 333, '-', 304, '.', 291, '/', 30, ':', 335, '=', 338, '@', 355, '[', 330, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '~', 352, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(6); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 7: ADVANCE_MAP( '!', 324, '"', 629, '$', 336, '&', 296, '\'', 1012, '(', 328, ')', 329, '*', 343, '+', 309, '-', 304, '.', 289, '/', 30, ':', 335, ';', 334, '=', 338, '@', 355, '[', 330, ']', 331, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '}', 285, '~', 352, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(7); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 8: ADVANCE_MAP( '!', 324, '(', 328, ')', 329, '*', 343, ',', 333, '.', 289, '/', 30, ':', 335, ';', 334, '=', 338, '@', 355, '[', 330, '{', 286, '}', 285, '~', 352, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(8); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 9: ADVANCE_MAP( '!', 324, '(', 328, ')', 329, '*', 343, ',', 333, '.', 289, '/', 30, ':', 335, ';', 334, '=', 154, '@', 355, '[', 330, ']', 331, '{', 286, '}', 285, '~', 352, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(9); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 10: ADVANCE_MAP( '!', 324, '(', 328, ')', 329, '*', 343, ',', 333, '.', 291, '/', 30, ':', 335, ';', 334, '=', 338, '@', 355, '[', 330, ']', 331, '{', 286, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(10); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 11: ADVANCE_MAP( '!', 325, '"', 629, '$', 336, '%', 346, '&', 297, '\'', 1012, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 289, '/', 287, ';', 334, '<', 314, '=', 339, '>', 318, '?', 332, '@', 355, '[', 330, '^', 348, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(11); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 12: ADVANCE_MAP( '!', 325, '%', 346, '&', 297, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 289, '/', 287, ':', 335, ';', 334, '<', 314, '=', 340, '>', 318, '?', 332, '[', 330, ']', 331, '^', 348, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(12); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 13: ADVANCE_MAP( '!', 325, '%', 346, '&', 297, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 289, '/', 287, ':', 335, ';', 334, '<', 314, '=', 339, '>', 318, '?', 332, '@', 355, '[', 330, ']', 331, '^', 348, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(13); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 14: ADVANCE_MAP( '!', 325, '%', 346, '&', 297, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 291, '/', 287, '<', 314, '=', 340, '>', 318, '?', 332, '[', 330, '^', 348, '|', 300, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(14); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 15: ADVANCE_MAP( '!', 325, '%', 346, '&', 297, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 291, '/', 287, '<', 314, '=', 339, '>', 318, '?', 332, '@', 355, '[', 330, '^', 348, '|', 300, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(15); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 16: ADVANCE_MAP( '!', 325, '%', 346, '&', 297, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 292, '/', 287, '<', 314, '=', 340, '>', 318, '?', 332, '[', 330, ']', 331, '^', 348, '|', 300, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(16); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 17: ADVANCE_MAP( '!', 325, '%', 346, '&', 297, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 292, '/', 287, '<', 314, '=', 339, '>', 318, '?', 332, '@', 355, '[', 330, ']', 331, '^', 348, '|', 300, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(17); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 18: ADVANCE_MAP( '!', 153, '%', 346, '&', 297, ')', 329, '*', 344, '+', 311, ',', 333, '-', 306, '.', 134, '/', 287, ':', 335, ';', 334, '<', 314, '=', 339, '>', 318, '?', 332, ']', 331, '^', 348, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(18); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 19: ADVANCE_MAP( '!', 153, '%', 346, '&', 297, ')', 329, '*', 344, '+', 311, ',', 333, '-', 306, '.', 133, '/', 287, '<', 314, '=', 339, '>', 318, '?', 332, '^', 348, '|', 300, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(19); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 20: ADVANCE_MAP( '"', 629, '$', 22, '/', 886, '\\', 24, '\t', 988, '\n', 988, '\r', 988, ' ', 988, 0x2028, 988, 0x2029, 988, ); if (lookahead != 0) ADVANCE(1006); END_STATE(); case 21: if (lookahead == '"') ADVANCE(625); if (lookahead == '/') ADVANCE(631); if (lookahead == '\\') ADVANCE(26); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(739); if (lookahead != 0) ADVANCE(757); END_STATE(); case 22: if (lookahead == '"') ADVANCE(1008); if (lookahead == '(') ADVANCE(758); if (lookahead != 0) ADVANCE(1007); END_STATE(); case 23: if (lookahead == '$') ADVANCE(884); END_STATE(); case 24: if (lookahead == '$') ADVANCE(884); if (lookahead == '&') ADVANCE(170); if (lookahead == 'U') ADVANCE(169); if (lookahead == 'u') ADVANCE(164); if (lookahead == 'x') ADVANCE(159); if (('0' <= lookahead && lookahead <= '7')) ADVANCE(181); if (set_contains(aux_sym_escape_sequence_token1_character_set_1, 10, lookahead)) ADVANCE(177); END_STATE(); case 25: if (lookahead == '$') ADVANCE(29); if (lookahead == '/') ADVANCE(761); if (lookahead == '`') ADVANCE(360); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(863); if (lookahead != 0) ADVANCE(881); END_STATE(); case 26: if (lookahead == '&') ADVANCE(170); if (lookahead == 'U') ADVANCE(169); if (lookahead == 'u') ADVANCE(164); if (lookahead == 'x') ADVANCE(159); if (('0' <= lookahead && lookahead <= '7')) ADVANCE(181); if (set_contains(aux_sym_escape_sequence_token1_character_set_1, 10, lookahead)) ADVANCE(177); END_STATE(); case 27: if (lookahead == '\'') ADVANCE(1010); END_STATE(); case 28: if (lookahead == '(') ADVANCE(328); if (lookahead == '/') ADVANCE(30); if (lookahead == ';') ADVANCE(334); if (lookahead == '=') ADVANCE(341); if (lookahead == '@') ADVANCE(355); if (lookahead == '{') ADVANCE(286); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(28); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 29: if (lookahead == '(') ADVANCE(758); if (lookahead == '`') ADVANCE(883); if (lookahead != 0) ADVANCE(882); END_STATE(); case 30: if (lookahead == '*') ADVANCE(32); if (lookahead == '+') ADVANCE(33); if (lookahead == '/') ADVANCE(267); END_STATE(); case 31: if (lookahead == '*') ADVANCE(31); if (lookahead == '/') ADVANCE(187); if (lookahead != 0) ADVANCE(32); END_STATE(); case 32: if (lookahead == '*') ADVANCE(31); if (lookahead != 0) ADVANCE(32); END_STATE(); case 33: if (lookahead == '+') ADVANCE(136); if (lookahead == '/') ADVANCE(35); if (lookahead != 0) ADVANCE(33); END_STATE(); case 34: if (lookahead == '+') ADVANCE(137); if (lookahead == '/') ADVANCE(42); if (lookahead != 0) ADVANCE(34); END_STATE(); case 35: if (lookahead == '+') ADVANCE(40); if (lookahead == '/') ADVANCE(35); if (lookahead != 0) ADVANCE(33); END_STATE(); case 36: if (lookahead == '+') ADVANCE(40); if (lookahead == '/') ADVANCE(35); if (lookahead != 0) ADVANCE(34); END_STATE(); case 37: if (lookahead == '+') ADVANCE(135); if (lookahead == '/') ADVANCE(45); if (lookahead != 0) ADVANCE(37); END_STATE(); case 38: if (lookahead == '+') ADVANCE(61); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(86); END_STATE(); case 39: if (lookahead == '+') ADVANCE(64); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 40: if (lookahead == '+') ADVANCE(36); if (lookahead == '/') ADVANCE(213); if (lookahead != 0) ADVANCE(34); END_STATE(); case 41: if (lookahead == '+') ADVANCE(138); if (lookahead == '/') ADVANCE(65); if (lookahead != 0) ADVANCE(41); END_STATE(); case 42: if (lookahead == '+') ADVANCE(57); if (lookahead == '/') ADVANCE(42); if (lookahead != 0) ADVANCE(34); END_STATE(); case 43: if (lookahead == '+') ADVANCE(57); if (lookahead == '/') ADVANCE(42); if (lookahead != 0) ADVANCE(47); END_STATE(); case 44: if (lookahead == '+') ADVANCE(140); if (lookahead == '/') ADVANCE(95); if (lookahead != 0) ADVANCE(44); END_STATE(); case 45: if (lookahead == '+') ADVANCE(69); if (lookahead == '/') ADVANCE(45); if (lookahead != 0) ADVANCE(37); END_STATE(); case 46: if (lookahead == '+') ADVANCE(69); if (lookahead == '/') ADVANCE(45); if (lookahead != 0) ADVANCE(44); END_STATE(); case 47: if (lookahead == '+') ADVANCE(139); if (lookahead == '/') ADVANCE(83); if (lookahead != 0) ADVANCE(47); END_STATE(); case 48: if (lookahead == '+') ADVANCE(58); if (lookahead == '/') ADVANCE(65); if (lookahead != 0) ADVANCE(41); END_STATE(); case 49: if (lookahead == '+') ADVANCE(58); if (lookahead == '/') ADVANCE(65); if (lookahead != 0) ADVANCE(51); END_STATE(); case 50: if (lookahead == '+') ADVANCE(145); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(50); END_STATE(); case 51: if (lookahead == '+') ADVANCE(141); if (lookahead == '/') ADVANCE(81); if (lookahead != 0) ADVANCE(51); END_STATE(); case 52: if (lookahead == '+') ADVANCE(75); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 53: if (lookahead == '+') ADVANCE(75); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(73); END_STATE(); case 54: if (lookahead == '+') ADVANCE(142); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 55: if (lookahead == '+') ADVANCE(143); if (lookahead == '/') ADVANCE(91); if (lookahead != 0) ADVANCE(55); END_STATE(); case 56: if (lookahead == '+') ADVANCE(144); if (lookahead == '/') ADVANCE(109); if (lookahead != 0) ADVANCE(56); END_STATE(); case 57: if (lookahead == '+') ADVANCE(43); if (lookahead == '/') ADVANCE(234); if (lookahead != 0) ADVANCE(47); END_STATE(); case 58: if (lookahead == '+') ADVANCE(49); if (lookahead == '/') ADVANCE(201); if (lookahead != 0) ADVANCE(51); END_STATE(); case 59: if (lookahead == '+') ADVANCE(66); if (lookahead == '/') ADVANCE(252); if (lookahead != 0) ADVANCE(54); END_STATE(); case 60: if (lookahead == '+') ADVANCE(68); if (lookahead == '/') ADVANCE(222); if (lookahead != 0) ADVANCE(54); END_STATE(); case 61: if (lookahead == '+') ADVANCE(38); if (lookahead == '/') ADVANCE(55); if (lookahead != 0) ADVANCE(86); END_STATE(); case 62: if (lookahead == '+') ADVANCE(82); if (lookahead == '/') ADVANCE(264); if (lookahead != 0) ADVANCE(73); END_STATE(); case 63: if (lookahead == '+') ADVANCE(92); if (lookahead == '/') ADVANCE(252); if (lookahead != 0) ADVANCE(73); END_STATE(); case 64: if (lookahead == '+') ADVANCE(39); if (lookahead == '/') ADVANCE(240); if (lookahead != 0) ADVANCE(73); END_STATE(); case 65: if (lookahead == '+') ADVANCE(59); if (lookahead == '/') ADVANCE(65); if (lookahead != 0) ADVANCE(41); END_STATE(); case 66: if (lookahead == '+') ADVANCE(59); if (lookahead == '/') ADVANCE(65); if (lookahead != 0) ADVANCE(54); END_STATE(); case 67: if (lookahead == '+') ADVANCE(76); if (lookahead == '/') ADVANCE(113); if (lookahead != 0) ADVANCE(97); END_STATE(); case 68: if (lookahead == '+') ADVANCE(60); if (lookahead == '/') ADVANCE(83); if (lookahead != 0) ADVANCE(54); END_STATE(); case 69: if (lookahead == '+') ADVANCE(46); if (lookahead == '/') ADVANCE(48); if (lookahead != 0) ADVANCE(44); END_STATE(); case 70: if (lookahead == '+') ADVANCE(90); if (lookahead == '/') ADVANCE(91); if (lookahead != 0) ADVANCE(55); END_STATE(); case 71: if (lookahead == '+') ADVANCE(90); if (lookahead == '/') ADVANCE(91); if (lookahead != 0) ADVANCE(74); END_STATE(); case 72: if (lookahead == '+') ADVANCE(146); if (lookahead == '/') ADVANCE(113); if (lookahead != 0) ADVANCE(72); END_STATE(); case 73: if (lookahead == '+') ADVANCE(149); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 74: if (lookahead == '+') ADVANCE(150); if (lookahead == '/') ADVANCE(99); if (lookahead != 0) ADVANCE(74); END_STATE(); case 75: if (lookahead == '+') ADVANCE(53); if (lookahead == '/') ADVANCE(204); if (lookahead != 0) ADVANCE(73); END_STATE(); case 76: if (lookahead == '+') ADVANCE(67); if (lookahead == '/') ADVANCE(87); if (lookahead != 0) ADVANCE(97); END_STATE(); case 77: if (lookahead == '+') ADVANCE(102); if (lookahead == '/') ADVANCE(249); if (lookahead != 0) ADVANCE(73); END_STATE(); case 78: if (lookahead == '+') ADVANCE(85); if (lookahead == '/') ADVANCE(231); if (lookahead != 0) ADVANCE(74); END_STATE(); case 79: if (lookahead == '+') ADVANCE(98); if (lookahead == '/') ADVANCE(264); if (lookahead != 0) ADVANCE(73); END_STATE(); case 80: if (lookahead == '+') ADVANCE(120); if (lookahead == '/') ADVANCE(243); if (lookahead != 0) ADVANCE(73); END_STATE(); case 81: if (lookahead == '+') ADVANCE(62); if (lookahead == '/') ADVANCE(81); if (lookahead != 0) ADVANCE(51); END_STATE(); case 82: if (lookahead == '+') ADVANCE(62); if (lookahead == '/') ADVANCE(81); if (lookahead != 0) ADVANCE(73); END_STATE(); case 83: if (lookahead == '+') ADVANCE(122); if (lookahead == '/') ADVANCE(83); if (lookahead != 0) ADVANCE(47); END_STATE(); case 84: if (lookahead == '+') ADVANCE(122); if (lookahead == '/') ADVANCE(83); if (lookahead != 0) ADVANCE(54); END_STATE(); case 85: if (lookahead == '+') ADVANCE(78); if (lookahead == '/') ADVANCE(99); if (lookahead != 0) ADVANCE(74); END_STATE(); case 86: if (lookahead == '+') ADVANCE(147); if (lookahead == '/') ADVANCE(115); if (lookahead != 0) ADVANCE(86); END_STATE(); case 87: if (lookahead == '+') ADVANCE(151); if (lookahead == '/') ADVANCE(108); if (lookahead != 0) ADVANCE(87); END_STATE(); case 88: if (lookahead == '+') ADVANCE(121); if (lookahead == '/') ADVANCE(204); if (lookahead != 0) ADVANCE(73); END_STATE(); case 89: if (lookahead == '+') ADVANCE(94); if (lookahead == '/') ADVANCE(249); if (lookahead != 0) ADVANCE(73); END_STATE(); case 90: if (lookahead == '+') ADVANCE(71); if (lookahead == '/') ADVANCE(201); if (lookahead != 0) ADVANCE(74); END_STATE(); case 91: if (lookahead == '+') ADVANCE(63); if (lookahead == '/') ADVANCE(91); if (lookahead != 0) ADVANCE(55); END_STATE(); case 92: if (lookahead == '+') ADVANCE(63); if (lookahead == '/') ADVANCE(91); if (lookahead != 0) ADVANCE(73); END_STATE(); case 93: if (lookahead == '+') ADVANCE(89); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 94: if (lookahead == '+') ADVANCE(89); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(73); END_STATE(); case 95: if (lookahead == '+') ADVANCE(103); if (lookahead == '/') ADVANCE(95); if (lookahead != 0) ADVANCE(44); END_STATE(); case 96: if (lookahead == '+') ADVANCE(103); if (lookahead == '/') ADVANCE(95); if (lookahead != 0) ADVANCE(72); END_STATE(); case 97: if (lookahead == '+') ADVANCE(148); if (lookahead == '/') ADVANCE(130); if (lookahead != 0) ADVANCE(97); END_STATE(); case 98: if (lookahead == '+') ADVANCE(79); if (lookahead == '/') ADVANCE(99); if (lookahead != 0) ADVANCE(73); END_STATE(); case 99: if (lookahead == '+') ADVANCE(79); if (lookahead == '/') ADVANCE(99); if (lookahead != 0) ADVANCE(74); END_STATE(); case 100: if (lookahead == '+') ADVANCE(124); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(73); END_STATE(); case 101: if (lookahead == '+') ADVANCE(110); if (lookahead == '/') ADVANCE(255); if (lookahead != 0) ADVANCE(73); END_STATE(); case 102: if (lookahead == '+') ADVANCE(77); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 103: if (lookahead == '+') ADVANCE(96); if (lookahead == '/') ADVANCE(52); if (lookahead != 0) ADVANCE(72); END_STATE(); case 104: if (lookahead == '+') ADVANCE(123); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 105: if (lookahead == '+') ADVANCE(112); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(50); END_STATE(); case 106: if (lookahead == '+') ADVANCE(112); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(97); END_STATE(); case 107: if (lookahead == '+') ADVANCE(127); if (lookahead == '/') ADVANCE(108); if (lookahead != 0) ADVANCE(73); END_STATE(); case 108: if (lookahead == '+') ADVANCE(127); if (lookahead == '/') ADVANCE(108); if (lookahead != 0) ADVANCE(87); END_STATE(); case 109: if (lookahead == '+') ADVANCE(101); if (lookahead == '/') ADVANCE(109); if (lookahead != 0) ADVANCE(56); END_STATE(); case 110: if (lookahead == '+') ADVANCE(101); if (lookahead == '/') ADVANCE(109); if (lookahead != 0) ADVANCE(73); END_STATE(); case 111: if (lookahead == '+') ADVANCE(128); if (lookahead == '/') ADVANCE(108); if (lookahead != 0) ADVANCE(73); END_STATE(); case 112: if (lookahead == '+') ADVANCE(106); if (lookahead == '/') ADVANCE(70); if (lookahead != 0) ADVANCE(97); END_STATE(); case 113: if (lookahead == '+') ADVANCE(118); if (lookahead == '/') ADVANCE(113); if (lookahead != 0) ADVANCE(72); END_STATE(); case 114: if (lookahead == '+') ADVANCE(118); if (lookahead == '/') ADVANCE(113); if (lookahead != 0) ADVANCE(97); END_STATE(); case 115: if (lookahead == '+') ADVANCE(119); if (lookahead == '/') ADVANCE(115); if (lookahead != 0) ADVANCE(86); END_STATE(); case 116: if (lookahead == '+') ADVANCE(119); if (lookahead == '/') ADVANCE(115); if (lookahead != 0) ADVANCE(97); END_STATE(); case 117: if (lookahead == '+') ADVANCE(130); if (lookahead == '/') ADVANCE(121); if (lookahead != 0) ADVANCE(97); END_STATE(); case 118: if (lookahead == '+') ADVANCE(114); if (lookahead == '/') ADVANCE(121); if (lookahead != 0) ADVANCE(97); END_STATE(); case 119: if (lookahead == '+') ADVANCE(116); if (lookahead == '/') ADVANCE(85); if (lookahead != 0) ADVANCE(97); END_STATE(); case 120: if (lookahead == '+') ADVANCE(80); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(73); END_STATE(); case 121: if (lookahead == '+') ADVANCE(88); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 122: if (lookahead == '+') ADVANCE(84); if (lookahead == '/') ADVANCE(246); if (lookahead != 0) ADVANCE(54); END_STATE(); case 123: if (lookahead == '+') ADVANCE(104); if (lookahead == '/') ADVANCE(261); if (lookahead != 0) ADVANCE(73); END_STATE(); case 124: if (lookahead == '+') ADVANCE(100); if (lookahead == '/') ADVANCE(261); if (lookahead != 0) ADVANCE(73); END_STATE(); case 125: if (lookahead == '+') ADVANCE(131); if (lookahead == '/') ADVANCE(130); if (lookahead != 0) ADVANCE(97); END_STATE(); case 126: if (lookahead == '+') ADVANCE(129); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 127: if (lookahead == '+') ADVANCE(107); if (lookahead == '/') ADVANCE(246); if (lookahead != 0) ADVANCE(73); END_STATE(); case 128: if (lookahead == '+') ADVANCE(111); if (lookahead == '/') ADVANCE(222); if (lookahead != 0) ADVANCE(73); END_STATE(); case 129: if (lookahead == '+') ADVANCE(126); if (lookahead == '/') ADVANCE(258); if (lookahead != 0) ADVANCE(73); END_STATE(); case 130: if (lookahead == '+') ADVANCE(117); if (lookahead == '/') ADVANCE(130); if (lookahead != 0) ADVANCE(97); END_STATE(); case 131: if (lookahead == '+') ADVANCE(125); if (lookahead == '/') ADVANCE(126); if (lookahead != 0) ADVANCE(97); END_STATE(); case 132: if (lookahead == '.') ADVANCE(295); END_STATE(); case 133: if (lookahead == '.') ADVANCE(132); END_STATE(); case 134: if (lookahead == '.') ADVANCE(293); END_STATE(); case 135: if (lookahead == '/') ADVANCE(33); if (lookahead != 0) ADVANCE(37); END_STATE(); case 136: if (lookahead == '/') ADVANCE(187); if (lookahead != 0) ADVANCE(33); END_STATE(); case 137: if (lookahead == '/') ADVANCE(192); if (lookahead != 0) ADVANCE(34); END_STATE(); case 138: if (lookahead == '/') ADVANCE(198); if (lookahead != 0) ADVANCE(41); END_STATE(); case 139: if (lookahead == '/') ADVANCE(195); if (lookahead != 0) ADVANCE(47); END_STATE(); case 140: if (lookahead == '/') ADVANCE(34); if (lookahead != 0) ADVANCE(44); END_STATE(); case 141: if (lookahead == '/') ADVANCE(210); if (lookahead != 0) ADVANCE(51); END_STATE(); case 142: if (lookahead == '/') ADVANCE(214); if (lookahead != 0) ADVANCE(54); END_STATE(); case 143: if (lookahead == '/') ADVANCE(219); if (lookahead != 0) ADVANCE(55); END_STATE(); case 144: if (lookahead == '/') ADVANCE(207); if (lookahead != 0) ADVANCE(56); END_STATE(); case 145: if (lookahead == '/') ADVANCE(41); if (lookahead != 0) ADVANCE(50); END_STATE(); case 146: if (lookahead == '/') ADVANCE(47); if (lookahead != 0) ADVANCE(72); END_STATE(); case 147: if (lookahead == '/') ADVANCE(51); if (lookahead != 0) ADVANCE(86); END_STATE(); case 148: if (lookahead == '/') ADVANCE(54); if (lookahead != 0) ADVANCE(97); END_STATE(); case 149: if (lookahead == '/') ADVANCE(225); if (lookahead != 0) ADVANCE(73); END_STATE(); case 150: if (lookahead == '/') ADVANCE(237); if (lookahead != 0) ADVANCE(74); END_STATE(); case 151: if (lookahead == '/') ADVANCE(228); if (lookahead != 0) ADVANCE(87); END_STATE(); case 152: if (lookahead == ';') ADVANCE(184); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(152); END_STATE(); case 153: if (lookahead == '=') ADVANCE(327); END_STATE(); case 154: if (lookahead == '=') ADVANCE(342); if (lookahead == '>') ADVANCE(356); END_STATE(); case 155: if (lookahead == 'n') ADVANCE(358); if (lookahead == 's') ADVANCE(359); END_STATE(); case 156: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(178); END_STATE(); case 157: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(182); END_STATE(); case 158: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(183); END_STATE(); case 159: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(156); END_STATE(); case 160: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(157); END_STATE(); case 161: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(158); END_STATE(); case 162: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(160); END_STATE(); case 163: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(161); END_STATE(); case 164: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(162); END_STATE(); case 165: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(163); END_STATE(); case 166: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(165); END_STATE(); case 167: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(166); END_STATE(); case 168: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(167); END_STATE(); case 169: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(168); END_STATE(); case 170: if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE(152); END_STATE(); case 171: if (eof) ADVANCE(174); ADVANCE_MAP( 0x1a, 185, '!', 326, '"', 629, '#', 357, '$', 337, '%', 346, '&', 297, '\'', 1012, '(', 328, ')', 329, '*', 344, '+', 310, ',', 333, '-', 305, '.', 290, '/', 287, ':', 335, ';', 334, '<', 314, '=', 340, '>', 318, '?', 332, '@', 355, '[', 330, '\\', 23, ']', 331, '^', 348, '_', 278, '`', 360, 'i', 272, 'q', 281, 'r', 273, 'x', 274, '{', 286, '|', 300, '}', 285, '~', 353, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(171); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 172: if (eof) ADVANCE(174); ADVANCE_MAP( 0x1a, 185, '"', 625, '#', 5, '\'', 1011, '(', 328, ')', 329, ',', 333, '-', 303, '.', 289, '/', 30, ':', 335, ';', 334, '=', 338, '@', 355, '_', 278, '`', 492, '{', 286, '}', 285, '~', 352, 0xfeff, 175, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(173); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 173: if (eof) ADVANCE(174); ADVANCE_MAP( 0x1a, 185, '\'', 1011, '(', 328, ')', 329, ',', 333, '-', 303, '.', 289, '/', 30, ':', 335, ';', 334, '=', 338, '@', 355, '_', 278, '{', 286, '}', 285, '~', 352, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(173); if (set_contains(sym_identifier_character_set_1, 668, lookahead)) ADVANCE(283); END_STATE(); case 174: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 175: ACCEPT_TOKEN(anon_sym_BOM); END_STATE(); case 176: ACCEPT_TOKEN(sym_shebang); END_STATE(); case 177: ACCEPT_TOKEN(aux_sym_escape_sequence_token1); END_STATE(); case 178: ACCEPT_TOKEN(aux_sym_escape_sequence_token2); END_STATE(); case 179: ACCEPT_TOKEN(aux_sym_escape_sequence_token3); END_STATE(); case 180: ACCEPT_TOKEN(aux_sym_escape_sequence_token3); if (('0' <= lookahead && lookahead <= '7')) ADVANCE(179); END_STATE(); case 181: ACCEPT_TOKEN(aux_sym_escape_sequence_token3); if (('0' <= lookahead && lookahead <= '7')) ADVANCE(180); END_STATE(); case 182: ACCEPT_TOKEN(aux_sym_escape_sequence_token4); END_STATE(); case 183: ACCEPT_TOKEN(aux_sym_escape_sequence_token5); END_STATE(); case 184: ACCEPT_TOKEN(sym_htmlentity); END_STATE(); case 185: ACCEPT_TOKEN(sym_end_file); END_STATE(); case 186: ACCEPT_TOKEN(sym_end_file); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 187: ACCEPT_TOKEN(sym_comment); END_STATE(); case 188: ACCEPT_TOKEN(sym_comment); if (lookahead == '\n') ADVANCE(1006); if (lookahead == '\\') ADVANCE(2); if (lookahead == '"' || lookahead == '$') ADVANCE(267); if (lookahead != 0) ADVANCE(188); END_STATE(); case 189: ACCEPT_TOKEN(sym_comment); if (lookahead == '\n') ADVANCE(881); if (lookahead == '\\') ADVANCE(760); if (lookahead == '$' || lookahead == '`') ADVANCE(267); if (lookahead != 0) ADVANCE(189); END_STATE(); case 190: ACCEPT_TOKEN(sym_comment); if (lookahead == '\r') ADVANCE(268); if (lookahead == '\\') ADVANCE(190); if (lookahead != 0) ADVANCE(267); END_STATE(); case 191: ACCEPT_TOKEN(sym_comment); if (lookahead == '\r') ADVANCE(269); if (lookahead == '\\') ADVANCE(191); if (lookahead == '$' || lookahead == '`') ADVANCE(267); if (lookahead != 0) ADVANCE(189); END_STATE(); case 192: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(136); if (lookahead == '/') ADVANCE(35); if (lookahead != 0) ADVANCE(33); END_STATE(); case 193: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(990); if (lookahead == '/') ADVANCE(891); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(33); if (lookahead != 0) ADVANCE(889); END_STATE(); case 194: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(865); if (lookahead == '/') ADVANCE(766); if (lookahead == '$' || lookahead == '`') ADVANCE(33); if (lookahead != 0) ADVANCE(764); END_STATE(); case 195: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(137); if (lookahead == '/') ADVANCE(42); if (lookahead != 0) ADVANCE(34); END_STATE(); case 196: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(991); if (lookahead == '/') ADVANCE(898); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(34); if (lookahead != 0) ADVANCE(890); END_STATE(); case 197: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(866); if (lookahead == '/') ADVANCE(773); if (lookahead == '$' || lookahead == '`') ADVANCE(34); if (lookahead != 0) ADVANCE(765); END_STATE(); case 198: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(135); if (lookahead == '/') ADVANCE(45); if (lookahead != 0) ADVANCE(37); END_STATE(); case 199: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(989); if (lookahead == '/') ADVANCE(901); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(37); if (lookahead != 0) ADVANCE(893); END_STATE(); case 200: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(864); if (lookahead == '/') ADVANCE(776); if (lookahead == '$' || lookahead == '`') ADVANCE(37); if (lookahead != 0) ADVANCE(768); END_STATE(); case 201: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(61); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(50); END_STATE(); case 202: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(917); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(50); if (lookahead != 0) ADVANCE(906); END_STATE(); case 203: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(792); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(50); if (lookahead != 0) ADVANCE(781); END_STATE(); case 204: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(64); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 205: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(920); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 206: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(795); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 207: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(138); if (lookahead == '/') ADVANCE(65); if (lookahead != 0) ADVANCE(41); END_STATE(); case 208: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(992); if (lookahead == '/') ADVANCE(921); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(41); if (lookahead != 0) ADVANCE(897); END_STATE(); case 209: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(867); if (lookahead == '/') ADVANCE(796); if (lookahead == '$' || lookahead == '`') ADVANCE(41); if (lookahead != 0) ADVANCE(772); END_STATE(); case 210: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(140); if (lookahead == '/') ADVANCE(95); if (lookahead != 0) ADVANCE(44); END_STATE(); case 211: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(994); if (lookahead == '/') ADVANCE(951); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(44); if (lookahead != 0) ADVANCE(900); END_STATE(); case 212: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(869); if (lookahead == '/') ADVANCE(826); if (lookahead == '$' || lookahead == '`') ADVANCE(44); if (lookahead != 0) ADVANCE(775); END_STATE(); case 213: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(69); if (lookahead == '/') ADVANCE(45); if (lookahead != 0) ADVANCE(37); END_STATE(); case 214: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(139); if (lookahead == '/') ADVANCE(83); if (lookahead != 0) ADVANCE(47); END_STATE(); case 215: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(925); if (lookahead == '/') ADVANCE(901); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(37); if (lookahead != 0) ADVANCE(893); END_STATE(); case 216: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(993); if (lookahead == '/') ADVANCE(939); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 217: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(800); if (lookahead == '/') ADVANCE(776); if (lookahead == '$' || lookahead == '`') ADVANCE(37); if (lookahead != 0) ADVANCE(768); END_STATE(); case 218: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(868); if (lookahead == '/') ADVANCE(814); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 219: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(145); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(50); END_STATE(); case 220: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(999); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(50); if (lookahead != 0) ADVANCE(906); END_STATE(); case 221: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(874); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(50); if (lookahead != 0) ADVANCE(781); END_STATE(); case 222: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(75); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 223: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(931); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 224: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(806); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 225: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(142); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 226: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(996); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 227: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(871); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 228: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(144); if (lookahead == '/') ADVANCE(109); if (lookahead != 0) ADVANCE(56); END_STATE(); case 229: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(998); if (lookahead == '/') ADVANCE(965); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(56); if (lookahead != 0) ADVANCE(912); END_STATE(); case 230: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(873); if (lookahead == '/') ADVANCE(840); if (lookahead == '$' || lookahead == '`') ADVANCE(56); if (lookahead != 0) ADVANCE(787); END_STATE(); case 231: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(76); if (lookahead == '/') ADVANCE(113); if (lookahead != 0) ADVANCE(72); END_STATE(); case 232: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(932); if (lookahead == '/') ADVANCE(969); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 233: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(807); if (lookahead == '/') ADVANCE(844); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 234: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(60); if (lookahead == '/') ADVANCE(83); if (lookahead != 0) ADVANCE(47); END_STATE(); case 235: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(916); if (lookahead == '/') ADVANCE(939); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 236: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(791); if (lookahead == '/') ADVANCE(814); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 237: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(146); if (lookahead == '/') ADVANCE(113); if (lookahead != 0) ADVANCE(72); END_STATE(); case 238: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(1000); if (lookahead == '/') ADVANCE(969); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 239: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(875); if (lookahead == '/') ADVANCE(844); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 240: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(149); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 241: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(1003); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 242: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(878); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 243: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(151); if (lookahead == '/') ADVANCE(108); if (lookahead != 0) ADVANCE(87); END_STATE(); case 244: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(1005); if (lookahead == '/') ADVANCE(964); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(87); if (lookahead != 0) ADVANCE(943); END_STATE(); case 245: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(880); if (lookahead == '/') ADVANCE(839); if (lookahead == '$' || lookahead == '`') ADVANCE(87); if (lookahead != 0) ADVANCE(818); END_STATE(); case 246: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(124); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 247: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(980); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 248: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(855); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 249: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(123); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 250: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(979); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 251: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(854); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 252: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(112); if (lookahead == '/') ADVANCE(105); if (lookahead != 0) ADVANCE(50); END_STATE(); case 253: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(968); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(50); if (lookahead != 0) ADVANCE(906); END_STATE(); case 254: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(843); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(50); if (lookahead != 0) ADVANCE(781); END_STATE(); case 255: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(128); if (lookahead == '/') ADVANCE(108); if (lookahead != 0) ADVANCE(87); END_STATE(); case 256: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(984); if (lookahead == '/') ADVANCE(964); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(87); if (lookahead != 0) ADVANCE(943); END_STATE(); case 257: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(859); if (lookahead == '/') ADVANCE(839); if (lookahead == '$' || lookahead == '`') ADVANCE(87); if (lookahead != 0) ADVANCE(818); END_STATE(); case 258: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(80); if (lookahead == '/') ADVANCE(93); if (lookahead != 0) ADVANCE(54); END_STATE(); case 259: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(936); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 260: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(811); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 261: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(88); if (lookahead == '/') ADVANCE(102); if (lookahead != 0) ADVANCE(73); END_STATE(); case 262: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(944); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 263: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(819); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 264: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(131); if (lookahead == '/') ADVANCE(130); if (lookahead != 0) ADVANCE(97); END_STATE(); case 265: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(987); if (lookahead == '/') ADVANCE(986); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 266: ACCEPT_TOKEN(sym_comment); if (lookahead == '+') ADVANCE(862); if (lookahead == '/') ADVANCE(861); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 267: ACCEPT_TOKEN(sym_comment); if (lookahead == '\\') ADVANCE(2); if (lookahead != 0 && lookahead != '\n') ADVANCE(267); END_STATE(); case 268: ACCEPT_TOKEN(sym_comment); if (lookahead == '\\') ADVANCE(2); if (lookahead != 0) ADVANCE(267); END_STATE(); case 269: ACCEPT_TOKEN(sym_comment); if (lookahead == '\\') ADVANCE(760); if (lookahead == '$' || lookahead == '`') ADVANCE(267); if (lookahead != 0) ADVANCE(189); END_STATE(); case 270: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '"' && lookahead != '$' && lookahead != '\\') ADVANCE(1006); END_STATE(); case 271: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '$' && lookahead != '`') ADVANCE(881); END_STATE(); case 272: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(885); if (lookahead == '`') ADVANCE(759); if (lookahead == 'q') ADVANCE(282); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 273: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(493); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 274: ACCEPT_TOKEN(sym_identifier); if (lookahead == '"') ADVANCE(626); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 275: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'E') ADVANCE(277); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 276: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'F') ADVANCE(280); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 277: ACCEPT_TOKEN(sym_identifier); if (lookahead == 'O') ADVANCE(276); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 278: ACCEPT_TOKEN(sym_identifier); if (lookahead == '_') ADVANCE(275); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 279: ACCEPT_TOKEN(sym_identifier); if (lookahead == '_') ADVANCE(186); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 280: ACCEPT_TOKEN(sym_identifier); if (lookahead == '_') ADVANCE(279); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 281: ACCEPT_TOKEN(sym_identifier); if (lookahead == '{') ADVANCE(284); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 282: ACCEPT_TOKEN(sym_identifier); if (lookahead == '{') ADVANCE(1009); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 283: ACCEPT_TOKEN(sym_identifier); if (set_contains(sym_identifier_character_set_2, 776, lookahead)) ADVANCE(283); END_STATE(); case 284: ACCEPT_TOKEN(anon_sym_q_LBRACE); END_STATE(); case 285: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 286: ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 287: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '*') ADVANCE(32); if (lookahead == '+') ADVANCE(33); if (lookahead == '/') ADVANCE(267); if (lookahead == '=') ADVANCE(288); END_STATE(); case 288: ACCEPT_TOKEN(anon_sym_SLASH_EQ); END_STATE(); case 289: ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); case 290: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(294); END_STATE(); case 291: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(132); END_STATE(); case 292: ACCEPT_TOKEN(anon_sym_DOT); if (lookahead == '.') ADVANCE(293); END_STATE(); case 293: ACCEPT_TOKEN(anon_sym_DOT_DOT); END_STATE(); case 294: ACCEPT_TOKEN(anon_sym_DOT_DOT); if (lookahead == '.') ADVANCE(295); END_STATE(); case 295: ACCEPT_TOKEN(anon_sym_DOT_DOT_DOT); END_STATE(); case 296: ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 297: ACCEPT_TOKEN(anon_sym_AMP); if (lookahead == '&') ADVANCE(299); if (lookahead == '=') ADVANCE(298); END_STATE(); case 298: ACCEPT_TOKEN(anon_sym_AMP_EQ); END_STATE(); case 299: ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); case 300: ACCEPT_TOKEN(anon_sym_PIPE); if (lookahead == '=') ADVANCE(301); if (lookahead == '|') ADVANCE(302); END_STATE(); case 301: ACCEPT_TOKEN(anon_sym_PIPE_EQ); END_STATE(); case 302: ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); case 303: ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 304: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(308); END_STATE(); case 305: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(308); if (lookahead == '=') ADVANCE(307); END_STATE(); case 306: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '=') ADVANCE(307); END_STATE(); case 307: ACCEPT_TOKEN(anon_sym_DASH_EQ); END_STATE(); case 308: ACCEPT_TOKEN(anon_sym_DASH_DASH); END_STATE(); case 309: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(313); END_STATE(); case 310: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '+') ADVANCE(313); if (lookahead == '=') ADVANCE(312); END_STATE(); case 311: ACCEPT_TOKEN(anon_sym_PLUS); if (lookahead == '=') ADVANCE(312); END_STATE(); case 312: ACCEPT_TOKEN(anon_sym_PLUS_EQ); END_STATE(); case 313: ACCEPT_TOKEN(anon_sym_PLUS_PLUS); END_STATE(); case 314: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '<') ADVANCE(316); if (lookahead == '=') ADVANCE(315); END_STATE(); case 315: ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 316: ACCEPT_TOKEN(anon_sym_LT_LT); if (lookahead == '=') ADVANCE(317); END_STATE(); case 317: ACCEPT_TOKEN(anon_sym_LT_LT_EQ); END_STATE(); case 318: ACCEPT_TOKEN(anon_sym_GT); if (lookahead == '=') ADVANCE(319); if (lookahead == '>') ADVANCE(322); END_STATE(); case 319: ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 320: ACCEPT_TOKEN(anon_sym_GT_GT_EQ); END_STATE(); case 321: ACCEPT_TOKEN(anon_sym_GT_GT_GT_EQ); END_STATE(); case 322: ACCEPT_TOKEN(anon_sym_GT_GT); if (lookahead == '=') ADVANCE(320); if (lookahead == '>') ADVANCE(323); END_STATE(); case 323: ACCEPT_TOKEN(anon_sym_GT_GT_GT); if (lookahead == '=') ADVANCE(321); END_STATE(); case 324: ACCEPT_TOKEN(anon_sym_BANG); END_STATE(); case 325: ACCEPT_TOKEN(anon_sym_BANG); if (lookahead == '=') ADVANCE(327); END_STATE(); case 326: ACCEPT_TOKEN(anon_sym_BANG); if (lookahead == '=') ADVANCE(327); if (lookahead == 'i') ADVANCE(155); END_STATE(); case 327: ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 328: ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 329: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 330: ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 331: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 332: ACCEPT_TOKEN(anon_sym_QMARK); END_STATE(); case 333: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 334: ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 335: ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 336: ACCEPT_TOKEN(anon_sym_DOLLAR); END_STATE(); case 337: ACCEPT_TOKEN(anon_sym_DOLLAR); if (lookahead == '(') ADVANCE(758); END_STATE(); case 338: ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 339: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '=') ADVANCE(342); END_STATE(); case 340: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '=') ADVANCE(342); if (lookahead == '>') ADVANCE(356); END_STATE(); case 341: ACCEPT_TOKEN(anon_sym_EQ); if (lookahead == '>') ADVANCE(356); END_STATE(); case 342: ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 343: ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 344: ACCEPT_TOKEN(anon_sym_STAR); if (lookahead == '=') ADVANCE(345); END_STATE(); case 345: ACCEPT_TOKEN(anon_sym_STAR_EQ); END_STATE(); case 346: ACCEPT_TOKEN(anon_sym_PERCENT); if (lookahead == '=') ADVANCE(347); END_STATE(); case 347: ACCEPT_TOKEN(anon_sym_PERCENT_EQ); END_STATE(); case 348: ACCEPT_TOKEN(anon_sym_CARET); if (lookahead == '=') ADVANCE(349); if (lookahead == '^') ADVANCE(350); END_STATE(); case 349: ACCEPT_TOKEN(anon_sym_CARET_EQ); END_STATE(); case 350: ACCEPT_TOKEN(anon_sym_CARET_CARET); if (lookahead == '=') ADVANCE(351); END_STATE(); case 351: ACCEPT_TOKEN(anon_sym_CARET_CARET_EQ); END_STATE(); case 352: ACCEPT_TOKEN(anon_sym_TILDE); END_STATE(); case 353: ACCEPT_TOKEN(anon_sym_TILDE); if (lookahead == '=') ADVANCE(354); END_STATE(); case 354: ACCEPT_TOKEN(anon_sym_TILDE_EQ); END_STATE(); case 355: ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 356: ACCEPT_TOKEN(anon_sym_EQ_GT); END_STATE(); case 357: ACCEPT_TOKEN(anon_sym_POUND); END_STATE(); case 358: ACCEPT_TOKEN(anon_sym_BANGin); END_STATE(); case 359: ACCEPT_TOKEN(anon_sym_BANGis); END_STATE(); case 360: ACCEPT_TOKEN(anon_sym_BQUOTE); END_STATE(); case 361: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '\n') ADVANCE(490); if (lookahead == '\\') ADVANCE(362); if (lookahead != 0 && lookahead != '`') ADVANCE(361); END_STATE(); case 362: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '\r') ADVANCE(489); if (lookahead == '\\') ADVANCE(362); if (lookahead != 0 && lookahead != '`') ADVANCE(361); END_STATE(); case 363: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '*') ADVANCE(365); if (lookahead == '+') ADVANCE(366); if (lookahead == '/') ADVANCE(361); if (lookahead != 0 && lookahead != '`') ADVANCE(490); END_STATE(); case 364: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '*') ADVANCE(364); if (lookahead == '/') ADVANCE(490); if (lookahead != 0 && lookahead != '`') ADVANCE(365); END_STATE(); case 365: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '*') ADVANCE(364); if (lookahead != 0 && lookahead != '`') ADVANCE(365); END_STATE(); case 366: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(472); if (lookahead == '/') ADVANCE(370); if (lookahead != 0 && lookahead != '`') ADVANCE(366); END_STATE(); case 367: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(473); if (lookahead == '/') ADVANCE(398); if (lookahead != 0 && lookahead != '`') ADVANCE(367); END_STATE(); case 368: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(382); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(428); END_STATE(); case 369: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(382); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(427); END_STATE(); case 370: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(373); if (lookahead == '/') ADVANCE(370); if (lookahead != 0 && lookahead != '`') ADVANCE(366); END_STATE(); case 371: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(373); if (lookahead == '/') ADVANCE(370); if (lookahead != 0 && lookahead != '`') ADVANCE(367); END_STATE(); case 372: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(475); if (lookahead == '/') ADVANCE(405); if (lookahead != 0 && lookahead != '`') ADVANCE(372); END_STATE(); case 373: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(371); if (lookahead == '/') ADVANCE(376); if (lookahead != 0 && lookahead != '`') ADVANCE(367); END_STATE(); case 374: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(477); if (lookahead == '/') ADVANCE(401); if (lookahead != 0 && lookahead != '`') ADVANCE(374); END_STATE(); case 375: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(378); if (lookahead == '/') ADVANCE(376); if (lookahead != 0 && lookahead != '`') ADVANCE(372); END_STATE(); case 376: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(378); if (lookahead == '/') ADVANCE(376); if (lookahead != 0 && lookahead != '`') ADVANCE(451); END_STATE(); case 377: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(482); if (lookahead == '/') ADVANCE(411); if (lookahead != 0 && lookahead != '`') ADVANCE(377); END_STATE(); case 378: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(375); if (lookahead == '/') ADVANCE(380); if (lookahead != 0 && lookahead != '`') ADVANCE(372); END_STATE(); case 379: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(381); if (lookahead == '/') ADVANCE(390); if (lookahead != 0 && lookahead != '`') ADVANCE(374); END_STATE(); case 380: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(381); if (lookahead == '/') ADVANCE(390); if (lookahead != 0 && lookahead != '`') ADVANCE(426); END_STATE(); case 381: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(379); if (lookahead == '/') ADVANCE(369); if (lookahead != 0 && lookahead != '`') ADVANCE(374); END_STATE(); case 382: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(368); if (lookahead == '/') ADVANCE(377); if (lookahead != 0 && lookahead != '`') ADVANCE(428); END_STATE(); case 383: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(385); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(427); END_STATE(); case 384: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(385); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 385: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(384); if (lookahead == '/') ADVANCE(387); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 386: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(389); if (lookahead == '/') ADVANCE(461); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 387: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(410); if (lookahead == '/') ADVANCE(411); if (lookahead != 0 && lookahead != '`') ADVANCE(377); END_STATE(); case 388: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(410); if (lookahead == '/') ADVANCE(411); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 389: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(386); if (lookahead == '/') ADVANCE(466); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 390: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(392); if (lookahead == '/') ADVANCE(390); if (lookahead != 0 && lookahead != '`') ADVANCE(426); END_STATE(); case 391: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(392); if (lookahead == '/') ADVANCE(390); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 392: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(391); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 393: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(395); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 394: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(395); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 395: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(394); if (lookahead == '/') ADVANCE(389); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 396: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(404); if (lookahead == '/') ADVANCE(453); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 397: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(414); if (lookahead == '/') ADVANCE(466); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 398: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(400); if (lookahead == '/') ADVANCE(398); if (lookahead != 0 && lookahead != '`') ADVANCE(367); END_STATE(); case 399: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(400); if (lookahead == '/') ADVANCE(398); if (lookahead != 0 && lookahead != '`') ADVANCE(454); END_STATE(); case 400: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(399); if (lookahead == '/') ADVANCE(437); if (lookahead != 0 && lookahead != '`') ADVANCE(454); END_STATE(); case 401: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(403); if (lookahead == '/') ADVANCE(401); if (lookahead != 0 && lookahead != '`') ADVANCE(374); END_STATE(); case 402: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(403); if (lookahead == '/') ADVANCE(401); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 403: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(402); if (lookahead == '/') ADVANCE(469); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 404: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(396); if (lookahead == '/') ADVANCE(450); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 405: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(407); if (lookahead == '/') ADVANCE(405); if (lookahead != 0 && lookahead != '`') ADVANCE(372); END_STATE(); case 406: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(407); if (lookahead == '/') ADVANCE(405); if (lookahead != 0 && lookahead != '`') ADVANCE(460); END_STATE(); case 407: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(406); if (lookahead == '/') ADVANCE(393); if (lookahead != 0 && lookahead != '`') ADVANCE(460); END_STATE(); case 408: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(465); if (lookahead == '/') ADVANCE(408); if (lookahead != 0 && lookahead != '`') ADVANCE(428); END_STATE(); case 409: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(465); if (lookahead == '/') ADVANCE(408); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 410: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(388); if (lookahead == '/') ADVANCE(369); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 411: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(418); if (lookahead == '/') ADVANCE(411); if (lookahead != 0 && lookahead != '`') ADVANCE(377); END_STATE(); case 412: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(418); if (lookahead == '/') ADVANCE(411); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 413: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(438); if (lookahead == '/') ADVANCE(393); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 414: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(397); if (lookahead == '/') ADVANCE(389); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 415: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(417); if (lookahead == '/') ADVANCE(416); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 416: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(417); if (lookahead == '/') ADVANCE(416); if (lookahead != 0 && lookahead != '`') ADVANCE(460); END_STATE(); case 417: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(415); if (lookahead == '/') ADVANCE(397); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 418: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(412); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 419: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(440); if (lookahead == '/') ADVANCE(397); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 420: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(422); if (lookahead == '/') ADVANCE(439); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 421: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(420); if (lookahead == '/') ADVANCE(421); if (lookahead != 0 && lookahead != '`') ADVANCE(455); END_STATE(); case 422: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(420); if (lookahead == '/') ADVANCE(421); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 423: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(442); if (lookahead == '/') ADVANCE(424); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 424: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(447); if (lookahead == '/') ADVANCE(421); if (lookahead != 0 && lookahead != '`') ADVANCE(455); END_STATE(); case 425: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(447); if (lookahead == '/') ADVANCE(421); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 426: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(479); if (lookahead == '/') ADVANCE(390); if (lookahead != 0 && lookahead != '`') ADVANCE(426); END_STATE(); case 427: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(480); if (lookahead == '/') ADVANCE(383); if (lookahead != 0 && lookahead != '`') ADVANCE(427); END_STATE(); case 428: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(478); if (lookahead == '/') ADVANCE(408); if (lookahead != 0 && lookahead != '`') ADVANCE(428); END_STATE(); case 429: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(452); if (lookahead == '/') ADVANCE(455); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 430: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(432); if (lookahead == '/') ADVANCE(430); if (lookahead != 0 && lookahead != '`') ADVANCE(454); END_STATE(); case 431: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(432); if (lookahead == '/') ADVANCE(430); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 432: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(431); if (lookahead == '/') ADVANCE(439); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 433: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(446); if (lookahead == '/') ADVANCE(397); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 434: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(436); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 435: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(436); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 436: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(435); if (lookahead == '/') ADVANCE(462); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 437: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(413); if (lookahead == '/') ADVANCE(430); if (lookahead != 0 && lookahead != '`') ADVANCE(454); END_STATE(); case 438: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(413); if (lookahead == '/') ADVANCE(430); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 439: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(419); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 440: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(419); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 441: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(423); if (lookahead == '/') ADVANCE(441); if (lookahead != 0 && lookahead != '`') ADVANCE(458); END_STATE(); case 442: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(423); if (lookahead == '/') ADVANCE(441); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 443: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(483); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 444: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(485); if (lookahead == '/') ADVANCE(446); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 445: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(464); if (lookahead == '/') ADVANCE(455); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 446: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(433); if (lookahead == '/') ADVANCE(446); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 447: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(425); if (lookahead == '/') ADVANCE(393); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 448: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(487); if (lookahead == '/') ADVANCE(450); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 449: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(467); if (lookahead == '/') ADVANCE(450); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 450: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(467); if (lookahead == '/') ADVANCE(450); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 451: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(474); if (lookahead == '/') ADVANCE(376); if (lookahead != 0 && lookahead != '`') ADVANCE(451); END_STATE(); case 452: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(429); if (lookahead == '/') ADVANCE(416); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 453: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(429); if (lookahead == '/') ADVANCE(416); if (lookahead != 0 && lookahead != '`') ADVANCE(460); END_STATE(); case 454: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(476); if (lookahead == '/') ADVANCE(430); if (lookahead != 0 && lookahead != '`') ADVANCE(454); END_STATE(); case 455: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(488); if (lookahead == '/') ADVANCE(421); if (lookahead != 0 && lookahead != '`') ADVANCE(455); END_STATE(); case 456: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(469); if (lookahead == '/') ADVANCE(457); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 457: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(468); if (lookahead == '/') ADVANCE(466); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 458: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(481); if (lookahead == '/') ADVANCE(441); if (lookahead != 0 && lookahead != '`') ADVANCE(458); END_STATE(); case 459: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(466); if (lookahead == '/') ADVANCE(462); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 460: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(484); if (lookahead == '/') ADVANCE(416); if (lookahead != 0 && lookahead != '`') ADVANCE(460); END_STATE(); case 461: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(486); if (lookahead == '/') ADVANCE(466); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 462: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(470); if (lookahead == '/') ADVANCE(466); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 463: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(445); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 464: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(445); if (lookahead == '/') ADVANCE(434); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 465: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(409); if (lookahead == '/') ADVANCE(404); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 466: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(459); if (lookahead == '/') ADVANCE(466); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 467: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(449); if (lookahead == '/') ADVANCE(469); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 468: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(457); if (lookahead == '/') ADVANCE(463); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 469: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(456); if (lookahead == '/') ADVANCE(446); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 470: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '+') ADVANCE(462); if (lookahead == '/') ADVANCE(397); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 471: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(363); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(471); if (lookahead != 0 && lookahead != '`') ADVANCE(490); END_STATE(); case 472: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(490); if (lookahead != 0 && lookahead != '`') ADVANCE(366); END_STATE(); case 473: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(366); if (lookahead != 0 && lookahead != '`') ADVANCE(367); END_STATE(); case 474: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(366); if (lookahead != 0 && lookahead != '`') ADVANCE(451); END_STATE(); case 475: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(367); if (lookahead != 0 && lookahead != '`') ADVANCE(372); END_STATE(); case 476: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(367); if (lookahead != 0 && lookahead != '`') ADVANCE(454); END_STATE(); case 477: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(372); if (lookahead != 0 && lookahead != '`') ADVANCE(374); END_STATE(); case 478: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(374); if (lookahead != 0 && lookahead != '`') ADVANCE(428); END_STATE(); case 479: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(451); if (lookahead != 0 && lookahead != '`') ADVANCE(426); END_STATE(); case 480: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(426); if (lookahead != 0 && lookahead != '`') ADVANCE(427); END_STATE(); case 481: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(426); if (lookahead != 0 && lookahead != '`') ADVANCE(458); END_STATE(); case 482: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(427); if (lookahead != 0 && lookahead != '`') ADVANCE(377); END_STATE(); case 483: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(454); if (lookahead != 0 && lookahead != '`') ADVANCE(443); END_STATE(); case 484: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(454); if (lookahead != 0 && lookahead != '`') ADVANCE(460); END_STATE(); case 485: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(443); if (lookahead != 0 && lookahead != '`') ADVANCE(444); END_STATE(); case 486: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(443); if (lookahead != 0 && lookahead != '`') ADVANCE(461); END_STATE(); case 487: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(460); if (lookahead != 0 && lookahead != '`') ADVANCE(448); END_STATE(); case 488: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '/') ADVANCE(458); if (lookahead != 0 && lookahead != '`') ADVANCE(455); END_STATE(); case 489: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead == '\\') ADVANCE(362); if (lookahead != 0 && lookahead != '`') ADVANCE(361); END_STATE(); case 490: ACCEPT_TOKEN(aux_sym_raw_string_token1); if (lookahead != 0 && lookahead != '`') ADVANCE(490); END_STATE(); case 491: ACCEPT_TOKEN(aux_sym_raw_string_token2); END_STATE(); case 492: ACCEPT_TOKEN(aux_sym_raw_string_token2); if (lookahead == 'c' || lookahead == 'd' || lookahead == 'w') ADVANCE(491); END_STATE(); case 493: ACCEPT_TOKEN(anon_sym_r_DQUOTE); END_STATE(); case 494: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '\n') ADVANCE(623); if (lookahead == '\\') ADVANCE(495); if (lookahead != 0 && lookahead != '"') ADVANCE(494); END_STATE(); case 495: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '\r') ADVANCE(622); if (lookahead == '\\') ADVANCE(495); if (lookahead != 0 && lookahead != '"') ADVANCE(494); END_STATE(); case 496: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '*') ADVANCE(498); if (lookahead == '+') ADVANCE(499); if (lookahead == '/') ADVANCE(494); if (lookahead != 0 && lookahead != '"') ADVANCE(623); END_STATE(); case 497: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '*') ADVANCE(497); if (lookahead == '/') ADVANCE(623); if (lookahead != 0 && lookahead != '"') ADVANCE(498); END_STATE(); case 498: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '*') ADVANCE(497); if (lookahead != 0 && lookahead != '"') ADVANCE(498); END_STATE(); case 499: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(605); if (lookahead == '/') ADVANCE(503); if (lookahead != 0 && lookahead != '"') ADVANCE(499); END_STATE(); case 500: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(606); if (lookahead == '/') ADVANCE(531); if (lookahead != 0 && lookahead != '"') ADVANCE(500); END_STATE(); case 501: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(515); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(561); END_STATE(); case 502: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(515); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(560); END_STATE(); case 503: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(506); if (lookahead == '/') ADVANCE(503); if (lookahead != 0 && lookahead != '"') ADVANCE(499); END_STATE(); case 504: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(506); if (lookahead == '/') ADVANCE(503); if (lookahead != 0 && lookahead != '"') ADVANCE(500); END_STATE(); case 505: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(608); if (lookahead == '/') ADVANCE(538); if (lookahead != 0 && lookahead != '"') ADVANCE(505); END_STATE(); case 506: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(504); if (lookahead == '/') ADVANCE(509); if (lookahead != 0 && lookahead != '"') ADVANCE(500); END_STATE(); case 507: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(610); if (lookahead == '/') ADVANCE(534); if (lookahead != 0 && lookahead != '"') ADVANCE(507); END_STATE(); case 508: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(511); if (lookahead == '/') ADVANCE(509); if (lookahead != 0 && lookahead != '"') ADVANCE(505); END_STATE(); case 509: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(511); if (lookahead == '/') ADVANCE(509); if (lookahead != 0 && lookahead != '"') ADVANCE(584); END_STATE(); case 510: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(615); if (lookahead == '/') ADVANCE(544); if (lookahead != 0 && lookahead != '"') ADVANCE(510); END_STATE(); case 511: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(508); if (lookahead == '/') ADVANCE(513); if (lookahead != 0 && lookahead != '"') ADVANCE(505); END_STATE(); case 512: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(514); if (lookahead == '/') ADVANCE(523); if (lookahead != 0 && lookahead != '"') ADVANCE(507); END_STATE(); case 513: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(514); if (lookahead == '/') ADVANCE(523); if (lookahead != 0 && lookahead != '"') ADVANCE(559); END_STATE(); case 514: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(512); if (lookahead == '/') ADVANCE(502); if (lookahead != 0 && lookahead != '"') ADVANCE(507); END_STATE(); case 515: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(501); if (lookahead == '/') ADVANCE(510); if (lookahead != 0 && lookahead != '"') ADVANCE(561); END_STATE(); case 516: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(518); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(560); END_STATE(); case 517: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(518); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 518: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(517); if (lookahead == '/') ADVANCE(520); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 519: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(522); if (lookahead == '/') ADVANCE(594); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 520: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(543); if (lookahead == '/') ADVANCE(544); if (lookahead != 0 && lookahead != '"') ADVANCE(510); END_STATE(); case 521: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(543); if (lookahead == '/') ADVANCE(544); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 522: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(519); if (lookahead == '/') ADVANCE(599); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 523: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(525); if (lookahead == '/') ADVANCE(523); if (lookahead != 0 && lookahead != '"') ADVANCE(559); END_STATE(); case 524: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(525); if (lookahead == '/') ADVANCE(523); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 525: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(524); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 526: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(528); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 527: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(528); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 528: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(527); if (lookahead == '/') ADVANCE(522); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 529: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(537); if (lookahead == '/') ADVANCE(586); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 530: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(547); if (lookahead == '/') ADVANCE(599); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 531: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(533); if (lookahead == '/') ADVANCE(531); if (lookahead != 0 && lookahead != '"') ADVANCE(500); END_STATE(); case 532: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(533); if (lookahead == '/') ADVANCE(531); if (lookahead != 0 && lookahead != '"') ADVANCE(587); END_STATE(); case 533: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(532); if (lookahead == '/') ADVANCE(570); if (lookahead != 0 && lookahead != '"') ADVANCE(587); END_STATE(); case 534: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(536); if (lookahead == '/') ADVANCE(534); if (lookahead != 0 && lookahead != '"') ADVANCE(507); END_STATE(); case 535: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(536); if (lookahead == '/') ADVANCE(534); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 536: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(535); if (lookahead == '/') ADVANCE(602); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 537: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(529); if (lookahead == '/') ADVANCE(583); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 538: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(540); if (lookahead == '/') ADVANCE(538); if (lookahead != 0 && lookahead != '"') ADVANCE(505); END_STATE(); case 539: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(540); if (lookahead == '/') ADVANCE(538); if (lookahead != 0 && lookahead != '"') ADVANCE(593); END_STATE(); case 540: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(539); if (lookahead == '/') ADVANCE(526); if (lookahead != 0 && lookahead != '"') ADVANCE(593); END_STATE(); case 541: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(598); if (lookahead == '/') ADVANCE(541); if (lookahead != 0 && lookahead != '"') ADVANCE(561); END_STATE(); case 542: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(598); if (lookahead == '/') ADVANCE(541); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 543: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(521); if (lookahead == '/') ADVANCE(502); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 544: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(551); if (lookahead == '/') ADVANCE(544); if (lookahead != 0 && lookahead != '"') ADVANCE(510); END_STATE(); case 545: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(551); if (lookahead == '/') ADVANCE(544); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 546: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(571); if (lookahead == '/') ADVANCE(526); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 547: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(530); if (lookahead == '/') ADVANCE(522); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 548: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(550); if (lookahead == '/') ADVANCE(549); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 549: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(550); if (lookahead == '/') ADVANCE(549); if (lookahead != 0 && lookahead != '"') ADVANCE(593); END_STATE(); case 550: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(548); if (lookahead == '/') ADVANCE(530); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 551: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(545); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 552: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(573); if (lookahead == '/') ADVANCE(530); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 553: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(555); if (lookahead == '/') ADVANCE(572); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 554: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(553); if (lookahead == '/') ADVANCE(554); if (lookahead != 0 && lookahead != '"') ADVANCE(588); END_STATE(); case 555: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(553); if (lookahead == '/') ADVANCE(554); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 556: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(575); if (lookahead == '/') ADVANCE(557); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 557: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(580); if (lookahead == '/') ADVANCE(554); if (lookahead != 0 && lookahead != '"') ADVANCE(588); END_STATE(); case 558: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(580); if (lookahead == '/') ADVANCE(554); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 559: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(612); if (lookahead == '/') ADVANCE(523); if (lookahead != 0 && lookahead != '"') ADVANCE(559); END_STATE(); case 560: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(613); if (lookahead == '/') ADVANCE(516); if (lookahead != 0 && lookahead != '"') ADVANCE(560); END_STATE(); case 561: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(611); if (lookahead == '/') ADVANCE(541); if (lookahead != 0 && lookahead != '"') ADVANCE(561); END_STATE(); case 562: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(585); if (lookahead == '/') ADVANCE(588); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 563: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(565); if (lookahead == '/') ADVANCE(563); if (lookahead != 0 && lookahead != '"') ADVANCE(587); END_STATE(); case 564: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(565); if (lookahead == '/') ADVANCE(563); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 565: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(564); if (lookahead == '/') ADVANCE(572); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 566: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(579); if (lookahead == '/') ADVANCE(530); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 567: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(569); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 568: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(569); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 569: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(568); if (lookahead == '/') ADVANCE(595); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 570: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(546); if (lookahead == '/') ADVANCE(563); if (lookahead != 0 && lookahead != '"') ADVANCE(587); END_STATE(); case 571: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(546); if (lookahead == '/') ADVANCE(563); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 572: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(552); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 573: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(552); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 574: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(556); if (lookahead == '/') ADVANCE(574); if (lookahead != 0 && lookahead != '"') ADVANCE(591); END_STATE(); case 575: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(556); if (lookahead == '/') ADVANCE(574); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 576: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(616); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 577: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(618); if (lookahead == '/') ADVANCE(579); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 578: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(597); if (lookahead == '/') ADVANCE(588); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 579: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(566); if (lookahead == '/') ADVANCE(579); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 580: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(558); if (lookahead == '/') ADVANCE(526); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 581: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(620); if (lookahead == '/') ADVANCE(583); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 582: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(600); if (lookahead == '/') ADVANCE(583); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 583: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(600); if (lookahead == '/') ADVANCE(583); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 584: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(607); if (lookahead == '/') ADVANCE(509); if (lookahead != 0 && lookahead != '"') ADVANCE(584); END_STATE(); case 585: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(562); if (lookahead == '/') ADVANCE(549); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 586: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(562); if (lookahead == '/') ADVANCE(549); if (lookahead != 0 && lookahead != '"') ADVANCE(593); END_STATE(); case 587: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(609); if (lookahead == '/') ADVANCE(563); if (lookahead != 0 && lookahead != '"') ADVANCE(587); END_STATE(); case 588: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(621); if (lookahead == '/') ADVANCE(554); if (lookahead != 0 && lookahead != '"') ADVANCE(588); END_STATE(); case 589: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(602); if (lookahead == '/') ADVANCE(590); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 590: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(601); if (lookahead == '/') ADVANCE(599); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 591: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(614); if (lookahead == '/') ADVANCE(574); if (lookahead != 0 && lookahead != '"') ADVANCE(591); END_STATE(); case 592: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(599); if (lookahead == '/') ADVANCE(595); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 593: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(617); if (lookahead == '/') ADVANCE(549); if (lookahead != 0 && lookahead != '"') ADVANCE(593); END_STATE(); case 594: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(619); if (lookahead == '/') ADVANCE(599); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 595: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(603); if (lookahead == '/') ADVANCE(599); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 596: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(578); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 597: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(578); if (lookahead == '/') ADVANCE(567); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 598: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(542); if (lookahead == '/') ADVANCE(537); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 599: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(592); if (lookahead == '/') ADVANCE(599); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 600: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(582); if (lookahead == '/') ADVANCE(602); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 601: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(590); if (lookahead == '/') ADVANCE(596); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 602: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(589); if (lookahead == '/') ADVANCE(579); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 603: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '+') ADVANCE(595); if (lookahead == '/') ADVANCE(530); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 604: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(496); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(604); if (lookahead != 0 && lookahead != '"') ADVANCE(623); END_STATE(); case 605: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(623); if (lookahead != 0 && lookahead != '"') ADVANCE(499); END_STATE(); case 606: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(499); if (lookahead != 0 && lookahead != '"') ADVANCE(500); END_STATE(); case 607: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(499); if (lookahead != 0 && lookahead != '"') ADVANCE(584); END_STATE(); case 608: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(500); if (lookahead != 0 && lookahead != '"') ADVANCE(505); END_STATE(); case 609: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(500); if (lookahead != 0 && lookahead != '"') ADVANCE(587); END_STATE(); case 610: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(505); if (lookahead != 0 && lookahead != '"') ADVANCE(507); END_STATE(); case 611: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(507); if (lookahead != 0 && lookahead != '"') ADVANCE(561); END_STATE(); case 612: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(584); if (lookahead != 0 && lookahead != '"') ADVANCE(559); END_STATE(); case 613: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(559); if (lookahead != 0 && lookahead != '"') ADVANCE(560); END_STATE(); case 614: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(559); if (lookahead != 0 && lookahead != '"') ADVANCE(591); END_STATE(); case 615: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(560); if (lookahead != 0 && lookahead != '"') ADVANCE(510); END_STATE(); case 616: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(587); if (lookahead != 0 && lookahead != '"') ADVANCE(576); END_STATE(); case 617: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(587); if (lookahead != 0 && lookahead != '"') ADVANCE(593); END_STATE(); case 618: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(576); if (lookahead != 0 && lookahead != '"') ADVANCE(577); END_STATE(); case 619: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(576); if (lookahead != 0 && lookahead != '"') ADVANCE(594); END_STATE(); case 620: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(593); if (lookahead != 0 && lookahead != '"') ADVANCE(581); END_STATE(); case 621: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '/') ADVANCE(591); if (lookahead != 0 && lookahead != '"') ADVANCE(588); END_STATE(); case 622: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead == '\\') ADVANCE(495); if (lookahead != 0 && lookahead != '"') ADVANCE(494); END_STATE(); case 623: ACCEPT_TOKEN(aux_sym_raw_string_token3); if (lookahead != 0 && lookahead != '"') ADVANCE(623); END_STATE(); case 624: ACCEPT_TOKEN(aux_sym_raw_string_token4); END_STATE(); case 625: ACCEPT_TOKEN(aux_sym_raw_string_token4); if (lookahead == 'c' || lookahead == 'd' || lookahead == 'w') ADVANCE(624); END_STATE(); case 626: ACCEPT_TOKEN(anon_sym_x_DQUOTE); END_STATE(); case 627: ACCEPT_TOKEN(aux_sym_hex_string_token1); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE(627); if (lookahead == 0x0b || lookahead == '\f' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(628); END_STATE(); case 628: ACCEPT_TOKEN(aux_sym_hex_string_token1); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(628); END_STATE(); case 629: ACCEPT_TOKEN(anon_sym_DQUOTE); END_STATE(); case 630: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '\n') ADVANCE(757); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(630); END_STATE(); case 631: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '*') ADVANCE(633); if (lookahead == '+') ADVANCE(634); if (lookahead == '/') ADVANCE(630); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(757); END_STATE(); case 632: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '*') ADVANCE(632); if (lookahead == '/') ADVANCE(757); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(633); END_STATE(); case 633: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '*') ADVANCE(632); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(633); END_STATE(); case 634: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(740); if (lookahead == '/') ADVANCE(638); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(634); END_STATE(); case 635: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(741); if (lookahead == '/') ADVANCE(666); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(635); END_STATE(); case 636: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(650); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(696); END_STATE(); case 637: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(650); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(695); END_STATE(); case 638: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(641); if (lookahead == '/') ADVANCE(638); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(634); END_STATE(); case 639: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(641); if (lookahead == '/') ADVANCE(638); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(635); END_STATE(); case 640: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(743); if (lookahead == '/') ADVANCE(673); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(640); END_STATE(); case 641: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(639); if (lookahead == '/') ADVANCE(644); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(635); END_STATE(); case 642: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(745); if (lookahead == '/') ADVANCE(669); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(642); END_STATE(); case 643: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(646); if (lookahead == '/') ADVANCE(644); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(640); END_STATE(); case 644: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(646); if (lookahead == '/') ADVANCE(644); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(719); END_STATE(); case 645: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(750); if (lookahead == '/') ADVANCE(679); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(645); END_STATE(); case 646: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(643); if (lookahead == '/') ADVANCE(648); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(640); END_STATE(); case 647: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(649); if (lookahead == '/') ADVANCE(658); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(642); END_STATE(); case 648: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(649); if (lookahead == '/') ADVANCE(658); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(694); END_STATE(); case 649: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(647); if (lookahead == '/') ADVANCE(637); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(642); END_STATE(); case 650: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(636); if (lookahead == '/') ADVANCE(645); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(696); END_STATE(); case 651: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(653); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(695); END_STATE(); case 652: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(653); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 653: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(652); if (lookahead == '/') ADVANCE(655); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 654: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(657); if (lookahead == '/') ADVANCE(729); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 655: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(678); if (lookahead == '/') ADVANCE(679); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(645); END_STATE(); case 656: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(678); if (lookahead == '/') ADVANCE(679); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 657: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(654); if (lookahead == '/') ADVANCE(734); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 658: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(660); if (lookahead == '/') ADVANCE(658); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(694); END_STATE(); case 659: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(660); if (lookahead == '/') ADVANCE(658); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 660: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(659); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 661: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(663); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 662: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(663); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 663: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(662); if (lookahead == '/') ADVANCE(657); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 664: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(672); if (lookahead == '/') ADVANCE(721); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 665: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(682); if (lookahead == '/') ADVANCE(734); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 666: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(668); if (lookahead == '/') ADVANCE(666); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(635); END_STATE(); case 667: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(668); if (lookahead == '/') ADVANCE(666); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(722); END_STATE(); case 668: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(667); if (lookahead == '/') ADVANCE(705); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(722); END_STATE(); case 669: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(671); if (lookahead == '/') ADVANCE(669); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(642); END_STATE(); case 670: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(671); if (lookahead == '/') ADVANCE(669); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 671: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(670); if (lookahead == '/') ADVANCE(737); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 672: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(664); if (lookahead == '/') ADVANCE(718); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 673: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(675); if (lookahead == '/') ADVANCE(673); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(640); END_STATE(); case 674: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(675); if (lookahead == '/') ADVANCE(673); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(728); END_STATE(); case 675: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(674); if (lookahead == '/') ADVANCE(661); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(728); END_STATE(); case 676: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(733); if (lookahead == '/') ADVANCE(676); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(696); END_STATE(); case 677: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(733); if (lookahead == '/') ADVANCE(676); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 678: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(656); if (lookahead == '/') ADVANCE(637); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 679: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(686); if (lookahead == '/') ADVANCE(679); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(645); END_STATE(); case 680: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(686); if (lookahead == '/') ADVANCE(679); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 681: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(706); if (lookahead == '/') ADVANCE(661); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 682: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(665); if (lookahead == '/') ADVANCE(657); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 683: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(685); if (lookahead == '/') ADVANCE(684); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 684: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(685); if (lookahead == '/') ADVANCE(684); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(728); END_STATE(); case 685: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(683); if (lookahead == '/') ADVANCE(665); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 686: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(680); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 687: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(708); if (lookahead == '/') ADVANCE(665); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 688: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(690); if (lookahead == '/') ADVANCE(707); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 689: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(688); if (lookahead == '/') ADVANCE(689); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(723); END_STATE(); case 690: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(688); if (lookahead == '/') ADVANCE(689); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 691: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(710); if (lookahead == '/') ADVANCE(692); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 692: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(715); if (lookahead == '/') ADVANCE(689); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(723); END_STATE(); case 693: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(715); if (lookahead == '/') ADVANCE(689); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 694: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(747); if (lookahead == '/') ADVANCE(658); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(694); END_STATE(); case 695: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(748); if (lookahead == '/') ADVANCE(651); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(695); END_STATE(); case 696: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(746); if (lookahead == '/') ADVANCE(676); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(696); END_STATE(); case 697: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(720); if (lookahead == '/') ADVANCE(723); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 698: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(700); if (lookahead == '/') ADVANCE(698); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(722); END_STATE(); case 699: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(700); if (lookahead == '/') ADVANCE(698); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 700: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(699); if (lookahead == '/') ADVANCE(707); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 701: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(714); if (lookahead == '/') ADVANCE(665); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 702: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(704); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 703: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(704); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 704: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(703); if (lookahead == '/') ADVANCE(730); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 705: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(681); if (lookahead == '/') ADVANCE(698); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(722); END_STATE(); case 706: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(681); if (lookahead == '/') ADVANCE(698); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 707: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(687); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 708: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(687); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 709: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(691); if (lookahead == '/') ADVANCE(709); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(726); END_STATE(); case 710: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(691); if (lookahead == '/') ADVANCE(709); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 711: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(751); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 712: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(753); if (lookahead == '/') ADVANCE(714); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 713: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(732); if (lookahead == '/') ADVANCE(723); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 714: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(701); if (lookahead == '/') ADVANCE(714); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 715: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(693); if (lookahead == '/') ADVANCE(661); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 716: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(755); if (lookahead == '/') ADVANCE(718); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 717: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(735); if (lookahead == '/') ADVANCE(718); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 718: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(735); if (lookahead == '/') ADVANCE(718); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 719: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(742); if (lookahead == '/') ADVANCE(644); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(719); END_STATE(); case 720: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(697); if (lookahead == '/') ADVANCE(684); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 721: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(697); if (lookahead == '/') ADVANCE(684); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(728); END_STATE(); case 722: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(744); if (lookahead == '/') ADVANCE(698); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(722); END_STATE(); case 723: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(756); if (lookahead == '/') ADVANCE(689); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(723); END_STATE(); case 724: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(737); if (lookahead == '/') ADVANCE(725); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 725: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(736); if (lookahead == '/') ADVANCE(734); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 726: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(749); if (lookahead == '/') ADVANCE(709); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(726); END_STATE(); case 727: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(734); if (lookahead == '/') ADVANCE(730); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 728: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(752); if (lookahead == '/') ADVANCE(684); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(728); END_STATE(); case 729: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(754); if (lookahead == '/') ADVANCE(734); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 730: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(738); if (lookahead == '/') ADVANCE(734); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 731: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(713); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 732: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(713); if (lookahead == '/') ADVANCE(702); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 733: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(677); if (lookahead == '/') ADVANCE(672); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 734: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(727); if (lookahead == '/') ADVANCE(734); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 735: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(717); if (lookahead == '/') ADVANCE(737); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 736: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(725); if (lookahead == '/') ADVANCE(731); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 737: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(724); if (lookahead == '/') ADVANCE(714); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 738: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '+') ADVANCE(730); if (lookahead == '/') ADVANCE(665); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 739: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(631); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(739); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(757); END_STATE(); case 740: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(757); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(634); END_STATE(); case 741: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(634); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(635); END_STATE(); case 742: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(634); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(719); END_STATE(); case 743: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(635); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(640); END_STATE(); case 744: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(635); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(722); END_STATE(); case 745: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(640); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(642); END_STATE(); case 746: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(642); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(696); END_STATE(); case 747: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(719); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(694); END_STATE(); case 748: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(694); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(695); END_STATE(); case 749: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(694); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(726); END_STATE(); case 750: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(695); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(645); END_STATE(); case 751: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(722); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(711); END_STATE(); case 752: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(722); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(728); END_STATE(); case 753: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(711); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(712); END_STATE(); case 754: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(711); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(729); END_STATE(); case 755: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(728); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(716); END_STATE(); case 756: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead == '/') ADVANCE(726); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(723); END_STATE(); case 757: ACCEPT_TOKEN(aux_sym_quoted_string_token1); if (lookahead != 0 && lookahead != '"' && lookahead != '\\') ADVANCE(757); END_STATE(); case 758: ACCEPT_TOKEN(anon_sym_DOLLAR_LPAREN); END_STATE(); case 759: ACCEPT_TOKEN(anon_sym_i_BQUOTE); END_STATE(); case 760: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '\r') ADVANCE(269); if (lookahead == '\\') ADVANCE(191); if (lookahead == '$' || lookahead == '`') ADVANCE(267); if (lookahead != 0) ADVANCE(189); END_STATE(); case 761: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '*') ADVANCE(763); if (lookahead == '+') ADVANCE(764); if (lookahead == '/') ADVANCE(189); if (lookahead != 0 && lookahead != '$' && lookahead != '`') ADVANCE(881); END_STATE(); case 762: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '*') ADVANCE(762); if (lookahead == '/') ADVANCE(271); if (lookahead == '$' || lookahead == '`') ADVANCE(32); if (lookahead != 0) ADVANCE(763); END_STATE(); case 763: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '*') ADVANCE(762); if (lookahead == '$' || lookahead == '`') ADVANCE(32); if (lookahead != 0) ADVANCE(763); END_STATE(); case 764: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(865); if (lookahead == '/') ADVANCE(766); if (lookahead == '$' || lookahead == '`') ADVANCE(33); if (lookahead != 0) ADVANCE(764); END_STATE(); case 765: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(866); if (lookahead == '/') ADVANCE(773); if (lookahead == '$' || lookahead == '`') ADVANCE(34); if (lookahead != 0) ADVANCE(765); END_STATE(); case 766: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(771); if (lookahead == '/') ADVANCE(766); if (lookahead == '$' || lookahead == '`') ADVANCE(33); if (lookahead != 0) ADVANCE(764); END_STATE(); case 767: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(771); if (lookahead == '/') ADVANCE(766); if (lookahead == '$' || lookahead == '`') ADVANCE(34); if (lookahead != 0) ADVANCE(765); END_STATE(); case 768: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(864); if (lookahead == '/') ADVANCE(776); if (lookahead == '$' || lookahead == '`') ADVANCE(37); if (lookahead != 0) ADVANCE(768); END_STATE(); case 769: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(792); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(86); if (lookahead != 0) ADVANCE(817); END_STATE(); case 770: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(795); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 771: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(767); if (lookahead == '/') ADVANCE(217); if (lookahead == '$' || lookahead == '`') ADVANCE(34); if (lookahead != 0) ADVANCE(765); END_STATE(); case 772: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(867); if (lookahead == '/') ADVANCE(796); if (lookahead == '$' || lookahead == '`') ADVANCE(41); if (lookahead != 0) ADVANCE(772); END_STATE(); case 773: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(788); if (lookahead == '/') ADVANCE(773); if (lookahead == '$' || lookahead == '`') ADVANCE(34); if (lookahead != 0) ADVANCE(765); END_STATE(); case 774: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(788); if (lookahead == '/') ADVANCE(773); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 775: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(869); if (lookahead == '/') ADVANCE(826); if (lookahead == '$' || lookahead == '`') ADVANCE(44); if (lookahead != 0) ADVANCE(775); END_STATE(); case 776: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(800); if (lookahead == '/') ADVANCE(776); if (lookahead == '$' || lookahead == '`') ADVANCE(37); if (lookahead != 0) ADVANCE(768); END_STATE(); case 777: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(800); if (lookahead == '/') ADVANCE(776); if (lookahead == '$' || lookahead == '`') ADVANCE(44); if (lookahead != 0) ADVANCE(775); END_STATE(); case 778: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(868); if (lookahead == '/') ADVANCE(814); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 779: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(789); if (lookahead == '/') ADVANCE(796); if (lookahead == '$' || lookahead == '`') ADVANCE(41); if (lookahead != 0) ADVANCE(772); END_STATE(); case 780: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(789); if (lookahead == '/') ADVANCE(796); if (lookahead == '$' || lookahead == '`') ADVANCE(51); if (lookahead != 0) ADVANCE(782); END_STATE(); case 781: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(874); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(50); if (lookahead != 0) ADVANCE(781); END_STATE(); case 782: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(870); if (lookahead == '/') ADVANCE(812); if (lookahead == '$' || lookahead == '`') ADVANCE(51); if (lookahead != 0) ADVANCE(782); END_STATE(); case 783: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(806); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 784: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(806); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 785: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(871); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 786: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(872); if (lookahead == '/') ADVANCE(822); if (lookahead == '$' || lookahead == '`') ADVANCE(55); if (lookahead != 0) ADVANCE(786); END_STATE(); case 787: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(873); if (lookahead == '/') ADVANCE(840); if (lookahead == '$' || lookahead == '`') ADVANCE(56); if (lookahead != 0) ADVANCE(787); END_STATE(); case 788: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(774); if (lookahead == '/') ADVANCE(236); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 789: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(780); if (lookahead == '/') ADVANCE(203); if (lookahead == '$' || lookahead == '`') ADVANCE(51); if (lookahead != 0) ADVANCE(782); END_STATE(); case 790: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(797); if (lookahead == '/') ADVANCE(254); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 791: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(799); if (lookahead == '/') ADVANCE(224); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 792: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(769); if (lookahead == '/') ADVANCE(786); if (lookahead == '$' || lookahead == '`') ADVANCE(86); if (lookahead != 0) ADVANCE(817); END_STATE(); case 793: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(813); if (lookahead == '/') ADVANCE(266); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 794: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(823); if (lookahead == '/') ADVANCE(254); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 795: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(770); if (lookahead == '/') ADVANCE(242); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 796: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(790); if (lookahead == '/') ADVANCE(796); if (lookahead == '$' || lookahead == '`') ADVANCE(41); if (lookahead != 0) ADVANCE(772); END_STATE(); case 797: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(790); if (lookahead == '/') ADVANCE(796); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 798: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(807); if (lookahead == '/') ADVANCE(844); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 799: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(791); if (lookahead == '/') ADVANCE(814); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 800: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(777); if (lookahead == '/') ADVANCE(779); if (lookahead == '$' || lookahead == '`') ADVANCE(44); if (lookahead != 0) ADVANCE(775); END_STATE(); case 801: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(821); if (lookahead == '/') ADVANCE(822); if (lookahead == '$' || lookahead == '`') ADVANCE(55); if (lookahead != 0) ADVANCE(786); END_STATE(); case 802: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(821); if (lookahead == '/') ADVANCE(822); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 803: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(875); if (lookahead == '/') ADVANCE(844); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 804: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(878); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 805: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(879); if (lookahead == '/') ADVANCE(830); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 806: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(784); if (lookahead == '/') ADVANCE(206); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 807: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(798); if (lookahead == '/') ADVANCE(818); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 808: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(833); if (lookahead == '/') ADVANCE(251); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 809: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(816); if (lookahead == '/') ADVANCE(233); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 810: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(829); if (lookahead == '/') ADVANCE(266); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 811: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(851); if (lookahead == '/') ADVANCE(245); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 812: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(793); if (lookahead == '/') ADVANCE(812); if (lookahead == '$' || lookahead == '`') ADVANCE(51); if (lookahead != 0) ADVANCE(782); END_STATE(); case 813: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(793); if (lookahead == '/') ADVANCE(812); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 814: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(853); if (lookahead == '/') ADVANCE(814); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 815: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(853); if (lookahead == '/') ADVANCE(814); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 816: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(809); if (lookahead == '/') ADVANCE(830); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 817: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(876); if (lookahead == '/') ADVANCE(846); if (lookahead == '$' || lookahead == '`') ADVANCE(86); if (lookahead != 0) ADVANCE(817); END_STATE(); case 818: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(880); if (lookahead == '/') ADVANCE(839); if (lookahead == '$' || lookahead == '`') ADVANCE(87); if (lookahead != 0) ADVANCE(818); END_STATE(); case 819: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(852); if (lookahead == '/') ADVANCE(206); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 820: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(825); if (lookahead == '/') ADVANCE(251); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 821: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(802); if (lookahead == '/') ADVANCE(203); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 822: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(794); if (lookahead == '/') ADVANCE(822); if (lookahead == '$' || lookahead == '`') ADVANCE(55); if (lookahead != 0) ADVANCE(786); END_STATE(); case 823: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(794); if (lookahead == '/') ADVANCE(822); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 824: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(820); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 825: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(820); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 826: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(834); if (lookahead == '/') ADVANCE(826); if (lookahead == '$' || lookahead == '`') ADVANCE(44); if (lookahead != 0) ADVANCE(775); END_STATE(); case 827: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(834); if (lookahead == '/') ADVANCE(826); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 828: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(877); if (lookahead == '/') ADVANCE(861); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 829: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(810); if (lookahead == '/') ADVANCE(830); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 830: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(810); if (lookahead == '/') ADVANCE(830); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 831: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(855); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 832: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(841); if (lookahead == '/') ADVANCE(257); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 833: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(808); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 834: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(827); if (lookahead == '/') ADVANCE(783); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 835: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(854); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 836: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(843); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(50); if (lookahead != 0) ADVANCE(781); END_STATE(); case 837: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(843); if (lookahead == '/') ADVANCE(836); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 838: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(858); if (lookahead == '/') ADVANCE(839); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 839: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(858); if (lookahead == '/') ADVANCE(839); if (lookahead == '$' || lookahead == '`') ADVANCE(87); if (lookahead != 0) ADVANCE(818); END_STATE(); case 840: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(832); if (lookahead == '/') ADVANCE(840); if (lookahead == '$' || lookahead == '`') ADVANCE(56); if (lookahead != 0) ADVANCE(787); END_STATE(); case 841: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(832); if (lookahead == '/') ADVANCE(840); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 842: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(859); if (lookahead == '/') ADVANCE(839); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 843: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(837); if (lookahead == '/') ADVANCE(801); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 844: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(849); if (lookahead == '/') ADVANCE(844); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 845: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(849); if (lookahead == '/') ADVANCE(844); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 846: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(850); if (lookahead == '/') ADVANCE(846); if (lookahead == '$' || lookahead == '`') ADVANCE(86); if (lookahead != 0) ADVANCE(817); END_STATE(); case 847: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(850); if (lookahead == '/') ADVANCE(846); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 848: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(861); if (lookahead == '/') ADVANCE(852); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 849: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(845); if (lookahead == '/') ADVANCE(852); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 850: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(847); if (lookahead == '/') ADVANCE(816); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 851: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(811); if (lookahead == '/') ADVANCE(824); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 852: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(819); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 853: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(815); if (lookahead == '/') ADVANCE(248); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 854: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(835); if (lookahead == '/') ADVANCE(263); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 855: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(831); if (lookahead == '/') ADVANCE(263); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 856: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(862); if (lookahead == '/') ADVANCE(861); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 857: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(860); if (lookahead == '/') ADVANCE(833); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 858: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(838); if (lookahead == '/') ADVANCE(248); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 859: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(842); if (lookahead == '/') ADVANCE(224); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 860: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(857); if (lookahead == '/') ADVANCE(260); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 861: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(848); if (lookahead == '/') ADVANCE(861); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 862: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '+') ADVANCE(856); if (lookahead == '/') ADVANCE(857); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 863: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(761); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(863); if (lookahead != 0 && lookahead != '$' && lookahead != '`') ADVANCE(881); END_STATE(); case 864: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(764); if (lookahead == '$' || lookahead == '`') ADVANCE(37); if (lookahead != 0) ADVANCE(768); END_STATE(); case 865: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(271); if (lookahead == '$' || lookahead == '`') ADVANCE(33); if (lookahead != 0) ADVANCE(764); END_STATE(); case 866: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(194); if (lookahead == '$' || lookahead == '`') ADVANCE(34); if (lookahead != 0) ADVANCE(765); END_STATE(); case 867: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(200); if (lookahead == '$' || lookahead == '`') ADVANCE(41); if (lookahead != 0) ADVANCE(772); END_STATE(); case 868: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(197); if (lookahead == '$' || lookahead == '`') ADVANCE(47); if (lookahead != 0) ADVANCE(778); END_STATE(); case 869: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(765); if (lookahead == '$' || lookahead == '`') ADVANCE(44); if (lookahead != 0) ADVANCE(775); END_STATE(); case 870: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(212); if (lookahead == '$' || lookahead == '`') ADVANCE(51); if (lookahead != 0) ADVANCE(782); END_STATE(); case 871: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(218); if (lookahead == '$' || lookahead == '`') ADVANCE(54); if (lookahead != 0) ADVANCE(785); END_STATE(); case 872: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(221); if (lookahead == '$' || lookahead == '`') ADVANCE(55); if (lookahead != 0) ADVANCE(786); END_STATE(); case 873: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(209); if (lookahead == '$' || lookahead == '`') ADVANCE(56); if (lookahead != 0) ADVANCE(787); END_STATE(); case 874: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(772); if (lookahead == '$' || lookahead == '`') ADVANCE(50); if (lookahead != 0) ADVANCE(781); END_STATE(); case 875: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(778); if (lookahead == '$' || lookahead == '`') ADVANCE(72); if (lookahead != 0) ADVANCE(803); END_STATE(); case 876: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(782); if (lookahead == '$' || lookahead == '`') ADVANCE(86); if (lookahead != 0) ADVANCE(817); END_STATE(); case 877: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(785); if (lookahead == '$' || lookahead == '`') ADVANCE(97); if (lookahead != 0) ADVANCE(828); END_STATE(); case 878: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(227); if (lookahead == '$' || lookahead == '`') ADVANCE(73); if (lookahead != 0) ADVANCE(804); END_STATE(); case 879: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(239); if (lookahead == '$' || lookahead == '`') ADVANCE(74); if (lookahead != 0) ADVANCE(805); END_STATE(); case 880: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead == '/') ADVANCE(230); if (lookahead == '$' || lookahead == '`') ADVANCE(87); if (lookahead != 0) ADVANCE(818); END_STATE(); case 881: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token1); if (lookahead != 0 && lookahead != '$' && lookahead != '`') ADVANCE(881); END_STATE(); case 882: ACCEPT_TOKEN(aux_sym_interpolated_raw_string_token2); END_STATE(); case 883: ACCEPT_TOKEN(anon_sym_DOLLAR_BQUOTE); END_STATE(); case 884: ACCEPT_TOKEN(sym_interpolated_escape); END_STATE(); case 885: ACCEPT_TOKEN(anon_sym_i_DQUOTE); END_STATE(); case 886: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '*') ADVANCE(888); if (lookahead == '+') ADVANCE(889); if (lookahead == '/') ADVANCE(188); if (lookahead != 0 && lookahead != '"' && lookahead != '$' && lookahead != '\\') ADVANCE(1006); END_STATE(); case 887: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '*') ADVANCE(887); if (lookahead == '/') ADVANCE(270); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(32); if (lookahead != 0) ADVANCE(888); END_STATE(); case 888: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '*') ADVANCE(887); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(32); if (lookahead != 0) ADVANCE(888); END_STATE(); case 889: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(990); if (lookahead == '/') ADVANCE(891); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(33); if (lookahead != 0) ADVANCE(889); END_STATE(); case 890: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(991); if (lookahead == '/') ADVANCE(898); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(34); if (lookahead != 0) ADVANCE(890); END_STATE(); case 891: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(896); if (lookahead == '/') ADVANCE(891); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(33); if (lookahead != 0) ADVANCE(889); END_STATE(); case 892: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(896); if (lookahead == '/') ADVANCE(891); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(34); if (lookahead != 0) ADVANCE(890); END_STATE(); case 893: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(989); if (lookahead == '/') ADVANCE(901); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(37); if (lookahead != 0) ADVANCE(893); END_STATE(); case 894: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(917); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(86); if (lookahead != 0) ADVANCE(942); END_STATE(); case 895: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(920); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 896: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(892); if (lookahead == '/') ADVANCE(215); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(34); if (lookahead != 0) ADVANCE(890); END_STATE(); case 897: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(992); if (lookahead == '/') ADVANCE(921); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(41); if (lookahead != 0) ADVANCE(897); END_STATE(); case 898: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(913); if (lookahead == '/') ADVANCE(898); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(34); if (lookahead != 0) ADVANCE(890); END_STATE(); case 899: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(913); if (lookahead == '/') ADVANCE(898); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 900: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(994); if (lookahead == '/') ADVANCE(951); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(44); if (lookahead != 0) ADVANCE(900); END_STATE(); case 901: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(925); if (lookahead == '/') ADVANCE(901); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(37); if (lookahead != 0) ADVANCE(893); END_STATE(); case 902: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(925); if (lookahead == '/') ADVANCE(901); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(44); if (lookahead != 0) ADVANCE(900); END_STATE(); case 903: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(993); if (lookahead == '/') ADVANCE(939); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 904: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(914); if (lookahead == '/') ADVANCE(921); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(41); if (lookahead != 0) ADVANCE(897); END_STATE(); case 905: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(914); if (lookahead == '/') ADVANCE(921); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(51); if (lookahead != 0) ADVANCE(907); END_STATE(); case 906: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(999); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(50); if (lookahead != 0) ADVANCE(906); END_STATE(); case 907: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(995); if (lookahead == '/') ADVANCE(937); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(51); if (lookahead != 0) ADVANCE(907); END_STATE(); case 908: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(931); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 909: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(931); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 910: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(996); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 911: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(997); if (lookahead == '/') ADVANCE(947); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(55); if (lookahead != 0) ADVANCE(911); END_STATE(); case 912: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(998); if (lookahead == '/') ADVANCE(965); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(56); if (lookahead != 0) ADVANCE(912); END_STATE(); case 913: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(899); if (lookahead == '/') ADVANCE(235); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 914: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(905); if (lookahead == '/') ADVANCE(202); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(51); if (lookahead != 0) ADVANCE(907); END_STATE(); case 915: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(922); if (lookahead == '/') ADVANCE(253); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 916: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(924); if (lookahead == '/') ADVANCE(223); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 917: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(894); if (lookahead == '/') ADVANCE(911); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(86); if (lookahead != 0) ADVANCE(942); END_STATE(); case 918: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(938); if (lookahead == '/') ADVANCE(265); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 919: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(948); if (lookahead == '/') ADVANCE(253); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 920: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(895); if (lookahead == '/') ADVANCE(241); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 921: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(915); if (lookahead == '/') ADVANCE(921); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(41); if (lookahead != 0) ADVANCE(897); END_STATE(); case 922: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(915); if (lookahead == '/') ADVANCE(921); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 923: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(932); if (lookahead == '/') ADVANCE(969); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 924: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(916); if (lookahead == '/') ADVANCE(939); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 925: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(902); if (lookahead == '/') ADVANCE(904); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(44); if (lookahead != 0) ADVANCE(900); END_STATE(); case 926: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(946); if (lookahead == '/') ADVANCE(947); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(55); if (lookahead != 0) ADVANCE(911); END_STATE(); case 927: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(946); if (lookahead == '/') ADVANCE(947); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 928: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(1000); if (lookahead == '/') ADVANCE(969); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 929: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(1003); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 930: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(1004); if (lookahead == '/') ADVANCE(955); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 931: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(909); if (lookahead == '/') ADVANCE(205); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 932: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(923); if (lookahead == '/') ADVANCE(943); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 933: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(958); if (lookahead == '/') ADVANCE(250); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 934: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(941); if (lookahead == '/') ADVANCE(232); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 935: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(954); if (lookahead == '/') ADVANCE(265); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 936: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(976); if (lookahead == '/') ADVANCE(244); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 937: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(918); if (lookahead == '/') ADVANCE(937); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(51); if (lookahead != 0) ADVANCE(907); END_STATE(); case 938: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(918); if (lookahead == '/') ADVANCE(937); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 939: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(978); if (lookahead == '/') ADVANCE(939); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 940: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(978); if (lookahead == '/') ADVANCE(939); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 941: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(934); if (lookahead == '/') ADVANCE(955); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 942: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(1001); if (lookahead == '/') ADVANCE(971); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(86); if (lookahead != 0) ADVANCE(942); END_STATE(); case 943: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(1005); if (lookahead == '/') ADVANCE(964); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(87); if (lookahead != 0) ADVANCE(943); END_STATE(); case 944: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(977); if (lookahead == '/') ADVANCE(205); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 945: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(950); if (lookahead == '/') ADVANCE(250); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 946: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(927); if (lookahead == '/') ADVANCE(202); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 947: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(919); if (lookahead == '/') ADVANCE(947); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(55); if (lookahead != 0) ADVANCE(911); END_STATE(); case 948: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(919); if (lookahead == '/') ADVANCE(947); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 949: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(945); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 950: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(945); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 951: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(959); if (lookahead == '/') ADVANCE(951); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(44); if (lookahead != 0) ADVANCE(900); END_STATE(); case 952: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(959); if (lookahead == '/') ADVANCE(951); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 953: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(1002); if (lookahead == '/') ADVANCE(986); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 954: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(935); if (lookahead == '/') ADVANCE(955); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 955: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(935); if (lookahead == '/') ADVANCE(955); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 956: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(980); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 957: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(966); if (lookahead == '/') ADVANCE(256); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 958: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(933); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 959: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(952); if (lookahead == '/') ADVANCE(908); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 960: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(979); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 961: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(968); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(50); if (lookahead != 0) ADVANCE(906); END_STATE(); case 962: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(968); if (lookahead == '/') ADVANCE(961); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 963: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(983); if (lookahead == '/') ADVANCE(964); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 964: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(983); if (lookahead == '/') ADVANCE(964); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(87); if (lookahead != 0) ADVANCE(943); END_STATE(); case 965: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(957); if (lookahead == '/') ADVANCE(965); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(56); if (lookahead != 0) ADVANCE(912); END_STATE(); case 966: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(957); if (lookahead == '/') ADVANCE(965); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 967: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(984); if (lookahead == '/') ADVANCE(964); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 968: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(962); if (lookahead == '/') ADVANCE(926); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 969: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(974); if (lookahead == '/') ADVANCE(969); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 970: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(974); if (lookahead == '/') ADVANCE(969); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 971: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(975); if (lookahead == '/') ADVANCE(971); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(86); if (lookahead != 0) ADVANCE(942); END_STATE(); case 972: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(975); if (lookahead == '/') ADVANCE(971); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 973: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(986); if (lookahead == '/') ADVANCE(977); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 974: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(970); if (lookahead == '/') ADVANCE(977); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 975: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(972); if (lookahead == '/') ADVANCE(941); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 976: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(936); if (lookahead == '/') ADVANCE(949); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 977: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(944); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 978: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(940); if (lookahead == '/') ADVANCE(247); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 979: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(960); if (lookahead == '/') ADVANCE(262); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 980: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(956); if (lookahead == '/') ADVANCE(262); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 981: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(987); if (lookahead == '/') ADVANCE(986); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 982: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(985); if (lookahead == '/') ADVANCE(958); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 983: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(963); if (lookahead == '/') ADVANCE(247); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 984: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(967); if (lookahead == '/') ADVANCE(223); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 985: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(982); if (lookahead == '/') ADVANCE(259); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 986: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(973); if (lookahead == '/') ADVANCE(986); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 987: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '+') ADVANCE(981); if (lookahead == '/') ADVANCE(982); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 988: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(886); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) ADVANCE(988); if (lookahead != 0 && lookahead != '"' && lookahead != '$' && lookahead != '\\') ADVANCE(1006); END_STATE(); case 989: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(889); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(37); if (lookahead != 0) ADVANCE(893); END_STATE(); case 990: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(270); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(33); if (lookahead != 0) ADVANCE(889); END_STATE(); case 991: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(193); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(34); if (lookahead != 0) ADVANCE(890); END_STATE(); case 992: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(199); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(41); if (lookahead != 0) ADVANCE(897); END_STATE(); case 993: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(196); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(47); if (lookahead != 0) ADVANCE(903); END_STATE(); case 994: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(890); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(44); if (lookahead != 0) ADVANCE(900); END_STATE(); case 995: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(211); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(51); if (lookahead != 0) ADVANCE(907); END_STATE(); case 996: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(216); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(54); if (lookahead != 0) ADVANCE(910); END_STATE(); case 997: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(220); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(55); if (lookahead != 0) ADVANCE(911); END_STATE(); case 998: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(208); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(56); if (lookahead != 0) ADVANCE(912); END_STATE(); case 999: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(897); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(50); if (lookahead != 0) ADVANCE(906); END_STATE(); case 1000: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(903); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(72); if (lookahead != 0) ADVANCE(928); END_STATE(); case 1001: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(907); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(86); if (lookahead != 0) ADVANCE(942); END_STATE(); case 1002: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(910); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(97); if (lookahead != 0) ADVANCE(953); END_STATE(); case 1003: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(226); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(73); if (lookahead != 0) ADVANCE(929); END_STATE(); case 1004: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(238); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(74); if (lookahead != 0) ADVANCE(930); END_STATE(); case 1005: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead == '/') ADVANCE(229); if (lookahead == '"' || lookahead == '$' || lookahead == '\\') ADVANCE(87); if (lookahead != 0) ADVANCE(943); END_STATE(); case 1006: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token1); if (lookahead != 0 && lookahead != '"' && lookahead != '$' && lookahead != '\\') ADVANCE(1006); END_STATE(); case 1007: ACCEPT_TOKEN(aux_sym_interpolated_quoted_string_token2); END_STATE(); case 1008: ACCEPT_TOKEN(anon_sym_DOLLAR_DQUOTE); END_STATE(); case 1009: ACCEPT_TOKEN(anon_sym_iq_LBRACE); END_STATE(); case 1010: ACCEPT_TOKEN(aux_sym_char_literal_token1); END_STATE(); case 1011: ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 1012: ACCEPT_TOKEN(anon_sym_SQUOTE); if (lookahead != 0 && lookahead != '\'' && lookahead != '\\') ADVANCE(27); 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( 'C', 1, 'D', 2, 'O', 3, 'S', 4, 'W', 5, '_', 6, 'a', 7, 'b', 8, 'c', 9, 'd', 10, 'e', 11, 'f', 12, 'g', 13, 'i', 14, 'l', 15, 'm', 16, 'n', 17, 'o', 18, 'p', 19, 'r', 20, 's', 21, 't', 22, 'u', 23, 'v', 24, 'w', 25, ); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ' || lookahead == 0x2028 || lookahead == 0x2029) SKIP(0); END_STATE(); case 1: ACCEPT_TOKEN(anon_sym_C); END_STATE(); case 2: ACCEPT_TOKEN(anon_sym_D); END_STATE(); case 3: if (lookahead == 'b') ADVANCE(26); END_STATE(); case 4: if (lookahead == 'y') ADVANCE(27); END_STATE(); case 5: if (lookahead == 'i') ADVANCE(28); END_STATE(); case 6: if (lookahead == '_') ADVANCE(29); END_STATE(); case 7: if (lookahead == 'b') ADVANCE(30); if (lookahead == 'l') ADVANCE(31); if (lookahead == 's') ADVANCE(32); if (lookahead == 'u') ADVANCE(33); END_STATE(); case 8: if (lookahead == 'o') ADVANCE(34); if (lookahead == 'r') ADVANCE(35); if (lookahead == 'y') ADVANCE(36); END_STATE(); case 9: ADVANCE_MAP( 'a', 37, 'd', 38, 'e', 39, 'f', 40, 'h', 41, 'l', 42, 'o', 43, 'r', 44, 's', 45, ); END_STATE(); case 10: if (lookahead == 'c') ADVANCE(46); if (lookahead == 'e') ADVANCE(47); if (lookahead == 'o') ADVANCE(48); if (lookahead == 's') ADVANCE(49); END_STATE(); case 11: if (lookahead == 'l') ADVANCE(50); if (lookahead == 'n') ADVANCE(51); if (lookahead == 'x') ADVANCE(52); END_STATE(); case 12: if (lookahead == 'a') ADVANCE(53); if (lookahead == 'i') ADVANCE(54); if (lookahead == 'l') ADVANCE(55); if (lookahead == 'o') ADVANCE(56); if (lookahead == 'u') ADVANCE(57); END_STATE(); case 13: if (lookahead == 'o') ADVANCE(58); END_STATE(); case 14: if (lookahead == 'd') ADVANCE(59); if (lookahead == 'f') ADVANCE(60); if (lookahead == 'm') ADVANCE(61); if (lookahead == 'n') ADVANCE(62); if (lookahead == 'r') ADVANCE(63); if (lookahead == 's') ADVANCE(64); END_STATE(); case 15: if (lookahead == 'a') ADVANCE(65); if (lookahead == 'o') ADVANCE(66); END_STATE(); case 16: if (lookahead == 'i') ADVANCE(67); if (lookahead == 'o') ADVANCE(68); END_STATE(); case 17: if (lookahead == 'e') ADVANCE(69); if (lookahead == 'o') ADVANCE(70); if (lookahead == 'u') ADVANCE(71); END_STATE(); case 18: if (lookahead == 'u') ADVANCE(72); if (lookahead == 'v') ADVANCE(73); END_STATE(); case 19: if (lookahead == 'a') ADVANCE(74); if (lookahead == 'r') ADVANCE(75); if (lookahead == 't') ADVANCE(76); if (lookahead == 'u') ADVANCE(77); END_STATE(); case 20: if (lookahead == 'e') ADVANCE(78); END_STATE(); case 21: if (lookahead == 'c') ADVANCE(79); if (lookahead == 'h') ADVANCE(80); if (lookahead == 'i') ADVANCE(81); if (lookahead == 't') ADVANCE(82); if (lookahead == 'u') ADVANCE(83); if (lookahead == 'w') ADVANCE(84); if (lookahead == 'y') ADVANCE(85); END_STATE(); case 22: if (lookahead == 'e') ADVANCE(86); if (lookahead == 'h') ADVANCE(87); if (lookahead == 'r') ADVANCE(88); if (lookahead == 'y') ADVANCE(89); END_STATE(); case 23: if (lookahead == 'b') ADVANCE(90); if (lookahead == 'c') ADVANCE(91); if (lookahead == 'i') ADVANCE(92); if (lookahead == 'l') ADVANCE(93); if (lookahead == 'n') ADVANCE(94); if (lookahead == 's') ADVANCE(95); END_STATE(); case 24: if (lookahead == 'e') ADVANCE(96); if (lookahead == 'o') ADVANCE(97); END_STATE(); case 25: if (lookahead == 'c') ADVANCE(98); if (lookahead == 'h') ADVANCE(99); if (lookahead == 'i') ADVANCE(100); if (lookahead == 's') ADVANCE(101); END_STATE(); case 26: if (lookahead == 'j') ADVANCE(102); END_STATE(); case 27: if (lookahead == 's') ADVANCE(103); END_STATE(); case 28: if (lookahead == 'n') ADVANCE(104); END_STATE(); case 29: ADVANCE_MAP( 'D', 105, 'F', 106, 'L', 107, 'M', 108, 'P', 109, 'T', 110, 'V', 111, 'g', 112, 'p', 113, 't', 114, 'v', 115, ); END_STATE(); case 30: if (lookahead == 's') ADVANCE(116); END_STATE(); case 31: if (lookahead == 'i') ADVANCE(117); END_STATE(); case 32: if (lookahead == 'm') ADVANCE(118); if (lookahead == 's') ADVANCE(119); END_STATE(); case 33: if (lookahead == 't') ADVANCE(120); END_STATE(); case 34: if (lookahead == 'o') ADVANCE(121); END_STATE(); case 35: if (lookahead == 'e') ADVANCE(122); END_STATE(); case 36: if (lookahead == 't') ADVANCE(123); END_STATE(); case 37: if (lookahead == 's') ADVANCE(124); if (lookahead == 't') ADVANCE(125); END_STATE(); case 38: if (lookahead == 'o') ADVANCE(126); END_STATE(); case 39: if (lookahead == 'n') ADVANCE(127); END_STATE(); case 40: if (lookahead == 'l') ADVANCE(128); END_STATE(); case 41: if (lookahead == 'a') ADVANCE(129); END_STATE(); case 42: if (lookahead == 'a') ADVANCE(130); END_STATE(); case 43: if (lookahead == 'n') ADVANCE(131); END_STATE(); case 44: if (lookahead == 'e') ADVANCE(132); END_STATE(); case 45: if (lookahead == 't') ADVANCE(133); END_STATE(); case 46: if (lookahead == 'h') ADVANCE(134); END_STATE(); case 47: if (lookahead == 'b') ADVANCE(135); if (lookahead == 'f') ADVANCE(136); if (lookahead == 'l') ADVANCE(137); if (lookahead == 'p') ADVANCE(138); END_STATE(); case 48: ACCEPT_TOKEN(sym_do); if (lookahead == 'u') ADVANCE(139); END_STATE(); case 49: if (lookahead == 't') ADVANCE(140); END_STATE(); case 50: if (lookahead == 's') ADVANCE(141); END_STATE(); case 51: if (lookahead == 'u') ADVANCE(142); END_STATE(); case 52: if (lookahead == 'i') ADVANCE(143); if (lookahead == 'p') ADVANCE(144); if (lookahead == 't') ADVANCE(145); END_STATE(); case 53: if (lookahead == 'i') ADVANCE(146); if (lookahead == 'l') ADVANCE(147); END_STATE(); case 54: if (lookahead == 'n') ADVANCE(148); END_STATE(); case 55: if (lookahead == 'o') ADVANCE(149); END_STATE(); case 56: if (lookahead == 'r') ADVANCE(150); END_STATE(); case 57: if (lookahead == 'n') ADVANCE(151); END_STATE(); case 58: if (lookahead == 't') ADVANCE(152); END_STATE(); case 59: if (lookahead == 'o') ADVANCE(153); END_STATE(); case 60: ACCEPT_TOKEN(sym_if); if (lookahead == 'l') ADVANCE(154); END_STATE(); case 61: if (lookahead == 'm') ADVANCE(155); if (lookahead == 'p') ADVANCE(156); END_STATE(); case 62: ACCEPT_TOKEN(sym_in); if (lookahead == 'o') ADVANCE(157); if (lookahead == 't') ADVANCE(158); if (lookahead == 'v') ADVANCE(159); END_STATE(); case 63: if (lookahead == 'e') ADVANCE(160); END_STATE(); case 64: ACCEPT_TOKEN(sym_is); END_STATE(); case 65: if (lookahead == 'z') ADVANCE(161); END_STATE(); case 66: if (lookahead == 'n') ADVANCE(162); END_STATE(); case 67: if (lookahead == 'x') ADVANCE(163); END_STATE(); case 68: if (lookahead == 'd') ADVANCE(164); END_STATE(); case 69: if (lookahead == 'w') ADVANCE(165); END_STATE(); case 70: if (lookahead == 'r') ADVANCE(166); if (lookahead == 't') ADVANCE(167); END_STATE(); case 71: if (lookahead == 'l') ADVANCE(168); END_STATE(); case 72: if (lookahead == 't') ADVANCE(169); END_STATE(); case 73: if (lookahead == 'e') ADVANCE(170); END_STATE(); case 74: if (lookahead == 'c') ADVANCE(171); END_STATE(); case 75: if (lookahead == 'a') ADVANCE(172); if (lookahead == 'i') ADVANCE(173); if (lookahead == 'o') ADVANCE(174); END_STATE(); case 76: if (lookahead == 'r') ADVANCE(175); END_STATE(); case 77: if (lookahead == 'b') ADVANCE(176); if (lookahead == 'r') ADVANCE(177); END_STATE(); case 78: if (lookahead == 'a') ADVANCE(178); if (lookahead == 'f') ADVANCE(179); if (lookahead == 't') ADVANCE(180); END_STATE(); case 79: if (lookahead == 'o') ADVANCE(181); END_STATE(); case 80: if (lookahead == 'a') ADVANCE(182); if (lookahead == 'o') ADVANCE(183); END_STATE(); case 81: if (lookahead == 'z') ADVANCE(184); END_STATE(); case 82: if (lookahead == 'a') ADVANCE(185); if (lookahead == 'r') ADVANCE(186); END_STATE(); case 83: if (lookahead == 'c') ADVANCE(187); if (lookahead == 'p') ADVANCE(188); END_STATE(); case 84: if (lookahead == 'i') ADVANCE(189); END_STATE(); case 85: if (lookahead == 'n') ADVANCE(190); END_STATE(); case 86: if (lookahead == 'm') ADVANCE(191); END_STATE(); case 87: if (lookahead == 'i') ADVANCE(192); if (lookahead == 'r') ADVANCE(193); END_STATE(); case 88: if (lookahead == 'u') ADVANCE(194); if (lookahead == 'y') ADVANCE(195); END_STATE(); case 89: if (lookahead == 'p') ADVANCE(196); END_STATE(); case 90: if (lookahead == 'y') ADVANCE(197); END_STATE(); case 91: if (lookahead == 'e') ADVANCE(198); END_STATE(); case 92: if (lookahead == 'n') ADVANCE(199); END_STATE(); case 93: if (lookahead == 'o') ADVANCE(200); END_STATE(); case 94: if (lookahead == 'i') ADVANCE(201); END_STATE(); case 95: if (lookahead == 'h') ADVANCE(202); END_STATE(); case 96: if (lookahead == 'r') ADVANCE(203); END_STATE(); case 97: if (lookahead == 'i') ADVANCE(204); END_STATE(); case 98: if (lookahead == 'h') ADVANCE(205); END_STATE(); case 99: if (lookahead == 'i') ADVANCE(206); END_STATE(); case 100: if (lookahead == 't') ADVANCE(207); END_STATE(); case 101: if (lookahead == 't') ADVANCE(208); END_STATE(); case 102: if (lookahead == 'e') ADVANCE(209); END_STATE(); case 103: if (lookahead == 't') ADVANCE(210); END_STATE(); case 104: if (lookahead == 'd') ADVANCE(211); END_STATE(); case 105: if (lookahead == 'A') ADVANCE(212); END_STATE(); case 106: if (lookahead == 'I') ADVANCE(213); if (lookahead == 'U') ADVANCE(214); END_STATE(); case 107: if (lookahead == 'I') ADVANCE(215); END_STATE(); case 108: if (lookahead == 'O') ADVANCE(216); END_STATE(); case 109: if (lookahead == 'R') ADVANCE(217); END_STATE(); case 110: if (lookahead == 'I') ADVANCE(218); END_STATE(); case 111: if (lookahead == 'E') ADVANCE(219); END_STATE(); case 112: if (lookahead == 's') ADVANCE(220); END_STATE(); case 113: if (lookahead == 'a') ADVANCE(221); END_STATE(); case 114: if (lookahead == 'r') ADVANCE(222); END_STATE(); case 115: if (lookahead == 'e') ADVANCE(223); END_STATE(); case 116: if (lookahead == 't') ADVANCE(224); END_STATE(); case 117: if (lookahead == 'a') ADVANCE(225); if (lookahead == 'g') ADVANCE(226); END_STATE(); case 118: ACCEPT_TOKEN(sym_asm); END_STATE(); case 119: if (lookahead == 'e') ADVANCE(227); END_STATE(); case 120: if (lookahead == 'o') ADVANCE(228); END_STATE(); case 121: if (lookahead == 'l') ADVANCE(229); END_STATE(); case 122: if (lookahead == 'a') ADVANCE(230); END_STATE(); case 123: if (lookahead == 'e') ADVANCE(231); END_STATE(); case 124: if (lookahead == 'e') ADVANCE(232); if (lookahead == 't') ADVANCE(233); END_STATE(); case 125: if (lookahead == 'c') ADVANCE(234); END_STATE(); case 126: if (lookahead == 'u') ADVANCE(235); END_STATE(); case 127: if (lookahead == 't') ADVANCE(236); END_STATE(); case 128: if (lookahead == 'o') ADVANCE(237); END_STATE(); case 129: if (lookahead == 'r') ADVANCE(238); END_STATE(); case 130: if (lookahead == 's') ADVANCE(239); END_STATE(); case 131: if (lookahead == 's') ADVANCE(240); if (lookahead == 't') ADVANCE(241); END_STATE(); case 132: if (lookahead == 'a') ADVANCE(242); END_STATE(); case 133: if (lookahead == 'r') ADVANCE(243); END_STATE(); case 134: if (lookahead == 'a') ADVANCE(244); END_STATE(); case 135: if (lookahead == 'u') ADVANCE(245); END_STATE(); case 136: if (lookahead == 'a') ADVANCE(246); END_STATE(); case 137: if (lookahead == 'e') ADVANCE(247); END_STATE(); case 138: if (lookahead == 'r') ADVANCE(248); END_STATE(); case 139: if (lookahead == 'b') ADVANCE(249); END_STATE(); case 140: if (lookahead == 'r') ADVANCE(250); END_STATE(); case 141: if (lookahead == 'e') ADVANCE(251); END_STATE(); case 142: if (lookahead == 'm') ADVANCE(252); END_STATE(); case 143: if (lookahead == 't') ADVANCE(253); END_STATE(); case 144: if (lookahead == 'o') ADVANCE(254); END_STATE(); case 145: if (lookahead == 'e') ADVANCE(255); END_STATE(); case 146: if (lookahead == 'l') ADVANCE(256); END_STATE(); case 147: if (lookahead == 's') ADVANCE(257); END_STATE(); case 148: if (lookahead == 'a') ADVANCE(258); END_STATE(); case 149: if (lookahead == 'a') ADVANCE(259); END_STATE(); case 150: ACCEPT_TOKEN(sym_for); if (lookahead == 'e') ADVANCE(260); END_STATE(); case 151: if (lookahead == 'c') ADVANCE(261); END_STATE(); case 152: if (lookahead == 'o') ADVANCE(262); END_STATE(); case 153: if (lookahead == 'u') ADVANCE(263); END_STATE(); case 154: if (lookahead == 'o') ADVANCE(264); END_STATE(); case 155: if (lookahead == 'u') ADVANCE(265); END_STATE(); case 156: if (lookahead == 'o') ADVANCE(266); END_STATE(); case 157: if (lookahead == 'u') ADVANCE(267); END_STATE(); case 158: ACCEPT_TOKEN(sym_int); if (lookahead == 'e') ADVANCE(268); END_STATE(); case 159: if (lookahead == 'a') ADVANCE(269); END_STATE(); case 160: if (lookahead == 'a') ADVANCE(270); END_STATE(); case 161: if (lookahead == 'y') ADVANCE(271); END_STATE(); case 162: if (lookahead == 'g') ADVANCE(272); END_STATE(); case 163: if (lookahead == 'i') ADVANCE(273); END_STATE(); case 164: if (lookahead == 'u') ADVANCE(274); END_STATE(); case 165: ACCEPT_TOKEN(sym_new); END_STATE(); case 166: if (lookahead == 'e') ADVANCE(275); END_STATE(); case 167: if (lookahead == 'h') ADVANCE(276); END_STATE(); case 168: if (lookahead == 'l') ADVANCE(277); END_STATE(); case 169: ACCEPT_TOKEN(sym_out); END_STATE(); case 170: if (lookahead == 'r') ADVANCE(278); END_STATE(); case 171: if (lookahead == 'k') ADVANCE(279); END_STATE(); case 172: if (lookahead == 'g') ADVANCE(280); END_STATE(); case 173: if (lookahead == 'v') ADVANCE(281); END_STATE(); case 174: if (lookahead == 't') ADVANCE(282); END_STATE(); case 175: if (lookahead == 'd') ADVANCE(283); END_STATE(); case 176: if (lookahead == 'l') ADVANCE(284); END_STATE(); case 177: if (lookahead == 'e') ADVANCE(285); END_STATE(); case 178: if (lookahead == 'l') ADVANCE(286); END_STATE(); case 179: ACCEPT_TOKEN(sym_ref); END_STATE(); case 180: if (lookahead == 'u') ADVANCE(287); END_STATE(); case 181: if (lookahead == 'p') ADVANCE(288); END_STATE(); case 182: if (lookahead == 'r') ADVANCE(289); END_STATE(); case 183: if (lookahead == 'r') ADVANCE(290); END_STATE(); case 184: if (lookahead == 'e') ADVANCE(291); END_STATE(); case 185: if (lookahead == 't') ADVANCE(292); END_STATE(); case 186: if (lookahead == 'i') ADVANCE(293); if (lookahead == 'u') ADVANCE(294); END_STATE(); case 187: if (lookahead == 'c') ADVANCE(295); END_STATE(); case 188: if (lookahead == 'e') ADVANCE(296); END_STATE(); case 189: if (lookahead == 't') ADVANCE(297); END_STATE(); case 190: if (lookahead == 'c') ADVANCE(298); END_STATE(); case 191: if (lookahead == 'p') ADVANCE(299); END_STATE(); case 192: if (lookahead == 's') ADVANCE(300); END_STATE(); case 193: if (lookahead == 'o') ADVANCE(301); END_STATE(); case 194: if (lookahead == 'e') ADVANCE(302); END_STATE(); case 195: ACCEPT_TOKEN(sym_try); END_STATE(); case 196: if (lookahead == 'e') ADVANCE(303); END_STATE(); case 197: if (lookahead == 't') ADVANCE(304); END_STATE(); case 198: if (lookahead == 'n') ADVANCE(305); END_STATE(); case 199: if (lookahead == 't') ADVANCE(306); END_STATE(); case 200: if (lookahead == 'n') ADVANCE(307); END_STATE(); case 201: if (lookahead == 'o') ADVANCE(308); if (lookahead == 't') ADVANCE(309); END_STATE(); case 202: if (lookahead == 'o') ADVANCE(310); END_STATE(); case 203: if (lookahead == 's') ADVANCE(311); END_STATE(); case 204: if (lookahead == 'd') ADVANCE(312); END_STATE(); case 205: if (lookahead == 'a') ADVANCE(313); END_STATE(); case 206: if (lookahead == 'l') ADVANCE(314); END_STATE(); case 207: if (lookahead == 'h') ADVANCE(315); END_STATE(); case 208: if (lookahead == 'r') ADVANCE(316); END_STATE(); case 209: if (lookahead == 'c') ADVANCE(317); END_STATE(); case 210: if (lookahead == 'e') ADVANCE(318); END_STATE(); case 211: if (lookahead == 'o') ADVANCE(319); END_STATE(); case 212: if (lookahead == 'T') ADVANCE(320); END_STATE(); case 213: if (lookahead == 'L') ADVANCE(321); END_STATE(); case 214: if (lookahead == 'N') ADVANCE(322); END_STATE(); case 215: if (lookahead == 'N') ADVANCE(323); END_STATE(); case 216: if (lookahead == 'D') ADVANCE(324); END_STATE(); case 217: if (lookahead == 'E') ADVANCE(325); END_STATE(); case 218: if (lookahead == 'M') ADVANCE(326); END_STATE(); case 219: if (lookahead == 'N') ADVANCE(327); if (lookahead == 'R') ADVANCE(328); END_STATE(); case 220: if (lookahead == 'h') ADVANCE(329); END_STATE(); case 221: if (lookahead == 'r') ADVANCE(330); END_STATE(); case 222: if (lookahead == 'a') ADVANCE(331); END_STATE(); case 223: if (lookahead == 'c') ADVANCE(332); END_STATE(); case 224: if (lookahead == 'r') ADVANCE(333); END_STATE(); case 225: if (lookahead == 's') ADVANCE(334); END_STATE(); case 226: if (lookahead == 'n') ADVANCE(335); END_STATE(); case 227: if (lookahead == 'r') ADVANCE(336); END_STATE(); case 228: ACCEPT_TOKEN(sym_auto); END_STATE(); case 229: ACCEPT_TOKEN(sym_bool); END_STATE(); case 230: if (lookahead == 'k') ADVANCE(337); END_STATE(); case 231: ACCEPT_TOKEN(sym_byte); END_STATE(); case 232: ACCEPT_TOKEN(sym_case); END_STATE(); case 233: ACCEPT_TOKEN(sym_cast); END_STATE(); case 234: if (lookahead == 'h') ADVANCE(338); END_STATE(); case 235: if (lookahead == 'b') ADVANCE(339); END_STATE(); case 236: ACCEPT_TOKEN(sym_cent); END_STATE(); case 237: if (lookahead == 'a') ADVANCE(340); END_STATE(); case 238: ACCEPT_TOKEN(sym_char); END_STATE(); case 239: if (lookahead == 's') ADVANCE(341); END_STATE(); case 240: if (lookahead == 't') ADVANCE(342); END_STATE(); case 241: if (lookahead == 'i') ADVANCE(343); END_STATE(); case 242: if (lookahead == 'l') ADVANCE(344); END_STATE(); case 243: if (lookahead == 'i') ADVANCE(345); END_STATE(); case 244: if (lookahead == 'r') ADVANCE(346); END_STATE(); case 245: if (lookahead == 'g') ADVANCE(347); END_STATE(); case 246: if (lookahead == 'u') ADVANCE(348); END_STATE(); case 247: if (lookahead == 'g') ADVANCE(349); if (lookahead == 't') ADVANCE(350); END_STATE(); case 248: if (lookahead == 'e') ADVANCE(351); END_STATE(); case 249: if (lookahead == 'l') ADVANCE(352); END_STATE(); case 250: if (lookahead == 'i') ADVANCE(353); END_STATE(); case 251: ACCEPT_TOKEN(sym_else); END_STATE(); case 252: ACCEPT_TOKEN(sym_enum); END_STATE(); case 253: ACCEPT_TOKEN(anon_sym_exit); END_STATE(); case 254: if (lookahead == 'r') ADVANCE(354); END_STATE(); case 255: if (lookahead == 'r') ADVANCE(355); END_STATE(); case 256: if (lookahead == 'u') ADVANCE(356); END_STATE(); case 257: if (lookahead == 'e') ADVANCE(357); END_STATE(); case 258: if (lookahead == 'l') ADVANCE(358); END_STATE(); case 259: if (lookahead == 't') ADVANCE(359); END_STATE(); case 260: if (lookahead == 'a') ADVANCE(360); END_STATE(); case 261: if (lookahead == 't') ADVANCE(361); END_STATE(); case 262: ACCEPT_TOKEN(sym_goto); END_STATE(); case 263: if (lookahead == 'b') ADVANCE(362); END_STATE(); case 264: if (lookahead == 'a') ADVANCE(363); END_STATE(); case 265: if (lookahead == 't') ADVANCE(364); END_STATE(); case 266: if (lookahead == 'r') ADVANCE(365); END_STATE(); case 267: if (lookahead == 't') ADVANCE(366); END_STATE(); case 268: if (lookahead == 'r') ADVANCE(367); END_STATE(); case 269: if (lookahead == 'r') ADVANCE(368); END_STATE(); case 270: if (lookahead == 'l') ADVANCE(369); END_STATE(); case 271: ACCEPT_TOKEN(sym_lazy); END_STATE(); case 272: ACCEPT_TOKEN(sym_long); END_STATE(); case 273: if (lookahead == 'n') ADVANCE(370); END_STATE(); case 274: if (lookahead == 'l') ADVANCE(371); END_STATE(); case 275: if (lookahead == 't') ADVANCE(372); END_STATE(); case 276: if (lookahead == 'r') ADVANCE(373); END_STATE(); case 277: ACCEPT_TOKEN(sym_null); END_STATE(); case 278: if (lookahead == 'r') ADVANCE(374); END_STATE(); case 279: if (lookahead == 'a') ADVANCE(375); END_STATE(); case 280: if (lookahead == 'm') ADVANCE(376); END_STATE(); case 281: if (lookahead == 'a') ADVANCE(377); END_STATE(); case 282: if (lookahead == 'e') ADVANCE(378); END_STATE(); case 283: if (lookahead == 'i') ADVANCE(379); END_STATE(); case 284: if (lookahead == 'i') ADVANCE(380); END_STATE(); case 285: ACCEPT_TOKEN(sym_pure); END_STATE(); case 286: ACCEPT_TOKEN(sym_real); END_STATE(); case 287: if (lookahead == 'r') ADVANCE(381); END_STATE(); case 288: if (lookahead == 'e') ADVANCE(382); END_STATE(); case 289: if (lookahead == 'e') ADVANCE(383); END_STATE(); case 290: if (lookahead == 't') ADVANCE(384); END_STATE(); case 291: if (lookahead == '_') ADVANCE(385); END_STATE(); case 292: if (lookahead == 'i') ADVANCE(386); END_STATE(); case 293: if (lookahead == 'n') ADVANCE(387); END_STATE(); case 294: if (lookahead == 'c') ADVANCE(388); END_STATE(); case 295: if (lookahead == 'e') ADVANCE(389); END_STATE(); case 296: if (lookahead == 'r') ADVANCE(390); END_STATE(); case 297: if (lookahead == 'c') ADVANCE(391); END_STATE(); case 298: if (lookahead == 'h') ADVANCE(392); END_STATE(); case 299: if (lookahead == 'l') ADVANCE(393); END_STATE(); case 300: ACCEPT_TOKEN(sym_this); END_STATE(); case 301: if (lookahead == 'w') ADVANCE(394); END_STATE(); case 302: ACCEPT_TOKEN(sym_true); END_STATE(); case 303: if (lookahead == 'i') ADVANCE(395); if (lookahead == 'o') ADVANCE(396); END_STATE(); case 304: if (lookahead == 'e') ADVANCE(397); END_STATE(); case 305: if (lookahead == 't') ADVANCE(398); END_STATE(); case 306: ACCEPT_TOKEN(sym_uint); END_STATE(); case 307: if (lookahead == 'g') ADVANCE(399); END_STATE(); case 308: if (lookahead == 'n') ADVANCE(400); END_STATE(); case 309: if (lookahead == 't') ADVANCE(401); END_STATE(); case 310: if (lookahead == 'r') ADVANCE(402); END_STATE(); case 311: if (lookahead == 'i') ADVANCE(403); END_STATE(); case 312: ACCEPT_TOKEN(sym_void); END_STATE(); case 313: if (lookahead == 'r') ADVANCE(404); END_STATE(); case 314: if (lookahead == 'e') ADVANCE(405); END_STATE(); case 315: ACCEPT_TOKEN(sym_with); END_STATE(); case 316: if (lookahead == 'i') ADVANCE(406); END_STATE(); case 317: if (lookahead == 't') ADVANCE(407); END_STATE(); case 318: if (lookahead == 'm') ADVANCE(408); END_STATE(); case 319: if (lookahead == 'w') ADVANCE(409); END_STATE(); case 320: if (lookahead == 'E') ADVANCE(410); END_STATE(); case 321: if (lookahead == 'E') ADVANCE(411); END_STATE(); case 322: if (lookahead == 'C') ADVANCE(412); END_STATE(); case 323: if (lookahead == 'E') ADVANCE(413); END_STATE(); case 324: if (lookahead == 'U') ADVANCE(414); END_STATE(); case 325: if (lookahead == 'T') ADVANCE(415); END_STATE(); case 326: if (lookahead == 'E') ADVANCE(416); END_STATE(); case 327: if (lookahead == 'D') ADVANCE(417); END_STATE(); case 328: if (lookahead == 'S') ADVANCE(418); END_STATE(); case 329: if (lookahead == 'a') ADVANCE(419); END_STATE(); case 330: if (lookahead == 'a') ADVANCE(420); END_STATE(); case 331: if (lookahead == 'i') ADVANCE(421); END_STATE(); case 332: if (lookahead == 't') ADVANCE(422); END_STATE(); case 333: if (lookahead == 'a') ADVANCE(423); END_STATE(); case 334: ACCEPT_TOKEN(sym_alias); END_STATE(); case 335: ACCEPT_TOKEN(sym_align); END_STATE(); case 336: if (lookahead == 't') ADVANCE(424); END_STATE(); case 337: ACCEPT_TOKEN(sym_break); END_STATE(); case 338: ACCEPT_TOKEN(sym_catch); END_STATE(); case 339: if (lookahead == 'l') ADVANCE(425); END_STATE(); case 340: if (lookahead == 't') ADVANCE(426); END_STATE(); case 341: ACCEPT_TOKEN(sym_class); END_STATE(); case 342: ACCEPT_TOKEN(sym_const); END_STATE(); case 343: if (lookahead == 'n') ADVANCE(427); END_STATE(); case 344: ACCEPT_TOKEN(sym_creal); END_STATE(); case 345: if (lookahead == 'n') ADVANCE(428); END_STATE(); case 346: ACCEPT_TOKEN(sym_dchar); END_STATE(); case 347: ACCEPT_TOKEN(sym_debug); END_STATE(); case 348: if (lookahead == 'l') ADVANCE(429); END_STATE(); case 349: if (lookahead == 'a') ADVANCE(430); END_STATE(); case 350: if (lookahead == 'e') ADVANCE(431); END_STATE(); case 351: if (lookahead == 'c') ADVANCE(432); END_STATE(); case 352: if (lookahead == 'e') ADVANCE(433); END_STATE(); case 353: if (lookahead == 'n') ADVANCE(434); END_STATE(); case 354: if (lookahead == 't') ADVANCE(435); END_STATE(); case 355: if (lookahead == 'n') ADVANCE(436); END_STATE(); case 356: if (lookahead == 'r') ADVANCE(437); END_STATE(); case 357: ACCEPT_TOKEN(sym_false); END_STATE(); case 358: ACCEPT_TOKEN(sym_final); if (lookahead == 'l') ADVANCE(438); END_STATE(); case 359: ACCEPT_TOKEN(sym_float); END_STATE(); case 360: if (lookahead == 'c') ADVANCE(439); END_STATE(); case 361: if (lookahead == 'i') ADVANCE(440); END_STATE(); case 362: if (lookahead == 'l') ADVANCE(441); END_STATE(); case 363: if (lookahead == 't') ADVANCE(442); END_STATE(); case 364: if (lookahead == 'a') ADVANCE(443); END_STATE(); case 365: if (lookahead == 't') ADVANCE(444); END_STATE(); case 366: ACCEPT_TOKEN(sym_inout); END_STATE(); case 367: if (lookahead == 'f') ADVANCE(445); END_STATE(); case 368: if (lookahead == 'i') ADVANCE(446); END_STATE(); case 369: ACCEPT_TOKEN(sym_ireal); END_STATE(); case 370: ACCEPT_TOKEN(sym_mixin); END_STATE(); case 371: if (lookahead == 'e') ADVANCE(447); END_STATE(); case 372: if (lookahead == 'u') ADVANCE(448); END_STATE(); case 373: if (lookahead == 'o') ADVANCE(449); END_STATE(); case 374: if (lookahead == 'i') ADVANCE(450); END_STATE(); case 375: if (lookahead == 'g') ADVANCE(451); END_STATE(); case 376: if (lookahead == 'a') ADVANCE(452); END_STATE(); case 377: if (lookahead == 't') ADVANCE(453); END_STATE(); case 378: if (lookahead == 'c') ADVANCE(454); END_STATE(); case 379: if (lookahead == 'f') ADVANCE(455); END_STATE(); case 380: if (lookahead == 'c') ADVANCE(456); END_STATE(); case 381: if (lookahead == 'n') ADVANCE(457); END_STATE(); case 382: ACCEPT_TOKEN(sym_scope); END_STATE(); case 383: if (lookahead == 'd') ADVANCE(458); END_STATE(); case 384: ACCEPT_TOKEN(sym_short); END_STATE(); case 385: if (lookahead == 't') ADVANCE(459); END_STATE(); case 386: if (lookahead == 'c') ADVANCE(460); END_STATE(); case 387: if (lookahead == 'g') ADVANCE(461); END_STATE(); case 388: if (lookahead == 't') ADVANCE(462); END_STATE(); case 389: if (lookahead == 's') ADVANCE(463); END_STATE(); case 390: ACCEPT_TOKEN(sym_super); END_STATE(); case 391: if (lookahead == 'h') ADVANCE(464); END_STATE(); case 392: if (lookahead == 'r') ADVANCE(465); END_STATE(); case 393: if (lookahead == 'a') ADVANCE(466); END_STATE(); case 394: ACCEPT_TOKEN(sym_throw); END_STATE(); case 395: if (lookahead == 'd') ADVANCE(467); END_STATE(); case 396: if (lookahead == 'f') ADVANCE(468); END_STATE(); case 397: ACCEPT_TOKEN(sym_ubyte); END_STATE(); case 398: ACCEPT_TOKEN(sym_ucent); END_STATE(); case 399: ACCEPT_TOKEN(sym_ulong); END_STATE(); case 400: ACCEPT_TOKEN(sym_union); END_STATE(); case 401: if (lookahead == 'e') ADVANCE(469); END_STATE(); case 402: if (lookahead == 't') ADVANCE(470); END_STATE(); case 403: if (lookahead == 'o') ADVANCE(471); END_STATE(); case 404: ACCEPT_TOKEN(sym_wchar); END_STATE(); case 405: ACCEPT_TOKEN(sym_while); END_STATE(); case 406: if (lookahead == 'n') ADVANCE(472); END_STATE(); case 407: if (lookahead == 'i') ADVANCE(473); END_STATE(); case 408: ACCEPT_TOKEN(anon_sym_System); END_STATE(); case 409: if (lookahead == 's') ADVANCE(474); END_STATE(); case 410: if (lookahead == '_') ADVANCE(475); END_STATE(); case 411: if (lookahead == '_') ADVANCE(476); END_STATE(); case 412: if (lookahead == 'T') ADVANCE(477); END_STATE(); case 413: if (lookahead == '_') ADVANCE(478); END_STATE(); case 414: if (lookahead == 'L') ADVANCE(479); END_STATE(); case 415: if (lookahead == 'T') ADVANCE(480); END_STATE(); case 416: if (lookahead == 'S') ADVANCE(481); if (lookahead == '_') ADVANCE(482); END_STATE(); case 417: if (lookahead == 'O') ADVANCE(483); END_STATE(); case 418: if (lookahead == 'I') ADVANCE(484); END_STATE(); case 419: if (lookahead == 'r') ADVANCE(485); END_STATE(); case 420: if (lookahead == 'm') ADVANCE(486); END_STATE(); case 421: if (lookahead == 't') ADVANCE(487); END_STATE(); case 422: if (lookahead == 'o') ADVANCE(488); END_STATE(); case 423: if (lookahead == 'c') ADVANCE(489); END_STATE(); case 424: ACCEPT_TOKEN(sym_assert); END_STATE(); case 425: if (lookahead == 'e') ADVANCE(490); END_STATE(); case 426: ACCEPT_TOKEN(sym_cfloat); END_STATE(); case 427: if (lookahead == 'u') ADVANCE(491); END_STATE(); case 428: if (lookahead == 'g') ADVANCE(492); END_STATE(); case 429: if (lookahead == 't') ADVANCE(493); END_STATE(); case 430: if (lookahead == 't') ADVANCE(494); END_STATE(); case 431: ACCEPT_TOKEN(sym_delete); END_STATE(); case 432: if (lookahead == 'a') ADVANCE(495); END_STATE(); case 433: ACCEPT_TOKEN(sym_double); END_STATE(); case 434: if (lookahead == 'g') ADVANCE(496); END_STATE(); case 435: ACCEPT_TOKEN(sym_export); END_STATE(); case 436: ACCEPT_TOKEN(sym_extern); END_STATE(); case 437: if (lookahead == 'e') ADVANCE(497); END_STATE(); case 438: if (lookahead == 'y') ADVANCE(498); END_STATE(); case 439: if (lookahead == 'h') ADVANCE(499); END_STATE(); case 440: if (lookahead == 'o') ADVANCE(500); END_STATE(); case 441: if (lookahead == 'e') ADVANCE(501); END_STATE(); case 442: ACCEPT_TOKEN(sym_ifloat); END_STATE(); case 443: if (lookahead == 'b') ADVANCE(502); END_STATE(); case 444: ACCEPT_TOKEN(sym_import); END_STATE(); case 445: if (lookahead == 'a') ADVANCE(503); END_STATE(); case 446: if (lookahead == 'a') ADVANCE(504); END_STATE(); case 447: ACCEPT_TOKEN(sym_module); END_STATE(); case 448: if (lookahead == 'r') ADVANCE(505); END_STATE(); case 449: if (lookahead == 'w') ADVANCE(506); END_STATE(); case 450: if (lookahead == 'd') ADVANCE(507); END_STATE(); case 451: if (lookahead == 'e') ADVANCE(508); END_STATE(); case 452: ACCEPT_TOKEN(sym_pragma); END_STATE(); case 453: if (lookahead == 'e') ADVANCE(509); END_STATE(); case 454: if (lookahead == 't') ADVANCE(510); END_STATE(); case 455: if (lookahead == 'f') ADVANCE(511); END_STATE(); case 456: ACCEPT_TOKEN(sym_public); END_STATE(); case 457: ACCEPT_TOKEN(sym_return); END_STATE(); case 458: ACCEPT_TOKEN(sym_shared); END_STATE(); case 459: ACCEPT_TOKEN(sym_size_t); END_STATE(); case 460: ACCEPT_TOKEN(sym_static); END_STATE(); case 461: ACCEPT_TOKEN(sym_string); END_STATE(); case 462: ACCEPT_TOKEN(sym_struct); END_STATE(); case 463: if (lookahead == 's') ADVANCE(512); END_STATE(); case 464: ACCEPT_TOKEN(sym_switch); END_STATE(); case 465: if (lookahead == 'o') ADVANCE(513); END_STATE(); case 466: if (lookahead == 't') ADVANCE(514); END_STATE(); case 467: ACCEPT_TOKEN(sym_typeid); END_STATE(); case 468: ACCEPT_TOKEN(sym_typeof); END_STATE(); case 469: if (lookahead == 's') ADVANCE(515); END_STATE(); case 470: ACCEPT_TOKEN(sym_ushort); END_STATE(); case 471: if (lookahead == 'n') ADVANCE(516); END_STATE(); case 472: if (lookahead == 'g') ADVANCE(517); END_STATE(); case 473: if (lookahead == 'v') ADVANCE(518); END_STATE(); case 474: ACCEPT_TOKEN(anon_sym_Windows); END_STATE(); case 475: if (lookahead == '_') ADVANCE(519); END_STATE(); case 476: if (lookahead == 'F') ADVANCE(520); if (lookahead == '_') ADVANCE(521); END_STATE(); case 477: if (lookahead == 'I') ADVANCE(522); END_STATE(); case 478: if (lookahead == '_') ADVANCE(523); END_STATE(); case 479: if (lookahead == 'E') ADVANCE(524); END_STATE(); case 480: if (lookahead == 'Y') ADVANCE(525); END_STATE(); case 481: if (lookahead == 'T') ADVANCE(526); END_STATE(); case 482: if (lookahead == '_') ADVANCE(527); END_STATE(); case 483: if (lookahead == 'R') ADVANCE(528); END_STATE(); case 484: if (lookahead == 'O') ADVANCE(529); END_STATE(); case 485: if (lookahead == 'e') ADVANCE(530); END_STATE(); case 486: if (lookahead == 'e') ADVANCE(531); END_STATE(); case 487: if (lookahead == 's') ADVANCE(532); END_STATE(); case 488: if (lookahead == 'r') ADVANCE(533); END_STATE(); case 489: if (lookahead == 't') ADVANCE(534); END_STATE(); case 490: ACCEPT_TOKEN(sym_cdouble); END_STATE(); case 491: if (lookahead == 'e') ADVANCE(535); END_STATE(); case 492: ACCEPT_TOKEN(sym_cstring); END_STATE(); case 493: ACCEPT_TOKEN(sym_default); END_STATE(); case 494: if (lookahead == 'e') ADVANCE(536); END_STATE(); case 495: if (lookahead == 't') ADVANCE(537); END_STATE(); case 496: ACCEPT_TOKEN(sym_dstring); END_STATE(); case 497: ACCEPT_TOKEN(anon_sym_failure); END_STATE(); case 498: ACCEPT_TOKEN(sym_finally); END_STATE(); case 499: ACCEPT_TOKEN(sym_foreach); if (lookahead == '_') ADVANCE(538); END_STATE(); case 500: if (lookahead == 'n') ADVANCE(539); END_STATE(); case 501: ACCEPT_TOKEN(sym_idouble); END_STATE(); case 502: if (lookahead == 'l') ADVANCE(540); END_STATE(); case 503: if (lookahead == 'c') ADVANCE(541); END_STATE(); case 504: if (lookahead == 'n') ADVANCE(542); END_STATE(); case 505: if (lookahead == 'n') ADVANCE(543); END_STATE(); case 506: ACCEPT_TOKEN(sym_nothrow); END_STATE(); case 507: if (lookahead == 'e') ADVANCE(544); END_STATE(); case 508: ACCEPT_TOKEN(sym_package); END_STATE(); case 509: ACCEPT_TOKEN(sym_private); END_STATE(); case 510: if (lookahead == 'e') ADVANCE(545); END_STATE(); case 511: if (lookahead == '_') ADVANCE(546); END_STATE(); case 512: ACCEPT_TOKEN(anon_sym_success); END_STATE(); case 513: if (lookahead == 'n') ADVANCE(547); END_STATE(); case 514: if (lookahead == 'e') ADVANCE(548); END_STATE(); case 515: if (lookahead == 't') ADVANCE(549); END_STATE(); case 516: ACCEPT_TOKEN(sym_version); END_STATE(); case 517: ACCEPT_TOKEN(sym_wstring); END_STATE(); case 518: if (lookahead == 'e') ADVANCE(550); END_STATE(); case 519: ACCEPT_TOKEN(anon_sym___DATE__); END_STATE(); case 520: if (lookahead == 'U') ADVANCE(551); END_STATE(); case 521: ACCEPT_TOKEN(anon_sym___FILE__); END_STATE(); case 522: if (lookahead == 'O') ADVANCE(552); END_STATE(); case 523: ACCEPT_TOKEN(anon_sym___LINE__); END_STATE(); case 524: if (lookahead == '_') ADVANCE(553); END_STATE(); case 525: if (lookahead == '_') ADVANCE(554); END_STATE(); case 526: if (lookahead == 'A') ADVANCE(555); END_STATE(); case 527: ACCEPT_TOKEN(anon_sym___TIME__); END_STATE(); case 528: if (lookahead == '_') ADVANCE(556); END_STATE(); case 529: if (lookahead == 'N') ADVANCE(557); END_STATE(); case 530: if (lookahead == 'd') ADVANCE(558); END_STATE(); case 531: if (lookahead == 't') ADVANCE(559); END_STATE(); case 532: ACCEPT_TOKEN(sym_traits); END_STATE(); case 533: ACCEPT_TOKEN(sym_vector); END_STATE(); case 534: ACCEPT_TOKEN(sym_abstract); END_STATE(); case 535: ACCEPT_TOKEN(sym_continue); END_STATE(); case 536: ACCEPT_TOKEN(sym_delegate); END_STATE(); case 537: if (lookahead == 'e') ADVANCE(560); END_STATE(); case 538: if (lookahead == 'r') ADVANCE(561); END_STATE(); case 539: ACCEPT_TOKEN(sym_function); END_STATE(); case 540: if (lookahead == 'e') ADVANCE(562); END_STATE(); case 541: if (lookahead == 'e') ADVANCE(563); END_STATE(); case 542: if (lookahead == 't') ADVANCE(564); END_STATE(); case 543: ACCEPT_TOKEN(sym_noreturn); END_STATE(); case 544: ACCEPT_TOKEN(sym_override); END_STATE(); case 545: if (lookahead == 'd') ADVANCE(565); END_STATE(); case 546: if (lookahead == 't') ADVANCE(566); END_STATE(); case 547: if (lookahead == 'i') ADVANCE(567); END_STATE(); case 548: ACCEPT_TOKEN(sym_template); END_STATE(); case 549: ACCEPT_TOKEN(sym_unittest); END_STATE(); case 550: ACCEPT_TOKEN(anon_sym_Objective); END_STATE(); case 551: if (lookahead == 'L') ADVANCE(568); END_STATE(); case 552: if (lookahead == 'N') ADVANCE(569); END_STATE(); case 553: if (lookahead == '_') ADVANCE(570); END_STATE(); case 554: if (lookahead == 'F') ADVANCE(571); END_STATE(); case 555: if (lookahead == 'M') ADVANCE(572); END_STATE(); case 556: if (lookahead == '_') ADVANCE(573); END_STATE(); case 557: if (lookahead == '_') ADVANCE(574); END_STATE(); case 558: ACCEPT_TOKEN(sym_gshared); END_STATE(); case 559: if (lookahead == 'e') ADVANCE(575); END_STATE(); case 560: if (lookahead == 'd') ADVANCE(576); END_STATE(); case 561: if (lookahead == 'e') ADVANCE(577); END_STATE(); case 562: ACCEPT_TOKEN(sym_immutable); END_STATE(); case 563: ACCEPT_TOKEN(sym_interface); END_STATE(); case 564: ACCEPT_TOKEN(sym_invariant); END_STATE(); case 565: ACCEPT_TOKEN(sym_protected); END_STATE(); case 566: ACCEPT_TOKEN(sym_ptrdiff_t); END_STATE(); case 567: if (lookahead == 'z') ADVANCE(578); END_STATE(); case 568: if (lookahead == 'L') ADVANCE(579); END_STATE(); case 569: if (lookahead == '_') ADVANCE(580); END_STATE(); case 570: ACCEPT_TOKEN(anon_sym___MODULE__); END_STATE(); case 571: if (lookahead == 'U') ADVANCE(581); END_STATE(); case 572: if (lookahead == 'P') ADVANCE(582); END_STATE(); case 573: ACCEPT_TOKEN(anon_sym___VENDOR__); END_STATE(); case 574: if (lookahead == '_') ADVANCE(583); END_STATE(); case 575: if (lookahead == 'r') ADVANCE(584); END_STATE(); case 576: ACCEPT_TOKEN(sym_deprecated); END_STATE(); case 577: if (lookahead == 'v') ADVANCE(585); END_STATE(); case 578: if (lookahead == 'e') ADVANCE(586); END_STATE(); case 579: if (lookahead == '_') ADVANCE(587); END_STATE(); case 580: if (lookahead == '_') ADVANCE(588); END_STATE(); case 581: if (lookahead == 'N') ADVANCE(589); END_STATE(); case 582: if (lookahead == '_') ADVANCE(590); END_STATE(); case 583: ACCEPT_TOKEN(anon_sym___VERSION__); END_STATE(); case 584: if (lookahead == 's') ADVANCE(591); END_STATE(); case 585: if (lookahead == 'e') ADVANCE(592); END_STATE(); case 586: if (lookahead == 'd') ADVANCE(593); END_STATE(); case 587: if (lookahead == 'P') ADVANCE(594); END_STATE(); case 588: ACCEPT_TOKEN(anon_sym___FUNCTION__); END_STATE(); case 589: if (lookahead == 'C') ADVANCE(595); END_STATE(); case 590: if (lookahead == '_') ADVANCE(596); END_STATE(); case 591: ACCEPT_TOKEN(sym_parameters_); END_STATE(); case 592: if (lookahead == 'r') ADVANCE(597); END_STATE(); case 593: ACCEPT_TOKEN(sym_synchronized); END_STATE(); case 594: if (lookahead == 'A') ADVANCE(598); END_STATE(); case 595: if (lookahead == 'T') ADVANCE(599); END_STATE(); case 596: ACCEPT_TOKEN(anon_sym___TIMESTAMP__); END_STATE(); case 597: if (lookahead == 's') ADVANCE(600); END_STATE(); case 598: if (lookahead == 'T') ADVANCE(601); END_STATE(); case 599: if (lookahead == 'I') ADVANCE(602); END_STATE(); case 600: if (lookahead == 'e') ADVANCE(603); END_STATE(); case 601: if (lookahead == 'H') ADVANCE(604); END_STATE(); case 602: if (lookahead == 'O') ADVANCE(605); END_STATE(); case 603: ACCEPT_TOKEN(sym_foreach_reverse); END_STATE(); case 604: if (lookahead == '_') ADVANCE(606); END_STATE(); case 605: if (lookahead == 'N') ADVANCE(607); END_STATE(); case 606: if (lookahead == '_') ADVANCE(608); END_STATE(); case 607: if (lookahead == '_') ADVANCE(609); END_STATE(); case 608: ACCEPT_TOKEN(anon_sym___FILE_FULL_PATH__); END_STATE(); case 609: if (lookahead == '_') ADVANCE(610); END_STATE(); case 610: ACCEPT_TOKEN(anon_sym___PRETTY_FUNCTION__); END_STATE(); default: return false; } } static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, [1] = {.lex_state = 172, .external_lex_state = 2}, [2] = {.lex_state = 7, .external_lex_state = 3}, [3] = {.lex_state = 7, .external_lex_state = 3}, [4] = {.lex_state = 7, .external_lex_state = 3}, [5] = {.lex_state = 7, .external_lex_state = 3}, [6] = {.lex_state = 7, .external_lex_state = 3}, [7] = {.lex_state = 7, .external_lex_state = 3}, [8] = {.lex_state = 7, .external_lex_state = 3}, [9] = {.lex_state = 7, .external_lex_state = 3}, [10] = {.lex_state = 7, .external_lex_state = 3}, [11] = {.lex_state = 7, .external_lex_state = 3}, [12] = {.lex_state = 7, .external_lex_state = 3}, [13] = {.lex_state = 7, .external_lex_state = 3}, [14] = {.lex_state = 7, .external_lex_state = 3}, [15] = {.lex_state = 7, .external_lex_state = 3}, [16] = {.lex_state = 7, .external_lex_state = 3}, [17] = {.lex_state = 7, .external_lex_state = 3}, [18] = {.lex_state = 7, .external_lex_state = 3}, [19] = {.lex_state = 7, .external_lex_state = 3}, [20] = {.lex_state = 7, .external_lex_state = 3}, [21] = {.lex_state = 7, .external_lex_state = 3}, [22] = {.lex_state = 7, .external_lex_state = 3}, [23] = {.lex_state = 7, .external_lex_state = 3}, [24] = {.lex_state = 7, .external_lex_state = 3}, [25] = {.lex_state = 7, .external_lex_state = 3}, [26] = {.lex_state = 7, .external_lex_state = 3}, [27] = {.lex_state = 7, .external_lex_state = 3}, [28] = {.lex_state = 7, .external_lex_state = 3}, [29] = {.lex_state = 7, .external_lex_state = 3}, [30] = {.lex_state = 7, .external_lex_state = 3}, [31] = {.lex_state = 7, .external_lex_state = 3}, [32] = {.lex_state = 7, .external_lex_state = 3}, [33] = {.lex_state = 7, .external_lex_state = 3}, [34] = {.lex_state = 7, .external_lex_state = 3}, [35] = {.lex_state = 7, .external_lex_state = 3}, [36] = {.lex_state = 7, .external_lex_state = 3}, [37] = {.lex_state = 7, .external_lex_state = 3}, [38] = {.lex_state = 7, .external_lex_state = 3}, [39] = {.lex_state = 7, .external_lex_state = 3}, [40] = {.lex_state = 7, .external_lex_state = 3}, [41] = {.lex_state = 7, .external_lex_state = 3}, [42] = {.lex_state = 7, .external_lex_state = 3}, [43] = {.lex_state = 7, .external_lex_state = 3}, [44] = {.lex_state = 7, .external_lex_state = 3}, [45] = {.lex_state = 7, .external_lex_state = 3}, [46] = {.lex_state = 7, .external_lex_state = 3}, [47] = {.lex_state = 7, .external_lex_state = 3}, [48] = {.lex_state = 7, .external_lex_state = 3}, [49] = {.lex_state = 7, .external_lex_state = 3}, [50] = {.lex_state = 7, .external_lex_state = 3}, [51] = {.lex_state = 7, .external_lex_state = 3}, [52] = {.lex_state = 7, .external_lex_state = 3}, [53] = {.lex_state = 7, .external_lex_state = 3}, [54] = {.lex_state = 7, .external_lex_state = 3}, [55] = {.lex_state = 7, .external_lex_state = 3}, [56] = {.lex_state = 7, .external_lex_state = 3}, [57] = {.lex_state = 7, .external_lex_state = 3}, [58] = {.lex_state = 7, .external_lex_state = 3}, [59] = {.lex_state = 7, .external_lex_state = 3}, [60] = {.lex_state = 7, .external_lex_state = 3}, [61] = {.lex_state = 7, .external_lex_state = 3}, [62] = {.lex_state = 7, .external_lex_state = 3}, [63] = {.lex_state = 7, .external_lex_state = 3}, [64] = {.lex_state = 7, .external_lex_state = 3}, [65] = {.lex_state = 7, .external_lex_state = 3}, [66] = {.lex_state = 7, .external_lex_state = 3}, [67] = {.lex_state = 7, .external_lex_state = 3}, [68] = {.lex_state = 7, .external_lex_state = 3}, [69] = {.lex_state = 7, .external_lex_state = 3}, [70] = {.lex_state = 7, .external_lex_state = 3}, [71] = {.lex_state = 7, .external_lex_state = 3}, [72] = {.lex_state = 7, .external_lex_state = 3}, [73] = {.lex_state = 7, .external_lex_state = 3}, [74] = {.lex_state = 7, .external_lex_state = 3}, [75] = {.lex_state = 7, .external_lex_state = 3}, [76] = {.lex_state = 7, .external_lex_state = 3}, [77] = {.lex_state = 7, .external_lex_state = 3}, [78] = {.lex_state = 7, .external_lex_state = 3}, [79] = {.lex_state = 7, .external_lex_state = 3}, [80] = {.lex_state = 7, .external_lex_state = 3}, [81] = {.lex_state = 7, .external_lex_state = 3}, [82] = {.lex_state = 7, .external_lex_state = 3}, [83] = {.lex_state = 7, .external_lex_state = 3}, [84] = {.lex_state = 7, .external_lex_state = 3}, [85] = {.lex_state = 7, .external_lex_state = 3}, [86] = {.lex_state = 7, .external_lex_state = 3}, [87] = {.lex_state = 7, .external_lex_state = 3}, [88] = {.lex_state = 7, .external_lex_state = 3}, [89] = {.lex_state = 7, .external_lex_state = 3}, [90] = {.lex_state = 7, .external_lex_state = 3}, [91] = {.lex_state = 7, .external_lex_state = 3}, [92] = {.lex_state = 7, .external_lex_state = 3}, [93] = {.lex_state = 7, .external_lex_state = 3}, [94] = {.lex_state = 7, .external_lex_state = 3}, [95] = {.lex_state = 7, .external_lex_state = 3}, [96] = {.lex_state = 7, .external_lex_state = 3}, [97] = {.lex_state = 7, .external_lex_state = 3}, [98] = {.lex_state = 7, .external_lex_state = 3}, [99] = {.lex_state = 7, .external_lex_state = 3}, [100] = {.lex_state = 7, .external_lex_state = 3}, [101] = {.lex_state = 7, .external_lex_state = 3}, [102] = {.lex_state = 7, .external_lex_state = 3}, [103] = {.lex_state = 7, .external_lex_state = 3}, [104] = {.lex_state = 7, .external_lex_state = 3}, [105] = {.lex_state = 7, .external_lex_state = 3}, [106] = {.lex_state = 7, .external_lex_state = 3}, [107] = {.lex_state = 7, .external_lex_state = 3}, [108] = {.lex_state = 7, .external_lex_state = 3}, [109] = {.lex_state = 7, .external_lex_state = 3}, [110] = {.lex_state = 7, .external_lex_state = 3}, [111] = {.lex_state = 7, .external_lex_state = 3}, [112] = {.lex_state = 7, .external_lex_state = 3}, [113] = {.lex_state = 7, .external_lex_state = 3}, [114] = {.lex_state = 7, .external_lex_state = 3}, [115] = {.lex_state = 7, .external_lex_state = 3}, [116] = {.lex_state = 7, .external_lex_state = 3}, [117] = {.lex_state = 7, .external_lex_state = 3}, [118] = {.lex_state = 7, .external_lex_state = 3}, [119] = {.lex_state = 7, .external_lex_state = 3}, [120] = {.lex_state = 7, .external_lex_state = 3}, [121] = {.lex_state = 7, .external_lex_state = 3}, [122] = {.lex_state = 7, .external_lex_state = 3}, [123] = {.lex_state = 7, .external_lex_state = 3}, [124] = {.lex_state = 7, .external_lex_state = 3}, [125] = {.lex_state = 7, .external_lex_state = 3}, [126] = {.lex_state = 7, .external_lex_state = 3}, [127] = {.lex_state = 7, .external_lex_state = 3}, [128] = {.lex_state = 7, .external_lex_state = 3}, [129] = {.lex_state = 7, .external_lex_state = 3}, [130] = {.lex_state = 7, .external_lex_state = 3}, [131] = {.lex_state = 7, .external_lex_state = 3}, [132] = {.lex_state = 7, .external_lex_state = 3}, [133] = {.lex_state = 7, .external_lex_state = 3}, [134] = {.lex_state = 7, .external_lex_state = 3}, [135] = {.lex_state = 7, .external_lex_state = 3}, [136] = {.lex_state = 7, .external_lex_state = 3}, [137] = {.lex_state = 7, .external_lex_state = 3}, [138] = {.lex_state = 7, .external_lex_state = 3}, [139] = {.lex_state = 7, .external_lex_state = 3}, [140] = {.lex_state = 7, .external_lex_state = 3}, [141] = {.lex_state = 7, .external_lex_state = 3}, [142] = {.lex_state = 7, .external_lex_state = 3}, [143] = {.lex_state = 7, .external_lex_state = 3}, [144] = {.lex_state = 7, .external_lex_state = 3}, [145] = {.lex_state = 7, .external_lex_state = 3}, [146] = {.lex_state = 7, .external_lex_state = 3}, [147] = {.lex_state = 7, .external_lex_state = 3}, [148] = {.lex_state = 7, .external_lex_state = 3}, [149] = {.lex_state = 7, .external_lex_state = 3}, [150] = {.lex_state = 7, .external_lex_state = 3}, [151] = {.lex_state = 7, .external_lex_state = 3}, [152] = {.lex_state = 7, .external_lex_state = 3}, [153] = {.lex_state = 7, .external_lex_state = 3}, [154] = {.lex_state = 7, .external_lex_state = 3}, [155] = {.lex_state = 7, .external_lex_state = 3}, [156] = {.lex_state = 7, .external_lex_state = 3}, [157] = {.lex_state = 7, .external_lex_state = 3}, [158] = {.lex_state = 7, .external_lex_state = 3}, [159] = {.lex_state = 7, .external_lex_state = 3}, [160] = {.lex_state = 7, .external_lex_state = 3}, [161] = {.lex_state = 7, .external_lex_state = 3}, [162] = {.lex_state = 7, .external_lex_state = 3}, [163] = {.lex_state = 7, .external_lex_state = 3}, [164] = {.lex_state = 7, .external_lex_state = 3}, [165] = {.lex_state = 7, .external_lex_state = 3}, [166] = {.lex_state = 7, .external_lex_state = 3}, [167] = {.lex_state = 7, .external_lex_state = 3}, [168] = {.lex_state = 7, .external_lex_state = 3}, [169] = {.lex_state = 7, .external_lex_state = 3}, [170] = {.lex_state = 7, .external_lex_state = 3}, [171] = {.lex_state = 7, .external_lex_state = 3}, [172] = {.lex_state = 7, .external_lex_state = 3}, [173] = {.lex_state = 7, .external_lex_state = 3}, [174] = {.lex_state = 7, .external_lex_state = 3}, [175] = {.lex_state = 7, .external_lex_state = 3}, [176] = {.lex_state = 7, .external_lex_state = 3}, [177] = {.lex_state = 7, .external_lex_state = 3}, [178] = {.lex_state = 7, .external_lex_state = 3}, [179] = {.lex_state = 7, .external_lex_state = 3}, [180] = {.lex_state = 7, .external_lex_state = 3}, [181] = {.lex_state = 7, .external_lex_state = 3}, [182] = {.lex_state = 7, .external_lex_state = 3}, [183] = {.lex_state = 7, .external_lex_state = 3}, [184] = {.lex_state = 7, .external_lex_state = 3}, [185] = {.lex_state = 7, .external_lex_state = 3}, [186] = {.lex_state = 7, .external_lex_state = 3}, [187] = {.lex_state = 7, .external_lex_state = 3}, [188] = {.lex_state = 7, .external_lex_state = 3}, [189] = {.lex_state = 7, .external_lex_state = 3}, [190] = {.lex_state = 7, .external_lex_state = 3}, [191] = {.lex_state = 7, .external_lex_state = 3}, [192] = {.lex_state = 7, .external_lex_state = 3}, [193] = {.lex_state = 7, .external_lex_state = 3}, [194] = {.lex_state = 7, .external_lex_state = 3}, [195] = {.lex_state = 7, .external_lex_state = 3}, [196] = {.lex_state = 7, .external_lex_state = 3}, [197] = {.lex_state = 7, .external_lex_state = 3}, [198] = {.lex_state = 7, .external_lex_state = 3}, [199] = {.lex_state = 7, .external_lex_state = 3}, [200] = {.lex_state = 7, .external_lex_state = 3}, [201] = {.lex_state = 7, .external_lex_state = 3}, [202] = {.lex_state = 7, .external_lex_state = 3}, [203] = {.lex_state = 7, .external_lex_state = 3}, [204] = {.lex_state = 7, .external_lex_state = 3}, [205] = {.lex_state = 7, .external_lex_state = 3}, [206] = {.lex_state = 7, .external_lex_state = 3}, [207] = {.lex_state = 7, .external_lex_state = 3}, [208] = {.lex_state = 7, .external_lex_state = 3}, [209] = {.lex_state = 7, .external_lex_state = 3}, [210] = {.lex_state = 7, .external_lex_state = 3}, [211] = {.lex_state = 7, .external_lex_state = 3}, [212] = {.lex_state = 7, .external_lex_state = 3}, [213] = {.lex_state = 7, .external_lex_state = 3}, [214] = {.lex_state = 7, .external_lex_state = 3}, [215] = {.lex_state = 7, .external_lex_state = 3}, [216] = {.lex_state = 7, .external_lex_state = 3}, [217] = {.lex_state = 7, .external_lex_state = 3}, [218] = {.lex_state = 7, .external_lex_state = 3}, [219] = {.lex_state = 7, .external_lex_state = 3}, [220] = {.lex_state = 7, .external_lex_state = 3}, [221] = {.lex_state = 7, .external_lex_state = 3}, [222] = {.lex_state = 7, .external_lex_state = 3}, [223] = {.lex_state = 7, .external_lex_state = 3}, [224] = {.lex_state = 7, .external_lex_state = 3}, [225] = {.lex_state = 7, .external_lex_state = 3}, [226] = {.lex_state = 7, .external_lex_state = 3}, [227] = {.lex_state = 7, .external_lex_state = 3}, [228] = {.lex_state = 7, .external_lex_state = 3}, [229] = {.lex_state = 7, .external_lex_state = 3}, [230] = {.lex_state = 7, .external_lex_state = 3}, [231] = {.lex_state = 7, .external_lex_state = 3}, [232] = {.lex_state = 7, .external_lex_state = 3}, [233] = {.lex_state = 7, .external_lex_state = 3}, [234] = {.lex_state = 7, .external_lex_state = 3}, [235] = {.lex_state = 7, .external_lex_state = 3}, [236] = {.lex_state = 7, .external_lex_state = 3}, [237] = {.lex_state = 7, .external_lex_state = 3}, [238] = {.lex_state = 7, .external_lex_state = 3}, [239] = {.lex_state = 7, .external_lex_state = 3}, [240] = {.lex_state = 7, .external_lex_state = 3}, [241] = {.lex_state = 7, .external_lex_state = 3}, [242] = {.lex_state = 7, .external_lex_state = 3}, [243] = {.lex_state = 7, .external_lex_state = 3}, [244] = {.lex_state = 7, .external_lex_state = 3}, [245] = {.lex_state = 7, .external_lex_state = 3}, [246] = {.lex_state = 7, .external_lex_state = 3}, [247] = {.lex_state = 7, .external_lex_state = 3}, [248] = {.lex_state = 7, .external_lex_state = 3}, [249] = {.lex_state = 7, .external_lex_state = 3}, [250] = {.lex_state = 7, .external_lex_state = 3}, [251] = {.lex_state = 7, .external_lex_state = 3}, [252] = {.lex_state = 7, .external_lex_state = 3}, [253] = {.lex_state = 7, .external_lex_state = 3}, [254] = {.lex_state = 7, .external_lex_state = 3}, [255] = {.lex_state = 7, .external_lex_state = 3}, [256] = {.lex_state = 7, .external_lex_state = 3}, [257] = {.lex_state = 7, .external_lex_state = 3}, [258] = {.lex_state = 7, .external_lex_state = 3}, [259] = {.lex_state = 7, .external_lex_state = 3}, [260] = {.lex_state = 7, .external_lex_state = 3}, [261] = {.lex_state = 7, .external_lex_state = 3}, [262] = {.lex_state = 7, .external_lex_state = 3}, [263] = {.lex_state = 7, .external_lex_state = 3}, [264] = {.lex_state = 7, .external_lex_state = 3}, [265] = {.lex_state = 7, .external_lex_state = 3}, [266] = {.lex_state = 7, .external_lex_state = 3}, [267] = {.lex_state = 7, .external_lex_state = 3}, [268] = {.lex_state = 7, .external_lex_state = 3}, [269] = {.lex_state = 7, .external_lex_state = 3}, [270] = {.lex_state = 7, .external_lex_state = 3}, [271] = {.lex_state = 7, .external_lex_state = 3}, [272] = {.lex_state = 7, .external_lex_state = 3}, [273] = {.lex_state = 7, .external_lex_state = 3}, [274] = {.lex_state = 7, .external_lex_state = 3}, [275] = {.lex_state = 7, .external_lex_state = 3}, [276] = {.lex_state = 7, .external_lex_state = 3}, [277] = {.lex_state = 7, .external_lex_state = 3}, [278] = {.lex_state = 7, .external_lex_state = 3}, [279] = {.lex_state = 7, .external_lex_state = 3}, [280] = {.lex_state = 7, .external_lex_state = 3}, [281] = {.lex_state = 7, .external_lex_state = 3}, [282] = {.lex_state = 7, .external_lex_state = 3}, [283] = {.lex_state = 7, .external_lex_state = 3}, [284] = {.lex_state = 7, .external_lex_state = 3}, [285] = {.lex_state = 7, .external_lex_state = 3}, [286] = {.lex_state = 7, .external_lex_state = 3}, [287] = {.lex_state = 7, .external_lex_state = 3}, [288] = {.lex_state = 7, .external_lex_state = 3}, [289] = {.lex_state = 7, .external_lex_state = 3}, [290] = {.lex_state = 7, .external_lex_state = 3}, [291] = {.lex_state = 7, .external_lex_state = 3}, [292] = {.lex_state = 7, .external_lex_state = 3}, [293] = {.lex_state = 7, .external_lex_state = 3}, [294] = {.lex_state = 7, .external_lex_state = 3}, [295] = {.lex_state = 7, .external_lex_state = 3}, [296] = {.lex_state = 7, .external_lex_state = 3}, [297] = {.lex_state = 7, .external_lex_state = 3}, [298] = {.lex_state = 7, .external_lex_state = 3}, [299] = {.lex_state = 7, .external_lex_state = 3}, [300] = {.lex_state = 7, .external_lex_state = 3}, [301] = {.lex_state = 7, .external_lex_state = 3}, [302] = {.lex_state = 7, .external_lex_state = 3}, [303] = {.lex_state = 7, .external_lex_state = 3}, [304] = {.lex_state = 7, .external_lex_state = 3}, [305] = {.lex_state = 7, .external_lex_state = 3}, [306] = {.lex_state = 7, .external_lex_state = 3}, [307] = {.lex_state = 7, .external_lex_state = 3}, [308] = {.lex_state = 7, .external_lex_state = 3}, [309] = {.lex_state = 7, .external_lex_state = 3}, [310] = {.lex_state = 7, .external_lex_state = 3}, [311] = {.lex_state = 7, .external_lex_state = 3}, [312] = {.lex_state = 7, .external_lex_state = 3}, [313] = {.lex_state = 7, .external_lex_state = 3}, [314] = {.lex_state = 7, .external_lex_state = 3}, [315] = {.lex_state = 7, .external_lex_state = 3}, [316] = {.lex_state = 7, .external_lex_state = 3}, [317] = {.lex_state = 7, .external_lex_state = 3}, [318] = {.lex_state = 7, .external_lex_state = 3}, [319] = {.lex_state = 7, .external_lex_state = 3}, [320] = {.lex_state = 7, .external_lex_state = 3}, [321] = {.lex_state = 7, .external_lex_state = 3}, [322] = {.lex_state = 7, .external_lex_state = 3}, [323] = {.lex_state = 7, .external_lex_state = 3}, [324] = {.lex_state = 7, .external_lex_state = 3}, [325] = {.lex_state = 7, .external_lex_state = 3}, [326] = {.lex_state = 7, .external_lex_state = 3}, [327] = {.lex_state = 7, .external_lex_state = 3}, [328] = {.lex_state = 7, .external_lex_state = 3}, [329] = {.lex_state = 7, .external_lex_state = 3}, [330] = {.lex_state = 7, .external_lex_state = 3}, [331] = {.lex_state = 7, .external_lex_state = 3}, [332] = {.lex_state = 7, .external_lex_state = 3}, [333] = {.lex_state = 7, .external_lex_state = 3}, [334] = {.lex_state = 7, .external_lex_state = 3}, [335] = {.lex_state = 7, .external_lex_state = 3}, [336] = {.lex_state = 7, .external_lex_state = 3}, [337] = {.lex_state = 7, .external_lex_state = 3}, [338] = {.lex_state = 7, .external_lex_state = 3}, [339] = {.lex_state = 7, .external_lex_state = 3}, [340] = {.lex_state = 7, .external_lex_state = 3}, [341] = {.lex_state = 7, .external_lex_state = 3}, [342] = {.lex_state = 7, .external_lex_state = 3}, [343] = {.lex_state = 7, .external_lex_state = 3}, [344] = {.lex_state = 7, .external_lex_state = 3}, [345] = {.lex_state = 7, .external_lex_state = 3}, [346] = {.lex_state = 7, .external_lex_state = 3}, [347] = {.lex_state = 7, .external_lex_state = 3}, [348] = {.lex_state = 7, .external_lex_state = 3}, [349] = {.lex_state = 7, .external_lex_state = 3}, [350] = {.lex_state = 7, .external_lex_state = 3}, [351] = {.lex_state = 7, .external_lex_state = 3}, [352] = {.lex_state = 7, .external_lex_state = 3}, [353] = {.lex_state = 7, .external_lex_state = 3}, [354] = {.lex_state = 7, .external_lex_state = 3}, [355] = {.lex_state = 7, .external_lex_state = 3}, [356] = {.lex_state = 7, .external_lex_state = 3}, [357] = {.lex_state = 7, .external_lex_state = 3}, [358] = {.lex_state = 7, .external_lex_state = 3}, [359] = {.lex_state = 7, .external_lex_state = 3}, [360] = {.lex_state = 7, .external_lex_state = 3}, [361] = {.lex_state = 7, .external_lex_state = 3}, [362] = {.lex_state = 7, .external_lex_state = 3}, [363] = {.lex_state = 7, .external_lex_state = 3}, [364] = {.lex_state = 7, .external_lex_state = 3}, [365] = {.lex_state = 7, .external_lex_state = 3}, [366] = {.lex_state = 7, .external_lex_state = 3}, [367] = {.lex_state = 7, .external_lex_state = 3}, [368] = {.lex_state = 7, .external_lex_state = 3}, [369] = {.lex_state = 7, .external_lex_state = 3}, [370] = {.lex_state = 7, .external_lex_state = 3}, [371] = {.lex_state = 7, .external_lex_state = 3}, [372] = {.lex_state = 7, .external_lex_state = 3}, [373] = {.lex_state = 7, .external_lex_state = 3}, [374] = {.lex_state = 7, .external_lex_state = 3}, [375] = {.lex_state = 7, .external_lex_state = 3}, [376] = {.lex_state = 7, .external_lex_state = 3}, [377] = {.lex_state = 7, .external_lex_state = 3}, [378] = {.lex_state = 7, .external_lex_state = 3}, [379] = {.lex_state = 7, .external_lex_state = 3}, [380] = {.lex_state = 7, .external_lex_state = 3}, [381] = {.lex_state = 7, .external_lex_state = 3}, [382] = {.lex_state = 7, .external_lex_state = 3}, [383] = {.lex_state = 7, .external_lex_state = 3}, [384] = {.lex_state = 7, .external_lex_state = 3}, [385] = {.lex_state = 7, .external_lex_state = 3}, [386] = {.lex_state = 7, .external_lex_state = 3}, [387] = {.lex_state = 7, .external_lex_state = 3}, [388] = {.lex_state = 7, .external_lex_state = 3}, [389] = {.lex_state = 7, .external_lex_state = 3}, [390] = {.lex_state = 7, .external_lex_state = 3}, [391] = {.lex_state = 7, .external_lex_state = 3}, [392] = {.lex_state = 7, .external_lex_state = 3}, [393] = {.lex_state = 7, .external_lex_state = 3}, [394] = {.lex_state = 7, .external_lex_state = 3}, [395] = {.lex_state = 7, .external_lex_state = 3}, [396] = {.lex_state = 7, .external_lex_state = 3}, [397] = {.lex_state = 7, .external_lex_state = 3}, [398] = {.lex_state = 7, .external_lex_state = 3}, [399] = {.lex_state = 7, .external_lex_state = 3}, [400] = {.lex_state = 7, .external_lex_state = 3}, [401] = {.lex_state = 7, .external_lex_state = 3}, [402] = {.lex_state = 7, .external_lex_state = 3}, [403] = {.lex_state = 7, .external_lex_state = 3}, [404] = {.lex_state = 7, .external_lex_state = 3}, [405] = {.lex_state = 7, .external_lex_state = 3}, [406] = {.lex_state = 7, .external_lex_state = 3}, [407] = {.lex_state = 7, .external_lex_state = 3}, [408] = {.lex_state = 7, .external_lex_state = 3}, [409] = {.lex_state = 7, .external_lex_state = 3}, [410] = {.lex_state = 7, .external_lex_state = 3}, [411] = {.lex_state = 7, .external_lex_state = 3}, [412] = {.lex_state = 7, .external_lex_state = 3}, [413] = {.lex_state = 7, .external_lex_state = 3}, [414] = {.lex_state = 7, .external_lex_state = 3}, [415] = {.lex_state = 7, .external_lex_state = 3}, [416] = {.lex_state = 7, .external_lex_state = 3}, [417] = {.lex_state = 7, .external_lex_state = 3}, [418] = {.lex_state = 7, .external_lex_state = 3}, [419] = {.lex_state = 7, .external_lex_state = 3}, [420] = {.lex_state = 7, .external_lex_state = 3}, [421] = {.lex_state = 7, .external_lex_state = 3}, [422] = {.lex_state = 7, .external_lex_state = 3}, [423] = {.lex_state = 7, .external_lex_state = 3}, [424] = {.lex_state = 7, .external_lex_state = 3}, [425] = {.lex_state = 7, .external_lex_state = 3}, [426] = {.lex_state = 7, .external_lex_state = 3}, [427] = {.lex_state = 7, .external_lex_state = 3}, [428] = {.lex_state = 7, .external_lex_state = 3}, [429] = {.lex_state = 7, .external_lex_state = 3}, [430] = {.lex_state = 7, .external_lex_state = 3}, [431] = {.lex_state = 7, .external_lex_state = 3}, [432] = {.lex_state = 7, .external_lex_state = 3}, [433] = {.lex_state = 7, .external_lex_state = 3}, [434] = {.lex_state = 7, .external_lex_state = 3}, [435] = {.lex_state = 7, .external_lex_state = 3}, [436] = {.lex_state = 7, .external_lex_state = 3}, [437] = {.lex_state = 7, .external_lex_state = 3}, [438] = {.lex_state = 7, .external_lex_state = 3}, [439] = {.lex_state = 7, .external_lex_state = 3}, [440] = {.lex_state = 7, .external_lex_state = 3}, [441] = {.lex_state = 7, .external_lex_state = 3}, [442] = {.lex_state = 7, .external_lex_state = 3}, [443] = {.lex_state = 7, .external_lex_state = 3}, [444] = {.lex_state = 7, .external_lex_state = 3}, [445] = {.lex_state = 7, .external_lex_state = 3}, [446] = {.lex_state = 7, .external_lex_state = 3}, [447] = {.lex_state = 7, .external_lex_state = 3}, [448] = {.lex_state = 7, .external_lex_state = 3}, [449] = {.lex_state = 7, .external_lex_state = 3}, [450] = {.lex_state = 7, .external_lex_state = 3}, [451] = {.lex_state = 7, .external_lex_state = 3}, [452] = {.lex_state = 7, .external_lex_state = 3}, [453] = {.lex_state = 7, .external_lex_state = 3}, [454] = {.lex_state = 7, .external_lex_state = 3}, [455] = {.lex_state = 7, .external_lex_state = 3}, [456] = {.lex_state = 7, .external_lex_state = 3}, [457] = {.lex_state = 7, .external_lex_state = 3}, [458] = {.lex_state = 7, .external_lex_state = 3}, [459] = {.lex_state = 7, .external_lex_state = 3}, [460] = {.lex_state = 7, .external_lex_state = 3}, [461] = {.lex_state = 7, .external_lex_state = 3}, [462] = {.lex_state = 7, .external_lex_state = 3}, [463] = {.lex_state = 7, .external_lex_state = 3}, [464] = {.lex_state = 7, .external_lex_state = 3}, [465] = {.lex_state = 7, .external_lex_state = 3}, [466] = {.lex_state = 7, .external_lex_state = 3}, [467] = {.lex_state = 7, .external_lex_state = 3}, [468] = {.lex_state = 7, .external_lex_state = 3}, [469] = {.lex_state = 7, .external_lex_state = 3}, [470] = {.lex_state = 7, .external_lex_state = 3}, [471] = {.lex_state = 7, .external_lex_state = 3}, [472] = {.lex_state = 7, .external_lex_state = 3}, [473] = {.lex_state = 7, .external_lex_state = 3}, [474] = {.lex_state = 7, .external_lex_state = 3}, [475] = {.lex_state = 7, .external_lex_state = 3}, [476] = {.lex_state = 7, .external_lex_state = 3}, [477] = {.lex_state = 7, .external_lex_state = 3}, [478] = {.lex_state = 7, .external_lex_state = 3}, [479] = {.lex_state = 7, .external_lex_state = 3}, [480] = {.lex_state = 7, .external_lex_state = 3}, [481] = {.lex_state = 7, .external_lex_state = 3}, [482] = {.lex_state = 7, .external_lex_state = 3}, [483] = {.lex_state = 7, .external_lex_state = 3}, [484] = {.lex_state = 7, .external_lex_state = 3}, [485] = {.lex_state = 7, .external_lex_state = 3}, [486] = {.lex_state = 7, .external_lex_state = 3}, [487] = {.lex_state = 7, .external_lex_state = 3}, [488] = {.lex_state = 7, .external_lex_state = 3}, [489] = {.lex_state = 7, .external_lex_state = 3}, [490] = {.lex_state = 7, .external_lex_state = 3}, [491] = {.lex_state = 7, .external_lex_state = 3}, [492] = {.lex_state = 7, .external_lex_state = 3}, [493] = {.lex_state = 7, .external_lex_state = 3}, [494] = {.lex_state = 7, .external_lex_state = 3}, [495] = {.lex_state = 7, .external_lex_state = 3}, [496] = {.lex_state = 7, .external_lex_state = 3}, [497] = {.lex_state = 7, .external_lex_state = 3}, [498] = {.lex_state = 7, .external_lex_state = 3}, [499] = {.lex_state = 7, .external_lex_state = 3}, [500] = {.lex_state = 7, .external_lex_state = 3}, [501] = {.lex_state = 7, .external_lex_state = 3}, [502] = {.lex_state = 7, .external_lex_state = 3}, [503] = {.lex_state = 7, .external_lex_state = 3}, [504] = {.lex_state = 7, .external_lex_state = 3}, [505] = {.lex_state = 7, .external_lex_state = 3}, [506] = {.lex_state = 7, .external_lex_state = 3}, [507] = {.lex_state = 7, .external_lex_state = 3}, [508] = {.lex_state = 7, .external_lex_state = 3}, [509] = {.lex_state = 7, .external_lex_state = 3}, [510] = {.lex_state = 7, .external_lex_state = 3}, [511] = {.lex_state = 7, .external_lex_state = 3}, [512] = {.lex_state = 7, .external_lex_state = 3}, [513] = {.lex_state = 7, .external_lex_state = 3}, [514] = {.lex_state = 7, .external_lex_state = 3}, [515] = {.lex_state = 7, .external_lex_state = 3}, [516] = {.lex_state = 7, .external_lex_state = 3}, [517] = {.lex_state = 7, .external_lex_state = 3}, [518] = {.lex_state = 7, .external_lex_state = 3}, [519] = {.lex_state = 7, .external_lex_state = 3}, [520] = {.lex_state = 7, .external_lex_state = 3}, [521] = {.lex_state = 7, .external_lex_state = 3}, [522] = {.lex_state = 7, .external_lex_state = 3}, [523] = {.lex_state = 7, .external_lex_state = 3}, [524] = {.lex_state = 7, .external_lex_state = 3}, [525] = {.lex_state = 7, .external_lex_state = 3}, [526] = {.lex_state = 3, .external_lex_state = 3}, [527] = {.lex_state = 3, .external_lex_state = 3}, [528] = {.lex_state = 3, .external_lex_state = 3}, [529] = {.lex_state = 3, .external_lex_state = 3}, [530] = {.lex_state = 3, .external_lex_state = 3}, [531] = {.lex_state = 3, .external_lex_state = 3}, [532] = {.lex_state = 3, .external_lex_state = 3}, [533] = {.lex_state = 3, .external_lex_state = 3}, [534] = {.lex_state = 3, .external_lex_state = 3}, [535] = {.lex_state = 3, .external_lex_state = 3}, [536] = {.lex_state = 3, .external_lex_state = 3}, [537] = {.lex_state = 3, .external_lex_state = 3}, [538] = {.lex_state = 3, .external_lex_state = 3}, [539] = {.lex_state = 3, .external_lex_state = 3}, [540] = {.lex_state = 3, .external_lex_state = 3}, [541] = {.lex_state = 3, .external_lex_state = 3}, [542] = {.lex_state = 3, .external_lex_state = 3}, [543] = {.lex_state = 3, .external_lex_state = 3}, [544] = {.lex_state = 3, .external_lex_state = 3}, [545] = {.lex_state = 3, .external_lex_state = 3}, [546] = {.lex_state = 3, .external_lex_state = 3}, [547] = {.lex_state = 3, .external_lex_state = 3}, [548] = {.lex_state = 3, .external_lex_state = 3}, [549] = {.lex_state = 3, .external_lex_state = 3}, [550] = {.lex_state = 3, .external_lex_state = 3}, [551] = {.lex_state = 3, .external_lex_state = 3}, [552] = {.lex_state = 3, .external_lex_state = 3}, [553] = {.lex_state = 4, .external_lex_state = 3}, [554] = {.lex_state = 4, .external_lex_state = 3}, [555] = {.lex_state = 4, .external_lex_state = 3}, [556] = {.lex_state = 4, .external_lex_state = 3}, [557] = {.lex_state = 4, .external_lex_state = 3}, [558] = {.lex_state = 4, .external_lex_state = 3}, [559] = {.lex_state = 4, .external_lex_state = 3}, [560] = {.lex_state = 4, .external_lex_state = 3}, [561] = {.lex_state = 4, .external_lex_state = 3}, [562] = {.lex_state = 4, .external_lex_state = 3}, [563] = {.lex_state = 4, .external_lex_state = 3}, [564] = {.lex_state = 4, .external_lex_state = 3}, [565] = {.lex_state = 4, .external_lex_state = 3}, [566] = {.lex_state = 4, .external_lex_state = 3}, [567] = {.lex_state = 4, .external_lex_state = 3}, [568] = {.lex_state = 4, .external_lex_state = 3}, [569] = {.lex_state = 4, .external_lex_state = 3}, [570] = {.lex_state = 4, .external_lex_state = 3}, [571] = {.lex_state = 4, .external_lex_state = 3}, [572] = {.lex_state = 4, .external_lex_state = 3}, [573] = {.lex_state = 4, .external_lex_state = 3}, [574] = {.lex_state = 4, .external_lex_state = 3}, [575] = {.lex_state = 4, .external_lex_state = 3}, [576] = {.lex_state = 4, .external_lex_state = 3}, [577] = {.lex_state = 4, .external_lex_state = 3}, [578] = {.lex_state = 4, .external_lex_state = 3}, [579] = {.lex_state = 4, .external_lex_state = 3}, [580] = {.lex_state = 4, .external_lex_state = 3}, [581] = {.lex_state = 4, .external_lex_state = 3}, [582] = {.lex_state = 4, .external_lex_state = 3}, [583] = {.lex_state = 4, .external_lex_state = 3}, [584] = {.lex_state = 7, .external_lex_state = 3}, [585] = {.lex_state = 7, .external_lex_state = 3}, [586] = {.lex_state = 7, .external_lex_state = 3}, [587] = {.lex_state = 4, .external_lex_state = 3}, [588] = {.lex_state = 4, .external_lex_state = 3}, [589] = {.lex_state = 4, .external_lex_state = 3}, [590] = {.lex_state = 7, .external_lex_state = 3}, [591] = {.lex_state = 4, .external_lex_state = 3}, [592] = {.lex_state = 4, .external_lex_state = 3}, [593] = {.lex_state = 4, .external_lex_state = 3}, [594] = {.lex_state = 7, .external_lex_state = 3}, [595] = {.lex_state = 4, .external_lex_state = 3}, [596] = {.lex_state = 7, .external_lex_state = 3}, [597] = {.lex_state = 7, .external_lex_state = 3}, [598] = {.lex_state = 7, .external_lex_state = 3}, [599] = {.lex_state = 4, .external_lex_state = 3}, [600] = {.lex_state = 7, .external_lex_state = 3}, [601] = {.lex_state = 7, .external_lex_state = 3}, [602] = {.lex_state = 7, .external_lex_state = 3}, [603] = {.lex_state = 4, .external_lex_state = 3}, [604] = {.lex_state = 4, .external_lex_state = 3}, [605] = {.lex_state = 7, .external_lex_state = 3}, [606] = {.lex_state = 7, .external_lex_state = 3}, [607] = {.lex_state = 7, .external_lex_state = 3}, [608] = {.lex_state = 7, .external_lex_state = 3}, [609] = {.lex_state = 7, .external_lex_state = 3}, [610] = {.lex_state = 7, .external_lex_state = 3}, [611] = {.lex_state = 7, .external_lex_state = 3}, [612] = {.lex_state = 7, .external_lex_state = 3}, [613] = {.lex_state = 7, .external_lex_state = 3}, [614] = {.lex_state = 7, .external_lex_state = 3}, [615] = {.lex_state = 7, .external_lex_state = 3}, [616] = {.lex_state = 7, .external_lex_state = 3}, [617] = {.lex_state = 7, .external_lex_state = 3}, [618] = {.lex_state = 7, .external_lex_state = 3}, [619] = {.lex_state = 7, .external_lex_state = 3}, [620] = {.lex_state = 3, .external_lex_state = 3}, [621] = {.lex_state = 3, .external_lex_state = 3}, [622] = {.lex_state = 3, .external_lex_state = 3}, [623] = {.lex_state = 3, .external_lex_state = 3}, [624] = {.lex_state = 3, .external_lex_state = 3}, [625] = {.lex_state = 3, .external_lex_state = 3}, [626] = {.lex_state = 3, .external_lex_state = 3}, [627] = {.lex_state = 3, .external_lex_state = 3}, [628] = {.lex_state = 3, .external_lex_state = 3}, [629] = {.lex_state = 3, .external_lex_state = 3}, [630] = {.lex_state = 3, .external_lex_state = 3}, [631] = {.lex_state = 3, .external_lex_state = 3}, [632] = {.lex_state = 3, .external_lex_state = 3}, [633] = {.lex_state = 3, .external_lex_state = 3}, [634] = {.lex_state = 3, .external_lex_state = 3}, [635] = {.lex_state = 3, .external_lex_state = 3}, [636] = {.lex_state = 3, .external_lex_state = 3}, [637] = {.lex_state = 3, .external_lex_state = 3}, [638] = {.lex_state = 3, .external_lex_state = 3}, [639] = {.lex_state = 3, .external_lex_state = 3}, [640] = {.lex_state = 3, .external_lex_state = 3}, [641] = {.lex_state = 4, .external_lex_state = 3}, [642] = {.lex_state = 4, .external_lex_state = 3}, [643] = {.lex_state = 4, .external_lex_state = 3}, [644] = {.lex_state = 4, .external_lex_state = 3}, [645] = {.lex_state = 4, .external_lex_state = 3}, [646] = {.lex_state = 4, .external_lex_state = 3}, [647] = {.lex_state = 4, .external_lex_state = 3}, [648] = {.lex_state = 4, .external_lex_state = 3}, [649] = {.lex_state = 4, .external_lex_state = 3}, [650] = {.lex_state = 4, .external_lex_state = 3}, [651] = {.lex_state = 4, .external_lex_state = 3}, [652] = {.lex_state = 4, .external_lex_state = 3}, [653] = {.lex_state = 4, .external_lex_state = 3}, [654] = {.lex_state = 4, .external_lex_state = 3}, [655] = {.lex_state = 4, .external_lex_state = 3}, [656] = {.lex_state = 4, .external_lex_state = 3}, [657] = {.lex_state = 4, .external_lex_state = 3}, [658] = {.lex_state = 4, .external_lex_state = 3}, [659] = {.lex_state = 4, .external_lex_state = 3}, [660] = {.lex_state = 4, .external_lex_state = 3}, [661] = {.lex_state = 11, .external_lex_state = 4}, [662] = {.lex_state = 11, .external_lex_state = 4}, [663] = {.lex_state = 11, .external_lex_state = 4}, [664] = {.lex_state = 11, .external_lex_state = 4}, [665] = {.lex_state = 11, .external_lex_state = 4}, [666] = {.lex_state = 11, .external_lex_state = 4}, [667] = {.lex_state = 11, .external_lex_state = 4}, [668] = {.lex_state = 11, .external_lex_state = 4}, [669] = {.lex_state = 11, .external_lex_state = 4}, [670] = {.lex_state = 11, .external_lex_state = 4}, [671] = {.lex_state = 11, .external_lex_state = 4}, [672] = {.lex_state = 6, .external_lex_state = 3}, [673] = {.lex_state = 6, .external_lex_state = 3}, [674] = {.lex_state = 6, .external_lex_state = 3}, [675] = {.lex_state = 6, .external_lex_state = 3}, [676] = {.lex_state = 11, .external_lex_state = 4}, [677] = {.lex_state = 6, .external_lex_state = 3}, [678] = {.lex_state = 11, .external_lex_state = 4}, [679] = {.lex_state = 6, .external_lex_state = 3}, [680] = {.lex_state = 11, .external_lex_state = 4}, [681] = {.lex_state = 11, .external_lex_state = 4}, [682] = {.lex_state = 11, .external_lex_state = 4}, [683] = {.lex_state = 11, .external_lex_state = 4}, [684] = {.lex_state = 6, .external_lex_state = 3}, [685] = {.lex_state = 6, .external_lex_state = 3}, [686] = {.lex_state = 6, .external_lex_state = 3}, [687] = {.lex_state = 11, .external_lex_state = 4}, [688] = {.lex_state = 6, .external_lex_state = 3}, [689] = {.lex_state = 11, .external_lex_state = 4}, [690] = {.lex_state = 6, .external_lex_state = 3}, [691] = {.lex_state = 6, .external_lex_state = 3}, [692] = {.lex_state = 11, .external_lex_state = 4}, [693] = {.lex_state = 6, .external_lex_state = 3}, [694] = {.lex_state = 6, .external_lex_state = 3}, [695] = {.lex_state = 6, .external_lex_state = 3}, [696] = {.lex_state = 11, .external_lex_state = 4}, [697] = {.lex_state = 11, .external_lex_state = 4}, [698] = {.lex_state = 7, .external_lex_state = 3}, [699] = {.lex_state = 7, .external_lex_state = 3}, [700] = {.lex_state = 7, .external_lex_state = 3}, [701] = {.lex_state = 7, .external_lex_state = 3}, [702] = {.lex_state = 7, .external_lex_state = 3}, [703] = {.lex_state = 7, .external_lex_state = 3}, [704] = {.lex_state = 7, .external_lex_state = 3}, [705] = {.lex_state = 7, .external_lex_state = 3}, [706] = {.lex_state = 7, .external_lex_state = 3}, [707] = {.lex_state = 7, .external_lex_state = 3}, [708] = {.lex_state = 7, .external_lex_state = 3}, [709] = {.lex_state = 7, .external_lex_state = 3}, [710] = {.lex_state = 7, .external_lex_state = 3}, [711] = {.lex_state = 7, .external_lex_state = 3}, [712] = {.lex_state = 7, .external_lex_state = 3}, [713] = {.lex_state = 7, .external_lex_state = 3}, [714] = {.lex_state = 7, .external_lex_state = 3}, [715] = {.lex_state = 7, .external_lex_state = 3}, [716] = {.lex_state = 7, .external_lex_state = 3}, [717] = {.lex_state = 7, .external_lex_state = 3}, [718] = {.lex_state = 7, .external_lex_state = 3}, [719] = {.lex_state = 7, .external_lex_state = 3}, [720] = {.lex_state = 7, .external_lex_state = 3}, [721] = {.lex_state = 7, .external_lex_state = 3}, [722] = {.lex_state = 7, .external_lex_state = 3}, [723] = {.lex_state = 7, .external_lex_state = 3}, [724] = {.lex_state = 7, .external_lex_state = 3}, [725] = {.lex_state = 7, .external_lex_state = 3}, [726] = {.lex_state = 7, .external_lex_state = 3}, [727] = {.lex_state = 7, .external_lex_state = 3}, [728] = {.lex_state = 7, .external_lex_state = 3}, [729] = {.lex_state = 7, .external_lex_state = 3}, [730] = {.lex_state = 7, .external_lex_state = 3}, [731] = {.lex_state = 7, .external_lex_state = 3}, [732] = {.lex_state = 7, .external_lex_state = 3}, [733] = {.lex_state = 7, .external_lex_state = 3}, [734] = {.lex_state = 7, .external_lex_state = 3}, [735] = {.lex_state = 7, .external_lex_state = 3}, [736] = {.lex_state = 7, .external_lex_state = 3}, [737] = {.lex_state = 7, .external_lex_state = 3}, [738] = {.lex_state = 7, .external_lex_state = 3}, [739] = {.lex_state = 7, .external_lex_state = 3}, [740] = {.lex_state = 7, .external_lex_state = 3}, [741] = {.lex_state = 7, .external_lex_state = 3}, [742] = {.lex_state = 7, .external_lex_state = 3}, [743] = {.lex_state = 7, .external_lex_state = 3}, [744] = {.lex_state = 7, .external_lex_state = 3}, [745] = {.lex_state = 7, .external_lex_state = 3}, [746] = {.lex_state = 7, .external_lex_state = 3}, [747] = {.lex_state = 7, .external_lex_state = 3}, [748] = {.lex_state = 7, .external_lex_state = 3}, [749] = {.lex_state = 7, .external_lex_state = 3}, [750] = {.lex_state = 7, .external_lex_state = 3}, [751] = {.lex_state = 7, .external_lex_state = 3}, [752] = {.lex_state = 7, .external_lex_state = 3}, [753] = {.lex_state = 7, .external_lex_state = 3}, [754] = {.lex_state = 7, .external_lex_state = 3}, [755] = {.lex_state = 7, .external_lex_state = 3}, [756] = {.lex_state = 7, .external_lex_state = 3}, [757] = {.lex_state = 7, .external_lex_state = 3}, [758] = {.lex_state = 7, .external_lex_state = 3}, [759] = {.lex_state = 7, .external_lex_state = 3}, [760] = {.lex_state = 7, .external_lex_state = 3}, [761] = {.lex_state = 7, .external_lex_state = 3}, [762] = {.lex_state = 7, .external_lex_state = 3}, [763] = {.lex_state = 7, .external_lex_state = 3}, [764] = {.lex_state = 7, .external_lex_state = 3}, [765] = {.lex_state = 7, .external_lex_state = 3}, [766] = {.lex_state = 7, .external_lex_state = 3}, [767] = {.lex_state = 7, .external_lex_state = 3}, [768] = {.lex_state = 7, .external_lex_state = 3}, [769] = {.lex_state = 7, .external_lex_state = 3}, [770] = {.lex_state = 7, .external_lex_state = 3}, [771] = {.lex_state = 7, .external_lex_state = 3}, [772] = {.lex_state = 7, .external_lex_state = 3}, [773] = {.lex_state = 7, .external_lex_state = 3}, [774] = {.lex_state = 7, .external_lex_state = 3}, [775] = {.lex_state = 7, .external_lex_state = 3}, [776] = {.lex_state = 7, .external_lex_state = 3}, [777] = {.lex_state = 7, .external_lex_state = 3}, [778] = {.lex_state = 7, .external_lex_state = 3}, [779] = {.lex_state = 7, .external_lex_state = 3}, [780] = {.lex_state = 7, .external_lex_state = 3}, [781] = {.lex_state = 7, .external_lex_state = 3}, [782] = {.lex_state = 7, .external_lex_state = 3}, [783] = {.lex_state = 7, .external_lex_state = 3}, [784] = {.lex_state = 7, .external_lex_state = 3}, [785] = {.lex_state = 7, .external_lex_state = 3}, [786] = {.lex_state = 7, .external_lex_state = 3}, [787] = {.lex_state = 7, .external_lex_state = 3}, [788] = {.lex_state = 7, .external_lex_state = 3}, [789] = {.lex_state = 7, .external_lex_state = 3}, [790] = {.lex_state = 7, .external_lex_state = 3}, [791] = {.lex_state = 7, .external_lex_state = 3}, [792] = {.lex_state = 7, .external_lex_state = 3}, [793] = {.lex_state = 7, .external_lex_state = 3}, [794] = {.lex_state = 7, .external_lex_state = 3}, [795] = {.lex_state = 7, .external_lex_state = 3}, [796] = {.lex_state = 7, .external_lex_state = 3}, [797] = {.lex_state = 7, .external_lex_state = 3}, [798] = {.lex_state = 7, .external_lex_state = 3}, [799] = {.lex_state = 7, .external_lex_state = 3}, [800] = {.lex_state = 7, .external_lex_state = 3}, [801] = {.lex_state = 7, .external_lex_state = 3}, [802] = {.lex_state = 7, .external_lex_state = 3}, [803] = {.lex_state = 7, .external_lex_state = 3}, [804] = {.lex_state = 7, .external_lex_state = 3}, [805] = {.lex_state = 7, .external_lex_state = 3}, [806] = {.lex_state = 7, .external_lex_state = 3}, [807] = {.lex_state = 7, .external_lex_state = 3}, [808] = {.lex_state = 7, .external_lex_state = 3}, [809] = {.lex_state = 7, .external_lex_state = 3}, [810] = {.lex_state = 7, .external_lex_state = 3}, [811] = {.lex_state = 7, .external_lex_state = 3}, [812] = {.lex_state = 7, .external_lex_state = 3}, [813] = {.lex_state = 7, .external_lex_state = 3}, [814] = {.lex_state = 7, .external_lex_state = 3}, [815] = {.lex_state = 7, .external_lex_state = 3}, [816] = {.lex_state = 7, .external_lex_state = 3}, [817] = {.lex_state = 7, .external_lex_state = 3}, [818] = {.lex_state = 7, .external_lex_state = 3}, [819] = {.lex_state = 7, .external_lex_state = 3}, [820] = {.lex_state = 7, .external_lex_state = 3}, [821] = {.lex_state = 7, .external_lex_state = 3}, [822] = {.lex_state = 7, .external_lex_state = 3}, [823] = {.lex_state = 7, .external_lex_state = 3}, [824] = {.lex_state = 7, .external_lex_state = 3}, [825] = {.lex_state = 7, .external_lex_state = 3}, [826] = {.lex_state = 7, .external_lex_state = 3}, [827] = {.lex_state = 7, .external_lex_state = 3}, [828] = {.lex_state = 7, .external_lex_state = 3}, [829] = {.lex_state = 7, .external_lex_state = 3}, [830] = {.lex_state = 7, .external_lex_state = 3}, [831] = {.lex_state = 7, .external_lex_state = 3}, [832] = {.lex_state = 7, .external_lex_state = 3}, [833] = {.lex_state = 7, .external_lex_state = 3}, [834] = {.lex_state = 7, .external_lex_state = 3}, [835] = {.lex_state = 7, .external_lex_state = 3}, [836] = {.lex_state = 7, .external_lex_state = 3}, [837] = {.lex_state = 7, .external_lex_state = 3}, [838] = {.lex_state = 7, .external_lex_state = 3}, [839] = {.lex_state = 7, .external_lex_state = 3}, [840] = {.lex_state = 7, .external_lex_state = 3}, [841] = {.lex_state = 7, .external_lex_state = 3}, [842] = {.lex_state = 7, .external_lex_state = 3}, [843] = {.lex_state = 7, .external_lex_state = 3}, [844] = {.lex_state = 7, .external_lex_state = 3}, [845] = {.lex_state = 7, .external_lex_state = 3}, [846] = {.lex_state = 7, .external_lex_state = 3}, [847] = {.lex_state = 7, .external_lex_state = 3}, [848] = {.lex_state = 7, .external_lex_state = 3}, [849] = {.lex_state = 7, .external_lex_state = 3}, [850] = {.lex_state = 7, .external_lex_state = 3}, [851] = {.lex_state = 7, .external_lex_state = 3}, [852] = {.lex_state = 7, .external_lex_state = 3}, [853] = {.lex_state = 7, .external_lex_state = 3}, [854] = {.lex_state = 7, .external_lex_state = 3}, [855] = {.lex_state = 7, .external_lex_state = 3}, [856] = {.lex_state = 7, .external_lex_state = 3}, [857] = {.lex_state = 7, .external_lex_state = 3}, [858] = {.lex_state = 7, .external_lex_state = 3}, [859] = {.lex_state = 7, .external_lex_state = 3}, [860] = {.lex_state = 7, .external_lex_state = 3}, [861] = {.lex_state = 7, .external_lex_state = 3}, [862] = {.lex_state = 7, .external_lex_state = 3}, [863] = {.lex_state = 7, .external_lex_state = 3}, [864] = {.lex_state = 7, .external_lex_state = 3}, [865] = {.lex_state = 7, .external_lex_state = 3}, [866] = {.lex_state = 7, .external_lex_state = 3}, [867] = {.lex_state = 7, .external_lex_state = 3}, [868] = {.lex_state = 7, .external_lex_state = 3}, [869] = {.lex_state = 7, .external_lex_state = 3}, [870] = {.lex_state = 7, .external_lex_state = 3}, [871] = {.lex_state = 7, .external_lex_state = 3}, [872] = {.lex_state = 7, .external_lex_state = 3}, [873] = {.lex_state = 7, .external_lex_state = 3}, [874] = {.lex_state = 7, .external_lex_state = 3}, [875] = {.lex_state = 7, .external_lex_state = 3}, [876] = {.lex_state = 7, .external_lex_state = 3}, [877] = {.lex_state = 7, .external_lex_state = 3}, [878] = {.lex_state = 7, .external_lex_state = 3}, [879] = {.lex_state = 7, .external_lex_state = 3}, [880] = {.lex_state = 7, .external_lex_state = 3}, [881] = {.lex_state = 7, .external_lex_state = 3}, [882] = {.lex_state = 7, .external_lex_state = 3}, [883] = {.lex_state = 7, .external_lex_state = 3}, [884] = {.lex_state = 7, .external_lex_state = 3}, [885] = {.lex_state = 7, .external_lex_state = 3}, [886] = {.lex_state = 7, .external_lex_state = 3}, [887] = {.lex_state = 7, .external_lex_state = 3}, [888] = {.lex_state = 7, .external_lex_state = 3}, [889] = {.lex_state = 7, .external_lex_state = 3}, [890] = {.lex_state = 7, .external_lex_state = 3}, [891] = {.lex_state = 7, .external_lex_state = 3}, [892] = {.lex_state = 7, .external_lex_state = 3}, [893] = {.lex_state = 7, .external_lex_state = 3}, [894] = {.lex_state = 7, .external_lex_state = 3}, [895] = {.lex_state = 7, .external_lex_state = 3}, [896] = {.lex_state = 7, .external_lex_state = 3}, [897] = {.lex_state = 7, .external_lex_state = 3}, [898] = {.lex_state = 7, .external_lex_state = 3}, [899] = {.lex_state = 7, .external_lex_state = 3}, [900] = {.lex_state = 7, .external_lex_state = 3}, [901] = {.lex_state = 7, .external_lex_state = 3}, [902] = {.lex_state = 7, .external_lex_state = 3}, [903] = {.lex_state = 7, .external_lex_state = 3}, [904] = {.lex_state = 7, .external_lex_state = 3}, [905] = {.lex_state = 7, .external_lex_state = 3}, [906] = {.lex_state = 7, .external_lex_state = 3}, [907] = {.lex_state = 7, .external_lex_state = 3}, [908] = {.lex_state = 7, .external_lex_state = 3}, [909] = {.lex_state = 7, .external_lex_state = 3}, [910] = {.lex_state = 7, .external_lex_state = 3}, [911] = {.lex_state = 7, .external_lex_state = 3}, [912] = {.lex_state = 7, .external_lex_state = 3}, [913] = {.lex_state = 7, .external_lex_state = 3}, [914] = {.lex_state = 7, .external_lex_state = 3}, [915] = {.lex_state = 7, .external_lex_state = 3}, [916] = {.lex_state = 7, .external_lex_state = 3}, [917] = {.lex_state = 7, .external_lex_state = 3}, [918] = {.lex_state = 7, .external_lex_state = 3}, [919] = {.lex_state = 7, .external_lex_state = 3}, [920] = {.lex_state = 7, .external_lex_state = 3}, [921] = {.lex_state = 7, .external_lex_state = 3}, [922] = {.lex_state = 7, .external_lex_state = 3}, [923] = {.lex_state = 7, .external_lex_state = 3}, [924] = {.lex_state = 7, .external_lex_state = 3}, [925] = {.lex_state = 7, .external_lex_state = 3}, [926] = {.lex_state = 7, .external_lex_state = 3}, [927] = {.lex_state = 7, .external_lex_state = 3}, [928] = {.lex_state = 7, .external_lex_state = 3}, [929] = {.lex_state = 7, .external_lex_state = 3}, [930] = {.lex_state = 7, .external_lex_state = 3}, [931] = {.lex_state = 7, .external_lex_state = 3}, [932] = {.lex_state = 7, .external_lex_state = 3}, [933] = {.lex_state = 7, .external_lex_state = 3}, [934] = {.lex_state = 7, .external_lex_state = 3}, [935] = {.lex_state = 7, .external_lex_state = 3}, [936] = {.lex_state = 7, .external_lex_state = 3}, [937] = {.lex_state = 7, .external_lex_state = 3}, [938] = {.lex_state = 7, .external_lex_state = 3}, [939] = {.lex_state = 7, .external_lex_state = 3}, [940] = {.lex_state = 7, .external_lex_state = 3}, [941] = {.lex_state = 7, .external_lex_state = 3}, [942] = {.lex_state = 7, .external_lex_state = 3}, [943] = {.lex_state = 7, .external_lex_state = 3}, [944] = {.lex_state = 7, .external_lex_state = 3}, [945] = {.lex_state = 7, .external_lex_state = 3}, [946] = {.lex_state = 7, .external_lex_state = 3}, [947] = {.lex_state = 7, .external_lex_state = 3}, [948] = {.lex_state = 7, .external_lex_state = 3}, [949] = {.lex_state = 7, .external_lex_state = 3}, [950] = {.lex_state = 7, .external_lex_state = 3}, [951] = {.lex_state = 7, .external_lex_state = 3}, [952] = {.lex_state = 7, .external_lex_state = 3}, [953] = {.lex_state = 7, .external_lex_state = 3}, [954] = {.lex_state = 7, .external_lex_state = 3}, [955] = {.lex_state = 7, .external_lex_state = 3}, [956] = {.lex_state = 7, .external_lex_state = 3}, [957] = {.lex_state = 7, .external_lex_state = 3}, [958] = {.lex_state = 7, .external_lex_state = 3}, [959] = {.lex_state = 7, .external_lex_state = 3}, [960] = {.lex_state = 7, .external_lex_state = 3}, [961] = {.lex_state = 7, .external_lex_state = 3}, [962] = {.lex_state = 7, .external_lex_state = 3}, [963] = {.lex_state = 7, .external_lex_state = 3}, [964] = {.lex_state = 7, .external_lex_state = 3}, [965] = {.lex_state = 7, .external_lex_state = 3}, [966] = {.lex_state = 7, .external_lex_state = 3}, [967] = {.lex_state = 7, .external_lex_state = 3}, [968] = {.lex_state = 7, .external_lex_state = 3}, [969] = {.lex_state = 7, .external_lex_state = 3}, [970] = {.lex_state = 7, .external_lex_state = 3}, [971] = {.lex_state = 7, .external_lex_state = 3}, [972] = {.lex_state = 7, .external_lex_state = 3}, [973] = {.lex_state = 7, .external_lex_state = 3}, [974] = {.lex_state = 7, .external_lex_state = 3}, [975] = {.lex_state = 7, .external_lex_state = 3}, [976] = {.lex_state = 7, .external_lex_state = 3}, [977] = {.lex_state = 7, .external_lex_state = 3}, [978] = {.lex_state = 7, .external_lex_state = 3}, [979] = {.lex_state = 7, .external_lex_state = 3}, [980] = {.lex_state = 7, .external_lex_state = 3}, [981] = {.lex_state = 7, .external_lex_state = 3}, [982] = {.lex_state = 7, .external_lex_state = 3}, [983] = {.lex_state = 7, .external_lex_state = 3}, [984] = {.lex_state = 7, .external_lex_state = 3}, [985] = {.lex_state = 7, .external_lex_state = 3}, [986] = {.lex_state = 7, .external_lex_state = 3}, [987] = {.lex_state = 7, .external_lex_state = 3}, [988] = {.lex_state = 7, .external_lex_state = 3}, [989] = {.lex_state = 7, .external_lex_state = 3}, [990] = {.lex_state = 7, .external_lex_state = 3}, [991] = {.lex_state = 7, .external_lex_state = 3}, [992] = {.lex_state = 7, .external_lex_state = 3}, [993] = {.lex_state = 7, .external_lex_state = 3}, [994] = {.lex_state = 7, .external_lex_state = 3}, [995] = {.lex_state = 7, .external_lex_state = 3}, [996] = {.lex_state = 7, .external_lex_state = 3}, [997] = {.lex_state = 7, .external_lex_state = 3}, [998] = {.lex_state = 7, .external_lex_state = 3}, [999] = {.lex_state = 7, .external_lex_state = 3}, [1000] = {.lex_state = 7, .external_lex_state = 3}, [1001] = {.lex_state = 7, .external_lex_state = 3}, [1002] = {.lex_state = 7, .external_lex_state = 3}, [1003] = {.lex_state = 7, .external_lex_state = 3}, [1004] = {.lex_state = 7, .external_lex_state = 3}, [1005] = {.lex_state = 7, .external_lex_state = 3}, [1006] = {.lex_state = 7, .external_lex_state = 3}, [1007] = {.lex_state = 7, .external_lex_state = 3}, [1008] = {.lex_state = 7, .external_lex_state = 3}, [1009] = {.lex_state = 7, .external_lex_state = 3}, [1010] = {.lex_state = 7, .external_lex_state = 3}, [1011] = {.lex_state = 7, .external_lex_state = 3}, [1012] = {.lex_state = 7, .external_lex_state = 3}, [1013] = {.lex_state = 7, .external_lex_state = 3}, [1014] = {.lex_state = 7, .external_lex_state = 3}, [1015] = {.lex_state = 7, .external_lex_state = 3}, [1016] = {.lex_state = 7, .external_lex_state = 3}, [1017] = {.lex_state = 7, .external_lex_state = 3}, [1018] = {.lex_state = 7, .external_lex_state = 3}, [1019] = {.lex_state = 7, .external_lex_state = 3}, [1020] = {.lex_state = 7, .external_lex_state = 3}, [1021] = {.lex_state = 7, .external_lex_state = 3}, [1022] = {.lex_state = 7, .external_lex_state = 3}, [1023] = {.lex_state = 7, .external_lex_state = 3}, [1024] = {.lex_state = 7, .external_lex_state = 3}, [1025] = {.lex_state = 7, .external_lex_state = 3}, [1026] = {.lex_state = 7, .external_lex_state = 3}, [1027] = {.lex_state = 7, .external_lex_state = 3}, [1028] = {.lex_state = 7, .external_lex_state = 3}, [1029] = {.lex_state = 7, .external_lex_state = 3}, [1030] = {.lex_state = 7, .external_lex_state = 3}, [1031] = {.lex_state = 7, .external_lex_state = 3}, [1032] = {.lex_state = 7, .external_lex_state = 3}, [1033] = {.lex_state = 7, .external_lex_state = 3}, [1034] = {.lex_state = 7, .external_lex_state = 3}, [1035] = {.lex_state = 7, .external_lex_state = 3}, [1036] = {.lex_state = 7, .external_lex_state = 3}, [1037] = {.lex_state = 7, .external_lex_state = 3}, [1038] = {.lex_state = 7, .external_lex_state = 3}, [1039] = {.lex_state = 7, .external_lex_state = 3}, [1040] = {.lex_state = 7, .external_lex_state = 3}, [1041] = {.lex_state = 7, .external_lex_state = 3}, [1042] = {.lex_state = 7, .external_lex_state = 3}, [1043] = {.lex_state = 7, .external_lex_state = 3}, [1044] = {.lex_state = 7, .external_lex_state = 3}, [1045] = {.lex_state = 7, .external_lex_state = 3}, [1046] = {.lex_state = 7, .external_lex_state = 3}, [1047] = {.lex_state = 7, .external_lex_state = 3}, [1048] = {.lex_state = 7, .external_lex_state = 3}, [1049] = {.lex_state = 7, .external_lex_state = 3}, [1050] = {.lex_state = 7, .external_lex_state = 3}, [1051] = {.lex_state = 7, .external_lex_state = 3}, [1052] = {.lex_state = 7, .external_lex_state = 3}, [1053] = {.lex_state = 7, .external_lex_state = 3}, [1054] = {.lex_state = 7, .external_lex_state = 3}, [1055] = {.lex_state = 7, .external_lex_state = 3}, [1056] = {.lex_state = 7, .external_lex_state = 3}, [1057] = {.lex_state = 7, .external_lex_state = 3}, [1058] = {.lex_state = 7, .external_lex_state = 3}, [1059] = {.lex_state = 7, .external_lex_state = 3}, [1060] = {.lex_state = 7, .external_lex_state = 3}, [1061] = {.lex_state = 7, .external_lex_state = 3}, [1062] = {.lex_state = 7, .external_lex_state = 3}, [1063] = {.lex_state = 7, .external_lex_state = 3}, [1064] = {.lex_state = 7, .external_lex_state = 3}, [1065] = {.lex_state = 7, .external_lex_state = 3}, [1066] = {.lex_state = 7, .external_lex_state = 3}, [1067] = {.lex_state = 7, .external_lex_state = 3}, [1068] = {.lex_state = 7, .external_lex_state = 3}, [1069] = {.lex_state = 7, .external_lex_state = 3}, [1070] = {.lex_state = 7, .external_lex_state = 3}, [1071] = {.lex_state = 7, .external_lex_state = 3}, [1072] = {.lex_state = 7, .external_lex_state = 3}, [1073] = {.lex_state = 7, .external_lex_state = 3}, [1074] = {.lex_state = 7, .external_lex_state = 3}, [1075] = {.lex_state = 7, .external_lex_state = 3}, [1076] = {.lex_state = 7, .external_lex_state = 3}, [1077] = {.lex_state = 7, .external_lex_state = 3}, [1078] = {.lex_state = 7, .external_lex_state = 3}, [1079] = {.lex_state = 7, .external_lex_state = 3}, [1080] = {.lex_state = 7, .external_lex_state = 3}, [1081] = {.lex_state = 7, .external_lex_state = 3}, [1082] = {.lex_state = 7, .external_lex_state = 3}, [1083] = {.lex_state = 7, .external_lex_state = 3}, [1084] = {.lex_state = 7, .external_lex_state = 3}, [1085] = {.lex_state = 7, .external_lex_state = 3}, [1086] = {.lex_state = 7, .external_lex_state = 3}, [1087] = {.lex_state = 7, .external_lex_state = 3}, [1088] = {.lex_state = 7, .external_lex_state = 3}, [1089] = {.lex_state = 7, .external_lex_state = 3}, [1090] = {.lex_state = 7, .external_lex_state = 3}, [1091] = {.lex_state = 7, .external_lex_state = 3}, [1092] = {.lex_state = 7, .external_lex_state = 3}, [1093] = {.lex_state = 7, .external_lex_state = 3}, [1094] = {.lex_state = 7, .external_lex_state = 3}, [1095] = {.lex_state = 7, .external_lex_state = 3}, [1096] = {.lex_state = 7, .external_lex_state = 3}, [1097] = {.lex_state = 7, .external_lex_state = 3}, [1098] = {.lex_state = 7, .external_lex_state = 3}, [1099] = {.lex_state = 7, .external_lex_state = 3}, [1100] = {.lex_state = 7, .external_lex_state = 3}, [1101] = {.lex_state = 7, .external_lex_state = 3}, [1102] = {.lex_state = 7, .external_lex_state = 3}, [1103] = {.lex_state = 7, .external_lex_state = 3}, [1104] = {.lex_state = 7, .external_lex_state = 3}, [1105] = {.lex_state = 7, .external_lex_state = 3}, [1106] = {.lex_state = 7, .external_lex_state = 3}, [1107] = {.lex_state = 7, .external_lex_state = 3}, [1108] = {.lex_state = 7, .external_lex_state = 3}, [1109] = {.lex_state = 7, .external_lex_state = 3}, [1110] = {.lex_state = 7, .external_lex_state = 3}, [1111] = {.lex_state = 7, .external_lex_state = 3}, [1112] = {.lex_state = 7, .external_lex_state = 3}, [1113] = {.lex_state = 7, .external_lex_state = 3}, [1114] = {.lex_state = 7, .external_lex_state = 3}, [1115] = {.lex_state = 7, .external_lex_state = 3}, [1116] = {.lex_state = 7, .external_lex_state = 3}, [1117] = {.lex_state = 7, .external_lex_state = 3}, [1118] = {.lex_state = 7, .external_lex_state = 3}, [1119] = {.lex_state = 7, .external_lex_state = 3}, [1120] = {.lex_state = 7, .external_lex_state = 3}, [1121] = {.lex_state = 7, .external_lex_state = 3}, [1122] = {.lex_state = 7, .external_lex_state = 3}, [1123] = {.lex_state = 7, .external_lex_state = 3}, [1124] = {.lex_state = 7, .external_lex_state = 3}, [1125] = {.lex_state = 7, .external_lex_state = 3}, [1126] = {.lex_state = 7, .external_lex_state = 3}, [1127] = {.lex_state = 7, .external_lex_state = 3}, [1128] = {.lex_state = 7, .external_lex_state = 3}, [1129] = {.lex_state = 7, .external_lex_state = 3}, [1130] = {.lex_state = 7, .external_lex_state = 3}, [1131] = {.lex_state = 7, .external_lex_state = 3}, [1132] = {.lex_state = 7, .external_lex_state = 3}, [1133] = {.lex_state = 7, .external_lex_state = 3}, [1134] = {.lex_state = 7, .external_lex_state = 3}, [1135] = {.lex_state = 7, .external_lex_state = 3}, [1136] = {.lex_state = 7, .external_lex_state = 3}, [1137] = {.lex_state = 7, .external_lex_state = 3}, [1138] = {.lex_state = 7, .external_lex_state = 3}, [1139] = {.lex_state = 7, .external_lex_state = 3}, [1140] = {.lex_state = 7, .external_lex_state = 3}, [1141] = {.lex_state = 7, .external_lex_state = 3}, [1142] = {.lex_state = 7, .external_lex_state = 3}, [1143] = {.lex_state = 7, .external_lex_state = 3}, [1144] = {.lex_state = 7, .external_lex_state = 3}, [1145] = {.lex_state = 7, .external_lex_state = 3}, [1146] = {.lex_state = 7, .external_lex_state = 3}, [1147] = {.lex_state = 7, .external_lex_state = 3}, [1148] = {.lex_state = 7, .external_lex_state = 3}, [1149] = {.lex_state = 7, .external_lex_state = 3}, [1150] = {.lex_state = 7, .external_lex_state = 3}, [1151] = {.lex_state = 7, .external_lex_state = 3}, [1152] = {.lex_state = 7, .external_lex_state = 3}, [1153] = {.lex_state = 7, .external_lex_state = 3}, [1154] = {.lex_state = 7, .external_lex_state = 3}, [1155] = {.lex_state = 7, .external_lex_state = 3}, [1156] = {.lex_state = 7, .external_lex_state = 3}, [1157] = {.lex_state = 7, .external_lex_state = 3}, [1158] = {.lex_state = 7, .external_lex_state = 3}, [1159] = {.lex_state = 7, .external_lex_state = 3}, [1160] = {.lex_state = 7, .external_lex_state = 3}, [1161] = {.lex_state = 7, .external_lex_state = 3}, [1162] = {.lex_state = 7, .external_lex_state = 3}, [1163] = {.lex_state = 7, .external_lex_state = 3}, [1164] = {.lex_state = 7, .external_lex_state = 3}, [1165] = {.lex_state = 7, .external_lex_state = 3}, [1166] = {.lex_state = 7, .external_lex_state = 3}, [1167] = {.lex_state = 7, .external_lex_state = 3}, [1168] = {.lex_state = 7, .external_lex_state = 3}, [1169] = {.lex_state = 7, .external_lex_state = 3}, [1170] = {.lex_state = 7, .external_lex_state = 3}, [1171] = {.lex_state = 7, .external_lex_state = 3}, [1172] = {.lex_state = 7, .external_lex_state = 3}, [1173] = {.lex_state = 7, .external_lex_state = 3}, [1174] = {.lex_state = 7, .external_lex_state = 3}, [1175] = {.lex_state = 7, .external_lex_state = 3}, [1176] = {.lex_state = 7, .external_lex_state = 3}, [1177] = {.lex_state = 7, .external_lex_state = 3}, [1178] = {.lex_state = 7, .external_lex_state = 3}, [1179] = {.lex_state = 7, .external_lex_state = 3}, [1180] = {.lex_state = 7, .external_lex_state = 3}, [1181] = {.lex_state = 7, .external_lex_state = 3}, [1182] = {.lex_state = 7, .external_lex_state = 3}, [1183] = {.lex_state = 7, .external_lex_state = 3}, [1184] = {.lex_state = 7, .external_lex_state = 3}, [1185] = {.lex_state = 7, .external_lex_state = 3}, [1186] = {.lex_state = 7, .external_lex_state = 3}, [1187] = {.lex_state = 7, .external_lex_state = 3}, [1188] = {.lex_state = 7, .external_lex_state = 3}, [1189] = {.lex_state = 7, .external_lex_state = 3}, [1190] = {.lex_state = 7, .external_lex_state = 3}, [1191] = {.lex_state = 7, .external_lex_state = 3}, [1192] = {.lex_state = 7, .external_lex_state = 3}, [1193] = {.lex_state = 7, .external_lex_state = 3}, [1194] = {.lex_state = 7, .external_lex_state = 3}, [1195] = {.lex_state = 7, .external_lex_state = 3}, [1196] = {.lex_state = 7, .external_lex_state = 3}, [1197] = {.lex_state = 7, .external_lex_state = 3}, [1198] = {.lex_state = 7, .external_lex_state = 3}, [1199] = {.lex_state = 7, .external_lex_state = 3}, [1200] = {.lex_state = 7, .external_lex_state = 3}, [1201] = {.lex_state = 7, .external_lex_state = 3}, [1202] = {.lex_state = 7, .external_lex_state = 3}, [1203] = {.lex_state = 7, .external_lex_state = 3}, [1204] = {.lex_state = 7, .external_lex_state = 3}, [1205] = {.lex_state = 7, .external_lex_state = 3}, [1206] = {.lex_state = 7, .external_lex_state = 3}, [1207] = {.lex_state = 7, .external_lex_state = 3}, [1208] = {.lex_state = 7, .external_lex_state = 3}, [1209] = {.lex_state = 7, .external_lex_state = 3}, [1210] = {.lex_state = 7, .external_lex_state = 3}, [1211] = {.lex_state = 7, .external_lex_state = 3}, [1212] = {.lex_state = 7, .external_lex_state = 3}, [1213] = {.lex_state = 7, .external_lex_state = 3}, [1214] = {.lex_state = 7, .external_lex_state = 3}, [1215] = {.lex_state = 7, .external_lex_state = 3}, [1216] = {.lex_state = 7, .external_lex_state = 3}, [1217] = {.lex_state = 7, .external_lex_state = 3}, [1218] = {.lex_state = 7, .external_lex_state = 3}, [1219] = {.lex_state = 7, .external_lex_state = 3}, [1220] = {.lex_state = 7, .external_lex_state = 3}, [1221] = {.lex_state = 7, .external_lex_state = 3}, [1222] = {.lex_state = 7, .external_lex_state = 3}, [1223] = {.lex_state = 7, .external_lex_state = 3}, [1224] = {.lex_state = 7, .external_lex_state = 3}, [1225] = {.lex_state = 7, .external_lex_state = 3}, [1226] = {.lex_state = 7, .external_lex_state = 3}, [1227] = {.lex_state = 7, .external_lex_state = 3}, [1228] = {.lex_state = 7, .external_lex_state = 3}, [1229] = {.lex_state = 7, .external_lex_state = 3}, [1230] = {.lex_state = 7, .external_lex_state = 3}, [1231] = {.lex_state = 7, .external_lex_state = 3}, [1232] = {.lex_state = 7, .external_lex_state = 3}, [1233] = {.lex_state = 7, .external_lex_state = 3}, [1234] = {.lex_state = 7, .external_lex_state = 3}, [1235] = {.lex_state = 7, .external_lex_state = 3}, [1236] = {.lex_state = 7, .external_lex_state = 3}, [1237] = {.lex_state = 7, .external_lex_state = 3}, [1238] = {.lex_state = 7, .external_lex_state = 3}, [1239] = {.lex_state = 7, .external_lex_state = 3}, [1240] = {.lex_state = 7, .external_lex_state = 3}, [1241] = {.lex_state = 7, .external_lex_state = 3}, [1242] = {.lex_state = 7, .external_lex_state = 3}, [1243] = {.lex_state = 7, .external_lex_state = 3}, [1244] = {.lex_state = 7, .external_lex_state = 3}, [1245] = {.lex_state = 7, .external_lex_state = 3}, [1246] = {.lex_state = 7, .external_lex_state = 3}, [1247] = {.lex_state = 7, .external_lex_state = 3}, [1248] = {.lex_state = 7, .external_lex_state = 3}, [1249] = {.lex_state = 7, .external_lex_state = 3}, [1250] = {.lex_state = 7, .external_lex_state = 3}, [1251] = {.lex_state = 7, .external_lex_state = 3}, [1252] = {.lex_state = 7, .external_lex_state = 3}, [1253] = {.lex_state = 7, .external_lex_state = 3}, [1254] = {.lex_state = 7, .external_lex_state = 3}, [1255] = {.lex_state = 7, .external_lex_state = 3}, [1256] = {.lex_state = 7, .external_lex_state = 3}, [1257] = {.lex_state = 7, .external_lex_state = 3}, [1258] = {.lex_state = 7, .external_lex_state = 3}, [1259] = {.lex_state = 7, .external_lex_state = 3}, [1260] = {.lex_state = 7, .external_lex_state = 3}, [1261] = {.lex_state = 7, .external_lex_state = 3}, [1262] = {.lex_state = 7, .external_lex_state = 3}, [1263] = {.lex_state = 7, .external_lex_state = 3}, [1264] = {.lex_state = 7, .external_lex_state = 3}, [1265] = {.lex_state = 7, .external_lex_state = 3}, [1266] = {.lex_state = 7, .external_lex_state = 3}, [1267] = {.lex_state = 7, .external_lex_state = 3}, [1268] = {.lex_state = 7, .external_lex_state = 3}, [1269] = {.lex_state = 7, .external_lex_state = 3}, [1270] = {.lex_state = 7, .external_lex_state = 3}, [1271] = {.lex_state = 7, .external_lex_state = 3}, [1272] = {.lex_state = 7, .external_lex_state = 3}, [1273] = {.lex_state = 7, .external_lex_state = 3}, [1274] = {.lex_state = 7, .external_lex_state = 3}, [1275] = {.lex_state = 7, .external_lex_state = 3}, [1276] = {.lex_state = 7, .external_lex_state = 3}, [1277] = {.lex_state = 7, .external_lex_state = 3}, [1278] = {.lex_state = 7, .external_lex_state = 3}, [1279] = {.lex_state = 7, .external_lex_state = 3}, [1280] = {.lex_state = 7, .external_lex_state = 3}, [1281] = {.lex_state = 7, .external_lex_state = 3}, [1282] = {.lex_state = 7, .external_lex_state = 3}, [1283] = {.lex_state = 7, .external_lex_state = 3}, [1284] = {.lex_state = 7, .external_lex_state = 3}, [1285] = {.lex_state = 7, .external_lex_state = 3}, [1286] = {.lex_state = 7, .external_lex_state = 3}, [1287] = {.lex_state = 7, .external_lex_state = 3}, [1288] = {.lex_state = 7, .external_lex_state = 3}, [1289] = {.lex_state = 7, .external_lex_state = 3}, [1290] = {.lex_state = 7, .external_lex_state = 3}, [1291] = {.lex_state = 7, .external_lex_state = 3}, [1292] = {.lex_state = 7, .external_lex_state = 3}, [1293] = {.lex_state = 7, .external_lex_state = 3}, [1294] = {.lex_state = 7, .external_lex_state = 3}, [1295] = {.lex_state = 7, .external_lex_state = 3}, [1296] = {.lex_state = 7, .external_lex_state = 3}, [1297] = {.lex_state = 7, .external_lex_state = 3}, [1298] = {.lex_state = 7, .external_lex_state = 3}, [1299] = {.lex_state = 7, .external_lex_state = 3}, [1300] = {.lex_state = 7, .external_lex_state = 3}, [1301] = {.lex_state = 7, .external_lex_state = 3}, [1302] = {.lex_state = 7, .external_lex_state = 3}, [1303] = {.lex_state = 7, .external_lex_state = 3}, [1304] = {.lex_state = 7, .external_lex_state = 3}, [1305] = {.lex_state = 7, .external_lex_state = 3}, [1306] = {.lex_state = 7, .external_lex_state = 3}, [1307] = {.lex_state = 7, .external_lex_state = 3}, [1308] = {.lex_state = 7, .external_lex_state = 3}, [1309] = {.lex_state = 7, .external_lex_state = 3}, [1310] = {.lex_state = 7, .external_lex_state = 3}, [1311] = {.lex_state = 7, .external_lex_state = 3}, [1312] = {.lex_state = 7, .external_lex_state = 3}, [1313] = {.lex_state = 7, .external_lex_state = 3}, [1314] = {.lex_state = 7, .external_lex_state = 3}, [1315] = {.lex_state = 7, .external_lex_state = 3}, [1316] = {.lex_state = 7, .external_lex_state = 3}, [1317] = {.lex_state = 7, .external_lex_state = 3}, [1318] = {.lex_state = 7, .external_lex_state = 3}, [1319] = {.lex_state = 7, .external_lex_state = 3}, [1320] = {.lex_state = 7, .external_lex_state = 3}, [1321] = {.lex_state = 7, .external_lex_state = 3}, [1322] = {.lex_state = 7, .external_lex_state = 3}, [1323] = {.lex_state = 7, .external_lex_state = 3}, [1324] = {.lex_state = 7, .external_lex_state = 3}, [1325] = {.lex_state = 7, .external_lex_state = 3}, [1326] = {.lex_state = 7, .external_lex_state = 3}, [1327] = {.lex_state = 7, .external_lex_state = 3}, [1328] = {.lex_state = 7, .external_lex_state = 3}, [1329] = {.lex_state = 7, .external_lex_state = 3}, [1330] = {.lex_state = 7, .external_lex_state = 3}, [1331] = {.lex_state = 7, .external_lex_state = 3}, [1332] = {.lex_state = 7, .external_lex_state = 3}, [1333] = {.lex_state = 7, .external_lex_state = 3}, [1334] = {.lex_state = 7, .external_lex_state = 3}, [1335] = {.lex_state = 7, .external_lex_state = 3}, [1336] = {.lex_state = 7, .external_lex_state = 3}, [1337] = {.lex_state = 7, .external_lex_state = 3}, [1338] = {.lex_state = 7, .external_lex_state = 3}, [1339] = {.lex_state = 7, .external_lex_state = 3}, [1340] = {.lex_state = 7, .external_lex_state = 3}, [1341] = {.lex_state = 7, .external_lex_state = 3}, [1342] = {.lex_state = 7, .external_lex_state = 3}, [1343] = {.lex_state = 7, .external_lex_state = 3}, [1344] = {.lex_state = 7, .external_lex_state = 3}, [1345] = {.lex_state = 7, .external_lex_state = 3}, [1346] = {.lex_state = 7, .external_lex_state = 3}, [1347] = {.lex_state = 7, .external_lex_state = 3}, [1348] = {.lex_state = 7, .external_lex_state = 3}, [1349] = {.lex_state = 7, .external_lex_state = 3}, [1350] = {.lex_state = 7, .external_lex_state = 3}, [1351] = {.lex_state = 7, .external_lex_state = 3}, [1352] = {.lex_state = 7, .external_lex_state = 3}, [1353] = {.lex_state = 7, .external_lex_state = 3}, [1354] = {.lex_state = 7, .external_lex_state = 3}, [1355] = {.lex_state = 7, .external_lex_state = 3}, [1356] = {.lex_state = 7, .external_lex_state = 3}, [1357] = {.lex_state = 7, .external_lex_state = 3}, [1358] = {.lex_state = 7, .external_lex_state = 3}, [1359] = {.lex_state = 7, .external_lex_state = 3}, [1360] = {.lex_state = 7, .external_lex_state = 3}, [1361] = {.lex_state = 7, .external_lex_state = 3}, [1362] = {.lex_state = 7, .external_lex_state = 3}, [1363] = {.lex_state = 7, .external_lex_state = 3}, [1364] = {.lex_state = 7, .external_lex_state = 3}, [1365] = {.lex_state = 7, .external_lex_state = 3}, [1366] = {.lex_state = 7, .external_lex_state = 3}, [1367] = {.lex_state = 7, .external_lex_state = 3}, [1368] = {.lex_state = 7, .external_lex_state = 3}, [1369] = {.lex_state = 7, .external_lex_state = 3}, [1370] = {.lex_state = 7, .external_lex_state = 3}, [1371] = {.lex_state = 7, .external_lex_state = 3}, [1372] = {.lex_state = 7, .external_lex_state = 3}, [1373] = {.lex_state = 7, .external_lex_state = 3}, [1374] = {.lex_state = 7, .external_lex_state = 3}, [1375] = {.lex_state = 7, .external_lex_state = 3}, [1376] = {.lex_state = 7, .external_lex_state = 3}, [1377] = {.lex_state = 7, .external_lex_state = 3}, [1378] = {.lex_state = 7, .external_lex_state = 3}, [1379] = {.lex_state = 7, .external_lex_state = 3}, [1380] = {.lex_state = 7, .external_lex_state = 3}, [1381] = {.lex_state = 7, .external_lex_state = 3}, [1382] = {.lex_state = 7, .external_lex_state = 3}, [1383] = {.lex_state = 7, .external_lex_state = 3}, [1384] = {.lex_state = 7, .external_lex_state = 3}, [1385] = {.lex_state = 7, .external_lex_state = 3}, [1386] = {.lex_state = 7, .external_lex_state = 3}, [1387] = {.lex_state = 7, .external_lex_state = 3}, [1388] = {.lex_state = 7, .external_lex_state = 3}, [1389] = {.lex_state = 7, .external_lex_state = 3}, [1390] = {.lex_state = 7, .external_lex_state = 3}, [1391] = {.lex_state = 7, .external_lex_state = 3}, [1392] = {.lex_state = 7, .external_lex_state = 3}, [1393] = {.lex_state = 7, .external_lex_state = 3}, [1394] = {.lex_state = 7, .external_lex_state = 3}, [1395] = {.lex_state = 7, .external_lex_state = 3}, [1396] = {.lex_state = 7, .external_lex_state = 3}, [1397] = {.lex_state = 7, .external_lex_state = 3}, [1398] = {.lex_state = 7, .external_lex_state = 3}, [1399] = {.lex_state = 7, .external_lex_state = 3}, [1400] = {.lex_state = 7, .external_lex_state = 3}, [1401] = {.lex_state = 7, .external_lex_state = 3}, [1402] = {.lex_state = 7, .external_lex_state = 3}, [1403] = {.lex_state = 7, .external_lex_state = 3}, [1404] = {.lex_state = 7, .external_lex_state = 3}, [1405] = {.lex_state = 7, .external_lex_state = 3}, [1406] = {.lex_state = 7, .external_lex_state = 3}, [1407] = {.lex_state = 7, .external_lex_state = 3}, [1408] = {.lex_state = 7, .external_lex_state = 3}, [1409] = {.lex_state = 7, .external_lex_state = 3}, [1410] = {.lex_state = 7, .external_lex_state = 3}, [1411] = {.lex_state = 7, .external_lex_state = 3}, [1412] = {.lex_state = 7, .external_lex_state = 3}, [1413] = {.lex_state = 7, .external_lex_state = 3}, [1414] = {.lex_state = 7, .external_lex_state = 3}, [1415] = {.lex_state = 7, .external_lex_state = 3}, [1416] = {.lex_state = 7, .external_lex_state = 3}, [1417] = {.lex_state = 7, .external_lex_state = 3}, [1418] = {.lex_state = 7, .external_lex_state = 3}, [1419] = {.lex_state = 7, .external_lex_state = 3}, [1420] = {.lex_state = 7, .external_lex_state = 3}, [1421] = {.lex_state = 7, .external_lex_state = 3}, [1422] = {.lex_state = 7, .external_lex_state = 3}, [1423] = {.lex_state = 7, .external_lex_state = 3}, [1424] = {.lex_state = 7, .external_lex_state = 3}, [1425] = {.lex_state = 7, .external_lex_state = 3}, [1426] = {.lex_state = 7, .external_lex_state = 3}, [1427] = {.lex_state = 7, .external_lex_state = 3}, [1428] = {.lex_state = 7, .external_lex_state = 3}, [1429] = {.lex_state = 7, .external_lex_state = 3}, [1430] = {.lex_state = 7, .external_lex_state = 3}, [1431] = {.lex_state = 7, .external_lex_state = 3}, [1432] = {.lex_state = 7, .external_lex_state = 3}, [1433] = {.lex_state = 7, .external_lex_state = 3}, [1434] = {.lex_state = 7, .external_lex_state = 3}, [1435] = {.lex_state = 7, .external_lex_state = 3}, [1436] = {.lex_state = 7, .external_lex_state = 3}, [1437] = {.lex_state = 7, .external_lex_state = 3}, [1438] = {.lex_state = 7, .external_lex_state = 3}, [1439] = {.lex_state = 7, .external_lex_state = 3}, [1440] = {.lex_state = 7, .external_lex_state = 3}, [1441] = {.lex_state = 7, .external_lex_state = 3}, [1442] = {.lex_state = 7, .external_lex_state = 3}, [1443] = {.lex_state = 7, .external_lex_state = 3}, [1444] = {.lex_state = 7, .external_lex_state = 3}, [1445] = {.lex_state = 7, .external_lex_state = 3}, [1446] = {.lex_state = 7, .external_lex_state = 3}, [1447] = {.lex_state = 7, .external_lex_state = 3}, [1448] = {.lex_state = 7, .external_lex_state = 3}, [1449] = {.lex_state = 7, .external_lex_state = 3}, [1450] = {.lex_state = 7, .external_lex_state = 3}, [1451] = {.lex_state = 7, .external_lex_state = 3}, [1452] = {.lex_state = 7, .external_lex_state = 3}, [1453] = {.lex_state = 7, .external_lex_state = 3}, [1454] = {.lex_state = 7, .external_lex_state = 3}, [1455] = {.lex_state = 7, .external_lex_state = 3}, [1456] = {.lex_state = 7, .external_lex_state = 3}, [1457] = {.lex_state = 7, .external_lex_state = 3}, [1458] = {.lex_state = 7, .external_lex_state = 3}, [1459] = {.lex_state = 7, .external_lex_state = 3}, [1460] = {.lex_state = 7, .external_lex_state = 3}, [1461] = {.lex_state = 7, .external_lex_state = 3}, [1462] = {.lex_state = 7, .external_lex_state = 3}, [1463] = {.lex_state = 7, .external_lex_state = 3}, [1464] = {.lex_state = 7, .external_lex_state = 3}, [1465] = {.lex_state = 7, .external_lex_state = 3}, [1466] = {.lex_state = 7, .external_lex_state = 3}, [1467] = {.lex_state = 7, .external_lex_state = 3}, [1468] = {.lex_state = 7, .external_lex_state = 3}, [1469] = {.lex_state = 7, .external_lex_state = 3}, [1470] = {.lex_state = 7, .external_lex_state = 3}, [1471] = {.lex_state = 7, .external_lex_state = 3}, [1472] = {.lex_state = 7, .external_lex_state = 3}, [1473] = {.lex_state = 7, .external_lex_state = 3}, [1474] = {.lex_state = 7, .external_lex_state = 3}, [1475] = {.lex_state = 7, .external_lex_state = 3}, [1476] = {.lex_state = 7, .external_lex_state = 3}, [1477] = {.lex_state = 7, .external_lex_state = 3}, [1478] = {.lex_state = 7, .external_lex_state = 3}, [1479] = {.lex_state = 7, .external_lex_state = 3}, [1480] = {.lex_state = 7, .external_lex_state = 3}, [1481] = {.lex_state = 7, .external_lex_state = 3}, [1482] = {.lex_state = 7, .external_lex_state = 3}, [1483] = {.lex_state = 7, .external_lex_state = 3}, [1484] = {.lex_state = 7, .external_lex_state = 3}, [1485] = {.lex_state = 7, .external_lex_state = 3}, [1486] = {.lex_state = 7, .external_lex_state = 3}, [1487] = {.lex_state = 7, .external_lex_state = 3}, [1488] = {.lex_state = 7, .external_lex_state = 3}, [1489] = {.lex_state = 7, .external_lex_state = 3}, [1490] = {.lex_state = 7, .external_lex_state = 3}, [1491] = {.lex_state = 7, .external_lex_state = 3}, [1492] = {.lex_state = 7, .external_lex_state = 3}, [1493] = {.lex_state = 7, .external_lex_state = 3}, [1494] = {.lex_state = 7, .external_lex_state = 3}, [1495] = {.lex_state = 7, .external_lex_state = 3}, [1496] = {.lex_state = 7, .external_lex_state = 3}, [1497] = {.lex_state = 7, .external_lex_state = 3}, [1498] = {.lex_state = 7, .external_lex_state = 3}, [1499] = {.lex_state = 7, .external_lex_state = 3}, [1500] = {.lex_state = 7, .external_lex_state = 3}, [1501] = {.lex_state = 7, .external_lex_state = 3}, [1502] = {.lex_state = 7, .external_lex_state = 3}, [1503] = {.lex_state = 7, .external_lex_state = 3}, [1504] = {.lex_state = 7, .external_lex_state = 3}, [1505] = {.lex_state = 7, .external_lex_state = 3}, [1506] = {.lex_state = 7, .external_lex_state = 3}, [1507] = {.lex_state = 7, .external_lex_state = 3}, [1508] = {.lex_state = 7, .external_lex_state = 3}, [1509] = {.lex_state = 7, .external_lex_state = 3}, [1510] = {.lex_state = 7, .external_lex_state = 3}, [1511] = {.lex_state = 7, .external_lex_state = 3}, [1512] = {.lex_state = 7, .external_lex_state = 3}, [1513] = {.lex_state = 7, .external_lex_state = 3}, [1514] = {.lex_state = 7, .external_lex_state = 3}, [1515] = {.lex_state = 7, .external_lex_state = 3}, [1516] = {.lex_state = 7, .external_lex_state = 3}, [1517] = {.lex_state = 7, .external_lex_state = 3}, [1518] = {.lex_state = 7, .external_lex_state = 3}, [1519] = {.lex_state = 7, .external_lex_state = 3}, [1520] = {.lex_state = 7, .external_lex_state = 3}, [1521] = {.lex_state = 7, .external_lex_state = 3}, [1522] = {.lex_state = 7, .external_lex_state = 3}, [1523] = {.lex_state = 7, .external_lex_state = 3}, [1524] = {.lex_state = 7, .external_lex_state = 3}, [1525] = {.lex_state = 7, .external_lex_state = 3}, [1526] = {.lex_state = 7, .external_lex_state = 3}, [1527] = {.lex_state = 7, .external_lex_state = 3}, [1528] = {.lex_state = 7, .external_lex_state = 3}, [1529] = {.lex_state = 7, .external_lex_state = 3}, [1530] = {.lex_state = 7, .external_lex_state = 3}, [1531] = {.lex_state = 7, .external_lex_state = 3}, [1532] = {.lex_state = 7, .external_lex_state = 3}, [1533] = {.lex_state = 7, .external_lex_state = 3}, [1534] = {.lex_state = 7, .external_lex_state = 3}, [1535] = {.lex_state = 7, .external_lex_state = 3}, [1536] = {.lex_state = 7, .external_lex_state = 3}, [1537] = {.lex_state = 7, .external_lex_state = 3}, [1538] = {.lex_state = 7, .external_lex_state = 3}, [1539] = {.lex_state = 7, .external_lex_state = 3}, [1540] = {.lex_state = 7, .external_lex_state = 3}, [1541] = {.lex_state = 7, .external_lex_state = 3}, [1542] = {.lex_state = 7, .external_lex_state = 3}, [1543] = {.lex_state = 7, .external_lex_state = 3}, [1544] = {.lex_state = 7, .external_lex_state = 3}, [1545] = {.lex_state = 7, .external_lex_state = 3}, [1546] = {.lex_state = 7, .external_lex_state = 3}, [1547] = {.lex_state = 7, .external_lex_state = 3}, [1548] = {.lex_state = 7, .external_lex_state = 3}, [1549] = {.lex_state = 7, .external_lex_state = 3}, [1550] = {.lex_state = 7, .external_lex_state = 3}, [1551] = {.lex_state = 7, .external_lex_state = 3}, [1552] = {.lex_state = 7, .external_lex_state = 3}, [1553] = {.lex_state = 7, .external_lex_state = 3}, [1554] = {.lex_state = 7, .external_lex_state = 3}, [1555] = {.lex_state = 7, .external_lex_state = 3}, [1556] = {.lex_state = 7, .external_lex_state = 3}, [1557] = {.lex_state = 7, .external_lex_state = 3}, [1558] = {.lex_state = 7, .external_lex_state = 3}, [1559] = {.lex_state = 7, .external_lex_state = 3}, [1560] = {.lex_state = 7, .external_lex_state = 3}, [1561] = {.lex_state = 7, .external_lex_state = 3}, [1562] = {.lex_state = 7, .external_lex_state = 3}, [1563] = {.lex_state = 7, .external_lex_state = 3}, [1564] = {.lex_state = 7, .external_lex_state = 3}, [1565] = {.lex_state = 7, .external_lex_state = 3}, [1566] = {.lex_state = 7, .external_lex_state = 3}, [1567] = {.lex_state = 7, .external_lex_state = 3}, [1568] = {.lex_state = 7, .external_lex_state = 3}, [1569] = {.lex_state = 7, .external_lex_state = 3}, [1570] = {.lex_state = 7, .external_lex_state = 3}, [1571] = {.lex_state = 7, .external_lex_state = 3}, [1572] = {.lex_state = 7, .external_lex_state = 3}, [1573] = {.lex_state = 7, .external_lex_state = 3}, [1574] = {.lex_state = 7, .external_lex_state = 3}, [1575] = {.lex_state = 7, .external_lex_state = 3}, [1576] = {.lex_state = 7, .external_lex_state = 3}, [1577] = {.lex_state = 7, .external_lex_state = 3}, [1578] = {.lex_state = 7, .external_lex_state = 3}, [1579] = {.lex_state = 7, .external_lex_state = 3}, [1580] = {.lex_state = 7, .external_lex_state = 3}, [1581] = {.lex_state = 7, .external_lex_state = 3}, [1582] = {.lex_state = 7, .external_lex_state = 3}, [1583] = {.lex_state = 7, .external_lex_state = 3}, [1584] = {.lex_state = 7, .external_lex_state = 3}, [1585] = {.lex_state = 7, .external_lex_state = 3}, [1586] = {.lex_state = 7, .external_lex_state = 3}, [1587] = {.lex_state = 7, .external_lex_state = 3}, [1588] = {.lex_state = 7, .external_lex_state = 3}, [1589] = {.lex_state = 7, .external_lex_state = 3}, [1590] = {.lex_state = 7, .external_lex_state = 3}, [1591] = {.lex_state = 7, .external_lex_state = 3}, [1592] = {.lex_state = 7, .external_lex_state = 3}, [1593] = {.lex_state = 7, .external_lex_state = 3}, [1594] = {.lex_state = 7, .external_lex_state = 3}, [1595] = {.lex_state = 7, .external_lex_state = 3}, [1596] = {.lex_state = 7, .external_lex_state = 3}, [1597] = {.lex_state = 7, .external_lex_state = 3}, [1598] = {.lex_state = 7, .external_lex_state = 3}, [1599] = {.lex_state = 7, .external_lex_state = 3}, [1600] = {.lex_state = 7, .external_lex_state = 3}, [1601] = {.lex_state = 7, .external_lex_state = 3}, [1602] = {.lex_state = 7, .external_lex_state = 3}, [1603] = {.lex_state = 7, .external_lex_state = 3}, [1604] = {.lex_state = 7, .external_lex_state = 3}, [1605] = {.lex_state = 7, .external_lex_state = 3}, [1606] = {.lex_state = 7, .external_lex_state = 3}, [1607] = {.lex_state = 7, .external_lex_state = 3}, [1608] = {.lex_state = 7, .external_lex_state = 3}, [1609] = {.lex_state = 7, .external_lex_state = 3}, [1610] = {.lex_state = 7, .external_lex_state = 3}, [1611] = {.lex_state = 7, .external_lex_state = 3}, [1612] = {.lex_state = 7, .external_lex_state = 3}, [1613] = {.lex_state = 7, .external_lex_state = 3}, [1614] = {.lex_state = 7, .external_lex_state = 3}, [1615] = {.lex_state = 7, .external_lex_state = 3}, [1616] = {.lex_state = 7, .external_lex_state = 3}, [1617] = {.lex_state = 7, .external_lex_state = 3}, [1618] = {.lex_state = 7, .external_lex_state = 3}, [1619] = {.lex_state = 7, .external_lex_state = 3}, [1620] = {.lex_state = 7, .external_lex_state = 3}, [1621] = {.lex_state = 7, .external_lex_state = 3}, [1622] = {.lex_state = 7, .external_lex_state = 3}, [1623] = {.lex_state = 7, .external_lex_state = 3}, [1624] = {.lex_state = 7, .external_lex_state = 3}, [1625] = {.lex_state = 7, .external_lex_state = 3}, [1626] = {.lex_state = 7, .external_lex_state = 3}, [1627] = {.lex_state = 7, .external_lex_state = 3}, [1628] = {.lex_state = 7, .external_lex_state = 3}, [1629] = {.lex_state = 7, .external_lex_state = 3}, [1630] = {.lex_state = 7, .external_lex_state = 3}, [1631] = {.lex_state = 7, .external_lex_state = 3}, [1632] = {.lex_state = 7, .external_lex_state = 3}, [1633] = {.lex_state = 7, .external_lex_state = 3}, [1634] = {.lex_state = 7, .external_lex_state = 3}, [1635] = {.lex_state = 7, .external_lex_state = 3}, [1636] = {.lex_state = 7, .external_lex_state = 3}, [1637] = {.lex_state = 7, .external_lex_state = 3}, [1638] = {.lex_state = 7, .external_lex_state = 3}, [1639] = {.lex_state = 7, .external_lex_state = 3}, [1640] = {.lex_state = 7, .external_lex_state = 3}, [1641] = {.lex_state = 7, .external_lex_state = 3}, [1642] = {.lex_state = 7, .external_lex_state = 3}, [1643] = {.lex_state = 7, .external_lex_state = 3}, [1644] = {.lex_state = 7, .external_lex_state = 3}, [1645] = {.lex_state = 7, .external_lex_state = 3}, [1646] = {.lex_state = 7, .external_lex_state = 3}, [1647] = {.lex_state = 7, .external_lex_state = 3}, [1648] = {.lex_state = 7, .external_lex_state = 3}, [1649] = {.lex_state = 7, .external_lex_state = 3}, [1650] = {.lex_state = 7, .external_lex_state = 3}, [1651] = {.lex_state = 7, .external_lex_state = 3}, [1652] = {.lex_state = 7, .external_lex_state = 3}, [1653] = {.lex_state = 7, .external_lex_state = 3}, [1654] = {.lex_state = 7, .external_lex_state = 3}, [1655] = {.lex_state = 7, .external_lex_state = 3}, [1656] = {.lex_state = 7, .external_lex_state = 3}, [1657] = {.lex_state = 7, .external_lex_state = 3}, [1658] = {.lex_state = 7, .external_lex_state = 3}, [1659] = {.lex_state = 7, .external_lex_state = 3}, [1660] = {.lex_state = 7, .external_lex_state = 3}, [1661] = {.lex_state = 7, .external_lex_state = 3}, [1662] = {.lex_state = 7, .external_lex_state = 3}, [1663] = {.lex_state = 7, .external_lex_state = 3}, [1664] = {.lex_state = 7, .external_lex_state = 3}, [1665] = {.lex_state = 7, .external_lex_state = 3}, [1666] = {.lex_state = 7, .external_lex_state = 3}, [1667] = {.lex_state = 7, .external_lex_state = 3}, [1668] = {.lex_state = 7, .external_lex_state = 3}, [1669] = {.lex_state = 7, .external_lex_state = 3}, [1670] = {.lex_state = 7, .external_lex_state = 3}, [1671] = {.lex_state = 7, .external_lex_state = 3}, [1672] = {.lex_state = 7, .external_lex_state = 3}, [1673] = {.lex_state = 7, .external_lex_state = 3}, [1674] = {.lex_state = 7, .external_lex_state = 3}, [1675] = {.lex_state = 7, .external_lex_state = 3}, [1676] = {.lex_state = 7, .external_lex_state = 3}, [1677] = {.lex_state = 7, .external_lex_state = 3}, [1678] = {.lex_state = 7, .external_lex_state = 3}, [1679] = {.lex_state = 7, .external_lex_state = 3}, [1680] = {.lex_state = 7, .external_lex_state = 3}, [1681] = {.lex_state = 7, .external_lex_state = 3}, [1682] = {.lex_state = 7, .external_lex_state = 3}, [1683] = {.lex_state = 7, .external_lex_state = 3}, [1684] = {.lex_state = 7, .external_lex_state = 3}, [1685] = {.lex_state = 7, .external_lex_state = 3}, [1686] = {.lex_state = 7, .external_lex_state = 3}, [1687] = {.lex_state = 7, .external_lex_state = 3}, [1688] = {.lex_state = 7, .external_lex_state = 3}, [1689] = {.lex_state = 7, .external_lex_state = 3}, [1690] = {.lex_state = 7, .external_lex_state = 3}, [1691] = {.lex_state = 7, .external_lex_state = 3}, [1692] = {.lex_state = 7, .external_lex_state = 3}, [1693] = {.lex_state = 7, .external_lex_state = 3}, [1694] = {.lex_state = 7, .external_lex_state = 3}, [1695] = {.lex_state = 7, .external_lex_state = 3}, [1696] = {.lex_state = 7, .external_lex_state = 3}, [1697] = {.lex_state = 7, .external_lex_state = 3}, [1698] = {.lex_state = 7, .external_lex_state = 3}, [1699] = {.lex_state = 7, .external_lex_state = 3}, [1700] = {.lex_state = 7, .external_lex_state = 3}, [1701] = {.lex_state = 7, .external_lex_state = 3}, [1702] = {.lex_state = 7, .external_lex_state = 3}, [1703] = {.lex_state = 7, .external_lex_state = 3}, [1704] = {.lex_state = 7, .external_lex_state = 3}, [1705] = {.lex_state = 7, .external_lex_state = 3}, [1706] = {.lex_state = 7, .external_lex_state = 3}, [1707] = {.lex_state = 7, .external_lex_state = 3}, [1708] = {.lex_state = 7, .external_lex_state = 3}, [1709] = {.lex_state = 7, .external_lex_state = 3}, [1710] = {.lex_state = 7, .external_lex_state = 3}, [1711] = {.lex_state = 7, .external_lex_state = 3}, [1712] = {.lex_state = 7, .external_lex_state = 3}, [1713] = {.lex_state = 7, .external_lex_state = 3}, [1714] = {.lex_state = 7, .external_lex_state = 3}, [1715] = {.lex_state = 7, .external_lex_state = 3}, [1716] = {.lex_state = 7, .external_lex_state = 3}, [1717] = {.lex_state = 7, .external_lex_state = 3}, [1718] = {.lex_state = 7, .external_lex_state = 3}, [1719] = {.lex_state = 7, .external_lex_state = 3}, [1720] = {.lex_state = 7, .external_lex_state = 3}, [1721] = {.lex_state = 7, .external_lex_state = 3}, [1722] = {.lex_state = 7, .external_lex_state = 3}, [1723] = {.lex_state = 7, .external_lex_state = 3}, [1724] = {.lex_state = 7, .external_lex_state = 3}, [1725] = {.lex_state = 7, .external_lex_state = 3}, [1726] = {.lex_state = 7, .external_lex_state = 3}, [1727] = {.lex_state = 7, .external_lex_state = 3}, [1728] = {.lex_state = 7, .external_lex_state = 3}, [1729] = {.lex_state = 7, .external_lex_state = 3}, [1730] = {.lex_state = 7, .external_lex_state = 3}, [1731] = {.lex_state = 7, .external_lex_state = 3}, [1732] = {.lex_state = 7, .external_lex_state = 3}, [1733] = {.lex_state = 7, .external_lex_state = 3}, [1734] = {.lex_state = 7, .external_lex_state = 3}, [1735] = {.lex_state = 7, .external_lex_state = 3}, [1736] = {.lex_state = 7, .external_lex_state = 3}, [1737] = {.lex_state = 7, .external_lex_state = 3}, [1738] = {.lex_state = 7, .external_lex_state = 3}, [1739] = {.lex_state = 7, .external_lex_state = 3}, [1740] = {.lex_state = 7, .external_lex_state = 3}, [1741] = {.lex_state = 7, .external_lex_state = 3}, [1742] = {.lex_state = 7, .external_lex_state = 3}, [1743] = {.lex_state = 7, .external_lex_state = 3}, [1744] = {.lex_state = 7, .external_lex_state = 3}, [1745] = {.lex_state = 7, .external_lex_state = 3}, [1746] = {.lex_state = 7, .external_lex_state = 3}, [1747] = {.lex_state = 7, .external_lex_state = 3}, [1748] = {.lex_state = 7, .external_lex_state = 3}, [1749] = {.lex_state = 7, .external_lex_state = 3}, [1750] = {.lex_state = 7, .external_lex_state = 3}, [1751] = {.lex_state = 7, .external_lex_state = 3}, [1752] = {.lex_state = 7, .external_lex_state = 3}, [1753] = {.lex_state = 7, .external_lex_state = 3}, [1754] = {.lex_state = 7, .external_lex_state = 3}, [1755] = {.lex_state = 7, .external_lex_state = 3}, [1756] = {.lex_state = 7, .external_lex_state = 3}, [1757] = {.lex_state = 7, .external_lex_state = 3}, [1758] = {.lex_state = 7, .external_lex_state = 3}, [1759] = {.lex_state = 7, .external_lex_state = 3}, [1760] = {.lex_state = 7, .external_lex_state = 3}, [1761] = {.lex_state = 7, .external_lex_state = 3}, [1762] = {.lex_state = 7, .external_lex_state = 3}, [1763] = {.lex_state = 7, .external_lex_state = 3}, [1764] = {.lex_state = 7, .external_lex_state = 3}, [1765] = {.lex_state = 7, .external_lex_state = 3}, [1766] = {.lex_state = 7, .external_lex_state = 3}, [1767] = {.lex_state = 7, .external_lex_state = 3}, [1768] = {.lex_state = 7, .external_lex_state = 3}, [1769] = {.lex_state = 7, .external_lex_state = 3}, [1770] = {.lex_state = 7, .external_lex_state = 3}, [1771] = {.lex_state = 7, .external_lex_state = 3}, [1772] = {.lex_state = 7, .external_lex_state = 3}, [1773] = {.lex_state = 7, .external_lex_state = 3}, [1774] = {.lex_state = 7, .external_lex_state = 3}, [1775] = {.lex_state = 7, .external_lex_state = 3}, [1776] = {.lex_state = 7, .external_lex_state = 3}, [1777] = {.lex_state = 172, .external_lex_state = 2}, [1778] = {.lex_state = 9, .external_lex_state = 2}, [1779] = {.lex_state = 9, .external_lex_state = 2}, [1780] = {.lex_state = 9, .external_lex_state = 2}, [1781] = {.lex_state = 9, .external_lex_state = 2}, [1782] = {.lex_state = 9, .external_lex_state = 2}, [1783] = {.lex_state = 9, .external_lex_state = 2}, [1784] = {.lex_state = 9, .external_lex_state = 2}, [1785] = {.lex_state = 9, .external_lex_state = 2}, [1786] = {.lex_state = 9, .external_lex_state = 2}, [1787] = {.lex_state = 9, .external_lex_state = 2}, [1788] = {.lex_state = 9, .external_lex_state = 2}, [1789] = {.lex_state = 9, .external_lex_state = 2}, [1790] = {.lex_state = 172, .external_lex_state = 2}, [1791] = {.lex_state = 172, .external_lex_state = 2}, [1792] = {.lex_state = 172, .external_lex_state = 2}, [1793] = {.lex_state = 9, .external_lex_state = 2}, [1794] = {.lex_state = 9, .external_lex_state = 2}, [1795] = {.lex_state = 172, .external_lex_state = 2}, [1796] = {.lex_state = 9, .external_lex_state = 2}, [1797] = {.lex_state = 9, .external_lex_state = 2}, [1798] = {.lex_state = 9, .external_lex_state = 2}, [1799] = {.lex_state = 9, .external_lex_state = 2}, [1800] = {.lex_state = 172, .external_lex_state = 2}, [1801] = {.lex_state = 172, .external_lex_state = 2}, [1802] = {.lex_state = 9, .external_lex_state = 2}, [1803] = {.lex_state = 172, .external_lex_state = 2}, [1804] = {.lex_state = 9, .external_lex_state = 2}, [1805] = {.lex_state = 172, .external_lex_state = 2}, [1806] = {.lex_state = 172, .external_lex_state = 2}, [1807] = {.lex_state = 9, .external_lex_state = 2}, [1808] = {.lex_state = 172, .external_lex_state = 2}, [1809] = {.lex_state = 172, .external_lex_state = 2}, [1810] = {.lex_state = 9, .external_lex_state = 2}, [1811] = {.lex_state = 172, .external_lex_state = 2}, [1812] = {.lex_state = 172, .external_lex_state = 2}, [1813] = {.lex_state = 172, .external_lex_state = 2}, [1814] = {.lex_state = 172, .external_lex_state = 2}, [1815] = {.lex_state = 9, .external_lex_state = 2}, [1816] = {.lex_state = 9, .external_lex_state = 2}, [1817] = {.lex_state = 9, .external_lex_state = 2}, [1818] = {.lex_state = 9, .external_lex_state = 2}, [1819] = {.lex_state = 9, .external_lex_state = 2}, [1820] = {.lex_state = 9, .external_lex_state = 2}, [1821] = {.lex_state = 9, .external_lex_state = 2}, [1822] = {.lex_state = 9, .external_lex_state = 2}, [1823] = {.lex_state = 9, .external_lex_state = 2}, [1824] = {.lex_state = 9, .external_lex_state = 2}, [1825] = {.lex_state = 9, .external_lex_state = 2}, [1826] = {.lex_state = 9, .external_lex_state = 2}, [1827] = {.lex_state = 9, .external_lex_state = 2}, [1828] = {.lex_state = 9, .external_lex_state = 2}, [1829] = {.lex_state = 9, .external_lex_state = 2}, [1830] = {.lex_state = 9, .external_lex_state = 2}, [1831] = {.lex_state = 9, .external_lex_state = 2}, [1832] = {.lex_state = 9, .external_lex_state = 2}, [1833] = {.lex_state = 9, .external_lex_state = 2}, [1834] = {.lex_state = 9, .external_lex_state = 2}, [1835] = {.lex_state = 9, .external_lex_state = 2}, [1836] = {.lex_state = 9, .external_lex_state = 2}, [1837] = {.lex_state = 9, .external_lex_state = 2}, [1838] = {.lex_state = 9, .external_lex_state = 2}, [1839] = {.lex_state = 9, .external_lex_state = 2}, [1840] = {.lex_state = 9, .external_lex_state = 2}, [1841] = {.lex_state = 9, .external_lex_state = 2}, [1842] = {.lex_state = 9, .external_lex_state = 2}, [1843] = {.lex_state = 9, .external_lex_state = 2}, [1844] = {.lex_state = 9, .external_lex_state = 2}, [1845] = {.lex_state = 9, .external_lex_state = 2}, [1846] = {.lex_state = 9, .external_lex_state = 2}, [1847] = {.lex_state = 9, .external_lex_state = 2}, [1848] = {.lex_state = 9, .external_lex_state = 2}, [1849] = {.lex_state = 9, .external_lex_state = 2}, [1850] = {.lex_state = 9, .external_lex_state = 2}, [1851] = {.lex_state = 9, .external_lex_state = 2}, [1852] = {.lex_state = 9, .external_lex_state = 2}, [1853] = {.lex_state = 9, .external_lex_state = 2}, [1854] = {.lex_state = 9, .external_lex_state = 2}, [1855] = {.lex_state = 9, .external_lex_state = 2}, [1856] = {.lex_state = 9, .external_lex_state = 2}, [1857] = {.lex_state = 9, .external_lex_state = 2}, [1858] = {.lex_state = 9, .external_lex_state = 2}, [1859] = {.lex_state = 9, .external_lex_state = 2}, [1860] = {.lex_state = 9, .external_lex_state = 2}, [1861] = {.lex_state = 9, .external_lex_state = 2}, [1862] = {.lex_state = 9, .external_lex_state = 2}, [1863] = {.lex_state = 9, .external_lex_state = 2}, [1864] = {.lex_state = 9, .external_lex_state = 2}, [1865] = {.lex_state = 9, .external_lex_state = 2}, [1866] = {.lex_state = 9, .external_lex_state = 2}, [1867] = {.lex_state = 9, .external_lex_state = 2}, [1868] = {.lex_state = 9, .external_lex_state = 2}, [1869] = {.lex_state = 9, .external_lex_state = 2}, [1870] = {.lex_state = 9, .external_lex_state = 2}, [1871] = {.lex_state = 9, .external_lex_state = 2}, [1872] = {.lex_state = 9, .external_lex_state = 2}, [1873] = {.lex_state = 9, .external_lex_state = 2}, [1874] = {.lex_state = 9, .external_lex_state = 2}, [1875] = {.lex_state = 9, .external_lex_state = 2}, [1876] = {.lex_state = 9, .external_lex_state = 2}, [1877] = {.lex_state = 9, .external_lex_state = 2}, [1878] = {.lex_state = 9, .external_lex_state = 2}, [1879] = {.lex_state = 9, .external_lex_state = 2}, [1880] = {.lex_state = 9, .external_lex_state = 2}, [1881] = {.lex_state = 9, .external_lex_state = 2}, [1882] = {.lex_state = 9, .external_lex_state = 2}, [1883] = {.lex_state = 9, .external_lex_state = 2}, [1884] = {.lex_state = 9, .external_lex_state = 2}, [1885] = {.lex_state = 9, .external_lex_state = 2}, [1886] = {.lex_state = 9, .external_lex_state = 2}, [1887] = {.lex_state = 9, .external_lex_state = 2}, [1888] = {.lex_state = 9, .external_lex_state = 2}, [1889] = {.lex_state = 9, .external_lex_state = 2}, [1890] = {.lex_state = 9, .external_lex_state = 2}, [1891] = {.lex_state = 9, .external_lex_state = 2}, [1892] = {.lex_state = 9, .external_lex_state = 2}, [1893] = {.lex_state = 9, .external_lex_state = 2}, [1894] = {.lex_state = 9, .external_lex_state = 2}, [1895] = {.lex_state = 9, .external_lex_state = 2}, [1896] = {.lex_state = 9, .external_lex_state = 2}, [1897] = {.lex_state = 9, .external_lex_state = 2}, [1898] = {.lex_state = 9, .external_lex_state = 2}, [1899] = {.lex_state = 9, .external_lex_state = 2}, [1900] = {.lex_state = 9, .external_lex_state = 2}, [1901] = {.lex_state = 9, .external_lex_state = 2}, [1902] = {.lex_state = 9, .external_lex_state = 2}, [1903] = {.lex_state = 9, .external_lex_state = 2}, [1904] = {.lex_state = 9, .external_lex_state = 2}, [1905] = {.lex_state = 9, .external_lex_state = 2}, [1906] = {.lex_state = 9, .external_lex_state = 2}, [1907] = {.lex_state = 9, .external_lex_state = 2}, [1908] = {.lex_state = 9, .external_lex_state = 2}, [1909] = {.lex_state = 9, .external_lex_state = 2}, [1910] = {.lex_state = 9, .external_lex_state = 2}, [1911] = {.lex_state = 9, .external_lex_state = 2}, [1912] = {.lex_state = 9, .external_lex_state = 2}, [1913] = {.lex_state = 9, .external_lex_state = 2}, [1914] = {.lex_state = 9, .external_lex_state = 2}, [1915] = {.lex_state = 9, .external_lex_state = 2}, [1916] = {.lex_state = 9, .external_lex_state = 2}, [1917] = {.lex_state = 9, .external_lex_state = 2}, [1918] = {.lex_state = 9, .external_lex_state = 2}, [1919] = {.lex_state = 9, .external_lex_state = 2}, [1920] = {.lex_state = 9, .external_lex_state = 2}, [1921] = {.lex_state = 9, .external_lex_state = 2}, [1922] = {.lex_state = 9, .external_lex_state = 2}, [1923] = {.lex_state = 9, .external_lex_state = 2}, [1924] = {.lex_state = 9, .external_lex_state = 2}, [1925] = {.lex_state = 9, .external_lex_state = 2}, [1926] = {.lex_state = 9, .external_lex_state = 2}, [1927] = {.lex_state = 9, .external_lex_state = 2}, [1928] = {.lex_state = 9, .external_lex_state = 2}, [1929] = {.lex_state = 9, .external_lex_state = 2}, [1930] = {.lex_state = 9, .external_lex_state = 2}, [1931] = {.lex_state = 9, .external_lex_state = 2}, [1932] = {.lex_state = 9, .external_lex_state = 2}, [1933] = {.lex_state = 9, .external_lex_state = 2}, [1934] = {.lex_state = 9, .external_lex_state = 2}, [1935] = {.lex_state = 9, .external_lex_state = 2}, [1936] = {.lex_state = 9, .external_lex_state = 2}, [1937] = {.lex_state = 9, .external_lex_state = 2}, [1938] = {.lex_state = 9, .external_lex_state = 2}, [1939] = {.lex_state = 9, .external_lex_state = 2}, [1940] = {.lex_state = 9, .external_lex_state = 2}, [1941] = {.lex_state = 9, .external_lex_state = 2}, [1942] = {.lex_state = 9, .external_lex_state = 2}, [1943] = {.lex_state = 9, .external_lex_state = 2}, [1944] = {.lex_state = 9, .external_lex_state = 2}, [1945] = {.lex_state = 9, .external_lex_state = 2}, [1946] = {.lex_state = 9, .external_lex_state = 2}, [1947] = {.lex_state = 9, .external_lex_state = 2}, [1948] = {.lex_state = 9, .external_lex_state = 2}, [1949] = {.lex_state = 9, .external_lex_state = 2}, [1950] = {.lex_state = 9, .external_lex_state = 2}, [1951] = {.lex_state = 9, .external_lex_state = 2}, [1952] = {.lex_state = 9, .external_lex_state = 2}, [1953] = {.lex_state = 9, .external_lex_state = 2}, [1954] = {.lex_state = 9, .external_lex_state = 2}, [1955] = {.lex_state = 9, .external_lex_state = 2}, [1956] = {.lex_state = 9, .external_lex_state = 2}, [1957] = {.lex_state = 9, .external_lex_state = 2}, [1958] = {.lex_state = 9, .external_lex_state = 2}, [1959] = {.lex_state = 9, .external_lex_state = 2}, [1960] = {.lex_state = 9, .external_lex_state = 2}, [1961] = {.lex_state = 9, .external_lex_state = 2}, [1962] = {.lex_state = 9, .external_lex_state = 2}, [1963] = {.lex_state = 9, .external_lex_state = 2}, [1964] = {.lex_state = 9, .external_lex_state = 2}, [1965] = {.lex_state = 9, .external_lex_state = 2}, [1966] = {.lex_state = 9, .external_lex_state = 2}, [1967] = {.lex_state = 9, .external_lex_state = 2}, [1968] = {.lex_state = 9, .external_lex_state = 2}, [1969] = {.lex_state = 9, .external_lex_state = 2}, [1970] = {.lex_state = 9, .external_lex_state = 2}, [1971] = {.lex_state = 9, .external_lex_state = 2}, [1972] = {.lex_state = 9, .external_lex_state = 2}, [1973] = {.lex_state = 9, .external_lex_state = 2}, [1974] = {.lex_state = 9, .external_lex_state = 2}, [1975] = {.lex_state = 9, .external_lex_state = 2}, [1976] = {.lex_state = 9, .external_lex_state = 2}, [1977] = {.lex_state = 9, .external_lex_state = 2}, [1978] = {.lex_state = 9, .external_lex_state = 2}, [1979] = {.lex_state = 9, .external_lex_state = 2}, [1980] = {.lex_state = 9, .external_lex_state = 2}, [1981] = {.lex_state = 9, .external_lex_state = 2}, [1982] = {.lex_state = 9, .external_lex_state = 2}, [1983] = {.lex_state = 9, .external_lex_state = 2}, [1984] = {.lex_state = 9, .external_lex_state = 2}, [1985] = {.lex_state = 9, .external_lex_state = 2}, [1986] = {.lex_state = 9, .external_lex_state = 2}, [1987] = {.lex_state = 9, .external_lex_state = 2}, [1988] = {.lex_state = 9, .external_lex_state = 2}, [1989] = {.lex_state = 9, .external_lex_state = 2}, [1990] = {.lex_state = 9, .external_lex_state = 2}, [1991] = {.lex_state = 9, .external_lex_state = 2}, [1992] = {.lex_state = 9, .external_lex_state = 2}, [1993] = {.lex_state = 9, .external_lex_state = 2}, [1994] = {.lex_state = 9, .external_lex_state = 2}, [1995] = {.lex_state = 9, .external_lex_state = 2}, [1996] = {.lex_state = 9, .external_lex_state = 2}, [1997] = {.lex_state = 9, .external_lex_state = 2}, [1998] = {.lex_state = 9, .external_lex_state = 2}, [1999] = {.lex_state = 9, .external_lex_state = 2}, [2000] = {.lex_state = 9, .external_lex_state = 2}, [2001] = {.lex_state = 9, .external_lex_state = 2}, [2002] = {.lex_state = 9, .external_lex_state = 2}, [2003] = {.lex_state = 9, .external_lex_state = 2}, [2004] = {.lex_state = 9, .external_lex_state = 2}, [2005] = {.lex_state = 9, .external_lex_state = 2}, [2006] = {.lex_state = 9, .external_lex_state = 2}, [2007] = {.lex_state = 9, .external_lex_state = 2}, [2008] = {.lex_state = 9, .external_lex_state = 2}, [2009] = {.lex_state = 9, .external_lex_state = 2}, [2010] = {.lex_state = 9, .external_lex_state = 2}, [2011] = {.lex_state = 9, .external_lex_state = 2}, [2012] = {.lex_state = 9, .external_lex_state = 2}, [2013] = {.lex_state = 9, .external_lex_state = 2}, [2014] = {.lex_state = 9, .external_lex_state = 2}, [2015] = {.lex_state = 9, .external_lex_state = 2}, [2016] = {.lex_state = 9, .external_lex_state = 2}, [2017] = {.lex_state = 9, .external_lex_state = 2}, [2018] = {.lex_state = 9, .external_lex_state = 2}, [2019] = {.lex_state = 9, .external_lex_state = 2}, [2020] = {.lex_state = 9, .external_lex_state = 2}, [2021] = {.lex_state = 9, .external_lex_state = 2}, [2022] = {.lex_state = 9, .external_lex_state = 2}, [2023] = {.lex_state = 9, .external_lex_state = 2}, [2024] = {.lex_state = 9, .external_lex_state = 2}, [2025] = {.lex_state = 9, .external_lex_state = 2}, [2026] = {.lex_state = 9, .external_lex_state = 2}, [2027] = {.lex_state = 9, .external_lex_state = 2}, [2028] = {.lex_state = 9, .external_lex_state = 2}, [2029] = {.lex_state = 9, .external_lex_state = 2}, [2030] = {.lex_state = 9, .external_lex_state = 2}, [2031] = {.lex_state = 9, .external_lex_state = 2}, [2032] = {.lex_state = 9, .external_lex_state = 2}, [2033] = {.lex_state = 9, .external_lex_state = 2}, [2034] = {.lex_state = 9, .external_lex_state = 2}, [2035] = {.lex_state = 9, .external_lex_state = 2}, [2036] = {.lex_state = 9, .external_lex_state = 2}, [2037] = {.lex_state = 9, .external_lex_state = 2}, [2038] = {.lex_state = 9, .external_lex_state = 2}, [2039] = {.lex_state = 9, .external_lex_state = 2}, [2040] = {.lex_state = 9, .external_lex_state = 2}, [2041] = {.lex_state = 9, .external_lex_state = 2}, [2042] = {.lex_state = 9, .external_lex_state = 2}, [2043] = {.lex_state = 9, .external_lex_state = 2}, [2044] = {.lex_state = 9, .external_lex_state = 2}, [2045] = {.lex_state = 9, .external_lex_state = 2}, [2046] = {.lex_state = 9, .external_lex_state = 2}, [2047] = {.lex_state = 9, .external_lex_state = 2}, [2048] = {.lex_state = 9, .external_lex_state = 2}, [2049] = {.lex_state = 9, .external_lex_state = 2}, [2050] = {.lex_state = 9, .external_lex_state = 2}, [2051] = {.lex_state = 9, .external_lex_state = 2}, [2052] = {.lex_state = 9, .external_lex_state = 2}, [2053] = {.lex_state = 9, .external_lex_state = 2}, [2054] = {.lex_state = 9, .external_lex_state = 2}, [2055] = {.lex_state = 9, .external_lex_state = 2}, [2056] = {.lex_state = 9, .external_lex_state = 2}, [2057] = {.lex_state = 9, .external_lex_state = 2}, [2058] = {.lex_state = 9, .external_lex_state = 2}, [2059] = {.lex_state = 9, .external_lex_state = 2}, [2060] = {.lex_state = 9, .external_lex_state = 2}, [2061] = {.lex_state = 9, .external_lex_state = 2}, [2062] = {.lex_state = 9, .external_lex_state = 2}, [2063] = {.lex_state = 9, .external_lex_state = 2}, [2064] = {.lex_state = 9, .external_lex_state = 2}, [2065] = {.lex_state = 9, .external_lex_state = 2}, [2066] = {.lex_state = 9, .external_lex_state = 2}, [2067] = {.lex_state = 9, .external_lex_state = 2}, [2068] = {.lex_state = 9, .external_lex_state = 2}, [2069] = {.lex_state = 9, .external_lex_state = 2}, [2070] = {.lex_state = 9, .external_lex_state = 2}, [2071] = {.lex_state = 9, .external_lex_state = 2}, [2072] = {.lex_state = 9, .external_lex_state = 2}, [2073] = {.lex_state = 9, .external_lex_state = 2}, [2074] = {.lex_state = 9, .external_lex_state = 2}, [2075] = {.lex_state = 9, .external_lex_state = 2}, [2076] = {.lex_state = 9, .external_lex_state = 2}, [2077] = {.lex_state = 9, .external_lex_state = 2}, [2078] = {.lex_state = 9, .external_lex_state = 2}, [2079] = {.lex_state = 9, .external_lex_state = 2}, [2080] = {.lex_state = 9, .external_lex_state = 2}, [2081] = {.lex_state = 9, .external_lex_state = 2}, [2082] = {.lex_state = 9, .external_lex_state = 2}, [2083] = {.lex_state = 9, .external_lex_state = 2}, [2084] = {.lex_state = 9, .external_lex_state = 2}, [2085] = {.lex_state = 9, .external_lex_state = 2}, [2086] = {.lex_state = 9, .external_lex_state = 2}, [2087] = {.lex_state = 9, .external_lex_state = 2}, [2088] = {.lex_state = 9, .external_lex_state = 2}, [2089] = {.lex_state = 9, .external_lex_state = 2}, [2090] = {.lex_state = 9, .external_lex_state = 2}, [2091] = {.lex_state = 9, .external_lex_state = 2}, [2092] = {.lex_state = 9, .external_lex_state = 2}, [2093] = {.lex_state = 9, .external_lex_state = 2}, [2094] = {.lex_state = 9, .external_lex_state = 2}, [2095] = {.lex_state = 9, .external_lex_state = 2}, [2096] = {.lex_state = 9, .external_lex_state = 2}, [2097] = {.lex_state = 9, .external_lex_state = 2}, [2098] = {.lex_state = 9, .external_lex_state = 2}, [2099] = {.lex_state = 9, .external_lex_state = 2}, [2100] = {.lex_state = 11, .external_lex_state = 4}, [2101] = {.lex_state = 9, .external_lex_state = 2}, [2102] = {.lex_state = 9, .external_lex_state = 2}, [2103] = {.lex_state = 9, .external_lex_state = 2}, [2104] = {.lex_state = 9, .external_lex_state = 2}, [2105] = {.lex_state = 9, .external_lex_state = 2}, [2106] = {.lex_state = 9, .external_lex_state = 2}, [2107] = {.lex_state = 9, .external_lex_state = 2}, [2108] = {.lex_state = 9, .external_lex_state = 2}, [2109] = {.lex_state = 9, .external_lex_state = 2}, [2110] = {.lex_state = 11, .external_lex_state = 4}, [2111] = {.lex_state = 9, .external_lex_state = 2}, [2112] = {.lex_state = 9, .external_lex_state = 2}, [2113] = {.lex_state = 9, .external_lex_state = 2}, [2114] = {.lex_state = 11, .external_lex_state = 4}, [2115] = {.lex_state = 9, .external_lex_state = 2}, [2116] = {.lex_state = 11, .external_lex_state = 4}, [2117] = {.lex_state = 9, .external_lex_state = 2}, [2118] = {.lex_state = 11, .external_lex_state = 4}, [2119] = {.lex_state = 9, .external_lex_state = 2}, [2120] = {.lex_state = 9, .external_lex_state = 2}, [2121] = {.lex_state = 9, .external_lex_state = 2}, [2122] = {.lex_state = 11, .external_lex_state = 4}, [2123] = {.lex_state = 9, .external_lex_state = 2}, [2124] = {.lex_state = 11, .external_lex_state = 4}, [2125] = {.lex_state = 9, .external_lex_state = 2}, [2126] = {.lex_state = 11, .external_lex_state = 4}, [2127] = {.lex_state = 9, .external_lex_state = 2}, [2128] = {.lex_state = 11, .external_lex_state = 4}, [2129] = {.lex_state = 9, .external_lex_state = 2}, [2130] = {.lex_state = 9, .external_lex_state = 2}, [2131] = {.lex_state = 11, .external_lex_state = 4}, [2132] = {.lex_state = 9, .external_lex_state = 2}, [2133] = {.lex_state = 9, .external_lex_state = 2}, [2134] = {.lex_state = 9, .external_lex_state = 2}, [2135] = {.lex_state = 9, .external_lex_state = 2}, [2136] = {.lex_state = 9, .external_lex_state = 2}, [2137] = {.lex_state = 9, .external_lex_state = 2}, [2138] = {.lex_state = 9, .external_lex_state = 2}, [2139] = {.lex_state = 9, .external_lex_state = 2}, [2140] = {.lex_state = 9, .external_lex_state = 2}, [2141] = {.lex_state = 9, .external_lex_state = 2}, [2142] = {.lex_state = 9, .external_lex_state = 2}, [2143] = {.lex_state = 9, .external_lex_state = 2}, [2144] = {.lex_state = 11, .external_lex_state = 4}, [2145] = {.lex_state = 11, .external_lex_state = 4}, [2146] = {.lex_state = 7, .external_lex_state = 3}, [2147] = {.lex_state = 7, .external_lex_state = 3}, [2148] = {.lex_state = 7, .external_lex_state = 3}, [2149] = {.lex_state = 7, .external_lex_state = 3}, [2150] = {.lex_state = 9, .external_lex_state = 2}, [2151] = {.lex_state = 7, .external_lex_state = 3}, [2152] = {.lex_state = 7, .external_lex_state = 3}, [2153] = {.lex_state = 9, .external_lex_state = 2}, [2154] = {.lex_state = 9, .external_lex_state = 2}, [2155] = {.lex_state = 9, .external_lex_state = 2}, [2156] = {.lex_state = 7, .external_lex_state = 3}, [2157] = {.lex_state = 9, .external_lex_state = 2}, [2158] = {.lex_state = 9, .external_lex_state = 2}, [2159] = {.lex_state = 9, .external_lex_state = 2}, [2160] = {.lex_state = 9, .external_lex_state = 2}, [2161] = {.lex_state = 9, .external_lex_state = 2}, [2162] = {.lex_state = 7, .external_lex_state = 3}, [2163] = {.lex_state = 7, .external_lex_state = 3}, [2164] = {.lex_state = 7, .external_lex_state = 3}, [2165] = {.lex_state = 9, .external_lex_state = 2}, [2166] = {.lex_state = 7, .external_lex_state = 3}, [2167] = {.lex_state = 7, .external_lex_state = 3}, [2168] = {.lex_state = 7, .external_lex_state = 3}, [2169] = {.lex_state = 7, .external_lex_state = 3}, [2170] = {.lex_state = 7, .external_lex_state = 3}, [2171] = {.lex_state = 7, .external_lex_state = 3}, [2172] = {.lex_state = 7, .external_lex_state = 3}, [2173] = {.lex_state = 7, .external_lex_state = 3}, [2174] = {.lex_state = 7, .external_lex_state = 3}, [2175] = {.lex_state = 7, .external_lex_state = 3}, [2176] = {.lex_state = 7, .external_lex_state = 3}, [2177] = {.lex_state = 7, .external_lex_state = 3}, [2178] = {.lex_state = 7, .external_lex_state = 3}, [2179] = {.lex_state = 7, .external_lex_state = 3}, [2180] = {.lex_state = 7, .external_lex_state = 3}, [2181] = {.lex_state = 7, .external_lex_state = 3}, [2182] = {.lex_state = 7, .external_lex_state = 3}, [2183] = {.lex_state = 7, .external_lex_state = 3}, [2184] = {.lex_state = 7, .external_lex_state = 3}, [2185] = {.lex_state = 7, .external_lex_state = 3}, [2186] = {.lex_state = 7, .external_lex_state = 3}, [2187] = {.lex_state = 7, .external_lex_state = 3}, [2188] = {.lex_state = 7, .external_lex_state = 3}, [2189] = {.lex_state = 7, .external_lex_state = 3}, [2190] = {.lex_state = 7, .external_lex_state = 3}, [2191] = {.lex_state = 7, .external_lex_state = 3}, [2192] = {.lex_state = 7, .external_lex_state = 3}, [2193] = {.lex_state = 7, .external_lex_state = 3}, [2194] = {.lex_state = 7, .external_lex_state = 3}, [2195] = {.lex_state = 7, .external_lex_state = 3}, [2196] = {.lex_state = 7, .external_lex_state = 3}, [2197] = {.lex_state = 7, .external_lex_state = 3}, [2198] = {.lex_state = 7, .external_lex_state = 3}, [2199] = {.lex_state = 7, .external_lex_state = 3}, [2200] = {.lex_state = 7, .external_lex_state = 3}, [2201] = {.lex_state = 7, .external_lex_state = 3}, [2202] = {.lex_state = 7, .external_lex_state = 3}, [2203] = {.lex_state = 7, .external_lex_state = 3}, [2204] = {.lex_state = 7, .external_lex_state = 3}, [2205] = {.lex_state = 7, .external_lex_state = 3}, [2206] = {.lex_state = 7, .external_lex_state = 3}, [2207] = {.lex_state = 7, .external_lex_state = 3}, [2208] = {.lex_state = 7, .external_lex_state = 3}, [2209] = {.lex_state = 7, .external_lex_state = 3}, [2210] = {.lex_state = 7, .external_lex_state = 3}, [2211] = {.lex_state = 7, .external_lex_state = 3}, [2212] = {.lex_state = 7, .external_lex_state = 3}, [2213] = {.lex_state = 7, .external_lex_state = 3}, [2214] = {.lex_state = 7, .external_lex_state = 3}, [2215] = {.lex_state = 7, .external_lex_state = 3}, [2216] = {.lex_state = 7, .external_lex_state = 3}, [2217] = {.lex_state = 7, .external_lex_state = 3}, [2218] = {.lex_state = 7, .external_lex_state = 3}, [2219] = {.lex_state = 7, .external_lex_state = 3}, [2220] = {.lex_state = 7, .external_lex_state = 3}, [2221] = {.lex_state = 7, .external_lex_state = 3}, [2222] = {.lex_state = 7, .external_lex_state = 3}, [2223] = {.lex_state = 7, .external_lex_state = 3}, [2224] = {.lex_state = 7, .external_lex_state = 3}, [2225] = {.lex_state = 7, .external_lex_state = 3}, [2226] = {.lex_state = 7, .external_lex_state = 3}, [2227] = {.lex_state = 7, .external_lex_state = 3}, [2228] = {.lex_state = 7, .external_lex_state = 3}, [2229] = {.lex_state = 7, .external_lex_state = 3}, [2230] = {.lex_state = 7, .external_lex_state = 3}, [2231] = {.lex_state = 7, .external_lex_state = 3}, [2232] = {.lex_state = 7, .external_lex_state = 3}, [2233] = {.lex_state = 7, .external_lex_state = 3}, [2234] = {.lex_state = 7, .external_lex_state = 3}, [2235] = {.lex_state = 7, .external_lex_state = 3}, [2236] = {.lex_state = 7, .external_lex_state = 3}, [2237] = {.lex_state = 7, .external_lex_state = 3}, [2238] = {.lex_state = 7, .external_lex_state = 3}, [2239] = {.lex_state = 7, .external_lex_state = 3}, [2240] = {.lex_state = 7, .external_lex_state = 3}, [2241] = {.lex_state = 7, .external_lex_state = 3}, [2242] = {.lex_state = 7, .external_lex_state = 3}, [2243] = {.lex_state = 7, .external_lex_state = 3}, [2244] = {.lex_state = 7, .external_lex_state = 3}, [2245] = {.lex_state = 7, .external_lex_state = 3}, [2246] = {.lex_state = 7, .external_lex_state = 3}, [2247] = {.lex_state = 7, .external_lex_state = 3}, [2248] = {.lex_state = 7, .external_lex_state = 3}, [2249] = {.lex_state = 7, .external_lex_state = 3}, [2250] = {.lex_state = 7, .external_lex_state = 3}, [2251] = {.lex_state = 7, .external_lex_state = 3}, [2252] = {.lex_state = 7, .external_lex_state = 3}, [2253] = {.lex_state = 7, .external_lex_state = 3}, [2254] = {.lex_state = 7, .external_lex_state = 3}, [2255] = {.lex_state = 7, .external_lex_state = 3}, [2256] = {.lex_state = 7, .external_lex_state = 3}, [2257] = {.lex_state = 7, .external_lex_state = 3}, [2258] = {.lex_state = 7, .external_lex_state = 3}, [2259] = {.lex_state = 7, .external_lex_state = 3}, [2260] = {.lex_state = 7, .external_lex_state = 3}, [2261] = {.lex_state = 7, .external_lex_state = 3}, [2262] = {.lex_state = 7, .external_lex_state = 3}, [2263] = {.lex_state = 7, .external_lex_state = 3}, [2264] = {.lex_state = 7, .external_lex_state = 3}, [2265] = {.lex_state = 7, .external_lex_state = 3}, [2266] = {.lex_state = 7, .external_lex_state = 3}, [2267] = {.lex_state = 7, .external_lex_state = 3}, [2268] = {.lex_state = 7, .external_lex_state = 3}, [2269] = {.lex_state = 7, .external_lex_state = 3}, [2270] = {.lex_state = 7, .external_lex_state = 3}, [2271] = {.lex_state = 7, .external_lex_state = 3}, [2272] = {.lex_state = 7, .external_lex_state = 3}, [2273] = {.lex_state = 7, .external_lex_state = 3}, [2274] = {.lex_state = 7, .external_lex_state = 3}, [2275] = {.lex_state = 7, .external_lex_state = 3}, [2276] = {.lex_state = 7, .external_lex_state = 3}, [2277] = {.lex_state = 7, .external_lex_state = 3}, [2278] = {.lex_state = 7, .external_lex_state = 3}, [2279] = {.lex_state = 7, .external_lex_state = 3}, [2280] = {.lex_state = 7, .external_lex_state = 3}, [2281] = {.lex_state = 7, .external_lex_state = 3}, [2282] = {.lex_state = 7, .external_lex_state = 3}, [2283] = {.lex_state = 7, .external_lex_state = 3}, [2284] = {.lex_state = 7, .external_lex_state = 3}, [2285] = {.lex_state = 7, .external_lex_state = 3}, [2286] = {.lex_state = 7, .external_lex_state = 3}, [2287] = {.lex_state = 7, .external_lex_state = 3}, [2288] = {.lex_state = 7, .external_lex_state = 3}, [2289] = {.lex_state = 7, .external_lex_state = 3}, [2290] = {.lex_state = 7, .external_lex_state = 3}, [2291] = {.lex_state = 7, .external_lex_state = 3}, [2292] = {.lex_state = 7, .external_lex_state = 3}, [2293] = {.lex_state = 7, .external_lex_state = 3}, [2294] = {.lex_state = 7, .external_lex_state = 3}, [2295] = {.lex_state = 7, .external_lex_state = 3}, [2296] = {.lex_state = 7, .external_lex_state = 3}, [2297] = {.lex_state = 7, .external_lex_state = 3}, [2298] = {.lex_state = 7, .external_lex_state = 3}, [2299] = {.lex_state = 7, .external_lex_state = 3}, [2300] = {.lex_state = 7, .external_lex_state = 3}, [2301] = {.lex_state = 7, .external_lex_state = 3}, [2302] = {.lex_state = 7, .external_lex_state = 3}, [2303] = {.lex_state = 7, .external_lex_state = 3}, [2304] = {.lex_state = 7, .external_lex_state = 3}, [2305] = {.lex_state = 7, .external_lex_state = 3}, [2306] = {.lex_state = 7, .external_lex_state = 3}, [2307] = {.lex_state = 7, .external_lex_state = 3}, [2308] = {.lex_state = 7, .external_lex_state = 3}, [2309] = {.lex_state = 7, .external_lex_state = 3}, [2310] = {.lex_state = 7, .external_lex_state = 3}, [2311] = {.lex_state = 7, .external_lex_state = 3}, [2312] = {.lex_state = 7, .external_lex_state = 3}, [2313] = {.lex_state = 7, .external_lex_state = 3}, [2314] = {.lex_state = 7, .external_lex_state = 3}, [2315] = {.lex_state = 7, .external_lex_state = 3}, [2316] = {.lex_state = 7, .external_lex_state = 3}, [2317] = {.lex_state = 7, .external_lex_state = 3}, [2318] = {.lex_state = 7, .external_lex_state = 3}, [2319] = {.lex_state = 7, .external_lex_state = 3}, [2320] = {.lex_state = 7, .external_lex_state = 3}, [2321] = {.lex_state = 7, .external_lex_state = 3}, [2322] = {.lex_state = 7, .external_lex_state = 3}, [2323] = {.lex_state = 7, .external_lex_state = 3}, [2324] = {.lex_state = 7, .external_lex_state = 3}, [2325] = {.lex_state = 7, .external_lex_state = 3}, [2326] = {.lex_state = 7, .external_lex_state = 3}, [2327] = {.lex_state = 7, .external_lex_state = 3}, [2328] = {.lex_state = 7, .external_lex_state = 3}, [2329] = {.lex_state = 7, .external_lex_state = 3}, [2330] = {.lex_state = 7, .external_lex_state = 3}, [2331] = {.lex_state = 7, .external_lex_state = 3}, [2332] = {.lex_state = 7, .external_lex_state = 3}, [2333] = {.lex_state = 7, .external_lex_state = 3}, [2334] = {.lex_state = 7, .external_lex_state = 3}, [2335] = {.lex_state = 7, .external_lex_state = 3}, [2336] = {.lex_state = 7, .external_lex_state = 3}, [2337] = {.lex_state = 7, .external_lex_state = 3}, [2338] = {.lex_state = 7, .external_lex_state = 3}, [2339] = {.lex_state = 7, .external_lex_state = 3}, [2340] = {.lex_state = 7, .external_lex_state = 3}, [2341] = {.lex_state = 7, .external_lex_state = 3}, [2342] = {.lex_state = 7, .external_lex_state = 3}, [2343] = {.lex_state = 7, .external_lex_state = 3}, [2344] = {.lex_state = 7, .external_lex_state = 3}, [2345] = {.lex_state = 7, .external_lex_state = 3}, [2346] = {.lex_state = 7, .external_lex_state = 3}, [2347] = {.lex_state = 7, .external_lex_state = 3}, [2348] = {.lex_state = 7, .external_lex_state = 3}, [2349] = {.lex_state = 7, .external_lex_state = 3}, [2350] = {.lex_state = 7, .external_lex_state = 3}, [2351] = {.lex_state = 7, .external_lex_state = 3}, [2352] = {.lex_state = 7, .external_lex_state = 3}, [2353] = {.lex_state = 7, .external_lex_state = 3}, [2354] = {.lex_state = 7, .external_lex_state = 3}, [2355] = {.lex_state = 7, .external_lex_state = 3}, [2356] = {.lex_state = 7, .external_lex_state = 3}, [2357] = {.lex_state = 7, .external_lex_state = 3}, [2358] = {.lex_state = 7, .external_lex_state = 3}, [2359] = {.lex_state = 7, .external_lex_state = 3}, [2360] = {.lex_state = 7, .external_lex_state = 3}, [2361] = {.lex_state = 7, .external_lex_state = 3}, [2362] = {.lex_state = 7, .external_lex_state = 3}, [2363] = {.lex_state = 7, .external_lex_state = 3}, [2364] = {.lex_state = 7, .external_lex_state = 3}, [2365] = {.lex_state = 7, .external_lex_state = 3}, [2366] = {.lex_state = 7, .external_lex_state = 3}, [2367] = {.lex_state = 7, .external_lex_state = 3}, [2368] = {.lex_state = 7, .external_lex_state = 3}, [2369] = {.lex_state = 7, .external_lex_state = 3}, [2370] = {.lex_state = 7, .external_lex_state = 3}, [2371] = {.lex_state = 7, .external_lex_state = 3}, [2372] = {.lex_state = 7, .external_lex_state = 3}, [2373] = {.lex_state = 7, .external_lex_state = 3}, [2374] = {.lex_state = 7, .external_lex_state = 3}, [2375] = {.lex_state = 7, .external_lex_state = 3}, [2376] = {.lex_state = 7, .external_lex_state = 3}, [2377] = {.lex_state = 7, .external_lex_state = 3}, [2378] = {.lex_state = 7, .external_lex_state = 3}, [2379] = {.lex_state = 7, .external_lex_state = 3}, [2380] = {.lex_state = 7, .external_lex_state = 3}, [2381] = {.lex_state = 9, .external_lex_state = 2}, [2382] = {.lex_state = 9, .external_lex_state = 2}, [2383] = {.lex_state = 9, .external_lex_state = 2}, [2384] = {.lex_state = 9, .external_lex_state = 2}, [2385] = {.lex_state = 9, .external_lex_state = 2}, [2386] = {.lex_state = 9, .external_lex_state = 2}, [2387] = {.lex_state = 9, .external_lex_state = 2}, [2388] = {.lex_state = 9, .external_lex_state = 2}, [2389] = {.lex_state = 9, .external_lex_state = 2}, [2390] = {.lex_state = 9, .external_lex_state = 2}, [2391] = {.lex_state = 9, .external_lex_state = 2}, [2392] = {.lex_state = 9, .external_lex_state = 2}, [2393] = {.lex_state = 9, .external_lex_state = 2}, [2394] = {.lex_state = 9, .external_lex_state = 2}, [2395] = {.lex_state = 9, .external_lex_state = 2}, [2396] = {.lex_state = 9, .external_lex_state = 2}, [2397] = {.lex_state = 9, .external_lex_state = 2}, [2398] = {.lex_state = 9, .external_lex_state = 2}, [2399] = {.lex_state = 9, .external_lex_state = 2}, [2400] = {.lex_state = 9, .external_lex_state = 2}, [2401] = {.lex_state = 9, .external_lex_state = 2}, [2402] = {.lex_state = 9, .external_lex_state = 2}, [2403] = {.lex_state = 9, .external_lex_state = 2}, [2404] = {.lex_state = 9, .external_lex_state = 2}, [2405] = {.lex_state = 9, .external_lex_state = 2}, [2406] = {.lex_state = 9, .external_lex_state = 2}, [2407] = {.lex_state = 9, .external_lex_state = 2}, [2408] = {.lex_state = 9, .external_lex_state = 2}, [2409] = {.lex_state = 9, .external_lex_state = 2}, [2410] = {.lex_state = 9, .external_lex_state = 2}, [2411] = {.lex_state = 9, .external_lex_state = 2}, [2412] = {.lex_state = 9, .external_lex_state = 2}, [2413] = {.lex_state = 9, .external_lex_state = 2}, [2414] = {.lex_state = 9, .external_lex_state = 2}, [2415] = {.lex_state = 9, .external_lex_state = 2}, [2416] = {.lex_state = 9, .external_lex_state = 2}, [2417] = {.lex_state = 9, .external_lex_state = 2}, [2418] = {.lex_state = 9, .external_lex_state = 2}, [2419] = {.lex_state = 9, .external_lex_state = 2}, [2420] = {.lex_state = 9, .external_lex_state = 2}, [2421] = {.lex_state = 9, .external_lex_state = 2}, [2422] = {.lex_state = 9, .external_lex_state = 2}, [2423] = {.lex_state = 9, .external_lex_state = 2}, [2424] = {.lex_state = 172, .external_lex_state = 2}, [2425] = {.lex_state = 172, .external_lex_state = 2}, [2426] = {.lex_state = 172, .external_lex_state = 2}, [2427] = {.lex_state = 9, .external_lex_state = 2}, [2428] = {.lex_state = 9, .external_lex_state = 2}, [2429] = {.lex_state = 9, .external_lex_state = 2}, [2430] = {.lex_state = 9, .external_lex_state = 2}, [2431] = {.lex_state = 9, .external_lex_state = 2}, [2432] = {.lex_state = 9, .external_lex_state = 2}, [2433] = {.lex_state = 9, .external_lex_state = 2}, [2434] = {.lex_state = 9, .external_lex_state = 2}, [2435] = {.lex_state = 9, .external_lex_state = 2}, [2436] = {.lex_state = 9, .external_lex_state = 2}, [2437] = {.lex_state = 9, .external_lex_state = 2}, [2438] = {.lex_state = 9, .external_lex_state = 2}, [2439] = {.lex_state = 9, .external_lex_state = 2}, [2440] = {.lex_state = 9, .external_lex_state = 2}, [2441] = {.lex_state = 9, .external_lex_state = 2}, [2442] = {.lex_state = 9, .external_lex_state = 2}, [2443] = {.lex_state = 9, .external_lex_state = 2}, [2444] = {.lex_state = 9, .external_lex_state = 2}, [2445] = {.lex_state = 9, .external_lex_state = 2}, [2446] = {.lex_state = 9, .external_lex_state = 2}, [2447] = {.lex_state = 172, .external_lex_state = 2}, [2448] = {.lex_state = 9, .external_lex_state = 2}, [2449] = {.lex_state = 9, .external_lex_state = 2}, [2450] = {.lex_state = 9, .external_lex_state = 2}, [2451] = {.lex_state = 9, .external_lex_state = 2}, [2452] = {.lex_state = 9, .external_lex_state = 2}, [2453] = {.lex_state = 172, .external_lex_state = 2}, [2454] = {.lex_state = 9, .external_lex_state = 2}, [2455] = {.lex_state = 9, .external_lex_state = 2}, [2456] = {.lex_state = 9, .external_lex_state = 2}, [2457] = {.lex_state = 172, .external_lex_state = 2}, [2458] = {.lex_state = 172, .external_lex_state = 2}, [2459] = {.lex_state = 9, .external_lex_state = 2}, [2460] = {.lex_state = 9, .external_lex_state = 2}, [2461] = {.lex_state = 172, .external_lex_state = 2}, [2462] = {.lex_state = 9, .external_lex_state = 2}, [2463] = {.lex_state = 9, .external_lex_state = 2}, [2464] = {.lex_state = 9, .external_lex_state = 2}, [2465] = {.lex_state = 9, .external_lex_state = 2}, [2466] = {.lex_state = 9, .external_lex_state = 2}, [2467] = {.lex_state = 9, .external_lex_state = 2}, [2468] = {.lex_state = 9, .external_lex_state = 2}, [2469] = {.lex_state = 172, .external_lex_state = 2}, [2470] = {.lex_state = 9, .external_lex_state = 2}, [2471] = {.lex_state = 9, .external_lex_state = 2}, [2472] = {.lex_state = 9, .external_lex_state = 2}, [2473] = {.lex_state = 9, .external_lex_state = 2}, [2474] = {.lex_state = 9, .external_lex_state = 2}, [2475] = {.lex_state = 9, .external_lex_state = 2}, [2476] = {.lex_state = 9, .external_lex_state = 2}, [2477] = {.lex_state = 172, .external_lex_state = 2}, [2478] = {.lex_state = 9, .external_lex_state = 2}, [2479] = {.lex_state = 9, .external_lex_state = 2}, [2480] = {.lex_state = 172, .external_lex_state = 2}, [2481] = {.lex_state = 9, .external_lex_state = 2}, [2482] = {.lex_state = 9, .external_lex_state = 2}, [2483] = {.lex_state = 9, .external_lex_state = 2}, [2484] = {.lex_state = 172, .external_lex_state = 2}, [2485] = {.lex_state = 172, .external_lex_state = 2}, [2486] = {.lex_state = 9, .external_lex_state = 2}, [2487] = {.lex_state = 9, .external_lex_state = 2}, [2488] = {.lex_state = 9, .external_lex_state = 2}, [2489] = {.lex_state = 9, .external_lex_state = 2}, [2490] = {.lex_state = 9, .external_lex_state = 2}, [2491] = {.lex_state = 172, .external_lex_state = 2}, [2492] = {.lex_state = 9, .external_lex_state = 2}, [2493] = {.lex_state = 172, .external_lex_state = 2}, [2494] = {.lex_state = 172, .external_lex_state = 2}, [2495] = {.lex_state = 172, .external_lex_state = 2}, [2496] = {.lex_state = 9, .external_lex_state = 2}, [2497] = {.lex_state = 172, .external_lex_state = 2}, [2498] = {.lex_state = 172, .external_lex_state = 2}, [2499] = {.lex_state = 172, .external_lex_state = 2}, [2500] = {.lex_state = 172, .external_lex_state = 2}, [2501] = {.lex_state = 172, .external_lex_state = 2}, [2502] = {.lex_state = 9, .external_lex_state = 2}, [2503] = {.lex_state = 9, .external_lex_state = 2}, [2504] = {.lex_state = 9, .external_lex_state = 2}, [2505] = {.lex_state = 172, .external_lex_state = 2}, [2506] = {.lex_state = 9, .external_lex_state = 2}, [2507] = {.lex_state = 9, .external_lex_state = 2}, [2508] = {.lex_state = 9, .external_lex_state = 2}, [2509] = {.lex_state = 9, .external_lex_state = 2}, [2510] = {.lex_state = 9, .external_lex_state = 2}, [2511] = {.lex_state = 9, .external_lex_state = 2}, [2512] = {.lex_state = 172, .external_lex_state = 2}, [2513] = {.lex_state = 9, .external_lex_state = 2}, [2514] = {.lex_state = 172, .external_lex_state = 2}, [2515] = {.lex_state = 172, .external_lex_state = 2}, [2516] = {.lex_state = 172, .external_lex_state = 2}, [2517] = {.lex_state = 9, .external_lex_state = 2}, [2518] = {.lex_state = 9, .external_lex_state = 2}, [2519] = {.lex_state = 172, .external_lex_state = 2}, [2520] = {.lex_state = 9, .external_lex_state = 2}, [2521] = {.lex_state = 172, .external_lex_state = 2}, [2522] = {.lex_state = 172, .external_lex_state = 2}, [2523] = {.lex_state = 9, .external_lex_state = 2}, [2524] = {.lex_state = 9, .external_lex_state = 2}, [2525] = {.lex_state = 9, .external_lex_state = 2}, [2526] = {.lex_state = 9, .external_lex_state = 2}, [2527] = {.lex_state = 8, .external_lex_state = 2}, [2528] = {.lex_state = 172, .external_lex_state = 2}, [2529] = {.lex_state = 9, .external_lex_state = 2}, [2530] = {.lex_state = 9, .external_lex_state = 2}, [2531] = {.lex_state = 172, .external_lex_state = 2}, [2532] = {.lex_state = 9, .external_lex_state = 2}, [2533] = {.lex_state = 9, .external_lex_state = 2}, [2534] = {.lex_state = 9, .external_lex_state = 2}, [2535] = {.lex_state = 9, .external_lex_state = 2}, [2536] = {.lex_state = 9, .external_lex_state = 2}, [2537] = {.lex_state = 9, .external_lex_state = 2}, [2538] = {.lex_state = 9, .external_lex_state = 2}, [2539] = {.lex_state = 9, .external_lex_state = 2}, [2540] = {.lex_state = 172, .external_lex_state = 2}, [2541] = {.lex_state = 9, .external_lex_state = 2}, [2542] = {.lex_state = 9, .external_lex_state = 2}, [2543] = {.lex_state = 172, .external_lex_state = 2}, [2544] = {.lex_state = 9, .external_lex_state = 2}, [2545] = {.lex_state = 9, .external_lex_state = 2}, [2546] = {.lex_state = 9, .external_lex_state = 2}, [2547] = {.lex_state = 9, .external_lex_state = 2}, [2548] = {.lex_state = 9, .external_lex_state = 2}, [2549] = {.lex_state = 9, .external_lex_state = 2}, [2550] = {.lex_state = 9, .external_lex_state = 2}, [2551] = {.lex_state = 172, .external_lex_state = 2}, [2552] = {.lex_state = 172, .external_lex_state = 2}, [2553] = {.lex_state = 9, .external_lex_state = 2}, [2554] = {.lex_state = 172, .external_lex_state = 2}, [2555] = {.lex_state = 172, .external_lex_state = 2}, [2556] = {.lex_state = 172, .external_lex_state = 2}, [2557] = {.lex_state = 9, .external_lex_state = 2}, [2558] = {.lex_state = 9, .external_lex_state = 2}, [2559] = {.lex_state = 9, .external_lex_state = 2}, [2560] = {.lex_state = 9, .external_lex_state = 2}, [2561] = {.lex_state = 9, .external_lex_state = 2}, [2562] = {.lex_state = 9, .external_lex_state = 2}, [2563] = {.lex_state = 9, .external_lex_state = 2}, [2564] = {.lex_state = 9, .external_lex_state = 2}, [2565] = {.lex_state = 9, .external_lex_state = 2}, [2566] = {.lex_state = 172, .external_lex_state = 2}, [2567] = {.lex_state = 9, .external_lex_state = 2}, [2568] = {.lex_state = 9, .external_lex_state = 2}, [2569] = {.lex_state = 9, .external_lex_state = 2}, [2570] = {.lex_state = 172, .external_lex_state = 2}, [2571] = {.lex_state = 9, .external_lex_state = 2}, [2572] = {.lex_state = 9, .external_lex_state = 2}, [2573] = {.lex_state = 172, .external_lex_state = 2}, [2574] = {.lex_state = 9, .external_lex_state = 2}, [2575] = {.lex_state = 9, .external_lex_state = 2}, [2576] = {.lex_state = 172, .external_lex_state = 2}, [2577] = {.lex_state = 9, .external_lex_state = 2}, [2578] = {.lex_state = 9, .external_lex_state = 2}, [2579] = {.lex_state = 9, .external_lex_state = 2}, [2580] = {.lex_state = 9, .external_lex_state = 2}, [2581] = {.lex_state = 9, .external_lex_state = 2}, [2582] = {.lex_state = 9, .external_lex_state = 2}, [2583] = {.lex_state = 9, .external_lex_state = 2}, [2584] = {.lex_state = 9, .external_lex_state = 2}, [2585] = {.lex_state = 9, .external_lex_state = 2}, [2586] = {.lex_state = 172, .external_lex_state = 2}, [2587] = {.lex_state = 172, .external_lex_state = 2}, [2588] = {.lex_state = 9, .external_lex_state = 2}, [2589] = {.lex_state = 9, .external_lex_state = 2}, [2590] = {.lex_state = 9, .external_lex_state = 2}, [2591] = {.lex_state = 172, .external_lex_state = 2}, [2592] = {.lex_state = 172, .external_lex_state = 2}, [2593] = {.lex_state = 172, .external_lex_state = 2}, [2594] = {.lex_state = 172, .external_lex_state = 2}, [2595] = {.lex_state = 172, .external_lex_state = 2}, [2596] = {.lex_state = 172, .external_lex_state = 2}, [2597] = {.lex_state = 172, .external_lex_state = 2}, [2598] = {.lex_state = 172, .external_lex_state = 2}, [2599] = {.lex_state = 172, .external_lex_state = 2}, [2600] = {.lex_state = 172, .external_lex_state = 2}, [2601] = {.lex_state = 172, .external_lex_state = 2}, [2602] = {.lex_state = 172, .external_lex_state = 2}, [2603] = {.lex_state = 9, .external_lex_state = 2}, [2604] = {.lex_state = 172, .external_lex_state = 2}, [2605] = {.lex_state = 172, .external_lex_state = 2}, [2606] = {.lex_state = 9, .external_lex_state = 2}, [2607] = {.lex_state = 9, .external_lex_state = 2}, [2608] = {.lex_state = 9, .external_lex_state = 2}, [2609] = {.lex_state = 9, .external_lex_state = 2}, [2610] = {.lex_state = 9, .external_lex_state = 2}, [2611] = {.lex_state = 9, .external_lex_state = 2}, [2612] = {.lex_state = 9, .external_lex_state = 2}, [2613] = {.lex_state = 9, .external_lex_state = 2}, [2614] = {.lex_state = 9, .external_lex_state = 2}, [2615] = {.lex_state = 9, .external_lex_state = 2}, [2616] = {.lex_state = 9, .external_lex_state = 2}, [2617] = {.lex_state = 172, .external_lex_state = 2}, [2618] = {.lex_state = 9, .external_lex_state = 2}, [2619] = {.lex_state = 9, .external_lex_state = 2}, [2620] = {.lex_state = 172, .external_lex_state = 2}, [2621] = {.lex_state = 172, .external_lex_state = 2}, [2622] = {.lex_state = 172, .external_lex_state = 2}, [2623] = {.lex_state = 9, .external_lex_state = 2}, [2624] = {.lex_state = 172, .external_lex_state = 2}, [2625] = {.lex_state = 172, .external_lex_state = 2}, [2626] = {.lex_state = 172, .external_lex_state = 2}, [2627] = {.lex_state = 172, .external_lex_state = 2}, [2628] = {.lex_state = 9, .external_lex_state = 2}, [2629] = {.lex_state = 9, .external_lex_state = 2}, [2630] = {.lex_state = 9, .external_lex_state = 2}, [2631] = {.lex_state = 9, .external_lex_state = 2}, [2632] = {.lex_state = 172, .external_lex_state = 2}, [2633] = {.lex_state = 9, .external_lex_state = 2}, [2634] = {.lex_state = 172, .external_lex_state = 2}, [2635] = {.lex_state = 9, .external_lex_state = 2}, [2636] = {.lex_state = 9, .external_lex_state = 2}, [2637] = {.lex_state = 172, .external_lex_state = 2}, [2638] = {.lex_state = 9, .external_lex_state = 2}, [2639] = {.lex_state = 9, .external_lex_state = 2}, [2640] = {.lex_state = 9, .external_lex_state = 2}, [2641] = {.lex_state = 172, .external_lex_state = 2}, [2642] = {.lex_state = 9, .external_lex_state = 2}, [2643] = {.lex_state = 9, .external_lex_state = 2}, [2644] = {.lex_state = 172, .external_lex_state = 2}, [2645] = {.lex_state = 9, .external_lex_state = 2}, [2646] = {.lex_state = 9, .external_lex_state = 2}, [2647] = {.lex_state = 9, .external_lex_state = 2}, [2648] = {.lex_state = 9, .external_lex_state = 2}, [2649] = {.lex_state = 9, .external_lex_state = 2}, [2650] = {.lex_state = 9, .external_lex_state = 2}, [2651] = {.lex_state = 9, .external_lex_state = 2}, [2652] = {.lex_state = 9, .external_lex_state = 2}, [2653] = {.lex_state = 9, .external_lex_state = 2}, [2654] = {.lex_state = 9, .external_lex_state = 2}, [2655] = {.lex_state = 9, .external_lex_state = 2}, [2656] = {.lex_state = 172, .external_lex_state = 2}, [2657] = {.lex_state = 9, .external_lex_state = 2}, [2658] = {.lex_state = 9, .external_lex_state = 2}, [2659] = {.lex_state = 9, .external_lex_state = 2}, [2660] = {.lex_state = 9, .external_lex_state = 2}, [2661] = {.lex_state = 9, .external_lex_state = 2}, [2662] = {.lex_state = 172, .external_lex_state = 2}, [2663] = {.lex_state = 9, .external_lex_state = 2}, [2664] = {.lex_state = 172, .external_lex_state = 2}, [2665] = {.lex_state = 9, .external_lex_state = 2}, [2666] = {.lex_state = 9, .external_lex_state = 2}, [2667] = {.lex_state = 9, .external_lex_state = 2}, [2668] = {.lex_state = 9, .external_lex_state = 2}, [2669] = {.lex_state = 9, .external_lex_state = 2}, [2670] = {.lex_state = 9, .external_lex_state = 2}, [2671] = {.lex_state = 9, .external_lex_state = 2}, [2672] = {.lex_state = 9, .external_lex_state = 2}, [2673] = {.lex_state = 9, .external_lex_state = 2}, [2674] = {.lex_state = 172, .external_lex_state = 2}, [2675] = {.lex_state = 172, .external_lex_state = 2}, [2676] = {.lex_state = 9, .external_lex_state = 2}, [2677] = {.lex_state = 172, .external_lex_state = 2}, [2678] = {.lex_state = 8, .external_lex_state = 2}, [2679] = {.lex_state = 172, .external_lex_state = 2}, [2680] = {.lex_state = 172, .external_lex_state = 2}, [2681] = {.lex_state = 172, .external_lex_state = 2}, [2682] = {.lex_state = 172, .external_lex_state = 2}, [2683] = {.lex_state = 172, .external_lex_state = 2}, [2684] = {.lex_state = 172, .external_lex_state = 2}, [2685] = {.lex_state = 172, .external_lex_state = 2}, [2686] = {.lex_state = 172, .external_lex_state = 2}, [2687] = {.lex_state = 9, .external_lex_state = 2}, [2688] = {.lex_state = 172, .external_lex_state = 2}, [2689] = {.lex_state = 172, .external_lex_state = 2}, [2690] = {.lex_state = 172, .external_lex_state = 2}, [2691] = {.lex_state = 172, .external_lex_state = 2}, [2692] = {.lex_state = 172, .external_lex_state = 2}, [2693] = {.lex_state = 172, .external_lex_state = 2}, [2694] = {.lex_state = 8, .external_lex_state = 2}, [2695] = {.lex_state = 172, .external_lex_state = 2}, [2696] = {.lex_state = 172, .external_lex_state = 2}, [2697] = {.lex_state = 8, .external_lex_state = 2}, [2698] = {.lex_state = 172, .external_lex_state = 2}, [2699] = {.lex_state = 172, .external_lex_state = 2}, [2700] = {.lex_state = 172, .external_lex_state = 2}, [2701] = {.lex_state = 172, .external_lex_state = 2}, [2702] = {.lex_state = 172, .external_lex_state = 2}, [2703] = {.lex_state = 172, .external_lex_state = 2}, [2704] = {.lex_state = 172, .external_lex_state = 2}, [2705] = {.lex_state = 172, .external_lex_state = 2}, [2706] = {.lex_state = 172, .external_lex_state = 2}, [2707] = {.lex_state = 8, .external_lex_state = 2}, [2708] = {.lex_state = 172, .external_lex_state = 2}, [2709] = {.lex_state = 172, .external_lex_state = 2}, [2710] = {.lex_state = 172, .external_lex_state = 2}, [2711] = {.lex_state = 172, .external_lex_state = 2}, [2712] = {.lex_state = 172, .external_lex_state = 2}, [2713] = {.lex_state = 172, .external_lex_state = 2}, [2714] = {.lex_state = 172, .external_lex_state = 2}, [2715] = {.lex_state = 172, .external_lex_state = 2}, [2716] = {.lex_state = 172, .external_lex_state = 2}, [2717] = {.lex_state = 172, .external_lex_state = 2}, [2718] = {.lex_state = 8, .external_lex_state = 2}, [2719] = {.lex_state = 172, .external_lex_state = 2}, [2720] = {.lex_state = 172, .external_lex_state = 2}, [2721] = {.lex_state = 172, .external_lex_state = 2}, [2722] = {.lex_state = 172, .external_lex_state = 2}, [2723] = {.lex_state = 172, .external_lex_state = 2}, [2724] = {.lex_state = 172, .external_lex_state = 2}, [2725] = {.lex_state = 172, .external_lex_state = 2}, [2726] = {.lex_state = 172, .external_lex_state = 2}, [2727] = {.lex_state = 172, .external_lex_state = 2}, [2728] = {.lex_state = 172, .external_lex_state = 2}, [2729] = {.lex_state = 172, .external_lex_state = 2}, [2730] = {.lex_state = 172, .external_lex_state = 2}, [2731] = {.lex_state = 172, .external_lex_state = 2}, [2732] = {.lex_state = 172, .external_lex_state = 2}, [2733] = {.lex_state = 172, .external_lex_state = 2}, [2734] = {.lex_state = 9, .external_lex_state = 2}, [2735] = {.lex_state = 9, .external_lex_state = 2}, [2736] = {.lex_state = 9, .external_lex_state = 2}, [2737] = {.lex_state = 172, .external_lex_state = 2}, [2738] = {.lex_state = 172, .external_lex_state = 2}, [2739] = {.lex_state = 172, .external_lex_state = 2}, [2740] = {.lex_state = 172, .external_lex_state = 2}, [2741] = {.lex_state = 172, .external_lex_state = 2}, [2742] = {.lex_state = 172, .external_lex_state = 2}, [2743] = {.lex_state = 172, .external_lex_state = 2}, [2744] = {.lex_state = 172, .external_lex_state = 2}, [2745] = {.lex_state = 172, .external_lex_state = 2}, [2746] = {.lex_state = 172, .external_lex_state = 2}, [2747] = {.lex_state = 172, .external_lex_state = 2}, [2748] = {.lex_state = 172, .external_lex_state = 2}, [2749] = {.lex_state = 172, .external_lex_state = 2}, [2750] = {.lex_state = 172, .external_lex_state = 2}, [2751] = {.lex_state = 172, .external_lex_state = 2}, [2752] = {.lex_state = 172, .external_lex_state = 2}, [2753] = {.lex_state = 9, .external_lex_state = 2}, [2754] = {.lex_state = 9, .external_lex_state = 2}, [2755] = {.lex_state = 9, .external_lex_state = 2}, [2756] = {.lex_state = 172, .external_lex_state = 2}, [2757] = {.lex_state = 9, .external_lex_state = 2}, [2758] = {.lex_state = 9, .external_lex_state = 2}, [2759] = {.lex_state = 9, .external_lex_state = 2}, [2760] = {.lex_state = 9, .external_lex_state = 2}, [2761] = {.lex_state = 9, .external_lex_state = 2}, [2762] = {.lex_state = 9, .external_lex_state = 2}, [2763] = {.lex_state = 9, .external_lex_state = 2}, [2764] = {.lex_state = 9, .external_lex_state = 2}, [2765] = {.lex_state = 9, .external_lex_state = 2}, [2766] = {.lex_state = 9, .external_lex_state = 2}, [2767] = {.lex_state = 9, .external_lex_state = 2}, [2768] = {.lex_state = 9, .external_lex_state = 2}, [2769] = {.lex_state = 9, .external_lex_state = 2}, [2770] = {.lex_state = 9, .external_lex_state = 2}, [2771] = {.lex_state = 9, .external_lex_state = 2}, [2772] = {.lex_state = 9, .external_lex_state = 2}, [2773] = {.lex_state = 9, .external_lex_state = 2}, [2774] = {.lex_state = 9, .external_lex_state = 2}, [2775] = {.lex_state = 9, .external_lex_state = 2}, [2776] = {.lex_state = 9, .external_lex_state = 2}, [2777] = {.lex_state = 9, .external_lex_state = 2}, [2778] = {.lex_state = 9, .external_lex_state = 2}, [2779] = {.lex_state = 9, .external_lex_state = 2}, [2780] = {.lex_state = 9, .external_lex_state = 2}, [2781] = {.lex_state = 9, .external_lex_state = 2}, [2782] = {.lex_state = 172, .external_lex_state = 2}, [2783] = {.lex_state = 9, .external_lex_state = 2}, [2784] = {.lex_state = 9, .external_lex_state = 2}, [2785] = {.lex_state = 9, .external_lex_state = 2}, [2786] = {.lex_state = 9, .external_lex_state = 2}, [2787] = {.lex_state = 9, .external_lex_state = 2}, [2788] = {.lex_state = 9, .external_lex_state = 2}, [2789] = {.lex_state = 9, .external_lex_state = 2}, [2790] = {.lex_state = 9, .external_lex_state = 2}, [2791] = {.lex_state = 9, .external_lex_state = 2}, [2792] = {.lex_state = 9, .external_lex_state = 2}, [2793] = {.lex_state = 9, .external_lex_state = 2}, [2794] = {.lex_state = 9, .external_lex_state = 2}, [2795] = {.lex_state = 9, .external_lex_state = 2}, [2796] = {.lex_state = 9, .external_lex_state = 2}, [2797] = {.lex_state = 9, .external_lex_state = 2}, [2798] = {.lex_state = 9, .external_lex_state = 2}, [2799] = {.lex_state = 9, .external_lex_state = 2}, [2800] = {.lex_state = 9, .external_lex_state = 2}, [2801] = {.lex_state = 9, .external_lex_state = 2}, [2802] = {.lex_state = 9, .external_lex_state = 2}, [2803] = {.lex_state = 9, .external_lex_state = 2}, [2804] = {.lex_state = 9, .external_lex_state = 2}, [2805] = {.lex_state = 9, .external_lex_state = 2}, [2806] = {.lex_state = 9, .external_lex_state = 2}, [2807] = {.lex_state = 9, .external_lex_state = 2}, [2808] = {.lex_state = 9, .external_lex_state = 2}, [2809] = {.lex_state = 9, .external_lex_state = 2}, [2810] = {.lex_state = 9, .external_lex_state = 2}, [2811] = {.lex_state = 9, .external_lex_state = 2}, [2812] = {.lex_state = 9, .external_lex_state = 2}, [2813] = {.lex_state = 9, .external_lex_state = 2}, [2814] = {.lex_state = 9, .external_lex_state = 2}, [2815] = {.lex_state = 172, .external_lex_state = 2}, [2816] = {.lex_state = 9, .external_lex_state = 2}, [2817] = {.lex_state = 9, .external_lex_state = 2}, [2818] = {.lex_state = 9, .external_lex_state = 2}, [2819] = {.lex_state = 9, .external_lex_state = 2}, [2820] = {.lex_state = 9, .external_lex_state = 2}, [2821] = {.lex_state = 9, .external_lex_state = 2}, [2822] = {.lex_state = 9, .external_lex_state = 2}, [2823] = {.lex_state = 9, .external_lex_state = 2}, [2824] = {.lex_state = 9, .external_lex_state = 2}, [2825] = {.lex_state = 9, .external_lex_state = 2}, [2826] = {.lex_state = 9, .external_lex_state = 2}, [2827] = {.lex_state = 9, .external_lex_state = 2}, [2828] = {.lex_state = 9, .external_lex_state = 2}, [2829] = {.lex_state = 9, .external_lex_state = 2}, [2830] = {.lex_state = 9, .external_lex_state = 2}, [2831] = {.lex_state = 9, .external_lex_state = 2}, [2832] = {.lex_state = 9, .external_lex_state = 2}, [2833] = {.lex_state = 9, .external_lex_state = 2}, [2834] = {.lex_state = 9, .external_lex_state = 2}, [2835] = {.lex_state = 9, .external_lex_state = 2}, [2836] = {.lex_state = 9, .external_lex_state = 2}, [2837] = {.lex_state = 9, .external_lex_state = 2}, [2838] = {.lex_state = 9, .external_lex_state = 2}, [2839] = {.lex_state = 9, .external_lex_state = 2}, [2840] = {.lex_state = 9, .external_lex_state = 2}, [2841] = {.lex_state = 9, .external_lex_state = 2}, [2842] = {.lex_state = 9, .external_lex_state = 2}, [2843] = {.lex_state = 9, .external_lex_state = 2}, [2844] = {.lex_state = 9, .external_lex_state = 2}, [2845] = {.lex_state = 9, .external_lex_state = 2}, [2846] = {.lex_state = 9, .external_lex_state = 2}, [2847] = {.lex_state = 9, .external_lex_state = 2}, [2848] = {.lex_state = 9, .external_lex_state = 2}, [2849] = {.lex_state = 9, .external_lex_state = 2}, [2850] = {.lex_state = 9, .external_lex_state = 2}, [2851] = {.lex_state = 9, .external_lex_state = 2}, [2852] = {.lex_state = 9, .external_lex_state = 2}, [2853] = {.lex_state = 9, .external_lex_state = 2}, [2854] = {.lex_state = 9, .external_lex_state = 2}, [2855] = {.lex_state = 9, .external_lex_state = 2}, [2856] = {.lex_state = 9, .external_lex_state = 2}, [2857] = {.lex_state = 9, .external_lex_state = 2}, [2858] = {.lex_state = 9, .external_lex_state = 2}, [2859] = {.lex_state = 9, .external_lex_state = 2}, [2860] = {.lex_state = 9, .external_lex_state = 2}, [2861] = {.lex_state = 9, .external_lex_state = 2}, [2862] = {.lex_state = 9, .external_lex_state = 2}, [2863] = {.lex_state = 172, .external_lex_state = 2}, [2864] = {.lex_state = 9, .external_lex_state = 2}, [2865] = {.lex_state = 9, .external_lex_state = 2}, [2866] = {.lex_state = 9, .external_lex_state = 2}, [2867] = {.lex_state = 9, .external_lex_state = 2}, [2868] = {.lex_state = 9, .external_lex_state = 2}, [2869] = {.lex_state = 9, .external_lex_state = 2}, [2870] = {.lex_state = 9, .external_lex_state = 2}, [2871] = {.lex_state = 9, .external_lex_state = 2}, [2872] = {.lex_state = 9, .external_lex_state = 2}, [2873] = {.lex_state = 9, .external_lex_state = 2}, [2874] = {.lex_state = 9, .external_lex_state = 2}, [2875] = {.lex_state = 9, .external_lex_state = 2}, [2876] = {.lex_state = 9, .external_lex_state = 2}, [2877] = {.lex_state = 9, .external_lex_state = 2}, [2878] = {.lex_state = 9, .external_lex_state = 2}, [2879] = {.lex_state = 9, .external_lex_state = 2}, [2880] = {.lex_state = 9, .external_lex_state = 2}, [2881] = {.lex_state = 9, .external_lex_state = 2}, [2882] = {.lex_state = 9, .external_lex_state = 2}, [2883] = {.lex_state = 9, .external_lex_state = 2}, [2884] = {.lex_state = 9, .external_lex_state = 2}, [2885] = {.lex_state = 9, .external_lex_state = 2}, [2886] = {.lex_state = 9, .external_lex_state = 2}, [2887] = {.lex_state = 9, .external_lex_state = 2}, [2888] = {.lex_state = 9, .external_lex_state = 2}, [2889] = {.lex_state = 9, .external_lex_state = 2}, [2890] = {.lex_state = 9, .external_lex_state = 2}, [2891] = {.lex_state = 9, .external_lex_state = 2}, [2892] = {.lex_state = 9, .external_lex_state = 2}, [2893] = {.lex_state = 9, .external_lex_state = 2}, [2894] = {.lex_state = 9, .external_lex_state = 2}, [2895] = {.lex_state = 9, .external_lex_state = 2}, [2896] = {.lex_state = 9, .external_lex_state = 2}, [2897] = {.lex_state = 9, .external_lex_state = 2}, [2898] = {.lex_state = 9, .external_lex_state = 2}, [2899] = {.lex_state = 9, .external_lex_state = 2}, [2900] = {.lex_state = 9, .external_lex_state = 2}, [2901] = {.lex_state = 9, .external_lex_state = 2}, [2902] = {.lex_state = 9, .external_lex_state = 2}, [2903] = {.lex_state = 9, .external_lex_state = 2}, [2904] = {.lex_state = 9, .external_lex_state = 2}, [2905] = {.lex_state = 9, .external_lex_state = 2}, [2906] = {.lex_state = 9, .external_lex_state = 2}, [2907] = {.lex_state = 9, .external_lex_state = 2}, [2908] = {.lex_state = 9, .external_lex_state = 2}, [2909] = {.lex_state = 9, .external_lex_state = 2}, [2910] = {.lex_state = 9, .external_lex_state = 2}, [2911] = {.lex_state = 9, .external_lex_state = 2}, [2912] = {.lex_state = 9, .external_lex_state = 2}, [2913] = {.lex_state = 9, .external_lex_state = 2}, [2914] = {.lex_state = 9, .external_lex_state = 2}, [2915] = {.lex_state = 9, .external_lex_state = 2}, [2916] = {.lex_state = 9, .external_lex_state = 2}, [2917] = {.lex_state = 9, .external_lex_state = 2}, [2918] = {.lex_state = 9, .external_lex_state = 2}, [2919] = {.lex_state = 9, .external_lex_state = 2}, [2920] = {.lex_state = 9, .external_lex_state = 2}, [2921] = {.lex_state = 172, .external_lex_state = 2}, [2922] = {.lex_state = 9, .external_lex_state = 2}, [2923] = {.lex_state = 9, .external_lex_state = 2}, [2924] = {.lex_state = 9, .external_lex_state = 2}, [2925] = {.lex_state = 9, .external_lex_state = 2}, [2926] = {.lex_state = 9, .external_lex_state = 2}, [2927] = {.lex_state = 9, .external_lex_state = 2}, [2928] = {.lex_state = 9, .external_lex_state = 2}, [2929] = {.lex_state = 9, .external_lex_state = 2}, [2930] = {.lex_state = 9, .external_lex_state = 2}, [2931] = {.lex_state = 9, .external_lex_state = 2}, [2932] = {.lex_state = 9, .external_lex_state = 2}, [2933] = {.lex_state = 9, .external_lex_state = 2}, [2934] = {.lex_state = 172, .external_lex_state = 2}, [2935] = {.lex_state = 9, .external_lex_state = 2}, [2936] = {.lex_state = 9, .external_lex_state = 2}, [2937] = {.lex_state = 9, .external_lex_state = 2}, [2938] = {.lex_state = 9, .external_lex_state = 2}, [2939] = {.lex_state = 9, .external_lex_state = 2}, [2940] = {.lex_state = 9, .external_lex_state = 2}, [2941] = {.lex_state = 9, .external_lex_state = 2}, [2942] = {.lex_state = 172, .external_lex_state = 2}, [2943] = {.lex_state = 9, .external_lex_state = 2}, [2944] = {.lex_state = 9, .external_lex_state = 2}, [2945] = {.lex_state = 9, .external_lex_state = 2}, [2946] = {.lex_state = 9, .external_lex_state = 2}, [2947] = {.lex_state = 9, .external_lex_state = 2}, [2948] = {.lex_state = 9, .external_lex_state = 2}, [2949] = {.lex_state = 9, .external_lex_state = 2}, [2950] = {.lex_state = 9, .external_lex_state = 2}, [2951] = {.lex_state = 9, .external_lex_state = 2}, [2952] = {.lex_state = 9, .external_lex_state = 2}, [2953] = {.lex_state = 9, .external_lex_state = 2}, [2954] = {.lex_state = 9, .external_lex_state = 2}, [2955] = {.lex_state = 9, .external_lex_state = 2}, [2956] = {.lex_state = 9, .external_lex_state = 2}, [2957] = {.lex_state = 9, .external_lex_state = 2}, [2958] = {.lex_state = 9, .external_lex_state = 2}, [2959] = {.lex_state = 9, .external_lex_state = 2}, [2960] = {.lex_state = 9, .external_lex_state = 2}, [2961] = {.lex_state = 9, .external_lex_state = 2}, [2962] = {.lex_state = 172, .external_lex_state = 2}, [2963] = {.lex_state = 9, .external_lex_state = 2}, [2964] = {.lex_state = 9, .external_lex_state = 2}, [2965] = {.lex_state = 9, .external_lex_state = 2}, [2966] = {.lex_state = 9, .external_lex_state = 2}, [2967] = {.lex_state = 9, .external_lex_state = 2}, [2968] = {.lex_state = 9, .external_lex_state = 2}, [2969] = {.lex_state = 9, .external_lex_state = 2}, [2970] = {.lex_state = 9, .external_lex_state = 2}, [2971] = {.lex_state = 9, .external_lex_state = 2}, [2972] = {.lex_state = 9, .external_lex_state = 2}, [2973] = {.lex_state = 9, .external_lex_state = 2}, [2974] = {.lex_state = 9, .external_lex_state = 2}, [2975] = {.lex_state = 9, .external_lex_state = 2}, [2976] = {.lex_state = 9, .external_lex_state = 2}, [2977] = {.lex_state = 9, .external_lex_state = 2}, [2978] = {.lex_state = 9, .external_lex_state = 2}, [2979] = {.lex_state = 9, .external_lex_state = 2}, [2980] = {.lex_state = 9, .external_lex_state = 2}, [2981] = {.lex_state = 9, .external_lex_state = 2}, [2982] = {.lex_state = 9, .external_lex_state = 2}, [2983] = {.lex_state = 9, .external_lex_state = 2}, [2984] = {.lex_state = 9, .external_lex_state = 2}, [2985] = {.lex_state = 9, .external_lex_state = 2}, [2986] = {.lex_state = 9, .external_lex_state = 2}, [2987] = {.lex_state = 9, .external_lex_state = 2}, [2988] = {.lex_state = 9, .external_lex_state = 2}, [2989] = {.lex_state = 9, .external_lex_state = 2}, [2990] = {.lex_state = 9, .external_lex_state = 2}, [2991] = {.lex_state = 9, .external_lex_state = 2}, [2992] = {.lex_state = 9, .external_lex_state = 2}, [2993] = {.lex_state = 9, .external_lex_state = 2}, [2994] = {.lex_state = 9, .external_lex_state = 2}, [2995] = {.lex_state = 9, .external_lex_state = 2}, [2996] = {.lex_state = 9, .external_lex_state = 2}, [2997] = {.lex_state = 9, .external_lex_state = 2}, [2998] = {.lex_state = 9, .external_lex_state = 2}, [2999] = {.lex_state = 9, .external_lex_state = 2}, [3000] = {.lex_state = 9, .external_lex_state = 2}, [3001] = {.lex_state = 9, .external_lex_state = 2}, [3002] = {.lex_state = 9, .external_lex_state = 2}, [3003] = {.lex_state = 9, .external_lex_state = 2}, [3004] = {.lex_state = 9, .external_lex_state = 2}, [3005] = {.lex_state = 9, .external_lex_state = 2}, [3006] = {.lex_state = 9, .external_lex_state = 2}, [3007] = {.lex_state = 9, .external_lex_state = 2}, [3008] = {.lex_state = 9, .external_lex_state = 2}, [3009] = {.lex_state = 9, .external_lex_state = 2}, [3010] = {.lex_state = 9, .external_lex_state = 2}, [3011] = {.lex_state = 9, .external_lex_state = 2}, [3012] = {.lex_state = 9, .external_lex_state = 2}, [3013] = {.lex_state = 9, .external_lex_state = 2}, [3014] = {.lex_state = 9, .external_lex_state = 2}, [3015] = {.lex_state = 9, .external_lex_state = 2}, [3016] = {.lex_state = 15, .external_lex_state = 2}, [3017] = {.lex_state = 9, .external_lex_state = 2}, [3018] = {.lex_state = 9, .external_lex_state = 2}, [3019] = {.lex_state = 9, .external_lex_state = 2}, [3020] = {.lex_state = 9, .external_lex_state = 2}, [3021] = {.lex_state = 9, .external_lex_state = 2}, [3022] = {.lex_state = 15, .external_lex_state = 2}, [3023] = {.lex_state = 9, .external_lex_state = 2}, [3024] = {.lex_state = 9, .external_lex_state = 2}, [3025] = {.lex_state = 15, .external_lex_state = 2}, [3026] = {.lex_state = 9, .external_lex_state = 2}, [3027] = {.lex_state = 9, .external_lex_state = 2}, [3028] = {.lex_state = 9, .external_lex_state = 2}, [3029] = {.lex_state = 9, .external_lex_state = 2}, [3030] = {.lex_state = 9, .external_lex_state = 2}, [3031] = {.lex_state = 9, .external_lex_state = 2}, [3032] = {.lex_state = 9, .external_lex_state = 2}, [3033] = {.lex_state = 15, .external_lex_state = 2}, [3034] = {.lex_state = 15, .external_lex_state = 2}, [3035] = {.lex_state = 9, .external_lex_state = 2}, [3036] = {.lex_state = 15, .external_lex_state = 2}, [3037] = {.lex_state = 15, .external_lex_state = 2}, [3038] = {.lex_state = 15, .external_lex_state = 2}, [3039] = {.lex_state = 15, .external_lex_state = 2}, [3040] = {.lex_state = 15, .external_lex_state = 2}, [3041] = {.lex_state = 9, .external_lex_state = 2}, [3042] = {.lex_state = 15, .external_lex_state = 2}, [3043] = {.lex_state = 15, .external_lex_state = 2}, [3044] = {.lex_state = 9, .external_lex_state = 2}, [3045] = {.lex_state = 15, .external_lex_state = 2}, [3046] = {.lex_state = 9, .external_lex_state = 2}, [3047] = {.lex_state = 9, .external_lex_state = 2}, [3048] = {.lex_state = 15, .external_lex_state = 2}, [3049] = {.lex_state = 15, .external_lex_state = 2}, [3050] = {.lex_state = 9, .external_lex_state = 2}, [3051] = {.lex_state = 9, .external_lex_state = 2}, [3052] = {.lex_state = 15, .external_lex_state = 2}, [3053] = {.lex_state = 9, .external_lex_state = 2}, [3054] = {.lex_state = 9, .external_lex_state = 2}, [3055] = {.lex_state = 9, .external_lex_state = 2}, [3056] = {.lex_state = 15, .external_lex_state = 2}, [3057] = {.lex_state = 9, .external_lex_state = 2}, [3058] = {.lex_state = 9, .external_lex_state = 2}, [3059] = {.lex_state = 9, .external_lex_state = 2}, [3060] = {.lex_state = 9, .external_lex_state = 2}, [3061] = {.lex_state = 9, .external_lex_state = 2}, [3062] = {.lex_state = 9, .external_lex_state = 2}, [3063] = {.lex_state = 9, .external_lex_state = 2}, [3064] = {.lex_state = 9, .external_lex_state = 2}, [3065] = {.lex_state = 7, .external_lex_state = 3}, [3066] = {.lex_state = 7, .external_lex_state = 3}, [3067] = {.lex_state = 9, .external_lex_state = 2}, [3068] = {.lex_state = 9, .external_lex_state = 2}, [3069] = {.lex_state = 9, .external_lex_state = 2}, [3070] = {.lex_state = 9, .external_lex_state = 2}, [3071] = {.lex_state = 9, .external_lex_state = 2}, [3072] = {.lex_state = 7, .external_lex_state = 3}, [3073] = {.lex_state = 9, .external_lex_state = 2}, [3074] = {.lex_state = 7, .external_lex_state = 3}, [3075] = {.lex_state = 7, .external_lex_state = 3}, [3076] = {.lex_state = 9, .external_lex_state = 2}, [3077] = {.lex_state = 9, .external_lex_state = 2}, [3078] = {.lex_state = 9, .external_lex_state = 2}, [3079] = {.lex_state = 7, .external_lex_state = 3}, [3080] = {.lex_state = 7, .external_lex_state = 3}, [3081] = {.lex_state = 9, .external_lex_state = 2}, [3082] = {.lex_state = 9, .external_lex_state = 2}, [3083] = {.lex_state = 7, .external_lex_state = 3}, [3084] = {.lex_state = 9, .external_lex_state = 2}, [3085] = {.lex_state = 9, .external_lex_state = 2}, [3086] = {.lex_state = 9, .external_lex_state = 2}, [3087] = {.lex_state = 9, .external_lex_state = 2}, [3088] = {.lex_state = 7, .external_lex_state = 3}, [3089] = {.lex_state = 7, .external_lex_state = 3}, [3090] = {.lex_state = 7, .external_lex_state = 3}, [3091] = {.lex_state = 7, .external_lex_state = 3}, [3092] = {.lex_state = 9, .external_lex_state = 2}, [3093] = {.lex_state = 9, .external_lex_state = 2}, [3094] = {.lex_state = 9, .external_lex_state = 2}, [3095] = {.lex_state = 7, .external_lex_state = 3}, [3096] = {.lex_state = 9, .external_lex_state = 2}, [3097] = {.lex_state = 9, .external_lex_state = 2}, [3098] = {.lex_state = 9, .external_lex_state = 2}, [3099] = {.lex_state = 9, .external_lex_state = 2}, [3100] = {.lex_state = 8, .external_lex_state = 2}, [3101] = {.lex_state = 8, .external_lex_state = 2}, [3102] = {.lex_state = 8, .external_lex_state = 2}, [3103] = {.lex_state = 8, .external_lex_state = 2}, [3104] = {.lex_state = 8, .external_lex_state = 2}, [3105] = {.lex_state = 8, .external_lex_state = 2}, [3106] = {.lex_state = 8, .external_lex_state = 2}, [3107] = {.lex_state = 8, .external_lex_state = 2}, [3108] = {.lex_state = 9, .external_lex_state = 2}, [3109] = {.lex_state = 9, .external_lex_state = 2}, [3110] = {.lex_state = 9, .external_lex_state = 2}, [3111] = {.lex_state = 8, .external_lex_state = 2}, [3112] = {.lex_state = 9, .external_lex_state = 2}, [3113] = {.lex_state = 8, .external_lex_state = 2}, [3114] = {.lex_state = 9, .external_lex_state = 2}, [3115] = {.lex_state = 9, .external_lex_state = 2}, [3116] = {.lex_state = 9, .external_lex_state = 2}, [3117] = {.lex_state = 8, .external_lex_state = 2}, [3118] = {.lex_state = 8, .external_lex_state = 2}, [3119] = {.lex_state = 8, .external_lex_state = 2}, [3120] = {.lex_state = 9, .external_lex_state = 2}, [3121] = {.lex_state = 8, .external_lex_state = 2}, [3122] = {.lex_state = 8, .external_lex_state = 2}, [3123] = {.lex_state = 8, .external_lex_state = 2}, [3124] = {.lex_state = 8, .external_lex_state = 2}, [3125] = {.lex_state = 8, .external_lex_state = 2}, [3126] = {.lex_state = 8, .external_lex_state = 2}, [3127] = {.lex_state = 9, .external_lex_state = 2}, [3128] = {.lex_state = 9, .external_lex_state = 2}, [3129] = {.lex_state = 8, .external_lex_state = 2}, [3130] = {.lex_state = 9, .external_lex_state = 2}, [3131] = {.lex_state = 8, .external_lex_state = 2}, [3132] = {.lex_state = 8, .external_lex_state = 2}, [3133] = {.lex_state = 8, .external_lex_state = 2}, [3134] = {.lex_state = 9, .external_lex_state = 2}, [3135] = {.lex_state = 9, .external_lex_state = 2}, [3136] = {.lex_state = 8, .external_lex_state = 2}, [3137] = {.lex_state = 8, .external_lex_state = 2}, [3138] = {.lex_state = 9, .external_lex_state = 2}, [3139] = {.lex_state = 15, .external_lex_state = 2}, [3140] = {.lex_state = 15, .external_lex_state = 2}, [3141] = {.lex_state = 15, .external_lex_state = 2}, [3142] = {.lex_state = 15, .external_lex_state = 2}, [3143] = {.lex_state = 15, .external_lex_state = 2}, [3144] = {.lex_state = 15, .external_lex_state = 2}, [3145] = {.lex_state = 15, .external_lex_state = 2}, [3146] = {.lex_state = 15, .external_lex_state = 2}, [3147] = {.lex_state = 15, .external_lex_state = 2}, [3148] = {.lex_state = 15, .external_lex_state = 2}, [3149] = {.lex_state = 15, .external_lex_state = 2}, [3150] = {.lex_state = 15, .external_lex_state = 2}, [3151] = {.lex_state = 15, .external_lex_state = 2}, [3152] = {.lex_state = 15, .external_lex_state = 2}, [3153] = {.lex_state = 15, .external_lex_state = 2}, [3154] = {.lex_state = 15, .external_lex_state = 2}, [3155] = {.lex_state = 15, .external_lex_state = 2}, [3156] = {.lex_state = 15, .external_lex_state = 2}, [3157] = {.lex_state = 9, .external_lex_state = 2}, [3158] = {.lex_state = 15, .external_lex_state = 2}, [3159] = {.lex_state = 15, .external_lex_state = 2}, [3160] = {.lex_state = 15, .external_lex_state = 2}, [3161] = {.lex_state = 15, .external_lex_state = 2}, [3162] = {.lex_state = 15, .external_lex_state = 2}, [3163] = {.lex_state = 15, .external_lex_state = 2}, [3164] = {.lex_state = 15, .external_lex_state = 2}, [3165] = {.lex_state = 15, .external_lex_state = 2}, [3166] = {.lex_state = 15, .external_lex_state = 2}, [3167] = {.lex_state = 15, .external_lex_state = 2}, [3168] = {.lex_state = 9, .external_lex_state = 2}, [3169] = {.lex_state = 9, .external_lex_state = 2}, [3170] = {.lex_state = 9, .external_lex_state = 2}, [3171] = {.lex_state = 15, .external_lex_state = 2}, [3172] = {.lex_state = 9, .external_lex_state = 2}, [3173] = {.lex_state = 9, .external_lex_state = 2}, [3174] = {.lex_state = 9, .external_lex_state = 2}, [3175] = {.lex_state = 9, .external_lex_state = 2}, [3176] = {.lex_state = 9, .external_lex_state = 2}, [3177] = {.lex_state = 9, .external_lex_state = 2}, [3178] = {.lex_state = 15, .external_lex_state = 2}, [3179] = {.lex_state = 9, .external_lex_state = 2}, [3180] = {.lex_state = 9, .external_lex_state = 2}, [3181] = {.lex_state = 9, .external_lex_state = 2}, [3182] = {.lex_state = 9, .external_lex_state = 2}, [3183] = {.lex_state = 9, .external_lex_state = 2}, [3184] = {.lex_state = 9, .external_lex_state = 2}, [3185] = {.lex_state = 15, .external_lex_state = 2}, [3186] = {.lex_state = 9, .external_lex_state = 2}, [3187] = {.lex_state = 9, .external_lex_state = 2}, [3188] = {.lex_state = 15, .external_lex_state = 2}, [3189] = {.lex_state = 9, .external_lex_state = 2}, [3190] = {.lex_state = 9, .external_lex_state = 2}, [3191] = {.lex_state = 15, .external_lex_state = 2}, [3192] = {.lex_state = 9, .external_lex_state = 2}, [3193] = {.lex_state = 9, .external_lex_state = 2}, [3194] = {.lex_state = 9, .external_lex_state = 2}, [3195] = {.lex_state = 9, .external_lex_state = 2}, [3196] = {.lex_state = 9, .external_lex_state = 2}, [3197] = {.lex_state = 9, .external_lex_state = 2}, [3198] = {.lex_state = 9, .external_lex_state = 2}, [3199] = {.lex_state = 9, .external_lex_state = 2}, [3200] = {.lex_state = 15, .external_lex_state = 2}, [3201] = {.lex_state = 15, .external_lex_state = 2}, [3202] = {.lex_state = 9, .external_lex_state = 2}, [3203] = {.lex_state = 9, .external_lex_state = 2}, [3204] = {.lex_state = 9, .external_lex_state = 2}, [3205] = {.lex_state = 13, .external_lex_state = 5}, [3206] = {.lex_state = 13, .external_lex_state = 5}, [3207] = {.lex_state = 13, .external_lex_state = 5}, [3208] = {.lex_state = 9, .external_lex_state = 2}, [3209] = {.lex_state = 13, .external_lex_state = 5}, [3210] = {.lex_state = 9, .external_lex_state = 2}, [3211] = {.lex_state = 17, .external_lex_state = 5}, [3212] = {.lex_state = 17, .external_lex_state = 5}, [3213] = {.lex_state = 9, .external_lex_state = 2}, [3214] = {.lex_state = 9, .external_lex_state = 2}, [3215] = {.lex_state = 9, .external_lex_state = 2}, [3216] = {.lex_state = 17, .external_lex_state = 5}, [3217] = {.lex_state = 9, .external_lex_state = 2}, [3218] = {.lex_state = 9, .external_lex_state = 2}, [3219] = {.lex_state = 9, .external_lex_state = 2}, [3220] = {.lex_state = 9, .external_lex_state = 2}, [3221] = {.lex_state = 9, .external_lex_state = 2}, [3222] = {.lex_state = 9, .external_lex_state = 2}, [3223] = {.lex_state = 9, .external_lex_state = 2}, [3224] = {.lex_state = 9, .external_lex_state = 2}, [3225] = {.lex_state = 9, .external_lex_state = 2}, [3226] = {.lex_state = 9, .external_lex_state = 2}, [3227] = {.lex_state = 9, .external_lex_state = 2}, [3228] = {.lex_state = 15, .external_lex_state = 5}, [3229] = {.lex_state = 9, .external_lex_state = 2}, [3230] = {.lex_state = 9, .external_lex_state = 2}, [3231] = {.lex_state = 15, .external_lex_state = 5}, [3232] = {.lex_state = 15, .external_lex_state = 5}, [3233] = {.lex_state = 9, .external_lex_state = 2}, [3234] = {.lex_state = 9, .external_lex_state = 2}, [3235] = {.lex_state = 9, .external_lex_state = 2}, [3236] = {.lex_state = 9, .external_lex_state = 2}, [3237] = {.lex_state = 17, .external_lex_state = 5}, [3238] = {.lex_state = 9, .external_lex_state = 2}, [3239] = {.lex_state = 9, .external_lex_state = 2}, [3240] = {.lex_state = 13, .external_lex_state = 5}, [3241] = {.lex_state = 13, .external_lex_state = 5}, [3242] = {.lex_state = 13, .external_lex_state = 5}, [3243] = {.lex_state = 13, .external_lex_state = 5}, [3244] = {.lex_state = 13, .external_lex_state = 5}, [3245] = {.lex_state = 13, .external_lex_state = 5}, [3246] = {.lex_state = 13, .external_lex_state = 5}, [3247] = {.lex_state = 13, .external_lex_state = 5}, [3248] = {.lex_state = 13, .external_lex_state = 5}, [3249] = {.lex_state = 15, .external_lex_state = 5}, [3250] = {.lex_state = 13, .external_lex_state = 5}, [3251] = {.lex_state = 13, .external_lex_state = 5}, [3252] = {.lex_state = 13, .external_lex_state = 5}, [3253] = {.lex_state = 13, .external_lex_state = 5}, [3254] = {.lex_state = 13, .external_lex_state = 5}, [3255] = {.lex_state = 13, .external_lex_state = 5}, [3256] = {.lex_state = 13, .external_lex_state = 5}, [3257] = {.lex_state = 13, .external_lex_state = 5}, [3258] = {.lex_state = 13, .external_lex_state = 5}, [3259] = {.lex_state = 13, .external_lex_state = 5}, [3260] = {.lex_state = 13, .external_lex_state = 5}, [3261] = {.lex_state = 13, .external_lex_state = 5}, [3262] = {.lex_state = 13, .external_lex_state = 5}, [3263] = {.lex_state = 13, .external_lex_state = 5}, [3264] = {.lex_state = 13, .external_lex_state = 5}, [3265] = {.lex_state = 13, .external_lex_state = 5}, [3266] = {.lex_state = 13, .external_lex_state = 5}, [3267] = {.lex_state = 13, .external_lex_state = 5}, [3268] = {.lex_state = 13, .external_lex_state = 5}, [3269] = {.lex_state = 13, .external_lex_state = 5}, [3270] = {.lex_state = 13, .external_lex_state = 5}, [3271] = {.lex_state = 13, .external_lex_state = 5}, [3272] = {.lex_state = 13, .external_lex_state = 5}, [3273] = {.lex_state = 9, .external_lex_state = 2}, [3274] = {.lex_state = 9, .external_lex_state = 2}, [3275] = {.lex_state = 9, .external_lex_state = 2}, [3276] = {.lex_state = 9, .external_lex_state = 2}, [3277] = {.lex_state = 17, .external_lex_state = 5}, [3278] = {.lex_state = 9, .external_lex_state = 2}, [3279] = {.lex_state = 9, .external_lex_state = 2}, [3280] = {.lex_state = 9, .external_lex_state = 2}, [3281] = {.lex_state = 9, .external_lex_state = 2}, [3282] = {.lex_state = 9, .external_lex_state = 2}, [3283] = {.lex_state = 9, .external_lex_state = 2}, [3284] = {.lex_state = 9, .external_lex_state = 2}, [3285] = {.lex_state = 9, .external_lex_state = 2}, [3286] = {.lex_state = 9, .external_lex_state = 2}, [3287] = {.lex_state = 9, .external_lex_state = 2}, [3288] = {.lex_state = 9, .external_lex_state = 2}, [3289] = {.lex_state = 9, .external_lex_state = 2}, [3290] = {.lex_state = 9, .external_lex_state = 2}, [3291] = {.lex_state = 9, .external_lex_state = 2}, [3292] = {.lex_state = 9, .external_lex_state = 2}, [3293] = {.lex_state = 9, .external_lex_state = 2}, [3294] = {.lex_state = 9, .external_lex_state = 2}, [3295] = {.lex_state = 9, .external_lex_state = 2}, [3296] = {.lex_state = 9, .external_lex_state = 2}, [3297] = {.lex_state = 9, .external_lex_state = 2}, [3298] = {.lex_state = 9, .external_lex_state = 2}, [3299] = {.lex_state = 9, .external_lex_state = 2}, [3300] = {.lex_state = 9, .external_lex_state = 2}, [3301] = {.lex_state = 9, .external_lex_state = 2}, [3302] = {.lex_state = 9, .external_lex_state = 2}, [3303] = {.lex_state = 9, .external_lex_state = 2}, [3304] = {.lex_state = 17, .external_lex_state = 5}, [3305] = {.lex_state = 17, .external_lex_state = 5}, [3306] = {.lex_state = 9, .external_lex_state = 2}, [3307] = {.lex_state = 9, .external_lex_state = 2}, [3308] = {.lex_state = 17, .external_lex_state = 5}, [3309] = {.lex_state = 9, .external_lex_state = 2}, [3310] = {.lex_state = 17, .external_lex_state = 5}, [3311] = {.lex_state = 17, .external_lex_state = 5}, [3312] = {.lex_state = 17, .external_lex_state = 5}, [3313] = {.lex_state = 9, .external_lex_state = 2}, [3314] = {.lex_state = 9, .external_lex_state = 2}, [3315] = {.lex_state = 13, .external_lex_state = 5}, [3316] = {.lex_state = 13, .external_lex_state = 5}, [3317] = {.lex_state = 9, .external_lex_state = 2}, [3318] = {.lex_state = 13, .external_lex_state = 5}, [3319] = {.lex_state = 9, .external_lex_state = 2}, [3320] = {.lex_state = 17, .external_lex_state = 5}, [3321] = {.lex_state = 17, .external_lex_state = 5}, [3322] = {.lex_state = 9, .external_lex_state = 2}, [3323] = {.lex_state = 17, .external_lex_state = 5}, [3324] = {.lex_state = 17, .external_lex_state = 5}, [3325] = {.lex_state = 9, .external_lex_state = 2}, [3326] = {.lex_state = 17, .external_lex_state = 5}, [3327] = {.lex_state = 17, .external_lex_state = 5}, [3328] = {.lex_state = 17, .external_lex_state = 5}, [3329] = {.lex_state = 9, .external_lex_state = 2}, [3330] = {.lex_state = 17, .external_lex_state = 5}, [3331] = {.lex_state = 17, .external_lex_state = 5}, [3332] = {.lex_state = 9, .external_lex_state = 2}, [3333] = {.lex_state = 9, .external_lex_state = 2}, [3334] = {.lex_state = 17, .external_lex_state = 5}, [3335] = {.lex_state = 17, .external_lex_state = 5}, [3336] = {.lex_state = 9, .external_lex_state = 2}, [3337] = {.lex_state = 17, .external_lex_state = 5}, [3338] = {.lex_state = 17, .external_lex_state = 5}, [3339] = {.lex_state = 17, .external_lex_state = 5}, [3340] = {.lex_state = 9, .external_lex_state = 2}, [3341] = {.lex_state = 17, .external_lex_state = 5}, [3342] = {.lex_state = 17, .external_lex_state = 5}, [3343] = {.lex_state = 17, .external_lex_state = 5}, [3344] = {.lex_state = 9, .external_lex_state = 2}, [3345] = {.lex_state = 9, .external_lex_state = 2}, [3346] = {.lex_state = 17, .external_lex_state = 5}, [3347] = {.lex_state = 9, .external_lex_state = 2}, [3348] = {.lex_state = 9, .external_lex_state = 2}, [3349] = {.lex_state = 9, .external_lex_state = 2}, [3350] = {.lex_state = 17, .external_lex_state = 5}, [3351] = {.lex_state = 17, .external_lex_state = 5}, [3352] = {.lex_state = 9, .external_lex_state = 2}, [3353] = {.lex_state = 17, .external_lex_state = 5}, [3354] = {.lex_state = 9, .external_lex_state = 2}, [3355] = {.lex_state = 17, .external_lex_state = 5}, [3356] = {.lex_state = 15, .external_lex_state = 5}, [3357] = {.lex_state = 9, .external_lex_state = 2}, [3358] = {.lex_state = 17, .external_lex_state = 5}, [3359] = {.lex_state = 9, .external_lex_state = 2}, [3360] = {.lex_state = 9, .external_lex_state = 2}, [3361] = {.lex_state = 9, .external_lex_state = 2}, [3362] = {.lex_state = 17, .external_lex_state = 5}, [3363] = {.lex_state = 17, .external_lex_state = 5}, [3364] = {.lex_state = 15, .external_lex_state = 5}, [3365] = {.lex_state = 9, .external_lex_state = 2}, [3366] = {.lex_state = 15, .external_lex_state = 5}, [3367] = {.lex_state = 15, .external_lex_state = 5}, [3368] = {.lex_state = 15, .external_lex_state = 5}, [3369] = {.lex_state = 15, .external_lex_state = 5}, [3370] = {.lex_state = 15, .external_lex_state = 5}, [3371] = {.lex_state = 15, .external_lex_state = 5}, [3372] = {.lex_state = 15, .external_lex_state = 5}, [3373] = {.lex_state = 15, .external_lex_state = 5}, [3374] = {.lex_state = 15, .external_lex_state = 5}, [3375] = {.lex_state = 15, .external_lex_state = 5}, [3376] = {.lex_state = 15, .external_lex_state = 5}, [3377] = {.lex_state = 15, .external_lex_state = 5}, [3378] = {.lex_state = 15, .external_lex_state = 5}, [3379] = {.lex_state = 15, .external_lex_state = 5}, [3380] = {.lex_state = 15, .external_lex_state = 5}, [3381] = {.lex_state = 15, .external_lex_state = 5}, [3382] = {.lex_state = 15, .external_lex_state = 5}, [3383] = {.lex_state = 15, .external_lex_state = 5}, [3384] = {.lex_state = 15, .external_lex_state = 5}, [3385] = {.lex_state = 13, .external_lex_state = 5}, [3386] = {.lex_state = 15, .external_lex_state = 5}, [3387] = {.lex_state = 15, .external_lex_state = 5}, [3388] = {.lex_state = 15, .external_lex_state = 5}, [3389] = {.lex_state = 15, .external_lex_state = 5}, [3390] = {.lex_state = 15, .external_lex_state = 5}, [3391] = {.lex_state = 15, .external_lex_state = 5}, [3392] = {.lex_state = 15, .external_lex_state = 5}, [3393] = {.lex_state = 15, .external_lex_state = 5}, [3394] = {.lex_state = 15, .external_lex_state = 5}, [3395] = {.lex_state = 15, .external_lex_state = 5}, [3396] = {.lex_state = 15, .external_lex_state = 5}, [3397] = {.lex_state = 9, .external_lex_state = 2}, [3398] = {.lex_state = 9, .external_lex_state = 2}, [3399] = {.lex_state = 9, .external_lex_state = 2}, [3400] = {.lex_state = 9, .external_lex_state = 2}, [3401] = {.lex_state = 9, .external_lex_state = 2}, [3402] = {.lex_state = 9, .external_lex_state = 2}, [3403] = {.lex_state = 9, .external_lex_state = 2}, [3404] = {.lex_state = 9, .external_lex_state = 2}, [3405] = {.lex_state = 9, .external_lex_state = 2}, [3406] = {.lex_state = 9, .external_lex_state = 2}, [3407] = {.lex_state = 9, .external_lex_state = 2}, [3408] = {.lex_state = 9, .external_lex_state = 2}, [3409] = {.lex_state = 17, .external_lex_state = 5}, [3410] = {.lex_state = 9, .external_lex_state = 2}, [3411] = {.lex_state = 9, .external_lex_state = 2}, [3412] = {.lex_state = 9, .external_lex_state = 2}, [3413] = {.lex_state = 9, .external_lex_state = 2}, [3414] = {.lex_state = 9, .external_lex_state = 2}, [3415] = {.lex_state = 9, .external_lex_state = 2}, [3416] = {.lex_state = 9, .external_lex_state = 2}, [3417] = {.lex_state = 17, .external_lex_state = 5}, [3418] = {.lex_state = 9, .external_lex_state = 2}, [3419] = {.lex_state = 9, .external_lex_state = 2}, [3420] = {.lex_state = 17, .external_lex_state = 5}, [3421] = {.lex_state = 9, .external_lex_state = 2}, [3422] = {.lex_state = 9, .external_lex_state = 2}, [3423] = {.lex_state = 9, .external_lex_state = 2}, [3424] = {.lex_state = 9, .external_lex_state = 2}, [3425] = {.lex_state = 9, .external_lex_state = 2}, [3426] = {.lex_state = 9, .external_lex_state = 2}, [3427] = {.lex_state = 9, .external_lex_state = 2}, [3428] = {.lex_state = 9, .external_lex_state = 2}, [3429] = {.lex_state = 9, .external_lex_state = 2}, [3430] = {.lex_state = 9, .external_lex_state = 2}, [3431] = {.lex_state = 9, .external_lex_state = 2}, [3432] = {.lex_state = 9, .external_lex_state = 2}, [3433] = {.lex_state = 9, .external_lex_state = 2}, [3434] = {.lex_state = 9, .external_lex_state = 2}, [3435] = {.lex_state = 9, .external_lex_state = 2}, [3436] = {.lex_state = 13, .external_lex_state = 5}, [3437] = {.lex_state = 13, .external_lex_state = 5}, [3438] = {.lex_state = 13, .external_lex_state = 5}, [3439] = {.lex_state = 13, .external_lex_state = 5}, [3440] = {.lex_state = 13, .external_lex_state = 5}, [3441] = {.lex_state = 13, .external_lex_state = 5}, [3442] = {.lex_state = 15, .external_lex_state = 5}, [3443] = {.lex_state = 13, .external_lex_state = 5}, [3444] = {.lex_state = 13, .external_lex_state = 5}, [3445] = {.lex_state = 15, .external_lex_state = 5}, [3446] = {.lex_state = 15, .external_lex_state = 5}, [3447] = {.lex_state = 13, .external_lex_state = 5}, [3448] = {.lex_state = 13, .external_lex_state = 5}, [3449] = {.lex_state = 13, .external_lex_state = 5}, [3450] = {.lex_state = 13, .external_lex_state = 5}, [3451] = {.lex_state = 13, .external_lex_state = 5}, [3452] = {.lex_state = 13, .external_lex_state = 5}, [3453] = {.lex_state = 13, .external_lex_state = 5}, [3454] = {.lex_state = 17, .external_lex_state = 5}, [3455] = {.lex_state = 13, .external_lex_state = 5}, [3456] = {.lex_state = 13, .external_lex_state = 5}, [3457] = {.lex_state = 13, .external_lex_state = 5}, [3458] = {.lex_state = 9, .external_lex_state = 2}, [3459] = {.lex_state = 12, .external_lex_state = 5}, [3460] = {.lex_state = 9, .external_lex_state = 2}, [3461] = {.lex_state = 13, .external_lex_state = 5}, [3462] = {.lex_state = 13, .external_lex_state = 5}, [3463] = {.lex_state = 13, .external_lex_state = 5}, [3464] = {.lex_state = 13, .external_lex_state = 5}, [3465] = {.lex_state = 9, .external_lex_state = 2}, [3466] = {.lex_state = 12, .external_lex_state = 5}, [3467] = {.lex_state = 9, .external_lex_state = 2}, [3468] = {.lex_state = 13, .external_lex_state = 5}, [3469] = {.lex_state = 9, .external_lex_state = 2}, [3470] = {.lex_state = 9, .external_lex_state = 2}, [3471] = {.lex_state = 13, .external_lex_state = 5}, [3472] = {.lex_state = 13, .external_lex_state = 5}, [3473] = {.lex_state = 9, .external_lex_state = 2}, [3474] = {.lex_state = 15, .external_lex_state = 5}, [3475] = {.lex_state = 9, .external_lex_state = 2}, [3476] = {.lex_state = 9, .external_lex_state = 2}, [3477] = {.lex_state = 13, .external_lex_state = 5}, [3478] = {.lex_state = 13, .external_lex_state = 5}, [3479] = {.lex_state = 9, .external_lex_state = 2}, [3480] = {.lex_state = 13, .external_lex_state = 5}, [3481] = {.lex_state = 9, .external_lex_state = 2}, [3482] = {.lex_state = 13, .external_lex_state = 5}, [3483] = {.lex_state = 9, .external_lex_state = 2}, [3484] = {.lex_state = 13, .external_lex_state = 5}, [3485] = {.lex_state = 13, .external_lex_state = 5}, [3486] = {.lex_state = 9, .external_lex_state = 2}, [3487] = {.lex_state = 13, .external_lex_state = 5}, [3488] = {.lex_state = 12, .external_lex_state = 5}, [3489] = {.lex_state = 17, .external_lex_state = 5}, [3490] = {.lex_state = 13, .external_lex_state = 5}, [3491] = {.lex_state = 13, .external_lex_state = 5}, [3492] = {.lex_state = 12, .external_lex_state = 5}, [3493] = {.lex_state = 13, .external_lex_state = 5}, [3494] = {.lex_state = 13, .external_lex_state = 5}, [3495] = {.lex_state = 9, .external_lex_state = 2}, [3496] = {.lex_state = 14, .external_lex_state = 5}, [3497] = {.lex_state = 13, .external_lex_state = 5}, [3498] = {.lex_state = 13, .external_lex_state = 5}, [3499] = {.lex_state = 13, .external_lex_state = 5}, [3500] = {.lex_state = 12, .external_lex_state = 5}, [3501] = {.lex_state = 13, .external_lex_state = 5}, [3502] = {.lex_state = 12, .external_lex_state = 5}, [3503] = {.lex_state = 12, .external_lex_state = 5}, [3504] = {.lex_state = 13, .external_lex_state = 5}, [3505] = {.lex_state = 13, .external_lex_state = 5}, [3506] = {.lex_state = 15, .external_lex_state = 5}, [3507] = {.lex_state = 17, .external_lex_state = 5}, [3508] = {.lex_state = 17, .external_lex_state = 5}, [3509] = {.lex_state = 12, .external_lex_state = 5}, [3510] = {.lex_state = 17, .external_lex_state = 5}, [3511] = {.lex_state = 17, .external_lex_state = 5}, [3512] = {.lex_state = 17, .external_lex_state = 5}, [3513] = {.lex_state = 17, .external_lex_state = 5}, [3514] = {.lex_state = 17, .external_lex_state = 5}, [3515] = {.lex_state = 13, .external_lex_state = 5}, [3516] = {.lex_state = 17, .external_lex_state = 5}, [3517] = {.lex_state = 15, .external_lex_state = 5}, [3518] = {.lex_state = 17, .external_lex_state = 5}, [3519] = {.lex_state = 17, .external_lex_state = 5}, [3520] = {.lex_state = 17, .external_lex_state = 5}, [3521] = {.lex_state = 14, .external_lex_state = 5}, [3522] = {.lex_state = 17, .external_lex_state = 5}, [3523] = {.lex_state = 17, .external_lex_state = 5}, [3524] = {.lex_state = 9, .external_lex_state = 2}, [3525] = {.lex_state = 15, .external_lex_state = 5}, [3526] = {.lex_state = 17, .external_lex_state = 5}, [3527] = {.lex_state = 15, .external_lex_state = 5}, [3528] = {.lex_state = 15, .external_lex_state = 5}, [3529] = {.lex_state = 15, .external_lex_state = 5}, [3530] = {.lex_state = 17, .external_lex_state = 5}, [3531] = {.lex_state = 16, .external_lex_state = 5}, [3532] = {.lex_state = 17, .external_lex_state = 5}, [3533] = {.lex_state = 17, .external_lex_state = 5}, [3534] = {.lex_state = 17, .external_lex_state = 5}, [3535] = {.lex_state = 17, .external_lex_state = 5}, [3536] = {.lex_state = 17, .external_lex_state = 5}, [3537] = {.lex_state = 17, .external_lex_state = 5}, [3538] = {.lex_state = 17, .external_lex_state = 5}, [3539] = {.lex_state = 13, .external_lex_state = 5}, [3540] = {.lex_state = 15, .external_lex_state = 5}, [3541] = {.lex_state = 15, .external_lex_state = 5}, [3542] = {.lex_state = 15, .external_lex_state = 5}, [3543] = {.lex_state = 15, .external_lex_state = 5}, [3544] = {.lex_state = 15, .external_lex_state = 5}, [3545] = {.lex_state = 17, .external_lex_state = 5}, [3546] = {.lex_state = 17, .external_lex_state = 5}, [3547] = {.lex_state = 17, .external_lex_state = 5}, [3548] = {.lex_state = 13, .external_lex_state = 5}, [3549] = {.lex_state = 12, .external_lex_state = 5}, [3550] = {.lex_state = 17, .external_lex_state = 5}, [3551] = {.lex_state = 13, .external_lex_state = 5}, [3552] = {.lex_state = 15, .external_lex_state = 5}, [3553] = {.lex_state = 13, .external_lex_state = 5}, [3554] = {.lex_state = 9, .external_lex_state = 2}, [3555] = {.lex_state = 17, .external_lex_state = 5}, [3556] = {.lex_state = 12, .external_lex_state = 5}, [3557] = {.lex_state = 9, .external_lex_state = 2}, [3558] = {.lex_state = 9, .external_lex_state = 2}, [3559] = {.lex_state = 9, .external_lex_state = 2}, [3560] = {.lex_state = 15, .external_lex_state = 5}, [3561] = {.lex_state = 17, .external_lex_state = 5}, [3562] = {.lex_state = 9, .external_lex_state = 2}, [3563] = {.lex_state = 15, .external_lex_state = 5}, [3564] = {.lex_state = 15, .external_lex_state = 5}, [3565] = {.lex_state = 15, .external_lex_state = 5}, [3566] = {.lex_state = 15, .external_lex_state = 5}, [3567] = {.lex_state = 15, .external_lex_state = 5}, [3568] = {.lex_state = 15, .external_lex_state = 5}, [3569] = {.lex_state = 17, .external_lex_state = 5}, [3570] = {.lex_state = 9, .external_lex_state = 2}, [3571] = {.lex_state = 9, .external_lex_state = 2}, [3572] = {.lex_state = 15, .external_lex_state = 5}, [3573] = {.lex_state = 13, .external_lex_state = 5}, [3574] = {.lex_state = 17, .external_lex_state = 5}, [3575] = {.lex_state = 9, .external_lex_state = 2}, [3576] = {.lex_state = 15, .external_lex_state = 5}, [3577] = {.lex_state = 13, .external_lex_state = 5}, [3578] = {.lex_state = 9, .external_lex_state = 2}, [3579] = {.lex_state = 13, .external_lex_state = 5}, [3580] = {.lex_state = 13, .external_lex_state = 5}, [3581] = {.lex_state = 15, .external_lex_state = 5}, [3582] = {.lex_state = 15, .external_lex_state = 5}, [3583] = {.lex_state = 9, .external_lex_state = 2}, [3584] = {.lex_state = 15, .external_lex_state = 5}, [3585] = {.lex_state = 15, .external_lex_state = 5}, [3586] = {.lex_state = 13, .external_lex_state = 5}, [3587] = {.lex_state = 13, .external_lex_state = 5}, [3588] = {.lex_state = 9, .external_lex_state = 2}, [3589] = {.lex_state = 9, .external_lex_state = 2}, [3590] = {.lex_state = 13, .external_lex_state = 5}, [3591] = {.lex_state = 15, .external_lex_state = 5}, [3592] = {.lex_state = 9, .external_lex_state = 2}, [3593] = {.lex_state = 15, .external_lex_state = 5}, [3594] = {.lex_state = 13, .external_lex_state = 5}, [3595] = {.lex_state = 17, .external_lex_state = 5}, [3596] = {.lex_state = 15, .external_lex_state = 5}, [3597] = {.lex_state = 9, .external_lex_state = 2}, [3598] = {.lex_state = 17, .external_lex_state = 5}, [3599] = {.lex_state = 13, .external_lex_state = 5}, [3600] = {.lex_state = 13, .external_lex_state = 5}, [3601] = {.lex_state = 15, .external_lex_state = 5}, [3602] = {.lex_state = 13, .external_lex_state = 5}, [3603] = {.lex_state = 15, .external_lex_state = 5}, [3604] = {.lex_state = 17, .external_lex_state = 5}, [3605] = {.lex_state = 13, .external_lex_state = 5}, [3606] = {.lex_state = 17, .external_lex_state = 5}, [3607] = {.lex_state = 12, .external_lex_state = 5}, [3608] = {.lex_state = 13, .external_lex_state = 5}, [3609] = {.lex_state = 17, .external_lex_state = 5}, [3610] = {.lex_state = 13, .external_lex_state = 5}, [3611] = {.lex_state = 17, .external_lex_state = 5}, [3612] = {.lex_state = 16, .external_lex_state = 5}, [3613] = {.lex_state = 12, .external_lex_state = 5}, [3614] = {.lex_state = 9, .external_lex_state = 2}, [3615] = {.lex_state = 13, .external_lex_state = 5}, [3616] = {.lex_state = 13, .external_lex_state = 5}, [3617] = {.lex_state = 15, .external_lex_state = 5}, [3618] = {.lex_state = 15, .external_lex_state = 5}, [3619] = {.lex_state = 13, .external_lex_state = 5}, [3620] = {.lex_state = 16, .external_lex_state = 5}, [3621] = {.lex_state = 13, .external_lex_state = 5}, [3622] = {.lex_state = 9, .external_lex_state = 2}, [3623] = {.lex_state = 9, .external_lex_state = 2}, [3624] = {.lex_state = 9, .external_lex_state = 2}, [3625] = {.lex_state = 9, .external_lex_state = 2}, [3626] = {.lex_state = 9, .external_lex_state = 2}, [3627] = {.lex_state = 9, .external_lex_state = 2}, [3628] = {.lex_state = 9, .external_lex_state = 2}, [3629] = {.lex_state = 13, .external_lex_state = 5}, [3630] = {.lex_state = 9, .external_lex_state = 2}, [3631] = {.lex_state = 9, .external_lex_state = 2}, [3632] = {.lex_state = 13, .external_lex_state = 5}, [3633] = {.lex_state = 9, .external_lex_state = 2}, [3634] = {.lex_state = 9, .external_lex_state = 2}, [3635] = {.lex_state = 13, .external_lex_state = 5}, [3636] = {.lex_state = 9, .external_lex_state = 2}, [3637] = {.lex_state = 9, .external_lex_state = 2}, [3638] = {.lex_state = 9, .external_lex_state = 2}, [3639] = {.lex_state = 9, .external_lex_state = 2}, [3640] = {.lex_state = 15, .external_lex_state = 5}, [3641] = {.lex_state = 9, .external_lex_state = 2}, [3642] = {.lex_state = 15, .external_lex_state = 5}, [3643] = {.lex_state = 9, .external_lex_state = 2}, [3644] = {.lex_state = 9, .external_lex_state = 2}, [3645] = {.lex_state = 9, .external_lex_state = 2}, [3646] = {.lex_state = 9, .external_lex_state = 2}, [3647] = {.lex_state = 9, .external_lex_state = 2}, [3648] = {.lex_state = 13, .external_lex_state = 5}, [3649] = {.lex_state = 9, .external_lex_state = 2}, [3650] = {.lex_state = 9, .external_lex_state = 2}, [3651] = {.lex_state = 13, .external_lex_state = 5}, [3652] = {.lex_state = 9, .external_lex_state = 2}, [3653] = {.lex_state = 15, .external_lex_state = 5}, [3654] = {.lex_state = 9, .external_lex_state = 2}, [3655] = {.lex_state = 9, .external_lex_state = 2}, [3656] = {.lex_state = 9, .external_lex_state = 2}, [3657] = {.lex_state = 9, .external_lex_state = 2}, [3658] = {.lex_state = 9, .external_lex_state = 2}, [3659] = {.lex_state = 9, .external_lex_state = 2}, [3660] = {.lex_state = 9, .external_lex_state = 2}, [3661] = {.lex_state = 9, .external_lex_state = 2}, [3662] = {.lex_state = 9, .external_lex_state = 2}, [3663] = {.lex_state = 9, .external_lex_state = 2}, [3664] = {.lex_state = 9, .external_lex_state = 2}, [3665] = {.lex_state = 9, .external_lex_state = 2}, [3666] = {.lex_state = 13, .external_lex_state = 5}, [3667] = {.lex_state = 13, .external_lex_state = 5}, [3668] = {.lex_state = 9, .external_lex_state = 2}, [3669] = {.lex_state = 17, .external_lex_state = 5}, [3670] = {.lex_state = 9, .external_lex_state = 2}, [3671] = {.lex_state = 9, .external_lex_state = 2}, [3672] = {.lex_state = 9, .external_lex_state = 2}, [3673] = {.lex_state = 9, .external_lex_state = 2}, [3674] = {.lex_state = 9, .external_lex_state = 2}, [3675] = {.lex_state = 9, .external_lex_state = 2}, [3676] = {.lex_state = 15, .external_lex_state = 5}, [3677] = {.lex_state = 9, .external_lex_state = 2}, [3678] = {.lex_state = 9, .external_lex_state = 2}, [3679] = {.lex_state = 9, .external_lex_state = 2}, [3680] = {.lex_state = 13, .external_lex_state = 5}, [3681] = {.lex_state = 9, .external_lex_state = 2}, [3682] = {.lex_state = 9, .external_lex_state = 2}, [3683] = {.lex_state = 9, .external_lex_state = 2}, [3684] = {.lex_state = 9, .external_lex_state = 2}, [3685] = {.lex_state = 9, .external_lex_state = 2}, [3686] = {.lex_state = 9, .external_lex_state = 2}, [3687] = {.lex_state = 13, .external_lex_state = 5}, [3688] = {.lex_state = 9, .external_lex_state = 2}, [3689] = {.lex_state = 9, .external_lex_state = 2}, [3690] = {.lex_state = 15, .external_lex_state = 5}, [3691] = {.lex_state = 9, .external_lex_state = 2}, [3692] = {.lex_state = 9, .external_lex_state = 2}, [3693] = {.lex_state = 9, .external_lex_state = 2}, [3694] = {.lex_state = 9, .external_lex_state = 2}, [3695] = {.lex_state = 9, .external_lex_state = 2}, [3696] = {.lex_state = 9, .external_lex_state = 2}, [3697] = {.lex_state = 13, .external_lex_state = 5}, [3698] = {.lex_state = 15, .external_lex_state = 2}, [3699] = {.lex_state = 9, .external_lex_state = 2}, [3700] = {.lex_state = 9, .external_lex_state = 2}, [3701] = {.lex_state = 9, .external_lex_state = 2}, [3702] = {.lex_state = 13, .external_lex_state = 5}, [3703] = {.lex_state = 9, .external_lex_state = 2}, [3704] = {.lex_state = 9, .external_lex_state = 2}, [3705] = {.lex_state = 9, .external_lex_state = 2}, [3706] = {.lex_state = 9, .external_lex_state = 2}, [3707] = {.lex_state = 9, .external_lex_state = 2}, [3708] = {.lex_state = 12, .external_lex_state = 5}, [3709] = {.lex_state = 9, .external_lex_state = 2}, [3710] = {.lex_state = 15, .external_lex_state = 5}, [3711] = {.lex_state = 9, .external_lex_state = 2}, [3712] = {.lex_state = 17, .external_lex_state = 5}, [3713] = {.lex_state = 9, .external_lex_state = 2}, [3714] = {.lex_state = 9, .external_lex_state = 2}, [3715] = {.lex_state = 9, .external_lex_state = 2}, [3716] = {.lex_state = 9, .external_lex_state = 2}, [3717] = {.lex_state = 9, .external_lex_state = 2}, [3718] = {.lex_state = 9, .external_lex_state = 2}, [3719] = {.lex_state = 9, .external_lex_state = 2}, [3720] = {.lex_state = 9, .external_lex_state = 2}, [3721] = {.lex_state = 9, .external_lex_state = 2}, [3722] = {.lex_state = 9, .external_lex_state = 2}, [3723] = {.lex_state = 9, .external_lex_state = 2}, [3724] = {.lex_state = 9, .external_lex_state = 2}, [3725] = {.lex_state = 13, .external_lex_state = 5}, [3726] = {.lex_state = 9, .external_lex_state = 2}, [3727] = {.lex_state = 9, .external_lex_state = 2}, [3728] = {.lex_state = 15, .external_lex_state = 5}, [3729] = {.lex_state = 9, .external_lex_state = 2}, [3730] = {.lex_state = 9, .external_lex_state = 2}, [3731] = {.lex_state = 9, .external_lex_state = 2}, [3732] = {.lex_state = 9, .external_lex_state = 2}, [3733] = {.lex_state = 9, .external_lex_state = 2}, [3734] = {.lex_state = 9, .external_lex_state = 2}, [3735] = {.lex_state = 9, .external_lex_state = 2}, [3736] = {.lex_state = 9, .external_lex_state = 2}, [3737] = {.lex_state = 9, .external_lex_state = 2}, [3738] = {.lex_state = 9, .external_lex_state = 2}, [3739] = {.lex_state = 9, .external_lex_state = 2}, [3740] = {.lex_state = 9, .external_lex_state = 2}, [3741] = {.lex_state = 9, .external_lex_state = 2}, [3742] = {.lex_state = 9, .external_lex_state = 2}, [3743] = {.lex_state = 9, .external_lex_state = 2}, [3744] = {.lex_state = 9, .external_lex_state = 2}, [3745] = {.lex_state = 9, .external_lex_state = 2}, [3746] = {.lex_state = 9, .external_lex_state = 2}, [3747] = {.lex_state = 9, .external_lex_state = 2}, [3748] = {.lex_state = 9, .external_lex_state = 2}, [3749] = {.lex_state = 9, .external_lex_state = 2}, [3750] = {.lex_state = 9, .external_lex_state = 2}, [3751] = {.lex_state = 9, .external_lex_state = 2}, [3752] = {.lex_state = 9, .external_lex_state = 2}, [3753] = {.lex_state = 9, .external_lex_state = 2}, [3754] = {.lex_state = 9, .external_lex_state = 2}, [3755] = {.lex_state = 9, .external_lex_state = 2}, [3756] = {.lex_state = 9, .external_lex_state = 2}, [3757] = {.lex_state = 9, .external_lex_state = 2}, [3758] = {.lex_state = 9, .external_lex_state = 2}, [3759] = {.lex_state = 9, .external_lex_state = 2}, [3760] = {.lex_state = 9, .external_lex_state = 2}, [3761] = {.lex_state = 9, .external_lex_state = 2}, [3762] = {.lex_state = 9, .external_lex_state = 2}, [3763] = {.lex_state = 9, .external_lex_state = 2}, [3764] = {.lex_state = 9, .external_lex_state = 2}, [3765] = {.lex_state = 9, .external_lex_state = 2}, [3766] = {.lex_state = 13, .external_lex_state = 5}, [3767] = {.lex_state = 13, .external_lex_state = 5}, [3768] = {.lex_state = 9, .external_lex_state = 2}, [3769] = {.lex_state = 13, .external_lex_state = 5}, [3770] = {.lex_state = 9, .external_lex_state = 2}, [3771] = {.lex_state = 15, .external_lex_state = 5}, [3772] = {.lex_state = 15, .external_lex_state = 5}, [3773] = {.lex_state = 13, .external_lex_state = 5}, [3774] = {.lex_state = 13, .external_lex_state = 5}, [3775] = {.lex_state = 15, .external_lex_state = 5}, [3776] = {.lex_state = 17, .external_lex_state = 5}, [3777] = {.lex_state = 15, .external_lex_state = 5}, [3778] = {.lex_state = 15, .external_lex_state = 5}, [3779] = {.lex_state = 9, .external_lex_state = 2}, [3780] = {.lex_state = 9, .external_lex_state = 2}, [3781] = {.lex_state = 9, .external_lex_state = 2}, [3782] = {.lex_state = 15, .external_lex_state = 5}, [3783] = {.lex_state = 9, .external_lex_state = 2}, [3784] = {.lex_state = 9, .external_lex_state = 2}, [3785] = {.lex_state = 15, .external_lex_state = 5}, [3786] = {.lex_state = 15, .external_lex_state = 5}, [3787] = {.lex_state = 13, .external_lex_state = 5}, [3788] = {.lex_state = 9, .external_lex_state = 2}, [3789] = {.lex_state = 13, .external_lex_state = 5}, [3790] = {.lex_state = 13, .external_lex_state = 5}, [3791] = {.lex_state = 13, .external_lex_state = 5}, [3792] = {.lex_state = 9, .external_lex_state = 2}, [3793] = {.lex_state = 15, .external_lex_state = 2}, [3794] = {.lex_state = 13, .external_lex_state = 5}, [3795] = {.lex_state = 13, .external_lex_state = 5}, [3796] = {.lex_state = 13, .external_lex_state = 5}, [3797] = {.lex_state = 13, .external_lex_state = 5}, [3798] = {.lex_state = 13, .external_lex_state = 5}, [3799] = {.lex_state = 9, .external_lex_state = 2}, [3800] = {.lex_state = 17, .external_lex_state = 5}, [3801] = {.lex_state = 17, .external_lex_state = 5}, [3802] = {.lex_state = 13, .external_lex_state = 5}, [3803] = {.lex_state = 13, .external_lex_state = 5}, [3804] = {.lex_state = 13, .external_lex_state = 5}, [3805] = {.lex_state = 13, .external_lex_state = 5}, [3806] = {.lex_state = 13, .external_lex_state = 5}, [3807] = {.lex_state = 13, .external_lex_state = 5}, [3808] = {.lex_state = 9, .external_lex_state = 2}, [3809] = {.lex_state = 17, .external_lex_state = 5}, [3810] = {.lex_state = 17, .external_lex_state = 5}, [3811] = {.lex_state = 13, .external_lex_state = 5}, [3812] = {.lex_state = 17, .external_lex_state = 5}, [3813] = {.lex_state = 13, .external_lex_state = 5}, [3814] = {.lex_state = 13, .external_lex_state = 5}, [3815] = {.lex_state = 17, .external_lex_state = 5}, [3816] = {.lex_state = 17, .external_lex_state = 5}, [3817] = {.lex_state = 13, .external_lex_state = 5}, [3818] = {.lex_state = 9, .external_lex_state = 2}, [3819] = {.lex_state = 17, .external_lex_state = 5}, [3820] = {.lex_state = 17, .external_lex_state = 5}, [3821] = {.lex_state = 13, .external_lex_state = 5}, [3822] = {.lex_state = 13, .external_lex_state = 5}, [3823] = {.lex_state = 13, .external_lex_state = 5}, [3824] = {.lex_state = 13, .external_lex_state = 5}, [3825] = {.lex_state = 13, .external_lex_state = 5}, [3826] = {.lex_state = 17, .external_lex_state = 5}, [3827] = {.lex_state = 17, .external_lex_state = 5}, [3828] = {.lex_state = 13, .external_lex_state = 5}, [3829] = {.lex_state = 13, .external_lex_state = 5}, [3830] = {.lex_state = 17, .external_lex_state = 5}, [3831] = {.lex_state = 13, .external_lex_state = 5}, [3832] = {.lex_state = 13, .external_lex_state = 5}, [3833] = {.lex_state = 9, .external_lex_state = 2}, [3834] = {.lex_state = 13, .external_lex_state = 5}, [3835] = {.lex_state = 13, .external_lex_state = 5}, [3836] = {.lex_state = 13, .external_lex_state = 5}, [3837] = {.lex_state = 17, .external_lex_state = 5}, [3838] = {.lex_state = 17, .external_lex_state = 5}, [3839] = {.lex_state = 17, .external_lex_state = 5}, [3840] = {.lex_state = 17, .external_lex_state = 5}, [3841] = {.lex_state = 17, .external_lex_state = 5}, [3842] = {.lex_state = 13, .external_lex_state = 5}, [3843] = {.lex_state = 13, .external_lex_state = 5}, [3844] = {.lex_state = 13, .external_lex_state = 5}, [3845] = {.lex_state = 13, .external_lex_state = 5}, [3846] = {.lex_state = 13, .external_lex_state = 5}, [3847] = {.lex_state = 17, .external_lex_state = 5}, [3848] = {.lex_state = 13, .external_lex_state = 5}, [3849] = {.lex_state = 13, .external_lex_state = 5}, [3850] = {.lex_state = 13, .external_lex_state = 5}, [3851] = {.lex_state = 13, .external_lex_state = 5}, [3852] = {.lex_state = 13, .external_lex_state = 5}, [3853] = {.lex_state = 13, .external_lex_state = 5}, [3854] = {.lex_state = 13, .external_lex_state = 5}, [3855] = {.lex_state = 13, .external_lex_state = 5}, [3856] = {.lex_state = 13, .external_lex_state = 5}, [3857] = {.lex_state = 13, .external_lex_state = 5}, [3858] = {.lex_state = 13, .external_lex_state = 5}, [3859] = {.lex_state = 13, .external_lex_state = 5}, [3860] = {.lex_state = 13, .external_lex_state = 5}, [3861] = {.lex_state = 13, .external_lex_state = 5}, [3862] = {.lex_state = 15, .external_lex_state = 5}, [3863] = {.lex_state = 13, .external_lex_state = 5}, [3864] = {.lex_state = 15, .external_lex_state = 5}, [3865] = {.lex_state = 15, .external_lex_state = 5}, [3866] = {.lex_state = 15, .external_lex_state = 5}, [3867] = {.lex_state = 13, .external_lex_state = 5}, [3868] = {.lex_state = 17, .external_lex_state = 5}, [3869] = {.lex_state = 15, .external_lex_state = 5}, [3870] = {.lex_state = 13, .external_lex_state = 5}, [3871] = {.lex_state = 17, .external_lex_state = 5}, [3872] = {.lex_state = 17, .external_lex_state = 5}, [3873] = {.lex_state = 15, .external_lex_state = 5}, [3874] = {.lex_state = 15, .external_lex_state = 5}, [3875] = {.lex_state = 13, .external_lex_state = 5}, [3876] = {.lex_state = 17, .external_lex_state = 5}, [3877] = {.lex_state = 13, .external_lex_state = 5}, [3878] = {.lex_state = 13, .external_lex_state = 5}, [3879] = {.lex_state = 13, .external_lex_state = 5}, [3880] = {.lex_state = 15, .external_lex_state = 5}, [3881] = {.lex_state = 13, .external_lex_state = 5}, [3882] = {.lex_state = 15, .external_lex_state = 5}, [3883] = {.lex_state = 13, .external_lex_state = 5}, [3884] = {.lex_state = 13, .external_lex_state = 5}, [3885] = {.lex_state = 13, .external_lex_state = 5}, [3886] = {.lex_state = 13, .external_lex_state = 5}, [3887] = {.lex_state = 13, .external_lex_state = 5}, [3888] = {.lex_state = 13, .external_lex_state = 5}, [3889] = {.lex_state = 13, .external_lex_state = 5}, [3890] = {.lex_state = 13, .external_lex_state = 5}, [3891] = {.lex_state = 13, .external_lex_state = 5}, [3892] = {.lex_state = 13, .external_lex_state = 5}, [3893] = {.lex_state = 17, .external_lex_state = 5}, [3894] = {.lex_state = 13, .external_lex_state = 5}, [3895] = {.lex_state = 13, .external_lex_state = 5}, [3896] = {.lex_state = 17, .external_lex_state = 5}, [3897] = {.lex_state = 13, .external_lex_state = 5}, [3898] = {.lex_state = 13, .external_lex_state = 5}, [3899] = {.lex_state = 13, .external_lex_state = 5}, [3900] = {.lex_state = 9, .external_lex_state = 2}, [3901] = {.lex_state = 17, .external_lex_state = 5}, [3902] = {.lex_state = 17, .external_lex_state = 5}, [3903] = {.lex_state = 15, .external_lex_state = 5}, [3904] = {.lex_state = 15, .external_lex_state = 5}, [3905] = {.lex_state = 13, .external_lex_state = 5}, [3906] = {.lex_state = 17, .external_lex_state = 5}, [3907] = {.lex_state = 17, .external_lex_state = 5}, [3908] = {.lex_state = 17, .external_lex_state = 5}, [3909] = {.lex_state = 15, .external_lex_state = 5}, [3910] = {.lex_state = 17, .external_lex_state = 5}, [3911] = {.lex_state = 15, .external_lex_state = 5}, [3912] = {.lex_state = 17, .external_lex_state = 5}, [3913] = {.lex_state = 15, .external_lex_state = 5}, [3914] = {.lex_state = 17, .external_lex_state = 5}, [3915] = {.lex_state = 17, .external_lex_state = 5}, [3916] = {.lex_state = 13, .external_lex_state = 5}, [3917] = {.lex_state = 15, .external_lex_state = 5}, [3918] = {.lex_state = 13, .external_lex_state = 5}, [3919] = {.lex_state = 15, .external_lex_state = 5}, [3920] = {.lex_state = 15, .external_lex_state = 5}, [3921] = {.lex_state = 9, .external_lex_state = 2}, [3922] = {.lex_state = 17, .external_lex_state = 5}, [3923] = {.lex_state = 13, .external_lex_state = 5}, [3924] = {.lex_state = 13, .external_lex_state = 5}, [3925] = {.lex_state = 15, .external_lex_state = 5}, [3926] = {.lex_state = 15, .external_lex_state = 5}, [3927] = {.lex_state = 17, .external_lex_state = 5}, [3928] = {.lex_state = 17, .external_lex_state = 5}, [3929] = {.lex_state = 17, .external_lex_state = 5}, [3930] = {.lex_state = 17, .external_lex_state = 5}, [3931] = {.lex_state = 17, .external_lex_state = 5}, [3932] = {.lex_state = 17, .external_lex_state = 5}, [3933] = {.lex_state = 15, .external_lex_state = 5}, [3934] = {.lex_state = 15, .external_lex_state = 5}, [3935] = {.lex_state = 15, .external_lex_state = 5}, [3936] = {.lex_state = 13, .external_lex_state = 5}, [3937] = {.lex_state = 17, .external_lex_state = 5}, [3938] = {.lex_state = 17, .external_lex_state = 5}, [3939] = {.lex_state = 17, .external_lex_state = 5}, [3940] = {.lex_state = 13, .external_lex_state = 5}, [3941] = {.lex_state = 17, .external_lex_state = 5}, [3942] = {.lex_state = 17, .external_lex_state = 5}, [3943] = {.lex_state = 17, .external_lex_state = 5}, [3944] = {.lex_state = 17, .external_lex_state = 5}, [3945] = {.lex_state = 15, .external_lex_state = 5}, [3946] = {.lex_state = 17, .external_lex_state = 5}, [3947] = {.lex_state = 13, .external_lex_state = 5}, [3948] = {.lex_state = 17, .external_lex_state = 5}, [3949] = {.lex_state = 15, .external_lex_state = 5}, [3950] = {.lex_state = 13, .external_lex_state = 5}, [3951] = {.lex_state = 15, .external_lex_state = 5}, [3952] = {.lex_state = 17, .external_lex_state = 5}, [3953] = {.lex_state = 13, .external_lex_state = 5}, [3954] = {.lex_state = 15, .external_lex_state = 5}, [3955] = {.lex_state = 15, .external_lex_state = 5}, [3956] = {.lex_state = 13, .external_lex_state = 5}, [3957] = {.lex_state = 17, .external_lex_state = 5}, [3958] = {.lex_state = 17, .external_lex_state = 5}, [3959] = {.lex_state = 17, .external_lex_state = 5}, [3960] = {.lex_state = 17, .external_lex_state = 5}, [3961] = {.lex_state = 17, .external_lex_state = 5}, [3962] = {.lex_state = 17, .external_lex_state = 5}, [3963] = {.lex_state = 13, .external_lex_state = 5}, [3964] = {.lex_state = 17, .external_lex_state = 5}, [3965] = {.lex_state = 17, .external_lex_state = 5}, [3966] = {.lex_state = 17, .external_lex_state = 5}, [3967] = {.lex_state = 17, .external_lex_state = 5}, [3968] = {.lex_state = 17, .external_lex_state = 5}, [3969] = {.lex_state = 17, .external_lex_state = 5}, [3970] = {.lex_state = 13, .external_lex_state = 5}, [3971] = {.lex_state = 17, .external_lex_state = 5}, [3972] = {.lex_state = 13, .external_lex_state = 5}, [3973] = {.lex_state = 17, .external_lex_state = 5}, [3974] = {.lex_state = 13, .external_lex_state = 5}, [3975] = {.lex_state = 17, .external_lex_state = 5}, [3976] = {.lex_state = 17, .external_lex_state = 5}, [3977] = {.lex_state = 15, .external_lex_state = 5}, [3978] = {.lex_state = 17, .external_lex_state = 5}, [3979] = {.lex_state = 17, .external_lex_state = 5}, [3980] = {.lex_state = 17, .external_lex_state = 5}, [3981] = {.lex_state = 17, .external_lex_state = 5}, [3982] = {.lex_state = 17, .external_lex_state = 5}, [3983] = {.lex_state = 17, .external_lex_state = 5}, [3984] = {.lex_state = 17, .external_lex_state = 5}, [3985] = {.lex_state = 17, .external_lex_state = 5}, [3986] = {.lex_state = 13, .external_lex_state = 5}, [3987] = {.lex_state = 17, .external_lex_state = 5}, [3988] = {.lex_state = 17, .external_lex_state = 5}, [3989] = {.lex_state = 15, .external_lex_state = 5}, [3990] = {.lex_state = 17, .external_lex_state = 5}, [3991] = {.lex_state = 17, .external_lex_state = 5}, [3992] = {.lex_state = 17, .external_lex_state = 5}, [3993] = {.lex_state = 17, .external_lex_state = 5}, [3994] = {.lex_state = 17, .external_lex_state = 5}, [3995] = {.lex_state = 17, .external_lex_state = 5}, [3996] = {.lex_state = 13, .external_lex_state = 5}, [3997] = {.lex_state = 15, .external_lex_state = 5}, [3998] = {.lex_state = 15, .external_lex_state = 5}, [3999] = {.lex_state = 15, .external_lex_state = 5}, [4000] = {.lex_state = 15, .external_lex_state = 5}, [4001] = {.lex_state = 15, .external_lex_state = 5}, [4002] = {.lex_state = 15, .external_lex_state = 5}, [4003] = {.lex_state = 13, .external_lex_state = 5}, [4004] = {.lex_state = 15, .external_lex_state = 5}, [4005] = {.lex_state = 15, .external_lex_state = 5}, [4006] = {.lex_state = 15, .external_lex_state = 5}, [4007] = {.lex_state = 15, .external_lex_state = 5}, [4008] = {.lex_state = 15, .external_lex_state = 5}, [4009] = {.lex_state = 15, .external_lex_state = 5}, [4010] = {.lex_state = 15, .external_lex_state = 5}, [4011] = {.lex_state = 17, .external_lex_state = 5}, [4012] = {.lex_state = 15, .external_lex_state = 5}, [4013] = {.lex_state = 15, .external_lex_state = 5}, [4014] = {.lex_state = 15, .external_lex_state = 5}, [4015] = {.lex_state = 15, .external_lex_state = 5}, [4016] = {.lex_state = 15, .external_lex_state = 5}, [4017] = {.lex_state = 17, .external_lex_state = 5}, [4018] = {.lex_state = 15, .external_lex_state = 5}, [4019] = {.lex_state = 17, .external_lex_state = 5}, [4020] = {.lex_state = 15, .external_lex_state = 5}, [4021] = {.lex_state = 17, .external_lex_state = 5}, [4022] = {.lex_state = 15, .external_lex_state = 5}, [4023] = {.lex_state = 17, .external_lex_state = 5}, [4024] = {.lex_state = 15, .external_lex_state = 5}, [4025] = {.lex_state = 15, .external_lex_state = 5}, [4026] = {.lex_state = 17, .external_lex_state = 5}, [4027] = {.lex_state = 15, .external_lex_state = 5}, [4028] = {.lex_state = 15, .external_lex_state = 5}, [4029] = {.lex_state = 15, .external_lex_state = 5}, [4030] = {.lex_state = 17, .external_lex_state = 5}, [4031] = {.lex_state = 17, .external_lex_state = 5}, [4032] = {.lex_state = 15, .external_lex_state = 5}, [4033] = {.lex_state = 15, .external_lex_state = 5}, [4034] = {.lex_state = 15, .external_lex_state = 5}, [4035] = {.lex_state = 15, .external_lex_state = 5}, [4036] = {.lex_state = 17, .external_lex_state = 5}, [4037] = {.lex_state = 17, .external_lex_state = 5}, [4038] = {.lex_state = 17, .external_lex_state = 5}, [4039] = {.lex_state = 15, .external_lex_state = 5}, [4040] = {.lex_state = 15, .external_lex_state = 5}, [4041] = {.lex_state = 15, .external_lex_state = 5}, [4042] = {.lex_state = 15, .external_lex_state = 5}, [4043] = {.lex_state = 17, .external_lex_state = 5}, [4044] = {.lex_state = 17, .external_lex_state = 5}, [4045] = {.lex_state = 15, .external_lex_state = 5}, [4046] = {.lex_state = 17, .external_lex_state = 5}, [4047] = {.lex_state = 17, .external_lex_state = 5}, [4048] = {.lex_state = 15, .external_lex_state = 5}, [4049] = {.lex_state = 17, .external_lex_state = 5}, [4050] = {.lex_state = 15, .external_lex_state = 5}, [4051] = {.lex_state = 15, .external_lex_state = 5}, [4052] = {.lex_state = 15, .external_lex_state = 5}, [4053] = {.lex_state = 15, .external_lex_state = 5}, [4054] = {.lex_state = 15, .external_lex_state = 5}, [4055] = {.lex_state = 15, .external_lex_state = 5}, [4056] = {.lex_state = 13, .external_lex_state = 5}, [4057] = {.lex_state = 13, .external_lex_state = 5}, [4058] = {.lex_state = 15, .external_lex_state = 5}, [4059] = {.lex_state = 13, .external_lex_state = 5}, [4060] = {.lex_state = 15, .external_lex_state = 5}, [4061] = {.lex_state = 13, .external_lex_state = 5}, [4062] = {.lex_state = 15, .external_lex_state = 5}, [4063] = {.lex_state = 15, .external_lex_state = 5}, [4064] = {.lex_state = 15, .external_lex_state = 5}, [4065] = {.lex_state = 15, .external_lex_state = 5}, [4066] = {.lex_state = 15, .external_lex_state = 5}, [4067] = {.lex_state = 15, .external_lex_state = 5}, [4068] = {.lex_state = 17, .external_lex_state = 5}, [4069] = {.lex_state = 13, .external_lex_state = 5}, [4070] = {.lex_state = 15, .external_lex_state = 5}, [4071] = {.lex_state = 15, .external_lex_state = 5}, [4072] = {.lex_state = 13, .external_lex_state = 5}, [4073] = {.lex_state = 13, .external_lex_state = 5}, [4074] = {.lex_state = 13, .external_lex_state = 5}, [4075] = {.lex_state = 15, .external_lex_state = 5}, [4076] = {.lex_state = 15, .external_lex_state = 5}, [4077] = {.lex_state = 15, .external_lex_state = 5}, [4078] = {.lex_state = 15, .external_lex_state = 5}, [4079] = {.lex_state = 13, .external_lex_state = 5}, [4080] = {.lex_state = 13, .external_lex_state = 5}, [4081] = {.lex_state = 13, .external_lex_state = 5}, [4082] = {.lex_state = 15, .external_lex_state = 5}, [4083] = {.lex_state = 13, .external_lex_state = 5}, [4084] = {.lex_state = 13, .external_lex_state = 5}, [4085] = {.lex_state = 15, .external_lex_state = 5}, [4086] = {.lex_state = 15, .external_lex_state = 5}, [4087] = {.lex_state = 15, .external_lex_state = 5}, [4088] = {.lex_state = 13, .external_lex_state = 5}, [4089] = {.lex_state = 15, .external_lex_state = 5}, [4090] = {.lex_state = 17, .external_lex_state = 5}, [4091] = {.lex_state = 13, .external_lex_state = 5}, [4092] = {.lex_state = 15, .external_lex_state = 5}, [4093] = {.lex_state = 13, .external_lex_state = 5}, [4094] = {.lex_state = 13, .external_lex_state = 5}, [4095] = {.lex_state = 15, .external_lex_state = 5}, [4096] = {.lex_state = 15, .external_lex_state = 5}, [4097] = {.lex_state = 17, .external_lex_state = 5}, [4098] = {.lex_state = 13, .external_lex_state = 5}, [4099] = {.lex_state = 17, .external_lex_state = 5}, [4100] = {.lex_state = 17, .external_lex_state = 5}, [4101] = {.lex_state = 17, .external_lex_state = 5}, [4102] = {.lex_state = 17, .external_lex_state = 5}, [4103] = {.lex_state = 18, .external_lex_state = 5}, [4104] = {.lex_state = 17, .external_lex_state = 5}, [4105] = {.lex_state = 17, .external_lex_state = 5}, [4106] = {.lex_state = 17, .external_lex_state = 5}, [4107] = {.lex_state = 17, .external_lex_state = 5}, [4108] = {.lex_state = 17, .external_lex_state = 5}, [4109] = {.lex_state = 9, .external_lex_state = 2}, [4110] = {.lex_state = 13, .external_lex_state = 5}, [4111] = {.lex_state = 13, .external_lex_state = 5}, [4112] = {.lex_state = 13, .external_lex_state = 5}, [4113] = {.lex_state = 17, .external_lex_state = 5}, [4114] = {.lex_state = 17, .external_lex_state = 5}, [4115] = {.lex_state = 17, .external_lex_state = 5}, [4116] = {.lex_state = 17, .external_lex_state = 5}, [4117] = {.lex_state = 17, .external_lex_state = 5}, [4118] = {.lex_state = 17, .external_lex_state = 5}, [4119] = {.lex_state = 17, .external_lex_state = 5}, [4120] = {.lex_state = 17, .external_lex_state = 5}, [4121] = {.lex_state = 13, .external_lex_state = 5}, [4122] = {.lex_state = 13, .external_lex_state = 5}, [4123] = {.lex_state = 13, .external_lex_state = 5}, [4124] = {.lex_state = 13, .external_lex_state = 5}, [4125] = {.lex_state = 13, .external_lex_state = 5}, [4126] = {.lex_state = 13, .external_lex_state = 5}, [4127] = {.lex_state = 13, .external_lex_state = 5}, [4128] = {.lex_state = 13, .external_lex_state = 5}, [4129] = {.lex_state = 13, .external_lex_state = 5}, [4130] = {.lex_state = 13, .external_lex_state = 5}, [4131] = {.lex_state = 13, .external_lex_state = 5}, [4132] = {.lex_state = 13, .external_lex_state = 5}, [4133] = {.lex_state = 13, .external_lex_state = 5}, [4134] = {.lex_state = 13, .external_lex_state = 5}, [4135] = {.lex_state = 13, .external_lex_state = 5}, [4136] = {.lex_state = 13, .external_lex_state = 5}, [4137] = {.lex_state = 13, .external_lex_state = 5}, [4138] = {.lex_state = 13, .external_lex_state = 5}, [4139] = {.lex_state = 9, .external_lex_state = 2}, [4140] = {.lex_state = 18, .external_lex_state = 5}, [4141] = {.lex_state = 18, .external_lex_state = 5}, [4142] = {.lex_state = 18, .external_lex_state = 5}, [4143] = {.lex_state = 19, .external_lex_state = 5}, [4144] = {.lex_state = 19, .external_lex_state = 5}, [4145] = {.lex_state = 18, .external_lex_state = 5}, [4146] = {.lex_state = 19, .external_lex_state = 5}, [4147] = {.lex_state = 18, .external_lex_state = 5}, [4148] = {.lex_state = 18, .external_lex_state = 5}, [4149] = {.lex_state = 18, .external_lex_state = 5}, [4150] = {.lex_state = 18, .external_lex_state = 5}, [4151] = {.lex_state = 18, .external_lex_state = 5}, [4152] = {.lex_state = 18, .external_lex_state = 5}, [4153] = {.lex_state = 18, .external_lex_state = 5}, [4154] = {.lex_state = 18, .external_lex_state = 5}, [4155] = {.lex_state = 18, .external_lex_state = 5}, [4156] = {.lex_state = 19, .external_lex_state = 5}, [4157] = {.lex_state = 19, .external_lex_state = 5}, [4158] = {.lex_state = 18, .external_lex_state = 5}, [4159] = {.lex_state = 19, .external_lex_state = 5}, [4160] = {.lex_state = 19, .external_lex_state = 5}, [4161] = {.lex_state = 19, .external_lex_state = 5}, [4162] = {.lex_state = 18, .external_lex_state = 5}, [4163] = {.lex_state = 9, .external_lex_state = 2}, [4164] = {.lex_state = 19, .external_lex_state = 5}, [4165] = {.lex_state = 19, .external_lex_state = 5}, [4166] = {.lex_state = 18, .external_lex_state = 5}, [4167] = {.lex_state = 18, .external_lex_state = 5}, [4168] = {.lex_state = 18, .external_lex_state = 5}, [4169] = {.lex_state = 9, .external_lex_state = 2}, [4170] = {.lex_state = 18, .external_lex_state = 5}, [4171] = {.lex_state = 9, .external_lex_state = 2}, [4172] = {.lex_state = 9, .external_lex_state = 2}, [4173] = {.lex_state = 9, .external_lex_state = 2}, [4174] = {.lex_state = 9, .external_lex_state = 2}, [4175] = {.lex_state = 9, .external_lex_state = 2}, [4176] = {.lex_state = 18, .external_lex_state = 5}, [4177] = {.lex_state = 9, .external_lex_state = 2}, [4178] = {.lex_state = 19, .external_lex_state = 5}, [4179] = {.lex_state = 9, .external_lex_state = 2}, [4180] = {.lex_state = 9, .external_lex_state = 2}, [4181] = {.lex_state = 9, .external_lex_state = 2}, [4182] = {.lex_state = 18, .external_lex_state = 5}, [4183] = {.lex_state = 18, .external_lex_state = 5}, [4184] = {.lex_state = 9, .external_lex_state = 2}, [4185] = {.lex_state = 18, .external_lex_state = 5}, [4186] = {.lex_state = 18, .external_lex_state = 5}, [4187] = {.lex_state = 9, .external_lex_state = 2}, [4188] = {.lex_state = 19, .external_lex_state = 5}, [4189] = {.lex_state = 18, .external_lex_state = 5}, [4190] = {.lex_state = 18, .external_lex_state = 5}, [4191] = {.lex_state = 9, .external_lex_state = 2}, [4192] = {.lex_state = 18, .external_lex_state = 5}, [4193] = {.lex_state = 18, .external_lex_state = 5}, [4194] = {.lex_state = 18, .external_lex_state = 5}, [4195] = {.lex_state = 18, .external_lex_state = 5}, [4196] = {.lex_state = 9, .external_lex_state = 2}, [4197] = {.lex_state = 18, .external_lex_state = 5}, [4198] = {.lex_state = 18, .external_lex_state = 5}, [4199] = {.lex_state = 9, .external_lex_state = 2}, [4200] = {.lex_state = 9, .external_lex_state = 2}, [4201] = {.lex_state = 18, .external_lex_state = 5}, [4202] = {.lex_state = 18, .external_lex_state = 5}, [4203] = {.lex_state = 18, .external_lex_state = 5}, [4204] = {.lex_state = 19, .external_lex_state = 5}, [4205] = {.lex_state = 19, .external_lex_state = 5}, [4206] = {.lex_state = 18, .external_lex_state = 5}, [4207] = {.lex_state = 9, .external_lex_state = 2}, [4208] = {.lex_state = 19, .external_lex_state = 5}, [4209] = {.lex_state = 19, .external_lex_state = 5}, [4210] = {.lex_state = 19, .external_lex_state = 5}, [4211] = {.lex_state = 19, .external_lex_state = 5}, [4212] = {.lex_state = 18, .external_lex_state = 5}, [4213] = {.lex_state = 19, .external_lex_state = 5}, [4214] = {.lex_state = 19, .external_lex_state = 5}, [4215] = {.lex_state = 19, .external_lex_state = 5}, [4216] = {.lex_state = 19, .external_lex_state = 5}, [4217] = {.lex_state = 19, .external_lex_state = 5}, [4218] = {.lex_state = 19, .external_lex_state = 5}, [4219] = {.lex_state = 18, .external_lex_state = 5}, [4220] = {.lex_state = 18, .external_lex_state = 5}, [4221] = {.lex_state = 18, .external_lex_state = 5}, [4222] = {.lex_state = 18, .external_lex_state = 5}, [4223] = {.lex_state = 18, .external_lex_state = 5}, [4224] = {.lex_state = 9, .external_lex_state = 2}, [4225] = {.lex_state = 18, .external_lex_state = 5}, [4226] = {.lex_state = 18, .external_lex_state = 5}, [4227] = {.lex_state = 18, .external_lex_state = 5}, [4228] = {.lex_state = 9, .external_lex_state = 2}, [4229] = {.lex_state = 9, .external_lex_state = 2}, [4230] = {.lex_state = 9, .external_lex_state = 2}, [4231] = {.lex_state = 18, .external_lex_state = 5}, [4232] = {.lex_state = 18, .external_lex_state = 5}, [4233] = {.lex_state = 18, .external_lex_state = 5}, [4234] = {.lex_state = 18, .external_lex_state = 5}, [4235] = {.lex_state = 18, .external_lex_state = 5}, [4236] = {.lex_state = 18, .external_lex_state = 5}, [4237] = {.lex_state = 18, .external_lex_state = 5}, [4238] = {.lex_state = 18, .external_lex_state = 5}, [4239] = {.lex_state = 18, .external_lex_state = 5}, [4240] = {.lex_state = 18, .external_lex_state = 5}, [4241] = {.lex_state = 18, .external_lex_state = 5}, [4242] = {.lex_state = 9, .external_lex_state = 2}, [4243] = {.lex_state = 18, .external_lex_state = 5}, [4244] = {.lex_state = 18, .external_lex_state = 5}, [4245] = {.lex_state = 9, .external_lex_state = 2}, [4246] = {.lex_state = 18, .external_lex_state = 5}, [4247] = {.lex_state = 18, .external_lex_state = 5}, [4248] = {.lex_state = 18, .external_lex_state = 5}, [4249] = {.lex_state = 18, .external_lex_state = 5}, [4250] = {.lex_state = 18, .external_lex_state = 5}, [4251] = {.lex_state = 18, .external_lex_state = 5}, [4252] = {.lex_state = 9, .external_lex_state = 2}, [4253] = {.lex_state = 18, .external_lex_state = 5}, [4254] = {.lex_state = 18, .external_lex_state = 5}, [4255] = {.lex_state = 18, .external_lex_state = 5}, [4256] = {.lex_state = 18, .external_lex_state = 5}, [4257] = {.lex_state = 18, .external_lex_state = 5}, [4258] = {.lex_state = 18, .external_lex_state = 5}, [4259] = {.lex_state = 18, .external_lex_state = 5}, [4260] = {.lex_state = 18, .external_lex_state = 5}, [4261] = {.lex_state = 9, .external_lex_state = 2}, [4262] = {.lex_state = 18, .external_lex_state = 5}, [4263] = {.lex_state = 18, .external_lex_state = 5}, [4264] = {.lex_state = 18, .external_lex_state = 5}, [4265] = {.lex_state = 18, .external_lex_state = 5}, [4266] = {.lex_state = 9, .external_lex_state = 2}, [4267] = {.lex_state = 18, .external_lex_state = 5}, [4268] = {.lex_state = 18, .external_lex_state = 5}, [4269] = {.lex_state = 9, .external_lex_state = 2}, [4270] = {.lex_state = 9, .external_lex_state = 2}, [4271] = {.lex_state = 9, .external_lex_state = 2}, [4272] = {.lex_state = 18, .external_lex_state = 5}, [4273] = {.lex_state = 18, .external_lex_state = 5}, [4274] = {.lex_state = 18, .external_lex_state = 5}, [4275] = {.lex_state = 18, .external_lex_state = 5}, [4276] = {.lex_state = 18, .external_lex_state = 5}, [4277] = {.lex_state = 18, .external_lex_state = 5}, [4278] = {.lex_state = 18, .external_lex_state = 5}, [4279] = {.lex_state = 18, .external_lex_state = 5}, [4280] = {.lex_state = 9, .external_lex_state = 2}, [4281] = {.lex_state = 18, .external_lex_state = 5}, [4282] = {.lex_state = 18, .external_lex_state = 5}, [4283] = {.lex_state = 18, .external_lex_state = 5}, [4284] = {.lex_state = 18, .external_lex_state = 5}, [4285] = {.lex_state = 18, .external_lex_state = 5}, [4286] = {.lex_state = 18, .external_lex_state = 5}, [4287] = {.lex_state = 18, .external_lex_state = 5}, [4288] = {.lex_state = 18, .external_lex_state = 5}, [4289] = {.lex_state = 18, .external_lex_state = 5}, [4290] = {.lex_state = 18, .external_lex_state = 5}, [4291] = {.lex_state = 18, .external_lex_state = 5}, [4292] = {.lex_state = 18, .external_lex_state = 5}, [4293] = {.lex_state = 18, .external_lex_state = 5}, [4294] = {.lex_state = 18, .external_lex_state = 5}, [4295] = {.lex_state = 18, .external_lex_state = 5}, [4296] = {.lex_state = 18, .external_lex_state = 5}, [4297] = {.lex_state = 18, .external_lex_state = 5}, [4298] = {.lex_state = 18, .external_lex_state = 5}, [4299] = {.lex_state = 18, .external_lex_state = 5}, [4300] = {.lex_state = 18, .external_lex_state = 5}, [4301] = {.lex_state = 18, .external_lex_state = 5}, [4302] = {.lex_state = 18, .external_lex_state = 5}, [4303] = {.lex_state = 18, .external_lex_state = 5}, [4304] = {.lex_state = 18, .external_lex_state = 5}, [4305] = {.lex_state = 18, .external_lex_state = 5}, [4306] = {.lex_state = 18, .external_lex_state = 5}, [4307] = {.lex_state = 18, .external_lex_state = 5}, [4308] = {.lex_state = 9, .external_lex_state = 2}, [4309] = {.lex_state = 9, .external_lex_state = 2}, [4310] = {.lex_state = 9, .external_lex_state = 2}, [4311] = {.lex_state = 9, .external_lex_state = 2}, [4312] = {.lex_state = 9, .external_lex_state = 2}, [4313] = {.lex_state = 9, .external_lex_state = 2}, [4314] = {.lex_state = 9, .external_lex_state = 2}, [4315] = {.lex_state = 9, .external_lex_state = 2}, [4316] = {.lex_state = 9, .external_lex_state = 2}, [4317] = {.lex_state = 9, .external_lex_state = 2}, [4318] = {.lex_state = 9, .external_lex_state = 2}, [4319] = {.lex_state = 9, .external_lex_state = 2}, [4320] = {.lex_state = 9, .external_lex_state = 2}, [4321] = {.lex_state = 9, .external_lex_state = 2}, [4322] = {.lex_state = 9, .external_lex_state = 2}, [4323] = {.lex_state = 9, .external_lex_state = 2}, [4324] = {.lex_state = 9, .external_lex_state = 2}, [4325] = {.lex_state = 9, .external_lex_state = 2}, [4326] = {.lex_state = 9, .external_lex_state = 2}, [4327] = {.lex_state = 9, .external_lex_state = 2}, [4328] = {.lex_state = 9, .external_lex_state = 2}, [4329] = {.lex_state = 9, .external_lex_state = 2}, [4330] = {.lex_state = 9, .external_lex_state = 2}, [4331] = {.lex_state = 9, .external_lex_state = 2}, [4332] = {.lex_state = 9, .external_lex_state = 2}, [4333] = {.lex_state = 9, .external_lex_state = 2}, [4334] = {.lex_state = 9, .external_lex_state = 2}, [4335] = {.lex_state = 9, .external_lex_state = 2}, [4336] = {.lex_state = 9, .external_lex_state = 2}, [4337] = {.lex_state = 9, .external_lex_state = 2}, [4338] = {.lex_state = 9, .external_lex_state = 2}, [4339] = {.lex_state = 9, .external_lex_state = 2}, [4340] = {.lex_state = 9, .external_lex_state = 2}, [4341] = {.lex_state = 9, .external_lex_state = 2}, [4342] = {.lex_state = 9, .external_lex_state = 2}, [4343] = {.lex_state = 9, .external_lex_state = 2}, [4344] = {.lex_state = 9, .external_lex_state = 2}, [4345] = {.lex_state = 9, .external_lex_state = 2}, [4346] = {.lex_state = 9, .external_lex_state = 2}, [4347] = {.lex_state = 9, .external_lex_state = 2}, [4348] = {.lex_state = 9, .external_lex_state = 2}, [4349] = {.lex_state = 9, .external_lex_state = 2}, [4350] = {.lex_state = 9, .external_lex_state = 2}, [4351] = {.lex_state = 9, .external_lex_state = 2}, [4352] = {.lex_state = 9, .external_lex_state = 2}, [4353] = {.lex_state = 9, .external_lex_state = 2}, [4354] = {.lex_state = 9, .external_lex_state = 2}, [4355] = {.lex_state = 9, .external_lex_state = 2}, [4356] = {.lex_state = 9, .external_lex_state = 2}, [4357] = {.lex_state = 9, .external_lex_state = 2}, [4358] = {.lex_state = 9, .external_lex_state = 2}, [4359] = {.lex_state = 9, .external_lex_state = 2}, [4360] = {.lex_state = 9, .external_lex_state = 2}, [4361] = {.lex_state = 9, .external_lex_state = 2}, [4362] = {.lex_state = 9, .external_lex_state = 2}, [4363] = {.lex_state = 9, .external_lex_state = 2}, [4364] = {.lex_state = 9, .external_lex_state = 2}, [4365] = {.lex_state = 9, .external_lex_state = 2}, [4366] = {.lex_state = 9, .external_lex_state = 2}, [4367] = {.lex_state = 9, .external_lex_state = 2}, [4368] = {.lex_state = 9, .external_lex_state = 2}, [4369] = {.lex_state = 9, .external_lex_state = 2}, [4370] = {.lex_state = 9, .external_lex_state = 2}, [4371] = {.lex_state = 9, .external_lex_state = 2}, [4372] = {.lex_state = 9, .external_lex_state = 2}, [4373] = {.lex_state = 9, .external_lex_state = 2}, [4374] = {.lex_state = 9, .external_lex_state = 2}, [4375] = {.lex_state = 9, .external_lex_state = 2}, [4376] = {.lex_state = 9, .external_lex_state = 2}, [4377] = {.lex_state = 9, .external_lex_state = 2}, [4378] = {.lex_state = 9, .external_lex_state = 2}, [4379] = {.lex_state = 9, .external_lex_state = 2}, [4380] = {.lex_state = 9, .external_lex_state = 2}, [4381] = {.lex_state = 9, .external_lex_state = 2}, [4382] = {.lex_state = 9, .external_lex_state = 2}, [4383] = {.lex_state = 9, .external_lex_state = 2}, [4384] = {.lex_state = 9, .external_lex_state = 2}, [4385] = {.lex_state = 9, .external_lex_state = 2}, [4386] = {.lex_state = 9, .external_lex_state = 2}, [4387] = {.lex_state = 9, .external_lex_state = 2}, [4388] = {.lex_state = 9, .external_lex_state = 2}, [4389] = {.lex_state = 9, .external_lex_state = 2}, [4390] = {.lex_state = 9, .external_lex_state = 2}, [4391] = {.lex_state = 9, .external_lex_state = 2}, [4392] = {.lex_state = 9, .external_lex_state = 2}, [4393] = {.lex_state = 9, .external_lex_state = 2}, [4394] = {.lex_state = 9, .external_lex_state = 2}, [4395] = {.lex_state = 9, .external_lex_state = 2}, [4396] = {.lex_state = 9, .external_lex_state = 2}, [4397] = {.lex_state = 9, .external_lex_state = 2}, [4398] = {.lex_state = 9, .external_lex_state = 2}, [4399] = {.lex_state = 9, .external_lex_state = 2}, [4400] = {.lex_state = 9, .external_lex_state = 2}, [4401] = {.lex_state = 9, .external_lex_state = 2}, [4402] = {.lex_state = 9, .external_lex_state = 2}, [4403] = {.lex_state = 9, .external_lex_state = 2}, [4404] = {.lex_state = 9, .external_lex_state = 2}, [4405] = {.lex_state = 9, .external_lex_state = 2}, [4406] = {.lex_state = 9, .external_lex_state = 2}, [4407] = {.lex_state = 9, .external_lex_state = 2}, [4408] = {.lex_state = 9, .external_lex_state = 2}, [4409] = {.lex_state = 9, .external_lex_state = 2}, [4410] = {.lex_state = 9, .external_lex_state = 2}, [4411] = {.lex_state = 9, .external_lex_state = 2}, [4412] = {.lex_state = 9, .external_lex_state = 2}, [4413] = {.lex_state = 9, .external_lex_state = 2}, [4414] = {.lex_state = 9, .external_lex_state = 2}, [4415] = {.lex_state = 9, .external_lex_state = 2}, [4416] = {.lex_state = 9, .external_lex_state = 2}, [4417] = {.lex_state = 9, .external_lex_state = 2}, [4418] = {.lex_state = 9, .external_lex_state = 2}, [4419] = {.lex_state = 9, .external_lex_state = 2}, [4420] = {.lex_state = 9, .external_lex_state = 2}, [4421] = {.lex_state = 9, .external_lex_state = 2}, [4422] = {.lex_state = 9, .external_lex_state = 2}, [4423] = {.lex_state = 9, .external_lex_state = 2}, [4424] = {.lex_state = 9, .external_lex_state = 2}, [4425] = {.lex_state = 9, .external_lex_state = 2}, [4426] = {.lex_state = 9, .external_lex_state = 2}, [4427] = {.lex_state = 9, .external_lex_state = 2}, [4428] = {.lex_state = 9, .external_lex_state = 2}, [4429] = {.lex_state = 9, .external_lex_state = 2}, [4430] = {.lex_state = 9, .external_lex_state = 2}, [4431] = {.lex_state = 9, .external_lex_state = 2}, [4432] = {.lex_state = 9, .external_lex_state = 2}, [4433] = {.lex_state = 9, .external_lex_state = 2}, [4434] = {.lex_state = 9, .external_lex_state = 2}, [4435] = {.lex_state = 9, .external_lex_state = 2}, [4436] = {.lex_state = 9, .external_lex_state = 2}, [4437] = {.lex_state = 9, .external_lex_state = 2}, [4438] = {.lex_state = 9, .external_lex_state = 2}, [4439] = {.lex_state = 9, .external_lex_state = 2}, [4440] = {.lex_state = 9, .external_lex_state = 2}, [4441] = {.lex_state = 9, .external_lex_state = 2}, [4442] = {.lex_state = 9, .external_lex_state = 2}, [4443] = {.lex_state = 9, .external_lex_state = 2}, [4444] = {.lex_state = 9, .external_lex_state = 2}, [4445] = {.lex_state = 9, .external_lex_state = 2}, [4446] = {.lex_state = 9, .external_lex_state = 2}, [4447] = {.lex_state = 9, .external_lex_state = 2}, [4448] = {.lex_state = 9, .external_lex_state = 2}, [4449] = {.lex_state = 9, .external_lex_state = 2}, [4450] = {.lex_state = 9, .external_lex_state = 2}, [4451] = {.lex_state = 9, .external_lex_state = 2}, [4452] = {.lex_state = 9, .external_lex_state = 2}, [4453] = {.lex_state = 9, .external_lex_state = 2}, [4454] = {.lex_state = 9, .external_lex_state = 2}, [4455] = {.lex_state = 9, .external_lex_state = 2}, [4456] = {.lex_state = 9, .external_lex_state = 2}, [4457] = {.lex_state = 9, .external_lex_state = 2}, [4458] = {.lex_state = 9, .external_lex_state = 2}, [4459] = {.lex_state = 9, .external_lex_state = 2}, [4460] = {.lex_state = 9, .external_lex_state = 2}, [4461] = {.lex_state = 9, .external_lex_state = 2}, [4462] = {.lex_state = 9, .external_lex_state = 2}, [4463] = {.lex_state = 9, .external_lex_state = 2}, [4464] = {.lex_state = 9, .external_lex_state = 2}, [4465] = {.lex_state = 9, .external_lex_state = 2}, [4466] = {.lex_state = 9, .external_lex_state = 2}, [4467] = {.lex_state = 9, .external_lex_state = 2}, [4468] = {.lex_state = 9, .external_lex_state = 2}, [4469] = {.lex_state = 9, .external_lex_state = 2}, [4470] = {.lex_state = 9, .external_lex_state = 2}, [4471] = {.lex_state = 9, .external_lex_state = 2}, [4472] = {.lex_state = 9, .external_lex_state = 2}, [4473] = {.lex_state = 9, .external_lex_state = 2}, [4474] = {.lex_state = 9, .external_lex_state = 2}, [4475] = {.lex_state = 9, .external_lex_state = 2}, [4476] = {.lex_state = 9, .external_lex_state = 2}, [4477] = {.lex_state = 9, .external_lex_state = 2}, [4478] = {.lex_state = 9, .external_lex_state = 2}, [4479] = {.lex_state = 9, .external_lex_state = 2}, [4480] = {.lex_state = 9, .external_lex_state = 2}, [4481] = {.lex_state = 9, .external_lex_state = 2}, [4482] = {.lex_state = 9, .external_lex_state = 2}, [4483] = {.lex_state = 9, .external_lex_state = 2}, [4484] = {.lex_state = 9, .external_lex_state = 2}, [4485] = {.lex_state = 9, .external_lex_state = 2}, [4486] = {.lex_state = 9, .external_lex_state = 2}, [4487] = {.lex_state = 9, .external_lex_state = 2}, [4488] = {.lex_state = 9, .external_lex_state = 2}, [4489] = {.lex_state = 9, .external_lex_state = 2}, [4490] = {.lex_state = 9, .external_lex_state = 2}, [4491] = {.lex_state = 9, .external_lex_state = 2}, [4492] = {.lex_state = 9, .external_lex_state = 2}, [4493] = {.lex_state = 9, .external_lex_state = 2}, [4494] = {.lex_state = 9, .external_lex_state = 2}, [4495] = {.lex_state = 9, .external_lex_state = 2}, [4496] = {.lex_state = 9, .external_lex_state = 2}, [4497] = {.lex_state = 9, .external_lex_state = 2}, [4498] = {.lex_state = 9, .external_lex_state = 2}, [4499] = {.lex_state = 9, .external_lex_state = 2}, [4500] = {.lex_state = 9, .external_lex_state = 2}, [4501] = {.lex_state = 9, .external_lex_state = 2}, [4502] = {.lex_state = 9, .external_lex_state = 2}, [4503] = {.lex_state = 9, .external_lex_state = 2}, [4504] = {.lex_state = 9, .external_lex_state = 2}, [4505] = {.lex_state = 9, .external_lex_state = 2}, [4506] = {.lex_state = 9, .external_lex_state = 2}, [4507] = {.lex_state = 9, .external_lex_state = 2}, [4508] = {.lex_state = 9, .external_lex_state = 2}, [4509] = {.lex_state = 9, .external_lex_state = 2}, [4510] = {.lex_state = 9, .external_lex_state = 2}, [4511] = {.lex_state = 9, .external_lex_state = 2}, [4512] = {.lex_state = 9, .external_lex_state = 2}, [4513] = {.lex_state = 9, .external_lex_state = 2}, [4514] = {.lex_state = 9, .external_lex_state = 2}, [4515] = {.lex_state = 9, .external_lex_state = 2}, [4516] = {.lex_state = 9, .external_lex_state = 2}, [4517] = {.lex_state = 9, .external_lex_state = 2}, [4518] = {.lex_state = 9, .external_lex_state = 2}, [4519] = {.lex_state = 9, .external_lex_state = 2}, [4520] = {.lex_state = 9, .external_lex_state = 2}, [4521] = {.lex_state = 9, .external_lex_state = 2}, [4522] = {.lex_state = 9, .external_lex_state = 2}, [4523] = {.lex_state = 9, .external_lex_state = 2}, [4524] = {.lex_state = 9, .external_lex_state = 2}, [4525] = {.lex_state = 9, .external_lex_state = 2}, [4526] = {.lex_state = 9, .external_lex_state = 2}, [4527] = {.lex_state = 9, .external_lex_state = 2}, [4528] = {.lex_state = 9, .external_lex_state = 2}, [4529] = {.lex_state = 9, .external_lex_state = 2}, [4530] = {.lex_state = 9, .external_lex_state = 2}, [4531] = {.lex_state = 9, .external_lex_state = 2}, [4532] = {.lex_state = 9, .external_lex_state = 2}, [4533] = {.lex_state = 9, .external_lex_state = 2}, [4534] = {.lex_state = 9, .external_lex_state = 2}, [4535] = {.lex_state = 9, .external_lex_state = 2}, [4536] = {.lex_state = 9, .external_lex_state = 2}, [4537] = {.lex_state = 9, .external_lex_state = 2}, [4538] = {.lex_state = 9, .external_lex_state = 2}, [4539] = {.lex_state = 9, .external_lex_state = 2}, [4540] = {.lex_state = 9, .external_lex_state = 2}, [4541] = {.lex_state = 9, .external_lex_state = 2}, [4542] = {.lex_state = 9, .external_lex_state = 2}, [4543] = {.lex_state = 9, .external_lex_state = 2}, [4544] = {.lex_state = 9, .external_lex_state = 2}, [4545] = {.lex_state = 9, .external_lex_state = 2}, [4546] = {.lex_state = 9, .external_lex_state = 2}, [4547] = {.lex_state = 9, .external_lex_state = 2}, [4548] = {.lex_state = 9, .external_lex_state = 2}, [4549] = {.lex_state = 9, .external_lex_state = 2}, [4550] = {.lex_state = 9, .external_lex_state = 2}, [4551] = {.lex_state = 9, .external_lex_state = 2}, [4552] = {.lex_state = 9, .external_lex_state = 2}, [4553] = {.lex_state = 9, .external_lex_state = 2}, [4554] = {.lex_state = 9, .external_lex_state = 2}, [4555] = {.lex_state = 9, .external_lex_state = 2}, [4556] = {.lex_state = 9, .external_lex_state = 2}, [4557] = {.lex_state = 9, .external_lex_state = 2}, [4558] = {.lex_state = 9, .external_lex_state = 2}, [4559] = {.lex_state = 9, .external_lex_state = 2}, [4560] = {.lex_state = 9, .external_lex_state = 2}, [4561] = {.lex_state = 9, .external_lex_state = 2}, [4562] = {.lex_state = 9, .external_lex_state = 2}, [4563] = {.lex_state = 9, .external_lex_state = 2}, [4564] = {.lex_state = 9, .external_lex_state = 2}, [4565] = {.lex_state = 9, .external_lex_state = 2}, [4566] = {.lex_state = 9, .external_lex_state = 2}, [4567] = {.lex_state = 9, .external_lex_state = 2}, [4568] = {.lex_state = 9, .external_lex_state = 2}, [4569] = {.lex_state = 9, .external_lex_state = 2}, [4570] = {.lex_state = 9, .external_lex_state = 2}, [4571] = {.lex_state = 9, .external_lex_state = 2}, [4572] = {.lex_state = 9, .external_lex_state = 2}, [4573] = {.lex_state = 9, .external_lex_state = 2}, [4574] = {.lex_state = 9, .external_lex_state = 2}, [4575] = {.lex_state = 9, .external_lex_state = 2}, [4576] = {.lex_state = 9, .external_lex_state = 2}, [4577] = {.lex_state = 9, .external_lex_state = 2}, [4578] = {.lex_state = 9, .external_lex_state = 2}, [4579] = {.lex_state = 9, .external_lex_state = 2}, [4580] = {.lex_state = 9, .external_lex_state = 2}, [4581] = {.lex_state = 9, .external_lex_state = 2}, [4582] = {.lex_state = 9, .external_lex_state = 2}, [4583] = {.lex_state = 9, .external_lex_state = 2}, [4584] = {.lex_state = 9, .external_lex_state = 2}, [4585] = {.lex_state = 9, .external_lex_state = 2}, [4586] = {.lex_state = 9, .external_lex_state = 2}, [4587] = {.lex_state = 9, .external_lex_state = 2}, [4588] = {.lex_state = 9, .external_lex_state = 2}, [4589] = {.lex_state = 9, .external_lex_state = 2}, [4590] = {.lex_state = 9, .external_lex_state = 2}, [4591] = {.lex_state = 9, .external_lex_state = 2}, [4592] = {.lex_state = 9, .external_lex_state = 2}, [4593] = {.lex_state = 9, .external_lex_state = 2}, [4594] = {.lex_state = 9, .external_lex_state = 2}, [4595] = {.lex_state = 9, .external_lex_state = 2}, [4596] = {.lex_state = 9, .external_lex_state = 2}, [4597] = {.lex_state = 10, .external_lex_state = 2}, [4598] = {.lex_state = 10, .external_lex_state = 2}, [4599] = {.lex_state = 10, .external_lex_state = 2}, [4600] = {.lex_state = 10, .external_lex_state = 2}, [4601] = {.lex_state = 10, .external_lex_state = 2}, [4602] = {.lex_state = 10, .external_lex_state = 2}, [4603] = {.lex_state = 10, .external_lex_state = 2}, [4604] = {.lex_state = 10, .external_lex_state = 2}, [4605] = {.lex_state = 10, .external_lex_state = 2}, [4606] = {.lex_state = 10, .external_lex_state = 2}, [4607] = {.lex_state = 10, .external_lex_state = 2}, [4608] = {.lex_state = 10, .external_lex_state = 2}, [4609] = {.lex_state = 10, .external_lex_state = 2}, [4610] = {.lex_state = 10, .external_lex_state = 2}, [4611] = {.lex_state = 10, .external_lex_state = 2}, [4612] = {.lex_state = 10, .external_lex_state = 2}, [4613] = {.lex_state = 10, .external_lex_state = 2}, [4614] = {.lex_state = 10, .external_lex_state = 2}, [4615] = {.lex_state = 10, .external_lex_state = 2}, [4616] = {.lex_state = 10, .external_lex_state = 2}, [4617] = {.lex_state = 10, .external_lex_state = 2}, [4618] = {.lex_state = 10, .external_lex_state = 2}, [4619] = {.lex_state = 10, .external_lex_state = 2}, [4620] = {.lex_state = 9, .external_lex_state = 2}, [4621] = {.lex_state = 9, .external_lex_state = 2}, [4622] = {.lex_state = 9, .external_lex_state = 2}, [4623] = {.lex_state = 9, .external_lex_state = 2}, [4624] = {.lex_state = 9, .external_lex_state = 2}, [4625] = {.lex_state = 9, .external_lex_state = 2}, [4626] = {.lex_state = 10, .external_lex_state = 2}, [4627] = {.lex_state = 8, .external_lex_state = 2}, [4628] = {.lex_state = 8, .external_lex_state = 2}, [4629] = {.lex_state = 9, .external_lex_state = 2}, [4630] = {.lex_state = 8, .external_lex_state = 2}, [4631] = {.lex_state = 9, .external_lex_state = 2}, [4632] = {.lex_state = 9, .external_lex_state = 2}, [4633] = {.lex_state = 9, .external_lex_state = 2}, [4634] = {.lex_state = 9, .external_lex_state = 2}, [4635] = {.lex_state = 9, .external_lex_state = 2}, [4636] = {.lex_state = 9, .external_lex_state = 2}, [4637] = {.lex_state = 9, .external_lex_state = 2}, [4638] = {.lex_state = 9, .external_lex_state = 2}, [4639] = {.lex_state = 9, .external_lex_state = 2}, [4640] = {.lex_state = 10, .external_lex_state = 2}, [4641] = {.lex_state = 9, .external_lex_state = 2}, [4642] = {.lex_state = 8, .external_lex_state = 2}, [4643] = {.lex_state = 9, .external_lex_state = 2}, [4644] = {.lex_state = 10, .external_lex_state = 2}, [4645] = {.lex_state = 10, .external_lex_state = 2}, [4646] = {.lex_state = 10, .external_lex_state = 2}, [4647] = {.lex_state = 10, .external_lex_state = 2}, [4648] = {.lex_state = 10, .external_lex_state = 2}, [4649] = {.lex_state = 10, .external_lex_state = 2}, [4650] = {.lex_state = 9, .external_lex_state = 2}, [4651] = {.lex_state = 9, .external_lex_state = 2}, [4652] = {.lex_state = 10, .external_lex_state = 2}, [4653] = {.lex_state = 10, .external_lex_state = 2}, [4654] = {.lex_state = 10, .external_lex_state = 2}, [4655] = {.lex_state = 10, .external_lex_state = 2}, [4656] = {.lex_state = 10, .external_lex_state = 2}, [4657] = {.lex_state = 10, .external_lex_state = 2}, [4658] = {.lex_state = 10, .external_lex_state = 2}, [4659] = {.lex_state = 10, .external_lex_state = 2}, [4660] = {.lex_state = 10, .external_lex_state = 2}, [4661] = {.lex_state = 10, .external_lex_state = 2}, [4662] = {.lex_state = 10, .external_lex_state = 2}, [4663] = {.lex_state = 10, .external_lex_state = 2}, [4664] = {.lex_state = 10, .external_lex_state = 2}, [4665] = {.lex_state = 9, .external_lex_state = 2}, [4666] = {.lex_state = 10, .external_lex_state = 2}, [4667] = {.lex_state = 9, .external_lex_state = 2}, [4668] = {.lex_state = 9, .external_lex_state = 2}, [4669] = {.lex_state = 10, .external_lex_state = 2}, [4670] = {.lex_state = 9, .external_lex_state = 2}, [4671] = {.lex_state = 9, .external_lex_state = 2}, [4672] = {.lex_state = 9, .external_lex_state = 2}, [4673] = {.lex_state = 10, .external_lex_state = 2}, [4674] = {.lex_state = 9, .external_lex_state = 2}, [4675] = {.lex_state = 9, .external_lex_state = 2}, [4676] = {.lex_state = 9, .external_lex_state = 2}, [4677] = {.lex_state = 9, .external_lex_state = 2}, [4678] = {.lex_state = 9, .external_lex_state = 2}, [4679] = {.lex_state = 9, .external_lex_state = 2}, [4680] = {.lex_state = 9, .external_lex_state = 2}, [4681] = {.lex_state = 9, .external_lex_state = 2}, [4682] = {.lex_state = 9, .external_lex_state = 2}, [4683] = {.lex_state = 9, .external_lex_state = 2}, [4684] = {.lex_state = 9, .external_lex_state = 2}, [4685] = {.lex_state = 9, .external_lex_state = 2}, [4686] = {.lex_state = 9, .external_lex_state = 2}, [4687] = {.lex_state = 9, .external_lex_state = 2}, [4688] = {.lex_state = 9, .external_lex_state = 2}, [4689] = {.lex_state = 9, .external_lex_state = 2}, [4690] = {.lex_state = 9, .external_lex_state = 2}, [4691] = {.lex_state = 9, .external_lex_state = 2}, [4692] = {.lex_state = 28, .external_lex_state = 2}, [4693] = {.lex_state = 9, .external_lex_state = 2}, [4694] = {.lex_state = 9, .external_lex_state = 2}, [4695] = {.lex_state = 9, .external_lex_state = 2}, [4696] = {.lex_state = 9, .external_lex_state = 2}, [4697] = {.lex_state = 9, .external_lex_state = 2}, [4698] = {.lex_state = 9, .external_lex_state = 2}, [4699] = {.lex_state = 10, .external_lex_state = 2}, [4700] = {.lex_state = 9, .external_lex_state = 2}, [4701] = {.lex_state = 9, .external_lex_state = 2}, [4702] = {.lex_state = 9, .external_lex_state = 2}, [4703] = {.lex_state = 9, .external_lex_state = 2}, [4704] = {.lex_state = 9, .external_lex_state = 2}, [4705] = {.lex_state = 9, .external_lex_state = 2}, [4706] = {.lex_state = 9, .external_lex_state = 2}, [4707] = {.lex_state = 9, .external_lex_state = 2}, [4708] = {.lex_state = 9, .external_lex_state = 2}, [4709] = {.lex_state = 9, .external_lex_state = 2}, [4710] = {.lex_state = 9, .external_lex_state = 2}, [4711] = {.lex_state = 9, .external_lex_state = 2}, [4712] = {.lex_state = 9, .external_lex_state = 2}, [4713] = {.lex_state = 9, .external_lex_state = 2}, [4714] = {.lex_state = 9, .external_lex_state = 2}, [4715] = {.lex_state = 9, .external_lex_state = 2}, [4716] = {.lex_state = 9, .external_lex_state = 2}, [4717] = {.lex_state = 9, .external_lex_state = 2}, [4718] = {.lex_state = 9, .external_lex_state = 2}, [4719] = {.lex_state = 9, .external_lex_state = 2}, [4720] = {.lex_state = 9, .external_lex_state = 2}, [4721] = {.lex_state = 9, .external_lex_state = 2}, [4722] = {.lex_state = 9, .external_lex_state = 2}, [4723] = {.lex_state = 9, .external_lex_state = 2}, [4724] = {.lex_state = 9, .external_lex_state = 2}, [4725] = {.lex_state = 9, .external_lex_state = 2}, [4726] = {.lex_state = 9, .external_lex_state = 2}, [4727] = {.lex_state = 9, .external_lex_state = 2}, [4728] = {.lex_state = 9, .external_lex_state = 2}, [4729] = {.lex_state = 9, .external_lex_state = 2}, [4730] = {.lex_state = 9, .external_lex_state = 2}, [4731] = {.lex_state = 9, .external_lex_state = 2}, [4732] = {.lex_state = 9, .external_lex_state = 2}, [4733] = {.lex_state = 9, .external_lex_state = 2}, [4734] = {.lex_state = 9, .external_lex_state = 2}, [4735] = {.lex_state = 9, .external_lex_state = 2}, [4736] = {.lex_state = 9, .external_lex_state = 2}, [4737] = {.lex_state = 9, .external_lex_state = 2}, [4738] = {.lex_state = 9, .external_lex_state = 2}, [4739] = {.lex_state = 9, .external_lex_state = 2}, [4740] = {.lex_state = 9, .external_lex_state = 2}, [4741] = {.lex_state = 9, .external_lex_state = 2}, [4742] = {.lex_state = 9, .external_lex_state = 2}, [4743] = {.lex_state = 9, .external_lex_state = 2}, [4744] = {.lex_state = 9, .external_lex_state = 2}, [4745] = {.lex_state = 9, .external_lex_state = 2}, [4746] = {.lex_state = 9, .external_lex_state = 2}, [4747] = {.lex_state = 9, .external_lex_state = 2}, [4748] = {.lex_state = 9, .external_lex_state = 2}, [4749] = {.lex_state = 9, .external_lex_state = 2}, [4750] = {.lex_state = 9, .external_lex_state = 2}, [4751] = {.lex_state = 9, .external_lex_state = 2}, [4752] = {.lex_state = 9, .external_lex_state = 2}, [4753] = {.lex_state = 9, .external_lex_state = 2}, [4754] = {.lex_state = 10, .external_lex_state = 2}, [4755] = {.lex_state = 9, .external_lex_state = 2}, [4756] = {.lex_state = 9, .external_lex_state = 2}, [4757] = {.lex_state = 9, .external_lex_state = 2}, [4758] = {.lex_state = 9, .external_lex_state = 2}, [4759] = {.lex_state = 9, .external_lex_state = 2}, [4760] = {.lex_state = 9, .external_lex_state = 2}, [4761] = {.lex_state = 9, .external_lex_state = 2}, [4762] = {.lex_state = 9, .external_lex_state = 2}, [4763] = {.lex_state = 9, .external_lex_state = 2}, [4764] = {.lex_state = 9, .external_lex_state = 2}, [4765] = {.lex_state = 9, .external_lex_state = 2}, [4766] = {.lex_state = 9, .external_lex_state = 2}, [4767] = {.lex_state = 10, .external_lex_state = 2}, [4768] = {.lex_state = 9, .external_lex_state = 2}, [4769] = {.lex_state = 9, .external_lex_state = 2}, [4770] = {.lex_state = 9, .external_lex_state = 2}, [4771] = {.lex_state = 10, .external_lex_state = 2}, [4772] = {.lex_state = 9, .external_lex_state = 2}, [4773] = {.lex_state = 9, .external_lex_state = 2}, [4774] = {.lex_state = 9, .external_lex_state = 2}, [4775] = {.lex_state = 9, .external_lex_state = 2}, [4776] = {.lex_state = 9, .external_lex_state = 2}, [4777] = {.lex_state = 9, .external_lex_state = 2}, [4778] = {.lex_state = 9, .external_lex_state = 2}, [4779] = {.lex_state = 9, .external_lex_state = 2}, [4780] = {.lex_state = 9, .external_lex_state = 2}, [4781] = {.lex_state = 9, .external_lex_state = 2}, [4782] = {.lex_state = 9, .external_lex_state = 2}, [4783] = {.lex_state = 9, .external_lex_state = 2}, [4784] = {.lex_state = 9, .external_lex_state = 2}, [4785] = {.lex_state = 9, .external_lex_state = 2}, [4786] = {.lex_state = 9, .external_lex_state = 2}, [4787] = {.lex_state = 9, .external_lex_state = 2}, [4788] = {.lex_state = 9, .external_lex_state = 2}, [4789] = {.lex_state = 9, .external_lex_state = 2}, [4790] = {.lex_state = 9, .external_lex_state = 2}, [4791] = {.lex_state = 9, .external_lex_state = 2}, [4792] = {.lex_state = 9, .external_lex_state = 2}, [4793] = {.lex_state = 9, .external_lex_state = 2}, [4794] = {.lex_state = 9, .external_lex_state = 2}, [4795] = {.lex_state = 9, .external_lex_state = 2}, [4796] = {.lex_state = 9, .external_lex_state = 2}, [4797] = {.lex_state = 9, .external_lex_state = 2}, [4798] = {.lex_state = 9, .external_lex_state = 2}, [4799] = {.lex_state = 9, .external_lex_state = 2}, [4800] = {.lex_state = 9, .external_lex_state = 2}, [4801] = {.lex_state = 9, .external_lex_state = 2}, [4802] = {.lex_state = 9, .external_lex_state = 2}, [4803] = {.lex_state = 9, .external_lex_state = 2}, [4804] = {.lex_state = 9, .external_lex_state = 2}, [4805] = {.lex_state = 9, .external_lex_state = 2}, [4806] = {.lex_state = 9, .external_lex_state = 2}, [4807] = {.lex_state = 9, .external_lex_state = 2}, [4808] = {.lex_state = 9, .external_lex_state = 2}, [4809] = {.lex_state = 9, .external_lex_state = 2}, [4810] = {.lex_state = 9, .external_lex_state = 2}, [4811] = {.lex_state = 9, .external_lex_state = 2}, [4812] = {.lex_state = 9, .external_lex_state = 2}, [4813] = {.lex_state = 9, .external_lex_state = 2}, [4814] = {.lex_state = 9, .external_lex_state = 2}, [4815] = {.lex_state = 9, .external_lex_state = 2}, [4816] = {.lex_state = 20, .external_lex_state = 2}, [4817] = {.lex_state = 9, .external_lex_state = 2}, [4818] = {.lex_state = 9, .external_lex_state = 2}, [4819] = {.lex_state = 9, .external_lex_state = 2}, [4820] = {.lex_state = 20, .external_lex_state = 2}, [4821] = {.lex_state = 9, .external_lex_state = 2}, [4822] = {.lex_state = 8, .external_lex_state = 2}, [4823] = {.lex_state = 9, .external_lex_state = 2}, [4824] = {.lex_state = 9, .external_lex_state = 2}, [4825] = {.lex_state = 20, .external_lex_state = 2}, [4826] = {.lex_state = 9, .external_lex_state = 2}, [4827] = {.lex_state = 8, .external_lex_state = 2}, [4828] = {.lex_state = 9, .external_lex_state = 2}, [4829] = {.lex_state = 9, .external_lex_state = 2}, [4830] = {.lex_state = 9, .external_lex_state = 2}, [4831] = {.lex_state = 9, .external_lex_state = 2}, [4832] = {.lex_state = 9, .external_lex_state = 2}, [4833] = {.lex_state = 9, .external_lex_state = 2}, [4834] = {.lex_state = 9, .external_lex_state = 2}, [4835] = {.lex_state = 9, .external_lex_state = 2}, [4836] = {.lex_state = 9, .external_lex_state = 2}, [4837] = {.lex_state = 9, .external_lex_state = 2}, [4838] = {.lex_state = 20, .external_lex_state = 2}, [4839] = {.lex_state = 9, .external_lex_state = 2}, [4840] = {.lex_state = 9, .external_lex_state = 2}, [4841] = {.lex_state = 9, .external_lex_state = 2}, [4842] = {.lex_state = 9, .external_lex_state = 2}, [4843] = {.lex_state = 9, .external_lex_state = 2}, [4844] = {.lex_state = 9, .external_lex_state = 2}, [4845] = {.lex_state = 8, .external_lex_state = 2}, [4846] = {.lex_state = 20, .external_lex_state = 2}, [4847] = {.lex_state = 9, .external_lex_state = 2}, [4848] = {.lex_state = 9, .external_lex_state = 2}, [4849] = {.lex_state = 9, .external_lex_state = 2}, [4850] = {.lex_state = 9, .external_lex_state = 2}, [4851] = {.lex_state = 9, .external_lex_state = 2}, [4852] = {.lex_state = 9, .external_lex_state = 2}, [4853] = {.lex_state = 8, .external_lex_state = 2}, [4854] = {.lex_state = 9, .external_lex_state = 2}, [4855] = {.lex_state = 9, .external_lex_state = 2}, [4856] = {.lex_state = 9, .external_lex_state = 2}, [4857] = {.lex_state = 9, .external_lex_state = 2}, [4858] = {.lex_state = 9, .external_lex_state = 2}, [4859] = {.lex_state = 9, .external_lex_state = 2}, [4860] = {.lex_state = 9, .external_lex_state = 2}, [4861] = {.lex_state = 9, .external_lex_state = 2}, [4862] = {.lex_state = 20, .external_lex_state = 2}, [4863] = {.lex_state = 9, .external_lex_state = 2}, [4864] = {.lex_state = 9, .external_lex_state = 2}, [4865] = {.lex_state = 9, .external_lex_state = 2}, [4866] = {.lex_state = 9, .external_lex_state = 2}, [4867] = {.lex_state = 9, .external_lex_state = 2}, [4868] = {.lex_state = 9, .external_lex_state = 2}, [4869] = {.lex_state = 20, .external_lex_state = 2}, [4870] = {.lex_state = 20, .external_lex_state = 2}, [4871] = {.lex_state = 9, .external_lex_state = 2}, [4872] = {.lex_state = 20, .external_lex_state = 2}, [4873] = {.lex_state = 9, .external_lex_state = 2}, [4874] = {.lex_state = 9, .external_lex_state = 2}, [4875] = {.lex_state = 9, .external_lex_state = 2}, [4876] = {.lex_state = 8, .external_lex_state = 2}, [4877] = {.lex_state = 20, .external_lex_state = 2}, [4878] = {.lex_state = 20, .external_lex_state = 2}, [4879] = {.lex_state = 9, .external_lex_state = 2}, [4880] = {.lex_state = 9, .external_lex_state = 2}, [4881] = {.lex_state = 9, .external_lex_state = 2}, [4882] = {.lex_state = 9, .external_lex_state = 2}, [4883] = {.lex_state = 9, .external_lex_state = 2}, [4884] = {.lex_state = 9, .external_lex_state = 2}, [4885] = {.lex_state = 9, .external_lex_state = 2}, [4886] = {.lex_state = 20, .external_lex_state = 2}, [4887] = {.lex_state = 9, .external_lex_state = 2}, [4888] = {.lex_state = 20, .external_lex_state = 2}, [4889] = {.lex_state = 9, .external_lex_state = 2}, [4890] = {.lex_state = 9, .external_lex_state = 2}, [4891] = {.lex_state = 20, .external_lex_state = 2}, [4892] = {.lex_state = 9, .external_lex_state = 2}, [4893] = {.lex_state = 9, .external_lex_state = 2}, [4894] = {.lex_state = 9, .external_lex_state = 2}, [4895] = {.lex_state = 9, .external_lex_state = 2}, [4896] = {.lex_state = 8, .external_lex_state = 2}, [4897] = {.lex_state = 9, .external_lex_state = 2}, [4898] = {.lex_state = 9, .external_lex_state = 2}, [4899] = {.lex_state = 9, .external_lex_state = 2}, [4900] = {.lex_state = 20, .external_lex_state = 2}, [4901] = {.lex_state = 20, .external_lex_state = 2}, [4902] = {.lex_state = 9, .external_lex_state = 2}, [4903] = {.lex_state = 9, .external_lex_state = 2}, [4904] = {.lex_state = 9, .external_lex_state = 2}, [4905] = {.lex_state = 9, .external_lex_state = 2}, [4906] = {.lex_state = 9, .external_lex_state = 2}, [4907] = {.lex_state = 20, .external_lex_state = 2}, [4908] = {.lex_state = 9, .external_lex_state = 2}, [4909] = {.lex_state = 9, .external_lex_state = 2}, [4910] = {.lex_state = 8, .external_lex_state = 2}, [4911] = {.lex_state = 9, .external_lex_state = 2}, [4912] = {.lex_state = 9, .external_lex_state = 2}, [4913] = {.lex_state = 9, .external_lex_state = 2}, [4914] = {.lex_state = 9, .external_lex_state = 2}, [4915] = {.lex_state = 8, .external_lex_state = 2}, [4916] = {.lex_state = 20, .external_lex_state = 2}, [4917] = {.lex_state = 9, .external_lex_state = 2}, [4918] = {.lex_state = 20, .external_lex_state = 2}, [4919] = {.lex_state = 9, .external_lex_state = 2}, [4920] = {.lex_state = 8, .external_lex_state = 2}, [4921] = {.lex_state = 9, .external_lex_state = 2}, [4922] = {.lex_state = 9, .external_lex_state = 2}, [4923] = {.lex_state = 9, .external_lex_state = 2}, [4924] = {.lex_state = 9, .external_lex_state = 2}, [4925] = {.lex_state = 9, .external_lex_state = 2}, [4926] = {.lex_state = 9, .external_lex_state = 2}, [4927] = {.lex_state = 9, .external_lex_state = 2}, [4928] = {.lex_state = 9, .external_lex_state = 2}, [4929] = {.lex_state = 9, .external_lex_state = 2}, [4930] = {.lex_state = 9, .external_lex_state = 2}, [4931] = {.lex_state = 20, .external_lex_state = 2}, [4932] = {.lex_state = 9, .external_lex_state = 2}, [4933] = {.lex_state = 9, .external_lex_state = 2}, [4934] = {.lex_state = 9, .external_lex_state = 2}, [4935] = {.lex_state = 9, .external_lex_state = 2}, [4936] = {.lex_state = 9, .external_lex_state = 2}, [4937] = {.lex_state = 9, .external_lex_state = 2}, [4938] = {.lex_state = 9, .external_lex_state = 2}, [4939] = {.lex_state = 9, .external_lex_state = 2}, [4940] = {.lex_state = 8, .external_lex_state = 2}, [4941] = {.lex_state = 9, .external_lex_state = 2}, [4942] = {.lex_state = 9, .external_lex_state = 2}, [4943] = {.lex_state = 9, .external_lex_state = 2}, [4944] = {.lex_state = 9, .external_lex_state = 2}, [4945] = {.lex_state = 8, .external_lex_state = 2}, [4946] = {.lex_state = 9, .external_lex_state = 2}, [4947] = {.lex_state = 20, .external_lex_state = 2}, [4948] = {.lex_state = 20, .external_lex_state = 2}, [4949] = {.lex_state = 9, .external_lex_state = 2}, [4950] = {.lex_state = 9, .external_lex_state = 2}, [4951] = {.lex_state = 9, .external_lex_state = 2}, [4952] = {.lex_state = 9, .external_lex_state = 2}, [4953] = {.lex_state = 8, .external_lex_state = 2}, [4954] = {.lex_state = 9, .external_lex_state = 2}, [4955] = {.lex_state = 20, .external_lex_state = 2}, [4956] = {.lex_state = 9, .external_lex_state = 2}, [4957] = {.lex_state = 9, .external_lex_state = 2}, [4958] = {.lex_state = 9, .external_lex_state = 2}, [4959] = {.lex_state = 9, .external_lex_state = 2}, [4960] = {.lex_state = 9, .external_lex_state = 2}, [4961] = {.lex_state = 9, .external_lex_state = 2}, [4962] = {.lex_state = 8, .external_lex_state = 2}, [4963] = {.lex_state = 9, .external_lex_state = 2}, [4964] = {.lex_state = 9, .external_lex_state = 2}, [4965] = {.lex_state = 9, .external_lex_state = 2}, [4966] = {.lex_state = 20, .external_lex_state = 2}, [4967] = {.lex_state = 9, .external_lex_state = 2}, [4968] = {.lex_state = 20, .external_lex_state = 2}, [4969] = {.lex_state = 20, .external_lex_state = 2}, [4970] = {.lex_state = 9, .external_lex_state = 2}, [4971] = {.lex_state = 9, .external_lex_state = 2}, [4972] = {.lex_state = 9, .external_lex_state = 2}, [4973] = {.lex_state = 20, .external_lex_state = 2}, [4974] = {.lex_state = 9, .external_lex_state = 2}, [4975] = {.lex_state = 9, .external_lex_state = 2}, [4976] = {.lex_state = 9, .external_lex_state = 2}, [4977] = {.lex_state = 9, .external_lex_state = 2}, [4978] = {.lex_state = 8, .external_lex_state = 2}, [4979] = {.lex_state = 8, .external_lex_state = 2}, [4980] = {.lex_state = 9, .external_lex_state = 2}, [4981] = {.lex_state = 9, .external_lex_state = 2}, [4982] = {.lex_state = 9, .external_lex_state = 2}, [4983] = {.lex_state = 9, .external_lex_state = 2}, [4984] = {.lex_state = 9, .external_lex_state = 2}, [4985] = {.lex_state = 9, .external_lex_state = 2}, [4986] = {.lex_state = 9, .external_lex_state = 2}, [4987] = {.lex_state = 9, .external_lex_state = 2}, [4988] = {.lex_state = 9, .external_lex_state = 2}, [4989] = {.lex_state = 9, .external_lex_state = 2}, [4990] = {.lex_state = 9, .external_lex_state = 2}, [4991] = {.lex_state = 9, .external_lex_state = 2}, [4992] = {.lex_state = 9, .external_lex_state = 2}, [4993] = {.lex_state = 9, .external_lex_state = 2}, [4994] = {.lex_state = 9, .external_lex_state = 2}, [4995] = {.lex_state = 9, .external_lex_state = 2}, [4996] = {.lex_state = 9, .external_lex_state = 2}, [4997] = {.lex_state = 9, .external_lex_state = 2}, [4998] = {.lex_state = 9, .external_lex_state = 2}, [4999] = {.lex_state = 9, .external_lex_state = 2}, [5000] = {.lex_state = 9, .external_lex_state = 2}, [5001] = {.lex_state = 9, .external_lex_state = 2}, [5002] = {.lex_state = 9, .external_lex_state = 2}, [5003] = {.lex_state = 9, .external_lex_state = 2}, [5004] = {.lex_state = 9, .external_lex_state = 2}, [5005] = {.lex_state = 9, .external_lex_state = 2}, [5006] = {.lex_state = 9, .external_lex_state = 2}, [5007] = {.lex_state = 9, .external_lex_state = 2}, [5008] = {.lex_state = 9, .external_lex_state = 2}, [5009] = {.lex_state = 8, .external_lex_state = 2}, [5010] = {.lex_state = 9, .external_lex_state = 2}, [5011] = {.lex_state = 9, .external_lex_state = 2}, [5012] = {.lex_state = 8, .external_lex_state = 2}, [5013] = {.lex_state = 9, .external_lex_state = 2}, [5014] = {.lex_state = 9, .external_lex_state = 2}, [5015] = {.lex_state = 9, .external_lex_state = 2}, [5016] = {.lex_state = 9, .external_lex_state = 2}, [5017] = {.lex_state = 10, .external_lex_state = 2}, [5018] = {.lex_state = 8, .external_lex_state = 2}, [5019] = {.lex_state = 8, .external_lex_state = 2}, [5020] = {.lex_state = 9, .external_lex_state = 2}, [5021] = {.lex_state = 8, .external_lex_state = 2}, [5022] = {.lex_state = 9, .external_lex_state = 2}, [5023] = {.lex_state = 8, .external_lex_state = 2}, [5024] = {.lex_state = 8, .external_lex_state = 2}, [5025] = {.lex_state = 9, .external_lex_state = 2}, [5026] = {.lex_state = 8, .external_lex_state = 2}, [5027] = {.lex_state = 10, .external_lex_state = 2}, [5028] = {.lex_state = 9, .external_lex_state = 2}, [5029] = {.lex_state = 8, .external_lex_state = 2}, [5030] = {.lex_state = 8, .external_lex_state = 2}, [5031] = {.lex_state = 8, .external_lex_state = 2}, [5032] = {.lex_state = 8, .external_lex_state = 2}, [5033] = {.lex_state = 8, .external_lex_state = 2}, [5034] = {.lex_state = 9, .external_lex_state = 2}, [5035] = {.lex_state = 9, .external_lex_state = 2}, [5036] = {.lex_state = 8, .external_lex_state = 2}, [5037] = {.lex_state = 8, .external_lex_state = 2}, [5038] = {.lex_state = 9, .external_lex_state = 2}, [5039] = {.lex_state = 10, .external_lex_state = 2}, [5040] = {.lex_state = 8, .external_lex_state = 2}, [5041] = {.lex_state = 9, .external_lex_state = 2}, [5042] = {.lex_state = 9, .external_lex_state = 2}, [5043] = {.lex_state = 8, .external_lex_state = 2}, [5044] = {.lex_state = 8, .external_lex_state = 2}, [5045] = {.lex_state = 8, .external_lex_state = 2}, [5046] = {.lex_state = 20, .external_lex_state = 2}, [5047] = {.lex_state = 9, .external_lex_state = 2}, [5048] = {.lex_state = 9, .external_lex_state = 2}, [5049] = {.lex_state = 8, .external_lex_state = 2}, [5050] = {.lex_state = 8, .external_lex_state = 2}, [5051] = {.lex_state = 10, .external_lex_state = 2}, [5052] = {.lex_state = 9, .external_lex_state = 2}, [5053] = {.lex_state = 10, .external_lex_state = 2}, [5054] = {.lex_state = 9, .external_lex_state = 2}, [5055] = {.lex_state = 8, .external_lex_state = 2}, [5056] = {.lex_state = 10, .external_lex_state = 2}, [5057] = {.lex_state = 9, .external_lex_state = 2}, [5058] = {.lex_state = 8, .external_lex_state = 2}, [5059] = {.lex_state = 8, .external_lex_state = 2}, [5060] = {.lex_state = 20, .external_lex_state = 2}, [5061] = {.lex_state = 8, .external_lex_state = 2}, [5062] = {.lex_state = 8, .external_lex_state = 2}, [5063] = {.lex_state = 8, .external_lex_state = 2}, [5064] = {.lex_state = 10, .external_lex_state = 2}, [5065] = {.lex_state = 10, .external_lex_state = 2}, [5066] = {.lex_state = 8, .external_lex_state = 2}, [5067] = {.lex_state = 10, .external_lex_state = 2}, [5068] = {.lex_state = 8, .external_lex_state = 2}, [5069] = {.lex_state = 8, .external_lex_state = 2}, [5070] = {.lex_state = 10, .external_lex_state = 2}, [5071] = {.lex_state = 9, .external_lex_state = 2}, [5072] = {.lex_state = 10, .external_lex_state = 2}, [5073] = {.lex_state = 10, .external_lex_state = 2}, [5074] = {.lex_state = 9, .external_lex_state = 2}, [5075] = {.lex_state = 9, .external_lex_state = 2}, [5076] = {.lex_state = 8, .external_lex_state = 2}, [5077] = {.lex_state = 8, .external_lex_state = 2}, [5078] = {.lex_state = 9, .external_lex_state = 2}, [5079] = {.lex_state = 9, .external_lex_state = 2}, [5080] = {.lex_state = 10, .external_lex_state = 2}, [5081] = {.lex_state = 10, .external_lex_state = 2}, [5082] = {.lex_state = 8, .external_lex_state = 2}, [5083] = {.lex_state = 8, .external_lex_state = 2}, [5084] = {.lex_state = 10, .external_lex_state = 2}, [5085] = {.lex_state = 9, .external_lex_state = 2}, [5086] = {.lex_state = 8, .external_lex_state = 2}, [5087] = {.lex_state = 9, .external_lex_state = 2}, [5088] = {.lex_state = 9, .external_lex_state = 2}, [5089] = {.lex_state = 10, .external_lex_state = 2}, [5090] = {.lex_state = 21, .external_lex_state = 2}, [5091] = {.lex_state = 21, .external_lex_state = 2}, [5092] = {.lex_state = 9, .external_lex_state = 2}, [5093] = {.lex_state = 21, .external_lex_state = 2}, [5094] = {.lex_state = 21, .external_lex_state = 2}, [5095] = {.lex_state = 9, .external_lex_state = 2}, [5096] = {.lex_state = 8, .external_lex_state = 2}, [5097] = {.lex_state = 21, .external_lex_state = 2}, [5098] = {.lex_state = 21, .external_lex_state = 2}, [5099] = {.lex_state = 8, .external_lex_state = 2}, [5100] = {.lex_state = 21, .external_lex_state = 2}, [5101] = {.lex_state = 21, .external_lex_state = 2}, [5102] = {.lex_state = 8, .external_lex_state = 2}, [5103] = {.lex_state = 9, .external_lex_state = 2}, [5104] = {.lex_state = 8, .external_lex_state = 2}, [5105] = {.lex_state = 21, .external_lex_state = 2}, [5106] = {.lex_state = 9, .external_lex_state = 2}, [5107] = {.lex_state = 21, .external_lex_state = 2}, [5108] = {.lex_state = 8, .external_lex_state = 2}, [5109] = {.lex_state = 8, .external_lex_state = 2}, [5110] = {.lex_state = 21, .external_lex_state = 2}, [5111] = {.lex_state = 8, .external_lex_state = 2}, [5112] = {.lex_state = 8, .external_lex_state = 2}, [5113] = {.lex_state = 8, .external_lex_state = 2}, [5114] = {.lex_state = 21, .external_lex_state = 2}, [5115] = {.lex_state = 8, .external_lex_state = 2}, [5116] = {.lex_state = 21, .external_lex_state = 2}, [5117] = {.lex_state = 9, .external_lex_state = 2}, [5118] = {.lex_state = 21, .external_lex_state = 2}, [5119] = {.lex_state = 8, .external_lex_state = 2}, [5120] = {.lex_state = 21, .external_lex_state = 2}, [5121] = {.lex_state = 9, .external_lex_state = 2}, [5122] = {.lex_state = 8, .external_lex_state = 2}, [5123] = {.lex_state = 21, .external_lex_state = 2}, [5124] = {.lex_state = 8, .external_lex_state = 2}, [5125] = {.lex_state = 21, .external_lex_state = 2}, [5126] = {.lex_state = 8, .external_lex_state = 2}, [5127] = {.lex_state = 8, .external_lex_state = 2}, [5128] = {.lex_state = 8, .external_lex_state = 2}, [5129] = {.lex_state = 21, .external_lex_state = 2}, [5130] = {.lex_state = 8, .external_lex_state = 2}, [5131] = {.lex_state = 9, .external_lex_state = 2}, [5132] = {.lex_state = 21, .external_lex_state = 2}, [5133] = {.lex_state = 21, .external_lex_state = 2}, [5134] = {.lex_state = 21, .external_lex_state = 2}, [5135] = {.lex_state = 21, .external_lex_state = 2}, [5136] = {.lex_state = 21, .external_lex_state = 2}, [5137] = {.lex_state = 8, .external_lex_state = 2}, [5138] = {.lex_state = 21, .external_lex_state = 2}, [5139] = {.lex_state = 21, .external_lex_state = 2}, [5140] = {.lex_state = 21, .external_lex_state = 2}, [5141] = {.lex_state = 21, .external_lex_state = 2}, [5142] = {.lex_state = 15, .external_lex_state = 2}, [5143] = {.lex_state = 9, .external_lex_state = 2}, [5144] = {.lex_state = 15, .external_lex_state = 2}, [5145] = {.lex_state = 10, .external_lex_state = 2}, [5146] = {.lex_state = 15, .external_lex_state = 2}, [5147] = {.lex_state = 15, .external_lex_state = 2}, [5148] = {.lex_state = 9, .external_lex_state = 2}, [5149] = {.lex_state = 15, .external_lex_state = 2}, [5150] = {.lex_state = 9, .external_lex_state = 2}, [5151] = {.lex_state = 8, .external_lex_state = 2}, [5152] = {.lex_state = 15, .external_lex_state = 2}, [5153] = {.lex_state = 15, .external_lex_state = 2}, [5154] = {.lex_state = 9, .external_lex_state = 2}, [5155] = {.lex_state = 15, .external_lex_state = 2}, [5156] = {.lex_state = 9, .external_lex_state = 2}, [5157] = {.lex_state = 9, .external_lex_state = 2}, [5158] = {.lex_state = 15, .external_lex_state = 2}, [5159] = {.lex_state = 9, .external_lex_state = 2}, [5160] = {.lex_state = 15, .external_lex_state = 2}, [5161] = {.lex_state = 9, .external_lex_state = 2}, [5162] = {.lex_state = 9, .external_lex_state = 2}, [5163] = {.lex_state = 15, .external_lex_state = 2}, [5164] = {.lex_state = 9, .external_lex_state = 2}, [5165] = {.lex_state = 9, .external_lex_state = 2}, [5166] = {.lex_state = 15, .external_lex_state = 2}, [5167] = {.lex_state = 9, .external_lex_state = 2}, [5168] = {.lex_state = 15, .external_lex_state = 2}, [5169] = {.lex_state = 9, .external_lex_state = 2}, [5170] = {.lex_state = 15, .external_lex_state = 2}, [5171] = {.lex_state = 9, .external_lex_state = 2}, [5172] = {.lex_state = 15, .external_lex_state = 2}, [5173] = {.lex_state = 15, .external_lex_state = 2}, [5174] = {.lex_state = 9, .external_lex_state = 2}, [5175] = {.lex_state = 15, .external_lex_state = 2}, [5176] = {.lex_state = 9, .external_lex_state = 2}, [5177] = {.lex_state = 15, .external_lex_state = 2}, [5178] = {.lex_state = 8, .external_lex_state = 2}, [5179] = {.lex_state = 15, .external_lex_state = 2}, [5180] = {.lex_state = 9, .external_lex_state = 2}, [5181] = {.lex_state = 15, .external_lex_state = 2}, [5182] = {.lex_state = 8, .external_lex_state = 2}, [5183] = {.lex_state = 9, .external_lex_state = 2}, [5184] = {.lex_state = 15, .external_lex_state = 2}, [5185] = {.lex_state = 15, .external_lex_state = 2}, [5186] = {.lex_state = 10, .external_lex_state = 2}, [5187] = {.lex_state = 15, .external_lex_state = 2}, [5188] = {.lex_state = 9, .external_lex_state = 2}, [5189] = {.lex_state = 15, .external_lex_state = 2}, [5190] = {.lex_state = 8, .external_lex_state = 2}, [5191] = {.lex_state = 15, .external_lex_state = 2}, [5192] = {.lex_state = 9, .external_lex_state = 2}, [5193] = {.lex_state = 15, .external_lex_state = 2}, [5194] = {.lex_state = 10, .external_lex_state = 2}, [5195] = {.lex_state = 15, .external_lex_state = 2}, [5196] = {.lex_state = 15, .external_lex_state = 2}, [5197] = {.lex_state = 8, .external_lex_state = 2}, [5198] = {.lex_state = 9, .external_lex_state = 2}, [5199] = {.lex_state = 15, .external_lex_state = 2}, [5200] = {.lex_state = 9, .external_lex_state = 2}, [5201] = {.lex_state = 15, .external_lex_state = 2}, [5202] = {.lex_state = 15, .external_lex_state = 2}, [5203] = {.lex_state = 9, .external_lex_state = 2}, [5204] = {.lex_state = 15, .external_lex_state = 2}, [5205] = {.lex_state = 15, .external_lex_state = 2}, [5206] = {.lex_state = 15, .external_lex_state = 2}, [5207] = {.lex_state = 15, .external_lex_state = 2}, [5208] = {.lex_state = 9, .external_lex_state = 2}, [5209] = {.lex_state = 9, .external_lex_state = 2}, [5210] = {.lex_state = 9, .external_lex_state = 2}, [5211] = {.lex_state = 9, .external_lex_state = 2}, [5212] = {.lex_state = 9, .external_lex_state = 2}, [5213] = {.lex_state = 9, .external_lex_state = 2}, [5214] = {.lex_state = 9, .external_lex_state = 2}, [5215] = {.lex_state = 9, .external_lex_state = 2}, [5216] = {.lex_state = 9, .external_lex_state = 2}, [5217] = {.lex_state = 9, .external_lex_state = 2}, [5218] = {.lex_state = 9, .external_lex_state = 2}, [5219] = {.lex_state = 9, .external_lex_state = 2}, [5220] = {.lex_state = 9, .external_lex_state = 2}, [5221] = {.lex_state = 9, .external_lex_state = 2}, [5222] = {.lex_state = 9, .external_lex_state = 2}, [5223] = {.lex_state = 9, .external_lex_state = 2}, [5224] = {.lex_state = 9, .external_lex_state = 2}, [5225] = {.lex_state = 9, .external_lex_state = 2}, [5226] = {.lex_state = 9, .external_lex_state = 2}, [5227] = {.lex_state = 9, .external_lex_state = 2}, [5228] = {.lex_state = 9, .external_lex_state = 2}, [5229] = {.lex_state = 21, .external_lex_state = 2}, [5230] = {.lex_state = 9, .external_lex_state = 2}, [5231] = {.lex_state = 9, .external_lex_state = 2}, [5232] = {.lex_state = 9, .external_lex_state = 2}, [5233] = {.lex_state = 15, .external_lex_state = 2}, [5234] = {.lex_state = 9, .external_lex_state = 2}, [5235] = {.lex_state = 9, .external_lex_state = 2}, [5236] = {.lex_state = 9, .external_lex_state = 2}, [5237] = {.lex_state = 9, .external_lex_state = 2}, [5238] = {.lex_state = 25, .external_lex_state = 2}, [5239] = {.lex_state = 25, .external_lex_state = 2}, [5240] = {.lex_state = 9, .external_lex_state = 2}, [5241] = {.lex_state = 9, .external_lex_state = 2}, [5242] = {.lex_state = 172, .external_lex_state = 2}, [5243] = {.lex_state = 172, .external_lex_state = 2}, [5244] = {.lex_state = 9, .external_lex_state = 2}, [5245] = {.lex_state = 25, .external_lex_state = 2}, [5246] = {.lex_state = 25, .external_lex_state = 2}, [5247] = {.lex_state = 9, .external_lex_state = 2}, [5248] = {.lex_state = 25, .external_lex_state = 2}, [5249] = {.lex_state = 0, .external_lex_state = 2}, [5250] = {.lex_state = 9, .external_lex_state = 2}, [5251] = {.lex_state = 0, .external_lex_state = 2}, [5252] = {.lex_state = 172, .external_lex_state = 2}, [5253] = {.lex_state = 0, .external_lex_state = 2}, [5254] = {.lex_state = 172, .external_lex_state = 2}, [5255] = {.lex_state = 172, .external_lex_state = 2}, [5256] = {.lex_state = 172, .external_lex_state = 2}, [5257] = {.lex_state = 9, .external_lex_state = 2}, [5258] = {.lex_state = 25, .external_lex_state = 2}, [5259] = {.lex_state = 9, .external_lex_state = 2}, [5260] = {.lex_state = 172, .external_lex_state = 2}, [5261] = {.lex_state = 172, .external_lex_state = 2}, [5262] = {.lex_state = 0, .external_lex_state = 2}, [5263] = {.lex_state = 9, .external_lex_state = 2}, [5264] = {.lex_state = 9, .external_lex_state = 2}, [5265] = {.lex_state = 0, .external_lex_state = 2}, [5266] = {.lex_state = 25, .external_lex_state = 2}, [5267] = {.lex_state = 25, .external_lex_state = 2}, [5268] = {.lex_state = 10, .external_lex_state = 2}, [5269] = {.lex_state = 25, .external_lex_state = 2}, [5270] = {.lex_state = 9, .external_lex_state = 2}, [5271] = {.lex_state = 25, .external_lex_state = 2}, [5272] = {.lex_state = 25, .external_lex_state = 2}, [5273] = {.lex_state = 25, .external_lex_state = 2}, [5274] = {.lex_state = 0, .external_lex_state = 2}, [5275] = {.lex_state = 0, .external_lex_state = 2}, [5276] = {.lex_state = 9, .external_lex_state = 2}, [5277] = {.lex_state = 0, .external_lex_state = 2}, [5278] = {.lex_state = 25, .external_lex_state = 2}, [5279] = {.lex_state = 172, .external_lex_state = 2}, [5280] = {.lex_state = 25, .external_lex_state = 2}, [5281] = {.lex_state = 9, .external_lex_state = 2}, [5282] = {.lex_state = 9, .external_lex_state = 2}, [5283] = {.lex_state = 25, .external_lex_state = 2}, [5284] = {.lex_state = 9, .external_lex_state = 2}, [5285] = {.lex_state = 9, .external_lex_state = 2}, [5286] = {.lex_state = 25, .external_lex_state = 2}, [5287] = {.lex_state = 172, .external_lex_state = 2}, [5288] = {.lex_state = 172, .external_lex_state = 2}, [5289] = {.lex_state = 0, .external_lex_state = 2}, [5290] = {.lex_state = 25, .external_lex_state = 2}, [5291] = {.lex_state = 9, .external_lex_state = 2}, [5292] = {.lex_state = 9, .external_lex_state = 2}, [5293] = {.lex_state = 0, .external_lex_state = 2}, [5294] = {.lex_state = 25, .external_lex_state = 2}, [5295] = {.lex_state = 9, .external_lex_state = 2}, [5296] = {.lex_state = 25, .external_lex_state = 2}, [5297] = {.lex_state = 25, .external_lex_state = 2}, [5298] = {.lex_state = 9, .external_lex_state = 2}, [5299] = {.lex_state = 25, .external_lex_state = 2}, [5300] = {.lex_state = 25, .external_lex_state = 2}, [5301] = {.lex_state = 172, .external_lex_state = 2}, [5302] = {.lex_state = 9, .external_lex_state = 2}, [5303] = {.lex_state = 9, .external_lex_state = 2}, [5304] = {.lex_state = 172, .external_lex_state = 2}, [5305] = {.lex_state = 25, .external_lex_state = 2}, [5306] = {.lex_state = 0, .external_lex_state = 2}, [5307] = {.lex_state = 0, .external_lex_state = 2}, [5308] = {.lex_state = 25, .external_lex_state = 2}, [5309] = {.lex_state = 9, .external_lex_state = 2}, [5310] = {.lex_state = 9, .external_lex_state = 2}, [5311] = {.lex_state = 9, .external_lex_state = 2}, [5312] = {.lex_state = 9, .external_lex_state = 2}, [5313] = {.lex_state = 9, .external_lex_state = 2}, [5314] = {.lex_state = 9, .external_lex_state = 2}, [5315] = {.lex_state = 172, .external_lex_state = 2}, [5316] = {.lex_state = 9, .external_lex_state = 2}, [5317] = {.lex_state = 172, .external_lex_state = 2}, [5318] = {.lex_state = 25, .external_lex_state = 2}, [5319] = {.lex_state = 0, .external_lex_state = 2}, [5320] = {.lex_state = 9, .external_lex_state = 2}, [5321] = {.lex_state = 25, .external_lex_state = 2}, [5322] = {.lex_state = 25, .external_lex_state = 2}, [5323] = {.lex_state = 10, .external_lex_state = 2}, [5324] = {.lex_state = 172, .external_lex_state = 2}, [5325] = {.lex_state = 9, .external_lex_state = 2}, [5326] = {.lex_state = 9, .external_lex_state = 2}, [5327] = {.lex_state = 9, .external_lex_state = 2}, [5328] = {.lex_state = 9, .external_lex_state = 2}, [5329] = {.lex_state = 9, .external_lex_state = 2}, [5330] = {.lex_state = 6, .external_lex_state = 2}, [5331] = {.lex_state = 0, .external_lex_state = 2}, [5332] = {.lex_state = 0, .external_lex_state = 2}, [5333] = {.lex_state = 9, .external_lex_state = 2}, [5334] = {.lex_state = 9, .external_lex_state = 2}, [5335] = {.lex_state = 15, .external_lex_state = 2}, [5336] = {.lex_state = 172, .external_lex_state = 2}, [5337] = {.lex_state = 0, .external_lex_state = 2}, [5338] = {.lex_state = 10, .external_lex_state = 2}, [5339] = {.lex_state = 9, .external_lex_state = 2}, [5340] = {.lex_state = 9, .external_lex_state = 2}, [5341] = {.lex_state = 9, .external_lex_state = 2}, [5342] = {.lex_state = 172, .external_lex_state = 2}, [5343] = {.lex_state = 9, .external_lex_state = 2}, [5344] = {.lex_state = 9, .external_lex_state = 2}, [5345] = {.lex_state = 9, .external_lex_state = 2}, [5346] = {.lex_state = 0, .external_lex_state = 2}, [5347] = {.lex_state = 0, .external_lex_state = 2}, [5348] = {.lex_state = 9, .external_lex_state = 2}, [5349] = {.lex_state = 0, .external_lex_state = 2}, [5350] = {.lex_state = 0, .external_lex_state = 2}, [5351] = {.lex_state = 9, .external_lex_state = 2}, [5352] = {.lex_state = 9, .external_lex_state = 2}, [5353] = {.lex_state = 9, .external_lex_state = 2}, [5354] = {.lex_state = 9, .external_lex_state = 2}, [5355] = {.lex_state = 0, .external_lex_state = 2}, [5356] = {.lex_state = 9, .external_lex_state = 2}, [5357] = {.lex_state = 9, .external_lex_state = 2}, [5358] = {.lex_state = 9, .external_lex_state = 2}, [5359] = {.lex_state = 9, .external_lex_state = 2}, [5360] = {.lex_state = 0, .external_lex_state = 2}, [5361] = {.lex_state = 0, .external_lex_state = 2}, [5362] = {.lex_state = 0, .external_lex_state = 2}, [5363] = {.lex_state = 9, .external_lex_state = 2}, [5364] = {.lex_state = 0, .external_lex_state = 2}, [5365] = {.lex_state = 9, .external_lex_state = 2}, [5366] = {.lex_state = 9, .external_lex_state = 2}, [5367] = {.lex_state = 0, .external_lex_state = 2}, [5368] = {.lex_state = 9, .external_lex_state = 2}, [5369] = {.lex_state = 9, .external_lex_state = 2}, [5370] = {.lex_state = 9, .external_lex_state = 2}, [5371] = {.lex_state = 9, .external_lex_state = 2}, [5372] = {.lex_state = 9, .external_lex_state = 2}, [5373] = {.lex_state = 9, .external_lex_state = 2}, [5374] = {.lex_state = 9, .external_lex_state = 2}, [5375] = {.lex_state = 0, .external_lex_state = 2}, [5376] = {.lex_state = 0, .external_lex_state = 2}, [5377] = {.lex_state = 0, .external_lex_state = 2}, [5378] = {.lex_state = 172, .external_lex_state = 2}, [5379] = {.lex_state = 0, .external_lex_state = 2}, [5380] = {.lex_state = 0, .external_lex_state = 2}, [5381] = {.lex_state = 0, .external_lex_state = 2}, [5382] = {.lex_state = 9, .external_lex_state = 2}, [5383] = {.lex_state = 9, .external_lex_state = 2}, [5384] = {.lex_state = 9, .external_lex_state = 2}, [5385] = {.lex_state = 9, .external_lex_state = 2}, [5386] = {.lex_state = 9, .external_lex_state = 2}, [5387] = {.lex_state = 9, .external_lex_state = 2}, [5388] = {.lex_state = 9, .external_lex_state = 2}, [5389] = {.lex_state = 10, .external_lex_state = 2}, [5390] = {.lex_state = 9, .external_lex_state = 2}, [5391] = {.lex_state = 9, .external_lex_state = 2}, [5392] = {.lex_state = 9, .external_lex_state = 2}, [5393] = {.lex_state = 0, .external_lex_state = 2}, [5394] = {.lex_state = 0, .external_lex_state = 2}, [5395] = {.lex_state = 9, .external_lex_state = 2}, [5396] = {.lex_state = 9, .external_lex_state = 2}, [5397] = {.lex_state = 9, .external_lex_state = 2}, [5398] = {.lex_state = 9, .external_lex_state = 2}, [5399] = {.lex_state = 9, .external_lex_state = 2}, [5400] = {.lex_state = 8, .external_lex_state = 2}, [5401] = {.lex_state = 9, .external_lex_state = 2}, [5402] = {.lex_state = 9, .external_lex_state = 2}, [5403] = {.lex_state = 9, .external_lex_state = 2}, [5404] = {.lex_state = 9, .external_lex_state = 2}, [5405] = {.lex_state = 0, .external_lex_state = 2}, [5406] = {.lex_state = 9, .external_lex_state = 2}, [5407] = {.lex_state = 10, .external_lex_state = 2}, [5408] = {.lex_state = 9, .external_lex_state = 2}, [5409] = {.lex_state = 9, .external_lex_state = 2}, [5410] = {.lex_state = 9, .external_lex_state = 2}, [5411] = {.lex_state = 9, .external_lex_state = 2}, [5412] = {.lex_state = 9, .external_lex_state = 2}, [5413] = {.lex_state = 9, .external_lex_state = 2}, [5414] = {.lex_state = 9, .external_lex_state = 2}, [5415] = {.lex_state = 6, .external_lex_state = 2}, [5416] = {.lex_state = 10, .external_lex_state = 2}, [5417] = {.lex_state = 9, .external_lex_state = 2}, [5418] = {.lex_state = 9, .external_lex_state = 2}, [5419] = {.lex_state = 9, .external_lex_state = 2}, [5420] = {.lex_state = 0, .external_lex_state = 2}, [5421] = {.lex_state = 0, .external_lex_state = 2}, [5422] = {.lex_state = 9, .external_lex_state = 2}, [5423] = {.lex_state = 9, .external_lex_state = 2}, [5424] = {.lex_state = 0, .external_lex_state = 2}, [5425] = {.lex_state = 0, .external_lex_state = 2}, [5426] = {.lex_state = 0, .external_lex_state = 2}, [5427] = {.lex_state = 9, .external_lex_state = 2}, [5428] = {.lex_state = 9, .external_lex_state = 2}, [5429] = {.lex_state = 9, .external_lex_state = 2}, [5430] = {.lex_state = 9, .external_lex_state = 2}, [5431] = {.lex_state = 9, .external_lex_state = 2}, [5432] = {.lex_state = 0, .external_lex_state = 2}, [5433] = {.lex_state = 9, .external_lex_state = 2}, [5434] = {.lex_state = 9, .external_lex_state = 2}, [5435] = {.lex_state = 0, .external_lex_state = 2}, [5436] = {.lex_state = 9, .external_lex_state = 2}, [5437] = {.lex_state = 9, .external_lex_state = 2}, [5438] = {.lex_state = 0, .external_lex_state = 2}, [5439] = {.lex_state = 9, .external_lex_state = 2}, [5440] = {.lex_state = 9, .external_lex_state = 2}, [5441] = {.lex_state = 0, .external_lex_state = 2}, [5442] = {.lex_state = 172, .external_lex_state = 2}, [5443] = {.lex_state = 9, .external_lex_state = 2}, [5444] = {.lex_state = 0, .external_lex_state = 2}, [5445] = {.lex_state = 9, .external_lex_state = 2}, [5446] = {.lex_state = 9, .external_lex_state = 2}, [5447] = {.lex_state = 0, .external_lex_state = 2}, [5448] = {.lex_state = 9, .external_lex_state = 2}, [5449] = {.lex_state = 9, .external_lex_state = 2}, [5450] = {.lex_state = 9, .external_lex_state = 2}, [5451] = {.lex_state = 0, .external_lex_state = 2}, [5452] = {.lex_state = 9, .external_lex_state = 2}, [5453] = {.lex_state = 0, .external_lex_state = 2}, [5454] = {.lex_state = 6, .external_lex_state = 2}, [5455] = {.lex_state = 9, .external_lex_state = 2}, [5456] = {.lex_state = 0, .external_lex_state = 2}, [5457] = {.lex_state = 0, .external_lex_state = 2}, [5458] = {.lex_state = 0, .external_lex_state = 2}, [5459] = {.lex_state = 9, .external_lex_state = 2}, [5460] = {.lex_state = 9, .external_lex_state = 2}, [5461] = {.lex_state = 0, .external_lex_state = 2}, [5462] = {.lex_state = 9, .external_lex_state = 2}, [5463] = {.lex_state = 9, .external_lex_state = 2}, [5464] = {.lex_state = 9, .external_lex_state = 2}, [5465] = {.lex_state = 9, .external_lex_state = 2}, [5466] = {.lex_state = 9, .external_lex_state = 2}, [5467] = {.lex_state = 9, .external_lex_state = 2}, [5468] = {.lex_state = 9, .external_lex_state = 2}, [5469] = {.lex_state = 0, .external_lex_state = 2}, [5470] = {.lex_state = 0, .external_lex_state = 2}, [5471] = {.lex_state = 9, .external_lex_state = 2}, [5472] = {.lex_state = 10, .external_lex_state = 2}, [5473] = {.lex_state = 9, .external_lex_state = 2}, [5474] = {.lex_state = 9, .external_lex_state = 2}, [5475] = {.lex_state = 9, .external_lex_state = 2}, [5476] = {.lex_state = 9, .external_lex_state = 2}, [5477] = {.lex_state = 172, .external_lex_state = 2}, [5478] = {.lex_state = 0, .external_lex_state = 2}, [5479] = {.lex_state = 9, .external_lex_state = 2}, [5480] = {.lex_state = 9, .external_lex_state = 2}, [5481] = {.lex_state = 9, .external_lex_state = 2}, [5482] = {.lex_state = 9, .external_lex_state = 2}, [5483] = {.lex_state = 9, .external_lex_state = 2}, [5484] = {.lex_state = 9, .external_lex_state = 2}, [5485] = {.lex_state = 9, .external_lex_state = 2}, [5486] = {.lex_state = 172, .external_lex_state = 2}, [5487] = {.lex_state = 9, .external_lex_state = 2}, [5488] = {.lex_state = 9, .external_lex_state = 2}, [5489] = {.lex_state = 0, .external_lex_state = 2}, [5490] = {.lex_state = 0, .external_lex_state = 2}, [5491] = {.lex_state = 9, .external_lex_state = 2}, [5492] = {.lex_state = 9, .external_lex_state = 2}, [5493] = {.lex_state = 9, .external_lex_state = 2}, [5494] = {.lex_state = 9, .external_lex_state = 2}, [5495] = {.lex_state = 9, .external_lex_state = 2}, [5496] = {.lex_state = 9, .external_lex_state = 2}, [5497] = {.lex_state = 9, .external_lex_state = 2}, [5498] = {.lex_state = 9, .external_lex_state = 2}, [5499] = {.lex_state = 9, .external_lex_state = 2}, [5500] = {.lex_state = 0, .external_lex_state = 2}, [5501] = {.lex_state = 0, .external_lex_state = 2}, [5502] = {.lex_state = 25, .external_lex_state = 2}, [5503] = {.lex_state = 9, .external_lex_state = 2}, [5504] = {.lex_state = 0, .external_lex_state = 2}, [5505] = {.lex_state = 9, .external_lex_state = 2}, [5506] = {.lex_state = 9, .external_lex_state = 2}, [5507] = {.lex_state = 0, .external_lex_state = 2}, [5508] = {.lex_state = 9, .external_lex_state = 2}, [5509] = {.lex_state = 9, .external_lex_state = 2}, [5510] = {.lex_state = 0, .external_lex_state = 2}, [5511] = {.lex_state = 0, .external_lex_state = 2}, [5512] = {.lex_state = 9, .external_lex_state = 2}, [5513] = {.lex_state = 9, .external_lex_state = 2}, [5514] = {.lex_state = 9, .external_lex_state = 2}, [5515] = {.lex_state = 9, .external_lex_state = 2}, [5516] = {.lex_state = 0, .external_lex_state = 2}, [5517] = {.lex_state = 6, .external_lex_state = 2}, [5518] = {.lex_state = 0, .external_lex_state = 2}, [5519] = {.lex_state = 9, .external_lex_state = 2}, [5520] = {.lex_state = 172, .external_lex_state = 2}, [5521] = {.lex_state = 0, .external_lex_state = 2}, [5522] = {.lex_state = 0, .external_lex_state = 2}, [5523] = {.lex_state = 9, .external_lex_state = 2}, [5524] = {.lex_state = 172, .external_lex_state = 2}, [5525] = {.lex_state = 6, .external_lex_state = 2}, [5526] = {.lex_state = 9, .external_lex_state = 2}, [5527] = {.lex_state = 9, .external_lex_state = 2}, [5528] = {.lex_state = 9, .external_lex_state = 2}, [5529] = {.lex_state = 9, .external_lex_state = 2}, [5530] = {.lex_state = 0, .external_lex_state = 2}, [5531] = {.lex_state = 9, .external_lex_state = 2}, [5532] = {.lex_state = 9, .external_lex_state = 2}, [5533] = {.lex_state = 0, .external_lex_state = 2}, [5534] = {.lex_state = 9, .external_lex_state = 2}, [5535] = {.lex_state = 9, .external_lex_state = 2}, [5536] = {.lex_state = 9, .external_lex_state = 2}, [5537] = {.lex_state = 9, .external_lex_state = 2}, [5538] = {.lex_state = 0, .external_lex_state = 2}, [5539] = {.lex_state = 0, .external_lex_state = 2}, [5540] = {.lex_state = 9, .external_lex_state = 2}, [5541] = {.lex_state = 0, .external_lex_state = 2}, [5542] = {.lex_state = 9, .external_lex_state = 2}, [5543] = {.lex_state = 9, .external_lex_state = 2}, [5544] = {.lex_state = 0, .external_lex_state = 2}, [5545] = {.lex_state = 9, .external_lex_state = 2}, [5546] = {.lex_state = 9, .external_lex_state = 2}, [5547] = {.lex_state = 9, .external_lex_state = 2}, [5548] = {.lex_state = 9, .external_lex_state = 2}, [5549] = {.lex_state = 0, .external_lex_state = 2}, [5550] = {.lex_state = 9, .external_lex_state = 2}, [5551] = {.lex_state = 9, .external_lex_state = 2}, [5552] = {.lex_state = 9, .external_lex_state = 2}, [5553] = {.lex_state = 8, .external_lex_state = 2}, [5554] = {.lex_state = 6, .external_lex_state = 2}, [5555] = {.lex_state = 0, .external_lex_state = 2}, [5556] = {.lex_state = 0, .external_lex_state = 2}, [5557] = {.lex_state = 0, .external_lex_state = 2}, [5558] = {.lex_state = 9, .external_lex_state = 2}, [5559] = {.lex_state = 0, .external_lex_state = 2}, [5560] = {.lex_state = 6, .external_lex_state = 2}, [5561] = {.lex_state = 0, .external_lex_state = 2}, [5562] = {.lex_state = 9, .external_lex_state = 2}, [5563] = {.lex_state = 9, .external_lex_state = 2}, [5564] = {.lex_state = 9, .external_lex_state = 2}, [5565] = {.lex_state = 9, .external_lex_state = 2}, [5566] = {.lex_state = 9, .external_lex_state = 2}, [5567] = {.lex_state = 9, .external_lex_state = 2}, [5568] = {.lex_state = 9, .external_lex_state = 2}, [5569] = {.lex_state = 9, .external_lex_state = 2}, [5570] = {.lex_state = 9, .external_lex_state = 2}, [5571] = {.lex_state = 9, .external_lex_state = 2}, [5572] = {.lex_state = 0, .external_lex_state = 2}, [5573] = {.lex_state = 9, .external_lex_state = 2}, [5574] = {.lex_state = 9, .external_lex_state = 6}, [5575] = {.lex_state = 9, .external_lex_state = 2}, [5576] = {.lex_state = 9, .external_lex_state = 2}, [5577] = {.lex_state = 9, .external_lex_state = 2}, [5578] = {.lex_state = 9, .external_lex_state = 2}, [5579] = {.lex_state = 0, .external_lex_state = 2}, [5580] = {.lex_state = 9, .external_lex_state = 2}, [5581] = {.lex_state = 9, .external_lex_state = 2}, [5582] = {.lex_state = 9, .external_lex_state = 2}, [5583] = {.lex_state = 9, .external_lex_state = 2}, [5584] = {.lex_state = 9, .external_lex_state = 2}, [5585] = {.lex_state = 172, .external_lex_state = 2}, [5586] = {.lex_state = 9, .external_lex_state = 2}, [5587] = {.lex_state = 9, .external_lex_state = 2}, [5588] = {.lex_state = 9, .external_lex_state = 2}, [5589] = {.lex_state = 9, .external_lex_state = 2}, [5590] = {.lex_state = 9, .external_lex_state = 2}, [5591] = {.lex_state = 9, .external_lex_state = 2}, [5592] = {.lex_state = 9, .external_lex_state = 2}, [5593] = {.lex_state = 9, .external_lex_state = 2}, [5594] = {.lex_state = 9, .external_lex_state = 2}, [5595] = {.lex_state = 9, .external_lex_state = 2}, [5596] = {.lex_state = 9, .external_lex_state = 2}, [5597] = {.lex_state = 172, .external_lex_state = 2}, [5598] = {.lex_state = 9, .external_lex_state = 2}, [5599] = {.lex_state = 9, .external_lex_state = 6}, [5600] = {.lex_state = 9, .external_lex_state = 2}, [5601] = {.lex_state = 9, .external_lex_state = 2}, [5602] = {.lex_state = 9, .external_lex_state = 2}, [5603] = {.lex_state = 9, .external_lex_state = 2}, [5604] = {.lex_state = 9, .external_lex_state = 2}, [5605] = {.lex_state = 9, .external_lex_state = 2}, [5606] = {.lex_state = 9, .external_lex_state = 2}, [5607] = {.lex_state = 9, .external_lex_state = 2}, [5608] = {.lex_state = 9, .external_lex_state = 2}, [5609] = {.lex_state = 9, .external_lex_state = 2}, [5610] = {.lex_state = 9, .external_lex_state = 2}, [5611] = {.lex_state = 9, .external_lex_state = 2}, [5612] = {.lex_state = 0, .external_lex_state = 2}, [5613] = {.lex_state = 0, .external_lex_state = 2}, [5614] = {.lex_state = 9, .external_lex_state = 2}, [5615] = {.lex_state = 9, .external_lex_state = 2}, [5616] = {.lex_state = 9, .external_lex_state = 2}, [5617] = {.lex_state = 9, .external_lex_state = 2}, [5618] = {.lex_state = 9, .external_lex_state = 2}, [5619] = {.lex_state = 9, .external_lex_state = 2}, [5620] = {.lex_state = 9, .external_lex_state = 2}, [5621] = {.lex_state = 9, .external_lex_state = 2}, [5622] = {.lex_state = 9, .external_lex_state = 2}, [5623] = {.lex_state = 9, .external_lex_state = 2}, [5624] = {.lex_state = 9, .external_lex_state = 2}, [5625] = {.lex_state = 9, .external_lex_state = 2}, [5626] = {.lex_state = 9, .external_lex_state = 2}, [5627] = {.lex_state = 9, .external_lex_state = 2}, [5628] = {.lex_state = 0, .external_lex_state = 2}, [5629] = {.lex_state = 9, .external_lex_state = 2}, [5630] = {.lex_state = 0, .external_lex_state = 2}, [5631] = {.lex_state = 9, .external_lex_state = 2}, [5632] = {.lex_state = 9, .external_lex_state = 2}, [5633] = {.lex_state = 9, .external_lex_state = 2}, [5634] = {.lex_state = 9, .external_lex_state = 2}, [5635] = {.lex_state = 9, .external_lex_state = 2}, [5636] = {.lex_state = 9, .external_lex_state = 2}, [5637] = {.lex_state = 9, .external_lex_state = 2}, [5638] = {.lex_state = 0, .external_lex_state = 2}, [5639] = {.lex_state = 9, .external_lex_state = 2}, [5640] = {.lex_state = 9, .external_lex_state = 2}, [5641] = {.lex_state = 9, .external_lex_state = 2}, [5642] = {.lex_state = 9, .external_lex_state = 2}, [5643] = {.lex_state = 9, .external_lex_state = 2}, [5644] = {.lex_state = 9, .external_lex_state = 2}, [5645] = {.lex_state = 9, .external_lex_state = 2}, [5646] = {.lex_state = 0, .external_lex_state = 2}, [5647] = {.lex_state = 9, .external_lex_state = 2}, [5648] = {.lex_state = 9, .external_lex_state = 2}, [5649] = {.lex_state = 9, .external_lex_state = 2}, [5650] = {.lex_state = 9, .external_lex_state = 2}, [5651] = {.lex_state = 9, .external_lex_state = 2}, [5652] = {.lex_state = 9, .external_lex_state = 2}, [5653] = {.lex_state = 9, .external_lex_state = 2}, [5654] = {.lex_state = 0, .external_lex_state = 2}, [5655] = {.lex_state = 9, .external_lex_state = 2}, [5656] = {.lex_state = 9, .external_lex_state = 2}, [5657] = {.lex_state = 9, .external_lex_state = 2}, [5658] = {.lex_state = 9, .external_lex_state = 2}, [5659] = {.lex_state = 9, .external_lex_state = 2}, [5660] = {.lex_state = 9, .external_lex_state = 2}, [5661] = {.lex_state = 9, .external_lex_state = 2}, [5662] = {.lex_state = 9, .external_lex_state = 2}, [5663] = {.lex_state = 9, .external_lex_state = 2}, [5664] = {.lex_state = 9, .external_lex_state = 2}, [5665] = {.lex_state = 9, .external_lex_state = 2}, [5666] = {.lex_state = 9, .external_lex_state = 2}, [5667] = {.lex_state = 9, .external_lex_state = 2}, [5668] = {.lex_state = 9, .external_lex_state = 2}, [5669] = {.lex_state = 9, .external_lex_state = 2}, [5670] = {.lex_state = 9, .external_lex_state = 2}, [5671] = {.lex_state = 9, .external_lex_state = 2}, [5672] = {.lex_state = 9, .external_lex_state = 2}, [5673] = {.lex_state = 9, .external_lex_state = 2}, [5674] = {.lex_state = 9, .external_lex_state = 2}, [5675] = {.lex_state = 9, .external_lex_state = 2}, [5676] = {.lex_state = 9, .external_lex_state = 2}, [5677] = {.lex_state = 9, .external_lex_state = 2}, [5678] = {.lex_state = 9, .external_lex_state = 2}, [5679] = {.lex_state = 9, .external_lex_state = 2}, [5680] = {.lex_state = 9, .external_lex_state = 2}, [5681] = {.lex_state = 9, .external_lex_state = 2}, [5682] = {.lex_state = 9, .external_lex_state = 2}, [5683] = {.lex_state = 9, .external_lex_state = 2}, [5684] = {.lex_state = 9, .external_lex_state = 2}, [5685] = {.lex_state = 9, .external_lex_state = 2}, [5686] = {.lex_state = 9, .external_lex_state = 2}, [5687] = {.lex_state = 9, .external_lex_state = 2}, [5688] = {.lex_state = 0, .external_lex_state = 2}, [5689] = {.lex_state = 9, .external_lex_state = 2}, [5690] = {.lex_state = 0, .external_lex_state = 2}, [5691] = {.lex_state = 9, .external_lex_state = 2}, [5692] = {.lex_state = 9, .external_lex_state = 2}, [5693] = {.lex_state = 9, .external_lex_state = 2}, [5694] = {.lex_state = 9, .external_lex_state = 2}, [5695] = {.lex_state = 9, .external_lex_state = 2}, [5696] = {.lex_state = 9, .external_lex_state = 2}, [5697] = {.lex_state = 9, .external_lex_state = 2}, [5698] = {.lex_state = 9, .external_lex_state = 2}, [5699] = {.lex_state = 9, .external_lex_state = 2}, [5700] = {.lex_state = 9, .external_lex_state = 2}, [5701] = {.lex_state = 9, .external_lex_state = 2}, [5702] = {.lex_state = 9, .external_lex_state = 2}, [5703] = {.lex_state = 9, .external_lex_state = 2}, [5704] = {.lex_state = 9, .external_lex_state = 2}, [5705] = {.lex_state = 9, .external_lex_state = 2}, [5706] = {.lex_state = 9, .external_lex_state = 2}, [5707] = {.lex_state = 9, .external_lex_state = 2}, [5708] = {.lex_state = 9, .external_lex_state = 2}, [5709] = {.lex_state = 9, .external_lex_state = 2}, [5710] = {.lex_state = 9, .external_lex_state = 2}, [5711] = {.lex_state = 9, .external_lex_state = 2}, [5712] = {.lex_state = 9, .external_lex_state = 2}, [5713] = {.lex_state = 9, .external_lex_state = 2}, [5714] = {.lex_state = 9, .external_lex_state = 2}, [5715] = {.lex_state = 9, .external_lex_state = 2}, [5716] = {.lex_state = 9, .external_lex_state = 2}, [5717] = {.lex_state = 9, .external_lex_state = 2}, [5718] = {.lex_state = 9, .external_lex_state = 2}, [5719] = {.lex_state = 9, .external_lex_state = 2}, [5720] = {.lex_state = 9, .external_lex_state = 2}, [5721] = {.lex_state = 172, .external_lex_state = 2}, [5722] = {.lex_state = 9, .external_lex_state = 2}, [5723] = {.lex_state = 9, .external_lex_state = 2}, [5724] = {.lex_state = 9, .external_lex_state = 2}, [5725] = {.lex_state = 9, .external_lex_state = 2}, [5726] = {.lex_state = 0, .external_lex_state = 2}, [5727] = {.lex_state = 9, .external_lex_state = 2}, [5728] = {.lex_state = 0, .external_lex_state = 2}, [5729] = {.lex_state = 9, .external_lex_state = 2}, [5730] = {.lex_state = 9, .external_lex_state = 2}, [5731] = {.lex_state = 0, .external_lex_state = 2}, [5732] = {.lex_state = 9, .external_lex_state = 2}, [5733] = {.lex_state = 9, .external_lex_state = 2}, [5734] = {.lex_state = 0, .external_lex_state = 2}, [5735] = {.lex_state = 0, .external_lex_state = 2}, [5736] = {.lex_state = 0, .external_lex_state = 2}, [5737] = {.lex_state = 0, .external_lex_state = 2}, [5738] = {.lex_state = 0, .external_lex_state = 2}, [5739] = {.lex_state = 0, .external_lex_state = 2}, [5740] = {.lex_state = 0, .external_lex_state = 2}, [5741] = {.lex_state = 0, .external_lex_state = 2}, [5742] = {.lex_state = 0, .external_lex_state = 2}, [5743] = {.lex_state = 0, .external_lex_state = 2}, [5744] = {.lex_state = 0, .external_lex_state = 2}, [5745] = {.lex_state = 0, .external_lex_state = 2}, [5746] = {.lex_state = 172, .external_lex_state = 2}, [5747] = {.lex_state = 0, .external_lex_state = 2}, [5748] = {.lex_state = 0, .external_lex_state = 2}, [5749] = {.lex_state = 0, .external_lex_state = 2}, [5750] = {.lex_state = 0, .external_lex_state = 2}, [5751] = {.lex_state = 9, .external_lex_state = 2}, [5752] = {.lex_state = 9, .external_lex_state = 2}, [5753] = {.lex_state = 172, .external_lex_state = 2}, [5754] = {.lex_state = 0, .external_lex_state = 2}, [5755] = {.lex_state = 172, .external_lex_state = 2}, [5756] = {.lex_state = 0, .external_lex_state = 2}, [5757] = {.lex_state = 9, .external_lex_state = 2}, [5758] = {.lex_state = 0, .external_lex_state = 2}, [5759] = {.lex_state = 0, .external_lex_state = 2}, [5760] = {.lex_state = 0, .external_lex_state = 2}, [5761] = {.lex_state = 9, .external_lex_state = 2}, [5762] = {.lex_state = 172, .external_lex_state = 2}, [5763] = {.lex_state = 0, .external_lex_state = 2}, [5764] = {.lex_state = 0, .external_lex_state = 2}, [5765] = {.lex_state = 9, .external_lex_state = 2}, [5766] = {.lex_state = 0, .external_lex_state = 2}, [5767] = {.lex_state = 0, .external_lex_state = 2}, [5768] = {.lex_state = 0, .external_lex_state = 2}, [5769] = {.lex_state = 0, .external_lex_state = 2}, [5770] = {.lex_state = 0, .external_lex_state = 2}, [5771] = {.lex_state = 0, .external_lex_state = 2}, [5772] = {.lex_state = 172, .external_lex_state = 2}, [5773] = {.lex_state = 0, .external_lex_state = 2}, [5774] = {.lex_state = 0, .external_lex_state = 2}, [5775] = {.lex_state = 0, .external_lex_state = 2}, [5776] = {.lex_state = 172, .external_lex_state = 2}, [5777] = {.lex_state = 0, .external_lex_state = 2}, [5778] = {.lex_state = 0, .external_lex_state = 2}, [5779] = {.lex_state = 9, .external_lex_state = 2}, [5780] = {.lex_state = 9, .external_lex_state = 2}, [5781] = {.lex_state = 0, .external_lex_state = 2}, [5782] = {.lex_state = 0, .external_lex_state = 2}, [5783] = {.lex_state = 0, .external_lex_state = 2}, [5784] = {.lex_state = 0, .external_lex_state = 2}, [5785] = {.lex_state = 0, .external_lex_state = 2}, [5786] = {.lex_state = 0, .external_lex_state = 2}, [5787] = {.lex_state = 0, .external_lex_state = 2}, [5788] = {.lex_state = 0, .external_lex_state = 2}, [5789] = {.lex_state = 0, .external_lex_state = 2}, [5790] = {.lex_state = 0, .external_lex_state = 2}, [5791] = {.lex_state = 0, .external_lex_state = 2}, [5792] = {.lex_state = 0, .external_lex_state = 2}, [5793] = {.lex_state = 0, .external_lex_state = 2}, [5794] = {.lex_state = 0, .external_lex_state = 2}, [5795] = {.lex_state = 0, .external_lex_state = 2}, [5796] = {.lex_state = 0, .external_lex_state = 2}, [5797] = {.lex_state = 0, .external_lex_state = 2}, [5798] = {.lex_state = 0, .external_lex_state = 2}, [5799] = {.lex_state = 0, .external_lex_state = 2}, [5800] = {.lex_state = 0, .external_lex_state = 2}, [5801] = {.lex_state = 0, .external_lex_state = 2}, [5802] = {.lex_state = 0, .external_lex_state = 2}, [5803] = {.lex_state = 0, .external_lex_state = 2}, [5804] = {.lex_state = 0, .external_lex_state = 2}, [5805] = {.lex_state = 0, .external_lex_state = 2}, [5806] = {.lex_state = 0, .external_lex_state = 2}, [5807] = {.lex_state = 0, .external_lex_state = 2}, [5808] = {.lex_state = 0, .external_lex_state = 2}, [5809] = {.lex_state = 0, .external_lex_state = 2}, [5810] = {.lex_state = 0, .external_lex_state = 2}, [5811] = {.lex_state = 0, .external_lex_state = 2}, [5812] = {.lex_state = 9, .external_lex_state = 2}, [5813] = {.lex_state = 0, .external_lex_state = 2}, [5814] = {.lex_state = 0, .external_lex_state = 2}, [5815] = {.lex_state = 9, .external_lex_state = 2}, [5816] = {.lex_state = 0, .external_lex_state = 2}, [5817] = {.lex_state = 0, .external_lex_state = 2}, [5818] = {.lex_state = 0, .external_lex_state = 2}, [5819] = {.lex_state = 0, .external_lex_state = 2}, [5820] = {.lex_state = 9, .external_lex_state = 2}, [5821] = {.lex_state = 0, .external_lex_state = 2}, [5822] = {.lex_state = 9, .external_lex_state = 2}, [5823] = {.lex_state = 0, .external_lex_state = 2}, [5824] = {.lex_state = 0, .external_lex_state = 2}, [5825] = {.lex_state = 0, .external_lex_state = 2}, [5826] = {.lex_state = 0, .external_lex_state = 2}, [5827] = {.lex_state = 0, .external_lex_state = 2}, [5828] = {.lex_state = 0, .external_lex_state = 2}, [5829] = {.lex_state = 9, .external_lex_state = 2}, [5830] = {.lex_state = 0, .external_lex_state = 2}, [5831] = {.lex_state = 0, .external_lex_state = 2}, [5832] = {.lex_state = 9, .external_lex_state = 2}, [5833] = {.lex_state = 172, .external_lex_state = 2}, [5834] = {.lex_state = 0, .external_lex_state = 2}, [5835] = {.lex_state = 0, .external_lex_state = 2}, [5836] = {.lex_state = 0, .external_lex_state = 2}, [5837] = {.lex_state = 172, .external_lex_state = 2}, [5838] = {.lex_state = 0, .external_lex_state = 2}, [5839] = {.lex_state = 0, .external_lex_state = 2}, [5840] = {.lex_state = 0, .external_lex_state = 2}, [5841] = {.lex_state = 0, .external_lex_state = 2}, [5842] = {.lex_state = 0, .external_lex_state = 2}, [5843] = {.lex_state = 0, .external_lex_state = 2}, [5844] = {.lex_state = 0, .external_lex_state = 2}, [5845] = {.lex_state = 0, .external_lex_state = 2}, [5846] = {.lex_state = 0, .external_lex_state = 2}, [5847] = {.lex_state = 0, .external_lex_state = 2}, [5848] = {.lex_state = 0, .external_lex_state = 2}, [5849] = {.lex_state = 0, .external_lex_state = 2}, [5850] = {.lex_state = 0, .external_lex_state = 2}, [5851] = {.lex_state = 0, .external_lex_state = 2}, [5852] = {.lex_state = 0, .external_lex_state = 2}, [5853] = {.lex_state = 0, .external_lex_state = 2}, [5854] = {.lex_state = 0, .external_lex_state = 2}, [5855] = {.lex_state = 0, .external_lex_state = 2}, [5856] = {.lex_state = 0, .external_lex_state = 2}, [5857] = {.lex_state = 0, .external_lex_state = 2}, [5858] = {.lex_state = 172, .external_lex_state = 2}, [5859] = {.lex_state = 17, .external_lex_state = 2}, [5860] = {.lex_state = 0, .external_lex_state = 2}, [5861] = {.lex_state = 0, .external_lex_state = 2}, [5862] = {.lex_state = 172, .external_lex_state = 2}, [5863] = {.lex_state = 0, .external_lex_state = 2}, [5864] = {.lex_state = 0, .external_lex_state = 2}, [5865] = {.lex_state = 0, .external_lex_state = 2}, [5866] = {.lex_state = 0, .external_lex_state = 2}, [5867] = {.lex_state = 0, .external_lex_state = 2}, [5868] = {.lex_state = 0, .external_lex_state = 2}, [5869] = {.lex_state = 0, .external_lex_state = 2}, [5870] = {.lex_state = 0, .external_lex_state = 2}, [5871] = {.lex_state = 0, .external_lex_state = 2}, [5872] = {.lex_state = 0, .external_lex_state = 2}, [5873] = {.lex_state = 0, .external_lex_state = 2}, [5874] = {.lex_state = 0, .external_lex_state = 2}, [5875] = {.lex_state = 0, .external_lex_state = 2}, [5876] = {.lex_state = 0, .external_lex_state = 2}, [5877] = {.lex_state = 0, .external_lex_state = 2}, [5878] = {.lex_state = 0, .external_lex_state = 2}, [5879] = {.lex_state = 0, .external_lex_state = 2}, [5880] = {.lex_state = 0, .external_lex_state = 2}, [5881] = {.lex_state = 0, .external_lex_state = 2}, [5882] = {.lex_state = 0, .external_lex_state = 2}, [5883] = {.lex_state = 0, .external_lex_state = 2}, [5884] = {.lex_state = 0, .external_lex_state = 2}, [5885] = {.lex_state = 0, .external_lex_state = 2}, [5886] = {.lex_state = 172, .external_lex_state = 2}, [5887] = {.lex_state = 0, .external_lex_state = 2}, [5888] = {.lex_state = 0, .external_lex_state = 2}, [5889] = {.lex_state = 9, .external_lex_state = 2}, [5890] = {.lex_state = 0, .external_lex_state = 2}, [5891] = {.lex_state = 9, .external_lex_state = 2}, [5892] = {.lex_state = 9, .external_lex_state = 2}, [5893] = {.lex_state = 0, .external_lex_state = 2}, [5894] = {.lex_state = 0, .external_lex_state = 2}, [5895] = {.lex_state = 0, .external_lex_state = 2}, [5896] = {.lex_state = 0, .external_lex_state = 2}, [5897] = {.lex_state = 0, .external_lex_state = 2}, [5898] = {.lex_state = 0, .external_lex_state = 2}, [5899] = {.lex_state = 0, .external_lex_state = 2}, [5900] = {.lex_state = 0, .external_lex_state = 2}, [5901] = {.lex_state = 9, .external_lex_state = 2}, [5902] = {.lex_state = 0, .external_lex_state = 2}, [5903] = {.lex_state = 0, .external_lex_state = 2}, [5904] = {.lex_state = 0, .external_lex_state = 2}, [5905] = {.lex_state = 9, .external_lex_state = 2}, [5906] = {.lex_state = 0, .external_lex_state = 2}, [5907] = {.lex_state = 0, .external_lex_state = 2}, [5908] = {.lex_state = 0, .external_lex_state = 2}, [5909] = {.lex_state = 0, .external_lex_state = 2}, [5910] = {.lex_state = 0, .external_lex_state = 2}, [5911] = {.lex_state = 0, .external_lex_state = 2}, [5912] = {.lex_state = 0, .external_lex_state = 2}, [5913] = {.lex_state = 0, .external_lex_state = 2}, [5914] = {.lex_state = 0, .external_lex_state = 2}, [5915] = {.lex_state = 9, .external_lex_state = 2}, [5916] = {.lex_state = 9, .external_lex_state = 2}, [5917] = {.lex_state = 0, .external_lex_state = 2}, [5918] = {.lex_state = 0, .external_lex_state = 2}, [5919] = {.lex_state = 0, .external_lex_state = 2}, [5920] = {.lex_state = 0, .external_lex_state = 2}, [5921] = {.lex_state = 0, .external_lex_state = 2}, [5922] = {.lex_state = 9, .external_lex_state = 2}, [5923] = {.lex_state = 0, .external_lex_state = 2}, [5924] = {.lex_state = 0, .external_lex_state = 2}, [5925] = {.lex_state = 0, .external_lex_state = 2}, [5926] = {.lex_state = 0, .external_lex_state = 2}, [5927] = {.lex_state = 0, .external_lex_state = 2}, [5928] = {.lex_state = 0, .external_lex_state = 2}, [5929] = {.lex_state = 0, .external_lex_state = 2}, [5930] = {.lex_state = 0, .external_lex_state = 2}, [5931] = {.lex_state = 0, .external_lex_state = 2}, [5932] = {.lex_state = 0, .external_lex_state = 2}, [5933] = {.lex_state = 0, .external_lex_state = 2}, [5934] = {.lex_state = 0, .external_lex_state = 2}, [5935] = {.lex_state = 0, .external_lex_state = 2}, [5936] = {.lex_state = 0, .external_lex_state = 2}, [5937] = {.lex_state = 9, .external_lex_state = 2}, [5938] = {.lex_state = 0, .external_lex_state = 2}, [5939] = {.lex_state = 0, .external_lex_state = 2}, [5940] = {.lex_state = 0, .external_lex_state = 2}, [5941] = {.lex_state = 0, .external_lex_state = 2}, [5942] = {.lex_state = 0, .external_lex_state = 2}, [5943] = {.lex_state = 0, .external_lex_state = 2}, [5944] = {.lex_state = 0, .external_lex_state = 2}, [5945] = {.lex_state = 0, .external_lex_state = 2}, [5946] = {.lex_state = 0, .external_lex_state = 2}, [5947] = {.lex_state = 0, .external_lex_state = 2}, [5948] = {.lex_state = 0, .external_lex_state = 2}, [5949] = {.lex_state = 0, .external_lex_state = 2}, [5950] = {.lex_state = 0, .external_lex_state = 2}, [5951] = {.lex_state = 0, .external_lex_state = 2}, [5952] = {.lex_state = 0, .external_lex_state = 2}, [5953] = {.lex_state = 0, .external_lex_state = 2}, [5954] = {.lex_state = 0, .external_lex_state = 2}, [5955] = {.lex_state = 0, .external_lex_state = 2}, [5956] = {.lex_state = 0, .external_lex_state = 2}, [5957] = {.lex_state = 0, .external_lex_state = 2}, [5958] = {.lex_state = 0, .external_lex_state = 2}, [5959] = {.lex_state = 0, .external_lex_state = 2}, [5960] = {.lex_state = 0, .external_lex_state = 2}, [5961] = {.lex_state = 172, .external_lex_state = 2}, [5962] = {.lex_state = 0, .external_lex_state = 2}, [5963] = {.lex_state = 172, .external_lex_state = 2}, [5964] = {.lex_state = 9, .external_lex_state = 2}, [5965] = {.lex_state = 0, .external_lex_state = 2}, [5966] = {.lex_state = 0, .external_lex_state = 2}, [5967] = {.lex_state = 0, .external_lex_state = 2}, [5968] = {.lex_state = 9, .external_lex_state = 2}, [5969] = {.lex_state = 0, .external_lex_state = 2}, [5970] = {.lex_state = 0, .external_lex_state = 2}, [5971] = {.lex_state = 0, .external_lex_state = 2}, [5972] = {.lex_state = 0, .external_lex_state = 2}, [5973] = {.lex_state = 0, .external_lex_state = 2}, [5974] = {.lex_state = 0, .external_lex_state = 2}, [5975] = {.lex_state = 0, .external_lex_state = 2}, [5976] = {.lex_state = 9, .external_lex_state = 2}, [5977] = {.lex_state = 0, .external_lex_state = 2}, [5978] = {.lex_state = 9, .external_lex_state = 2}, [5979] = {.lex_state = 9, .external_lex_state = 2}, [5980] = {.lex_state = 9, .external_lex_state = 2}, [5981] = {.lex_state = 0, .external_lex_state = 2}, [5982] = {.lex_state = 9, .external_lex_state = 2}, [5983] = {.lex_state = 0, .external_lex_state = 2}, [5984] = {.lex_state = 9, .external_lex_state = 2}, [5985] = {.lex_state = 0, .external_lex_state = 2}, [5986] = {.lex_state = 0, .external_lex_state = 2}, [5987] = {.lex_state = 0, .external_lex_state = 2}, [5988] = {.lex_state = 0, .external_lex_state = 2}, [5989] = {.lex_state = 0, .external_lex_state = 2}, [5990] = {.lex_state = 0, .external_lex_state = 2}, [5991] = {.lex_state = 0, .external_lex_state = 2}, [5992] = {.lex_state = 0, .external_lex_state = 2}, [5993] = {.lex_state = 0, .external_lex_state = 2}, [5994] = {.lex_state = 0, .external_lex_state = 2}, [5995] = {.lex_state = 0, .external_lex_state = 2}, [5996] = {.lex_state = 0, .external_lex_state = 2}, [5997] = {.lex_state = 0, .external_lex_state = 2}, [5998] = {.lex_state = 0, .external_lex_state = 2}, [5999] = {.lex_state = 0, .external_lex_state = 2}, [6000] = {.lex_state = 9, .external_lex_state = 2}, [6001] = {.lex_state = 9, .external_lex_state = 2}, [6002] = {.lex_state = 9, .external_lex_state = 2}, [6003] = {.lex_state = 0, .external_lex_state = 2}, [6004] = {.lex_state = 0, .external_lex_state = 2}, [6005] = {.lex_state = 0, .external_lex_state = 2}, [6006] = {.lex_state = 0, .external_lex_state = 2}, [6007] = {.lex_state = 0, .external_lex_state = 2}, [6008] = {.lex_state = 0, .external_lex_state = 2}, [6009] = {.lex_state = 0, .external_lex_state = 2}, [6010] = {.lex_state = 0, .external_lex_state = 2}, [6011] = {.lex_state = 0, .external_lex_state = 2}, [6012] = {.lex_state = 0, .external_lex_state = 2}, [6013] = {.lex_state = 0, .external_lex_state = 2}, [6014] = {.lex_state = 172, .external_lex_state = 2}, [6015] = {.lex_state = 0, .external_lex_state = 2}, [6016] = {.lex_state = 0, .external_lex_state = 2}, [6017] = {.lex_state = 0, .external_lex_state = 2}, [6018] = {.lex_state = 0, .external_lex_state = 2}, [6019] = {.lex_state = 0, .external_lex_state = 2}, [6020] = {.lex_state = 0, .external_lex_state = 2}, [6021] = {.lex_state = 172, .external_lex_state = 2}, [6022] = {.lex_state = 0, .external_lex_state = 2}, [6023] = {.lex_state = 0, .external_lex_state = 2}, [6024] = {.lex_state = 172, .external_lex_state = 2}, [6025] = {.lex_state = 0, .external_lex_state = 2}, [6026] = {.lex_state = 0, .external_lex_state = 2}, [6027] = {.lex_state = 172, .external_lex_state = 2}, [6028] = {.lex_state = 0, .external_lex_state = 2}, [6029] = {.lex_state = 0, .external_lex_state = 2}, [6030] = {.lex_state = 0, .external_lex_state = 2}, [6031] = {.lex_state = 0, .external_lex_state = 2}, [6032] = {.lex_state = 0, .external_lex_state = 2}, [6033] = {.lex_state = 0, .external_lex_state = 2}, [6034] = {.lex_state = 0, .external_lex_state = 2}, [6035] = {.lex_state = 9, .external_lex_state = 2}, [6036] = {.lex_state = 0, .external_lex_state = 2}, [6037] = {.lex_state = 0, .external_lex_state = 2}, [6038] = {.lex_state = 0, .external_lex_state = 2}, [6039] = {.lex_state = 9, .external_lex_state = 2}, [6040] = {.lex_state = 0, .external_lex_state = 2}, [6041] = {.lex_state = 0, .external_lex_state = 2}, [6042] = {.lex_state = 0, .external_lex_state = 2}, [6043] = {.lex_state = 172, .external_lex_state = 2}, [6044] = {.lex_state = 0, .external_lex_state = 2}, [6045] = {.lex_state = 172, .external_lex_state = 2}, [6046] = {.lex_state = 0, .external_lex_state = 2}, [6047] = {.lex_state = 9, .external_lex_state = 2}, [6048] = {.lex_state = 9, .external_lex_state = 2}, [6049] = {.lex_state = 9, .external_lex_state = 2}, [6050] = {.lex_state = 172, .external_lex_state = 2}, [6051] = {.lex_state = 172, .external_lex_state = 2}, [6052] = {.lex_state = 0, .external_lex_state = 2}, [6053] = {.lex_state = 172, .external_lex_state = 2}, [6054] = {.lex_state = 0, .external_lex_state = 2}, [6055] = {.lex_state = 0, .external_lex_state = 2}, [6056] = {.lex_state = 0, .external_lex_state = 2}, [6057] = {.lex_state = 0, .external_lex_state = 2}, [6058] = {.lex_state = 0, .external_lex_state = 2}, [6059] = {.lex_state = 0, .external_lex_state = 2}, [6060] = {.lex_state = 0, .external_lex_state = 2}, [6061] = {.lex_state = 0, .external_lex_state = 2}, [6062] = {.lex_state = 9, .external_lex_state = 2}, [6063] = {.lex_state = 0, .external_lex_state = 2}, [6064] = {.lex_state = 0, .external_lex_state = 2}, [6065] = {.lex_state = 0, .external_lex_state = 2}, [6066] = {.lex_state = 0, .external_lex_state = 2}, [6067] = {.lex_state = 0, .external_lex_state = 2}, [6068] = {.lex_state = 0, .external_lex_state = 2}, [6069] = {.lex_state = 0, .external_lex_state = 2}, [6070] = {.lex_state = 172, .external_lex_state = 2}, [6071] = {.lex_state = 0, .external_lex_state = 2}, [6072] = {.lex_state = 0, .external_lex_state = 2}, [6073] = {.lex_state = 0, .external_lex_state = 2}, [6074] = {.lex_state = 0, .external_lex_state = 2}, [6075] = {.lex_state = 0, .external_lex_state = 2}, [6076] = {.lex_state = 172, .external_lex_state = 2}, [6077] = {.lex_state = 0, .external_lex_state = 2}, [6078] = {.lex_state = 0, .external_lex_state = 2}, [6079] = {.lex_state = 0, .external_lex_state = 2}, [6080] = {.lex_state = 0, .external_lex_state = 2}, [6081] = {.lex_state = 0, .external_lex_state = 2}, [6082] = {.lex_state = 0, .external_lex_state = 2}, [6083] = {.lex_state = 0, .external_lex_state = 2}, [6084] = {.lex_state = 0, .external_lex_state = 2}, [6085] = {.lex_state = 0, .external_lex_state = 2}, [6086] = {.lex_state = 0, .external_lex_state = 2}, [6087] = {.lex_state = 0, .external_lex_state = 2}, [6088] = {.lex_state = 0, .external_lex_state = 2}, [6089] = {.lex_state = 0, .external_lex_state = 2}, [6090] = {.lex_state = 9, .external_lex_state = 2}, [6091] = {.lex_state = 0, .external_lex_state = 2}, [6092] = {.lex_state = 0, .external_lex_state = 2}, [6093] = {.lex_state = 9, .external_lex_state = 2}, [6094] = {.lex_state = 0, .external_lex_state = 2}, [6095] = {.lex_state = 0, .external_lex_state = 2}, [6096] = {.lex_state = 0, .external_lex_state = 2}, [6097] = {.lex_state = 0, .external_lex_state = 2}, [6098] = {.lex_state = 0, .external_lex_state = 2}, [6099] = {.lex_state = 0, .external_lex_state = 2}, [6100] = {.lex_state = 0, .external_lex_state = 2}, [6101] = {.lex_state = 0, .external_lex_state = 2}, [6102] = {.lex_state = 0, .external_lex_state = 2}, [6103] = {.lex_state = 0, .external_lex_state = 2}, [6104] = {.lex_state = 9, .external_lex_state = 2}, [6105] = {.lex_state = 0, .external_lex_state = 2}, [6106] = {.lex_state = 0, .external_lex_state = 2}, [6107] = {.lex_state = 0, .external_lex_state = 2}, [6108] = {.lex_state = 0, .external_lex_state = 2}, [6109] = {.lex_state = 0, .external_lex_state = 2}, [6110] = {.lex_state = 0, .external_lex_state = 2}, [6111] = {.lex_state = 9, .external_lex_state = 2}, [6112] = {.lex_state = 0, .external_lex_state = 2}, [6113] = {.lex_state = 0, .external_lex_state = 2}, [6114] = {.lex_state = 0, .external_lex_state = 2}, [6115] = {.lex_state = 0, .external_lex_state = 2}, [6116] = {.lex_state = 0, .external_lex_state = 2}, [6117] = {.lex_state = 0, .external_lex_state = 2}, [6118] = {.lex_state = 9, .external_lex_state = 2}, [6119] = {.lex_state = 9, .external_lex_state = 2}, [6120] = {.lex_state = 9, .external_lex_state = 2}, [6121] = {.lex_state = 9, .external_lex_state = 2}, [6122] = {.lex_state = 0, .external_lex_state = 2}, [6123] = {.lex_state = 0, .external_lex_state = 2}, [6124] = {.lex_state = 0, .external_lex_state = 2}, [6125] = {.lex_state = 0, .external_lex_state = 2}, [6126] = {.lex_state = 0, .external_lex_state = 2}, [6127] = {.lex_state = 0, .external_lex_state = 2}, [6128] = {.lex_state = 0, .external_lex_state = 2}, [6129] = {.lex_state = 0, .external_lex_state = 2}, [6130] = {.lex_state = 0, .external_lex_state = 2}, [6131] = {.lex_state = 0, .external_lex_state = 2}, [6132] = {.lex_state = 0, .external_lex_state = 2}, [6133] = {.lex_state = 0, .external_lex_state = 2}, [6134] = {.lex_state = 0, .external_lex_state = 2}, [6135] = {.lex_state = 0, .external_lex_state = 2}, [6136] = {.lex_state = 172, .external_lex_state = 2}, [6137] = {.lex_state = 0, .external_lex_state = 2}, [6138] = {.lex_state = 0, .external_lex_state = 2}, [6139] = {.lex_state = 0, .external_lex_state = 2}, [6140] = {.lex_state = 0, .external_lex_state = 2}, [6141] = {.lex_state = 0, .external_lex_state = 2}, [6142] = {.lex_state = 0, .external_lex_state = 2}, [6143] = {.lex_state = 0, .external_lex_state = 2}, [6144] = {.lex_state = 0, .external_lex_state = 2}, [6145] = {.lex_state = 0, .external_lex_state = 2}, [6146] = {.lex_state = 9, .external_lex_state = 2}, [6147] = {.lex_state = 9, .external_lex_state = 2}, [6148] = {.lex_state = 0, .external_lex_state = 2}, [6149] = {.lex_state = 9, .external_lex_state = 2}, [6150] = {.lex_state = 0, .external_lex_state = 2}, [6151] = {.lex_state = 9, .external_lex_state = 2}, [6152] = {.lex_state = 9, .external_lex_state = 2}, [6153] = {.lex_state = 9, .external_lex_state = 2}, [6154] = {.lex_state = 0, .external_lex_state = 2}, [6155] = {.lex_state = 0, .external_lex_state = 2}, [6156] = {.lex_state = 0, .external_lex_state = 2}, [6157] = {.lex_state = 9, .external_lex_state = 2}, [6158] = {.lex_state = 9, .external_lex_state = 2}, [6159] = {.lex_state = 9, .external_lex_state = 2}, [6160] = {.lex_state = 9, .external_lex_state = 2}, [6161] = {.lex_state = 9, .external_lex_state = 2}, [6162] = {.lex_state = 9, .external_lex_state = 2}, [6163] = {.lex_state = 0, .external_lex_state = 2}, [6164] = {.lex_state = 0, .external_lex_state = 2}, [6165] = {.lex_state = 172, .external_lex_state = 2}, [6166] = {.lex_state = 172, .external_lex_state = 2}, [6167] = {.lex_state = 9, .external_lex_state = 2}, [6168] = {.lex_state = 9, .external_lex_state = 2}, [6169] = {.lex_state = 0, .external_lex_state = 2}, [6170] = {.lex_state = 0, .external_lex_state = 2}, [6171] = {.lex_state = 0, .external_lex_state = 2}, [6172] = {.lex_state = 0, .external_lex_state = 2}, [6173] = {.lex_state = 9, .external_lex_state = 2}, [6174] = {.lex_state = 0, .external_lex_state = 2}, [6175] = {.lex_state = 0, .external_lex_state = 2}, [6176] = {.lex_state = 9, .external_lex_state = 2}, [6177] = {.lex_state = 0, .external_lex_state = 2}, [6178] = {.lex_state = 0, .external_lex_state = 2}, [6179] = {.lex_state = 0, .external_lex_state = 2}, [6180] = {.lex_state = 0, .external_lex_state = 2}, [6181] = {.lex_state = 0, .external_lex_state = 2}, [6182] = {.lex_state = 0, .external_lex_state = 2}, [6183] = {.lex_state = 0, .external_lex_state = 2}, [6184] = {.lex_state = 0, .external_lex_state = 2}, [6185] = {.lex_state = 0, .external_lex_state = 2}, [6186] = {.lex_state = 0, .external_lex_state = 2}, [6187] = {.lex_state = 9, .external_lex_state = 2}, [6188] = {.lex_state = 9, .external_lex_state = 2}, [6189] = {.lex_state = 9, .external_lex_state = 2}, [6190] = {.lex_state = 0, .external_lex_state = 2}, [6191] = {.lex_state = 0, .external_lex_state = 2}, [6192] = {.lex_state = 0, .external_lex_state = 2}, [6193] = {.lex_state = 0, .external_lex_state = 2}, [6194] = {.lex_state = 0, .external_lex_state = 2}, [6195] = {.lex_state = 0, .external_lex_state = 2}, [6196] = {.lex_state = 0, .external_lex_state = 2}, [6197] = {.lex_state = 0, .external_lex_state = 2}, [6198] = {.lex_state = 0, .external_lex_state = 2}, [6199] = {.lex_state = 0, .external_lex_state = 2}, [6200] = {.lex_state = 0, .external_lex_state = 2}, [6201] = {.lex_state = 0, .external_lex_state = 2}, [6202] = {.lex_state = 9, .external_lex_state = 2}, [6203] = {.lex_state = 0, .external_lex_state = 2}, [6204] = {.lex_state = 0, .external_lex_state = 2}, [6205] = {.lex_state = 0, .external_lex_state = 2}, [6206] = {.lex_state = 0, .external_lex_state = 2}, [6207] = {.lex_state = 0, .external_lex_state = 2}, [6208] = {.lex_state = 0, .external_lex_state = 2}, [6209] = {.lex_state = 0, .external_lex_state = 2}, [6210] = {.lex_state = 0, .external_lex_state = 2}, [6211] = {.lex_state = 0, .external_lex_state = 2}, [6212] = {.lex_state = 0, .external_lex_state = 2}, [6213] = {.lex_state = 9, .external_lex_state = 2}, [6214] = {.lex_state = 0, .external_lex_state = 2}, [6215] = {.lex_state = 9, .external_lex_state = 2}, [6216] = {.lex_state = 0, .external_lex_state = 2}, [6217] = {.lex_state = 9, .external_lex_state = 2}, [6218] = {.lex_state = 0, .external_lex_state = 2}, [6219] = {.lex_state = 9, .external_lex_state = 2}, [6220] = {.lex_state = 0, .external_lex_state = 2}, [6221] = {.lex_state = 0, .external_lex_state = 2}, [6222] = {.lex_state = 0, .external_lex_state = 2}, [6223] = {.lex_state = 0, .external_lex_state = 2}, [6224] = {.lex_state = 0, .external_lex_state = 2}, [6225] = {.lex_state = 9, .external_lex_state = 2}, [6226] = {.lex_state = 0, .external_lex_state = 2}, [6227] = {.lex_state = 0, .external_lex_state = 2}, [6228] = {.lex_state = 0, .external_lex_state = 2}, [6229] = {.lex_state = 9, .external_lex_state = 2}, [6230] = {.lex_state = 0, .external_lex_state = 2}, [6231] = {.lex_state = 0, .external_lex_state = 2}, [6232] = {.lex_state = 0, .external_lex_state = 2}, [6233] = {.lex_state = 0, .external_lex_state = 2}, [6234] = {.lex_state = 9, .external_lex_state = 2}, [6235] = {.lex_state = 0, .external_lex_state = 2}, [6236] = {.lex_state = 0, .external_lex_state = 2}, [6237] = {.lex_state = 0, .external_lex_state = 2}, [6238] = {.lex_state = 0, .external_lex_state = 2}, [6239] = {.lex_state = 9, .external_lex_state = 2}, [6240] = {.lex_state = 0, .external_lex_state = 2}, [6241] = {.lex_state = 0, .external_lex_state = 2}, [6242] = {.lex_state = 0, .external_lex_state = 2}, [6243] = {.lex_state = 0, .external_lex_state = 2}, [6244] = {.lex_state = 0, .external_lex_state = 2}, [6245] = {.lex_state = 0, .external_lex_state = 2}, [6246] = {.lex_state = 0, .external_lex_state = 2}, [6247] = {.lex_state = 0, .external_lex_state = 2}, [6248] = {.lex_state = 0, .external_lex_state = 2}, [6249] = {.lex_state = 0, .external_lex_state = 2}, [6250] = {.lex_state = 0, .external_lex_state = 2}, [6251] = {.lex_state = 9, .external_lex_state = 2}, [6252] = {.lex_state = 0, .external_lex_state = 2}, [6253] = {.lex_state = 0, .external_lex_state = 2}, [6254] = {.lex_state = 0, .external_lex_state = 2}, [6255] = {.lex_state = 0, .external_lex_state = 2}, [6256] = {.lex_state = 0, .external_lex_state = 2}, [6257] = {.lex_state = 0, .external_lex_state = 2}, [6258] = {.lex_state = 0, .external_lex_state = 2}, [6259] = {.lex_state = 0, .external_lex_state = 2}, [6260] = {.lex_state = 172, .external_lex_state = 2}, [6261] = {.lex_state = 9, .external_lex_state = 2}, [6262] = {.lex_state = 0, .external_lex_state = 2}, [6263] = {.lex_state = 0, .external_lex_state = 2}, [6264] = {.lex_state = 0, .external_lex_state = 2}, [6265] = {.lex_state = 0, .external_lex_state = 2}, [6266] = {.lex_state = 0, .external_lex_state = 2}, [6267] = {.lex_state = 0, .external_lex_state = 2}, [6268] = {.lex_state = 0, .external_lex_state = 2}, [6269] = {.lex_state = 0, .external_lex_state = 2}, [6270] = {.lex_state = 0, .external_lex_state = 2}, [6271] = {.lex_state = 0, .external_lex_state = 2}, [6272] = {.lex_state = 0, .external_lex_state = 2}, [6273] = {.lex_state = 0, .external_lex_state = 2}, [6274] = {.lex_state = 0, .external_lex_state = 2}, [6275] = {.lex_state = 0, .external_lex_state = 2}, [6276] = {.lex_state = 0, .external_lex_state = 2}, [6277] = {.lex_state = 9, .external_lex_state = 2}, [6278] = {.lex_state = 0, .external_lex_state = 2}, [6279] = {.lex_state = 0, .external_lex_state = 2}, [6280] = {.lex_state = 9, .external_lex_state = 2}, [6281] = {.lex_state = 0, .external_lex_state = 2}, [6282] = {.lex_state = 0, .external_lex_state = 2}, [6283] = {.lex_state = 0, .external_lex_state = 2}, [6284] = {.lex_state = 172, .external_lex_state = 2}, [6285] = {.lex_state = 0, .external_lex_state = 2}, [6286] = {.lex_state = 0, .external_lex_state = 2}, [6287] = {.lex_state = 172, .external_lex_state = 2}, [6288] = {.lex_state = 0, .external_lex_state = 2}, [6289] = {.lex_state = 0, .external_lex_state = 2}, [6290] = {.lex_state = 0, .external_lex_state = 2}, [6291] = {.lex_state = 0, .external_lex_state = 2}, [6292] = {.lex_state = 0, .external_lex_state = 2}, [6293] = {.lex_state = 9, .external_lex_state = 2}, [6294] = {.lex_state = 9, .external_lex_state = 2}, [6295] = {.lex_state = 0, .external_lex_state = 2}, [6296] = {.lex_state = 0, .external_lex_state = 2}, [6297] = {.lex_state = 0, .external_lex_state = 2}, [6298] = {.lex_state = 9, .external_lex_state = 2}, [6299] = {.lex_state = 0, .external_lex_state = 2}, [6300] = {.lex_state = 0, .external_lex_state = 2}, [6301] = {.lex_state = 172, .external_lex_state = 2}, [6302] = {.lex_state = 0, .external_lex_state = 2}, [6303] = {.lex_state = 9, .external_lex_state = 2}, [6304] = {.lex_state = 0, .external_lex_state = 2}, [6305] = {.lex_state = 0, .external_lex_state = 2}, [6306] = {.lex_state = 172, .external_lex_state = 2}, [6307] = {.lex_state = 172, .external_lex_state = 2}, [6308] = {.lex_state = 9, .external_lex_state = 2}, [6309] = {.lex_state = 0, .external_lex_state = 2}, [6310] = {.lex_state = 9, .external_lex_state = 2}, [6311] = {.lex_state = 0, .external_lex_state = 2}, [6312] = {.lex_state = 172, .external_lex_state = 2}, [6313] = {.lex_state = 0, .external_lex_state = 2}, [6314] = {.lex_state = 0, .external_lex_state = 2}, [6315] = {.lex_state = 0, .external_lex_state = 2}, [6316] = {.lex_state = 0, .external_lex_state = 2}, [6317] = {.lex_state = 0, .external_lex_state = 2}, [6318] = {.lex_state = 0, .external_lex_state = 2}, [6319] = {.lex_state = 9, .external_lex_state = 2}, [6320] = {.lex_state = 0, .external_lex_state = 2}, [6321] = {.lex_state = 9, .external_lex_state = 2}, [6322] = {.lex_state = 0, .external_lex_state = 2}, [6323] = {.lex_state = 9, .external_lex_state = 2}, [6324] = {.lex_state = 9, .external_lex_state = 2}, [6325] = {.lex_state = 9, .external_lex_state = 2}, [6326] = {.lex_state = 0, .external_lex_state = 2}, [6327] = {.lex_state = 172, .external_lex_state = 2}, [6328] = {.lex_state = 0, .external_lex_state = 2}, [6329] = {.lex_state = 0, .external_lex_state = 2}, [6330] = {.lex_state = 0, .external_lex_state = 2}, [6331] = {.lex_state = 9, .external_lex_state = 2}, [6332] = {.lex_state = 0, .external_lex_state = 2}, [6333] = {.lex_state = 0, .external_lex_state = 2}, [6334] = {.lex_state = 9, .external_lex_state = 2}, [6335] = {.lex_state = 9, .external_lex_state = 2}, [6336] = {.lex_state = 9, .external_lex_state = 2}, [6337] = {.lex_state = 0, .external_lex_state = 2}, [6338] = {.lex_state = 0, .external_lex_state = 2}, [6339] = {.lex_state = 0, .external_lex_state = 2}, [6340] = {.lex_state = 0, .external_lex_state = 2}, [6341] = {.lex_state = 0, .external_lex_state = 2}, [6342] = {.lex_state = 9, .external_lex_state = 2}, [6343] = {.lex_state = 9, .external_lex_state = 2}, [6344] = {.lex_state = 0, .external_lex_state = 2}, [6345] = {.lex_state = 0, .external_lex_state = 2}, [6346] = {.lex_state = 0, .external_lex_state = 2}, [6347] = {.lex_state = 0, .external_lex_state = 2}, [6348] = {.lex_state = 172, .external_lex_state = 2}, [6349] = {.lex_state = 0, .external_lex_state = 2}, [6350] = {.lex_state = 0, .external_lex_state = 2}, [6351] = {.lex_state = 0, .external_lex_state = 2}, [6352] = {.lex_state = 0, .external_lex_state = 2}, [6353] = {.lex_state = 0, .external_lex_state = 2}, [6354] = {.lex_state = 0, .external_lex_state = 2}, [6355] = {.lex_state = 0, .external_lex_state = 2}, [6356] = {.lex_state = 0, .external_lex_state = 2}, [6357] = {.lex_state = 0, .external_lex_state = 2}, [6358] = {.lex_state = 9, .external_lex_state = 2}, [6359] = {.lex_state = 9, .external_lex_state = 2}, [6360] = {.lex_state = 0, .external_lex_state = 2}, [6361] = {.lex_state = 0, .external_lex_state = 2}, [6362] = {.lex_state = 0, .external_lex_state = 2}, [6363] = {.lex_state = 0, .external_lex_state = 2}, [6364] = {.lex_state = 172, .external_lex_state = 2}, [6365] = {.lex_state = 0, .external_lex_state = 2}, [6366] = {.lex_state = 9, .external_lex_state = 2}, [6367] = {.lex_state = 0, .external_lex_state = 2}, [6368] = {.lex_state = 0, .external_lex_state = 2}, [6369] = {.lex_state = 172, .external_lex_state = 2}, [6370] = {.lex_state = 0, .external_lex_state = 2}, [6371] = {.lex_state = 9, .external_lex_state = 2}, [6372] = {.lex_state = 0, .external_lex_state = 2}, [6373] = {.lex_state = 0, .external_lex_state = 2}, [6374] = {.lex_state = 0, .external_lex_state = 2}, [6375] = {.lex_state = 9, .external_lex_state = 2}, [6376] = {.lex_state = 0, .external_lex_state = 2}, [6377] = {.lex_state = 0, .external_lex_state = 2}, [6378] = {.lex_state = 0, .external_lex_state = 2}, [6379] = {.lex_state = 172, .external_lex_state = 2}, [6380] = {.lex_state = 9, .external_lex_state = 2}, [6381] = {.lex_state = 0, .external_lex_state = 2}, [6382] = {.lex_state = 9, .external_lex_state = 2}, [6383] = {.lex_state = 0, .external_lex_state = 2}, [6384] = {.lex_state = 9, .external_lex_state = 2}, [6385] = {.lex_state = 0, .external_lex_state = 2}, [6386] = {.lex_state = 0, .external_lex_state = 2}, [6387] = {.lex_state = 0, .external_lex_state = 2}, [6388] = {.lex_state = 0, .external_lex_state = 2}, [6389] = {.lex_state = 0, .external_lex_state = 2}, [6390] = {.lex_state = 172, .external_lex_state = 2}, [6391] = {.lex_state = 0, .external_lex_state = 2}, [6392] = {.lex_state = 0, .external_lex_state = 2}, [6393] = {.lex_state = 0, .external_lex_state = 2}, [6394] = {.lex_state = 0, .external_lex_state = 2}, [6395] = {.lex_state = 9, .external_lex_state = 2}, [6396] = {.lex_state = 9, .external_lex_state = 2}, [6397] = {.lex_state = 0, .external_lex_state = 2}, [6398] = {.lex_state = 9, .external_lex_state = 2}, [6399] = {.lex_state = 0, .external_lex_state = 2}, [6400] = {.lex_state = 0, .external_lex_state = 2}, [6401] = {.lex_state = 0, .external_lex_state = 2}, [6402] = {.lex_state = 9, .external_lex_state = 2}, [6403] = {.lex_state = 9, .external_lex_state = 2}, [6404] = {.lex_state = 0, .external_lex_state = 2}, [6405] = {.lex_state = 9, .external_lex_state = 2}, [6406] = {.lex_state = 9, .external_lex_state = 2}, [6407] = {.lex_state = 0, .external_lex_state = 2}, [6408] = {.lex_state = 9, .external_lex_state = 2}, [6409] = {.lex_state = 0, .external_lex_state = 2}, [6410] = {.lex_state = 172, .external_lex_state = 2}, [6411] = {.lex_state = 0, .external_lex_state = 2}, [6412] = {.lex_state = 0, .external_lex_state = 2}, [6413] = {.lex_state = 9, .external_lex_state = 2}, [6414] = {.lex_state = 17, .external_lex_state = 2}, [6415] = {.lex_state = 9, .external_lex_state = 2}, [6416] = {.lex_state = 9, .external_lex_state = 2}, [6417] = {.lex_state = 17, .external_lex_state = 2}, [6418] = {.lex_state = 9, .external_lex_state = 2}, [6419] = {.lex_state = 0, .external_lex_state = 2}, [6420] = {.lex_state = 0, .external_lex_state = 2}, [6421] = {.lex_state = 9, .external_lex_state = 2}, [6422] = {.lex_state = 0, .external_lex_state = 2}, [6423] = {.lex_state = 0, .external_lex_state = 2}, [6424] = {.lex_state = 9, .external_lex_state = 2}, [6425] = {.lex_state = 9, .external_lex_state = 2}, [6426] = {.lex_state = 0, .external_lex_state = 2}, [6427] = {.lex_state = 9, .external_lex_state = 2}, [6428] = {.lex_state = 17, .external_lex_state = 2}, [6429] = {.lex_state = 0, .external_lex_state = 2}, [6430] = {.lex_state = 0, .external_lex_state = 2}, [6431] = {.lex_state = 17, .external_lex_state = 2}, [6432] = {.lex_state = 9, .external_lex_state = 6}, [6433] = {.lex_state = 9, .external_lex_state = 2}, [6434] = {.lex_state = 0, .external_lex_state = 2}, [6435] = {.lex_state = 0, .external_lex_state = 2}, [6436] = {.lex_state = 0, .external_lex_state = 2}, [6437] = {.lex_state = 0, .external_lex_state = 2}, [6438] = {.lex_state = 17, .external_lex_state = 2}, [6439] = {.lex_state = 9, .external_lex_state = 2}, [6440] = {.lex_state = 0, .external_lex_state = 2}, [6441] = {.lex_state = 0, .external_lex_state = 2}, [6442] = {.lex_state = 0, .external_lex_state = 2}, [6443] = {.lex_state = 0, .external_lex_state = 2}, [6444] = {.lex_state = 17, .external_lex_state = 2}, [6445] = {.lex_state = 9, .external_lex_state = 2}, [6446] = {.lex_state = 9, .external_lex_state = 2}, [6447] = {.lex_state = 9, .external_lex_state = 2}, [6448] = {.lex_state = 9, .external_lex_state = 2}, [6449] = {.lex_state = 9, .external_lex_state = 2}, [6450] = {.lex_state = 0, .external_lex_state = 2}, [6451] = {.lex_state = 9, .external_lex_state = 2}, [6452] = {.lex_state = 0, .external_lex_state = 2}, [6453] = {.lex_state = 9, .external_lex_state = 6}, [6454] = {.lex_state = 0, .external_lex_state = 2}, [6455] = {.lex_state = 9, .external_lex_state = 2}, [6456] = {.lex_state = 9, .external_lex_state = 6}, [6457] = {.lex_state = 0, .external_lex_state = 2}, [6458] = {.lex_state = 0, .external_lex_state = 2}, [6459] = {.lex_state = 0, .external_lex_state = 2}, [6460] = {.lex_state = 0, .external_lex_state = 2}, [6461] = {.lex_state = 0, .external_lex_state = 2}, [6462] = {.lex_state = 17, .external_lex_state = 2}, [6463] = {.lex_state = 0, .external_lex_state = 2}, [6464] = {.lex_state = 9, .external_lex_state = 2}, [6465] = {.lex_state = 17, .external_lex_state = 2}, [6466] = {.lex_state = 0, .external_lex_state = 2}, [6467] = {.lex_state = 0, .external_lex_state = 2}, [6468] = {.lex_state = 17, .external_lex_state = 2}, [6469] = {.lex_state = 0, .external_lex_state = 2}, [6470] = {.lex_state = 0, .external_lex_state = 2}, [6471] = {.lex_state = 17, .external_lex_state = 2}, [6472] = {.lex_state = 0, .external_lex_state = 2}, [6473] = {.lex_state = 0, .external_lex_state = 2}, [6474] = {.lex_state = 0, .external_lex_state = 2}, [6475] = {.lex_state = 0, .external_lex_state = 2}, [6476] = {.lex_state = 0, .external_lex_state = 2}, [6477] = {.lex_state = 0, .external_lex_state = 2}, [6478] = {.lex_state = 0, .external_lex_state = 2}, [6479] = {.lex_state = 0, .external_lex_state = 2}, [6480] = {.lex_state = 9, .external_lex_state = 2}, [6481] = {.lex_state = 9, .external_lex_state = 2}, [6482] = {.lex_state = 0, .external_lex_state = 2}, [6483] = {.lex_state = 0, .external_lex_state = 2}, [6484] = {.lex_state = 9, .external_lex_state = 2}, [6485] = {.lex_state = 0, .external_lex_state = 2}, [6486] = {.lex_state = 0, .external_lex_state = 2}, [6487] = {.lex_state = 0, .external_lex_state = 2}, [6488] = {.lex_state = 9, .external_lex_state = 2}, [6489] = {.lex_state = 17, .external_lex_state = 2}, [6490] = {.lex_state = 0, .external_lex_state = 2}, [6491] = {.lex_state = 9, .external_lex_state = 2}, [6492] = {.lex_state = 0, .external_lex_state = 2}, [6493] = {.lex_state = 0, .external_lex_state = 2}, [6494] = {.lex_state = 0, .external_lex_state = 2}, [6495] = {.lex_state = 172, .external_lex_state = 2}, [6496] = {.lex_state = 0, .external_lex_state = 2}, [6497] = {.lex_state = 9, .external_lex_state = 2}, [6498] = {.lex_state = 17, .external_lex_state = 2}, [6499] = {.lex_state = 17, .external_lex_state = 2}, [6500] = {.lex_state = 0, .external_lex_state = 2}, [6501] = {.lex_state = 0, .external_lex_state = 2}, [6502] = {.lex_state = 9, .external_lex_state = 2}, [6503] = {.lex_state = 0, .external_lex_state = 2}, [6504] = {.lex_state = 9, .external_lex_state = 2}, [6505] = {.lex_state = 9, .external_lex_state = 2}, [6506] = {.lex_state = 0, .external_lex_state = 2}, [6507] = {.lex_state = 0, .external_lex_state = 2}, [6508] = {.lex_state = 17, .external_lex_state = 2}, [6509] = {.lex_state = 9, .external_lex_state = 2}, [6510] = {.lex_state = 0, .external_lex_state = 2}, [6511] = {.lex_state = 17, .external_lex_state = 2}, [6512] = {.lex_state = 9, .external_lex_state = 2}, [6513] = {.lex_state = 0, .external_lex_state = 2}, [6514] = {.lex_state = 0, .external_lex_state = 2}, [6515] = {.lex_state = 9, .external_lex_state = 2}, [6516] = {.lex_state = 0, .external_lex_state = 2}, [6517] = {.lex_state = 9, .external_lex_state = 2}, [6518] = {.lex_state = 0, .external_lex_state = 2}, [6519] = {.lex_state = 0, .external_lex_state = 2}, [6520] = {.lex_state = 0, .external_lex_state = 2}, [6521] = {.lex_state = 9, .external_lex_state = 2}, [6522] = {.lex_state = 0, .external_lex_state = 2}, [6523] = {.lex_state = 0, .external_lex_state = 2}, [6524] = {.lex_state = 9, .external_lex_state = 2}, [6525] = {.lex_state = 0, .external_lex_state = 2}, [6526] = {.lex_state = 0, .external_lex_state = 2}, [6527] = {.lex_state = 0, .external_lex_state = 2}, [6528] = {.lex_state = 17, .external_lex_state = 2}, [6529] = {.lex_state = 9, .external_lex_state = 2}, [6530] = {.lex_state = 17, .external_lex_state = 2}, [6531] = {.lex_state = 17, .external_lex_state = 2}, [6532] = {.lex_state = 0, .external_lex_state = 2}, [6533] = {.lex_state = 0, .external_lex_state = 2}, [6534] = {.lex_state = 0, .external_lex_state = 2}, [6535] = {.lex_state = 0, .external_lex_state = 2}, [6536] = {.lex_state = 0, .external_lex_state = 2}, [6537] = {.lex_state = 0, .external_lex_state = 2}, [6538] = {.lex_state = 0, .external_lex_state = 2}, [6539] = {.lex_state = 0, .external_lex_state = 2}, [6540] = {.lex_state = 0, .external_lex_state = 2}, [6541] = {.lex_state = 0, .external_lex_state = 2}, [6542] = {.lex_state = 0, .external_lex_state = 2}, [6543] = {.lex_state = 0, .external_lex_state = 2}, [6544] = {.lex_state = 9, .external_lex_state = 2}, [6545] = {.lex_state = 9, .external_lex_state = 2}, [6546] = {.lex_state = 0, .external_lex_state = 2}, [6547] = {.lex_state = 0, .external_lex_state = 2}, [6548] = {.lex_state = 0, .external_lex_state = 2}, [6549] = {.lex_state = 0, .external_lex_state = 2}, [6550] = {.lex_state = 0, .external_lex_state = 2}, [6551] = {.lex_state = 0, .external_lex_state = 2}, [6552] = {.lex_state = 0, .external_lex_state = 2}, [6553] = {.lex_state = 0, .external_lex_state = 2}, [6554] = {.lex_state = 0, .external_lex_state = 2}, [6555] = {.lex_state = 0, .external_lex_state = 2}, [6556] = {.lex_state = 17, .external_lex_state = 2}, [6557] = {.lex_state = 17, .external_lex_state = 2}, [6558] = {.lex_state = 0, .external_lex_state = 2}, [6559] = {.lex_state = 9, .external_lex_state = 2}, [6560] = {.lex_state = 0, .external_lex_state = 2}, [6561] = {.lex_state = 0, .external_lex_state = 2}, [6562] = {.lex_state = 9, .external_lex_state = 2}, [6563] = {.lex_state = 9, .external_lex_state = 2}, [6564] = {.lex_state = 0, .external_lex_state = 2}, [6565] = {.lex_state = 0, .external_lex_state = 2}, [6566] = {.lex_state = 172, .external_lex_state = 2}, [6567] = {.lex_state = 0, .external_lex_state = 2}, [6568] = {.lex_state = 0, .external_lex_state = 2}, [6569] = {.lex_state = 9, .external_lex_state = 2}, [6570] = {.lex_state = 17, .external_lex_state = 2}, [6571] = {.lex_state = 172, .external_lex_state = 2}, [6572] = {.lex_state = 0, .external_lex_state = 2}, [6573] = {.lex_state = 17, .external_lex_state = 2}, [6574] = {.lex_state = 9, .external_lex_state = 2}, [6575] = {.lex_state = 0, .external_lex_state = 2}, [6576] = {.lex_state = 17, .external_lex_state = 2}, [6577] = {.lex_state = 9, .external_lex_state = 2}, [6578] = {.lex_state = 17, .external_lex_state = 2}, [6579] = {.lex_state = 0, .external_lex_state = 2}, [6580] = {.lex_state = 9, .external_lex_state = 2}, [6581] = {.lex_state = 0, .external_lex_state = 2}, [6582] = {.lex_state = 0, .external_lex_state = 2}, [6583] = {.lex_state = 0, .external_lex_state = 2}, [6584] = {.lex_state = 0, .external_lex_state = 2}, [6585] = {.lex_state = 0, .external_lex_state = 2}, [6586] = {.lex_state = 0, .external_lex_state = 2}, [6587] = {.lex_state = 0, .external_lex_state = 2}, [6588] = {.lex_state = 0, .external_lex_state = 2}, [6589] = {.lex_state = 0, .external_lex_state = 2}, [6590] = {.lex_state = 9, .external_lex_state = 2}, [6591] = {.lex_state = 0, .external_lex_state = 2}, [6592] = {.lex_state = 9, .external_lex_state = 2}, [6593] = {.lex_state = 9, .external_lex_state = 6}, [6594] = {.lex_state = 9, .external_lex_state = 6}, [6595] = {.lex_state = 9, .external_lex_state = 2}, [6596] = {.lex_state = 0, .external_lex_state = 2}, [6597] = {.lex_state = 9, .external_lex_state = 2}, [6598] = {.lex_state = 0, .external_lex_state = 2}, [6599] = {.lex_state = 9, .external_lex_state = 2}, [6600] = {.lex_state = 9, .external_lex_state = 2}, [6601] = {.lex_state = 0, .external_lex_state = 2}, [6602] = {.lex_state = 0, .external_lex_state = 2}, [6603] = {.lex_state = 0, .external_lex_state = 2}, [6604] = {.lex_state = 0, .external_lex_state = 2}, [6605] = {.lex_state = 0, .external_lex_state = 2}, [6606] = {.lex_state = 0, .external_lex_state = 2}, [6607] = {.lex_state = 0, .external_lex_state = 2}, [6608] = {.lex_state = 0, .external_lex_state = 2}, [6609] = {.lex_state = 9, .external_lex_state = 6}, [6610] = {.lex_state = 0, .external_lex_state = 2}, [6611] = {.lex_state = 0, .external_lex_state = 2}, [6612] = {.lex_state = 17, .external_lex_state = 2}, [6613] = {.lex_state = 0, .external_lex_state = 2}, [6614] = {.lex_state = 0, .external_lex_state = 2}, [6615] = {.lex_state = 0, .external_lex_state = 2}, [6616] = {.lex_state = 9, .external_lex_state = 2}, [6617] = {.lex_state = 9, .external_lex_state = 2}, [6618] = {.lex_state = 0, .external_lex_state = 2}, [6619] = {.lex_state = 9, .external_lex_state = 2}, [6620] = {.lex_state = 17, .external_lex_state = 2}, [6621] = {.lex_state = 172, .external_lex_state = 2}, [6622] = {.lex_state = 9, .external_lex_state = 2}, [6623] = {.lex_state = 0, .external_lex_state = 2}, [6624] = {.lex_state = 9, .external_lex_state = 2}, [6625] = {.lex_state = 9, .external_lex_state = 2}, [6626] = {.lex_state = 0, .external_lex_state = 2}, [6627] = {.lex_state = 0, .external_lex_state = 2}, [6628] = {.lex_state = 9, .external_lex_state = 2}, [6629] = {.lex_state = 0, .external_lex_state = 2}, [6630] = {.lex_state = 0, .external_lex_state = 2}, [6631] = {.lex_state = 9, .external_lex_state = 2}, [6632] = {.lex_state = 17, .external_lex_state = 2}, [6633] = {.lex_state = 0, .external_lex_state = 2}, [6634] = {.lex_state = 0, .external_lex_state = 2}, [6635] = {.lex_state = 0, .external_lex_state = 2}, [6636] = {.lex_state = 9, .external_lex_state = 2}, [6637] = {.lex_state = 0, .external_lex_state = 2}, [6638] = {.lex_state = 0, .external_lex_state = 2}, [6639] = {.lex_state = 0, .external_lex_state = 2}, [6640] = {.lex_state = 0, .external_lex_state = 2}, [6641] = {.lex_state = 0, .external_lex_state = 2}, [6642] = {.lex_state = 0, .external_lex_state = 2}, [6643] = {.lex_state = 0, .external_lex_state = 2}, [6644] = {.lex_state = 9, .external_lex_state = 2}, [6645] = {.lex_state = 0, .external_lex_state = 2}, [6646] = {.lex_state = 172, .external_lex_state = 2}, [6647] = {.lex_state = 0, .external_lex_state = 2}, [6648] = {.lex_state = 0, .external_lex_state = 2}, [6649] = {.lex_state = 9, .external_lex_state = 2}, [6650] = {.lex_state = 0, .external_lex_state = 2}, [6651] = {.lex_state = 0, .external_lex_state = 2}, [6652] = {.lex_state = 0, .external_lex_state = 2}, [6653] = {.lex_state = 9, .external_lex_state = 2}, [6654] = {.lex_state = 9, .external_lex_state = 2}, [6655] = {.lex_state = 0, .external_lex_state = 2}, [6656] = {.lex_state = 9, .external_lex_state = 2}, [6657] = {.lex_state = 9, .external_lex_state = 2}, [6658] = {.lex_state = 9, .external_lex_state = 2}, [6659] = {.lex_state = 9, .external_lex_state = 2}, [6660] = {.lex_state = 0, .external_lex_state = 2}, [6661] = {.lex_state = 0, .external_lex_state = 2}, [6662] = {.lex_state = 9, .external_lex_state = 2}, [6663] = {.lex_state = 0, .external_lex_state = 2}, [6664] = {.lex_state = 0, .external_lex_state = 2}, [6665] = {.lex_state = 9, .external_lex_state = 2}, [6666] = {.lex_state = 9, .external_lex_state = 2}, [6667] = {.lex_state = 0, .external_lex_state = 2}, [6668] = {.lex_state = 0, .external_lex_state = 2}, [6669] = {.lex_state = 0, .external_lex_state = 2}, [6670] = {.lex_state = 0, .external_lex_state = 2}, [6671] = {.lex_state = 17, .external_lex_state = 2}, [6672] = {.lex_state = 0, .external_lex_state = 2}, [6673] = {.lex_state = 0, .external_lex_state = 2}, [6674] = {.lex_state = 172, .external_lex_state = 2}, [6675] = {.lex_state = 0, .external_lex_state = 2}, [6676] = {.lex_state = 0, .external_lex_state = 2}, [6677] = {.lex_state = 0, .external_lex_state = 2}, [6678] = {.lex_state = 0, .external_lex_state = 2}, [6679] = {.lex_state = 9, .external_lex_state = 2}, [6680] = {.lex_state = 0, .external_lex_state = 2}, [6681] = {.lex_state = 0, .external_lex_state = 2}, [6682] = {.lex_state = 0, .external_lex_state = 2}, [6683] = {.lex_state = 9, .external_lex_state = 2}, [6684] = {.lex_state = 9, .external_lex_state = 2}, [6685] = {.lex_state = 0, .external_lex_state = 2}, [6686] = {.lex_state = 9, .external_lex_state = 2}, [6687] = {.lex_state = 0, .external_lex_state = 2}, [6688] = {.lex_state = 0, .external_lex_state = 2}, [6689] = {.lex_state = 17, .external_lex_state = 2}, [6690] = {.lex_state = 0, .external_lex_state = 2}, [6691] = {.lex_state = 0, .external_lex_state = 2}, [6692] = {.lex_state = 172, .external_lex_state = 2}, [6693] = {.lex_state = 9, .external_lex_state = 2}, [6694] = {.lex_state = 0, .external_lex_state = 2}, [6695] = {.lex_state = 9, .external_lex_state = 6}, [6696] = {.lex_state = 9, .external_lex_state = 2}, [6697] = {.lex_state = 9, .external_lex_state = 2}, [6698] = {.lex_state = 9, .external_lex_state = 2}, [6699] = {.lex_state = 0, .external_lex_state = 2}, [6700] = {.lex_state = 9, .external_lex_state = 6}, [6701] = {.lex_state = 9, .external_lex_state = 6}, [6702] = {.lex_state = 0, .external_lex_state = 2}, [6703] = {.lex_state = 9, .external_lex_state = 2}, [6704] = {.lex_state = 0, .external_lex_state = 2}, [6705] = {.lex_state = 0, .external_lex_state = 2}, [6706] = {.lex_state = 9, .external_lex_state = 2}, [6707] = {.lex_state = 0, .external_lex_state = 2}, [6708] = {.lex_state = 9, .external_lex_state = 2}, [6709] = {.lex_state = 0, .external_lex_state = 2}, [6710] = {.lex_state = 9, .external_lex_state = 6}, [6711] = {.lex_state = 0, .external_lex_state = 2}, [6712] = {.lex_state = 9, .external_lex_state = 2}, [6713] = {.lex_state = 0, .external_lex_state = 2}, [6714] = {.lex_state = 9, .external_lex_state = 2}, [6715] = {.lex_state = 0, .external_lex_state = 2}, [6716] = {.lex_state = 0, .external_lex_state = 2}, [6717] = {.lex_state = 0, .external_lex_state = 2}, [6718] = {.lex_state = 17, .external_lex_state = 2}, [6719] = {.lex_state = 0, .external_lex_state = 2}, [6720] = {.lex_state = 17, .external_lex_state = 2}, [6721] = {.lex_state = 0, .external_lex_state = 2}, [6722] = {.lex_state = 9, .external_lex_state = 2}, [6723] = {.lex_state = 172, .external_lex_state = 2}, [6724] = {.lex_state = 17, .external_lex_state = 2}, [6725] = {.lex_state = 9, .external_lex_state = 2}, [6726] = {.lex_state = 9, .external_lex_state = 2}, [6727] = {.lex_state = 0, .external_lex_state = 2}, [6728] = {.lex_state = 0, .external_lex_state = 2}, [6729] = {.lex_state = 0, .external_lex_state = 2}, [6730] = {.lex_state = 0, .external_lex_state = 2}, [6731] = {.lex_state = 0, .external_lex_state = 2}, [6732] = {.lex_state = 17, .external_lex_state = 2}, [6733] = {.lex_state = 172, .external_lex_state = 2}, [6734] = {.lex_state = 0, .external_lex_state = 2}, [6735] = {.lex_state = 9, .external_lex_state = 2}, [6736] = {.lex_state = 0, .external_lex_state = 2}, [6737] = {.lex_state = 0, .external_lex_state = 2}, [6738] = {.lex_state = 0, .external_lex_state = 2}, [6739] = {.lex_state = 0, .external_lex_state = 2}, [6740] = {.lex_state = 9, .external_lex_state = 2}, [6741] = {.lex_state = 0, .external_lex_state = 2}, [6742] = {.lex_state = 9, .external_lex_state = 2}, [6743] = {.lex_state = 0, .external_lex_state = 2}, [6744] = {.lex_state = 0, .external_lex_state = 2}, [6745] = {.lex_state = 9, .external_lex_state = 2}, [6746] = {.lex_state = 0, .external_lex_state = 2}, [6747] = {.lex_state = 9, .external_lex_state = 2}, [6748] = {.lex_state = 0, .external_lex_state = 2}, [6749] = {.lex_state = 0, .external_lex_state = 2}, [6750] = {.lex_state = 0, .external_lex_state = 2}, [6751] = {.lex_state = 0, .external_lex_state = 2}, [6752] = {.lex_state = 9, .external_lex_state = 2}, [6753] = {.lex_state = 9, .external_lex_state = 2}, [6754] = {.lex_state = 17, .external_lex_state = 2}, [6755] = {.lex_state = 0, .external_lex_state = 2}, [6756] = {.lex_state = 0, .external_lex_state = 2}, [6757] = {.lex_state = 172, .external_lex_state = 2}, [6758] = {.lex_state = 9, .external_lex_state = 2}, [6759] = {.lex_state = 0, .external_lex_state = 2}, [6760] = {.lex_state = 0, .external_lex_state = 2}, [6761] = {.lex_state = 9, .external_lex_state = 2}, [6762] = {.lex_state = 9, .external_lex_state = 2}, [6763] = {.lex_state = 9, .external_lex_state = 2}, [6764] = {.lex_state = 0, .external_lex_state = 2}, [6765] = {.lex_state = 0, .external_lex_state = 2}, [6766] = {.lex_state = 0, .external_lex_state = 2}, [6767] = {.lex_state = 17, .external_lex_state = 2}, [6768] = {.lex_state = 0, .external_lex_state = 2}, [6769] = {.lex_state = 0, .external_lex_state = 2}, [6770] = {.lex_state = 0, .external_lex_state = 2}, [6771] = {.lex_state = 0, .external_lex_state = 2}, [6772] = {.lex_state = 0, .external_lex_state = 2}, [6773] = {.lex_state = 9, .external_lex_state = 2}, [6774] = {.lex_state = 9, .external_lex_state = 2}, [6775] = {.lex_state = 9, .external_lex_state = 2}, [6776] = {.lex_state = 0, .external_lex_state = 2}, [6777] = {.lex_state = 0, .external_lex_state = 2}, [6778] = {.lex_state = 0, .external_lex_state = 2}, [6779] = {.lex_state = 0, .external_lex_state = 2}, [6780] = {.lex_state = 0, .external_lex_state = 2}, [6781] = {.lex_state = 9, .external_lex_state = 2}, [6782] = {.lex_state = 17, .external_lex_state = 2}, [6783] = {.lex_state = 0, .external_lex_state = 2}, [6784] = {.lex_state = 9, .external_lex_state = 2}, [6785] = {.lex_state = 0, .external_lex_state = 2}, [6786] = {.lex_state = 0, .external_lex_state = 2}, [6787] = {.lex_state = 0, .external_lex_state = 2}, [6788] = {.lex_state = 0, .external_lex_state = 2}, [6789] = {.lex_state = 0, .external_lex_state = 2}, [6790] = {.lex_state = 0, .external_lex_state = 2}, [6791] = {.lex_state = 0, .external_lex_state = 2}, [6792] = {.lex_state = 0, .external_lex_state = 2}, [6793] = {.lex_state = 0, .external_lex_state = 2}, [6794] = {.lex_state = 9, .external_lex_state = 2}, [6795] = {.lex_state = 0, .external_lex_state = 2}, [6796] = {.lex_state = 9, .external_lex_state = 2}, [6797] = {.lex_state = 0, .external_lex_state = 2}, [6798] = {.lex_state = 0, .external_lex_state = 2}, [6799] = {.lex_state = 9, .external_lex_state = 2}, [6800] = {.lex_state = 9, .external_lex_state = 2}, [6801] = {.lex_state = 9, .external_lex_state = 2}, [6802] = {.lex_state = 9, .external_lex_state = 2}, [6803] = {.lex_state = 0, .external_lex_state = 2}, [6804] = {.lex_state = 0, .external_lex_state = 2}, [6805] = {.lex_state = 9, .external_lex_state = 2}, [6806] = {.lex_state = 0, .external_lex_state = 2}, [6807] = {.lex_state = 0, .external_lex_state = 2}, [6808] = {.lex_state = 0, .external_lex_state = 2}, [6809] = {.lex_state = 0, .external_lex_state = 2}, [6810] = {.lex_state = 9, .external_lex_state = 2}, [6811] = {.lex_state = 0, .external_lex_state = 2}, [6812] = {.lex_state = 0, .external_lex_state = 2}, [6813] = {.lex_state = 0, .external_lex_state = 2}, [6814] = {.lex_state = 9, .external_lex_state = 2}, [6815] = {.lex_state = 0, .external_lex_state = 2}, [6816] = {.lex_state = 0, .external_lex_state = 2}, [6817] = {.lex_state = 9, .external_lex_state = 2}, [6818] = {.lex_state = 0, .external_lex_state = 2}, [6819] = {.lex_state = 9, .external_lex_state = 2}, [6820] = {.lex_state = 0, .external_lex_state = 2}, [6821] = {.lex_state = 0, .external_lex_state = 2}, [6822] = {.lex_state = 0, .external_lex_state = 2}, [6823] = {.lex_state = 9, .external_lex_state = 2}, [6824] = {.lex_state = 0, .external_lex_state = 2}, [6825] = {.lex_state = 0, .external_lex_state = 2}, [6826] = {.lex_state = 0, .external_lex_state = 2}, [6827] = {.lex_state = 0, .external_lex_state = 2}, [6828] = {.lex_state = 0, .external_lex_state = 2}, [6829] = {.lex_state = 0, .external_lex_state = 2}, [6830] = {.lex_state = 0, .external_lex_state = 2}, [6831] = {.lex_state = 0, .external_lex_state = 2}, [6832] = {.lex_state = 0, .external_lex_state = 2}, [6833] = {.lex_state = 0, .external_lex_state = 2}, [6834] = {.lex_state = 17, .external_lex_state = 2}, [6835] = {.lex_state = 9, .external_lex_state = 2}, [6836] = {.lex_state = 0, .external_lex_state = 2}, [6837] = {.lex_state = 0, .external_lex_state = 2}, [6838] = {.lex_state = 0, .external_lex_state = 2}, [6839] = {.lex_state = 9, .external_lex_state = 2}, [6840] = {.lex_state = 17, .external_lex_state = 2}, [6841] = {.lex_state = 0, .external_lex_state = 2}, [6842] = {.lex_state = 0, .external_lex_state = 2}, [6843] = {.lex_state = 0, .external_lex_state = 2}, [6844] = {.lex_state = 0, .external_lex_state = 2}, [6845] = {.lex_state = 0, .external_lex_state = 2}, [6846] = {.lex_state = 17, .external_lex_state = 2}, [6847] = {.lex_state = 9, .external_lex_state = 6}, [6848] = {.lex_state = 0, .external_lex_state = 2}, [6849] = {.lex_state = 0, .external_lex_state = 2}, [6850] = {.lex_state = 9, .external_lex_state = 2}, [6851] = {.lex_state = 9, .external_lex_state = 2}, [6852] = {.lex_state = 0, .external_lex_state = 2}, [6853] = {.lex_state = 0, .external_lex_state = 2}, [6854] = {.lex_state = 9, .external_lex_state = 6}, [6855] = {.lex_state = 9, .external_lex_state = 2}, [6856] = {.lex_state = 9, .external_lex_state = 2}, [6857] = {.lex_state = 0, .external_lex_state = 2}, [6858] = {.lex_state = 0, .external_lex_state = 2}, [6859] = {.lex_state = 9, .external_lex_state = 2}, [6860] = {.lex_state = 17, .external_lex_state = 2}, [6861] = {.lex_state = 0, .external_lex_state = 2}, [6862] = {.lex_state = 0, .external_lex_state = 2}, [6863] = {.lex_state = 9, .external_lex_state = 2}, [6864] = {.lex_state = 0, .external_lex_state = 2}, [6865] = {.lex_state = 17, .external_lex_state = 2}, [6866] = {.lex_state = 0, .external_lex_state = 2}, [6867] = {.lex_state = 17, .external_lex_state = 2}, [6868] = {.lex_state = 0, .external_lex_state = 2}, [6869] = {.lex_state = 9, .external_lex_state = 2}, [6870] = {.lex_state = 0, .external_lex_state = 2}, [6871] = {.lex_state = 17, .external_lex_state = 2}, [6872] = {.lex_state = 9, .external_lex_state = 2}, [6873] = {.lex_state = 0, .external_lex_state = 2}, [6874] = {.lex_state = 9, .external_lex_state = 2}, [6875] = {.lex_state = 0, .external_lex_state = 2}, [6876] = {.lex_state = 9, .external_lex_state = 2}, [6877] = {.lex_state = 9, .external_lex_state = 2}, [6878] = {.lex_state = 0, .external_lex_state = 2}, [6879] = {.lex_state = 0, .external_lex_state = 2}, [6880] = {.lex_state = 0, .external_lex_state = 2}, [6881] = {.lex_state = 9, .external_lex_state = 2}, [6882] = {.lex_state = 17, .external_lex_state = 2}, [6883] = {.lex_state = 0, .external_lex_state = 2}, [6884] = {.lex_state = 0, .external_lex_state = 2}, [6885] = {.lex_state = 9, .external_lex_state = 2}, [6886] = {.lex_state = 0, .external_lex_state = 2}, [6887] = {.lex_state = 0, .external_lex_state = 2}, [6888] = {.lex_state = 9, .external_lex_state = 2}, [6889] = {.lex_state = 0, .external_lex_state = 2}, [6890] = {.lex_state = 0, .external_lex_state = 2}, [6891] = {.lex_state = 9, .external_lex_state = 2}, [6892] = {.lex_state = 9, .external_lex_state = 2}, [6893] = {.lex_state = 0, .external_lex_state = 2}, [6894] = {.lex_state = 0, .external_lex_state = 2}, [6895] = {.lex_state = 9, .external_lex_state = 2}, [6896] = {.lex_state = 0, .external_lex_state = 2}, [6897] = {.lex_state = 0, .external_lex_state = 2}, [6898] = {.lex_state = 0, .external_lex_state = 2}, [6899] = {.lex_state = 17, .external_lex_state = 2}, [6900] = {.lex_state = 9, .external_lex_state = 2}, [6901] = {.lex_state = 0, .external_lex_state = 2}, [6902] = {.lex_state = 9, .external_lex_state = 2}, [6903] = {.lex_state = 0, .external_lex_state = 2}, [6904] = {.lex_state = 0, .external_lex_state = 2}, [6905] = {.lex_state = 0, .external_lex_state = 2}, [6906] = {.lex_state = 0, .external_lex_state = 2}, [6907] = {.lex_state = 9, .external_lex_state = 2}, [6908] = {.lex_state = 9, .external_lex_state = 6}, [6909] = {.lex_state = 0, .external_lex_state = 2}, [6910] = {.lex_state = 9, .external_lex_state = 2}, [6911] = {.lex_state = 9, .external_lex_state = 2}, [6912] = {.lex_state = 0, .external_lex_state = 2}, [6913] = {.lex_state = 0, .external_lex_state = 2}, [6914] = {.lex_state = 9, .external_lex_state = 6}, [6915] = {.lex_state = 0, .external_lex_state = 2}, [6916] = {.lex_state = 0, .external_lex_state = 2}, [6917] = {.lex_state = 0, .external_lex_state = 2}, [6918] = {.lex_state = 0, .external_lex_state = 2}, [6919] = {.lex_state = 9, .external_lex_state = 2}, [6920] = {.lex_state = 0, .external_lex_state = 2}, [6921] = {.lex_state = 0, .external_lex_state = 2}, [6922] = {.lex_state = 0, .external_lex_state = 2}, [6923] = {.lex_state = 0, .external_lex_state = 2}, [6924] = {.lex_state = 9, .external_lex_state = 2}, [6925] = {.lex_state = 0, .external_lex_state = 2}, [6926] = {.lex_state = 0, .external_lex_state = 2}, [6927] = {.lex_state = 0, .external_lex_state = 2}, [6928] = {.lex_state = 0, .external_lex_state = 2}, [6929] = {.lex_state = 9, .external_lex_state = 2}, [6930] = {.lex_state = 0, .external_lex_state = 2}, [6931] = {.lex_state = 0, .external_lex_state = 2}, [6932] = {.lex_state = 17, .external_lex_state = 2}, [6933] = {.lex_state = 0, .external_lex_state = 2}, [6934] = {.lex_state = 0, .external_lex_state = 2}, [6935] = {.lex_state = 0, .external_lex_state = 2}, [6936] = {.lex_state = 9, .external_lex_state = 2}, [6937] = {.lex_state = 9, .external_lex_state = 2}, [6938] = {.lex_state = 9, .external_lex_state = 2}, [6939] = {.lex_state = 9, .external_lex_state = 2}, [6940] = {.lex_state = 0, .external_lex_state = 2}, [6941] = {.lex_state = 0, .external_lex_state = 2}, [6942] = {.lex_state = 0, .external_lex_state = 2}, [6943] = {.lex_state = 9, .external_lex_state = 2}, [6944] = {.lex_state = 0, .external_lex_state = 2}, [6945] = {.lex_state = 9, .external_lex_state = 2}, [6946] = {.lex_state = 9, .external_lex_state = 2}, [6947] = {.lex_state = 9, .external_lex_state = 2}, [6948] = {.lex_state = 172, .external_lex_state = 2}, [6949] = {.lex_state = 604, .external_lex_state = 2}, [6950] = {.lex_state = 627, .external_lex_state = 2}, [6951] = {.lex_state = 0, .external_lex_state = 2}, [6952] = {.lex_state = 0, .external_lex_state = 2}, [6953] = {.lex_state = 0, .external_lex_state = 2}, [6954] = {.lex_state = 0, .external_lex_state = 2}, [6955] = {.lex_state = 0, .external_lex_state = 2}, [6956] = {.lex_state = 0, .external_lex_state = 2}, [6957] = {.lex_state = 0, .external_lex_state = 2}, [6958] = {.lex_state = 0, .external_lex_state = 2}, [6959] = {.lex_state = 0, .external_lex_state = 2}, [6960] = {.lex_state = 0, .external_lex_state = 2}, [6961] = {.lex_state = 0, .external_lex_state = 2}, [6962] = {.lex_state = 0, .external_lex_state = 2}, [6963] = {.lex_state = 0, .external_lex_state = 2}, [6964] = {.lex_state = 9, .external_lex_state = 2}, [6965] = {.lex_state = 0, .external_lex_state = 2}, [6966] = {.lex_state = 0, .external_lex_state = 2}, [6967] = {.lex_state = 0, .external_lex_state = 2}, [6968] = {.lex_state = 0, .external_lex_state = 2}, [6969] = {.lex_state = 9, .external_lex_state = 2}, [6970] = {.lex_state = 9, .external_lex_state = 2}, [6971] = {.lex_state = 9, .external_lex_state = 2}, [6972] = {.lex_state = 0, .external_lex_state = 2}, [6973] = {.lex_state = 0, .external_lex_state = 2}, [6974] = {.lex_state = 0, .external_lex_state = 2}, [6975] = {.lex_state = 9, .external_lex_state = 2}, [6976] = {.lex_state = 0, .external_lex_state = 2}, [6977] = {.lex_state = 9, .external_lex_state = 2}, [6978] = {.lex_state = 0, .external_lex_state = 2}, [6979] = {.lex_state = 0, .external_lex_state = 2}, [6980] = {.lex_state = 0, .external_lex_state = 2}, [6981] = {.lex_state = 0, .external_lex_state = 2}, [6982] = {.lex_state = 0, .external_lex_state = 2}, [6983] = {.lex_state = 0, .external_lex_state = 2}, [6984] = {.lex_state = 9, .external_lex_state = 2}, [6985] = {.lex_state = 0, .external_lex_state = 2}, [6986] = {.lex_state = 9, .external_lex_state = 2}, [6987] = {.lex_state = 9, .external_lex_state = 2}, [6988] = {.lex_state = 471, .external_lex_state = 2}, [6989] = {.lex_state = 0, .external_lex_state = 2}, [6990] = {.lex_state = 0, .external_lex_state = 2}, [6991] = {.lex_state = 0, .external_lex_state = 2}, [6992] = {.lex_state = 0, .external_lex_state = 2}, [6993] = {.lex_state = 0, .external_lex_state = 2}, [6994] = {.lex_state = 0, .external_lex_state = 2}, [6995] = {.lex_state = 9, .external_lex_state = 2}, [6996] = {.lex_state = 0, .external_lex_state = 2}, [6997] = {.lex_state = 0, .external_lex_state = 2}, [6998] = {.lex_state = 0, .external_lex_state = 2}, [6999] = {.lex_state = 9, .external_lex_state = 2}, [7000] = {.lex_state = 0, .external_lex_state = 2}, [7001] = {.lex_state = 0, .external_lex_state = 2}, [7002] = {.lex_state = 9, .external_lex_state = 2}, [7003] = {.lex_state = 0, .external_lex_state = 2}, [7004] = {.lex_state = 0, .external_lex_state = 2}, [7005] = {.lex_state = 0, .external_lex_state = 2}, [7006] = {.lex_state = 0, .external_lex_state = 2}, [7007] = {.lex_state = 0, .external_lex_state = 2}, [7008] = {.lex_state = 0, .external_lex_state = 2}, [7009] = {.lex_state = 9, .external_lex_state = 2}, [7010] = {.lex_state = 0, .external_lex_state = 2}, [7011] = {.lex_state = 0, .external_lex_state = 2}, [7012] = {.lex_state = 0, .external_lex_state = 2}, [7013] = {.lex_state = 0, .external_lex_state = 2}, [7014] = {.lex_state = 0, .external_lex_state = 2}, [7015] = {.lex_state = 0, .external_lex_state = 2}, [7016] = {.lex_state = 9, .external_lex_state = 2}, [7017] = {.lex_state = 0, .external_lex_state = 2}, [7018] = {.lex_state = 0, .external_lex_state = 2}, [7019] = {.lex_state = 0, .external_lex_state = 2}, [7020] = {.lex_state = 0, .external_lex_state = 2}, [7021] = {.lex_state = 0, .external_lex_state = 2}, [7022] = {.lex_state = 0, .external_lex_state = 2}, [7023] = {.lex_state = 0, .external_lex_state = 2}, [7024] = {.lex_state = 0, .external_lex_state = 2}, [7025] = {.lex_state = 0, .external_lex_state = 2}, [7026] = {.lex_state = 0, .external_lex_state = 2}, [7027] = {.lex_state = 0, .external_lex_state = 2}, [7028] = {.lex_state = 0, .external_lex_state = 2}, [7029] = {.lex_state = 0, .external_lex_state = 2}, [7030] = {.lex_state = 0, .external_lex_state = 2}, [7031] = {.lex_state = 0, .external_lex_state = 2}, [7032] = {.lex_state = 0, .external_lex_state = 2}, [7033] = {.lex_state = 0, .external_lex_state = 2}, [7034] = {.lex_state = 0, .external_lex_state = 2}, [7035] = {.lex_state = 0, .external_lex_state = 2}, [7036] = {.lex_state = 0, .external_lex_state = 2}, [7037] = {.lex_state = 0, .external_lex_state = 2}, [7038] = {.lex_state = 0, .external_lex_state = 2}, [7039] = {.lex_state = 0, .external_lex_state = 2}, [7040] = {.lex_state = 0, .external_lex_state = 2}, [7041] = {.lex_state = 0, .external_lex_state = 2}, [7042] = {.lex_state = 0, .external_lex_state = 2}, [7043] = {.lex_state = 0, .external_lex_state = 2}, [7044] = {.lex_state = 9, .external_lex_state = 2}, [7045] = {.lex_state = 0, .external_lex_state = 2}, [7046] = {.lex_state = 0, .external_lex_state = 2}, [7047] = {.lex_state = 9, .external_lex_state = 2}, [7048] = {.lex_state = 0, .external_lex_state = 2}, [7049] = {.lex_state = 0, .external_lex_state = 2}, [7050] = {.lex_state = 9, .external_lex_state = 2}, [7051] = {.lex_state = 0, .external_lex_state = 2}, [7052] = {.lex_state = 0, .external_lex_state = 2}, [7053] = {.lex_state = 0, .external_lex_state = 2}, [7054] = {.lex_state = 172, .external_lex_state = 2}, [7055] = {.lex_state = 0, .external_lex_state = 2}, [7056] = {.lex_state = 9, .external_lex_state = 2}, [7057] = {.lex_state = 0, .external_lex_state = 2}, [7058] = {.lex_state = 0, .external_lex_state = 2}, [7059] = {.lex_state = 0, .external_lex_state = 2}, [7060] = {.lex_state = 0, .external_lex_state = 2}, [7061] = {.lex_state = 0, .external_lex_state = 2}, [7062] = {.lex_state = 0, .external_lex_state = 2}, [7063] = {.lex_state = 0, .external_lex_state = 2}, [7064] = {.lex_state = 0, .external_lex_state = 2}, [7065] = {.lex_state = 0, .external_lex_state = 2}, [7066] = {.lex_state = 0, .external_lex_state = 2}, [7067] = {.lex_state = 9, .external_lex_state = 2}, [7068] = {.lex_state = 0, .external_lex_state = 2}, [7069] = {.lex_state = 0, .external_lex_state = 2}, [7070] = {.lex_state = 0, .external_lex_state = 2}, [7071] = {.lex_state = 9, .external_lex_state = 2}, [7072] = {.lex_state = 9, .external_lex_state = 2}, [7073] = {.lex_state = 172, .external_lex_state = 2}, [7074] = {.lex_state = 9, .external_lex_state = 2}, [7075] = {.lex_state = 0, .external_lex_state = 2}, [7076] = {.lex_state = 0, .external_lex_state = 2}, [7077] = {.lex_state = 0, .external_lex_state = 2}, [7078] = {.lex_state = 0, .external_lex_state = 2}, [7079] = {.lex_state = 0, .external_lex_state = 2}, [7080] = {.lex_state = 471, .external_lex_state = 2}, [7081] = {.lex_state = 604, .external_lex_state = 2}, [7082] = {.lex_state = 627, .external_lex_state = 2}, [7083] = {.lex_state = 0, .external_lex_state = 2}, [7084] = {.lex_state = 0, .external_lex_state = 2}, [7085] = {.lex_state = 0, .external_lex_state = 2}, [7086] = {.lex_state = 0, .external_lex_state = 2}, [7087] = {.lex_state = 0, .external_lex_state = 2}, [7088] = {.lex_state = 0, .external_lex_state = 2}, [7089] = {.lex_state = 9, .external_lex_state = 2}, [7090] = {.lex_state = 9, .external_lex_state = 2}, [7091] = {.lex_state = 0, .external_lex_state = 2}, [7092] = {.lex_state = 0, .external_lex_state = 2}, [7093] = {.lex_state = 0, .external_lex_state = 2}, [7094] = {.lex_state = 0, .external_lex_state = 2}, [7095] = {.lex_state = 0, .external_lex_state = 2}, [7096] = {.lex_state = 0, .external_lex_state = 2}, [7097] = {.lex_state = 172, .external_lex_state = 2}, [7098] = {.lex_state = 0, .external_lex_state = 2}, [7099] = {.lex_state = 172, .external_lex_state = 2}, [7100] = {.lex_state = 0, .external_lex_state = 2}, [7101] = {.lex_state = 0, .external_lex_state = 2}, [7102] = {.lex_state = 0, .external_lex_state = 2}, [7103] = {.lex_state = 9, .external_lex_state = 2}, [7104] = {.lex_state = 9, .external_lex_state = 2}, [7105] = {.lex_state = 0, .external_lex_state = 2}, [7106] = {.lex_state = 9, .external_lex_state = 2}, [7107] = {.lex_state = 172, .external_lex_state = 2}, [7108] = {.lex_state = 172, .external_lex_state = 2}, [7109] = {.lex_state = 172, .external_lex_state = 2}, [7110] = {.lex_state = 172, .external_lex_state = 2}, [7111] = {.lex_state = 0, .external_lex_state = 2}, [7112] = {.lex_state = 9, .external_lex_state = 2}, [7113] = {.lex_state = 9, .external_lex_state = 2}, [7114] = {.lex_state = 0, .external_lex_state = 2}, [7115] = {.lex_state = 0, .external_lex_state = 2}, [7116] = {.lex_state = 0, .external_lex_state = 2}, [7117] = {.lex_state = 0, .external_lex_state = 2}, [7118] = {.lex_state = 0, .external_lex_state = 2}, [7119] = {.lex_state = 0, .external_lex_state = 2}, [7120] = {.lex_state = 0, .external_lex_state = 2}, [7121] = {.lex_state = 0, .external_lex_state = 2}, [7122] = {.lex_state = 0, .external_lex_state = 2}, [7123] = {.lex_state = 0, .external_lex_state = 2}, [7124] = {.lex_state = 0, .external_lex_state = 2}, [7125] = {.lex_state = 9, .external_lex_state = 2}, [7126] = {.lex_state = 9, .external_lex_state = 2}, [7127] = {.lex_state = 9, .external_lex_state = 2}, [7128] = {.lex_state = 9, .external_lex_state = 2}, [7129] = {.lex_state = 0, .external_lex_state = 2}, [7130] = {.lex_state = 0, .external_lex_state = 2}, [7131] = {.lex_state = 627, .external_lex_state = 2}, [7132] = {.lex_state = 0, .external_lex_state = 2}, [7133] = {.lex_state = 0, .external_lex_state = 2}, [7134] = {.lex_state = 0, .external_lex_state = 2}, [7135] = {.lex_state = 0, .external_lex_state = 2}, [7136] = {.lex_state = 0, .external_lex_state = 2}, [7137] = {.lex_state = 0, .external_lex_state = 2}, [7138] = {.lex_state = 0, .external_lex_state = 2}, [7139] = {.lex_state = 0, .external_lex_state = 2}, [7140] = {.lex_state = 0, .external_lex_state = 2}, [7141] = {.lex_state = 0, .external_lex_state = 2}, [7142] = {.lex_state = 0, .external_lex_state = 2}, [7143] = {.lex_state = 0, .external_lex_state = 2}, [7144] = {.lex_state = 0, .external_lex_state = 2}, [7145] = {.lex_state = 0, .external_lex_state = 2}, [7146] = {.lex_state = 0, .external_lex_state = 2}, [7147] = {.lex_state = 0, .external_lex_state = 2}, [7148] = {.lex_state = 0, .external_lex_state = 2}, [7149] = {.lex_state = 0, .external_lex_state = 2}, [7150] = {.lex_state = 0, .external_lex_state = 2}, [7151] = {.lex_state = 0, .external_lex_state = 2}, [7152] = {.lex_state = 0, .external_lex_state = 2}, [7153] = {.lex_state = 0, .external_lex_state = 2}, [7154] = {.lex_state = 0, .external_lex_state = 2}, [7155] = {.lex_state = 9, .external_lex_state = 2}, [7156] = {.lex_state = 9, .external_lex_state = 2}, [7157] = {.lex_state = 0, .external_lex_state = 2}, [7158] = {.lex_state = 0, .external_lex_state = 2}, [7159] = {.lex_state = 0, .external_lex_state = 2}, [7160] = {.lex_state = 0, .external_lex_state = 2}, [7161] = {.lex_state = 0, .external_lex_state = 2}, [7162] = {.lex_state = 0, .external_lex_state = 2}, [7163] = {.lex_state = 0, .external_lex_state = 2}, [7164] = {.lex_state = 0, .external_lex_state = 2}, [7165] = {.lex_state = 0, .external_lex_state = 2}, [7166] = {.lex_state = 604, .external_lex_state = 2}, [7167] = {.lex_state = 471, .external_lex_state = 2}, [7168] = {.lex_state = 0, .external_lex_state = 2}, [7169] = {.lex_state = 0, .external_lex_state = 2}, [7170] = {.lex_state = 0, .external_lex_state = 2}, [7171] = {.lex_state = 0, .external_lex_state = 2}, [7172] = {.lex_state = 0, .external_lex_state = 2}, [7173] = {.lex_state = 0, .external_lex_state = 2}, [7174] = {.lex_state = 0, .external_lex_state = 2}, [7175] = {.lex_state = 0, .external_lex_state = 2}, [7176] = {.lex_state = 9, .external_lex_state = 2}, [7177] = {.lex_state = 172, .external_lex_state = 2}, [7178] = {.lex_state = 9, .external_lex_state = 2}, [7179] = {.lex_state = 172, .external_lex_state = 2}, [7180] = {.lex_state = 0, .external_lex_state = 2}, [7181] = {.lex_state = 9, .external_lex_state = 2}, [7182] = {.lex_state = 9, .external_lex_state = 2}, [7183] = {.lex_state = 172, .external_lex_state = 2}, [7184] = {.lex_state = 0, .external_lex_state = 2}, [7185] = {.lex_state = 172, .external_lex_state = 2}, [7186] = {.lex_state = 0, .external_lex_state = 2}, [7187] = {.lex_state = 9, .external_lex_state = 2}, [7188] = {.lex_state = 0, .external_lex_state = 2}, [7189] = {.lex_state = 0, .external_lex_state = 2}, [7190] = {.lex_state = 9, .external_lex_state = 2}, [7191] = {.lex_state = 9, .external_lex_state = 2}, [7192] = {.lex_state = 0, .external_lex_state = 2}, [7193] = {.lex_state = 9, .external_lex_state = 2}, [7194] = {.lex_state = 0, .external_lex_state = 2}, [7195] = {.lex_state = 0, .external_lex_state = 2}, [7196] = {.lex_state = 0, .external_lex_state = 2}, [7197] = {.lex_state = 0, .external_lex_state = 2}, [7198] = {.lex_state = 0, .external_lex_state = 2}, [7199] = {.lex_state = 0, .external_lex_state = 2}, [7200] = {.lex_state = 0, .external_lex_state = 2}, [7201] = {.lex_state = 0, .external_lex_state = 2}, [7202] = {.lex_state = 9, .external_lex_state = 2}, [7203] = {.lex_state = 0, .external_lex_state = 2}, [7204] = {.lex_state = 0, .external_lex_state = 2}, [7205] = {.lex_state = 9, .external_lex_state = 2}, [7206] = {.lex_state = 9, .external_lex_state = 2}, [7207] = {.lex_state = 9, .external_lex_state = 2}, [7208] = {.lex_state = 0, .external_lex_state = 2}, [7209] = {.lex_state = 0, .external_lex_state = 2}, [7210] = {.lex_state = 471, .external_lex_state = 2}, [7211] = {.lex_state = 604, .external_lex_state = 2}, [7212] = {.lex_state = 627, .external_lex_state = 2}, [7213] = {.lex_state = 0, .external_lex_state = 2}, [7214] = {.lex_state = 0, .external_lex_state = 2}, [7215] = {.lex_state = 0, .external_lex_state = 2}, [7216] = {.lex_state = 0, .external_lex_state = 2}, [7217] = {.lex_state = 0, .external_lex_state = 2}, [7218] = {.lex_state = 0, .external_lex_state = 7}, [7219] = {.lex_state = 9, .external_lex_state = 2}, [7220] = {.lex_state = 9, .external_lex_state = 2}, [7221] = {.lex_state = 0, .external_lex_state = 2}, [7222] = {.lex_state = 0, .external_lex_state = 2}, [7223] = {.lex_state = 0, .external_lex_state = 2}, [7224] = {.lex_state = 0, .external_lex_state = 2}, [7225] = {.lex_state = 0, .external_lex_state = 2}, [7226] = {.lex_state = 0, .external_lex_state = 2}, [7227] = {.lex_state = 0, .external_lex_state = 2}, [7228] = {.lex_state = 0, .external_lex_state = 2}, [7229] = {.lex_state = 0, .external_lex_state = 2}, [7230] = {.lex_state = 0, .external_lex_state = 2}, [7231] = {.lex_state = 0, .external_lex_state = 2}, [7232] = {.lex_state = 0, .external_lex_state = 2}, [7233] = {.lex_state = 0, .external_lex_state = 2}, [7234] = {.lex_state = 9, .external_lex_state = 2}, [7235] = {.lex_state = 0, .external_lex_state = 2}, [7236] = {.lex_state = 0, .external_lex_state = 2}, [7237] = {.lex_state = 0, .external_lex_state = 2}, [7238] = {.lex_state = 0, .external_lex_state = 2}, [7239] = {.lex_state = 0, .external_lex_state = 2}, [7240] = {.lex_state = 0, .external_lex_state = 2}, [7241] = {.lex_state = 0, .external_lex_state = 2}, [7242] = {.lex_state = 9, .external_lex_state = 2}, [7243] = {.lex_state = 9, .external_lex_state = 2}, [7244] = {.lex_state = 0, .external_lex_state = 2}, [7245] = {.lex_state = 0, .external_lex_state = 2}, [7246] = {.lex_state = 0, .external_lex_state = 2}, [7247] = {.lex_state = 0, .external_lex_state = 2}, [7248] = {.lex_state = 0, .external_lex_state = 2}, [7249] = {.lex_state = 0, .external_lex_state = 2}, [7250] = {.lex_state = 0, .external_lex_state = 2}, [7251] = {.lex_state = 0, .external_lex_state = 2}, [7252] = {.lex_state = 0, .external_lex_state = 2}, [7253] = {.lex_state = 9, .external_lex_state = 2}, [7254] = {.lex_state = 9, .external_lex_state = 2}, [7255] = {.lex_state = 0, .external_lex_state = 2}, [7256] = {.lex_state = 0, .external_lex_state = 2}, [7257] = {.lex_state = 0, .external_lex_state = 2}, [7258] = {.lex_state = 0, .external_lex_state = 2}, [7259] = {.lex_state = 0, .external_lex_state = 2}, [7260] = {.lex_state = 0, .external_lex_state = 2}, [7261] = {.lex_state = 0, .external_lex_state = 2}, [7262] = {.lex_state = 0, .external_lex_state = 2}, [7263] = {.lex_state = 0, .external_lex_state = 2}, [7264] = {.lex_state = 0, .external_lex_state = 2}, [7265] = {.lex_state = 0, .external_lex_state = 2}, [7266] = {.lex_state = 0, .external_lex_state = 2}, [7267] = {.lex_state = 0, .external_lex_state = 2}, [7268] = {.lex_state = 0, .external_lex_state = 2}, [7269] = {.lex_state = 9, .external_lex_state = 2}, [7270] = {.lex_state = 0, .external_lex_state = 2}, [7271] = {.lex_state = 0, .external_lex_state = 2}, [7272] = {.lex_state = 0, .external_lex_state = 2}, [7273] = {.lex_state = 0, .external_lex_state = 2}, [7274] = {.lex_state = 172, .external_lex_state = 2}, [7275] = {.lex_state = 9, .external_lex_state = 2}, [7276] = {.lex_state = 0, .external_lex_state = 2}, [7277] = {.lex_state = 0, .external_lex_state = 2}, [7278] = {.lex_state = 0, .external_lex_state = 2}, [7279] = {.lex_state = 0, .external_lex_state = 2}, [7280] = {.lex_state = 0, .external_lex_state = 2}, [7281] = {.lex_state = 0, .external_lex_state = 2}, [7282] = {.lex_state = 0, .external_lex_state = 2}, [7283] = {.lex_state = 0, .external_lex_state = 2}, [7284] = {.lex_state = 0, .external_lex_state = 2}, [7285] = {.lex_state = 0, .external_lex_state = 2}, [7286] = {.lex_state = 0, .external_lex_state = 2}, [7287] = {.lex_state = 0, .external_lex_state = 2}, [7288] = {.lex_state = 0, .external_lex_state = 2}, [7289] = {.lex_state = 0, .external_lex_state = 2}, [7290] = {.lex_state = 0, .external_lex_state = 2}, [7291] = {.lex_state = 0, .external_lex_state = 2}, [7292] = {.lex_state = 0, .external_lex_state = 2}, [7293] = {.lex_state = 0, .external_lex_state = 2}, [7294] = {.lex_state = 0, .external_lex_state = 2}, [7295] = {.lex_state = 0, .external_lex_state = 2}, [7296] = {.lex_state = 0, .external_lex_state = 2}, [7297] = {.lex_state = 0, .external_lex_state = 2}, [7298] = {.lex_state = 0, .external_lex_state = 2}, [7299] = {.lex_state = 0, .external_lex_state = 2}, [7300] = {.lex_state = 0, .external_lex_state = 2}, [7301] = {.lex_state = 0, .external_lex_state = 2}, [7302] = {.lex_state = 0, .external_lex_state = 2}, [7303] = {.lex_state = 0, .external_lex_state = 2}, [7304] = {.lex_state = 0, .external_lex_state = 2}, [7305] = {.lex_state = 9, .external_lex_state = 2}, [7306] = {.lex_state = 9, .external_lex_state = 2}, [7307] = {.lex_state = 0, .external_lex_state = 2}, [7308] = {.lex_state = 0, .external_lex_state = 2}, [7309] = {.lex_state = 0, .external_lex_state = 2}, [7310] = {.lex_state = 0, .external_lex_state = 2}, [7311] = {.lex_state = 471, .external_lex_state = 2}, [7312] = {.lex_state = 604, .external_lex_state = 2}, [7313] = {.lex_state = 627, .external_lex_state = 2}, [7314] = {.lex_state = 0, .external_lex_state = 2}, [7315] = {.lex_state = 172, .external_lex_state = 2}, [7316] = {.lex_state = 0, .external_lex_state = 2}, [7317] = {.lex_state = 0, .external_lex_state = 2}, [7318] = {.lex_state = 0, .external_lex_state = 2}, [7319] = {.lex_state = 0, .external_lex_state = 2}, [7320] = {.lex_state = 0, .external_lex_state = 2}, [7321] = {.lex_state = 9, .external_lex_state = 2}, [7322] = {.lex_state = 0, .external_lex_state = 2}, [7323] = {.lex_state = 0, .external_lex_state = 2}, [7324] = {.lex_state = 0, .external_lex_state = 2}, [7325] = {.lex_state = 0, .external_lex_state = 2}, [7326] = {.lex_state = 0, .external_lex_state = 2}, [7327] = {.lex_state = 0, .external_lex_state = 2}, [7328] = {.lex_state = 0, .external_lex_state = 2}, [7329] = {.lex_state = 0, .external_lex_state = 2}, [7330] = {.lex_state = 0, .external_lex_state = 2}, [7331] = {.lex_state = 0, .external_lex_state = 2}, [7332] = {.lex_state = 0, .external_lex_state = 2}, [7333] = {.lex_state = 0, .external_lex_state = 2}, [7334] = {.lex_state = 0, .external_lex_state = 2}, [7335] = {.lex_state = 9, .external_lex_state = 2}, [7336] = {.lex_state = 0, .external_lex_state = 2}, [7337] = {.lex_state = 0, .external_lex_state = 2}, [7338] = {.lex_state = 0, .external_lex_state = 2}, [7339] = {.lex_state = 0, .external_lex_state = 2}, [7340] = {.lex_state = 0, .external_lex_state = 2}, [7341] = {.lex_state = 0, .external_lex_state = 2}, [7342] = {.lex_state = 0, .external_lex_state = 2}, [7343] = {.lex_state = 0, .external_lex_state = 2}, [7344] = {.lex_state = 0, .external_lex_state = 2}, [7345] = {.lex_state = 0, .external_lex_state = 2}, [7346] = {.lex_state = 0, .external_lex_state = 2}, [7347] = {.lex_state = 0, .external_lex_state = 2}, [7348] = {.lex_state = 0, .external_lex_state = 2}, [7349] = {.lex_state = 0, .external_lex_state = 2}, [7350] = {.lex_state = 0, .external_lex_state = 2}, [7351] = {.lex_state = 0, .external_lex_state = 2}, [7352] = {.lex_state = 0, .external_lex_state = 2}, [7353] = {.lex_state = 0, .external_lex_state = 2}, [7354] = {.lex_state = 0, .external_lex_state = 2}, [7355] = {.lex_state = 471, .external_lex_state = 2}, [7356] = {.lex_state = 604, .external_lex_state = 2}, [7357] = {.lex_state = 627, .external_lex_state = 2}, [7358] = {.lex_state = 0, .external_lex_state = 2}, [7359] = {.lex_state = 172, .external_lex_state = 2}, [7360] = {.lex_state = 0, .external_lex_state = 2}, [7361] = {.lex_state = 0, .external_lex_state = 2}, [7362] = {.lex_state = 0, .external_lex_state = 2}, [7363] = {.lex_state = 0, .external_lex_state = 2}, [7364] = {.lex_state = 0, .external_lex_state = 2}, [7365] = {.lex_state = 0, .external_lex_state = 2}, [7366] = {.lex_state = 0, .external_lex_state = 2}, [7367] = {.lex_state = 0, .external_lex_state = 2}, [7368] = {.lex_state = 0, .external_lex_state = 2}, [7369] = {.lex_state = 0, .external_lex_state = 2}, [7370] = {.lex_state = 172, .external_lex_state = 2}, [7371] = {.lex_state = 9, .external_lex_state = 2}, [7372] = {.lex_state = 9, .external_lex_state = 2}, [7373] = {.lex_state = 0, .external_lex_state = 2}, [7374] = {.lex_state = 172, .external_lex_state = 2}, [7375] = {.lex_state = 0, .external_lex_state = 2}, [7376] = {.lex_state = 0, .external_lex_state = 2}, [7377] = {.lex_state = 0, .external_lex_state = 2}, [7378] = {.lex_state = 0, .external_lex_state = 2}, [7379] = {.lex_state = 0, .external_lex_state = 2}, [7380] = {.lex_state = 0, .external_lex_state = 2}, [7381] = {.lex_state = 0, .external_lex_state = 2}, [7382] = {.lex_state = 0, .external_lex_state = 2}, [7383] = {.lex_state = 0, .external_lex_state = 2}, [7384] = {.lex_state = 0, .external_lex_state = 2}, [7385] = {.lex_state = 0, .external_lex_state = 2}, [7386] = {.lex_state = 471, .external_lex_state = 2}, [7387] = {.lex_state = 604, .external_lex_state = 2}, [7388] = {.lex_state = 627, .external_lex_state = 2}, [7389] = {.lex_state = 0, .external_lex_state = 2}, [7390] = {.lex_state = 0, .external_lex_state = 2}, [7391] = {.lex_state = 0, .external_lex_state = 2}, [7392] = {.lex_state = 0, .external_lex_state = 2}, [7393] = {.lex_state = 0, .external_lex_state = 2}, [7394] = {.lex_state = 0, .external_lex_state = 2}, [7395] = {.lex_state = 0, .external_lex_state = 2}, [7396] = {.lex_state = 0, .external_lex_state = 2}, [7397] = {.lex_state = 0, .external_lex_state = 2}, [7398] = {.lex_state = 0, .external_lex_state = 2}, [7399] = {.lex_state = 9, .external_lex_state = 2}, [7400] = {.lex_state = 0, .external_lex_state = 2}, [7401] = {.lex_state = 0, .external_lex_state = 2}, [7402] = {.lex_state = 9, .external_lex_state = 2}, [7403] = {.lex_state = 0, .external_lex_state = 2}, [7404] = {.lex_state = 0, .external_lex_state = 2}, [7405] = {.lex_state = 0, .external_lex_state = 2}, [7406] = {.lex_state = 0, .external_lex_state = 2}, [7407] = {.lex_state = 0, .external_lex_state = 2}, [7408] = {.lex_state = 0, .external_lex_state = 2}, [7409] = {.lex_state = 0, .external_lex_state = 2}, [7410] = {.lex_state = 9, .external_lex_state = 2}, [7411] = {.lex_state = 0, .external_lex_state = 2}, [7412] = {.lex_state = 0, .external_lex_state = 2}, [7413] = {.lex_state = 0, .external_lex_state = 2}, [7414] = {.lex_state = 0, .external_lex_state = 2}, [7415] = {.lex_state = 9, .external_lex_state = 2}, [7416] = {.lex_state = 471, .external_lex_state = 2}, [7417] = {.lex_state = 604, .external_lex_state = 2}, [7418] = {.lex_state = 627, .external_lex_state = 2}, [7419] = {.lex_state = 0, .external_lex_state = 2}, [7420] = {.lex_state = 0, .external_lex_state = 2}, [7421] = {.lex_state = 0, .external_lex_state = 2}, [7422] = {.lex_state = 0, .external_lex_state = 2}, [7423] = {.lex_state = 0, .external_lex_state = 2}, [7424] = {.lex_state = 0, .external_lex_state = 2}, [7425] = {.lex_state = 0, .external_lex_state = 2}, [7426] = {.lex_state = 0, .external_lex_state = 2}, [7427] = {.lex_state = 0, .external_lex_state = 2}, [7428] = {.lex_state = 0, .external_lex_state = 2}, [7429] = {.lex_state = 0, .external_lex_state = 2}, [7430] = {.lex_state = 0, .external_lex_state = 2}, [7431] = {.lex_state = 0, .external_lex_state = 2}, [7432] = {.lex_state = 0, .external_lex_state = 2}, [7433] = {.lex_state = 0, .external_lex_state = 2}, [7434] = {.lex_state = 0, .external_lex_state = 2}, [7435] = {.lex_state = 0, .external_lex_state = 2}, [7436] = {.lex_state = 0, .external_lex_state = 2}, [7437] = {.lex_state = 0, .external_lex_state = 2}, [7438] = {.lex_state = 0, .external_lex_state = 2}, [7439] = {.lex_state = 0, .external_lex_state = 2}, [7440] = {.lex_state = 0, .external_lex_state = 2}, [7441] = {.lex_state = 0, .external_lex_state = 2}, [7442] = {.lex_state = 0, .external_lex_state = 2}, [7443] = {.lex_state = 471, .external_lex_state = 2}, [7444] = {.lex_state = 604, .external_lex_state = 2}, [7445] = {.lex_state = 627, .external_lex_state = 2}, [7446] = {.lex_state = 0, .external_lex_state = 2}, [7447] = {.lex_state = 9, .external_lex_state = 2}, [7448] = {.lex_state = 471, .external_lex_state = 2}, [7449] = {.lex_state = 604, .external_lex_state = 2}, [7450] = {.lex_state = 627, .external_lex_state = 2}, [7451] = {.lex_state = 0, .external_lex_state = 2}, [7452] = {.lex_state = 471, .external_lex_state = 2}, [7453] = {.lex_state = 604, .external_lex_state = 2}, [7454] = {.lex_state = 627, .external_lex_state = 2}, [7455] = {.lex_state = 0, .external_lex_state = 2}, [7456] = {.lex_state = 0, .external_lex_state = 2}, [7457] = {.lex_state = 9, .external_lex_state = 2}, [7458] = {.lex_state = 0, .external_lex_state = 2}, [7459] = {.lex_state = 9, .external_lex_state = 2}, [7460] = {.lex_state = 9, .external_lex_state = 2}, [7461] = {.lex_state = 0, .external_lex_state = 2}, [7462] = {.lex_state = 0, .external_lex_state = 2}, [7463] = {.lex_state = 0, .external_lex_state = 2}, [7464] = {.lex_state = 0, .external_lex_state = 2}, [7465] = {.lex_state = 0, .external_lex_state = 2}, [7466] = {.lex_state = 0, .external_lex_state = 2}, [7467] = {.lex_state = 0, .external_lex_state = 2}, [7468] = {.lex_state = 0, .external_lex_state = 2}, [7469] = {.lex_state = 0, .external_lex_state = 2}, [7470] = {.lex_state = 0, .external_lex_state = 2}, [7471] = {.lex_state = 172, .external_lex_state = 2}, [7472] = {.lex_state = 0, .external_lex_state = 2}, [7473] = {.lex_state = 0, .external_lex_state = 2}, [7474] = {.lex_state = 172, .external_lex_state = 2}, [7475] = {.lex_state = 627, .external_lex_state = 2}, [7476] = {.lex_state = 9, .external_lex_state = 2}, [7477] = {.lex_state = 0, .external_lex_state = 2}, [7478] = {.lex_state = 0, .external_lex_state = 2}, [7479] = {.lex_state = 0, .external_lex_state = 2}, [7480] = {.lex_state = 604, .external_lex_state = 2}, [7481] = {.lex_state = 0, .external_lex_state = 2}, [7482] = {.lex_state = 471, .external_lex_state = 2}, [7483] = {.lex_state = 0, .external_lex_state = 2}, [7484] = {.lex_state = 0, .external_lex_state = 2}, [7485] = {.lex_state = 0, .external_lex_state = 2}, [7486] = {.lex_state = 0, .external_lex_state = 2}, [7487] = {.lex_state = 9, .external_lex_state = 2}, [7488] = {.lex_state = 0, .external_lex_state = 2}, [7489] = {.lex_state = 0, .external_lex_state = 2}, [7490] = {.lex_state = 0, .external_lex_state = 2}, [7491] = {.lex_state = 0, .external_lex_state = 2}, [7492] = {.lex_state = 0, .external_lex_state = 2}, [7493] = {.lex_state = 0, .external_lex_state = 2}, [7494] = {.lex_state = 172, .external_lex_state = 2}, [7495] = {.lex_state = 0, .external_lex_state = 2}, [7496] = {.lex_state = 0, .external_lex_state = 2}, [7497] = {.lex_state = 0, .external_lex_state = 2}, [7498] = {.lex_state = 0, .external_lex_state = 2}, [7499] = {.lex_state = 0, .external_lex_state = 2}, [7500] = {.lex_state = 0, .external_lex_state = 2}, [7501] = {.lex_state = 0, .external_lex_state = 2}, [7502] = {.lex_state = 9, .external_lex_state = 2}, [7503] = {.lex_state = 0, .external_lex_state = 2}, [7504] = {.lex_state = 0, .external_lex_state = 2}, [7505] = {.lex_state = 9, .external_lex_state = 2}, [7506] = {.lex_state = 0, .external_lex_state = 2}, [7507] = {.lex_state = 0, .external_lex_state = 2}, [7508] = {.lex_state = 172, .external_lex_state = 2}, [7509] = {.lex_state = 0, .external_lex_state = 2}, [7510] = {.lex_state = 172, .external_lex_state = 2}, [7511] = {.lex_state = 9, .external_lex_state = 2}, [7512] = {.lex_state = 0, .external_lex_state = 2}, [7513] = {.lex_state = 0, .external_lex_state = 2}, [7514] = {.lex_state = 0, .external_lex_state = 2}, [7515] = {.lex_state = 9, .external_lex_state = 2}, [7516] = {.lex_state = 9, .external_lex_state = 2}, [7517] = {.lex_state = 9, .external_lex_state = 2}, [7518] = {.lex_state = 0, .external_lex_state = 2}, [7519] = {.lex_state = 9, .external_lex_state = 2}, [7520] = {.lex_state = 0, .external_lex_state = 2}, [7521] = {.lex_state = 9, .external_lex_state = 2}, [7522] = {.lex_state = 0, .external_lex_state = 2}, [7523] = {.lex_state = 0, .external_lex_state = 2}, [7524] = {.lex_state = 9, .external_lex_state = 2}, [7525] = {.lex_state = 0, .external_lex_state = 2}, [7526] = {.lex_state = 9, .external_lex_state = 2}, [7527] = {.lex_state = 0, .external_lex_state = 2}, [7528] = {.lex_state = 0, .external_lex_state = 2}, [7529] = {.lex_state = 9, .external_lex_state = 2}, [7530] = {.lex_state = 0, .external_lex_state = 2}, [7531] = {.lex_state = 0, .external_lex_state = 2}, [7532] = {.lex_state = 0, .external_lex_state = 2}, [7533] = {.lex_state = 0, .external_lex_state = 2}, [7534] = {.lex_state = 172, .external_lex_state = 2}, [7535] = {.lex_state = 0, .external_lex_state = 2}, [7536] = {.lex_state = 0, .external_lex_state = 2}, [7537] = {.lex_state = 0, .external_lex_state = 2}, [7538] = {.lex_state = 9, .external_lex_state = 2}, [7539] = {.lex_state = 172, .external_lex_state = 2}, [7540] = {.lex_state = 0, .external_lex_state = 2}, [7541] = {.lex_state = 172, .external_lex_state = 2}, [7542] = {.lex_state = 172, .external_lex_state = 2}, [7543] = {.lex_state = 0, .external_lex_state = 2}, [7544] = {.lex_state = 0, .external_lex_state = 2}, [7545] = {.lex_state = 0, .external_lex_state = 2}, [7546] = {.lex_state = 0, .external_lex_state = 2}, [7547] = {.lex_state = 0, .external_lex_state = 2}, [7548] = {.lex_state = 0, .external_lex_state = 2}, [7549] = {.lex_state = 172, .external_lex_state = 2}, [7550] = {.lex_state = 0, .external_lex_state = 2}, [7551] = {.lex_state = 0, .external_lex_state = 2}, [7552] = {.lex_state = 0, .external_lex_state = 2}, [7553] = {.lex_state = 0, .external_lex_state = 2}, [7554] = {.lex_state = 9, .external_lex_state = 2}, [7555] = {.lex_state = 172, .external_lex_state = 2}, [7556] = {.lex_state = 172, .external_lex_state = 2}, [7557] = {.lex_state = 172, .external_lex_state = 2}, [7558] = {.lex_state = 172, .external_lex_state = 2}, [7559] = {.lex_state = 0, .external_lex_state = 2}, [7560] = {.lex_state = 0, .external_lex_state = 2}, [7561] = {.lex_state = 0, .external_lex_state = 2}, [7562] = {.lex_state = 0, .external_lex_state = 2}, [7563] = {.lex_state = 0, .external_lex_state = 2}, [7564] = {.lex_state = 0, .external_lex_state = 2}, [7565] = {.lex_state = 172, .external_lex_state = 2}, [7566] = {.lex_state = 0, .external_lex_state = 2}, [7567] = {.lex_state = 0, .external_lex_state = 2}, [7568] = {.lex_state = 0, .external_lex_state = 2}, [7569] = {.lex_state = 172, .external_lex_state = 2}, [7570] = {.lex_state = 0, .external_lex_state = 2}, [7571] = {.lex_state = 0, .external_lex_state = 2}, [7572] = {.lex_state = 0, .external_lex_state = 2}, [7573] = {.lex_state = 0, .external_lex_state = 2}, [7574] = {.lex_state = 0, .external_lex_state = 2}, [7575] = {.lex_state = 0, .external_lex_state = 2}, [7576] = {.lex_state = 172, .external_lex_state = 2}, [7577] = {.lex_state = 0, .external_lex_state = 2}, [7578] = {.lex_state = 9, .external_lex_state = 2}, [7579] = {.lex_state = 0, .external_lex_state = 2}, [7580] = {.lex_state = 0, .external_lex_state = 2}, [7581] = {.lex_state = 0, .external_lex_state = 2}, [7582] = {.lex_state = 0, .external_lex_state = 2}, [7583] = {.lex_state = 0, .external_lex_state = 2}, [7584] = {.lex_state = 172, .external_lex_state = 2}, [7585] = {.lex_state = 0, .external_lex_state = 2}, [7586] = {.lex_state = 0, .external_lex_state = 2}, [7587] = {.lex_state = 172, .external_lex_state = 2}, [7588] = {.lex_state = 172, .external_lex_state = 2}, [7589] = {.lex_state = 9, .external_lex_state = 2}, [7590] = {.lex_state = 0, .external_lex_state = 2}, [7591] = {.lex_state = 0, .external_lex_state = 2}, [7592] = {.lex_state = 0, .external_lex_state = 2}, [7593] = {.lex_state = 0, .external_lex_state = 2}, [7594] = {.lex_state = 9, .external_lex_state = 2}, [7595] = {.lex_state = 0, .external_lex_state = 2}, [7596] = {.lex_state = 0, .external_lex_state = 2}, [7597] = {.lex_state = 0, .external_lex_state = 2}, [7598] = {.lex_state = 0, .external_lex_state = 2}, [7599] = {.lex_state = 9, .external_lex_state = 2}, [7600] = {.lex_state = 0, .external_lex_state = 2}, [7601] = {.lex_state = 0, .external_lex_state = 2}, [7602] = {.lex_state = 0, .external_lex_state = 2}, [7603] = {.lex_state = 0, .external_lex_state = 2}, [7604] = {.lex_state = 0, .external_lex_state = 2}, [7605] = {.lex_state = 0, .external_lex_state = 2}, [7606] = {.lex_state = 0, .external_lex_state = 2}, [7607] = {.lex_state = 9, .external_lex_state = 2}, [7608] = {.lex_state = 172, .external_lex_state = 2}, [7609] = {.lex_state = 9, .external_lex_state = 2}, [7610] = {.lex_state = 172, .external_lex_state = 2}, [7611] = {.lex_state = 0, .external_lex_state = 2}, [7612] = {.lex_state = 0, .external_lex_state = 2}, [7613] = {.lex_state = 0, .external_lex_state = 2}, [7614] = {.lex_state = 0, .external_lex_state = 2}, [7615] = {.lex_state = 172, .external_lex_state = 2}, [7616] = {.lex_state = 0, .external_lex_state = 2}, [7617] = {.lex_state = 9, .external_lex_state = 2}, [7618] = {.lex_state = 172, .external_lex_state = 2}, [7619] = {.lex_state = 0, .external_lex_state = 2}, [7620] = {.lex_state = 172, .external_lex_state = 2}, [7621] = {.lex_state = 0, .external_lex_state = 2}, [7622] = {.lex_state = 9, .external_lex_state = 2}, [7623] = {.lex_state = 0, .external_lex_state = 2}, [7624] = {.lex_state = 0, .external_lex_state = 2}, [7625] = {.lex_state = 172, .external_lex_state = 2}, [7626] = {.lex_state = 0, .external_lex_state = 2}, [7627] = {.lex_state = 9, .external_lex_state = 2}, [7628] = {.lex_state = 0, .external_lex_state = 2}, [7629] = {.lex_state = 0, .external_lex_state = 2}, [7630] = {.lex_state = 0, .external_lex_state = 2}, [7631] = {.lex_state = 0, .external_lex_state = 2}, [7632] = {.lex_state = 0, .external_lex_state = 2}, [7633] = {.lex_state = 0, .external_lex_state = 2}, [7634] = {.lex_state = 0, .external_lex_state = 2}, [7635] = {.lex_state = 0, .external_lex_state = 2}, [7636] = {.lex_state = 0, .external_lex_state = 2}, [7637] = {.lex_state = 0, .external_lex_state = 2}, [7638] = {.lex_state = 9, .external_lex_state = 2}, [7639] = {.lex_state = 0, .external_lex_state = 2}, [7640] = {.lex_state = 9, .external_lex_state = 2}, [7641] = {.lex_state = 0, .external_lex_state = 2}, [7642] = {.lex_state = 0, .external_lex_state = 2}, [7643] = {.lex_state = 0, .external_lex_state = 2}, [7644] = {.lex_state = 0, .external_lex_state = 2}, [7645] = {.lex_state = 0, .external_lex_state = 2}, [7646] = {.lex_state = 172, .external_lex_state = 2}, [7647] = {.lex_state = 0, .external_lex_state = 2}, [7648] = {.lex_state = 0, .external_lex_state = 2}, [7649] = {.lex_state = 172, .external_lex_state = 2}, [7650] = {.lex_state = 0, .external_lex_state = 2}, [7651] = {.lex_state = 9, .external_lex_state = 2}, [7652] = {.lex_state = 0, .external_lex_state = 2}, [7653] = {.lex_state = 0, .external_lex_state = 2}, [7654] = {.lex_state = 0, .external_lex_state = 2}, [7655] = {.lex_state = 0, .external_lex_state = 2}, [7656] = {.lex_state = 9, .external_lex_state = 2}, [7657] = {.lex_state = 0, .external_lex_state = 2}, [7658] = {.lex_state = 0, .external_lex_state = 2}, [7659] = {.lex_state = 0, .external_lex_state = 2}, [7660] = {.lex_state = 0, .external_lex_state = 2}, [7661] = {.lex_state = 9, .external_lex_state = 2}, [7662] = {.lex_state = 172, .external_lex_state = 2}, [7663] = {.lex_state = 0, .external_lex_state = 2}, [7664] = {.lex_state = 172, .external_lex_state = 2}, [7665] = {.lex_state = 0, .external_lex_state = 2}, [7666] = {.lex_state = 9, .external_lex_state = 2}, [7667] = {.lex_state = 172, .external_lex_state = 2}, [7668] = {.lex_state = 172, .external_lex_state = 2}, [7669] = {.lex_state = 172, .external_lex_state = 2}, [7670] = {.lex_state = 0, .external_lex_state = 2}, [7671] = {.lex_state = 0, .external_lex_state = 2}, [7672] = {.lex_state = 0, .external_lex_state = 2}, [7673] = {.lex_state = 0, .external_lex_state = 2}, [7674] = {.lex_state = 0, .external_lex_state = 2}, [7675] = {.lex_state = 9, .external_lex_state = 2}, [7676] = {.lex_state = 0, .external_lex_state = 2}, [7677] = {.lex_state = 172, .external_lex_state = 2}, [7678] = {.lex_state = 0, .external_lex_state = 2}, [7679] = {.lex_state = 9, .external_lex_state = 2}, [7680] = {.lex_state = 0, .external_lex_state = 2}, [7681] = {.lex_state = 9, .external_lex_state = 2}, [7682] = {.lex_state = 0, .external_lex_state = 2}, [7683] = {.lex_state = 0, .external_lex_state = 2}, [7684] = {.lex_state = 0, .external_lex_state = 2}, [7685] = {.lex_state = 0, .external_lex_state = 2}, [7686] = {.lex_state = 0, .external_lex_state = 2}, [7687] = {.lex_state = 9, .external_lex_state = 2}, [7688] = {.lex_state = 9, .external_lex_state = 2}, [7689] = {.lex_state = 0, .external_lex_state = 2}, [7690] = {.lex_state = 0, .external_lex_state = 2}, [7691] = {.lex_state = 0, .external_lex_state = 2}, [7692] = {.lex_state = 0, .external_lex_state = 2}, [7693] = {.lex_state = 172, .external_lex_state = 2}, [7694] = {.lex_state = 0, .external_lex_state = 2}, [7695] = {.lex_state = 0, .external_lex_state = 2}, [7696] = {.lex_state = 172, .external_lex_state = 2}, [7697] = {.lex_state = 0, .external_lex_state = 2}, [7698] = {.lex_state = 9, .external_lex_state = 2}, [7699] = {.lex_state = 0, .external_lex_state = 2}, [7700] = {.lex_state = 0, .external_lex_state = 2}, [7701] = {.lex_state = 172, .external_lex_state = 2}, [7702] = {.lex_state = 9, .external_lex_state = 2}, [7703] = {.lex_state = 0, .external_lex_state = 2}, [7704] = {.lex_state = 0, .external_lex_state = 2}, [7705] = {.lex_state = 9, .external_lex_state = 2}, [7706] = {.lex_state = 172, .external_lex_state = 2}, [7707] = {.lex_state = 0, .external_lex_state = 2}, [7708] = {.lex_state = 172, .external_lex_state = 2}, [7709] = {.lex_state = 0, .external_lex_state = 2}, [7710] = {.lex_state = 0, .external_lex_state = 7}, [7711] = {.lex_state = 0, .external_lex_state = 2}, [7712] = {.lex_state = 0, .external_lex_state = 2}, [7713] = {.lex_state = 0, .external_lex_state = 2}, [7714] = {.lex_state = 9, .external_lex_state = 2}, [7715] = {.lex_state = 0, .external_lex_state = 2}, [7716] = {.lex_state = 0, .external_lex_state = 2}, [7717] = {.lex_state = 172, .external_lex_state = 2}, [7718] = {.lex_state = 0, .external_lex_state = 2}, [7719] = {.lex_state = 9, .external_lex_state = 2}, [7720] = {.lex_state = 0, .external_lex_state = 2}, [7721] = {.lex_state = 172, .external_lex_state = 2}, [7722] = {.lex_state = 172, .external_lex_state = 2}, [7723] = {.lex_state = 172, .external_lex_state = 2}, [7724] = {.lex_state = 0, .external_lex_state = 2}, [7725] = {.lex_state = 0, .external_lex_state = 2}, [7726] = {.lex_state = 0, .external_lex_state = 2}, [7727] = {.lex_state = 471, .external_lex_state = 2}, [7728] = {.lex_state = 0, .external_lex_state = 2}, [7729] = {.lex_state = 9, .external_lex_state = 2}, [7730] = {.lex_state = 604, .external_lex_state = 2}, [7731] = {.lex_state = 0, .external_lex_state = 2}, [7732] = {.lex_state = 627, .external_lex_state = 2}, [7733] = {.lex_state = 0, .external_lex_state = 2}, [7734] = {.lex_state = 172, .external_lex_state = 2}, [7735] = {.lex_state = 0, .external_lex_state = 2}, [7736] = {.lex_state = 172, .external_lex_state = 2}, [7737] = {.lex_state = 0, .external_lex_state = 2}, [7738] = {.lex_state = 9, .external_lex_state = 2}, [7739] = {.lex_state = 0, .external_lex_state = 2}, [7740] = {.lex_state = 0, .external_lex_state = 2}, [7741] = {.lex_state = 0, .external_lex_state = 2}, [7742] = {.lex_state = 9, .external_lex_state = 2}, [7743] = {.lex_state = 9, .external_lex_state = 2}, [7744] = {.lex_state = 0, .external_lex_state = 2}, [7745] = {.lex_state = 9, .external_lex_state = 2}, [7746] = {.lex_state = 172, .external_lex_state = 2}, [7747] = {.lex_state = 0, .external_lex_state = 2}, [7748] = {.lex_state = 172, .external_lex_state = 2}, [7749] = {.lex_state = 0, .external_lex_state = 2}, [7750] = {.lex_state = 0, .external_lex_state = 2}, [7751] = {.lex_state = 9, .external_lex_state = 2}, [7752] = {.lex_state = 0, .external_lex_state = 2}, [7753] = {.lex_state = 0, .external_lex_state = 2}, [7754] = {.lex_state = 0, .external_lex_state = 2}, [7755] = {.lex_state = 0, .external_lex_state = 2}, [7756] = {.lex_state = 0, .external_lex_state = 2}, [7757] = {.lex_state = 0, .external_lex_state = 2}, [7758] = {.lex_state = 0, .external_lex_state = 2}, [7759] = {.lex_state = 9, .external_lex_state = 2}, [7760] = {.lex_state = 0, .external_lex_state = 2}, [7761] = {.lex_state = 0, .external_lex_state = 2}, [7762] = {.lex_state = 0, .external_lex_state = 2}, [7763] = {.lex_state = 0, .external_lex_state = 2}, [7764] = {.lex_state = 0, .external_lex_state = 2}, [7765] = {.lex_state = 0, .external_lex_state = 2}, [7766] = {.lex_state = 0, .external_lex_state = 2}, [7767] = {.lex_state = 9, .external_lex_state = 2}, [7768] = {.lex_state = 0, .external_lex_state = 2}, [7769] = {.lex_state = 0, .external_lex_state = 2}, [7770] = {.lex_state = 9, .external_lex_state = 2}, [7771] = {.lex_state = 0, .external_lex_state = 2}, [7772] = {.lex_state = 9, .external_lex_state = 2}, [7773] = {.lex_state = 0, .external_lex_state = 2}, [7774] = {.lex_state = 0, .external_lex_state = 2}, [7775] = {.lex_state = 172, .external_lex_state = 2}, [7776] = {.lex_state = 172, .external_lex_state = 2}, [7777] = {.lex_state = 0, .external_lex_state = 2}, [7778] = {.lex_state = 9, .external_lex_state = 2}, [7779] = {.lex_state = 172, .external_lex_state = 2}, [7780] = {.lex_state = 0, .external_lex_state = 2}, [7781] = {.lex_state = 9, .external_lex_state = 2}, [7782] = {.lex_state = 0, .external_lex_state = 2}, [7783] = {.lex_state = 0, .external_lex_state = 2}, [7784] = {.lex_state = 0, .external_lex_state = 2}, [7785] = {.lex_state = 0, .external_lex_state = 2}, [7786] = {.lex_state = 0, .external_lex_state = 2}, [7787] = {.lex_state = 0, .external_lex_state = 2}, [7788] = {.lex_state = 0, .external_lex_state = 2}, [7789] = {.lex_state = 0, .external_lex_state = 2}, [7790] = {.lex_state = 0, .external_lex_state = 2}, [7791] = {.lex_state = 0, .external_lex_state = 2}, [7792] = {.lex_state = 0, .external_lex_state = 2}, [7793] = {.lex_state = 0, .external_lex_state = 2}, [7794] = {.lex_state = 0, .external_lex_state = 2}, [7795] = {.lex_state = 0, .external_lex_state = 2}, [7796] = {.lex_state = 0, .external_lex_state = 2}, [7797] = {.lex_state = 0, .external_lex_state = 2}, [7798] = {.lex_state = 0, .external_lex_state = 2}, [7799] = {.lex_state = 172, .external_lex_state = 2}, [7800] = {.lex_state = 0, .external_lex_state = 2}, [7801] = {.lex_state = 0, .external_lex_state = 2}, [7802] = {.lex_state = 0, .external_lex_state = 2}, [7803] = {.lex_state = 0, .external_lex_state = 2}, [7804] = {.lex_state = 0, .external_lex_state = 2}, [7805] = {.lex_state = 0, .external_lex_state = 2}, [7806] = {.lex_state = 0, .external_lex_state = 2}, [7807] = {.lex_state = 0, .external_lex_state = 2}, [7808] = {.lex_state = 0, .external_lex_state = 2}, [7809] = {.lex_state = 0, .external_lex_state = 2}, [7810] = {.lex_state = 0, .external_lex_state = 2}, [7811] = {.lex_state = 0, .external_lex_state = 2}, [7812] = {.lex_state = 0, .external_lex_state = 2}, [7813] = {.lex_state = 0, .external_lex_state = 2}, [7814] = {.lex_state = 0, .external_lex_state = 2}, [7815] = {.lex_state = 0, .external_lex_state = 2}, [7816] = {.lex_state = 0, .external_lex_state = 2}, [7817] = {.lex_state = 0, .external_lex_state = 2}, [7818] = {.lex_state = 0, .external_lex_state = 2}, [7819] = {.lex_state = 9, .external_lex_state = 2}, [7820] = {.lex_state = 0, .external_lex_state = 2}, [7821] = {.lex_state = 0, .external_lex_state = 2}, [7822] = {.lex_state = 0, .external_lex_state = 2}, [7823] = {.lex_state = 0, .external_lex_state = 2}, [7824] = {.lex_state = 0, .external_lex_state = 2}, [7825] = {.lex_state = 0, .external_lex_state = 2}, [7826] = {.lex_state = 0, .external_lex_state = 2}, [7827] = {.lex_state = 172, .external_lex_state = 2}, [7828] = {.lex_state = 9, .external_lex_state = 2}, [7829] = {.lex_state = 0, .external_lex_state = 2}, [7830] = {.lex_state = 0, .external_lex_state = 2}, [7831] = {.lex_state = 9, .external_lex_state = 2}, [7832] = {.lex_state = 9, .external_lex_state = 2}, [7833] = {.lex_state = 172, .external_lex_state = 2}, [7834] = {.lex_state = 172, .external_lex_state = 2}, [7835] = {.lex_state = 9, .external_lex_state = 2}, [7836] = {.lex_state = 172, .external_lex_state = 2}, [7837] = {.lex_state = 0, .external_lex_state = 2}, [7838] = {.lex_state = 0, .external_lex_state = 2}, [7839] = {.lex_state = 9, .external_lex_state = 2}, [7840] = {.lex_state = 0, .external_lex_state = 2}, [7841] = {.lex_state = 0, .external_lex_state = 2}, [7842] = {.lex_state = 0, .external_lex_state = 2}, [7843] = {.lex_state = 0, .external_lex_state = 2}, [7844] = {.lex_state = 0, .external_lex_state = 2}, [7845] = {.lex_state = 9, .external_lex_state = 2}, [7846] = {.lex_state = 0, .external_lex_state = 2}, [7847] = {.lex_state = 0, .external_lex_state = 2}, [7848] = {.lex_state = 172, .external_lex_state = 2}, [7849] = {.lex_state = 0, .external_lex_state = 2}, [7850] = {.lex_state = 9, .external_lex_state = 2}, [7851] = {.lex_state = 0, .external_lex_state = 2}, [7852] = {.lex_state = 172, .external_lex_state = 2}, [7853] = {.lex_state = 9, .external_lex_state = 2}, [7854] = {.lex_state = 17, .external_lex_state = 2}, [7855] = {.lex_state = 172, .external_lex_state = 2}, [7856] = {.lex_state = 0, .external_lex_state = 2}, [7857] = {.lex_state = 172, .external_lex_state = 2}, [7858] = {.lex_state = 0, .external_lex_state = 2}, [7859] = {.lex_state = 9, .external_lex_state = 2}, [7860] = {.lex_state = 0, .external_lex_state = 2}, [7861] = {.lex_state = 0, .external_lex_state = 2}, [7862] = {.lex_state = 0, .external_lex_state = 2}, [7863] = {.lex_state = 0, .external_lex_state = 2}, [7864] = {.lex_state = 0, .external_lex_state = 2}, [7865] = {.lex_state = 0, .external_lex_state = 2}, [7866] = {.lex_state = 0, .external_lex_state = 2}, [7867] = {.lex_state = 0, .external_lex_state = 2}, [7868] = {.lex_state = 0, .external_lex_state = 2}, [7869] = {.lex_state = 9, .external_lex_state = 2}, [7870] = {.lex_state = 0, .external_lex_state = 2}, [7871] = {.lex_state = 0, .external_lex_state = 2}, [7872] = {.lex_state = 0, .external_lex_state = 2}, [7873] = {.lex_state = 17, .external_lex_state = 2}, [7874] = {.lex_state = 9, .external_lex_state = 2}, [7875] = {.lex_state = 0, .external_lex_state = 2}, [7876] = {.lex_state = 0, .external_lex_state = 2}, [7877] = {.lex_state = 9, .external_lex_state = 2}, [7878] = {.lex_state = 0, .external_lex_state = 2}, [7879] = {.lex_state = 0, .external_lex_state = 2}, [7880] = {.lex_state = 0, .external_lex_state = 2}, [7881] = {.lex_state = 0, .external_lex_state = 2}, [7882] = {.lex_state = 0, .external_lex_state = 2}, [7883] = {.lex_state = 0, .external_lex_state = 2}, [7884] = {.lex_state = 9, .external_lex_state = 2}, [7885] = {.lex_state = 9, .external_lex_state = 2}, [7886] = {.lex_state = 0, .external_lex_state = 2}, [7887] = {.lex_state = 17, .external_lex_state = 2}, [7888] = {.lex_state = 0, .external_lex_state = 2}, [7889] = {.lex_state = 0, .external_lex_state = 2}, [7890] = {.lex_state = 0, .external_lex_state = 2}, [7891] = {.lex_state = 0, .external_lex_state = 2}, [7892] = {.lex_state = 0, .external_lex_state = 2}, [7893] = {.lex_state = 0, .external_lex_state = 2}, [7894] = {.lex_state = 0, .external_lex_state = 2}, [7895] = {.lex_state = 9, .external_lex_state = 2}, [7896] = {.lex_state = 0, .external_lex_state = 2}, [7897] = {.lex_state = 0, .external_lex_state = 2}, [7898] = {.lex_state = 9, .external_lex_state = 2}, [7899] = {.lex_state = 0, .external_lex_state = 2}, [7900] = {.lex_state = 0, .external_lex_state = 2}, [7901] = {.lex_state = 0, .external_lex_state = 2}, [7902] = {.lex_state = 0, .external_lex_state = 2}, [7903] = {.lex_state = 172, .external_lex_state = 2}, [7904] = {.lex_state = 9, .external_lex_state = 2}, [7905] = {.lex_state = 9, .external_lex_state = 2}, [7906] = {.lex_state = 0, .external_lex_state = 2}, [7907] = {.lex_state = 0, .external_lex_state = 2}, [7908] = {.lex_state = 0, .external_lex_state = 2}, [7909] = {.lex_state = 0, .external_lex_state = 2}, [7910] = {.lex_state = 0, .external_lex_state = 2}, [7911] = {.lex_state = 9, .external_lex_state = 2}, [7912] = {.lex_state = 9, .external_lex_state = 2}, [7913] = {.lex_state = 0, .external_lex_state = 2}, [7914] = {.lex_state = 0, .external_lex_state = 2}, [7915] = {.lex_state = 9, .external_lex_state = 2}, [7916] = {.lex_state = 0, .external_lex_state = 2}, [7917] = {.lex_state = 0, .external_lex_state = 2}, [7918] = {.lex_state = 0, .external_lex_state = 2}, [7919] = {.lex_state = 0, .external_lex_state = 2}, [7920] = {.lex_state = 0, .external_lex_state = 2}, [7921] = {.lex_state = 0, .external_lex_state = 2}, [7922] = {.lex_state = 0, .external_lex_state = 2}, [7923] = {.lex_state = 0, .external_lex_state = 2}, [7924] = {.lex_state = 0, .external_lex_state = 2}, [7925] = {.lex_state = 0, .external_lex_state = 2}, [7926] = {.lex_state = 0, .external_lex_state = 2}, [7927] = {.lex_state = 0, .external_lex_state = 2}, [7928] = {.lex_state = 9, .external_lex_state = 2}, [7929] = {.lex_state = 0, .external_lex_state = 2}, [7930] = {.lex_state = 0, .external_lex_state = 2}, [7931] = {.lex_state = 9, .external_lex_state = 2}, [7932] = {.lex_state = 0, .external_lex_state = 2}, [7933] = {.lex_state = 0, .external_lex_state = 2}, [7934] = {.lex_state = 0, .external_lex_state = 2}, [7935] = {.lex_state = 0, .external_lex_state = 2}, [7936] = {.lex_state = 0, .external_lex_state = 2}, [7937] = {.lex_state = 0, .external_lex_state = 2}, [7938] = {.lex_state = 0, .external_lex_state = 2}, [7939] = {.lex_state = 0, .external_lex_state = 2}, [7940] = {.lex_state = 0, .external_lex_state = 2}, [7941] = {.lex_state = 172, .external_lex_state = 2}, [7942] = {.lex_state = 0, .external_lex_state = 2}, [7943] = {.lex_state = 0, .external_lex_state = 2}, [7944] = {.lex_state = 0, .external_lex_state = 2}, [7945] = {.lex_state = 0, .external_lex_state = 2}, [7946] = {.lex_state = 0, .external_lex_state = 2}, [7947] = {.lex_state = 0, .external_lex_state = 2}, [7948] = {.lex_state = 0, .external_lex_state = 2}, [7949] = {.lex_state = 0, .external_lex_state = 2}, [7950] = {.lex_state = 0, .external_lex_state = 2}, [7951] = {.lex_state = 0, .external_lex_state = 2}, [7952] = {.lex_state = 0, .external_lex_state = 2}, [7953] = {.lex_state = 0, .external_lex_state = 2}, [7954] = {.lex_state = 0, .external_lex_state = 2}, [7955] = {.lex_state = 0, .external_lex_state = 2}, [7956] = {.lex_state = 0, .external_lex_state = 2}, [7957] = {.lex_state = 0, .external_lex_state = 2}, [7958] = {.lex_state = 0, .external_lex_state = 2}, [7959] = {.lex_state = 0, .external_lex_state = 2}, [7960] = {.lex_state = 0, .external_lex_state = 2}, [7961] = {.lex_state = 0, .external_lex_state = 2}, [7962] = {.lex_state = 0, .external_lex_state = 2}, [7963] = {.lex_state = 0, .external_lex_state = 2}, [7964] = {.lex_state = 0, .external_lex_state = 2}, [7965] = {.lex_state = 0, .external_lex_state = 2}, [7966] = {.lex_state = 0, .external_lex_state = 2}, [7967] = {.lex_state = 0, .external_lex_state = 2}, [7968] = {.lex_state = 0, .external_lex_state = 2}, [7969] = {.lex_state = 0, .external_lex_state = 2}, [7970] = {.lex_state = 0, .external_lex_state = 2}, [7971] = {.lex_state = 0, .external_lex_state = 2}, [7972] = {.lex_state = 0, .external_lex_state = 2}, [7973] = {.lex_state = 0, .external_lex_state = 2}, [7974] = {.lex_state = 9, .external_lex_state = 2}, [7975] = {.lex_state = 0, .external_lex_state = 2}, [7976] = {.lex_state = 0, .external_lex_state = 2}, [7977] = {.lex_state = 0, .external_lex_state = 2}, [7978] = {.lex_state = 0, .external_lex_state = 2}, [7979] = {.lex_state = 0, .external_lex_state = 2}, [7980] = {.lex_state = 0, .external_lex_state = 2}, [7981] = {.lex_state = 0, .external_lex_state = 2}, [7982] = {.lex_state = 0, .external_lex_state = 2}, [7983] = {.lex_state = 0, .external_lex_state = 2}, [7984] = {.lex_state = 0, .external_lex_state = 2}, [7985] = {.lex_state = 0, .external_lex_state = 2}, [7986] = {.lex_state = 0, .external_lex_state = 2}, [7987] = {.lex_state = 0, .external_lex_state = 2}, [7988] = {.lex_state = 0, .external_lex_state = 2}, [7989] = {.lex_state = 0, .external_lex_state = 2}, [7990] = {.lex_state = 17, .external_lex_state = 2}, [7991] = {.lex_state = 0, .external_lex_state = 2}, [7992] = {.lex_state = 0, .external_lex_state = 2}, [7993] = {.lex_state = 0, .external_lex_state = 2}, [7994] = {.lex_state = 0, .external_lex_state = 2}, [7995] = {.lex_state = 0, .external_lex_state = 2}, [7996] = {.lex_state = 0, .external_lex_state = 2}, [7997] = {.lex_state = 0, .external_lex_state = 2}, [7998] = {.lex_state = 172, .external_lex_state = 2}, [7999] = {.lex_state = 0, .external_lex_state = 2}, [8000] = {.lex_state = 0, .external_lex_state = 2}, [8001] = {.lex_state = 0, .external_lex_state = 2}, [8002] = {.lex_state = 0, .external_lex_state = 2}, [8003] = {.lex_state = 0, .external_lex_state = 2}, [8004] = {.lex_state = 0, .external_lex_state = 2}, [8005] = {.lex_state = 0, .external_lex_state = 2}, [8006] = {.lex_state = 0, .external_lex_state = 2}, [8007] = {.lex_state = 0, .external_lex_state = 2}, [8008] = {.lex_state = 0, .external_lex_state = 2}, [8009] = {.lex_state = 172, .external_lex_state = 2}, [8010] = {.lex_state = 0, .external_lex_state = 2}, [8011] = {.lex_state = 0, .external_lex_state = 7}, [8012] = {.lex_state = 172, .external_lex_state = 2}, [8013] = {.lex_state = 172, .external_lex_state = 2}, [8014] = {.lex_state = 172, .external_lex_state = 2}, [8015] = {.lex_state = 172, .external_lex_state = 2}, [8016] = {.lex_state = 0, .external_lex_state = 2}, [8017] = {.lex_state = 0, .external_lex_state = 2}, [8018] = {.lex_state = 0, .external_lex_state = 2}, [8019] = {.lex_state = 9, .external_lex_state = 2}, [8020] = {.lex_state = 0, .external_lex_state = 2}, [8021] = {.lex_state = 0, .external_lex_state = 2}, [8022] = {.lex_state = 0, .external_lex_state = 2}, [8023] = {.lex_state = 0, .external_lex_state = 2}, [8024] = {.lex_state = 0, .external_lex_state = 2}, [8025] = {.lex_state = 0, .external_lex_state = 2}, [8026] = {.lex_state = 0, .external_lex_state = 2}, [8027] = {.lex_state = 9, .external_lex_state = 2}, [8028] = {.lex_state = 0, .external_lex_state = 2}, [8029] = {.lex_state = 0, .external_lex_state = 2}, [8030] = {.lex_state = 0, .external_lex_state = 2}, [8031] = {.lex_state = 0, .external_lex_state = 2}, [8032] = {.lex_state = 0, .external_lex_state = 2}, [8033] = {.lex_state = 0, .external_lex_state = 2}, [8034] = {.lex_state = 0, .external_lex_state = 2}, [8035] = {.lex_state = 0, .external_lex_state = 2}, [8036] = {.lex_state = 0, .external_lex_state = 2}, [8037] = {.lex_state = 0, .external_lex_state = 2}, [8038] = {.lex_state = 9, .external_lex_state = 2}, [8039] = {.lex_state = 0, .external_lex_state = 2}, [8040] = {.lex_state = 0, .external_lex_state = 2}, [8041] = {.lex_state = 0, .external_lex_state = 2}, [8042] = {.lex_state = 0, .external_lex_state = 2}, [8043] = {.lex_state = 0, .external_lex_state = 2}, [8044] = {.lex_state = 0, .external_lex_state = 2}, [8045] = {.lex_state = 0, .external_lex_state = 2}, [8046] = {.lex_state = 0, .external_lex_state = 2}, [8047] = {.lex_state = 0, .external_lex_state = 2}, [8048] = {.lex_state = 0, .external_lex_state = 2}, [8049] = {.lex_state = 0, .external_lex_state = 2}, [8050] = {.lex_state = 0, .external_lex_state = 2}, [8051] = {.lex_state = 0, .external_lex_state = 2}, [8052] = {.lex_state = 0, .external_lex_state = 2}, [8053] = {.lex_state = 0, .external_lex_state = 2}, [8054] = {.lex_state = 0, .external_lex_state = 2}, [8055] = {.lex_state = 0, .external_lex_state = 2}, [8056] = {.lex_state = 9, .external_lex_state = 2}, [8057] = {.lex_state = 0, .external_lex_state = 2}, [8058] = {.lex_state = 0, .external_lex_state = 2}, [8059] = {.lex_state = 0, .external_lex_state = 2}, [8060] = {.lex_state = 0, .external_lex_state = 2}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), [anon_sym_BOM] = ACTIONS(1), [aux_sym_escape_sequence_token1] = ACTIONS(1), [aux_sym_escape_sequence_token2] = ACTIONS(1), [aux_sym_escape_sequence_token3] = ACTIONS(1), [aux_sym_escape_sequence_token4] = ACTIONS(1), [aux_sym_escape_sequence_token5] = ACTIONS(1), [sym_htmlentity] = ACTIONS(1), [sym_end_file] = ACTIONS(1), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_SLASH_EQ] = ACTIONS(1), [anon_sym_DOT] = ACTIONS(1), [anon_sym_DOT_DOT] = ACTIONS(1), [anon_sym_DOT_DOT_DOT] = ACTIONS(1), [anon_sym_AMP] = ACTIONS(1), [anon_sym_AMP_EQ] = ACTIONS(1), [anon_sym_AMP_AMP] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), [anon_sym_PIPE_EQ] = ACTIONS(1), [anon_sym_PIPE_PIPE] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [anon_sym_DASH_EQ] = ACTIONS(1), [anon_sym_DASH_DASH] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_PLUS_EQ] = ACTIONS(1), [anon_sym_PLUS_PLUS] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_LT_EQ] = ACTIONS(1), [anon_sym_LT_LT] = ACTIONS(1), [anon_sym_LT_LT_EQ] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_GT_GT_EQ] = ACTIONS(1), [anon_sym_GT_GT_GT_EQ] = ACTIONS(1), [anon_sym_GT_GT] = ACTIONS(1), [anon_sym_GT_GT_GT] = ACTIONS(1), [anon_sym_BANG] = ACTIONS(1), [anon_sym_BANG_EQ] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_QMARK] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_SEMI] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_DOLLAR] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_EQ_EQ] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), [anon_sym_STAR_EQ] = ACTIONS(1), [anon_sym_PERCENT] = ACTIONS(1), [anon_sym_PERCENT_EQ] = ACTIONS(1), [anon_sym_CARET] = ACTIONS(1), [anon_sym_CARET_EQ] = ACTIONS(1), [anon_sym_CARET_CARET] = ACTIONS(1), [anon_sym_CARET_CARET_EQ] = ACTIONS(1), [anon_sym_TILDE] = ACTIONS(1), [anon_sym_TILDE_EQ] = ACTIONS(1), [anon_sym_AT] = ACTIONS(1), [anon_sym_EQ_GT] = ACTIONS(1), [anon_sym_POUND] = ACTIONS(1), [anon_sym_BANGin] = ACTIONS(1), [anon_sym_BANGis] = ACTIONS(1), [sym_bool] = ACTIONS(1), [sym_byte] = ACTIONS(1), [sym_ubyte] = ACTIONS(1), [sym_char] = ACTIONS(1), [sym_short] = ACTIONS(1), [sym_ushort] = ACTIONS(1), [sym_int] = ACTIONS(1), [sym_uint] = ACTIONS(1), [sym_long] = ACTIONS(1), [sym_ulong] = ACTIONS(1), [sym_cent] = ACTIONS(1), [sym_ucent] = ACTIONS(1), [sym_wchar] = ACTIONS(1), [sym_dchar] = ACTIONS(1), [sym_float] = ACTIONS(1), [sym_double] = ACTIONS(1), [sym_real] = ACTIONS(1), [sym_ifloat] = ACTIONS(1), [sym_idouble] = ACTIONS(1), [sym_ireal] = ACTIONS(1), [sym_cfloat] = ACTIONS(1), [sym_cdouble] = ACTIONS(1), [sym_creal] = ACTIONS(1), [sym_size_t] = ACTIONS(1), [sym_ptrdiff_t] = ACTIONS(1), [sym_string] = ACTIONS(1), [sym_cstring] = ACTIONS(1), [sym_dstring] = ACTIONS(1), [sym_wstring] = ACTIONS(1), [sym_noreturn] = ACTIONS(1), [sym_true] = ACTIONS(1), [sym_false] = ACTIONS(1), [sym_null] = ACTIONS(1), [sym_super] = ACTIONS(1), [sym_this] = ACTIONS(1), [sym_abstract] = ACTIONS(1), [sym_alias] = ACTIONS(1), [sym_align] = ACTIONS(1), [sym_asm] = ACTIONS(1), [sym_assert] = ACTIONS(1), [sym_auto] = ACTIONS(1), [sym_break] = ACTIONS(1), [sym_case] = ACTIONS(1), [sym_cast] = ACTIONS(1), [sym_catch] = ACTIONS(1), [sym_class] = ACTIONS(1), [sym_const] = ACTIONS(1), [sym_continue] = ACTIONS(1), [sym_debug] = ACTIONS(1), [sym_default] = ACTIONS(1), [sym_delegate] = ACTIONS(1), [sym_delete] = ACTIONS(1), [sym_deprecated] = ACTIONS(1), [sym_do] = ACTIONS(1), [sym_else] = ACTIONS(1), [sym_enum] = ACTIONS(1), [sym_export] = ACTIONS(1), [sym_extern] = ACTIONS(1), [sym_final] = ACTIONS(1), [sym_finally] = ACTIONS(1), [sym_for] = ACTIONS(1), [sym_foreach] = ACTIONS(1), [sym_foreach_reverse] = ACTIONS(1), [sym_function] = ACTIONS(1), [sym_goto] = ACTIONS(1), [sym_if] = ACTIONS(1), [sym_immutable] = ACTIONS(1), [sym_import] = ACTIONS(1), [sym_in] = ACTIONS(1), [sym_inout] = ACTIONS(1), [sym_interface] = ACTIONS(1), [sym_invariant] = ACTIONS(1), [sym_is] = ACTIONS(1), [sym_lazy] = ACTIONS(1), [sym_mixin] = ACTIONS(1), [sym_module] = ACTIONS(1), [sym_new] = ACTIONS(1), [sym_nothrow] = ACTIONS(1), [sym_out] = ACTIONS(1), [sym_override] = ACTIONS(1), [sym_package] = ACTIONS(1), [sym_pragma] = ACTIONS(1), [sym_private] = ACTIONS(1), [sym_protected] = ACTIONS(1), [sym_public] = ACTIONS(1), [sym_pure] = ACTIONS(1), [sym_ref] = ACTIONS(1), [sym_return] = ACTIONS(1), [sym_scope] = ACTIONS(1), [sym_shared] = ACTIONS(1), [sym_static] = ACTIONS(1), [sym_struct] = ACTIONS(1), [sym_switch] = ACTIONS(1), [sym_synchronized] = ACTIONS(1), [sym_template] = ACTIONS(1), [sym_throw] = ACTIONS(1), [sym_try] = ACTIONS(1), [sym_typeid] = ACTIONS(1), [sym_typeof] = ACTIONS(1), [sym_union] = ACTIONS(1), [sym_unittest] = ACTIONS(1), [sym_version] = ACTIONS(1), [sym_while] = ACTIONS(1), [sym_with] = ACTIONS(1), [sym_parameters_] = ACTIONS(1), [sym_gshared] = ACTIONS(1), [sym_traits] = ACTIONS(1), [sym_vector] = ACTIONS(1), [sym_void] = ACTIONS(1), [anon_sym_C] = ACTIONS(1), [anon_sym_D] = ACTIONS(1), [anon_sym_Windows] = ACTIONS(1), [anon_sym_System] = ACTIONS(1), [anon_sym_Objective] = ACTIONS(1), [anon_sym_BQUOTE] = ACTIONS(1), [anon_sym_r_DQUOTE] = ACTIONS(1), [anon_sym_x_DQUOTE] = ACTIONS(1), [anon_sym_DQUOTE] = ACTIONS(1), [anon_sym_DOLLAR_LPAREN] = ACTIONS(1), [anon_sym_i_BQUOTE] = ACTIONS(1), [sym_interpolated_escape] = ACTIONS(1), [anon_sym_i_DQUOTE] = ACTIONS(1), [anon_sym_iq_LBRACE] = ACTIONS(1), [aux_sym_char_literal_token1] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym___DATE__] = ACTIONS(1), [anon_sym___FILE__] = ACTIONS(1), [anon_sym___FILE_FULL_PATH__] = ACTIONS(1), [anon_sym___FUNCTION__] = ACTIONS(1), [anon_sym___LINE__] = ACTIONS(1), [anon_sym___MODULE__] = ACTIONS(1), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(1), [anon_sym___TIME__] = ACTIONS(1), [anon_sym___TIMESTAMP__] = ACTIONS(1), [anon_sym___VENDOR__] = ACTIONS(1), [anon_sym___VERSION__] = ACTIONS(1), [anon_sym_exit] = ACTIONS(1), [anon_sym_success] = ACTIONS(1), [anon_sym_failure] = ACTIONS(1), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(1), [sym_float_literal] = ACTIONS(1), [sym__string] = ACTIONS(1), [sym_not_in] = ACTIONS(1), [sym_not_is] = ACTIONS(1), [sym__after_eof] = ACTIONS(1), [sym_error_sentinel] = ACTIONS(1), }, [1] = { [sym_source_file] = STATE(7195), [sym__bom] = STATE(1777), [sym_module_def] = STATE(6894), [sym_module_declaration] = STATE(1812), [sym_import_declaration] = STATE(1811), [sym_mixin_declaration] = STATE(1811), [sym__declaration] = STATE(1811), [sym__declaration2] = STATE(1811), [sym_variable_declaration] = STATE(1811), [sym_manifest_constant] = STATE(1811), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1811), [sym_alias_declaration] = STATE(1811), [sym_alias_reassign] = STATE(1811), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1811), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2518), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2920), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1811), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1811), [sym_union_declaration] = STATE(1811), [sym_postblit] = STATE(1811), [sym_invariant_declaration] = STATE(1811), [sym_class_declaration] = STATE(1811), [sym_constructor] = STATE(1811), [sym_destructor] = STATE(1811), [sym_alias_this] = STATE(1811), [sym_interface_declaration] = STATE(1811), [sym_enum_declaration] = STATE(1811), [sym_anonymous_enum_declaration] = STATE(1811), [sym_function_declaration] = STATE(1811), [sym_template_declaration] = STATE(1811), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1811), [sym_template_mixin] = STATE(1811), [sym_conditional_declaration] = STATE(1811), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1811), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1811), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1811), [sym_static_assert] = STATE(1811), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1811), [aux_sym_source_file_repeat1] = STATE(1811), [aux_sym_module_declaration_repeat1] = STATE(5343), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [anon_sym_BOM] = ACTIONS(9), [sym_shebang] = ACTIONS(9), [sym_end_file] = ACTIONS(11), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(15), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_module] = ACTIONS(53), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(106), [sym_mixin_declaration] = STATE(106), [sym__declaration] = STATE(106), [sym__declaration2] = STATE(106), [sym_variable_declaration] = STATE(106), [sym_manifest_constant] = STATE(106), [sym_storage_class] = STATE(2996), [sym__initializer] = STATE(6918), [sym_auto_declaration] = STATE(106), [sym_alias_declaration] = STATE(106), [sym_alias_reassign] = STATE(106), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(106), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(106), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4158), [sym_ternary_expression] = STATE(4158), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4158), [sym_binary_expression] = STATE(4158), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(697), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(106), [sym_union_declaration] = STATE(106), [sym_aggregate_initializer] = STATE(6918), [sym_member_initializer] = STATE(5797), [sym_postblit] = STATE(106), [sym_invariant_declaration] = STATE(106), [sym_class_declaration] = STATE(106), [sym_constructor] = STATE(106), [sym_destructor] = STATE(106), [sym_alias_this] = STATE(106), [sym_interface_declaration] = STATE(106), [sym_enum_declaration] = STATE(106), [sym_anonymous_enum_declaration] = STATE(106), [sym_function_declaration] = STATE(106), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(106), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(106), [sym_template_mixin] = STATE(106), [sym_conditional_declaration] = STATE(106), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(106), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(106), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(79), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(83), [anon_sym_LBRACE] = ACTIONS(85), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(97), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [3] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(76), [sym_mixin_declaration] = STATE(76), [sym__declaration] = STATE(76), [sym__declaration2] = STATE(76), [sym_variable_declaration] = STATE(76), [sym_manifest_constant] = STATE(76), [sym_storage_class] = STATE(2996), [sym__initializer] = STATE(6918), [sym_auto_declaration] = STATE(76), [sym_alias_declaration] = STATE(76), [sym_alias_reassign] = STATE(76), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(76), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(76), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4158), [sym_ternary_expression] = STATE(4158), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4158), [sym_binary_expression] = STATE(4158), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(697), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(76), [sym_union_declaration] = STATE(76), [sym_aggregate_initializer] = STATE(6918), [sym_member_initializer] = STATE(5797), [sym_postblit] = STATE(76), [sym_invariant_declaration] = STATE(76), [sym_class_declaration] = STATE(76), [sym_constructor] = STATE(76), [sym_destructor] = STATE(76), [sym_alias_this] = STATE(76), [sym_interface_declaration] = STATE(76), [sym_enum_declaration] = STATE(76), [sym_anonymous_enum_declaration] = STATE(76), [sym_function_declaration] = STATE(76), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(76), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(76), [sym_template_mixin] = STATE(76), [sym_conditional_declaration] = STATE(76), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(76), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(76), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(79), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(235), [anon_sym_LBRACE] = ACTIONS(85), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(237), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [4] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1872), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(241), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [5] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(31), [sym_mixin_declaration] = STATE(31), [sym__declaration] = STATE(31), [sym__declaration2] = STATE(31), [sym_variable_declaration] = STATE(31), [sym_manifest_constant] = STATE(31), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(31), [sym_alias_declaration] = STATE(31), [sym_alias_reassign] = STATE(31), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(31), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(31), [sym_pragma_statement] = STATE(31), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(31), [sym_labeled_statement] = STATE(31), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(31), [sym_if_statement] = STATE(31), [sym_while_statement] = STATE(31), [sym_do_statement] = STATE(31), [sym_for_statement] = STATE(31), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(31), [sym_switch_statement] = STATE(31), [sym_final_switch_statement] = STATE(31), [sym_continue_statement] = STATE(31), [sym_break_statement] = STATE(31), [sym_return_statement] = STATE(31), [sym_goto_statement] = STATE(31), [sym_with_statement] = STATE(31), [sym_synchronized_statement] = STATE(31), [sym_try_statement] = STATE(31), [sym_scope_guard_statement] = STATE(31), [sym_asm_statement] = STATE(31), [sym_struct_declaration] = STATE(31), [sym_union_declaration] = STATE(31), [sym_postblit] = STATE(31), [sym_invariant_declaration] = STATE(31), [sym_class_declaration] = STATE(31), [sym_constructor] = STATE(31), [sym_destructor] = STATE(31), [sym_alias_this] = STATE(31), [sym_interface_declaration] = STATE(31), [sym_enum_declaration] = STATE(31), [sym_anonymous_enum_declaration] = STATE(31), [sym_function_declaration] = STATE(31), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(31), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(31), [sym_template_mixin] = STATE(31), [sym_conditional_declaration] = STATE(31), [sym_conditional_statement] = STATE(31), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(31), [sym_static_foreach_declaration] = STATE(31), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(31), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(31), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(255), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(267), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(267), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(267), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [6] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2070), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(327), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [7] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2082), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(329), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [8] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1829), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(331), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [9] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1894), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(333), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [10] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1870), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(335), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [11] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1944), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(337), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [12] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2055), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(339), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [13] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1853), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(341), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [14] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1985), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(343), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [15] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2040), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(345), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [16] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2055), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(347), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [17] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1846), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(349), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [18] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1828), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(351), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [19] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1873), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(353), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [20] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1985), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(355), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [21] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5), [sym_mixin_declaration] = STATE(5), [sym__declaration] = STATE(5), [sym__declaration2] = STATE(5), [sym_variable_declaration] = STATE(5), [sym_manifest_constant] = STATE(5), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(5), [sym_alias_declaration] = STATE(5), [sym_alias_reassign] = STATE(5), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5), [sym_pragma_statement] = STATE(5), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(5), [sym_labeled_statement] = STATE(5), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(5), [sym_if_statement] = STATE(5), [sym_while_statement] = STATE(5), [sym_do_statement] = STATE(5), [sym_for_statement] = STATE(5), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(5), [sym_switch_statement] = STATE(5), [sym_final_switch_statement] = STATE(5), [sym_continue_statement] = STATE(5), [sym_break_statement] = STATE(5), [sym_return_statement] = STATE(5), [sym_goto_statement] = STATE(5), [sym_with_statement] = STATE(5), [sym_synchronized_statement] = STATE(5), [sym_try_statement] = STATE(5), [sym_scope_guard_statement] = STATE(5), [sym_asm_statement] = STATE(5), [sym_struct_declaration] = STATE(5), [sym_union_declaration] = STATE(5), [sym_postblit] = STATE(5), [sym_invariant_declaration] = STATE(5), [sym_class_declaration] = STATE(5), [sym_constructor] = STATE(5), [sym_destructor] = STATE(5), [sym_alias_this] = STATE(5), [sym_interface_declaration] = STATE(5), [sym_enum_declaration] = STATE(5), [sym_anonymous_enum_declaration] = STATE(5), [sym_function_declaration] = STATE(5), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5), [sym_template_mixin] = STATE(5), [sym_conditional_declaration] = STATE(5), [sym_conditional_statement] = STATE(5), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5), [sym_static_foreach_declaration] = STATE(5), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(5), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(357), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(357), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(359), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(361), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(361), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(361), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(361), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(361), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [22] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2086), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(363), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [23] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(30), [sym_mixin_declaration] = STATE(30), [sym__declaration] = STATE(30), [sym__declaration2] = STATE(30), [sym_variable_declaration] = STATE(30), [sym_manifest_constant] = STATE(30), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(30), [sym_alias_declaration] = STATE(30), [sym_alias_reassign] = STATE(30), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(30), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(30), [sym_pragma_statement] = STATE(30), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(30), [sym_labeled_statement] = STATE(30), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(30), [sym_if_statement] = STATE(30), [sym_while_statement] = STATE(30), [sym_do_statement] = STATE(30), [sym_for_statement] = STATE(30), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(30), [sym_switch_statement] = STATE(30), [sym_final_switch_statement] = STATE(30), [sym_continue_statement] = STATE(30), [sym_break_statement] = STATE(30), [sym_return_statement] = STATE(30), [sym_goto_statement] = STATE(30), [sym_with_statement] = STATE(30), [sym_synchronized_statement] = STATE(30), [sym_try_statement] = STATE(30), [sym_scope_guard_statement] = STATE(30), [sym_asm_statement] = STATE(30), [sym_struct_declaration] = STATE(30), [sym_union_declaration] = STATE(30), [sym_postblit] = STATE(30), [sym_invariant_declaration] = STATE(30), [sym_class_declaration] = STATE(30), [sym_constructor] = STATE(30), [sym_destructor] = STATE(30), [sym_alias_this] = STATE(30), [sym_interface_declaration] = STATE(30), [sym_enum_declaration] = STATE(30), [sym_anonymous_enum_declaration] = STATE(30), [sym_function_declaration] = STATE(30), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(30), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(30), [sym_template_mixin] = STATE(30), [sym_conditional_declaration] = STATE(30), [sym_conditional_statement] = STATE(30), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(30), [sym_static_foreach_declaration] = STATE(30), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(30), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(30), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(365), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(267), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(267), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(267), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [24] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1843), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(367), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [25] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1876), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(369), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [26] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1873), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(371), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [27] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1827), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(373), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [28] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1882), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(375), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [29] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(32), [sym_mixin_declaration] = STATE(32), [sym__declaration] = STATE(32), [sym__declaration2] = STATE(32), [sym_variable_declaration] = STATE(32), [sym_manifest_constant] = STATE(32), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(32), [sym_alias_declaration] = STATE(32), [sym_alias_reassign] = STATE(32), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(32), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(32), [sym_pragma_statement] = STATE(32), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(32), [sym_labeled_statement] = STATE(32), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(32), [sym_if_statement] = STATE(32), [sym_while_statement] = STATE(32), [sym_do_statement] = STATE(32), [sym_for_statement] = STATE(32), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(32), [sym_switch_statement] = STATE(32), [sym_final_switch_statement] = STATE(32), [sym_continue_statement] = STATE(32), [sym_break_statement] = STATE(32), [sym_return_statement] = STATE(32), [sym_goto_statement] = STATE(32), [sym_with_statement] = STATE(32), [sym_synchronized_statement] = STATE(32), [sym_try_statement] = STATE(32), [sym_scope_guard_statement] = STATE(32), [sym_asm_statement] = STATE(32), [sym_struct_declaration] = STATE(32), [sym_union_declaration] = STATE(32), [sym_postblit] = STATE(32), [sym_invariant_declaration] = STATE(32), [sym_class_declaration] = STATE(32), [sym_constructor] = STATE(32), [sym_destructor] = STATE(32), [sym_alias_this] = STATE(32), [sym_interface_declaration] = STATE(32), [sym_enum_declaration] = STATE(32), [sym_anonymous_enum_declaration] = STATE(32), [sym_function_declaration] = STATE(32), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(32), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(32), [sym_template_mixin] = STATE(32), [sym_conditional_declaration] = STATE(32), [sym_conditional_statement] = STATE(32), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(32), [sym_static_foreach_declaration] = STATE(32), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(32), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(32), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(379), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(381), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(381), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(381), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [30] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(31), [sym_mixin_declaration] = STATE(31), [sym__declaration] = STATE(31), [sym__declaration2] = STATE(31), [sym_variable_declaration] = STATE(31), [sym_manifest_constant] = STATE(31), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(31), [sym_alias_declaration] = STATE(31), [sym_alias_reassign] = STATE(31), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(31), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(31), [sym_pragma_statement] = STATE(31), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(31), [sym_labeled_statement] = STATE(31), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(31), [sym_if_statement] = STATE(31), [sym_while_statement] = STATE(31), [sym_do_statement] = STATE(31), [sym_for_statement] = STATE(31), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(31), [sym_switch_statement] = STATE(31), [sym_final_switch_statement] = STATE(31), [sym_continue_statement] = STATE(31), [sym_break_statement] = STATE(31), [sym_return_statement] = STATE(31), [sym_goto_statement] = STATE(31), [sym_with_statement] = STATE(31), [sym_synchronized_statement] = STATE(31), [sym_try_statement] = STATE(31), [sym_scope_guard_statement] = STATE(31), [sym_asm_statement] = STATE(31), [sym_struct_declaration] = STATE(31), [sym_union_declaration] = STATE(31), [sym_postblit] = STATE(31), [sym_invariant_declaration] = STATE(31), [sym_class_declaration] = STATE(31), [sym_constructor] = STATE(31), [sym_destructor] = STATE(31), [sym_alias_this] = STATE(31), [sym_interface_declaration] = STATE(31), [sym_enum_declaration] = STATE(31), [sym_anonymous_enum_declaration] = STATE(31), [sym_function_declaration] = STATE(31), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(31), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(31), [sym_template_mixin] = STATE(31), [sym_conditional_declaration] = STATE(31), [sym_conditional_statement] = STATE(31), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(31), [sym_static_foreach_declaration] = STATE(31), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(31), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(31), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(255), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(381), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(381), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(381), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [31] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(31), [sym_mixin_declaration] = STATE(31), [sym__declaration] = STATE(31), [sym__declaration2] = STATE(31), [sym_variable_declaration] = STATE(31), [sym_manifest_constant] = STATE(31), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(31), [sym_alias_declaration] = STATE(31), [sym_alias_reassign] = STATE(31), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(31), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(31), [sym_pragma_statement] = STATE(31), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(31), [sym_labeled_statement] = STATE(31), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(31), [sym_if_statement] = STATE(31), [sym_while_statement] = STATE(31), [sym_do_statement] = STATE(31), [sym_for_statement] = STATE(31), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(31), [sym_switch_statement] = STATE(31), [sym_final_switch_statement] = STATE(31), [sym_continue_statement] = STATE(31), [sym_break_statement] = STATE(31), [sym_return_statement] = STATE(31), [sym_goto_statement] = STATE(31), [sym_with_statement] = STATE(31), [sym_synchronized_statement] = STATE(31), [sym_try_statement] = STATE(31), [sym_scope_guard_statement] = STATE(31), [sym_asm_statement] = STATE(31), [sym_struct_declaration] = STATE(31), [sym_union_declaration] = STATE(31), [sym_postblit] = STATE(31), [sym_invariant_declaration] = STATE(31), [sym_class_declaration] = STATE(31), [sym_constructor] = STATE(31), [sym_destructor] = STATE(31), [sym_alias_this] = STATE(31), [sym_interface_declaration] = STATE(31), [sym_enum_declaration] = STATE(31), [sym_anonymous_enum_declaration] = STATE(31), [sym_function_declaration] = STATE(31), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(31), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(31), [sym_template_mixin] = STATE(31), [sym_conditional_declaration] = STATE(31), [sym_conditional_statement] = STATE(31), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(31), [sym_static_foreach_declaration] = STATE(31), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(31), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(31), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(383), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(386), [anon_sym_RBRACE] = ACTIONS(389), [anon_sym_LBRACE] = ACTIONS(391), [anon_sym_DOT] = ACTIONS(394), [anon_sym_AMP] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(400), [anon_sym_DASH_DASH] = ACTIONS(397), [anon_sym_PLUS] = ACTIONS(400), [anon_sym_PLUS_PLUS] = ACTIONS(397), [anon_sym_BANG] = ACTIONS(397), [anon_sym_LPAREN] = ACTIONS(403), [anon_sym_RPAREN] = ACTIONS(389), [anon_sym_LBRACK] = ACTIONS(406), [anon_sym_SEMI] = ACTIONS(409), [anon_sym_DOLLAR] = ACTIONS(412), [anon_sym_STAR] = ACTIONS(397), [anon_sym_TILDE] = ACTIONS(415), [anon_sym_AT] = ACTIONS(418), [sym_bool] = ACTIONS(421), [sym_byte] = ACTIONS(421), [sym_ubyte] = ACTIONS(421), [sym_char] = ACTIONS(421), [sym_short] = ACTIONS(421), [sym_ushort] = ACTIONS(421), [sym_int] = ACTIONS(421), [sym_uint] = ACTIONS(421), [sym_long] = ACTIONS(421), [sym_ulong] = ACTIONS(421), [sym_cent] = ACTIONS(421), [sym_ucent] = ACTIONS(421), [sym_wchar] = ACTIONS(421), [sym_dchar] = ACTIONS(421), [sym_float] = ACTIONS(421), [sym_double] = ACTIONS(421), [sym_real] = ACTIONS(421), [sym_ifloat] = ACTIONS(421), [sym_idouble] = ACTIONS(421), [sym_ireal] = ACTIONS(421), [sym_cfloat] = ACTIONS(421), [sym_cdouble] = ACTIONS(421), [sym_creal] = ACTIONS(421), [sym_size_t] = ACTIONS(421), [sym_ptrdiff_t] = ACTIONS(421), [sym_string] = ACTIONS(421), [sym_cstring] = ACTIONS(421), [sym_dstring] = ACTIONS(421), [sym_wstring] = ACTIONS(421), [sym_noreturn] = ACTIONS(421), [sym_true] = ACTIONS(424), [sym_false] = ACTIONS(424), [sym_null] = ACTIONS(424), [sym_super] = ACTIONS(424), [sym_this] = ACTIONS(427), [sym_abstract] = ACTIONS(430), [sym_alias] = ACTIONS(433), [sym_align] = ACTIONS(436), [sym_asm] = ACTIONS(439), [sym_assert] = ACTIONS(442), [sym_auto] = ACTIONS(445), [sym_break] = ACTIONS(448), [sym_case] = ACTIONS(451), [sym_cast] = ACTIONS(453), [sym_catch] = ACTIONS(451), [sym_class] = ACTIONS(456), [sym_const] = ACTIONS(459), [sym_continue] = ACTIONS(462), [sym_debug] = ACTIONS(465), [sym_default] = ACTIONS(451), [sym_delegate] = ACTIONS(468), [sym_delete] = ACTIONS(471), [sym_deprecated] = ACTIONS(474), [sym_do] = ACTIONS(477), [sym_else] = ACTIONS(451), [sym_enum] = ACTIONS(480), [sym_export] = ACTIONS(483), [sym_extern] = ACTIONS(486), [sym_final] = ACTIONS(489), [sym_finally] = ACTIONS(451), [sym_for] = ACTIONS(492), [sym_foreach] = ACTIONS(495), [sym_foreach_reverse] = ACTIONS(495), [sym_function] = ACTIONS(498), [sym_goto] = ACTIONS(501), [sym_if] = ACTIONS(504), [sym_immutable] = ACTIONS(459), [sym_import] = ACTIONS(507), [sym_in] = ACTIONS(510), [sym_inout] = ACTIONS(459), [sym_interface] = ACTIONS(513), [sym_invariant] = ACTIONS(516), [sym_is] = ACTIONS(519), [sym_mixin] = ACTIONS(522), [sym_new] = ACTIONS(525), [sym_nothrow] = ACTIONS(430), [sym_out] = ACTIONS(528), [sym_override] = ACTIONS(430), [sym_package] = ACTIONS(531), [sym_pragma] = ACTIONS(534), [sym_private] = ACTIONS(483), [sym_protected] = ACTIONS(483), [sym_public] = ACTIONS(483), [sym_pure] = ACTIONS(430), [sym_ref] = ACTIONS(537), [sym_return] = ACTIONS(540), [sym_scope] = ACTIONS(543), [sym_shared] = ACTIONS(546), [sym_static] = ACTIONS(549), [sym_struct] = ACTIONS(552), [sym_switch] = ACTIONS(555), [sym_synchronized] = ACTIONS(558), [sym_template] = ACTIONS(561), [sym_throw] = ACTIONS(564), [sym_try] = ACTIONS(567), [sym_typeid] = ACTIONS(570), [sym_typeof] = ACTIONS(573), [sym_union] = ACTIONS(576), [sym_unittest] = ACTIONS(579), [sym_version] = ACTIONS(582), [sym_while] = ACTIONS(585), [sym_with] = ACTIONS(588), [sym_gshared] = ACTIONS(430), [sym_traits] = ACTIONS(591), [sym_vector] = ACTIONS(594), [sym_void] = ACTIONS(597), [anon_sym_BQUOTE] = ACTIONS(600), [anon_sym_r_DQUOTE] = ACTIONS(603), [anon_sym_x_DQUOTE] = ACTIONS(606), [anon_sym_DQUOTE] = ACTIONS(609), [anon_sym_i_BQUOTE] = ACTIONS(612), [anon_sym_i_DQUOTE] = ACTIONS(615), [anon_sym_iq_LBRACE] = ACTIONS(618), [aux_sym_char_literal_token1] = ACTIONS(621), [anon_sym_SQUOTE] = ACTIONS(624), [anon_sym___DATE__] = ACTIONS(627), [anon_sym___FILE__] = ACTIONS(627), [anon_sym___FILE_FULL_PATH__] = ACTIONS(627), [anon_sym___FUNCTION__] = ACTIONS(627), [anon_sym___LINE__] = ACTIONS(627), [anon_sym___MODULE__] = ACTIONS(627), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(627), [anon_sym___TIME__] = ACTIONS(627), [anon_sym___TIMESTAMP__] = ACTIONS(627), [anon_sym___VENDOR__] = ACTIONS(627), [anon_sym___VERSION__] = ACTIONS(627), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(630), [sym_float_literal] = ACTIONS(630), [sym__string] = ACTIONS(633), }, [32] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(31), [sym_mixin_declaration] = STATE(31), [sym__declaration] = STATE(31), [sym__declaration2] = STATE(31), [sym_variable_declaration] = STATE(31), [sym_manifest_constant] = STATE(31), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(31), [sym_alias_declaration] = STATE(31), [sym_alias_reassign] = STATE(31), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(31), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(31), [sym_pragma_statement] = STATE(31), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(31), [sym_labeled_statement] = STATE(31), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(31), [sym_if_statement] = STATE(31), [sym_while_statement] = STATE(31), [sym_do_statement] = STATE(31), [sym_for_statement] = STATE(31), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(31), [sym_switch_statement] = STATE(31), [sym_final_switch_statement] = STATE(31), [sym_continue_statement] = STATE(31), [sym_break_statement] = STATE(31), [sym_return_statement] = STATE(31), [sym_goto_statement] = STATE(31), [sym_with_statement] = STATE(31), [sym_synchronized_statement] = STATE(31), [sym_try_statement] = STATE(31), [sym_scope_guard_statement] = STATE(31), [sym_asm_statement] = STATE(31), [sym_struct_declaration] = STATE(31), [sym_union_declaration] = STATE(31), [sym_postblit] = STATE(31), [sym_invariant_declaration] = STATE(31), [sym_class_declaration] = STATE(31), [sym_constructor] = STATE(31), [sym_destructor] = STATE(31), [sym_alias_this] = STATE(31), [sym_interface_declaration] = STATE(31), [sym_enum_declaration] = STATE(31), [sym_anonymous_enum_declaration] = STATE(31), [sym_function_declaration] = STATE(31), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(31), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(31), [sym_template_mixin] = STATE(31), [sym_conditional_declaration] = STATE(31), [sym_conditional_statement] = STATE(31), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(31), [sym_static_foreach_declaration] = STATE(31), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(31), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(31), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(636), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(636), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(255), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(638), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(638), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(638), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(638), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(638), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [33] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(34), [sym_mixin_declaration] = STATE(34), [sym__declaration] = STATE(34), [sym__declaration2] = STATE(34), [sym_variable_declaration] = STATE(34), [sym_manifest_constant] = STATE(34), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(34), [sym_alias_declaration] = STATE(34), [sym_alias_reassign] = STATE(34), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(34), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(34), [sym_pragma_statement] = STATE(34), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(34), [sym_labeled_statement] = STATE(34), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(34), [sym_if_statement] = STATE(34), [sym_while_statement] = STATE(34), [sym_do_statement] = STATE(34), [sym_for_statement] = STATE(34), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(34), [sym_switch_statement] = STATE(34), [sym_final_switch_statement] = STATE(34), [sym_continue_statement] = STATE(34), [sym_break_statement] = STATE(34), [sym_return_statement] = STATE(34), [sym_goto_statement] = STATE(34), [sym_with_statement] = STATE(34), [sym_synchronized_statement] = STATE(34), [sym_try_statement] = STATE(34), [sym_scope_guard_statement] = STATE(34), [sym_asm_statement] = STATE(34), [sym_struct_declaration] = STATE(34), [sym_union_declaration] = STATE(34), [sym_postblit] = STATE(34), [sym_invariant_declaration] = STATE(34), [sym_class_declaration] = STATE(34), [sym_constructor] = STATE(34), [sym_destructor] = STATE(34), [sym_alias_this] = STATE(34), [sym_interface_declaration] = STATE(34), [sym_enum_declaration] = STATE(34), [sym_anonymous_enum_declaration] = STATE(34), [sym_function_declaration] = STATE(34), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(34), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(34), [sym_template_mixin] = STATE(34), [sym_conditional_declaration] = STATE(34), [sym_conditional_statement] = STATE(34), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(34), [sym_static_foreach_declaration] = STATE(34), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(34), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(34), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(640), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(640), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(642), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(644), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(644), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(644), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(644), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(644), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [34] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(31), [sym_mixin_declaration] = STATE(31), [sym__declaration] = STATE(31), [sym__declaration2] = STATE(31), [sym_variable_declaration] = STATE(31), [sym_manifest_constant] = STATE(31), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(31), [sym_alias_declaration] = STATE(31), [sym_alias_reassign] = STATE(31), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(31), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(31), [sym_pragma_statement] = STATE(31), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(31), [sym_labeled_statement] = STATE(31), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(31), [sym_if_statement] = STATE(31), [sym_while_statement] = STATE(31), [sym_do_statement] = STATE(31), [sym_for_statement] = STATE(31), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(31), [sym_switch_statement] = STATE(31), [sym_final_switch_statement] = STATE(31), [sym_continue_statement] = STATE(31), [sym_break_statement] = STATE(31), [sym_return_statement] = STATE(31), [sym_goto_statement] = STATE(31), [sym_with_statement] = STATE(31), [sym_synchronized_statement] = STATE(31), [sym_try_statement] = STATE(31), [sym_scope_guard_statement] = STATE(31), [sym_asm_statement] = STATE(31), [sym_struct_declaration] = STATE(31), [sym_union_declaration] = STATE(31), [sym_postblit] = STATE(31), [sym_invariant_declaration] = STATE(31), [sym_class_declaration] = STATE(31), [sym_constructor] = STATE(31), [sym_destructor] = STATE(31), [sym_alias_this] = STATE(31), [sym_interface_declaration] = STATE(31), [sym_enum_declaration] = STATE(31), [sym_anonymous_enum_declaration] = STATE(31), [sym_function_declaration] = STATE(31), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(31), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(31), [sym_template_mixin] = STATE(31), [sym_conditional_declaration] = STATE(31), [sym_conditional_statement] = STATE(31), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(31), [sym_static_foreach_declaration] = STATE(31), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(31), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(31), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(646), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(646), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(255), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(648), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(648), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(648), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_else] = ACTIONS(648), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_finally] = ACTIONS(648), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [35] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2036), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(333), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [36] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1944), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(650), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [37] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1846), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(652), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [38] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1952), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(367), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [39] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1939), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(327), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [40] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1936), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(329), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [41] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2040), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(654), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [42] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2096), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(656), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [43] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(2038), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(658), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [44] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1768), [sym_mixin_declaration] = STATE(1768), [sym__declaration] = STATE(1768), [sym__declaration2] = STATE(1768), [sym_variable_declaration] = STATE(1768), [sym_manifest_constant] = STATE(1768), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1768), [sym_alias_declaration] = STATE(1768), [sym_alias_reassign] = STATE(1768), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1768), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1768), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(1768), [sym_union_declaration] = STATE(1768), [sym_postblit] = STATE(1768), [sym_invariant_declaration] = STATE(1768), [sym_class_declaration] = STATE(1768), [sym_constructor] = STATE(1768), [sym_destructor] = STATE(1768), [sym_alias_this] = STATE(1768), [sym_interface_declaration] = STATE(1768), [sym_enum_declaration] = STATE(1768), [sym_anonymous_enum_declaration] = STATE(1768), [sym_function_declaration] = STATE(1768), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1768), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1768), [sym_template_mixin] = STATE(1768), [sym_conditional_declaration] = STATE(1768), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(1768), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1768), [aux_sym_source_file_repeat1] = STATE(1953), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(660), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(245), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [45] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(662), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [46] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(666), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [47] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(50), [sym_mixin_declaration] = STATE(50), [sym__declaration] = STATE(50), [sym__declaration2] = STATE(50), [sym_variable_declaration] = STATE(50), [sym_manifest_constant] = STATE(50), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(50), [sym_alias_declaration] = STATE(50), [sym_alias_reassign] = STATE(50), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(50), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(50), [sym_pragma_statement] = STATE(50), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(50), [aux_sym__declarations_and_statements] = STATE(50), [sym__declaration_or_statement] = STATE(50), [sym__statement_no_case_no_default] = STATE(50), [sym_labeled_statement] = STATE(50), [sym_label] = STATE(53), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(50), [sym_if_statement] = STATE(50), [sym_while_statement] = STATE(50), [sym_do_statement] = STATE(50), [sym_for_statement] = STATE(50), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(50), [sym_switch_statement] = STATE(50), [sym_case_statement] = STATE(50), [sym_final_switch_statement] = STATE(50), [sym_continue_statement] = STATE(50), [sym_break_statement] = STATE(50), [sym_return_statement] = STATE(50), [sym_goto_statement] = STATE(50), [sym_with_statement] = STATE(50), [sym_synchronized_statement] = STATE(50), [sym_try_statement] = STATE(50), [sym_scope_guard_statement] = STATE(50), [sym_asm_statement] = STATE(50), [sym_struct_declaration] = STATE(50), [sym_union_declaration] = STATE(50), [sym_postblit] = STATE(50), [sym_invariant_declaration] = STATE(50), [sym_class_declaration] = STATE(50), [sym_constructor] = STATE(50), [sym_destructor] = STATE(50), [sym_alias_this] = STATE(50), [sym_interface_declaration] = STATE(50), [sym_enum_declaration] = STATE(50), [sym_anonymous_enum_declaration] = STATE(50), [sym_function_declaration] = STATE(50), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(50), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(50), [sym_template_mixin] = STATE(50), [sym_conditional_declaration] = STATE(50), [sym_conditional_statement] = STATE(50), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(50), [sym_static_foreach_declaration] = STATE(50), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(50), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(668), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(670), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [48] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2193), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(672), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(682), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(738), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(748), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(766), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(776), [sym_shared] = ACTIONS(780), [sym_static] = ACTIONS(784), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(792), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [49] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1590), [sym_mixin_declaration] = STATE(1590), [sym__declaration] = STATE(1590), [sym__declaration2] = STATE(1590), [sym_variable_declaration] = STATE(1590), [sym_manifest_constant] = STATE(1590), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1590), [sym_alias_declaration] = STATE(1590), [sym_alias_reassign] = STATE(1590), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1590), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1590), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1588), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1590), [sym_union_declaration] = STATE(1590), [sym_postblit] = STATE(1590), [sym_invariant_declaration] = STATE(1590), [sym_class_declaration] = STATE(1590), [sym_constructor] = STATE(1590), [sym_destructor] = STATE(1590), [sym_alias_this] = STATE(1590), [sym_interface_declaration] = STATE(1590), [sym_enum_declaration] = STATE(1590), [sym_anonymous_enum_declaration] = STATE(1590), [sym_function_declaration] = STATE(1590), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1590), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1590), [sym_template_mixin] = STATE(1590), [sym_conditional_declaration] = STATE(1590), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1590), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1590), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(826), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(828), [anon_sym_COLON] = ACTIONS(830), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [50] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(56), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(858), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [51] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(862), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [52] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(113), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(862), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [53] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(858), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [54] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2380), [sym_mixin_declaration] = STATE(2380), [sym__declaration] = STATE(2380), [sym__declaration2] = STATE(2380), [sym_variable_declaration] = STATE(2380), [sym_manifest_constant] = STATE(2380), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2380), [sym_alias_declaration] = STATE(2380), [sym_alias_reassign] = STATE(2380), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2380), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2380), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2378), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2380), [sym_union_declaration] = STATE(2380), [sym_postblit] = STATE(2380), [sym_invariant_declaration] = STATE(2380), [sym_class_declaration] = STATE(2380), [sym_constructor] = STATE(2380), [sym_destructor] = STATE(2380), [sym_alias_this] = STATE(2380), [sym_interface_declaration] = STATE(2380), [sym_enum_declaration] = STATE(2380), [sym_anonymous_enum_declaration] = STATE(2380), [sym_function_declaration] = STATE(2380), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2380), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2380), [sym_template_mixin] = STATE(2380), [sym_conditional_declaration] = STATE(2380), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2380), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2380), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(866), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(868), [anon_sym_COLON] = ACTIONS(830), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [55] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1707), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(900), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(904), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(906), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(910), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(914), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(918), [sym_shared] = ACTIONS(922), [sym_static] = ACTIONS(926), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(930), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [56] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(934), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [57] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2193), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(672), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(936), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(738), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(942), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(766), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(952), [sym_shared] = ACTIONS(780), [sym_static] = ACTIONS(956), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(962), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [58] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(67), [sym_mixin_declaration] = STATE(67), [sym__declaration] = STATE(67), [sym__declaration2] = STATE(67), [sym_variable_declaration] = STATE(67), [sym_manifest_constant] = STATE(67), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(67), [sym_alias_declaration] = STATE(67), [sym_alias_reassign] = STATE(67), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(67), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(67), [sym_pragma_statement] = STATE(67), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(67), [sym_labeled_statement] = STATE(67), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(67), [sym_if_statement] = STATE(67), [sym_while_statement] = STATE(67), [sym_do_statement] = STATE(67), [sym_for_statement] = STATE(67), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(67), [sym_switch_statement] = STATE(67), [sym_final_switch_statement] = STATE(67), [sym_continue_statement] = STATE(67), [sym_break_statement] = STATE(67), [sym_return_statement] = STATE(67), [sym_goto_statement] = STATE(67), [sym_with_statement] = STATE(67), [sym_synchronized_statement] = STATE(67), [sym_try_statement] = STATE(67), [sym_scope_guard_statement] = STATE(67), [sym_asm_statement] = STATE(67), [sym_struct_declaration] = STATE(67), [sym_union_declaration] = STATE(67), [sym_postblit] = STATE(67), [sym_invariant_declaration] = STATE(67), [sym_class_declaration] = STATE(67), [sym_constructor] = STATE(67), [sym_destructor] = STATE(67), [sym_alias_this] = STATE(67), [sym_interface_declaration] = STATE(67), [sym_enum_declaration] = STATE(67), [sym_anonymous_enum_declaration] = STATE(67), [sym_function_declaration] = STATE(67), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(67), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(67), [sym_template_mixin] = STATE(67), [sym_conditional_declaration] = STATE(67), [sym_conditional_statement] = STATE(67), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(67), [sym_static_foreach_declaration] = STATE(67), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(67), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(67), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(636), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(636), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(972), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(638), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(638), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(638), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(638), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [59] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2193), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(672), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(996), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(738), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(998), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(766), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1002), [sym_shared] = ACTIONS(780), [sym_static] = ACTIONS(1006), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(1010), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [60] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(61), [sym_mixin_declaration] = STATE(61), [sym__declaration] = STATE(61), [sym__declaration2] = STATE(61), [sym_variable_declaration] = STATE(61), [sym_manifest_constant] = STATE(61), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(61), [sym_alias_declaration] = STATE(61), [sym_alias_reassign] = STATE(61), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(61), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(61), [sym_pragma_statement] = STATE(61), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(61), [aux_sym__declarations_and_statements] = STATE(61), [sym__declaration_or_statement] = STATE(61), [sym__statement_no_case_no_default] = STATE(61), [sym_labeled_statement] = STATE(61), [sym_label] = STATE(62), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(61), [sym_if_statement] = STATE(61), [sym_while_statement] = STATE(61), [sym_do_statement] = STATE(61), [sym_for_statement] = STATE(61), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(61), [sym_switch_statement] = STATE(61), [sym_case_statement] = STATE(61), [sym_final_switch_statement] = STATE(61), [sym_continue_statement] = STATE(61), [sym_break_statement] = STATE(61), [sym_return_statement] = STATE(61), [sym_goto_statement] = STATE(61), [sym_with_statement] = STATE(61), [sym_synchronized_statement] = STATE(61), [sym_try_statement] = STATE(61), [sym_scope_guard_statement] = STATE(61), [sym_asm_statement] = STATE(61), [sym_struct_declaration] = STATE(61), [sym_union_declaration] = STATE(61), [sym_postblit] = STATE(61), [sym_invariant_declaration] = STATE(61), [sym_class_declaration] = STATE(61), [sym_constructor] = STATE(61), [sym_destructor] = STATE(61), [sym_alias_this] = STATE(61), [sym_interface_declaration] = STATE(61), [sym_enum_declaration] = STATE(61), [sym_anonymous_enum_declaration] = STATE(61), [sym_function_declaration] = STATE(61), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(61), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(61), [sym_template_mixin] = STATE(61), [sym_conditional_declaration] = STATE(61), [sym_conditional_statement] = STATE(61), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(61), [sym_static_foreach_declaration] = STATE(61), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(61), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1014), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1016), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [61] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(45), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1018), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [62] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1018), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [63] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1450), [sym_mixin_declaration] = STATE(1450), [sym__declaration] = STATE(1450), [sym__declaration2] = STATE(1450), [sym_variable_declaration] = STATE(1450), [sym_manifest_constant] = STATE(1450), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1450), [sym_alias_declaration] = STATE(1450), [sym_alias_reassign] = STATE(1450), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1450), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1450), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1527), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1450), [sym_union_declaration] = STATE(1450), [sym_postblit] = STATE(1450), [sym_invariant_declaration] = STATE(1450), [sym_class_declaration] = STATE(1450), [sym_constructor] = STATE(1450), [sym_destructor] = STATE(1450), [sym_alias_this] = STATE(1450), [sym_interface_declaration] = STATE(1450), [sym_enum_declaration] = STATE(1450), [sym_anonymous_enum_declaration] = STATE(1450), [sym_function_declaration] = STATE(1450), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1450), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1450), [sym_template_mixin] = STATE(1450), [sym_conditional_declaration] = STATE(1450), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1450), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1450), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1020), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1022), [anon_sym_COLON] = ACTIONS(1024), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [64] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1026), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [65] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5598), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1034), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1056), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1062), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1080), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1086), [sym_shared] = ACTIONS(1090), [sym_static] = ACTIONS(1094), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1102), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [66] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(68), [sym_mixin_declaration] = STATE(68), [sym__declaration] = STATE(68), [sym__declaration2] = STATE(68), [sym_variable_declaration] = STATE(68), [sym_manifest_constant] = STATE(68), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(68), [sym_alias_declaration] = STATE(68), [sym_alias_reassign] = STATE(68), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(68), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(68), [sym_pragma_statement] = STATE(68), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(68), [aux_sym__declarations_and_statements] = STATE(68), [sym__declaration_or_statement] = STATE(68), [sym__statement_no_case_no_default] = STATE(68), [sym_labeled_statement] = STATE(68), [sym_label] = STATE(69), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(68), [sym_if_statement] = STATE(68), [sym_while_statement] = STATE(68), [sym_do_statement] = STATE(68), [sym_for_statement] = STATE(68), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(68), [sym_switch_statement] = STATE(68), [sym_case_statement] = STATE(68), [sym_final_switch_statement] = STATE(68), [sym_continue_statement] = STATE(68), [sym_break_statement] = STATE(68), [sym_return_statement] = STATE(68), [sym_goto_statement] = STATE(68), [sym_with_statement] = STATE(68), [sym_synchronized_statement] = STATE(68), [sym_try_statement] = STATE(68), [sym_scope_guard_statement] = STATE(68), [sym_asm_statement] = STATE(68), [sym_struct_declaration] = STATE(68), [sym_union_declaration] = STATE(68), [sym_postblit] = STATE(68), [sym_invariant_declaration] = STATE(68), [sym_class_declaration] = STATE(68), [sym_constructor] = STATE(68), [sym_destructor] = STATE(68), [sym_alias_this] = STATE(68), [sym_interface_declaration] = STATE(68), [sym_enum_declaration] = STATE(68), [sym_anonymous_enum_declaration] = STATE(68), [sym_function_declaration] = STATE(68), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(68), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(68), [sym_template_mixin] = STATE(68), [sym_conditional_declaration] = STATE(68), [sym_conditional_statement] = STATE(68), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(68), [sym_static_foreach_declaration] = STATE(68), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(68), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1120), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1122), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [67] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(67), [sym_mixin_declaration] = STATE(67), [sym__declaration] = STATE(67), [sym__declaration2] = STATE(67), [sym_variable_declaration] = STATE(67), [sym_manifest_constant] = STATE(67), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(67), [sym_alias_declaration] = STATE(67), [sym_alias_reassign] = STATE(67), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(67), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(67), [sym_pragma_statement] = STATE(67), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(67), [sym_labeled_statement] = STATE(67), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(67), [sym_if_statement] = STATE(67), [sym_while_statement] = STATE(67), [sym_do_statement] = STATE(67), [sym_for_statement] = STATE(67), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(67), [sym_switch_statement] = STATE(67), [sym_final_switch_statement] = STATE(67), [sym_continue_statement] = STATE(67), [sym_break_statement] = STATE(67), [sym_return_statement] = STATE(67), [sym_goto_statement] = STATE(67), [sym_with_statement] = STATE(67), [sym_synchronized_statement] = STATE(67), [sym_try_statement] = STATE(67), [sym_scope_guard_statement] = STATE(67), [sym_asm_statement] = STATE(67), [sym_struct_declaration] = STATE(67), [sym_union_declaration] = STATE(67), [sym_postblit] = STATE(67), [sym_invariant_declaration] = STATE(67), [sym_class_declaration] = STATE(67), [sym_constructor] = STATE(67), [sym_destructor] = STATE(67), [sym_alias_this] = STATE(67), [sym_interface_declaration] = STATE(67), [sym_enum_declaration] = STATE(67), [sym_anonymous_enum_declaration] = STATE(67), [sym_function_declaration] = STATE(67), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(67), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(67), [sym_template_mixin] = STATE(67), [sym_conditional_declaration] = STATE(67), [sym_conditional_statement] = STATE(67), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(67), [sym_static_foreach_declaration] = STATE(67), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(67), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(67), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(383), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(386), [anon_sym_RBRACE] = ACTIONS(389), [anon_sym_LBRACE] = ACTIONS(391), [anon_sym_DOT] = ACTIONS(394), [anon_sym_AMP] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(400), [anon_sym_DASH_DASH] = ACTIONS(397), [anon_sym_PLUS] = ACTIONS(400), [anon_sym_PLUS_PLUS] = ACTIONS(397), [anon_sym_BANG] = ACTIONS(397), [anon_sym_LPAREN] = ACTIONS(403), [anon_sym_RPAREN] = ACTIONS(389), [anon_sym_LBRACK] = ACTIONS(406), [anon_sym_SEMI] = ACTIONS(1124), [anon_sym_DOLLAR] = ACTIONS(412), [anon_sym_STAR] = ACTIONS(397), [anon_sym_TILDE] = ACTIONS(415), [anon_sym_AT] = ACTIONS(418), [sym_bool] = ACTIONS(421), [sym_byte] = ACTIONS(421), [sym_ubyte] = ACTIONS(421), [sym_char] = ACTIONS(421), [sym_short] = ACTIONS(421), [sym_ushort] = ACTIONS(421), [sym_int] = ACTIONS(421), [sym_uint] = ACTIONS(421), [sym_long] = ACTIONS(421), [sym_ulong] = ACTIONS(421), [sym_cent] = ACTIONS(421), [sym_ucent] = ACTIONS(421), [sym_wchar] = ACTIONS(421), [sym_dchar] = ACTIONS(421), [sym_float] = ACTIONS(421), [sym_double] = ACTIONS(421), [sym_real] = ACTIONS(421), [sym_ifloat] = ACTIONS(421), [sym_idouble] = ACTIONS(421), [sym_ireal] = ACTIONS(421), [sym_cfloat] = ACTIONS(421), [sym_cdouble] = ACTIONS(421), [sym_creal] = ACTIONS(421), [sym_size_t] = ACTIONS(421), [sym_ptrdiff_t] = ACTIONS(421), [sym_string] = ACTIONS(421), [sym_cstring] = ACTIONS(421), [sym_dstring] = ACTIONS(421), [sym_wstring] = ACTIONS(421), [sym_noreturn] = ACTIONS(421), [sym_true] = ACTIONS(424), [sym_false] = ACTIONS(424), [sym_null] = ACTIONS(424), [sym_super] = ACTIONS(424), [sym_this] = ACTIONS(427), [sym_abstract] = ACTIONS(430), [sym_alias] = ACTIONS(433), [sym_align] = ACTIONS(436), [sym_asm] = ACTIONS(439), [sym_assert] = ACTIONS(442), [sym_auto] = ACTIONS(445), [sym_break] = ACTIONS(448), [sym_case] = ACTIONS(451), [sym_cast] = ACTIONS(453), [sym_catch] = ACTIONS(451), [sym_class] = ACTIONS(456), [sym_const] = ACTIONS(459), [sym_continue] = ACTIONS(462), [sym_debug] = ACTIONS(465), [sym_default] = ACTIONS(451), [sym_delegate] = ACTIONS(468), [sym_delete] = ACTIONS(471), [sym_deprecated] = ACTIONS(474), [sym_do] = ACTIONS(477), [sym_enum] = ACTIONS(480), [sym_export] = ACTIONS(483), [sym_extern] = ACTIONS(486), [sym_final] = ACTIONS(1127), [sym_finally] = ACTIONS(451), [sym_for] = ACTIONS(1130), [sym_foreach] = ACTIONS(1133), [sym_foreach_reverse] = ACTIONS(1133), [sym_function] = ACTIONS(498), [sym_goto] = ACTIONS(501), [sym_if] = ACTIONS(1136), [sym_immutable] = ACTIONS(459), [sym_import] = ACTIONS(507), [sym_in] = ACTIONS(510), [sym_inout] = ACTIONS(459), [sym_interface] = ACTIONS(513), [sym_invariant] = ACTIONS(516), [sym_is] = ACTIONS(519), [sym_mixin] = ACTIONS(522), [sym_new] = ACTIONS(525), [sym_nothrow] = ACTIONS(430), [sym_out] = ACTIONS(528), [sym_override] = ACTIONS(430), [sym_package] = ACTIONS(531), [sym_pragma] = ACTIONS(534), [sym_private] = ACTIONS(483), [sym_protected] = ACTIONS(483), [sym_public] = ACTIONS(483), [sym_pure] = ACTIONS(430), [sym_ref] = ACTIONS(537), [sym_return] = ACTIONS(540), [sym_scope] = ACTIONS(1139), [sym_shared] = ACTIONS(546), [sym_static] = ACTIONS(1142), [sym_struct] = ACTIONS(552), [sym_switch] = ACTIONS(1145), [sym_synchronized] = ACTIONS(1148), [sym_template] = ACTIONS(561), [sym_throw] = ACTIONS(564), [sym_try] = ACTIONS(1151), [sym_typeid] = ACTIONS(570), [sym_typeof] = ACTIONS(573), [sym_union] = ACTIONS(576), [sym_unittest] = ACTIONS(579), [sym_version] = ACTIONS(582), [sym_while] = ACTIONS(1154), [sym_with] = ACTIONS(1157), [sym_gshared] = ACTIONS(430), [sym_traits] = ACTIONS(591), [sym_vector] = ACTIONS(594), [sym_void] = ACTIONS(597), [anon_sym_BQUOTE] = ACTIONS(600), [anon_sym_r_DQUOTE] = ACTIONS(603), [anon_sym_x_DQUOTE] = ACTIONS(606), [anon_sym_DQUOTE] = ACTIONS(609), [anon_sym_i_BQUOTE] = ACTIONS(612), [anon_sym_i_DQUOTE] = ACTIONS(615), [anon_sym_iq_LBRACE] = ACTIONS(618), [aux_sym_char_literal_token1] = ACTIONS(621), [anon_sym_SQUOTE] = ACTIONS(624), [anon_sym___DATE__] = ACTIONS(627), [anon_sym___FILE__] = ACTIONS(627), [anon_sym___FILE_FULL_PATH__] = ACTIONS(627), [anon_sym___FUNCTION__] = ACTIONS(627), [anon_sym___LINE__] = ACTIONS(627), [anon_sym___MODULE__] = ACTIONS(627), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(627), [anon_sym___TIME__] = ACTIONS(627), [anon_sym___TIMESTAMP__] = ACTIONS(627), [anon_sym___VENDOR__] = ACTIONS(627), [anon_sym___VERSION__] = ACTIONS(627), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(630), [sym_float_literal] = ACTIONS(630), [sym__string] = ACTIONS(633), }, [68] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(82), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1160), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [69] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1160), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [70] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5578), [sym_mixin_declaration] = STATE(5578), [sym__declaration] = STATE(5578), [sym__declaration2] = STATE(5578), [sym_variable_declaration] = STATE(5578), [sym_manifest_constant] = STATE(5578), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5578), [sym_alias_declaration] = STATE(5578), [sym_alias_reassign] = STATE(5578), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5578), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5578), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5704), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5578), [sym_union_declaration] = STATE(5578), [sym_postblit] = STATE(5578), [sym_invariant_declaration] = STATE(5578), [sym_class_declaration] = STATE(5578), [sym_constructor] = STATE(5578), [sym_destructor] = STATE(5578), [sym_alias_this] = STATE(5578), [sym_interface_declaration] = STATE(5578), [sym_enum_declaration] = STATE(5578), [sym_anonymous_enum_declaration] = STATE(5578), [sym_function_declaration] = STATE(5578), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5578), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5578), [sym_template_mixin] = STATE(5578), [sym_conditional_declaration] = STATE(5578), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5578), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5578), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1164), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1166), [anon_sym_COLON] = ACTIONS(1168), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [71] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1382), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1184), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1188), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(1192), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1196), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1200), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(1204), [sym_shared] = ACTIONS(1208), [sym_static] = ACTIONS(1212), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(1216), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [72] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(67), [sym_mixin_declaration] = STATE(67), [sym__declaration] = STATE(67), [sym__declaration2] = STATE(67), [sym_variable_declaration] = STATE(67), [sym_manifest_constant] = STATE(67), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(67), [sym_alias_declaration] = STATE(67), [sym_alias_reassign] = STATE(67), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(67), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(67), [sym_pragma_statement] = STATE(67), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(67), [sym_labeled_statement] = STATE(67), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(67), [sym_if_statement] = STATE(67), [sym_while_statement] = STATE(67), [sym_do_statement] = STATE(67), [sym_for_statement] = STATE(67), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(67), [sym_switch_statement] = STATE(67), [sym_final_switch_statement] = STATE(67), [sym_continue_statement] = STATE(67), [sym_break_statement] = STATE(67), [sym_return_statement] = STATE(67), [sym_goto_statement] = STATE(67), [sym_with_statement] = STATE(67), [sym_synchronized_statement] = STATE(67), [sym_try_statement] = STATE(67), [sym_scope_guard_statement] = STATE(67), [sym_asm_statement] = STATE(67), [sym_struct_declaration] = STATE(67), [sym_union_declaration] = STATE(67), [sym_postblit] = STATE(67), [sym_invariant_declaration] = STATE(67), [sym_class_declaration] = STATE(67), [sym_constructor] = STATE(67), [sym_destructor] = STATE(67), [sym_alias_this] = STATE(67), [sym_interface_declaration] = STATE(67), [sym_enum_declaration] = STATE(67), [sym_anonymous_enum_declaration] = STATE(67), [sym_function_declaration] = STATE(67), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(67), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(67), [sym_template_mixin] = STATE(67), [sym_conditional_declaration] = STATE(67), [sym_conditional_statement] = STATE(67), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(67), [sym_static_foreach_declaration] = STATE(67), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(67), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(67), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(972), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(381), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(381), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [73] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1220), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [74] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5723), [sym_mixin_declaration] = STATE(5723), [sym__declaration] = STATE(5723), [sym__declaration2] = STATE(5723), [sym_variable_declaration] = STATE(5723), [sym_manifest_constant] = STATE(5723), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5723), [sym_alias_declaration] = STATE(5723), [sym_alias_reassign] = STATE(5723), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5723), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5723), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5587), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5723), [sym_union_declaration] = STATE(5723), [sym_postblit] = STATE(5723), [sym_invariant_declaration] = STATE(5723), [sym_class_declaration] = STATE(5723), [sym_constructor] = STATE(5723), [sym_destructor] = STATE(5723), [sym_alias_this] = STATE(5723), [sym_interface_declaration] = STATE(5723), [sym_enum_declaration] = STATE(5723), [sym_anonymous_enum_declaration] = STATE(5723), [sym_function_declaration] = STATE(5723), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5723), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5723), [sym_template_mixin] = STATE(5723), [sym_conditional_declaration] = STATE(5723), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5723), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5723), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1222), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1224), [anon_sym_COLON] = ACTIONS(1168), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [75] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1226), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [76] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(88), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1226), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [77] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2193), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(672), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1228), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(738), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1230), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(766), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1240), [sym_shared] = ACTIONS(780), [sym_static] = ACTIONS(1244), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(1250), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [78] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(80), [sym_mixin_declaration] = STATE(80), [sym__declaration] = STATE(80), [sym__declaration2] = STATE(80), [sym_variable_declaration] = STATE(80), [sym_manifest_constant] = STATE(80), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(80), [sym_alias_declaration] = STATE(80), [sym_alias_reassign] = STATE(80), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(80), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(80), [sym_pragma_statement] = STATE(80), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(80), [sym_labeled_statement] = STATE(80), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(80), [sym_if_statement] = STATE(80), [sym_while_statement] = STATE(80), [sym_do_statement] = STATE(80), [sym_for_statement] = STATE(80), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(80), [sym_switch_statement] = STATE(80), [sym_final_switch_statement] = STATE(80), [sym_continue_statement] = STATE(80), [sym_break_statement] = STATE(80), [sym_return_statement] = STATE(80), [sym_goto_statement] = STATE(80), [sym_with_statement] = STATE(80), [sym_synchronized_statement] = STATE(80), [sym_try_statement] = STATE(80), [sym_scope_guard_statement] = STATE(80), [sym_asm_statement] = STATE(80), [sym_struct_declaration] = STATE(80), [sym_union_declaration] = STATE(80), [sym_postblit] = STATE(80), [sym_invariant_declaration] = STATE(80), [sym_class_declaration] = STATE(80), [sym_constructor] = STATE(80), [sym_destructor] = STATE(80), [sym_alias_this] = STATE(80), [sym_interface_declaration] = STATE(80), [sym_enum_declaration] = STATE(80), [sym_anonymous_enum_declaration] = STATE(80), [sym_function_declaration] = STATE(80), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(80), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(80), [sym_template_mixin] = STATE(80), [sym_conditional_declaration] = STATE(80), [sym_conditional_statement] = STATE(80), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(80), [sym_static_foreach_declaration] = STATE(80), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(80), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(80), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(640), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(640), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1260), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(644), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(644), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(644), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(644), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [79] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(76), [sym_mixin_declaration] = STATE(76), [sym__declaration] = STATE(76), [sym__declaration2] = STATE(76), [sym_variable_declaration] = STATE(76), [sym_manifest_constant] = STATE(76), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(76), [sym_alias_declaration] = STATE(76), [sym_alias_reassign] = STATE(76), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(76), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(76), [sym_pragma_statement] = STATE(76), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(76), [aux_sym__declarations_and_statements] = STATE(76), [sym__declaration_or_statement] = STATE(76), [sym__statement_no_case_no_default] = STATE(76), [sym_labeled_statement] = STATE(76), [sym_label] = STATE(75), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(76), [sym_if_statement] = STATE(76), [sym_while_statement] = STATE(76), [sym_do_statement] = STATE(76), [sym_for_statement] = STATE(76), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(76), [sym_switch_statement] = STATE(76), [sym_case_statement] = STATE(76), [sym_final_switch_statement] = STATE(76), [sym_continue_statement] = STATE(76), [sym_break_statement] = STATE(76), [sym_return_statement] = STATE(76), [sym_goto_statement] = STATE(76), [sym_with_statement] = STATE(76), [sym_synchronized_statement] = STATE(76), [sym_try_statement] = STATE(76), [sym_scope_guard_statement] = STATE(76), [sym_asm_statement] = STATE(76), [sym_struct_declaration] = STATE(76), [sym_union_declaration] = STATE(76), [sym_postblit] = STATE(76), [sym_invariant_declaration] = STATE(76), [sym_class_declaration] = STATE(76), [sym_constructor] = STATE(76), [sym_destructor] = STATE(76), [sym_alias_this] = STATE(76), [sym_interface_declaration] = STATE(76), [sym_enum_declaration] = STATE(76), [sym_anonymous_enum_declaration] = STATE(76), [sym_function_declaration] = STATE(76), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(76), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(76), [sym_template_mixin] = STATE(76), [sym_conditional_declaration] = STATE(76), [sym_conditional_statement] = STATE(76), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(76), [sym_static_foreach_declaration] = STATE(76), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(76), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1262), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(237), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [80] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(67), [sym_mixin_declaration] = STATE(67), [sym__declaration] = STATE(67), [sym__declaration2] = STATE(67), [sym_variable_declaration] = STATE(67), [sym_manifest_constant] = STATE(67), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(67), [sym_alias_declaration] = STATE(67), [sym_alias_reassign] = STATE(67), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(67), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(67), [sym_pragma_statement] = STATE(67), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(67), [sym_labeled_statement] = STATE(67), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(67), [sym_if_statement] = STATE(67), [sym_while_statement] = STATE(67), [sym_do_statement] = STATE(67), [sym_for_statement] = STATE(67), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(67), [sym_switch_statement] = STATE(67), [sym_final_switch_statement] = STATE(67), [sym_continue_statement] = STATE(67), [sym_break_statement] = STATE(67), [sym_return_statement] = STATE(67), [sym_goto_statement] = STATE(67), [sym_with_statement] = STATE(67), [sym_synchronized_statement] = STATE(67), [sym_try_statement] = STATE(67), [sym_scope_guard_statement] = STATE(67), [sym_asm_statement] = STATE(67), [sym_struct_declaration] = STATE(67), [sym_union_declaration] = STATE(67), [sym_postblit] = STATE(67), [sym_invariant_declaration] = STATE(67), [sym_class_declaration] = STATE(67), [sym_constructor] = STATE(67), [sym_destructor] = STATE(67), [sym_alias_this] = STATE(67), [sym_interface_declaration] = STATE(67), [sym_enum_declaration] = STATE(67), [sym_anonymous_enum_declaration] = STATE(67), [sym_function_declaration] = STATE(67), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(67), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(67), [sym_template_mixin] = STATE(67), [sym_conditional_declaration] = STATE(67), [sym_conditional_statement] = STATE(67), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(67), [sym_static_foreach_declaration] = STATE(67), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(67), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(67), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(646), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(646), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(972), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(648), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(648), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(648), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(648), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [81] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1264), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [82] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1266), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [83] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5598), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1268), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1272), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1280), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1286), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1298), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1302), [sym_shared] = ACTIONS(1306), [sym_static] = ACTIONS(1310), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1316), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [84] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(115), [sym_mixin_declaration] = STATE(115), [sym__declaration] = STATE(115), [sym__declaration2] = STATE(115), [sym_variable_declaration] = STATE(115), [sym_manifest_constant] = STATE(115), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(115), [sym_alias_declaration] = STATE(115), [sym_alias_reassign] = STATE(115), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(115), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(115), [sym_pragma_statement] = STATE(115), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(115), [aux_sym__declarations_and_statements] = STATE(115), [sym__declaration_or_statement] = STATE(115), [sym__statement_no_case_no_default] = STATE(115), [sym_labeled_statement] = STATE(115), [sym_label] = STATE(121), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(115), [sym_if_statement] = STATE(115), [sym_while_statement] = STATE(115), [sym_do_statement] = STATE(115), [sym_for_statement] = STATE(115), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(115), [sym_switch_statement] = STATE(115), [sym_case_statement] = STATE(115), [sym_final_switch_statement] = STATE(115), [sym_continue_statement] = STATE(115), [sym_break_statement] = STATE(115), [sym_return_statement] = STATE(115), [sym_goto_statement] = STATE(115), [sym_with_statement] = STATE(115), [sym_synchronized_statement] = STATE(115), [sym_try_statement] = STATE(115), [sym_scope_guard_statement] = STATE(115), [sym_asm_statement] = STATE(115), [sym_struct_declaration] = STATE(115), [sym_union_declaration] = STATE(115), [sym_postblit] = STATE(115), [sym_invariant_declaration] = STATE(115), [sym_class_declaration] = STATE(115), [sym_constructor] = STATE(115), [sym_destructor] = STATE(115), [sym_alias_this] = STATE(115), [sym_interface_declaration] = STATE(115), [sym_enum_declaration] = STATE(115), [sym_anonymous_enum_declaration] = STATE(115), [sym_function_declaration] = STATE(115), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(115), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(115), [sym_template_mixin] = STATE(115), [sym_conditional_declaration] = STATE(115), [sym_conditional_statement] = STATE(115), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(115), [sym_static_foreach_declaration] = STATE(115), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(115), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1328), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1330), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [85] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(58), [sym_mixin_declaration] = STATE(58), [sym__declaration] = STATE(58), [sym__declaration2] = STATE(58), [sym_variable_declaration] = STATE(58), [sym_manifest_constant] = STATE(58), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(58), [sym_alias_declaration] = STATE(58), [sym_alias_reassign] = STATE(58), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(58), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(58), [sym_pragma_statement] = STATE(58), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(58), [sym_labeled_statement] = STATE(58), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(58), [sym_if_statement] = STATE(58), [sym_while_statement] = STATE(58), [sym_do_statement] = STATE(58), [sym_for_statement] = STATE(58), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(58), [sym_switch_statement] = STATE(58), [sym_final_switch_statement] = STATE(58), [sym_continue_statement] = STATE(58), [sym_break_statement] = STATE(58), [sym_return_statement] = STATE(58), [sym_goto_statement] = STATE(58), [sym_with_statement] = STATE(58), [sym_synchronized_statement] = STATE(58), [sym_try_statement] = STATE(58), [sym_scope_guard_statement] = STATE(58), [sym_asm_statement] = STATE(58), [sym_struct_declaration] = STATE(58), [sym_union_declaration] = STATE(58), [sym_postblit] = STATE(58), [sym_invariant_declaration] = STATE(58), [sym_class_declaration] = STATE(58), [sym_constructor] = STATE(58), [sym_destructor] = STATE(58), [sym_alias_this] = STATE(58), [sym_interface_declaration] = STATE(58), [sym_enum_declaration] = STATE(58), [sym_anonymous_enum_declaration] = STATE(58), [sym_function_declaration] = STATE(58), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(58), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(58), [sym_template_mixin] = STATE(58), [sym_conditional_declaration] = STATE(58), [sym_conditional_statement] = STATE(58), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(58), [sym_static_foreach_declaration] = STATE(58), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(58), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(58), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1332), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(381), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(381), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [86] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(87), [sym_mixin_declaration] = STATE(87), [sym__declaration] = STATE(87), [sym__declaration2] = STATE(87), [sym_variable_declaration] = STATE(87), [sym_manifest_constant] = STATE(87), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(87), [sym_alias_declaration] = STATE(87), [sym_alias_reassign] = STATE(87), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(87), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(87), [sym_pragma_statement] = STATE(87), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(87), [aux_sym__declarations_and_statements] = STATE(87), [sym__declaration_or_statement] = STATE(87), [sym__statement_no_case_no_default] = STATE(87), [sym_labeled_statement] = STATE(87), [sym_label] = STATE(46), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(87), [sym_if_statement] = STATE(87), [sym_while_statement] = STATE(87), [sym_do_statement] = STATE(87), [sym_for_statement] = STATE(87), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(87), [sym_switch_statement] = STATE(87), [sym_case_statement] = STATE(87), [sym_final_switch_statement] = STATE(87), [sym_continue_statement] = STATE(87), [sym_break_statement] = STATE(87), [sym_return_statement] = STATE(87), [sym_goto_statement] = STATE(87), [sym_with_statement] = STATE(87), [sym_synchronized_statement] = STATE(87), [sym_try_statement] = STATE(87), [sym_scope_guard_statement] = STATE(87), [sym_asm_statement] = STATE(87), [sym_struct_declaration] = STATE(87), [sym_union_declaration] = STATE(87), [sym_postblit] = STATE(87), [sym_invariant_declaration] = STATE(87), [sym_class_declaration] = STATE(87), [sym_constructor] = STATE(87), [sym_destructor] = STATE(87), [sym_alias_this] = STATE(87), [sym_interface_declaration] = STATE(87), [sym_enum_declaration] = STATE(87), [sym_anonymous_enum_declaration] = STATE(87), [sym_function_declaration] = STATE(87), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(87), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(87), [sym_template_mixin] = STATE(87), [sym_conditional_declaration] = STATE(87), [sym_conditional_statement] = STATE(87), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(87), [sym_static_foreach_declaration] = STATE(87), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(87), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1334), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1336), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [87] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(91), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(666), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [88] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1338), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [89] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2308), [sym_mixin_declaration] = STATE(2308), [sym__declaration] = STATE(2308), [sym__declaration2] = STATE(2308), [sym_variable_declaration] = STATE(2308), [sym_manifest_constant] = STATE(2308), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2308), [sym_alias_declaration] = STATE(2308), [sym_alias_reassign] = STATE(2308), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2308), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2308), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2183), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2308), [sym_union_declaration] = STATE(2308), [sym_postblit] = STATE(2308), [sym_invariant_declaration] = STATE(2308), [sym_class_declaration] = STATE(2308), [sym_constructor] = STATE(2308), [sym_destructor] = STATE(2308), [sym_alias_this] = STATE(2308), [sym_interface_declaration] = STATE(2308), [sym_enum_declaration] = STATE(2308), [sym_anonymous_enum_declaration] = STATE(2308), [sym_function_declaration] = STATE(2308), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2308), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2308), [sym_template_mixin] = STATE(2308), [sym_conditional_declaration] = STATE(2308), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2308), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2308), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1340), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1342), [anon_sym_COLON] = ACTIONS(1024), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [90] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(67), [sym_mixin_declaration] = STATE(67), [sym__declaration] = STATE(67), [sym__declaration2] = STATE(67), [sym_variable_declaration] = STATE(67), [sym_manifest_constant] = STATE(67), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(67), [sym_alias_declaration] = STATE(67), [sym_alias_reassign] = STATE(67), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(67), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(67), [sym_pragma_statement] = STATE(67), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(67), [sym_labeled_statement] = STATE(67), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(67), [sym_if_statement] = STATE(67), [sym_while_statement] = STATE(67), [sym_do_statement] = STATE(67), [sym_for_statement] = STATE(67), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(67), [sym_switch_statement] = STATE(67), [sym_final_switch_statement] = STATE(67), [sym_continue_statement] = STATE(67), [sym_break_statement] = STATE(67), [sym_return_statement] = STATE(67), [sym_goto_statement] = STATE(67), [sym_with_statement] = STATE(67), [sym_synchronized_statement] = STATE(67), [sym_try_statement] = STATE(67), [sym_scope_guard_statement] = STATE(67), [sym_asm_statement] = STATE(67), [sym_struct_declaration] = STATE(67), [sym_union_declaration] = STATE(67), [sym_postblit] = STATE(67), [sym_invariant_declaration] = STATE(67), [sym_class_declaration] = STATE(67), [sym_constructor] = STATE(67), [sym_destructor] = STATE(67), [sym_alias_this] = STATE(67), [sym_interface_declaration] = STATE(67), [sym_enum_declaration] = STATE(67), [sym_anonymous_enum_declaration] = STATE(67), [sym_function_declaration] = STATE(67), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(67), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(67), [sym_template_mixin] = STATE(67), [sym_conditional_declaration] = STATE(67), [sym_conditional_statement] = STATE(67), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(67), [sym_static_foreach_declaration] = STATE(67), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(67), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(67), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(972), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(267), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(267), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [91] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1352), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [92] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1382), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1184), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1354), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(1192), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1356), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1200), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(1360), [sym_shared] = ACTIONS(1208), [sym_static] = ACTIONS(1364), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(1368), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [93] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1707), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(900), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1372), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(906), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1374), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(914), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(1378), [sym_shared] = ACTIONS(922), [sym_static] = ACTIONS(1382), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(1386), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [94] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(72), [sym_mixin_declaration] = STATE(72), [sym__declaration] = STATE(72), [sym__declaration2] = STATE(72), [sym_variable_declaration] = STATE(72), [sym_manifest_constant] = STATE(72), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(72), [sym_alias_declaration] = STATE(72), [sym_alias_reassign] = STATE(72), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(72), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(72), [sym_pragma_statement] = STATE(72), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(72), [sym_labeled_statement] = STATE(72), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(72), [sym_if_statement] = STATE(72), [sym_while_statement] = STATE(72), [sym_do_statement] = STATE(72), [sym_for_statement] = STATE(72), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(72), [sym_switch_statement] = STATE(72), [sym_final_switch_statement] = STATE(72), [sym_continue_statement] = STATE(72), [sym_break_statement] = STATE(72), [sym_return_statement] = STATE(72), [sym_goto_statement] = STATE(72), [sym_with_statement] = STATE(72), [sym_synchronized_statement] = STATE(72), [sym_try_statement] = STATE(72), [sym_scope_guard_statement] = STATE(72), [sym_asm_statement] = STATE(72), [sym_struct_declaration] = STATE(72), [sym_union_declaration] = STATE(72), [sym_postblit] = STATE(72), [sym_invariant_declaration] = STATE(72), [sym_class_declaration] = STATE(72), [sym_constructor] = STATE(72), [sym_destructor] = STATE(72), [sym_alias_this] = STATE(72), [sym_interface_declaration] = STATE(72), [sym_enum_declaration] = STATE(72), [sym_anonymous_enum_declaration] = STATE(72), [sym_function_declaration] = STATE(72), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(72), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(72), [sym_template_mixin] = STATE(72), [sym_conditional_declaration] = STATE(72), [sym_conditional_statement] = STATE(72), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(72), [sym_static_foreach_declaration] = STATE(72), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(72), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(72), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1390), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(267), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(267), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [95] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1563), [sym_mixin_declaration] = STATE(1563), [sym__declaration] = STATE(1563), [sym__declaration2] = STATE(1563), [sym_variable_declaration] = STATE(1563), [sym_manifest_constant] = STATE(1563), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1563), [sym_alias_declaration] = STATE(1563), [sym_alias_reassign] = STATE(1563), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1563), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1563), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1675), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1563), [sym_union_declaration] = STATE(1563), [sym_postblit] = STATE(1563), [sym_invariant_declaration] = STATE(1563), [sym_class_declaration] = STATE(1563), [sym_constructor] = STATE(1563), [sym_destructor] = STATE(1563), [sym_alias_this] = STATE(1563), [sym_interface_declaration] = STATE(1563), [sym_enum_declaration] = STATE(1563), [sym_anonymous_enum_declaration] = STATE(1563), [sym_function_declaration] = STATE(1563), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1563), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1563), [sym_template_mixin] = STATE(1563), [sym_conditional_declaration] = STATE(1563), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1563), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1563), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1392), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1394), [anon_sym_COLON] = ACTIONS(830), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [96] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1396), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [97] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(99), [sym_mixin_declaration] = STATE(99), [sym__declaration] = STATE(99), [sym__declaration2] = STATE(99), [sym_variable_declaration] = STATE(99), [sym_manifest_constant] = STATE(99), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(99), [sym_alias_declaration] = STATE(99), [sym_alias_reassign] = STATE(99), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(99), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(99), [sym_pragma_statement] = STATE(99), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(99), [aux_sym__declarations_and_statements] = STATE(99), [sym__declaration_or_statement] = STATE(99), [sym__statement_no_case_no_default] = STATE(99), [sym_labeled_statement] = STATE(99), [sym_label] = STATE(103), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(99), [sym_if_statement] = STATE(99), [sym_while_statement] = STATE(99), [sym_do_statement] = STATE(99), [sym_for_statement] = STATE(99), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(99), [sym_switch_statement] = STATE(99), [sym_case_statement] = STATE(99), [sym_final_switch_statement] = STATE(99), [sym_continue_statement] = STATE(99), [sym_break_statement] = STATE(99), [sym_return_statement] = STATE(99), [sym_goto_statement] = STATE(99), [sym_with_statement] = STATE(99), [sym_synchronized_statement] = STATE(99), [sym_try_statement] = STATE(99), [sym_scope_guard_statement] = STATE(99), [sym_asm_statement] = STATE(99), [sym_struct_declaration] = STATE(99), [sym_union_declaration] = STATE(99), [sym_postblit] = STATE(99), [sym_invariant_declaration] = STATE(99), [sym_class_declaration] = STATE(99), [sym_constructor] = STATE(99), [sym_destructor] = STATE(99), [sym_alias_this] = STATE(99), [sym_interface_declaration] = STATE(99), [sym_enum_declaration] = STATE(99), [sym_anonymous_enum_declaration] = STATE(99), [sym_function_declaration] = STATE(99), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(99), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(99), [sym_template_mixin] = STATE(99), [sym_conditional_declaration] = STATE(99), [sym_conditional_statement] = STATE(99), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(99), [sym_static_foreach_declaration] = STATE(99), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(99), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1398), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1400), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [98] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(52), [sym_mixin_declaration] = STATE(52), [sym__declaration] = STATE(52), [sym__declaration2] = STATE(52), [sym_variable_declaration] = STATE(52), [sym_manifest_constant] = STATE(52), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(52), [sym_alias_declaration] = STATE(52), [sym_alias_reassign] = STATE(52), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(52), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(52), [sym_pragma_statement] = STATE(52), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(52), [aux_sym__declarations_and_statements] = STATE(52), [sym__declaration_or_statement] = STATE(52), [sym__statement_no_case_no_default] = STATE(52), [sym_labeled_statement] = STATE(52), [sym_label] = STATE(51), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(52), [sym_if_statement] = STATE(52), [sym_while_statement] = STATE(52), [sym_do_statement] = STATE(52), [sym_for_statement] = STATE(52), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(52), [sym_switch_statement] = STATE(52), [sym_case_statement] = STATE(52), [sym_final_switch_statement] = STATE(52), [sym_continue_statement] = STATE(52), [sym_break_statement] = STATE(52), [sym_return_statement] = STATE(52), [sym_goto_statement] = STATE(52), [sym_with_statement] = STATE(52), [sym_synchronized_statement] = STATE(52), [sym_try_statement] = STATE(52), [sym_scope_guard_statement] = STATE(52), [sym_asm_statement] = STATE(52), [sym_struct_declaration] = STATE(52), [sym_union_declaration] = STATE(52), [sym_postblit] = STATE(52), [sym_invariant_declaration] = STATE(52), [sym_class_declaration] = STATE(52), [sym_constructor] = STATE(52), [sym_destructor] = STATE(52), [sym_alias_this] = STATE(52), [sym_interface_declaration] = STATE(52), [sym_enum_declaration] = STATE(52), [sym_anonymous_enum_declaration] = STATE(52), [sym_function_declaration] = STATE(52), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(52), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(52), [sym_template_mixin] = STATE(52), [sym_conditional_declaration] = STATE(52), [sym_conditional_statement] = STATE(52), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(52), [sym_static_foreach_declaration] = STATE(52), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(52), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1402), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1404), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [99] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(109), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1406), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [100] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1408), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [101] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1410), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [102] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(96), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1410), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [103] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1406), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [104] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2372), [sym_mixin_declaration] = STATE(2372), [sym__declaration] = STATE(2372), [sym__declaration2] = STATE(2372), [sym_variable_declaration] = STATE(2372), [sym_manifest_constant] = STATE(2372), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2372), [sym_alias_declaration] = STATE(2372), [sym_alias_reassign] = STATE(2372), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2372), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2372), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2374), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2372), [sym_union_declaration] = STATE(2372), [sym_postblit] = STATE(2372), [sym_invariant_declaration] = STATE(2372), [sym_class_declaration] = STATE(2372), [sym_constructor] = STATE(2372), [sym_destructor] = STATE(2372), [sym_alias_this] = STATE(2372), [sym_interface_declaration] = STATE(2372), [sym_enum_declaration] = STATE(2372), [sym_anonymous_enum_declaration] = STATE(2372), [sym_function_declaration] = STATE(2372), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2372), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2372), [sym_template_mixin] = STATE(2372), [sym_conditional_declaration] = STATE(2372), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2372), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2372), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1412), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1414), [anon_sym_COLON] = ACTIONS(830), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [105] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(102), [sym_mixin_declaration] = STATE(102), [sym__declaration] = STATE(102), [sym__declaration2] = STATE(102), [sym_variable_declaration] = STATE(102), [sym_manifest_constant] = STATE(102), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(102), [sym_alias_declaration] = STATE(102), [sym_alias_reassign] = STATE(102), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(102), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(102), [sym_pragma_statement] = STATE(102), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(102), [aux_sym__declarations_and_statements] = STATE(102), [sym__declaration_or_statement] = STATE(102), [sym__statement_no_case_no_default] = STATE(102), [sym_labeled_statement] = STATE(102), [sym_label] = STATE(101), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(102), [sym_if_statement] = STATE(102), [sym_while_statement] = STATE(102), [sym_do_statement] = STATE(102), [sym_for_statement] = STATE(102), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(102), [sym_switch_statement] = STATE(102), [sym_case_statement] = STATE(102), [sym_final_switch_statement] = STATE(102), [sym_continue_statement] = STATE(102), [sym_break_statement] = STATE(102), [sym_return_statement] = STATE(102), [sym_goto_statement] = STATE(102), [sym_with_statement] = STATE(102), [sym_synchronized_statement] = STATE(102), [sym_try_statement] = STATE(102), [sym_scope_guard_statement] = STATE(102), [sym_asm_statement] = STATE(102), [sym_struct_declaration] = STATE(102), [sym_union_declaration] = STATE(102), [sym_postblit] = STATE(102), [sym_invariant_declaration] = STATE(102), [sym_class_declaration] = STATE(102), [sym_constructor] = STATE(102), [sym_destructor] = STATE(102), [sym_alias_this] = STATE(102), [sym_interface_declaration] = STATE(102), [sym_enum_declaration] = STATE(102), [sym_anonymous_enum_declaration] = STATE(102), [sym_function_declaration] = STATE(102), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(102), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(102), [sym_template_mixin] = STATE(102), [sym_conditional_declaration] = STATE(102), [sym_conditional_statement] = STATE(102), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(102), [sym_static_foreach_declaration] = STATE(102), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(102), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1416), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1418), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [106] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(81), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1408), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [107] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1420), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [108] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(90), [sym_mixin_declaration] = STATE(90), [sym__declaration] = STATE(90), [sym__declaration2] = STATE(90), [sym_variable_declaration] = STATE(90), [sym_manifest_constant] = STATE(90), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(90), [sym_alias_declaration] = STATE(90), [sym_alias_reassign] = STATE(90), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(90), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(90), [sym_pragma_statement] = STATE(90), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(90), [sym_labeled_statement] = STATE(90), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(90), [sym_if_statement] = STATE(90), [sym_while_statement] = STATE(90), [sym_do_statement] = STATE(90), [sym_for_statement] = STATE(90), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(90), [sym_switch_statement] = STATE(90), [sym_final_switch_statement] = STATE(90), [sym_continue_statement] = STATE(90), [sym_break_statement] = STATE(90), [sym_return_statement] = STATE(90), [sym_goto_statement] = STATE(90), [sym_with_statement] = STATE(90), [sym_synchronized_statement] = STATE(90), [sym_try_statement] = STATE(90), [sym_scope_guard_statement] = STATE(90), [sym_asm_statement] = STATE(90), [sym_struct_declaration] = STATE(90), [sym_union_declaration] = STATE(90), [sym_postblit] = STATE(90), [sym_invariant_declaration] = STATE(90), [sym_class_declaration] = STATE(90), [sym_constructor] = STATE(90), [sym_destructor] = STATE(90), [sym_alias_this] = STATE(90), [sym_interface_declaration] = STATE(90), [sym_enum_declaration] = STATE(90), [sym_anonymous_enum_declaration] = STATE(90), [sym_function_declaration] = STATE(90), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(90), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(90), [sym_template_mixin] = STATE(90), [sym_conditional_declaration] = STATE(90), [sym_conditional_statement] = STATE(90), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(90), [sym_static_foreach_declaration] = STATE(90), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(90), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(90), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(357), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(357), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1422), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(361), [sym_cast] = ACTIONS(121), [sym_catch] = ACTIONS(361), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(361), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_finally] = ACTIONS(361), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [109] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1424), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [110] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1426), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [111] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(107), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1426), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [112] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5598), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1428), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1056), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1430), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1080), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1440), [sym_shared] = ACTIONS(1090), [sym_static] = ACTIONS(1444), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1450), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [113] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1460), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [114] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(111), [sym_mixin_declaration] = STATE(111), [sym__declaration] = STATE(111), [sym__declaration2] = STATE(111), [sym_variable_declaration] = STATE(111), [sym_manifest_constant] = STATE(111), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(111), [sym_alias_declaration] = STATE(111), [sym_alias_reassign] = STATE(111), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(111), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(111), [sym_pragma_statement] = STATE(111), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(111), [aux_sym__declarations_and_statements] = STATE(111), [sym__declaration_or_statement] = STATE(111), [sym__statement_no_case_no_default] = STATE(111), [sym_labeled_statement] = STATE(111), [sym_label] = STATE(110), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(111), [sym_if_statement] = STATE(111), [sym_while_statement] = STATE(111), [sym_do_statement] = STATE(111), [sym_for_statement] = STATE(111), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(111), [sym_switch_statement] = STATE(111), [sym_case_statement] = STATE(111), [sym_final_switch_statement] = STATE(111), [sym_continue_statement] = STATE(111), [sym_break_statement] = STATE(111), [sym_return_statement] = STATE(111), [sym_goto_statement] = STATE(111), [sym_with_statement] = STATE(111), [sym_synchronized_statement] = STATE(111), [sym_try_statement] = STATE(111), [sym_scope_guard_statement] = STATE(111), [sym_asm_statement] = STATE(111), [sym_struct_declaration] = STATE(111), [sym_union_declaration] = STATE(111), [sym_postblit] = STATE(111), [sym_invariant_declaration] = STATE(111), [sym_class_declaration] = STATE(111), [sym_constructor] = STATE(111), [sym_destructor] = STATE(111), [sym_alias_this] = STATE(111), [sym_interface_declaration] = STATE(111), [sym_enum_declaration] = STATE(111), [sym_anonymous_enum_declaration] = STATE(111), [sym_function_declaration] = STATE(111), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(111), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(111), [sym_template_mixin] = STATE(111), [sym_conditional_declaration] = STATE(111), [sym_conditional_statement] = STATE(111), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(111), [sym_static_foreach_declaration] = STATE(111), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(111), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1462), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1464), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [115] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(73), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1466), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [116] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1468), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [117] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(126), [sym_mixin_declaration] = STATE(126), [sym__declaration] = STATE(126), [sym__declaration2] = STATE(126), [sym_variable_declaration] = STATE(126), [sym_manifest_constant] = STATE(126), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(126), [sym_alias_declaration] = STATE(126), [sym_alias_reassign] = STATE(126), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(126), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(126), [sym_pragma_statement] = STATE(126), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(126), [aux_sym__declarations_and_statements] = STATE(126), [sym__declaration_or_statement] = STATE(126), [sym__statement_no_case_no_default] = STATE(126), [sym_labeled_statement] = STATE(126), [sym_label] = STATE(127), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(126), [sym_if_statement] = STATE(126), [sym_while_statement] = STATE(126), [sym_do_statement] = STATE(126), [sym_for_statement] = STATE(126), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(126), [sym_switch_statement] = STATE(126), [sym_case_statement] = STATE(126), [sym_final_switch_statement] = STATE(126), [sym_continue_statement] = STATE(126), [sym_break_statement] = STATE(126), [sym_return_statement] = STATE(126), [sym_goto_statement] = STATE(126), [sym_with_statement] = STATE(126), [sym_synchronized_statement] = STATE(126), [sym_try_statement] = STATE(126), [sym_scope_guard_statement] = STATE(126), [sym_asm_statement] = STATE(126), [sym_struct_declaration] = STATE(126), [sym_union_declaration] = STATE(126), [sym_postblit] = STATE(126), [sym_invariant_declaration] = STATE(126), [sym_class_declaration] = STATE(126), [sym_constructor] = STATE(126), [sym_destructor] = STATE(126), [sym_alias_this] = STATE(126), [sym_interface_declaration] = STATE(126), [sym_enum_declaration] = STATE(126), [sym_anonymous_enum_declaration] = STATE(126), [sym_function_declaration] = STATE(126), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(126), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(126), [sym_template_mixin] = STATE(126), [sym_conditional_declaration] = STATE(126), [sym_conditional_statement] = STATE(126), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(126), [sym_static_foreach_declaration] = STATE(126), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(126), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1470), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1472), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [118] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1474), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(1477), [anon_sym_RBRACE] = ACTIONS(1480), [anon_sym_LBRACE] = ACTIONS(1482), [anon_sym_DOT] = ACTIONS(1485), [anon_sym_AMP] = ACTIONS(1488), [anon_sym_DASH] = ACTIONS(1491), [anon_sym_DASH_DASH] = ACTIONS(1488), [anon_sym_PLUS] = ACTIONS(1491), [anon_sym_PLUS_PLUS] = ACTIONS(1488), [anon_sym_BANG] = ACTIONS(1488), [anon_sym_LPAREN] = ACTIONS(1494), [anon_sym_LBRACK] = ACTIONS(1497), [anon_sym_SEMI] = ACTIONS(1500), [anon_sym_DOLLAR] = ACTIONS(1503), [anon_sym_STAR] = ACTIONS(1488), [anon_sym_TILDE] = ACTIONS(1506), [anon_sym_AT] = ACTIONS(1509), [sym_bool] = ACTIONS(1512), [sym_byte] = ACTIONS(1512), [sym_ubyte] = ACTIONS(1512), [sym_char] = ACTIONS(1512), [sym_short] = ACTIONS(1512), [sym_ushort] = ACTIONS(1512), [sym_int] = ACTIONS(1512), [sym_uint] = ACTIONS(1512), [sym_long] = ACTIONS(1512), [sym_ulong] = ACTIONS(1512), [sym_cent] = ACTIONS(1512), [sym_ucent] = ACTIONS(1512), [sym_wchar] = ACTIONS(1512), [sym_dchar] = ACTIONS(1512), [sym_float] = ACTIONS(1512), [sym_double] = ACTIONS(1512), [sym_real] = ACTIONS(1512), [sym_ifloat] = ACTIONS(1512), [sym_idouble] = ACTIONS(1512), [sym_ireal] = ACTIONS(1512), [sym_cfloat] = ACTIONS(1512), [sym_cdouble] = ACTIONS(1512), [sym_creal] = ACTIONS(1512), [sym_size_t] = ACTIONS(1512), [sym_ptrdiff_t] = ACTIONS(1512), [sym_string] = ACTIONS(1512), [sym_cstring] = ACTIONS(1512), [sym_dstring] = ACTIONS(1512), [sym_wstring] = ACTIONS(1512), [sym_noreturn] = ACTIONS(1512), [sym_true] = ACTIONS(1515), [sym_false] = ACTIONS(1515), [sym_null] = ACTIONS(1515), [sym_super] = ACTIONS(1515), [sym_this] = ACTIONS(1518), [sym_abstract] = ACTIONS(1521), [sym_alias] = ACTIONS(1524), [sym_align] = ACTIONS(1527), [sym_asm] = ACTIONS(1530), [sym_assert] = ACTIONS(1533), [sym_auto] = ACTIONS(1536), [sym_break] = ACTIONS(1539), [sym_case] = ACTIONS(1542), [sym_cast] = ACTIONS(1545), [sym_class] = ACTIONS(1548), [sym_const] = ACTIONS(1551), [sym_continue] = ACTIONS(1554), [sym_debug] = ACTIONS(1557), [sym_default] = ACTIONS(1560), [sym_delegate] = ACTIONS(1563), [sym_delete] = ACTIONS(1566), [sym_deprecated] = ACTIONS(1569), [sym_do] = ACTIONS(1572), [sym_enum] = ACTIONS(1575), [sym_export] = ACTIONS(1578), [sym_extern] = ACTIONS(1581), [sym_final] = ACTIONS(1584), [sym_for] = ACTIONS(1587), [sym_foreach] = ACTIONS(1590), [sym_foreach_reverse] = ACTIONS(1590), [sym_function] = ACTIONS(1593), [sym_goto] = ACTIONS(1596), [sym_if] = ACTIONS(1599), [sym_immutable] = ACTIONS(1551), [sym_import] = ACTIONS(1602), [sym_in] = ACTIONS(1605), [sym_inout] = ACTIONS(1551), [sym_interface] = ACTIONS(1608), [sym_invariant] = ACTIONS(1611), [sym_is] = ACTIONS(1614), [sym_mixin] = ACTIONS(1617), [sym_new] = ACTIONS(1620), [sym_nothrow] = ACTIONS(1521), [sym_out] = ACTIONS(1623), [sym_override] = ACTIONS(1521), [sym_package] = ACTIONS(1626), [sym_pragma] = ACTIONS(1629), [sym_private] = ACTIONS(1578), [sym_protected] = ACTIONS(1578), [sym_public] = ACTIONS(1578), [sym_pure] = ACTIONS(1521), [sym_ref] = ACTIONS(1632), [sym_return] = ACTIONS(1635), [sym_scope] = ACTIONS(1638), [sym_shared] = ACTIONS(1641), [sym_static] = ACTIONS(1644), [sym_struct] = ACTIONS(1647), [sym_switch] = ACTIONS(1650), [sym_synchronized] = ACTIONS(1653), [sym_template] = ACTIONS(1656), [sym_throw] = ACTIONS(1659), [sym_try] = ACTIONS(1662), [sym_typeid] = ACTIONS(1665), [sym_typeof] = ACTIONS(1668), [sym_union] = ACTIONS(1671), [sym_unittest] = ACTIONS(1674), [sym_version] = ACTIONS(1677), [sym_while] = ACTIONS(1680), [sym_with] = ACTIONS(1683), [sym_gshared] = ACTIONS(1521), [sym_traits] = ACTIONS(1686), [sym_vector] = ACTIONS(1689), [sym_void] = ACTIONS(1692), [anon_sym_BQUOTE] = ACTIONS(1695), [anon_sym_r_DQUOTE] = ACTIONS(1698), [anon_sym_x_DQUOTE] = ACTIONS(1701), [anon_sym_DQUOTE] = ACTIONS(1704), [anon_sym_i_BQUOTE] = ACTIONS(1707), [anon_sym_i_DQUOTE] = ACTIONS(1710), [anon_sym_iq_LBRACE] = ACTIONS(1713), [aux_sym_char_literal_token1] = ACTIONS(1716), [anon_sym_SQUOTE] = ACTIONS(1719), [anon_sym___DATE__] = ACTIONS(1722), [anon_sym___FILE__] = ACTIONS(1722), [anon_sym___FILE_FULL_PATH__] = ACTIONS(1722), [anon_sym___FUNCTION__] = ACTIONS(1722), [anon_sym___LINE__] = ACTIONS(1722), [anon_sym___MODULE__] = ACTIONS(1722), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(1722), [anon_sym___TIME__] = ACTIONS(1722), [anon_sym___TIMESTAMP__] = ACTIONS(1722), [anon_sym___VENDOR__] = ACTIONS(1722), [anon_sym___VERSION__] = ACTIONS(1722), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(1725), [sym_float_literal] = ACTIONS(1725), [sym__string] = ACTIONS(1728), }, [119] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1731), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [120] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(116), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1731), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [121] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1466), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [122] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(6405), [sym_mixin_declaration] = STATE(6405), [sym__declaration] = STATE(6405), [sym__declaration2] = STATE(6405), [sym_variable_declaration] = STATE(6405), [sym_manifest_constant] = STATE(6405), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(6405), [sym_alias_declaration] = STATE(6405), [sym_alias_reassign] = STATE(6405), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(6405), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(6405), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(6406), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(6405), [sym_union_declaration] = STATE(6405), [sym_postblit] = STATE(6405), [sym_invariant_declaration] = STATE(6405), [sym_class_declaration] = STATE(6405), [sym_constructor] = STATE(6405), [sym_destructor] = STATE(6405), [sym_alias_this] = STATE(6405), [sym_interface_declaration] = STATE(6405), [sym_enum_declaration] = STATE(6405), [sym_anonymous_enum_declaration] = STATE(6405), [sym_function_declaration] = STATE(6405), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(6405), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(6405), [sym_template_mixin] = STATE(6405), [sym_conditional_declaration] = STATE(6405), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(6405), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(6405), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1735), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1737), [anon_sym_COLON] = ACTIONS(1739), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [123] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1373), [sym_mixin_declaration] = STATE(1373), [sym__declaration] = STATE(1373), [sym__declaration2] = STATE(1373), [sym_variable_declaration] = STATE(1373), [sym_manifest_constant] = STATE(1373), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1373), [sym_alias_declaration] = STATE(1373), [sym_alias_reassign] = STATE(1373), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1373), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1373), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1372), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1373), [sym_union_declaration] = STATE(1373), [sym_postblit] = STATE(1373), [sym_invariant_declaration] = STATE(1373), [sym_class_declaration] = STATE(1373), [sym_constructor] = STATE(1373), [sym_destructor] = STATE(1373), [sym_alias_this] = STATE(1373), [sym_interface_declaration] = STATE(1373), [sym_enum_declaration] = STATE(1373), [sym_anonymous_enum_declaration] = STATE(1373), [sym_function_declaration] = STATE(1373), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1373), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1373), [sym_template_mixin] = STATE(1373), [sym_conditional_declaration] = STATE(1373), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1373), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1373), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1753), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1755), [anon_sym_COLON] = ACTIONS(1024), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [124] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5598), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1268), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(678), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(1757), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(690), [sym_bool] = ACTIONS(694), [sym_byte] = ACTIONS(694), [sym_ubyte] = ACTIONS(694), [sym_char] = ACTIONS(694), [sym_short] = ACTIONS(694), [sym_ushort] = ACTIONS(694), [sym_int] = ACTIONS(694), [sym_uint] = ACTIONS(694), [sym_long] = ACTIONS(694), [sym_ulong] = ACTIONS(694), [sym_cent] = ACTIONS(694), [sym_ucent] = ACTIONS(694), [sym_wchar] = ACTIONS(694), [sym_dchar] = ACTIONS(694), [sym_float] = ACTIONS(694), [sym_double] = ACTIONS(694), [sym_real] = ACTIONS(694), [sym_ifloat] = ACTIONS(694), [sym_idouble] = ACTIONS(694), [sym_ireal] = ACTIONS(694), [sym_cfloat] = ACTIONS(694), [sym_cdouble] = ACTIONS(694), [sym_creal] = ACTIONS(694), [sym_size_t] = ACTIONS(694), [sym_ptrdiff_t] = ACTIONS(694), [sym_string] = ACTIONS(694), [sym_cstring] = ACTIONS(694), [sym_dstring] = ACTIONS(694), [sym_wstring] = ACTIONS(694), [sym_noreturn] = ACTIONS(694), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(700), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(706), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(712), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(722), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(732), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1280), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(744), [sym_final] = ACTIONS(1759), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(722), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(722), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1298), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(700), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(700), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(700), [sym_ref] = ACTIONS(770), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1769), [sym_shared] = ACTIONS(1306), [sym_static] = ACTIONS(1773), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1779), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(800), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(700), [sym_traits] = ACTIONS(814), [sym_vector] = ACTIONS(818), [sym_void] = ACTIONS(822), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [125] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(120), [sym_mixin_declaration] = STATE(120), [sym__declaration] = STATE(120), [sym__declaration2] = STATE(120), [sym_variable_declaration] = STATE(120), [sym_manifest_constant] = STATE(120), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(120), [sym_alias_declaration] = STATE(120), [sym_alias_reassign] = STATE(120), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(120), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(120), [sym_pragma_statement] = STATE(120), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(120), [aux_sym__declarations_and_statements] = STATE(120), [sym__declaration_or_statement] = STATE(120), [sym__statement_no_case_no_default] = STATE(120), [sym_labeled_statement] = STATE(120), [sym_label] = STATE(119), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(120), [sym_if_statement] = STATE(120), [sym_while_statement] = STATE(120), [sym_do_statement] = STATE(120), [sym_for_statement] = STATE(120), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(120), [sym_switch_statement] = STATE(120), [sym_case_statement] = STATE(120), [sym_final_switch_statement] = STATE(120), [sym_continue_statement] = STATE(120), [sym_break_statement] = STATE(120), [sym_return_statement] = STATE(120), [sym_goto_statement] = STATE(120), [sym_with_statement] = STATE(120), [sym_synchronized_statement] = STATE(120), [sym_try_statement] = STATE(120), [sym_scope_guard_statement] = STATE(120), [sym_asm_statement] = STATE(120), [sym_struct_declaration] = STATE(120), [sym_union_declaration] = STATE(120), [sym_postblit] = STATE(120), [sym_invariant_declaration] = STATE(120), [sym_class_declaration] = STATE(120), [sym_constructor] = STATE(120), [sym_destructor] = STATE(120), [sym_alias_this] = STATE(120), [sym_interface_declaration] = STATE(120), [sym_enum_declaration] = STATE(120), [sym_anonymous_enum_declaration] = STATE(120), [sym_function_declaration] = STATE(120), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(120), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(120), [sym_template_mixin] = STATE(120), [sym_conditional_declaration] = STATE(120), [sym_conditional_statement] = STATE(120), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(120), [sym_static_foreach_declaration] = STATE(120), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(120), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1789), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1791), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [126] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(118), [sym_mixin_declaration] = STATE(118), [sym__declaration] = STATE(118), [sym__declaration2] = STATE(118), [sym_variable_declaration] = STATE(118), [sym_manifest_constant] = STATE(118), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(118), [sym_alias_declaration] = STATE(118), [sym_alias_reassign] = STATE(118), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(118), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(118), [sym_pragma_statement] = STATE(118), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(118), [aux_sym__declarations_and_statements] = STATE(118), [sym__declaration_or_statement] = STATE(118), [sym__statement_no_case_no_default] = STATE(118), [sym_labeled_statement] = STATE(118), [sym_label] = STATE(64), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(118), [sym_if_statement] = STATE(118), [sym_while_statement] = STATE(118), [sym_do_statement] = STATE(118), [sym_for_statement] = STATE(118), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(118), [sym_switch_statement] = STATE(118), [sym_case_statement] = STATE(118), [sym_final_switch_statement] = STATE(118), [sym_continue_statement] = STATE(118), [sym_break_statement] = STATE(118), [sym_return_statement] = STATE(118), [sym_goto_statement] = STATE(118), [sym_with_statement] = STATE(118), [sym_synchronized_statement] = STATE(118), [sym_try_statement] = STATE(118), [sym_scope_guard_statement] = STATE(118), [sym_asm_statement] = STATE(118), [sym_struct_declaration] = STATE(118), [sym_union_declaration] = STATE(118), [sym_postblit] = STATE(118), [sym_invariant_declaration] = STATE(118), [sym_class_declaration] = STATE(118), [sym_constructor] = STATE(118), [sym_destructor] = STATE(118), [sym_alias_this] = STATE(118), [sym_interface_declaration] = STATE(118), [sym_enum_declaration] = STATE(118), [sym_anonymous_enum_declaration] = STATE(118), [sym_function_declaration] = STATE(118), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(118), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(118), [sym_template_mixin] = STATE(118), [sym_conditional_declaration] = STATE(118), [sym_conditional_statement] = STATE(118), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(118), [sym_static_foreach_declaration] = STATE(118), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(118), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1793), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(860), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [127] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1793), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [128] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2235), [sym_mixin_declaration] = STATE(2235), [sym__declaration] = STATE(2235), [sym__declaration2] = STATE(2235), [sym_variable_declaration] = STATE(2235), [sym_manifest_constant] = STATE(2235), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2235), [sym_alias_declaration] = STATE(2235), [sym_alias_reassign] = STATE(2235), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2235), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2235), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2344), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2235), [sym_union_declaration] = STATE(2235), [sym_postblit] = STATE(2235), [sym_invariant_declaration] = STATE(2235), [sym_class_declaration] = STATE(2235), [sym_constructor] = STATE(2235), [sym_destructor] = STATE(2235), [sym_alias_this] = STATE(2235), [sym_interface_declaration] = STATE(2235), [sym_enum_declaration] = STATE(2235), [sym_anonymous_enum_declaration] = STATE(2235), [sym_function_declaration] = STATE(2235), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2235), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2235), [sym_template_mixin] = STATE(2235), [sym_conditional_declaration] = STATE(2235), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2235), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2235), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1795), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1797), [anon_sym_COLON] = ACTIONS(1024), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [129] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(106), [sym_mixin_declaration] = STATE(106), [sym__declaration] = STATE(106), [sym__declaration2] = STATE(106), [sym_variable_declaration] = STATE(106), [sym_manifest_constant] = STATE(106), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(106), [sym_alias_declaration] = STATE(106), [sym_alias_reassign] = STATE(106), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(106), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(106), [sym_pragma_statement] = STATE(106), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(106), [aux_sym__declarations_and_statements] = STATE(106), [sym__declaration_or_statement] = STATE(106), [sym__statement_no_case_no_default] = STATE(106), [sym_labeled_statement] = STATE(106), [sym_label] = STATE(100), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(106), [sym_if_statement] = STATE(106), [sym_while_statement] = STATE(106), [sym_do_statement] = STATE(106), [sym_for_statement] = STATE(106), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(106), [sym_switch_statement] = STATE(106), [sym_case_statement] = STATE(106), [sym_final_switch_statement] = STATE(106), [sym_continue_statement] = STATE(106), [sym_break_statement] = STATE(106), [sym_return_statement] = STATE(106), [sym_goto_statement] = STATE(106), [sym_with_statement] = STATE(106), [sym_synchronized_statement] = STATE(106), [sym_try_statement] = STATE(106), [sym_scope_guard_statement] = STATE(106), [sym_asm_statement] = STATE(106), [sym_struct_declaration] = STATE(106), [sym_union_declaration] = STATE(106), [sym_postblit] = STATE(106), [sym_invariant_declaration] = STATE(106), [sym_class_declaration] = STATE(106), [sym_constructor] = STATE(106), [sym_destructor] = STATE(106), [sym_alias_this] = STATE(106), [sym_interface_declaration] = STATE(106), [sym_enum_declaration] = STATE(106), [sym_anonymous_enum_declaration] = STATE(106), [sym_function_declaration] = STATE(106), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(106), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(106), [sym_template_mixin] = STATE(106), [sym_conditional_declaration] = STATE(106), [sym_conditional_statement] = STATE(106), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(106), [sym_static_foreach_declaration] = STATE(106), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(106), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(1799), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(97), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [130] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(6580), [sym_mixin_declaration] = STATE(6580), [sym__declaration] = STATE(6580), [sym__declaration2] = STATE(6580), [sym_variable_declaration] = STATE(6580), [sym_manifest_constant] = STATE(6580), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(6580), [sym_alias_declaration] = STATE(6580), [sym_alias_reassign] = STATE(6580), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(6580), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(6580), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(6597), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(6580), [sym_union_declaration] = STATE(6580), [sym_postblit] = STATE(6580), [sym_invariant_declaration] = STATE(6580), [sym_class_declaration] = STATE(6580), [sym_constructor] = STATE(6580), [sym_destructor] = STATE(6580), [sym_alias_this] = STATE(6580), [sym_interface_declaration] = STATE(6580), [sym_enum_declaration] = STATE(6580), [sym_anonymous_enum_declaration] = STATE(6580), [sym_function_declaration] = STATE(6580), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(6580), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(6580), [sym_template_mixin] = STATE(6580), [sym_conditional_declaration] = STATE(6580), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(6580), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(6580), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1801), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1803), [anon_sym_COLON] = ACTIONS(1739), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [131] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5659), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [132] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1726), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [133] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [134] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2204), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [135] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2209), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [136] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2210), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [137] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2216), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [138] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2219), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [139] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2220), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [140] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2222), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [141] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2224), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [142] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2254), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [143] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2259), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [144] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2262), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [145] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2263), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [146] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2275), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [147] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2291), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [148] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2331), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [149] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2343), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [150] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2181), [sym_mixin_declaration] = STATE(2181), [sym__declaration] = STATE(2181), [sym__declaration2] = STATE(2181), [sym_variable_declaration] = STATE(2181), [sym_manifest_constant] = STATE(2181), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2181), [sym_alias_declaration] = STATE(2181), [sym_alias_reassign] = STATE(2181), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2181), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2181), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2181), [sym_union_declaration] = STATE(2181), [sym_postblit] = STATE(2181), [sym_invariant_declaration] = STATE(2181), [sym_class_declaration] = STATE(2181), [sym_constructor] = STATE(2181), [sym_destructor] = STATE(2181), [sym_alias_this] = STATE(2181), [sym_interface_declaration] = STATE(2181), [sym_enum_declaration] = STATE(2181), [sym_anonymous_enum_declaration] = STATE(2181), [sym_function_declaration] = STATE(2181), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2181), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2181), [sym_template_mixin] = STATE(2181), [sym_conditional_declaration] = STATE(2181), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2181), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2181), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1813), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1815), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [151] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2182), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [152] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2293), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [153] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(7885), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3972), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [154] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(7850), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3972), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [155] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [156] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2178), [sym_mixin_declaration] = STATE(2178), [sym__declaration] = STATE(2178), [sym__declaration2] = STATE(2178), [sym_variable_declaration] = STATE(2178), [sym_manifest_constant] = STATE(2178), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2178), [sym_alias_declaration] = STATE(2178), [sym_alias_reassign] = STATE(2178), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2178), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2178), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2178), [sym_union_declaration] = STATE(2178), [sym_postblit] = STATE(2178), [sym_invariant_declaration] = STATE(2178), [sym_class_declaration] = STATE(2178), [sym_constructor] = STATE(2178), [sym_destructor] = STATE(2178), [sym_alias_this] = STATE(2178), [sym_interface_declaration] = STATE(2178), [sym_enum_declaration] = STATE(2178), [sym_anonymous_enum_declaration] = STATE(2178), [sym_function_declaration] = STATE(2178), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2178), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2178), [sym_template_mixin] = STATE(2178), [sym_conditional_declaration] = STATE(2178), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2178), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2178), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1817), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1819), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [157] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [158] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(194), [sym_mixin_declaration] = STATE(194), [sym__declaration] = STATE(194), [sym__declaration2] = STATE(194), [sym_variable_declaration] = STATE(194), [sym_manifest_constant] = STATE(194), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(194), [sym_alias_declaration] = STATE(194), [sym_alias_reassign] = STATE(194), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(194), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(194), [sym_pragma_statement] = STATE(194), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(194), [sym_labeled_statement] = STATE(194), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(194), [sym_if_statement] = STATE(194), [sym_while_statement] = STATE(194), [sym_do_statement] = STATE(194), [sym_for_statement] = STATE(194), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(194), [sym_switch_statement] = STATE(194), [sym_final_switch_statement] = STATE(194), [sym_continue_statement] = STATE(194), [sym_break_statement] = STATE(194), [sym_return_statement] = STATE(194), [sym_goto_statement] = STATE(194), [sym_with_statement] = STATE(194), [sym_synchronized_statement] = STATE(194), [sym_try_statement] = STATE(194), [sym_scope_guard_statement] = STATE(194), [sym_asm_statement] = STATE(194), [sym_struct_declaration] = STATE(194), [sym_union_declaration] = STATE(194), [sym_postblit] = STATE(194), [sym_invariant_declaration] = STATE(194), [sym_class_declaration] = STATE(194), [sym_constructor] = STATE(194), [sym_destructor] = STATE(194), [sym_alias_this] = STATE(194), [sym_interface_declaration] = STATE(194), [sym_enum_declaration] = STATE(194), [sym_anonymous_enum_declaration] = STATE(194), [sym_function_declaration] = STATE(194), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(194), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(194), [sym_template_mixin] = STATE(194), [sym_conditional_declaration] = STATE(194), [sym_conditional_statement] = STATE(194), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(194), [sym_static_foreach_declaration] = STATE(194), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(194), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(194), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1821), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(267), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [159] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(196), [sym_mixin_declaration] = STATE(196), [sym__declaration] = STATE(196), [sym__declaration2] = STATE(196), [sym_variable_declaration] = STATE(196), [sym_manifest_constant] = STATE(196), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(196), [sym_alias_declaration] = STATE(196), [sym_alias_reassign] = STATE(196), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(196), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(196), [sym_pragma_statement] = STATE(196), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(196), [sym_labeled_statement] = STATE(196), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(196), [sym_if_statement] = STATE(196), [sym_while_statement] = STATE(196), [sym_do_statement] = STATE(196), [sym_for_statement] = STATE(196), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(196), [sym_switch_statement] = STATE(196), [sym_final_switch_statement] = STATE(196), [sym_continue_statement] = STATE(196), [sym_break_statement] = STATE(196), [sym_return_statement] = STATE(196), [sym_goto_statement] = STATE(196), [sym_with_statement] = STATE(196), [sym_synchronized_statement] = STATE(196), [sym_try_statement] = STATE(196), [sym_scope_guard_statement] = STATE(196), [sym_asm_statement] = STATE(196), [sym_struct_declaration] = STATE(196), [sym_union_declaration] = STATE(196), [sym_postblit] = STATE(196), [sym_invariant_declaration] = STATE(196), [sym_class_declaration] = STATE(196), [sym_constructor] = STATE(196), [sym_destructor] = STATE(196), [sym_alias_this] = STATE(196), [sym_interface_declaration] = STATE(196), [sym_enum_declaration] = STATE(196), [sym_anonymous_enum_declaration] = STATE(196), [sym_function_declaration] = STATE(196), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(196), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(196), [sym_template_mixin] = STATE(196), [sym_conditional_declaration] = STATE(196), [sym_conditional_statement] = STATE(196), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(196), [sym_static_foreach_declaration] = STATE(196), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(196), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(196), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1823), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(267), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [160] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1562), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [161] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2172), [sym_mixin_declaration] = STATE(2172), [sym__declaration] = STATE(2172), [sym__declaration2] = STATE(2172), [sym_variable_declaration] = STATE(2172), [sym_manifest_constant] = STATE(2172), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2172), [sym_alias_declaration] = STATE(2172), [sym_alias_reassign] = STATE(2172), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2172), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2172), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2172), [sym_union_declaration] = STATE(2172), [sym_postblit] = STATE(2172), [sym_invariant_declaration] = STATE(2172), [sym_class_declaration] = STATE(2172), [sym_constructor] = STATE(2172), [sym_destructor] = STATE(2172), [sym_alias_this] = STATE(2172), [sym_interface_declaration] = STATE(2172), [sym_enum_declaration] = STATE(2172), [sym_anonymous_enum_declaration] = STATE(2172), [sym_function_declaration] = STATE(2172), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2172), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2172), [sym_template_mixin] = STATE(2172), [sym_conditional_declaration] = STATE(2172), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2172), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2172), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1825), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1827), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [162] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1536), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [163] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2172), [sym_mixin_declaration] = STATE(2172), [sym__declaration] = STATE(2172), [sym__declaration2] = STATE(2172), [sym_variable_declaration] = STATE(2172), [sym_manifest_constant] = STATE(2172), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2172), [sym_alias_declaration] = STATE(2172), [sym_alias_reassign] = STATE(2172), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2172), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2172), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2172), [sym_union_declaration] = STATE(2172), [sym_postblit] = STATE(2172), [sym_invariant_declaration] = STATE(2172), [sym_class_declaration] = STATE(2172), [sym_constructor] = STATE(2172), [sym_destructor] = STATE(2172), [sym_alias_this] = STATE(2172), [sym_interface_declaration] = STATE(2172), [sym_enum_declaration] = STATE(2172), [sym_anonymous_enum_declaration] = STATE(2172), [sym_function_declaration] = STATE(2172), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2172), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2172), [sym_template_mixin] = STATE(2172), [sym_conditional_declaration] = STATE(2172), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2172), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2172), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1825), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1827), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [164] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [165] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2178), [sym_mixin_declaration] = STATE(2178), [sym__declaration] = STATE(2178), [sym__declaration2] = STATE(2178), [sym_variable_declaration] = STATE(2178), [sym_manifest_constant] = STATE(2178), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2178), [sym_alias_declaration] = STATE(2178), [sym_alias_reassign] = STATE(2178), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2178), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2178), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2178), [sym_union_declaration] = STATE(2178), [sym_postblit] = STATE(2178), [sym_invariant_declaration] = STATE(2178), [sym_class_declaration] = STATE(2178), [sym_constructor] = STATE(2178), [sym_destructor] = STATE(2178), [sym_alias_this] = STATE(2178), [sym_interface_declaration] = STATE(2178), [sym_enum_declaration] = STATE(2178), [sym_anonymous_enum_declaration] = STATE(2178), [sym_function_declaration] = STATE(2178), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2178), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2178), [sym_template_mixin] = STATE(2178), [sym_conditional_declaration] = STATE(2178), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2178), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2178), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1817), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1819), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [166] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [167] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2181), [sym_mixin_declaration] = STATE(2181), [sym__declaration] = STATE(2181), [sym__declaration2] = STATE(2181), [sym_variable_declaration] = STATE(2181), [sym_manifest_constant] = STATE(2181), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2181), [sym_alias_declaration] = STATE(2181), [sym_alias_reassign] = STATE(2181), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2181), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2181), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2181), [sym_union_declaration] = STATE(2181), [sym_postblit] = STATE(2181), [sym_invariant_declaration] = STATE(2181), [sym_class_declaration] = STATE(2181), [sym_constructor] = STATE(2181), [sym_destructor] = STATE(2181), [sym_alias_this] = STATE(2181), [sym_interface_declaration] = STATE(2181), [sym_enum_declaration] = STATE(2181), [sym_anonymous_enum_declaration] = STATE(2181), [sym_function_declaration] = STATE(2181), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2181), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2181), [sym_template_mixin] = STATE(2181), [sym_conditional_declaration] = STATE(2181), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2181), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2181), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1813), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1815), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [168] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2182), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [169] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2185), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [170] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [171] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2204), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [172] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2209), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [173] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2210), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [174] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2216), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [175] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2219), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [176] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2220), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [177] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2222), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [178] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2224), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [179] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2254), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [180] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2259), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [181] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2262), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [182] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2263), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [183] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2275), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [184] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2291), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [185] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2331), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [186] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2343), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [187] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5691), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [188] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1539), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [189] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2293), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [190] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(233), [sym_mixin_declaration] = STATE(233), [sym__declaration] = STATE(233), [sym__declaration2] = STATE(233), [sym_variable_declaration] = STATE(233), [sym_manifest_constant] = STATE(233), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(233), [sym_alias_declaration] = STATE(233), [sym_alias_reassign] = STATE(233), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(233), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(233), [sym_pragma_statement] = STATE(233), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(233), [sym_labeled_statement] = STATE(233), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(233), [sym_if_statement] = STATE(233), [sym_while_statement] = STATE(233), [sym_do_statement] = STATE(233), [sym_for_statement] = STATE(233), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(233), [sym_switch_statement] = STATE(233), [sym_final_switch_statement] = STATE(233), [sym_continue_statement] = STATE(233), [sym_break_statement] = STATE(233), [sym_return_statement] = STATE(233), [sym_goto_statement] = STATE(233), [sym_with_statement] = STATE(233), [sym_synchronized_statement] = STATE(233), [sym_try_statement] = STATE(233), [sym_scope_guard_statement] = STATE(233), [sym_asm_statement] = STATE(233), [sym_struct_declaration] = STATE(233), [sym_union_declaration] = STATE(233), [sym_postblit] = STATE(233), [sym_invariant_declaration] = STATE(233), [sym_class_declaration] = STATE(233), [sym_constructor] = STATE(233), [sym_destructor] = STATE(233), [sym_alias_this] = STATE(233), [sym_interface_declaration] = STATE(233), [sym_enum_declaration] = STATE(233), [sym_anonymous_enum_declaration] = STATE(233), [sym_function_declaration] = STATE(233), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(233), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(233), [sym_template_mixin] = STATE(233), [sym_conditional_declaration] = STATE(233), [sym_conditional_statement] = STATE(233), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(233), [sym_static_foreach_declaration] = STATE(233), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(233), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(233), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1829), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(381), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [191] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1612), [sym_mixin_declaration] = STATE(1612), [sym__declaration] = STATE(1612), [sym__declaration2] = STATE(1612), [sym_variable_declaration] = STATE(1612), [sym_manifest_constant] = STATE(1612), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1612), [sym_alias_declaration] = STATE(1612), [sym_alias_reassign] = STATE(1612), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1612), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1612), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1605), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1612), [sym_union_declaration] = STATE(1612), [sym_postblit] = STATE(1612), [sym_invariant_declaration] = STATE(1612), [sym_class_declaration] = STATE(1612), [sym_constructor] = STATE(1612), [sym_destructor] = STATE(1612), [sym_alias_this] = STATE(1612), [sym_interface_declaration] = STATE(1612), [sym_enum_declaration] = STATE(1612), [sym_anonymous_enum_declaration] = STATE(1612), [sym_function_declaration] = STATE(1612), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1612), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1612), [sym_template_mixin] = STATE(1612), [sym_conditional_declaration] = STATE(1612), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1612), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1612), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1831), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1833), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [192] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [193] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(6427), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [194] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(196), [sym_mixin_declaration] = STATE(196), [sym__declaration] = STATE(196), [sym__declaration2] = STATE(196), [sym_variable_declaration] = STATE(196), [sym_manifest_constant] = STATE(196), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(196), [sym_alias_declaration] = STATE(196), [sym_alias_reassign] = STATE(196), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(196), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(196), [sym_pragma_statement] = STATE(196), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(196), [sym_labeled_statement] = STATE(196), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(196), [sym_if_statement] = STATE(196), [sym_while_statement] = STATE(196), [sym_do_statement] = STATE(196), [sym_for_statement] = STATE(196), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(196), [sym_switch_statement] = STATE(196), [sym_final_switch_statement] = STATE(196), [sym_continue_statement] = STATE(196), [sym_break_statement] = STATE(196), [sym_return_statement] = STATE(196), [sym_goto_statement] = STATE(196), [sym_with_statement] = STATE(196), [sym_synchronized_statement] = STATE(196), [sym_try_statement] = STATE(196), [sym_scope_guard_statement] = STATE(196), [sym_asm_statement] = STATE(196), [sym_struct_declaration] = STATE(196), [sym_union_declaration] = STATE(196), [sym_postblit] = STATE(196), [sym_invariant_declaration] = STATE(196), [sym_class_declaration] = STATE(196), [sym_constructor] = STATE(196), [sym_destructor] = STATE(196), [sym_alias_this] = STATE(196), [sym_interface_declaration] = STATE(196), [sym_enum_declaration] = STATE(196), [sym_anonymous_enum_declaration] = STATE(196), [sym_function_declaration] = STATE(196), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(196), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(196), [sym_template_mixin] = STATE(196), [sym_conditional_declaration] = STATE(196), [sym_conditional_statement] = STATE(196), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(196), [sym_static_foreach_declaration] = STATE(196), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(196), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(196), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1823), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(381), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [195] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1605), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [196] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(196), [sym_mixin_declaration] = STATE(196), [sym__declaration] = STATE(196), [sym__declaration2] = STATE(196), [sym_variable_declaration] = STATE(196), [sym_manifest_constant] = STATE(196), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(196), [sym_alias_declaration] = STATE(196), [sym_alias_reassign] = STATE(196), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(196), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(196), [sym_pragma_statement] = STATE(196), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(196), [sym_labeled_statement] = STATE(196), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(196), [sym_if_statement] = STATE(196), [sym_while_statement] = STATE(196), [sym_do_statement] = STATE(196), [sym_for_statement] = STATE(196), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(196), [sym_switch_statement] = STATE(196), [sym_final_switch_statement] = STATE(196), [sym_continue_statement] = STATE(196), [sym_break_statement] = STATE(196), [sym_return_statement] = STATE(196), [sym_goto_statement] = STATE(196), [sym_with_statement] = STATE(196), [sym_synchronized_statement] = STATE(196), [sym_try_statement] = STATE(196), [sym_scope_guard_statement] = STATE(196), [sym_asm_statement] = STATE(196), [sym_struct_declaration] = STATE(196), [sym_union_declaration] = STATE(196), [sym_postblit] = STATE(196), [sym_invariant_declaration] = STATE(196), [sym_class_declaration] = STATE(196), [sym_constructor] = STATE(196), [sym_destructor] = STATE(196), [sym_alias_this] = STATE(196), [sym_interface_declaration] = STATE(196), [sym_enum_declaration] = STATE(196), [sym_anonymous_enum_declaration] = STATE(196), [sym_function_declaration] = STATE(196), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(196), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(196), [sym_template_mixin] = STATE(196), [sym_conditional_declaration] = STATE(196), [sym_conditional_statement] = STATE(196), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(196), [sym_static_foreach_declaration] = STATE(196), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(196), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(196), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1835), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(386), [anon_sym_RBRACE] = ACTIONS(389), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_DOT] = ACTIONS(394), [anon_sym_AMP] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(400), [anon_sym_DASH_DASH] = ACTIONS(397), [anon_sym_PLUS] = ACTIONS(400), [anon_sym_PLUS_PLUS] = ACTIONS(397), [anon_sym_BANG] = ACTIONS(397), [anon_sym_LPAREN] = ACTIONS(403), [anon_sym_RPAREN] = ACTIONS(389), [anon_sym_LBRACK] = ACTIONS(406), [anon_sym_SEMI] = ACTIONS(1841), [anon_sym_DOLLAR] = ACTIONS(412), [anon_sym_STAR] = ACTIONS(397), [anon_sym_TILDE] = ACTIONS(1844), [anon_sym_AT] = ACTIONS(418), [sym_bool] = ACTIONS(421), [sym_byte] = ACTIONS(421), [sym_ubyte] = ACTIONS(421), [sym_char] = ACTIONS(421), [sym_short] = ACTIONS(421), [sym_ushort] = ACTIONS(421), [sym_int] = ACTIONS(421), [sym_uint] = ACTIONS(421), [sym_long] = ACTIONS(421), [sym_ulong] = ACTIONS(421), [sym_cent] = ACTIONS(421), [sym_ucent] = ACTIONS(421), [sym_wchar] = ACTIONS(421), [sym_dchar] = ACTIONS(421), [sym_float] = ACTIONS(421), [sym_double] = ACTIONS(421), [sym_real] = ACTIONS(421), [sym_ifloat] = ACTIONS(421), [sym_idouble] = ACTIONS(421), [sym_ireal] = ACTIONS(421), [sym_cfloat] = ACTIONS(421), [sym_cdouble] = ACTIONS(421), [sym_creal] = ACTIONS(421), [sym_size_t] = ACTIONS(421), [sym_ptrdiff_t] = ACTIONS(421), [sym_string] = ACTIONS(421), [sym_cstring] = ACTIONS(421), [sym_dstring] = ACTIONS(421), [sym_wstring] = ACTIONS(421), [sym_noreturn] = ACTIONS(421), [sym_true] = ACTIONS(424), [sym_false] = ACTIONS(424), [sym_null] = ACTIONS(424), [sym_super] = ACTIONS(424), [sym_this] = ACTIONS(1847), [sym_abstract] = ACTIONS(430), [sym_alias] = ACTIONS(1850), [sym_align] = ACTIONS(436), [sym_asm] = ACTIONS(1853), [sym_assert] = ACTIONS(442), [sym_auto] = ACTIONS(445), [sym_break] = ACTIONS(1856), [sym_case] = ACTIONS(451), [sym_cast] = ACTIONS(453), [sym_class] = ACTIONS(1859), [sym_const] = ACTIONS(459), [sym_continue] = ACTIONS(1862), [sym_debug] = ACTIONS(1865), [sym_default] = ACTIONS(451), [sym_delegate] = ACTIONS(468), [sym_delete] = ACTIONS(471), [sym_deprecated] = ACTIONS(474), [sym_do] = ACTIONS(1868), [sym_else] = ACTIONS(451), [sym_enum] = ACTIONS(1871), [sym_export] = ACTIONS(1874), [sym_extern] = ACTIONS(486), [sym_final] = ACTIONS(1877), [sym_for] = ACTIONS(1880), [sym_foreach] = ACTIONS(1883), [sym_foreach_reverse] = ACTIONS(1883), [sym_function] = ACTIONS(498), [sym_goto] = ACTIONS(1886), [sym_if] = ACTIONS(1889), [sym_immutable] = ACTIONS(459), [sym_import] = ACTIONS(1892), [sym_in] = ACTIONS(510), [sym_inout] = ACTIONS(459), [sym_interface] = ACTIONS(1895), [sym_invariant] = ACTIONS(1898), [sym_is] = ACTIONS(519), [sym_mixin] = ACTIONS(1901), [sym_new] = ACTIONS(525), [sym_nothrow] = ACTIONS(430), [sym_out] = ACTIONS(528), [sym_override] = ACTIONS(430), [sym_package] = ACTIONS(531), [sym_pragma] = ACTIONS(534), [sym_private] = ACTIONS(1874), [sym_protected] = ACTIONS(1874), [sym_public] = ACTIONS(1874), [sym_pure] = ACTIONS(430), [sym_ref] = ACTIONS(537), [sym_return] = ACTIONS(1904), [sym_scope] = ACTIONS(1907), [sym_shared] = ACTIONS(1910), [sym_static] = ACTIONS(1913), [sym_struct] = ACTIONS(1916), [sym_switch] = ACTIONS(1919), [sym_synchronized] = ACTIONS(1922), [sym_template] = ACTIONS(1925), [sym_throw] = ACTIONS(564), [sym_try] = ACTIONS(1928), [sym_typeid] = ACTIONS(570), [sym_typeof] = ACTIONS(573), [sym_union] = ACTIONS(1931), [sym_unittest] = ACTIONS(1934), [sym_version] = ACTIONS(1937), [sym_while] = ACTIONS(1940), [sym_with] = ACTIONS(1943), [sym_gshared] = ACTIONS(430), [sym_traits] = ACTIONS(591), [sym_vector] = ACTIONS(594), [sym_void] = ACTIONS(597), [anon_sym_BQUOTE] = ACTIONS(600), [anon_sym_r_DQUOTE] = ACTIONS(603), [anon_sym_x_DQUOTE] = ACTIONS(606), [anon_sym_DQUOTE] = ACTIONS(609), [anon_sym_i_BQUOTE] = ACTIONS(612), [anon_sym_i_DQUOTE] = ACTIONS(615), [anon_sym_iq_LBRACE] = ACTIONS(618), [aux_sym_char_literal_token1] = ACTIONS(621), [anon_sym_SQUOTE] = ACTIONS(624), [anon_sym___DATE__] = ACTIONS(627), [anon_sym___FILE__] = ACTIONS(627), [anon_sym___FILE_FULL_PATH__] = ACTIONS(627), [anon_sym___FUNCTION__] = ACTIONS(627), [anon_sym___LINE__] = ACTIONS(627), [anon_sym___MODULE__] = ACTIONS(627), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(627), [anon_sym___TIME__] = ACTIONS(627), [anon_sym___TIMESTAMP__] = ACTIONS(627), [anon_sym___VENDOR__] = ACTIONS(627), [anon_sym___VERSION__] = ACTIONS(627), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(630), [sym_float_literal] = ACTIONS(630), [sym__string] = ACTIONS(633), }, [197] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5605), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [198] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1555), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [199] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1570), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [200] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1553), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [201] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1552), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [202] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1604), [sym_mixin_declaration] = STATE(1604), [sym__declaration] = STATE(1604), [sym__declaration2] = STATE(1604), [sym_variable_declaration] = STATE(1604), [sym_manifest_constant] = STATE(1604), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1604), [sym_alias_declaration] = STATE(1604), [sym_alias_reassign] = STATE(1604), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1604), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1604), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1591), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1604), [sym_union_declaration] = STATE(1604), [sym_postblit] = STATE(1604), [sym_invariant_declaration] = STATE(1604), [sym_class_declaration] = STATE(1604), [sym_constructor] = STATE(1604), [sym_destructor] = STATE(1604), [sym_alias_this] = STATE(1604), [sym_interface_declaration] = STATE(1604), [sym_enum_declaration] = STATE(1604), [sym_anonymous_enum_declaration] = STATE(1604), [sym_function_declaration] = STATE(1604), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1604), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1604), [sym_template_mixin] = STATE(1604), [sym_conditional_declaration] = STATE(1604), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1604), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1604), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1946), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1948), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [203] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2172), [sym_mixin_declaration] = STATE(2172), [sym__declaration] = STATE(2172), [sym__declaration2] = STATE(2172), [sym_variable_declaration] = STATE(2172), [sym_manifest_constant] = STATE(2172), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2172), [sym_alias_declaration] = STATE(2172), [sym_alias_reassign] = STATE(2172), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2172), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2172), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2172), [sym_union_declaration] = STATE(2172), [sym_postblit] = STATE(2172), [sym_invariant_declaration] = STATE(2172), [sym_class_declaration] = STATE(2172), [sym_constructor] = STATE(2172), [sym_destructor] = STATE(2172), [sym_alias_this] = STATE(2172), [sym_interface_declaration] = STATE(2172), [sym_enum_declaration] = STATE(2172), [sym_anonymous_enum_declaration] = STATE(2172), [sym_function_declaration] = STATE(2172), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2172), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2172), [sym_template_mixin] = STATE(2172), [sym_conditional_declaration] = STATE(2172), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2172), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2172), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1825), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1827), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [204] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [205] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2178), [sym_mixin_declaration] = STATE(2178), [sym__declaration] = STATE(2178), [sym__declaration2] = STATE(2178), [sym_variable_declaration] = STATE(2178), [sym_manifest_constant] = STATE(2178), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2178), [sym_alias_declaration] = STATE(2178), [sym_alias_reassign] = STATE(2178), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2178), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2178), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2178), [sym_union_declaration] = STATE(2178), [sym_postblit] = STATE(2178), [sym_invariant_declaration] = STATE(2178), [sym_class_declaration] = STATE(2178), [sym_constructor] = STATE(2178), [sym_destructor] = STATE(2178), [sym_alias_this] = STATE(2178), [sym_interface_declaration] = STATE(2178), [sym_enum_declaration] = STATE(2178), [sym_anonymous_enum_declaration] = STATE(2178), [sym_function_declaration] = STATE(2178), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2178), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2178), [sym_template_mixin] = STATE(2178), [sym_conditional_declaration] = STATE(2178), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2178), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2178), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1817), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1819), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [206] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [207] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2181), [sym_mixin_declaration] = STATE(2181), [sym__declaration] = STATE(2181), [sym__declaration2] = STATE(2181), [sym_variable_declaration] = STATE(2181), [sym_manifest_constant] = STATE(2181), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2181), [sym_alias_declaration] = STATE(2181), [sym_alias_reassign] = STATE(2181), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2181), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2181), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2181), [sym_union_declaration] = STATE(2181), [sym_postblit] = STATE(2181), [sym_invariant_declaration] = STATE(2181), [sym_class_declaration] = STATE(2181), [sym_constructor] = STATE(2181), [sym_destructor] = STATE(2181), [sym_alias_this] = STATE(2181), [sym_interface_declaration] = STATE(2181), [sym_enum_declaration] = STATE(2181), [sym_anonymous_enum_declaration] = STATE(2181), [sym_function_declaration] = STATE(2181), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2181), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2181), [sym_template_mixin] = STATE(2181), [sym_conditional_declaration] = STATE(2181), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2181), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2181), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1813), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1815), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [208] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1546), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [209] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5607), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [210] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2182), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [211] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2185), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [212] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [213] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2204), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [214] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2209), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [215] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2210), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [216] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2216), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [217] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2219), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [218] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2220), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [219] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2222), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [220] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2224), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [221] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2254), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [222] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2259), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [223] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2262), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [224] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2263), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [225] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2275), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [226] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2291), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [227] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2331), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [228] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2343), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [229] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1543), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [230] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1295), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [231] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2293), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [232] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1540), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [233] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(196), [sym_mixin_declaration] = STATE(196), [sym__declaration] = STATE(196), [sym__declaration2] = STATE(196), [sym_variable_declaration] = STATE(196), [sym_manifest_constant] = STATE(196), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(196), [sym_alias_declaration] = STATE(196), [sym_alias_reassign] = STATE(196), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(196), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(196), [sym_pragma_statement] = STATE(196), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(196), [sym_labeled_statement] = STATE(196), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(196), [sym_if_statement] = STATE(196), [sym_while_statement] = STATE(196), [sym_do_statement] = STATE(196), [sym_for_statement] = STATE(196), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(196), [sym_switch_statement] = STATE(196), [sym_final_switch_statement] = STATE(196), [sym_continue_statement] = STATE(196), [sym_break_statement] = STATE(196), [sym_return_statement] = STATE(196), [sym_goto_statement] = STATE(196), [sym_with_statement] = STATE(196), [sym_synchronized_statement] = STATE(196), [sym_try_statement] = STATE(196), [sym_scope_guard_statement] = STATE(196), [sym_asm_statement] = STATE(196), [sym_struct_declaration] = STATE(196), [sym_union_declaration] = STATE(196), [sym_postblit] = STATE(196), [sym_invariant_declaration] = STATE(196), [sym_class_declaration] = STATE(196), [sym_constructor] = STATE(196), [sym_destructor] = STATE(196), [sym_alias_this] = STATE(196), [sym_interface_declaration] = STATE(196), [sym_enum_declaration] = STATE(196), [sym_anonymous_enum_declaration] = STATE(196), [sym_function_declaration] = STATE(196), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(196), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(196), [sym_template_mixin] = STATE(196), [sym_conditional_declaration] = STATE(196), [sym_conditional_statement] = STATE(196), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(196), [sym_static_foreach_declaration] = STATE(196), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(196), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(196), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(636), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(636), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1823), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(638), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(638), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(638), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [234] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1591), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [235] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5607), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [236] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1523), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [237] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5649), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [238] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1521), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [239] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1517), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [240] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5653), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [241] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1550), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [242] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5698), [sym_mixin_declaration] = STATE(5698), [sym__declaration] = STATE(5698), [sym__declaration2] = STATE(5698), [sym_variable_declaration] = STATE(5698), [sym_manifest_constant] = STATE(5698), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5698), [sym_alias_declaration] = STATE(5698), [sym_alias_reassign] = STATE(5698), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5698), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5698), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5698), [sym_union_declaration] = STATE(5698), [sym_postblit] = STATE(5698), [sym_invariant_declaration] = STATE(5698), [sym_class_declaration] = STATE(5698), [sym_constructor] = STATE(5698), [sym_destructor] = STATE(5698), [sym_alias_this] = STATE(5698), [sym_interface_declaration] = STATE(5698), [sym_enum_declaration] = STATE(5698), [sym_anonymous_enum_declaration] = STATE(5698), [sym_function_declaration] = STATE(5698), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5698), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5698), [sym_template_mixin] = STATE(5698), [sym_conditional_declaration] = STATE(5698), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5698), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5698), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1958), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1960), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [243] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [244] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5696), [sym_mixin_declaration] = STATE(5696), [sym__declaration] = STATE(5696), [sym__declaration2] = STATE(5696), [sym_variable_declaration] = STATE(5696), [sym_manifest_constant] = STATE(5696), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5696), [sym_alias_declaration] = STATE(5696), [sym_alias_reassign] = STATE(5696), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5696), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5696), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5696), [sym_union_declaration] = STATE(5696), [sym_postblit] = STATE(5696), [sym_invariant_declaration] = STATE(5696), [sym_class_declaration] = STATE(5696), [sym_constructor] = STATE(5696), [sym_destructor] = STATE(5696), [sym_alias_this] = STATE(5696), [sym_interface_declaration] = STATE(5696), [sym_enum_declaration] = STATE(5696), [sym_anonymous_enum_declaration] = STATE(5696), [sym_function_declaration] = STATE(5696), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5696), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5696), [sym_template_mixin] = STATE(5696), [sym_conditional_declaration] = STATE(5696), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5696), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5696), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1962), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1964), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [245] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [246] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5689), [sym_mixin_declaration] = STATE(5689), [sym__declaration] = STATE(5689), [sym__declaration2] = STATE(5689), [sym_variable_declaration] = STATE(5689), [sym_manifest_constant] = STATE(5689), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5689), [sym_alias_declaration] = STATE(5689), [sym_alias_reassign] = STATE(5689), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5689), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5689), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5689), [sym_union_declaration] = STATE(5689), [sym_postblit] = STATE(5689), [sym_invariant_declaration] = STATE(5689), [sym_class_declaration] = STATE(5689), [sym_constructor] = STATE(5689), [sym_destructor] = STATE(5689), [sym_alias_this] = STATE(5689), [sym_interface_declaration] = STATE(5689), [sym_enum_declaration] = STATE(5689), [sym_anonymous_enum_declaration] = STATE(5689), [sym_function_declaration] = STATE(5689), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5689), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5689), [sym_template_mixin] = STATE(5689), [sym_conditional_declaration] = STATE(5689), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5689), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5689), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1966), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1968), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [247] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5687), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [248] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1587), [sym_mixin_declaration] = STATE(1587), [sym__declaration] = STATE(1587), [sym__declaration2] = STATE(1587), [sym_variable_declaration] = STATE(1587), [sym_manifest_constant] = STATE(1587), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1587), [sym_alias_declaration] = STATE(1587), [sym_alias_reassign] = STATE(1587), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1587), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1587), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1561), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1587), [sym_union_declaration] = STATE(1587), [sym_postblit] = STATE(1587), [sym_invariant_declaration] = STATE(1587), [sym_class_declaration] = STATE(1587), [sym_constructor] = STATE(1587), [sym_destructor] = STATE(1587), [sym_alias_this] = STATE(1587), [sym_interface_declaration] = STATE(1587), [sym_enum_declaration] = STATE(1587), [sym_anonymous_enum_declaration] = STATE(1587), [sym_function_declaration] = STATE(1587), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1587), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1587), [sym_template_mixin] = STATE(1587), [sym_conditional_declaration] = STATE(1587), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1587), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1587), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1970), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1972), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [249] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5684), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [250] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [251] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5681), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [252] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5635), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [253] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5679), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [254] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5677), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [255] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5676), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [256] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5675), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [257] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5673), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [258] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5672), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [259] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5666), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [260] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5665), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [261] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5664), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [262] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5662), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [263] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5661), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [264] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5659), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [265] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5653), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [266] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5649), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [267] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1370), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [268] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1550), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [269] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5605), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [270] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1513), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [271] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1504), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [272] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1374), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [273] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5314), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [274] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1503), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [275] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1535), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [276] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1491), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [277] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1447), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [278] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5661), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [279] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5682), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [280] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1455), [sym_mixin_declaration] = STATE(1455), [sym__declaration] = STATE(1455), [sym__declaration2] = STATE(1455), [sym_variable_declaration] = STATE(1455), [sym_manifest_constant] = STATE(1455), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1455), [sym_alias_declaration] = STATE(1455), [sym_alias_reassign] = STATE(1455), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1455), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1455), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1462), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1455), [sym_union_declaration] = STATE(1455), [sym_postblit] = STATE(1455), [sym_invariant_declaration] = STATE(1455), [sym_class_declaration] = STATE(1455), [sym_constructor] = STATE(1455), [sym_destructor] = STATE(1455), [sym_alias_this] = STATE(1455), [sym_interface_declaration] = STATE(1455), [sym_enum_declaration] = STATE(1455), [sym_anonymous_enum_declaration] = STATE(1455), [sym_function_declaration] = STATE(1455), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1455), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1455), [sym_template_mixin] = STATE(1455), [sym_conditional_declaration] = STATE(1455), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1455), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1455), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1974), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1976), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [281] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1462), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [282] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1466), [sym_mixin_declaration] = STATE(1466), [sym__declaration] = STATE(1466), [sym__declaration2] = STATE(1466), [sym_variable_declaration] = STATE(1466), [sym_manifest_constant] = STATE(1466), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1466), [sym_alias_declaration] = STATE(1466), [sym_alias_reassign] = STATE(1466), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1466), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1466), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1471), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1466), [sym_union_declaration] = STATE(1466), [sym_postblit] = STATE(1466), [sym_invariant_declaration] = STATE(1466), [sym_class_declaration] = STATE(1466), [sym_constructor] = STATE(1466), [sym_destructor] = STATE(1466), [sym_alias_this] = STATE(1466), [sym_interface_declaration] = STATE(1466), [sym_enum_declaration] = STATE(1466), [sym_anonymous_enum_declaration] = STATE(1466), [sym_function_declaration] = STATE(1466), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1466), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1466), [sym_template_mixin] = STATE(1466), [sym_conditional_declaration] = STATE(1466), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1466), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1466), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1978), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1980), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [283] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1471), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [284] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1476), [sym_mixin_declaration] = STATE(1476), [sym__declaration] = STATE(1476), [sym__declaration2] = STATE(1476), [sym_variable_declaration] = STATE(1476), [sym_manifest_constant] = STATE(1476), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1476), [sym_alias_declaration] = STATE(1476), [sym_alias_reassign] = STATE(1476), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1476), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1476), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1482), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1476), [sym_union_declaration] = STATE(1476), [sym_postblit] = STATE(1476), [sym_invariant_declaration] = STATE(1476), [sym_class_declaration] = STATE(1476), [sym_constructor] = STATE(1476), [sym_destructor] = STATE(1476), [sym_alias_this] = STATE(1476), [sym_interface_declaration] = STATE(1476), [sym_enum_declaration] = STATE(1476), [sym_anonymous_enum_declaration] = STATE(1476), [sym_function_declaration] = STATE(1476), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1476), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1476), [sym_template_mixin] = STATE(1476), [sym_conditional_declaration] = STATE(1476), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1476), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1476), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1982), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [285] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1480), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [286] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1481), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [287] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1482), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [288] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1488), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [289] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1491), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [290] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1503), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [291] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1504), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [292] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1513), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [293] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1517), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [294] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1521), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [295] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1523), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [296] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1540), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [297] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1543), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [298] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1546), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [299] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1552), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [300] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1553), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [301] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1555), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [302] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1539), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [303] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1536), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [304] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1726), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [305] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5607), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [306] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1447), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [307] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1488), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [308] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5662), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [309] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5240), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [310] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5682), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [311] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5714), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [312] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5664), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [313] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1482), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [314] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5665), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [315] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5666), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [316] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2328), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [317] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2338), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [318] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2189), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [319] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2172), [sym_mixin_declaration] = STATE(2172), [sym__declaration] = STATE(2172), [sym__declaration2] = STATE(2172), [sym_variable_declaration] = STATE(2172), [sym_manifest_constant] = STATE(2172), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2172), [sym_alias_declaration] = STATE(2172), [sym_alias_reassign] = STATE(2172), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2172), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2172), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2172), [sym_union_declaration] = STATE(2172), [sym_postblit] = STATE(2172), [sym_invariant_declaration] = STATE(2172), [sym_class_declaration] = STATE(2172), [sym_constructor] = STATE(2172), [sym_destructor] = STATE(2172), [sym_alias_this] = STATE(2172), [sym_interface_declaration] = STATE(2172), [sym_enum_declaration] = STATE(2172), [sym_anonymous_enum_declaration] = STATE(2172), [sym_function_declaration] = STATE(2172), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2172), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2172), [sym_template_mixin] = STATE(2172), [sym_conditional_declaration] = STATE(2172), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2172), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2172), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1825), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1827), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [320] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2174), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [321] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2178), [sym_mixin_declaration] = STATE(2178), [sym__declaration] = STATE(2178), [sym__declaration2] = STATE(2178), [sym_variable_declaration] = STATE(2178), [sym_manifest_constant] = STATE(2178), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2178), [sym_alias_declaration] = STATE(2178), [sym_alias_reassign] = STATE(2178), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2178), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2178), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2178), [sym_union_declaration] = STATE(2178), [sym_postblit] = STATE(2178), [sym_invariant_declaration] = STATE(2178), [sym_class_declaration] = STATE(2178), [sym_constructor] = STATE(2178), [sym_destructor] = STATE(2178), [sym_alias_this] = STATE(2178), [sym_interface_declaration] = STATE(2178), [sym_enum_declaration] = STATE(2178), [sym_anonymous_enum_declaration] = STATE(2178), [sym_function_declaration] = STATE(2178), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2178), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2178), [sym_template_mixin] = STATE(2178), [sym_conditional_declaration] = STATE(2178), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2178), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2178), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1817), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1819), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [322] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2163), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [323] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2179), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [324] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2181), [sym_mixin_declaration] = STATE(2181), [sym__declaration] = STATE(2181), [sym__declaration2] = STATE(2181), [sym_variable_declaration] = STATE(2181), [sym_manifest_constant] = STATE(2181), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2181), [sym_alias_declaration] = STATE(2181), [sym_alias_reassign] = STATE(2181), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2181), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2181), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2181), [sym_union_declaration] = STATE(2181), [sym_postblit] = STATE(2181), [sym_invariant_declaration] = STATE(2181), [sym_class_declaration] = STATE(2181), [sym_constructor] = STATE(2181), [sym_destructor] = STATE(2181), [sym_alias_this] = STATE(2181), [sym_interface_declaration] = STATE(2181), [sym_enum_declaration] = STATE(2181), [sym_anonymous_enum_declaration] = STATE(2181), [sym_function_declaration] = STATE(2181), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2181), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2181), [sym_template_mixin] = STATE(2181), [sym_conditional_declaration] = STATE(2181), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2181), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2181), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1813), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1815), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [325] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2182), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [326] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2185), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [327] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2187), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [328] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2204), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [329] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2209), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [330] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2210), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [331] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2216), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [332] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2219), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [333] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2220), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [334] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2222), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [335] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2224), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [336] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2254), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [337] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(7447), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3972), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [338] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2259), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [339] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2262), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [340] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2263), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [341] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2275), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [342] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2291), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [343] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2331), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [344] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(363), [sym_mixin_declaration] = STATE(363), [sym__declaration] = STATE(363), [sym__declaration2] = STATE(363), [sym_variable_declaration] = STATE(363), [sym_manifest_constant] = STATE(363), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(363), [sym_alias_declaration] = STATE(363), [sym_alias_reassign] = STATE(363), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(363), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(363), [sym_pragma_statement] = STATE(363), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(363), [sym_labeled_statement] = STATE(363), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(363), [sym_if_statement] = STATE(363), [sym_while_statement] = STATE(363), [sym_do_statement] = STATE(363), [sym_for_statement] = STATE(363), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(363), [sym_switch_statement] = STATE(363), [sym_final_switch_statement] = STATE(363), [sym_continue_statement] = STATE(363), [sym_break_statement] = STATE(363), [sym_return_statement] = STATE(363), [sym_goto_statement] = STATE(363), [sym_with_statement] = STATE(363), [sym_synchronized_statement] = STATE(363), [sym_try_statement] = STATE(363), [sym_scope_guard_statement] = STATE(363), [sym_asm_statement] = STATE(363), [sym_struct_declaration] = STATE(363), [sym_union_declaration] = STATE(363), [sym_postblit] = STATE(363), [sym_invariant_declaration] = STATE(363), [sym_class_declaration] = STATE(363), [sym_constructor] = STATE(363), [sym_destructor] = STATE(363), [sym_alias_this] = STATE(363), [sym_interface_declaration] = STATE(363), [sym_enum_declaration] = STATE(363), [sym_anonymous_enum_declaration] = STATE(363), [sym_function_declaration] = STATE(363), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(363), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(363), [sym_template_mixin] = STATE(363), [sym_conditional_declaration] = STATE(363), [sym_conditional_statement] = STATE(363), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(363), [sym_static_foreach_declaration] = STATE(363), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(363), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(363), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(640), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(640), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2002), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(644), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(644), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(644), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [345] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2343), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [346] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2376), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [347] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2189), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [348] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1481), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [349] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1296), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [350] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1584), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [351] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2293), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [352] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2184), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [353] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1480), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [354] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1476), [sym_mixin_declaration] = STATE(1476), [sym__declaration] = STATE(1476), [sym__declaration2] = STATE(1476), [sym_variable_declaration] = STATE(1476), [sym_manifest_constant] = STATE(1476), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1476), [sym_alias_declaration] = STATE(1476), [sym_alias_reassign] = STATE(1476), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1476), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1476), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1482), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1476), [sym_union_declaration] = STATE(1476), [sym_postblit] = STATE(1476), [sym_invariant_declaration] = STATE(1476), [sym_class_declaration] = STATE(1476), [sym_constructor] = STATE(1476), [sym_destructor] = STATE(1476), [sym_alias_this] = STATE(1476), [sym_interface_declaration] = STATE(1476), [sym_enum_declaration] = STATE(1476), [sym_anonymous_enum_declaration] = STATE(1476), [sym_function_declaration] = STATE(1476), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1476), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1476), [sym_template_mixin] = STATE(1476), [sym_conditional_declaration] = STATE(1476), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1476), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1476), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1982), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1984), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [355] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5672), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [356] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1583), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [357] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1293), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [358] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5691), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [359] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1471), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [360] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5673), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [361] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1561), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [362] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1370), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [363] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(196), [sym_mixin_declaration] = STATE(196), [sym__declaration] = STATE(196), [sym__declaration2] = STATE(196), [sym_variable_declaration] = STATE(196), [sym_manifest_constant] = STATE(196), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(196), [sym_alias_declaration] = STATE(196), [sym_alias_reassign] = STATE(196), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(196), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(196), [sym_pragma_statement] = STATE(196), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(196), [sym_labeled_statement] = STATE(196), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(196), [sym_if_statement] = STATE(196), [sym_while_statement] = STATE(196), [sym_do_statement] = STATE(196), [sym_for_statement] = STATE(196), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(196), [sym_switch_statement] = STATE(196), [sym_final_switch_statement] = STATE(196), [sym_continue_statement] = STATE(196), [sym_break_statement] = STATE(196), [sym_return_statement] = STATE(196), [sym_goto_statement] = STATE(196), [sym_with_statement] = STATE(196), [sym_synchronized_statement] = STATE(196), [sym_try_statement] = STATE(196), [sym_scope_guard_statement] = STATE(196), [sym_asm_statement] = STATE(196), [sym_struct_declaration] = STATE(196), [sym_union_declaration] = STATE(196), [sym_postblit] = STATE(196), [sym_invariant_declaration] = STATE(196), [sym_class_declaration] = STATE(196), [sym_constructor] = STATE(196), [sym_destructor] = STATE(196), [sym_alias_this] = STATE(196), [sym_interface_declaration] = STATE(196), [sym_enum_declaration] = STATE(196), [sym_anonymous_enum_declaration] = STATE(196), [sym_function_declaration] = STATE(196), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(196), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(196), [sym_template_mixin] = STATE(196), [sym_conditional_declaration] = STATE(196), [sym_conditional_statement] = STATE(196), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(196), [sym_static_foreach_declaration] = STATE(196), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(196), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(196), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(646), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(646), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1823), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(648), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(648), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(648), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [364] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2146), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [365] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5675), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [366] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1466), [sym_mixin_declaration] = STATE(1466), [sym__declaration] = STATE(1466), [sym__declaration2] = STATE(1466), [sym_variable_declaration] = STATE(1466), [sym_manifest_constant] = STATE(1466), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1466), [sym_alias_declaration] = STATE(1466), [sym_alias_reassign] = STATE(1466), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1466), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1466), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1471), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1466), [sym_union_declaration] = STATE(1466), [sym_postblit] = STATE(1466), [sym_invariant_declaration] = STATE(1466), [sym_class_declaration] = STATE(1466), [sym_constructor] = STATE(1466), [sym_destructor] = STATE(1466), [sym_alias_this] = STATE(1466), [sym_interface_declaration] = STATE(1466), [sym_enum_declaration] = STATE(1466), [sym_anonymous_enum_declaration] = STATE(1466), [sym_function_declaration] = STATE(1466), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1466), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1466), [sym_template_mixin] = STATE(1466), [sym_conditional_declaration] = STATE(1466), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1466), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1466), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1978), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1980), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [367] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5676), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [368] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5677), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [369] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1585), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [370] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2189), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [371] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1294), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [372] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1589), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [373] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5698), [sym_mixin_declaration] = STATE(5698), [sym__declaration] = STATE(5698), [sym__declaration2] = STATE(5698), [sym_variable_declaration] = STATE(5698), [sym_manifest_constant] = STATE(5698), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5698), [sym_alias_declaration] = STATE(5698), [sym_alias_reassign] = STATE(5698), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5698), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5698), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5698), [sym_union_declaration] = STATE(5698), [sym_postblit] = STATE(5698), [sym_invariant_declaration] = STATE(5698), [sym_class_declaration] = STATE(5698), [sym_constructor] = STATE(5698), [sym_destructor] = STATE(5698), [sym_alias_this] = STATE(5698), [sym_interface_declaration] = STATE(5698), [sym_enum_declaration] = STATE(5698), [sym_anonymous_enum_declaration] = STATE(5698), [sym_function_declaration] = STATE(5698), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5698), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5698), [sym_template_mixin] = STATE(5698), [sym_conditional_declaration] = STATE(5698), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5698), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5698), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1958), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1960), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [374] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [375] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5696), [sym_mixin_declaration] = STATE(5696), [sym__declaration] = STATE(5696), [sym__declaration2] = STATE(5696), [sym_variable_declaration] = STATE(5696), [sym_manifest_constant] = STATE(5696), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5696), [sym_alias_declaration] = STATE(5696), [sym_alias_reassign] = STATE(5696), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5696), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5696), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5696), [sym_union_declaration] = STATE(5696), [sym_postblit] = STATE(5696), [sym_invariant_declaration] = STATE(5696), [sym_class_declaration] = STATE(5696), [sym_constructor] = STATE(5696), [sym_destructor] = STATE(5696), [sym_alias_this] = STATE(5696), [sym_interface_declaration] = STATE(5696), [sym_enum_declaration] = STATE(5696), [sym_anonymous_enum_declaration] = STATE(5696), [sym_function_declaration] = STATE(5696), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5696), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5696), [sym_template_mixin] = STATE(5696), [sym_conditional_declaration] = STATE(5696), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5696), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5696), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1962), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1964), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [376] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1597), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [377] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [378] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5689), [sym_mixin_declaration] = STATE(5689), [sym__declaration] = STATE(5689), [sym__declaration2] = STATE(5689), [sym_variable_declaration] = STATE(5689), [sym_manifest_constant] = STATE(5689), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5689), [sym_alias_declaration] = STATE(5689), [sym_alias_reassign] = STATE(5689), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5689), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5689), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5689), [sym_union_declaration] = STATE(5689), [sym_postblit] = STATE(5689), [sym_invariant_declaration] = STATE(5689), [sym_class_declaration] = STATE(5689), [sym_constructor] = STATE(5689), [sym_destructor] = STATE(5689), [sym_alias_this] = STATE(5689), [sym_interface_declaration] = STATE(5689), [sym_enum_declaration] = STATE(5689), [sym_anonymous_enum_declaration] = STATE(5689), [sym_function_declaration] = STATE(5689), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5689), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5689), [sym_template_mixin] = STATE(5689), [sym_conditional_declaration] = STATE(5689), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5689), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5689), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1966), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1968), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [379] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5687), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [380] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5684), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [381] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [382] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5681), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [383] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5635), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [384] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5679), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [385] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5677), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [386] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5676), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [387] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5675), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [388] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5673), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [389] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5672), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [390] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5666), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [391] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5665), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [392] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5664), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [393] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5662), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [394] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5661), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [395] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5659), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [396] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5653), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [397] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5649), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [398] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5679), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [399] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2148), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [400] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1598), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [401] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1655), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [402] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5605), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [403] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2375), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [404] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5635), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [405] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1462), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [406] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5681), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [407] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1659), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [408] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1662), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [409] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1668), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [410] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1455), [sym_mixin_declaration] = STATE(1455), [sym__declaration] = STATE(1455), [sym__declaration2] = STATE(1455), [sym_variable_declaration] = STATE(1455), [sym_manifest_constant] = STATE(1455), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1455), [sym_alias_declaration] = STATE(1455), [sym_alias_reassign] = STATE(1455), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1455), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1455), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1462), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1455), [sym_union_declaration] = STATE(1455), [sym_postblit] = STATE(1455), [sym_invariant_declaration] = STATE(1455), [sym_class_declaration] = STATE(1455), [sym_constructor] = STATE(1455), [sym_destructor] = STATE(1455), [sym_alias_this] = STATE(1455), [sym_interface_declaration] = STATE(1455), [sym_enum_declaration] = STATE(1455), [sym_anonymous_enum_declaration] = STATE(1455), [sym_function_declaration] = STATE(1455), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1455), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1455), [sym_template_mixin] = STATE(1455), [sym_conditional_declaration] = STATE(1455), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1455), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1455), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1974), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1976), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [411] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2151), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [412] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1602), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [413] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [414] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1759), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [415] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5605), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [416] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5684), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [417] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5687), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [418] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1753), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [419] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2189), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [420] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1702), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [421] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1731), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [422] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1612), [sym_mixin_declaration] = STATE(1612), [sym__declaration] = STATE(1612), [sym__declaration2] = STATE(1612), [sym_variable_declaration] = STATE(1612), [sym_manifest_constant] = STATE(1612), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1612), [sym_alias_declaration] = STATE(1612), [sym_alias_reassign] = STATE(1612), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1612), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1612), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1605), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1612), [sym_union_declaration] = STATE(1612), [sym_postblit] = STATE(1612), [sym_invariant_declaration] = STATE(1612), [sym_class_declaration] = STATE(1612), [sym_constructor] = STATE(1612), [sym_destructor] = STATE(1612), [sym_alias_this] = STATE(1612), [sym_interface_declaration] = STATE(1612), [sym_enum_declaration] = STATE(1612), [sym_anonymous_enum_declaration] = STATE(1612), [sym_function_declaration] = STATE(1612), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1612), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1612), [sym_template_mixin] = STATE(1612), [sym_conditional_declaration] = STATE(1612), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1612), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1612), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1831), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1833), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [423] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1605), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [424] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1604), [sym_mixin_declaration] = STATE(1604), [sym__declaration] = STATE(1604), [sym__declaration2] = STATE(1604), [sym_variable_declaration] = STATE(1604), [sym_manifest_constant] = STATE(1604), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1604), [sym_alias_declaration] = STATE(1604), [sym_alias_reassign] = STATE(1604), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1604), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1604), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1591), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1604), [sym_union_declaration] = STATE(1604), [sym_postblit] = STATE(1604), [sym_invariant_declaration] = STATE(1604), [sym_class_declaration] = STATE(1604), [sym_constructor] = STATE(1604), [sym_destructor] = STATE(1604), [sym_alias_this] = STATE(1604), [sym_interface_declaration] = STATE(1604), [sym_enum_declaration] = STATE(1604), [sym_anonymous_enum_declaration] = STATE(1604), [sym_function_declaration] = STATE(1604), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1604), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1604), [sym_template_mixin] = STATE(1604), [sym_conditional_declaration] = STATE(1604), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1604), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1604), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1946), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1948), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [425] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(7905), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3972), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [426] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1591), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [427] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2338), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [428] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1587), [sym_mixin_declaration] = STATE(1587), [sym__declaration] = STATE(1587), [sym__declaration2] = STATE(1587), [sym_variable_declaration] = STATE(1587), [sym_manifest_constant] = STATE(1587), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1587), [sym_alias_declaration] = STATE(1587), [sym_alias_reassign] = STATE(1587), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1587), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1587), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1561), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1587), [sym_union_declaration] = STATE(1587), [sym_postblit] = STATE(1587), [sym_invariant_declaration] = STATE(1587), [sym_class_declaration] = STATE(1587), [sym_constructor] = STATE(1587), [sym_destructor] = STATE(1587), [sym_alias_this] = STATE(1587), [sym_interface_declaration] = STATE(1587), [sym_enum_declaration] = STATE(1587), [sym_anonymous_enum_declaration] = STATE(1587), [sym_function_declaration] = STATE(1587), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1587), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1587), [sym_template_mixin] = STATE(1587), [sym_conditional_declaration] = STATE(1587), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1587), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1587), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1970), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1972), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [429] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1584), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [430] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1583), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [431] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1561), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [432] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2328), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [433] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1585), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [434] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1589), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [435] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1597), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [436] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1598), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [437] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1655), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [438] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1659), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [439] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1662), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [440] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1668), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [441] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5689), [sym_mixin_declaration] = STATE(5689), [sym__declaration] = STATE(5689), [sym__declaration2] = STATE(5689), [sym_variable_declaration] = STATE(5689), [sym_manifest_constant] = STATE(5689), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5689), [sym_alias_declaration] = STATE(5689), [sym_alias_reassign] = STATE(5689), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5689), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5689), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5689), [sym_union_declaration] = STATE(5689), [sym_postblit] = STATE(5689), [sym_invariant_declaration] = STATE(5689), [sym_class_declaration] = STATE(5689), [sym_constructor] = STATE(5689), [sym_destructor] = STATE(5689), [sym_alias_this] = STATE(5689), [sym_interface_declaration] = STATE(5689), [sym_enum_declaration] = STATE(5689), [sym_anonymous_enum_declaration] = STATE(5689), [sym_function_declaration] = STATE(5689), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5689), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5689), [sym_template_mixin] = STATE(5689), [sym_conditional_declaration] = STATE(5689), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5689), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5689), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1968), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [442] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1759), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [443] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [444] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1753), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [445] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1702), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [446] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1731), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [447] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2185), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [448] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1671), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [449] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1671), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [450] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5696), [sym_mixin_declaration] = STATE(5696), [sym__declaration] = STATE(5696), [sym__declaration2] = STATE(5696), [sym_variable_declaration] = STATE(5696), [sym_manifest_constant] = STATE(5696), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5696), [sym_alias_declaration] = STATE(5696), [sym_alias_reassign] = STATE(5696), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5696), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5696), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5696), [sym_union_declaration] = STATE(5696), [sym_postblit] = STATE(5696), [sym_invariant_declaration] = STATE(5696), [sym_class_declaration] = STATE(5696), [sym_constructor] = STATE(5696), [sym_destructor] = STATE(5696), [sym_alias_this] = STATE(5696), [sym_interface_declaration] = STATE(5696), [sym_enum_declaration] = STATE(5696), [sym_anonymous_enum_declaration] = STATE(5696), [sym_function_declaration] = STATE(5696), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5696), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5696), [sym_template_mixin] = STATE(5696), [sym_conditional_declaration] = STATE(5696), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5696), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5696), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2006), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1964), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [451] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1732), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [452] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1729), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [453] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [454] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5698), [sym_mixin_declaration] = STATE(5698), [sym__declaration] = STATE(5698), [sym__declaration2] = STATE(5698), [sym_variable_declaration] = STATE(5698), [sym_manifest_constant] = STATE(5698), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5698), [sym_alias_declaration] = STATE(5698), [sym_alias_reassign] = STATE(5698), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5698), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5698), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5698), [sym_union_declaration] = STATE(5698), [sym_postblit] = STATE(5698), [sym_invariant_declaration] = STATE(5698), [sym_class_declaration] = STATE(5698), [sym_constructor] = STATE(5698), [sym_destructor] = STATE(5698), [sym_alias_this] = STATE(5698), [sym_interface_declaration] = STATE(5698), [sym_enum_declaration] = STATE(5698), [sym_anonymous_enum_declaration] = STATE(5698), [sym_function_declaration] = STATE(5698), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5698), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5698), [sym_template_mixin] = STATE(5698), [sym_conditional_declaration] = STATE(5698), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5698), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5698), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1960), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [455] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1374), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [456] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5649), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [457] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1635), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [458] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5653), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [459] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1562), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [460] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5589), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [461] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(6600), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [462] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5659), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [463] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2197), [sym_mixin_declaration] = STATE(2197), [sym__declaration] = STATE(2197), [sym__declaration2] = STATE(2197), [sym_variable_declaration] = STATE(2197), [sym_manifest_constant] = STATE(2197), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2197), [sym_alias_declaration] = STATE(2197), [sym_alias_reassign] = STATE(2197), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2197), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2197), [sym_pragma_statement] = STATE(2197), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2197), [sym__declaration_or_statement] = STATE(2197), [sym_scope_statement] = STATE(2345), [sym__statement_no_case_no_default] = STATE(2197), [sym_labeled_statement] = STATE(2197), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2197), [sym_if_statement] = STATE(2197), [sym_while_statement] = STATE(2197), [sym_do_statement] = STATE(2197), [sym_for_statement] = STATE(2197), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2197), [sym_switch_statement] = STATE(2197), [sym_case_statement] = STATE(2197), [sym_final_switch_statement] = STATE(2197), [sym_continue_statement] = STATE(2197), [sym_break_statement] = STATE(2197), [sym_return_statement] = STATE(2197), [sym_goto_statement] = STATE(2197), [sym_with_statement] = STATE(2197), [sym_synchronized_statement] = STATE(2197), [sym_try_statement] = STATE(2197), [sym_scope_guard_statement] = STATE(2197), [sym_asm_statement] = STATE(2197), [sym_struct_declaration] = STATE(2197), [sym_union_declaration] = STATE(2197), [sym_postblit] = STATE(2197), [sym_invariant_declaration] = STATE(2197), [sym_class_declaration] = STATE(2197), [sym_constructor] = STATE(2197), [sym_destructor] = STATE(2197), [sym_alias_this] = STATE(2197), [sym_interface_declaration] = STATE(2197), [sym_enum_declaration] = STATE(2197), [sym_anonymous_enum_declaration] = STATE(2197), [sym_function_declaration] = STATE(2197), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2197), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2197), [sym_template_mixin] = STATE(2197), [sym_conditional_declaration] = STATE(2197), [sym_conditional_statement] = STATE(2197), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2197), [sym_static_foreach_declaration] = STATE(2197), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2197), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(684), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [464] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5661), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [465] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5431), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [466] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5662), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [467] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5664), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [468] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5665), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [469] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5666), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [470] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5427), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [471] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5672), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [472] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5673), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [473] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5675), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [474] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5676), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [475] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5677), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [476] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5679), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [477] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1732), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [478] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1389), [sym_mixin_declaration] = STATE(1389), [sym__declaration] = STATE(1389), [sym__declaration2] = STATE(1389), [sym_variable_declaration] = STATE(1389), [sym_manifest_constant] = STATE(1389), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1389), [sym_alias_declaration] = STATE(1389), [sym_alias_reassign] = STATE(1389), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1389), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1389), [sym_pragma_statement] = STATE(1389), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1389), [sym__declaration_or_statement] = STATE(1389), [sym_scope_statement] = STATE(1440), [sym__statement_no_case_no_default] = STATE(1389), [sym_labeled_statement] = STATE(1389), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1389), [sym_if_statement] = STATE(1389), [sym_while_statement] = STATE(1389), [sym_do_statement] = STATE(1389), [sym_for_statement] = STATE(1389), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1389), [sym_switch_statement] = STATE(1389), [sym_case_statement] = STATE(1389), [sym_final_switch_statement] = STATE(1389), [sym_continue_statement] = STATE(1389), [sym_break_statement] = STATE(1389), [sym_return_statement] = STATE(1389), [sym_goto_statement] = STATE(1389), [sym_with_statement] = STATE(1389), [sym_synchronized_statement] = STATE(1389), [sym_try_statement] = STATE(1389), [sym_scope_guard_statement] = STATE(1389), [sym_asm_statement] = STATE(1389), [sym_struct_declaration] = STATE(1389), [sym_union_declaration] = STATE(1389), [sym_postblit] = STATE(1389), [sym_invariant_declaration] = STATE(1389), [sym_class_declaration] = STATE(1389), [sym_constructor] = STATE(1389), [sym_destructor] = STATE(1389), [sym_alias_this] = STATE(1389), [sym_interface_declaration] = STATE(1389), [sym_enum_declaration] = STATE(1389), [sym_anonymous_enum_declaration] = STATE(1389), [sym_function_declaration] = STATE(1389), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1389), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1389), [sym_template_mixin] = STATE(1389), [sym_conditional_declaration] = STATE(1389), [sym_conditional_statement] = STATE(1389), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1389), [sym_static_foreach_declaration] = STATE(1389), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1389), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(253), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1190), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [479] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(159), [sym_mixin_declaration] = STATE(159), [sym__declaration] = STATE(159), [sym__declaration2] = STATE(159), [sym_variable_declaration] = STATE(159), [sym_manifest_constant] = STATE(159), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(159), [sym_alias_declaration] = STATE(159), [sym_alias_reassign] = STATE(159), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(159), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(159), [sym_pragma_statement] = STATE(159), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(159), [sym_labeled_statement] = STATE(159), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(159), [sym_if_statement] = STATE(159), [sym_while_statement] = STATE(159), [sym_do_statement] = STATE(159), [sym_for_statement] = STATE(159), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(159), [sym_switch_statement] = STATE(159), [sym_final_switch_statement] = STATE(159), [sym_continue_statement] = STATE(159), [sym_break_statement] = STATE(159), [sym_return_statement] = STATE(159), [sym_goto_statement] = STATE(159), [sym_with_statement] = STATE(159), [sym_synchronized_statement] = STATE(159), [sym_try_statement] = STATE(159), [sym_scope_guard_statement] = STATE(159), [sym_asm_statement] = STATE(159), [sym_struct_declaration] = STATE(159), [sym_union_declaration] = STATE(159), [sym_postblit] = STATE(159), [sym_invariant_declaration] = STATE(159), [sym_class_declaration] = STATE(159), [sym_constructor] = STATE(159), [sym_destructor] = STATE(159), [sym_alias_this] = STATE(159), [sym_interface_declaration] = STATE(159), [sym_enum_declaration] = STATE(159), [sym_anonymous_enum_declaration] = STATE(159), [sym_function_declaration] = STATE(159), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(159), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(159), [sym_template_mixin] = STATE(159), [sym_conditional_declaration] = STATE(159), [sym_conditional_statement] = STATE(159), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(159), [sym_static_foreach_declaration] = STATE(159), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(159), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(159), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(357), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(357), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2010), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(361), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(361), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_else] = ACTIONS(361), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [480] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5635), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [481] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1651), [sym_mixin_declaration] = STATE(1651), [sym__declaration] = STATE(1651), [sym__declaration2] = STATE(1651), [sym_variable_declaration] = STATE(1651), [sym_manifest_constant] = STATE(1651), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1651), [sym_alias_declaration] = STATE(1651), [sym_alias_reassign] = STATE(1651), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1651), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1651), [sym_pragma_statement] = STATE(1651), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1651), [sym__declaration_or_statement] = STATE(1651), [sym_scope_statement] = STATE(1729), [sym__statement_no_case_no_default] = STATE(1651), [sym_labeled_statement] = STATE(1651), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1651), [sym_if_statement] = STATE(1651), [sym_while_statement] = STATE(1651), [sym_do_statement] = STATE(1651), [sym_for_statement] = STATE(1651), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1651), [sym_switch_statement] = STATE(1651), [sym_case_statement] = STATE(1651), [sym_final_switch_statement] = STATE(1651), [sym_continue_statement] = STATE(1651), [sym_break_statement] = STATE(1651), [sym_return_statement] = STATE(1651), [sym_goto_statement] = STATE(1651), [sym_with_statement] = STATE(1651), [sym_synchronized_statement] = STATE(1651), [sym_try_statement] = STATE(1651), [sym_scope_guard_statement] = STATE(1651), [sym_asm_statement] = STATE(1651), [sym_struct_declaration] = STATE(1651), [sym_union_declaration] = STATE(1651), [sym_postblit] = STATE(1651), [sym_invariant_declaration] = STATE(1651), [sym_class_declaration] = STATE(1651), [sym_constructor] = STATE(1651), [sym_destructor] = STATE(1651), [sym_alias_this] = STATE(1651), [sym_interface_declaration] = STATE(1651), [sym_enum_declaration] = STATE(1651), [sym_anonymous_enum_declaration] = STATE(1651), [sym_function_declaration] = STATE(1651), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1651), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1651), [sym_template_mixin] = STATE(1651), [sym_conditional_declaration] = STATE(1651), [sym_conditional_statement] = STATE(1651), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1651), [sym_static_foreach_declaration] = STATE(1651), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1651), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(664), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [482] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5607), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [483] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5698), [sym_mixin_declaration] = STATE(5698), [sym__declaration] = STATE(5698), [sym__declaration2] = STATE(5698), [sym_variable_declaration] = STATE(5698), [sym_manifest_constant] = STATE(5698), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5698), [sym_alias_declaration] = STATE(5698), [sym_alias_reassign] = STATE(5698), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5698), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5698), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5698), [sym_union_declaration] = STATE(5698), [sym_postblit] = STATE(5698), [sym_invariant_declaration] = STATE(5698), [sym_class_declaration] = STATE(5698), [sym_constructor] = STATE(5698), [sym_destructor] = STATE(5698), [sym_alias_this] = STATE(5698), [sym_interface_declaration] = STATE(5698), [sym_enum_declaration] = STATE(5698), [sym_anonymous_enum_declaration] = STATE(5698), [sym_function_declaration] = STATE(5698), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5698), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5698), [sym_template_mixin] = STATE(5698), [sym_conditional_declaration] = STATE(5698), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5698), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5698), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2008), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1960), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [484] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5697), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [485] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5696), [sym_mixin_declaration] = STATE(5696), [sym__declaration] = STATE(5696), [sym__declaration2] = STATE(5696), [sym_variable_declaration] = STATE(5696), [sym_manifest_constant] = STATE(5696), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5696), [sym_alias_declaration] = STATE(5696), [sym_alias_reassign] = STATE(5696), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5696), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5696), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5696), [sym_union_declaration] = STATE(5696), [sym_postblit] = STATE(5696), [sym_invariant_declaration] = STATE(5696), [sym_class_declaration] = STATE(5696), [sym_constructor] = STATE(5696), [sym_destructor] = STATE(5696), [sym_alias_this] = STATE(5696), [sym_interface_declaration] = STATE(5696), [sym_enum_declaration] = STATE(5696), [sym_anonymous_enum_declaration] = STATE(5696), [sym_function_declaration] = STATE(5696), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5696), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5696), [sym_template_mixin] = STATE(5696), [sym_conditional_declaration] = STATE(5696), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5696), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5696), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2006), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1964), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [486] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5695), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [487] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5689), [sym_mixin_declaration] = STATE(5689), [sym__declaration] = STATE(5689), [sym__declaration2] = STATE(5689), [sym_variable_declaration] = STATE(5689), [sym_manifest_constant] = STATE(5689), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5689), [sym_alias_declaration] = STATE(5689), [sym_alias_reassign] = STATE(5689), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5689), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5689), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5689), [sym_union_declaration] = STATE(5689), [sym_postblit] = STATE(5689), [sym_invariant_declaration] = STATE(5689), [sym_class_declaration] = STATE(5689), [sym_constructor] = STATE(5689), [sym_destructor] = STATE(5689), [sym_alias_this] = STATE(5689), [sym_interface_declaration] = STATE(5689), [sym_enum_declaration] = STATE(5689), [sym_anonymous_enum_declaration] = STATE(5689), [sym_function_declaration] = STATE(5689), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5689), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5689), [sym_template_mixin] = STATE(5689), [sym_conditional_declaration] = STATE(5689), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5689), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5689), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2004), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1968), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [488] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5687), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [489] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5684), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [490] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5683), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [491] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(5637), [sym_mixin_declaration] = STATE(5637), [sym__declaration] = STATE(5637), [sym__declaration2] = STATE(5637), [sym_variable_declaration] = STATE(5637), [sym_manifest_constant] = STATE(5637), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(5637), [sym_alias_declaration] = STATE(5637), [sym_alias_reassign] = STATE(5637), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(5637), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5637), [sym_pragma_statement] = STATE(5637), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5637), [sym__declaration_or_statement] = STATE(5637), [sym_scope_statement] = STATE(5681), [sym__statement_no_case_no_default] = STATE(5637), [sym_labeled_statement] = STATE(5637), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5637), [sym_if_statement] = STATE(5637), [sym_while_statement] = STATE(5637), [sym_do_statement] = STATE(5637), [sym_for_statement] = STATE(5637), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5637), [sym_switch_statement] = STATE(5637), [sym_case_statement] = STATE(5637), [sym_final_switch_statement] = STATE(5637), [sym_continue_statement] = STATE(5637), [sym_break_statement] = STATE(5637), [sym_return_statement] = STATE(5637), [sym_goto_statement] = STATE(5637), [sym_with_statement] = STATE(5637), [sym_synchronized_statement] = STATE(5637), [sym_try_statement] = STATE(5637), [sym_scope_guard_statement] = STATE(5637), [sym_asm_statement] = STATE(5637), [sym_struct_declaration] = STATE(5637), [sym_union_declaration] = STATE(5637), [sym_postblit] = STATE(5637), [sym_invariant_declaration] = STATE(5637), [sym_class_declaration] = STATE(5637), [sym_constructor] = STATE(5637), [sym_destructor] = STATE(5637), [sym_alias_this] = STATE(5637), [sym_interface_declaration] = STATE(5637), [sym_enum_declaration] = STATE(5637), [sym_anonymous_enum_declaration] = STATE(5637), [sym_function_declaration] = STATE(5637), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(5637), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(5637), [sym_template_mixin] = STATE(5637), [sym_conditional_declaration] = STATE(5637), [sym_conditional_statement] = STATE(5637), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5637), [sym_static_foreach_declaration] = STATE(5637), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(5637), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(1036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [492] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(507), [sym_mixin_declaration] = STATE(507), [sym__declaration] = STATE(507), [sym__declaration2] = STATE(507), [sym_variable_declaration] = STATE(507), [sym_manifest_constant] = STATE(507), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(507), [sym_alias_declaration] = STATE(507), [sym_alias_reassign] = STATE(507), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(507), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(507), [sym_pragma_statement] = STATE(507), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(507), [sym_labeled_statement] = STATE(507), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(507), [sym_if_statement] = STATE(507), [sym_while_statement] = STATE(507), [sym_do_statement] = STATE(507), [sym_for_statement] = STATE(507), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(507), [sym_switch_statement] = STATE(507), [sym_final_switch_statement] = STATE(507), [sym_continue_statement] = STATE(507), [sym_break_statement] = STATE(507), [sym_return_statement] = STATE(507), [sym_goto_statement] = STATE(507), [sym_with_statement] = STATE(507), [sym_synchronized_statement] = STATE(507), [sym_try_statement] = STATE(507), [sym_scope_guard_statement] = STATE(507), [sym_asm_statement] = STATE(507), [sym_struct_declaration] = STATE(507), [sym_union_declaration] = STATE(507), [sym_postblit] = STATE(507), [sym_invariant_declaration] = STATE(507), [sym_class_declaration] = STATE(507), [sym_constructor] = STATE(507), [sym_destructor] = STATE(507), [sym_alias_this] = STATE(507), [sym_interface_declaration] = STATE(507), [sym_enum_declaration] = STATE(507), [sym_anonymous_enum_declaration] = STATE(507), [sym_function_declaration] = STATE(507), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(507), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(507), [sym_template_mixin] = STATE(507), [sym_conditional_declaration] = STATE(507), [sym_conditional_statement] = STATE(507), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(507), [sym_static_foreach_declaration] = STATE(507), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(507), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(507), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(646), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(646), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(648), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(648), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [493] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2369), [sym_mixin_declaration] = STATE(2369), [sym__declaration] = STATE(2369), [sym__declaration2] = STATE(2369), [sym_variable_declaration] = STATE(2369), [sym_manifest_constant] = STATE(2369), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2369), [sym_alias_declaration] = STATE(2369), [sym_alias_reassign] = STATE(2369), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2369), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2369), [sym_pragma_statement] = STATE(2191), [sym_pragma_expression] = STATE(493), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2191), [sym__statement_no_case_no_default] = STATE(2191), [sym_labeled_statement] = STATE(2191), [sym_label] = STATE(370), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2191), [sym_if_statement] = STATE(2191), [sym_while_statement] = STATE(2191), [sym_do_statement] = STATE(2191), [sym_for_statement] = STATE(2191), [sym__foreach] = STATE(8049), [sym_foreach_statement] = STATE(2191), [sym_switch_statement] = STATE(2191), [sym_case_statement] = STATE(2191), [sym_final_switch_statement] = STATE(2191), [sym_continue_statement] = STATE(2191), [sym_break_statement] = STATE(2191), [sym_return_statement] = STATE(2191), [sym_goto_statement] = STATE(2191), [sym_with_statement] = STATE(2191), [sym_synchronized_statement] = STATE(2191), [sym_try_statement] = STATE(2191), [sym_scope_guard_statement] = STATE(2191), [sym_asm_statement] = STATE(2191), [sym_struct_declaration] = STATE(2369), [sym_union_declaration] = STATE(2369), [sym_postblit] = STATE(2369), [sym_invariant_declaration] = STATE(2369), [sym_class_declaration] = STATE(2369), [sym_constructor] = STATE(2369), [sym_destructor] = STATE(2369), [sym_alias_this] = STATE(2369), [sym_interface_declaration] = STATE(2369), [sym_enum_declaration] = STATE(2369), [sym_anonymous_enum_declaration] = STATE(2369), [sym_function_declaration] = STATE(2369), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2369), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2369), [sym_template_mixin] = STATE(2369), [sym_conditional_declaration] = STATE(2369), [sym_conditional_statement] = STATE(2191), [sym_condition] = STATE(89), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2191), [sym_static_foreach_declaration] = STATE(2369), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2369), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2014), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1950), [sym_for] = ACTIONS(752), [sym_foreach] = ACTIONS(754), [sym_foreach_reverse] = ACTIONS(754), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(758), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1952), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1954), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(1956), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(798), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(810), [sym_with] = ACTIONS(812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [494] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2622), [sym_mixin_declaration] = STATE(2622), [sym__declaration] = STATE(2622), [sym__declaration2] = STATE(2622), [sym_variable_declaration] = STATE(2622), [sym_manifest_constant] = STATE(2622), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2622), [sym_alias_declaration] = STATE(2622), [sym_alias_reassign] = STATE(2622), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2622), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2622), [sym_pragma_statement] = STATE(5601), [sym_pragma_expression] = STATE(494), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5601), [sym__statement_no_case_no_default] = STATE(5601), [sym_labeled_statement] = STATE(5601), [sym_label] = STATE(209), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5601), [sym_if_statement] = STATE(5601), [sym_while_statement] = STATE(5601), [sym_do_statement] = STATE(5601), [sym_for_statement] = STATE(5601), [sym__foreach] = STATE(7985), [sym_foreach_statement] = STATE(5601), [sym_switch_statement] = STATE(5601), [sym_case_statement] = STATE(5601), [sym_final_switch_statement] = STATE(5601), [sym_continue_statement] = STATE(5601), [sym_break_statement] = STATE(5601), [sym_return_statement] = STATE(5601), [sym_goto_statement] = STATE(5601), [sym_with_statement] = STATE(5601), [sym_synchronized_statement] = STATE(5601), [sym_try_statement] = STATE(5601), [sym_scope_guard_statement] = STATE(5601), [sym_asm_statement] = STATE(5601), [sym_struct_declaration] = STATE(2622), [sym_union_declaration] = STATE(2622), [sym_postblit] = STATE(2622), [sym_invariant_declaration] = STATE(2622), [sym_class_declaration] = STATE(2622), [sym_constructor] = STATE(2622), [sym_destructor] = STATE(2622), [sym_alias_this] = STATE(2622), [sym_interface_declaration] = STATE(2622), [sym_enum_declaration] = STATE(2622), [sym_anonymous_enum_declaration] = STATE(2622), [sym_function_declaration] = STATE(2622), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2622), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2622), [sym_template_mixin] = STATE(2622), [sym_conditional_declaration] = STATE(2622), [sym_conditional_statement] = STATE(5601), [sym_condition] = STATE(122), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5601), [sym_static_foreach_declaration] = STATE(2622), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2622), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2018), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1805), [sym_for] = ACTIONS(1763), [sym_foreach] = ACTIONS(1765), [sym_foreach_reverse] = ACTIONS(1765), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1767), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1807), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1809), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(1811), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1783), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1785), [sym_with] = ACTIONS(1787), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [495] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1644), [sym_mixin_declaration] = STATE(1644), [sym__declaration] = STATE(1644), [sym__declaration2] = STATE(1644), [sym_variable_declaration] = STATE(1644), [sym_manifest_constant] = STATE(1644), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1644), [sym_alias_declaration] = STATE(1644), [sym_alias_reassign] = STATE(1644), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1644), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1644), [sym_pragma_statement] = STATE(1687), [sym_pragma_expression] = STATE(495), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1687), [sym__statement_no_case_no_default] = STATE(1687), [sym_labeled_statement] = STATE(1687), [sym_label] = STATE(412), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1687), [sym_if_statement] = STATE(1687), [sym_while_statement] = STATE(1687), [sym_do_statement] = STATE(1687), [sym_for_statement] = STATE(1687), [sym__foreach] = STATE(8039), [sym_foreach_statement] = STATE(1687), [sym_switch_statement] = STATE(1687), [sym_case_statement] = STATE(1687), [sym_final_switch_statement] = STATE(1687), [sym_continue_statement] = STATE(1687), [sym_break_statement] = STATE(1687), [sym_return_statement] = STATE(1687), [sym_goto_statement] = STATE(1687), [sym_with_statement] = STATE(1687), [sym_synchronized_statement] = STATE(1687), [sym_try_statement] = STATE(1687), [sym_scope_guard_statement] = STATE(1687), [sym_asm_statement] = STATE(1687), [sym_struct_declaration] = STATE(1644), [sym_union_declaration] = STATE(1644), [sym_postblit] = STATE(1644), [sym_invariant_declaration] = STATE(1644), [sym_class_declaration] = STATE(1644), [sym_constructor] = STATE(1644), [sym_destructor] = STATE(1644), [sym_alias_this] = STATE(1644), [sym_interface_declaration] = STATE(1644), [sym_enum_declaration] = STATE(1644), [sym_anonymous_enum_declaration] = STATE(1644), [sym_function_declaration] = STATE(1644), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1644), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1644), [sym_template_mixin] = STATE(1644), [sym_conditional_declaration] = STATE(1644), [sym_conditional_statement] = STATE(1687), [sym_condition] = STATE(95), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1687), [sym_static_foreach_declaration] = STATE(1644), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1644), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2022), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2024), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(836), [sym_for] = ACTIONS(838), [sym_foreach] = ACTIONS(840), [sym_foreach_reverse] = ACTIONS(840), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(842), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(844), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(846), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(850), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(852), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(854), [sym_with] = ACTIONS(856), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [496] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(512), [sym_mixin_declaration] = STATE(512), [sym__declaration] = STATE(512), [sym__declaration2] = STATE(512), [sym_variable_declaration] = STATE(512), [sym_manifest_constant] = STATE(512), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(512), [sym_alias_declaration] = STATE(512), [sym_alias_reassign] = STATE(512), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(512), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(512), [sym_pragma_statement] = STATE(512), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(512), [sym_labeled_statement] = STATE(512), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(512), [sym_if_statement] = STATE(512), [sym_while_statement] = STATE(512), [sym_do_statement] = STATE(512), [sym_for_statement] = STATE(512), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(512), [sym_switch_statement] = STATE(512), [sym_final_switch_statement] = STATE(512), [sym_continue_statement] = STATE(512), [sym_break_statement] = STATE(512), [sym_return_statement] = STATE(512), [sym_goto_statement] = STATE(512), [sym_with_statement] = STATE(512), [sym_synchronized_statement] = STATE(512), [sym_try_statement] = STATE(512), [sym_scope_guard_statement] = STATE(512), [sym_asm_statement] = STATE(512), [sym_struct_declaration] = STATE(512), [sym_union_declaration] = STATE(512), [sym_postblit] = STATE(512), [sym_invariant_declaration] = STATE(512), [sym_class_declaration] = STATE(512), [sym_constructor] = STATE(512), [sym_destructor] = STATE(512), [sym_alias_this] = STATE(512), [sym_interface_declaration] = STATE(512), [sym_enum_declaration] = STATE(512), [sym_anonymous_enum_declaration] = STATE(512), [sym_function_declaration] = STATE(512), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(512), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(512), [sym_template_mixin] = STATE(512), [sym_conditional_declaration] = STATE(512), [sym_conditional_statement] = STATE(512), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(512), [sym_static_foreach_declaration] = STATE(512), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(512), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(512), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(357), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(357), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2026), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(361), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(361), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [497] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2622), [sym_mixin_declaration] = STATE(2622), [sym__declaration] = STATE(2622), [sym__declaration2] = STATE(2622), [sym_variable_declaration] = STATE(2622), [sym_manifest_constant] = STATE(2622), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2622), [sym_alias_declaration] = STATE(2622), [sym_alias_reassign] = STATE(2622), [sym_type] = STATE(5374), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2622), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2622), [sym_pragma_statement] = STATE(5601), [sym_pragma_expression] = STATE(497), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3825), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5601), [sym__statement_no_case_no_default] = STATE(5601), [sym_labeled_statement] = STATE(5601), [sym_label] = STATE(235), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5601), [sym_if_statement] = STATE(5601), [sym_while_statement] = STATE(5601), [sym_do_statement] = STATE(5601), [sym_for_statement] = STATE(5601), [sym__foreach] = STATE(8003), [sym_foreach_statement] = STATE(5601), [sym_switch_statement] = STATE(5601), [sym_case_statement] = STATE(5601), [sym_final_switch_statement] = STATE(5601), [sym_continue_statement] = STATE(5601), [sym_break_statement] = STATE(5601), [sym_return_statement] = STATE(5601), [sym_goto_statement] = STATE(5601), [sym_with_statement] = STATE(5601), [sym_synchronized_statement] = STATE(5601), [sym_try_statement] = STATE(5601), [sym_scope_guard_statement] = STATE(5601), [sym_asm_statement] = STATE(5601), [sym_struct_declaration] = STATE(2622), [sym_union_declaration] = STATE(2622), [sym_postblit] = STATE(2622), [sym_invariant_declaration] = STATE(2622), [sym_class_declaration] = STATE(2622), [sym_constructor] = STATE(2622), [sym_destructor] = STATE(2622), [sym_alias_this] = STATE(2622), [sym_interface_declaration] = STATE(2622), [sym_enum_declaration] = STATE(2622), [sym_anonymous_enum_declaration] = STATE(2622), [sym_function_declaration] = STATE(2622), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2622), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2622), [sym_template_mixin] = STATE(2622), [sym_conditional_declaration] = STATE(2622), [sym_conditional_statement] = STATE(5601), [sym_condition] = STATE(130), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5601), [sym_static_foreach_declaration] = STATE(2622), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2622), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1733), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2018), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1274), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1276), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1278), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1741), [sym_for] = ACTIONS(1290), [sym_foreach] = ACTIONS(1292), [sym_foreach_reverse] = ACTIONS(1292), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1294), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1296), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1743), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1745), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(1749), [sym_struct] = ACTIONS(63), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(1751), [sym_template] = ACTIONS(65), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1320), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(1322), [sym_while] = ACTIONS(1324), [sym_with] = ACTIONS(1326), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [498] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1409), [sym_mixin_declaration] = STATE(1409), [sym__declaration] = STATE(1409), [sym__declaration2] = STATE(1409), [sym_variable_declaration] = STATE(1409), [sym_manifest_constant] = STATE(1409), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1409), [sym_alias_declaration] = STATE(1409), [sym_alias_reassign] = STATE(1409), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1409), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1409), [sym_pragma_statement] = STATE(1376), [sym_pragma_expression] = STATE(498), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1376), [sym__statement_no_case_no_default] = STATE(1376), [sym_labeled_statement] = STATE(1376), [sym_label] = STATE(272), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1376), [sym_if_statement] = STATE(1376), [sym_while_statement] = STATE(1376), [sym_do_statement] = STATE(1376), [sym_for_statement] = STATE(1376), [sym__foreach] = STATE(8045), [sym_foreach_statement] = STATE(1376), [sym_switch_statement] = STATE(1376), [sym_case_statement] = STATE(1376), [sym_final_switch_statement] = STATE(1376), [sym_continue_statement] = STATE(1376), [sym_break_statement] = STATE(1376), [sym_return_statement] = STATE(1376), [sym_goto_statement] = STATE(1376), [sym_with_statement] = STATE(1376), [sym_synchronized_statement] = STATE(1376), [sym_try_statement] = STATE(1376), [sym_scope_guard_statement] = STATE(1376), [sym_asm_statement] = STATE(1376), [sym_struct_declaration] = STATE(1409), [sym_union_declaration] = STATE(1409), [sym_postblit] = STATE(1409), [sym_invariant_declaration] = STATE(1409), [sym_class_declaration] = STATE(1409), [sym_constructor] = STATE(1409), [sym_destructor] = STATE(1409), [sym_alias_this] = STATE(1409), [sym_interface_declaration] = STATE(1409), [sym_enum_declaration] = STATE(1409), [sym_anonymous_enum_declaration] = STATE(1409), [sym_function_declaration] = STATE(1409), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1409), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1409), [sym_template_mixin] = STATE(1409), [sym_conditional_declaration] = STATE(1409), [sym_conditional_statement] = STATE(1376), [sym_condition] = STATE(63), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1376), [sym_static_foreach_declaration] = STATE(1409), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1409), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2028), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2030), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(281), [sym_for] = ACTIONS(283), [sym_foreach] = ACTIONS(285), [sym_foreach_reverse] = ACTIONS(285), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(289), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(301), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(305), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(311), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(315), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(323), [sym_with] = ACTIONS(325), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [499] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1409), [sym_mixin_declaration] = STATE(1409), [sym__declaration] = STATE(1409), [sym__declaration2] = STATE(1409), [sym_variable_declaration] = STATE(1409), [sym_manifest_constant] = STATE(1409), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1409), [sym_alias_declaration] = STATE(1409), [sym_alias_reassign] = STATE(1409), [sym_type] = STATE(5341), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1409), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1409), [sym_pragma_statement] = STATE(1376), [sym_pragma_expression] = STATE(499), [sym_expression_list] = STATE(7037), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3798), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1376), [sym__statement_no_case_no_default] = STATE(1376), [sym_labeled_statement] = STATE(1376), [sym_label] = STATE(455), [sym_block_statement] = STATE(662), [sym_expression_statement] = STATE(1376), [sym_if_statement] = STATE(1376), [sym_while_statement] = STATE(1376), [sym_do_statement] = STATE(1376), [sym_for_statement] = STATE(1376), [sym__foreach] = STATE(8034), [sym_foreach_statement] = STATE(1376), [sym_switch_statement] = STATE(1376), [sym_case_statement] = STATE(1376), [sym_final_switch_statement] = STATE(1376), [sym_continue_statement] = STATE(1376), [sym_break_statement] = STATE(1376), [sym_return_statement] = STATE(1376), [sym_goto_statement] = STATE(1376), [sym_with_statement] = STATE(1376), [sym_synchronized_statement] = STATE(1376), [sym_try_statement] = STATE(1376), [sym_scope_guard_statement] = STATE(1376), [sym_asm_statement] = STATE(1376), [sym_struct_declaration] = STATE(1409), [sym_union_declaration] = STATE(1409), [sym_postblit] = STATE(1409), [sym_invariant_declaration] = STATE(1409), [sym_class_declaration] = STATE(1409), [sym_constructor] = STATE(1409), [sym_destructor] = STATE(1409), [sym_alias_this] = STATE(1409), [sym_interface_declaration] = STATE(1409), [sym_enum_declaration] = STATE(1409), [sym_anonymous_enum_declaration] = STATE(1409), [sym_function_declaration] = STATE(1409), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1409), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1409), [sym_template_mixin] = STATE(1409), [sym_conditional_declaration] = STATE(1409), [sym_conditional_statement] = STATE(1376), [sym_condition] = STATE(123), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1478), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1478), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1376), [sym_static_foreach_declaration] = STATE(1409), [sym_static_assert] = STATE(1478), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1409), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(249), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2028), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2030), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(257), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(259), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(263), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(265), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(271), [sym_debug] = ACTIONS(273), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(275), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(974), [sym_for] = ACTIONS(976), [sym_foreach] = ACTIONS(978), [sym_foreach_reverse] = ACTIONS(978), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(287), [sym_if] = ACTIONS(980), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(291), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(297), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(299), [sym_scope] = ACTIONS(982), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(984), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(988), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(990), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(321), [sym_while] = ACTIONS(992), [sym_with] = ACTIONS(994), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [500] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(510), [sym_mixin_declaration] = STATE(510), [sym__declaration] = STATE(510), [sym__declaration2] = STATE(510), [sym_variable_declaration] = STATE(510), [sym_manifest_constant] = STATE(510), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(510), [sym_alias_declaration] = STATE(510), [sym_alias_reassign] = STATE(510), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(510), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(510), [sym_pragma_statement] = STATE(510), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(510), [sym_labeled_statement] = STATE(510), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(510), [sym_if_statement] = STATE(510), [sym_while_statement] = STATE(510), [sym_do_statement] = STATE(510), [sym_for_statement] = STATE(510), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(510), [sym_switch_statement] = STATE(510), [sym_final_switch_statement] = STATE(510), [sym_continue_statement] = STATE(510), [sym_break_statement] = STATE(510), [sym_return_statement] = STATE(510), [sym_goto_statement] = STATE(510), [sym_with_statement] = STATE(510), [sym_synchronized_statement] = STATE(510), [sym_try_statement] = STATE(510), [sym_scope_guard_statement] = STATE(510), [sym_asm_statement] = STATE(510), [sym_struct_declaration] = STATE(510), [sym_union_declaration] = STATE(510), [sym_postblit] = STATE(510), [sym_invariant_declaration] = STATE(510), [sym_class_declaration] = STATE(510), [sym_constructor] = STATE(510), [sym_destructor] = STATE(510), [sym_alias_this] = STATE(510), [sym_interface_declaration] = STATE(510), [sym_enum_declaration] = STATE(510), [sym_anonymous_enum_declaration] = STATE(510), [sym_function_declaration] = STATE(510), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(510), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(510), [sym_template_mixin] = STATE(510), [sym_conditional_declaration] = STATE(510), [sym_conditional_statement] = STATE(510), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(510), [sym_static_foreach_declaration] = STATE(510), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(510), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(510), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2032), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [501] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2609), [sym_mixin_declaration] = STATE(2609), [sym__declaration] = STATE(2609), [sym__declaration2] = STATE(2609), [sym_variable_declaration] = STATE(2609), [sym_manifest_constant] = STATE(2609), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2609), [sym_alias_declaration] = STATE(2609), [sym_alias_reassign] = STATE(2609), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2609), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2609), [sym_pragma_statement] = STATE(5601), [sym_pragma_expression] = STATE(501), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5601), [sym__statement_no_case_no_default] = STATE(5601), [sym_labeled_statement] = STATE(5601), [sym_label] = STATE(482), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5601), [sym_if_statement] = STATE(5601), [sym_while_statement] = STATE(5601), [sym_do_statement] = STATE(5601), [sym_for_statement] = STATE(5601), [sym__foreach] = STATE(8041), [sym_foreach_statement] = STATE(5601), [sym_switch_statement] = STATE(5601), [sym_case_statement] = STATE(5601), [sym_final_switch_statement] = STATE(5601), [sym_continue_statement] = STATE(5601), [sym_break_statement] = STATE(5601), [sym_return_statement] = STATE(5601), [sym_goto_statement] = STATE(5601), [sym_with_statement] = STATE(5601), [sym_synchronized_statement] = STATE(5601), [sym_try_statement] = STATE(5601), [sym_scope_guard_statement] = STATE(5601), [sym_asm_statement] = STATE(5601), [sym_struct_declaration] = STATE(2609), [sym_union_declaration] = STATE(2609), [sym_postblit] = STATE(2609), [sym_invariant_declaration] = STATE(2609), [sym_class_declaration] = STATE(2609), [sym_constructor] = STATE(2609), [sym_destructor] = STATE(2609), [sym_alias_this] = STATE(2609), [sym_interface_declaration] = STATE(2609), [sym_enum_declaration] = STATE(2609), [sym_anonymous_enum_declaration] = STATE(2609), [sym_function_declaration] = STATE(2609), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2609), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2609), [sym_template_mixin] = STATE(2609), [sym_conditional_declaration] = STATE(2609), [sym_conditional_statement] = STATE(5601), [sym_condition] = STATE(74), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5601), [sym_static_foreach_declaration] = STATE(2609), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2609), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2034), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(718), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(730), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1986), [sym_for] = ACTIONS(1434), [sym_foreach] = ACTIONS(1436), [sym_foreach_reverse] = ACTIONS(1436), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1438), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1988), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1990), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(1992), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1454), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1456), [sym_with] = ACTIONS(1458), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [502] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2369), [sym_mixin_declaration] = STATE(2369), [sym__declaration] = STATE(2369), [sym__declaration2] = STATE(2369), [sym_variable_declaration] = STATE(2369), [sym_manifest_constant] = STATE(2369), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2369), [sym_alias_declaration] = STATE(2369), [sym_alias_reassign] = STATE(2369), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2369), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2369), [sym_pragma_statement] = STATE(2191), [sym_pragma_expression] = STATE(502), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2191), [sym__statement_no_case_no_default] = STATE(2191), [sym_labeled_statement] = STATE(2191), [sym_label] = STATE(318), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2191), [sym_if_statement] = STATE(2191), [sym_while_statement] = STATE(2191), [sym_do_statement] = STATE(2191), [sym_for_statement] = STATE(2191), [sym__foreach] = STATE(8051), [sym_foreach_statement] = STATE(2191), [sym_switch_statement] = STATE(2191), [sym_case_statement] = STATE(2191), [sym_final_switch_statement] = STATE(2191), [sym_continue_statement] = STATE(2191), [sym_break_statement] = STATE(2191), [sym_return_statement] = STATE(2191), [sym_goto_statement] = STATE(2191), [sym_with_statement] = STATE(2191), [sym_synchronized_statement] = STATE(2191), [sym_try_statement] = STATE(2191), [sym_scope_guard_statement] = STATE(2191), [sym_asm_statement] = STATE(2191), [sym_struct_declaration] = STATE(2369), [sym_union_declaration] = STATE(2369), [sym_postblit] = STATE(2369), [sym_invariant_declaration] = STATE(2369), [sym_class_declaration] = STATE(2369), [sym_constructor] = STATE(2369), [sym_destructor] = STATE(2369), [sym_alias_this] = STATE(2369), [sym_interface_declaration] = STATE(2369), [sym_enum_declaration] = STATE(2369), [sym_anonymous_enum_declaration] = STATE(2369), [sym_function_declaration] = STATE(2369), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2369), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2369), [sym_template_mixin] = STATE(2369), [sym_conditional_declaration] = STATE(2369), [sym_conditional_statement] = STATE(2191), [sym_condition] = STATE(104), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2191), [sym_static_foreach_declaration] = STATE(2369), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2369), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2014), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(832), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(834), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(874), [sym_for] = ACTIONS(876), [sym_foreach] = ACTIONS(878), [sym_foreach_reverse] = ACTIONS(878), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(880), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(884), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(888), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(892), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(894), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(896), [sym_with] = ACTIONS(898), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [503] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(507), [sym_mixin_declaration] = STATE(507), [sym__declaration] = STATE(507), [sym__declaration2] = STATE(507), [sym_variable_declaration] = STATE(507), [sym_manifest_constant] = STATE(507), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(507), [sym_alias_declaration] = STATE(507), [sym_alias_reassign] = STATE(507), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(507), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(507), [sym_pragma_statement] = STATE(507), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(507), [sym_labeled_statement] = STATE(507), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(507), [sym_if_statement] = STATE(507), [sym_while_statement] = STATE(507), [sym_do_statement] = STATE(507), [sym_for_statement] = STATE(507), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(507), [sym_switch_statement] = STATE(507), [sym_final_switch_statement] = STATE(507), [sym_continue_statement] = STATE(507), [sym_break_statement] = STATE(507), [sym_return_statement] = STATE(507), [sym_goto_statement] = STATE(507), [sym_with_statement] = STATE(507), [sym_synchronized_statement] = STATE(507), [sym_try_statement] = STATE(507), [sym_scope_guard_statement] = STATE(507), [sym_asm_statement] = STATE(507), [sym_struct_declaration] = STATE(507), [sym_union_declaration] = STATE(507), [sym_postblit] = STATE(507), [sym_invariant_declaration] = STATE(507), [sym_class_declaration] = STATE(507), [sym_constructor] = STATE(507), [sym_destructor] = STATE(507), [sym_alias_this] = STATE(507), [sym_interface_declaration] = STATE(507), [sym_enum_declaration] = STATE(507), [sym_anonymous_enum_declaration] = STATE(507), [sym_function_declaration] = STATE(507), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(507), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(507), [sym_template_mixin] = STATE(507), [sym_conditional_declaration] = STATE(507), [sym_conditional_statement] = STATE(507), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(507), [sym_static_foreach_declaration] = STATE(507), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(507), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(507), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(377), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(377), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(381), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(381), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [504] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(492), [sym_mixin_declaration] = STATE(492), [sym__declaration] = STATE(492), [sym__declaration2] = STATE(492), [sym_variable_declaration] = STATE(492), [sym_manifest_constant] = STATE(492), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(492), [sym_alias_declaration] = STATE(492), [sym_alias_reassign] = STATE(492), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(492), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(492), [sym_pragma_statement] = STATE(492), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(492), [sym_labeled_statement] = STATE(492), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(492), [sym_if_statement] = STATE(492), [sym_while_statement] = STATE(492), [sym_do_statement] = STATE(492), [sym_for_statement] = STATE(492), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(492), [sym_switch_statement] = STATE(492), [sym_final_switch_statement] = STATE(492), [sym_continue_statement] = STATE(492), [sym_break_statement] = STATE(492), [sym_return_statement] = STATE(492), [sym_goto_statement] = STATE(492), [sym_with_statement] = STATE(492), [sym_synchronized_statement] = STATE(492), [sym_try_statement] = STATE(492), [sym_scope_guard_statement] = STATE(492), [sym_asm_statement] = STATE(492), [sym_struct_declaration] = STATE(492), [sym_union_declaration] = STATE(492), [sym_postblit] = STATE(492), [sym_invariant_declaration] = STATE(492), [sym_class_declaration] = STATE(492), [sym_constructor] = STATE(492), [sym_destructor] = STATE(492), [sym_alias_this] = STATE(492), [sym_interface_declaration] = STATE(492), [sym_enum_declaration] = STATE(492), [sym_anonymous_enum_declaration] = STATE(492), [sym_function_declaration] = STATE(492), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(492), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(492), [sym_template_mixin] = STATE(492), [sym_conditional_declaration] = STATE(492), [sym_conditional_statement] = STATE(492), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(492), [sym_static_foreach_declaration] = STATE(492), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(492), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(492), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(640), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(640), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2036), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(644), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(644), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [505] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2609), [sym_mixin_declaration] = STATE(2609), [sym__declaration] = STATE(2609), [sym__declaration2] = STATE(2609), [sym_variable_declaration] = STATE(2609), [sym_manifest_constant] = STATE(2609), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2609), [sym_alias_declaration] = STATE(2609), [sym_alias_reassign] = STATE(2609), [sym_type] = STATE(5398), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2609), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2609), [sym_pragma_statement] = STATE(5601), [sym_pragma_expression] = STATE(505), [sym_expression_list] = STATE(7164), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3794), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(5601), [sym__statement_no_case_no_default] = STATE(5601), [sym_labeled_statement] = STATE(5601), [sym_label] = STATE(305), [sym_block_statement] = STATE(3787), [sym_expression_statement] = STATE(5601), [sym_if_statement] = STATE(5601), [sym_while_statement] = STATE(5601), [sym_do_statement] = STATE(5601), [sym_for_statement] = STATE(5601), [sym__foreach] = STATE(8047), [sym_foreach_statement] = STATE(5601), [sym_switch_statement] = STATE(5601), [sym_case_statement] = STATE(5601), [sym_final_switch_statement] = STATE(5601), [sym_continue_statement] = STATE(5601), [sym_break_statement] = STATE(5601), [sym_return_statement] = STATE(5601), [sym_goto_statement] = STATE(5601), [sym_with_statement] = STATE(5601), [sym_synchronized_statement] = STATE(5601), [sym_try_statement] = STATE(5601), [sym_scope_guard_statement] = STATE(5601), [sym_asm_statement] = STATE(5601), [sym_struct_declaration] = STATE(2609), [sym_union_declaration] = STATE(2609), [sym_postblit] = STATE(2609), [sym_invariant_declaration] = STATE(2609), [sym_class_declaration] = STATE(2609), [sym_constructor] = STATE(2609), [sym_destructor] = STATE(2609), [sym_alias_this] = STATE(2609), [sym_interface_declaration] = STATE(2609), [sym_enum_declaration] = STATE(2609), [sym_anonymous_enum_declaration] = STATE(2609), [sym_function_declaration] = STATE(2609), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2609), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2609), [sym_template_mixin] = STATE(2609), [sym_conditional_declaration] = STATE(2609), [sym_conditional_statement] = STATE(5601), [sym_condition] = STATE(70), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(5581), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(5581), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(5601), [sym_static_foreach_declaration] = STATE(2609), [sym_static_assert] = STATE(5581), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2609), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1162), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2034), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2020), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(1038), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(1040), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(1044), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(1046), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(1050), [sym_debug] = ACTIONS(1052), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(1054), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1172), [sym_for] = ACTIONS(1066), [sym_foreach] = ACTIONS(1068), [sym_foreach_reverse] = ACTIONS(1068), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(1070), [sym_if] = ACTIONS(1072), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(1074), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(1174), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(1084), [sym_scope] = ACTIONS(1176), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(1180), [sym_struct] = ACTIONS(1098), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(1182), [sym_template] = ACTIONS(1106), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1108), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(1114), [sym_while] = ACTIONS(1116), [sym_with] = ACTIONS(1118), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [506] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(503), [sym_mixin_declaration] = STATE(503), [sym__declaration] = STATE(503), [sym__declaration2] = STATE(503), [sym_variable_declaration] = STATE(503), [sym_manifest_constant] = STATE(503), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(503), [sym_alias_declaration] = STATE(503), [sym_alias_reassign] = STATE(503), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(503), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(503), [sym_pragma_statement] = STATE(503), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(503), [sym_labeled_statement] = STATE(503), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(503), [sym_if_statement] = STATE(503), [sym_while_statement] = STATE(503), [sym_do_statement] = STATE(503), [sym_for_statement] = STATE(503), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(503), [sym_switch_statement] = STATE(503), [sym_final_switch_statement] = STATE(503), [sym_continue_statement] = STATE(503), [sym_break_statement] = STATE(503), [sym_return_statement] = STATE(503), [sym_goto_statement] = STATE(503), [sym_with_statement] = STATE(503), [sym_synchronized_statement] = STATE(503), [sym_try_statement] = STATE(503), [sym_scope_guard_statement] = STATE(503), [sym_asm_statement] = STATE(503), [sym_struct_declaration] = STATE(503), [sym_union_declaration] = STATE(503), [sym_postblit] = STATE(503), [sym_invariant_declaration] = STATE(503), [sym_class_declaration] = STATE(503), [sym_constructor] = STATE(503), [sym_destructor] = STATE(503), [sym_alias_this] = STATE(503), [sym_interface_declaration] = STATE(503), [sym_enum_declaration] = STATE(503), [sym_anonymous_enum_declaration] = STATE(503), [sym_function_declaration] = STATE(503), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(503), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(503), [sym_template_mixin] = STATE(503), [sym_conditional_declaration] = STATE(503), [sym_conditional_statement] = STATE(503), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(503), [sym_static_foreach_declaration] = STATE(503), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(503), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(503), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2038), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [507] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(507), [sym_mixin_declaration] = STATE(507), [sym__declaration] = STATE(507), [sym__declaration2] = STATE(507), [sym_variable_declaration] = STATE(507), [sym_manifest_constant] = STATE(507), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(507), [sym_alias_declaration] = STATE(507), [sym_alias_reassign] = STATE(507), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(507), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(507), [sym_pragma_statement] = STATE(507), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(507), [sym_labeled_statement] = STATE(507), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(507), [sym_if_statement] = STATE(507), [sym_while_statement] = STATE(507), [sym_do_statement] = STATE(507), [sym_for_statement] = STATE(507), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(507), [sym_switch_statement] = STATE(507), [sym_final_switch_statement] = STATE(507), [sym_continue_statement] = STATE(507), [sym_break_statement] = STATE(507), [sym_return_statement] = STATE(507), [sym_goto_statement] = STATE(507), [sym_with_statement] = STATE(507), [sym_synchronized_statement] = STATE(507), [sym_try_statement] = STATE(507), [sym_scope_guard_statement] = STATE(507), [sym_asm_statement] = STATE(507), [sym_struct_declaration] = STATE(507), [sym_union_declaration] = STATE(507), [sym_postblit] = STATE(507), [sym_invariant_declaration] = STATE(507), [sym_class_declaration] = STATE(507), [sym_constructor] = STATE(507), [sym_destructor] = STATE(507), [sym_alias_this] = STATE(507), [sym_interface_declaration] = STATE(507), [sym_enum_declaration] = STATE(507), [sym_anonymous_enum_declaration] = STATE(507), [sym_function_declaration] = STATE(507), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(507), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(507), [sym_template_mixin] = STATE(507), [sym_conditional_declaration] = STATE(507), [sym_conditional_statement] = STATE(507), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(507), [sym_static_foreach_declaration] = STATE(507), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(507), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(507), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(1835), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(386), [anon_sym_RBRACE] = ACTIONS(389), [anon_sym_LBRACE] = ACTIONS(1838), [anon_sym_DOT] = ACTIONS(394), [anon_sym_AMP] = ACTIONS(397), [anon_sym_DASH] = ACTIONS(400), [anon_sym_DASH_DASH] = ACTIONS(397), [anon_sym_PLUS] = ACTIONS(400), [anon_sym_PLUS_PLUS] = ACTIONS(397), [anon_sym_BANG] = ACTIONS(397), [anon_sym_LPAREN] = ACTIONS(403), [anon_sym_RPAREN] = ACTIONS(389), [anon_sym_LBRACK] = ACTIONS(406), [anon_sym_SEMI] = ACTIONS(2040), [anon_sym_DOLLAR] = ACTIONS(412), [anon_sym_STAR] = ACTIONS(397), [anon_sym_TILDE] = ACTIONS(1844), [anon_sym_AT] = ACTIONS(418), [sym_bool] = ACTIONS(421), [sym_byte] = ACTIONS(421), [sym_ubyte] = ACTIONS(421), [sym_char] = ACTIONS(421), [sym_short] = ACTIONS(421), [sym_ushort] = ACTIONS(421), [sym_int] = ACTIONS(421), [sym_uint] = ACTIONS(421), [sym_long] = ACTIONS(421), [sym_ulong] = ACTIONS(421), [sym_cent] = ACTIONS(421), [sym_ucent] = ACTIONS(421), [sym_wchar] = ACTIONS(421), [sym_dchar] = ACTIONS(421), [sym_float] = ACTIONS(421), [sym_double] = ACTIONS(421), [sym_real] = ACTIONS(421), [sym_ifloat] = ACTIONS(421), [sym_idouble] = ACTIONS(421), [sym_ireal] = ACTIONS(421), [sym_cfloat] = ACTIONS(421), [sym_cdouble] = ACTIONS(421), [sym_creal] = ACTIONS(421), [sym_size_t] = ACTIONS(421), [sym_ptrdiff_t] = ACTIONS(421), [sym_string] = ACTIONS(421), [sym_cstring] = ACTIONS(421), [sym_dstring] = ACTIONS(421), [sym_wstring] = ACTIONS(421), [sym_noreturn] = ACTIONS(421), [sym_true] = ACTIONS(424), [sym_false] = ACTIONS(424), [sym_null] = ACTIONS(424), [sym_super] = ACTIONS(424), [sym_this] = ACTIONS(1847), [sym_abstract] = ACTIONS(430), [sym_alias] = ACTIONS(1850), [sym_align] = ACTIONS(436), [sym_asm] = ACTIONS(1853), [sym_assert] = ACTIONS(442), [sym_auto] = ACTIONS(445), [sym_break] = ACTIONS(1856), [sym_case] = ACTIONS(451), [sym_cast] = ACTIONS(453), [sym_class] = ACTIONS(1859), [sym_const] = ACTIONS(459), [sym_continue] = ACTIONS(1862), [sym_debug] = ACTIONS(1865), [sym_default] = ACTIONS(451), [sym_delegate] = ACTIONS(468), [sym_delete] = ACTIONS(471), [sym_deprecated] = ACTIONS(474), [sym_do] = ACTIONS(1868), [sym_enum] = ACTIONS(1871), [sym_export] = ACTIONS(1874), [sym_extern] = ACTIONS(486), [sym_final] = ACTIONS(2043), [sym_for] = ACTIONS(2046), [sym_foreach] = ACTIONS(2049), [sym_foreach_reverse] = ACTIONS(2049), [sym_function] = ACTIONS(498), [sym_goto] = ACTIONS(1886), [sym_if] = ACTIONS(2052), [sym_immutable] = ACTIONS(459), [sym_import] = ACTIONS(1892), [sym_in] = ACTIONS(510), [sym_inout] = ACTIONS(459), [sym_interface] = ACTIONS(1895), [sym_invariant] = ACTIONS(1898), [sym_is] = ACTIONS(519), [sym_mixin] = ACTIONS(1901), [sym_new] = ACTIONS(525), [sym_nothrow] = ACTIONS(430), [sym_out] = ACTIONS(528), [sym_override] = ACTIONS(430), [sym_package] = ACTIONS(531), [sym_pragma] = ACTIONS(534), [sym_private] = ACTIONS(1874), [sym_protected] = ACTIONS(1874), [sym_public] = ACTIONS(1874), [sym_pure] = ACTIONS(430), [sym_ref] = ACTIONS(537), [sym_return] = ACTIONS(1904), [sym_scope] = ACTIONS(2055), [sym_shared] = ACTIONS(1910), [sym_static] = ACTIONS(2058), [sym_struct] = ACTIONS(1916), [sym_switch] = ACTIONS(2061), [sym_synchronized] = ACTIONS(2064), [sym_template] = ACTIONS(1925), [sym_throw] = ACTIONS(564), [sym_try] = ACTIONS(2067), [sym_typeid] = ACTIONS(570), [sym_typeof] = ACTIONS(573), [sym_union] = ACTIONS(1931), [sym_unittest] = ACTIONS(1934), [sym_version] = ACTIONS(1937), [sym_while] = ACTIONS(2070), [sym_with] = ACTIONS(2073), [sym_gshared] = ACTIONS(430), [sym_traits] = ACTIONS(591), [sym_vector] = ACTIONS(594), [sym_void] = ACTIONS(597), [anon_sym_BQUOTE] = ACTIONS(600), [anon_sym_r_DQUOTE] = ACTIONS(603), [anon_sym_x_DQUOTE] = ACTIONS(606), [anon_sym_DQUOTE] = ACTIONS(609), [anon_sym_i_BQUOTE] = ACTIONS(612), [anon_sym_i_DQUOTE] = ACTIONS(615), [anon_sym_iq_LBRACE] = ACTIONS(618), [aux_sym_char_literal_token1] = ACTIONS(621), [anon_sym_SQUOTE] = ACTIONS(624), [anon_sym___DATE__] = ACTIONS(627), [anon_sym___FILE__] = ACTIONS(627), [anon_sym___FILE_FULL_PATH__] = ACTIONS(627), [anon_sym___FUNCTION__] = ACTIONS(627), [anon_sym___LINE__] = ACTIONS(627), [anon_sym___MODULE__] = ACTIONS(627), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(627), [anon_sym___TIME__] = ACTIONS(627), [anon_sym___TIMESTAMP__] = ACTIONS(627), [anon_sym___VENDOR__] = ACTIONS(627), [anon_sym___VERSION__] = ACTIONS(627), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(630), [sym_float_literal] = ACTIONS(630), [sym__string] = ACTIONS(633), }, [508] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(1644), [sym_mixin_declaration] = STATE(1644), [sym__declaration] = STATE(1644), [sym__declaration2] = STATE(1644), [sym_variable_declaration] = STATE(1644), [sym_manifest_constant] = STATE(1644), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1644), [sym_alias_declaration] = STATE(1644), [sym_alias_reassign] = STATE(1644), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(1644), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1644), [sym_pragma_statement] = STATE(1687), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(1687), [sym__statement_no_case_no_default] = STATE(1687), [sym_labeled_statement] = STATE(1687), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(1687), [sym_if_statement] = STATE(1687), [sym_while_statement] = STATE(1687), [sym_do_statement] = STATE(1687), [sym_for_statement] = STATE(1687), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(1687), [sym_switch_statement] = STATE(1687), [sym_case_statement] = STATE(1687), [sym_final_switch_statement] = STATE(1687), [sym_continue_statement] = STATE(1687), [sym_break_statement] = STATE(1687), [sym_return_statement] = STATE(1687), [sym_goto_statement] = STATE(1687), [sym_with_statement] = STATE(1687), [sym_synchronized_statement] = STATE(1687), [sym_try_statement] = STATE(1687), [sym_scope_guard_statement] = STATE(1687), [sym_asm_statement] = STATE(1687), [sym_struct_declaration] = STATE(1644), [sym_union_declaration] = STATE(1644), [sym_postblit] = STATE(1644), [sym_invariant_declaration] = STATE(1644), [sym_class_declaration] = STATE(1644), [sym_constructor] = STATE(1644), [sym_destructor] = STATE(1644), [sym_alias_this] = STATE(1644), [sym_interface_declaration] = STATE(1644), [sym_enum_declaration] = STATE(1644), [sym_anonymous_enum_declaration] = STATE(1644), [sym_function_declaration] = STATE(1644), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(1644), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(1644), [sym_template_mixin] = STATE(1644), [sym_conditional_declaration] = STATE(1644), [sym_conditional_statement] = STATE(1687), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(1687), [sym_static_foreach_declaration] = STATE(1644), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(1644), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2022), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2024), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [509] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2369), [sym_mixin_declaration] = STATE(2369), [sym__declaration] = STATE(2369), [sym__declaration2] = STATE(2369), [sym_variable_declaration] = STATE(2369), [sym_manifest_constant] = STATE(2369), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2369), [sym_alias_declaration] = STATE(2369), [sym_alias_reassign] = STATE(2369), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2369), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2369), [sym_pragma_statement] = STATE(2191), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2191), [sym__statement_no_case_no_default] = STATE(2191), [sym_labeled_statement] = STATE(2191), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2191), [sym_if_statement] = STATE(2191), [sym_while_statement] = STATE(2191), [sym_do_statement] = STATE(2191), [sym_for_statement] = STATE(2191), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(2191), [sym_switch_statement] = STATE(2191), [sym_case_statement] = STATE(2191), [sym_final_switch_statement] = STATE(2191), [sym_continue_statement] = STATE(2191), [sym_break_statement] = STATE(2191), [sym_return_statement] = STATE(2191), [sym_goto_statement] = STATE(2191), [sym_with_statement] = STATE(2191), [sym_synchronized_statement] = STATE(2191), [sym_try_statement] = STATE(2191), [sym_scope_guard_statement] = STATE(2191), [sym_asm_statement] = STATE(2191), [sym_struct_declaration] = STATE(2369), [sym_union_declaration] = STATE(2369), [sym_postblit] = STATE(2369), [sym_invariant_declaration] = STATE(2369), [sym_class_declaration] = STATE(2369), [sym_constructor] = STATE(2369), [sym_destructor] = STATE(2369), [sym_alias_this] = STATE(2369), [sym_interface_declaration] = STATE(2369), [sym_enum_declaration] = STATE(2369), [sym_anonymous_enum_declaration] = STATE(2369), [sym_function_declaration] = STATE(2369), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2369), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2369), [sym_template_mixin] = STATE(2369), [sym_conditional_declaration] = STATE(2369), [sym_conditional_statement] = STATE(2191), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2191), [sym_static_foreach_declaration] = STATE(2369), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2369), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2014), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(119), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(129), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [510] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(507), [sym_mixin_declaration] = STATE(507), [sym__declaration] = STATE(507), [sym__declaration2] = STATE(507), [sym_variable_declaration] = STATE(507), [sym_manifest_constant] = STATE(507), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(507), [sym_alias_declaration] = STATE(507), [sym_alias_reassign] = STATE(507), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(507), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(507), [sym_pragma_statement] = STATE(507), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(507), [sym_labeled_statement] = STATE(507), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(507), [sym_if_statement] = STATE(507), [sym_while_statement] = STATE(507), [sym_do_statement] = STATE(507), [sym_for_statement] = STATE(507), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(507), [sym_switch_statement] = STATE(507), [sym_final_switch_statement] = STATE(507), [sym_continue_statement] = STATE(507), [sym_break_statement] = STATE(507), [sym_return_statement] = STATE(507), [sym_goto_statement] = STATE(507), [sym_with_statement] = STATE(507), [sym_synchronized_statement] = STATE(507), [sym_try_statement] = STATE(507), [sym_scope_guard_statement] = STATE(507), [sym_asm_statement] = STATE(507), [sym_struct_declaration] = STATE(507), [sym_union_declaration] = STATE(507), [sym_postblit] = STATE(507), [sym_invariant_declaration] = STATE(507), [sym_class_declaration] = STATE(507), [sym_constructor] = STATE(507), [sym_destructor] = STATE(507), [sym_alias_this] = STATE(507), [sym_interface_declaration] = STATE(507), [sym_enum_declaration] = STATE(507), [sym_anonymous_enum_declaration] = STATE(507), [sym_function_declaration] = STATE(507), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(507), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(507), [sym_template_mixin] = STATE(507), [sym_conditional_declaration] = STATE(507), [sym_conditional_statement] = STATE(507), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(507), [sym_static_foreach_declaration] = STATE(507), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(507), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(507), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(636), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(636), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(638), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(638), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [511] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(2369), [sym_mixin_declaration] = STATE(2369), [sym__declaration] = STATE(2369), [sym__declaration2] = STATE(2369), [sym_variable_declaration] = STATE(2369), [sym_manifest_constant] = STATE(2369), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2369), [sym_alias_declaration] = STATE(2369), [sym_alias_reassign] = STATE(2369), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(2369), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2369), [sym_pragma_statement] = STATE(2191), [sym_pragma_expression] = STATE(511), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement] = STATE(2191), [sym__statement_no_case_no_default] = STATE(2191), [sym_labeled_statement] = STATE(2191), [sym_label] = STATE(347), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(2191), [sym_if_statement] = STATE(2191), [sym_while_statement] = STATE(2191), [sym_do_statement] = STATE(2191), [sym_for_statement] = STATE(2191), [sym__foreach] = STATE(8053), [sym_foreach_statement] = STATE(2191), [sym_switch_statement] = STATE(2191), [sym_case_statement] = STATE(2191), [sym_final_switch_statement] = STATE(2191), [sym_continue_statement] = STATE(2191), [sym_break_statement] = STATE(2191), [sym_return_statement] = STATE(2191), [sym_goto_statement] = STATE(2191), [sym_with_statement] = STATE(2191), [sym_synchronized_statement] = STATE(2191), [sym_try_statement] = STATE(2191), [sym_scope_guard_statement] = STATE(2191), [sym_asm_statement] = STATE(2191), [sym_struct_declaration] = STATE(2369), [sym_union_declaration] = STATE(2369), [sym_postblit] = STATE(2369), [sym_invariant_declaration] = STATE(2369), [sym_class_declaration] = STATE(2369), [sym_constructor] = STATE(2369), [sym_destructor] = STATE(2369), [sym_alias_this] = STATE(2369), [sym_interface_declaration] = STATE(2369), [sym_enum_declaration] = STATE(2369), [sym_anonymous_enum_declaration] = STATE(2369), [sym_function_declaration] = STATE(2369), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(2369), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(2369), [sym_template_mixin] = STATE(2369), [sym_conditional_declaration] = STATE(2369), [sym_conditional_statement] = STATE(2191), [sym_condition] = STATE(128), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(2191), [sym_static_foreach_declaration] = STATE(2369), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(2369), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(2014), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2016), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_case] = ACTIONS(938), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_default] = ACTIONS(940), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1344), [sym_for] = ACTIONS(946), [sym_foreach] = ACTIONS(948), [sym_foreach_reverse] = ACTIONS(948), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(950), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1346), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1348), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(1350), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(966), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(968), [sym_with] = ACTIONS(970), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [512] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(507), [sym_mixin_declaration] = STATE(507), [sym__declaration] = STATE(507), [sym__declaration2] = STATE(507), [sym_variable_declaration] = STATE(507), [sym_manifest_constant] = STATE(507), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(507), [sym_alias_declaration] = STATE(507), [sym_alias_reassign] = STATE(507), [sym_type] = STATE(5480), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(507), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(507), [sym_pragma_statement] = STATE(507), [sym_pragma_expression] = STATE(508), [sym_expression_list] = STATE(7764), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3697), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(507), [sym_labeled_statement] = STATE(507), [sym_label] = STATE(192), [sym_block_statement] = STATE(682), [sym_expression_statement] = STATE(507), [sym_if_statement] = STATE(507), [sym_while_statement] = STATE(507), [sym_do_statement] = STATE(507), [sym_for_statement] = STATE(507), [sym__foreach] = STATE(7800), [sym_foreach_statement] = STATE(507), [sym_switch_statement] = STATE(507), [sym_final_switch_statement] = STATE(507), [sym_continue_statement] = STATE(507), [sym_break_statement] = STATE(507), [sym_return_statement] = STATE(507), [sym_goto_statement] = STATE(507), [sym_with_statement] = STATE(507), [sym_synchronized_statement] = STATE(507), [sym_try_statement] = STATE(507), [sym_scope_guard_statement] = STATE(507), [sym_asm_statement] = STATE(507), [sym_struct_declaration] = STATE(507), [sym_union_declaration] = STATE(507), [sym_postblit] = STATE(507), [sym_invariant_declaration] = STATE(507), [sym_class_declaration] = STATE(507), [sym_constructor] = STATE(507), [sym_destructor] = STATE(507), [sym_alias_this] = STATE(507), [sym_interface_declaration] = STATE(507), [sym_enum_declaration] = STATE(507), [sym_anonymous_enum_declaration] = STATE(507), [sym_function_declaration] = STATE(507), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(507), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(507), [sym_template_mixin] = STATE(507), [sym_conditional_declaration] = STATE(507), [sym_conditional_statement] = STATE(507), [sym_condition] = STATE(49), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(1663), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(1663), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(507), [sym_static_foreach_declaration] = STATE(507), [sym_static_assert] = STATE(1663), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(507), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_case_statement_repeat1] = STATE(507), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(251), [anon_sym_LBRACE] = ACTIONS(243), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(251), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2012), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(101), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(107), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(111), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(117), [sym_case] = ACTIONS(267), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(125), [sym_debug] = ACTIONS(127), [sym_default] = ACTIONS(267), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(135), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(141), [sym_for] = ACTIONS(143), [sym_foreach] = ACTIONS(145), [sym_foreach_reverse] = ACTIONS(145), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(149), [sym_if] = ACTIONS(151), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(153), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(163), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(173), [sym_scope] = ACTIONS(175), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(179), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(185), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(191), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(201), [sym_while] = ACTIONS(203), [sym_with] = ACTIONS(205), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [513] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(726), [sym_mixin_declaration] = STATE(726), [sym__declaration2] = STATE(726), [sym_variable_declaration] = STATE(726), [sym_manifest_constant] = STATE(726), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(726), [sym_alias_declaration] = STATE(726), [sym_alias_reassign] = STATE(726), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(726), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(726), [sym_pragma_statement] = STATE(726), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(726), [sym_labeled_statement] = STATE(726), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(726), [sym_if_statement] = STATE(726), [sym_while_statement] = STATE(726), [sym_do_statement] = STATE(726), [sym_for_statement] = STATE(726), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(726), [sym_switch_statement] = STATE(726), [sym_final_switch_statement] = STATE(726), [sym_continue_statement] = STATE(726), [sym_break_statement] = STATE(726), [sym_return_statement] = STATE(726), [sym_goto_statement] = STATE(726), [sym_with_statement] = STATE(726), [sym_synchronized_statement] = STATE(726), [sym_try_statement] = STATE(726), [sym_scope_guard_statement] = STATE(726), [sym_asm_statement] = STATE(726), [sym_struct_declaration] = STATE(726), [sym_union_declaration] = STATE(726), [sym_postblit] = STATE(726), [sym_invariant_declaration] = STATE(726), [sym_class_declaration] = STATE(726), [sym_constructor] = STATE(726), [sym_destructor] = STATE(726), [sym_alias_this] = STATE(726), [sym_interface_declaration] = STATE(726), [sym_enum_declaration] = STATE(726), [sym_anonymous_enum_declaration] = STATE(726), [sym_function_declaration] = STATE(726), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(726), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(726), [sym_template_mixin] = STATE(726), [sym_conditional_declaration] = STATE(726), [sym_conditional_statement] = STATE(726), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(726), [sym_static_foreach_declaration] = STATE(726), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(726), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2076), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [514] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(734), [sym_mixin_declaration] = STATE(734), [sym__declaration2] = STATE(734), [sym_variable_declaration] = STATE(734), [sym_manifest_constant] = STATE(734), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(734), [sym_alias_declaration] = STATE(734), [sym_alias_reassign] = STATE(734), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(734), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(734), [sym_pragma_statement] = STATE(734), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(734), [sym_labeled_statement] = STATE(734), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(734), [sym_if_statement] = STATE(734), [sym_while_statement] = STATE(734), [sym_do_statement] = STATE(734), [sym_for_statement] = STATE(734), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(734), [sym_switch_statement] = STATE(734), [sym_final_switch_statement] = STATE(734), [sym_continue_statement] = STATE(734), [sym_break_statement] = STATE(734), [sym_return_statement] = STATE(734), [sym_goto_statement] = STATE(734), [sym_with_statement] = STATE(734), [sym_synchronized_statement] = STATE(734), [sym_try_statement] = STATE(734), [sym_scope_guard_statement] = STATE(734), [sym_asm_statement] = STATE(734), [sym_struct_declaration] = STATE(734), [sym_union_declaration] = STATE(734), [sym_postblit] = STATE(734), [sym_invariant_declaration] = STATE(734), [sym_class_declaration] = STATE(734), [sym_constructor] = STATE(734), [sym_destructor] = STATE(734), [sym_alias_this] = STATE(734), [sym_interface_declaration] = STATE(734), [sym_enum_declaration] = STATE(734), [sym_anonymous_enum_declaration] = STATE(734), [sym_function_declaration] = STATE(734), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(734), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(734), [sym_template_mixin] = STATE(734), [sym_conditional_declaration] = STATE(734), [sym_conditional_statement] = STATE(734), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(734), [sym_static_foreach_declaration] = STATE(734), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(734), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2080), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [515] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(765), [sym_mixin_declaration] = STATE(765), [sym__declaration2] = STATE(765), [sym_variable_declaration] = STATE(765), [sym_manifest_constant] = STATE(765), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(765), [sym_alias_declaration] = STATE(765), [sym_alias_reassign] = STATE(765), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(765), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(765), [sym_pragma_statement] = STATE(765), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(765), [sym_labeled_statement] = STATE(765), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(765), [sym_if_statement] = STATE(765), [sym_while_statement] = STATE(765), [sym_do_statement] = STATE(765), [sym_for_statement] = STATE(765), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(765), [sym_switch_statement] = STATE(765), [sym_final_switch_statement] = STATE(765), [sym_continue_statement] = STATE(765), [sym_break_statement] = STATE(765), [sym_return_statement] = STATE(765), [sym_goto_statement] = STATE(765), [sym_with_statement] = STATE(765), [sym_synchronized_statement] = STATE(765), [sym_try_statement] = STATE(765), [sym_scope_guard_statement] = STATE(765), [sym_asm_statement] = STATE(765), [sym_struct_declaration] = STATE(765), [sym_union_declaration] = STATE(765), [sym_postblit] = STATE(765), [sym_invariant_declaration] = STATE(765), [sym_class_declaration] = STATE(765), [sym_constructor] = STATE(765), [sym_destructor] = STATE(765), [sym_alias_this] = STATE(765), [sym_interface_declaration] = STATE(765), [sym_enum_declaration] = STATE(765), [sym_anonymous_enum_declaration] = STATE(765), [sym_function_declaration] = STATE(765), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(765), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(765), [sym_template_mixin] = STATE(765), [sym_conditional_declaration] = STATE(765), [sym_conditional_statement] = STATE(765), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(765), [sym_static_foreach_declaration] = STATE(765), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(765), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2082), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [516] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(749), [sym_mixin_declaration] = STATE(749), [sym__declaration2] = STATE(749), [sym_variable_declaration] = STATE(749), [sym_manifest_constant] = STATE(749), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(749), [sym_alias_declaration] = STATE(749), [sym_alias_reassign] = STATE(749), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(749), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(749), [sym_pragma_statement] = STATE(749), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(749), [sym_labeled_statement] = STATE(749), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(749), [sym_if_statement] = STATE(749), [sym_while_statement] = STATE(749), [sym_do_statement] = STATE(749), [sym_for_statement] = STATE(749), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(749), [sym_switch_statement] = STATE(749), [sym_final_switch_statement] = STATE(749), [sym_continue_statement] = STATE(749), [sym_break_statement] = STATE(749), [sym_return_statement] = STATE(749), [sym_goto_statement] = STATE(749), [sym_with_statement] = STATE(749), [sym_synchronized_statement] = STATE(749), [sym_try_statement] = STATE(749), [sym_scope_guard_statement] = STATE(749), [sym_asm_statement] = STATE(749), [sym_struct_declaration] = STATE(749), [sym_union_declaration] = STATE(749), [sym_postblit] = STATE(749), [sym_invariant_declaration] = STATE(749), [sym_class_declaration] = STATE(749), [sym_constructor] = STATE(749), [sym_destructor] = STATE(749), [sym_alias_this] = STATE(749), [sym_interface_declaration] = STATE(749), [sym_enum_declaration] = STATE(749), [sym_anonymous_enum_declaration] = STATE(749), [sym_function_declaration] = STATE(749), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(749), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(749), [sym_template_mixin] = STATE(749), [sym_conditional_declaration] = STATE(749), [sym_conditional_statement] = STATE(749), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(749), [sym_static_foreach_declaration] = STATE(749), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(749), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2084), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [517] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(750), [sym_mixin_declaration] = STATE(750), [sym__declaration2] = STATE(750), [sym_variable_declaration] = STATE(750), [sym_manifest_constant] = STATE(750), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(750), [sym_alias_declaration] = STATE(750), [sym_alias_reassign] = STATE(750), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(750), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(750), [sym_pragma_statement] = STATE(750), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(750), [sym_labeled_statement] = STATE(750), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(750), [sym_if_statement] = STATE(750), [sym_while_statement] = STATE(750), [sym_do_statement] = STATE(750), [sym_for_statement] = STATE(750), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(750), [sym_switch_statement] = STATE(750), [sym_final_switch_statement] = STATE(750), [sym_continue_statement] = STATE(750), [sym_break_statement] = STATE(750), [sym_return_statement] = STATE(750), [sym_goto_statement] = STATE(750), [sym_with_statement] = STATE(750), [sym_synchronized_statement] = STATE(750), [sym_try_statement] = STATE(750), [sym_scope_guard_statement] = STATE(750), [sym_asm_statement] = STATE(750), [sym_struct_declaration] = STATE(750), [sym_union_declaration] = STATE(750), [sym_postblit] = STATE(750), [sym_invariant_declaration] = STATE(750), [sym_class_declaration] = STATE(750), [sym_constructor] = STATE(750), [sym_destructor] = STATE(750), [sym_alias_this] = STATE(750), [sym_interface_declaration] = STATE(750), [sym_enum_declaration] = STATE(750), [sym_anonymous_enum_declaration] = STATE(750), [sym_function_declaration] = STATE(750), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(750), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(750), [sym_template_mixin] = STATE(750), [sym_conditional_declaration] = STATE(750), [sym_conditional_statement] = STATE(750), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(750), [sym_static_foreach_declaration] = STATE(750), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(750), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2086), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [518] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(745), [sym_mixin_declaration] = STATE(745), [sym__declaration2] = STATE(745), [sym_variable_declaration] = STATE(745), [sym_manifest_constant] = STATE(745), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(745), [sym_alias_declaration] = STATE(745), [sym_alias_reassign] = STATE(745), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(745), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(745), [sym_pragma_statement] = STATE(745), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(745), [sym_labeled_statement] = STATE(745), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(745), [sym_if_statement] = STATE(745), [sym_while_statement] = STATE(745), [sym_do_statement] = STATE(745), [sym_for_statement] = STATE(745), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(745), [sym_switch_statement] = STATE(745), [sym_final_switch_statement] = STATE(745), [sym_continue_statement] = STATE(745), [sym_break_statement] = STATE(745), [sym_return_statement] = STATE(745), [sym_goto_statement] = STATE(745), [sym_with_statement] = STATE(745), [sym_synchronized_statement] = STATE(745), [sym_try_statement] = STATE(745), [sym_scope_guard_statement] = STATE(745), [sym_asm_statement] = STATE(745), [sym_struct_declaration] = STATE(745), [sym_union_declaration] = STATE(745), [sym_postblit] = STATE(745), [sym_invariant_declaration] = STATE(745), [sym_class_declaration] = STATE(745), [sym_constructor] = STATE(745), [sym_destructor] = STATE(745), [sym_alias_this] = STATE(745), [sym_interface_declaration] = STATE(745), [sym_enum_declaration] = STATE(745), [sym_anonymous_enum_declaration] = STATE(745), [sym_function_declaration] = STATE(745), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(745), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(745), [sym_template_mixin] = STATE(745), [sym_conditional_declaration] = STATE(745), [sym_conditional_statement] = STATE(745), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(745), [sym_static_foreach_declaration] = STATE(745), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(745), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2088), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [519] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(719), [sym_mixin_declaration] = STATE(719), [sym__declaration2] = STATE(719), [sym_variable_declaration] = STATE(719), [sym_manifest_constant] = STATE(719), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(719), [sym_alias_declaration] = STATE(719), [sym_alias_reassign] = STATE(719), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(719), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(719), [sym_pragma_statement] = STATE(719), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(719), [sym_labeled_statement] = STATE(719), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(719), [sym_if_statement] = STATE(719), [sym_while_statement] = STATE(719), [sym_do_statement] = STATE(719), [sym_for_statement] = STATE(719), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(719), [sym_switch_statement] = STATE(719), [sym_final_switch_statement] = STATE(719), [sym_continue_statement] = STATE(719), [sym_break_statement] = STATE(719), [sym_return_statement] = STATE(719), [sym_goto_statement] = STATE(719), [sym_with_statement] = STATE(719), [sym_synchronized_statement] = STATE(719), [sym_try_statement] = STATE(719), [sym_scope_guard_statement] = STATE(719), [sym_asm_statement] = STATE(719), [sym_struct_declaration] = STATE(719), [sym_union_declaration] = STATE(719), [sym_postblit] = STATE(719), [sym_invariant_declaration] = STATE(719), [sym_class_declaration] = STATE(719), [sym_constructor] = STATE(719), [sym_destructor] = STATE(719), [sym_alias_this] = STATE(719), [sym_interface_declaration] = STATE(719), [sym_enum_declaration] = STATE(719), [sym_anonymous_enum_declaration] = STATE(719), [sym_function_declaration] = STATE(719), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(719), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(719), [sym_template_mixin] = STATE(719), [sym_conditional_declaration] = STATE(719), [sym_conditional_statement] = STATE(719), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(719), [sym_static_foreach_declaration] = STATE(719), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(719), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2090), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [520] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(751), [sym_mixin_declaration] = STATE(751), [sym__declaration2] = STATE(751), [sym_variable_declaration] = STATE(751), [sym_manifest_constant] = STATE(751), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(751), [sym_alias_declaration] = STATE(751), [sym_alias_reassign] = STATE(751), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(751), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(751), [sym_pragma_statement] = STATE(751), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(751), [sym_labeled_statement] = STATE(751), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(751), [sym_if_statement] = STATE(751), [sym_while_statement] = STATE(751), [sym_do_statement] = STATE(751), [sym_for_statement] = STATE(751), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(751), [sym_switch_statement] = STATE(751), [sym_final_switch_statement] = STATE(751), [sym_continue_statement] = STATE(751), [sym_break_statement] = STATE(751), [sym_return_statement] = STATE(751), [sym_goto_statement] = STATE(751), [sym_with_statement] = STATE(751), [sym_synchronized_statement] = STATE(751), [sym_try_statement] = STATE(751), [sym_scope_guard_statement] = STATE(751), [sym_asm_statement] = STATE(751), [sym_struct_declaration] = STATE(751), [sym_union_declaration] = STATE(751), [sym_postblit] = STATE(751), [sym_invariant_declaration] = STATE(751), [sym_class_declaration] = STATE(751), [sym_constructor] = STATE(751), [sym_destructor] = STATE(751), [sym_alias_this] = STATE(751), [sym_interface_declaration] = STATE(751), [sym_enum_declaration] = STATE(751), [sym_anonymous_enum_declaration] = STATE(751), [sym_function_declaration] = STATE(751), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(751), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(751), [sym_template_mixin] = STATE(751), [sym_conditional_declaration] = STATE(751), [sym_conditional_statement] = STATE(751), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(751), [sym_static_foreach_declaration] = STATE(751), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(751), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2092), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [521] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(773), [sym_mixin_declaration] = STATE(773), [sym__declaration2] = STATE(773), [sym_variable_declaration] = STATE(773), [sym_manifest_constant] = STATE(773), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(773), [sym_alias_declaration] = STATE(773), [sym_alias_reassign] = STATE(773), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(773), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(773), [sym_pragma_statement] = STATE(773), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(773), [sym_labeled_statement] = STATE(773), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(773), [sym_if_statement] = STATE(773), [sym_while_statement] = STATE(773), [sym_do_statement] = STATE(773), [sym_for_statement] = STATE(773), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(773), [sym_switch_statement] = STATE(773), [sym_final_switch_statement] = STATE(773), [sym_continue_statement] = STATE(773), [sym_break_statement] = STATE(773), [sym_return_statement] = STATE(773), [sym_goto_statement] = STATE(773), [sym_with_statement] = STATE(773), [sym_synchronized_statement] = STATE(773), [sym_try_statement] = STATE(773), [sym_scope_guard_statement] = STATE(773), [sym_asm_statement] = STATE(773), [sym_struct_declaration] = STATE(773), [sym_union_declaration] = STATE(773), [sym_postblit] = STATE(773), [sym_invariant_declaration] = STATE(773), [sym_class_declaration] = STATE(773), [sym_constructor] = STATE(773), [sym_destructor] = STATE(773), [sym_alias_this] = STATE(773), [sym_interface_declaration] = STATE(773), [sym_enum_declaration] = STATE(773), [sym_anonymous_enum_declaration] = STATE(773), [sym_function_declaration] = STATE(773), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(773), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(773), [sym_template_mixin] = STATE(773), [sym_conditional_declaration] = STATE(773), [sym_conditional_statement] = STATE(773), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(773), [sym_static_foreach_declaration] = STATE(773), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(773), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2094), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [522] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(748), [sym_mixin_declaration] = STATE(748), [sym__declaration2] = STATE(748), [sym_variable_declaration] = STATE(748), [sym_manifest_constant] = STATE(748), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(748), [sym_alias_declaration] = STATE(748), [sym_alias_reassign] = STATE(748), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(748), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(748), [sym_pragma_statement] = STATE(748), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(748), [sym_labeled_statement] = STATE(748), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(748), [sym_if_statement] = STATE(748), [sym_while_statement] = STATE(748), [sym_do_statement] = STATE(748), [sym_for_statement] = STATE(748), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(748), [sym_switch_statement] = STATE(748), [sym_final_switch_statement] = STATE(748), [sym_continue_statement] = STATE(748), [sym_break_statement] = STATE(748), [sym_return_statement] = STATE(748), [sym_goto_statement] = STATE(748), [sym_with_statement] = STATE(748), [sym_synchronized_statement] = STATE(748), [sym_try_statement] = STATE(748), [sym_scope_guard_statement] = STATE(748), [sym_asm_statement] = STATE(748), [sym_struct_declaration] = STATE(748), [sym_union_declaration] = STATE(748), [sym_postblit] = STATE(748), [sym_invariant_declaration] = STATE(748), [sym_class_declaration] = STATE(748), [sym_constructor] = STATE(748), [sym_destructor] = STATE(748), [sym_alias_this] = STATE(748), [sym_interface_declaration] = STATE(748), [sym_enum_declaration] = STATE(748), [sym_anonymous_enum_declaration] = STATE(748), [sym_function_declaration] = STATE(748), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(748), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(748), [sym_template_mixin] = STATE(748), [sym_conditional_declaration] = STATE(748), [sym_conditional_statement] = STATE(748), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(748), [sym_static_foreach_declaration] = STATE(748), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(748), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2096), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [523] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(738), [sym_mixin_declaration] = STATE(738), [sym__declaration2] = STATE(738), [sym_variable_declaration] = STATE(738), [sym_manifest_constant] = STATE(738), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(738), [sym_alias_declaration] = STATE(738), [sym_alias_reassign] = STATE(738), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(738), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(738), [sym_pragma_statement] = STATE(738), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(738), [sym_labeled_statement] = STATE(738), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(738), [sym_if_statement] = STATE(738), [sym_while_statement] = STATE(738), [sym_do_statement] = STATE(738), [sym_for_statement] = STATE(738), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(738), [sym_switch_statement] = STATE(738), [sym_final_switch_statement] = STATE(738), [sym_continue_statement] = STATE(738), [sym_break_statement] = STATE(738), [sym_return_statement] = STATE(738), [sym_goto_statement] = STATE(738), [sym_with_statement] = STATE(738), [sym_synchronized_statement] = STATE(738), [sym_try_statement] = STATE(738), [sym_scope_guard_statement] = STATE(738), [sym_asm_statement] = STATE(738), [sym_struct_declaration] = STATE(738), [sym_union_declaration] = STATE(738), [sym_postblit] = STATE(738), [sym_invariant_declaration] = STATE(738), [sym_class_declaration] = STATE(738), [sym_constructor] = STATE(738), [sym_destructor] = STATE(738), [sym_alias_this] = STATE(738), [sym_interface_declaration] = STATE(738), [sym_enum_declaration] = STATE(738), [sym_anonymous_enum_declaration] = STATE(738), [sym_function_declaration] = STATE(738), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(738), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(738), [sym_template_mixin] = STATE(738), [sym_conditional_declaration] = STATE(738), [sym_conditional_statement] = STATE(738), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(738), [sym_static_foreach_declaration] = STATE(738), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(738), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2098), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [524] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_import_declaration] = STATE(731), [sym_mixin_declaration] = STATE(731), [sym__declaration2] = STATE(731), [sym_variable_declaration] = STATE(731), [sym_manifest_constant] = STATE(731), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(731), [sym_alias_declaration] = STATE(731), [sym_alias_reassign] = STATE(731), [sym_type] = STATE(5464), [sym_type_ctor] = STATE(2964), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_attribute_declaration] = STATE(731), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2165), [sym__attribute] = STATE(2165), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(731), [sym_pragma_statement] = STATE(731), [sym_pragma_expression] = STATE(509), [sym_expression_list] = STATE(7466), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3836), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym__statement_no_case_no_default] = STATE(731), [sym_labeled_statement] = STATE(731), [sym_label] = STATE(419), [sym_block_statement] = STATE(2100), [sym_expression_statement] = STATE(731), [sym_if_statement] = STATE(731), [sym_while_statement] = STATE(731), [sym_do_statement] = STATE(731), [sym_for_statement] = STATE(731), [sym__foreach] = STATE(8043), [sym_foreach_statement] = STATE(731), [sym_switch_statement] = STATE(731), [sym_final_switch_statement] = STATE(731), [sym_continue_statement] = STATE(731), [sym_break_statement] = STATE(731), [sym_return_statement] = STATE(731), [sym_goto_statement] = STATE(731), [sym_with_statement] = STATE(731), [sym_synchronized_statement] = STATE(731), [sym_try_statement] = STATE(731), [sym_scope_guard_statement] = STATE(731), [sym_asm_statement] = STATE(731), [sym_struct_declaration] = STATE(731), [sym_union_declaration] = STATE(731), [sym_postblit] = STATE(731), [sym_invariant_declaration] = STATE(731), [sym_class_declaration] = STATE(731), [sym_constructor] = STATE(731), [sym_destructor] = STATE(731), [sym_alias_this] = STATE(731), [sym_interface_declaration] = STATE(731), [sym_enum_declaration] = STATE(731), [sym_anonymous_enum_declaration] = STATE(731), [sym_function_declaration] = STATE(731), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_declaration] = STATE(731), [sym_template_instance] = STATE(3577), [sym_mixin_template_declaration] = STATE(731), [sym_template_mixin] = STATE(731), [sym_conditional_declaration] = STATE(731), [sym_conditional_statement] = STATE(731), [sym_condition] = STATE(54), [sym_version_condition] = STATE(1772), [sym_version_specification] = STATE(2318), [sym_debug_condition] = STATE(1772), [sym_debug_specification] = STATE(2318), [sym_static_if_condition] = STATE(1772), [sym_static_foreach_statement] = STATE(731), [sym_static_foreach_declaration] = STATE(731), [sym_static_assert] = STATE(2318), [sym_traits_expression] = STATE(3573), [sym_unittest_declaration] = STATE(731), [aux_sym_import_declaration_repeat1] = STATE(2165), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(676), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2100), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(688), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(698), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(710), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(115), [sym_break] = ACTIONS(716), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(726), [sym_debug] = ACTIONS(728), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(736), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(2078), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(1994), [sym_for] = ACTIONS(1234), [sym_foreach] = ACTIONS(1236), [sym_foreach_reverse] = ACTIONS(1236), [sym_function] = ACTIONS(147), [sym_goto] = ACTIONS(756), [sym_if] = ACTIONS(1238), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(760), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(882), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(169), [sym_private] = ACTIONS(2078), [sym_protected] = ACTIONS(2078), [sym_public] = ACTIONS(2078), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(171), [sym_return] = ACTIONS(774), [sym_scope] = ACTIONS(1996), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(1998), [sym_struct] = ACTIONS(788), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(2000), [sym_template] = ACTIONS(796), [sym_throw] = ACTIONS(189), [sym_try] = ACTIONS(1254), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(808), [sym_while] = ACTIONS(1256), [sym_with] = ACTIONS(1258), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [525] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6547), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6547), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2105), [anon_sym_RBRACE] = ACTIONS(2108), [anon_sym_LBRACE] = ACTIONS(2110), [anon_sym_DOT] = ACTIONS(2113), [anon_sym_AMP] = ACTIONS(2116), [anon_sym_DASH] = ACTIONS(2119), [anon_sym_DASH_DASH] = ACTIONS(2116), [anon_sym_PLUS] = ACTIONS(2119), [anon_sym_PLUS_PLUS] = ACTIONS(2116), [anon_sym_BANG] = ACTIONS(2116), [anon_sym_LPAREN] = ACTIONS(2122), [anon_sym_LBRACK] = ACTIONS(2125), [anon_sym_SEMI] = ACTIONS(2108), [anon_sym_DOLLAR] = ACTIONS(2128), [anon_sym_STAR] = ACTIONS(2116), [anon_sym_TILDE] = ACTIONS(2116), [anon_sym_AT] = ACTIONS(2108), [sym_bool] = ACTIONS(2131), [sym_byte] = ACTIONS(2131), [sym_ubyte] = ACTIONS(2131), [sym_char] = ACTIONS(2131), [sym_short] = ACTIONS(2131), [sym_ushort] = ACTIONS(2131), [sym_int] = ACTIONS(2131), [sym_uint] = ACTIONS(2131), [sym_long] = ACTIONS(2131), [sym_ulong] = ACTIONS(2131), [sym_cent] = ACTIONS(2131), [sym_ucent] = ACTIONS(2131), [sym_wchar] = ACTIONS(2131), [sym_dchar] = ACTIONS(2131), [sym_float] = ACTIONS(2131), [sym_double] = ACTIONS(2131), [sym_real] = ACTIONS(2131), [sym_ifloat] = ACTIONS(2131), [sym_idouble] = ACTIONS(2131), [sym_ireal] = ACTIONS(2131), [sym_cfloat] = ACTIONS(2131), [sym_cdouble] = ACTIONS(2131), [sym_creal] = ACTIONS(2131), [sym_size_t] = ACTIONS(2131), [sym_ptrdiff_t] = ACTIONS(2131), [sym_string] = ACTIONS(2131), [sym_cstring] = ACTIONS(2131), [sym_dstring] = ACTIONS(2131), [sym_wstring] = ACTIONS(2131), [sym_noreturn] = ACTIONS(2131), [sym_true] = ACTIONS(2134), [sym_false] = ACTIONS(2134), [sym_null] = ACTIONS(2134), [sym_super] = ACTIONS(2134), [sym_this] = ACTIONS(2134), [sym_abstract] = ACTIONS(2137), [sym_alias] = ACTIONS(2137), [sym_align] = ACTIONS(2137), [sym_asm] = ACTIONS(2137), [sym_assert] = ACTIONS(2139), [sym_auto] = ACTIONS(2142), [sym_break] = ACTIONS(2137), [sym_case] = ACTIONS(2137), [sym_cast] = ACTIONS(2145), [sym_class] = ACTIONS(2137), [sym_const] = ACTIONS(2148), [sym_continue] = ACTIONS(2137), [sym_debug] = ACTIONS(2137), [sym_default] = ACTIONS(2137), [sym_delegate] = ACTIONS(2151), [sym_delete] = ACTIONS(2154), [sym_deprecated] = ACTIONS(2137), [sym_do] = ACTIONS(2157), [sym_enum] = ACTIONS(2137), [sym_export] = ACTIONS(2137), [sym_extern] = ACTIONS(2137), [sym_final] = ACTIONS(2137), [sym_for] = ACTIONS(2137), [sym_foreach] = ACTIONS(2137), [sym_foreach_reverse] = ACTIONS(2137), [sym_function] = ACTIONS(2160), [sym_goto] = ACTIONS(2137), [sym_if] = ACTIONS(2137), [sym_immutable] = ACTIONS(2148), [sym_import] = ACTIONS(2163), [sym_in] = ACTIONS(2166), [sym_inout] = ACTIONS(2148), [sym_interface] = ACTIONS(2137), [sym_invariant] = ACTIONS(2137), [sym_is] = ACTIONS(2169), [sym_mixin] = ACTIONS(2172), [sym_new] = ACTIONS(2175), [sym_nothrow] = ACTIONS(2137), [sym_out] = ACTIONS(2178), [sym_override] = ACTIONS(2137), [sym_package] = ACTIONS(2137), [sym_pragma] = ACTIONS(2137), [sym_private] = ACTIONS(2137), [sym_protected] = ACTIONS(2137), [sym_public] = ACTIONS(2137), [sym_pure] = ACTIONS(2137), [sym_ref] = ACTIONS(2181), [sym_return] = ACTIONS(2137), [sym_scope] = ACTIONS(2137), [sym_shared] = ACTIONS(2148), [sym_static] = ACTIONS(2137), [sym_struct] = ACTIONS(2137), [sym_switch] = ACTIONS(2137), [sym_synchronized] = ACTIONS(2137), [sym_template] = ACTIONS(2137), [sym_throw] = ACTIONS(2184), [sym_try] = ACTIONS(2137), [sym_typeid] = ACTIONS(2187), [sym_typeof] = ACTIONS(2190), [sym_union] = ACTIONS(2137), [sym_unittest] = ACTIONS(2137), [sym_version] = ACTIONS(2137), [sym_while] = ACTIONS(2137), [sym_with] = ACTIONS(2137), [sym_gshared] = ACTIONS(2137), [sym_traits] = ACTIONS(2193), [sym_vector] = ACTIONS(2196), [sym_void] = ACTIONS(2199), [anon_sym_BQUOTE] = ACTIONS(2202), [anon_sym_r_DQUOTE] = ACTIONS(2205), [anon_sym_x_DQUOTE] = ACTIONS(2208), [anon_sym_DQUOTE] = ACTIONS(2211), [anon_sym_i_BQUOTE] = ACTIONS(2214), [anon_sym_i_DQUOTE] = ACTIONS(2217), [anon_sym_iq_LBRACE] = ACTIONS(2220), [aux_sym_char_literal_token1] = ACTIONS(2223), [anon_sym_SQUOTE] = ACTIONS(2226), [anon_sym___DATE__] = ACTIONS(2229), [anon_sym___FILE__] = ACTIONS(2229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2229), [anon_sym___FUNCTION__] = ACTIONS(2229), [anon_sym___LINE__] = ACTIONS(2229), [anon_sym___MODULE__] = ACTIONS(2229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2229), [anon_sym___TIME__] = ACTIONS(2229), [anon_sym___TIMESTAMP__] = ACTIONS(2229), [anon_sym___VENDOR__] = ACTIONS(2229), [anon_sym___VERSION__] = ACTIONS(2229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2232), [sym_float_literal] = ACTIONS(2232), [sym__string] = ACTIONS(2235), }, [526] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2242), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [527] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2276), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [528] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2278), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [529] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(526), [sym__token_no_braces] = STATE(526), [sym_keyword] = STATE(526), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(526), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(526), [sym_string_literal] = STATE(526), [sym_char_literal] = STATE(526), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2280), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2282), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2280), [anon_sym_SLASH_EQ] = ACTIONS(2284), [anon_sym_DOT] = ACTIONS(2280), [anon_sym_DOT_DOT] = ACTIONS(2280), [anon_sym_DOT_DOT_DOT] = ACTIONS(2284), [anon_sym_AMP] = ACTIONS(2280), [anon_sym_AMP_EQ] = ACTIONS(2284), [anon_sym_AMP_AMP] = ACTIONS(2284), [anon_sym_PIPE] = ACTIONS(2280), [anon_sym_PIPE_EQ] = ACTIONS(2284), [anon_sym_PIPE_PIPE] = ACTIONS(2284), [anon_sym_DASH] = ACTIONS(2280), [anon_sym_DASH_EQ] = ACTIONS(2284), [anon_sym_DASH_DASH] = ACTIONS(2284), [anon_sym_PLUS] = ACTIONS(2280), [anon_sym_PLUS_EQ] = ACTIONS(2284), [anon_sym_PLUS_PLUS] = ACTIONS(2284), [anon_sym_LT] = ACTIONS(2280), [anon_sym_LT_EQ] = ACTIONS(2284), [anon_sym_LT_LT] = ACTIONS(2280), [anon_sym_LT_LT_EQ] = ACTIONS(2284), [anon_sym_GT] = ACTIONS(2280), [anon_sym_GT_EQ] = ACTIONS(2284), [anon_sym_GT_GT_EQ] = ACTIONS(2284), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2284), [anon_sym_GT_GT] = ACTIONS(2280), [anon_sym_GT_GT_GT] = ACTIONS(2280), [anon_sym_BANG] = ACTIONS(2280), [anon_sym_BANG_EQ] = ACTIONS(2284), [anon_sym_LPAREN] = ACTIONS(2284), [anon_sym_RPAREN] = ACTIONS(2284), [anon_sym_LBRACK] = ACTIONS(2284), [anon_sym_RBRACK] = ACTIONS(2284), [anon_sym_QMARK] = ACTIONS(2284), [anon_sym_COMMA] = ACTIONS(2284), [anon_sym_SEMI] = ACTIONS(2284), [anon_sym_COLON] = ACTIONS(2284), [anon_sym_DOLLAR] = ACTIONS(2280), [anon_sym_EQ] = ACTIONS(2280), [anon_sym_EQ_EQ] = ACTIONS(2284), [anon_sym_STAR] = ACTIONS(2280), [anon_sym_STAR_EQ] = ACTIONS(2284), [anon_sym_PERCENT] = ACTIONS(2280), [anon_sym_PERCENT_EQ] = ACTIONS(2284), [anon_sym_CARET] = ACTIONS(2280), [anon_sym_CARET_EQ] = ACTIONS(2284), [anon_sym_CARET_CARET] = ACTIONS(2280), [anon_sym_CARET_CARET_EQ] = ACTIONS(2284), [anon_sym_TILDE] = ACTIONS(2280), [anon_sym_TILDE_EQ] = ACTIONS(2284), [anon_sym_AT] = ACTIONS(2284), [anon_sym_EQ_GT] = ACTIONS(2284), [anon_sym_POUND] = ACTIONS(2284), [anon_sym_BANGin] = ACTIONS(2284), [anon_sym_BANGis] = ACTIONS(2284), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2284), [sym_float_literal] = ACTIONS(2284), [sym__string] = ACTIONS(2274), }, [530] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(540), [sym__token_no_braces] = STATE(540), [sym_keyword] = STATE(540), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(540), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(540), [sym_string_literal] = STATE(540), [sym_char_literal] = STATE(540), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2286), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2288), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2286), [anon_sym_SLASH_EQ] = ACTIONS(2290), [anon_sym_DOT] = ACTIONS(2286), [anon_sym_DOT_DOT] = ACTIONS(2286), [anon_sym_DOT_DOT_DOT] = ACTIONS(2290), [anon_sym_AMP] = ACTIONS(2286), [anon_sym_AMP_EQ] = ACTIONS(2290), [anon_sym_AMP_AMP] = ACTIONS(2290), [anon_sym_PIPE] = ACTIONS(2286), [anon_sym_PIPE_EQ] = ACTIONS(2290), [anon_sym_PIPE_PIPE] = ACTIONS(2290), [anon_sym_DASH] = ACTIONS(2286), [anon_sym_DASH_EQ] = ACTIONS(2290), [anon_sym_DASH_DASH] = ACTIONS(2290), [anon_sym_PLUS] = ACTIONS(2286), [anon_sym_PLUS_EQ] = ACTIONS(2290), [anon_sym_PLUS_PLUS] = ACTIONS(2290), [anon_sym_LT] = ACTIONS(2286), [anon_sym_LT_EQ] = ACTIONS(2290), [anon_sym_LT_LT] = ACTIONS(2286), [anon_sym_LT_LT_EQ] = ACTIONS(2290), [anon_sym_GT] = ACTIONS(2286), [anon_sym_GT_EQ] = ACTIONS(2290), [anon_sym_GT_GT_EQ] = ACTIONS(2290), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2290), [anon_sym_GT_GT] = ACTIONS(2286), [anon_sym_GT_GT_GT] = ACTIONS(2286), [anon_sym_BANG] = ACTIONS(2286), [anon_sym_BANG_EQ] = ACTIONS(2290), [anon_sym_LPAREN] = ACTIONS(2290), [anon_sym_RPAREN] = ACTIONS(2290), [anon_sym_LBRACK] = ACTIONS(2290), [anon_sym_RBRACK] = ACTIONS(2290), [anon_sym_QMARK] = ACTIONS(2290), [anon_sym_COMMA] = ACTIONS(2290), [anon_sym_SEMI] = ACTIONS(2290), [anon_sym_COLON] = ACTIONS(2290), [anon_sym_DOLLAR] = ACTIONS(2286), [anon_sym_EQ] = ACTIONS(2286), [anon_sym_EQ_EQ] = ACTIONS(2290), [anon_sym_STAR] = ACTIONS(2286), [anon_sym_STAR_EQ] = ACTIONS(2290), [anon_sym_PERCENT] = ACTIONS(2286), [anon_sym_PERCENT_EQ] = ACTIONS(2290), [anon_sym_CARET] = ACTIONS(2286), [anon_sym_CARET_EQ] = ACTIONS(2290), [anon_sym_CARET_CARET] = ACTIONS(2286), [anon_sym_CARET_CARET_EQ] = ACTIONS(2290), [anon_sym_TILDE] = ACTIONS(2286), [anon_sym_TILDE_EQ] = ACTIONS(2290), [anon_sym_AT] = ACTIONS(2290), [anon_sym_EQ_GT] = ACTIONS(2290), [anon_sym_POUND] = ACTIONS(2290), [anon_sym_BANGin] = ACTIONS(2290), [anon_sym_BANGis] = ACTIONS(2290), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2290), [sym_float_literal] = ACTIONS(2290), [sym__string] = ACTIONS(2274), }, [531] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(528), [sym__token_no_braces] = STATE(528), [sym_keyword] = STATE(528), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(528), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(528), [sym_string_literal] = STATE(528), [sym_char_literal] = STATE(528), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2292), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2294), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2292), [anon_sym_SLASH_EQ] = ACTIONS(2296), [anon_sym_DOT] = ACTIONS(2292), [anon_sym_DOT_DOT] = ACTIONS(2292), [anon_sym_DOT_DOT_DOT] = ACTIONS(2296), [anon_sym_AMP] = ACTIONS(2292), [anon_sym_AMP_EQ] = ACTIONS(2296), [anon_sym_AMP_AMP] = ACTIONS(2296), [anon_sym_PIPE] = ACTIONS(2292), [anon_sym_PIPE_EQ] = ACTIONS(2296), [anon_sym_PIPE_PIPE] = ACTIONS(2296), [anon_sym_DASH] = ACTIONS(2292), [anon_sym_DASH_EQ] = ACTIONS(2296), [anon_sym_DASH_DASH] = ACTIONS(2296), [anon_sym_PLUS] = ACTIONS(2292), [anon_sym_PLUS_EQ] = ACTIONS(2296), [anon_sym_PLUS_PLUS] = ACTIONS(2296), [anon_sym_LT] = ACTIONS(2292), [anon_sym_LT_EQ] = ACTIONS(2296), [anon_sym_LT_LT] = ACTIONS(2292), [anon_sym_LT_LT_EQ] = ACTIONS(2296), [anon_sym_GT] = ACTIONS(2292), [anon_sym_GT_EQ] = ACTIONS(2296), [anon_sym_GT_GT_EQ] = ACTIONS(2296), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2296), [anon_sym_GT_GT] = ACTIONS(2292), [anon_sym_GT_GT_GT] = ACTIONS(2292), [anon_sym_BANG] = ACTIONS(2292), [anon_sym_BANG_EQ] = ACTIONS(2296), [anon_sym_LPAREN] = ACTIONS(2296), [anon_sym_RPAREN] = ACTIONS(2296), [anon_sym_LBRACK] = ACTIONS(2296), [anon_sym_RBRACK] = ACTIONS(2296), [anon_sym_QMARK] = ACTIONS(2296), [anon_sym_COMMA] = ACTIONS(2296), [anon_sym_SEMI] = ACTIONS(2296), [anon_sym_COLON] = ACTIONS(2296), [anon_sym_DOLLAR] = ACTIONS(2292), [anon_sym_EQ] = ACTIONS(2292), [anon_sym_EQ_EQ] = ACTIONS(2296), [anon_sym_STAR] = ACTIONS(2292), [anon_sym_STAR_EQ] = ACTIONS(2296), [anon_sym_PERCENT] = ACTIONS(2292), [anon_sym_PERCENT_EQ] = ACTIONS(2296), [anon_sym_CARET] = ACTIONS(2292), [anon_sym_CARET_EQ] = ACTIONS(2296), [anon_sym_CARET_CARET] = ACTIONS(2292), [anon_sym_CARET_CARET_EQ] = ACTIONS(2296), [anon_sym_TILDE] = ACTIONS(2292), [anon_sym_TILDE_EQ] = ACTIONS(2296), [anon_sym_AT] = ACTIONS(2296), [anon_sym_EQ_GT] = ACTIONS(2296), [anon_sym_POUND] = ACTIONS(2296), [anon_sym_BANGin] = ACTIONS(2296), [anon_sym_BANGis] = ACTIONS(2296), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2296), [sym_float_literal] = ACTIONS(2296), [sym__string] = ACTIONS(2274), }, [532] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(549), [sym__token_no_braces] = STATE(549), [sym_keyword] = STATE(549), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(549), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(549), [sym_string_literal] = STATE(549), [sym_char_literal] = STATE(549), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2298), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2300), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2298), [anon_sym_SLASH_EQ] = ACTIONS(2302), [anon_sym_DOT] = ACTIONS(2298), [anon_sym_DOT_DOT] = ACTIONS(2298), [anon_sym_DOT_DOT_DOT] = ACTIONS(2302), [anon_sym_AMP] = ACTIONS(2298), [anon_sym_AMP_EQ] = ACTIONS(2302), [anon_sym_AMP_AMP] = ACTIONS(2302), [anon_sym_PIPE] = ACTIONS(2298), [anon_sym_PIPE_EQ] = ACTIONS(2302), [anon_sym_PIPE_PIPE] = ACTIONS(2302), [anon_sym_DASH] = ACTIONS(2298), [anon_sym_DASH_EQ] = ACTIONS(2302), [anon_sym_DASH_DASH] = ACTIONS(2302), [anon_sym_PLUS] = ACTIONS(2298), [anon_sym_PLUS_EQ] = ACTIONS(2302), [anon_sym_PLUS_PLUS] = ACTIONS(2302), [anon_sym_LT] = ACTIONS(2298), [anon_sym_LT_EQ] = ACTIONS(2302), [anon_sym_LT_LT] = ACTIONS(2298), [anon_sym_LT_LT_EQ] = ACTIONS(2302), [anon_sym_GT] = ACTIONS(2298), [anon_sym_GT_EQ] = ACTIONS(2302), [anon_sym_GT_GT_EQ] = ACTIONS(2302), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2302), [anon_sym_GT_GT] = ACTIONS(2298), [anon_sym_GT_GT_GT] = ACTIONS(2298), [anon_sym_BANG] = ACTIONS(2298), [anon_sym_BANG_EQ] = ACTIONS(2302), [anon_sym_LPAREN] = ACTIONS(2302), [anon_sym_RPAREN] = ACTIONS(2302), [anon_sym_LBRACK] = ACTIONS(2302), [anon_sym_RBRACK] = ACTIONS(2302), [anon_sym_QMARK] = ACTIONS(2302), [anon_sym_COMMA] = ACTIONS(2302), [anon_sym_SEMI] = ACTIONS(2302), [anon_sym_COLON] = ACTIONS(2302), [anon_sym_DOLLAR] = ACTIONS(2298), [anon_sym_EQ] = ACTIONS(2298), [anon_sym_EQ_EQ] = ACTIONS(2302), [anon_sym_STAR] = ACTIONS(2298), [anon_sym_STAR_EQ] = ACTIONS(2302), [anon_sym_PERCENT] = ACTIONS(2298), [anon_sym_PERCENT_EQ] = ACTIONS(2302), [anon_sym_CARET] = ACTIONS(2298), [anon_sym_CARET_EQ] = ACTIONS(2302), [anon_sym_CARET_CARET] = ACTIONS(2298), [anon_sym_CARET_CARET_EQ] = ACTIONS(2302), [anon_sym_TILDE] = ACTIONS(2298), [anon_sym_TILDE_EQ] = ACTIONS(2302), [anon_sym_AT] = ACTIONS(2302), [anon_sym_EQ_GT] = ACTIONS(2302), [anon_sym_POUND] = ACTIONS(2302), [anon_sym_BANGin] = ACTIONS(2302), [anon_sym_BANGis] = ACTIONS(2302), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2302), [sym_float_literal] = ACTIONS(2302), [sym__string] = ACTIONS(2274), }, [533] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2304), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [534] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(537), [sym__token_no_braces] = STATE(537), [sym_keyword] = STATE(537), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(537), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(537), [sym_string_literal] = STATE(537), [sym_char_literal] = STATE(537), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2306), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2308), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2306), [anon_sym_SLASH_EQ] = ACTIONS(2310), [anon_sym_DOT] = ACTIONS(2306), [anon_sym_DOT_DOT] = ACTIONS(2306), [anon_sym_DOT_DOT_DOT] = ACTIONS(2310), [anon_sym_AMP] = ACTIONS(2306), [anon_sym_AMP_EQ] = ACTIONS(2310), [anon_sym_AMP_AMP] = ACTIONS(2310), [anon_sym_PIPE] = ACTIONS(2306), [anon_sym_PIPE_EQ] = ACTIONS(2310), [anon_sym_PIPE_PIPE] = ACTIONS(2310), [anon_sym_DASH] = ACTIONS(2306), [anon_sym_DASH_EQ] = ACTIONS(2310), [anon_sym_DASH_DASH] = ACTIONS(2310), [anon_sym_PLUS] = ACTIONS(2306), [anon_sym_PLUS_EQ] = ACTIONS(2310), [anon_sym_PLUS_PLUS] = ACTIONS(2310), [anon_sym_LT] = ACTIONS(2306), [anon_sym_LT_EQ] = ACTIONS(2310), [anon_sym_LT_LT] = ACTIONS(2306), [anon_sym_LT_LT_EQ] = ACTIONS(2310), [anon_sym_GT] = ACTIONS(2306), [anon_sym_GT_EQ] = ACTIONS(2310), [anon_sym_GT_GT_EQ] = ACTIONS(2310), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2310), [anon_sym_GT_GT] = ACTIONS(2306), [anon_sym_GT_GT_GT] = ACTIONS(2306), [anon_sym_BANG] = ACTIONS(2306), [anon_sym_BANG_EQ] = ACTIONS(2310), [anon_sym_LPAREN] = ACTIONS(2310), [anon_sym_RPAREN] = ACTIONS(2310), [anon_sym_LBRACK] = ACTIONS(2310), [anon_sym_RBRACK] = ACTIONS(2310), [anon_sym_QMARK] = ACTIONS(2310), [anon_sym_COMMA] = ACTIONS(2310), [anon_sym_SEMI] = ACTIONS(2310), [anon_sym_COLON] = ACTIONS(2310), [anon_sym_DOLLAR] = ACTIONS(2306), [anon_sym_EQ] = ACTIONS(2306), [anon_sym_EQ_EQ] = ACTIONS(2310), [anon_sym_STAR] = ACTIONS(2306), [anon_sym_STAR_EQ] = ACTIONS(2310), [anon_sym_PERCENT] = ACTIONS(2306), [anon_sym_PERCENT_EQ] = ACTIONS(2310), [anon_sym_CARET] = ACTIONS(2306), [anon_sym_CARET_EQ] = ACTIONS(2310), [anon_sym_CARET_CARET] = ACTIONS(2306), [anon_sym_CARET_CARET_EQ] = ACTIONS(2310), [anon_sym_TILDE] = ACTIONS(2306), [anon_sym_TILDE_EQ] = ACTIONS(2310), [anon_sym_AT] = ACTIONS(2310), [anon_sym_EQ_GT] = ACTIONS(2310), [anon_sym_POUND] = ACTIONS(2310), [anon_sym_BANGin] = ACTIONS(2310), [anon_sym_BANGis] = ACTIONS(2310), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2310), [sym_float_literal] = ACTIONS(2310), [sym__string] = ACTIONS(2274), }, [535] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(533), [sym__token_no_braces] = STATE(533), [sym_keyword] = STATE(533), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(533), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(533), [sym_string_literal] = STATE(533), [sym_char_literal] = STATE(533), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2312), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2314), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2312), [anon_sym_SLASH_EQ] = ACTIONS(2316), [anon_sym_DOT] = ACTIONS(2312), [anon_sym_DOT_DOT] = ACTIONS(2312), [anon_sym_DOT_DOT_DOT] = ACTIONS(2316), [anon_sym_AMP] = ACTIONS(2312), [anon_sym_AMP_EQ] = ACTIONS(2316), [anon_sym_AMP_AMP] = ACTIONS(2316), [anon_sym_PIPE] = ACTIONS(2312), [anon_sym_PIPE_EQ] = ACTIONS(2316), [anon_sym_PIPE_PIPE] = ACTIONS(2316), [anon_sym_DASH] = ACTIONS(2312), [anon_sym_DASH_EQ] = ACTIONS(2316), [anon_sym_DASH_DASH] = ACTIONS(2316), [anon_sym_PLUS] = ACTIONS(2312), [anon_sym_PLUS_EQ] = ACTIONS(2316), [anon_sym_PLUS_PLUS] = ACTIONS(2316), [anon_sym_LT] = ACTIONS(2312), [anon_sym_LT_EQ] = ACTIONS(2316), [anon_sym_LT_LT] = ACTIONS(2312), [anon_sym_LT_LT_EQ] = ACTIONS(2316), [anon_sym_GT] = ACTIONS(2312), [anon_sym_GT_EQ] = ACTIONS(2316), [anon_sym_GT_GT_EQ] = ACTIONS(2316), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2316), [anon_sym_GT_GT] = ACTIONS(2312), [anon_sym_GT_GT_GT] = ACTIONS(2312), [anon_sym_BANG] = ACTIONS(2312), [anon_sym_BANG_EQ] = ACTIONS(2316), [anon_sym_LPAREN] = ACTIONS(2316), [anon_sym_RPAREN] = ACTIONS(2316), [anon_sym_LBRACK] = ACTIONS(2316), [anon_sym_RBRACK] = ACTIONS(2316), [anon_sym_QMARK] = ACTIONS(2316), [anon_sym_COMMA] = ACTIONS(2316), [anon_sym_SEMI] = ACTIONS(2316), [anon_sym_COLON] = ACTIONS(2316), [anon_sym_DOLLAR] = ACTIONS(2312), [anon_sym_EQ] = ACTIONS(2312), [anon_sym_EQ_EQ] = ACTIONS(2316), [anon_sym_STAR] = ACTIONS(2312), [anon_sym_STAR_EQ] = ACTIONS(2316), [anon_sym_PERCENT] = ACTIONS(2312), [anon_sym_PERCENT_EQ] = ACTIONS(2316), [anon_sym_CARET] = ACTIONS(2312), [anon_sym_CARET_EQ] = ACTIONS(2316), [anon_sym_CARET_CARET] = ACTIONS(2312), [anon_sym_CARET_CARET_EQ] = ACTIONS(2316), [anon_sym_TILDE] = ACTIONS(2312), [anon_sym_TILDE_EQ] = ACTIONS(2316), [anon_sym_AT] = ACTIONS(2316), [anon_sym_EQ_GT] = ACTIONS(2316), [anon_sym_POUND] = ACTIONS(2316), [anon_sym_BANGin] = ACTIONS(2316), [anon_sym_BANGis] = ACTIONS(2316), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2316), [sym_float_literal] = ACTIONS(2316), [sym__string] = ACTIONS(2274), }, [536] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(539), [sym__token_no_braces] = STATE(539), [sym_keyword] = STATE(539), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(539), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(539), [sym_string_literal] = STATE(539), [sym_char_literal] = STATE(539), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2318), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2320), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2318), [anon_sym_SLASH_EQ] = ACTIONS(2322), [anon_sym_DOT] = ACTIONS(2318), [anon_sym_DOT_DOT] = ACTIONS(2318), [anon_sym_DOT_DOT_DOT] = ACTIONS(2322), [anon_sym_AMP] = ACTIONS(2318), [anon_sym_AMP_EQ] = ACTIONS(2322), [anon_sym_AMP_AMP] = ACTIONS(2322), [anon_sym_PIPE] = ACTIONS(2318), [anon_sym_PIPE_EQ] = ACTIONS(2322), [anon_sym_PIPE_PIPE] = ACTIONS(2322), [anon_sym_DASH] = ACTIONS(2318), [anon_sym_DASH_EQ] = ACTIONS(2322), [anon_sym_DASH_DASH] = ACTIONS(2322), [anon_sym_PLUS] = ACTIONS(2318), [anon_sym_PLUS_EQ] = ACTIONS(2322), [anon_sym_PLUS_PLUS] = ACTIONS(2322), [anon_sym_LT] = ACTIONS(2318), [anon_sym_LT_EQ] = ACTIONS(2322), [anon_sym_LT_LT] = ACTIONS(2318), [anon_sym_LT_LT_EQ] = ACTIONS(2322), [anon_sym_GT] = ACTIONS(2318), [anon_sym_GT_EQ] = ACTIONS(2322), [anon_sym_GT_GT_EQ] = ACTIONS(2322), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2322), [anon_sym_GT_GT] = ACTIONS(2318), [anon_sym_GT_GT_GT] = ACTIONS(2318), [anon_sym_BANG] = ACTIONS(2318), [anon_sym_BANG_EQ] = ACTIONS(2322), [anon_sym_LPAREN] = ACTIONS(2322), [anon_sym_RPAREN] = ACTIONS(2322), [anon_sym_LBRACK] = ACTIONS(2322), [anon_sym_RBRACK] = ACTIONS(2322), [anon_sym_QMARK] = ACTIONS(2322), [anon_sym_COMMA] = ACTIONS(2322), [anon_sym_SEMI] = ACTIONS(2322), [anon_sym_COLON] = ACTIONS(2322), [anon_sym_DOLLAR] = ACTIONS(2318), [anon_sym_EQ] = ACTIONS(2318), [anon_sym_EQ_EQ] = ACTIONS(2322), [anon_sym_STAR] = ACTIONS(2318), [anon_sym_STAR_EQ] = ACTIONS(2322), [anon_sym_PERCENT] = ACTIONS(2318), [anon_sym_PERCENT_EQ] = ACTIONS(2322), [anon_sym_CARET] = ACTIONS(2318), [anon_sym_CARET_EQ] = ACTIONS(2322), [anon_sym_CARET_CARET] = ACTIONS(2318), [anon_sym_CARET_CARET_EQ] = ACTIONS(2322), [anon_sym_TILDE] = ACTIONS(2318), [anon_sym_TILDE_EQ] = ACTIONS(2322), [anon_sym_AT] = ACTIONS(2322), [anon_sym_EQ_GT] = ACTIONS(2322), [anon_sym_POUND] = ACTIONS(2322), [anon_sym_BANGin] = ACTIONS(2322), [anon_sym_BANGis] = ACTIONS(2322), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2322), [sym_float_literal] = ACTIONS(2322), [sym__string] = ACTIONS(2274), }, [537] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2324), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [538] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2326), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [539] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2328), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [540] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2330), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [541] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(538), [sym__token_no_braces] = STATE(538), [sym_keyword] = STATE(538), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(538), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(538), [sym_string_literal] = STATE(538), [sym_char_literal] = STATE(538), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2332), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2334), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2332), [anon_sym_SLASH_EQ] = ACTIONS(2336), [anon_sym_DOT] = ACTIONS(2332), [anon_sym_DOT_DOT] = ACTIONS(2332), [anon_sym_DOT_DOT_DOT] = ACTIONS(2336), [anon_sym_AMP] = ACTIONS(2332), [anon_sym_AMP_EQ] = ACTIONS(2336), [anon_sym_AMP_AMP] = ACTIONS(2336), [anon_sym_PIPE] = ACTIONS(2332), [anon_sym_PIPE_EQ] = ACTIONS(2336), [anon_sym_PIPE_PIPE] = ACTIONS(2336), [anon_sym_DASH] = ACTIONS(2332), [anon_sym_DASH_EQ] = ACTIONS(2336), [anon_sym_DASH_DASH] = ACTIONS(2336), [anon_sym_PLUS] = ACTIONS(2332), [anon_sym_PLUS_EQ] = ACTIONS(2336), [anon_sym_PLUS_PLUS] = ACTIONS(2336), [anon_sym_LT] = ACTIONS(2332), [anon_sym_LT_EQ] = ACTIONS(2336), [anon_sym_LT_LT] = ACTIONS(2332), [anon_sym_LT_LT_EQ] = ACTIONS(2336), [anon_sym_GT] = ACTIONS(2332), [anon_sym_GT_EQ] = ACTIONS(2336), [anon_sym_GT_GT_EQ] = ACTIONS(2336), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2336), [anon_sym_GT_GT] = ACTIONS(2332), [anon_sym_GT_GT_GT] = ACTIONS(2332), [anon_sym_BANG] = ACTIONS(2332), [anon_sym_BANG_EQ] = ACTIONS(2336), [anon_sym_LPAREN] = ACTIONS(2336), [anon_sym_RPAREN] = ACTIONS(2336), [anon_sym_LBRACK] = ACTIONS(2336), [anon_sym_RBRACK] = ACTIONS(2336), [anon_sym_QMARK] = ACTIONS(2336), [anon_sym_COMMA] = ACTIONS(2336), [anon_sym_SEMI] = ACTIONS(2336), [anon_sym_COLON] = ACTIONS(2336), [anon_sym_DOLLAR] = ACTIONS(2332), [anon_sym_EQ] = ACTIONS(2332), [anon_sym_EQ_EQ] = ACTIONS(2336), [anon_sym_STAR] = ACTIONS(2332), [anon_sym_STAR_EQ] = ACTIONS(2336), [anon_sym_PERCENT] = ACTIONS(2332), [anon_sym_PERCENT_EQ] = ACTIONS(2336), [anon_sym_CARET] = ACTIONS(2332), [anon_sym_CARET_EQ] = ACTIONS(2336), [anon_sym_CARET_CARET] = ACTIONS(2332), [anon_sym_CARET_CARET_EQ] = ACTIONS(2336), [anon_sym_TILDE] = ACTIONS(2332), [anon_sym_TILDE_EQ] = ACTIONS(2336), [anon_sym_AT] = ACTIONS(2336), [anon_sym_EQ_GT] = ACTIONS(2336), [anon_sym_POUND] = ACTIONS(2336), [anon_sym_BANGin] = ACTIONS(2336), [anon_sym_BANGis] = ACTIONS(2336), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2336), [sym_float_literal] = ACTIONS(2336), [sym__string] = ACTIONS(2274), }, [542] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(545), [sym__token_no_braces] = STATE(545), [sym_keyword] = STATE(545), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(545), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(545), [sym_string_literal] = STATE(545), [sym_char_literal] = STATE(545), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2338), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2340), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2338), [anon_sym_SLASH_EQ] = ACTIONS(2342), [anon_sym_DOT] = ACTIONS(2338), [anon_sym_DOT_DOT] = ACTIONS(2338), [anon_sym_DOT_DOT_DOT] = ACTIONS(2342), [anon_sym_AMP] = ACTIONS(2338), [anon_sym_AMP_EQ] = ACTIONS(2342), [anon_sym_AMP_AMP] = ACTIONS(2342), [anon_sym_PIPE] = ACTIONS(2338), [anon_sym_PIPE_EQ] = ACTIONS(2342), [anon_sym_PIPE_PIPE] = ACTIONS(2342), [anon_sym_DASH] = ACTIONS(2338), [anon_sym_DASH_EQ] = ACTIONS(2342), [anon_sym_DASH_DASH] = ACTIONS(2342), [anon_sym_PLUS] = ACTIONS(2338), [anon_sym_PLUS_EQ] = ACTIONS(2342), [anon_sym_PLUS_PLUS] = ACTIONS(2342), [anon_sym_LT] = ACTIONS(2338), [anon_sym_LT_EQ] = ACTIONS(2342), [anon_sym_LT_LT] = ACTIONS(2338), [anon_sym_LT_LT_EQ] = ACTIONS(2342), [anon_sym_GT] = ACTIONS(2338), [anon_sym_GT_EQ] = ACTIONS(2342), [anon_sym_GT_GT_EQ] = ACTIONS(2342), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2342), [anon_sym_GT_GT] = ACTIONS(2338), [anon_sym_GT_GT_GT] = ACTIONS(2338), [anon_sym_BANG] = ACTIONS(2338), [anon_sym_BANG_EQ] = ACTIONS(2342), [anon_sym_LPAREN] = ACTIONS(2342), [anon_sym_RPAREN] = ACTIONS(2342), [anon_sym_LBRACK] = ACTIONS(2342), [anon_sym_RBRACK] = ACTIONS(2342), [anon_sym_QMARK] = ACTIONS(2342), [anon_sym_COMMA] = ACTIONS(2342), [anon_sym_SEMI] = ACTIONS(2342), [anon_sym_COLON] = ACTIONS(2342), [anon_sym_DOLLAR] = ACTIONS(2338), [anon_sym_EQ] = ACTIONS(2338), [anon_sym_EQ_EQ] = ACTIONS(2342), [anon_sym_STAR] = ACTIONS(2338), [anon_sym_STAR_EQ] = ACTIONS(2342), [anon_sym_PERCENT] = ACTIONS(2338), [anon_sym_PERCENT_EQ] = ACTIONS(2342), [anon_sym_CARET] = ACTIONS(2338), [anon_sym_CARET_EQ] = ACTIONS(2342), [anon_sym_CARET_CARET] = ACTIONS(2338), [anon_sym_CARET_CARET_EQ] = ACTIONS(2342), [anon_sym_TILDE] = ACTIONS(2338), [anon_sym_TILDE_EQ] = ACTIONS(2342), [anon_sym_AT] = ACTIONS(2342), [anon_sym_EQ_GT] = ACTIONS(2342), [anon_sym_POUND] = ACTIONS(2342), [anon_sym_BANGin] = ACTIONS(2342), [anon_sym_BANGis] = ACTIONS(2342), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2342), [sym_float_literal] = ACTIONS(2342), [sym__string] = ACTIONS(2274), }, [543] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(527), [sym__token_no_braces] = STATE(527), [sym_keyword] = STATE(527), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(527), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(527), [sym_string_literal] = STATE(527), [sym_char_literal] = STATE(527), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2344), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2346), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2344), [anon_sym_SLASH_EQ] = ACTIONS(2348), [anon_sym_DOT] = ACTIONS(2344), [anon_sym_DOT_DOT] = ACTIONS(2344), [anon_sym_DOT_DOT_DOT] = ACTIONS(2348), [anon_sym_AMP] = ACTIONS(2344), [anon_sym_AMP_EQ] = ACTIONS(2348), [anon_sym_AMP_AMP] = ACTIONS(2348), [anon_sym_PIPE] = ACTIONS(2344), [anon_sym_PIPE_EQ] = ACTIONS(2348), [anon_sym_PIPE_PIPE] = ACTIONS(2348), [anon_sym_DASH] = ACTIONS(2344), [anon_sym_DASH_EQ] = ACTIONS(2348), [anon_sym_DASH_DASH] = ACTIONS(2348), [anon_sym_PLUS] = ACTIONS(2344), [anon_sym_PLUS_EQ] = ACTIONS(2348), [anon_sym_PLUS_PLUS] = ACTIONS(2348), [anon_sym_LT] = ACTIONS(2344), [anon_sym_LT_EQ] = ACTIONS(2348), [anon_sym_LT_LT] = ACTIONS(2344), [anon_sym_LT_LT_EQ] = ACTIONS(2348), [anon_sym_GT] = ACTIONS(2344), [anon_sym_GT_EQ] = ACTIONS(2348), [anon_sym_GT_GT_EQ] = ACTIONS(2348), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2348), [anon_sym_GT_GT] = ACTIONS(2344), [anon_sym_GT_GT_GT] = ACTIONS(2344), [anon_sym_BANG] = ACTIONS(2344), [anon_sym_BANG_EQ] = ACTIONS(2348), [anon_sym_LPAREN] = ACTIONS(2348), [anon_sym_RPAREN] = ACTIONS(2348), [anon_sym_LBRACK] = ACTIONS(2348), [anon_sym_RBRACK] = ACTIONS(2348), [anon_sym_QMARK] = ACTIONS(2348), [anon_sym_COMMA] = ACTIONS(2348), [anon_sym_SEMI] = ACTIONS(2348), [anon_sym_COLON] = ACTIONS(2348), [anon_sym_DOLLAR] = ACTIONS(2344), [anon_sym_EQ] = ACTIONS(2344), [anon_sym_EQ_EQ] = ACTIONS(2348), [anon_sym_STAR] = ACTIONS(2344), [anon_sym_STAR_EQ] = ACTIONS(2348), [anon_sym_PERCENT] = ACTIONS(2344), [anon_sym_PERCENT_EQ] = ACTIONS(2348), [anon_sym_CARET] = ACTIONS(2344), [anon_sym_CARET_EQ] = ACTIONS(2348), [anon_sym_CARET_CARET] = ACTIONS(2344), [anon_sym_CARET_CARET_EQ] = ACTIONS(2348), [anon_sym_TILDE] = ACTIONS(2344), [anon_sym_TILDE_EQ] = ACTIONS(2348), [anon_sym_AT] = ACTIONS(2348), [anon_sym_EQ_GT] = ACTIONS(2348), [anon_sym_POUND] = ACTIONS(2348), [anon_sym_BANGin] = ACTIONS(2348), [anon_sym_BANGis] = ACTIONS(2348), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2348), [sym_float_literal] = ACTIONS(2348), [sym__string] = ACTIONS(2274), }, [544] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2350), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [545] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2352), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [546] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(544), [sym__token_no_braces] = STATE(544), [sym_keyword] = STATE(544), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(544), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(544), [sym_string_literal] = STATE(544), [sym_char_literal] = STATE(544), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2354), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2356), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2354), [anon_sym_SLASH_EQ] = ACTIONS(2358), [anon_sym_DOT] = ACTIONS(2354), [anon_sym_DOT_DOT] = ACTIONS(2354), [anon_sym_DOT_DOT_DOT] = ACTIONS(2358), [anon_sym_AMP] = ACTIONS(2354), [anon_sym_AMP_EQ] = ACTIONS(2358), [anon_sym_AMP_AMP] = ACTIONS(2358), [anon_sym_PIPE] = ACTIONS(2354), [anon_sym_PIPE_EQ] = ACTIONS(2358), [anon_sym_PIPE_PIPE] = ACTIONS(2358), [anon_sym_DASH] = ACTIONS(2354), [anon_sym_DASH_EQ] = ACTIONS(2358), [anon_sym_DASH_DASH] = ACTIONS(2358), [anon_sym_PLUS] = ACTIONS(2354), [anon_sym_PLUS_EQ] = ACTIONS(2358), [anon_sym_PLUS_PLUS] = ACTIONS(2358), [anon_sym_LT] = ACTIONS(2354), [anon_sym_LT_EQ] = ACTIONS(2358), [anon_sym_LT_LT] = ACTIONS(2354), [anon_sym_LT_LT_EQ] = ACTIONS(2358), [anon_sym_GT] = ACTIONS(2354), [anon_sym_GT_EQ] = ACTIONS(2358), [anon_sym_GT_GT_EQ] = ACTIONS(2358), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2358), [anon_sym_GT_GT] = ACTIONS(2354), [anon_sym_GT_GT_GT] = ACTIONS(2354), [anon_sym_BANG] = ACTIONS(2354), [anon_sym_BANG_EQ] = ACTIONS(2358), [anon_sym_LPAREN] = ACTIONS(2358), [anon_sym_RPAREN] = ACTIONS(2358), [anon_sym_LBRACK] = ACTIONS(2358), [anon_sym_RBRACK] = ACTIONS(2358), [anon_sym_QMARK] = ACTIONS(2358), [anon_sym_COMMA] = ACTIONS(2358), [anon_sym_SEMI] = ACTIONS(2358), [anon_sym_COLON] = ACTIONS(2358), [anon_sym_DOLLAR] = ACTIONS(2354), [anon_sym_EQ] = ACTIONS(2354), [anon_sym_EQ_EQ] = ACTIONS(2358), [anon_sym_STAR] = ACTIONS(2354), [anon_sym_STAR_EQ] = ACTIONS(2358), [anon_sym_PERCENT] = ACTIONS(2354), [anon_sym_PERCENT_EQ] = ACTIONS(2358), [anon_sym_CARET] = ACTIONS(2354), [anon_sym_CARET_EQ] = ACTIONS(2358), [anon_sym_CARET_CARET] = ACTIONS(2354), [anon_sym_CARET_CARET_EQ] = ACTIONS(2358), [anon_sym_TILDE] = ACTIONS(2354), [anon_sym_TILDE_EQ] = ACTIONS(2358), [anon_sym_AT] = ACTIONS(2358), [anon_sym_EQ_GT] = ACTIONS(2358), [anon_sym_POUND] = ACTIONS(2358), [anon_sym_BANGin] = ACTIONS(2358), [anon_sym_BANGis] = ACTIONS(2358), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2358), [sym_float_literal] = ACTIONS(2358), [sym__string] = ACTIONS(2274), }, [547] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(551), [sym__token_no_braces] = STATE(551), [sym_keyword] = STATE(551), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(551), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(551), [sym_string_literal] = STATE(551), [sym_char_literal] = STATE(551), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2360), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2362), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2360), [anon_sym_SLASH_EQ] = ACTIONS(2364), [anon_sym_DOT] = ACTIONS(2360), [anon_sym_DOT_DOT] = ACTIONS(2360), [anon_sym_DOT_DOT_DOT] = ACTIONS(2364), [anon_sym_AMP] = ACTIONS(2360), [anon_sym_AMP_EQ] = ACTIONS(2364), [anon_sym_AMP_AMP] = ACTIONS(2364), [anon_sym_PIPE] = ACTIONS(2360), [anon_sym_PIPE_EQ] = ACTIONS(2364), [anon_sym_PIPE_PIPE] = ACTIONS(2364), [anon_sym_DASH] = ACTIONS(2360), [anon_sym_DASH_EQ] = ACTIONS(2364), [anon_sym_DASH_DASH] = ACTIONS(2364), [anon_sym_PLUS] = ACTIONS(2360), [anon_sym_PLUS_EQ] = ACTIONS(2364), [anon_sym_PLUS_PLUS] = ACTIONS(2364), [anon_sym_LT] = ACTIONS(2360), [anon_sym_LT_EQ] = ACTIONS(2364), [anon_sym_LT_LT] = ACTIONS(2360), [anon_sym_LT_LT_EQ] = ACTIONS(2364), [anon_sym_GT] = ACTIONS(2360), [anon_sym_GT_EQ] = ACTIONS(2364), [anon_sym_GT_GT_EQ] = ACTIONS(2364), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2364), [anon_sym_GT_GT] = ACTIONS(2360), [anon_sym_GT_GT_GT] = ACTIONS(2360), [anon_sym_BANG] = ACTIONS(2360), [anon_sym_BANG_EQ] = ACTIONS(2364), [anon_sym_LPAREN] = ACTIONS(2364), [anon_sym_RPAREN] = ACTIONS(2364), [anon_sym_LBRACK] = ACTIONS(2364), [anon_sym_RBRACK] = ACTIONS(2364), [anon_sym_QMARK] = ACTIONS(2364), [anon_sym_COMMA] = ACTIONS(2364), [anon_sym_SEMI] = ACTIONS(2364), [anon_sym_COLON] = ACTIONS(2364), [anon_sym_DOLLAR] = ACTIONS(2360), [anon_sym_EQ] = ACTIONS(2360), [anon_sym_EQ_EQ] = ACTIONS(2364), [anon_sym_STAR] = ACTIONS(2360), [anon_sym_STAR_EQ] = ACTIONS(2364), [anon_sym_PERCENT] = ACTIONS(2360), [anon_sym_PERCENT_EQ] = ACTIONS(2364), [anon_sym_CARET] = ACTIONS(2360), [anon_sym_CARET_EQ] = ACTIONS(2364), [anon_sym_CARET_CARET] = ACTIONS(2360), [anon_sym_CARET_CARET_EQ] = ACTIONS(2364), [anon_sym_TILDE] = ACTIONS(2360), [anon_sym_TILDE_EQ] = ACTIONS(2364), [anon_sym_AT] = ACTIONS(2364), [anon_sym_EQ_GT] = ACTIONS(2364), [anon_sym_POUND] = ACTIONS(2364), [anon_sym_BANGin] = ACTIONS(2364), [anon_sym_BANGis] = ACTIONS(2364), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2364), [sym_float_literal] = ACTIONS(2364), [sym__string] = ACTIONS(2274), }, [548] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(552), [sym__token_no_braces] = STATE(552), [sym_keyword] = STATE(552), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(552), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(552), [sym_string_literal] = STATE(552), [sym_char_literal] = STATE(552), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2366), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2368), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2366), [anon_sym_SLASH_EQ] = ACTIONS(2370), [anon_sym_DOT] = ACTIONS(2366), [anon_sym_DOT_DOT] = ACTIONS(2366), [anon_sym_DOT_DOT_DOT] = ACTIONS(2370), [anon_sym_AMP] = ACTIONS(2366), [anon_sym_AMP_EQ] = ACTIONS(2370), [anon_sym_AMP_AMP] = ACTIONS(2370), [anon_sym_PIPE] = ACTIONS(2366), [anon_sym_PIPE_EQ] = ACTIONS(2370), [anon_sym_PIPE_PIPE] = ACTIONS(2370), [anon_sym_DASH] = ACTIONS(2366), [anon_sym_DASH_EQ] = ACTIONS(2370), [anon_sym_DASH_DASH] = ACTIONS(2370), [anon_sym_PLUS] = ACTIONS(2366), [anon_sym_PLUS_EQ] = ACTIONS(2370), [anon_sym_PLUS_PLUS] = ACTIONS(2370), [anon_sym_LT] = ACTIONS(2366), [anon_sym_LT_EQ] = ACTIONS(2370), [anon_sym_LT_LT] = ACTIONS(2366), [anon_sym_LT_LT_EQ] = ACTIONS(2370), [anon_sym_GT] = ACTIONS(2366), [anon_sym_GT_EQ] = ACTIONS(2370), [anon_sym_GT_GT_EQ] = ACTIONS(2370), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2370), [anon_sym_GT_GT] = ACTIONS(2366), [anon_sym_GT_GT_GT] = ACTIONS(2366), [anon_sym_BANG] = ACTIONS(2366), [anon_sym_BANG_EQ] = ACTIONS(2370), [anon_sym_LPAREN] = ACTIONS(2370), [anon_sym_RPAREN] = ACTIONS(2370), [anon_sym_LBRACK] = ACTIONS(2370), [anon_sym_RBRACK] = ACTIONS(2370), [anon_sym_QMARK] = ACTIONS(2370), [anon_sym_COMMA] = ACTIONS(2370), [anon_sym_SEMI] = ACTIONS(2370), [anon_sym_COLON] = ACTIONS(2370), [anon_sym_DOLLAR] = ACTIONS(2366), [anon_sym_EQ] = ACTIONS(2366), [anon_sym_EQ_EQ] = ACTIONS(2370), [anon_sym_STAR] = ACTIONS(2366), [anon_sym_STAR_EQ] = ACTIONS(2370), [anon_sym_PERCENT] = ACTIONS(2366), [anon_sym_PERCENT_EQ] = ACTIONS(2370), [anon_sym_CARET] = ACTIONS(2366), [anon_sym_CARET_EQ] = ACTIONS(2370), [anon_sym_CARET_CARET] = ACTIONS(2366), [anon_sym_CARET_CARET_EQ] = ACTIONS(2370), [anon_sym_TILDE] = ACTIONS(2366), [anon_sym_TILDE_EQ] = ACTIONS(2370), [anon_sym_AT] = ACTIONS(2370), [anon_sym_EQ_GT] = ACTIONS(2370), [anon_sym_POUND] = ACTIONS(2370), [anon_sym_BANGin] = ACTIONS(2370), [anon_sym_BANGis] = ACTIONS(2370), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2370), [sym_float_literal] = ACTIONS(2370), [sym__string] = ACTIONS(2274), }, [549] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2372), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [550] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2374), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2377), [anon_sym_RBRACE] = ACTIONS(2380), [anon_sym_LBRACE] = ACTIONS(2382), [anon_sym_SLASH] = ACTIONS(2374), [anon_sym_SLASH_EQ] = ACTIONS(2385), [anon_sym_DOT] = ACTIONS(2374), [anon_sym_DOT_DOT] = ACTIONS(2374), [anon_sym_DOT_DOT_DOT] = ACTIONS(2385), [anon_sym_AMP] = ACTIONS(2374), [anon_sym_AMP_EQ] = ACTIONS(2385), [anon_sym_AMP_AMP] = ACTIONS(2385), [anon_sym_PIPE] = ACTIONS(2374), [anon_sym_PIPE_EQ] = ACTIONS(2385), [anon_sym_PIPE_PIPE] = ACTIONS(2385), [anon_sym_DASH] = ACTIONS(2374), [anon_sym_DASH_EQ] = ACTIONS(2385), [anon_sym_DASH_DASH] = ACTIONS(2385), [anon_sym_PLUS] = ACTIONS(2374), [anon_sym_PLUS_EQ] = ACTIONS(2385), [anon_sym_PLUS_PLUS] = ACTIONS(2385), [anon_sym_LT] = ACTIONS(2374), [anon_sym_LT_EQ] = ACTIONS(2385), [anon_sym_LT_LT] = ACTIONS(2374), [anon_sym_LT_LT_EQ] = ACTIONS(2385), [anon_sym_GT] = ACTIONS(2374), [anon_sym_GT_EQ] = ACTIONS(2385), [anon_sym_GT_GT_EQ] = ACTIONS(2385), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2385), [anon_sym_GT_GT] = ACTIONS(2374), [anon_sym_GT_GT_GT] = ACTIONS(2374), [anon_sym_BANG] = ACTIONS(2374), [anon_sym_BANG_EQ] = ACTIONS(2385), [anon_sym_LPAREN] = ACTIONS(2385), [anon_sym_RPAREN] = ACTIONS(2385), [anon_sym_LBRACK] = ACTIONS(2385), [anon_sym_RBRACK] = ACTIONS(2385), [anon_sym_QMARK] = ACTIONS(2385), [anon_sym_COMMA] = ACTIONS(2385), [anon_sym_SEMI] = ACTIONS(2385), [anon_sym_COLON] = ACTIONS(2385), [anon_sym_DOLLAR] = ACTIONS(2374), [anon_sym_EQ] = ACTIONS(2374), [anon_sym_EQ_EQ] = ACTIONS(2385), [anon_sym_STAR] = ACTIONS(2374), [anon_sym_STAR_EQ] = ACTIONS(2385), [anon_sym_PERCENT] = ACTIONS(2374), [anon_sym_PERCENT_EQ] = ACTIONS(2385), [anon_sym_CARET] = ACTIONS(2374), [anon_sym_CARET_EQ] = ACTIONS(2385), [anon_sym_CARET_CARET] = ACTIONS(2374), [anon_sym_CARET_CARET_EQ] = ACTIONS(2385), [anon_sym_TILDE] = ACTIONS(2374), [anon_sym_TILDE_EQ] = ACTIONS(2385), [anon_sym_AT] = ACTIONS(2385), [anon_sym_EQ_GT] = ACTIONS(2385), [anon_sym_POUND] = ACTIONS(2385), [anon_sym_BANGin] = ACTIONS(2385), [anon_sym_BANGis] = ACTIONS(2385), [sym_bool] = ACTIONS(2388), [sym_byte] = ACTIONS(2388), [sym_ubyte] = ACTIONS(2388), [sym_char] = ACTIONS(2388), [sym_short] = ACTIONS(2388), [sym_ushort] = ACTIONS(2388), [sym_int] = ACTIONS(2388), [sym_uint] = ACTIONS(2388), [sym_long] = ACTIONS(2388), [sym_ulong] = ACTIONS(2388), [sym_cent] = ACTIONS(2388), [sym_ucent] = ACTIONS(2388), [sym_wchar] = ACTIONS(2388), [sym_dchar] = ACTIONS(2388), [sym_float] = ACTIONS(2388), [sym_double] = ACTIONS(2388), [sym_real] = ACTIONS(2388), [sym_ifloat] = ACTIONS(2388), [sym_idouble] = ACTIONS(2388), [sym_ireal] = ACTIONS(2388), [sym_cfloat] = ACTIONS(2388), [sym_cdouble] = ACTIONS(2388), [sym_creal] = ACTIONS(2388), [sym_size_t] = ACTIONS(2388), [sym_ptrdiff_t] = ACTIONS(2388), [sym_string] = ACTIONS(2388), [sym_cstring] = ACTIONS(2388), [sym_dstring] = ACTIONS(2388), [sym_wstring] = ACTIONS(2388), [sym_noreturn] = ACTIONS(2388), [sym_true] = ACTIONS(2388), [sym_false] = ACTIONS(2388), [sym_null] = ACTIONS(2388), [sym_super] = ACTIONS(2388), [sym_this] = ACTIONS(2388), [sym_abstract] = ACTIONS(2388), [sym_alias] = ACTIONS(2388), [sym_align] = ACTIONS(2388), [sym_asm] = ACTIONS(2388), [sym_assert] = ACTIONS(2388), [sym_auto] = ACTIONS(2388), [sym_break] = ACTIONS(2388), [sym_case] = ACTIONS(2388), [sym_cast] = ACTIONS(2388), [sym_catch] = ACTIONS(2388), [sym_class] = ACTIONS(2388), [sym_const] = ACTIONS(2391), [sym_continue] = ACTIONS(2388), [sym_debug] = ACTIONS(2388), [sym_default] = ACTIONS(2388), [sym_delegate] = ACTIONS(2388), [sym_delete] = ACTIONS(2388), [sym_deprecated] = ACTIONS(2388), [sym_do] = ACTIONS(2388), [sym_else] = ACTIONS(2388), [sym_enum] = ACTIONS(2388), [sym_export] = ACTIONS(2388), [sym_extern] = ACTIONS(2388), [sym_final] = ACTIONS(2388), [sym_finally] = ACTIONS(2388), [sym_for] = ACTIONS(2388), [sym_foreach] = ACTIONS(2388), [sym_foreach_reverse] = ACTIONS(2388), [sym_function] = ACTIONS(2388), [sym_goto] = ACTIONS(2388), [sym_if] = ACTIONS(2388), [sym_immutable] = ACTIONS(2391), [sym_import] = ACTIONS(2388), [sym_in] = ACTIONS(2388), [sym_inout] = ACTIONS(2391), [sym_interface] = ACTIONS(2388), [sym_invariant] = ACTIONS(2388), [sym_is] = ACTIONS(2388), [sym_lazy] = ACTIONS(2388), [sym_mixin] = ACTIONS(2388), [sym_module] = ACTIONS(2388), [sym_new] = ACTIONS(2388), [sym_nothrow] = ACTIONS(2388), [sym_out] = ACTIONS(2388), [sym_override] = ACTIONS(2388), [sym_package] = ACTIONS(2388), [sym_pragma] = ACTIONS(2388), [sym_private] = ACTIONS(2388), [sym_protected] = ACTIONS(2388), [sym_public] = ACTIONS(2388), [sym_pure] = ACTIONS(2388), [sym_ref] = ACTIONS(2388), [sym_return] = ACTIONS(2388), [sym_scope] = ACTIONS(2388), [sym_shared] = ACTIONS(2391), [sym_static] = ACTIONS(2388), [sym_struct] = ACTIONS(2388), [sym_switch] = ACTIONS(2388), [sym_synchronized] = ACTIONS(2388), [sym_template] = ACTIONS(2388), [sym_throw] = ACTIONS(2388), [sym_try] = ACTIONS(2388), [sym_typeid] = ACTIONS(2388), [sym_typeof] = ACTIONS(2388), [sym_union] = ACTIONS(2388), [sym_unittest] = ACTIONS(2388), [sym_version] = ACTIONS(2388), [sym_while] = ACTIONS(2388), [sym_with] = ACTIONS(2388), [sym_parameters_] = ACTIONS(2388), [sym_gshared] = ACTIONS(2388), [sym_traits] = ACTIONS(2388), [sym_vector] = ACTIONS(2388), [sym_void] = ACTIONS(2388), [anon_sym_BQUOTE] = ACTIONS(2394), [anon_sym_r_DQUOTE] = ACTIONS(2397), [anon_sym_x_DQUOTE] = ACTIONS(2400), [anon_sym_DQUOTE] = ACTIONS(2403), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2406), [anon_sym_i_BQUOTE] = ACTIONS(2409), [anon_sym_i_DQUOTE] = ACTIONS(2412), [anon_sym_iq_LBRACE] = ACTIONS(2415), [aux_sym_char_literal_token1] = ACTIONS(2418), [anon_sym_SQUOTE] = ACTIONS(2421), [anon_sym___DATE__] = ACTIONS(2424), [anon_sym___FILE__] = ACTIONS(2424), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2424), [anon_sym___FUNCTION__] = ACTIONS(2424), [anon_sym___LINE__] = ACTIONS(2424), [anon_sym___MODULE__] = ACTIONS(2424), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2424), [anon_sym___TIME__] = ACTIONS(2424), [anon_sym___TIMESTAMP__] = ACTIONS(2424), [anon_sym___VENDOR__] = ACTIONS(2424), [anon_sym___VERSION__] = ACTIONS(2424), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2385), [sym_float_literal] = ACTIONS(2385), [sym__string] = ACTIONS(2427), }, [551] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2430), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [552] = { [sym_token_string] = STATE(634), [sym__token_string_token] = STATE(550), [sym__token_no_braces] = STATE(550), [sym_keyword] = STATE(550), [sym_type_ctor] = STATE(635), [sym__builtin_type] = STATE(635), [sym_raw_string] = STATE(634), [sym_hex_string] = STATE(634), [sym_quoted_string] = STATE(634), [sym_interpolation_expression] = STATE(550), [sym_interpolated_raw_string] = STATE(634), [sym_interpolated_quoted_string] = STATE(634), [sym_interpolated_token_string] = STATE(634), [aux_sym__i_token_string_tokens] = STATE(550), [sym_string_literal] = STATE(550), [sym_char_literal] = STATE(550), [sym_special_keyword] = STATE(635), [sym_identifier] = ACTIONS(2238), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2240), [anon_sym_RBRACE] = ACTIONS(2432), [anon_sym_LBRACE] = ACTIONS(2244), [anon_sym_SLASH] = ACTIONS(2238), [anon_sym_SLASH_EQ] = ACTIONS(2246), [anon_sym_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT] = ACTIONS(2238), [anon_sym_DOT_DOT_DOT] = ACTIONS(2246), [anon_sym_AMP] = ACTIONS(2238), [anon_sym_AMP_EQ] = ACTIONS(2246), [anon_sym_AMP_AMP] = ACTIONS(2246), [anon_sym_PIPE] = ACTIONS(2238), [anon_sym_PIPE_EQ] = ACTIONS(2246), [anon_sym_PIPE_PIPE] = ACTIONS(2246), [anon_sym_DASH] = ACTIONS(2238), [anon_sym_DASH_EQ] = ACTIONS(2246), [anon_sym_DASH_DASH] = ACTIONS(2246), [anon_sym_PLUS] = ACTIONS(2238), [anon_sym_PLUS_EQ] = ACTIONS(2246), [anon_sym_PLUS_PLUS] = ACTIONS(2246), [anon_sym_LT] = ACTIONS(2238), [anon_sym_LT_EQ] = ACTIONS(2246), [anon_sym_LT_LT] = ACTIONS(2238), [anon_sym_LT_LT_EQ] = ACTIONS(2246), [anon_sym_GT] = ACTIONS(2238), [anon_sym_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2246), [anon_sym_GT_GT] = ACTIONS(2238), [anon_sym_GT_GT_GT] = ACTIONS(2238), [anon_sym_BANG] = ACTIONS(2238), [anon_sym_BANG_EQ] = ACTIONS(2246), [anon_sym_LPAREN] = ACTIONS(2246), [anon_sym_RPAREN] = ACTIONS(2246), [anon_sym_LBRACK] = ACTIONS(2246), [anon_sym_RBRACK] = ACTIONS(2246), [anon_sym_QMARK] = ACTIONS(2246), [anon_sym_COMMA] = ACTIONS(2246), [anon_sym_SEMI] = ACTIONS(2246), [anon_sym_COLON] = ACTIONS(2246), [anon_sym_DOLLAR] = ACTIONS(2238), [anon_sym_EQ] = ACTIONS(2238), [anon_sym_EQ_EQ] = ACTIONS(2246), [anon_sym_STAR] = ACTIONS(2238), [anon_sym_STAR_EQ] = ACTIONS(2246), [anon_sym_PERCENT] = ACTIONS(2238), [anon_sym_PERCENT_EQ] = ACTIONS(2246), [anon_sym_CARET] = ACTIONS(2238), [anon_sym_CARET_EQ] = ACTIONS(2246), [anon_sym_CARET_CARET] = ACTIONS(2238), [anon_sym_CARET_CARET_EQ] = ACTIONS(2246), [anon_sym_TILDE] = ACTIONS(2238), [anon_sym_TILDE_EQ] = ACTIONS(2246), [anon_sym_AT] = ACTIONS(2246), [anon_sym_EQ_GT] = ACTIONS(2246), [anon_sym_POUND] = ACTIONS(2246), [anon_sym_BANGin] = ACTIONS(2246), [anon_sym_BANGis] = ACTIONS(2246), [sym_bool] = ACTIONS(2248), [sym_byte] = ACTIONS(2248), [sym_ubyte] = ACTIONS(2248), [sym_char] = ACTIONS(2248), [sym_short] = ACTIONS(2248), [sym_ushort] = ACTIONS(2248), [sym_int] = ACTIONS(2248), [sym_uint] = ACTIONS(2248), [sym_long] = ACTIONS(2248), [sym_ulong] = ACTIONS(2248), [sym_cent] = ACTIONS(2248), [sym_ucent] = ACTIONS(2248), [sym_wchar] = ACTIONS(2248), [sym_dchar] = ACTIONS(2248), [sym_float] = ACTIONS(2248), [sym_double] = ACTIONS(2248), [sym_real] = ACTIONS(2248), [sym_ifloat] = ACTIONS(2248), [sym_idouble] = ACTIONS(2248), [sym_ireal] = ACTIONS(2248), [sym_cfloat] = ACTIONS(2248), [sym_cdouble] = ACTIONS(2248), [sym_creal] = ACTIONS(2248), [sym_size_t] = ACTIONS(2248), [sym_ptrdiff_t] = ACTIONS(2248), [sym_string] = ACTIONS(2248), [sym_cstring] = ACTIONS(2248), [sym_dstring] = ACTIONS(2248), [sym_wstring] = ACTIONS(2248), [sym_noreturn] = ACTIONS(2248), [sym_true] = ACTIONS(2248), [sym_false] = ACTIONS(2248), [sym_null] = ACTIONS(2248), [sym_super] = ACTIONS(2248), [sym_this] = ACTIONS(2248), [sym_abstract] = ACTIONS(2248), [sym_alias] = ACTIONS(2248), [sym_align] = ACTIONS(2248), [sym_asm] = ACTIONS(2248), [sym_assert] = ACTIONS(2248), [sym_auto] = ACTIONS(2248), [sym_break] = ACTIONS(2248), [sym_case] = ACTIONS(2248), [sym_cast] = ACTIONS(2248), [sym_catch] = ACTIONS(2248), [sym_class] = ACTIONS(2248), [sym_const] = ACTIONS(2250), [sym_continue] = ACTIONS(2248), [sym_debug] = ACTIONS(2248), [sym_default] = ACTIONS(2248), [sym_delegate] = ACTIONS(2248), [sym_delete] = ACTIONS(2248), [sym_deprecated] = ACTIONS(2248), [sym_do] = ACTIONS(2248), [sym_else] = ACTIONS(2248), [sym_enum] = ACTIONS(2248), [sym_export] = ACTIONS(2248), [sym_extern] = ACTIONS(2248), [sym_final] = ACTIONS(2248), [sym_finally] = ACTIONS(2248), [sym_for] = ACTIONS(2248), [sym_foreach] = ACTIONS(2248), [sym_foreach_reverse] = ACTIONS(2248), [sym_function] = ACTIONS(2248), [sym_goto] = ACTIONS(2248), [sym_if] = ACTIONS(2248), [sym_immutable] = ACTIONS(2250), [sym_import] = ACTIONS(2248), [sym_in] = ACTIONS(2248), [sym_inout] = ACTIONS(2250), [sym_interface] = ACTIONS(2248), [sym_invariant] = ACTIONS(2248), [sym_is] = ACTIONS(2248), [sym_lazy] = ACTIONS(2248), [sym_mixin] = ACTIONS(2248), [sym_module] = ACTIONS(2248), [sym_new] = ACTIONS(2248), [sym_nothrow] = ACTIONS(2248), [sym_out] = ACTIONS(2248), [sym_override] = ACTIONS(2248), [sym_package] = ACTIONS(2248), [sym_pragma] = ACTIONS(2248), [sym_private] = ACTIONS(2248), [sym_protected] = ACTIONS(2248), [sym_public] = ACTIONS(2248), [sym_pure] = ACTIONS(2248), [sym_ref] = ACTIONS(2248), [sym_return] = ACTIONS(2248), [sym_scope] = ACTIONS(2248), [sym_shared] = ACTIONS(2250), [sym_static] = ACTIONS(2248), [sym_struct] = ACTIONS(2248), [sym_switch] = ACTIONS(2248), [sym_synchronized] = ACTIONS(2248), [sym_template] = ACTIONS(2248), [sym_throw] = ACTIONS(2248), [sym_try] = ACTIONS(2248), [sym_typeid] = ACTIONS(2248), [sym_typeof] = ACTIONS(2248), [sym_union] = ACTIONS(2248), [sym_unittest] = ACTIONS(2248), [sym_version] = ACTIONS(2248), [sym_while] = ACTIONS(2248), [sym_with] = ACTIONS(2248), [sym_parameters_] = ACTIONS(2248), [sym_gshared] = ACTIONS(2248), [sym_traits] = ACTIONS(2248), [sym_vector] = ACTIONS(2248), [sym_void] = ACTIONS(2248), [anon_sym_BQUOTE] = ACTIONS(2252), [anon_sym_r_DQUOTE] = ACTIONS(2254), [anon_sym_x_DQUOTE] = ACTIONS(2256), [anon_sym_DQUOTE] = ACTIONS(2258), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2260), [anon_sym_i_BQUOTE] = ACTIONS(2262), [anon_sym_i_DQUOTE] = ACTIONS(2264), [anon_sym_iq_LBRACE] = ACTIONS(2266), [aux_sym_char_literal_token1] = ACTIONS(2268), [anon_sym_SQUOTE] = ACTIONS(2270), [anon_sym___DATE__] = ACTIONS(2272), [anon_sym___FILE__] = ACTIONS(2272), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2272), [anon_sym___FUNCTION__] = ACTIONS(2272), [anon_sym___LINE__] = ACTIONS(2272), [anon_sym___MODULE__] = ACTIONS(2272), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2272), [anon_sym___TIME__] = ACTIONS(2272), [anon_sym___TIMESTAMP__] = ACTIONS(2272), [anon_sym___VENDOR__] = ACTIONS(2272), [anon_sym___VERSION__] = ACTIONS(2272), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2246), [sym_float_literal] = ACTIONS(2246), [sym__string] = ACTIONS(2274), }, [553] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(575), [sym__token_string_token] = STATE(575), [sym__token_no_braces] = STATE(575), [sym_keyword] = STATE(575), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(575), [sym_char_literal] = STATE(575), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2434), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2438), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2434), [anon_sym_SLASH_EQ] = ACTIONS(2442), [anon_sym_DOT] = ACTIONS(2434), [anon_sym_DOT_DOT] = ACTIONS(2434), [anon_sym_DOT_DOT_DOT] = ACTIONS(2442), [anon_sym_AMP] = ACTIONS(2434), [anon_sym_AMP_EQ] = ACTIONS(2442), [anon_sym_AMP_AMP] = ACTIONS(2442), [anon_sym_PIPE] = ACTIONS(2434), [anon_sym_PIPE_EQ] = ACTIONS(2442), [anon_sym_PIPE_PIPE] = ACTIONS(2442), [anon_sym_DASH] = ACTIONS(2434), [anon_sym_DASH_EQ] = ACTIONS(2442), [anon_sym_DASH_DASH] = ACTIONS(2442), [anon_sym_PLUS] = ACTIONS(2434), [anon_sym_PLUS_EQ] = ACTIONS(2442), [anon_sym_PLUS_PLUS] = ACTIONS(2442), [anon_sym_LT] = ACTIONS(2434), [anon_sym_LT_EQ] = ACTIONS(2442), [anon_sym_LT_LT] = ACTIONS(2434), [anon_sym_LT_LT_EQ] = ACTIONS(2442), [anon_sym_GT] = ACTIONS(2434), [anon_sym_GT_EQ] = ACTIONS(2442), [anon_sym_GT_GT_EQ] = ACTIONS(2442), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2442), [anon_sym_GT_GT] = ACTIONS(2434), [anon_sym_GT_GT_GT] = ACTIONS(2434), [anon_sym_BANG] = ACTIONS(2434), [anon_sym_BANG_EQ] = ACTIONS(2442), [anon_sym_LPAREN] = ACTIONS(2442), [anon_sym_RPAREN] = ACTIONS(2442), [anon_sym_LBRACK] = ACTIONS(2442), [anon_sym_RBRACK] = ACTIONS(2442), [anon_sym_QMARK] = ACTIONS(2442), [anon_sym_COMMA] = ACTIONS(2442), [anon_sym_SEMI] = ACTIONS(2442), [anon_sym_COLON] = ACTIONS(2442), [anon_sym_DOLLAR] = ACTIONS(2442), [anon_sym_EQ] = ACTIONS(2434), [anon_sym_EQ_EQ] = ACTIONS(2442), [anon_sym_STAR] = ACTIONS(2434), [anon_sym_STAR_EQ] = ACTIONS(2442), [anon_sym_PERCENT] = ACTIONS(2434), [anon_sym_PERCENT_EQ] = ACTIONS(2442), [anon_sym_CARET] = ACTIONS(2434), [anon_sym_CARET_EQ] = ACTIONS(2442), [anon_sym_CARET_CARET] = ACTIONS(2434), [anon_sym_CARET_CARET_EQ] = ACTIONS(2442), [anon_sym_TILDE] = ACTIONS(2434), [anon_sym_TILDE_EQ] = ACTIONS(2442), [anon_sym_AT] = ACTIONS(2442), [anon_sym_EQ_GT] = ACTIONS(2442), [anon_sym_POUND] = ACTIONS(2442), [anon_sym_BANGin] = ACTIONS(2442), [anon_sym_BANGis] = ACTIONS(2442), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2442), [sym_float_literal] = ACTIONS(2442), [sym__string] = ACTIONS(2468), }, [554] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(571), [sym__token_string_token] = STATE(571), [sym__token_no_braces] = STATE(571), [sym_keyword] = STATE(571), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(571), [sym_char_literal] = STATE(571), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2470), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2472), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2470), [anon_sym_SLASH_EQ] = ACTIONS(2474), [anon_sym_DOT] = ACTIONS(2470), [anon_sym_DOT_DOT] = ACTIONS(2470), [anon_sym_DOT_DOT_DOT] = ACTIONS(2474), [anon_sym_AMP] = ACTIONS(2470), [anon_sym_AMP_EQ] = ACTIONS(2474), [anon_sym_AMP_AMP] = ACTIONS(2474), [anon_sym_PIPE] = ACTIONS(2470), [anon_sym_PIPE_EQ] = ACTIONS(2474), [anon_sym_PIPE_PIPE] = ACTIONS(2474), [anon_sym_DASH] = ACTIONS(2470), [anon_sym_DASH_EQ] = ACTIONS(2474), [anon_sym_DASH_DASH] = ACTIONS(2474), [anon_sym_PLUS] = ACTIONS(2470), [anon_sym_PLUS_EQ] = ACTIONS(2474), [anon_sym_PLUS_PLUS] = ACTIONS(2474), [anon_sym_LT] = ACTIONS(2470), [anon_sym_LT_EQ] = ACTIONS(2474), [anon_sym_LT_LT] = ACTIONS(2470), [anon_sym_LT_LT_EQ] = ACTIONS(2474), [anon_sym_GT] = ACTIONS(2470), [anon_sym_GT_EQ] = ACTIONS(2474), [anon_sym_GT_GT_EQ] = ACTIONS(2474), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2474), [anon_sym_GT_GT] = ACTIONS(2470), [anon_sym_GT_GT_GT] = ACTIONS(2470), [anon_sym_BANG] = ACTIONS(2470), [anon_sym_BANG_EQ] = ACTIONS(2474), [anon_sym_LPAREN] = ACTIONS(2474), [anon_sym_RPAREN] = ACTIONS(2474), [anon_sym_LBRACK] = ACTIONS(2474), [anon_sym_RBRACK] = ACTIONS(2474), [anon_sym_QMARK] = ACTIONS(2474), [anon_sym_COMMA] = ACTIONS(2474), [anon_sym_SEMI] = ACTIONS(2474), [anon_sym_COLON] = ACTIONS(2474), [anon_sym_DOLLAR] = ACTIONS(2474), [anon_sym_EQ] = ACTIONS(2470), [anon_sym_EQ_EQ] = ACTIONS(2474), [anon_sym_STAR] = ACTIONS(2470), [anon_sym_STAR_EQ] = ACTIONS(2474), [anon_sym_PERCENT] = ACTIONS(2470), [anon_sym_PERCENT_EQ] = ACTIONS(2474), [anon_sym_CARET] = ACTIONS(2470), [anon_sym_CARET_EQ] = ACTIONS(2474), [anon_sym_CARET_CARET] = ACTIONS(2470), [anon_sym_CARET_CARET_EQ] = ACTIONS(2474), [anon_sym_TILDE] = ACTIONS(2470), [anon_sym_TILDE_EQ] = ACTIONS(2474), [anon_sym_AT] = ACTIONS(2474), [anon_sym_EQ_GT] = ACTIONS(2474), [anon_sym_POUND] = ACTIONS(2474), [anon_sym_BANGin] = ACTIONS(2474), [anon_sym_BANGis] = ACTIONS(2474), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2474), [sym_float_literal] = ACTIONS(2474), [sym__string] = ACTIONS(2468), }, [555] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2478), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [556] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2482), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [557] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2484), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [558] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(556), [sym__token_string_token] = STATE(556), [sym__token_no_braces] = STATE(556), [sym_keyword] = STATE(556), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(556), [sym_char_literal] = STATE(556), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2486), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2488), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2486), [anon_sym_SLASH_EQ] = ACTIONS(2490), [anon_sym_DOT] = ACTIONS(2486), [anon_sym_DOT_DOT] = ACTIONS(2486), [anon_sym_DOT_DOT_DOT] = ACTIONS(2490), [anon_sym_AMP] = ACTIONS(2486), [anon_sym_AMP_EQ] = ACTIONS(2490), [anon_sym_AMP_AMP] = ACTIONS(2490), [anon_sym_PIPE] = ACTIONS(2486), [anon_sym_PIPE_EQ] = ACTIONS(2490), [anon_sym_PIPE_PIPE] = ACTIONS(2490), [anon_sym_DASH] = ACTIONS(2486), [anon_sym_DASH_EQ] = ACTIONS(2490), [anon_sym_DASH_DASH] = ACTIONS(2490), [anon_sym_PLUS] = ACTIONS(2486), [anon_sym_PLUS_EQ] = ACTIONS(2490), [anon_sym_PLUS_PLUS] = ACTIONS(2490), [anon_sym_LT] = ACTIONS(2486), [anon_sym_LT_EQ] = ACTIONS(2490), [anon_sym_LT_LT] = ACTIONS(2486), [anon_sym_LT_LT_EQ] = ACTIONS(2490), [anon_sym_GT] = ACTIONS(2486), [anon_sym_GT_EQ] = ACTIONS(2490), [anon_sym_GT_GT_EQ] = ACTIONS(2490), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2490), [anon_sym_GT_GT] = ACTIONS(2486), [anon_sym_GT_GT_GT] = ACTIONS(2486), [anon_sym_BANG] = ACTIONS(2486), [anon_sym_BANG_EQ] = ACTIONS(2490), [anon_sym_LPAREN] = ACTIONS(2490), [anon_sym_RPAREN] = ACTIONS(2490), [anon_sym_LBRACK] = ACTIONS(2490), [anon_sym_RBRACK] = ACTIONS(2490), [anon_sym_QMARK] = ACTIONS(2490), [anon_sym_COMMA] = ACTIONS(2490), [anon_sym_SEMI] = ACTIONS(2490), [anon_sym_COLON] = ACTIONS(2490), [anon_sym_DOLLAR] = ACTIONS(2490), [anon_sym_EQ] = ACTIONS(2486), [anon_sym_EQ_EQ] = ACTIONS(2490), [anon_sym_STAR] = ACTIONS(2486), [anon_sym_STAR_EQ] = ACTIONS(2490), [anon_sym_PERCENT] = ACTIONS(2486), [anon_sym_PERCENT_EQ] = ACTIONS(2490), [anon_sym_CARET] = ACTIONS(2486), [anon_sym_CARET_EQ] = ACTIONS(2490), [anon_sym_CARET_CARET] = ACTIONS(2486), [anon_sym_CARET_CARET_EQ] = ACTIONS(2490), [anon_sym_TILDE] = ACTIONS(2486), [anon_sym_TILDE_EQ] = ACTIONS(2490), [anon_sym_AT] = ACTIONS(2490), [anon_sym_EQ_GT] = ACTIONS(2490), [anon_sym_POUND] = ACTIONS(2490), [anon_sym_BANGin] = ACTIONS(2490), [anon_sym_BANGis] = ACTIONS(2490), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2490), [sym_float_literal] = ACTIONS(2490), [sym__string] = ACTIONS(2468), }, [559] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2492), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [560] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(559), [sym__token_string_token] = STATE(559), [sym__token_no_braces] = STATE(559), [sym_keyword] = STATE(559), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(559), [sym_char_literal] = STATE(559), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2494), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2496), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2494), [anon_sym_SLASH_EQ] = ACTIONS(2498), [anon_sym_DOT] = ACTIONS(2494), [anon_sym_DOT_DOT] = ACTIONS(2494), [anon_sym_DOT_DOT_DOT] = ACTIONS(2498), [anon_sym_AMP] = ACTIONS(2494), [anon_sym_AMP_EQ] = ACTIONS(2498), [anon_sym_AMP_AMP] = ACTIONS(2498), [anon_sym_PIPE] = ACTIONS(2494), [anon_sym_PIPE_EQ] = ACTIONS(2498), [anon_sym_PIPE_PIPE] = ACTIONS(2498), [anon_sym_DASH] = ACTIONS(2494), [anon_sym_DASH_EQ] = ACTIONS(2498), [anon_sym_DASH_DASH] = ACTIONS(2498), [anon_sym_PLUS] = ACTIONS(2494), [anon_sym_PLUS_EQ] = ACTIONS(2498), [anon_sym_PLUS_PLUS] = ACTIONS(2498), [anon_sym_LT] = ACTIONS(2494), [anon_sym_LT_EQ] = ACTIONS(2498), [anon_sym_LT_LT] = ACTIONS(2494), [anon_sym_LT_LT_EQ] = ACTIONS(2498), [anon_sym_GT] = ACTIONS(2494), [anon_sym_GT_EQ] = ACTIONS(2498), [anon_sym_GT_GT_EQ] = ACTIONS(2498), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2498), [anon_sym_GT_GT] = ACTIONS(2494), [anon_sym_GT_GT_GT] = ACTIONS(2494), [anon_sym_BANG] = ACTIONS(2494), [anon_sym_BANG_EQ] = ACTIONS(2498), [anon_sym_LPAREN] = ACTIONS(2498), [anon_sym_RPAREN] = ACTIONS(2498), [anon_sym_LBRACK] = ACTIONS(2498), [anon_sym_RBRACK] = ACTIONS(2498), [anon_sym_QMARK] = ACTIONS(2498), [anon_sym_COMMA] = ACTIONS(2498), [anon_sym_SEMI] = ACTIONS(2498), [anon_sym_COLON] = ACTIONS(2498), [anon_sym_DOLLAR] = ACTIONS(2498), [anon_sym_EQ] = ACTIONS(2494), [anon_sym_EQ_EQ] = ACTIONS(2498), [anon_sym_STAR] = ACTIONS(2494), [anon_sym_STAR_EQ] = ACTIONS(2498), [anon_sym_PERCENT] = ACTIONS(2494), [anon_sym_PERCENT_EQ] = ACTIONS(2498), [anon_sym_CARET] = ACTIONS(2494), [anon_sym_CARET_EQ] = ACTIONS(2498), [anon_sym_CARET_CARET] = ACTIONS(2494), [anon_sym_CARET_CARET_EQ] = ACTIONS(2498), [anon_sym_TILDE] = ACTIONS(2494), [anon_sym_TILDE_EQ] = ACTIONS(2498), [anon_sym_AT] = ACTIONS(2498), [anon_sym_EQ_GT] = ACTIONS(2498), [anon_sym_POUND] = ACTIONS(2498), [anon_sym_BANGin] = ACTIONS(2498), [anon_sym_BANGis] = ACTIONS(2498), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2498), [sym_float_literal] = ACTIONS(2498), [sym__string] = ACTIONS(2468), }, [561] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2500), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [562] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(561), [sym__token_string_token] = STATE(561), [sym__token_no_braces] = STATE(561), [sym_keyword] = STATE(561), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(561), [sym_char_literal] = STATE(561), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2502), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2504), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2502), [anon_sym_SLASH_EQ] = ACTIONS(2506), [anon_sym_DOT] = ACTIONS(2502), [anon_sym_DOT_DOT] = ACTIONS(2502), [anon_sym_DOT_DOT_DOT] = ACTIONS(2506), [anon_sym_AMP] = ACTIONS(2502), [anon_sym_AMP_EQ] = ACTIONS(2506), [anon_sym_AMP_AMP] = ACTIONS(2506), [anon_sym_PIPE] = ACTIONS(2502), [anon_sym_PIPE_EQ] = ACTIONS(2506), [anon_sym_PIPE_PIPE] = ACTIONS(2506), [anon_sym_DASH] = ACTIONS(2502), [anon_sym_DASH_EQ] = ACTIONS(2506), [anon_sym_DASH_DASH] = ACTIONS(2506), [anon_sym_PLUS] = ACTIONS(2502), [anon_sym_PLUS_EQ] = ACTIONS(2506), [anon_sym_PLUS_PLUS] = ACTIONS(2506), [anon_sym_LT] = ACTIONS(2502), [anon_sym_LT_EQ] = ACTIONS(2506), [anon_sym_LT_LT] = ACTIONS(2502), [anon_sym_LT_LT_EQ] = ACTIONS(2506), [anon_sym_GT] = ACTIONS(2502), [anon_sym_GT_EQ] = ACTIONS(2506), [anon_sym_GT_GT_EQ] = ACTIONS(2506), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2506), [anon_sym_GT_GT] = ACTIONS(2502), [anon_sym_GT_GT_GT] = ACTIONS(2502), [anon_sym_BANG] = ACTIONS(2502), [anon_sym_BANG_EQ] = ACTIONS(2506), [anon_sym_LPAREN] = ACTIONS(2506), [anon_sym_RPAREN] = ACTIONS(2506), [anon_sym_LBRACK] = ACTIONS(2506), [anon_sym_RBRACK] = ACTIONS(2506), [anon_sym_QMARK] = ACTIONS(2506), [anon_sym_COMMA] = ACTIONS(2506), [anon_sym_SEMI] = ACTIONS(2506), [anon_sym_COLON] = ACTIONS(2506), [anon_sym_DOLLAR] = ACTIONS(2506), [anon_sym_EQ] = ACTIONS(2502), [anon_sym_EQ_EQ] = ACTIONS(2506), [anon_sym_STAR] = ACTIONS(2502), [anon_sym_STAR_EQ] = ACTIONS(2506), [anon_sym_PERCENT] = ACTIONS(2502), [anon_sym_PERCENT_EQ] = ACTIONS(2506), [anon_sym_CARET] = ACTIONS(2502), [anon_sym_CARET_EQ] = ACTIONS(2506), [anon_sym_CARET_CARET] = ACTIONS(2502), [anon_sym_CARET_CARET_EQ] = ACTIONS(2506), [anon_sym_TILDE] = ACTIONS(2502), [anon_sym_TILDE_EQ] = ACTIONS(2506), [anon_sym_AT] = ACTIONS(2506), [anon_sym_EQ_GT] = ACTIONS(2506), [anon_sym_POUND] = ACTIONS(2506), [anon_sym_BANGin] = ACTIONS(2506), [anon_sym_BANGis] = ACTIONS(2506), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2506), [sym_float_literal] = ACTIONS(2506), [sym__string] = ACTIONS(2468), }, [563] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(570), [sym__token_string_token] = STATE(570), [sym__token_no_braces] = STATE(570), [sym_keyword] = STATE(570), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(570), [sym_char_literal] = STATE(570), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2508), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2510), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2508), [anon_sym_SLASH_EQ] = ACTIONS(2512), [anon_sym_DOT] = ACTIONS(2508), [anon_sym_DOT_DOT] = ACTIONS(2508), [anon_sym_DOT_DOT_DOT] = ACTIONS(2512), [anon_sym_AMP] = ACTIONS(2508), [anon_sym_AMP_EQ] = ACTIONS(2512), [anon_sym_AMP_AMP] = ACTIONS(2512), [anon_sym_PIPE] = ACTIONS(2508), [anon_sym_PIPE_EQ] = ACTIONS(2512), [anon_sym_PIPE_PIPE] = ACTIONS(2512), [anon_sym_DASH] = ACTIONS(2508), [anon_sym_DASH_EQ] = ACTIONS(2512), [anon_sym_DASH_DASH] = ACTIONS(2512), [anon_sym_PLUS] = ACTIONS(2508), [anon_sym_PLUS_EQ] = ACTIONS(2512), [anon_sym_PLUS_PLUS] = ACTIONS(2512), [anon_sym_LT] = ACTIONS(2508), [anon_sym_LT_EQ] = ACTIONS(2512), [anon_sym_LT_LT] = ACTIONS(2508), [anon_sym_LT_LT_EQ] = ACTIONS(2512), [anon_sym_GT] = ACTIONS(2508), [anon_sym_GT_EQ] = ACTIONS(2512), [anon_sym_GT_GT_EQ] = ACTIONS(2512), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2512), [anon_sym_GT_GT] = ACTIONS(2508), [anon_sym_GT_GT_GT] = ACTIONS(2508), [anon_sym_BANG] = ACTIONS(2508), [anon_sym_BANG_EQ] = ACTIONS(2512), [anon_sym_LPAREN] = ACTIONS(2512), [anon_sym_RPAREN] = ACTIONS(2512), [anon_sym_LBRACK] = ACTIONS(2512), [anon_sym_RBRACK] = ACTIONS(2512), [anon_sym_QMARK] = ACTIONS(2512), [anon_sym_COMMA] = ACTIONS(2512), [anon_sym_SEMI] = ACTIONS(2512), [anon_sym_COLON] = ACTIONS(2512), [anon_sym_DOLLAR] = ACTIONS(2512), [anon_sym_EQ] = ACTIONS(2508), [anon_sym_EQ_EQ] = ACTIONS(2512), [anon_sym_STAR] = ACTIONS(2508), [anon_sym_STAR_EQ] = ACTIONS(2512), [anon_sym_PERCENT] = ACTIONS(2508), [anon_sym_PERCENT_EQ] = ACTIONS(2512), [anon_sym_CARET] = ACTIONS(2508), [anon_sym_CARET_EQ] = ACTIONS(2512), [anon_sym_CARET_CARET] = ACTIONS(2508), [anon_sym_CARET_CARET_EQ] = ACTIONS(2512), [anon_sym_TILDE] = ACTIONS(2508), [anon_sym_TILDE_EQ] = ACTIONS(2512), [anon_sym_AT] = ACTIONS(2512), [anon_sym_EQ_GT] = ACTIONS(2512), [anon_sym_POUND] = ACTIONS(2512), [anon_sym_BANGin] = ACTIONS(2512), [anon_sym_BANGis] = ACTIONS(2512), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2512), [sym_float_literal] = ACTIONS(2512), [sym__string] = ACTIONS(2468), }, [564] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2514), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [565] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(578), [sym__token_string_token] = STATE(578), [sym__token_no_braces] = STATE(578), [sym_keyword] = STATE(578), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(578), [sym_char_literal] = STATE(578), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2516), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2518), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2516), [anon_sym_SLASH_EQ] = ACTIONS(2520), [anon_sym_DOT] = ACTIONS(2516), [anon_sym_DOT_DOT] = ACTIONS(2516), [anon_sym_DOT_DOT_DOT] = ACTIONS(2520), [anon_sym_AMP] = ACTIONS(2516), [anon_sym_AMP_EQ] = ACTIONS(2520), [anon_sym_AMP_AMP] = ACTIONS(2520), [anon_sym_PIPE] = ACTIONS(2516), [anon_sym_PIPE_EQ] = ACTIONS(2520), [anon_sym_PIPE_PIPE] = ACTIONS(2520), [anon_sym_DASH] = ACTIONS(2516), [anon_sym_DASH_EQ] = ACTIONS(2520), [anon_sym_DASH_DASH] = ACTIONS(2520), [anon_sym_PLUS] = ACTIONS(2516), [anon_sym_PLUS_EQ] = ACTIONS(2520), [anon_sym_PLUS_PLUS] = ACTIONS(2520), [anon_sym_LT] = ACTIONS(2516), [anon_sym_LT_EQ] = ACTIONS(2520), [anon_sym_LT_LT] = ACTIONS(2516), [anon_sym_LT_LT_EQ] = ACTIONS(2520), [anon_sym_GT] = ACTIONS(2516), [anon_sym_GT_EQ] = ACTIONS(2520), [anon_sym_GT_GT_EQ] = ACTIONS(2520), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2520), [anon_sym_GT_GT] = ACTIONS(2516), [anon_sym_GT_GT_GT] = ACTIONS(2516), [anon_sym_BANG] = ACTIONS(2516), [anon_sym_BANG_EQ] = ACTIONS(2520), [anon_sym_LPAREN] = ACTIONS(2520), [anon_sym_RPAREN] = ACTIONS(2520), [anon_sym_LBRACK] = ACTIONS(2520), [anon_sym_RBRACK] = ACTIONS(2520), [anon_sym_QMARK] = ACTIONS(2520), [anon_sym_COMMA] = ACTIONS(2520), [anon_sym_SEMI] = ACTIONS(2520), [anon_sym_COLON] = ACTIONS(2520), [anon_sym_DOLLAR] = ACTIONS(2520), [anon_sym_EQ] = ACTIONS(2516), [anon_sym_EQ_EQ] = ACTIONS(2520), [anon_sym_STAR] = ACTIONS(2516), [anon_sym_STAR_EQ] = ACTIONS(2520), [anon_sym_PERCENT] = ACTIONS(2516), [anon_sym_PERCENT_EQ] = ACTIONS(2520), [anon_sym_CARET] = ACTIONS(2516), [anon_sym_CARET_EQ] = ACTIONS(2520), [anon_sym_CARET_CARET] = ACTIONS(2516), [anon_sym_CARET_CARET_EQ] = ACTIONS(2520), [anon_sym_TILDE] = ACTIONS(2516), [anon_sym_TILDE_EQ] = ACTIONS(2520), [anon_sym_AT] = ACTIONS(2520), [anon_sym_EQ_GT] = ACTIONS(2520), [anon_sym_POUND] = ACTIONS(2520), [anon_sym_BANGin] = ACTIONS(2520), [anon_sym_BANGis] = ACTIONS(2520), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2520), [sym_float_literal] = ACTIONS(2520), [sym__string] = ACTIONS(2468), }, [566] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2522), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2525), [anon_sym_RBRACE] = ACTIONS(2528), [anon_sym_LBRACE] = ACTIONS(2530), [anon_sym_SLASH] = ACTIONS(2522), [anon_sym_SLASH_EQ] = ACTIONS(2533), [anon_sym_DOT] = ACTIONS(2522), [anon_sym_DOT_DOT] = ACTIONS(2522), [anon_sym_DOT_DOT_DOT] = ACTIONS(2533), [anon_sym_AMP] = ACTIONS(2522), [anon_sym_AMP_EQ] = ACTIONS(2533), [anon_sym_AMP_AMP] = ACTIONS(2533), [anon_sym_PIPE] = ACTIONS(2522), [anon_sym_PIPE_EQ] = ACTIONS(2533), [anon_sym_PIPE_PIPE] = ACTIONS(2533), [anon_sym_DASH] = ACTIONS(2522), [anon_sym_DASH_EQ] = ACTIONS(2533), [anon_sym_DASH_DASH] = ACTIONS(2533), [anon_sym_PLUS] = ACTIONS(2522), [anon_sym_PLUS_EQ] = ACTIONS(2533), [anon_sym_PLUS_PLUS] = ACTIONS(2533), [anon_sym_LT] = ACTIONS(2522), [anon_sym_LT_EQ] = ACTIONS(2533), [anon_sym_LT_LT] = ACTIONS(2522), [anon_sym_LT_LT_EQ] = ACTIONS(2533), [anon_sym_GT] = ACTIONS(2522), [anon_sym_GT_EQ] = ACTIONS(2533), [anon_sym_GT_GT_EQ] = ACTIONS(2533), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2533), [anon_sym_GT_GT] = ACTIONS(2522), [anon_sym_GT_GT_GT] = ACTIONS(2522), [anon_sym_BANG] = ACTIONS(2522), [anon_sym_BANG_EQ] = ACTIONS(2533), [anon_sym_LPAREN] = ACTIONS(2533), [anon_sym_RPAREN] = ACTIONS(2533), [anon_sym_LBRACK] = ACTIONS(2533), [anon_sym_RBRACK] = ACTIONS(2533), [anon_sym_QMARK] = ACTIONS(2533), [anon_sym_COMMA] = ACTIONS(2533), [anon_sym_SEMI] = ACTIONS(2533), [anon_sym_COLON] = ACTIONS(2533), [anon_sym_DOLLAR] = ACTIONS(2533), [anon_sym_EQ] = ACTIONS(2522), [anon_sym_EQ_EQ] = ACTIONS(2533), [anon_sym_STAR] = ACTIONS(2522), [anon_sym_STAR_EQ] = ACTIONS(2533), [anon_sym_PERCENT] = ACTIONS(2522), [anon_sym_PERCENT_EQ] = ACTIONS(2533), [anon_sym_CARET] = ACTIONS(2522), [anon_sym_CARET_EQ] = ACTIONS(2533), [anon_sym_CARET_CARET] = ACTIONS(2522), [anon_sym_CARET_CARET_EQ] = ACTIONS(2533), [anon_sym_TILDE] = ACTIONS(2522), [anon_sym_TILDE_EQ] = ACTIONS(2533), [anon_sym_AT] = ACTIONS(2533), [anon_sym_EQ_GT] = ACTIONS(2533), [anon_sym_POUND] = ACTIONS(2533), [anon_sym_BANGin] = ACTIONS(2533), [anon_sym_BANGis] = ACTIONS(2533), [sym_bool] = ACTIONS(2536), [sym_byte] = ACTIONS(2536), [sym_ubyte] = ACTIONS(2536), [sym_char] = ACTIONS(2536), [sym_short] = ACTIONS(2536), [sym_ushort] = ACTIONS(2536), [sym_int] = ACTIONS(2536), [sym_uint] = ACTIONS(2536), [sym_long] = ACTIONS(2536), [sym_ulong] = ACTIONS(2536), [sym_cent] = ACTIONS(2536), [sym_ucent] = ACTIONS(2536), [sym_wchar] = ACTIONS(2536), [sym_dchar] = ACTIONS(2536), [sym_float] = ACTIONS(2536), [sym_double] = ACTIONS(2536), [sym_real] = ACTIONS(2536), [sym_ifloat] = ACTIONS(2536), [sym_idouble] = ACTIONS(2536), [sym_ireal] = ACTIONS(2536), [sym_cfloat] = ACTIONS(2536), [sym_cdouble] = ACTIONS(2536), [sym_creal] = ACTIONS(2536), [sym_size_t] = ACTIONS(2536), [sym_ptrdiff_t] = ACTIONS(2536), [sym_string] = ACTIONS(2536), [sym_cstring] = ACTIONS(2536), [sym_dstring] = ACTIONS(2536), [sym_wstring] = ACTIONS(2536), [sym_noreturn] = ACTIONS(2536), [sym_true] = ACTIONS(2536), [sym_false] = ACTIONS(2536), [sym_null] = ACTIONS(2536), [sym_super] = ACTIONS(2536), [sym_this] = ACTIONS(2536), [sym_abstract] = ACTIONS(2536), [sym_alias] = ACTIONS(2536), [sym_align] = ACTIONS(2536), [sym_asm] = ACTIONS(2536), [sym_assert] = ACTIONS(2536), [sym_auto] = ACTIONS(2536), [sym_break] = ACTIONS(2536), [sym_case] = ACTIONS(2536), [sym_cast] = ACTIONS(2536), [sym_catch] = ACTIONS(2536), [sym_class] = ACTIONS(2536), [sym_const] = ACTIONS(2539), [sym_continue] = ACTIONS(2536), [sym_debug] = ACTIONS(2536), [sym_default] = ACTIONS(2536), [sym_delegate] = ACTIONS(2536), [sym_delete] = ACTIONS(2536), [sym_deprecated] = ACTIONS(2536), [sym_do] = ACTIONS(2536), [sym_else] = ACTIONS(2536), [sym_enum] = ACTIONS(2536), [sym_export] = ACTIONS(2536), [sym_extern] = ACTIONS(2536), [sym_final] = ACTIONS(2536), [sym_finally] = ACTIONS(2536), [sym_for] = ACTIONS(2536), [sym_foreach] = ACTIONS(2536), [sym_foreach_reverse] = ACTIONS(2536), [sym_function] = ACTIONS(2536), [sym_goto] = ACTIONS(2536), [sym_if] = ACTIONS(2536), [sym_immutable] = ACTIONS(2539), [sym_import] = ACTIONS(2536), [sym_in] = ACTIONS(2536), [sym_inout] = ACTIONS(2539), [sym_interface] = ACTIONS(2536), [sym_invariant] = ACTIONS(2536), [sym_is] = ACTIONS(2536), [sym_lazy] = ACTIONS(2536), [sym_mixin] = ACTIONS(2536), [sym_module] = ACTIONS(2536), [sym_new] = ACTIONS(2536), [sym_nothrow] = ACTIONS(2536), [sym_out] = ACTIONS(2536), [sym_override] = ACTIONS(2536), [sym_package] = ACTIONS(2536), [sym_pragma] = ACTIONS(2536), [sym_private] = ACTIONS(2536), [sym_protected] = ACTIONS(2536), [sym_public] = ACTIONS(2536), [sym_pure] = ACTIONS(2536), [sym_ref] = ACTIONS(2536), [sym_return] = ACTIONS(2536), [sym_scope] = ACTIONS(2536), [sym_shared] = ACTIONS(2539), [sym_static] = ACTIONS(2536), [sym_struct] = ACTIONS(2536), [sym_switch] = ACTIONS(2536), [sym_synchronized] = ACTIONS(2536), [sym_template] = ACTIONS(2536), [sym_throw] = ACTIONS(2536), [sym_try] = ACTIONS(2536), [sym_typeid] = ACTIONS(2536), [sym_typeof] = ACTIONS(2536), [sym_union] = ACTIONS(2536), [sym_unittest] = ACTIONS(2536), [sym_version] = ACTIONS(2536), [sym_while] = ACTIONS(2536), [sym_with] = ACTIONS(2536), [sym_parameters_] = ACTIONS(2536), [sym_gshared] = ACTIONS(2536), [sym_traits] = ACTIONS(2536), [sym_vector] = ACTIONS(2536), [sym_void] = ACTIONS(2536), [anon_sym_BQUOTE] = ACTIONS(2542), [anon_sym_r_DQUOTE] = ACTIONS(2545), [anon_sym_x_DQUOTE] = ACTIONS(2548), [anon_sym_DQUOTE] = ACTIONS(2551), [anon_sym_i_BQUOTE] = ACTIONS(2554), [anon_sym_i_DQUOTE] = ACTIONS(2557), [anon_sym_iq_LBRACE] = ACTIONS(2560), [aux_sym_char_literal_token1] = ACTIONS(2563), [anon_sym_SQUOTE] = ACTIONS(2566), [anon_sym___DATE__] = ACTIONS(2569), [anon_sym___FILE__] = ACTIONS(2569), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2569), [anon_sym___FUNCTION__] = ACTIONS(2569), [anon_sym___LINE__] = ACTIONS(2569), [anon_sym___MODULE__] = ACTIONS(2569), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2569), [anon_sym___TIME__] = ACTIONS(2569), [anon_sym___TIMESTAMP__] = ACTIONS(2569), [anon_sym___VENDOR__] = ACTIONS(2569), [anon_sym___VERSION__] = ACTIONS(2569), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2533), [sym_float_literal] = ACTIONS(2533), [sym__string] = ACTIONS(2572), }, [567] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(564), [sym__token_string_token] = STATE(564), [sym__token_no_braces] = STATE(564), [sym_keyword] = STATE(564), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(564), [sym_char_literal] = STATE(564), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2575), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2577), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2575), [anon_sym_SLASH_EQ] = ACTIONS(2579), [anon_sym_DOT] = ACTIONS(2575), [anon_sym_DOT_DOT] = ACTIONS(2575), [anon_sym_DOT_DOT_DOT] = ACTIONS(2579), [anon_sym_AMP] = ACTIONS(2575), [anon_sym_AMP_EQ] = ACTIONS(2579), [anon_sym_AMP_AMP] = ACTIONS(2579), [anon_sym_PIPE] = ACTIONS(2575), [anon_sym_PIPE_EQ] = ACTIONS(2579), [anon_sym_PIPE_PIPE] = ACTIONS(2579), [anon_sym_DASH] = ACTIONS(2575), [anon_sym_DASH_EQ] = ACTIONS(2579), [anon_sym_DASH_DASH] = ACTIONS(2579), [anon_sym_PLUS] = ACTIONS(2575), [anon_sym_PLUS_EQ] = ACTIONS(2579), [anon_sym_PLUS_PLUS] = ACTIONS(2579), [anon_sym_LT] = ACTIONS(2575), [anon_sym_LT_EQ] = ACTIONS(2579), [anon_sym_LT_LT] = ACTIONS(2575), [anon_sym_LT_LT_EQ] = ACTIONS(2579), [anon_sym_GT] = ACTIONS(2575), [anon_sym_GT_EQ] = ACTIONS(2579), [anon_sym_GT_GT_EQ] = ACTIONS(2579), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2579), [anon_sym_GT_GT] = ACTIONS(2575), [anon_sym_GT_GT_GT] = ACTIONS(2575), [anon_sym_BANG] = ACTIONS(2575), [anon_sym_BANG_EQ] = ACTIONS(2579), [anon_sym_LPAREN] = ACTIONS(2579), [anon_sym_RPAREN] = ACTIONS(2579), [anon_sym_LBRACK] = ACTIONS(2579), [anon_sym_RBRACK] = ACTIONS(2579), [anon_sym_QMARK] = ACTIONS(2579), [anon_sym_COMMA] = ACTIONS(2579), [anon_sym_SEMI] = ACTIONS(2579), [anon_sym_COLON] = ACTIONS(2579), [anon_sym_DOLLAR] = ACTIONS(2579), [anon_sym_EQ] = ACTIONS(2575), [anon_sym_EQ_EQ] = ACTIONS(2579), [anon_sym_STAR] = ACTIONS(2575), [anon_sym_STAR_EQ] = ACTIONS(2579), [anon_sym_PERCENT] = ACTIONS(2575), [anon_sym_PERCENT_EQ] = ACTIONS(2579), [anon_sym_CARET] = ACTIONS(2575), [anon_sym_CARET_EQ] = ACTIONS(2579), [anon_sym_CARET_CARET] = ACTIONS(2575), [anon_sym_CARET_CARET_EQ] = ACTIONS(2579), [anon_sym_TILDE] = ACTIONS(2575), [anon_sym_TILDE_EQ] = ACTIONS(2579), [anon_sym_AT] = ACTIONS(2579), [anon_sym_EQ_GT] = ACTIONS(2579), [anon_sym_POUND] = ACTIONS(2579), [anon_sym_BANGin] = ACTIONS(2579), [anon_sym_BANGis] = ACTIONS(2579), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2579), [sym_float_literal] = ACTIONS(2579), [sym__string] = ACTIONS(2468), }, [568] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2581), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [569] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(568), [sym__token_string_token] = STATE(568), [sym__token_no_braces] = STATE(568), [sym_keyword] = STATE(568), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(568), [sym_char_literal] = STATE(568), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2583), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2585), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2583), [anon_sym_SLASH_EQ] = ACTIONS(2587), [anon_sym_DOT] = ACTIONS(2583), [anon_sym_DOT_DOT] = ACTIONS(2583), [anon_sym_DOT_DOT_DOT] = ACTIONS(2587), [anon_sym_AMP] = ACTIONS(2583), [anon_sym_AMP_EQ] = ACTIONS(2587), [anon_sym_AMP_AMP] = ACTIONS(2587), [anon_sym_PIPE] = ACTIONS(2583), [anon_sym_PIPE_EQ] = ACTIONS(2587), [anon_sym_PIPE_PIPE] = ACTIONS(2587), [anon_sym_DASH] = ACTIONS(2583), [anon_sym_DASH_EQ] = ACTIONS(2587), [anon_sym_DASH_DASH] = ACTIONS(2587), [anon_sym_PLUS] = ACTIONS(2583), [anon_sym_PLUS_EQ] = ACTIONS(2587), [anon_sym_PLUS_PLUS] = ACTIONS(2587), [anon_sym_LT] = ACTIONS(2583), [anon_sym_LT_EQ] = ACTIONS(2587), [anon_sym_LT_LT] = ACTIONS(2583), [anon_sym_LT_LT_EQ] = ACTIONS(2587), [anon_sym_GT] = ACTIONS(2583), [anon_sym_GT_EQ] = ACTIONS(2587), [anon_sym_GT_GT_EQ] = ACTIONS(2587), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2587), [anon_sym_GT_GT] = ACTIONS(2583), [anon_sym_GT_GT_GT] = ACTIONS(2583), [anon_sym_BANG] = ACTIONS(2583), [anon_sym_BANG_EQ] = ACTIONS(2587), [anon_sym_LPAREN] = ACTIONS(2587), [anon_sym_RPAREN] = ACTIONS(2587), [anon_sym_LBRACK] = ACTIONS(2587), [anon_sym_RBRACK] = ACTIONS(2587), [anon_sym_QMARK] = ACTIONS(2587), [anon_sym_COMMA] = ACTIONS(2587), [anon_sym_SEMI] = ACTIONS(2587), [anon_sym_COLON] = ACTIONS(2587), [anon_sym_DOLLAR] = ACTIONS(2587), [anon_sym_EQ] = ACTIONS(2583), [anon_sym_EQ_EQ] = ACTIONS(2587), [anon_sym_STAR] = ACTIONS(2583), [anon_sym_STAR_EQ] = ACTIONS(2587), [anon_sym_PERCENT] = ACTIONS(2583), [anon_sym_PERCENT_EQ] = ACTIONS(2587), [anon_sym_CARET] = ACTIONS(2583), [anon_sym_CARET_EQ] = ACTIONS(2587), [anon_sym_CARET_CARET] = ACTIONS(2583), [anon_sym_CARET_CARET_EQ] = ACTIONS(2587), [anon_sym_TILDE] = ACTIONS(2583), [anon_sym_TILDE_EQ] = ACTIONS(2587), [anon_sym_AT] = ACTIONS(2587), [anon_sym_EQ_GT] = ACTIONS(2587), [anon_sym_POUND] = ACTIONS(2587), [anon_sym_BANGin] = ACTIONS(2587), [anon_sym_BANGis] = ACTIONS(2587), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2587), [sym_float_literal] = ACTIONS(2587), [sym__string] = ACTIONS(2468), }, [570] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2589), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [571] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2591), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [572] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(557), [sym__token_string_token] = STATE(557), [sym__token_no_braces] = STATE(557), [sym_keyword] = STATE(557), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(557), [sym_char_literal] = STATE(557), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2595), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2593), [anon_sym_SLASH_EQ] = ACTIONS(2597), [anon_sym_DOT] = ACTIONS(2593), [anon_sym_DOT_DOT] = ACTIONS(2593), [anon_sym_DOT_DOT_DOT] = ACTIONS(2597), [anon_sym_AMP] = ACTIONS(2593), [anon_sym_AMP_EQ] = ACTIONS(2597), [anon_sym_AMP_AMP] = ACTIONS(2597), [anon_sym_PIPE] = ACTIONS(2593), [anon_sym_PIPE_EQ] = ACTIONS(2597), [anon_sym_PIPE_PIPE] = ACTIONS(2597), [anon_sym_DASH] = ACTIONS(2593), [anon_sym_DASH_EQ] = ACTIONS(2597), [anon_sym_DASH_DASH] = ACTIONS(2597), [anon_sym_PLUS] = ACTIONS(2593), [anon_sym_PLUS_EQ] = ACTIONS(2597), [anon_sym_PLUS_PLUS] = ACTIONS(2597), [anon_sym_LT] = ACTIONS(2593), [anon_sym_LT_EQ] = ACTIONS(2597), [anon_sym_LT_LT] = ACTIONS(2593), [anon_sym_LT_LT_EQ] = ACTIONS(2597), [anon_sym_GT] = ACTIONS(2593), [anon_sym_GT_EQ] = ACTIONS(2597), [anon_sym_GT_GT_EQ] = ACTIONS(2597), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2597), [anon_sym_GT_GT] = ACTIONS(2593), [anon_sym_GT_GT_GT] = ACTIONS(2593), [anon_sym_BANG] = ACTIONS(2593), [anon_sym_BANG_EQ] = ACTIONS(2597), [anon_sym_LPAREN] = ACTIONS(2597), [anon_sym_RPAREN] = ACTIONS(2597), [anon_sym_LBRACK] = ACTIONS(2597), [anon_sym_RBRACK] = ACTIONS(2597), [anon_sym_QMARK] = ACTIONS(2597), [anon_sym_COMMA] = ACTIONS(2597), [anon_sym_SEMI] = ACTIONS(2597), [anon_sym_COLON] = ACTIONS(2597), [anon_sym_DOLLAR] = ACTIONS(2597), [anon_sym_EQ] = ACTIONS(2593), [anon_sym_EQ_EQ] = ACTIONS(2597), [anon_sym_STAR] = ACTIONS(2593), [anon_sym_STAR_EQ] = ACTIONS(2597), [anon_sym_PERCENT] = ACTIONS(2593), [anon_sym_PERCENT_EQ] = ACTIONS(2597), [anon_sym_CARET] = ACTIONS(2593), [anon_sym_CARET_EQ] = ACTIONS(2597), [anon_sym_CARET_CARET] = ACTIONS(2593), [anon_sym_CARET_CARET_EQ] = ACTIONS(2597), [anon_sym_TILDE] = ACTIONS(2593), [anon_sym_TILDE_EQ] = ACTIONS(2597), [anon_sym_AT] = ACTIONS(2597), [anon_sym_EQ_GT] = ACTIONS(2597), [anon_sym_POUND] = ACTIONS(2597), [anon_sym_BANGin] = ACTIONS(2597), [anon_sym_BANGis] = ACTIONS(2597), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2597), [sym_float_literal] = ACTIONS(2597), [sym__string] = ACTIONS(2468), }, [573] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(581), [sym__token_string_token] = STATE(581), [sym__token_no_braces] = STATE(581), [sym_keyword] = STATE(581), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(581), [sym_char_literal] = STATE(581), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2599), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2601), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2599), [anon_sym_SLASH_EQ] = ACTIONS(2603), [anon_sym_DOT] = ACTIONS(2599), [anon_sym_DOT_DOT] = ACTIONS(2599), [anon_sym_DOT_DOT_DOT] = ACTIONS(2603), [anon_sym_AMP] = ACTIONS(2599), [anon_sym_AMP_EQ] = ACTIONS(2603), [anon_sym_AMP_AMP] = ACTIONS(2603), [anon_sym_PIPE] = ACTIONS(2599), [anon_sym_PIPE_EQ] = ACTIONS(2603), [anon_sym_PIPE_PIPE] = ACTIONS(2603), [anon_sym_DASH] = ACTIONS(2599), [anon_sym_DASH_EQ] = ACTIONS(2603), [anon_sym_DASH_DASH] = ACTIONS(2603), [anon_sym_PLUS] = ACTIONS(2599), [anon_sym_PLUS_EQ] = ACTIONS(2603), [anon_sym_PLUS_PLUS] = ACTIONS(2603), [anon_sym_LT] = ACTIONS(2599), [anon_sym_LT_EQ] = ACTIONS(2603), [anon_sym_LT_LT] = ACTIONS(2599), [anon_sym_LT_LT_EQ] = ACTIONS(2603), [anon_sym_GT] = ACTIONS(2599), [anon_sym_GT_EQ] = ACTIONS(2603), [anon_sym_GT_GT_EQ] = ACTIONS(2603), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2603), [anon_sym_GT_GT] = ACTIONS(2599), [anon_sym_GT_GT_GT] = ACTIONS(2599), [anon_sym_BANG] = ACTIONS(2599), [anon_sym_BANG_EQ] = ACTIONS(2603), [anon_sym_LPAREN] = ACTIONS(2603), [anon_sym_RPAREN] = ACTIONS(2603), [anon_sym_LBRACK] = ACTIONS(2603), [anon_sym_RBRACK] = ACTIONS(2603), [anon_sym_QMARK] = ACTIONS(2603), [anon_sym_COMMA] = ACTIONS(2603), [anon_sym_SEMI] = ACTIONS(2603), [anon_sym_COLON] = ACTIONS(2603), [anon_sym_DOLLAR] = ACTIONS(2603), [anon_sym_EQ] = ACTIONS(2599), [anon_sym_EQ_EQ] = ACTIONS(2603), [anon_sym_STAR] = ACTIONS(2599), [anon_sym_STAR_EQ] = ACTIONS(2603), [anon_sym_PERCENT] = ACTIONS(2599), [anon_sym_PERCENT_EQ] = ACTIONS(2603), [anon_sym_CARET] = ACTIONS(2599), [anon_sym_CARET_EQ] = ACTIONS(2603), [anon_sym_CARET_CARET] = ACTIONS(2599), [anon_sym_CARET_CARET_EQ] = ACTIONS(2603), [anon_sym_TILDE] = ACTIONS(2599), [anon_sym_TILDE_EQ] = ACTIONS(2603), [anon_sym_AT] = ACTIONS(2603), [anon_sym_EQ_GT] = ACTIONS(2603), [anon_sym_POUND] = ACTIONS(2603), [anon_sym_BANGin] = ACTIONS(2603), [anon_sym_BANGis] = ACTIONS(2603), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2603), [sym_float_literal] = ACTIONS(2603), [sym__string] = ACTIONS(2468), }, [574] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2605), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [575] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2607), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [576] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(574), [sym__token_string_token] = STATE(574), [sym__token_no_braces] = STATE(574), [sym_keyword] = STATE(574), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(574), [sym_char_literal] = STATE(574), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2609), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2611), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2609), [anon_sym_SLASH_EQ] = ACTIONS(2613), [anon_sym_DOT] = ACTIONS(2609), [anon_sym_DOT_DOT] = ACTIONS(2609), [anon_sym_DOT_DOT_DOT] = ACTIONS(2613), [anon_sym_AMP] = ACTIONS(2609), [anon_sym_AMP_EQ] = ACTIONS(2613), [anon_sym_AMP_AMP] = ACTIONS(2613), [anon_sym_PIPE] = ACTIONS(2609), [anon_sym_PIPE_EQ] = ACTIONS(2613), [anon_sym_PIPE_PIPE] = ACTIONS(2613), [anon_sym_DASH] = ACTIONS(2609), [anon_sym_DASH_EQ] = ACTIONS(2613), [anon_sym_DASH_DASH] = ACTIONS(2613), [anon_sym_PLUS] = ACTIONS(2609), [anon_sym_PLUS_EQ] = ACTIONS(2613), [anon_sym_PLUS_PLUS] = ACTIONS(2613), [anon_sym_LT] = ACTIONS(2609), [anon_sym_LT_EQ] = ACTIONS(2613), [anon_sym_LT_LT] = ACTIONS(2609), [anon_sym_LT_LT_EQ] = ACTIONS(2613), [anon_sym_GT] = ACTIONS(2609), [anon_sym_GT_EQ] = ACTIONS(2613), [anon_sym_GT_GT_EQ] = ACTIONS(2613), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2613), [anon_sym_GT_GT] = ACTIONS(2609), [anon_sym_GT_GT_GT] = ACTIONS(2609), [anon_sym_BANG] = ACTIONS(2609), [anon_sym_BANG_EQ] = ACTIONS(2613), [anon_sym_LPAREN] = ACTIONS(2613), [anon_sym_RPAREN] = ACTIONS(2613), [anon_sym_LBRACK] = ACTIONS(2613), [anon_sym_RBRACK] = ACTIONS(2613), [anon_sym_QMARK] = ACTIONS(2613), [anon_sym_COMMA] = ACTIONS(2613), [anon_sym_SEMI] = ACTIONS(2613), [anon_sym_COLON] = ACTIONS(2613), [anon_sym_DOLLAR] = ACTIONS(2613), [anon_sym_EQ] = ACTIONS(2609), [anon_sym_EQ_EQ] = ACTIONS(2613), [anon_sym_STAR] = ACTIONS(2609), [anon_sym_STAR_EQ] = ACTIONS(2613), [anon_sym_PERCENT] = ACTIONS(2609), [anon_sym_PERCENT_EQ] = ACTIONS(2613), [anon_sym_CARET] = ACTIONS(2609), [anon_sym_CARET_EQ] = ACTIONS(2613), [anon_sym_CARET_CARET] = ACTIONS(2609), [anon_sym_CARET_CARET_EQ] = ACTIONS(2613), [anon_sym_TILDE] = ACTIONS(2609), [anon_sym_TILDE_EQ] = ACTIONS(2613), [anon_sym_AT] = ACTIONS(2613), [anon_sym_EQ_GT] = ACTIONS(2613), [anon_sym_POUND] = ACTIONS(2613), [anon_sym_BANGin] = ACTIONS(2613), [anon_sym_BANGis] = ACTIONS(2613), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2613), [sym_float_literal] = ACTIONS(2613), [sym__string] = ACTIONS(2468), }, [577] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(555), [sym__token_string_token] = STATE(555), [sym__token_no_braces] = STATE(555), [sym_keyword] = STATE(555), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(555), [sym_char_literal] = STATE(555), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2615), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2617), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2615), [anon_sym_SLASH_EQ] = ACTIONS(2619), [anon_sym_DOT] = ACTIONS(2615), [anon_sym_DOT_DOT] = ACTIONS(2615), [anon_sym_DOT_DOT_DOT] = ACTIONS(2619), [anon_sym_AMP] = ACTIONS(2615), [anon_sym_AMP_EQ] = ACTIONS(2619), [anon_sym_AMP_AMP] = ACTIONS(2619), [anon_sym_PIPE] = ACTIONS(2615), [anon_sym_PIPE_EQ] = ACTIONS(2619), [anon_sym_PIPE_PIPE] = ACTIONS(2619), [anon_sym_DASH] = ACTIONS(2615), [anon_sym_DASH_EQ] = ACTIONS(2619), [anon_sym_DASH_DASH] = ACTIONS(2619), [anon_sym_PLUS] = ACTIONS(2615), [anon_sym_PLUS_EQ] = ACTIONS(2619), [anon_sym_PLUS_PLUS] = ACTIONS(2619), [anon_sym_LT] = ACTIONS(2615), [anon_sym_LT_EQ] = ACTIONS(2619), [anon_sym_LT_LT] = ACTIONS(2615), [anon_sym_LT_LT_EQ] = ACTIONS(2619), [anon_sym_GT] = ACTIONS(2615), [anon_sym_GT_EQ] = ACTIONS(2619), [anon_sym_GT_GT_EQ] = ACTIONS(2619), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2619), [anon_sym_GT_GT] = ACTIONS(2615), [anon_sym_GT_GT_GT] = ACTIONS(2615), [anon_sym_BANG] = ACTIONS(2615), [anon_sym_BANG_EQ] = ACTIONS(2619), [anon_sym_LPAREN] = ACTIONS(2619), [anon_sym_RPAREN] = ACTIONS(2619), [anon_sym_LBRACK] = ACTIONS(2619), [anon_sym_RBRACK] = ACTIONS(2619), [anon_sym_QMARK] = ACTIONS(2619), [anon_sym_COMMA] = ACTIONS(2619), [anon_sym_SEMI] = ACTIONS(2619), [anon_sym_COLON] = ACTIONS(2619), [anon_sym_DOLLAR] = ACTIONS(2619), [anon_sym_EQ] = ACTIONS(2615), [anon_sym_EQ_EQ] = ACTIONS(2619), [anon_sym_STAR] = ACTIONS(2615), [anon_sym_STAR_EQ] = ACTIONS(2619), [anon_sym_PERCENT] = ACTIONS(2615), [anon_sym_PERCENT_EQ] = ACTIONS(2619), [anon_sym_CARET] = ACTIONS(2615), [anon_sym_CARET_EQ] = ACTIONS(2619), [anon_sym_CARET_CARET] = ACTIONS(2615), [anon_sym_CARET_CARET_EQ] = ACTIONS(2619), [anon_sym_TILDE] = ACTIONS(2615), [anon_sym_TILDE_EQ] = ACTIONS(2619), [anon_sym_AT] = ACTIONS(2619), [anon_sym_EQ_GT] = ACTIONS(2619), [anon_sym_POUND] = ACTIONS(2619), [anon_sym_BANGin] = ACTIONS(2619), [anon_sym_BANGis] = ACTIONS(2619), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2619), [sym_float_literal] = ACTIONS(2619), [sym__string] = ACTIONS(2468), }, [578] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2621), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [579] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2623), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [580] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(579), [sym__token_string_token] = STATE(579), [sym__token_no_braces] = STATE(579), [sym_keyword] = STATE(579), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(579), [sym_char_literal] = STATE(579), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2625), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2627), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2625), [anon_sym_SLASH_EQ] = ACTIONS(2629), [anon_sym_DOT] = ACTIONS(2625), [anon_sym_DOT_DOT] = ACTIONS(2625), [anon_sym_DOT_DOT_DOT] = ACTIONS(2629), [anon_sym_AMP] = ACTIONS(2625), [anon_sym_AMP_EQ] = ACTIONS(2629), [anon_sym_AMP_AMP] = ACTIONS(2629), [anon_sym_PIPE] = ACTIONS(2625), [anon_sym_PIPE_EQ] = ACTIONS(2629), [anon_sym_PIPE_PIPE] = ACTIONS(2629), [anon_sym_DASH] = ACTIONS(2625), [anon_sym_DASH_EQ] = ACTIONS(2629), [anon_sym_DASH_DASH] = ACTIONS(2629), [anon_sym_PLUS] = ACTIONS(2625), [anon_sym_PLUS_EQ] = ACTIONS(2629), [anon_sym_PLUS_PLUS] = ACTIONS(2629), [anon_sym_LT] = ACTIONS(2625), [anon_sym_LT_EQ] = ACTIONS(2629), [anon_sym_LT_LT] = ACTIONS(2625), [anon_sym_LT_LT_EQ] = ACTIONS(2629), [anon_sym_GT] = ACTIONS(2625), [anon_sym_GT_EQ] = ACTIONS(2629), [anon_sym_GT_GT_EQ] = ACTIONS(2629), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2629), [anon_sym_GT_GT] = ACTIONS(2625), [anon_sym_GT_GT_GT] = ACTIONS(2625), [anon_sym_BANG] = ACTIONS(2625), [anon_sym_BANG_EQ] = ACTIONS(2629), [anon_sym_LPAREN] = ACTIONS(2629), [anon_sym_RPAREN] = ACTIONS(2629), [anon_sym_LBRACK] = ACTIONS(2629), [anon_sym_RBRACK] = ACTIONS(2629), [anon_sym_QMARK] = ACTIONS(2629), [anon_sym_COMMA] = ACTIONS(2629), [anon_sym_SEMI] = ACTIONS(2629), [anon_sym_COLON] = ACTIONS(2629), [anon_sym_DOLLAR] = ACTIONS(2629), [anon_sym_EQ] = ACTIONS(2625), [anon_sym_EQ_EQ] = ACTIONS(2629), [anon_sym_STAR] = ACTIONS(2625), [anon_sym_STAR_EQ] = ACTIONS(2629), [anon_sym_PERCENT] = ACTIONS(2625), [anon_sym_PERCENT_EQ] = ACTIONS(2629), [anon_sym_CARET] = ACTIONS(2625), [anon_sym_CARET_EQ] = ACTIONS(2629), [anon_sym_CARET_CARET] = ACTIONS(2625), [anon_sym_CARET_CARET_EQ] = ACTIONS(2629), [anon_sym_TILDE] = ACTIONS(2625), [anon_sym_TILDE_EQ] = ACTIONS(2629), [anon_sym_AT] = ACTIONS(2629), [anon_sym_EQ_GT] = ACTIONS(2629), [anon_sym_POUND] = ACTIONS(2629), [anon_sym_BANGin] = ACTIONS(2629), [anon_sym_BANGis] = ACTIONS(2629), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2629), [sym_float_literal] = ACTIONS(2629), [sym__string] = ACTIONS(2468), }, [581] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2631), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [582] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(583), [sym__token_string_token] = STATE(583), [sym__token_no_braces] = STATE(583), [sym_keyword] = STATE(583), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(583), [sym_char_literal] = STATE(583), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2633), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2635), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2633), [anon_sym_SLASH_EQ] = ACTIONS(2637), [anon_sym_DOT] = ACTIONS(2633), [anon_sym_DOT_DOT] = ACTIONS(2633), [anon_sym_DOT_DOT_DOT] = ACTIONS(2637), [anon_sym_AMP] = ACTIONS(2633), [anon_sym_AMP_EQ] = ACTIONS(2637), [anon_sym_AMP_AMP] = ACTIONS(2637), [anon_sym_PIPE] = ACTIONS(2633), [anon_sym_PIPE_EQ] = ACTIONS(2637), [anon_sym_PIPE_PIPE] = ACTIONS(2637), [anon_sym_DASH] = ACTIONS(2633), [anon_sym_DASH_EQ] = ACTIONS(2637), [anon_sym_DASH_DASH] = ACTIONS(2637), [anon_sym_PLUS] = ACTIONS(2633), [anon_sym_PLUS_EQ] = ACTIONS(2637), [anon_sym_PLUS_PLUS] = ACTIONS(2637), [anon_sym_LT] = ACTIONS(2633), [anon_sym_LT_EQ] = ACTIONS(2637), [anon_sym_LT_LT] = ACTIONS(2633), [anon_sym_LT_LT_EQ] = ACTIONS(2637), [anon_sym_GT] = ACTIONS(2633), [anon_sym_GT_EQ] = ACTIONS(2637), [anon_sym_GT_GT_EQ] = ACTIONS(2637), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2637), [anon_sym_GT_GT] = ACTIONS(2633), [anon_sym_GT_GT_GT] = ACTIONS(2633), [anon_sym_BANG] = ACTIONS(2633), [anon_sym_BANG_EQ] = ACTIONS(2637), [anon_sym_LPAREN] = ACTIONS(2637), [anon_sym_RPAREN] = ACTIONS(2637), [anon_sym_LBRACK] = ACTIONS(2637), [anon_sym_RBRACK] = ACTIONS(2637), [anon_sym_QMARK] = ACTIONS(2637), [anon_sym_COMMA] = ACTIONS(2637), [anon_sym_SEMI] = ACTIONS(2637), [anon_sym_COLON] = ACTIONS(2637), [anon_sym_DOLLAR] = ACTIONS(2637), [anon_sym_EQ] = ACTIONS(2633), [anon_sym_EQ_EQ] = ACTIONS(2637), [anon_sym_STAR] = ACTIONS(2633), [anon_sym_STAR_EQ] = ACTIONS(2637), [anon_sym_PERCENT] = ACTIONS(2633), [anon_sym_PERCENT_EQ] = ACTIONS(2637), [anon_sym_CARET] = ACTIONS(2633), [anon_sym_CARET_EQ] = ACTIONS(2637), [anon_sym_CARET_CARET] = ACTIONS(2633), [anon_sym_CARET_CARET_EQ] = ACTIONS(2637), [anon_sym_TILDE] = ACTIONS(2633), [anon_sym_TILDE_EQ] = ACTIONS(2637), [anon_sym_AT] = ACTIONS(2637), [anon_sym_EQ_GT] = ACTIONS(2637), [anon_sym_POUND] = ACTIONS(2637), [anon_sym_BANGin] = ACTIONS(2637), [anon_sym_BANGis] = ACTIONS(2637), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2637), [sym_float_literal] = ACTIONS(2637), [sym__string] = ACTIONS(2468), }, [583] = { [sym_token_string] = STATE(646), [aux_sym__token_string_tokens] = STATE(566), [sym__token_string_token] = STATE(566), [sym__token_no_braces] = STATE(566), [sym_keyword] = STATE(566), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(566), [sym_char_literal] = STATE(566), [sym_special_keyword] = STATE(648), [sym_identifier] = ACTIONS(2476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2639), [anon_sym_LBRACE] = ACTIONS(2440), [anon_sym_SLASH] = ACTIONS(2476), [anon_sym_SLASH_EQ] = ACTIONS(2480), [anon_sym_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT] = ACTIONS(2476), [anon_sym_DOT_DOT_DOT] = ACTIONS(2480), [anon_sym_AMP] = ACTIONS(2476), [anon_sym_AMP_EQ] = ACTIONS(2480), [anon_sym_AMP_AMP] = ACTIONS(2480), [anon_sym_PIPE] = ACTIONS(2476), [anon_sym_PIPE_EQ] = ACTIONS(2480), [anon_sym_PIPE_PIPE] = ACTIONS(2480), [anon_sym_DASH] = ACTIONS(2476), [anon_sym_DASH_EQ] = ACTIONS(2480), [anon_sym_DASH_DASH] = ACTIONS(2480), [anon_sym_PLUS] = ACTIONS(2476), [anon_sym_PLUS_EQ] = ACTIONS(2480), [anon_sym_PLUS_PLUS] = ACTIONS(2480), [anon_sym_LT] = ACTIONS(2476), [anon_sym_LT_EQ] = ACTIONS(2480), [anon_sym_LT_LT] = ACTIONS(2476), [anon_sym_LT_LT_EQ] = ACTIONS(2480), [anon_sym_GT] = ACTIONS(2476), [anon_sym_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2480), [anon_sym_GT_GT] = ACTIONS(2476), [anon_sym_GT_GT_GT] = ACTIONS(2476), [anon_sym_BANG] = ACTIONS(2476), [anon_sym_BANG_EQ] = ACTIONS(2480), [anon_sym_LPAREN] = ACTIONS(2480), [anon_sym_RPAREN] = ACTIONS(2480), [anon_sym_LBRACK] = ACTIONS(2480), [anon_sym_RBRACK] = ACTIONS(2480), [anon_sym_QMARK] = ACTIONS(2480), [anon_sym_COMMA] = ACTIONS(2480), [anon_sym_SEMI] = ACTIONS(2480), [anon_sym_COLON] = ACTIONS(2480), [anon_sym_DOLLAR] = ACTIONS(2480), [anon_sym_EQ] = ACTIONS(2476), [anon_sym_EQ_EQ] = ACTIONS(2480), [anon_sym_STAR] = ACTIONS(2476), [anon_sym_STAR_EQ] = ACTIONS(2480), [anon_sym_PERCENT] = ACTIONS(2476), [anon_sym_PERCENT_EQ] = ACTIONS(2480), [anon_sym_CARET] = ACTIONS(2476), [anon_sym_CARET_EQ] = ACTIONS(2480), [anon_sym_CARET_CARET] = ACTIONS(2476), [anon_sym_CARET_CARET_EQ] = ACTIONS(2480), [anon_sym_TILDE] = ACTIONS(2476), [anon_sym_TILDE_EQ] = ACTIONS(2480), [anon_sym_AT] = ACTIONS(2480), [anon_sym_EQ_GT] = ACTIONS(2480), [anon_sym_POUND] = ACTIONS(2480), [anon_sym_BANGin] = ACTIONS(2480), [anon_sym_BANGis] = ACTIONS(2480), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2480), [sym_float_literal] = ACTIONS(2480), [sym__string] = ACTIONS(2468), }, [584] = { [sym_import_declaration] = STATE(600), [sym_mixin_declaration] = STATE(600), [sym__declaration] = STATE(600), [sym__declaration2] = STATE(600), [sym_variable_declaration] = STATE(600), [sym_manifest_constant] = STATE(600), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(600), [sym_alias_declaration] = STATE(600), [sym_alias_reassign] = STATE(600), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(600), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(600), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(600), [sym_union_declaration] = STATE(600), [sym_postblit] = STATE(600), [sym_invariant_declaration] = STATE(600), [sym_class_declaration] = STATE(600), [sym_constructor] = STATE(600), [sym_destructor] = STATE(600), [sym_alias_this] = STATE(600), [sym_interface_declaration] = STATE(600), [sym_enum_declaration] = STATE(600), [sym_anonymous_enum_declaration] = STATE(600), [sym_function_declaration] = STATE(600), [sym_template_declaration] = STATE(600), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(600), [sym_template_mixin] = STATE(600), [sym_conditional_declaration] = STATE(600), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(600), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(600), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(600), [sym_static_assert] = STATE(600), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(600), [aux_sym_source_file_repeat1] = STATE(600), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2647), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2645), [sym_case] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_catch] = ACTIONS(2645), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2645), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2645), [sym_for] = ACTIONS(2645), [sym_foreach] = ACTIONS(2645), [sym_foreach_reverse] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_goto] = ACTIONS(2645), [sym_if] = ACTIONS(2645), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2645), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2645), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2645), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2645), [sym_try] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2645), [sym_with] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [585] = { [sym_import_declaration] = STATE(597), [sym_mixin_declaration] = STATE(597), [sym__declaration] = STATE(597), [sym__declaration2] = STATE(597), [sym_variable_declaration] = STATE(597), [sym_manifest_constant] = STATE(597), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(597), [sym_alias_declaration] = STATE(597), [sym_alias_reassign] = STATE(597), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(597), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(597), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(597), [sym_union_declaration] = STATE(597), [sym_postblit] = STATE(597), [sym_invariant_declaration] = STATE(597), [sym_class_declaration] = STATE(597), [sym_constructor] = STATE(597), [sym_destructor] = STATE(597), [sym_alias_this] = STATE(597), [sym_interface_declaration] = STATE(597), [sym_enum_declaration] = STATE(597), [sym_anonymous_enum_declaration] = STATE(597), [sym_function_declaration] = STATE(597), [sym_template_declaration] = STATE(597), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(597), [sym_template_mixin] = STATE(597), [sym_conditional_declaration] = STATE(597), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(597), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(597), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(597), [sym_static_assert] = STATE(597), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(597), [aux_sym_source_file_repeat1] = STATE(597), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2667), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2665), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [586] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2669), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2672), [anon_sym_RBRACE] = ACTIONS(2672), [anon_sym_LBRACE] = ACTIONS(2672), [anon_sym_DOT] = ACTIONS(2674), [anon_sym_AMP] = ACTIONS(2672), [anon_sym_DASH] = ACTIONS(2677), [anon_sym_DASH_DASH] = ACTIONS(2672), [anon_sym_PLUS] = ACTIONS(2677), [anon_sym_PLUS_PLUS] = ACTIONS(2672), [anon_sym_BANG] = ACTIONS(2672), [anon_sym_LPAREN] = ACTIONS(2672), [anon_sym_RPAREN] = ACTIONS(2672), [anon_sym_LBRACK] = ACTIONS(2672), [anon_sym_SEMI] = ACTIONS(2679), [anon_sym_DOLLAR] = ACTIONS(2672), [anon_sym_STAR] = ACTIONS(2672), [anon_sym_TILDE] = ACTIONS(2682), [anon_sym_AT] = ACTIONS(2685), [sym_bool] = ACTIONS(2688), [sym_byte] = ACTIONS(2688), [sym_ubyte] = ACTIONS(2688), [sym_char] = ACTIONS(2688), [sym_short] = ACTIONS(2688), [sym_ushort] = ACTIONS(2688), [sym_int] = ACTIONS(2688), [sym_uint] = ACTIONS(2688), [sym_long] = ACTIONS(2688), [sym_ulong] = ACTIONS(2688), [sym_cent] = ACTIONS(2688), [sym_ucent] = ACTIONS(2688), [sym_wchar] = ACTIONS(2688), [sym_dchar] = ACTIONS(2688), [sym_float] = ACTIONS(2688), [sym_double] = ACTIONS(2688), [sym_real] = ACTIONS(2688), [sym_ifloat] = ACTIONS(2688), [sym_idouble] = ACTIONS(2688), [sym_ireal] = ACTIONS(2688), [sym_cfloat] = ACTIONS(2688), [sym_cdouble] = ACTIONS(2688), [sym_creal] = ACTIONS(2688), [sym_size_t] = ACTIONS(2688), [sym_ptrdiff_t] = ACTIONS(2688), [sym_string] = ACTIONS(2688), [sym_cstring] = ACTIONS(2688), [sym_dstring] = ACTIONS(2688), [sym_wstring] = ACTIONS(2688), [sym_noreturn] = ACTIONS(2688), [sym_true] = ACTIONS(2677), [sym_false] = ACTIONS(2677), [sym_null] = ACTIONS(2677), [sym_super] = ACTIONS(2677), [sym_this] = ACTIONS(2691), [sym_abstract] = ACTIONS(2694), [sym_alias] = ACTIONS(2697), [sym_align] = ACTIONS(2700), [sym_asm] = ACTIONS(2677), [sym_assert] = ACTIONS(2677), [sym_auto] = ACTIONS(2694), [sym_break] = ACTIONS(2677), [sym_case] = ACTIONS(2677), [sym_cast] = ACTIONS(2677), [sym_catch] = ACTIONS(2677), [sym_class] = ACTIONS(2703), [sym_const] = ACTIONS(2706), [sym_continue] = ACTIONS(2677), [sym_debug] = ACTIONS(2709), [sym_default] = ACTIONS(2677), [sym_delegate] = ACTIONS(2677), [sym_delete] = ACTIONS(2677), [sym_deprecated] = ACTIONS(2712), [sym_do] = ACTIONS(2677), [sym_else] = ACTIONS(2677), [sym_enum] = ACTIONS(2715), [sym_export] = ACTIONS(2718), [sym_extern] = ACTIONS(2721), [sym_final] = ACTIONS(2694), [sym_finally] = ACTIONS(2677), [sym_for] = ACTIONS(2677), [sym_foreach] = ACTIONS(2677), [sym_foreach_reverse] = ACTIONS(2677), [sym_function] = ACTIONS(2677), [sym_goto] = ACTIONS(2677), [sym_if] = ACTIONS(2677), [sym_immutable] = ACTIONS(2706), [sym_import] = ACTIONS(2724), [sym_in] = ACTIONS(2677), [sym_inout] = ACTIONS(2706), [sym_interface] = ACTIONS(2727), [sym_invariant] = ACTIONS(2730), [sym_is] = ACTIONS(2677), [sym_mixin] = ACTIONS(2733), [sym_new] = ACTIONS(2677), [sym_nothrow] = ACTIONS(2694), [sym_out] = ACTIONS(2677), [sym_override] = ACTIONS(2694), [sym_package] = ACTIONS(2736), [sym_pragma] = ACTIONS(2739), [sym_private] = ACTIONS(2718), [sym_protected] = ACTIONS(2718), [sym_public] = ACTIONS(2718), [sym_pure] = ACTIONS(2694), [sym_ref] = ACTIONS(2694), [sym_return] = ACTIONS(2718), [sym_scope] = ACTIONS(2694), [sym_shared] = ACTIONS(2742), [sym_static] = ACTIONS(2745), [sym_struct] = ACTIONS(2748), [sym_switch] = ACTIONS(2677), [sym_synchronized] = ACTIONS(2694), [sym_template] = ACTIONS(2751), [sym_throw] = ACTIONS(2677), [sym_try] = ACTIONS(2677), [sym_typeid] = ACTIONS(2677), [sym_typeof] = ACTIONS(2754), [sym_union] = ACTIONS(2757), [sym_unittest] = ACTIONS(2760), [sym_version] = ACTIONS(2763), [sym_while] = ACTIONS(2677), [sym_with] = ACTIONS(2677), [sym_gshared] = ACTIONS(2694), [sym_traits] = ACTIONS(2766), [sym_vector] = ACTIONS(2769), [sym_void] = ACTIONS(2688), [anon_sym_BQUOTE] = ACTIONS(2672), [anon_sym_r_DQUOTE] = ACTIONS(2672), [anon_sym_x_DQUOTE] = ACTIONS(2672), [anon_sym_DQUOTE] = ACTIONS(2672), [anon_sym_i_BQUOTE] = ACTIONS(2672), [anon_sym_i_DQUOTE] = ACTIONS(2672), [anon_sym_iq_LBRACE] = ACTIONS(2672), [aux_sym_char_literal_token1] = ACTIONS(2672), [anon_sym_SQUOTE] = ACTIONS(2677), [anon_sym___DATE__] = ACTIONS(2677), [anon_sym___FILE__] = ACTIONS(2677), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2677), [anon_sym___FUNCTION__] = ACTIONS(2677), [anon_sym___LINE__] = ACTIONS(2677), [anon_sym___MODULE__] = ACTIONS(2677), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2677), [anon_sym___TIME__] = ACTIONS(2677), [anon_sym___TIMESTAMP__] = ACTIONS(2677), [anon_sym___VENDOR__] = ACTIONS(2677), [anon_sym___VERSION__] = ACTIONS(2677), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2672), [sym_float_literal] = ACTIONS(2672), [sym__string] = ACTIONS(2672), }, [587] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(6974), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2774), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [588] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(7680), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2778), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [589] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(7307), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2780), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [590] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2782), [anon_sym_RBRACE] = ACTIONS(2782), [anon_sym_LBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2782), [anon_sym_DASH] = ACTIONS(2784), [anon_sym_DASH_DASH] = ACTIONS(2782), [anon_sym_PLUS] = ACTIONS(2784), [anon_sym_PLUS_PLUS] = ACTIONS(2782), [anon_sym_BANG] = ACTIONS(2782), [anon_sym_LPAREN] = ACTIONS(2782), [anon_sym_RPAREN] = ACTIONS(2782), [anon_sym_LBRACK] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2786), [anon_sym_DOLLAR] = ACTIONS(2782), [anon_sym_STAR] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2784), [sym_false] = ACTIONS(2784), [sym_null] = ACTIONS(2784), [sym_super] = ACTIONS(2784), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2784), [sym_assert] = ACTIONS(2784), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2784), [sym_case] = ACTIONS(2784), [sym_cast] = ACTIONS(2784), [sym_catch] = ACTIONS(2784), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2784), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2784), [sym_delegate] = ACTIONS(2784), [sym_delete] = ACTIONS(2784), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2784), [sym_else] = ACTIONS(2784), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2784), [sym_for] = ACTIONS(2784), [sym_foreach] = ACTIONS(2784), [sym_foreach_reverse] = ACTIONS(2784), [sym_function] = ACTIONS(2784), [sym_goto] = ACTIONS(2784), [sym_if] = ACTIONS(2784), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2784), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2784), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2784), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2784), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2784), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2784), [sym_try] = ACTIONS(2784), [sym_typeid] = ACTIONS(2784), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2784), [sym_with] = ACTIONS(2784), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2782), [anon_sym_r_DQUOTE] = ACTIONS(2782), [anon_sym_x_DQUOTE] = ACTIONS(2782), [anon_sym_DQUOTE] = ACTIONS(2782), [anon_sym_i_BQUOTE] = ACTIONS(2782), [anon_sym_i_DQUOTE] = ACTIONS(2782), [anon_sym_iq_LBRACE] = ACTIONS(2782), [aux_sym_char_literal_token1] = ACTIONS(2782), [anon_sym_SQUOTE] = ACTIONS(2784), [anon_sym___DATE__] = ACTIONS(2784), [anon_sym___FILE__] = ACTIONS(2784), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2784), [anon_sym___FUNCTION__] = ACTIONS(2784), [anon_sym___LINE__] = ACTIONS(2784), [anon_sym___MODULE__] = ACTIONS(2784), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2784), [anon_sym___TIME__] = ACTIONS(2784), [anon_sym___TIMESTAMP__] = ACTIONS(2784), [anon_sym___VENDOR__] = ACTIONS(2784), [anon_sym___VERSION__] = ACTIONS(2784), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2782), [sym_float_literal] = ACTIONS(2782), [sym__string] = ACTIONS(2782), }, [591] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(7716), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2788), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [592] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(7639), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2790), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [593] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(7257), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2792), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [594] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2786), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2665), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [595] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(7879), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2794), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [596] = { [sym_import_declaration] = STATE(598), [sym_mixin_declaration] = STATE(598), [sym__declaration] = STATE(598), [sym__declaration2] = STATE(598), [sym_variable_declaration] = STATE(598), [sym_manifest_constant] = STATE(598), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(598), [sym_alias_declaration] = STATE(598), [sym_alias_reassign] = STATE(598), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(598), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(598), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(598), [sym_union_declaration] = STATE(598), [sym_postblit] = STATE(598), [sym_invariant_declaration] = STATE(598), [sym_class_declaration] = STATE(598), [sym_constructor] = STATE(598), [sym_destructor] = STATE(598), [sym_alias_this] = STATE(598), [sym_interface_declaration] = STATE(598), [sym_enum_declaration] = STATE(598), [sym_anonymous_enum_declaration] = STATE(598), [sym_function_declaration] = STATE(598), [sym_template_declaration] = STATE(598), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(598), [sym_template_mixin] = STATE(598), [sym_conditional_declaration] = STATE(598), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(598), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(598), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(598), [sym_static_assert] = STATE(598), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(598), [aux_sym_source_file_repeat1] = STATE(598), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2800), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2798), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [597] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2786), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2798), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [598] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2786), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2645), [sym_case] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_catch] = ACTIONS(2645), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2645), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2645), [sym_for] = ACTIONS(2645), [sym_foreach] = ACTIONS(2645), [sym_foreach_reverse] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_goto] = ACTIONS(2645), [sym_if] = ACTIONS(2645), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2645), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2645), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2645), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2645), [sym_try] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2645), [sym_with] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [599] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(604), [sym_keyword] = STATE(604), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(604), [sym_char_literal] = STATE(604), [sym_special_keyword] = STATE(648), [sym_asm_inline] = STATE(6997), [aux_sym_asm_inline_repeat1] = STATE(604), [sym_identifier] = ACTIONS(2772), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2802), [anon_sym_SLASH] = ACTIONS(2772), [anon_sym_SLASH_EQ] = ACTIONS(2776), [anon_sym_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT] = ACTIONS(2772), [anon_sym_DOT_DOT_DOT] = ACTIONS(2776), [anon_sym_AMP] = ACTIONS(2772), [anon_sym_AMP_EQ] = ACTIONS(2776), [anon_sym_AMP_AMP] = ACTIONS(2776), [anon_sym_PIPE] = ACTIONS(2772), [anon_sym_PIPE_EQ] = ACTIONS(2776), [anon_sym_PIPE_PIPE] = ACTIONS(2776), [anon_sym_DASH] = ACTIONS(2772), [anon_sym_DASH_EQ] = ACTIONS(2776), [anon_sym_DASH_DASH] = ACTIONS(2776), [anon_sym_PLUS] = ACTIONS(2772), [anon_sym_PLUS_EQ] = ACTIONS(2776), [anon_sym_PLUS_PLUS] = ACTIONS(2776), [anon_sym_LT] = ACTIONS(2772), [anon_sym_LT_EQ] = ACTIONS(2776), [anon_sym_LT_LT] = ACTIONS(2772), [anon_sym_LT_LT_EQ] = ACTIONS(2776), [anon_sym_GT] = ACTIONS(2772), [anon_sym_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2776), [anon_sym_GT_GT] = ACTIONS(2772), [anon_sym_GT_GT_GT] = ACTIONS(2772), [anon_sym_BANG] = ACTIONS(2772), [anon_sym_BANG_EQ] = ACTIONS(2776), [anon_sym_LPAREN] = ACTIONS(2776), [anon_sym_RPAREN] = ACTIONS(2776), [anon_sym_LBRACK] = ACTIONS(2776), [anon_sym_RBRACK] = ACTIONS(2776), [anon_sym_QMARK] = ACTIONS(2776), [anon_sym_COMMA] = ACTIONS(2776), [anon_sym_SEMI] = ACTIONS(2776), [anon_sym_COLON] = ACTIONS(2776), [anon_sym_DOLLAR] = ACTIONS(2776), [anon_sym_EQ] = ACTIONS(2772), [anon_sym_EQ_EQ] = ACTIONS(2776), [anon_sym_STAR] = ACTIONS(2772), [anon_sym_STAR_EQ] = ACTIONS(2776), [anon_sym_PERCENT] = ACTIONS(2772), [anon_sym_PERCENT_EQ] = ACTIONS(2776), [anon_sym_CARET] = ACTIONS(2772), [anon_sym_CARET_EQ] = ACTIONS(2776), [anon_sym_CARET_CARET] = ACTIONS(2772), [anon_sym_CARET_CARET_EQ] = ACTIONS(2776), [anon_sym_TILDE] = ACTIONS(2772), [anon_sym_TILDE_EQ] = ACTIONS(2776), [anon_sym_AT] = ACTIONS(2776), [anon_sym_EQ_GT] = ACTIONS(2776), [anon_sym_POUND] = ACTIONS(2776), [anon_sym_BANGin] = ACTIONS(2776), [anon_sym_BANGis] = ACTIONS(2776), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2776), [sym_float_literal] = ACTIONS(2776), [sym__string] = ACTIONS(2468), }, [600] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2786), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2806), [sym_case] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_catch] = ACTIONS(2806), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2806), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2806), [sym_for] = ACTIONS(2806), [sym_foreach] = ACTIONS(2806), [sym_foreach_reverse] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_goto] = ACTIONS(2806), [sym_if] = ACTIONS(2806), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2806), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2806), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2806), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2806), [sym_try] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2806), [sym_with] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [601] = { [sym_import_declaration] = STATE(602), [sym_mixin_declaration] = STATE(602), [sym__declaration] = STATE(602), [sym__declaration2] = STATE(602), [sym_variable_declaration] = STATE(602), [sym_manifest_constant] = STATE(602), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(602), [sym_alias_declaration] = STATE(602), [sym_alias_reassign] = STATE(602), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(602), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(602), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(602), [sym_union_declaration] = STATE(602), [sym_postblit] = STATE(602), [sym_invariant_declaration] = STATE(602), [sym_class_declaration] = STATE(602), [sym_constructor] = STATE(602), [sym_destructor] = STATE(602), [sym_alias_this] = STATE(602), [sym_interface_declaration] = STATE(602), [sym_enum_declaration] = STATE(602), [sym_anonymous_enum_declaration] = STATE(602), [sym_function_declaration] = STATE(602), [sym_template_declaration] = STATE(602), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(602), [sym_template_mixin] = STATE(602), [sym_conditional_declaration] = STATE(602), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(602), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(602), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(602), [sym_static_assert] = STATE(602), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(602), [aux_sym_source_file_repeat1] = STATE(602), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2808), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2806), [sym_case] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_catch] = ACTIONS(2806), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2806), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2806), [sym_for] = ACTIONS(2806), [sym_foreach] = ACTIONS(2806), [sym_foreach_reverse] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_goto] = ACTIONS(2806), [sym_if] = ACTIONS(2806), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2806), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2806), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2806), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2806), [sym_try] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2806), [sym_with] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [602] = { [sym_import_declaration] = STATE(586), [sym_mixin_declaration] = STATE(586), [sym__declaration] = STATE(586), [sym__declaration2] = STATE(586), [sym_variable_declaration] = STATE(586), [sym_manifest_constant] = STATE(586), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(586), [sym_alias_declaration] = STATE(586), [sym_alias_reassign] = STATE(586), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(586), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(586), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(586), [sym_union_declaration] = STATE(586), [sym_postblit] = STATE(586), [sym_invariant_declaration] = STATE(586), [sym_class_declaration] = STATE(586), [sym_constructor] = STATE(586), [sym_destructor] = STATE(586), [sym_alias_this] = STATE(586), [sym_interface_declaration] = STATE(586), [sym_enum_declaration] = STATE(586), [sym_anonymous_enum_declaration] = STATE(586), [sym_function_declaration] = STATE(586), [sym_template_declaration] = STATE(586), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(586), [sym_template_mixin] = STATE(586), [sym_conditional_declaration] = STATE(586), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(586), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(586), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(586), [sym_static_assert] = STATE(586), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(586), [aux_sym_source_file_repeat1] = STATE(586), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2810), [anon_sym_RBRACE] = ACTIONS(2810), [anon_sym_LBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2810), [anon_sym_DASH] = ACTIONS(2812), [anon_sym_DASH_DASH] = ACTIONS(2810), [anon_sym_PLUS] = ACTIONS(2812), [anon_sym_PLUS_PLUS] = ACTIONS(2810), [anon_sym_BANG] = ACTIONS(2810), [anon_sym_LPAREN] = ACTIONS(2810), [anon_sym_RPAREN] = ACTIONS(2810), [anon_sym_LBRACK] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2786), [anon_sym_DOLLAR] = ACTIONS(2810), [anon_sym_STAR] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2812), [sym_false] = ACTIONS(2812), [sym_null] = ACTIONS(2812), [sym_super] = ACTIONS(2812), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2812), [sym_assert] = ACTIONS(2812), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2812), [sym_case] = ACTIONS(2812), [sym_cast] = ACTIONS(2812), [sym_catch] = ACTIONS(2812), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2812), [sym_debug] = ACTIONS(2653), [sym_default] = ACTIONS(2812), [sym_delegate] = ACTIONS(2812), [sym_delete] = ACTIONS(2812), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2812), [sym_for] = ACTIONS(2812), [sym_foreach] = ACTIONS(2812), [sym_foreach_reverse] = ACTIONS(2812), [sym_function] = ACTIONS(2812), [sym_goto] = ACTIONS(2812), [sym_if] = ACTIONS(2812), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_in] = ACTIONS(2812), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_is] = ACTIONS(2812), [sym_mixin] = ACTIONS(2657), [sym_new] = ACTIONS(2812), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2812), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_switch] = ACTIONS(2812), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_throw] = ACTIONS(2812), [sym_try] = ACTIONS(2812), [sym_typeid] = ACTIONS(2812), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_while] = ACTIONS(2812), [sym_with] = ACTIONS(2812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2810), [anon_sym_r_DQUOTE] = ACTIONS(2810), [anon_sym_x_DQUOTE] = ACTIONS(2810), [anon_sym_DQUOTE] = ACTIONS(2810), [anon_sym_i_BQUOTE] = ACTIONS(2810), [anon_sym_i_DQUOTE] = ACTIONS(2810), [anon_sym_iq_LBRACE] = ACTIONS(2810), [aux_sym_char_literal_token1] = ACTIONS(2810), [anon_sym_SQUOTE] = ACTIONS(2812), [anon_sym___DATE__] = ACTIONS(2812), [anon_sym___FILE__] = ACTIONS(2812), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2812), [anon_sym___FUNCTION__] = ACTIONS(2812), [anon_sym___LINE__] = ACTIONS(2812), [anon_sym___MODULE__] = ACTIONS(2812), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2812), [anon_sym___TIME__] = ACTIONS(2812), [anon_sym___TIMESTAMP__] = ACTIONS(2812), [anon_sym___VENDOR__] = ACTIONS(2812), [anon_sym___VERSION__] = ACTIONS(2812), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2810), [sym_float_literal] = ACTIONS(2810), [sym__string] = ACTIONS(2810), }, [603] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(603), [sym_keyword] = STATE(603), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(603), [sym_char_literal] = STATE(603), [sym_special_keyword] = STATE(648), [aux_sym_asm_inline_repeat1] = STATE(603), [sym_identifier] = ACTIONS(2814), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2817), [anon_sym_RBRACE] = ACTIONS(2820), [anon_sym_SLASH] = ACTIONS(2814), [anon_sym_SLASH_EQ] = ACTIONS(2822), [anon_sym_DOT] = ACTIONS(2814), [anon_sym_DOT_DOT] = ACTIONS(2814), [anon_sym_DOT_DOT_DOT] = ACTIONS(2822), [anon_sym_AMP] = ACTIONS(2814), [anon_sym_AMP_EQ] = ACTIONS(2822), [anon_sym_AMP_AMP] = ACTIONS(2822), [anon_sym_PIPE] = ACTIONS(2814), [anon_sym_PIPE_EQ] = ACTIONS(2822), [anon_sym_PIPE_PIPE] = ACTIONS(2822), [anon_sym_DASH] = ACTIONS(2814), [anon_sym_DASH_EQ] = ACTIONS(2822), [anon_sym_DASH_DASH] = ACTIONS(2822), [anon_sym_PLUS] = ACTIONS(2814), [anon_sym_PLUS_EQ] = ACTIONS(2822), [anon_sym_PLUS_PLUS] = ACTIONS(2822), [anon_sym_LT] = ACTIONS(2814), [anon_sym_LT_EQ] = ACTIONS(2822), [anon_sym_LT_LT] = ACTIONS(2814), [anon_sym_LT_LT_EQ] = ACTIONS(2822), [anon_sym_GT] = ACTIONS(2814), [anon_sym_GT_EQ] = ACTIONS(2822), [anon_sym_GT_GT_EQ] = ACTIONS(2822), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2822), [anon_sym_GT_GT] = ACTIONS(2814), [anon_sym_GT_GT_GT] = ACTIONS(2814), [anon_sym_BANG] = ACTIONS(2814), [anon_sym_BANG_EQ] = ACTIONS(2822), [anon_sym_LPAREN] = ACTIONS(2822), [anon_sym_RPAREN] = ACTIONS(2822), [anon_sym_LBRACK] = ACTIONS(2822), [anon_sym_RBRACK] = ACTIONS(2822), [anon_sym_QMARK] = ACTIONS(2822), [anon_sym_COMMA] = ACTIONS(2822), [anon_sym_SEMI] = ACTIONS(2822), [anon_sym_COLON] = ACTIONS(2822), [anon_sym_DOLLAR] = ACTIONS(2822), [anon_sym_EQ] = ACTIONS(2814), [anon_sym_EQ_EQ] = ACTIONS(2822), [anon_sym_STAR] = ACTIONS(2814), [anon_sym_STAR_EQ] = ACTIONS(2822), [anon_sym_PERCENT] = ACTIONS(2814), [anon_sym_PERCENT_EQ] = ACTIONS(2822), [anon_sym_CARET] = ACTIONS(2814), [anon_sym_CARET_EQ] = ACTIONS(2822), [anon_sym_CARET_CARET] = ACTIONS(2814), [anon_sym_CARET_CARET_EQ] = ACTIONS(2822), [anon_sym_TILDE] = ACTIONS(2814), [anon_sym_TILDE_EQ] = ACTIONS(2822), [anon_sym_AT] = ACTIONS(2822), [anon_sym_EQ_GT] = ACTIONS(2822), [anon_sym_POUND] = ACTIONS(2822), [anon_sym_BANGin] = ACTIONS(2822), [anon_sym_BANGis] = ACTIONS(2822), [sym_bool] = ACTIONS(2825), [sym_byte] = ACTIONS(2825), [sym_ubyte] = ACTIONS(2825), [sym_char] = ACTIONS(2825), [sym_short] = ACTIONS(2825), [sym_ushort] = ACTIONS(2825), [sym_int] = ACTIONS(2825), [sym_uint] = ACTIONS(2825), [sym_long] = ACTIONS(2825), [sym_ulong] = ACTIONS(2825), [sym_cent] = ACTIONS(2825), [sym_ucent] = ACTIONS(2825), [sym_wchar] = ACTIONS(2825), [sym_dchar] = ACTIONS(2825), [sym_float] = ACTIONS(2825), [sym_double] = ACTIONS(2825), [sym_real] = ACTIONS(2825), [sym_ifloat] = ACTIONS(2825), [sym_idouble] = ACTIONS(2825), [sym_ireal] = ACTIONS(2825), [sym_cfloat] = ACTIONS(2825), [sym_cdouble] = ACTIONS(2825), [sym_creal] = ACTIONS(2825), [sym_size_t] = ACTIONS(2825), [sym_ptrdiff_t] = ACTIONS(2825), [sym_string] = ACTIONS(2825), [sym_cstring] = ACTIONS(2825), [sym_dstring] = ACTIONS(2825), [sym_wstring] = ACTIONS(2825), [sym_noreturn] = ACTIONS(2825), [sym_true] = ACTIONS(2825), [sym_false] = ACTIONS(2825), [sym_null] = ACTIONS(2825), [sym_super] = ACTIONS(2825), [sym_this] = ACTIONS(2825), [sym_abstract] = ACTIONS(2825), [sym_alias] = ACTIONS(2825), [sym_align] = ACTIONS(2825), [sym_asm] = ACTIONS(2825), [sym_assert] = ACTIONS(2825), [sym_auto] = ACTIONS(2825), [sym_break] = ACTIONS(2825), [sym_case] = ACTIONS(2825), [sym_cast] = ACTIONS(2825), [sym_catch] = ACTIONS(2825), [sym_class] = ACTIONS(2825), [sym_const] = ACTIONS(2828), [sym_continue] = ACTIONS(2825), [sym_debug] = ACTIONS(2825), [sym_default] = ACTIONS(2825), [sym_delegate] = ACTIONS(2825), [sym_delete] = ACTIONS(2825), [sym_deprecated] = ACTIONS(2825), [sym_do] = ACTIONS(2825), [sym_else] = ACTIONS(2825), [sym_enum] = ACTIONS(2825), [sym_export] = ACTIONS(2825), [sym_extern] = ACTIONS(2825), [sym_final] = ACTIONS(2825), [sym_finally] = ACTIONS(2825), [sym_for] = ACTIONS(2825), [sym_foreach] = ACTIONS(2825), [sym_foreach_reverse] = ACTIONS(2825), [sym_function] = ACTIONS(2825), [sym_goto] = ACTIONS(2825), [sym_if] = ACTIONS(2825), [sym_immutable] = ACTIONS(2828), [sym_import] = ACTIONS(2825), [sym_in] = ACTIONS(2825), [sym_inout] = ACTIONS(2828), [sym_interface] = ACTIONS(2825), [sym_invariant] = ACTIONS(2825), [sym_is] = ACTIONS(2825), [sym_lazy] = ACTIONS(2825), [sym_mixin] = ACTIONS(2825), [sym_module] = ACTIONS(2825), [sym_new] = ACTIONS(2825), [sym_nothrow] = ACTIONS(2825), [sym_out] = ACTIONS(2825), [sym_override] = ACTIONS(2825), [sym_package] = ACTIONS(2825), [sym_pragma] = ACTIONS(2825), [sym_private] = ACTIONS(2825), [sym_protected] = ACTIONS(2825), [sym_public] = ACTIONS(2825), [sym_pure] = ACTIONS(2825), [sym_ref] = ACTIONS(2825), [sym_return] = ACTIONS(2825), [sym_scope] = ACTIONS(2825), [sym_shared] = ACTIONS(2828), [sym_static] = ACTIONS(2825), [sym_struct] = ACTIONS(2825), [sym_switch] = ACTIONS(2825), [sym_synchronized] = ACTIONS(2825), [sym_template] = ACTIONS(2825), [sym_throw] = ACTIONS(2825), [sym_try] = ACTIONS(2825), [sym_typeid] = ACTIONS(2825), [sym_typeof] = ACTIONS(2825), [sym_union] = ACTIONS(2825), [sym_unittest] = ACTIONS(2825), [sym_version] = ACTIONS(2825), [sym_while] = ACTIONS(2825), [sym_with] = ACTIONS(2825), [sym_parameters_] = ACTIONS(2825), [sym_gshared] = ACTIONS(2825), [sym_traits] = ACTIONS(2825), [sym_vector] = ACTIONS(2825), [sym_void] = ACTIONS(2825), [anon_sym_BQUOTE] = ACTIONS(2831), [anon_sym_r_DQUOTE] = ACTIONS(2834), [anon_sym_x_DQUOTE] = ACTIONS(2837), [anon_sym_DQUOTE] = ACTIONS(2840), [anon_sym_i_BQUOTE] = ACTIONS(2843), [anon_sym_i_DQUOTE] = ACTIONS(2846), [anon_sym_iq_LBRACE] = ACTIONS(2849), [aux_sym_char_literal_token1] = ACTIONS(2852), [anon_sym_SQUOTE] = ACTIONS(2855), [anon_sym___DATE__] = ACTIONS(2858), [anon_sym___FILE__] = ACTIONS(2858), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2858), [anon_sym___FUNCTION__] = ACTIONS(2858), [anon_sym___LINE__] = ACTIONS(2858), [anon_sym___MODULE__] = ACTIONS(2858), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2858), [anon_sym___TIME__] = ACTIONS(2858), [anon_sym___TIMESTAMP__] = ACTIONS(2858), [anon_sym___VENDOR__] = ACTIONS(2858), [anon_sym___VERSION__] = ACTIONS(2858), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2822), [sym_float_literal] = ACTIONS(2822), [sym__string] = ACTIONS(2861), }, [604] = { [sym_token_string] = STATE(646), [sym__token_no_braces] = STATE(603), [sym_keyword] = STATE(603), [sym_type_ctor] = STATE(648), [sym__builtin_type] = STATE(648), [sym_raw_string] = STATE(646), [sym_hex_string] = STATE(646), [sym_quoted_string] = STATE(646), [sym_interpolated_raw_string] = STATE(646), [sym_interpolated_quoted_string] = STATE(646), [sym_interpolated_token_string] = STATE(646), [sym_string_literal] = STATE(603), [sym_char_literal] = STATE(603), [sym_special_keyword] = STATE(648), [aux_sym_asm_inline_repeat1] = STATE(603), [sym_identifier] = ACTIONS(2864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2436), [anon_sym_RBRACE] = ACTIONS(2866), [anon_sym_SLASH] = ACTIONS(2864), [anon_sym_SLASH_EQ] = ACTIONS(2868), [anon_sym_DOT] = ACTIONS(2864), [anon_sym_DOT_DOT] = ACTIONS(2864), [anon_sym_DOT_DOT_DOT] = ACTIONS(2868), [anon_sym_AMP] = ACTIONS(2864), [anon_sym_AMP_EQ] = ACTIONS(2868), [anon_sym_AMP_AMP] = ACTIONS(2868), [anon_sym_PIPE] = ACTIONS(2864), [anon_sym_PIPE_EQ] = ACTIONS(2868), [anon_sym_PIPE_PIPE] = ACTIONS(2868), [anon_sym_DASH] = ACTIONS(2864), [anon_sym_DASH_EQ] = ACTIONS(2868), [anon_sym_DASH_DASH] = ACTIONS(2868), [anon_sym_PLUS] = ACTIONS(2864), [anon_sym_PLUS_EQ] = ACTIONS(2868), [anon_sym_PLUS_PLUS] = ACTIONS(2868), [anon_sym_LT] = ACTIONS(2864), [anon_sym_LT_EQ] = ACTIONS(2868), [anon_sym_LT_LT] = ACTIONS(2864), [anon_sym_LT_LT_EQ] = ACTIONS(2868), [anon_sym_GT] = ACTIONS(2864), [anon_sym_GT_EQ] = ACTIONS(2868), [anon_sym_GT_GT_EQ] = ACTIONS(2868), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2868), [anon_sym_GT_GT] = ACTIONS(2864), [anon_sym_GT_GT_GT] = ACTIONS(2864), [anon_sym_BANG] = ACTIONS(2864), [anon_sym_BANG_EQ] = ACTIONS(2868), [anon_sym_LPAREN] = ACTIONS(2868), [anon_sym_RPAREN] = ACTIONS(2868), [anon_sym_LBRACK] = ACTIONS(2868), [anon_sym_RBRACK] = ACTIONS(2868), [anon_sym_QMARK] = ACTIONS(2868), [anon_sym_COMMA] = ACTIONS(2868), [anon_sym_SEMI] = ACTIONS(2868), [anon_sym_COLON] = ACTIONS(2868), [anon_sym_DOLLAR] = ACTIONS(2868), [anon_sym_EQ] = ACTIONS(2864), [anon_sym_EQ_EQ] = ACTIONS(2868), [anon_sym_STAR] = ACTIONS(2864), [anon_sym_STAR_EQ] = ACTIONS(2868), [anon_sym_PERCENT] = ACTIONS(2864), [anon_sym_PERCENT_EQ] = ACTIONS(2868), [anon_sym_CARET] = ACTIONS(2864), [anon_sym_CARET_EQ] = ACTIONS(2868), [anon_sym_CARET_CARET] = ACTIONS(2864), [anon_sym_CARET_CARET_EQ] = ACTIONS(2868), [anon_sym_TILDE] = ACTIONS(2864), [anon_sym_TILDE_EQ] = ACTIONS(2868), [anon_sym_AT] = ACTIONS(2868), [anon_sym_EQ_GT] = ACTIONS(2868), [anon_sym_POUND] = ACTIONS(2868), [anon_sym_BANGin] = ACTIONS(2868), [anon_sym_BANGis] = ACTIONS(2868), [sym_bool] = ACTIONS(2444), [sym_byte] = ACTIONS(2444), [sym_ubyte] = ACTIONS(2444), [sym_char] = ACTIONS(2444), [sym_short] = ACTIONS(2444), [sym_ushort] = ACTIONS(2444), [sym_int] = ACTIONS(2444), [sym_uint] = ACTIONS(2444), [sym_long] = ACTIONS(2444), [sym_ulong] = ACTIONS(2444), [sym_cent] = ACTIONS(2444), [sym_ucent] = ACTIONS(2444), [sym_wchar] = ACTIONS(2444), [sym_dchar] = ACTIONS(2444), [sym_float] = ACTIONS(2444), [sym_double] = ACTIONS(2444), [sym_real] = ACTIONS(2444), [sym_ifloat] = ACTIONS(2444), [sym_idouble] = ACTIONS(2444), [sym_ireal] = ACTIONS(2444), [sym_cfloat] = ACTIONS(2444), [sym_cdouble] = ACTIONS(2444), [sym_creal] = ACTIONS(2444), [sym_size_t] = ACTIONS(2444), [sym_ptrdiff_t] = ACTIONS(2444), [sym_string] = ACTIONS(2444), [sym_cstring] = ACTIONS(2444), [sym_dstring] = ACTIONS(2444), [sym_wstring] = ACTIONS(2444), [sym_noreturn] = ACTIONS(2444), [sym_true] = ACTIONS(2444), [sym_false] = ACTIONS(2444), [sym_null] = ACTIONS(2444), [sym_super] = ACTIONS(2444), [sym_this] = ACTIONS(2444), [sym_abstract] = ACTIONS(2444), [sym_alias] = ACTIONS(2444), [sym_align] = ACTIONS(2444), [sym_asm] = ACTIONS(2444), [sym_assert] = ACTIONS(2444), [sym_auto] = ACTIONS(2444), [sym_break] = ACTIONS(2444), [sym_case] = ACTIONS(2444), [sym_cast] = ACTIONS(2444), [sym_catch] = ACTIONS(2444), [sym_class] = ACTIONS(2444), [sym_const] = ACTIONS(2446), [sym_continue] = ACTIONS(2444), [sym_debug] = ACTIONS(2444), [sym_default] = ACTIONS(2444), [sym_delegate] = ACTIONS(2444), [sym_delete] = ACTIONS(2444), [sym_deprecated] = ACTIONS(2444), [sym_do] = ACTIONS(2444), [sym_else] = ACTIONS(2444), [sym_enum] = ACTIONS(2444), [sym_export] = ACTIONS(2444), [sym_extern] = ACTIONS(2444), [sym_final] = ACTIONS(2444), [sym_finally] = ACTIONS(2444), [sym_for] = ACTIONS(2444), [sym_foreach] = ACTIONS(2444), [sym_foreach_reverse] = ACTIONS(2444), [sym_function] = ACTIONS(2444), [sym_goto] = ACTIONS(2444), [sym_if] = ACTIONS(2444), [sym_immutable] = ACTIONS(2446), [sym_import] = ACTIONS(2444), [sym_in] = ACTIONS(2444), [sym_inout] = ACTIONS(2446), [sym_interface] = ACTIONS(2444), [sym_invariant] = ACTIONS(2444), [sym_is] = ACTIONS(2444), [sym_lazy] = ACTIONS(2444), [sym_mixin] = ACTIONS(2444), [sym_module] = ACTIONS(2444), [sym_new] = ACTIONS(2444), [sym_nothrow] = ACTIONS(2444), [sym_out] = ACTIONS(2444), [sym_override] = ACTIONS(2444), [sym_package] = ACTIONS(2444), [sym_pragma] = ACTIONS(2444), [sym_private] = ACTIONS(2444), [sym_protected] = ACTIONS(2444), [sym_public] = ACTIONS(2444), [sym_pure] = ACTIONS(2444), [sym_ref] = ACTIONS(2444), [sym_return] = ACTIONS(2444), [sym_scope] = ACTIONS(2444), [sym_shared] = ACTIONS(2446), [sym_static] = ACTIONS(2444), [sym_struct] = ACTIONS(2444), [sym_switch] = ACTIONS(2444), [sym_synchronized] = ACTIONS(2444), [sym_template] = ACTIONS(2444), [sym_throw] = ACTIONS(2444), [sym_try] = ACTIONS(2444), [sym_typeid] = ACTIONS(2444), [sym_typeof] = ACTIONS(2444), [sym_union] = ACTIONS(2444), [sym_unittest] = ACTIONS(2444), [sym_version] = ACTIONS(2444), [sym_while] = ACTIONS(2444), [sym_with] = ACTIONS(2444), [sym_parameters_] = ACTIONS(2444), [sym_gshared] = ACTIONS(2444), [sym_traits] = ACTIONS(2444), [sym_vector] = ACTIONS(2444), [sym_void] = ACTIONS(2444), [anon_sym_BQUOTE] = ACTIONS(2448), [anon_sym_r_DQUOTE] = ACTIONS(2450), [anon_sym_x_DQUOTE] = ACTIONS(2452), [anon_sym_DQUOTE] = ACTIONS(2454), [anon_sym_i_BQUOTE] = ACTIONS(2456), [anon_sym_i_DQUOTE] = ACTIONS(2458), [anon_sym_iq_LBRACE] = ACTIONS(2460), [aux_sym_char_literal_token1] = ACTIONS(2462), [anon_sym_SQUOTE] = ACTIONS(2464), [anon_sym___DATE__] = ACTIONS(2466), [anon_sym___FILE__] = ACTIONS(2466), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2466), [anon_sym___FUNCTION__] = ACTIONS(2466), [anon_sym___LINE__] = ACTIONS(2466), [anon_sym___MODULE__] = ACTIONS(2466), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2466), [anon_sym___TIME__] = ACTIONS(2466), [anon_sym___TIMESTAMP__] = ACTIONS(2466), [anon_sym___VENDOR__] = ACTIONS(2466), [anon_sym___VERSION__] = ACTIONS(2466), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2868), [sym_float_literal] = ACTIONS(2868), [sym__string] = ACTIONS(2468), }, [605] = { [sym_import_declaration] = STATE(614), [sym_mixin_declaration] = STATE(614), [sym__declaration] = STATE(614), [sym__declaration2] = STATE(614), [sym_variable_declaration] = STATE(614), [sym_manifest_constant] = STATE(614), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(614), [sym_alias_declaration] = STATE(614), [sym_alias_reassign] = STATE(614), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(614), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(614), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(614), [sym_union_declaration] = STATE(614), [sym_postblit] = STATE(614), [sym_invariant_declaration] = STATE(614), [sym_class_declaration] = STATE(614), [sym_constructor] = STATE(614), [sym_destructor] = STATE(614), [sym_alias_this] = STATE(614), [sym_interface_declaration] = STATE(614), [sym_enum_declaration] = STATE(614), [sym_anonymous_enum_declaration] = STATE(614), [sym_function_declaration] = STATE(614), [sym_template_declaration] = STATE(614), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(614), [sym_template_mixin] = STATE(614), [sym_conditional_declaration] = STATE(614), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(614), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(614), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(614), [sym_static_assert] = STATE(614), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(614), [aux_sym_source_file_repeat1] = STATE(614), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2872), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [606] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2888), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2672), [anon_sym_RBRACE] = ACTIONS(2672), [anon_sym_LBRACE] = ACTIONS(2672), [anon_sym_DOT] = ACTIONS(2674), [anon_sym_AMP] = ACTIONS(2672), [anon_sym_DASH] = ACTIONS(2677), [anon_sym_DASH_DASH] = ACTIONS(2672), [anon_sym_PLUS] = ACTIONS(2677), [anon_sym_PLUS_PLUS] = ACTIONS(2672), [anon_sym_BANG] = ACTIONS(2672), [anon_sym_LPAREN] = ACTIONS(2672), [anon_sym_RPAREN] = ACTIONS(2672), [anon_sym_LBRACK] = ACTIONS(2672), [anon_sym_SEMI] = ACTIONS(2891), [anon_sym_DOLLAR] = ACTIONS(2672), [anon_sym_STAR] = ACTIONS(2672), [anon_sym_TILDE] = ACTIONS(2894), [anon_sym_AT] = ACTIONS(2685), [sym_bool] = ACTIONS(2688), [sym_byte] = ACTIONS(2688), [sym_ubyte] = ACTIONS(2688), [sym_char] = ACTIONS(2688), [sym_short] = ACTIONS(2688), [sym_ushort] = ACTIONS(2688), [sym_int] = ACTIONS(2688), [sym_uint] = ACTIONS(2688), [sym_long] = ACTIONS(2688), [sym_ulong] = ACTIONS(2688), [sym_cent] = ACTIONS(2688), [sym_ucent] = ACTIONS(2688), [sym_wchar] = ACTIONS(2688), [sym_dchar] = ACTIONS(2688), [sym_float] = ACTIONS(2688), [sym_double] = ACTIONS(2688), [sym_real] = ACTIONS(2688), [sym_ifloat] = ACTIONS(2688), [sym_idouble] = ACTIONS(2688), [sym_ireal] = ACTIONS(2688), [sym_cfloat] = ACTIONS(2688), [sym_cdouble] = ACTIONS(2688), [sym_creal] = ACTIONS(2688), [sym_size_t] = ACTIONS(2688), [sym_ptrdiff_t] = ACTIONS(2688), [sym_string] = ACTIONS(2688), [sym_cstring] = ACTIONS(2688), [sym_dstring] = ACTIONS(2688), [sym_wstring] = ACTIONS(2688), [sym_noreturn] = ACTIONS(2688), [sym_true] = ACTIONS(2677), [sym_false] = ACTIONS(2677), [sym_null] = ACTIONS(2677), [sym_super] = ACTIONS(2677), [sym_this] = ACTIONS(2897), [sym_abstract] = ACTIONS(2694), [sym_alias] = ACTIONS(2900), [sym_align] = ACTIONS(2700), [sym_asm] = ACTIONS(2677), [sym_assert] = ACTIONS(2677), [sym_auto] = ACTIONS(2694), [sym_break] = ACTIONS(2677), [sym_case] = ACTIONS(2677), [sym_cast] = ACTIONS(2677), [sym_class] = ACTIONS(2903), [sym_const] = ACTIONS(2706), [sym_continue] = ACTIONS(2677), [sym_debug] = ACTIONS(2906), [sym_default] = ACTIONS(2677), [sym_delegate] = ACTIONS(2677), [sym_delete] = ACTIONS(2677), [sym_deprecated] = ACTIONS(2712), [sym_do] = ACTIONS(2677), [sym_else] = ACTIONS(2677), [sym_enum] = ACTIONS(2909), [sym_export] = ACTIONS(2912), [sym_extern] = ACTIONS(2721), [sym_final] = ACTIONS(2694), [sym_for] = ACTIONS(2677), [sym_foreach] = ACTIONS(2677), [sym_foreach_reverse] = ACTIONS(2677), [sym_function] = ACTIONS(2677), [sym_goto] = ACTIONS(2677), [sym_if] = ACTIONS(2677), [sym_immutable] = ACTIONS(2706), [sym_import] = ACTIONS(2915), [sym_in] = ACTIONS(2677), [sym_inout] = ACTIONS(2706), [sym_interface] = ACTIONS(2918), [sym_invariant] = ACTIONS(2921), [sym_is] = ACTIONS(2677), [sym_mixin] = ACTIONS(2924), [sym_new] = ACTIONS(2677), [sym_nothrow] = ACTIONS(2694), [sym_out] = ACTIONS(2677), [sym_override] = ACTIONS(2694), [sym_package] = ACTIONS(2736), [sym_pragma] = ACTIONS(2739), [sym_private] = ACTIONS(2912), [sym_protected] = ACTIONS(2912), [sym_public] = ACTIONS(2912), [sym_pure] = ACTIONS(2694), [sym_ref] = ACTIONS(2694), [sym_return] = ACTIONS(2912), [sym_scope] = ACTIONS(2694), [sym_shared] = ACTIONS(2927), [sym_static] = ACTIONS(2930), [sym_struct] = ACTIONS(2933), [sym_switch] = ACTIONS(2677), [sym_synchronized] = ACTIONS(2694), [sym_template] = ACTIONS(2936), [sym_throw] = ACTIONS(2677), [sym_try] = ACTIONS(2677), [sym_typeid] = ACTIONS(2677), [sym_typeof] = ACTIONS(2754), [sym_union] = ACTIONS(2939), [sym_unittest] = ACTIONS(2942), [sym_version] = ACTIONS(2945), [sym_while] = ACTIONS(2677), [sym_with] = ACTIONS(2677), [sym_gshared] = ACTIONS(2694), [sym_traits] = ACTIONS(2766), [sym_vector] = ACTIONS(2769), [sym_void] = ACTIONS(2688), [anon_sym_BQUOTE] = ACTIONS(2672), [anon_sym_r_DQUOTE] = ACTIONS(2672), [anon_sym_x_DQUOTE] = ACTIONS(2672), [anon_sym_DQUOTE] = ACTIONS(2672), [anon_sym_i_BQUOTE] = ACTIONS(2672), [anon_sym_i_DQUOTE] = ACTIONS(2672), [anon_sym_iq_LBRACE] = ACTIONS(2672), [aux_sym_char_literal_token1] = ACTIONS(2672), [anon_sym_SQUOTE] = ACTIONS(2677), [anon_sym___DATE__] = ACTIONS(2677), [anon_sym___FILE__] = ACTIONS(2677), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2677), [anon_sym___FUNCTION__] = ACTIONS(2677), [anon_sym___LINE__] = ACTIONS(2677), [anon_sym___MODULE__] = ACTIONS(2677), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2677), [anon_sym___TIME__] = ACTIONS(2677), [anon_sym___TIMESTAMP__] = ACTIONS(2677), [anon_sym___VENDOR__] = ACTIONS(2677), [anon_sym___VERSION__] = ACTIONS(2677), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2672), [sym_float_literal] = ACTIONS(2672), [sym__string] = ACTIONS(2672), }, [607] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2782), [anon_sym_RBRACE] = ACTIONS(2782), [anon_sym_LBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2782), [anon_sym_DASH] = ACTIONS(2784), [anon_sym_DASH_DASH] = ACTIONS(2782), [anon_sym_PLUS] = ACTIONS(2784), [anon_sym_PLUS_PLUS] = ACTIONS(2782), [anon_sym_BANG] = ACTIONS(2782), [anon_sym_LPAREN] = ACTIONS(2782), [anon_sym_RPAREN] = ACTIONS(2782), [anon_sym_LBRACK] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2948), [anon_sym_DOLLAR] = ACTIONS(2782), [anon_sym_STAR] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2784), [sym_false] = ACTIONS(2784), [sym_null] = ACTIONS(2784), [sym_super] = ACTIONS(2784), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2784), [sym_assert] = ACTIONS(2784), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2784), [sym_case] = ACTIONS(2784), [sym_cast] = ACTIONS(2784), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2784), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2784), [sym_delegate] = ACTIONS(2784), [sym_delete] = ACTIONS(2784), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2784), [sym_else] = ACTIONS(2784), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2784), [sym_foreach] = ACTIONS(2784), [sym_foreach_reverse] = ACTIONS(2784), [sym_function] = ACTIONS(2784), [sym_goto] = ACTIONS(2784), [sym_if] = ACTIONS(2784), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2784), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2784), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2784), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2784), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2784), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2784), [sym_try] = ACTIONS(2784), [sym_typeid] = ACTIONS(2784), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2784), [sym_with] = ACTIONS(2784), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2782), [anon_sym_r_DQUOTE] = ACTIONS(2782), [anon_sym_x_DQUOTE] = ACTIONS(2782), [anon_sym_DQUOTE] = ACTIONS(2782), [anon_sym_i_BQUOTE] = ACTIONS(2782), [anon_sym_i_DQUOTE] = ACTIONS(2782), [anon_sym_iq_LBRACE] = ACTIONS(2782), [aux_sym_char_literal_token1] = ACTIONS(2782), [anon_sym_SQUOTE] = ACTIONS(2784), [anon_sym___DATE__] = ACTIONS(2784), [anon_sym___FILE__] = ACTIONS(2784), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2784), [anon_sym___FUNCTION__] = ACTIONS(2784), [anon_sym___LINE__] = ACTIONS(2784), [anon_sym___MODULE__] = ACTIONS(2784), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2784), [anon_sym___TIME__] = ACTIONS(2784), [anon_sym___TIMESTAMP__] = ACTIONS(2784), [anon_sym___VENDOR__] = ACTIONS(2784), [anon_sym___VERSION__] = ACTIONS(2784), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2782), [sym_float_literal] = ACTIONS(2782), [sym__string] = ACTIONS(2782), }, [608] = { [sym_import_declaration] = STATE(615), [sym_mixin_declaration] = STATE(615), [sym__declaration] = STATE(615), [sym__declaration2] = STATE(615), [sym_variable_declaration] = STATE(615), [sym_manifest_constant] = STATE(615), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(615), [sym_alias_declaration] = STATE(615), [sym_alias_reassign] = STATE(615), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(615), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(615), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(615), [sym_union_declaration] = STATE(615), [sym_postblit] = STATE(615), [sym_invariant_declaration] = STATE(615), [sym_class_declaration] = STATE(615), [sym_constructor] = STATE(615), [sym_destructor] = STATE(615), [sym_alias_this] = STATE(615), [sym_interface_declaration] = STATE(615), [sym_enum_declaration] = STATE(615), [sym_anonymous_enum_declaration] = STATE(615), [sym_function_declaration] = STATE(615), [sym_template_declaration] = STATE(615), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(615), [sym_template_mixin] = STATE(615), [sym_conditional_declaration] = STATE(615), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(615), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(615), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(615), [sym_static_assert] = STATE(615), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(615), [aux_sym_source_file_repeat1] = STATE(615), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2950), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [609] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2948), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [610] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2810), [anon_sym_RBRACE] = ACTIONS(2810), [anon_sym_LBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2810), [anon_sym_DASH] = ACTIONS(2812), [anon_sym_DASH_DASH] = ACTIONS(2810), [anon_sym_PLUS] = ACTIONS(2812), [anon_sym_PLUS_PLUS] = ACTIONS(2810), [anon_sym_BANG] = ACTIONS(2810), [anon_sym_LPAREN] = ACTIONS(2810), [anon_sym_RPAREN] = ACTIONS(2810), [anon_sym_LBRACK] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2948), [anon_sym_DOLLAR] = ACTIONS(2810), [anon_sym_STAR] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2812), [sym_false] = ACTIONS(2812), [sym_null] = ACTIONS(2812), [sym_super] = ACTIONS(2812), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2812), [sym_assert] = ACTIONS(2812), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2812), [sym_case] = ACTIONS(2812), [sym_cast] = ACTIONS(2812), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2812), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2812), [sym_delegate] = ACTIONS(2812), [sym_delete] = ACTIONS(2812), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2812), [sym_foreach] = ACTIONS(2812), [sym_foreach_reverse] = ACTIONS(2812), [sym_function] = ACTIONS(2812), [sym_goto] = ACTIONS(2812), [sym_if] = ACTIONS(2812), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2812), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2812), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2812), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2812), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2812), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2812), [sym_try] = ACTIONS(2812), [sym_typeid] = ACTIONS(2812), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2812), [sym_with] = ACTIONS(2812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2810), [anon_sym_r_DQUOTE] = ACTIONS(2810), [anon_sym_x_DQUOTE] = ACTIONS(2810), [anon_sym_DQUOTE] = ACTIONS(2810), [anon_sym_i_BQUOTE] = ACTIONS(2810), [anon_sym_i_DQUOTE] = ACTIONS(2810), [anon_sym_iq_LBRACE] = ACTIONS(2810), [aux_sym_char_literal_token1] = ACTIONS(2810), [anon_sym_SQUOTE] = ACTIONS(2812), [anon_sym___DATE__] = ACTIONS(2812), [anon_sym___FILE__] = ACTIONS(2812), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2812), [anon_sym___FUNCTION__] = ACTIONS(2812), [anon_sym___LINE__] = ACTIONS(2812), [anon_sym___MODULE__] = ACTIONS(2812), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2812), [anon_sym___TIME__] = ACTIONS(2812), [anon_sym___TIMESTAMP__] = ACTIONS(2812), [anon_sym___VENDOR__] = ACTIONS(2812), [anon_sym___VERSION__] = ACTIONS(2812), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2810), [sym_float_literal] = ACTIONS(2810), [sym__string] = ACTIONS(2810), }, [611] = { [sym_import_declaration] = STATE(610), [sym_mixin_declaration] = STATE(610), [sym__declaration] = STATE(610), [sym__declaration2] = STATE(610), [sym_variable_declaration] = STATE(610), [sym_manifest_constant] = STATE(610), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(610), [sym_alias_declaration] = STATE(610), [sym_alias_reassign] = STATE(610), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(610), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(610), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(610), [sym_union_declaration] = STATE(610), [sym_postblit] = STATE(610), [sym_invariant_declaration] = STATE(610), [sym_class_declaration] = STATE(610), [sym_constructor] = STATE(610), [sym_destructor] = STATE(610), [sym_alias_this] = STATE(610), [sym_interface_declaration] = STATE(610), [sym_enum_declaration] = STATE(610), [sym_anonymous_enum_declaration] = STATE(610), [sym_function_declaration] = STATE(610), [sym_template_declaration] = STATE(610), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(610), [sym_template_mixin] = STATE(610), [sym_conditional_declaration] = STATE(610), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(610), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(610), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(610), [sym_static_assert] = STATE(610), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(610), [aux_sym_source_file_repeat1] = STATE(610), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2952), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2806), [sym_case] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2806), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2806), [sym_foreach] = ACTIONS(2806), [sym_foreach_reverse] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_goto] = ACTIONS(2806), [sym_if] = ACTIONS(2806), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2806), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2806), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2806), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2806), [sym_try] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2806), [sym_with] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [612] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2948), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2806), [sym_case] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2806), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2806), [sym_foreach] = ACTIONS(2806), [sym_foreach_reverse] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_goto] = ACTIONS(2806), [sym_if] = ACTIONS(2806), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2806), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2806), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2806), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2806), [sym_try] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2806), [sym_with] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [613] = { [sym_import_declaration] = STATE(612), [sym_mixin_declaration] = STATE(612), [sym__declaration] = STATE(612), [sym__declaration2] = STATE(612), [sym_variable_declaration] = STATE(612), [sym_manifest_constant] = STATE(612), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(612), [sym_alias_declaration] = STATE(612), [sym_alias_reassign] = STATE(612), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(612), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(612), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(612), [sym_union_declaration] = STATE(612), [sym_postblit] = STATE(612), [sym_invariant_declaration] = STATE(612), [sym_class_declaration] = STATE(612), [sym_constructor] = STATE(612), [sym_destructor] = STATE(612), [sym_alias_this] = STATE(612), [sym_interface_declaration] = STATE(612), [sym_enum_declaration] = STATE(612), [sym_anonymous_enum_declaration] = STATE(612), [sym_function_declaration] = STATE(612), [sym_template_declaration] = STATE(612), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(612), [sym_template_mixin] = STATE(612), [sym_conditional_declaration] = STATE(612), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(612), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(612), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(612), [sym_static_assert] = STATE(612), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(612), [aux_sym_source_file_repeat1] = STATE(612), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2954), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2645), [sym_case] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2645), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2645), [sym_foreach] = ACTIONS(2645), [sym_foreach_reverse] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_goto] = ACTIONS(2645), [sym_if] = ACTIONS(2645), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2645), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2645), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2645), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2645), [sym_try] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2645), [sym_with] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [614] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2948), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2645), [sym_case] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2645), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2645), [sym_foreach] = ACTIONS(2645), [sym_foreach_reverse] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_goto] = ACTIONS(2645), [sym_if] = ACTIONS(2645), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2645), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2645), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2645), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2645), [sym_try] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2645), [sym_with] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [615] = { [sym_import_declaration] = STATE(606), [sym_mixin_declaration] = STATE(606), [sym__declaration] = STATE(606), [sym__declaration2] = STATE(606), [sym_variable_declaration] = STATE(606), [sym_manifest_constant] = STATE(606), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(606), [sym_alias_declaration] = STATE(606), [sym_alias_reassign] = STATE(606), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(606), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(606), [sym_union_declaration] = STATE(606), [sym_postblit] = STATE(606), [sym_invariant_declaration] = STATE(606), [sym_class_declaration] = STATE(606), [sym_constructor] = STATE(606), [sym_destructor] = STATE(606), [sym_alias_this] = STATE(606), [sym_interface_declaration] = STATE(606), [sym_enum_declaration] = STATE(606), [sym_anonymous_enum_declaration] = STATE(606), [sym_function_declaration] = STATE(606), [sym_template_declaration] = STATE(606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(606), [sym_template_mixin] = STATE(606), [sym_conditional_declaration] = STATE(606), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(606), [sym_static_assert] = STATE(606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(606), [aux_sym_source_file_repeat1] = STATE(606), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2948), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(25), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2878), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(37), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2882), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(25), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [616] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7563), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2958), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(686), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2964), [sym_debug] = ACTIONS(2960), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(2960), [sym_do] = ACTIONS(2966), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(2960), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [617] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7055), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2974), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(686), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2964), [sym_debug] = ACTIONS(2960), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(2960), [sym_do] = ACTIONS(2966), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(2960), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [618] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7470), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2976), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(686), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2964), [sym_debug] = ACTIONS(2960), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(2960), [sym_do] = ACTIONS(2966), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(2960), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [619] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7221), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(2978), [anon_sym_COLON] = ACTIONS(686), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(686), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2964), [sym_debug] = ACTIONS(2960), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_deprecated] = ACTIONS(2960), [sym_do] = ACTIONS(2966), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_nothrow] = ACTIONS(2960), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [620] = { [sym_identifier] = ACTIONS(2980), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2982), [anon_sym_RBRACE] = ACTIONS(2982), [anon_sym_LBRACE] = ACTIONS(2982), [anon_sym_SLASH] = ACTIONS(2980), [anon_sym_SLASH_EQ] = ACTIONS(2982), [anon_sym_DOT] = ACTIONS(2980), [anon_sym_DOT_DOT] = ACTIONS(2980), [anon_sym_DOT_DOT_DOT] = ACTIONS(2982), [anon_sym_AMP] = ACTIONS(2980), [anon_sym_AMP_EQ] = ACTIONS(2982), [anon_sym_AMP_AMP] = ACTIONS(2982), [anon_sym_PIPE] = ACTIONS(2980), [anon_sym_PIPE_EQ] = ACTIONS(2982), [anon_sym_PIPE_PIPE] = ACTIONS(2982), [anon_sym_DASH] = ACTIONS(2980), [anon_sym_DASH_EQ] = ACTIONS(2982), [anon_sym_DASH_DASH] = ACTIONS(2982), [anon_sym_PLUS] = ACTIONS(2980), [anon_sym_PLUS_EQ] = ACTIONS(2982), [anon_sym_PLUS_PLUS] = ACTIONS(2982), [anon_sym_LT] = ACTIONS(2980), [anon_sym_LT_EQ] = ACTIONS(2982), [anon_sym_LT_LT] = ACTIONS(2980), [anon_sym_LT_LT_EQ] = ACTIONS(2982), [anon_sym_GT] = ACTIONS(2980), [anon_sym_GT_EQ] = ACTIONS(2982), [anon_sym_GT_GT_EQ] = ACTIONS(2982), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2982), [anon_sym_GT_GT] = ACTIONS(2980), [anon_sym_GT_GT_GT] = ACTIONS(2980), [anon_sym_BANG] = ACTIONS(2980), [anon_sym_BANG_EQ] = ACTIONS(2982), [anon_sym_LPAREN] = ACTIONS(2982), [anon_sym_RPAREN] = ACTIONS(2982), [anon_sym_LBRACK] = ACTIONS(2982), [anon_sym_RBRACK] = ACTIONS(2982), [anon_sym_QMARK] = ACTIONS(2982), [anon_sym_COMMA] = ACTIONS(2982), [anon_sym_SEMI] = ACTIONS(2982), [anon_sym_COLON] = ACTIONS(2982), [anon_sym_DOLLAR] = ACTIONS(2980), [anon_sym_EQ] = ACTIONS(2980), [anon_sym_EQ_EQ] = ACTIONS(2982), [anon_sym_STAR] = ACTIONS(2980), [anon_sym_STAR_EQ] = ACTIONS(2982), [anon_sym_PERCENT] = ACTIONS(2980), [anon_sym_PERCENT_EQ] = ACTIONS(2982), [anon_sym_CARET] = ACTIONS(2980), [anon_sym_CARET_EQ] = ACTIONS(2982), [anon_sym_CARET_CARET] = ACTIONS(2980), [anon_sym_CARET_CARET_EQ] = ACTIONS(2982), [anon_sym_TILDE] = ACTIONS(2980), [anon_sym_TILDE_EQ] = ACTIONS(2982), [anon_sym_AT] = ACTIONS(2982), [anon_sym_EQ_GT] = ACTIONS(2982), [anon_sym_POUND] = ACTIONS(2982), [anon_sym_BANGin] = ACTIONS(2982), [anon_sym_BANGis] = ACTIONS(2982), [sym_bool] = ACTIONS(2980), [sym_byte] = ACTIONS(2980), [sym_ubyte] = ACTIONS(2980), [sym_char] = ACTIONS(2980), [sym_short] = ACTIONS(2980), [sym_ushort] = ACTIONS(2980), [sym_int] = ACTIONS(2980), [sym_uint] = ACTIONS(2980), [sym_long] = ACTIONS(2980), [sym_ulong] = ACTIONS(2980), [sym_cent] = ACTIONS(2980), [sym_ucent] = ACTIONS(2980), [sym_wchar] = ACTIONS(2980), [sym_dchar] = ACTIONS(2980), [sym_float] = ACTIONS(2980), [sym_double] = ACTIONS(2980), [sym_real] = ACTIONS(2980), [sym_ifloat] = ACTIONS(2980), [sym_idouble] = ACTIONS(2980), [sym_ireal] = ACTIONS(2980), [sym_cfloat] = ACTIONS(2980), [sym_cdouble] = ACTIONS(2980), [sym_creal] = ACTIONS(2980), [sym_size_t] = ACTIONS(2980), [sym_ptrdiff_t] = ACTIONS(2980), [sym_string] = ACTIONS(2980), [sym_cstring] = ACTIONS(2980), [sym_dstring] = ACTIONS(2980), [sym_wstring] = ACTIONS(2980), [sym_noreturn] = ACTIONS(2980), [sym_true] = ACTIONS(2980), [sym_false] = ACTIONS(2980), [sym_null] = ACTIONS(2980), [sym_super] = ACTIONS(2980), [sym_this] = ACTIONS(2980), [sym_abstract] = ACTIONS(2980), [sym_alias] = ACTIONS(2980), [sym_align] = ACTIONS(2980), [sym_asm] = ACTIONS(2980), [sym_assert] = ACTIONS(2980), [sym_auto] = ACTIONS(2980), [sym_break] = ACTIONS(2980), [sym_case] = ACTIONS(2980), [sym_cast] = ACTIONS(2980), [sym_catch] = ACTIONS(2980), [sym_class] = ACTIONS(2980), [sym_const] = ACTIONS(2980), [sym_continue] = ACTIONS(2980), [sym_debug] = ACTIONS(2980), [sym_default] = ACTIONS(2980), [sym_delegate] = ACTIONS(2980), [sym_delete] = ACTIONS(2980), [sym_deprecated] = ACTIONS(2980), [sym_do] = ACTIONS(2980), [sym_else] = ACTIONS(2980), [sym_enum] = ACTIONS(2980), [sym_export] = ACTIONS(2980), [sym_extern] = ACTIONS(2980), [sym_final] = ACTIONS(2980), [sym_finally] = ACTIONS(2980), [sym_for] = ACTIONS(2980), [sym_foreach] = ACTIONS(2980), [sym_foreach_reverse] = ACTIONS(2980), [sym_function] = ACTIONS(2980), [sym_goto] = ACTIONS(2980), [sym_if] = ACTIONS(2980), [sym_immutable] = ACTIONS(2980), [sym_import] = ACTIONS(2980), [sym_in] = ACTIONS(2980), [sym_inout] = ACTIONS(2980), [sym_interface] = ACTIONS(2980), [sym_invariant] = ACTIONS(2980), [sym_is] = ACTIONS(2980), [sym_lazy] = ACTIONS(2980), [sym_mixin] = ACTIONS(2980), [sym_module] = ACTIONS(2980), [sym_new] = ACTIONS(2980), [sym_nothrow] = ACTIONS(2980), [sym_out] = ACTIONS(2980), [sym_override] = ACTIONS(2980), [sym_package] = ACTIONS(2980), [sym_pragma] = ACTIONS(2980), [sym_private] = ACTIONS(2980), [sym_protected] = ACTIONS(2980), [sym_public] = ACTIONS(2980), [sym_pure] = ACTIONS(2980), [sym_ref] = ACTIONS(2980), [sym_return] = ACTIONS(2980), [sym_scope] = ACTIONS(2980), [sym_shared] = ACTIONS(2980), [sym_static] = ACTIONS(2980), [sym_struct] = ACTIONS(2980), [sym_switch] = ACTIONS(2980), [sym_synchronized] = ACTIONS(2980), [sym_template] = ACTIONS(2980), [sym_throw] = ACTIONS(2980), [sym_try] = ACTIONS(2980), [sym_typeid] = ACTIONS(2980), [sym_typeof] = ACTIONS(2980), [sym_union] = ACTIONS(2980), [sym_unittest] = ACTIONS(2980), [sym_version] = ACTIONS(2980), [sym_while] = ACTIONS(2980), [sym_with] = ACTIONS(2980), [sym_parameters_] = ACTIONS(2980), [sym_gshared] = ACTIONS(2980), [sym_traits] = ACTIONS(2980), [sym_vector] = ACTIONS(2980), [sym_void] = ACTIONS(2980), [anon_sym_BQUOTE] = ACTIONS(2982), [anon_sym_r_DQUOTE] = ACTIONS(2982), [anon_sym_x_DQUOTE] = ACTIONS(2982), [anon_sym_DQUOTE] = ACTIONS(2982), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2982), [anon_sym_i_BQUOTE] = ACTIONS(2982), [anon_sym_i_DQUOTE] = ACTIONS(2982), [anon_sym_iq_LBRACE] = ACTIONS(2982), [aux_sym_char_literal_token1] = ACTIONS(2982), [anon_sym_SQUOTE] = ACTIONS(2980), [anon_sym___DATE__] = ACTIONS(2980), [anon_sym___FILE__] = ACTIONS(2980), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2980), [anon_sym___FUNCTION__] = ACTIONS(2980), [anon_sym___LINE__] = ACTIONS(2980), [anon_sym___MODULE__] = ACTIONS(2980), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2980), [anon_sym___TIME__] = ACTIONS(2980), [anon_sym___TIMESTAMP__] = ACTIONS(2980), [anon_sym___VENDOR__] = ACTIONS(2980), [anon_sym___VERSION__] = ACTIONS(2980), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2982), [sym_float_literal] = ACTIONS(2982), [sym__string] = ACTIONS(2982), }, [621] = { [sym_identifier] = ACTIONS(2984), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2986), [anon_sym_RBRACE] = ACTIONS(2986), [anon_sym_LBRACE] = ACTIONS(2986), [anon_sym_SLASH] = ACTIONS(2984), [anon_sym_SLASH_EQ] = ACTIONS(2986), [anon_sym_DOT] = ACTIONS(2984), [anon_sym_DOT_DOT] = ACTIONS(2984), [anon_sym_DOT_DOT_DOT] = ACTIONS(2986), [anon_sym_AMP] = ACTIONS(2984), [anon_sym_AMP_EQ] = ACTIONS(2986), [anon_sym_AMP_AMP] = ACTIONS(2986), [anon_sym_PIPE] = ACTIONS(2984), [anon_sym_PIPE_EQ] = ACTIONS(2986), [anon_sym_PIPE_PIPE] = ACTIONS(2986), [anon_sym_DASH] = ACTIONS(2984), [anon_sym_DASH_EQ] = ACTIONS(2986), [anon_sym_DASH_DASH] = ACTIONS(2986), [anon_sym_PLUS] = ACTIONS(2984), [anon_sym_PLUS_EQ] = ACTIONS(2986), [anon_sym_PLUS_PLUS] = ACTIONS(2986), [anon_sym_LT] = ACTIONS(2984), [anon_sym_LT_EQ] = ACTIONS(2986), [anon_sym_LT_LT] = ACTIONS(2984), [anon_sym_LT_LT_EQ] = ACTIONS(2986), [anon_sym_GT] = ACTIONS(2984), [anon_sym_GT_EQ] = ACTIONS(2986), [anon_sym_GT_GT_EQ] = ACTIONS(2986), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2986), [anon_sym_GT_GT] = ACTIONS(2984), [anon_sym_GT_GT_GT] = ACTIONS(2984), [anon_sym_BANG] = ACTIONS(2984), [anon_sym_BANG_EQ] = ACTIONS(2986), [anon_sym_LPAREN] = ACTIONS(2986), [anon_sym_RPAREN] = ACTIONS(2986), [anon_sym_LBRACK] = ACTIONS(2986), [anon_sym_RBRACK] = ACTIONS(2986), [anon_sym_QMARK] = ACTIONS(2986), [anon_sym_COMMA] = ACTIONS(2986), [anon_sym_SEMI] = ACTIONS(2986), [anon_sym_COLON] = ACTIONS(2986), [anon_sym_DOLLAR] = ACTIONS(2984), [anon_sym_EQ] = ACTIONS(2984), [anon_sym_EQ_EQ] = ACTIONS(2986), [anon_sym_STAR] = ACTIONS(2984), [anon_sym_STAR_EQ] = ACTIONS(2986), [anon_sym_PERCENT] = ACTIONS(2984), [anon_sym_PERCENT_EQ] = ACTIONS(2986), [anon_sym_CARET] = ACTIONS(2984), [anon_sym_CARET_EQ] = ACTIONS(2986), [anon_sym_CARET_CARET] = ACTIONS(2984), [anon_sym_CARET_CARET_EQ] = ACTIONS(2986), [anon_sym_TILDE] = ACTIONS(2984), [anon_sym_TILDE_EQ] = ACTIONS(2986), [anon_sym_AT] = ACTIONS(2986), [anon_sym_EQ_GT] = ACTIONS(2986), [anon_sym_POUND] = ACTIONS(2986), [anon_sym_BANGin] = ACTIONS(2986), [anon_sym_BANGis] = ACTIONS(2986), [sym_bool] = ACTIONS(2984), [sym_byte] = ACTIONS(2984), [sym_ubyte] = ACTIONS(2984), [sym_char] = ACTIONS(2984), [sym_short] = ACTIONS(2984), [sym_ushort] = ACTIONS(2984), [sym_int] = ACTIONS(2984), [sym_uint] = ACTIONS(2984), [sym_long] = ACTIONS(2984), [sym_ulong] = ACTIONS(2984), [sym_cent] = ACTIONS(2984), [sym_ucent] = ACTIONS(2984), [sym_wchar] = ACTIONS(2984), [sym_dchar] = ACTIONS(2984), [sym_float] = ACTIONS(2984), [sym_double] = ACTIONS(2984), [sym_real] = ACTIONS(2984), [sym_ifloat] = ACTIONS(2984), [sym_idouble] = ACTIONS(2984), [sym_ireal] = ACTIONS(2984), [sym_cfloat] = ACTIONS(2984), [sym_cdouble] = ACTIONS(2984), [sym_creal] = ACTIONS(2984), [sym_size_t] = ACTIONS(2984), [sym_ptrdiff_t] = ACTIONS(2984), [sym_string] = ACTIONS(2984), [sym_cstring] = ACTIONS(2984), [sym_dstring] = ACTIONS(2984), [sym_wstring] = ACTIONS(2984), [sym_noreturn] = ACTIONS(2984), [sym_true] = ACTIONS(2984), [sym_false] = ACTIONS(2984), [sym_null] = ACTIONS(2984), [sym_super] = ACTIONS(2984), [sym_this] = ACTIONS(2984), [sym_abstract] = ACTIONS(2984), [sym_alias] = ACTIONS(2984), [sym_align] = ACTIONS(2984), [sym_asm] = ACTIONS(2984), [sym_assert] = ACTIONS(2984), [sym_auto] = ACTIONS(2984), [sym_break] = ACTIONS(2984), [sym_case] = ACTIONS(2984), [sym_cast] = ACTIONS(2984), [sym_catch] = ACTIONS(2984), [sym_class] = ACTIONS(2984), [sym_const] = ACTIONS(2984), [sym_continue] = ACTIONS(2984), [sym_debug] = ACTIONS(2984), [sym_default] = ACTIONS(2984), [sym_delegate] = ACTIONS(2984), [sym_delete] = ACTIONS(2984), [sym_deprecated] = ACTIONS(2984), [sym_do] = ACTIONS(2984), [sym_else] = ACTIONS(2984), [sym_enum] = ACTIONS(2984), [sym_export] = ACTIONS(2984), [sym_extern] = ACTIONS(2984), [sym_final] = ACTIONS(2984), [sym_finally] = ACTIONS(2984), [sym_for] = ACTIONS(2984), [sym_foreach] = ACTIONS(2984), [sym_foreach_reverse] = ACTIONS(2984), [sym_function] = ACTIONS(2984), [sym_goto] = ACTIONS(2984), [sym_if] = ACTIONS(2984), [sym_immutable] = ACTIONS(2984), [sym_import] = ACTIONS(2984), [sym_in] = ACTIONS(2984), [sym_inout] = ACTIONS(2984), [sym_interface] = ACTIONS(2984), [sym_invariant] = ACTIONS(2984), [sym_is] = ACTIONS(2984), [sym_lazy] = ACTIONS(2984), [sym_mixin] = ACTIONS(2984), [sym_module] = ACTIONS(2984), [sym_new] = ACTIONS(2984), [sym_nothrow] = ACTIONS(2984), [sym_out] = ACTIONS(2984), [sym_override] = ACTIONS(2984), [sym_package] = ACTIONS(2984), [sym_pragma] = ACTIONS(2984), [sym_private] = ACTIONS(2984), [sym_protected] = ACTIONS(2984), [sym_public] = ACTIONS(2984), [sym_pure] = ACTIONS(2984), [sym_ref] = ACTIONS(2984), [sym_return] = ACTIONS(2984), [sym_scope] = ACTIONS(2984), [sym_shared] = ACTIONS(2984), [sym_static] = ACTIONS(2984), [sym_struct] = ACTIONS(2984), [sym_switch] = ACTIONS(2984), [sym_synchronized] = ACTIONS(2984), [sym_template] = ACTIONS(2984), [sym_throw] = ACTIONS(2984), [sym_try] = ACTIONS(2984), [sym_typeid] = ACTIONS(2984), [sym_typeof] = ACTIONS(2984), [sym_union] = ACTIONS(2984), [sym_unittest] = ACTIONS(2984), [sym_version] = ACTIONS(2984), [sym_while] = ACTIONS(2984), [sym_with] = ACTIONS(2984), [sym_parameters_] = ACTIONS(2984), [sym_gshared] = ACTIONS(2984), [sym_traits] = ACTIONS(2984), [sym_vector] = ACTIONS(2984), [sym_void] = ACTIONS(2984), [anon_sym_BQUOTE] = ACTIONS(2986), [anon_sym_r_DQUOTE] = ACTIONS(2986), [anon_sym_x_DQUOTE] = ACTIONS(2986), [anon_sym_DQUOTE] = ACTIONS(2986), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2986), [anon_sym_i_BQUOTE] = ACTIONS(2986), [anon_sym_i_DQUOTE] = ACTIONS(2986), [anon_sym_iq_LBRACE] = ACTIONS(2986), [aux_sym_char_literal_token1] = ACTIONS(2986), [anon_sym_SQUOTE] = ACTIONS(2984), [anon_sym___DATE__] = ACTIONS(2984), [anon_sym___FILE__] = ACTIONS(2984), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2984), [anon_sym___FUNCTION__] = ACTIONS(2984), [anon_sym___LINE__] = ACTIONS(2984), [anon_sym___MODULE__] = ACTIONS(2984), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2984), [anon_sym___TIME__] = ACTIONS(2984), [anon_sym___TIMESTAMP__] = ACTIONS(2984), [anon_sym___VENDOR__] = ACTIONS(2984), [anon_sym___VERSION__] = ACTIONS(2984), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2986), [sym_float_literal] = ACTIONS(2986), [sym__string] = ACTIONS(2986), }, [622] = { [sym_identifier] = ACTIONS(2988), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2990), [anon_sym_RBRACE] = ACTIONS(2990), [anon_sym_LBRACE] = ACTIONS(2990), [anon_sym_SLASH] = ACTIONS(2988), [anon_sym_SLASH_EQ] = ACTIONS(2990), [anon_sym_DOT] = ACTIONS(2988), [anon_sym_DOT_DOT] = ACTIONS(2988), [anon_sym_DOT_DOT_DOT] = ACTIONS(2990), [anon_sym_AMP] = ACTIONS(2988), [anon_sym_AMP_EQ] = ACTIONS(2990), [anon_sym_AMP_AMP] = ACTIONS(2990), [anon_sym_PIPE] = ACTIONS(2988), [anon_sym_PIPE_EQ] = ACTIONS(2990), [anon_sym_PIPE_PIPE] = ACTIONS(2990), [anon_sym_DASH] = ACTIONS(2988), [anon_sym_DASH_EQ] = ACTIONS(2990), [anon_sym_DASH_DASH] = ACTIONS(2990), [anon_sym_PLUS] = ACTIONS(2988), [anon_sym_PLUS_EQ] = ACTIONS(2990), [anon_sym_PLUS_PLUS] = ACTIONS(2990), [anon_sym_LT] = ACTIONS(2988), [anon_sym_LT_EQ] = ACTIONS(2990), [anon_sym_LT_LT] = ACTIONS(2988), [anon_sym_LT_LT_EQ] = ACTIONS(2990), [anon_sym_GT] = ACTIONS(2988), [anon_sym_GT_EQ] = ACTIONS(2990), [anon_sym_GT_GT_EQ] = ACTIONS(2990), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2990), [anon_sym_GT_GT] = ACTIONS(2988), [anon_sym_GT_GT_GT] = ACTIONS(2988), [anon_sym_BANG] = ACTIONS(2988), [anon_sym_BANG_EQ] = ACTIONS(2990), [anon_sym_LPAREN] = ACTIONS(2990), [anon_sym_RPAREN] = ACTIONS(2990), [anon_sym_LBRACK] = ACTIONS(2990), [anon_sym_RBRACK] = ACTIONS(2990), [anon_sym_QMARK] = ACTIONS(2990), [anon_sym_COMMA] = ACTIONS(2990), [anon_sym_SEMI] = ACTIONS(2990), [anon_sym_COLON] = ACTIONS(2990), [anon_sym_DOLLAR] = ACTIONS(2988), [anon_sym_EQ] = ACTIONS(2988), [anon_sym_EQ_EQ] = ACTIONS(2990), [anon_sym_STAR] = ACTIONS(2988), [anon_sym_STAR_EQ] = ACTIONS(2990), [anon_sym_PERCENT] = ACTIONS(2988), [anon_sym_PERCENT_EQ] = ACTIONS(2990), [anon_sym_CARET] = ACTIONS(2988), [anon_sym_CARET_EQ] = ACTIONS(2990), [anon_sym_CARET_CARET] = ACTIONS(2988), [anon_sym_CARET_CARET_EQ] = ACTIONS(2990), [anon_sym_TILDE] = ACTIONS(2988), [anon_sym_TILDE_EQ] = ACTIONS(2990), [anon_sym_AT] = ACTIONS(2990), [anon_sym_EQ_GT] = ACTIONS(2990), [anon_sym_POUND] = ACTIONS(2990), [anon_sym_BANGin] = ACTIONS(2990), [anon_sym_BANGis] = ACTIONS(2990), [sym_bool] = ACTIONS(2988), [sym_byte] = ACTIONS(2988), [sym_ubyte] = ACTIONS(2988), [sym_char] = ACTIONS(2988), [sym_short] = ACTIONS(2988), [sym_ushort] = ACTIONS(2988), [sym_int] = ACTIONS(2988), [sym_uint] = ACTIONS(2988), [sym_long] = ACTIONS(2988), [sym_ulong] = ACTIONS(2988), [sym_cent] = ACTIONS(2988), [sym_ucent] = ACTIONS(2988), [sym_wchar] = ACTIONS(2988), [sym_dchar] = ACTIONS(2988), [sym_float] = ACTIONS(2988), [sym_double] = ACTIONS(2988), [sym_real] = ACTIONS(2988), [sym_ifloat] = ACTIONS(2988), [sym_idouble] = ACTIONS(2988), [sym_ireal] = ACTIONS(2988), [sym_cfloat] = ACTIONS(2988), [sym_cdouble] = ACTIONS(2988), [sym_creal] = ACTIONS(2988), [sym_size_t] = ACTIONS(2988), [sym_ptrdiff_t] = ACTIONS(2988), [sym_string] = ACTIONS(2988), [sym_cstring] = ACTIONS(2988), [sym_dstring] = ACTIONS(2988), [sym_wstring] = ACTIONS(2988), [sym_noreturn] = ACTIONS(2988), [sym_true] = ACTIONS(2988), [sym_false] = ACTIONS(2988), [sym_null] = ACTIONS(2988), [sym_super] = ACTIONS(2988), [sym_this] = ACTIONS(2988), [sym_abstract] = ACTIONS(2988), [sym_alias] = ACTIONS(2988), [sym_align] = ACTIONS(2988), [sym_asm] = ACTIONS(2988), [sym_assert] = ACTIONS(2988), [sym_auto] = ACTIONS(2988), [sym_break] = ACTIONS(2988), [sym_case] = ACTIONS(2988), [sym_cast] = ACTIONS(2988), [sym_catch] = ACTIONS(2988), [sym_class] = ACTIONS(2988), [sym_const] = ACTIONS(2988), [sym_continue] = ACTIONS(2988), [sym_debug] = ACTIONS(2988), [sym_default] = ACTIONS(2988), [sym_delegate] = ACTIONS(2988), [sym_delete] = ACTIONS(2988), [sym_deprecated] = ACTIONS(2988), [sym_do] = ACTIONS(2988), [sym_else] = ACTIONS(2988), [sym_enum] = ACTIONS(2988), [sym_export] = ACTIONS(2988), [sym_extern] = ACTIONS(2988), [sym_final] = ACTIONS(2988), [sym_finally] = ACTIONS(2988), [sym_for] = ACTIONS(2988), [sym_foreach] = ACTIONS(2988), [sym_foreach_reverse] = ACTIONS(2988), [sym_function] = ACTIONS(2988), [sym_goto] = ACTIONS(2988), [sym_if] = ACTIONS(2988), [sym_immutable] = ACTIONS(2988), [sym_import] = ACTIONS(2988), [sym_in] = ACTIONS(2988), [sym_inout] = ACTIONS(2988), [sym_interface] = ACTIONS(2988), [sym_invariant] = ACTIONS(2988), [sym_is] = ACTIONS(2988), [sym_lazy] = ACTIONS(2988), [sym_mixin] = ACTIONS(2988), [sym_module] = ACTIONS(2988), [sym_new] = ACTIONS(2988), [sym_nothrow] = ACTIONS(2988), [sym_out] = ACTIONS(2988), [sym_override] = ACTIONS(2988), [sym_package] = ACTIONS(2988), [sym_pragma] = ACTIONS(2988), [sym_private] = ACTIONS(2988), [sym_protected] = ACTIONS(2988), [sym_public] = ACTIONS(2988), [sym_pure] = ACTIONS(2988), [sym_ref] = ACTIONS(2988), [sym_return] = ACTIONS(2988), [sym_scope] = ACTIONS(2988), [sym_shared] = ACTIONS(2988), [sym_static] = ACTIONS(2988), [sym_struct] = ACTIONS(2988), [sym_switch] = ACTIONS(2988), [sym_synchronized] = ACTIONS(2988), [sym_template] = ACTIONS(2988), [sym_throw] = ACTIONS(2988), [sym_try] = ACTIONS(2988), [sym_typeid] = ACTIONS(2988), [sym_typeof] = ACTIONS(2988), [sym_union] = ACTIONS(2988), [sym_unittest] = ACTIONS(2988), [sym_version] = ACTIONS(2988), [sym_while] = ACTIONS(2988), [sym_with] = ACTIONS(2988), [sym_parameters_] = ACTIONS(2988), [sym_gshared] = ACTIONS(2988), [sym_traits] = ACTIONS(2988), [sym_vector] = ACTIONS(2988), [sym_void] = ACTIONS(2988), [anon_sym_BQUOTE] = ACTIONS(2990), [anon_sym_r_DQUOTE] = ACTIONS(2990), [anon_sym_x_DQUOTE] = ACTIONS(2990), [anon_sym_DQUOTE] = ACTIONS(2990), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2990), [anon_sym_i_BQUOTE] = ACTIONS(2990), [anon_sym_i_DQUOTE] = ACTIONS(2990), [anon_sym_iq_LBRACE] = ACTIONS(2990), [aux_sym_char_literal_token1] = ACTIONS(2990), [anon_sym_SQUOTE] = ACTIONS(2988), [anon_sym___DATE__] = ACTIONS(2988), [anon_sym___FILE__] = ACTIONS(2988), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2988), [anon_sym___FUNCTION__] = ACTIONS(2988), [anon_sym___LINE__] = ACTIONS(2988), [anon_sym___MODULE__] = ACTIONS(2988), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2988), [anon_sym___TIME__] = ACTIONS(2988), [anon_sym___TIMESTAMP__] = ACTIONS(2988), [anon_sym___VENDOR__] = ACTIONS(2988), [anon_sym___VERSION__] = ACTIONS(2988), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2990), [sym_float_literal] = ACTIONS(2990), [sym__string] = ACTIONS(2990), }, [623] = { [sym_identifier] = ACTIONS(2992), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2994), [anon_sym_RBRACE] = ACTIONS(2994), [anon_sym_LBRACE] = ACTIONS(2994), [anon_sym_SLASH] = ACTIONS(2992), [anon_sym_SLASH_EQ] = ACTIONS(2994), [anon_sym_DOT] = ACTIONS(2992), [anon_sym_DOT_DOT] = ACTIONS(2992), [anon_sym_DOT_DOT_DOT] = ACTIONS(2994), [anon_sym_AMP] = ACTIONS(2992), [anon_sym_AMP_EQ] = ACTIONS(2994), [anon_sym_AMP_AMP] = ACTIONS(2994), [anon_sym_PIPE] = ACTIONS(2992), [anon_sym_PIPE_EQ] = ACTIONS(2994), [anon_sym_PIPE_PIPE] = ACTIONS(2994), [anon_sym_DASH] = ACTIONS(2992), [anon_sym_DASH_EQ] = ACTIONS(2994), [anon_sym_DASH_DASH] = ACTIONS(2994), [anon_sym_PLUS] = ACTIONS(2992), [anon_sym_PLUS_EQ] = ACTIONS(2994), [anon_sym_PLUS_PLUS] = ACTIONS(2994), [anon_sym_LT] = ACTIONS(2992), [anon_sym_LT_EQ] = ACTIONS(2994), [anon_sym_LT_LT] = ACTIONS(2992), [anon_sym_LT_LT_EQ] = ACTIONS(2994), [anon_sym_GT] = ACTIONS(2992), [anon_sym_GT_EQ] = ACTIONS(2994), [anon_sym_GT_GT_EQ] = ACTIONS(2994), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2994), [anon_sym_GT_GT] = ACTIONS(2992), [anon_sym_GT_GT_GT] = ACTIONS(2992), [anon_sym_BANG] = ACTIONS(2992), [anon_sym_BANG_EQ] = ACTIONS(2994), [anon_sym_LPAREN] = ACTIONS(2994), [anon_sym_RPAREN] = ACTIONS(2994), [anon_sym_LBRACK] = ACTIONS(2994), [anon_sym_RBRACK] = ACTIONS(2994), [anon_sym_QMARK] = ACTIONS(2994), [anon_sym_COMMA] = ACTIONS(2994), [anon_sym_SEMI] = ACTIONS(2994), [anon_sym_COLON] = ACTIONS(2994), [anon_sym_DOLLAR] = ACTIONS(2992), [anon_sym_EQ] = ACTIONS(2992), [anon_sym_EQ_EQ] = ACTIONS(2994), [anon_sym_STAR] = ACTIONS(2992), [anon_sym_STAR_EQ] = ACTIONS(2994), [anon_sym_PERCENT] = ACTIONS(2992), [anon_sym_PERCENT_EQ] = ACTIONS(2994), [anon_sym_CARET] = ACTIONS(2992), [anon_sym_CARET_EQ] = ACTIONS(2994), [anon_sym_CARET_CARET] = ACTIONS(2992), [anon_sym_CARET_CARET_EQ] = ACTIONS(2994), [anon_sym_TILDE] = ACTIONS(2992), [anon_sym_TILDE_EQ] = ACTIONS(2994), [anon_sym_AT] = ACTIONS(2994), [anon_sym_EQ_GT] = ACTIONS(2994), [anon_sym_POUND] = ACTIONS(2994), [anon_sym_BANGin] = ACTIONS(2994), [anon_sym_BANGis] = ACTIONS(2994), [sym_bool] = ACTIONS(2992), [sym_byte] = ACTIONS(2992), [sym_ubyte] = ACTIONS(2992), [sym_char] = ACTIONS(2992), [sym_short] = ACTIONS(2992), [sym_ushort] = ACTIONS(2992), [sym_int] = ACTIONS(2992), [sym_uint] = ACTIONS(2992), [sym_long] = ACTIONS(2992), [sym_ulong] = ACTIONS(2992), [sym_cent] = ACTIONS(2992), [sym_ucent] = ACTIONS(2992), [sym_wchar] = ACTIONS(2992), [sym_dchar] = ACTIONS(2992), [sym_float] = ACTIONS(2992), [sym_double] = ACTIONS(2992), [sym_real] = ACTIONS(2992), [sym_ifloat] = ACTIONS(2992), [sym_idouble] = ACTIONS(2992), [sym_ireal] = ACTIONS(2992), [sym_cfloat] = ACTIONS(2992), [sym_cdouble] = ACTIONS(2992), [sym_creal] = ACTIONS(2992), [sym_size_t] = ACTIONS(2992), [sym_ptrdiff_t] = ACTIONS(2992), [sym_string] = ACTIONS(2992), [sym_cstring] = ACTIONS(2992), [sym_dstring] = ACTIONS(2992), [sym_wstring] = ACTIONS(2992), [sym_noreturn] = ACTIONS(2992), [sym_true] = ACTIONS(2992), [sym_false] = ACTIONS(2992), [sym_null] = ACTIONS(2992), [sym_super] = ACTIONS(2992), [sym_this] = ACTIONS(2992), [sym_abstract] = ACTIONS(2992), [sym_alias] = ACTIONS(2992), [sym_align] = ACTIONS(2992), [sym_asm] = ACTIONS(2992), [sym_assert] = ACTIONS(2992), [sym_auto] = ACTIONS(2992), [sym_break] = ACTIONS(2992), [sym_case] = ACTIONS(2992), [sym_cast] = ACTIONS(2992), [sym_catch] = ACTIONS(2992), [sym_class] = ACTIONS(2992), [sym_const] = ACTIONS(2992), [sym_continue] = ACTIONS(2992), [sym_debug] = ACTIONS(2992), [sym_default] = ACTIONS(2992), [sym_delegate] = ACTIONS(2992), [sym_delete] = ACTIONS(2992), [sym_deprecated] = ACTIONS(2992), [sym_do] = ACTIONS(2992), [sym_else] = ACTIONS(2992), [sym_enum] = ACTIONS(2992), [sym_export] = ACTIONS(2992), [sym_extern] = ACTIONS(2992), [sym_final] = ACTIONS(2992), [sym_finally] = ACTIONS(2992), [sym_for] = ACTIONS(2992), [sym_foreach] = ACTIONS(2992), [sym_foreach_reverse] = ACTIONS(2992), [sym_function] = ACTIONS(2992), [sym_goto] = ACTIONS(2992), [sym_if] = ACTIONS(2992), [sym_immutable] = ACTIONS(2992), [sym_import] = ACTIONS(2992), [sym_in] = ACTIONS(2992), [sym_inout] = ACTIONS(2992), [sym_interface] = ACTIONS(2992), [sym_invariant] = ACTIONS(2992), [sym_is] = ACTIONS(2992), [sym_lazy] = ACTIONS(2992), [sym_mixin] = ACTIONS(2992), [sym_module] = ACTIONS(2992), [sym_new] = ACTIONS(2992), [sym_nothrow] = ACTIONS(2992), [sym_out] = ACTIONS(2992), [sym_override] = ACTIONS(2992), [sym_package] = ACTIONS(2992), [sym_pragma] = ACTIONS(2992), [sym_private] = ACTIONS(2992), [sym_protected] = ACTIONS(2992), [sym_public] = ACTIONS(2992), [sym_pure] = ACTIONS(2992), [sym_ref] = ACTIONS(2992), [sym_return] = ACTIONS(2992), [sym_scope] = ACTIONS(2992), [sym_shared] = ACTIONS(2992), [sym_static] = ACTIONS(2992), [sym_struct] = ACTIONS(2992), [sym_switch] = ACTIONS(2992), [sym_synchronized] = ACTIONS(2992), [sym_template] = ACTIONS(2992), [sym_throw] = ACTIONS(2992), [sym_try] = ACTIONS(2992), [sym_typeid] = ACTIONS(2992), [sym_typeof] = ACTIONS(2992), [sym_union] = ACTIONS(2992), [sym_unittest] = ACTIONS(2992), [sym_version] = ACTIONS(2992), [sym_while] = ACTIONS(2992), [sym_with] = ACTIONS(2992), [sym_parameters_] = ACTIONS(2992), [sym_gshared] = ACTIONS(2992), [sym_traits] = ACTIONS(2992), [sym_vector] = ACTIONS(2992), [sym_void] = ACTIONS(2992), [anon_sym_BQUOTE] = ACTIONS(2994), [anon_sym_r_DQUOTE] = ACTIONS(2994), [anon_sym_x_DQUOTE] = ACTIONS(2994), [anon_sym_DQUOTE] = ACTIONS(2994), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2994), [anon_sym_i_BQUOTE] = ACTIONS(2994), [anon_sym_i_DQUOTE] = ACTIONS(2994), [anon_sym_iq_LBRACE] = ACTIONS(2994), [aux_sym_char_literal_token1] = ACTIONS(2994), [anon_sym_SQUOTE] = ACTIONS(2992), [anon_sym___DATE__] = ACTIONS(2992), [anon_sym___FILE__] = ACTIONS(2992), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2992), [anon_sym___FUNCTION__] = ACTIONS(2992), [anon_sym___LINE__] = ACTIONS(2992), [anon_sym___MODULE__] = ACTIONS(2992), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2992), [anon_sym___TIME__] = ACTIONS(2992), [anon_sym___TIMESTAMP__] = ACTIONS(2992), [anon_sym___VENDOR__] = ACTIONS(2992), [anon_sym___VERSION__] = ACTIONS(2992), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2994), [sym_float_literal] = ACTIONS(2994), [sym__string] = ACTIONS(2994), }, [624] = { [sym_identifier] = ACTIONS(2996), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2998), [anon_sym_RBRACE] = ACTIONS(2998), [anon_sym_LBRACE] = ACTIONS(2998), [anon_sym_SLASH] = ACTIONS(2996), [anon_sym_SLASH_EQ] = ACTIONS(2998), [anon_sym_DOT] = ACTIONS(2996), [anon_sym_DOT_DOT] = ACTIONS(2996), [anon_sym_DOT_DOT_DOT] = ACTIONS(2998), [anon_sym_AMP] = ACTIONS(2996), [anon_sym_AMP_EQ] = ACTIONS(2998), [anon_sym_AMP_AMP] = ACTIONS(2998), [anon_sym_PIPE] = ACTIONS(2996), [anon_sym_PIPE_EQ] = ACTIONS(2998), [anon_sym_PIPE_PIPE] = ACTIONS(2998), [anon_sym_DASH] = ACTIONS(2996), [anon_sym_DASH_EQ] = ACTIONS(2998), [anon_sym_DASH_DASH] = ACTIONS(2998), [anon_sym_PLUS] = ACTIONS(2996), [anon_sym_PLUS_EQ] = ACTIONS(2998), [anon_sym_PLUS_PLUS] = ACTIONS(2998), [anon_sym_LT] = ACTIONS(2996), [anon_sym_LT_EQ] = ACTIONS(2998), [anon_sym_LT_LT] = ACTIONS(2996), [anon_sym_LT_LT_EQ] = ACTIONS(2998), [anon_sym_GT] = ACTIONS(2996), [anon_sym_GT_EQ] = ACTIONS(2998), [anon_sym_GT_GT_EQ] = ACTIONS(2998), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2998), [anon_sym_GT_GT] = ACTIONS(2996), [anon_sym_GT_GT_GT] = ACTIONS(2996), [anon_sym_BANG] = ACTIONS(2996), [anon_sym_BANG_EQ] = ACTIONS(2998), [anon_sym_LPAREN] = ACTIONS(2998), [anon_sym_RPAREN] = ACTIONS(2998), [anon_sym_LBRACK] = ACTIONS(2998), [anon_sym_RBRACK] = ACTIONS(2998), [anon_sym_QMARK] = ACTIONS(2998), [anon_sym_COMMA] = ACTIONS(2998), [anon_sym_SEMI] = ACTIONS(2998), [anon_sym_COLON] = ACTIONS(2998), [anon_sym_DOLLAR] = ACTIONS(2996), [anon_sym_EQ] = ACTIONS(2996), [anon_sym_EQ_EQ] = ACTIONS(2998), [anon_sym_STAR] = ACTIONS(2996), [anon_sym_STAR_EQ] = ACTIONS(2998), [anon_sym_PERCENT] = ACTIONS(2996), [anon_sym_PERCENT_EQ] = ACTIONS(2998), [anon_sym_CARET] = ACTIONS(2996), [anon_sym_CARET_EQ] = ACTIONS(2998), [anon_sym_CARET_CARET] = ACTIONS(2996), [anon_sym_CARET_CARET_EQ] = ACTIONS(2998), [anon_sym_TILDE] = ACTIONS(2996), [anon_sym_TILDE_EQ] = ACTIONS(2998), [anon_sym_AT] = ACTIONS(2998), [anon_sym_EQ_GT] = ACTIONS(2998), [anon_sym_POUND] = ACTIONS(2998), [anon_sym_BANGin] = ACTIONS(2998), [anon_sym_BANGis] = ACTIONS(2998), [sym_bool] = ACTIONS(2996), [sym_byte] = ACTIONS(2996), [sym_ubyte] = ACTIONS(2996), [sym_char] = ACTIONS(2996), [sym_short] = ACTIONS(2996), [sym_ushort] = ACTIONS(2996), [sym_int] = ACTIONS(2996), [sym_uint] = ACTIONS(2996), [sym_long] = ACTIONS(2996), [sym_ulong] = ACTIONS(2996), [sym_cent] = ACTIONS(2996), [sym_ucent] = ACTIONS(2996), [sym_wchar] = ACTIONS(2996), [sym_dchar] = ACTIONS(2996), [sym_float] = ACTIONS(2996), [sym_double] = ACTIONS(2996), [sym_real] = ACTIONS(2996), [sym_ifloat] = ACTIONS(2996), [sym_idouble] = ACTIONS(2996), [sym_ireal] = ACTIONS(2996), [sym_cfloat] = ACTIONS(2996), [sym_cdouble] = ACTIONS(2996), [sym_creal] = ACTIONS(2996), [sym_size_t] = ACTIONS(2996), [sym_ptrdiff_t] = ACTIONS(2996), [sym_string] = ACTIONS(2996), [sym_cstring] = ACTIONS(2996), [sym_dstring] = ACTIONS(2996), [sym_wstring] = ACTIONS(2996), [sym_noreturn] = ACTIONS(2996), [sym_true] = ACTIONS(2996), [sym_false] = ACTIONS(2996), [sym_null] = ACTIONS(2996), [sym_super] = ACTIONS(2996), [sym_this] = ACTIONS(2996), [sym_abstract] = ACTIONS(2996), [sym_alias] = ACTIONS(2996), [sym_align] = ACTIONS(2996), [sym_asm] = ACTIONS(2996), [sym_assert] = ACTIONS(2996), [sym_auto] = ACTIONS(2996), [sym_break] = ACTIONS(2996), [sym_case] = ACTIONS(2996), [sym_cast] = ACTIONS(2996), [sym_catch] = ACTIONS(2996), [sym_class] = ACTIONS(2996), [sym_const] = ACTIONS(2996), [sym_continue] = ACTIONS(2996), [sym_debug] = ACTIONS(2996), [sym_default] = ACTIONS(2996), [sym_delegate] = ACTIONS(2996), [sym_delete] = ACTIONS(2996), [sym_deprecated] = ACTIONS(2996), [sym_do] = ACTIONS(2996), [sym_else] = ACTIONS(2996), [sym_enum] = ACTIONS(2996), [sym_export] = ACTIONS(2996), [sym_extern] = ACTIONS(2996), [sym_final] = ACTIONS(2996), [sym_finally] = ACTIONS(2996), [sym_for] = ACTIONS(2996), [sym_foreach] = ACTIONS(2996), [sym_foreach_reverse] = ACTIONS(2996), [sym_function] = ACTIONS(2996), [sym_goto] = ACTIONS(2996), [sym_if] = ACTIONS(2996), [sym_immutable] = ACTIONS(2996), [sym_import] = ACTIONS(2996), [sym_in] = ACTIONS(2996), [sym_inout] = ACTIONS(2996), [sym_interface] = ACTIONS(2996), [sym_invariant] = ACTIONS(2996), [sym_is] = ACTIONS(2996), [sym_lazy] = ACTIONS(2996), [sym_mixin] = ACTIONS(2996), [sym_module] = ACTIONS(2996), [sym_new] = ACTIONS(2996), [sym_nothrow] = ACTIONS(2996), [sym_out] = ACTIONS(2996), [sym_override] = ACTIONS(2996), [sym_package] = ACTIONS(2996), [sym_pragma] = ACTIONS(2996), [sym_private] = ACTIONS(2996), [sym_protected] = ACTIONS(2996), [sym_public] = ACTIONS(2996), [sym_pure] = ACTIONS(2996), [sym_ref] = ACTIONS(2996), [sym_return] = ACTIONS(2996), [sym_scope] = ACTIONS(2996), [sym_shared] = ACTIONS(2996), [sym_static] = ACTIONS(2996), [sym_struct] = ACTIONS(2996), [sym_switch] = ACTIONS(2996), [sym_synchronized] = ACTIONS(2996), [sym_template] = ACTIONS(2996), [sym_throw] = ACTIONS(2996), [sym_try] = ACTIONS(2996), [sym_typeid] = ACTIONS(2996), [sym_typeof] = ACTIONS(2996), [sym_union] = ACTIONS(2996), [sym_unittest] = ACTIONS(2996), [sym_version] = ACTIONS(2996), [sym_while] = ACTIONS(2996), [sym_with] = ACTIONS(2996), [sym_parameters_] = ACTIONS(2996), [sym_gshared] = ACTIONS(2996), [sym_traits] = ACTIONS(2996), [sym_vector] = ACTIONS(2996), [sym_void] = ACTIONS(2996), [anon_sym_BQUOTE] = ACTIONS(2998), [anon_sym_r_DQUOTE] = ACTIONS(2998), [anon_sym_x_DQUOTE] = ACTIONS(2998), [anon_sym_DQUOTE] = ACTIONS(2998), [anon_sym_DOLLAR_LPAREN] = ACTIONS(2998), [anon_sym_i_BQUOTE] = ACTIONS(2998), [anon_sym_i_DQUOTE] = ACTIONS(2998), [anon_sym_iq_LBRACE] = ACTIONS(2998), [aux_sym_char_literal_token1] = ACTIONS(2998), [anon_sym_SQUOTE] = ACTIONS(2996), [anon_sym___DATE__] = ACTIONS(2996), [anon_sym___FILE__] = ACTIONS(2996), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2996), [anon_sym___FUNCTION__] = ACTIONS(2996), [anon_sym___LINE__] = ACTIONS(2996), [anon_sym___MODULE__] = ACTIONS(2996), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2996), [anon_sym___TIME__] = ACTIONS(2996), [anon_sym___TIMESTAMP__] = ACTIONS(2996), [anon_sym___VENDOR__] = ACTIONS(2996), [anon_sym___VERSION__] = ACTIONS(2996), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2998), [sym_float_literal] = ACTIONS(2998), [sym__string] = ACTIONS(2998), }, [625] = { [sym_identifier] = ACTIONS(3000), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3002), [anon_sym_RBRACE] = ACTIONS(3002), [anon_sym_LBRACE] = ACTIONS(3002), [anon_sym_SLASH] = ACTIONS(3000), [anon_sym_SLASH_EQ] = ACTIONS(3002), [anon_sym_DOT] = ACTIONS(3000), [anon_sym_DOT_DOT] = ACTIONS(3000), [anon_sym_DOT_DOT_DOT] = ACTIONS(3002), [anon_sym_AMP] = ACTIONS(3000), [anon_sym_AMP_EQ] = ACTIONS(3002), [anon_sym_AMP_AMP] = ACTIONS(3002), [anon_sym_PIPE] = ACTIONS(3000), [anon_sym_PIPE_EQ] = ACTIONS(3002), [anon_sym_PIPE_PIPE] = ACTIONS(3002), [anon_sym_DASH] = ACTIONS(3000), [anon_sym_DASH_EQ] = ACTIONS(3002), [anon_sym_DASH_DASH] = ACTIONS(3002), [anon_sym_PLUS] = ACTIONS(3000), [anon_sym_PLUS_EQ] = ACTIONS(3002), [anon_sym_PLUS_PLUS] = ACTIONS(3002), [anon_sym_LT] = ACTIONS(3000), [anon_sym_LT_EQ] = ACTIONS(3002), [anon_sym_LT_LT] = ACTIONS(3000), [anon_sym_LT_LT_EQ] = ACTIONS(3002), [anon_sym_GT] = ACTIONS(3000), [anon_sym_GT_EQ] = ACTIONS(3002), [anon_sym_GT_GT_EQ] = ACTIONS(3002), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3002), [anon_sym_GT_GT] = ACTIONS(3000), [anon_sym_GT_GT_GT] = ACTIONS(3000), [anon_sym_BANG] = ACTIONS(3000), [anon_sym_BANG_EQ] = ACTIONS(3002), [anon_sym_LPAREN] = ACTIONS(3002), [anon_sym_RPAREN] = ACTIONS(3002), [anon_sym_LBRACK] = ACTIONS(3002), [anon_sym_RBRACK] = ACTIONS(3002), [anon_sym_QMARK] = ACTIONS(3002), [anon_sym_COMMA] = ACTIONS(3002), [anon_sym_SEMI] = ACTIONS(3002), [anon_sym_COLON] = ACTIONS(3002), [anon_sym_DOLLAR] = ACTIONS(3000), [anon_sym_EQ] = ACTIONS(3000), [anon_sym_EQ_EQ] = ACTIONS(3002), [anon_sym_STAR] = ACTIONS(3000), [anon_sym_STAR_EQ] = ACTIONS(3002), [anon_sym_PERCENT] = ACTIONS(3000), [anon_sym_PERCENT_EQ] = ACTIONS(3002), [anon_sym_CARET] = ACTIONS(3000), [anon_sym_CARET_EQ] = ACTIONS(3002), [anon_sym_CARET_CARET] = ACTIONS(3000), [anon_sym_CARET_CARET_EQ] = ACTIONS(3002), [anon_sym_TILDE] = ACTIONS(3000), [anon_sym_TILDE_EQ] = ACTIONS(3002), [anon_sym_AT] = ACTIONS(3002), [anon_sym_EQ_GT] = ACTIONS(3002), [anon_sym_POUND] = ACTIONS(3002), [anon_sym_BANGin] = ACTIONS(3002), [anon_sym_BANGis] = ACTIONS(3002), [sym_bool] = ACTIONS(3000), [sym_byte] = ACTIONS(3000), [sym_ubyte] = ACTIONS(3000), [sym_char] = ACTIONS(3000), [sym_short] = ACTIONS(3000), [sym_ushort] = ACTIONS(3000), [sym_int] = ACTIONS(3000), [sym_uint] = ACTIONS(3000), [sym_long] = ACTIONS(3000), [sym_ulong] = ACTIONS(3000), [sym_cent] = ACTIONS(3000), [sym_ucent] = ACTIONS(3000), [sym_wchar] = ACTIONS(3000), [sym_dchar] = ACTIONS(3000), [sym_float] = ACTIONS(3000), [sym_double] = ACTIONS(3000), [sym_real] = ACTIONS(3000), [sym_ifloat] = ACTIONS(3000), [sym_idouble] = ACTIONS(3000), [sym_ireal] = ACTIONS(3000), [sym_cfloat] = ACTIONS(3000), [sym_cdouble] = ACTIONS(3000), [sym_creal] = ACTIONS(3000), [sym_size_t] = ACTIONS(3000), [sym_ptrdiff_t] = ACTIONS(3000), [sym_string] = ACTIONS(3000), [sym_cstring] = ACTIONS(3000), [sym_dstring] = ACTIONS(3000), [sym_wstring] = ACTIONS(3000), [sym_noreturn] = ACTIONS(3000), [sym_true] = ACTIONS(3000), [sym_false] = ACTIONS(3000), [sym_null] = ACTIONS(3000), [sym_super] = ACTIONS(3000), [sym_this] = ACTIONS(3000), [sym_abstract] = ACTIONS(3000), [sym_alias] = ACTIONS(3000), [sym_align] = ACTIONS(3000), [sym_asm] = ACTIONS(3000), [sym_assert] = ACTIONS(3000), [sym_auto] = ACTIONS(3000), [sym_break] = ACTIONS(3000), [sym_case] = ACTIONS(3000), [sym_cast] = ACTIONS(3000), [sym_catch] = ACTIONS(3000), [sym_class] = ACTIONS(3000), [sym_const] = ACTIONS(3000), [sym_continue] = ACTIONS(3000), [sym_debug] = ACTIONS(3000), [sym_default] = ACTIONS(3000), [sym_delegate] = ACTIONS(3000), [sym_delete] = ACTIONS(3000), [sym_deprecated] = ACTIONS(3000), [sym_do] = ACTIONS(3000), [sym_else] = ACTIONS(3000), [sym_enum] = ACTIONS(3000), [sym_export] = ACTIONS(3000), [sym_extern] = ACTIONS(3000), [sym_final] = ACTIONS(3000), [sym_finally] = ACTIONS(3000), [sym_for] = ACTIONS(3000), [sym_foreach] = ACTIONS(3000), [sym_foreach_reverse] = ACTIONS(3000), [sym_function] = ACTIONS(3000), [sym_goto] = ACTIONS(3000), [sym_if] = ACTIONS(3000), [sym_immutable] = ACTIONS(3000), [sym_import] = ACTIONS(3000), [sym_in] = ACTIONS(3000), [sym_inout] = ACTIONS(3000), [sym_interface] = ACTIONS(3000), [sym_invariant] = ACTIONS(3000), [sym_is] = ACTIONS(3000), [sym_lazy] = ACTIONS(3000), [sym_mixin] = ACTIONS(3000), [sym_module] = ACTIONS(3000), [sym_new] = ACTIONS(3000), [sym_nothrow] = ACTIONS(3000), [sym_out] = ACTIONS(3000), [sym_override] = ACTIONS(3000), [sym_package] = ACTIONS(3000), [sym_pragma] = ACTIONS(3000), [sym_private] = ACTIONS(3000), [sym_protected] = ACTIONS(3000), [sym_public] = ACTIONS(3000), [sym_pure] = ACTIONS(3000), [sym_ref] = ACTIONS(3000), [sym_return] = ACTIONS(3000), [sym_scope] = ACTIONS(3000), [sym_shared] = ACTIONS(3000), [sym_static] = ACTIONS(3000), [sym_struct] = ACTIONS(3000), [sym_switch] = ACTIONS(3000), [sym_synchronized] = ACTIONS(3000), [sym_template] = ACTIONS(3000), [sym_throw] = ACTIONS(3000), [sym_try] = ACTIONS(3000), [sym_typeid] = ACTIONS(3000), [sym_typeof] = ACTIONS(3000), [sym_union] = ACTIONS(3000), [sym_unittest] = ACTIONS(3000), [sym_version] = ACTIONS(3000), [sym_while] = ACTIONS(3000), [sym_with] = ACTIONS(3000), [sym_parameters_] = ACTIONS(3000), [sym_gshared] = ACTIONS(3000), [sym_traits] = ACTIONS(3000), [sym_vector] = ACTIONS(3000), [sym_void] = ACTIONS(3000), [anon_sym_BQUOTE] = ACTIONS(3002), [anon_sym_r_DQUOTE] = ACTIONS(3002), [anon_sym_x_DQUOTE] = ACTIONS(3002), [anon_sym_DQUOTE] = ACTIONS(3002), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3002), [anon_sym_i_BQUOTE] = ACTIONS(3002), [anon_sym_i_DQUOTE] = ACTIONS(3002), [anon_sym_iq_LBRACE] = ACTIONS(3002), [aux_sym_char_literal_token1] = ACTIONS(3002), [anon_sym_SQUOTE] = ACTIONS(3000), [anon_sym___DATE__] = ACTIONS(3000), [anon_sym___FILE__] = ACTIONS(3000), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3000), [anon_sym___FUNCTION__] = ACTIONS(3000), [anon_sym___LINE__] = ACTIONS(3000), [anon_sym___MODULE__] = ACTIONS(3000), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3000), [anon_sym___TIME__] = ACTIONS(3000), [anon_sym___TIMESTAMP__] = ACTIONS(3000), [anon_sym___VENDOR__] = ACTIONS(3000), [anon_sym___VERSION__] = ACTIONS(3000), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3002), [sym_float_literal] = ACTIONS(3002), [sym__string] = ACTIONS(3002), }, [626] = { [sym_identifier] = ACTIONS(3004), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3006), [anon_sym_RBRACE] = ACTIONS(3006), [anon_sym_LBRACE] = ACTIONS(3006), [anon_sym_SLASH] = ACTIONS(3004), [anon_sym_SLASH_EQ] = ACTIONS(3006), [anon_sym_DOT] = ACTIONS(3004), [anon_sym_DOT_DOT] = ACTIONS(3004), [anon_sym_DOT_DOT_DOT] = ACTIONS(3006), [anon_sym_AMP] = ACTIONS(3004), [anon_sym_AMP_EQ] = ACTIONS(3006), [anon_sym_AMP_AMP] = ACTIONS(3006), [anon_sym_PIPE] = ACTIONS(3004), [anon_sym_PIPE_EQ] = ACTIONS(3006), [anon_sym_PIPE_PIPE] = ACTIONS(3006), [anon_sym_DASH] = ACTIONS(3004), [anon_sym_DASH_EQ] = ACTIONS(3006), [anon_sym_DASH_DASH] = ACTIONS(3006), [anon_sym_PLUS] = ACTIONS(3004), [anon_sym_PLUS_EQ] = ACTIONS(3006), [anon_sym_PLUS_PLUS] = ACTIONS(3006), [anon_sym_LT] = ACTIONS(3004), [anon_sym_LT_EQ] = ACTIONS(3006), [anon_sym_LT_LT] = ACTIONS(3004), [anon_sym_LT_LT_EQ] = ACTIONS(3006), [anon_sym_GT] = ACTIONS(3004), [anon_sym_GT_EQ] = ACTIONS(3006), [anon_sym_GT_GT_EQ] = ACTIONS(3006), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3006), [anon_sym_GT_GT] = ACTIONS(3004), [anon_sym_GT_GT_GT] = ACTIONS(3004), [anon_sym_BANG] = ACTIONS(3004), [anon_sym_BANG_EQ] = ACTIONS(3006), [anon_sym_LPAREN] = ACTIONS(3006), [anon_sym_RPAREN] = ACTIONS(3006), [anon_sym_LBRACK] = ACTIONS(3006), [anon_sym_RBRACK] = ACTIONS(3006), [anon_sym_QMARK] = ACTIONS(3006), [anon_sym_COMMA] = ACTIONS(3006), [anon_sym_SEMI] = ACTIONS(3006), [anon_sym_COLON] = ACTIONS(3006), [anon_sym_DOLLAR] = ACTIONS(3004), [anon_sym_EQ] = ACTIONS(3004), [anon_sym_EQ_EQ] = ACTIONS(3006), [anon_sym_STAR] = ACTIONS(3004), [anon_sym_STAR_EQ] = ACTIONS(3006), [anon_sym_PERCENT] = ACTIONS(3004), [anon_sym_PERCENT_EQ] = ACTIONS(3006), [anon_sym_CARET] = ACTIONS(3004), [anon_sym_CARET_EQ] = ACTIONS(3006), [anon_sym_CARET_CARET] = ACTIONS(3004), [anon_sym_CARET_CARET_EQ] = ACTIONS(3006), [anon_sym_TILDE] = ACTIONS(3004), [anon_sym_TILDE_EQ] = ACTIONS(3006), [anon_sym_AT] = ACTIONS(3006), [anon_sym_EQ_GT] = ACTIONS(3006), [anon_sym_POUND] = ACTIONS(3006), [anon_sym_BANGin] = ACTIONS(3006), [anon_sym_BANGis] = ACTIONS(3006), [sym_bool] = ACTIONS(3004), [sym_byte] = ACTIONS(3004), [sym_ubyte] = ACTIONS(3004), [sym_char] = ACTIONS(3004), [sym_short] = ACTIONS(3004), [sym_ushort] = ACTIONS(3004), [sym_int] = ACTIONS(3004), [sym_uint] = ACTIONS(3004), [sym_long] = ACTIONS(3004), [sym_ulong] = ACTIONS(3004), [sym_cent] = ACTIONS(3004), [sym_ucent] = ACTIONS(3004), [sym_wchar] = ACTIONS(3004), [sym_dchar] = ACTIONS(3004), [sym_float] = ACTIONS(3004), [sym_double] = ACTIONS(3004), [sym_real] = ACTIONS(3004), [sym_ifloat] = ACTIONS(3004), [sym_idouble] = ACTIONS(3004), [sym_ireal] = ACTIONS(3004), [sym_cfloat] = ACTIONS(3004), [sym_cdouble] = ACTIONS(3004), [sym_creal] = ACTIONS(3004), [sym_size_t] = ACTIONS(3004), [sym_ptrdiff_t] = ACTIONS(3004), [sym_string] = ACTIONS(3004), [sym_cstring] = ACTIONS(3004), [sym_dstring] = ACTIONS(3004), [sym_wstring] = ACTIONS(3004), [sym_noreturn] = ACTIONS(3004), [sym_true] = ACTIONS(3004), [sym_false] = ACTIONS(3004), [sym_null] = ACTIONS(3004), [sym_super] = ACTIONS(3004), [sym_this] = ACTIONS(3004), [sym_abstract] = ACTIONS(3004), [sym_alias] = ACTIONS(3004), [sym_align] = ACTIONS(3004), [sym_asm] = ACTIONS(3004), [sym_assert] = ACTIONS(3004), [sym_auto] = ACTIONS(3004), [sym_break] = ACTIONS(3004), [sym_case] = ACTIONS(3004), [sym_cast] = ACTIONS(3004), [sym_catch] = ACTIONS(3004), [sym_class] = ACTIONS(3004), [sym_const] = ACTIONS(3004), [sym_continue] = ACTIONS(3004), [sym_debug] = ACTIONS(3004), [sym_default] = ACTIONS(3004), [sym_delegate] = ACTIONS(3004), [sym_delete] = ACTIONS(3004), [sym_deprecated] = ACTIONS(3004), [sym_do] = ACTIONS(3004), [sym_else] = ACTIONS(3004), [sym_enum] = ACTIONS(3004), [sym_export] = ACTIONS(3004), [sym_extern] = ACTIONS(3004), [sym_final] = ACTIONS(3004), [sym_finally] = ACTIONS(3004), [sym_for] = ACTIONS(3004), [sym_foreach] = ACTIONS(3004), [sym_foreach_reverse] = ACTIONS(3004), [sym_function] = ACTIONS(3004), [sym_goto] = ACTIONS(3004), [sym_if] = ACTIONS(3004), [sym_immutable] = ACTIONS(3004), [sym_import] = ACTIONS(3004), [sym_in] = ACTIONS(3004), [sym_inout] = ACTIONS(3004), [sym_interface] = ACTIONS(3004), [sym_invariant] = ACTIONS(3004), [sym_is] = ACTIONS(3004), [sym_lazy] = ACTIONS(3004), [sym_mixin] = ACTIONS(3004), [sym_module] = ACTIONS(3004), [sym_new] = ACTIONS(3004), [sym_nothrow] = ACTIONS(3004), [sym_out] = ACTIONS(3004), [sym_override] = ACTIONS(3004), [sym_package] = ACTIONS(3004), [sym_pragma] = ACTIONS(3004), [sym_private] = ACTIONS(3004), [sym_protected] = ACTIONS(3004), [sym_public] = ACTIONS(3004), [sym_pure] = ACTIONS(3004), [sym_ref] = ACTIONS(3004), [sym_return] = ACTIONS(3004), [sym_scope] = ACTIONS(3004), [sym_shared] = ACTIONS(3004), [sym_static] = ACTIONS(3004), [sym_struct] = ACTIONS(3004), [sym_switch] = ACTIONS(3004), [sym_synchronized] = ACTIONS(3004), [sym_template] = ACTIONS(3004), [sym_throw] = ACTIONS(3004), [sym_try] = ACTIONS(3004), [sym_typeid] = ACTIONS(3004), [sym_typeof] = ACTIONS(3004), [sym_union] = ACTIONS(3004), [sym_unittest] = ACTIONS(3004), [sym_version] = ACTIONS(3004), [sym_while] = ACTIONS(3004), [sym_with] = ACTIONS(3004), [sym_parameters_] = ACTIONS(3004), [sym_gshared] = ACTIONS(3004), [sym_traits] = ACTIONS(3004), [sym_vector] = ACTIONS(3004), [sym_void] = ACTIONS(3004), [anon_sym_BQUOTE] = ACTIONS(3006), [anon_sym_r_DQUOTE] = ACTIONS(3006), [anon_sym_x_DQUOTE] = ACTIONS(3006), [anon_sym_DQUOTE] = ACTIONS(3006), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3006), [anon_sym_i_BQUOTE] = ACTIONS(3006), [anon_sym_i_DQUOTE] = ACTIONS(3006), [anon_sym_iq_LBRACE] = ACTIONS(3006), [aux_sym_char_literal_token1] = ACTIONS(3006), [anon_sym_SQUOTE] = ACTIONS(3004), [anon_sym___DATE__] = ACTIONS(3004), [anon_sym___FILE__] = ACTIONS(3004), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3004), [anon_sym___FUNCTION__] = ACTIONS(3004), [anon_sym___LINE__] = ACTIONS(3004), [anon_sym___MODULE__] = ACTIONS(3004), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3004), [anon_sym___TIME__] = ACTIONS(3004), [anon_sym___TIMESTAMP__] = ACTIONS(3004), [anon_sym___VENDOR__] = ACTIONS(3004), [anon_sym___VERSION__] = ACTIONS(3004), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3006), [sym_float_literal] = ACTIONS(3006), [sym__string] = ACTIONS(3006), }, [627] = { [sym_identifier] = ACTIONS(3008), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3010), [anon_sym_RBRACE] = ACTIONS(3010), [anon_sym_LBRACE] = ACTIONS(3010), [anon_sym_SLASH] = ACTIONS(3008), [anon_sym_SLASH_EQ] = ACTIONS(3010), [anon_sym_DOT] = ACTIONS(3008), [anon_sym_DOT_DOT] = ACTIONS(3008), [anon_sym_DOT_DOT_DOT] = ACTIONS(3010), [anon_sym_AMP] = ACTIONS(3008), [anon_sym_AMP_EQ] = ACTIONS(3010), [anon_sym_AMP_AMP] = ACTIONS(3010), [anon_sym_PIPE] = ACTIONS(3008), [anon_sym_PIPE_EQ] = ACTIONS(3010), [anon_sym_PIPE_PIPE] = ACTIONS(3010), [anon_sym_DASH] = ACTIONS(3008), [anon_sym_DASH_EQ] = ACTIONS(3010), [anon_sym_DASH_DASH] = ACTIONS(3010), [anon_sym_PLUS] = ACTIONS(3008), [anon_sym_PLUS_EQ] = ACTIONS(3010), [anon_sym_PLUS_PLUS] = ACTIONS(3010), [anon_sym_LT] = ACTIONS(3008), [anon_sym_LT_EQ] = ACTIONS(3010), [anon_sym_LT_LT] = ACTIONS(3008), [anon_sym_LT_LT_EQ] = ACTIONS(3010), [anon_sym_GT] = ACTIONS(3008), [anon_sym_GT_EQ] = ACTIONS(3010), [anon_sym_GT_GT_EQ] = ACTIONS(3010), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3010), [anon_sym_GT_GT] = ACTIONS(3008), [anon_sym_GT_GT_GT] = ACTIONS(3008), [anon_sym_BANG] = ACTIONS(3008), [anon_sym_BANG_EQ] = ACTIONS(3010), [anon_sym_LPAREN] = ACTIONS(3010), [anon_sym_RPAREN] = ACTIONS(3010), [anon_sym_LBRACK] = ACTIONS(3010), [anon_sym_RBRACK] = ACTIONS(3010), [anon_sym_QMARK] = ACTIONS(3010), [anon_sym_COMMA] = ACTIONS(3010), [anon_sym_SEMI] = ACTIONS(3010), [anon_sym_COLON] = ACTIONS(3010), [anon_sym_DOLLAR] = ACTIONS(3008), [anon_sym_EQ] = ACTIONS(3008), [anon_sym_EQ_EQ] = ACTIONS(3010), [anon_sym_STAR] = ACTIONS(3008), [anon_sym_STAR_EQ] = ACTIONS(3010), [anon_sym_PERCENT] = ACTIONS(3008), [anon_sym_PERCENT_EQ] = ACTIONS(3010), [anon_sym_CARET] = ACTIONS(3008), [anon_sym_CARET_EQ] = ACTIONS(3010), [anon_sym_CARET_CARET] = ACTIONS(3008), [anon_sym_CARET_CARET_EQ] = ACTIONS(3010), [anon_sym_TILDE] = ACTIONS(3008), [anon_sym_TILDE_EQ] = ACTIONS(3010), [anon_sym_AT] = ACTIONS(3010), [anon_sym_EQ_GT] = ACTIONS(3010), [anon_sym_POUND] = ACTIONS(3010), [anon_sym_BANGin] = ACTIONS(3010), [anon_sym_BANGis] = ACTIONS(3010), [sym_bool] = ACTIONS(3008), [sym_byte] = ACTIONS(3008), [sym_ubyte] = ACTIONS(3008), [sym_char] = ACTIONS(3008), [sym_short] = ACTIONS(3008), [sym_ushort] = ACTIONS(3008), [sym_int] = ACTIONS(3008), [sym_uint] = ACTIONS(3008), [sym_long] = ACTIONS(3008), [sym_ulong] = ACTIONS(3008), [sym_cent] = ACTIONS(3008), [sym_ucent] = ACTIONS(3008), [sym_wchar] = ACTIONS(3008), [sym_dchar] = ACTIONS(3008), [sym_float] = ACTIONS(3008), [sym_double] = ACTIONS(3008), [sym_real] = ACTIONS(3008), [sym_ifloat] = ACTIONS(3008), [sym_idouble] = ACTIONS(3008), [sym_ireal] = ACTIONS(3008), [sym_cfloat] = ACTIONS(3008), [sym_cdouble] = ACTIONS(3008), [sym_creal] = ACTIONS(3008), [sym_size_t] = ACTIONS(3008), [sym_ptrdiff_t] = ACTIONS(3008), [sym_string] = ACTIONS(3008), [sym_cstring] = ACTIONS(3008), [sym_dstring] = ACTIONS(3008), [sym_wstring] = ACTIONS(3008), [sym_noreturn] = ACTIONS(3008), [sym_true] = ACTIONS(3008), [sym_false] = ACTIONS(3008), [sym_null] = ACTIONS(3008), [sym_super] = ACTIONS(3008), [sym_this] = ACTIONS(3008), [sym_abstract] = ACTIONS(3008), [sym_alias] = ACTIONS(3008), [sym_align] = ACTIONS(3008), [sym_asm] = ACTIONS(3008), [sym_assert] = ACTIONS(3008), [sym_auto] = ACTIONS(3008), [sym_break] = ACTIONS(3008), [sym_case] = ACTIONS(3008), [sym_cast] = ACTIONS(3008), [sym_catch] = ACTIONS(3008), [sym_class] = ACTIONS(3008), [sym_const] = ACTIONS(3008), [sym_continue] = ACTIONS(3008), [sym_debug] = ACTIONS(3008), [sym_default] = ACTIONS(3008), [sym_delegate] = ACTIONS(3008), [sym_delete] = ACTIONS(3008), [sym_deprecated] = ACTIONS(3008), [sym_do] = ACTIONS(3008), [sym_else] = ACTIONS(3008), [sym_enum] = ACTIONS(3008), [sym_export] = ACTIONS(3008), [sym_extern] = ACTIONS(3008), [sym_final] = ACTIONS(3008), [sym_finally] = ACTIONS(3008), [sym_for] = ACTIONS(3008), [sym_foreach] = ACTIONS(3008), [sym_foreach_reverse] = ACTIONS(3008), [sym_function] = ACTIONS(3008), [sym_goto] = ACTIONS(3008), [sym_if] = ACTIONS(3008), [sym_immutable] = ACTIONS(3008), [sym_import] = ACTIONS(3008), [sym_in] = ACTIONS(3008), [sym_inout] = ACTIONS(3008), [sym_interface] = ACTIONS(3008), [sym_invariant] = ACTIONS(3008), [sym_is] = ACTIONS(3008), [sym_lazy] = ACTIONS(3008), [sym_mixin] = ACTIONS(3008), [sym_module] = ACTIONS(3008), [sym_new] = ACTIONS(3008), [sym_nothrow] = ACTIONS(3008), [sym_out] = ACTIONS(3008), [sym_override] = ACTIONS(3008), [sym_package] = ACTIONS(3008), [sym_pragma] = ACTIONS(3008), [sym_private] = ACTIONS(3008), [sym_protected] = ACTIONS(3008), [sym_public] = ACTIONS(3008), [sym_pure] = ACTIONS(3008), [sym_ref] = ACTIONS(3008), [sym_return] = ACTIONS(3008), [sym_scope] = ACTIONS(3008), [sym_shared] = ACTIONS(3008), [sym_static] = ACTIONS(3008), [sym_struct] = ACTIONS(3008), [sym_switch] = ACTIONS(3008), [sym_synchronized] = ACTIONS(3008), [sym_template] = ACTIONS(3008), [sym_throw] = ACTIONS(3008), [sym_try] = ACTIONS(3008), [sym_typeid] = ACTIONS(3008), [sym_typeof] = ACTIONS(3008), [sym_union] = ACTIONS(3008), [sym_unittest] = ACTIONS(3008), [sym_version] = ACTIONS(3008), [sym_while] = ACTIONS(3008), [sym_with] = ACTIONS(3008), [sym_parameters_] = ACTIONS(3008), [sym_gshared] = ACTIONS(3008), [sym_traits] = ACTIONS(3008), [sym_vector] = ACTIONS(3008), [sym_void] = ACTIONS(3008), [anon_sym_BQUOTE] = ACTIONS(3010), [anon_sym_r_DQUOTE] = ACTIONS(3010), [anon_sym_x_DQUOTE] = ACTIONS(3010), [anon_sym_DQUOTE] = ACTIONS(3010), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3010), [anon_sym_i_BQUOTE] = ACTIONS(3010), [anon_sym_i_DQUOTE] = ACTIONS(3010), [anon_sym_iq_LBRACE] = ACTIONS(3010), [aux_sym_char_literal_token1] = ACTIONS(3010), [anon_sym_SQUOTE] = ACTIONS(3008), [anon_sym___DATE__] = ACTIONS(3008), [anon_sym___FILE__] = ACTIONS(3008), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3008), [anon_sym___FUNCTION__] = ACTIONS(3008), [anon_sym___LINE__] = ACTIONS(3008), [anon_sym___MODULE__] = ACTIONS(3008), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3008), [anon_sym___TIME__] = ACTIONS(3008), [anon_sym___TIMESTAMP__] = ACTIONS(3008), [anon_sym___VENDOR__] = ACTIONS(3008), [anon_sym___VERSION__] = ACTIONS(3008), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3010), [sym_float_literal] = ACTIONS(3010), [sym__string] = ACTIONS(3010), }, [628] = { [sym_identifier] = ACTIONS(3012), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3014), [anon_sym_RBRACE] = ACTIONS(3014), [anon_sym_LBRACE] = ACTIONS(3014), [anon_sym_SLASH] = ACTIONS(3012), [anon_sym_SLASH_EQ] = ACTIONS(3014), [anon_sym_DOT] = ACTIONS(3012), [anon_sym_DOT_DOT] = ACTIONS(3012), [anon_sym_DOT_DOT_DOT] = ACTIONS(3014), [anon_sym_AMP] = ACTIONS(3012), [anon_sym_AMP_EQ] = ACTIONS(3014), [anon_sym_AMP_AMP] = ACTIONS(3014), [anon_sym_PIPE] = ACTIONS(3012), [anon_sym_PIPE_EQ] = ACTIONS(3014), [anon_sym_PIPE_PIPE] = ACTIONS(3014), [anon_sym_DASH] = ACTIONS(3012), [anon_sym_DASH_EQ] = ACTIONS(3014), [anon_sym_DASH_DASH] = ACTIONS(3014), [anon_sym_PLUS] = ACTIONS(3012), [anon_sym_PLUS_EQ] = ACTIONS(3014), [anon_sym_PLUS_PLUS] = ACTIONS(3014), [anon_sym_LT] = ACTIONS(3012), [anon_sym_LT_EQ] = ACTIONS(3014), [anon_sym_LT_LT] = ACTIONS(3012), [anon_sym_LT_LT_EQ] = ACTIONS(3014), [anon_sym_GT] = ACTIONS(3012), [anon_sym_GT_EQ] = ACTIONS(3014), [anon_sym_GT_GT_EQ] = ACTIONS(3014), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3014), [anon_sym_GT_GT] = ACTIONS(3012), [anon_sym_GT_GT_GT] = ACTIONS(3012), [anon_sym_BANG] = ACTIONS(3012), [anon_sym_BANG_EQ] = ACTIONS(3014), [anon_sym_LPAREN] = ACTIONS(3014), [anon_sym_RPAREN] = ACTIONS(3014), [anon_sym_LBRACK] = ACTIONS(3014), [anon_sym_RBRACK] = ACTIONS(3014), [anon_sym_QMARK] = ACTIONS(3014), [anon_sym_COMMA] = ACTIONS(3014), [anon_sym_SEMI] = ACTIONS(3014), [anon_sym_COLON] = ACTIONS(3014), [anon_sym_DOLLAR] = ACTIONS(3012), [anon_sym_EQ] = ACTIONS(3012), [anon_sym_EQ_EQ] = ACTIONS(3014), [anon_sym_STAR] = ACTIONS(3012), [anon_sym_STAR_EQ] = ACTIONS(3014), [anon_sym_PERCENT] = ACTIONS(3012), [anon_sym_PERCENT_EQ] = ACTIONS(3014), [anon_sym_CARET] = ACTIONS(3012), [anon_sym_CARET_EQ] = ACTIONS(3014), [anon_sym_CARET_CARET] = ACTIONS(3012), [anon_sym_CARET_CARET_EQ] = ACTIONS(3014), [anon_sym_TILDE] = ACTIONS(3012), [anon_sym_TILDE_EQ] = ACTIONS(3014), [anon_sym_AT] = ACTIONS(3014), [anon_sym_EQ_GT] = ACTIONS(3014), [anon_sym_POUND] = ACTIONS(3014), [anon_sym_BANGin] = ACTIONS(3014), [anon_sym_BANGis] = ACTIONS(3014), [sym_bool] = ACTIONS(3012), [sym_byte] = ACTIONS(3012), [sym_ubyte] = ACTIONS(3012), [sym_char] = ACTIONS(3012), [sym_short] = ACTIONS(3012), [sym_ushort] = ACTIONS(3012), [sym_int] = ACTIONS(3012), [sym_uint] = ACTIONS(3012), [sym_long] = ACTIONS(3012), [sym_ulong] = ACTIONS(3012), [sym_cent] = ACTIONS(3012), [sym_ucent] = ACTIONS(3012), [sym_wchar] = ACTIONS(3012), [sym_dchar] = ACTIONS(3012), [sym_float] = ACTIONS(3012), [sym_double] = ACTIONS(3012), [sym_real] = ACTIONS(3012), [sym_ifloat] = ACTIONS(3012), [sym_idouble] = ACTIONS(3012), [sym_ireal] = ACTIONS(3012), [sym_cfloat] = ACTIONS(3012), [sym_cdouble] = ACTIONS(3012), [sym_creal] = ACTIONS(3012), [sym_size_t] = ACTIONS(3012), [sym_ptrdiff_t] = ACTIONS(3012), [sym_string] = ACTIONS(3012), [sym_cstring] = ACTIONS(3012), [sym_dstring] = ACTIONS(3012), [sym_wstring] = ACTIONS(3012), [sym_noreturn] = ACTIONS(3012), [sym_true] = ACTIONS(3012), [sym_false] = ACTIONS(3012), [sym_null] = ACTIONS(3012), [sym_super] = ACTIONS(3012), [sym_this] = ACTIONS(3012), [sym_abstract] = ACTIONS(3012), [sym_alias] = ACTIONS(3012), [sym_align] = ACTIONS(3012), [sym_asm] = ACTIONS(3012), [sym_assert] = ACTIONS(3012), [sym_auto] = ACTIONS(3012), [sym_break] = ACTIONS(3012), [sym_case] = ACTIONS(3012), [sym_cast] = ACTIONS(3012), [sym_catch] = ACTIONS(3012), [sym_class] = ACTIONS(3012), [sym_const] = ACTIONS(3012), [sym_continue] = ACTIONS(3012), [sym_debug] = ACTIONS(3012), [sym_default] = ACTIONS(3012), [sym_delegate] = ACTIONS(3012), [sym_delete] = ACTIONS(3012), [sym_deprecated] = ACTIONS(3012), [sym_do] = ACTIONS(3012), [sym_else] = ACTIONS(3012), [sym_enum] = ACTIONS(3012), [sym_export] = ACTIONS(3012), [sym_extern] = ACTIONS(3012), [sym_final] = ACTIONS(3012), [sym_finally] = ACTIONS(3012), [sym_for] = ACTIONS(3012), [sym_foreach] = ACTIONS(3012), [sym_foreach_reverse] = ACTIONS(3012), [sym_function] = ACTIONS(3012), [sym_goto] = ACTIONS(3012), [sym_if] = ACTIONS(3012), [sym_immutable] = ACTIONS(3012), [sym_import] = ACTIONS(3012), [sym_in] = ACTIONS(3012), [sym_inout] = ACTIONS(3012), [sym_interface] = ACTIONS(3012), [sym_invariant] = ACTIONS(3012), [sym_is] = ACTIONS(3012), [sym_lazy] = ACTIONS(3012), [sym_mixin] = ACTIONS(3012), [sym_module] = ACTIONS(3012), [sym_new] = ACTIONS(3012), [sym_nothrow] = ACTIONS(3012), [sym_out] = ACTIONS(3012), [sym_override] = ACTIONS(3012), [sym_package] = ACTIONS(3012), [sym_pragma] = ACTIONS(3012), [sym_private] = ACTIONS(3012), [sym_protected] = ACTIONS(3012), [sym_public] = ACTIONS(3012), [sym_pure] = ACTIONS(3012), [sym_ref] = ACTIONS(3012), [sym_return] = ACTIONS(3012), [sym_scope] = ACTIONS(3012), [sym_shared] = ACTIONS(3012), [sym_static] = ACTIONS(3012), [sym_struct] = ACTIONS(3012), [sym_switch] = ACTIONS(3012), [sym_synchronized] = ACTIONS(3012), [sym_template] = ACTIONS(3012), [sym_throw] = ACTIONS(3012), [sym_try] = ACTIONS(3012), [sym_typeid] = ACTIONS(3012), [sym_typeof] = ACTIONS(3012), [sym_union] = ACTIONS(3012), [sym_unittest] = ACTIONS(3012), [sym_version] = ACTIONS(3012), [sym_while] = ACTIONS(3012), [sym_with] = ACTIONS(3012), [sym_parameters_] = ACTIONS(3012), [sym_gshared] = ACTIONS(3012), [sym_traits] = ACTIONS(3012), [sym_vector] = ACTIONS(3012), [sym_void] = ACTIONS(3012), [anon_sym_BQUOTE] = ACTIONS(3014), [anon_sym_r_DQUOTE] = ACTIONS(3014), [anon_sym_x_DQUOTE] = ACTIONS(3014), [anon_sym_DQUOTE] = ACTIONS(3014), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3014), [anon_sym_i_BQUOTE] = ACTIONS(3014), [anon_sym_i_DQUOTE] = ACTIONS(3014), [anon_sym_iq_LBRACE] = ACTIONS(3014), [aux_sym_char_literal_token1] = ACTIONS(3014), [anon_sym_SQUOTE] = ACTIONS(3012), [anon_sym___DATE__] = ACTIONS(3012), [anon_sym___FILE__] = ACTIONS(3012), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3012), [anon_sym___FUNCTION__] = ACTIONS(3012), [anon_sym___LINE__] = ACTIONS(3012), [anon_sym___MODULE__] = ACTIONS(3012), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3012), [anon_sym___TIME__] = ACTIONS(3012), [anon_sym___TIMESTAMP__] = ACTIONS(3012), [anon_sym___VENDOR__] = ACTIONS(3012), [anon_sym___VERSION__] = ACTIONS(3012), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3014), [sym_float_literal] = ACTIONS(3014), [sym__string] = ACTIONS(3014), }, [629] = { [sym_identifier] = ACTIONS(3016), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3018), [anon_sym_RBRACE] = ACTIONS(3018), [anon_sym_LBRACE] = ACTIONS(3018), [anon_sym_SLASH] = ACTIONS(3016), [anon_sym_SLASH_EQ] = ACTIONS(3018), [anon_sym_DOT] = ACTIONS(3016), [anon_sym_DOT_DOT] = ACTIONS(3016), [anon_sym_DOT_DOT_DOT] = ACTIONS(3018), [anon_sym_AMP] = ACTIONS(3016), [anon_sym_AMP_EQ] = ACTIONS(3018), [anon_sym_AMP_AMP] = ACTIONS(3018), [anon_sym_PIPE] = ACTIONS(3016), [anon_sym_PIPE_EQ] = ACTIONS(3018), [anon_sym_PIPE_PIPE] = ACTIONS(3018), [anon_sym_DASH] = ACTIONS(3016), [anon_sym_DASH_EQ] = ACTIONS(3018), [anon_sym_DASH_DASH] = ACTIONS(3018), [anon_sym_PLUS] = ACTIONS(3016), [anon_sym_PLUS_EQ] = ACTIONS(3018), [anon_sym_PLUS_PLUS] = ACTIONS(3018), [anon_sym_LT] = ACTIONS(3016), [anon_sym_LT_EQ] = ACTIONS(3018), [anon_sym_LT_LT] = ACTIONS(3016), [anon_sym_LT_LT_EQ] = ACTIONS(3018), [anon_sym_GT] = ACTIONS(3016), [anon_sym_GT_EQ] = ACTIONS(3018), [anon_sym_GT_GT_EQ] = ACTIONS(3018), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3018), [anon_sym_GT_GT] = ACTIONS(3016), [anon_sym_GT_GT_GT] = ACTIONS(3016), [anon_sym_BANG] = ACTIONS(3016), [anon_sym_BANG_EQ] = ACTIONS(3018), [anon_sym_LPAREN] = ACTIONS(3018), [anon_sym_RPAREN] = ACTIONS(3018), [anon_sym_LBRACK] = ACTIONS(3018), [anon_sym_RBRACK] = ACTIONS(3018), [anon_sym_QMARK] = ACTIONS(3018), [anon_sym_COMMA] = ACTIONS(3018), [anon_sym_SEMI] = ACTIONS(3018), [anon_sym_COLON] = ACTIONS(3018), [anon_sym_DOLLAR] = ACTIONS(3016), [anon_sym_EQ] = ACTIONS(3016), [anon_sym_EQ_EQ] = ACTIONS(3018), [anon_sym_STAR] = ACTIONS(3016), [anon_sym_STAR_EQ] = ACTIONS(3018), [anon_sym_PERCENT] = ACTIONS(3016), [anon_sym_PERCENT_EQ] = ACTIONS(3018), [anon_sym_CARET] = ACTIONS(3016), [anon_sym_CARET_EQ] = ACTIONS(3018), [anon_sym_CARET_CARET] = ACTIONS(3016), [anon_sym_CARET_CARET_EQ] = ACTIONS(3018), [anon_sym_TILDE] = ACTIONS(3016), [anon_sym_TILDE_EQ] = ACTIONS(3018), [anon_sym_AT] = ACTIONS(3018), [anon_sym_EQ_GT] = ACTIONS(3018), [anon_sym_POUND] = ACTIONS(3018), [anon_sym_BANGin] = ACTIONS(3018), [anon_sym_BANGis] = ACTIONS(3018), [sym_bool] = ACTIONS(3016), [sym_byte] = ACTIONS(3016), [sym_ubyte] = ACTIONS(3016), [sym_char] = ACTIONS(3016), [sym_short] = ACTIONS(3016), [sym_ushort] = ACTIONS(3016), [sym_int] = ACTIONS(3016), [sym_uint] = ACTIONS(3016), [sym_long] = ACTIONS(3016), [sym_ulong] = ACTIONS(3016), [sym_cent] = ACTIONS(3016), [sym_ucent] = ACTIONS(3016), [sym_wchar] = ACTIONS(3016), [sym_dchar] = ACTIONS(3016), [sym_float] = ACTIONS(3016), [sym_double] = ACTIONS(3016), [sym_real] = ACTIONS(3016), [sym_ifloat] = ACTIONS(3016), [sym_idouble] = ACTIONS(3016), [sym_ireal] = ACTIONS(3016), [sym_cfloat] = ACTIONS(3016), [sym_cdouble] = ACTIONS(3016), [sym_creal] = ACTIONS(3016), [sym_size_t] = ACTIONS(3016), [sym_ptrdiff_t] = ACTIONS(3016), [sym_string] = ACTIONS(3016), [sym_cstring] = ACTIONS(3016), [sym_dstring] = ACTIONS(3016), [sym_wstring] = ACTIONS(3016), [sym_noreturn] = ACTIONS(3016), [sym_true] = ACTIONS(3016), [sym_false] = ACTIONS(3016), [sym_null] = ACTIONS(3016), [sym_super] = ACTIONS(3016), [sym_this] = ACTIONS(3016), [sym_abstract] = ACTIONS(3016), [sym_alias] = ACTIONS(3016), [sym_align] = ACTIONS(3016), [sym_asm] = ACTIONS(3016), [sym_assert] = ACTIONS(3016), [sym_auto] = ACTIONS(3016), [sym_break] = ACTIONS(3016), [sym_case] = ACTIONS(3016), [sym_cast] = ACTIONS(3016), [sym_catch] = ACTIONS(3016), [sym_class] = ACTIONS(3016), [sym_const] = ACTIONS(3016), [sym_continue] = ACTIONS(3016), [sym_debug] = ACTIONS(3016), [sym_default] = ACTIONS(3016), [sym_delegate] = ACTIONS(3016), [sym_delete] = ACTIONS(3016), [sym_deprecated] = ACTIONS(3016), [sym_do] = ACTIONS(3016), [sym_else] = ACTIONS(3016), [sym_enum] = ACTIONS(3016), [sym_export] = ACTIONS(3016), [sym_extern] = ACTIONS(3016), [sym_final] = ACTIONS(3016), [sym_finally] = ACTIONS(3016), [sym_for] = ACTIONS(3016), [sym_foreach] = ACTIONS(3016), [sym_foreach_reverse] = ACTIONS(3016), [sym_function] = ACTIONS(3016), [sym_goto] = ACTIONS(3016), [sym_if] = ACTIONS(3016), [sym_immutable] = ACTIONS(3016), [sym_import] = ACTIONS(3016), [sym_in] = ACTIONS(3016), [sym_inout] = ACTIONS(3016), [sym_interface] = ACTIONS(3016), [sym_invariant] = ACTIONS(3016), [sym_is] = ACTIONS(3016), [sym_lazy] = ACTIONS(3016), [sym_mixin] = ACTIONS(3016), [sym_module] = ACTIONS(3016), [sym_new] = ACTIONS(3016), [sym_nothrow] = ACTIONS(3016), [sym_out] = ACTIONS(3016), [sym_override] = ACTIONS(3016), [sym_package] = ACTIONS(3016), [sym_pragma] = ACTIONS(3016), [sym_private] = ACTIONS(3016), [sym_protected] = ACTIONS(3016), [sym_public] = ACTIONS(3016), [sym_pure] = ACTIONS(3016), [sym_ref] = ACTIONS(3016), [sym_return] = ACTIONS(3016), [sym_scope] = ACTIONS(3016), [sym_shared] = ACTIONS(3016), [sym_static] = ACTIONS(3016), [sym_struct] = ACTIONS(3016), [sym_switch] = ACTIONS(3016), [sym_synchronized] = ACTIONS(3016), [sym_template] = ACTIONS(3016), [sym_throw] = ACTIONS(3016), [sym_try] = ACTIONS(3016), [sym_typeid] = ACTIONS(3016), [sym_typeof] = ACTIONS(3016), [sym_union] = ACTIONS(3016), [sym_unittest] = ACTIONS(3016), [sym_version] = ACTIONS(3016), [sym_while] = ACTIONS(3016), [sym_with] = ACTIONS(3016), [sym_parameters_] = ACTIONS(3016), [sym_gshared] = ACTIONS(3016), [sym_traits] = ACTIONS(3016), [sym_vector] = ACTIONS(3016), [sym_void] = ACTIONS(3016), [anon_sym_BQUOTE] = ACTIONS(3018), [anon_sym_r_DQUOTE] = ACTIONS(3018), [anon_sym_x_DQUOTE] = ACTIONS(3018), [anon_sym_DQUOTE] = ACTIONS(3018), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3018), [anon_sym_i_BQUOTE] = ACTIONS(3018), [anon_sym_i_DQUOTE] = ACTIONS(3018), [anon_sym_iq_LBRACE] = ACTIONS(3018), [aux_sym_char_literal_token1] = ACTIONS(3018), [anon_sym_SQUOTE] = ACTIONS(3016), [anon_sym___DATE__] = ACTIONS(3016), [anon_sym___FILE__] = ACTIONS(3016), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3016), [anon_sym___FUNCTION__] = ACTIONS(3016), [anon_sym___LINE__] = ACTIONS(3016), [anon_sym___MODULE__] = ACTIONS(3016), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3016), [anon_sym___TIME__] = ACTIONS(3016), [anon_sym___TIMESTAMP__] = ACTIONS(3016), [anon_sym___VENDOR__] = ACTIONS(3016), [anon_sym___VERSION__] = ACTIONS(3016), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3018), [sym_float_literal] = ACTIONS(3018), [sym__string] = ACTIONS(3018), }, [630] = { [sym_identifier] = ACTIONS(3020), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3022), [anon_sym_RBRACE] = ACTIONS(3022), [anon_sym_LBRACE] = ACTIONS(3022), [anon_sym_SLASH] = ACTIONS(3020), [anon_sym_SLASH_EQ] = ACTIONS(3022), [anon_sym_DOT] = ACTIONS(3020), [anon_sym_DOT_DOT] = ACTIONS(3020), [anon_sym_DOT_DOT_DOT] = ACTIONS(3022), [anon_sym_AMP] = ACTIONS(3020), [anon_sym_AMP_EQ] = ACTIONS(3022), [anon_sym_AMP_AMP] = ACTIONS(3022), [anon_sym_PIPE] = ACTIONS(3020), [anon_sym_PIPE_EQ] = ACTIONS(3022), [anon_sym_PIPE_PIPE] = ACTIONS(3022), [anon_sym_DASH] = ACTIONS(3020), [anon_sym_DASH_EQ] = ACTIONS(3022), [anon_sym_DASH_DASH] = ACTIONS(3022), [anon_sym_PLUS] = ACTIONS(3020), [anon_sym_PLUS_EQ] = ACTIONS(3022), [anon_sym_PLUS_PLUS] = ACTIONS(3022), [anon_sym_LT] = ACTIONS(3020), [anon_sym_LT_EQ] = ACTIONS(3022), [anon_sym_LT_LT] = ACTIONS(3020), [anon_sym_LT_LT_EQ] = ACTIONS(3022), [anon_sym_GT] = ACTIONS(3020), [anon_sym_GT_EQ] = ACTIONS(3022), [anon_sym_GT_GT_EQ] = ACTIONS(3022), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3022), [anon_sym_GT_GT] = ACTIONS(3020), [anon_sym_GT_GT_GT] = ACTIONS(3020), [anon_sym_BANG] = ACTIONS(3020), [anon_sym_BANG_EQ] = ACTIONS(3022), [anon_sym_LPAREN] = ACTIONS(3022), [anon_sym_RPAREN] = ACTIONS(3022), [anon_sym_LBRACK] = ACTIONS(3022), [anon_sym_RBRACK] = ACTIONS(3022), [anon_sym_QMARK] = ACTIONS(3022), [anon_sym_COMMA] = ACTIONS(3022), [anon_sym_SEMI] = ACTIONS(3022), [anon_sym_COLON] = ACTIONS(3022), [anon_sym_DOLLAR] = ACTIONS(3020), [anon_sym_EQ] = ACTIONS(3020), [anon_sym_EQ_EQ] = ACTIONS(3022), [anon_sym_STAR] = ACTIONS(3020), [anon_sym_STAR_EQ] = ACTIONS(3022), [anon_sym_PERCENT] = ACTIONS(3020), [anon_sym_PERCENT_EQ] = ACTIONS(3022), [anon_sym_CARET] = ACTIONS(3020), [anon_sym_CARET_EQ] = ACTIONS(3022), [anon_sym_CARET_CARET] = ACTIONS(3020), [anon_sym_CARET_CARET_EQ] = ACTIONS(3022), [anon_sym_TILDE] = ACTIONS(3020), [anon_sym_TILDE_EQ] = ACTIONS(3022), [anon_sym_AT] = ACTIONS(3022), [anon_sym_EQ_GT] = ACTIONS(3022), [anon_sym_POUND] = ACTIONS(3022), [anon_sym_BANGin] = ACTIONS(3022), [anon_sym_BANGis] = ACTIONS(3022), [sym_bool] = ACTIONS(3020), [sym_byte] = ACTIONS(3020), [sym_ubyte] = ACTIONS(3020), [sym_char] = ACTIONS(3020), [sym_short] = ACTIONS(3020), [sym_ushort] = ACTIONS(3020), [sym_int] = ACTIONS(3020), [sym_uint] = ACTIONS(3020), [sym_long] = ACTIONS(3020), [sym_ulong] = ACTIONS(3020), [sym_cent] = ACTIONS(3020), [sym_ucent] = ACTIONS(3020), [sym_wchar] = ACTIONS(3020), [sym_dchar] = ACTIONS(3020), [sym_float] = ACTIONS(3020), [sym_double] = ACTIONS(3020), [sym_real] = ACTIONS(3020), [sym_ifloat] = ACTIONS(3020), [sym_idouble] = ACTIONS(3020), [sym_ireal] = ACTIONS(3020), [sym_cfloat] = ACTIONS(3020), [sym_cdouble] = ACTIONS(3020), [sym_creal] = ACTIONS(3020), [sym_size_t] = ACTIONS(3020), [sym_ptrdiff_t] = ACTIONS(3020), [sym_string] = ACTIONS(3020), [sym_cstring] = ACTIONS(3020), [sym_dstring] = ACTIONS(3020), [sym_wstring] = ACTIONS(3020), [sym_noreturn] = ACTIONS(3020), [sym_true] = ACTIONS(3020), [sym_false] = ACTIONS(3020), [sym_null] = ACTIONS(3020), [sym_super] = ACTIONS(3020), [sym_this] = ACTIONS(3020), [sym_abstract] = ACTIONS(3020), [sym_alias] = ACTIONS(3020), [sym_align] = ACTIONS(3020), [sym_asm] = ACTIONS(3020), [sym_assert] = ACTIONS(3020), [sym_auto] = ACTIONS(3020), [sym_break] = ACTIONS(3020), [sym_case] = ACTIONS(3020), [sym_cast] = ACTIONS(3020), [sym_catch] = ACTIONS(3020), [sym_class] = ACTIONS(3020), [sym_const] = ACTIONS(3020), [sym_continue] = ACTIONS(3020), [sym_debug] = ACTIONS(3020), [sym_default] = ACTIONS(3020), [sym_delegate] = ACTIONS(3020), [sym_delete] = ACTIONS(3020), [sym_deprecated] = ACTIONS(3020), [sym_do] = ACTIONS(3020), [sym_else] = ACTIONS(3020), [sym_enum] = ACTIONS(3020), [sym_export] = ACTIONS(3020), [sym_extern] = ACTIONS(3020), [sym_final] = ACTIONS(3020), [sym_finally] = ACTIONS(3020), [sym_for] = ACTIONS(3020), [sym_foreach] = ACTIONS(3020), [sym_foreach_reverse] = ACTIONS(3020), [sym_function] = ACTIONS(3020), [sym_goto] = ACTIONS(3020), [sym_if] = ACTIONS(3020), [sym_immutable] = ACTIONS(3020), [sym_import] = ACTIONS(3020), [sym_in] = ACTIONS(3020), [sym_inout] = ACTIONS(3020), [sym_interface] = ACTIONS(3020), [sym_invariant] = ACTIONS(3020), [sym_is] = ACTIONS(3020), [sym_lazy] = ACTIONS(3020), [sym_mixin] = ACTIONS(3020), [sym_module] = ACTIONS(3020), [sym_new] = ACTIONS(3020), [sym_nothrow] = ACTIONS(3020), [sym_out] = ACTIONS(3020), [sym_override] = ACTIONS(3020), [sym_package] = ACTIONS(3020), [sym_pragma] = ACTIONS(3020), [sym_private] = ACTIONS(3020), [sym_protected] = ACTIONS(3020), [sym_public] = ACTIONS(3020), [sym_pure] = ACTIONS(3020), [sym_ref] = ACTIONS(3020), [sym_return] = ACTIONS(3020), [sym_scope] = ACTIONS(3020), [sym_shared] = ACTIONS(3020), [sym_static] = ACTIONS(3020), [sym_struct] = ACTIONS(3020), [sym_switch] = ACTIONS(3020), [sym_synchronized] = ACTIONS(3020), [sym_template] = ACTIONS(3020), [sym_throw] = ACTIONS(3020), [sym_try] = ACTIONS(3020), [sym_typeid] = ACTIONS(3020), [sym_typeof] = ACTIONS(3020), [sym_union] = ACTIONS(3020), [sym_unittest] = ACTIONS(3020), [sym_version] = ACTIONS(3020), [sym_while] = ACTIONS(3020), [sym_with] = ACTIONS(3020), [sym_parameters_] = ACTIONS(3020), [sym_gshared] = ACTIONS(3020), [sym_traits] = ACTIONS(3020), [sym_vector] = ACTIONS(3020), [sym_void] = ACTIONS(3020), [anon_sym_BQUOTE] = ACTIONS(3022), [anon_sym_r_DQUOTE] = ACTIONS(3022), [anon_sym_x_DQUOTE] = ACTIONS(3022), [anon_sym_DQUOTE] = ACTIONS(3022), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3022), [anon_sym_i_BQUOTE] = ACTIONS(3022), [anon_sym_i_DQUOTE] = ACTIONS(3022), [anon_sym_iq_LBRACE] = ACTIONS(3022), [aux_sym_char_literal_token1] = ACTIONS(3022), [anon_sym_SQUOTE] = ACTIONS(3020), [anon_sym___DATE__] = ACTIONS(3020), [anon_sym___FILE__] = ACTIONS(3020), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3020), [anon_sym___FUNCTION__] = ACTIONS(3020), [anon_sym___LINE__] = ACTIONS(3020), [anon_sym___MODULE__] = ACTIONS(3020), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3020), [anon_sym___TIME__] = ACTIONS(3020), [anon_sym___TIMESTAMP__] = ACTIONS(3020), [anon_sym___VENDOR__] = ACTIONS(3020), [anon_sym___VERSION__] = ACTIONS(3020), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3022), [sym_float_literal] = ACTIONS(3022), [sym__string] = ACTIONS(3022), }, [631] = { [sym_identifier] = ACTIONS(3024), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3026), [anon_sym_RBRACE] = ACTIONS(3026), [anon_sym_LBRACE] = ACTIONS(3026), [anon_sym_SLASH] = ACTIONS(3024), [anon_sym_SLASH_EQ] = ACTIONS(3026), [anon_sym_DOT] = ACTIONS(3024), [anon_sym_DOT_DOT] = ACTIONS(3024), [anon_sym_DOT_DOT_DOT] = ACTIONS(3026), [anon_sym_AMP] = ACTIONS(3024), [anon_sym_AMP_EQ] = ACTIONS(3026), [anon_sym_AMP_AMP] = ACTIONS(3026), [anon_sym_PIPE] = ACTIONS(3024), [anon_sym_PIPE_EQ] = ACTIONS(3026), [anon_sym_PIPE_PIPE] = ACTIONS(3026), [anon_sym_DASH] = ACTIONS(3024), [anon_sym_DASH_EQ] = ACTIONS(3026), [anon_sym_DASH_DASH] = ACTIONS(3026), [anon_sym_PLUS] = ACTIONS(3024), [anon_sym_PLUS_EQ] = ACTIONS(3026), [anon_sym_PLUS_PLUS] = ACTIONS(3026), [anon_sym_LT] = ACTIONS(3024), [anon_sym_LT_EQ] = ACTIONS(3026), [anon_sym_LT_LT] = ACTIONS(3024), [anon_sym_LT_LT_EQ] = ACTIONS(3026), [anon_sym_GT] = ACTIONS(3024), [anon_sym_GT_EQ] = ACTIONS(3026), [anon_sym_GT_GT_EQ] = ACTIONS(3026), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3026), [anon_sym_GT_GT] = ACTIONS(3024), [anon_sym_GT_GT_GT] = ACTIONS(3024), [anon_sym_BANG] = ACTIONS(3024), [anon_sym_BANG_EQ] = ACTIONS(3026), [anon_sym_LPAREN] = ACTIONS(3026), [anon_sym_RPAREN] = ACTIONS(3026), [anon_sym_LBRACK] = ACTIONS(3026), [anon_sym_RBRACK] = ACTIONS(3026), [anon_sym_QMARK] = ACTIONS(3026), [anon_sym_COMMA] = ACTIONS(3026), [anon_sym_SEMI] = ACTIONS(3026), [anon_sym_COLON] = ACTIONS(3026), [anon_sym_DOLLAR] = ACTIONS(3024), [anon_sym_EQ] = ACTIONS(3024), [anon_sym_EQ_EQ] = ACTIONS(3026), [anon_sym_STAR] = ACTIONS(3024), [anon_sym_STAR_EQ] = ACTIONS(3026), [anon_sym_PERCENT] = ACTIONS(3024), [anon_sym_PERCENT_EQ] = ACTIONS(3026), [anon_sym_CARET] = ACTIONS(3024), [anon_sym_CARET_EQ] = ACTIONS(3026), [anon_sym_CARET_CARET] = ACTIONS(3024), [anon_sym_CARET_CARET_EQ] = ACTIONS(3026), [anon_sym_TILDE] = ACTIONS(3024), [anon_sym_TILDE_EQ] = ACTIONS(3026), [anon_sym_AT] = ACTIONS(3026), [anon_sym_EQ_GT] = ACTIONS(3026), [anon_sym_POUND] = ACTIONS(3026), [anon_sym_BANGin] = ACTIONS(3026), [anon_sym_BANGis] = ACTIONS(3026), [sym_bool] = ACTIONS(3024), [sym_byte] = ACTIONS(3024), [sym_ubyte] = ACTIONS(3024), [sym_char] = ACTIONS(3024), [sym_short] = ACTIONS(3024), [sym_ushort] = ACTIONS(3024), [sym_int] = ACTIONS(3024), [sym_uint] = ACTIONS(3024), [sym_long] = ACTIONS(3024), [sym_ulong] = ACTIONS(3024), [sym_cent] = ACTIONS(3024), [sym_ucent] = ACTIONS(3024), [sym_wchar] = ACTIONS(3024), [sym_dchar] = ACTIONS(3024), [sym_float] = ACTIONS(3024), [sym_double] = ACTIONS(3024), [sym_real] = ACTIONS(3024), [sym_ifloat] = ACTIONS(3024), [sym_idouble] = ACTIONS(3024), [sym_ireal] = ACTIONS(3024), [sym_cfloat] = ACTIONS(3024), [sym_cdouble] = ACTIONS(3024), [sym_creal] = ACTIONS(3024), [sym_size_t] = ACTIONS(3024), [sym_ptrdiff_t] = ACTIONS(3024), [sym_string] = ACTIONS(3024), [sym_cstring] = ACTIONS(3024), [sym_dstring] = ACTIONS(3024), [sym_wstring] = ACTIONS(3024), [sym_noreturn] = ACTIONS(3024), [sym_true] = ACTIONS(3024), [sym_false] = ACTIONS(3024), [sym_null] = ACTIONS(3024), [sym_super] = ACTIONS(3024), [sym_this] = ACTIONS(3024), [sym_abstract] = ACTIONS(3024), [sym_alias] = ACTIONS(3024), [sym_align] = ACTIONS(3024), [sym_asm] = ACTIONS(3024), [sym_assert] = ACTIONS(3024), [sym_auto] = ACTIONS(3024), [sym_break] = ACTIONS(3024), [sym_case] = ACTIONS(3024), [sym_cast] = ACTIONS(3024), [sym_catch] = ACTIONS(3024), [sym_class] = ACTIONS(3024), [sym_const] = ACTIONS(3024), [sym_continue] = ACTIONS(3024), [sym_debug] = ACTIONS(3024), [sym_default] = ACTIONS(3024), [sym_delegate] = ACTIONS(3024), [sym_delete] = ACTIONS(3024), [sym_deprecated] = ACTIONS(3024), [sym_do] = ACTIONS(3024), [sym_else] = ACTIONS(3024), [sym_enum] = ACTIONS(3024), [sym_export] = ACTIONS(3024), [sym_extern] = ACTIONS(3024), [sym_final] = ACTIONS(3024), [sym_finally] = ACTIONS(3024), [sym_for] = ACTIONS(3024), [sym_foreach] = ACTIONS(3024), [sym_foreach_reverse] = ACTIONS(3024), [sym_function] = ACTIONS(3024), [sym_goto] = ACTIONS(3024), [sym_if] = ACTIONS(3024), [sym_immutable] = ACTIONS(3024), [sym_import] = ACTIONS(3024), [sym_in] = ACTIONS(3024), [sym_inout] = ACTIONS(3024), [sym_interface] = ACTIONS(3024), [sym_invariant] = ACTIONS(3024), [sym_is] = ACTIONS(3024), [sym_lazy] = ACTIONS(3024), [sym_mixin] = ACTIONS(3024), [sym_module] = ACTIONS(3024), [sym_new] = ACTIONS(3024), [sym_nothrow] = ACTIONS(3024), [sym_out] = ACTIONS(3024), [sym_override] = ACTIONS(3024), [sym_package] = ACTIONS(3024), [sym_pragma] = ACTIONS(3024), [sym_private] = ACTIONS(3024), [sym_protected] = ACTIONS(3024), [sym_public] = ACTIONS(3024), [sym_pure] = ACTIONS(3024), [sym_ref] = ACTIONS(3024), [sym_return] = ACTIONS(3024), [sym_scope] = ACTIONS(3024), [sym_shared] = ACTIONS(3024), [sym_static] = ACTIONS(3024), [sym_struct] = ACTIONS(3024), [sym_switch] = ACTIONS(3024), [sym_synchronized] = ACTIONS(3024), [sym_template] = ACTIONS(3024), [sym_throw] = ACTIONS(3024), [sym_try] = ACTIONS(3024), [sym_typeid] = ACTIONS(3024), [sym_typeof] = ACTIONS(3024), [sym_union] = ACTIONS(3024), [sym_unittest] = ACTIONS(3024), [sym_version] = ACTIONS(3024), [sym_while] = ACTIONS(3024), [sym_with] = ACTIONS(3024), [sym_parameters_] = ACTIONS(3024), [sym_gshared] = ACTIONS(3024), [sym_traits] = ACTIONS(3024), [sym_vector] = ACTIONS(3024), [sym_void] = ACTIONS(3024), [anon_sym_BQUOTE] = ACTIONS(3026), [anon_sym_r_DQUOTE] = ACTIONS(3026), [anon_sym_x_DQUOTE] = ACTIONS(3026), [anon_sym_DQUOTE] = ACTIONS(3026), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3026), [anon_sym_i_BQUOTE] = ACTIONS(3026), [anon_sym_i_DQUOTE] = ACTIONS(3026), [anon_sym_iq_LBRACE] = ACTIONS(3026), [aux_sym_char_literal_token1] = ACTIONS(3026), [anon_sym_SQUOTE] = ACTIONS(3024), [anon_sym___DATE__] = ACTIONS(3024), [anon_sym___FILE__] = ACTIONS(3024), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3024), [anon_sym___FUNCTION__] = ACTIONS(3024), [anon_sym___LINE__] = ACTIONS(3024), [anon_sym___MODULE__] = ACTIONS(3024), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3024), [anon_sym___TIME__] = ACTIONS(3024), [anon_sym___TIMESTAMP__] = ACTIONS(3024), [anon_sym___VENDOR__] = ACTIONS(3024), [anon_sym___VERSION__] = ACTIONS(3024), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3026), [sym_float_literal] = ACTIONS(3026), [sym__string] = ACTIONS(3026), }, [632] = { [sym_identifier] = ACTIONS(3028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3030), [anon_sym_RBRACE] = ACTIONS(3030), [anon_sym_LBRACE] = ACTIONS(3030), [anon_sym_SLASH] = ACTIONS(3028), [anon_sym_SLASH_EQ] = ACTIONS(3030), [anon_sym_DOT] = ACTIONS(3028), [anon_sym_DOT_DOT] = ACTIONS(3028), [anon_sym_DOT_DOT_DOT] = ACTIONS(3030), [anon_sym_AMP] = ACTIONS(3028), [anon_sym_AMP_EQ] = ACTIONS(3030), [anon_sym_AMP_AMP] = ACTIONS(3030), [anon_sym_PIPE] = ACTIONS(3028), [anon_sym_PIPE_EQ] = ACTIONS(3030), [anon_sym_PIPE_PIPE] = ACTIONS(3030), [anon_sym_DASH] = ACTIONS(3028), [anon_sym_DASH_EQ] = ACTIONS(3030), [anon_sym_DASH_DASH] = ACTIONS(3030), [anon_sym_PLUS] = ACTIONS(3028), [anon_sym_PLUS_EQ] = ACTIONS(3030), [anon_sym_PLUS_PLUS] = ACTIONS(3030), [anon_sym_LT] = ACTIONS(3028), [anon_sym_LT_EQ] = ACTIONS(3030), [anon_sym_LT_LT] = ACTIONS(3028), [anon_sym_LT_LT_EQ] = ACTIONS(3030), [anon_sym_GT] = ACTIONS(3028), [anon_sym_GT_EQ] = ACTIONS(3030), [anon_sym_GT_GT_EQ] = ACTIONS(3030), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3030), [anon_sym_GT_GT] = ACTIONS(3028), [anon_sym_GT_GT_GT] = ACTIONS(3028), [anon_sym_BANG] = ACTIONS(3028), [anon_sym_BANG_EQ] = ACTIONS(3030), [anon_sym_LPAREN] = ACTIONS(3030), [anon_sym_RPAREN] = ACTIONS(3030), [anon_sym_LBRACK] = ACTIONS(3030), [anon_sym_RBRACK] = ACTIONS(3030), [anon_sym_QMARK] = ACTIONS(3030), [anon_sym_COMMA] = ACTIONS(3030), [anon_sym_SEMI] = ACTIONS(3030), [anon_sym_COLON] = ACTIONS(3030), [anon_sym_DOLLAR] = ACTIONS(3028), [anon_sym_EQ] = ACTIONS(3028), [anon_sym_EQ_EQ] = ACTIONS(3030), [anon_sym_STAR] = ACTIONS(3028), [anon_sym_STAR_EQ] = ACTIONS(3030), [anon_sym_PERCENT] = ACTIONS(3028), [anon_sym_PERCENT_EQ] = ACTIONS(3030), [anon_sym_CARET] = ACTIONS(3028), [anon_sym_CARET_EQ] = ACTIONS(3030), [anon_sym_CARET_CARET] = ACTIONS(3028), [anon_sym_CARET_CARET_EQ] = ACTIONS(3030), [anon_sym_TILDE] = ACTIONS(3028), [anon_sym_TILDE_EQ] = ACTIONS(3030), [anon_sym_AT] = ACTIONS(3030), [anon_sym_EQ_GT] = ACTIONS(3030), [anon_sym_POUND] = ACTIONS(3030), [anon_sym_BANGin] = ACTIONS(3030), [anon_sym_BANGis] = ACTIONS(3030), [sym_bool] = ACTIONS(3028), [sym_byte] = ACTIONS(3028), [sym_ubyte] = ACTIONS(3028), [sym_char] = ACTIONS(3028), [sym_short] = ACTIONS(3028), [sym_ushort] = ACTIONS(3028), [sym_int] = ACTIONS(3028), [sym_uint] = ACTIONS(3028), [sym_long] = ACTIONS(3028), [sym_ulong] = ACTIONS(3028), [sym_cent] = ACTIONS(3028), [sym_ucent] = ACTIONS(3028), [sym_wchar] = ACTIONS(3028), [sym_dchar] = ACTIONS(3028), [sym_float] = ACTIONS(3028), [sym_double] = ACTIONS(3028), [sym_real] = ACTIONS(3028), [sym_ifloat] = ACTIONS(3028), [sym_idouble] = ACTIONS(3028), [sym_ireal] = ACTIONS(3028), [sym_cfloat] = ACTIONS(3028), [sym_cdouble] = ACTIONS(3028), [sym_creal] = ACTIONS(3028), [sym_size_t] = ACTIONS(3028), [sym_ptrdiff_t] = ACTIONS(3028), [sym_string] = ACTIONS(3028), [sym_cstring] = ACTIONS(3028), [sym_dstring] = ACTIONS(3028), [sym_wstring] = ACTIONS(3028), [sym_noreturn] = ACTIONS(3028), [sym_true] = ACTIONS(3028), [sym_false] = ACTIONS(3028), [sym_null] = ACTIONS(3028), [sym_super] = ACTIONS(3028), [sym_this] = ACTIONS(3028), [sym_abstract] = ACTIONS(3028), [sym_alias] = ACTIONS(3028), [sym_align] = ACTIONS(3028), [sym_asm] = ACTIONS(3028), [sym_assert] = ACTIONS(3028), [sym_auto] = ACTIONS(3028), [sym_break] = ACTIONS(3028), [sym_case] = ACTIONS(3028), [sym_cast] = ACTIONS(3028), [sym_catch] = ACTIONS(3028), [sym_class] = ACTIONS(3028), [sym_const] = ACTIONS(3028), [sym_continue] = ACTIONS(3028), [sym_debug] = ACTIONS(3028), [sym_default] = ACTIONS(3028), [sym_delegate] = ACTIONS(3028), [sym_delete] = ACTIONS(3028), [sym_deprecated] = ACTIONS(3028), [sym_do] = ACTIONS(3028), [sym_else] = ACTIONS(3028), [sym_enum] = ACTIONS(3028), [sym_export] = ACTIONS(3028), [sym_extern] = ACTIONS(3028), [sym_final] = ACTIONS(3028), [sym_finally] = ACTIONS(3028), [sym_for] = ACTIONS(3028), [sym_foreach] = ACTIONS(3028), [sym_foreach_reverse] = ACTIONS(3028), [sym_function] = ACTIONS(3028), [sym_goto] = ACTIONS(3028), [sym_if] = ACTIONS(3028), [sym_immutable] = ACTIONS(3028), [sym_import] = ACTIONS(3028), [sym_in] = ACTIONS(3028), [sym_inout] = ACTIONS(3028), [sym_interface] = ACTIONS(3028), [sym_invariant] = ACTIONS(3028), [sym_is] = ACTIONS(3028), [sym_lazy] = ACTIONS(3028), [sym_mixin] = ACTIONS(3028), [sym_module] = ACTIONS(3028), [sym_new] = ACTIONS(3028), [sym_nothrow] = ACTIONS(3028), [sym_out] = ACTIONS(3028), [sym_override] = ACTIONS(3028), [sym_package] = ACTIONS(3028), [sym_pragma] = ACTIONS(3028), [sym_private] = ACTIONS(3028), [sym_protected] = ACTIONS(3028), [sym_public] = ACTIONS(3028), [sym_pure] = ACTIONS(3028), [sym_ref] = ACTIONS(3028), [sym_return] = ACTIONS(3028), [sym_scope] = ACTIONS(3028), [sym_shared] = ACTIONS(3028), [sym_static] = ACTIONS(3028), [sym_struct] = ACTIONS(3028), [sym_switch] = ACTIONS(3028), [sym_synchronized] = ACTIONS(3028), [sym_template] = ACTIONS(3028), [sym_throw] = ACTIONS(3028), [sym_try] = ACTIONS(3028), [sym_typeid] = ACTIONS(3028), [sym_typeof] = ACTIONS(3028), [sym_union] = ACTIONS(3028), [sym_unittest] = ACTIONS(3028), [sym_version] = ACTIONS(3028), [sym_while] = ACTIONS(3028), [sym_with] = ACTIONS(3028), [sym_parameters_] = ACTIONS(3028), [sym_gshared] = ACTIONS(3028), [sym_traits] = ACTIONS(3028), [sym_vector] = ACTIONS(3028), [sym_void] = ACTIONS(3028), [anon_sym_BQUOTE] = ACTIONS(3030), [anon_sym_r_DQUOTE] = ACTIONS(3030), [anon_sym_x_DQUOTE] = ACTIONS(3030), [anon_sym_DQUOTE] = ACTIONS(3030), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3030), [anon_sym_i_BQUOTE] = ACTIONS(3030), [anon_sym_i_DQUOTE] = ACTIONS(3030), [anon_sym_iq_LBRACE] = ACTIONS(3030), [aux_sym_char_literal_token1] = ACTIONS(3030), [anon_sym_SQUOTE] = ACTIONS(3028), [anon_sym___DATE__] = ACTIONS(3028), [anon_sym___FILE__] = ACTIONS(3028), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3028), [anon_sym___FUNCTION__] = ACTIONS(3028), [anon_sym___LINE__] = ACTIONS(3028), [anon_sym___MODULE__] = ACTIONS(3028), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3028), [anon_sym___TIME__] = ACTIONS(3028), [anon_sym___TIMESTAMP__] = ACTIONS(3028), [anon_sym___VENDOR__] = ACTIONS(3028), [anon_sym___VERSION__] = ACTIONS(3028), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3030), [sym_float_literal] = ACTIONS(3030), [sym__string] = ACTIONS(3030), }, [633] = { [sym_identifier] = ACTIONS(3032), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3034), [anon_sym_RBRACE] = ACTIONS(3034), [anon_sym_LBRACE] = ACTIONS(3034), [anon_sym_SLASH] = ACTIONS(3032), [anon_sym_SLASH_EQ] = ACTIONS(3034), [anon_sym_DOT] = ACTIONS(3032), [anon_sym_DOT_DOT] = ACTIONS(3032), [anon_sym_DOT_DOT_DOT] = ACTIONS(3034), [anon_sym_AMP] = ACTIONS(3032), [anon_sym_AMP_EQ] = ACTIONS(3034), [anon_sym_AMP_AMP] = ACTIONS(3034), [anon_sym_PIPE] = ACTIONS(3032), [anon_sym_PIPE_EQ] = ACTIONS(3034), [anon_sym_PIPE_PIPE] = ACTIONS(3034), [anon_sym_DASH] = ACTIONS(3032), [anon_sym_DASH_EQ] = ACTIONS(3034), [anon_sym_DASH_DASH] = ACTIONS(3034), [anon_sym_PLUS] = ACTIONS(3032), [anon_sym_PLUS_EQ] = ACTIONS(3034), [anon_sym_PLUS_PLUS] = ACTIONS(3034), [anon_sym_LT] = ACTIONS(3032), [anon_sym_LT_EQ] = ACTIONS(3034), [anon_sym_LT_LT] = ACTIONS(3032), [anon_sym_LT_LT_EQ] = ACTIONS(3034), [anon_sym_GT] = ACTIONS(3032), [anon_sym_GT_EQ] = ACTIONS(3034), [anon_sym_GT_GT_EQ] = ACTIONS(3034), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3034), [anon_sym_GT_GT] = ACTIONS(3032), [anon_sym_GT_GT_GT] = ACTIONS(3032), [anon_sym_BANG] = ACTIONS(3032), [anon_sym_BANG_EQ] = ACTIONS(3034), [anon_sym_LPAREN] = ACTIONS(3034), [anon_sym_RPAREN] = ACTIONS(3034), [anon_sym_LBRACK] = ACTIONS(3034), [anon_sym_RBRACK] = ACTIONS(3034), [anon_sym_QMARK] = ACTIONS(3034), [anon_sym_COMMA] = ACTIONS(3034), [anon_sym_SEMI] = ACTIONS(3034), [anon_sym_COLON] = ACTIONS(3034), [anon_sym_DOLLAR] = ACTIONS(3032), [anon_sym_EQ] = ACTIONS(3032), [anon_sym_EQ_EQ] = ACTIONS(3034), [anon_sym_STAR] = ACTIONS(3032), [anon_sym_STAR_EQ] = ACTIONS(3034), [anon_sym_PERCENT] = ACTIONS(3032), [anon_sym_PERCENT_EQ] = ACTIONS(3034), [anon_sym_CARET] = ACTIONS(3032), [anon_sym_CARET_EQ] = ACTIONS(3034), [anon_sym_CARET_CARET] = ACTIONS(3032), [anon_sym_CARET_CARET_EQ] = ACTIONS(3034), [anon_sym_TILDE] = ACTIONS(3032), [anon_sym_TILDE_EQ] = ACTIONS(3034), [anon_sym_AT] = ACTIONS(3034), [anon_sym_EQ_GT] = ACTIONS(3034), [anon_sym_POUND] = ACTIONS(3034), [anon_sym_BANGin] = ACTIONS(3034), [anon_sym_BANGis] = ACTIONS(3034), [sym_bool] = ACTIONS(3032), [sym_byte] = ACTIONS(3032), [sym_ubyte] = ACTIONS(3032), [sym_char] = ACTIONS(3032), [sym_short] = ACTIONS(3032), [sym_ushort] = ACTIONS(3032), [sym_int] = ACTIONS(3032), [sym_uint] = ACTIONS(3032), [sym_long] = ACTIONS(3032), [sym_ulong] = ACTIONS(3032), [sym_cent] = ACTIONS(3032), [sym_ucent] = ACTIONS(3032), [sym_wchar] = ACTIONS(3032), [sym_dchar] = ACTIONS(3032), [sym_float] = ACTIONS(3032), [sym_double] = ACTIONS(3032), [sym_real] = ACTIONS(3032), [sym_ifloat] = ACTIONS(3032), [sym_idouble] = ACTIONS(3032), [sym_ireal] = ACTIONS(3032), [sym_cfloat] = ACTIONS(3032), [sym_cdouble] = ACTIONS(3032), [sym_creal] = ACTIONS(3032), [sym_size_t] = ACTIONS(3032), [sym_ptrdiff_t] = ACTIONS(3032), [sym_string] = ACTIONS(3032), [sym_cstring] = ACTIONS(3032), [sym_dstring] = ACTIONS(3032), [sym_wstring] = ACTIONS(3032), [sym_noreturn] = ACTIONS(3032), [sym_true] = ACTIONS(3032), [sym_false] = ACTIONS(3032), [sym_null] = ACTIONS(3032), [sym_super] = ACTIONS(3032), [sym_this] = ACTIONS(3032), [sym_abstract] = ACTIONS(3032), [sym_alias] = ACTIONS(3032), [sym_align] = ACTIONS(3032), [sym_asm] = ACTIONS(3032), [sym_assert] = ACTIONS(3032), [sym_auto] = ACTIONS(3032), [sym_break] = ACTIONS(3032), [sym_case] = ACTIONS(3032), [sym_cast] = ACTIONS(3032), [sym_catch] = ACTIONS(3032), [sym_class] = ACTIONS(3032), [sym_const] = ACTIONS(3032), [sym_continue] = ACTIONS(3032), [sym_debug] = ACTIONS(3032), [sym_default] = ACTIONS(3032), [sym_delegate] = ACTIONS(3032), [sym_delete] = ACTIONS(3032), [sym_deprecated] = ACTIONS(3032), [sym_do] = ACTIONS(3032), [sym_else] = ACTIONS(3032), [sym_enum] = ACTIONS(3032), [sym_export] = ACTIONS(3032), [sym_extern] = ACTIONS(3032), [sym_final] = ACTIONS(3032), [sym_finally] = ACTIONS(3032), [sym_for] = ACTIONS(3032), [sym_foreach] = ACTIONS(3032), [sym_foreach_reverse] = ACTIONS(3032), [sym_function] = ACTIONS(3032), [sym_goto] = ACTIONS(3032), [sym_if] = ACTIONS(3032), [sym_immutable] = ACTIONS(3032), [sym_import] = ACTIONS(3032), [sym_in] = ACTIONS(3032), [sym_inout] = ACTIONS(3032), [sym_interface] = ACTIONS(3032), [sym_invariant] = ACTIONS(3032), [sym_is] = ACTIONS(3032), [sym_lazy] = ACTIONS(3032), [sym_mixin] = ACTIONS(3032), [sym_module] = ACTIONS(3032), [sym_new] = ACTIONS(3032), [sym_nothrow] = ACTIONS(3032), [sym_out] = ACTIONS(3032), [sym_override] = ACTIONS(3032), [sym_package] = ACTIONS(3032), [sym_pragma] = ACTIONS(3032), [sym_private] = ACTIONS(3032), [sym_protected] = ACTIONS(3032), [sym_public] = ACTIONS(3032), [sym_pure] = ACTIONS(3032), [sym_ref] = ACTIONS(3032), [sym_return] = ACTIONS(3032), [sym_scope] = ACTIONS(3032), [sym_shared] = ACTIONS(3032), [sym_static] = ACTIONS(3032), [sym_struct] = ACTIONS(3032), [sym_switch] = ACTIONS(3032), [sym_synchronized] = ACTIONS(3032), [sym_template] = ACTIONS(3032), [sym_throw] = ACTIONS(3032), [sym_try] = ACTIONS(3032), [sym_typeid] = ACTIONS(3032), [sym_typeof] = ACTIONS(3032), [sym_union] = ACTIONS(3032), [sym_unittest] = ACTIONS(3032), [sym_version] = ACTIONS(3032), [sym_while] = ACTIONS(3032), [sym_with] = ACTIONS(3032), [sym_parameters_] = ACTIONS(3032), [sym_gshared] = ACTIONS(3032), [sym_traits] = ACTIONS(3032), [sym_vector] = ACTIONS(3032), [sym_void] = ACTIONS(3032), [anon_sym_BQUOTE] = ACTIONS(3034), [anon_sym_r_DQUOTE] = ACTIONS(3034), [anon_sym_x_DQUOTE] = ACTIONS(3034), [anon_sym_DQUOTE] = ACTIONS(3034), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3034), [anon_sym_i_BQUOTE] = ACTIONS(3034), [anon_sym_i_DQUOTE] = ACTIONS(3034), [anon_sym_iq_LBRACE] = ACTIONS(3034), [aux_sym_char_literal_token1] = ACTIONS(3034), [anon_sym_SQUOTE] = ACTIONS(3032), [anon_sym___DATE__] = ACTIONS(3032), [anon_sym___FILE__] = ACTIONS(3032), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3032), [anon_sym___FUNCTION__] = ACTIONS(3032), [anon_sym___LINE__] = ACTIONS(3032), [anon_sym___MODULE__] = ACTIONS(3032), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3032), [anon_sym___TIME__] = ACTIONS(3032), [anon_sym___TIMESTAMP__] = ACTIONS(3032), [anon_sym___VENDOR__] = ACTIONS(3032), [anon_sym___VERSION__] = ACTIONS(3032), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3034), [sym_float_literal] = ACTIONS(3034), [sym__string] = ACTIONS(3034), }, [634] = { [sym_identifier] = ACTIONS(3036), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3038), [anon_sym_RBRACE] = ACTIONS(3038), [anon_sym_LBRACE] = ACTIONS(3038), [anon_sym_SLASH] = ACTIONS(3036), [anon_sym_SLASH_EQ] = ACTIONS(3038), [anon_sym_DOT] = ACTIONS(3036), [anon_sym_DOT_DOT] = ACTIONS(3036), [anon_sym_DOT_DOT_DOT] = ACTIONS(3038), [anon_sym_AMP] = ACTIONS(3036), [anon_sym_AMP_EQ] = ACTIONS(3038), [anon_sym_AMP_AMP] = ACTIONS(3038), [anon_sym_PIPE] = ACTIONS(3036), [anon_sym_PIPE_EQ] = ACTIONS(3038), [anon_sym_PIPE_PIPE] = ACTIONS(3038), [anon_sym_DASH] = ACTIONS(3036), [anon_sym_DASH_EQ] = ACTIONS(3038), [anon_sym_DASH_DASH] = ACTIONS(3038), [anon_sym_PLUS] = ACTIONS(3036), [anon_sym_PLUS_EQ] = ACTIONS(3038), [anon_sym_PLUS_PLUS] = ACTIONS(3038), [anon_sym_LT] = ACTIONS(3036), [anon_sym_LT_EQ] = ACTIONS(3038), [anon_sym_LT_LT] = ACTIONS(3036), [anon_sym_LT_LT_EQ] = ACTIONS(3038), [anon_sym_GT] = ACTIONS(3036), [anon_sym_GT_EQ] = ACTIONS(3038), [anon_sym_GT_GT_EQ] = ACTIONS(3038), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3038), [anon_sym_GT_GT] = ACTIONS(3036), [anon_sym_GT_GT_GT] = ACTIONS(3036), [anon_sym_BANG] = ACTIONS(3036), [anon_sym_BANG_EQ] = ACTIONS(3038), [anon_sym_LPAREN] = ACTIONS(3038), [anon_sym_RPAREN] = ACTIONS(3038), [anon_sym_LBRACK] = ACTIONS(3038), [anon_sym_RBRACK] = ACTIONS(3038), [anon_sym_QMARK] = ACTIONS(3038), [anon_sym_COMMA] = ACTIONS(3038), [anon_sym_SEMI] = ACTIONS(3038), [anon_sym_COLON] = ACTIONS(3038), [anon_sym_DOLLAR] = ACTIONS(3036), [anon_sym_EQ] = ACTIONS(3036), [anon_sym_EQ_EQ] = ACTIONS(3038), [anon_sym_STAR] = ACTIONS(3036), [anon_sym_STAR_EQ] = ACTIONS(3038), [anon_sym_PERCENT] = ACTIONS(3036), [anon_sym_PERCENT_EQ] = ACTIONS(3038), [anon_sym_CARET] = ACTIONS(3036), [anon_sym_CARET_EQ] = ACTIONS(3038), [anon_sym_CARET_CARET] = ACTIONS(3036), [anon_sym_CARET_CARET_EQ] = ACTIONS(3038), [anon_sym_TILDE] = ACTIONS(3036), [anon_sym_TILDE_EQ] = ACTIONS(3038), [anon_sym_AT] = ACTIONS(3038), [anon_sym_EQ_GT] = ACTIONS(3038), [anon_sym_POUND] = ACTIONS(3038), [anon_sym_BANGin] = ACTIONS(3038), [anon_sym_BANGis] = ACTIONS(3038), [sym_bool] = ACTIONS(3036), [sym_byte] = ACTIONS(3036), [sym_ubyte] = ACTIONS(3036), [sym_char] = ACTIONS(3036), [sym_short] = ACTIONS(3036), [sym_ushort] = ACTIONS(3036), [sym_int] = ACTIONS(3036), [sym_uint] = ACTIONS(3036), [sym_long] = ACTIONS(3036), [sym_ulong] = ACTIONS(3036), [sym_cent] = ACTIONS(3036), [sym_ucent] = ACTIONS(3036), [sym_wchar] = ACTIONS(3036), [sym_dchar] = ACTIONS(3036), [sym_float] = ACTIONS(3036), [sym_double] = ACTIONS(3036), [sym_real] = ACTIONS(3036), [sym_ifloat] = ACTIONS(3036), [sym_idouble] = ACTIONS(3036), [sym_ireal] = ACTIONS(3036), [sym_cfloat] = ACTIONS(3036), [sym_cdouble] = ACTIONS(3036), [sym_creal] = ACTIONS(3036), [sym_size_t] = ACTIONS(3036), [sym_ptrdiff_t] = ACTIONS(3036), [sym_string] = ACTIONS(3036), [sym_cstring] = ACTIONS(3036), [sym_dstring] = ACTIONS(3036), [sym_wstring] = ACTIONS(3036), [sym_noreturn] = ACTIONS(3036), [sym_true] = ACTIONS(3036), [sym_false] = ACTIONS(3036), [sym_null] = ACTIONS(3036), [sym_super] = ACTIONS(3036), [sym_this] = ACTIONS(3036), [sym_abstract] = ACTIONS(3036), [sym_alias] = ACTIONS(3036), [sym_align] = ACTIONS(3036), [sym_asm] = ACTIONS(3036), [sym_assert] = ACTIONS(3036), [sym_auto] = ACTIONS(3036), [sym_break] = ACTIONS(3036), [sym_case] = ACTIONS(3036), [sym_cast] = ACTIONS(3036), [sym_catch] = ACTIONS(3036), [sym_class] = ACTIONS(3036), [sym_const] = ACTIONS(3036), [sym_continue] = ACTIONS(3036), [sym_debug] = ACTIONS(3036), [sym_default] = ACTIONS(3036), [sym_delegate] = ACTIONS(3036), [sym_delete] = ACTIONS(3036), [sym_deprecated] = ACTIONS(3036), [sym_do] = ACTIONS(3036), [sym_else] = ACTIONS(3036), [sym_enum] = ACTIONS(3036), [sym_export] = ACTIONS(3036), [sym_extern] = ACTIONS(3036), [sym_final] = ACTIONS(3036), [sym_finally] = ACTIONS(3036), [sym_for] = ACTIONS(3036), [sym_foreach] = ACTIONS(3036), [sym_foreach_reverse] = ACTIONS(3036), [sym_function] = ACTIONS(3036), [sym_goto] = ACTIONS(3036), [sym_if] = ACTIONS(3036), [sym_immutable] = ACTIONS(3036), [sym_import] = ACTIONS(3036), [sym_in] = ACTIONS(3036), [sym_inout] = ACTIONS(3036), [sym_interface] = ACTIONS(3036), [sym_invariant] = ACTIONS(3036), [sym_is] = ACTIONS(3036), [sym_lazy] = ACTIONS(3036), [sym_mixin] = ACTIONS(3036), [sym_module] = ACTIONS(3036), [sym_new] = ACTIONS(3036), [sym_nothrow] = ACTIONS(3036), [sym_out] = ACTIONS(3036), [sym_override] = ACTIONS(3036), [sym_package] = ACTIONS(3036), [sym_pragma] = ACTIONS(3036), [sym_private] = ACTIONS(3036), [sym_protected] = ACTIONS(3036), [sym_public] = ACTIONS(3036), [sym_pure] = ACTIONS(3036), [sym_ref] = ACTIONS(3036), [sym_return] = ACTIONS(3036), [sym_scope] = ACTIONS(3036), [sym_shared] = ACTIONS(3036), [sym_static] = ACTIONS(3036), [sym_struct] = ACTIONS(3036), [sym_switch] = ACTIONS(3036), [sym_synchronized] = ACTIONS(3036), [sym_template] = ACTIONS(3036), [sym_throw] = ACTIONS(3036), [sym_try] = ACTIONS(3036), [sym_typeid] = ACTIONS(3036), [sym_typeof] = ACTIONS(3036), [sym_union] = ACTIONS(3036), [sym_unittest] = ACTIONS(3036), [sym_version] = ACTIONS(3036), [sym_while] = ACTIONS(3036), [sym_with] = ACTIONS(3036), [sym_parameters_] = ACTIONS(3036), [sym_gshared] = ACTIONS(3036), [sym_traits] = ACTIONS(3036), [sym_vector] = ACTIONS(3036), [sym_void] = ACTIONS(3036), [anon_sym_BQUOTE] = ACTIONS(3038), [anon_sym_r_DQUOTE] = ACTIONS(3038), [anon_sym_x_DQUOTE] = ACTIONS(3038), [anon_sym_DQUOTE] = ACTIONS(3038), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3038), [anon_sym_i_BQUOTE] = ACTIONS(3038), [anon_sym_i_DQUOTE] = ACTIONS(3038), [anon_sym_iq_LBRACE] = ACTIONS(3038), [aux_sym_char_literal_token1] = ACTIONS(3038), [anon_sym_SQUOTE] = ACTIONS(3036), [anon_sym___DATE__] = ACTIONS(3036), [anon_sym___FILE__] = ACTIONS(3036), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3036), [anon_sym___FUNCTION__] = ACTIONS(3036), [anon_sym___LINE__] = ACTIONS(3036), [anon_sym___MODULE__] = ACTIONS(3036), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3036), [anon_sym___TIME__] = ACTIONS(3036), [anon_sym___TIMESTAMP__] = ACTIONS(3036), [anon_sym___VENDOR__] = ACTIONS(3036), [anon_sym___VERSION__] = ACTIONS(3036), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3038), [sym_float_literal] = ACTIONS(3038), [sym__string] = ACTIONS(3038), }, [635] = { [sym_identifier] = ACTIONS(3040), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3042), [anon_sym_RBRACE] = ACTIONS(3042), [anon_sym_LBRACE] = ACTIONS(3042), [anon_sym_SLASH] = ACTIONS(3040), [anon_sym_SLASH_EQ] = ACTIONS(3042), [anon_sym_DOT] = ACTIONS(3040), [anon_sym_DOT_DOT] = ACTIONS(3040), [anon_sym_DOT_DOT_DOT] = ACTIONS(3042), [anon_sym_AMP] = ACTIONS(3040), [anon_sym_AMP_EQ] = ACTIONS(3042), [anon_sym_AMP_AMP] = ACTIONS(3042), [anon_sym_PIPE] = ACTIONS(3040), [anon_sym_PIPE_EQ] = ACTIONS(3042), [anon_sym_PIPE_PIPE] = ACTIONS(3042), [anon_sym_DASH] = ACTIONS(3040), [anon_sym_DASH_EQ] = ACTIONS(3042), [anon_sym_DASH_DASH] = ACTIONS(3042), [anon_sym_PLUS] = ACTIONS(3040), [anon_sym_PLUS_EQ] = ACTIONS(3042), [anon_sym_PLUS_PLUS] = ACTIONS(3042), [anon_sym_LT] = ACTIONS(3040), [anon_sym_LT_EQ] = ACTIONS(3042), [anon_sym_LT_LT] = ACTIONS(3040), [anon_sym_LT_LT_EQ] = ACTIONS(3042), [anon_sym_GT] = ACTIONS(3040), [anon_sym_GT_EQ] = ACTIONS(3042), [anon_sym_GT_GT_EQ] = ACTIONS(3042), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3042), [anon_sym_GT_GT] = ACTIONS(3040), [anon_sym_GT_GT_GT] = ACTIONS(3040), [anon_sym_BANG] = ACTIONS(3040), [anon_sym_BANG_EQ] = ACTIONS(3042), [anon_sym_LPAREN] = ACTIONS(3042), [anon_sym_RPAREN] = ACTIONS(3042), [anon_sym_LBRACK] = ACTIONS(3042), [anon_sym_RBRACK] = ACTIONS(3042), [anon_sym_QMARK] = ACTIONS(3042), [anon_sym_COMMA] = ACTIONS(3042), [anon_sym_SEMI] = ACTIONS(3042), [anon_sym_COLON] = ACTIONS(3042), [anon_sym_DOLLAR] = ACTIONS(3040), [anon_sym_EQ] = ACTIONS(3040), [anon_sym_EQ_EQ] = ACTIONS(3042), [anon_sym_STAR] = ACTIONS(3040), [anon_sym_STAR_EQ] = ACTIONS(3042), [anon_sym_PERCENT] = ACTIONS(3040), [anon_sym_PERCENT_EQ] = ACTIONS(3042), [anon_sym_CARET] = ACTIONS(3040), [anon_sym_CARET_EQ] = ACTIONS(3042), [anon_sym_CARET_CARET] = ACTIONS(3040), [anon_sym_CARET_CARET_EQ] = ACTIONS(3042), [anon_sym_TILDE] = ACTIONS(3040), [anon_sym_TILDE_EQ] = ACTIONS(3042), [anon_sym_AT] = ACTIONS(3042), [anon_sym_EQ_GT] = ACTIONS(3042), [anon_sym_POUND] = ACTIONS(3042), [anon_sym_BANGin] = ACTIONS(3042), [anon_sym_BANGis] = ACTIONS(3042), [sym_bool] = ACTIONS(3040), [sym_byte] = ACTIONS(3040), [sym_ubyte] = ACTIONS(3040), [sym_char] = ACTIONS(3040), [sym_short] = ACTIONS(3040), [sym_ushort] = ACTIONS(3040), [sym_int] = ACTIONS(3040), [sym_uint] = ACTIONS(3040), [sym_long] = ACTIONS(3040), [sym_ulong] = ACTIONS(3040), [sym_cent] = ACTIONS(3040), [sym_ucent] = ACTIONS(3040), [sym_wchar] = ACTIONS(3040), [sym_dchar] = ACTIONS(3040), [sym_float] = ACTIONS(3040), [sym_double] = ACTIONS(3040), [sym_real] = ACTIONS(3040), [sym_ifloat] = ACTIONS(3040), [sym_idouble] = ACTIONS(3040), [sym_ireal] = ACTIONS(3040), [sym_cfloat] = ACTIONS(3040), [sym_cdouble] = ACTIONS(3040), [sym_creal] = ACTIONS(3040), [sym_size_t] = ACTIONS(3040), [sym_ptrdiff_t] = ACTIONS(3040), [sym_string] = ACTIONS(3040), [sym_cstring] = ACTIONS(3040), [sym_dstring] = ACTIONS(3040), [sym_wstring] = ACTIONS(3040), [sym_noreturn] = ACTIONS(3040), [sym_true] = ACTIONS(3040), [sym_false] = ACTIONS(3040), [sym_null] = ACTIONS(3040), [sym_super] = ACTIONS(3040), [sym_this] = ACTIONS(3040), [sym_abstract] = ACTIONS(3040), [sym_alias] = ACTIONS(3040), [sym_align] = ACTIONS(3040), [sym_asm] = ACTIONS(3040), [sym_assert] = ACTIONS(3040), [sym_auto] = ACTIONS(3040), [sym_break] = ACTIONS(3040), [sym_case] = ACTIONS(3040), [sym_cast] = ACTIONS(3040), [sym_catch] = ACTIONS(3040), [sym_class] = ACTIONS(3040), [sym_const] = ACTIONS(3040), [sym_continue] = ACTIONS(3040), [sym_debug] = ACTIONS(3040), [sym_default] = ACTIONS(3040), [sym_delegate] = ACTIONS(3040), [sym_delete] = ACTIONS(3040), [sym_deprecated] = ACTIONS(3040), [sym_do] = ACTIONS(3040), [sym_else] = ACTIONS(3040), [sym_enum] = ACTIONS(3040), [sym_export] = ACTIONS(3040), [sym_extern] = ACTIONS(3040), [sym_final] = ACTIONS(3040), [sym_finally] = ACTIONS(3040), [sym_for] = ACTIONS(3040), [sym_foreach] = ACTIONS(3040), [sym_foreach_reverse] = ACTIONS(3040), [sym_function] = ACTIONS(3040), [sym_goto] = ACTIONS(3040), [sym_if] = ACTIONS(3040), [sym_immutable] = ACTIONS(3040), [sym_import] = ACTIONS(3040), [sym_in] = ACTIONS(3040), [sym_inout] = ACTIONS(3040), [sym_interface] = ACTIONS(3040), [sym_invariant] = ACTIONS(3040), [sym_is] = ACTIONS(3040), [sym_lazy] = ACTIONS(3040), [sym_mixin] = ACTIONS(3040), [sym_module] = ACTIONS(3040), [sym_new] = ACTIONS(3040), [sym_nothrow] = ACTIONS(3040), [sym_out] = ACTIONS(3040), [sym_override] = ACTIONS(3040), [sym_package] = ACTIONS(3040), [sym_pragma] = ACTIONS(3040), [sym_private] = ACTIONS(3040), [sym_protected] = ACTIONS(3040), [sym_public] = ACTIONS(3040), [sym_pure] = ACTIONS(3040), [sym_ref] = ACTIONS(3040), [sym_return] = ACTIONS(3040), [sym_scope] = ACTIONS(3040), [sym_shared] = ACTIONS(3040), [sym_static] = ACTIONS(3040), [sym_struct] = ACTIONS(3040), [sym_switch] = ACTIONS(3040), [sym_synchronized] = ACTIONS(3040), [sym_template] = ACTIONS(3040), [sym_throw] = ACTIONS(3040), [sym_try] = ACTIONS(3040), [sym_typeid] = ACTIONS(3040), [sym_typeof] = ACTIONS(3040), [sym_union] = ACTIONS(3040), [sym_unittest] = ACTIONS(3040), [sym_version] = ACTIONS(3040), [sym_while] = ACTIONS(3040), [sym_with] = ACTIONS(3040), [sym_parameters_] = ACTIONS(3040), [sym_gshared] = ACTIONS(3040), [sym_traits] = ACTIONS(3040), [sym_vector] = ACTIONS(3040), [sym_void] = ACTIONS(3040), [anon_sym_BQUOTE] = ACTIONS(3042), [anon_sym_r_DQUOTE] = ACTIONS(3042), [anon_sym_x_DQUOTE] = ACTIONS(3042), [anon_sym_DQUOTE] = ACTIONS(3042), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3042), [anon_sym_i_BQUOTE] = ACTIONS(3042), [anon_sym_i_DQUOTE] = ACTIONS(3042), [anon_sym_iq_LBRACE] = ACTIONS(3042), [aux_sym_char_literal_token1] = ACTIONS(3042), [anon_sym_SQUOTE] = ACTIONS(3040), [anon_sym___DATE__] = ACTIONS(3040), [anon_sym___FILE__] = ACTIONS(3040), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3040), [anon_sym___FUNCTION__] = ACTIONS(3040), [anon_sym___LINE__] = ACTIONS(3040), [anon_sym___MODULE__] = ACTIONS(3040), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3040), [anon_sym___TIME__] = ACTIONS(3040), [anon_sym___TIMESTAMP__] = ACTIONS(3040), [anon_sym___VENDOR__] = ACTIONS(3040), [anon_sym___VERSION__] = ACTIONS(3040), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3042), [sym_float_literal] = ACTIONS(3042), [sym__string] = ACTIONS(3042), }, [636] = { [sym_identifier] = ACTIONS(3044), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3046), [anon_sym_RBRACE] = ACTIONS(3046), [anon_sym_LBRACE] = ACTIONS(3046), [anon_sym_SLASH] = ACTIONS(3044), [anon_sym_SLASH_EQ] = ACTIONS(3046), [anon_sym_DOT] = ACTIONS(3044), [anon_sym_DOT_DOT] = ACTIONS(3044), [anon_sym_DOT_DOT_DOT] = ACTIONS(3046), [anon_sym_AMP] = ACTIONS(3044), [anon_sym_AMP_EQ] = ACTIONS(3046), [anon_sym_AMP_AMP] = ACTIONS(3046), [anon_sym_PIPE] = ACTIONS(3044), [anon_sym_PIPE_EQ] = ACTIONS(3046), [anon_sym_PIPE_PIPE] = ACTIONS(3046), [anon_sym_DASH] = ACTIONS(3044), [anon_sym_DASH_EQ] = ACTIONS(3046), [anon_sym_DASH_DASH] = ACTIONS(3046), [anon_sym_PLUS] = ACTIONS(3044), [anon_sym_PLUS_EQ] = ACTIONS(3046), [anon_sym_PLUS_PLUS] = ACTIONS(3046), [anon_sym_LT] = ACTIONS(3044), [anon_sym_LT_EQ] = ACTIONS(3046), [anon_sym_LT_LT] = ACTIONS(3044), [anon_sym_LT_LT_EQ] = ACTIONS(3046), [anon_sym_GT] = ACTIONS(3044), [anon_sym_GT_EQ] = ACTIONS(3046), [anon_sym_GT_GT_EQ] = ACTIONS(3046), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3046), [anon_sym_GT_GT] = ACTIONS(3044), [anon_sym_GT_GT_GT] = ACTIONS(3044), [anon_sym_BANG] = ACTIONS(3044), [anon_sym_BANG_EQ] = ACTIONS(3046), [anon_sym_LPAREN] = ACTIONS(3046), [anon_sym_RPAREN] = ACTIONS(3046), [anon_sym_LBRACK] = ACTIONS(3046), [anon_sym_RBRACK] = ACTIONS(3046), [anon_sym_QMARK] = ACTIONS(3046), [anon_sym_COMMA] = ACTIONS(3046), [anon_sym_SEMI] = ACTIONS(3046), [anon_sym_COLON] = ACTIONS(3046), [anon_sym_DOLLAR] = ACTIONS(3044), [anon_sym_EQ] = ACTIONS(3044), [anon_sym_EQ_EQ] = ACTIONS(3046), [anon_sym_STAR] = ACTIONS(3044), [anon_sym_STAR_EQ] = ACTIONS(3046), [anon_sym_PERCENT] = ACTIONS(3044), [anon_sym_PERCENT_EQ] = ACTIONS(3046), [anon_sym_CARET] = ACTIONS(3044), [anon_sym_CARET_EQ] = ACTIONS(3046), [anon_sym_CARET_CARET] = ACTIONS(3044), [anon_sym_CARET_CARET_EQ] = ACTIONS(3046), [anon_sym_TILDE] = ACTIONS(3044), [anon_sym_TILDE_EQ] = ACTIONS(3046), [anon_sym_AT] = ACTIONS(3046), [anon_sym_EQ_GT] = ACTIONS(3046), [anon_sym_POUND] = ACTIONS(3046), [anon_sym_BANGin] = ACTIONS(3046), [anon_sym_BANGis] = ACTIONS(3046), [sym_bool] = ACTIONS(3044), [sym_byte] = ACTIONS(3044), [sym_ubyte] = ACTIONS(3044), [sym_char] = ACTIONS(3044), [sym_short] = ACTIONS(3044), [sym_ushort] = ACTIONS(3044), [sym_int] = ACTIONS(3044), [sym_uint] = ACTIONS(3044), [sym_long] = ACTIONS(3044), [sym_ulong] = ACTIONS(3044), [sym_cent] = ACTIONS(3044), [sym_ucent] = ACTIONS(3044), [sym_wchar] = ACTIONS(3044), [sym_dchar] = ACTIONS(3044), [sym_float] = ACTIONS(3044), [sym_double] = ACTIONS(3044), [sym_real] = ACTIONS(3044), [sym_ifloat] = ACTIONS(3044), [sym_idouble] = ACTIONS(3044), [sym_ireal] = ACTIONS(3044), [sym_cfloat] = ACTIONS(3044), [sym_cdouble] = ACTIONS(3044), [sym_creal] = ACTIONS(3044), [sym_size_t] = ACTIONS(3044), [sym_ptrdiff_t] = ACTIONS(3044), [sym_string] = ACTIONS(3044), [sym_cstring] = ACTIONS(3044), [sym_dstring] = ACTIONS(3044), [sym_wstring] = ACTIONS(3044), [sym_noreturn] = ACTIONS(3044), [sym_true] = ACTIONS(3044), [sym_false] = ACTIONS(3044), [sym_null] = ACTIONS(3044), [sym_super] = ACTIONS(3044), [sym_this] = ACTIONS(3044), [sym_abstract] = ACTIONS(3044), [sym_alias] = ACTIONS(3044), [sym_align] = ACTIONS(3044), [sym_asm] = ACTIONS(3044), [sym_assert] = ACTIONS(3044), [sym_auto] = ACTIONS(3044), [sym_break] = ACTIONS(3044), [sym_case] = ACTIONS(3044), [sym_cast] = ACTIONS(3044), [sym_catch] = ACTIONS(3044), [sym_class] = ACTIONS(3044), [sym_const] = ACTIONS(3044), [sym_continue] = ACTIONS(3044), [sym_debug] = ACTIONS(3044), [sym_default] = ACTIONS(3044), [sym_delegate] = ACTIONS(3044), [sym_delete] = ACTIONS(3044), [sym_deprecated] = ACTIONS(3044), [sym_do] = ACTIONS(3044), [sym_else] = ACTIONS(3044), [sym_enum] = ACTIONS(3044), [sym_export] = ACTIONS(3044), [sym_extern] = ACTIONS(3044), [sym_final] = ACTIONS(3044), [sym_finally] = ACTIONS(3044), [sym_for] = ACTIONS(3044), [sym_foreach] = ACTIONS(3044), [sym_foreach_reverse] = ACTIONS(3044), [sym_function] = ACTIONS(3044), [sym_goto] = ACTIONS(3044), [sym_if] = ACTIONS(3044), [sym_immutable] = ACTIONS(3044), [sym_import] = ACTIONS(3044), [sym_in] = ACTIONS(3044), [sym_inout] = ACTIONS(3044), [sym_interface] = ACTIONS(3044), [sym_invariant] = ACTIONS(3044), [sym_is] = ACTIONS(3044), [sym_lazy] = ACTIONS(3044), [sym_mixin] = ACTIONS(3044), [sym_module] = ACTIONS(3044), [sym_new] = ACTIONS(3044), [sym_nothrow] = ACTIONS(3044), [sym_out] = ACTIONS(3044), [sym_override] = ACTIONS(3044), [sym_package] = ACTIONS(3044), [sym_pragma] = ACTIONS(3044), [sym_private] = ACTIONS(3044), [sym_protected] = ACTIONS(3044), [sym_public] = ACTIONS(3044), [sym_pure] = ACTIONS(3044), [sym_ref] = ACTIONS(3044), [sym_return] = ACTIONS(3044), [sym_scope] = ACTIONS(3044), [sym_shared] = ACTIONS(3044), [sym_static] = ACTIONS(3044), [sym_struct] = ACTIONS(3044), [sym_switch] = ACTIONS(3044), [sym_synchronized] = ACTIONS(3044), [sym_template] = ACTIONS(3044), [sym_throw] = ACTIONS(3044), [sym_try] = ACTIONS(3044), [sym_typeid] = ACTIONS(3044), [sym_typeof] = ACTIONS(3044), [sym_union] = ACTIONS(3044), [sym_unittest] = ACTIONS(3044), [sym_version] = ACTIONS(3044), [sym_while] = ACTIONS(3044), [sym_with] = ACTIONS(3044), [sym_parameters_] = ACTIONS(3044), [sym_gshared] = ACTIONS(3044), [sym_traits] = ACTIONS(3044), [sym_vector] = ACTIONS(3044), [sym_void] = ACTIONS(3044), [anon_sym_BQUOTE] = ACTIONS(3046), [anon_sym_r_DQUOTE] = ACTIONS(3046), [anon_sym_x_DQUOTE] = ACTIONS(3046), [anon_sym_DQUOTE] = ACTIONS(3046), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3046), [anon_sym_i_BQUOTE] = ACTIONS(3046), [anon_sym_i_DQUOTE] = ACTIONS(3046), [anon_sym_iq_LBRACE] = ACTIONS(3046), [aux_sym_char_literal_token1] = ACTIONS(3046), [anon_sym_SQUOTE] = ACTIONS(3044), [anon_sym___DATE__] = ACTIONS(3044), [anon_sym___FILE__] = ACTIONS(3044), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3044), [anon_sym___FUNCTION__] = ACTIONS(3044), [anon_sym___LINE__] = ACTIONS(3044), [anon_sym___MODULE__] = ACTIONS(3044), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3044), [anon_sym___TIME__] = ACTIONS(3044), [anon_sym___TIMESTAMP__] = ACTIONS(3044), [anon_sym___VENDOR__] = ACTIONS(3044), [anon_sym___VERSION__] = ACTIONS(3044), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3046), [sym_float_literal] = ACTIONS(3046), [sym__string] = ACTIONS(3046), }, [637] = { [sym_identifier] = ACTIONS(3048), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3050), [anon_sym_RBRACE] = ACTIONS(3050), [anon_sym_LBRACE] = ACTIONS(3050), [anon_sym_SLASH] = ACTIONS(3048), [anon_sym_SLASH_EQ] = ACTIONS(3050), [anon_sym_DOT] = ACTIONS(3048), [anon_sym_DOT_DOT] = ACTIONS(3048), [anon_sym_DOT_DOT_DOT] = ACTIONS(3050), [anon_sym_AMP] = ACTIONS(3048), [anon_sym_AMP_EQ] = ACTIONS(3050), [anon_sym_AMP_AMP] = ACTIONS(3050), [anon_sym_PIPE] = ACTIONS(3048), [anon_sym_PIPE_EQ] = ACTIONS(3050), [anon_sym_PIPE_PIPE] = ACTIONS(3050), [anon_sym_DASH] = ACTIONS(3048), [anon_sym_DASH_EQ] = ACTIONS(3050), [anon_sym_DASH_DASH] = ACTIONS(3050), [anon_sym_PLUS] = ACTIONS(3048), [anon_sym_PLUS_EQ] = ACTIONS(3050), [anon_sym_PLUS_PLUS] = ACTIONS(3050), [anon_sym_LT] = ACTIONS(3048), [anon_sym_LT_EQ] = ACTIONS(3050), [anon_sym_LT_LT] = ACTIONS(3048), [anon_sym_LT_LT_EQ] = ACTIONS(3050), [anon_sym_GT] = ACTIONS(3048), [anon_sym_GT_EQ] = ACTIONS(3050), [anon_sym_GT_GT_EQ] = ACTIONS(3050), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3050), [anon_sym_GT_GT] = ACTIONS(3048), [anon_sym_GT_GT_GT] = ACTIONS(3048), [anon_sym_BANG] = ACTIONS(3048), [anon_sym_BANG_EQ] = ACTIONS(3050), [anon_sym_LPAREN] = ACTIONS(3050), [anon_sym_RPAREN] = ACTIONS(3050), [anon_sym_LBRACK] = ACTIONS(3050), [anon_sym_RBRACK] = ACTIONS(3050), [anon_sym_QMARK] = ACTIONS(3050), [anon_sym_COMMA] = ACTIONS(3050), [anon_sym_SEMI] = ACTIONS(3050), [anon_sym_COLON] = ACTIONS(3050), [anon_sym_DOLLAR] = ACTIONS(3048), [anon_sym_EQ] = ACTIONS(3048), [anon_sym_EQ_EQ] = ACTIONS(3050), [anon_sym_STAR] = ACTIONS(3048), [anon_sym_STAR_EQ] = ACTIONS(3050), [anon_sym_PERCENT] = ACTIONS(3048), [anon_sym_PERCENT_EQ] = ACTIONS(3050), [anon_sym_CARET] = ACTIONS(3048), [anon_sym_CARET_EQ] = ACTIONS(3050), [anon_sym_CARET_CARET] = ACTIONS(3048), [anon_sym_CARET_CARET_EQ] = ACTIONS(3050), [anon_sym_TILDE] = ACTIONS(3048), [anon_sym_TILDE_EQ] = ACTIONS(3050), [anon_sym_AT] = ACTIONS(3050), [anon_sym_EQ_GT] = ACTIONS(3050), [anon_sym_POUND] = ACTIONS(3050), [anon_sym_BANGin] = ACTIONS(3050), [anon_sym_BANGis] = ACTIONS(3050), [sym_bool] = ACTIONS(3048), [sym_byte] = ACTIONS(3048), [sym_ubyte] = ACTIONS(3048), [sym_char] = ACTIONS(3048), [sym_short] = ACTIONS(3048), [sym_ushort] = ACTIONS(3048), [sym_int] = ACTIONS(3048), [sym_uint] = ACTIONS(3048), [sym_long] = ACTIONS(3048), [sym_ulong] = ACTIONS(3048), [sym_cent] = ACTIONS(3048), [sym_ucent] = ACTIONS(3048), [sym_wchar] = ACTIONS(3048), [sym_dchar] = ACTIONS(3048), [sym_float] = ACTIONS(3048), [sym_double] = ACTIONS(3048), [sym_real] = ACTIONS(3048), [sym_ifloat] = ACTIONS(3048), [sym_idouble] = ACTIONS(3048), [sym_ireal] = ACTIONS(3048), [sym_cfloat] = ACTIONS(3048), [sym_cdouble] = ACTIONS(3048), [sym_creal] = ACTIONS(3048), [sym_size_t] = ACTIONS(3048), [sym_ptrdiff_t] = ACTIONS(3048), [sym_string] = ACTIONS(3048), [sym_cstring] = ACTIONS(3048), [sym_dstring] = ACTIONS(3048), [sym_wstring] = ACTIONS(3048), [sym_noreturn] = ACTIONS(3048), [sym_true] = ACTIONS(3048), [sym_false] = ACTIONS(3048), [sym_null] = ACTIONS(3048), [sym_super] = ACTIONS(3048), [sym_this] = ACTIONS(3048), [sym_abstract] = ACTIONS(3048), [sym_alias] = ACTIONS(3048), [sym_align] = ACTIONS(3048), [sym_asm] = ACTIONS(3048), [sym_assert] = ACTIONS(3048), [sym_auto] = ACTIONS(3048), [sym_break] = ACTIONS(3048), [sym_case] = ACTIONS(3048), [sym_cast] = ACTIONS(3048), [sym_catch] = ACTIONS(3048), [sym_class] = ACTIONS(3048), [sym_const] = ACTIONS(3048), [sym_continue] = ACTIONS(3048), [sym_debug] = ACTIONS(3048), [sym_default] = ACTIONS(3048), [sym_delegate] = ACTIONS(3048), [sym_delete] = ACTIONS(3048), [sym_deprecated] = ACTIONS(3048), [sym_do] = ACTIONS(3048), [sym_else] = ACTIONS(3048), [sym_enum] = ACTIONS(3048), [sym_export] = ACTIONS(3048), [sym_extern] = ACTIONS(3048), [sym_final] = ACTIONS(3048), [sym_finally] = ACTIONS(3048), [sym_for] = ACTIONS(3048), [sym_foreach] = ACTIONS(3048), [sym_foreach_reverse] = ACTIONS(3048), [sym_function] = ACTIONS(3048), [sym_goto] = ACTIONS(3048), [sym_if] = ACTIONS(3048), [sym_immutable] = ACTIONS(3048), [sym_import] = ACTIONS(3048), [sym_in] = ACTIONS(3048), [sym_inout] = ACTIONS(3048), [sym_interface] = ACTIONS(3048), [sym_invariant] = ACTIONS(3048), [sym_is] = ACTIONS(3048), [sym_lazy] = ACTIONS(3048), [sym_mixin] = ACTIONS(3048), [sym_module] = ACTIONS(3048), [sym_new] = ACTIONS(3048), [sym_nothrow] = ACTIONS(3048), [sym_out] = ACTIONS(3048), [sym_override] = ACTIONS(3048), [sym_package] = ACTIONS(3048), [sym_pragma] = ACTIONS(3048), [sym_private] = ACTIONS(3048), [sym_protected] = ACTIONS(3048), [sym_public] = ACTIONS(3048), [sym_pure] = ACTIONS(3048), [sym_ref] = ACTIONS(3048), [sym_return] = ACTIONS(3048), [sym_scope] = ACTIONS(3048), [sym_shared] = ACTIONS(3048), [sym_static] = ACTIONS(3048), [sym_struct] = ACTIONS(3048), [sym_switch] = ACTIONS(3048), [sym_synchronized] = ACTIONS(3048), [sym_template] = ACTIONS(3048), [sym_throw] = ACTIONS(3048), [sym_try] = ACTIONS(3048), [sym_typeid] = ACTIONS(3048), [sym_typeof] = ACTIONS(3048), [sym_union] = ACTIONS(3048), [sym_unittest] = ACTIONS(3048), [sym_version] = ACTIONS(3048), [sym_while] = ACTIONS(3048), [sym_with] = ACTIONS(3048), [sym_parameters_] = ACTIONS(3048), [sym_gshared] = ACTIONS(3048), [sym_traits] = ACTIONS(3048), [sym_vector] = ACTIONS(3048), [sym_void] = ACTIONS(3048), [anon_sym_BQUOTE] = ACTIONS(3050), [anon_sym_r_DQUOTE] = ACTIONS(3050), [anon_sym_x_DQUOTE] = ACTIONS(3050), [anon_sym_DQUOTE] = ACTIONS(3050), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3050), [anon_sym_i_BQUOTE] = ACTIONS(3050), [anon_sym_i_DQUOTE] = ACTIONS(3050), [anon_sym_iq_LBRACE] = ACTIONS(3050), [aux_sym_char_literal_token1] = ACTIONS(3050), [anon_sym_SQUOTE] = ACTIONS(3048), [anon_sym___DATE__] = ACTIONS(3048), [anon_sym___FILE__] = ACTIONS(3048), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3048), [anon_sym___FUNCTION__] = ACTIONS(3048), [anon_sym___LINE__] = ACTIONS(3048), [anon_sym___MODULE__] = ACTIONS(3048), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3048), [anon_sym___TIME__] = ACTIONS(3048), [anon_sym___TIMESTAMP__] = ACTIONS(3048), [anon_sym___VENDOR__] = ACTIONS(3048), [anon_sym___VERSION__] = ACTIONS(3048), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3050), [sym_float_literal] = ACTIONS(3050), [sym__string] = ACTIONS(3050), }, [638] = { [sym_identifier] = ACTIONS(3052), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3054), [anon_sym_RBRACE] = ACTIONS(3054), [anon_sym_LBRACE] = ACTIONS(3054), [anon_sym_SLASH] = ACTIONS(3052), [anon_sym_SLASH_EQ] = ACTIONS(3054), [anon_sym_DOT] = ACTIONS(3052), [anon_sym_DOT_DOT] = ACTIONS(3052), [anon_sym_DOT_DOT_DOT] = ACTIONS(3054), [anon_sym_AMP] = ACTIONS(3052), [anon_sym_AMP_EQ] = ACTIONS(3054), [anon_sym_AMP_AMP] = ACTIONS(3054), [anon_sym_PIPE] = ACTIONS(3052), [anon_sym_PIPE_EQ] = ACTIONS(3054), [anon_sym_PIPE_PIPE] = ACTIONS(3054), [anon_sym_DASH] = ACTIONS(3052), [anon_sym_DASH_EQ] = ACTIONS(3054), [anon_sym_DASH_DASH] = ACTIONS(3054), [anon_sym_PLUS] = ACTIONS(3052), [anon_sym_PLUS_EQ] = ACTIONS(3054), [anon_sym_PLUS_PLUS] = ACTIONS(3054), [anon_sym_LT] = ACTIONS(3052), [anon_sym_LT_EQ] = ACTIONS(3054), [anon_sym_LT_LT] = ACTIONS(3052), [anon_sym_LT_LT_EQ] = ACTIONS(3054), [anon_sym_GT] = ACTIONS(3052), [anon_sym_GT_EQ] = ACTIONS(3054), [anon_sym_GT_GT_EQ] = ACTIONS(3054), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3054), [anon_sym_GT_GT] = ACTIONS(3052), [anon_sym_GT_GT_GT] = ACTIONS(3052), [anon_sym_BANG] = ACTIONS(3052), [anon_sym_BANG_EQ] = ACTIONS(3054), [anon_sym_LPAREN] = ACTIONS(3054), [anon_sym_RPAREN] = ACTIONS(3054), [anon_sym_LBRACK] = ACTIONS(3054), [anon_sym_RBRACK] = ACTIONS(3054), [anon_sym_QMARK] = ACTIONS(3054), [anon_sym_COMMA] = ACTIONS(3054), [anon_sym_SEMI] = ACTIONS(3054), [anon_sym_COLON] = ACTIONS(3054), [anon_sym_DOLLAR] = ACTIONS(3052), [anon_sym_EQ] = ACTIONS(3052), [anon_sym_EQ_EQ] = ACTIONS(3054), [anon_sym_STAR] = ACTIONS(3052), [anon_sym_STAR_EQ] = ACTIONS(3054), [anon_sym_PERCENT] = ACTIONS(3052), [anon_sym_PERCENT_EQ] = ACTIONS(3054), [anon_sym_CARET] = ACTIONS(3052), [anon_sym_CARET_EQ] = ACTIONS(3054), [anon_sym_CARET_CARET] = ACTIONS(3052), [anon_sym_CARET_CARET_EQ] = ACTIONS(3054), [anon_sym_TILDE] = ACTIONS(3052), [anon_sym_TILDE_EQ] = ACTIONS(3054), [anon_sym_AT] = ACTIONS(3054), [anon_sym_EQ_GT] = ACTIONS(3054), [anon_sym_POUND] = ACTIONS(3054), [anon_sym_BANGin] = ACTIONS(3054), [anon_sym_BANGis] = ACTIONS(3054), [sym_bool] = ACTIONS(3052), [sym_byte] = ACTIONS(3052), [sym_ubyte] = ACTIONS(3052), [sym_char] = ACTIONS(3052), [sym_short] = ACTIONS(3052), [sym_ushort] = ACTIONS(3052), [sym_int] = ACTIONS(3052), [sym_uint] = ACTIONS(3052), [sym_long] = ACTIONS(3052), [sym_ulong] = ACTIONS(3052), [sym_cent] = ACTIONS(3052), [sym_ucent] = ACTIONS(3052), [sym_wchar] = ACTIONS(3052), [sym_dchar] = ACTIONS(3052), [sym_float] = ACTIONS(3052), [sym_double] = ACTIONS(3052), [sym_real] = ACTIONS(3052), [sym_ifloat] = ACTIONS(3052), [sym_idouble] = ACTIONS(3052), [sym_ireal] = ACTIONS(3052), [sym_cfloat] = ACTIONS(3052), [sym_cdouble] = ACTIONS(3052), [sym_creal] = ACTIONS(3052), [sym_size_t] = ACTIONS(3052), [sym_ptrdiff_t] = ACTIONS(3052), [sym_string] = ACTIONS(3052), [sym_cstring] = ACTIONS(3052), [sym_dstring] = ACTIONS(3052), [sym_wstring] = ACTIONS(3052), [sym_noreturn] = ACTIONS(3052), [sym_true] = ACTIONS(3052), [sym_false] = ACTIONS(3052), [sym_null] = ACTIONS(3052), [sym_super] = ACTIONS(3052), [sym_this] = ACTIONS(3052), [sym_abstract] = ACTIONS(3052), [sym_alias] = ACTIONS(3052), [sym_align] = ACTIONS(3052), [sym_asm] = ACTIONS(3052), [sym_assert] = ACTIONS(3052), [sym_auto] = ACTIONS(3052), [sym_break] = ACTIONS(3052), [sym_case] = ACTIONS(3052), [sym_cast] = ACTIONS(3052), [sym_catch] = ACTIONS(3052), [sym_class] = ACTIONS(3052), [sym_const] = ACTIONS(3052), [sym_continue] = ACTIONS(3052), [sym_debug] = ACTIONS(3052), [sym_default] = ACTIONS(3052), [sym_delegate] = ACTIONS(3052), [sym_delete] = ACTIONS(3052), [sym_deprecated] = ACTIONS(3052), [sym_do] = ACTIONS(3052), [sym_else] = ACTIONS(3052), [sym_enum] = ACTIONS(3052), [sym_export] = ACTIONS(3052), [sym_extern] = ACTIONS(3052), [sym_final] = ACTIONS(3052), [sym_finally] = ACTIONS(3052), [sym_for] = ACTIONS(3052), [sym_foreach] = ACTIONS(3052), [sym_foreach_reverse] = ACTIONS(3052), [sym_function] = ACTIONS(3052), [sym_goto] = ACTIONS(3052), [sym_if] = ACTIONS(3052), [sym_immutable] = ACTIONS(3052), [sym_import] = ACTIONS(3052), [sym_in] = ACTIONS(3052), [sym_inout] = ACTIONS(3052), [sym_interface] = ACTIONS(3052), [sym_invariant] = ACTIONS(3052), [sym_is] = ACTIONS(3052), [sym_lazy] = ACTIONS(3052), [sym_mixin] = ACTIONS(3052), [sym_module] = ACTIONS(3052), [sym_new] = ACTIONS(3052), [sym_nothrow] = ACTIONS(3052), [sym_out] = ACTIONS(3052), [sym_override] = ACTIONS(3052), [sym_package] = ACTIONS(3052), [sym_pragma] = ACTIONS(3052), [sym_private] = ACTIONS(3052), [sym_protected] = ACTIONS(3052), [sym_public] = ACTIONS(3052), [sym_pure] = ACTIONS(3052), [sym_ref] = ACTIONS(3052), [sym_return] = ACTIONS(3052), [sym_scope] = ACTIONS(3052), [sym_shared] = ACTIONS(3052), [sym_static] = ACTIONS(3052), [sym_struct] = ACTIONS(3052), [sym_switch] = ACTIONS(3052), [sym_synchronized] = ACTIONS(3052), [sym_template] = ACTIONS(3052), [sym_throw] = ACTIONS(3052), [sym_try] = ACTIONS(3052), [sym_typeid] = ACTIONS(3052), [sym_typeof] = ACTIONS(3052), [sym_union] = ACTIONS(3052), [sym_unittest] = ACTIONS(3052), [sym_version] = ACTIONS(3052), [sym_while] = ACTIONS(3052), [sym_with] = ACTIONS(3052), [sym_parameters_] = ACTIONS(3052), [sym_gshared] = ACTIONS(3052), [sym_traits] = ACTIONS(3052), [sym_vector] = ACTIONS(3052), [sym_void] = ACTIONS(3052), [anon_sym_BQUOTE] = ACTIONS(3054), [anon_sym_r_DQUOTE] = ACTIONS(3054), [anon_sym_x_DQUOTE] = ACTIONS(3054), [anon_sym_DQUOTE] = ACTIONS(3054), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3054), [anon_sym_i_BQUOTE] = ACTIONS(3054), [anon_sym_i_DQUOTE] = ACTIONS(3054), [anon_sym_iq_LBRACE] = ACTIONS(3054), [aux_sym_char_literal_token1] = ACTIONS(3054), [anon_sym_SQUOTE] = ACTIONS(3052), [anon_sym___DATE__] = ACTIONS(3052), [anon_sym___FILE__] = ACTIONS(3052), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3052), [anon_sym___FUNCTION__] = ACTIONS(3052), [anon_sym___LINE__] = ACTIONS(3052), [anon_sym___MODULE__] = ACTIONS(3052), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3052), [anon_sym___TIME__] = ACTIONS(3052), [anon_sym___TIMESTAMP__] = ACTIONS(3052), [anon_sym___VENDOR__] = ACTIONS(3052), [anon_sym___VERSION__] = ACTIONS(3052), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3054), [sym_float_literal] = ACTIONS(3054), [sym__string] = ACTIONS(3054), }, [639] = { [sym_identifier] = ACTIONS(3056), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3058), [anon_sym_RBRACE] = ACTIONS(3058), [anon_sym_LBRACE] = ACTIONS(3058), [anon_sym_SLASH] = ACTIONS(3056), [anon_sym_SLASH_EQ] = ACTIONS(3058), [anon_sym_DOT] = ACTIONS(3056), [anon_sym_DOT_DOT] = ACTIONS(3056), [anon_sym_DOT_DOT_DOT] = ACTIONS(3058), [anon_sym_AMP] = ACTIONS(3056), [anon_sym_AMP_EQ] = ACTIONS(3058), [anon_sym_AMP_AMP] = ACTIONS(3058), [anon_sym_PIPE] = ACTIONS(3056), [anon_sym_PIPE_EQ] = ACTIONS(3058), [anon_sym_PIPE_PIPE] = ACTIONS(3058), [anon_sym_DASH] = ACTIONS(3056), [anon_sym_DASH_EQ] = ACTIONS(3058), [anon_sym_DASH_DASH] = ACTIONS(3058), [anon_sym_PLUS] = ACTIONS(3056), [anon_sym_PLUS_EQ] = ACTIONS(3058), [anon_sym_PLUS_PLUS] = ACTIONS(3058), [anon_sym_LT] = ACTIONS(3056), [anon_sym_LT_EQ] = ACTIONS(3058), [anon_sym_LT_LT] = ACTIONS(3056), [anon_sym_LT_LT_EQ] = ACTIONS(3058), [anon_sym_GT] = ACTIONS(3056), [anon_sym_GT_EQ] = ACTIONS(3058), [anon_sym_GT_GT_EQ] = ACTIONS(3058), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3058), [anon_sym_GT_GT] = ACTIONS(3056), [anon_sym_GT_GT_GT] = ACTIONS(3056), [anon_sym_BANG] = ACTIONS(3056), [anon_sym_BANG_EQ] = ACTIONS(3058), [anon_sym_LPAREN] = ACTIONS(3058), [anon_sym_RPAREN] = ACTIONS(3058), [anon_sym_LBRACK] = ACTIONS(3058), [anon_sym_RBRACK] = ACTIONS(3058), [anon_sym_QMARK] = ACTIONS(3058), [anon_sym_COMMA] = ACTIONS(3058), [anon_sym_SEMI] = ACTIONS(3058), [anon_sym_COLON] = ACTIONS(3058), [anon_sym_DOLLAR] = ACTIONS(3056), [anon_sym_EQ] = ACTIONS(3056), [anon_sym_EQ_EQ] = ACTIONS(3058), [anon_sym_STAR] = ACTIONS(3056), [anon_sym_STAR_EQ] = ACTIONS(3058), [anon_sym_PERCENT] = ACTIONS(3056), [anon_sym_PERCENT_EQ] = ACTIONS(3058), [anon_sym_CARET] = ACTIONS(3056), [anon_sym_CARET_EQ] = ACTIONS(3058), [anon_sym_CARET_CARET] = ACTIONS(3056), [anon_sym_CARET_CARET_EQ] = ACTIONS(3058), [anon_sym_TILDE] = ACTIONS(3056), [anon_sym_TILDE_EQ] = ACTIONS(3058), [anon_sym_AT] = ACTIONS(3058), [anon_sym_EQ_GT] = ACTIONS(3058), [anon_sym_POUND] = ACTIONS(3058), [anon_sym_BANGin] = ACTIONS(3058), [anon_sym_BANGis] = ACTIONS(3058), [sym_bool] = ACTIONS(3056), [sym_byte] = ACTIONS(3056), [sym_ubyte] = ACTIONS(3056), [sym_char] = ACTIONS(3056), [sym_short] = ACTIONS(3056), [sym_ushort] = ACTIONS(3056), [sym_int] = ACTIONS(3056), [sym_uint] = ACTIONS(3056), [sym_long] = ACTIONS(3056), [sym_ulong] = ACTIONS(3056), [sym_cent] = ACTIONS(3056), [sym_ucent] = ACTIONS(3056), [sym_wchar] = ACTIONS(3056), [sym_dchar] = ACTIONS(3056), [sym_float] = ACTIONS(3056), [sym_double] = ACTIONS(3056), [sym_real] = ACTIONS(3056), [sym_ifloat] = ACTIONS(3056), [sym_idouble] = ACTIONS(3056), [sym_ireal] = ACTIONS(3056), [sym_cfloat] = ACTIONS(3056), [sym_cdouble] = ACTIONS(3056), [sym_creal] = ACTIONS(3056), [sym_size_t] = ACTIONS(3056), [sym_ptrdiff_t] = ACTIONS(3056), [sym_string] = ACTIONS(3056), [sym_cstring] = ACTIONS(3056), [sym_dstring] = ACTIONS(3056), [sym_wstring] = ACTIONS(3056), [sym_noreturn] = ACTIONS(3056), [sym_true] = ACTIONS(3056), [sym_false] = ACTIONS(3056), [sym_null] = ACTIONS(3056), [sym_super] = ACTIONS(3056), [sym_this] = ACTIONS(3056), [sym_abstract] = ACTIONS(3056), [sym_alias] = ACTIONS(3056), [sym_align] = ACTIONS(3056), [sym_asm] = ACTIONS(3056), [sym_assert] = ACTIONS(3056), [sym_auto] = ACTIONS(3056), [sym_break] = ACTIONS(3056), [sym_case] = ACTIONS(3056), [sym_cast] = ACTIONS(3056), [sym_catch] = ACTIONS(3056), [sym_class] = ACTIONS(3056), [sym_const] = ACTIONS(3056), [sym_continue] = ACTIONS(3056), [sym_debug] = ACTIONS(3056), [sym_default] = ACTIONS(3056), [sym_delegate] = ACTIONS(3056), [sym_delete] = ACTIONS(3056), [sym_deprecated] = ACTIONS(3056), [sym_do] = ACTIONS(3056), [sym_else] = ACTIONS(3056), [sym_enum] = ACTIONS(3056), [sym_export] = ACTIONS(3056), [sym_extern] = ACTIONS(3056), [sym_final] = ACTIONS(3056), [sym_finally] = ACTIONS(3056), [sym_for] = ACTIONS(3056), [sym_foreach] = ACTIONS(3056), [sym_foreach_reverse] = ACTIONS(3056), [sym_function] = ACTIONS(3056), [sym_goto] = ACTIONS(3056), [sym_if] = ACTIONS(3056), [sym_immutable] = ACTIONS(3056), [sym_import] = ACTIONS(3056), [sym_in] = ACTIONS(3056), [sym_inout] = ACTIONS(3056), [sym_interface] = ACTIONS(3056), [sym_invariant] = ACTIONS(3056), [sym_is] = ACTIONS(3056), [sym_lazy] = ACTIONS(3056), [sym_mixin] = ACTIONS(3056), [sym_module] = ACTIONS(3056), [sym_new] = ACTIONS(3056), [sym_nothrow] = ACTIONS(3056), [sym_out] = ACTIONS(3056), [sym_override] = ACTIONS(3056), [sym_package] = ACTIONS(3056), [sym_pragma] = ACTIONS(3056), [sym_private] = ACTIONS(3056), [sym_protected] = ACTIONS(3056), [sym_public] = ACTIONS(3056), [sym_pure] = ACTIONS(3056), [sym_ref] = ACTIONS(3056), [sym_return] = ACTIONS(3056), [sym_scope] = ACTIONS(3056), [sym_shared] = ACTIONS(3056), [sym_static] = ACTIONS(3056), [sym_struct] = ACTIONS(3056), [sym_switch] = ACTIONS(3056), [sym_synchronized] = ACTIONS(3056), [sym_template] = ACTIONS(3056), [sym_throw] = ACTIONS(3056), [sym_try] = ACTIONS(3056), [sym_typeid] = ACTIONS(3056), [sym_typeof] = ACTIONS(3056), [sym_union] = ACTIONS(3056), [sym_unittest] = ACTIONS(3056), [sym_version] = ACTIONS(3056), [sym_while] = ACTIONS(3056), [sym_with] = ACTIONS(3056), [sym_parameters_] = ACTIONS(3056), [sym_gshared] = ACTIONS(3056), [sym_traits] = ACTIONS(3056), [sym_vector] = ACTIONS(3056), [sym_void] = ACTIONS(3056), [anon_sym_BQUOTE] = ACTIONS(3058), [anon_sym_r_DQUOTE] = ACTIONS(3058), [anon_sym_x_DQUOTE] = ACTIONS(3058), [anon_sym_DQUOTE] = ACTIONS(3058), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3058), [anon_sym_i_BQUOTE] = ACTIONS(3058), [anon_sym_i_DQUOTE] = ACTIONS(3058), [anon_sym_iq_LBRACE] = ACTIONS(3058), [aux_sym_char_literal_token1] = ACTIONS(3058), [anon_sym_SQUOTE] = ACTIONS(3056), [anon_sym___DATE__] = ACTIONS(3056), [anon_sym___FILE__] = ACTIONS(3056), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3056), [anon_sym___FUNCTION__] = ACTIONS(3056), [anon_sym___LINE__] = ACTIONS(3056), [anon_sym___MODULE__] = ACTIONS(3056), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3056), [anon_sym___TIME__] = ACTIONS(3056), [anon_sym___TIMESTAMP__] = ACTIONS(3056), [anon_sym___VENDOR__] = ACTIONS(3056), [anon_sym___VERSION__] = ACTIONS(3056), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3058), [sym_float_literal] = ACTIONS(3058), [sym__string] = ACTIONS(3058), }, [640] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3062), [anon_sym_RBRACE] = ACTIONS(3062), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_SLASH] = ACTIONS(3060), [anon_sym_SLASH_EQ] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3060), [anon_sym_DOT_DOT] = ACTIONS(3060), [anon_sym_DOT_DOT_DOT] = ACTIONS(3062), [anon_sym_AMP] = ACTIONS(3060), [anon_sym_AMP_EQ] = ACTIONS(3062), [anon_sym_AMP_AMP] = ACTIONS(3062), [anon_sym_PIPE] = ACTIONS(3060), [anon_sym_PIPE_EQ] = ACTIONS(3062), [anon_sym_PIPE_PIPE] = ACTIONS(3062), [anon_sym_DASH] = ACTIONS(3060), [anon_sym_DASH_EQ] = ACTIONS(3062), [anon_sym_DASH_DASH] = ACTIONS(3062), [anon_sym_PLUS] = ACTIONS(3060), [anon_sym_PLUS_EQ] = ACTIONS(3062), [anon_sym_PLUS_PLUS] = ACTIONS(3062), [anon_sym_LT] = ACTIONS(3060), [anon_sym_LT_EQ] = ACTIONS(3062), [anon_sym_LT_LT] = ACTIONS(3060), [anon_sym_LT_LT_EQ] = ACTIONS(3062), [anon_sym_GT] = ACTIONS(3060), [anon_sym_GT_EQ] = ACTIONS(3062), [anon_sym_GT_GT_EQ] = ACTIONS(3062), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3062), [anon_sym_GT_GT] = ACTIONS(3060), [anon_sym_GT_GT_GT] = ACTIONS(3060), [anon_sym_BANG] = ACTIONS(3060), [anon_sym_BANG_EQ] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_RPAREN] = ACTIONS(3062), [anon_sym_LBRACK] = ACTIONS(3062), [anon_sym_RBRACK] = ACTIONS(3062), [anon_sym_QMARK] = ACTIONS(3062), [anon_sym_COMMA] = ACTIONS(3062), [anon_sym_SEMI] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_DOLLAR] = ACTIONS(3060), [anon_sym_EQ] = ACTIONS(3060), [anon_sym_EQ_EQ] = ACTIONS(3062), [anon_sym_STAR] = ACTIONS(3060), [anon_sym_STAR_EQ] = ACTIONS(3062), [anon_sym_PERCENT] = ACTIONS(3060), [anon_sym_PERCENT_EQ] = ACTIONS(3062), [anon_sym_CARET] = ACTIONS(3060), [anon_sym_CARET_EQ] = ACTIONS(3062), [anon_sym_CARET_CARET] = ACTIONS(3060), [anon_sym_CARET_CARET_EQ] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3060), [anon_sym_TILDE_EQ] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [anon_sym_EQ_GT] = ACTIONS(3062), [anon_sym_POUND] = ACTIONS(3062), [anon_sym_BANGin] = ACTIONS(3062), [anon_sym_BANGis] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_true] = ACTIONS(3060), [sym_false] = ACTIONS(3060), [sym_null] = ACTIONS(3060), [sym_super] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_asm] = ACTIONS(3060), [sym_assert] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_break] = ACTIONS(3060), [sym_case] = ACTIONS(3060), [sym_cast] = ACTIONS(3060), [sym_catch] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_continue] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_default] = ACTIONS(3060), [sym_delegate] = ACTIONS(3060), [sym_delete] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_do] = ACTIONS(3060), [sym_else] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_finally] = ACTIONS(3060), [sym_for] = ACTIONS(3060), [sym_foreach] = ACTIONS(3060), [sym_foreach_reverse] = ACTIONS(3060), [sym_function] = ACTIONS(3060), [sym_goto] = ACTIONS(3060), [sym_if] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_in] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_is] = ACTIONS(3060), [sym_lazy] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_module] = ACTIONS(3060), [sym_new] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_out] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(3060), [sym_struct] = ACTIONS(3060), [sym_switch] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_throw] = ACTIONS(3060), [sym_try] = ACTIONS(3060), [sym_typeid] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_while] = ACTIONS(3060), [sym_with] = ACTIONS(3060), [sym_parameters_] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [anon_sym_BQUOTE] = ACTIONS(3062), [anon_sym_r_DQUOTE] = ACTIONS(3062), [anon_sym_x_DQUOTE] = ACTIONS(3062), [anon_sym_DQUOTE] = ACTIONS(3062), [anon_sym_DOLLAR_LPAREN] = ACTIONS(3062), [anon_sym_i_BQUOTE] = ACTIONS(3062), [anon_sym_i_DQUOTE] = ACTIONS(3062), [anon_sym_iq_LBRACE] = ACTIONS(3062), [aux_sym_char_literal_token1] = ACTIONS(3062), [anon_sym_SQUOTE] = ACTIONS(3060), [anon_sym___DATE__] = ACTIONS(3060), [anon_sym___FILE__] = ACTIONS(3060), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3060), [anon_sym___FUNCTION__] = ACTIONS(3060), [anon_sym___LINE__] = ACTIONS(3060), [anon_sym___MODULE__] = ACTIONS(3060), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3060), [anon_sym___TIME__] = ACTIONS(3060), [anon_sym___TIMESTAMP__] = ACTIONS(3060), [anon_sym___VENDOR__] = ACTIONS(3060), [anon_sym___VERSION__] = ACTIONS(3060), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3062), [sym_float_literal] = ACTIONS(3062), [sym__string] = ACTIONS(3062), }, [641] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3062), [anon_sym_RBRACE] = ACTIONS(3062), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_SLASH] = ACTIONS(3060), [anon_sym_SLASH_EQ] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3060), [anon_sym_DOT_DOT] = ACTIONS(3060), [anon_sym_DOT_DOT_DOT] = ACTIONS(3062), [anon_sym_AMP] = ACTIONS(3060), [anon_sym_AMP_EQ] = ACTIONS(3062), [anon_sym_AMP_AMP] = ACTIONS(3062), [anon_sym_PIPE] = ACTIONS(3060), [anon_sym_PIPE_EQ] = ACTIONS(3062), [anon_sym_PIPE_PIPE] = ACTIONS(3062), [anon_sym_DASH] = ACTIONS(3060), [anon_sym_DASH_EQ] = ACTIONS(3062), [anon_sym_DASH_DASH] = ACTIONS(3062), [anon_sym_PLUS] = ACTIONS(3060), [anon_sym_PLUS_EQ] = ACTIONS(3062), [anon_sym_PLUS_PLUS] = ACTIONS(3062), [anon_sym_LT] = ACTIONS(3060), [anon_sym_LT_EQ] = ACTIONS(3062), [anon_sym_LT_LT] = ACTIONS(3060), [anon_sym_LT_LT_EQ] = ACTIONS(3062), [anon_sym_GT] = ACTIONS(3060), [anon_sym_GT_EQ] = ACTIONS(3062), [anon_sym_GT_GT_EQ] = ACTIONS(3062), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3062), [anon_sym_GT_GT] = ACTIONS(3060), [anon_sym_GT_GT_GT] = ACTIONS(3060), [anon_sym_BANG] = ACTIONS(3060), [anon_sym_BANG_EQ] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_RPAREN] = ACTIONS(3062), [anon_sym_LBRACK] = ACTIONS(3062), [anon_sym_RBRACK] = ACTIONS(3062), [anon_sym_QMARK] = ACTIONS(3062), [anon_sym_COMMA] = ACTIONS(3062), [anon_sym_SEMI] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_DOLLAR] = ACTIONS(3062), [anon_sym_EQ] = ACTIONS(3060), [anon_sym_EQ_EQ] = ACTIONS(3062), [anon_sym_STAR] = ACTIONS(3060), [anon_sym_STAR_EQ] = ACTIONS(3062), [anon_sym_PERCENT] = ACTIONS(3060), [anon_sym_PERCENT_EQ] = ACTIONS(3062), [anon_sym_CARET] = ACTIONS(3060), [anon_sym_CARET_EQ] = ACTIONS(3062), [anon_sym_CARET_CARET] = ACTIONS(3060), [anon_sym_CARET_CARET_EQ] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3060), [anon_sym_TILDE_EQ] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [anon_sym_EQ_GT] = ACTIONS(3062), [anon_sym_POUND] = ACTIONS(3062), [anon_sym_BANGin] = ACTIONS(3062), [anon_sym_BANGis] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_true] = ACTIONS(3060), [sym_false] = ACTIONS(3060), [sym_null] = ACTIONS(3060), [sym_super] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_asm] = ACTIONS(3060), [sym_assert] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_break] = ACTIONS(3060), [sym_case] = ACTIONS(3060), [sym_cast] = ACTIONS(3060), [sym_catch] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_continue] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_default] = ACTIONS(3060), [sym_delegate] = ACTIONS(3060), [sym_delete] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_do] = ACTIONS(3060), [sym_else] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_finally] = ACTIONS(3060), [sym_for] = ACTIONS(3060), [sym_foreach] = ACTIONS(3060), [sym_foreach_reverse] = ACTIONS(3060), [sym_function] = ACTIONS(3060), [sym_goto] = ACTIONS(3060), [sym_if] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_in] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_is] = ACTIONS(3060), [sym_lazy] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_module] = ACTIONS(3060), [sym_new] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_out] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(3060), [sym_struct] = ACTIONS(3060), [sym_switch] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_throw] = ACTIONS(3060), [sym_try] = ACTIONS(3060), [sym_typeid] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_while] = ACTIONS(3060), [sym_with] = ACTIONS(3060), [sym_parameters_] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [anon_sym_BQUOTE] = ACTIONS(3062), [anon_sym_r_DQUOTE] = ACTIONS(3062), [anon_sym_x_DQUOTE] = ACTIONS(3062), [anon_sym_DQUOTE] = ACTIONS(3062), [anon_sym_i_BQUOTE] = ACTIONS(3062), [anon_sym_i_DQUOTE] = ACTIONS(3062), [anon_sym_iq_LBRACE] = ACTIONS(3062), [aux_sym_char_literal_token1] = ACTIONS(3062), [anon_sym_SQUOTE] = ACTIONS(3060), [anon_sym___DATE__] = ACTIONS(3060), [anon_sym___FILE__] = ACTIONS(3060), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3060), [anon_sym___FUNCTION__] = ACTIONS(3060), [anon_sym___LINE__] = ACTIONS(3060), [anon_sym___MODULE__] = ACTIONS(3060), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3060), [anon_sym___TIME__] = ACTIONS(3060), [anon_sym___TIMESTAMP__] = ACTIONS(3060), [anon_sym___VENDOR__] = ACTIONS(3060), [anon_sym___VERSION__] = ACTIONS(3060), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3062), [sym_float_literal] = ACTIONS(3062), [sym__string] = ACTIONS(3062), }, [642] = { [sym_identifier] = ACTIONS(2984), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2986), [anon_sym_RBRACE] = ACTIONS(2986), [anon_sym_LBRACE] = ACTIONS(2986), [anon_sym_SLASH] = ACTIONS(2984), [anon_sym_SLASH_EQ] = ACTIONS(2986), [anon_sym_DOT] = ACTIONS(2984), [anon_sym_DOT_DOT] = ACTIONS(2984), [anon_sym_DOT_DOT_DOT] = ACTIONS(2986), [anon_sym_AMP] = ACTIONS(2984), [anon_sym_AMP_EQ] = ACTIONS(2986), [anon_sym_AMP_AMP] = ACTIONS(2986), [anon_sym_PIPE] = ACTIONS(2984), [anon_sym_PIPE_EQ] = ACTIONS(2986), [anon_sym_PIPE_PIPE] = ACTIONS(2986), [anon_sym_DASH] = ACTIONS(2984), [anon_sym_DASH_EQ] = ACTIONS(2986), [anon_sym_DASH_DASH] = ACTIONS(2986), [anon_sym_PLUS] = ACTIONS(2984), [anon_sym_PLUS_EQ] = ACTIONS(2986), [anon_sym_PLUS_PLUS] = ACTIONS(2986), [anon_sym_LT] = ACTIONS(2984), [anon_sym_LT_EQ] = ACTIONS(2986), [anon_sym_LT_LT] = ACTIONS(2984), [anon_sym_LT_LT_EQ] = ACTIONS(2986), [anon_sym_GT] = ACTIONS(2984), [anon_sym_GT_EQ] = ACTIONS(2986), [anon_sym_GT_GT_EQ] = ACTIONS(2986), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2986), [anon_sym_GT_GT] = ACTIONS(2984), [anon_sym_GT_GT_GT] = ACTIONS(2984), [anon_sym_BANG] = ACTIONS(2984), [anon_sym_BANG_EQ] = ACTIONS(2986), [anon_sym_LPAREN] = ACTIONS(2986), [anon_sym_RPAREN] = ACTIONS(2986), [anon_sym_LBRACK] = ACTIONS(2986), [anon_sym_RBRACK] = ACTIONS(2986), [anon_sym_QMARK] = ACTIONS(2986), [anon_sym_COMMA] = ACTIONS(2986), [anon_sym_SEMI] = ACTIONS(2986), [anon_sym_COLON] = ACTIONS(2986), [anon_sym_DOLLAR] = ACTIONS(2986), [anon_sym_EQ] = ACTIONS(2984), [anon_sym_EQ_EQ] = ACTIONS(2986), [anon_sym_STAR] = ACTIONS(2984), [anon_sym_STAR_EQ] = ACTIONS(2986), [anon_sym_PERCENT] = ACTIONS(2984), [anon_sym_PERCENT_EQ] = ACTIONS(2986), [anon_sym_CARET] = ACTIONS(2984), [anon_sym_CARET_EQ] = ACTIONS(2986), [anon_sym_CARET_CARET] = ACTIONS(2984), [anon_sym_CARET_CARET_EQ] = ACTIONS(2986), [anon_sym_TILDE] = ACTIONS(2984), [anon_sym_TILDE_EQ] = ACTIONS(2986), [anon_sym_AT] = ACTIONS(2986), [anon_sym_EQ_GT] = ACTIONS(2986), [anon_sym_POUND] = ACTIONS(2986), [anon_sym_BANGin] = ACTIONS(2986), [anon_sym_BANGis] = ACTIONS(2986), [sym_bool] = ACTIONS(2984), [sym_byte] = ACTIONS(2984), [sym_ubyte] = ACTIONS(2984), [sym_char] = ACTIONS(2984), [sym_short] = ACTIONS(2984), [sym_ushort] = ACTIONS(2984), [sym_int] = ACTIONS(2984), [sym_uint] = ACTIONS(2984), [sym_long] = ACTIONS(2984), [sym_ulong] = ACTIONS(2984), [sym_cent] = ACTIONS(2984), [sym_ucent] = ACTIONS(2984), [sym_wchar] = ACTIONS(2984), [sym_dchar] = ACTIONS(2984), [sym_float] = ACTIONS(2984), [sym_double] = ACTIONS(2984), [sym_real] = ACTIONS(2984), [sym_ifloat] = ACTIONS(2984), [sym_idouble] = ACTIONS(2984), [sym_ireal] = ACTIONS(2984), [sym_cfloat] = ACTIONS(2984), [sym_cdouble] = ACTIONS(2984), [sym_creal] = ACTIONS(2984), [sym_size_t] = ACTIONS(2984), [sym_ptrdiff_t] = ACTIONS(2984), [sym_string] = ACTIONS(2984), [sym_cstring] = ACTIONS(2984), [sym_dstring] = ACTIONS(2984), [sym_wstring] = ACTIONS(2984), [sym_noreturn] = ACTIONS(2984), [sym_true] = ACTIONS(2984), [sym_false] = ACTIONS(2984), [sym_null] = ACTIONS(2984), [sym_super] = ACTIONS(2984), [sym_this] = ACTIONS(2984), [sym_abstract] = ACTIONS(2984), [sym_alias] = ACTIONS(2984), [sym_align] = ACTIONS(2984), [sym_asm] = ACTIONS(2984), [sym_assert] = ACTIONS(2984), [sym_auto] = ACTIONS(2984), [sym_break] = ACTIONS(2984), [sym_case] = ACTIONS(2984), [sym_cast] = ACTIONS(2984), [sym_catch] = ACTIONS(2984), [sym_class] = ACTIONS(2984), [sym_const] = ACTIONS(2984), [sym_continue] = ACTIONS(2984), [sym_debug] = ACTIONS(2984), [sym_default] = ACTIONS(2984), [sym_delegate] = ACTIONS(2984), [sym_delete] = ACTIONS(2984), [sym_deprecated] = ACTIONS(2984), [sym_do] = ACTIONS(2984), [sym_else] = ACTIONS(2984), [sym_enum] = ACTIONS(2984), [sym_export] = ACTIONS(2984), [sym_extern] = ACTIONS(2984), [sym_final] = ACTIONS(2984), [sym_finally] = ACTIONS(2984), [sym_for] = ACTIONS(2984), [sym_foreach] = ACTIONS(2984), [sym_foreach_reverse] = ACTIONS(2984), [sym_function] = ACTIONS(2984), [sym_goto] = ACTIONS(2984), [sym_if] = ACTIONS(2984), [sym_immutable] = ACTIONS(2984), [sym_import] = ACTIONS(2984), [sym_in] = ACTIONS(2984), [sym_inout] = ACTIONS(2984), [sym_interface] = ACTIONS(2984), [sym_invariant] = ACTIONS(2984), [sym_is] = ACTIONS(2984), [sym_lazy] = ACTIONS(2984), [sym_mixin] = ACTIONS(2984), [sym_module] = ACTIONS(2984), [sym_new] = ACTIONS(2984), [sym_nothrow] = ACTIONS(2984), [sym_out] = ACTIONS(2984), [sym_override] = ACTIONS(2984), [sym_package] = ACTIONS(2984), [sym_pragma] = ACTIONS(2984), [sym_private] = ACTIONS(2984), [sym_protected] = ACTIONS(2984), [sym_public] = ACTIONS(2984), [sym_pure] = ACTIONS(2984), [sym_ref] = ACTIONS(2984), [sym_return] = ACTIONS(2984), [sym_scope] = ACTIONS(2984), [sym_shared] = ACTIONS(2984), [sym_static] = ACTIONS(2984), [sym_struct] = ACTIONS(2984), [sym_switch] = ACTIONS(2984), [sym_synchronized] = ACTIONS(2984), [sym_template] = ACTIONS(2984), [sym_throw] = ACTIONS(2984), [sym_try] = ACTIONS(2984), [sym_typeid] = ACTIONS(2984), [sym_typeof] = ACTIONS(2984), [sym_union] = ACTIONS(2984), [sym_unittest] = ACTIONS(2984), [sym_version] = ACTIONS(2984), [sym_while] = ACTIONS(2984), [sym_with] = ACTIONS(2984), [sym_parameters_] = ACTIONS(2984), [sym_gshared] = ACTIONS(2984), [sym_traits] = ACTIONS(2984), [sym_vector] = ACTIONS(2984), [sym_void] = ACTIONS(2984), [anon_sym_BQUOTE] = ACTIONS(2986), [anon_sym_r_DQUOTE] = ACTIONS(2986), [anon_sym_x_DQUOTE] = ACTIONS(2986), [anon_sym_DQUOTE] = ACTIONS(2986), [anon_sym_i_BQUOTE] = ACTIONS(2986), [anon_sym_i_DQUOTE] = ACTIONS(2986), [anon_sym_iq_LBRACE] = ACTIONS(2986), [aux_sym_char_literal_token1] = ACTIONS(2986), [anon_sym_SQUOTE] = ACTIONS(2984), [anon_sym___DATE__] = ACTIONS(2984), [anon_sym___FILE__] = ACTIONS(2984), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2984), [anon_sym___FUNCTION__] = ACTIONS(2984), [anon_sym___LINE__] = ACTIONS(2984), [anon_sym___MODULE__] = ACTIONS(2984), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2984), [anon_sym___TIME__] = ACTIONS(2984), [anon_sym___TIMESTAMP__] = ACTIONS(2984), [anon_sym___VENDOR__] = ACTIONS(2984), [anon_sym___VERSION__] = ACTIONS(2984), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2986), [sym_float_literal] = ACTIONS(2986), [sym__string] = ACTIONS(2986), }, [643] = { [sym_identifier] = ACTIONS(3008), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3010), [anon_sym_RBRACE] = ACTIONS(3010), [anon_sym_LBRACE] = ACTIONS(3010), [anon_sym_SLASH] = ACTIONS(3008), [anon_sym_SLASH_EQ] = ACTIONS(3010), [anon_sym_DOT] = ACTIONS(3008), [anon_sym_DOT_DOT] = ACTIONS(3008), [anon_sym_DOT_DOT_DOT] = ACTIONS(3010), [anon_sym_AMP] = ACTIONS(3008), [anon_sym_AMP_EQ] = ACTIONS(3010), [anon_sym_AMP_AMP] = ACTIONS(3010), [anon_sym_PIPE] = ACTIONS(3008), [anon_sym_PIPE_EQ] = ACTIONS(3010), [anon_sym_PIPE_PIPE] = ACTIONS(3010), [anon_sym_DASH] = ACTIONS(3008), [anon_sym_DASH_EQ] = ACTIONS(3010), [anon_sym_DASH_DASH] = ACTIONS(3010), [anon_sym_PLUS] = ACTIONS(3008), [anon_sym_PLUS_EQ] = ACTIONS(3010), [anon_sym_PLUS_PLUS] = ACTIONS(3010), [anon_sym_LT] = ACTIONS(3008), [anon_sym_LT_EQ] = ACTIONS(3010), [anon_sym_LT_LT] = ACTIONS(3008), [anon_sym_LT_LT_EQ] = ACTIONS(3010), [anon_sym_GT] = ACTIONS(3008), [anon_sym_GT_EQ] = ACTIONS(3010), [anon_sym_GT_GT_EQ] = ACTIONS(3010), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3010), [anon_sym_GT_GT] = ACTIONS(3008), [anon_sym_GT_GT_GT] = ACTIONS(3008), [anon_sym_BANG] = ACTIONS(3008), [anon_sym_BANG_EQ] = ACTIONS(3010), [anon_sym_LPAREN] = ACTIONS(3010), [anon_sym_RPAREN] = ACTIONS(3010), [anon_sym_LBRACK] = ACTIONS(3010), [anon_sym_RBRACK] = ACTIONS(3010), [anon_sym_QMARK] = ACTIONS(3010), [anon_sym_COMMA] = ACTIONS(3010), [anon_sym_SEMI] = ACTIONS(3010), [anon_sym_COLON] = ACTIONS(3010), [anon_sym_DOLLAR] = ACTIONS(3010), [anon_sym_EQ] = ACTIONS(3008), [anon_sym_EQ_EQ] = ACTIONS(3010), [anon_sym_STAR] = ACTIONS(3008), [anon_sym_STAR_EQ] = ACTIONS(3010), [anon_sym_PERCENT] = ACTIONS(3008), [anon_sym_PERCENT_EQ] = ACTIONS(3010), [anon_sym_CARET] = ACTIONS(3008), [anon_sym_CARET_EQ] = ACTIONS(3010), [anon_sym_CARET_CARET] = ACTIONS(3008), [anon_sym_CARET_CARET_EQ] = ACTIONS(3010), [anon_sym_TILDE] = ACTIONS(3008), [anon_sym_TILDE_EQ] = ACTIONS(3010), [anon_sym_AT] = ACTIONS(3010), [anon_sym_EQ_GT] = ACTIONS(3010), [anon_sym_POUND] = ACTIONS(3010), [anon_sym_BANGin] = ACTIONS(3010), [anon_sym_BANGis] = ACTIONS(3010), [sym_bool] = ACTIONS(3008), [sym_byte] = ACTIONS(3008), [sym_ubyte] = ACTIONS(3008), [sym_char] = ACTIONS(3008), [sym_short] = ACTIONS(3008), [sym_ushort] = ACTIONS(3008), [sym_int] = ACTIONS(3008), [sym_uint] = ACTIONS(3008), [sym_long] = ACTIONS(3008), [sym_ulong] = ACTIONS(3008), [sym_cent] = ACTIONS(3008), [sym_ucent] = ACTIONS(3008), [sym_wchar] = ACTIONS(3008), [sym_dchar] = ACTIONS(3008), [sym_float] = ACTIONS(3008), [sym_double] = ACTIONS(3008), [sym_real] = ACTIONS(3008), [sym_ifloat] = ACTIONS(3008), [sym_idouble] = ACTIONS(3008), [sym_ireal] = ACTIONS(3008), [sym_cfloat] = ACTIONS(3008), [sym_cdouble] = ACTIONS(3008), [sym_creal] = ACTIONS(3008), [sym_size_t] = ACTIONS(3008), [sym_ptrdiff_t] = ACTIONS(3008), [sym_string] = ACTIONS(3008), [sym_cstring] = ACTIONS(3008), [sym_dstring] = ACTIONS(3008), [sym_wstring] = ACTIONS(3008), [sym_noreturn] = ACTIONS(3008), [sym_true] = ACTIONS(3008), [sym_false] = ACTIONS(3008), [sym_null] = ACTIONS(3008), [sym_super] = ACTIONS(3008), [sym_this] = ACTIONS(3008), [sym_abstract] = ACTIONS(3008), [sym_alias] = ACTIONS(3008), [sym_align] = ACTIONS(3008), [sym_asm] = ACTIONS(3008), [sym_assert] = ACTIONS(3008), [sym_auto] = ACTIONS(3008), [sym_break] = ACTIONS(3008), [sym_case] = ACTIONS(3008), [sym_cast] = ACTIONS(3008), [sym_catch] = ACTIONS(3008), [sym_class] = ACTIONS(3008), [sym_const] = ACTIONS(3008), [sym_continue] = ACTIONS(3008), [sym_debug] = ACTIONS(3008), [sym_default] = ACTIONS(3008), [sym_delegate] = ACTIONS(3008), [sym_delete] = ACTIONS(3008), [sym_deprecated] = ACTIONS(3008), [sym_do] = ACTIONS(3008), [sym_else] = ACTIONS(3008), [sym_enum] = ACTIONS(3008), [sym_export] = ACTIONS(3008), [sym_extern] = ACTIONS(3008), [sym_final] = ACTIONS(3008), [sym_finally] = ACTIONS(3008), [sym_for] = ACTIONS(3008), [sym_foreach] = ACTIONS(3008), [sym_foreach_reverse] = ACTIONS(3008), [sym_function] = ACTIONS(3008), [sym_goto] = ACTIONS(3008), [sym_if] = ACTIONS(3008), [sym_immutable] = ACTIONS(3008), [sym_import] = ACTIONS(3008), [sym_in] = ACTIONS(3008), [sym_inout] = ACTIONS(3008), [sym_interface] = ACTIONS(3008), [sym_invariant] = ACTIONS(3008), [sym_is] = ACTIONS(3008), [sym_lazy] = ACTIONS(3008), [sym_mixin] = ACTIONS(3008), [sym_module] = ACTIONS(3008), [sym_new] = ACTIONS(3008), [sym_nothrow] = ACTIONS(3008), [sym_out] = ACTIONS(3008), [sym_override] = ACTIONS(3008), [sym_package] = ACTIONS(3008), [sym_pragma] = ACTIONS(3008), [sym_private] = ACTIONS(3008), [sym_protected] = ACTIONS(3008), [sym_public] = ACTIONS(3008), [sym_pure] = ACTIONS(3008), [sym_ref] = ACTIONS(3008), [sym_return] = ACTIONS(3008), [sym_scope] = ACTIONS(3008), [sym_shared] = ACTIONS(3008), [sym_static] = ACTIONS(3008), [sym_struct] = ACTIONS(3008), [sym_switch] = ACTIONS(3008), [sym_synchronized] = ACTIONS(3008), [sym_template] = ACTIONS(3008), [sym_throw] = ACTIONS(3008), [sym_try] = ACTIONS(3008), [sym_typeid] = ACTIONS(3008), [sym_typeof] = ACTIONS(3008), [sym_union] = ACTIONS(3008), [sym_unittest] = ACTIONS(3008), [sym_version] = ACTIONS(3008), [sym_while] = ACTIONS(3008), [sym_with] = ACTIONS(3008), [sym_parameters_] = ACTIONS(3008), [sym_gshared] = ACTIONS(3008), [sym_traits] = ACTIONS(3008), [sym_vector] = ACTIONS(3008), [sym_void] = ACTIONS(3008), [anon_sym_BQUOTE] = ACTIONS(3010), [anon_sym_r_DQUOTE] = ACTIONS(3010), [anon_sym_x_DQUOTE] = ACTIONS(3010), [anon_sym_DQUOTE] = ACTIONS(3010), [anon_sym_i_BQUOTE] = ACTIONS(3010), [anon_sym_i_DQUOTE] = ACTIONS(3010), [anon_sym_iq_LBRACE] = ACTIONS(3010), [aux_sym_char_literal_token1] = ACTIONS(3010), [anon_sym_SQUOTE] = ACTIONS(3008), [anon_sym___DATE__] = ACTIONS(3008), [anon_sym___FILE__] = ACTIONS(3008), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3008), [anon_sym___FUNCTION__] = ACTIONS(3008), [anon_sym___LINE__] = ACTIONS(3008), [anon_sym___MODULE__] = ACTIONS(3008), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3008), [anon_sym___TIME__] = ACTIONS(3008), [anon_sym___TIMESTAMP__] = ACTIONS(3008), [anon_sym___VENDOR__] = ACTIONS(3008), [anon_sym___VERSION__] = ACTIONS(3008), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3010), [sym_float_literal] = ACTIONS(3010), [sym__string] = ACTIONS(3010), }, [644] = { [sym_identifier] = ACTIONS(3004), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3006), [anon_sym_RBRACE] = ACTIONS(3006), [anon_sym_LBRACE] = ACTIONS(3006), [anon_sym_SLASH] = ACTIONS(3004), [anon_sym_SLASH_EQ] = ACTIONS(3006), [anon_sym_DOT] = ACTIONS(3004), [anon_sym_DOT_DOT] = ACTIONS(3004), [anon_sym_DOT_DOT_DOT] = ACTIONS(3006), [anon_sym_AMP] = ACTIONS(3004), [anon_sym_AMP_EQ] = ACTIONS(3006), [anon_sym_AMP_AMP] = ACTIONS(3006), [anon_sym_PIPE] = ACTIONS(3004), [anon_sym_PIPE_EQ] = ACTIONS(3006), [anon_sym_PIPE_PIPE] = ACTIONS(3006), [anon_sym_DASH] = ACTIONS(3004), [anon_sym_DASH_EQ] = ACTIONS(3006), [anon_sym_DASH_DASH] = ACTIONS(3006), [anon_sym_PLUS] = ACTIONS(3004), [anon_sym_PLUS_EQ] = ACTIONS(3006), [anon_sym_PLUS_PLUS] = ACTIONS(3006), [anon_sym_LT] = ACTIONS(3004), [anon_sym_LT_EQ] = ACTIONS(3006), [anon_sym_LT_LT] = ACTIONS(3004), [anon_sym_LT_LT_EQ] = ACTIONS(3006), [anon_sym_GT] = ACTIONS(3004), [anon_sym_GT_EQ] = ACTIONS(3006), [anon_sym_GT_GT_EQ] = ACTIONS(3006), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3006), [anon_sym_GT_GT] = ACTIONS(3004), [anon_sym_GT_GT_GT] = ACTIONS(3004), [anon_sym_BANG] = ACTIONS(3004), [anon_sym_BANG_EQ] = ACTIONS(3006), [anon_sym_LPAREN] = ACTIONS(3006), [anon_sym_RPAREN] = ACTIONS(3006), [anon_sym_LBRACK] = ACTIONS(3006), [anon_sym_RBRACK] = ACTIONS(3006), [anon_sym_QMARK] = ACTIONS(3006), [anon_sym_COMMA] = ACTIONS(3006), [anon_sym_SEMI] = ACTIONS(3006), [anon_sym_COLON] = ACTIONS(3006), [anon_sym_DOLLAR] = ACTIONS(3006), [anon_sym_EQ] = ACTIONS(3004), [anon_sym_EQ_EQ] = ACTIONS(3006), [anon_sym_STAR] = ACTIONS(3004), [anon_sym_STAR_EQ] = ACTIONS(3006), [anon_sym_PERCENT] = ACTIONS(3004), [anon_sym_PERCENT_EQ] = ACTIONS(3006), [anon_sym_CARET] = ACTIONS(3004), [anon_sym_CARET_EQ] = ACTIONS(3006), [anon_sym_CARET_CARET] = ACTIONS(3004), [anon_sym_CARET_CARET_EQ] = ACTIONS(3006), [anon_sym_TILDE] = ACTIONS(3004), [anon_sym_TILDE_EQ] = ACTIONS(3006), [anon_sym_AT] = ACTIONS(3006), [anon_sym_EQ_GT] = ACTIONS(3006), [anon_sym_POUND] = ACTIONS(3006), [anon_sym_BANGin] = ACTIONS(3006), [anon_sym_BANGis] = ACTIONS(3006), [sym_bool] = ACTIONS(3004), [sym_byte] = ACTIONS(3004), [sym_ubyte] = ACTIONS(3004), [sym_char] = ACTIONS(3004), [sym_short] = ACTIONS(3004), [sym_ushort] = ACTIONS(3004), [sym_int] = ACTIONS(3004), [sym_uint] = ACTIONS(3004), [sym_long] = ACTIONS(3004), [sym_ulong] = ACTIONS(3004), [sym_cent] = ACTIONS(3004), [sym_ucent] = ACTIONS(3004), [sym_wchar] = ACTIONS(3004), [sym_dchar] = ACTIONS(3004), [sym_float] = ACTIONS(3004), [sym_double] = ACTIONS(3004), [sym_real] = ACTIONS(3004), [sym_ifloat] = ACTIONS(3004), [sym_idouble] = ACTIONS(3004), [sym_ireal] = ACTIONS(3004), [sym_cfloat] = ACTIONS(3004), [sym_cdouble] = ACTIONS(3004), [sym_creal] = ACTIONS(3004), [sym_size_t] = ACTIONS(3004), [sym_ptrdiff_t] = ACTIONS(3004), [sym_string] = ACTIONS(3004), [sym_cstring] = ACTIONS(3004), [sym_dstring] = ACTIONS(3004), [sym_wstring] = ACTIONS(3004), [sym_noreturn] = ACTIONS(3004), [sym_true] = ACTIONS(3004), [sym_false] = ACTIONS(3004), [sym_null] = ACTIONS(3004), [sym_super] = ACTIONS(3004), [sym_this] = ACTIONS(3004), [sym_abstract] = ACTIONS(3004), [sym_alias] = ACTIONS(3004), [sym_align] = ACTIONS(3004), [sym_asm] = ACTIONS(3004), [sym_assert] = ACTIONS(3004), [sym_auto] = ACTIONS(3004), [sym_break] = ACTIONS(3004), [sym_case] = ACTIONS(3004), [sym_cast] = ACTIONS(3004), [sym_catch] = ACTIONS(3004), [sym_class] = ACTIONS(3004), [sym_const] = ACTIONS(3004), [sym_continue] = ACTIONS(3004), [sym_debug] = ACTIONS(3004), [sym_default] = ACTIONS(3004), [sym_delegate] = ACTIONS(3004), [sym_delete] = ACTIONS(3004), [sym_deprecated] = ACTIONS(3004), [sym_do] = ACTIONS(3004), [sym_else] = ACTIONS(3004), [sym_enum] = ACTIONS(3004), [sym_export] = ACTIONS(3004), [sym_extern] = ACTIONS(3004), [sym_final] = ACTIONS(3004), [sym_finally] = ACTIONS(3004), [sym_for] = ACTIONS(3004), [sym_foreach] = ACTIONS(3004), [sym_foreach_reverse] = ACTIONS(3004), [sym_function] = ACTIONS(3004), [sym_goto] = ACTIONS(3004), [sym_if] = ACTIONS(3004), [sym_immutable] = ACTIONS(3004), [sym_import] = ACTIONS(3004), [sym_in] = ACTIONS(3004), [sym_inout] = ACTIONS(3004), [sym_interface] = ACTIONS(3004), [sym_invariant] = ACTIONS(3004), [sym_is] = ACTIONS(3004), [sym_lazy] = ACTIONS(3004), [sym_mixin] = ACTIONS(3004), [sym_module] = ACTIONS(3004), [sym_new] = ACTIONS(3004), [sym_nothrow] = ACTIONS(3004), [sym_out] = ACTIONS(3004), [sym_override] = ACTIONS(3004), [sym_package] = ACTIONS(3004), [sym_pragma] = ACTIONS(3004), [sym_private] = ACTIONS(3004), [sym_protected] = ACTIONS(3004), [sym_public] = ACTIONS(3004), [sym_pure] = ACTIONS(3004), [sym_ref] = ACTIONS(3004), [sym_return] = ACTIONS(3004), [sym_scope] = ACTIONS(3004), [sym_shared] = ACTIONS(3004), [sym_static] = ACTIONS(3004), [sym_struct] = ACTIONS(3004), [sym_switch] = ACTIONS(3004), [sym_synchronized] = ACTIONS(3004), [sym_template] = ACTIONS(3004), [sym_throw] = ACTIONS(3004), [sym_try] = ACTIONS(3004), [sym_typeid] = ACTIONS(3004), [sym_typeof] = ACTIONS(3004), [sym_union] = ACTIONS(3004), [sym_unittest] = ACTIONS(3004), [sym_version] = ACTIONS(3004), [sym_while] = ACTIONS(3004), [sym_with] = ACTIONS(3004), [sym_parameters_] = ACTIONS(3004), [sym_gshared] = ACTIONS(3004), [sym_traits] = ACTIONS(3004), [sym_vector] = ACTIONS(3004), [sym_void] = ACTIONS(3004), [anon_sym_BQUOTE] = ACTIONS(3006), [anon_sym_r_DQUOTE] = ACTIONS(3006), [anon_sym_x_DQUOTE] = ACTIONS(3006), [anon_sym_DQUOTE] = ACTIONS(3006), [anon_sym_i_BQUOTE] = ACTIONS(3006), [anon_sym_i_DQUOTE] = ACTIONS(3006), [anon_sym_iq_LBRACE] = ACTIONS(3006), [aux_sym_char_literal_token1] = ACTIONS(3006), [anon_sym_SQUOTE] = ACTIONS(3004), [anon_sym___DATE__] = ACTIONS(3004), [anon_sym___FILE__] = ACTIONS(3004), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3004), [anon_sym___FUNCTION__] = ACTIONS(3004), [anon_sym___LINE__] = ACTIONS(3004), [anon_sym___MODULE__] = ACTIONS(3004), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3004), [anon_sym___TIME__] = ACTIONS(3004), [anon_sym___TIMESTAMP__] = ACTIONS(3004), [anon_sym___VENDOR__] = ACTIONS(3004), [anon_sym___VERSION__] = ACTIONS(3004), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3006), [sym_float_literal] = ACTIONS(3006), [sym__string] = ACTIONS(3006), }, [645] = { [sym_identifier] = ACTIONS(2988), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2990), [anon_sym_RBRACE] = ACTIONS(2990), [anon_sym_LBRACE] = ACTIONS(2990), [anon_sym_SLASH] = ACTIONS(2988), [anon_sym_SLASH_EQ] = ACTIONS(2990), [anon_sym_DOT] = ACTIONS(2988), [anon_sym_DOT_DOT] = ACTIONS(2988), [anon_sym_DOT_DOT_DOT] = ACTIONS(2990), [anon_sym_AMP] = ACTIONS(2988), [anon_sym_AMP_EQ] = ACTIONS(2990), [anon_sym_AMP_AMP] = ACTIONS(2990), [anon_sym_PIPE] = ACTIONS(2988), [anon_sym_PIPE_EQ] = ACTIONS(2990), [anon_sym_PIPE_PIPE] = ACTIONS(2990), [anon_sym_DASH] = ACTIONS(2988), [anon_sym_DASH_EQ] = ACTIONS(2990), [anon_sym_DASH_DASH] = ACTIONS(2990), [anon_sym_PLUS] = ACTIONS(2988), [anon_sym_PLUS_EQ] = ACTIONS(2990), [anon_sym_PLUS_PLUS] = ACTIONS(2990), [anon_sym_LT] = ACTIONS(2988), [anon_sym_LT_EQ] = ACTIONS(2990), [anon_sym_LT_LT] = ACTIONS(2988), [anon_sym_LT_LT_EQ] = ACTIONS(2990), [anon_sym_GT] = ACTIONS(2988), [anon_sym_GT_EQ] = ACTIONS(2990), [anon_sym_GT_GT_EQ] = ACTIONS(2990), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2990), [anon_sym_GT_GT] = ACTIONS(2988), [anon_sym_GT_GT_GT] = ACTIONS(2988), [anon_sym_BANG] = ACTIONS(2988), [anon_sym_BANG_EQ] = ACTIONS(2990), [anon_sym_LPAREN] = ACTIONS(2990), [anon_sym_RPAREN] = ACTIONS(2990), [anon_sym_LBRACK] = ACTIONS(2990), [anon_sym_RBRACK] = ACTIONS(2990), [anon_sym_QMARK] = ACTIONS(2990), [anon_sym_COMMA] = ACTIONS(2990), [anon_sym_SEMI] = ACTIONS(2990), [anon_sym_COLON] = ACTIONS(2990), [anon_sym_DOLLAR] = ACTIONS(2990), [anon_sym_EQ] = ACTIONS(2988), [anon_sym_EQ_EQ] = ACTIONS(2990), [anon_sym_STAR] = ACTIONS(2988), [anon_sym_STAR_EQ] = ACTIONS(2990), [anon_sym_PERCENT] = ACTIONS(2988), [anon_sym_PERCENT_EQ] = ACTIONS(2990), [anon_sym_CARET] = ACTIONS(2988), [anon_sym_CARET_EQ] = ACTIONS(2990), [anon_sym_CARET_CARET] = ACTIONS(2988), [anon_sym_CARET_CARET_EQ] = ACTIONS(2990), [anon_sym_TILDE] = ACTIONS(2988), [anon_sym_TILDE_EQ] = ACTIONS(2990), [anon_sym_AT] = ACTIONS(2990), [anon_sym_EQ_GT] = ACTIONS(2990), [anon_sym_POUND] = ACTIONS(2990), [anon_sym_BANGin] = ACTIONS(2990), [anon_sym_BANGis] = ACTIONS(2990), [sym_bool] = ACTIONS(2988), [sym_byte] = ACTIONS(2988), [sym_ubyte] = ACTIONS(2988), [sym_char] = ACTIONS(2988), [sym_short] = ACTIONS(2988), [sym_ushort] = ACTIONS(2988), [sym_int] = ACTIONS(2988), [sym_uint] = ACTIONS(2988), [sym_long] = ACTIONS(2988), [sym_ulong] = ACTIONS(2988), [sym_cent] = ACTIONS(2988), [sym_ucent] = ACTIONS(2988), [sym_wchar] = ACTIONS(2988), [sym_dchar] = ACTIONS(2988), [sym_float] = ACTIONS(2988), [sym_double] = ACTIONS(2988), [sym_real] = ACTIONS(2988), [sym_ifloat] = ACTIONS(2988), [sym_idouble] = ACTIONS(2988), [sym_ireal] = ACTIONS(2988), [sym_cfloat] = ACTIONS(2988), [sym_cdouble] = ACTIONS(2988), [sym_creal] = ACTIONS(2988), [sym_size_t] = ACTIONS(2988), [sym_ptrdiff_t] = ACTIONS(2988), [sym_string] = ACTIONS(2988), [sym_cstring] = ACTIONS(2988), [sym_dstring] = ACTIONS(2988), [sym_wstring] = ACTIONS(2988), [sym_noreturn] = ACTIONS(2988), [sym_true] = ACTIONS(2988), [sym_false] = ACTIONS(2988), [sym_null] = ACTIONS(2988), [sym_super] = ACTIONS(2988), [sym_this] = ACTIONS(2988), [sym_abstract] = ACTIONS(2988), [sym_alias] = ACTIONS(2988), [sym_align] = ACTIONS(2988), [sym_asm] = ACTIONS(2988), [sym_assert] = ACTIONS(2988), [sym_auto] = ACTIONS(2988), [sym_break] = ACTIONS(2988), [sym_case] = ACTIONS(2988), [sym_cast] = ACTIONS(2988), [sym_catch] = ACTIONS(2988), [sym_class] = ACTIONS(2988), [sym_const] = ACTIONS(2988), [sym_continue] = ACTIONS(2988), [sym_debug] = ACTIONS(2988), [sym_default] = ACTIONS(2988), [sym_delegate] = ACTIONS(2988), [sym_delete] = ACTIONS(2988), [sym_deprecated] = ACTIONS(2988), [sym_do] = ACTIONS(2988), [sym_else] = ACTIONS(2988), [sym_enum] = ACTIONS(2988), [sym_export] = ACTIONS(2988), [sym_extern] = ACTIONS(2988), [sym_final] = ACTIONS(2988), [sym_finally] = ACTIONS(2988), [sym_for] = ACTIONS(2988), [sym_foreach] = ACTIONS(2988), [sym_foreach_reverse] = ACTIONS(2988), [sym_function] = ACTIONS(2988), [sym_goto] = ACTIONS(2988), [sym_if] = ACTIONS(2988), [sym_immutable] = ACTIONS(2988), [sym_import] = ACTIONS(2988), [sym_in] = ACTIONS(2988), [sym_inout] = ACTIONS(2988), [sym_interface] = ACTIONS(2988), [sym_invariant] = ACTIONS(2988), [sym_is] = ACTIONS(2988), [sym_lazy] = ACTIONS(2988), [sym_mixin] = ACTIONS(2988), [sym_module] = ACTIONS(2988), [sym_new] = ACTIONS(2988), [sym_nothrow] = ACTIONS(2988), [sym_out] = ACTIONS(2988), [sym_override] = ACTIONS(2988), [sym_package] = ACTIONS(2988), [sym_pragma] = ACTIONS(2988), [sym_private] = ACTIONS(2988), [sym_protected] = ACTIONS(2988), [sym_public] = ACTIONS(2988), [sym_pure] = ACTIONS(2988), [sym_ref] = ACTIONS(2988), [sym_return] = ACTIONS(2988), [sym_scope] = ACTIONS(2988), [sym_shared] = ACTIONS(2988), [sym_static] = ACTIONS(2988), [sym_struct] = ACTIONS(2988), [sym_switch] = ACTIONS(2988), [sym_synchronized] = ACTIONS(2988), [sym_template] = ACTIONS(2988), [sym_throw] = ACTIONS(2988), [sym_try] = ACTIONS(2988), [sym_typeid] = ACTIONS(2988), [sym_typeof] = ACTIONS(2988), [sym_union] = ACTIONS(2988), [sym_unittest] = ACTIONS(2988), [sym_version] = ACTIONS(2988), [sym_while] = ACTIONS(2988), [sym_with] = ACTIONS(2988), [sym_parameters_] = ACTIONS(2988), [sym_gshared] = ACTIONS(2988), [sym_traits] = ACTIONS(2988), [sym_vector] = ACTIONS(2988), [sym_void] = ACTIONS(2988), [anon_sym_BQUOTE] = ACTIONS(2990), [anon_sym_r_DQUOTE] = ACTIONS(2990), [anon_sym_x_DQUOTE] = ACTIONS(2990), [anon_sym_DQUOTE] = ACTIONS(2990), [anon_sym_i_BQUOTE] = ACTIONS(2990), [anon_sym_i_DQUOTE] = ACTIONS(2990), [anon_sym_iq_LBRACE] = ACTIONS(2990), [aux_sym_char_literal_token1] = ACTIONS(2990), [anon_sym_SQUOTE] = ACTIONS(2988), [anon_sym___DATE__] = ACTIONS(2988), [anon_sym___FILE__] = ACTIONS(2988), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2988), [anon_sym___FUNCTION__] = ACTIONS(2988), [anon_sym___LINE__] = ACTIONS(2988), [anon_sym___MODULE__] = ACTIONS(2988), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2988), [anon_sym___TIME__] = ACTIONS(2988), [anon_sym___TIMESTAMP__] = ACTIONS(2988), [anon_sym___VENDOR__] = ACTIONS(2988), [anon_sym___VERSION__] = ACTIONS(2988), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2990), [sym_float_literal] = ACTIONS(2990), [sym__string] = ACTIONS(2990), }, [646] = { [sym_identifier] = ACTIONS(3036), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3038), [anon_sym_RBRACE] = ACTIONS(3038), [anon_sym_LBRACE] = ACTIONS(3038), [anon_sym_SLASH] = ACTIONS(3036), [anon_sym_SLASH_EQ] = ACTIONS(3038), [anon_sym_DOT] = ACTIONS(3036), [anon_sym_DOT_DOT] = ACTIONS(3036), [anon_sym_DOT_DOT_DOT] = ACTIONS(3038), [anon_sym_AMP] = ACTIONS(3036), [anon_sym_AMP_EQ] = ACTIONS(3038), [anon_sym_AMP_AMP] = ACTIONS(3038), [anon_sym_PIPE] = ACTIONS(3036), [anon_sym_PIPE_EQ] = ACTIONS(3038), [anon_sym_PIPE_PIPE] = ACTIONS(3038), [anon_sym_DASH] = ACTIONS(3036), [anon_sym_DASH_EQ] = ACTIONS(3038), [anon_sym_DASH_DASH] = ACTIONS(3038), [anon_sym_PLUS] = ACTIONS(3036), [anon_sym_PLUS_EQ] = ACTIONS(3038), [anon_sym_PLUS_PLUS] = ACTIONS(3038), [anon_sym_LT] = ACTIONS(3036), [anon_sym_LT_EQ] = ACTIONS(3038), [anon_sym_LT_LT] = ACTIONS(3036), [anon_sym_LT_LT_EQ] = ACTIONS(3038), [anon_sym_GT] = ACTIONS(3036), [anon_sym_GT_EQ] = ACTIONS(3038), [anon_sym_GT_GT_EQ] = ACTIONS(3038), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3038), [anon_sym_GT_GT] = ACTIONS(3036), [anon_sym_GT_GT_GT] = ACTIONS(3036), [anon_sym_BANG] = ACTIONS(3036), [anon_sym_BANG_EQ] = ACTIONS(3038), [anon_sym_LPAREN] = ACTIONS(3038), [anon_sym_RPAREN] = ACTIONS(3038), [anon_sym_LBRACK] = ACTIONS(3038), [anon_sym_RBRACK] = ACTIONS(3038), [anon_sym_QMARK] = ACTIONS(3038), [anon_sym_COMMA] = ACTIONS(3038), [anon_sym_SEMI] = ACTIONS(3038), [anon_sym_COLON] = ACTIONS(3038), [anon_sym_DOLLAR] = ACTIONS(3038), [anon_sym_EQ] = ACTIONS(3036), [anon_sym_EQ_EQ] = ACTIONS(3038), [anon_sym_STAR] = ACTIONS(3036), [anon_sym_STAR_EQ] = ACTIONS(3038), [anon_sym_PERCENT] = ACTIONS(3036), [anon_sym_PERCENT_EQ] = ACTIONS(3038), [anon_sym_CARET] = ACTIONS(3036), [anon_sym_CARET_EQ] = ACTIONS(3038), [anon_sym_CARET_CARET] = ACTIONS(3036), [anon_sym_CARET_CARET_EQ] = ACTIONS(3038), [anon_sym_TILDE] = ACTIONS(3036), [anon_sym_TILDE_EQ] = ACTIONS(3038), [anon_sym_AT] = ACTIONS(3038), [anon_sym_EQ_GT] = ACTIONS(3038), [anon_sym_POUND] = ACTIONS(3038), [anon_sym_BANGin] = ACTIONS(3038), [anon_sym_BANGis] = ACTIONS(3038), [sym_bool] = ACTIONS(3036), [sym_byte] = ACTIONS(3036), [sym_ubyte] = ACTIONS(3036), [sym_char] = ACTIONS(3036), [sym_short] = ACTIONS(3036), [sym_ushort] = ACTIONS(3036), [sym_int] = ACTIONS(3036), [sym_uint] = ACTIONS(3036), [sym_long] = ACTIONS(3036), [sym_ulong] = ACTIONS(3036), [sym_cent] = ACTIONS(3036), [sym_ucent] = ACTIONS(3036), [sym_wchar] = ACTIONS(3036), [sym_dchar] = ACTIONS(3036), [sym_float] = ACTIONS(3036), [sym_double] = ACTIONS(3036), [sym_real] = ACTIONS(3036), [sym_ifloat] = ACTIONS(3036), [sym_idouble] = ACTIONS(3036), [sym_ireal] = ACTIONS(3036), [sym_cfloat] = ACTIONS(3036), [sym_cdouble] = ACTIONS(3036), [sym_creal] = ACTIONS(3036), [sym_size_t] = ACTIONS(3036), [sym_ptrdiff_t] = ACTIONS(3036), [sym_string] = ACTIONS(3036), [sym_cstring] = ACTIONS(3036), [sym_dstring] = ACTIONS(3036), [sym_wstring] = ACTIONS(3036), [sym_noreturn] = ACTIONS(3036), [sym_true] = ACTIONS(3036), [sym_false] = ACTIONS(3036), [sym_null] = ACTIONS(3036), [sym_super] = ACTIONS(3036), [sym_this] = ACTIONS(3036), [sym_abstract] = ACTIONS(3036), [sym_alias] = ACTIONS(3036), [sym_align] = ACTIONS(3036), [sym_asm] = ACTIONS(3036), [sym_assert] = ACTIONS(3036), [sym_auto] = ACTIONS(3036), [sym_break] = ACTIONS(3036), [sym_case] = ACTIONS(3036), [sym_cast] = ACTIONS(3036), [sym_catch] = ACTIONS(3036), [sym_class] = ACTIONS(3036), [sym_const] = ACTIONS(3036), [sym_continue] = ACTIONS(3036), [sym_debug] = ACTIONS(3036), [sym_default] = ACTIONS(3036), [sym_delegate] = ACTIONS(3036), [sym_delete] = ACTIONS(3036), [sym_deprecated] = ACTIONS(3036), [sym_do] = ACTIONS(3036), [sym_else] = ACTIONS(3036), [sym_enum] = ACTIONS(3036), [sym_export] = ACTIONS(3036), [sym_extern] = ACTIONS(3036), [sym_final] = ACTIONS(3036), [sym_finally] = ACTIONS(3036), [sym_for] = ACTIONS(3036), [sym_foreach] = ACTIONS(3036), [sym_foreach_reverse] = ACTIONS(3036), [sym_function] = ACTIONS(3036), [sym_goto] = ACTIONS(3036), [sym_if] = ACTIONS(3036), [sym_immutable] = ACTIONS(3036), [sym_import] = ACTIONS(3036), [sym_in] = ACTIONS(3036), [sym_inout] = ACTIONS(3036), [sym_interface] = ACTIONS(3036), [sym_invariant] = ACTIONS(3036), [sym_is] = ACTIONS(3036), [sym_lazy] = ACTIONS(3036), [sym_mixin] = ACTIONS(3036), [sym_module] = ACTIONS(3036), [sym_new] = ACTIONS(3036), [sym_nothrow] = ACTIONS(3036), [sym_out] = ACTIONS(3036), [sym_override] = ACTIONS(3036), [sym_package] = ACTIONS(3036), [sym_pragma] = ACTIONS(3036), [sym_private] = ACTIONS(3036), [sym_protected] = ACTIONS(3036), [sym_public] = ACTIONS(3036), [sym_pure] = ACTIONS(3036), [sym_ref] = ACTIONS(3036), [sym_return] = ACTIONS(3036), [sym_scope] = ACTIONS(3036), [sym_shared] = ACTIONS(3036), [sym_static] = ACTIONS(3036), [sym_struct] = ACTIONS(3036), [sym_switch] = ACTIONS(3036), [sym_synchronized] = ACTIONS(3036), [sym_template] = ACTIONS(3036), [sym_throw] = ACTIONS(3036), [sym_try] = ACTIONS(3036), [sym_typeid] = ACTIONS(3036), [sym_typeof] = ACTIONS(3036), [sym_union] = ACTIONS(3036), [sym_unittest] = ACTIONS(3036), [sym_version] = ACTIONS(3036), [sym_while] = ACTIONS(3036), [sym_with] = ACTIONS(3036), [sym_parameters_] = ACTIONS(3036), [sym_gshared] = ACTIONS(3036), [sym_traits] = ACTIONS(3036), [sym_vector] = ACTIONS(3036), [sym_void] = ACTIONS(3036), [anon_sym_BQUOTE] = ACTIONS(3038), [anon_sym_r_DQUOTE] = ACTIONS(3038), [anon_sym_x_DQUOTE] = ACTIONS(3038), [anon_sym_DQUOTE] = ACTIONS(3038), [anon_sym_i_BQUOTE] = ACTIONS(3038), [anon_sym_i_DQUOTE] = ACTIONS(3038), [anon_sym_iq_LBRACE] = ACTIONS(3038), [aux_sym_char_literal_token1] = ACTIONS(3038), [anon_sym_SQUOTE] = ACTIONS(3036), [anon_sym___DATE__] = ACTIONS(3036), [anon_sym___FILE__] = ACTIONS(3036), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3036), [anon_sym___FUNCTION__] = ACTIONS(3036), [anon_sym___LINE__] = ACTIONS(3036), [anon_sym___MODULE__] = ACTIONS(3036), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3036), [anon_sym___TIME__] = ACTIONS(3036), [anon_sym___TIMESTAMP__] = ACTIONS(3036), [anon_sym___VENDOR__] = ACTIONS(3036), [anon_sym___VERSION__] = ACTIONS(3036), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3038), [sym_float_literal] = ACTIONS(3038), [sym__string] = ACTIONS(3038), }, [647] = { [sym_identifier] = ACTIONS(3016), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3018), [anon_sym_RBRACE] = ACTIONS(3018), [anon_sym_LBRACE] = ACTIONS(3018), [anon_sym_SLASH] = ACTIONS(3016), [anon_sym_SLASH_EQ] = ACTIONS(3018), [anon_sym_DOT] = ACTIONS(3016), [anon_sym_DOT_DOT] = ACTIONS(3016), [anon_sym_DOT_DOT_DOT] = ACTIONS(3018), [anon_sym_AMP] = ACTIONS(3016), [anon_sym_AMP_EQ] = ACTIONS(3018), [anon_sym_AMP_AMP] = ACTIONS(3018), [anon_sym_PIPE] = ACTIONS(3016), [anon_sym_PIPE_EQ] = ACTIONS(3018), [anon_sym_PIPE_PIPE] = ACTIONS(3018), [anon_sym_DASH] = ACTIONS(3016), [anon_sym_DASH_EQ] = ACTIONS(3018), [anon_sym_DASH_DASH] = ACTIONS(3018), [anon_sym_PLUS] = ACTIONS(3016), [anon_sym_PLUS_EQ] = ACTIONS(3018), [anon_sym_PLUS_PLUS] = ACTIONS(3018), [anon_sym_LT] = ACTIONS(3016), [anon_sym_LT_EQ] = ACTIONS(3018), [anon_sym_LT_LT] = ACTIONS(3016), [anon_sym_LT_LT_EQ] = ACTIONS(3018), [anon_sym_GT] = ACTIONS(3016), [anon_sym_GT_EQ] = ACTIONS(3018), [anon_sym_GT_GT_EQ] = ACTIONS(3018), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3018), [anon_sym_GT_GT] = ACTIONS(3016), [anon_sym_GT_GT_GT] = ACTIONS(3016), [anon_sym_BANG] = ACTIONS(3016), [anon_sym_BANG_EQ] = ACTIONS(3018), [anon_sym_LPAREN] = ACTIONS(3018), [anon_sym_RPAREN] = ACTIONS(3018), [anon_sym_LBRACK] = ACTIONS(3018), [anon_sym_RBRACK] = ACTIONS(3018), [anon_sym_QMARK] = ACTIONS(3018), [anon_sym_COMMA] = ACTIONS(3018), [anon_sym_SEMI] = ACTIONS(3018), [anon_sym_COLON] = ACTIONS(3018), [anon_sym_DOLLAR] = ACTIONS(3018), [anon_sym_EQ] = ACTIONS(3016), [anon_sym_EQ_EQ] = ACTIONS(3018), [anon_sym_STAR] = ACTIONS(3016), [anon_sym_STAR_EQ] = ACTIONS(3018), [anon_sym_PERCENT] = ACTIONS(3016), [anon_sym_PERCENT_EQ] = ACTIONS(3018), [anon_sym_CARET] = ACTIONS(3016), [anon_sym_CARET_EQ] = ACTIONS(3018), [anon_sym_CARET_CARET] = ACTIONS(3016), [anon_sym_CARET_CARET_EQ] = ACTIONS(3018), [anon_sym_TILDE] = ACTIONS(3016), [anon_sym_TILDE_EQ] = ACTIONS(3018), [anon_sym_AT] = ACTIONS(3018), [anon_sym_EQ_GT] = ACTIONS(3018), [anon_sym_POUND] = ACTIONS(3018), [anon_sym_BANGin] = ACTIONS(3018), [anon_sym_BANGis] = ACTIONS(3018), [sym_bool] = ACTIONS(3016), [sym_byte] = ACTIONS(3016), [sym_ubyte] = ACTIONS(3016), [sym_char] = ACTIONS(3016), [sym_short] = ACTIONS(3016), [sym_ushort] = ACTIONS(3016), [sym_int] = ACTIONS(3016), [sym_uint] = ACTIONS(3016), [sym_long] = ACTIONS(3016), [sym_ulong] = ACTIONS(3016), [sym_cent] = ACTIONS(3016), [sym_ucent] = ACTIONS(3016), [sym_wchar] = ACTIONS(3016), [sym_dchar] = ACTIONS(3016), [sym_float] = ACTIONS(3016), [sym_double] = ACTIONS(3016), [sym_real] = ACTIONS(3016), [sym_ifloat] = ACTIONS(3016), [sym_idouble] = ACTIONS(3016), [sym_ireal] = ACTIONS(3016), [sym_cfloat] = ACTIONS(3016), [sym_cdouble] = ACTIONS(3016), [sym_creal] = ACTIONS(3016), [sym_size_t] = ACTIONS(3016), [sym_ptrdiff_t] = ACTIONS(3016), [sym_string] = ACTIONS(3016), [sym_cstring] = ACTIONS(3016), [sym_dstring] = ACTIONS(3016), [sym_wstring] = ACTIONS(3016), [sym_noreturn] = ACTIONS(3016), [sym_true] = ACTIONS(3016), [sym_false] = ACTIONS(3016), [sym_null] = ACTIONS(3016), [sym_super] = ACTIONS(3016), [sym_this] = ACTIONS(3016), [sym_abstract] = ACTIONS(3016), [sym_alias] = ACTIONS(3016), [sym_align] = ACTIONS(3016), [sym_asm] = ACTIONS(3016), [sym_assert] = ACTIONS(3016), [sym_auto] = ACTIONS(3016), [sym_break] = ACTIONS(3016), [sym_case] = ACTIONS(3016), [sym_cast] = ACTIONS(3016), [sym_catch] = ACTIONS(3016), [sym_class] = ACTIONS(3016), [sym_const] = ACTIONS(3016), [sym_continue] = ACTIONS(3016), [sym_debug] = ACTIONS(3016), [sym_default] = ACTIONS(3016), [sym_delegate] = ACTIONS(3016), [sym_delete] = ACTIONS(3016), [sym_deprecated] = ACTIONS(3016), [sym_do] = ACTIONS(3016), [sym_else] = ACTIONS(3016), [sym_enum] = ACTIONS(3016), [sym_export] = ACTIONS(3016), [sym_extern] = ACTIONS(3016), [sym_final] = ACTIONS(3016), [sym_finally] = ACTIONS(3016), [sym_for] = ACTIONS(3016), [sym_foreach] = ACTIONS(3016), [sym_foreach_reverse] = ACTIONS(3016), [sym_function] = ACTIONS(3016), [sym_goto] = ACTIONS(3016), [sym_if] = ACTIONS(3016), [sym_immutable] = ACTIONS(3016), [sym_import] = ACTIONS(3016), [sym_in] = ACTIONS(3016), [sym_inout] = ACTIONS(3016), [sym_interface] = ACTIONS(3016), [sym_invariant] = ACTIONS(3016), [sym_is] = ACTIONS(3016), [sym_lazy] = ACTIONS(3016), [sym_mixin] = ACTIONS(3016), [sym_module] = ACTIONS(3016), [sym_new] = ACTIONS(3016), [sym_nothrow] = ACTIONS(3016), [sym_out] = ACTIONS(3016), [sym_override] = ACTIONS(3016), [sym_package] = ACTIONS(3016), [sym_pragma] = ACTIONS(3016), [sym_private] = ACTIONS(3016), [sym_protected] = ACTIONS(3016), [sym_public] = ACTIONS(3016), [sym_pure] = ACTIONS(3016), [sym_ref] = ACTIONS(3016), [sym_return] = ACTIONS(3016), [sym_scope] = ACTIONS(3016), [sym_shared] = ACTIONS(3016), [sym_static] = ACTIONS(3016), [sym_struct] = ACTIONS(3016), [sym_switch] = ACTIONS(3016), [sym_synchronized] = ACTIONS(3016), [sym_template] = ACTIONS(3016), [sym_throw] = ACTIONS(3016), [sym_try] = ACTIONS(3016), [sym_typeid] = ACTIONS(3016), [sym_typeof] = ACTIONS(3016), [sym_union] = ACTIONS(3016), [sym_unittest] = ACTIONS(3016), [sym_version] = ACTIONS(3016), [sym_while] = ACTIONS(3016), [sym_with] = ACTIONS(3016), [sym_parameters_] = ACTIONS(3016), [sym_gshared] = ACTIONS(3016), [sym_traits] = ACTIONS(3016), [sym_vector] = ACTIONS(3016), [sym_void] = ACTIONS(3016), [anon_sym_BQUOTE] = ACTIONS(3018), [anon_sym_r_DQUOTE] = ACTIONS(3018), [anon_sym_x_DQUOTE] = ACTIONS(3018), [anon_sym_DQUOTE] = ACTIONS(3018), [anon_sym_i_BQUOTE] = ACTIONS(3018), [anon_sym_i_DQUOTE] = ACTIONS(3018), [anon_sym_iq_LBRACE] = ACTIONS(3018), [aux_sym_char_literal_token1] = ACTIONS(3018), [anon_sym_SQUOTE] = ACTIONS(3016), [anon_sym___DATE__] = ACTIONS(3016), [anon_sym___FILE__] = ACTIONS(3016), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3016), [anon_sym___FUNCTION__] = ACTIONS(3016), [anon_sym___LINE__] = ACTIONS(3016), [anon_sym___MODULE__] = ACTIONS(3016), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3016), [anon_sym___TIME__] = ACTIONS(3016), [anon_sym___TIMESTAMP__] = ACTIONS(3016), [anon_sym___VENDOR__] = ACTIONS(3016), [anon_sym___VERSION__] = ACTIONS(3016), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3018), [sym_float_literal] = ACTIONS(3018), [sym__string] = ACTIONS(3018), }, [648] = { [sym_identifier] = ACTIONS(3040), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3042), [anon_sym_RBRACE] = ACTIONS(3042), [anon_sym_LBRACE] = ACTIONS(3042), [anon_sym_SLASH] = ACTIONS(3040), [anon_sym_SLASH_EQ] = ACTIONS(3042), [anon_sym_DOT] = ACTIONS(3040), [anon_sym_DOT_DOT] = ACTIONS(3040), [anon_sym_DOT_DOT_DOT] = ACTIONS(3042), [anon_sym_AMP] = ACTIONS(3040), [anon_sym_AMP_EQ] = ACTIONS(3042), [anon_sym_AMP_AMP] = ACTIONS(3042), [anon_sym_PIPE] = ACTIONS(3040), [anon_sym_PIPE_EQ] = ACTIONS(3042), [anon_sym_PIPE_PIPE] = ACTIONS(3042), [anon_sym_DASH] = ACTIONS(3040), [anon_sym_DASH_EQ] = ACTIONS(3042), [anon_sym_DASH_DASH] = ACTIONS(3042), [anon_sym_PLUS] = ACTIONS(3040), [anon_sym_PLUS_EQ] = ACTIONS(3042), [anon_sym_PLUS_PLUS] = ACTIONS(3042), [anon_sym_LT] = ACTIONS(3040), [anon_sym_LT_EQ] = ACTIONS(3042), [anon_sym_LT_LT] = ACTIONS(3040), [anon_sym_LT_LT_EQ] = ACTIONS(3042), [anon_sym_GT] = ACTIONS(3040), [anon_sym_GT_EQ] = ACTIONS(3042), [anon_sym_GT_GT_EQ] = ACTIONS(3042), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3042), [anon_sym_GT_GT] = ACTIONS(3040), [anon_sym_GT_GT_GT] = ACTIONS(3040), [anon_sym_BANG] = ACTIONS(3040), [anon_sym_BANG_EQ] = ACTIONS(3042), [anon_sym_LPAREN] = ACTIONS(3042), [anon_sym_RPAREN] = ACTIONS(3042), [anon_sym_LBRACK] = ACTIONS(3042), [anon_sym_RBRACK] = ACTIONS(3042), [anon_sym_QMARK] = ACTIONS(3042), [anon_sym_COMMA] = ACTIONS(3042), [anon_sym_SEMI] = ACTIONS(3042), [anon_sym_COLON] = ACTIONS(3042), [anon_sym_DOLLAR] = ACTIONS(3042), [anon_sym_EQ] = ACTIONS(3040), [anon_sym_EQ_EQ] = ACTIONS(3042), [anon_sym_STAR] = ACTIONS(3040), [anon_sym_STAR_EQ] = ACTIONS(3042), [anon_sym_PERCENT] = ACTIONS(3040), [anon_sym_PERCENT_EQ] = ACTIONS(3042), [anon_sym_CARET] = ACTIONS(3040), [anon_sym_CARET_EQ] = ACTIONS(3042), [anon_sym_CARET_CARET] = ACTIONS(3040), [anon_sym_CARET_CARET_EQ] = ACTIONS(3042), [anon_sym_TILDE] = ACTIONS(3040), [anon_sym_TILDE_EQ] = ACTIONS(3042), [anon_sym_AT] = ACTIONS(3042), [anon_sym_EQ_GT] = ACTIONS(3042), [anon_sym_POUND] = ACTIONS(3042), [anon_sym_BANGin] = ACTIONS(3042), [anon_sym_BANGis] = ACTIONS(3042), [sym_bool] = ACTIONS(3040), [sym_byte] = ACTIONS(3040), [sym_ubyte] = ACTIONS(3040), [sym_char] = ACTIONS(3040), [sym_short] = ACTIONS(3040), [sym_ushort] = ACTIONS(3040), [sym_int] = ACTIONS(3040), [sym_uint] = ACTIONS(3040), [sym_long] = ACTIONS(3040), [sym_ulong] = ACTIONS(3040), [sym_cent] = ACTIONS(3040), [sym_ucent] = ACTIONS(3040), [sym_wchar] = ACTIONS(3040), [sym_dchar] = ACTIONS(3040), [sym_float] = ACTIONS(3040), [sym_double] = ACTIONS(3040), [sym_real] = ACTIONS(3040), [sym_ifloat] = ACTIONS(3040), [sym_idouble] = ACTIONS(3040), [sym_ireal] = ACTIONS(3040), [sym_cfloat] = ACTIONS(3040), [sym_cdouble] = ACTIONS(3040), [sym_creal] = ACTIONS(3040), [sym_size_t] = ACTIONS(3040), [sym_ptrdiff_t] = ACTIONS(3040), [sym_string] = ACTIONS(3040), [sym_cstring] = ACTIONS(3040), [sym_dstring] = ACTIONS(3040), [sym_wstring] = ACTIONS(3040), [sym_noreturn] = ACTIONS(3040), [sym_true] = ACTIONS(3040), [sym_false] = ACTIONS(3040), [sym_null] = ACTIONS(3040), [sym_super] = ACTIONS(3040), [sym_this] = ACTIONS(3040), [sym_abstract] = ACTIONS(3040), [sym_alias] = ACTIONS(3040), [sym_align] = ACTIONS(3040), [sym_asm] = ACTIONS(3040), [sym_assert] = ACTIONS(3040), [sym_auto] = ACTIONS(3040), [sym_break] = ACTIONS(3040), [sym_case] = ACTIONS(3040), [sym_cast] = ACTIONS(3040), [sym_catch] = ACTIONS(3040), [sym_class] = ACTIONS(3040), [sym_const] = ACTIONS(3040), [sym_continue] = ACTIONS(3040), [sym_debug] = ACTIONS(3040), [sym_default] = ACTIONS(3040), [sym_delegate] = ACTIONS(3040), [sym_delete] = ACTIONS(3040), [sym_deprecated] = ACTIONS(3040), [sym_do] = ACTIONS(3040), [sym_else] = ACTIONS(3040), [sym_enum] = ACTIONS(3040), [sym_export] = ACTIONS(3040), [sym_extern] = ACTIONS(3040), [sym_final] = ACTIONS(3040), [sym_finally] = ACTIONS(3040), [sym_for] = ACTIONS(3040), [sym_foreach] = ACTIONS(3040), [sym_foreach_reverse] = ACTIONS(3040), [sym_function] = ACTIONS(3040), [sym_goto] = ACTIONS(3040), [sym_if] = ACTIONS(3040), [sym_immutable] = ACTIONS(3040), [sym_import] = ACTIONS(3040), [sym_in] = ACTIONS(3040), [sym_inout] = ACTIONS(3040), [sym_interface] = ACTIONS(3040), [sym_invariant] = ACTIONS(3040), [sym_is] = ACTIONS(3040), [sym_lazy] = ACTIONS(3040), [sym_mixin] = ACTIONS(3040), [sym_module] = ACTIONS(3040), [sym_new] = ACTIONS(3040), [sym_nothrow] = ACTIONS(3040), [sym_out] = ACTIONS(3040), [sym_override] = ACTIONS(3040), [sym_package] = ACTIONS(3040), [sym_pragma] = ACTIONS(3040), [sym_private] = ACTIONS(3040), [sym_protected] = ACTIONS(3040), [sym_public] = ACTIONS(3040), [sym_pure] = ACTIONS(3040), [sym_ref] = ACTIONS(3040), [sym_return] = ACTIONS(3040), [sym_scope] = ACTIONS(3040), [sym_shared] = ACTIONS(3040), [sym_static] = ACTIONS(3040), [sym_struct] = ACTIONS(3040), [sym_switch] = ACTIONS(3040), [sym_synchronized] = ACTIONS(3040), [sym_template] = ACTIONS(3040), [sym_throw] = ACTIONS(3040), [sym_try] = ACTIONS(3040), [sym_typeid] = ACTIONS(3040), [sym_typeof] = ACTIONS(3040), [sym_union] = ACTIONS(3040), [sym_unittest] = ACTIONS(3040), [sym_version] = ACTIONS(3040), [sym_while] = ACTIONS(3040), [sym_with] = ACTIONS(3040), [sym_parameters_] = ACTIONS(3040), [sym_gshared] = ACTIONS(3040), [sym_traits] = ACTIONS(3040), [sym_vector] = ACTIONS(3040), [sym_void] = ACTIONS(3040), [anon_sym_BQUOTE] = ACTIONS(3042), [anon_sym_r_DQUOTE] = ACTIONS(3042), [anon_sym_x_DQUOTE] = ACTIONS(3042), [anon_sym_DQUOTE] = ACTIONS(3042), [anon_sym_i_BQUOTE] = ACTIONS(3042), [anon_sym_i_DQUOTE] = ACTIONS(3042), [anon_sym_iq_LBRACE] = ACTIONS(3042), [aux_sym_char_literal_token1] = ACTIONS(3042), [anon_sym_SQUOTE] = ACTIONS(3040), [anon_sym___DATE__] = ACTIONS(3040), [anon_sym___FILE__] = ACTIONS(3040), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3040), [anon_sym___FUNCTION__] = ACTIONS(3040), [anon_sym___LINE__] = ACTIONS(3040), [anon_sym___MODULE__] = ACTIONS(3040), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3040), [anon_sym___TIME__] = ACTIONS(3040), [anon_sym___TIMESTAMP__] = ACTIONS(3040), [anon_sym___VENDOR__] = ACTIONS(3040), [anon_sym___VERSION__] = ACTIONS(3040), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3042), [sym_float_literal] = ACTIONS(3042), [sym__string] = ACTIONS(3042), }, [649] = { [sym_identifier] = ACTIONS(2996), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2998), [anon_sym_RBRACE] = ACTIONS(2998), [anon_sym_LBRACE] = ACTIONS(2998), [anon_sym_SLASH] = ACTIONS(2996), [anon_sym_SLASH_EQ] = ACTIONS(2998), [anon_sym_DOT] = ACTIONS(2996), [anon_sym_DOT_DOT] = ACTIONS(2996), [anon_sym_DOT_DOT_DOT] = ACTIONS(2998), [anon_sym_AMP] = ACTIONS(2996), [anon_sym_AMP_EQ] = ACTIONS(2998), [anon_sym_AMP_AMP] = ACTIONS(2998), [anon_sym_PIPE] = ACTIONS(2996), [anon_sym_PIPE_EQ] = ACTIONS(2998), [anon_sym_PIPE_PIPE] = ACTIONS(2998), [anon_sym_DASH] = ACTIONS(2996), [anon_sym_DASH_EQ] = ACTIONS(2998), [anon_sym_DASH_DASH] = ACTIONS(2998), [anon_sym_PLUS] = ACTIONS(2996), [anon_sym_PLUS_EQ] = ACTIONS(2998), [anon_sym_PLUS_PLUS] = ACTIONS(2998), [anon_sym_LT] = ACTIONS(2996), [anon_sym_LT_EQ] = ACTIONS(2998), [anon_sym_LT_LT] = ACTIONS(2996), [anon_sym_LT_LT_EQ] = ACTIONS(2998), [anon_sym_GT] = ACTIONS(2996), [anon_sym_GT_EQ] = ACTIONS(2998), [anon_sym_GT_GT_EQ] = ACTIONS(2998), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2998), [anon_sym_GT_GT] = ACTIONS(2996), [anon_sym_GT_GT_GT] = ACTIONS(2996), [anon_sym_BANG] = ACTIONS(2996), [anon_sym_BANG_EQ] = ACTIONS(2998), [anon_sym_LPAREN] = ACTIONS(2998), [anon_sym_RPAREN] = ACTIONS(2998), [anon_sym_LBRACK] = ACTIONS(2998), [anon_sym_RBRACK] = ACTIONS(2998), [anon_sym_QMARK] = ACTIONS(2998), [anon_sym_COMMA] = ACTIONS(2998), [anon_sym_SEMI] = ACTIONS(2998), [anon_sym_COLON] = ACTIONS(2998), [anon_sym_DOLLAR] = ACTIONS(2998), [anon_sym_EQ] = ACTIONS(2996), [anon_sym_EQ_EQ] = ACTIONS(2998), [anon_sym_STAR] = ACTIONS(2996), [anon_sym_STAR_EQ] = ACTIONS(2998), [anon_sym_PERCENT] = ACTIONS(2996), [anon_sym_PERCENT_EQ] = ACTIONS(2998), [anon_sym_CARET] = ACTIONS(2996), [anon_sym_CARET_EQ] = ACTIONS(2998), [anon_sym_CARET_CARET] = ACTIONS(2996), [anon_sym_CARET_CARET_EQ] = ACTIONS(2998), [anon_sym_TILDE] = ACTIONS(2996), [anon_sym_TILDE_EQ] = ACTIONS(2998), [anon_sym_AT] = ACTIONS(2998), [anon_sym_EQ_GT] = ACTIONS(2998), [anon_sym_POUND] = ACTIONS(2998), [anon_sym_BANGin] = ACTIONS(2998), [anon_sym_BANGis] = ACTIONS(2998), [sym_bool] = ACTIONS(2996), [sym_byte] = ACTIONS(2996), [sym_ubyte] = ACTIONS(2996), [sym_char] = ACTIONS(2996), [sym_short] = ACTIONS(2996), [sym_ushort] = ACTIONS(2996), [sym_int] = ACTIONS(2996), [sym_uint] = ACTIONS(2996), [sym_long] = ACTIONS(2996), [sym_ulong] = ACTIONS(2996), [sym_cent] = ACTIONS(2996), [sym_ucent] = ACTIONS(2996), [sym_wchar] = ACTIONS(2996), [sym_dchar] = ACTIONS(2996), [sym_float] = ACTIONS(2996), [sym_double] = ACTIONS(2996), [sym_real] = ACTIONS(2996), [sym_ifloat] = ACTIONS(2996), [sym_idouble] = ACTIONS(2996), [sym_ireal] = ACTIONS(2996), [sym_cfloat] = ACTIONS(2996), [sym_cdouble] = ACTIONS(2996), [sym_creal] = ACTIONS(2996), [sym_size_t] = ACTIONS(2996), [sym_ptrdiff_t] = ACTIONS(2996), [sym_string] = ACTIONS(2996), [sym_cstring] = ACTIONS(2996), [sym_dstring] = ACTIONS(2996), [sym_wstring] = ACTIONS(2996), [sym_noreturn] = ACTIONS(2996), [sym_true] = ACTIONS(2996), [sym_false] = ACTIONS(2996), [sym_null] = ACTIONS(2996), [sym_super] = ACTIONS(2996), [sym_this] = ACTIONS(2996), [sym_abstract] = ACTIONS(2996), [sym_alias] = ACTIONS(2996), [sym_align] = ACTIONS(2996), [sym_asm] = ACTIONS(2996), [sym_assert] = ACTIONS(2996), [sym_auto] = ACTIONS(2996), [sym_break] = ACTIONS(2996), [sym_case] = ACTIONS(2996), [sym_cast] = ACTIONS(2996), [sym_catch] = ACTIONS(2996), [sym_class] = ACTIONS(2996), [sym_const] = ACTIONS(2996), [sym_continue] = ACTIONS(2996), [sym_debug] = ACTIONS(2996), [sym_default] = ACTIONS(2996), [sym_delegate] = ACTIONS(2996), [sym_delete] = ACTIONS(2996), [sym_deprecated] = ACTIONS(2996), [sym_do] = ACTIONS(2996), [sym_else] = ACTIONS(2996), [sym_enum] = ACTIONS(2996), [sym_export] = ACTIONS(2996), [sym_extern] = ACTIONS(2996), [sym_final] = ACTIONS(2996), [sym_finally] = ACTIONS(2996), [sym_for] = ACTIONS(2996), [sym_foreach] = ACTIONS(2996), [sym_foreach_reverse] = ACTIONS(2996), [sym_function] = ACTIONS(2996), [sym_goto] = ACTIONS(2996), [sym_if] = ACTIONS(2996), [sym_immutable] = ACTIONS(2996), [sym_import] = ACTIONS(2996), [sym_in] = ACTIONS(2996), [sym_inout] = ACTIONS(2996), [sym_interface] = ACTIONS(2996), [sym_invariant] = ACTIONS(2996), [sym_is] = ACTIONS(2996), [sym_lazy] = ACTIONS(2996), [sym_mixin] = ACTIONS(2996), [sym_module] = ACTIONS(2996), [sym_new] = ACTIONS(2996), [sym_nothrow] = ACTIONS(2996), [sym_out] = ACTIONS(2996), [sym_override] = ACTIONS(2996), [sym_package] = ACTIONS(2996), [sym_pragma] = ACTIONS(2996), [sym_private] = ACTIONS(2996), [sym_protected] = ACTIONS(2996), [sym_public] = ACTIONS(2996), [sym_pure] = ACTIONS(2996), [sym_ref] = ACTIONS(2996), [sym_return] = ACTIONS(2996), [sym_scope] = ACTIONS(2996), [sym_shared] = ACTIONS(2996), [sym_static] = ACTIONS(2996), [sym_struct] = ACTIONS(2996), [sym_switch] = ACTIONS(2996), [sym_synchronized] = ACTIONS(2996), [sym_template] = ACTIONS(2996), [sym_throw] = ACTIONS(2996), [sym_try] = ACTIONS(2996), [sym_typeid] = ACTIONS(2996), [sym_typeof] = ACTIONS(2996), [sym_union] = ACTIONS(2996), [sym_unittest] = ACTIONS(2996), [sym_version] = ACTIONS(2996), [sym_while] = ACTIONS(2996), [sym_with] = ACTIONS(2996), [sym_parameters_] = ACTIONS(2996), [sym_gshared] = ACTIONS(2996), [sym_traits] = ACTIONS(2996), [sym_vector] = ACTIONS(2996), [sym_void] = ACTIONS(2996), [anon_sym_BQUOTE] = ACTIONS(2998), [anon_sym_r_DQUOTE] = ACTIONS(2998), [anon_sym_x_DQUOTE] = ACTIONS(2998), [anon_sym_DQUOTE] = ACTIONS(2998), [anon_sym_i_BQUOTE] = ACTIONS(2998), [anon_sym_i_DQUOTE] = ACTIONS(2998), [anon_sym_iq_LBRACE] = ACTIONS(2998), [aux_sym_char_literal_token1] = ACTIONS(2998), [anon_sym_SQUOTE] = ACTIONS(2996), [anon_sym___DATE__] = ACTIONS(2996), [anon_sym___FILE__] = ACTIONS(2996), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2996), [anon_sym___FUNCTION__] = ACTIONS(2996), [anon_sym___LINE__] = ACTIONS(2996), [anon_sym___MODULE__] = ACTIONS(2996), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2996), [anon_sym___TIME__] = ACTIONS(2996), [anon_sym___TIMESTAMP__] = ACTIONS(2996), [anon_sym___VENDOR__] = ACTIONS(2996), [anon_sym___VERSION__] = ACTIONS(2996), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2998), [sym_float_literal] = ACTIONS(2998), [sym__string] = ACTIONS(2998), }, [650] = { [sym_identifier] = ACTIONS(3000), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3002), [anon_sym_RBRACE] = ACTIONS(3002), [anon_sym_LBRACE] = ACTIONS(3002), [anon_sym_SLASH] = ACTIONS(3000), [anon_sym_SLASH_EQ] = ACTIONS(3002), [anon_sym_DOT] = ACTIONS(3000), [anon_sym_DOT_DOT] = ACTIONS(3000), [anon_sym_DOT_DOT_DOT] = ACTIONS(3002), [anon_sym_AMP] = ACTIONS(3000), [anon_sym_AMP_EQ] = ACTIONS(3002), [anon_sym_AMP_AMP] = ACTIONS(3002), [anon_sym_PIPE] = ACTIONS(3000), [anon_sym_PIPE_EQ] = ACTIONS(3002), [anon_sym_PIPE_PIPE] = ACTIONS(3002), [anon_sym_DASH] = ACTIONS(3000), [anon_sym_DASH_EQ] = ACTIONS(3002), [anon_sym_DASH_DASH] = ACTIONS(3002), [anon_sym_PLUS] = ACTIONS(3000), [anon_sym_PLUS_EQ] = ACTIONS(3002), [anon_sym_PLUS_PLUS] = ACTIONS(3002), [anon_sym_LT] = ACTIONS(3000), [anon_sym_LT_EQ] = ACTIONS(3002), [anon_sym_LT_LT] = ACTIONS(3000), [anon_sym_LT_LT_EQ] = ACTIONS(3002), [anon_sym_GT] = ACTIONS(3000), [anon_sym_GT_EQ] = ACTIONS(3002), [anon_sym_GT_GT_EQ] = ACTIONS(3002), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3002), [anon_sym_GT_GT] = ACTIONS(3000), [anon_sym_GT_GT_GT] = ACTIONS(3000), [anon_sym_BANG] = ACTIONS(3000), [anon_sym_BANG_EQ] = ACTIONS(3002), [anon_sym_LPAREN] = ACTIONS(3002), [anon_sym_RPAREN] = ACTIONS(3002), [anon_sym_LBRACK] = ACTIONS(3002), [anon_sym_RBRACK] = ACTIONS(3002), [anon_sym_QMARK] = ACTIONS(3002), [anon_sym_COMMA] = ACTIONS(3002), [anon_sym_SEMI] = ACTIONS(3002), [anon_sym_COLON] = ACTIONS(3002), [anon_sym_DOLLAR] = ACTIONS(3002), [anon_sym_EQ] = ACTIONS(3000), [anon_sym_EQ_EQ] = ACTIONS(3002), [anon_sym_STAR] = ACTIONS(3000), [anon_sym_STAR_EQ] = ACTIONS(3002), [anon_sym_PERCENT] = ACTIONS(3000), [anon_sym_PERCENT_EQ] = ACTIONS(3002), [anon_sym_CARET] = ACTIONS(3000), [anon_sym_CARET_EQ] = ACTIONS(3002), [anon_sym_CARET_CARET] = ACTIONS(3000), [anon_sym_CARET_CARET_EQ] = ACTIONS(3002), [anon_sym_TILDE] = ACTIONS(3000), [anon_sym_TILDE_EQ] = ACTIONS(3002), [anon_sym_AT] = ACTIONS(3002), [anon_sym_EQ_GT] = ACTIONS(3002), [anon_sym_POUND] = ACTIONS(3002), [anon_sym_BANGin] = ACTIONS(3002), [anon_sym_BANGis] = ACTIONS(3002), [sym_bool] = ACTIONS(3000), [sym_byte] = ACTIONS(3000), [sym_ubyte] = ACTIONS(3000), [sym_char] = ACTIONS(3000), [sym_short] = ACTIONS(3000), [sym_ushort] = ACTIONS(3000), [sym_int] = ACTIONS(3000), [sym_uint] = ACTIONS(3000), [sym_long] = ACTIONS(3000), [sym_ulong] = ACTIONS(3000), [sym_cent] = ACTIONS(3000), [sym_ucent] = ACTIONS(3000), [sym_wchar] = ACTIONS(3000), [sym_dchar] = ACTIONS(3000), [sym_float] = ACTIONS(3000), [sym_double] = ACTIONS(3000), [sym_real] = ACTIONS(3000), [sym_ifloat] = ACTIONS(3000), [sym_idouble] = ACTIONS(3000), [sym_ireal] = ACTIONS(3000), [sym_cfloat] = ACTIONS(3000), [sym_cdouble] = ACTIONS(3000), [sym_creal] = ACTIONS(3000), [sym_size_t] = ACTIONS(3000), [sym_ptrdiff_t] = ACTIONS(3000), [sym_string] = ACTIONS(3000), [sym_cstring] = ACTIONS(3000), [sym_dstring] = ACTIONS(3000), [sym_wstring] = ACTIONS(3000), [sym_noreturn] = ACTIONS(3000), [sym_true] = ACTIONS(3000), [sym_false] = ACTIONS(3000), [sym_null] = ACTIONS(3000), [sym_super] = ACTIONS(3000), [sym_this] = ACTIONS(3000), [sym_abstract] = ACTIONS(3000), [sym_alias] = ACTIONS(3000), [sym_align] = ACTIONS(3000), [sym_asm] = ACTIONS(3000), [sym_assert] = ACTIONS(3000), [sym_auto] = ACTIONS(3000), [sym_break] = ACTIONS(3000), [sym_case] = ACTIONS(3000), [sym_cast] = ACTIONS(3000), [sym_catch] = ACTIONS(3000), [sym_class] = ACTIONS(3000), [sym_const] = ACTIONS(3000), [sym_continue] = ACTIONS(3000), [sym_debug] = ACTIONS(3000), [sym_default] = ACTIONS(3000), [sym_delegate] = ACTIONS(3000), [sym_delete] = ACTIONS(3000), [sym_deprecated] = ACTIONS(3000), [sym_do] = ACTIONS(3000), [sym_else] = ACTIONS(3000), [sym_enum] = ACTIONS(3000), [sym_export] = ACTIONS(3000), [sym_extern] = ACTIONS(3000), [sym_final] = ACTIONS(3000), [sym_finally] = ACTIONS(3000), [sym_for] = ACTIONS(3000), [sym_foreach] = ACTIONS(3000), [sym_foreach_reverse] = ACTIONS(3000), [sym_function] = ACTIONS(3000), [sym_goto] = ACTIONS(3000), [sym_if] = ACTIONS(3000), [sym_immutable] = ACTIONS(3000), [sym_import] = ACTIONS(3000), [sym_in] = ACTIONS(3000), [sym_inout] = ACTIONS(3000), [sym_interface] = ACTIONS(3000), [sym_invariant] = ACTIONS(3000), [sym_is] = ACTIONS(3000), [sym_lazy] = ACTIONS(3000), [sym_mixin] = ACTIONS(3000), [sym_module] = ACTIONS(3000), [sym_new] = ACTIONS(3000), [sym_nothrow] = ACTIONS(3000), [sym_out] = ACTIONS(3000), [sym_override] = ACTIONS(3000), [sym_package] = ACTIONS(3000), [sym_pragma] = ACTIONS(3000), [sym_private] = ACTIONS(3000), [sym_protected] = ACTIONS(3000), [sym_public] = ACTIONS(3000), [sym_pure] = ACTIONS(3000), [sym_ref] = ACTIONS(3000), [sym_return] = ACTIONS(3000), [sym_scope] = ACTIONS(3000), [sym_shared] = ACTIONS(3000), [sym_static] = ACTIONS(3000), [sym_struct] = ACTIONS(3000), [sym_switch] = ACTIONS(3000), [sym_synchronized] = ACTIONS(3000), [sym_template] = ACTIONS(3000), [sym_throw] = ACTIONS(3000), [sym_try] = ACTIONS(3000), [sym_typeid] = ACTIONS(3000), [sym_typeof] = ACTIONS(3000), [sym_union] = ACTIONS(3000), [sym_unittest] = ACTIONS(3000), [sym_version] = ACTIONS(3000), [sym_while] = ACTIONS(3000), [sym_with] = ACTIONS(3000), [sym_parameters_] = ACTIONS(3000), [sym_gshared] = ACTIONS(3000), [sym_traits] = ACTIONS(3000), [sym_vector] = ACTIONS(3000), [sym_void] = ACTIONS(3000), [anon_sym_BQUOTE] = ACTIONS(3002), [anon_sym_r_DQUOTE] = ACTIONS(3002), [anon_sym_x_DQUOTE] = ACTIONS(3002), [anon_sym_DQUOTE] = ACTIONS(3002), [anon_sym_i_BQUOTE] = ACTIONS(3002), [anon_sym_i_DQUOTE] = ACTIONS(3002), [anon_sym_iq_LBRACE] = ACTIONS(3002), [aux_sym_char_literal_token1] = ACTIONS(3002), [anon_sym_SQUOTE] = ACTIONS(3000), [anon_sym___DATE__] = ACTIONS(3000), [anon_sym___FILE__] = ACTIONS(3000), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3000), [anon_sym___FUNCTION__] = ACTIONS(3000), [anon_sym___LINE__] = ACTIONS(3000), [anon_sym___MODULE__] = ACTIONS(3000), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3000), [anon_sym___TIME__] = ACTIONS(3000), [anon_sym___TIMESTAMP__] = ACTIONS(3000), [anon_sym___VENDOR__] = ACTIONS(3000), [anon_sym___VERSION__] = ACTIONS(3000), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3002), [sym_float_literal] = ACTIONS(3002), [sym__string] = ACTIONS(3002), }, [651] = { [sym_identifier] = ACTIONS(3044), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3046), [anon_sym_RBRACE] = ACTIONS(3046), [anon_sym_LBRACE] = ACTIONS(3046), [anon_sym_SLASH] = ACTIONS(3044), [anon_sym_SLASH_EQ] = ACTIONS(3046), [anon_sym_DOT] = ACTIONS(3044), [anon_sym_DOT_DOT] = ACTIONS(3044), [anon_sym_DOT_DOT_DOT] = ACTIONS(3046), [anon_sym_AMP] = ACTIONS(3044), [anon_sym_AMP_EQ] = ACTIONS(3046), [anon_sym_AMP_AMP] = ACTIONS(3046), [anon_sym_PIPE] = ACTIONS(3044), [anon_sym_PIPE_EQ] = ACTIONS(3046), [anon_sym_PIPE_PIPE] = ACTIONS(3046), [anon_sym_DASH] = ACTIONS(3044), [anon_sym_DASH_EQ] = ACTIONS(3046), [anon_sym_DASH_DASH] = ACTIONS(3046), [anon_sym_PLUS] = ACTIONS(3044), [anon_sym_PLUS_EQ] = ACTIONS(3046), [anon_sym_PLUS_PLUS] = ACTIONS(3046), [anon_sym_LT] = ACTIONS(3044), [anon_sym_LT_EQ] = ACTIONS(3046), [anon_sym_LT_LT] = ACTIONS(3044), [anon_sym_LT_LT_EQ] = ACTIONS(3046), [anon_sym_GT] = ACTIONS(3044), [anon_sym_GT_EQ] = ACTIONS(3046), [anon_sym_GT_GT_EQ] = ACTIONS(3046), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3046), [anon_sym_GT_GT] = ACTIONS(3044), [anon_sym_GT_GT_GT] = ACTIONS(3044), [anon_sym_BANG] = ACTIONS(3044), [anon_sym_BANG_EQ] = ACTIONS(3046), [anon_sym_LPAREN] = ACTIONS(3046), [anon_sym_RPAREN] = ACTIONS(3046), [anon_sym_LBRACK] = ACTIONS(3046), [anon_sym_RBRACK] = ACTIONS(3046), [anon_sym_QMARK] = ACTIONS(3046), [anon_sym_COMMA] = ACTIONS(3046), [anon_sym_SEMI] = ACTIONS(3046), [anon_sym_COLON] = ACTIONS(3046), [anon_sym_DOLLAR] = ACTIONS(3046), [anon_sym_EQ] = ACTIONS(3044), [anon_sym_EQ_EQ] = ACTIONS(3046), [anon_sym_STAR] = ACTIONS(3044), [anon_sym_STAR_EQ] = ACTIONS(3046), [anon_sym_PERCENT] = ACTIONS(3044), [anon_sym_PERCENT_EQ] = ACTIONS(3046), [anon_sym_CARET] = ACTIONS(3044), [anon_sym_CARET_EQ] = ACTIONS(3046), [anon_sym_CARET_CARET] = ACTIONS(3044), [anon_sym_CARET_CARET_EQ] = ACTIONS(3046), [anon_sym_TILDE] = ACTIONS(3044), [anon_sym_TILDE_EQ] = ACTIONS(3046), [anon_sym_AT] = ACTIONS(3046), [anon_sym_EQ_GT] = ACTIONS(3046), [anon_sym_POUND] = ACTIONS(3046), [anon_sym_BANGin] = ACTIONS(3046), [anon_sym_BANGis] = ACTIONS(3046), [sym_bool] = ACTIONS(3044), [sym_byte] = ACTIONS(3044), [sym_ubyte] = ACTIONS(3044), [sym_char] = ACTIONS(3044), [sym_short] = ACTIONS(3044), [sym_ushort] = ACTIONS(3044), [sym_int] = ACTIONS(3044), [sym_uint] = ACTIONS(3044), [sym_long] = ACTIONS(3044), [sym_ulong] = ACTIONS(3044), [sym_cent] = ACTIONS(3044), [sym_ucent] = ACTIONS(3044), [sym_wchar] = ACTIONS(3044), [sym_dchar] = ACTIONS(3044), [sym_float] = ACTIONS(3044), [sym_double] = ACTIONS(3044), [sym_real] = ACTIONS(3044), [sym_ifloat] = ACTIONS(3044), [sym_idouble] = ACTIONS(3044), [sym_ireal] = ACTIONS(3044), [sym_cfloat] = ACTIONS(3044), [sym_cdouble] = ACTIONS(3044), [sym_creal] = ACTIONS(3044), [sym_size_t] = ACTIONS(3044), [sym_ptrdiff_t] = ACTIONS(3044), [sym_string] = ACTIONS(3044), [sym_cstring] = ACTIONS(3044), [sym_dstring] = ACTIONS(3044), [sym_wstring] = ACTIONS(3044), [sym_noreturn] = ACTIONS(3044), [sym_true] = ACTIONS(3044), [sym_false] = ACTIONS(3044), [sym_null] = ACTIONS(3044), [sym_super] = ACTIONS(3044), [sym_this] = ACTIONS(3044), [sym_abstract] = ACTIONS(3044), [sym_alias] = ACTIONS(3044), [sym_align] = ACTIONS(3044), [sym_asm] = ACTIONS(3044), [sym_assert] = ACTIONS(3044), [sym_auto] = ACTIONS(3044), [sym_break] = ACTIONS(3044), [sym_case] = ACTIONS(3044), [sym_cast] = ACTIONS(3044), [sym_catch] = ACTIONS(3044), [sym_class] = ACTIONS(3044), [sym_const] = ACTIONS(3044), [sym_continue] = ACTIONS(3044), [sym_debug] = ACTIONS(3044), [sym_default] = ACTIONS(3044), [sym_delegate] = ACTIONS(3044), [sym_delete] = ACTIONS(3044), [sym_deprecated] = ACTIONS(3044), [sym_do] = ACTIONS(3044), [sym_else] = ACTIONS(3044), [sym_enum] = ACTIONS(3044), [sym_export] = ACTIONS(3044), [sym_extern] = ACTIONS(3044), [sym_final] = ACTIONS(3044), [sym_finally] = ACTIONS(3044), [sym_for] = ACTIONS(3044), [sym_foreach] = ACTIONS(3044), [sym_foreach_reverse] = ACTIONS(3044), [sym_function] = ACTIONS(3044), [sym_goto] = ACTIONS(3044), [sym_if] = ACTIONS(3044), [sym_immutable] = ACTIONS(3044), [sym_import] = ACTIONS(3044), [sym_in] = ACTIONS(3044), [sym_inout] = ACTIONS(3044), [sym_interface] = ACTIONS(3044), [sym_invariant] = ACTIONS(3044), [sym_is] = ACTIONS(3044), [sym_lazy] = ACTIONS(3044), [sym_mixin] = ACTIONS(3044), [sym_module] = ACTIONS(3044), [sym_new] = ACTIONS(3044), [sym_nothrow] = ACTIONS(3044), [sym_out] = ACTIONS(3044), [sym_override] = ACTIONS(3044), [sym_package] = ACTIONS(3044), [sym_pragma] = ACTIONS(3044), [sym_private] = ACTIONS(3044), [sym_protected] = ACTIONS(3044), [sym_public] = ACTIONS(3044), [sym_pure] = ACTIONS(3044), [sym_ref] = ACTIONS(3044), [sym_return] = ACTIONS(3044), [sym_scope] = ACTIONS(3044), [sym_shared] = ACTIONS(3044), [sym_static] = ACTIONS(3044), [sym_struct] = ACTIONS(3044), [sym_switch] = ACTIONS(3044), [sym_synchronized] = ACTIONS(3044), [sym_template] = ACTIONS(3044), [sym_throw] = ACTIONS(3044), [sym_try] = ACTIONS(3044), [sym_typeid] = ACTIONS(3044), [sym_typeof] = ACTIONS(3044), [sym_union] = ACTIONS(3044), [sym_unittest] = ACTIONS(3044), [sym_version] = ACTIONS(3044), [sym_while] = ACTIONS(3044), [sym_with] = ACTIONS(3044), [sym_parameters_] = ACTIONS(3044), [sym_gshared] = ACTIONS(3044), [sym_traits] = ACTIONS(3044), [sym_vector] = ACTIONS(3044), [sym_void] = ACTIONS(3044), [anon_sym_BQUOTE] = ACTIONS(3046), [anon_sym_r_DQUOTE] = ACTIONS(3046), [anon_sym_x_DQUOTE] = ACTIONS(3046), [anon_sym_DQUOTE] = ACTIONS(3046), [anon_sym_i_BQUOTE] = ACTIONS(3046), [anon_sym_i_DQUOTE] = ACTIONS(3046), [anon_sym_iq_LBRACE] = ACTIONS(3046), [aux_sym_char_literal_token1] = ACTIONS(3046), [anon_sym_SQUOTE] = ACTIONS(3044), [anon_sym___DATE__] = ACTIONS(3044), [anon_sym___FILE__] = ACTIONS(3044), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3044), [anon_sym___FUNCTION__] = ACTIONS(3044), [anon_sym___LINE__] = ACTIONS(3044), [anon_sym___MODULE__] = ACTIONS(3044), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3044), [anon_sym___TIME__] = ACTIONS(3044), [anon_sym___TIMESTAMP__] = ACTIONS(3044), [anon_sym___VENDOR__] = ACTIONS(3044), [anon_sym___VERSION__] = ACTIONS(3044), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3046), [sym_float_literal] = ACTIONS(3046), [sym__string] = ACTIONS(3046), }, [652] = { [sym_identifier] = ACTIONS(3048), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3050), [anon_sym_RBRACE] = ACTIONS(3050), [anon_sym_LBRACE] = ACTIONS(3050), [anon_sym_SLASH] = ACTIONS(3048), [anon_sym_SLASH_EQ] = ACTIONS(3050), [anon_sym_DOT] = ACTIONS(3048), [anon_sym_DOT_DOT] = ACTIONS(3048), [anon_sym_DOT_DOT_DOT] = ACTIONS(3050), [anon_sym_AMP] = ACTIONS(3048), [anon_sym_AMP_EQ] = ACTIONS(3050), [anon_sym_AMP_AMP] = ACTIONS(3050), [anon_sym_PIPE] = ACTIONS(3048), [anon_sym_PIPE_EQ] = ACTIONS(3050), [anon_sym_PIPE_PIPE] = ACTIONS(3050), [anon_sym_DASH] = ACTIONS(3048), [anon_sym_DASH_EQ] = ACTIONS(3050), [anon_sym_DASH_DASH] = ACTIONS(3050), [anon_sym_PLUS] = ACTIONS(3048), [anon_sym_PLUS_EQ] = ACTIONS(3050), [anon_sym_PLUS_PLUS] = ACTIONS(3050), [anon_sym_LT] = ACTIONS(3048), [anon_sym_LT_EQ] = ACTIONS(3050), [anon_sym_LT_LT] = ACTIONS(3048), [anon_sym_LT_LT_EQ] = ACTIONS(3050), [anon_sym_GT] = ACTIONS(3048), [anon_sym_GT_EQ] = ACTIONS(3050), [anon_sym_GT_GT_EQ] = ACTIONS(3050), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3050), [anon_sym_GT_GT] = ACTIONS(3048), [anon_sym_GT_GT_GT] = ACTIONS(3048), [anon_sym_BANG] = ACTIONS(3048), [anon_sym_BANG_EQ] = ACTIONS(3050), [anon_sym_LPAREN] = ACTIONS(3050), [anon_sym_RPAREN] = ACTIONS(3050), [anon_sym_LBRACK] = ACTIONS(3050), [anon_sym_RBRACK] = ACTIONS(3050), [anon_sym_QMARK] = ACTIONS(3050), [anon_sym_COMMA] = ACTIONS(3050), [anon_sym_SEMI] = ACTIONS(3050), [anon_sym_COLON] = ACTIONS(3050), [anon_sym_DOLLAR] = ACTIONS(3050), [anon_sym_EQ] = ACTIONS(3048), [anon_sym_EQ_EQ] = ACTIONS(3050), [anon_sym_STAR] = ACTIONS(3048), [anon_sym_STAR_EQ] = ACTIONS(3050), [anon_sym_PERCENT] = ACTIONS(3048), [anon_sym_PERCENT_EQ] = ACTIONS(3050), [anon_sym_CARET] = ACTIONS(3048), [anon_sym_CARET_EQ] = ACTIONS(3050), [anon_sym_CARET_CARET] = ACTIONS(3048), [anon_sym_CARET_CARET_EQ] = ACTIONS(3050), [anon_sym_TILDE] = ACTIONS(3048), [anon_sym_TILDE_EQ] = ACTIONS(3050), [anon_sym_AT] = ACTIONS(3050), [anon_sym_EQ_GT] = ACTIONS(3050), [anon_sym_POUND] = ACTIONS(3050), [anon_sym_BANGin] = ACTIONS(3050), [anon_sym_BANGis] = ACTIONS(3050), [sym_bool] = ACTIONS(3048), [sym_byte] = ACTIONS(3048), [sym_ubyte] = ACTIONS(3048), [sym_char] = ACTIONS(3048), [sym_short] = ACTIONS(3048), [sym_ushort] = ACTIONS(3048), [sym_int] = ACTIONS(3048), [sym_uint] = ACTIONS(3048), [sym_long] = ACTIONS(3048), [sym_ulong] = ACTIONS(3048), [sym_cent] = ACTIONS(3048), [sym_ucent] = ACTIONS(3048), [sym_wchar] = ACTIONS(3048), [sym_dchar] = ACTIONS(3048), [sym_float] = ACTIONS(3048), [sym_double] = ACTIONS(3048), [sym_real] = ACTIONS(3048), [sym_ifloat] = ACTIONS(3048), [sym_idouble] = ACTIONS(3048), [sym_ireal] = ACTIONS(3048), [sym_cfloat] = ACTIONS(3048), [sym_cdouble] = ACTIONS(3048), [sym_creal] = ACTIONS(3048), [sym_size_t] = ACTIONS(3048), [sym_ptrdiff_t] = ACTIONS(3048), [sym_string] = ACTIONS(3048), [sym_cstring] = ACTIONS(3048), [sym_dstring] = ACTIONS(3048), [sym_wstring] = ACTIONS(3048), [sym_noreturn] = ACTIONS(3048), [sym_true] = ACTIONS(3048), [sym_false] = ACTIONS(3048), [sym_null] = ACTIONS(3048), [sym_super] = ACTIONS(3048), [sym_this] = ACTIONS(3048), [sym_abstract] = ACTIONS(3048), [sym_alias] = ACTIONS(3048), [sym_align] = ACTIONS(3048), [sym_asm] = ACTIONS(3048), [sym_assert] = ACTIONS(3048), [sym_auto] = ACTIONS(3048), [sym_break] = ACTIONS(3048), [sym_case] = ACTIONS(3048), [sym_cast] = ACTIONS(3048), [sym_catch] = ACTIONS(3048), [sym_class] = ACTIONS(3048), [sym_const] = ACTIONS(3048), [sym_continue] = ACTIONS(3048), [sym_debug] = ACTIONS(3048), [sym_default] = ACTIONS(3048), [sym_delegate] = ACTIONS(3048), [sym_delete] = ACTIONS(3048), [sym_deprecated] = ACTIONS(3048), [sym_do] = ACTIONS(3048), [sym_else] = ACTIONS(3048), [sym_enum] = ACTIONS(3048), [sym_export] = ACTIONS(3048), [sym_extern] = ACTIONS(3048), [sym_final] = ACTIONS(3048), [sym_finally] = ACTIONS(3048), [sym_for] = ACTIONS(3048), [sym_foreach] = ACTIONS(3048), [sym_foreach_reverse] = ACTIONS(3048), [sym_function] = ACTIONS(3048), [sym_goto] = ACTIONS(3048), [sym_if] = ACTIONS(3048), [sym_immutable] = ACTIONS(3048), [sym_import] = ACTIONS(3048), [sym_in] = ACTIONS(3048), [sym_inout] = ACTIONS(3048), [sym_interface] = ACTIONS(3048), [sym_invariant] = ACTIONS(3048), [sym_is] = ACTIONS(3048), [sym_lazy] = ACTIONS(3048), [sym_mixin] = ACTIONS(3048), [sym_module] = ACTIONS(3048), [sym_new] = ACTIONS(3048), [sym_nothrow] = ACTIONS(3048), [sym_out] = ACTIONS(3048), [sym_override] = ACTIONS(3048), [sym_package] = ACTIONS(3048), [sym_pragma] = ACTIONS(3048), [sym_private] = ACTIONS(3048), [sym_protected] = ACTIONS(3048), [sym_public] = ACTIONS(3048), [sym_pure] = ACTIONS(3048), [sym_ref] = ACTIONS(3048), [sym_return] = ACTIONS(3048), [sym_scope] = ACTIONS(3048), [sym_shared] = ACTIONS(3048), [sym_static] = ACTIONS(3048), [sym_struct] = ACTIONS(3048), [sym_switch] = ACTIONS(3048), [sym_synchronized] = ACTIONS(3048), [sym_template] = ACTIONS(3048), [sym_throw] = ACTIONS(3048), [sym_try] = ACTIONS(3048), [sym_typeid] = ACTIONS(3048), [sym_typeof] = ACTIONS(3048), [sym_union] = ACTIONS(3048), [sym_unittest] = ACTIONS(3048), [sym_version] = ACTIONS(3048), [sym_while] = ACTIONS(3048), [sym_with] = ACTIONS(3048), [sym_parameters_] = ACTIONS(3048), [sym_gshared] = ACTIONS(3048), [sym_traits] = ACTIONS(3048), [sym_vector] = ACTIONS(3048), [sym_void] = ACTIONS(3048), [anon_sym_BQUOTE] = ACTIONS(3050), [anon_sym_r_DQUOTE] = ACTIONS(3050), [anon_sym_x_DQUOTE] = ACTIONS(3050), [anon_sym_DQUOTE] = ACTIONS(3050), [anon_sym_i_BQUOTE] = ACTIONS(3050), [anon_sym_i_DQUOTE] = ACTIONS(3050), [anon_sym_iq_LBRACE] = ACTIONS(3050), [aux_sym_char_literal_token1] = ACTIONS(3050), [anon_sym_SQUOTE] = ACTIONS(3048), [anon_sym___DATE__] = ACTIONS(3048), [anon_sym___FILE__] = ACTIONS(3048), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3048), [anon_sym___FUNCTION__] = ACTIONS(3048), [anon_sym___LINE__] = ACTIONS(3048), [anon_sym___MODULE__] = ACTIONS(3048), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3048), [anon_sym___TIME__] = ACTIONS(3048), [anon_sym___TIMESTAMP__] = ACTIONS(3048), [anon_sym___VENDOR__] = ACTIONS(3048), [anon_sym___VERSION__] = ACTIONS(3048), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3050), [sym_float_literal] = ACTIONS(3050), [sym__string] = ACTIONS(3050), }, [653] = { [sym_identifier] = ACTIONS(2980), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2982), [anon_sym_RBRACE] = ACTIONS(2982), [anon_sym_LBRACE] = ACTIONS(2982), [anon_sym_SLASH] = ACTIONS(2980), [anon_sym_SLASH_EQ] = ACTIONS(2982), [anon_sym_DOT] = ACTIONS(2980), [anon_sym_DOT_DOT] = ACTIONS(2980), [anon_sym_DOT_DOT_DOT] = ACTIONS(2982), [anon_sym_AMP] = ACTIONS(2980), [anon_sym_AMP_EQ] = ACTIONS(2982), [anon_sym_AMP_AMP] = ACTIONS(2982), [anon_sym_PIPE] = ACTIONS(2980), [anon_sym_PIPE_EQ] = ACTIONS(2982), [anon_sym_PIPE_PIPE] = ACTIONS(2982), [anon_sym_DASH] = ACTIONS(2980), [anon_sym_DASH_EQ] = ACTIONS(2982), [anon_sym_DASH_DASH] = ACTIONS(2982), [anon_sym_PLUS] = ACTIONS(2980), [anon_sym_PLUS_EQ] = ACTIONS(2982), [anon_sym_PLUS_PLUS] = ACTIONS(2982), [anon_sym_LT] = ACTIONS(2980), [anon_sym_LT_EQ] = ACTIONS(2982), [anon_sym_LT_LT] = ACTIONS(2980), [anon_sym_LT_LT_EQ] = ACTIONS(2982), [anon_sym_GT] = ACTIONS(2980), [anon_sym_GT_EQ] = ACTIONS(2982), [anon_sym_GT_GT_EQ] = ACTIONS(2982), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2982), [anon_sym_GT_GT] = ACTIONS(2980), [anon_sym_GT_GT_GT] = ACTIONS(2980), [anon_sym_BANG] = ACTIONS(2980), [anon_sym_BANG_EQ] = ACTIONS(2982), [anon_sym_LPAREN] = ACTIONS(2982), [anon_sym_RPAREN] = ACTIONS(2982), [anon_sym_LBRACK] = ACTIONS(2982), [anon_sym_RBRACK] = ACTIONS(2982), [anon_sym_QMARK] = ACTIONS(2982), [anon_sym_COMMA] = ACTIONS(2982), [anon_sym_SEMI] = ACTIONS(2982), [anon_sym_COLON] = ACTIONS(2982), [anon_sym_DOLLAR] = ACTIONS(2982), [anon_sym_EQ] = ACTIONS(2980), [anon_sym_EQ_EQ] = ACTIONS(2982), [anon_sym_STAR] = ACTIONS(2980), [anon_sym_STAR_EQ] = ACTIONS(2982), [anon_sym_PERCENT] = ACTIONS(2980), [anon_sym_PERCENT_EQ] = ACTIONS(2982), [anon_sym_CARET] = ACTIONS(2980), [anon_sym_CARET_EQ] = ACTIONS(2982), [anon_sym_CARET_CARET] = ACTIONS(2980), [anon_sym_CARET_CARET_EQ] = ACTIONS(2982), [anon_sym_TILDE] = ACTIONS(2980), [anon_sym_TILDE_EQ] = ACTIONS(2982), [anon_sym_AT] = ACTIONS(2982), [anon_sym_EQ_GT] = ACTIONS(2982), [anon_sym_POUND] = ACTIONS(2982), [anon_sym_BANGin] = ACTIONS(2982), [anon_sym_BANGis] = ACTIONS(2982), [sym_bool] = ACTIONS(2980), [sym_byte] = ACTIONS(2980), [sym_ubyte] = ACTIONS(2980), [sym_char] = ACTIONS(2980), [sym_short] = ACTIONS(2980), [sym_ushort] = ACTIONS(2980), [sym_int] = ACTIONS(2980), [sym_uint] = ACTIONS(2980), [sym_long] = ACTIONS(2980), [sym_ulong] = ACTIONS(2980), [sym_cent] = ACTIONS(2980), [sym_ucent] = ACTIONS(2980), [sym_wchar] = ACTIONS(2980), [sym_dchar] = ACTIONS(2980), [sym_float] = ACTIONS(2980), [sym_double] = ACTIONS(2980), [sym_real] = ACTIONS(2980), [sym_ifloat] = ACTIONS(2980), [sym_idouble] = ACTIONS(2980), [sym_ireal] = ACTIONS(2980), [sym_cfloat] = ACTIONS(2980), [sym_cdouble] = ACTIONS(2980), [sym_creal] = ACTIONS(2980), [sym_size_t] = ACTIONS(2980), [sym_ptrdiff_t] = ACTIONS(2980), [sym_string] = ACTIONS(2980), [sym_cstring] = ACTIONS(2980), [sym_dstring] = ACTIONS(2980), [sym_wstring] = ACTIONS(2980), [sym_noreturn] = ACTIONS(2980), [sym_true] = ACTIONS(2980), [sym_false] = ACTIONS(2980), [sym_null] = ACTIONS(2980), [sym_super] = ACTIONS(2980), [sym_this] = ACTIONS(2980), [sym_abstract] = ACTIONS(2980), [sym_alias] = ACTIONS(2980), [sym_align] = ACTIONS(2980), [sym_asm] = ACTIONS(2980), [sym_assert] = ACTIONS(2980), [sym_auto] = ACTIONS(2980), [sym_break] = ACTIONS(2980), [sym_case] = ACTIONS(2980), [sym_cast] = ACTIONS(2980), [sym_catch] = ACTIONS(2980), [sym_class] = ACTIONS(2980), [sym_const] = ACTIONS(2980), [sym_continue] = ACTIONS(2980), [sym_debug] = ACTIONS(2980), [sym_default] = ACTIONS(2980), [sym_delegate] = ACTIONS(2980), [sym_delete] = ACTIONS(2980), [sym_deprecated] = ACTIONS(2980), [sym_do] = ACTIONS(2980), [sym_else] = ACTIONS(2980), [sym_enum] = ACTIONS(2980), [sym_export] = ACTIONS(2980), [sym_extern] = ACTIONS(2980), [sym_final] = ACTIONS(2980), [sym_finally] = ACTIONS(2980), [sym_for] = ACTIONS(2980), [sym_foreach] = ACTIONS(2980), [sym_foreach_reverse] = ACTIONS(2980), [sym_function] = ACTIONS(2980), [sym_goto] = ACTIONS(2980), [sym_if] = ACTIONS(2980), [sym_immutable] = ACTIONS(2980), [sym_import] = ACTIONS(2980), [sym_in] = ACTIONS(2980), [sym_inout] = ACTIONS(2980), [sym_interface] = ACTIONS(2980), [sym_invariant] = ACTIONS(2980), [sym_is] = ACTIONS(2980), [sym_lazy] = ACTIONS(2980), [sym_mixin] = ACTIONS(2980), [sym_module] = ACTIONS(2980), [sym_new] = ACTIONS(2980), [sym_nothrow] = ACTIONS(2980), [sym_out] = ACTIONS(2980), [sym_override] = ACTIONS(2980), [sym_package] = ACTIONS(2980), [sym_pragma] = ACTIONS(2980), [sym_private] = ACTIONS(2980), [sym_protected] = ACTIONS(2980), [sym_public] = ACTIONS(2980), [sym_pure] = ACTIONS(2980), [sym_ref] = ACTIONS(2980), [sym_return] = ACTIONS(2980), [sym_scope] = ACTIONS(2980), [sym_shared] = ACTIONS(2980), [sym_static] = ACTIONS(2980), [sym_struct] = ACTIONS(2980), [sym_switch] = ACTIONS(2980), [sym_synchronized] = ACTIONS(2980), [sym_template] = ACTIONS(2980), [sym_throw] = ACTIONS(2980), [sym_try] = ACTIONS(2980), [sym_typeid] = ACTIONS(2980), [sym_typeof] = ACTIONS(2980), [sym_union] = ACTIONS(2980), [sym_unittest] = ACTIONS(2980), [sym_version] = ACTIONS(2980), [sym_while] = ACTIONS(2980), [sym_with] = ACTIONS(2980), [sym_parameters_] = ACTIONS(2980), [sym_gshared] = ACTIONS(2980), [sym_traits] = ACTIONS(2980), [sym_vector] = ACTIONS(2980), [sym_void] = ACTIONS(2980), [anon_sym_BQUOTE] = ACTIONS(2982), [anon_sym_r_DQUOTE] = ACTIONS(2982), [anon_sym_x_DQUOTE] = ACTIONS(2982), [anon_sym_DQUOTE] = ACTIONS(2982), [anon_sym_i_BQUOTE] = ACTIONS(2982), [anon_sym_i_DQUOTE] = ACTIONS(2982), [anon_sym_iq_LBRACE] = ACTIONS(2982), [aux_sym_char_literal_token1] = ACTIONS(2982), [anon_sym_SQUOTE] = ACTIONS(2980), [anon_sym___DATE__] = ACTIONS(2980), [anon_sym___FILE__] = ACTIONS(2980), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2980), [anon_sym___FUNCTION__] = ACTIONS(2980), [anon_sym___LINE__] = ACTIONS(2980), [anon_sym___MODULE__] = ACTIONS(2980), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2980), [anon_sym___TIME__] = ACTIONS(2980), [anon_sym___TIMESTAMP__] = ACTIONS(2980), [anon_sym___VENDOR__] = ACTIONS(2980), [anon_sym___VERSION__] = ACTIONS(2980), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2982), [sym_float_literal] = ACTIONS(2982), [sym__string] = ACTIONS(2982), }, [654] = { [sym_identifier] = ACTIONS(3012), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3014), [anon_sym_RBRACE] = ACTIONS(3014), [anon_sym_LBRACE] = ACTIONS(3014), [anon_sym_SLASH] = ACTIONS(3012), [anon_sym_SLASH_EQ] = ACTIONS(3014), [anon_sym_DOT] = ACTIONS(3012), [anon_sym_DOT_DOT] = ACTIONS(3012), [anon_sym_DOT_DOT_DOT] = ACTIONS(3014), [anon_sym_AMP] = ACTIONS(3012), [anon_sym_AMP_EQ] = ACTIONS(3014), [anon_sym_AMP_AMP] = ACTIONS(3014), [anon_sym_PIPE] = ACTIONS(3012), [anon_sym_PIPE_EQ] = ACTIONS(3014), [anon_sym_PIPE_PIPE] = ACTIONS(3014), [anon_sym_DASH] = ACTIONS(3012), [anon_sym_DASH_EQ] = ACTIONS(3014), [anon_sym_DASH_DASH] = ACTIONS(3014), [anon_sym_PLUS] = ACTIONS(3012), [anon_sym_PLUS_EQ] = ACTIONS(3014), [anon_sym_PLUS_PLUS] = ACTIONS(3014), [anon_sym_LT] = ACTIONS(3012), [anon_sym_LT_EQ] = ACTIONS(3014), [anon_sym_LT_LT] = ACTIONS(3012), [anon_sym_LT_LT_EQ] = ACTIONS(3014), [anon_sym_GT] = ACTIONS(3012), [anon_sym_GT_EQ] = ACTIONS(3014), [anon_sym_GT_GT_EQ] = ACTIONS(3014), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3014), [anon_sym_GT_GT] = ACTIONS(3012), [anon_sym_GT_GT_GT] = ACTIONS(3012), [anon_sym_BANG] = ACTIONS(3012), [anon_sym_BANG_EQ] = ACTIONS(3014), [anon_sym_LPAREN] = ACTIONS(3014), [anon_sym_RPAREN] = ACTIONS(3014), [anon_sym_LBRACK] = ACTIONS(3014), [anon_sym_RBRACK] = ACTIONS(3014), [anon_sym_QMARK] = ACTIONS(3014), [anon_sym_COMMA] = ACTIONS(3014), [anon_sym_SEMI] = ACTIONS(3014), [anon_sym_COLON] = ACTIONS(3014), [anon_sym_DOLLAR] = ACTIONS(3014), [anon_sym_EQ] = ACTIONS(3012), [anon_sym_EQ_EQ] = ACTIONS(3014), [anon_sym_STAR] = ACTIONS(3012), [anon_sym_STAR_EQ] = ACTIONS(3014), [anon_sym_PERCENT] = ACTIONS(3012), [anon_sym_PERCENT_EQ] = ACTIONS(3014), [anon_sym_CARET] = ACTIONS(3012), [anon_sym_CARET_EQ] = ACTIONS(3014), [anon_sym_CARET_CARET] = ACTIONS(3012), [anon_sym_CARET_CARET_EQ] = ACTIONS(3014), [anon_sym_TILDE] = ACTIONS(3012), [anon_sym_TILDE_EQ] = ACTIONS(3014), [anon_sym_AT] = ACTIONS(3014), [anon_sym_EQ_GT] = ACTIONS(3014), [anon_sym_POUND] = ACTIONS(3014), [anon_sym_BANGin] = ACTIONS(3014), [anon_sym_BANGis] = ACTIONS(3014), [sym_bool] = ACTIONS(3012), [sym_byte] = ACTIONS(3012), [sym_ubyte] = ACTIONS(3012), [sym_char] = ACTIONS(3012), [sym_short] = ACTIONS(3012), [sym_ushort] = ACTIONS(3012), [sym_int] = ACTIONS(3012), [sym_uint] = ACTIONS(3012), [sym_long] = ACTIONS(3012), [sym_ulong] = ACTIONS(3012), [sym_cent] = ACTIONS(3012), [sym_ucent] = ACTIONS(3012), [sym_wchar] = ACTIONS(3012), [sym_dchar] = ACTIONS(3012), [sym_float] = ACTIONS(3012), [sym_double] = ACTIONS(3012), [sym_real] = ACTIONS(3012), [sym_ifloat] = ACTIONS(3012), [sym_idouble] = ACTIONS(3012), [sym_ireal] = ACTIONS(3012), [sym_cfloat] = ACTIONS(3012), [sym_cdouble] = ACTIONS(3012), [sym_creal] = ACTIONS(3012), [sym_size_t] = ACTIONS(3012), [sym_ptrdiff_t] = ACTIONS(3012), [sym_string] = ACTIONS(3012), [sym_cstring] = ACTIONS(3012), [sym_dstring] = ACTIONS(3012), [sym_wstring] = ACTIONS(3012), [sym_noreturn] = ACTIONS(3012), [sym_true] = ACTIONS(3012), [sym_false] = ACTIONS(3012), [sym_null] = ACTIONS(3012), [sym_super] = ACTIONS(3012), [sym_this] = ACTIONS(3012), [sym_abstract] = ACTIONS(3012), [sym_alias] = ACTIONS(3012), [sym_align] = ACTIONS(3012), [sym_asm] = ACTIONS(3012), [sym_assert] = ACTIONS(3012), [sym_auto] = ACTIONS(3012), [sym_break] = ACTIONS(3012), [sym_case] = ACTIONS(3012), [sym_cast] = ACTIONS(3012), [sym_catch] = ACTIONS(3012), [sym_class] = ACTIONS(3012), [sym_const] = ACTIONS(3012), [sym_continue] = ACTIONS(3012), [sym_debug] = ACTIONS(3012), [sym_default] = ACTIONS(3012), [sym_delegate] = ACTIONS(3012), [sym_delete] = ACTIONS(3012), [sym_deprecated] = ACTIONS(3012), [sym_do] = ACTIONS(3012), [sym_else] = ACTIONS(3012), [sym_enum] = ACTIONS(3012), [sym_export] = ACTIONS(3012), [sym_extern] = ACTIONS(3012), [sym_final] = ACTIONS(3012), [sym_finally] = ACTIONS(3012), [sym_for] = ACTIONS(3012), [sym_foreach] = ACTIONS(3012), [sym_foreach_reverse] = ACTIONS(3012), [sym_function] = ACTIONS(3012), [sym_goto] = ACTIONS(3012), [sym_if] = ACTIONS(3012), [sym_immutable] = ACTIONS(3012), [sym_import] = ACTIONS(3012), [sym_in] = ACTIONS(3012), [sym_inout] = ACTIONS(3012), [sym_interface] = ACTIONS(3012), [sym_invariant] = ACTIONS(3012), [sym_is] = ACTIONS(3012), [sym_lazy] = ACTIONS(3012), [sym_mixin] = ACTIONS(3012), [sym_module] = ACTIONS(3012), [sym_new] = ACTIONS(3012), [sym_nothrow] = ACTIONS(3012), [sym_out] = ACTIONS(3012), [sym_override] = ACTIONS(3012), [sym_package] = ACTIONS(3012), [sym_pragma] = ACTIONS(3012), [sym_private] = ACTIONS(3012), [sym_protected] = ACTIONS(3012), [sym_public] = ACTIONS(3012), [sym_pure] = ACTIONS(3012), [sym_ref] = ACTIONS(3012), [sym_return] = ACTIONS(3012), [sym_scope] = ACTIONS(3012), [sym_shared] = ACTIONS(3012), [sym_static] = ACTIONS(3012), [sym_struct] = ACTIONS(3012), [sym_switch] = ACTIONS(3012), [sym_synchronized] = ACTIONS(3012), [sym_template] = ACTIONS(3012), [sym_throw] = ACTIONS(3012), [sym_try] = ACTIONS(3012), [sym_typeid] = ACTIONS(3012), [sym_typeof] = ACTIONS(3012), [sym_union] = ACTIONS(3012), [sym_unittest] = ACTIONS(3012), [sym_version] = ACTIONS(3012), [sym_while] = ACTIONS(3012), [sym_with] = ACTIONS(3012), [sym_parameters_] = ACTIONS(3012), [sym_gshared] = ACTIONS(3012), [sym_traits] = ACTIONS(3012), [sym_vector] = ACTIONS(3012), [sym_void] = ACTIONS(3012), [anon_sym_BQUOTE] = ACTIONS(3014), [anon_sym_r_DQUOTE] = ACTIONS(3014), [anon_sym_x_DQUOTE] = ACTIONS(3014), [anon_sym_DQUOTE] = ACTIONS(3014), [anon_sym_i_BQUOTE] = ACTIONS(3014), [anon_sym_i_DQUOTE] = ACTIONS(3014), [anon_sym_iq_LBRACE] = ACTIONS(3014), [aux_sym_char_literal_token1] = ACTIONS(3014), [anon_sym_SQUOTE] = ACTIONS(3012), [anon_sym___DATE__] = ACTIONS(3012), [anon_sym___FILE__] = ACTIONS(3012), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3012), [anon_sym___FUNCTION__] = ACTIONS(3012), [anon_sym___LINE__] = ACTIONS(3012), [anon_sym___MODULE__] = ACTIONS(3012), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3012), [anon_sym___TIME__] = ACTIONS(3012), [anon_sym___TIMESTAMP__] = ACTIONS(3012), [anon_sym___VENDOR__] = ACTIONS(3012), [anon_sym___VERSION__] = ACTIONS(3012), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3014), [sym_float_literal] = ACTIONS(3014), [sym__string] = ACTIONS(3014), }, [655] = { [sym_identifier] = ACTIONS(3024), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3026), [anon_sym_RBRACE] = ACTIONS(3026), [anon_sym_LBRACE] = ACTIONS(3026), [anon_sym_SLASH] = ACTIONS(3024), [anon_sym_SLASH_EQ] = ACTIONS(3026), [anon_sym_DOT] = ACTIONS(3024), [anon_sym_DOT_DOT] = ACTIONS(3024), [anon_sym_DOT_DOT_DOT] = ACTIONS(3026), [anon_sym_AMP] = ACTIONS(3024), [anon_sym_AMP_EQ] = ACTIONS(3026), [anon_sym_AMP_AMP] = ACTIONS(3026), [anon_sym_PIPE] = ACTIONS(3024), [anon_sym_PIPE_EQ] = ACTIONS(3026), [anon_sym_PIPE_PIPE] = ACTIONS(3026), [anon_sym_DASH] = ACTIONS(3024), [anon_sym_DASH_EQ] = ACTIONS(3026), [anon_sym_DASH_DASH] = ACTIONS(3026), [anon_sym_PLUS] = ACTIONS(3024), [anon_sym_PLUS_EQ] = ACTIONS(3026), [anon_sym_PLUS_PLUS] = ACTIONS(3026), [anon_sym_LT] = ACTIONS(3024), [anon_sym_LT_EQ] = ACTIONS(3026), [anon_sym_LT_LT] = ACTIONS(3024), [anon_sym_LT_LT_EQ] = ACTIONS(3026), [anon_sym_GT] = ACTIONS(3024), [anon_sym_GT_EQ] = ACTIONS(3026), [anon_sym_GT_GT_EQ] = ACTIONS(3026), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3026), [anon_sym_GT_GT] = ACTIONS(3024), [anon_sym_GT_GT_GT] = ACTIONS(3024), [anon_sym_BANG] = ACTIONS(3024), [anon_sym_BANG_EQ] = ACTIONS(3026), [anon_sym_LPAREN] = ACTIONS(3026), [anon_sym_RPAREN] = ACTIONS(3026), [anon_sym_LBRACK] = ACTIONS(3026), [anon_sym_RBRACK] = ACTIONS(3026), [anon_sym_QMARK] = ACTIONS(3026), [anon_sym_COMMA] = ACTIONS(3026), [anon_sym_SEMI] = ACTIONS(3026), [anon_sym_COLON] = ACTIONS(3026), [anon_sym_DOLLAR] = ACTIONS(3026), [anon_sym_EQ] = ACTIONS(3024), [anon_sym_EQ_EQ] = ACTIONS(3026), [anon_sym_STAR] = ACTIONS(3024), [anon_sym_STAR_EQ] = ACTIONS(3026), [anon_sym_PERCENT] = ACTIONS(3024), [anon_sym_PERCENT_EQ] = ACTIONS(3026), [anon_sym_CARET] = ACTIONS(3024), [anon_sym_CARET_EQ] = ACTIONS(3026), [anon_sym_CARET_CARET] = ACTIONS(3024), [anon_sym_CARET_CARET_EQ] = ACTIONS(3026), [anon_sym_TILDE] = ACTIONS(3024), [anon_sym_TILDE_EQ] = ACTIONS(3026), [anon_sym_AT] = ACTIONS(3026), [anon_sym_EQ_GT] = ACTIONS(3026), [anon_sym_POUND] = ACTIONS(3026), [anon_sym_BANGin] = ACTIONS(3026), [anon_sym_BANGis] = ACTIONS(3026), [sym_bool] = ACTIONS(3024), [sym_byte] = ACTIONS(3024), [sym_ubyte] = ACTIONS(3024), [sym_char] = ACTIONS(3024), [sym_short] = ACTIONS(3024), [sym_ushort] = ACTIONS(3024), [sym_int] = ACTIONS(3024), [sym_uint] = ACTIONS(3024), [sym_long] = ACTIONS(3024), [sym_ulong] = ACTIONS(3024), [sym_cent] = ACTIONS(3024), [sym_ucent] = ACTIONS(3024), [sym_wchar] = ACTIONS(3024), [sym_dchar] = ACTIONS(3024), [sym_float] = ACTIONS(3024), [sym_double] = ACTIONS(3024), [sym_real] = ACTIONS(3024), [sym_ifloat] = ACTIONS(3024), [sym_idouble] = ACTIONS(3024), [sym_ireal] = ACTIONS(3024), [sym_cfloat] = ACTIONS(3024), [sym_cdouble] = ACTIONS(3024), [sym_creal] = ACTIONS(3024), [sym_size_t] = ACTIONS(3024), [sym_ptrdiff_t] = ACTIONS(3024), [sym_string] = ACTIONS(3024), [sym_cstring] = ACTIONS(3024), [sym_dstring] = ACTIONS(3024), [sym_wstring] = ACTIONS(3024), [sym_noreturn] = ACTIONS(3024), [sym_true] = ACTIONS(3024), [sym_false] = ACTIONS(3024), [sym_null] = ACTIONS(3024), [sym_super] = ACTIONS(3024), [sym_this] = ACTIONS(3024), [sym_abstract] = ACTIONS(3024), [sym_alias] = ACTIONS(3024), [sym_align] = ACTIONS(3024), [sym_asm] = ACTIONS(3024), [sym_assert] = ACTIONS(3024), [sym_auto] = ACTIONS(3024), [sym_break] = ACTIONS(3024), [sym_case] = ACTIONS(3024), [sym_cast] = ACTIONS(3024), [sym_catch] = ACTIONS(3024), [sym_class] = ACTIONS(3024), [sym_const] = ACTIONS(3024), [sym_continue] = ACTIONS(3024), [sym_debug] = ACTIONS(3024), [sym_default] = ACTIONS(3024), [sym_delegate] = ACTIONS(3024), [sym_delete] = ACTIONS(3024), [sym_deprecated] = ACTIONS(3024), [sym_do] = ACTIONS(3024), [sym_else] = ACTIONS(3024), [sym_enum] = ACTIONS(3024), [sym_export] = ACTIONS(3024), [sym_extern] = ACTIONS(3024), [sym_final] = ACTIONS(3024), [sym_finally] = ACTIONS(3024), [sym_for] = ACTIONS(3024), [sym_foreach] = ACTIONS(3024), [sym_foreach_reverse] = ACTIONS(3024), [sym_function] = ACTIONS(3024), [sym_goto] = ACTIONS(3024), [sym_if] = ACTIONS(3024), [sym_immutable] = ACTIONS(3024), [sym_import] = ACTIONS(3024), [sym_in] = ACTIONS(3024), [sym_inout] = ACTIONS(3024), [sym_interface] = ACTIONS(3024), [sym_invariant] = ACTIONS(3024), [sym_is] = ACTIONS(3024), [sym_lazy] = ACTIONS(3024), [sym_mixin] = ACTIONS(3024), [sym_module] = ACTIONS(3024), [sym_new] = ACTIONS(3024), [sym_nothrow] = ACTIONS(3024), [sym_out] = ACTIONS(3024), [sym_override] = ACTIONS(3024), [sym_package] = ACTIONS(3024), [sym_pragma] = ACTIONS(3024), [sym_private] = ACTIONS(3024), [sym_protected] = ACTIONS(3024), [sym_public] = ACTIONS(3024), [sym_pure] = ACTIONS(3024), [sym_ref] = ACTIONS(3024), [sym_return] = ACTIONS(3024), [sym_scope] = ACTIONS(3024), [sym_shared] = ACTIONS(3024), [sym_static] = ACTIONS(3024), [sym_struct] = ACTIONS(3024), [sym_switch] = ACTIONS(3024), [sym_synchronized] = ACTIONS(3024), [sym_template] = ACTIONS(3024), [sym_throw] = ACTIONS(3024), [sym_try] = ACTIONS(3024), [sym_typeid] = ACTIONS(3024), [sym_typeof] = ACTIONS(3024), [sym_union] = ACTIONS(3024), [sym_unittest] = ACTIONS(3024), [sym_version] = ACTIONS(3024), [sym_while] = ACTIONS(3024), [sym_with] = ACTIONS(3024), [sym_parameters_] = ACTIONS(3024), [sym_gshared] = ACTIONS(3024), [sym_traits] = ACTIONS(3024), [sym_vector] = ACTIONS(3024), [sym_void] = ACTIONS(3024), [anon_sym_BQUOTE] = ACTIONS(3026), [anon_sym_r_DQUOTE] = ACTIONS(3026), [anon_sym_x_DQUOTE] = ACTIONS(3026), [anon_sym_DQUOTE] = ACTIONS(3026), [anon_sym_i_BQUOTE] = ACTIONS(3026), [anon_sym_i_DQUOTE] = ACTIONS(3026), [anon_sym_iq_LBRACE] = ACTIONS(3026), [aux_sym_char_literal_token1] = ACTIONS(3026), [anon_sym_SQUOTE] = ACTIONS(3024), [anon_sym___DATE__] = ACTIONS(3024), [anon_sym___FILE__] = ACTIONS(3024), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3024), [anon_sym___FUNCTION__] = ACTIONS(3024), [anon_sym___LINE__] = ACTIONS(3024), [anon_sym___MODULE__] = ACTIONS(3024), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3024), [anon_sym___TIME__] = ACTIONS(3024), [anon_sym___TIMESTAMP__] = ACTIONS(3024), [anon_sym___VENDOR__] = ACTIONS(3024), [anon_sym___VERSION__] = ACTIONS(3024), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3026), [sym_float_literal] = ACTIONS(3026), [sym__string] = ACTIONS(3026), }, [656] = { [sym_identifier] = ACTIONS(3028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3030), [anon_sym_RBRACE] = ACTIONS(3030), [anon_sym_LBRACE] = ACTIONS(3030), [anon_sym_SLASH] = ACTIONS(3028), [anon_sym_SLASH_EQ] = ACTIONS(3030), [anon_sym_DOT] = ACTIONS(3028), [anon_sym_DOT_DOT] = ACTIONS(3028), [anon_sym_DOT_DOT_DOT] = ACTIONS(3030), [anon_sym_AMP] = ACTIONS(3028), [anon_sym_AMP_EQ] = ACTIONS(3030), [anon_sym_AMP_AMP] = ACTIONS(3030), [anon_sym_PIPE] = ACTIONS(3028), [anon_sym_PIPE_EQ] = ACTIONS(3030), [anon_sym_PIPE_PIPE] = ACTIONS(3030), [anon_sym_DASH] = ACTIONS(3028), [anon_sym_DASH_EQ] = ACTIONS(3030), [anon_sym_DASH_DASH] = ACTIONS(3030), [anon_sym_PLUS] = ACTIONS(3028), [anon_sym_PLUS_EQ] = ACTIONS(3030), [anon_sym_PLUS_PLUS] = ACTIONS(3030), [anon_sym_LT] = ACTIONS(3028), [anon_sym_LT_EQ] = ACTIONS(3030), [anon_sym_LT_LT] = ACTIONS(3028), [anon_sym_LT_LT_EQ] = ACTIONS(3030), [anon_sym_GT] = ACTIONS(3028), [anon_sym_GT_EQ] = ACTIONS(3030), [anon_sym_GT_GT_EQ] = ACTIONS(3030), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3030), [anon_sym_GT_GT] = ACTIONS(3028), [anon_sym_GT_GT_GT] = ACTIONS(3028), [anon_sym_BANG] = ACTIONS(3028), [anon_sym_BANG_EQ] = ACTIONS(3030), [anon_sym_LPAREN] = ACTIONS(3030), [anon_sym_RPAREN] = ACTIONS(3030), [anon_sym_LBRACK] = ACTIONS(3030), [anon_sym_RBRACK] = ACTIONS(3030), [anon_sym_QMARK] = ACTIONS(3030), [anon_sym_COMMA] = ACTIONS(3030), [anon_sym_SEMI] = ACTIONS(3030), [anon_sym_COLON] = ACTIONS(3030), [anon_sym_DOLLAR] = ACTIONS(3030), [anon_sym_EQ] = ACTIONS(3028), [anon_sym_EQ_EQ] = ACTIONS(3030), [anon_sym_STAR] = ACTIONS(3028), [anon_sym_STAR_EQ] = ACTIONS(3030), [anon_sym_PERCENT] = ACTIONS(3028), [anon_sym_PERCENT_EQ] = ACTIONS(3030), [anon_sym_CARET] = ACTIONS(3028), [anon_sym_CARET_EQ] = ACTIONS(3030), [anon_sym_CARET_CARET] = ACTIONS(3028), [anon_sym_CARET_CARET_EQ] = ACTIONS(3030), [anon_sym_TILDE] = ACTIONS(3028), [anon_sym_TILDE_EQ] = ACTIONS(3030), [anon_sym_AT] = ACTIONS(3030), [anon_sym_EQ_GT] = ACTIONS(3030), [anon_sym_POUND] = ACTIONS(3030), [anon_sym_BANGin] = ACTIONS(3030), [anon_sym_BANGis] = ACTIONS(3030), [sym_bool] = ACTIONS(3028), [sym_byte] = ACTIONS(3028), [sym_ubyte] = ACTIONS(3028), [sym_char] = ACTIONS(3028), [sym_short] = ACTIONS(3028), [sym_ushort] = ACTIONS(3028), [sym_int] = ACTIONS(3028), [sym_uint] = ACTIONS(3028), [sym_long] = ACTIONS(3028), [sym_ulong] = ACTIONS(3028), [sym_cent] = ACTIONS(3028), [sym_ucent] = ACTIONS(3028), [sym_wchar] = ACTIONS(3028), [sym_dchar] = ACTIONS(3028), [sym_float] = ACTIONS(3028), [sym_double] = ACTIONS(3028), [sym_real] = ACTIONS(3028), [sym_ifloat] = ACTIONS(3028), [sym_idouble] = ACTIONS(3028), [sym_ireal] = ACTIONS(3028), [sym_cfloat] = ACTIONS(3028), [sym_cdouble] = ACTIONS(3028), [sym_creal] = ACTIONS(3028), [sym_size_t] = ACTIONS(3028), [sym_ptrdiff_t] = ACTIONS(3028), [sym_string] = ACTIONS(3028), [sym_cstring] = ACTIONS(3028), [sym_dstring] = ACTIONS(3028), [sym_wstring] = ACTIONS(3028), [sym_noreturn] = ACTIONS(3028), [sym_true] = ACTIONS(3028), [sym_false] = ACTIONS(3028), [sym_null] = ACTIONS(3028), [sym_super] = ACTIONS(3028), [sym_this] = ACTIONS(3028), [sym_abstract] = ACTIONS(3028), [sym_alias] = ACTIONS(3028), [sym_align] = ACTIONS(3028), [sym_asm] = ACTIONS(3028), [sym_assert] = ACTIONS(3028), [sym_auto] = ACTIONS(3028), [sym_break] = ACTIONS(3028), [sym_case] = ACTIONS(3028), [sym_cast] = ACTIONS(3028), [sym_catch] = ACTIONS(3028), [sym_class] = ACTIONS(3028), [sym_const] = ACTIONS(3028), [sym_continue] = ACTIONS(3028), [sym_debug] = ACTIONS(3028), [sym_default] = ACTIONS(3028), [sym_delegate] = ACTIONS(3028), [sym_delete] = ACTIONS(3028), [sym_deprecated] = ACTIONS(3028), [sym_do] = ACTIONS(3028), [sym_else] = ACTIONS(3028), [sym_enum] = ACTIONS(3028), [sym_export] = ACTIONS(3028), [sym_extern] = ACTIONS(3028), [sym_final] = ACTIONS(3028), [sym_finally] = ACTIONS(3028), [sym_for] = ACTIONS(3028), [sym_foreach] = ACTIONS(3028), [sym_foreach_reverse] = ACTIONS(3028), [sym_function] = ACTIONS(3028), [sym_goto] = ACTIONS(3028), [sym_if] = ACTIONS(3028), [sym_immutable] = ACTIONS(3028), [sym_import] = ACTIONS(3028), [sym_in] = ACTIONS(3028), [sym_inout] = ACTIONS(3028), [sym_interface] = ACTIONS(3028), [sym_invariant] = ACTIONS(3028), [sym_is] = ACTIONS(3028), [sym_lazy] = ACTIONS(3028), [sym_mixin] = ACTIONS(3028), [sym_module] = ACTIONS(3028), [sym_new] = ACTIONS(3028), [sym_nothrow] = ACTIONS(3028), [sym_out] = ACTIONS(3028), [sym_override] = ACTIONS(3028), [sym_package] = ACTIONS(3028), [sym_pragma] = ACTIONS(3028), [sym_private] = ACTIONS(3028), [sym_protected] = ACTIONS(3028), [sym_public] = ACTIONS(3028), [sym_pure] = ACTIONS(3028), [sym_ref] = ACTIONS(3028), [sym_return] = ACTIONS(3028), [sym_scope] = ACTIONS(3028), [sym_shared] = ACTIONS(3028), [sym_static] = ACTIONS(3028), [sym_struct] = ACTIONS(3028), [sym_switch] = ACTIONS(3028), [sym_synchronized] = ACTIONS(3028), [sym_template] = ACTIONS(3028), [sym_throw] = ACTIONS(3028), [sym_try] = ACTIONS(3028), [sym_typeid] = ACTIONS(3028), [sym_typeof] = ACTIONS(3028), [sym_union] = ACTIONS(3028), [sym_unittest] = ACTIONS(3028), [sym_version] = ACTIONS(3028), [sym_while] = ACTIONS(3028), [sym_with] = ACTIONS(3028), [sym_parameters_] = ACTIONS(3028), [sym_gshared] = ACTIONS(3028), [sym_traits] = ACTIONS(3028), [sym_vector] = ACTIONS(3028), [sym_void] = ACTIONS(3028), [anon_sym_BQUOTE] = ACTIONS(3030), [anon_sym_r_DQUOTE] = ACTIONS(3030), [anon_sym_x_DQUOTE] = ACTIONS(3030), [anon_sym_DQUOTE] = ACTIONS(3030), [anon_sym_i_BQUOTE] = ACTIONS(3030), [anon_sym_i_DQUOTE] = ACTIONS(3030), [anon_sym_iq_LBRACE] = ACTIONS(3030), [aux_sym_char_literal_token1] = ACTIONS(3030), [anon_sym_SQUOTE] = ACTIONS(3028), [anon_sym___DATE__] = ACTIONS(3028), [anon_sym___FILE__] = ACTIONS(3028), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3028), [anon_sym___FUNCTION__] = ACTIONS(3028), [anon_sym___LINE__] = ACTIONS(3028), [anon_sym___MODULE__] = ACTIONS(3028), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3028), [anon_sym___TIME__] = ACTIONS(3028), [anon_sym___TIMESTAMP__] = ACTIONS(3028), [anon_sym___VENDOR__] = ACTIONS(3028), [anon_sym___VERSION__] = ACTIONS(3028), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3030), [sym_float_literal] = ACTIONS(3030), [sym__string] = ACTIONS(3030), }, [657] = { [sym_identifier] = ACTIONS(3032), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3034), [anon_sym_RBRACE] = ACTIONS(3034), [anon_sym_LBRACE] = ACTIONS(3034), [anon_sym_SLASH] = ACTIONS(3032), [anon_sym_SLASH_EQ] = ACTIONS(3034), [anon_sym_DOT] = ACTIONS(3032), [anon_sym_DOT_DOT] = ACTIONS(3032), [anon_sym_DOT_DOT_DOT] = ACTIONS(3034), [anon_sym_AMP] = ACTIONS(3032), [anon_sym_AMP_EQ] = ACTIONS(3034), [anon_sym_AMP_AMP] = ACTIONS(3034), [anon_sym_PIPE] = ACTIONS(3032), [anon_sym_PIPE_EQ] = ACTIONS(3034), [anon_sym_PIPE_PIPE] = ACTIONS(3034), [anon_sym_DASH] = ACTIONS(3032), [anon_sym_DASH_EQ] = ACTIONS(3034), [anon_sym_DASH_DASH] = ACTIONS(3034), [anon_sym_PLUS] = ACTIONS(3032), [anon_sym_PLUS_EQ] = ACTIONS(3034), [anon_sym_PLUS_PLUS] = ACTIONS(3034), [anon_sym_LT] = ACTIONS(3032), [anon_sym_LT_EQ] = ACTIONS(3034), [anon_sym_LT_LT] = ACTIONS(3032), [anon_sym_LT_LT_EQ] = ACTIONS(3034), [anon_sym_GT] = ACTIONS(3032), [anon_sym_GT_EQ] = ACTIONS(3034), [anon_sym_GT_GT_EQ] = ACTIONS(3034), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3034), [anon_sym_GT_GT] = ACTIONS(3032), [anon_sym_GT_GT_GT] = ACTIONS(3032), [anon_sym_BANG] = ACTIONS(3032), [anon_sym_BANG_EQ] = ACTIONS(3034), [anon_sym_LPAREN] = ACTIONS(3034), [anon_sym_RPAREN] = ACTIONS(3034), [anon_sym_LBRACK] = ACTIONS(3034), [anon_sym_RBRACK] = ACTIONS(3034), [anon_sym_QMARK] = ACTIONS(3034), [anon_sym_COMMA] = ACTIONS(3034), [anon_sym_SEMI] = ACTIONS(3034), [anon_sym_COLON] = ACTIONS(3034), [anon_sym_DOLLAR] = ACTIONS(3034), [anon_sym_EQ] = ACTIONS(3032), [anon_sym_EQ_EQ] = ACTIONS(3034), [anon_sym_STAR] = ACTIONS(3032), [anon_sym_STAR_EQ] = ACTIONS(3034), [anon_sym_PERCENT] = ACTIONS(3032), [anon_sym_PERCENT_EQ] = ACTIONS(3034), [anon_sym_CARET] = ACTIONS(3032), [anon_sym_CARET_EQ] = ACTIONS(3034), [anon_sym_CARET_CARET] = ACTIONS(3032), [anon_sym_CARET_CARET_EQ] = ACTIONS(3034), [anon_sym_TILDE] = ACTIONS(3032), [anon_sym_TILDE_EQ] = ACTIONS(3034), [anon_sym_AT] = ACTIONS(3034), [anon_sym_EQ_GT] = ACTIONS(3034), [anon_sym_POUND] = ACTIONS(3034), [anon_sym_BANGin] = ACTIONS(3034), [anon_sym_BANGis] = ACTIONS(3034), [sym_bool] = ACTIONS(3032), [sym_byte] = ACTIONS(3032), [sym_ubyte] = ACTIONS(3032), [sym_char] = ACTIONS(3032), [sym_short] = ACTIONS(3032), [sym_ushort] = ACTIONS(3032), [sym_int] = ACTIONS(3032), [sym_uint] = ACTIONS(3032), [sym_long] = ACTIONS(3032), [sym_ulong] = ACTIONS(3032), [sym_cent] = ACTIONS(3032), [sym_ucent] = ACTIONS(3032), [sym_wchar] = ACTIONS(3032), [sym_dchar] = ACTIONS(3032), [sym_float] = ACTIONS(3032), [sym_double] = ACTIONS(3032), [sym_real] = ACTIONS(3032), [sym_ifloat] = ACTIONS(3032), [sym_idouble] = ACTIONS(3032), [sym_ireal] = ACTIONS(3032), [sym_cfloat] = ACTIONS(3032), [sym_cdouble] = ACTIONS(3032), [sym_creal] = ACTIONS(3032), [sym_size_t] = ACTIONS(3032), [sym_ptrdiff_t] = ACTIONS(3032), [sym_string] = ACTIONS(3032), [sym_cstring] = ACTIONS(3032), [sym_dstring] = ACTIONS(3032), [sym_wstring] = ACTIONS(3032), [sym_noreturn] = ACTIONS(3032), [sym_true] = ACTIONS(3032), [sym_false] = ACTIONS(3032), [sym_null] = ACTIONS(3032), [sym_super] = ACTIONS(3032), [sym_this] = ACTIONS(3032), [sym_abstract] = ACTIONS(3032), [sym_alias] = ACTIONS(3032), [sym_align] = ACTIONS(3032), [sym_asm] = ACTIONS(3032), [sym_assert] = ACTIONS(3032), [sym_auto] = ACTIONS(3032), [sym_break] = ACTIONS(3032), [sym_case] = ACTIONS(3032), [sym_cast] = ACTIONS(3032), [sym_catch] = ACTIONS(3032), [sym_class] = ACTIONS(3032), [sym_const] = ACTIONS(3032), [sym_continue] = ACTIONS(3032), [sym_debug] = ACTIONS(3032), [sym_default] = ACTIONS(3032), [sym_delegate] = ACTIONS(3032), [sym_delete] = ACTIONS(3032), [sym_deprecated] = ACTIONS(3032), [sym_do] = ACTIONS(3032), [sym_else] = ACTIONS(3032), [sym_enum] = ACTIONS(3032), [sym_export] = ACTIONS(3032), [sym_extern] = ACTIONS(3032), [sym_final] = ACTIONS(3032), [sym_finally] = ACTIONS(3032), [sym_for] = ACTIONS(3032), [sym_foreach] = ACTIONS(3032), [sym_foreach_reverse] = ACTIONS(3032), [sym_function] = ACTIONS(3032), [sym_goto] = ACTIONS(3032), [sym_if] = ACTIONS(3032), [sym_immutable] = ACTIONS(3032), [sym_import] = ACTIONS(3032), [sym_in] = ACTIONS(3032), [sym_inout] = ACTIONS(3032), [sym_interface] = ACTIONS(3032), [sym_invariant] = ACTIONS(3032), [sym_is] = ACTIONS(3032), [sym_lazy] = ACTIONS(3032), [sym_mixin] = ACTIONS(3032), [sym_module] = ACTIONS(3032), [sym_new] = ACTIONS(3032), [sym_nothrow] = ACTIONS(3032), [sym_out] = ACTIONS(3032), [sym_override] = ACTIONS(3032), [sym_package] = ACTIONS(3032), [sym_pragma] = ACTIONS(3032), [sym_private] = ACTIONS(3032), [sym_protected] = ACTIONS(3032), [sym_public] = ACTIONS(3032), [sym_pure] = ACTIONS(3032), [sym_ref] = ACTIONS(3032), [sym_return] = ACTIONS(3032), [sym_scope] = ACTIONS(3032), [sym_shared] = ACTIONS(3032), [sym_static] = ACTIONS(3032), [sym_struct] = ACTIONS(3032), [sym_switch] = ACTIONS(3032), [sym_synchronized] = ACTIONS(3032), [sym_template] = ACTIONS(3032), [sym_throw] = ACTIONS(3032), [sym_try] = ACTIONS(3032), [sym_typeid] = ACTIONS(3032), [sym_typeof] = ACTIONS(3032), [sym_union] = ACTIONS(3032), [sym_unittest] = ACTIONS(3032), [sym_version] = ACTIONS(3032), [sym_while] = ACTIONS(3032), [sym_with] = ACTIONS(3032), [sym_parameters_] = ACTIONS(3032), [sym_gshared] = ACTIONS(3032), [sym_traits] = ACTIONS(3032), [sym_vector] = ACTIONS(3032), [sym_void] = ACTIONS(3032), [anon_sym_BQUOTE] = ACTIONS(3034), [anon_sym_r_DQUOTE] = ACTIONS(3034), [anon_sym_x_DQUOTE] = ACTIONS(3034), [anon_sym_DQUOTE] = ACTIONS(3034), [anon_sym_i_BQUOTE] = ACTIONS(3034), [anon_sym_i_DQUOTE] = ACTIONS(3034), [anon_sym_iq_LBRACE] = ACTIONS(3034), [aux_sym_char_literal_token1] = ACTIONS(3034), [anon_sym_SQUOTE] = ACTIONS(3032), [anon_sym___DATE__] = ACTIONS(3032), [anon_sym___FILE__] = ACTIONS(3032), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3032), [anon_sym___FUNCTION__] = ACTIONS(3032), [anon_sym___LINE__] = ACTIONS(3032), [anon_sym___MODULE__] = ACTIONS(3032), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3032), [anon_sym___TIME__] = ACTIONS(3032), [anon_sym___TIMESTAMP__] = ACTIONS(3032), [anon_sym___VENDOR__] = ACTIONS(3032), [anon_sym___VERSION__] = ACTIONS(3032), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3034), [sym_float_literal] = ACTIONS(3034), [sym__string] = ACTIONS(3034), }, [658] = { [sym_identifier] = ACTIONS(3056), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3058), [anon_sym_RBRACE] = ACTIONS(3058), [anon_sym_LBRACE] = ACTIONS(3058), [anon_sym_SLASH] = ACTIONS(3056), [anon_sym_SLASH_EQ] = ACTIONS(3058), [anon_sym_DOT] = ACTIONS(3056), [anon_sym_DOT_DOT] = ACTIONS(3056), [anon_sym_DOT_DOT_DOT] = ACTIONS(3058), [anon_sym_AMP] = ACTIONS(3056), [anon_sym_AMP_EQ] = ACTIONS(3058), [anon_sym_AMP_AMP] = ACTIONS(3058), [anon_sym_PIPE] = ACTIONS(3056), [anon_sym_PIPE_EQ] = ACTIONS(3058), [anon_sym_PIPE_PIPE] = ACTIONS(3058), [anon_sym_DASH] = ACTIONS(3056), [anon_sym_DASH_EQ] = ACTIONS(3058), [anon_sym_DASH_DASH] = ACTIONS(3058), [anon_sym_PLUS] = ACTIONS(3056), [anon_sym_PLUS_EQ] = ACTIONS(3058), [anon_sym_PLUS_PLUS] = ACTIONS(3058), [anon_sym_LT] = ACTIONS(3056), [anon_sym_LT_EQ] = ACTIONS(3058), [anon_sym_LT_LT] = ACTIONS(3056), [anon_sym_LT_LT_EQ] = ACTIONS(3058), [anon_sym_GT] = ACTIONS(3056), [anon_sym_GT_EQ] = ACTIONS(3058), [anon_sym_GT_GT_EQ] = ACTIONS(3058), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3058), [anon_sym_GT_GT] = ACTIONS(3056), [anon_sym_GT_GT_GT] = ACTIONS(3056), [anon_sym_BANG] = ACTIONS(3056), [anon_sym_BANG_EQ] = ACTIONS(3058), [anon_sym_LPAREN] = ACTIONS(3058), [anon_sym_RPAREN] = ACTIONS(3058), [anon_sym_LBRACK] = ACTIONS(3058), [anon_sym_RBRACK] = ACTIONS(3058), [anon_sym_QMARK] = ACTIONS(3058), [anon_sym_COMMA] = ACTIONS(3058), [anon_sym_SEMI] = ACTIONS(3058), [anon_sym_COLON] = ACTIONS(3058), [anon_sym_DOLLAR] = ACTIONS(3058), [anon_sym_EQ] = ACTIONS(3056), [anon_sym_EQ_EQ] = ACTIONS(3058), [anon_sym_STAR] = ACTIONS(3056), [anon_sym_STAR_EQ] = ACTIONS(3058), [anon_sym_PERCENT] = ACTIONS(3056), [anon_sym_PERCENT_EQ] = ACTIONS(3058), [anon_sym_CARET] = ACTIONS(3056), [anon_sym_CARET_EQ] = ACTIONS(3058), [anon_sym_CARET_CARET] = ACTIONS(3056), [anon_sym_CARET_CARET_EQ] = ACTIONS(3058), [anon_sym_TILDE] = ACTIONS(3056), [anon_sym_TILDE_EQ] = ACTIONS(3058), [anon_sym_AT] = ACTIONS(3058), [anon_sym_EQ_GT] = ACTIONS(3058), [anon_sym_POUND] = ACTIONS(3058), [anon_sym_BANGin] = ACTIONS(3058), [anon_sym_BANGis] = ACTIONS(3058), [sym_bool] = ACTIONS(3056), [sym_byte] = ACTIONS(3056), [sym_ubyte] = ACTIONS(3056), [sym_char] = ACTIONS(3056), [sym_short] = ACTIONS(3056), [sym_ushort] = ACTIONS(3056), [sym_int] = ACTIONS(3056), [sym_uint] = ACTIONS(3056), [sym_long] = ACTIONS(3056), [sym_ulong] = ACTIONS(3056), [sym_cent] = ACTIONS(3056), [sym_ucent] = ACTIONS(3056), [sym_wchar] = ACTIONS(3056), [sym_dchar] = ACTIONS(3056), [sym_float] = ACTIONS(3056), [sym_double] = ACTIONS(3056), [sym_real] = ACTIONS(3056), [sym_ifloat] = ACTIONS(3056), [sym_idouble] = ACTIONS(3056), [sym_ireal] = ACTIONS(3056), [sym_cfloat] = ACTIONS(3056), [sym_cdouble] = ACTIONS(3056), [sym_creal] = ACTIONS(3056), [sym_size_t] = ACTIONS(3056), [sym_ptrdiff_t] = ACTIONS(3056), [sym_string] = ACTIONS(3056), [sym_cstring] = ACTIONS(3056), [sym_dstring] = ACTIONS(3056), [sym_wstring] = ACTIONS(3056), [sym_noreturn] = ACTIONS(3056), [sym_true] = ACTIONS(3056), [sym_false] = ACTIONS(3056), [sym_null] = ACTIONS(3056), [sym_super] = ACTIONS(3056), [sym_this] = ACTIONS(3056), [sym_abstract] = ACTIONS(3056), [sym_alias] = ACTIONS(3056), [sym_align] = ACTIONS(3056), [sym_asm] = ACTIONS(3056), [sym_assert] = ACTIONS(3056), [sym_auto] = ACTIONS(3056), [sym_break] = ACTIONS(3056), [sym_case] = ACTIONS(3056), [sym_cast] = ACTIONS(3056), [sym_catch] = ACTIONS(3056), [sym_class] = ACTIONS(3056), [sym_const] = ACTIONS(3056), [sym_continue] = ACTIONS(3056), [sym_debug] = ACTIONS(3056), [sym_default] = ACTIONS(3056), [sym_delegate] = ACTIONS(3056), [sym_delete] = ACTIONS(3056), [sym_deprecated] = ACTIONS(3056), [sym_do] = ACTIONS(3056), [sym_else] = ACTIONS(3056), [sym_enum] = ACTIONS(3056), [sym_export] = ACTIONS(3056), [sym_extern] = ACTIONS(3056), [sym_final] = ACTIONS(3056), [sym_finally] = ACTIONS(3056), [sym_for] = ACTIONS(3056), [sym_foreach] = ACTIONS(3056), [sym_foreach_reverse] = ACTIONS(3056), [sym_function] = ACTIONS(3056), [sym_goto] = ACTIONS(3056), [sym_if] = ACTIONS(3056), [sym_immutable] = ACTIONS(3056), [sym_import] = ACTIONS(3056), [sym_in] = ACTIONS(3056), [sym_inout] = ACTIONS(3056), [sym_interface] = ACTIONS(3056), [sym_invariant] = ACTIONS(3056), [sym_is] = ACTIONS(3056), [sym_lazy] = ACTIONS(3056), [sym_mixin] = ACTIONS(3056), [sym_module] = ACTIONS(3056), [sym_new] = ACTIONS(3056), [sym_nothrow] = ACTIONS(3056), [sym_out] = ACTIONS(3056), [sym_override] = ACTIONS(3056), [sym_package] = ACTIONS(3056), [sym_pragma] = ACTIONS(3056), [sym_private] = ACTIONS(3056), [sym_protected] = ACTIONS(3056), [sym_public] = ACTIONS(3056), [sym_pure] = ACTIONS(3056), [sym_ref] = ACTIONS(3056), [sym_return] = ACTIONS(3056), [sym_scope] = ACTIONS(3056), [sym_shared] = ACTIONS(3056), [sym_static] = ACTIONS(3056), [sym_struct] = ACTIONS(3056), [sym_switch] = ACTIONS(3056), [sym_synchronized] = ACTIONS(3056), [sym_template] = ACTIONS(3056), [sym_throw] = ACTIONS(3056), [sym_try] = ACTIONS(3056), [sym_typeid] = ACTIONS(3056), [sym_typeof] = ACTIONS(3056), [sym_union] = ACTIONS(3056), [sym_unittest] = ACTIONS(3056), [sym_version] = ACTIONS(3056), [sym_while] = ACTIONS(3056), [sym_with] = ACTIONS(3056), [sym_parameters_] = ACTIONS(3056), [sym_gshared] = ACTIONS(3056), [sym_traits] = ACTIONS(3056), [sym_vector] = ACTIONS(3056), [sym_void] = ACTIONS(3056), [anon_sym_BQUOTE] = ACTIONS(3058), [anon_sym_r_DQUOTE] = ACTIONS(3058), [anon_sym_x_DQUOTE] = ACTIONS(3058), [anon_sym_DQUOTE] = ACTIONS(3058), [anon_sym_i_BQUOTE] = ACTIONS(3058), [anon_sym_i_DQUOTE] = ACTIONS(3058), [anon_sym_iq_LBRACE] = ACTIONS(3058), [aux_sym_char_literal_token1] = ACTIONS(3058), [anon_sym_SQUOTE] = ACTIONS(3056), [anon_sym___DATE__] = ACTIONS(3056), [anon_sym___FILE__] = ACTIONS(3056), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3056), [anon_sym___FUNCTION__] = ACTIONS(3056), [anon_sym___LINE__] = ACTIONS(3056), [anon_sym___MODULE__] = ACTIONS(3056), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3056), [anon_sym___TIME__] = ACTIONS(3056), [anon_sym___TIMESTAMP__] = ACTIONS(3056), [anon_sym___VENDOR__] = ACTIONS(3056), [anon_sym___VERSION__] = ACTIONS(3056), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3058), [sym_float_literal] = ACTIONS(3058), [sym__string] = ACTIONS(3058), }, [659] = { [sym_identifier] = ACTIONS(2992), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2994), [anon_sym_RBRACE] = ACTIONS(2994), [anon_sym_LBRACE] = ACTIONS(2994), [anon_sym_SLASH] = ACTIONS(2992), [anon_sym_SLASH_EQ] = ACTIONS(2994), [anon_sym_DOT] = ACTIONS(2992), [anon_sym_DOT_DOT] = ACTIONS(2992), [anon_sym_DOT_DOT_DOT] = ACTIONS(2994), [anon_sym_AMP] = ACTIONS(2992), [anon_sym_AMP_EQ] = ACTIONS(2994), [anon_sym_AMP_AMP] = ACTIONS(2994), [anon_sym_PIPE] = ACTIONS(2992), [anon_sym_PIPE_EQ] = ACTIONS(2994), [anon_sym_PIPE_PIPE] = ACTIONS(2994), [anon_sym_DASH] = ACTIONS(2992), [anon_sym_DASH_EQ] = ACTIONS(2994), [anon_sym_DASH_DASH] = ACTIONS(2994), [anon_sym_PLUS] = ACTIONS(2992), [anon_sym_PLUS_EQ] = ACTIONS(2994), [anon_sym_PLUS_PLUS] = ACTIONS(2994), [anon_sym_LT] = ACTIONS(2992), [anon_sym_LT_EQ] = ACTIONS(2994), [anon_sym_LT_LT] = ACTIONS(2992), [anon_sym_LT_LT_EQ] = ACTIONS(2994), [anon_sym_GT] = ACTIONS(2992), [anon_sym_GT_EQ] = ACTIONS(2994), [anon_sym_GT_GT_EQ] = ACTIONS(2994), [anon_sym_GT_GT_GT_EQ] = ACTIONS(2994), [anon_sym_GT_GT] = ACTIONS(2992), [anon_sym_GT_GT_GT] = ACTIONS(2992), [anon_sym_BANG] = ACTIONS(2992), [anon_sym_BANG_EQ] = ACTIONS(2994), [anon_sym_LPAREN] = ACTIONS(2994), [anon_sym_RPAREN] = ACTIONS(2994), [anon_sym_LBRACK] = ACTIONS(2994), [anon_sym_RBRACK] = ACTIONS(2994), [anon_sym_QMARK] = ACTIONS(2994), [anon_sym_COMMA] = ACTIONS(2994), [anon_sym_SEMI] = ACTIONS(2994), [anon_sym_COLON] = ACTIONS(2994), [anon_sym_DOLLAR] = ACTIONS(2994), [anon_sym_EQ] = ACTIONS(2992), [anon_sym_EQ_EQ] = ACTIONS(2994), [anon_sym_STAR] = ACTIONS(2992), [anon_sym_STAR_EQ] = ACTIONS(2994), [anon_sym_PERCENT] = ACTIONS(2992), [anon_sym_PERCENT_EQ] = ACTIONS(2994), [anon_sym_CARET] = ACTIONS(2992), [anon_sym_CARET_EQ] = ACTIONS(2994), [anon_sym_CARET_CARET] = ACTIONS(2992), [anon_sym_CARET_CARET_EQ] = ACTIONS(2994), [anon_sym_TILDE] = ACTIONS(2992), [anon_sym_TILDE_EQ] = ACTIONS(2994), [anon_sym_AT] = ACTIONS(2994), [anon_sym_EQ_GT] = ACTIONS(2994), [anon_sym_POUND] = ACTIONS(2994), [anon_sym_BANGin] = ACTIONS(2994), [anon_sym_BANGis] = ACTIONS(2994), [sym_bool] = ACTIONS(2992), [sym_byte] = ACTIONS(2992), [sym_ubyte] = ACTIONS(2992), [sym_char] = ACTIONS(2992), [sym_short] = ACTIONS(2992), [sym_ushort] = ACTIONS(2992), [sym_int] = ACTIONS(2992), [sym_uint] = ACTIONS(2992), [sym_long] = ACTIONS(2992), [sym_ulong] = ACTIONS(2992), [sym_cent] = ACTIONS(2992), [sym_ucent] = ACTIONS(2992), [sym_wchar] = ACTIONS(2992), [sym_dchar] = ACTIONS(2992), [sym_float] = ACTIONS(2992), [sym_double] = ACTIONS(2992), [sym_real] = ACTIONS(2992), [sym_ifloat] = ACTIONS(2992), [sym_idouble] = ACTIONS(2992), [sym_ireal] = ACTIONS(2992), [sym_cfloat] = ACTIONS(2992), [sym_cdouble] = ACTIONS(2992), [sym_creal] = ACTIONS(2992), [sym_size_t] = ACTIONS(2992), [sym_ptrdiff_t] = ACTIONS(2992), [sym_string] = ACTIONS(2992), [sym_cstring] = ACTIONS(2992), [sym_dstring] = ACTIONS(2992), [sym_wstring] = ACTIONS(2992), [sym_noreturn] = ACTIONS(2992), [sym_true] = ACTIONS(2992), [sym_false] = ACTIONS(2992), [sym_null] = ACTIONS(2992), [sym_super] = ACTIONS(2992), [sym_this] = ACTIONS(2992), [sym_abstract] = ACTIONS(2992), [sym_alias] = ACTIONS(2992), [sym_align] = ACTIONS(2992), [sym_asm] = ACTIONS(2992), [sym_assert] = ACTIONS(2992), [sym_auto] = ACTIONS(2992), [sym_break] = ACTIONS(2992), [sym_case] = ACTIONS(2992), [sym_cast] = ACTIONS(2992), [sym_catch] = ACTIONS(2992), [sym_class] = ACTIONS(2992), [sym_const] = ACTIONS(2992), [sym_continue] = ACTIONS(2992), [sym_debug] = ACTIONS(2992), [sym_default] = ACTIONS(2992), [sym_delegate] = ACTIONS(2992), [sym_delete] = ACTIONS(2992), [sym_deprecated] = ACTIONS(2992), [sym_do] = ACTIONS(2992), [sym_else] = ACTIONS(2992), [sym_enum] = ACTIONS(2992), [sym_export] = ACTIONS(2992), [sym_extern] = ACTIONS(2992), [sym_final] = ACTIONS(2992), [sym_finally] = ACTIONS(2992), [sym_for] = ACTIONS(2992), [sym_foreach] = ACTIONS(2992), [sym_foreach_reverse] = ACTIONS(2992), [sym_function] = ACTIONS(2992), [sym_goto] = ACTIONS(2992), [sym_if] = ACTIONS(2992), [sym_immutable] = ACTIONS(2992), [sym_import] = ACTIONS(2992), [sym_in] = ACTIONS(2992), [sym_inout] = ACTIONS(2992), [sym_interface] = ACTIONS(2992), [sym_invariant] = ACTIONS(2992), [sym_is] = ACTIONS(2992), [sym_lazy] = ACTIONS(2992), [sym_mixin] = ACTIONS(2992), [sym_module] = ACTIONS(2992), [sym_new] = ACTIONS(2992), [sym_nothrow] = ACTIONS(2992), [sym_out] = ACTIONS(2992), [sym_override] = ACTIONS(2992), [sym_package] = ACTIONS(2992), [sym_pragma] = ACTIONS(2992), [sym_private] = ACTIONS(2992), [sym_protected] = ACTIONS(2992), [sym_public] = ACTIONS(2992), [sym_pure] = ACTIONS(2992), [sym_ref] = ACTIONS(2992), [sym_return] = ACTIONS(2992), [sym_scope] = ACTIONS(2992), [sym_shared] = ACTIONS(2992), [sym_static] = ACTIONS(2992), [sym_struct] = ACTIONS(2992), [sym_switch] = ACTIONS(2992), [sym_synchronized] = ACTIONS(2992), [sym_template] = ACTIONS(2992), [sym_throw] = ACTIONS(2992), [sym_try] = ACTIONS(2992), [sym_typeid] = ACTIONS(2992), [sym_typeof] = ACTIONS(2992), [sym_union] = ACTIONS(2992), [sym_unittest] = ACTIONS(2992), [sym_version] = ACTIONS(2992), [sym_while] = ACTIONS(2992), [sym_with] = ACTIONS(2992), [sym_parameters_] = ACTIONS(2992), [sym_gshared] = ACTIONS(2992), [sym_traits] = ACTIONS(2992), [sym_vector] = ACTIONS(2992), [sym_void] = ACTIONS(2992), [anon_sym_BQUOTE] = ACTIONS(2994), [anon_sym_r_DQUOTE] = ACTIONS(2994), [anon_sym_x_DQUOTE] = ACTIONS(2994), [anon_sym_DQUOTE] = ACTIONS(2994), [anon_sym_i_BQUOTE] = ACTIONS(2994), [anon_sym_i_DQUOTE] = ACTIONS(2994), [anon_sym_iq_LBRACE] = ACTIONS(2994), [aux_sym_char_literal_token1] = ACTIONS(2994), [anon_sym_SQUOTE] = ACTIONS(2992), [anon_sym___DATE__] = ACTIONS(2992), [anon_sym___FILE__] = ACTIONS(2992), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2992), [anon_sym___FUNCTION__] = ACTIONS(2992), [anon_sym___LINE__] = ACTIONS(2992), [anon_sym___MODULE__] = ACTIONS(2992), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2992), [anon_sym___TIME__] = ACTIONS(2992), [anon_sym___TIMESTAMP__] = ACTIONS(2992), [anon_sym___VENDOR__] = ACTIONS(2992), [anon_sym___VERSION__] = ACTIONS(2992), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2994), [sym_float_literal] = ACTIONS(2994), [sym__string] = ACTIONS(2994), }, [660] = { [sym_identifier] = ACTIONS(3020), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3022), [anon_sym_RBRACE] = ACTIONS(3022), [anon_sym_LBRACE] = ACTIONS(3022), [anon_sym_SLASH] = ACTIONS(3020), [anon_sym_SLASH_EQ] = ACTIONS(3022), [anon_sym_DOT] = ACTIONS(3020), [anon_sym_DOT_DOT] = ACTIONS(3020), [anon_sym_DOT_DOT_DOT] = ACTIONS(3022), [anon_sym_AMP] = ACTIONS(3020), [anon_sym_AMP_EQ] = ACTIONS(3022), [anon_sym_AMP_AMP] = ACTIONS(3022), [anon_sym_PIPE] = ACTIONS(3020), [anon_sym_PIPE_EQ] = ACTIONS(3022), [anon_sym_PIPE_PIPE] = ACTIONS(3022), [anon_sym_DASH] = ACTIONS(3020), [anon_sym_DASH_EQ] = ACTIONS(3022), [anon_sym_DASH_DASH] = ACTIONS(3022), [anon_sym_PLUS] = ACTIONS(3020), [anon_sym_PLUS_EQ] = ACTIONS(3022), [anon_sym_PLUS_PLUS] = ACTIONS(3022), [anon_sym_LT] = ACTIONS(3020), [anon_sym_LT_EQ] = ACTIONS(3022), [anon_sym_LT_LT] = ACTIONS(3020), [anon_sym_LT_LT_EQ] = ACTIONS(3022), [anon_sym_GT] = ACTIONS(3020), [anon_sym_GT_EQ] = ACTIONS(3022), [anon_sym_GT_GT_EQ] = ACTIONS(3022), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3022), [anon_sym_GT_GT] = ACTIONS(3020), [anon_sym_GT_GT_GT] = ACTIONS(3020), [anon_sym_BANG] = ACTIONS(3020), [anon_sym_BANG_EQ] = ACTIONS(3022), [anon_sym_LPAREN] = ACTIONS(3022), [anon_sym_RPAREN] = ACTIONS(3022), [anon_sym_LBRACK] = ACTIONS(3022), [anon_sym_RBRACK] = ACTIONS(3022), [anon_sym_QMARK] = ACTIONS(3022), [anon_sym_COMMA] = ACTIONS(3022), [anon_sym_SEMI] = ACTIONS(3022), [anon_sym_COLON] = ACTIONS(3022), [anon_sym_DOLLAR] = ACTIONS(3022), [anon_sym_EQ] = ACTIONS(3020), [anon_sym_EQ_EQ] = ACTIONS(3022), [anon_sym_STAR] = ACTIONS(3020), [anon_sym_STAR_EQ] = ACTIONS(3022), [anon_sym_PERCENT] = ACTIONS(3020), [anon_sym_PERCENT_EQ] = ACTIONS(3022), [anon_sym_CARET] = ACTIONS(3020), [anon_sym_CARET_EQ] = ACTIONS(3022), [anon_sym_CARET_CARET] = ACTIONS(3020), [anon_sym_CARET_CARET_EQ] = ACTIONS(3022), [anon_sym_TILDE] = ACTIONS(3020), [anon_sym_TILDE_EQ] = ACTIONS(3022), [anon_sym_AT] = ACTIONS(3022), [anon_sym_EQ_GT] = ACTIONS(3022), [anon_sym_POUND] = ACTIONS(3022), [anon_sym_BANGin] = ACTIONS(3022), [anon_sym_BANGis] = ACTIONS(3022), [sym_bool] = ACTIONS(3020), [sym_byte] = ACTIONS(3020), [sym_ubyte] = ACTIONS(3020), [sym_char] = ACTIONS(3020), [sym_short] = ACTIONS(3020), [sym_ushort] = ACTIONS(3020), [sym_int] = ACTIONS(3020), [sym_uint] = ACTIONS(3020), [sym_long] = ACTIONS(3020), [sym_ulong] = ACTIONS(3020), [sym_cent] = ACTIONS(3020), [sym_ucent] = ACTIONS(3020), [sym_wchar] = ACTIONS(3020), [sym_dchar] = ACTIONS(3020), [sym_float] = ACTIONS(3020), [sym_double] = ACTIONS(3020), [sym_real] = ACTIONS(3020), [sym_ifloat] = ACTIONS(3020), [sym_idouble] = ACTIONS(3020), [sym_ireal] = ACTIONS(3020), [sym_cfloat] = ACTIONS(3020), [sym_cdouble] = ACTIONS(3020), [sym_creal] = ACTIONS(3020), [sym_size_t] = ACTIONS(3020), [sym_ptrdiff_t] = ACTIONS(3020), [sym_string] = ACTIONS(3020), [sym_cstring] = ACTIONS(3020), [sym_dstring] = ACTIONS(3020), [sym_wstring] = ACTIONS(3020), [sym_noreturn] = ACTIONS(3020), [sym_true] = ACTIONS(3020), [sym_false] = ACTIONS(3020), [sym_null] = ACTIONS(3020), [sym_super] = ACTIONS(3020), [sym_this] = ACTIONS(3020), [sym_abstract] = ACTIONS(3020), [sym_alias] = ACTIONS(3020), [sym_align] = ACTIONS(3020), [sym_asm] = ACTIONS(3020), [sym_assert] = ACTIONS(3020), [sym_auto] = ACTIONS(3020), [sym_break] = ACTIONS(3020), [sym_case] = ACTIONS(3020), [sym_cast] = ACTIONS(3020), [sym_catch] = ACTIONS(3020), [sym_class] = ACTIONS(3020), [sym_const] = ACTIONS(3020), [sym_continue] = ACTIONS(3020), [sym_debug] = ACTIONS(3020), [sym_default] = ACTIONS(3020), [sym_delegate] = ACTIONS(3020), [sym_delete] = ACTIONS(3020), [sym_deprecated] = ACTIONS(3020), [sym_do] = ACTIONS(3020), [sym_else] = ACTIONS(3020), [sym_enum] = ACTIONS(3020), [sym_export] = ACTIONS(3020), [sym_extern] = ACTIONS(3020), [sym_final] = ACTIONS(3020), [sym_finally] = ACTIONS(3020), [sym_for] = ACTIONS(3020), [sym_foreach] = ACTIONS(3020), [sym_foreach_reverse] = ACTIONS(3020), [sym_function] = ACTIONS(3020), [sym_goto] = ACTIONS(3020), [sym_if] = ACTIONS(3020), [sym_immutable] = ACTIONS(3020), [sym_import] = ACTIONS(3020), [sym_in] = ACTIONS(3020), [sym_inout] = ACTIONS(3020), [sym_interface] = ACTIONS(3020), [sym_invariant] = ACTIONS(3020), [sym_is] = ACTIONS(3020), [sym_lazy] = ACTIONS(3020), [sym_mixin] = ACTIONS(3020), [sym_module] = ACTIONS(3020), [sym_new] = ACTIONS(3020), [sym_nothrow] = ACTIONS(3020), [sym_out] = ACTIONS(3020), [sym_override] = ACTIONS(3020), [sym_package] = ACTIONS(3020), [sym_pragma] = ACTIONS(3020), [sym_private] = ACTIONS(3020), [sym_protected] = ACTIONS(3020), [sym_public] = ACTIONS(3020), [sym_pure] = ACTIONS(3020), [sym_ref] = ACTIONS(3020), [sym_return] = ACTIONS(3020), [sym_scope] = ACTIONS(3020), [sym_shared] = ACTIONS(3020), [sym_static] = ACTIONS(3020), [sym_struct] = ACTIONS(3020), [sym_switch] = ACTIONS(3020), [sym_synchronized] = ACTIONS(3020), [sym_template] = ACTIONS(3020), [sym_throw] = ACTIONS(3020), [sym_try] = ACTIONS(3020), [sym_typeid] = ACTIONS(3020), [sym_typeof] = ACTIONS(3020), [sym_union] = ACTIONS(3020), [sym_unittest] = ACTIONS(3020), [sym_version] = ACTIONS(3020), [sym_while] = ACTIONS(3020), [sym_with] = ACTIONS(3020), [sym_parameters_] = ACTIONS(3020), [sym_gshared] = ACTIONS(3020), [sym_traits] = ACTIONS(3020), [sym_vector] = ACTIONS(3020), [sym_void] = ACTIONS(3020), [anon_sym_BQUOTE] = ACTIONS(3022), [anon_sym_r_DQUOTE] = ACTIONS(3022), [anon_sym_x_DQUOTE] = ACTIONS(3022), [anon_sym_DQUOTE] = ACTIONS(3022), [anon_sym_i_BQUOTE] = ACTIONS(3022), [anon_sym_i_DQUOTE] = ACTIONS(3022), [anon_sym_iq_LBRACE] = ACTIONS(3022), [aux_sym_char_literal_token1] = ACTIONS(3022), [anon_sym_SQUOTE] = ACTIONS(3020), [anon_sym___DATE__] = ACTIONS(3020), [anon_sym___FILE__] = ACTIONS(3020), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3020), [anon_sym___FUNCTION__] = ACTIONS(3020), [anon_sym___LINE__] = ACTIONS(3020), [anon_sym___MODULE__] = ACTIONS(3020), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3020), [anon_sym___TIME__] = ACTIONS(3020), [anon_sym___TIMESTAMP__] = ACTIONS(3020), [anon_sym___VENDOR__] = ACTIONS(3020), [anon_sym___VERSION__] = ACTIONS(3020), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3022), [sym_float_literal] = ACTIONS(3022), [sym__string] = ACTIONS(3022), }, [661] = { [sym_identifier] = ACTIONS(3064), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3067), [anon_sym_RBRACE] = ACTIONS(3067), [anon_sym_LBRACE] = ACTIONS(3067), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3067), [anon_sym_AMP] = ACTIONS(3064), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3064), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3067), [anon_sym_PLUS] = ACTIONS(3064), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3067), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3064), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3067), [anon_sym_RPAREN] = ACTIONS(3067), [anon_sym_LBRACK] = ACTIONS(3067), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3067), [anon_sym_DOLLAR] = ACTIONS(3067), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3064), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3064), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3067), [sym_bool] = ACTIONS(3064), [sym_byte] = ACTIONS(3064), [sym_ubyte] = ACTIONS(3064), [sym_char] = ACTIONS(3064), [sym_short] = ACTIONS(3064), [sym_ushort] = ACTIONS(3064), [sym_int] = ACTIONS(3064), [sym_uint] = ACTIONS(3064), [sym_long] = ACTIONS(3064), [sym_ulong] = ACTIONS(3064), [sym_cent] = ACTIONS(3064), [sym_ucent] = ACTIONS(3064), [sym_wchar] = ACTIONS(3064), [sym_dchar] = ACTIONS(3064), [sym_float] = ACTIONS(3064), [sym_double] = ACTIONS(3064), [sym_real] = ACTIONS(3064), [sym_ifloat] = ACTIONS(3064), [sym_idouble] = ACTIONS(3064), [sym_ireal] = ACTIONS(3064), [sym_cfloat] = ACTIONS(3064), [sym_cdouble] = ACTIONS(3064), [sym_creal] = ACTIONS(3064), [sym_size_t] = ACTIONS(3064), [sym_ptrdiff_t] = ACTIONS(3064), [sym_string] = ACTIONS(3064), [sym_cstring] = ACTIONS(3064), [sym_dstring] = ACTIONS(3064), [sym_wstring] = ACTIONS(3064), [sym_noreturn] = ACTIONS(3064), [sym_true] = ACTIONS(3064), [sym_false] = ACTIONS(3064), [sym_null] = ACTIONS(3064), [sym_super] = ACTIONS(3064), [sym_this] = ACTIONS(3064), [sym_abstract] = ACTIONS(3064), [sym_alias] = ACTIONS(3064), [sym_align] = ACTIONS(3064), [sym_asm] = ACTIONS(3064), [sym_assert] = ACTIONS(3064), [sym_auto] = ACTIONS(3064), [sym_break] = ACTIONS(3064), [sym_case] = ACTIONS(3064), [sym_cast] = ACTIONS(3064), [sym_catch] = ACTIONS(3064), [sym_class] = ACTIONS(3064), [sym_const] = ACTIONS(3064), [sym_continue] = ACTIONS(3064), [sym_debug] = ACTIONS(3064), [sym_default] = ACTIONS(3064), [sym_delegate] = ACTIONS(3064), [sym_delete] = ACTIONS(3064), [sym_deprecated] = ACTIONS(3064), [sym_do] = ACTIONS(3064), [sym_else] = ACTIONS(3064), [sym_enum] = ACTIONS(3064), [sym_export] = ACTIONS(3064), [sym_extern] = ACTIONS(3064), [sym_final] = ACTIONS(3064), [sym_finally] = ACTIONS(3064), [sym_for] = ACTIONS(3064), [sym_foreach] = ACTIONS(3064), [sym_foreach_reverse] = ACTIONS(3064), [sym_function] = ACTIONS(3064), [sym_goto] = ACTIONS(3064), [sym_if] = ACTIONS(3064), [sym_immutable] = ACTIONS(3064), [sym_import] = ACTIONS(3064), [sym_in] = ACTIONS(3064), [sym_inout] = ACTIONS(3064), [sym_interface] = ACTIONS(3064), [sym_invariant] = ACTIONS(3064), [sym_is] = ACTIONS(3064), [sym_mixin] = ACTIONS(3064), [sym_new] = ACTIONS(3064), [sym_nothrow] = ACTIONS(3064), [sym_out] = ACTIONS(3064), [sym_override] = ACTIONS(3064), [sym_package] = ACTIONS(3064), [sym_pragma] = ACTIONS(3064), [sym_private] = ACTIONS(3064), [sym_protected] = ACTIONS(3064), [sym_public] = ACTIONS(3064), [sym_pure] = ACTIONS(3064), [sym_ref] = ACTIONS(3064), [sym_return] = ACTIONS(3064), [sym_scope] = ACTIONS(3064), [sym_shared] = ACTIONS(3064), [sym_static] = ACTIONS(3064), [sym_struct] = ACTIONS(3064), [sym_switch] = ACTIONS(3064), [sym_synchronized] = ACTIONS(3064), [sym_template] = ACTIONS(3064), [sym_throw] = ACTIONS(3064), [sym_try] = ACTIONS(3064), [sym_typeid] = ACTIONS(3064), [sym_typeof] = ACTIONS(3064), [sym_union] = ACTIONS(3064), [sym_unittest] = ACTIONS(3064), [sym_version] = ACTIONS(3064), [sym_while] = ACTIONS(3064), [sym_with] = ACTIONS(3064), [sym_gshared] = ACTIONS(3064), [sym_traits] = ACTIONS(3064), [sym_vector] = ACTIONS(3064), [sym_void] = ACTIONS(3064), [anon_sym_BQUOTE] = ACTIONS(3067), [anon_sym_r_DQUOTE] = ACTIONS(3067), [anon_sym_x_DQUOTE] = ACTIONS(3067), [anon_sym_DQUOTE] = ACTIONS(3067), [anon_sym_i_BQUOTE] = ACTIONS(3067), [anon_sym_i_DQUOTE] = ACTIONS(3067), [anon_sym_iq_LBRACE] = ACTIONS(3067), [aux_sym_char_literal_token1] = ACTIONS(3067), [anon_sym_SQUOTE] = ACTIONS(3064), [anon_sym___DATE__] = ACTIONS(3064), [anon_sym___FILE__] = ACTIONS(3064), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3064), [anon_sym___FUNCTION__] = ACTIONS(3064), [anon_sym___LINE__] = ACTIONS(3064), [anon_sym___MODULE__] = ACTIONS(3064), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3064), [anon_sym___TIME__] = ACTIONS(3064), [anon_sym___TIMESTAMP__] = ACTIONS(3064), [anon_sym___VENDOR__] = ACTIONS(3064), [anon_sym___VERSION__] = ACTIONS(3064), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3067), [sym_float_literal] = ACTIONS(3067), [sym__string] = ACTIONS(3067), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [662] = { [sym_identifier] = ACTIONS(3074), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3076), [anon_sym_RBRACE] = ACTIONS(3076), [anon_sym_LBRACE] = ACTIONS(3076), [anon_sym_SLASH] = ACTIONS(3078), [anon_sym_SLASH_EQ] = ACTIONS(3080), [anon_sym_DOT] = ACTIONS(3082), [anon_sym_AMP] = ACTIONS(3085), [anon_sym_AMP_EQ] = ACTIONS(3080), [anon_sym_AMP_AMP] = ACTIONS(3080), [anon_sym_PIPE] = ACTIONS(3078), [anon_sym_PIPE_EQ] = ACTIONS(3080), [anon_sym_PIPE_PIPE] = ACTIONS(3080), [anon_sym_DASH] = ACTIONS(3085), [anon_sym_DASH_EQ] = ACTIONS(3080), [anon_sym_DASH_DASH] = ACTIONS(3082), [anon_sym_PLUS] = ACTIONS(3085), [anon_sym_PLUS_EQ] = ACTIONS(3080), [anon_sym_PLUS_PLUS] = ACTIONS(3082), [anon_sym_LT] = ACTIONS(3078), [anon_sym_LT_EQ] = ACTIONS(3080), [anon_sym_LT_LT] = ACTIONS(3078), [anon_sym_LT_LT_EQ] = ACTIONS(3080), [anon_sym_GT] = ACTIONS(3078), [anon_sym_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT] = ACTIONS(3078), [anon_sym_GT_GT_GT] = ACTIONS(3078), [anon_sym_BANG] = ACTIONS(3074), [anon_sym_BANG_EQ] = ACTIONS(3080), [anon_sym_LPAREN] = ACTIONS(3082), [anon_sym_RPAREN] = ACTIONS(3076), [anon_sym_LBRACK] = ACTIONS(3082), [anon_sym_QMARK] = ACTIONS(3080), [anon_sym_COMMA] = ACTIONS(3080), [anon_sym_SEMI] = ACTIONS(3082), [anon_sym_DOLLAR] = ACTIONS(3076), [anon_sym_EQ] = ACTIONS(3078), [anon_sym_EQ_EQ] = ACTIONS(3080), [anon_sym_STAR] = ACTIONS(3085), [anon_sym_STAR_EQ] = ACTIONS(3080), [anon_sym_PERCENT] = ACTIONS(3078), [anon_sym_PERCENT_EQ] = ACTIONS(3080), [anon_sym_CARET] = ACTIONS(3078), [anon_sym_CARET_EQ] = ACTIONS(3080), [anon_sym_CARET_CARET] = ACTIONS(3078), [anon_sym_CARET_CARET_EQ] = ACTIONS(3080), [anon_sym_TILDE] = ACTIONS(3085), [anon_sym_TILDE_EQ] = ACTIONS(3080), [anon_sym_AT] = ACTIONS(3076), [sym_bool] = ACTIONS(3074), [sym_byte] = ACTIONS(3074), [sym_ubyte] = ACTIONS(3074), [sym_char] = ACTIONS(3074), [sym_short] = ACTIONS(3074), [sym_ushort] = ACTIONS(3074), [sym_int] = ACTIONS(3074), [sym_uint] = ACTIONS(3074), [sym_long] = ACTIONS(3074), [sym_ulong] = ACTIONS(3074), [sym_cent] = ACTIONS(3074), [sym_ucent] = ACTIONS(3074), [sym_wchar] = ACTIONS(3074), [sym_dchar] = ACTIONS(3074), [sym_float] = ACTIONS(3074), [sym_double] = ACTIONS(3074), [sym_real] = ACTIONS(3074), [sym_ifloat] = ACTIONS(3074), [sym_idouble] = ACTIONS(3074), [sym_ireal] = ACTIONS(3074), [sym_cfloat] = ACTIONS(3074), [sym_cdouble] = ACTIONS(3074), [sym_creal] = ACTIONS(3074), [sym_size_t] = ACTIONS(3074), [sym_ptrdiff_t] = ACTIONS(3074), [sym_string] = ACTIONS(3074), [sym_cstring] = ACTIONS(3074), [sym_dstring] = ACTIONS(3074), [sym_wstring] = ACTIONS(3074), [sym_noreturn] = ACTIONS(3074), [sym_true] = ACTIONS(3074), [sym_false] = ACTIONS(3074), [sym_null] = ACTIONS(3074), [sym_super] = ACTIONS(3074), [sym_this] = ACTIONS(3074), [sym_abstract] = ACTIONS(3074), [sym_alias] = ACTIONS(3074), [sym_align] = ACTIONS(3074), [sym_asm] = ACTIONS(3074), [sym_assert] = ACTIONS(3074), [sym_auto] = ACTIONS(3074), [sym_break] = ACTIONS(3074), [sym_case] = ACTIONS(3074), [sym_cast] = ACTIONS(3074), [sym_catch] = ACTIONS(3074), [sym_class] = ACTIONS(3074), [sym_const] = ACTIONS(3074), [sym_continue] = ACTIONS(3074), [sym_debug] = ACTIONS(3074), [sym_default] = ACTIONS(3074), [sym_delegate] = ACTIONS(3074), [sym_delete] = ACTIONS(3074), [sym_deprecated] = ACTIONS(3074), [sym_do] = ACTIONS(3074), [sym_else] = ACTIONS(3074), [sym_enum] = ACTIONS(3074), [sym_export] = ACTIONS(3074), [sym_extern] = ACTIONS(3074), [sym_final] = ACTIONS(3074), [sym_finally] = ACTIONS(3074), [sym_for] = ACTIONS(3074), [sym_foreach] = ACTIONS(3074), [sym_foreach_reverse] = ACTIONS(3074), [sym_function] = ACTIONS(3074), [sym_goto] = ACTIONS(3074), [sym_if] = ACTIONS(3074), [sym_immutable] = ACTIONS(3074), [sym_import] = ACTIONS(3074), [sym_in] = ACTIONS(3085), [sym_inout] = ACTIONS(3074), [sym_interface] = ACTIONS(3074), [sym_invariant] = ACTIONS(3074), [sym_is] = ACTIONS(3085), [sym_mixin] = ACTIONS(3074), [sym_new] = ACTIONS(3074), [sym_nothrow] = ACTIONS(3074), [sym_out] = ACTIONS(3074), [sym_override] = ACTIONS(3074), [sym_package] = ACTIONS(3074), [sym_pragma] = ACTIONS(3074), [sym_private] = ACTIONS(3074), [sym_protected] = ACTIONS(3074), [sym_public] = ACTIONS(3074), [sym_pure] = ACTIONS(3074), [sym_ref] = ACTIONS(3074), [sym_return] = ACTIONS(3074), [sym_scope] = ACTIONS(3074), [sym_shared] = ACTIONS(3074), [sym_static] = ACTIONS(3074), [sym_struct] = ACTIONS(3074), [sym_switch] = ACTIONS(3074), [sym_synchronized] = ACTIONS(3074), [sym_template] = ACTIONS(3074), [sym_throw] = ACTIONS(3074), [sym_try] = ACTIONS(3074), [sym_typeid] = ACTIONS(3074), [sym_typeof] = ACTIONS(3074), [sym_union] = ACTIONS(3074), [sym_unittest] = ACTIONS(3074), [sym_version] = ACTIONS(3074), [sym_while] = ACTIONS(3074), [sym_with] = ACTIONS(3074), [sym_gshared] = ACTIONS(3074), [sym_traits] = ACTIONS(3074), [sym_vector] = ACTIONS(3074), [sym_void] = ACTIONS(3074), [anon_sym_BQUOTE] = ACTIONS(3076), [anon_sym_r_DQUOTE] = ACTIONS(3076), [anon_sym_x_DQUOTE] = ACTIONS(3076), [anon_sym_DQUOTE] = ACTIONS(3076), [anon_sym_i_BQUOTE] = ACTIONS(3076), [anon_sym_i_DQUOTE] = ACTIONS(3076), [anon_sym_iq_LBRACE] = ACTIONS(3076), [aux_sym_char_literal_token1] = ACTIONS(3076), [anon_sym_SQUOTE] = ACTIONS(3074), [anon_sym___DATE__] = ACTIONS(3074), [anon_sym___FILE__] = ACTIONS(3074), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3074), [anon_sym___FUNCTION__] = ACTIONS(3074), [anon_sym___LINE__] = ACTIONS(3074), [anon_sym___MODULE__] = ACTIONS(3074), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3074), [anon_sym___TIME__] = ACTIONS(3074), [anon_sym___TIMESTAMP__] = ACTIONS(3074), [anon_sym___VENDOR__] = ACTIONS(3074), [anon_sym___VERSION__] = ACTIONS(3074), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3076), [sym_float_literal] = ACTIONS(3076), [sym__string] = ACTIONS(3076), [sym_not_in] = ACTIONS(3080), [sym_not_is] = ACTIONS(3080), }, [663] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_RBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3091), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_abstract] = ACTIONS(3088), [sym_alias] = ACTIONS(3088), [sym_align] = ACTIONS(3088), [sym_asm] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_break] = ACTIONS(3088), [sym_case] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_catch] = ACTIONS(3088), [sym_class] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_continue] = ACTIONS(3088), [sym_debug] = ACTIONS(3088), [sym_default] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_deprecated] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(3094), [sym_enum] = ACTIONS(3088), [sym_export] = ACTIONS(3088), [sym_extern] = ACTIONS(3088), [sym_final] = ACTIONS(3088), [sym_finally] = ACTIONS(3088), [sym_for] = ACTIONS(3088), [sym_foreach] = ACTIONS(3088), [sym_foreach_reverse] = ACTIONS(3088), [sym_function] = ACTIONS(3088), [sym_goto] = ACTIONS(3088), [sym_if] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_interface] = ACTIONS(3088), [sym_invariant] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_nothrow] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_override] = ACTIONS(3088), [sym_package] = ACTIONS(3088), [sym_pragma] = ACTIONS(3088), [sym_private] = ACTIONS(3088), [sym_protected] = ACTIONS(3088), [sym_public] = ACTIONS(3088), [sym_pure] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_return] = ACTIONS(3088), [sym_scope] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_static] = ACTIONS(3088), [sym_struct] = ACTIONS(3088), [sym_switch] = ACTIONS(3088), [sym_synchronized] = ACTIONS(3088), [sym_template] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_try] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_union] = ACTIONS(3088), [sym_unittest] = ACTIONS(3088), [sym_version] = ACTIONS(3088), [sym_while] = ACTIONS(3088), [sym_with] = ACTIONS(3088), [sym_gshared] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [664] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3100), [anon_sym_RBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_SLASH] = ACTIONS(3098), [anon_sym_SLASH_EQ] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_AMP] = ACTIONS(3098), [anon_sym_AMP_EQ] = ACTIONS(3100), [anon_sym_AMP_AMP] = ACTIONS(3100), [anon_sym_PIPE] = ACTIONS(3098), [anon_sym_PIPE_EQ] = ACTIONS(3100), [anon_sym_PIPE_PIPE] = ACTIONS(3100), [anon_sym_DASH] = ACTIONS(3098), [anon_sym_DASH_EQ] = ACTIONS(3100), [anon_sym_DASH_DASH] = ACTIONS(3100), [anon_sym_PLUS] = ACTIONS(3098), [anon_sym_PLUS_EQ] = ACTIONS(3100), [anon_sym_PLUS_PLUS] = ACTIONS(3100), [anon_sym_LT] = ACTIONS(3098), [anon_sym_LT_EQ] = ACTIONS(3100), [anon_sym_LT_LT] = ACTIONS(3098), [anon_sym_LT_LT_EQ] = ACTIONS(3100), [anon_sym_GT] = ACTIONS(3098), [anon_sym_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT] = ACTIONS(3098), [anon_sym_GT_GT_GT] = ACTIONS(3098), [anon_sym_BANG] = ACTIONS(3098), [anon_sym_BANG_EQ] = ACTIONS(3100), [anon_sym_LPAREN] = ACTIONS(3100), [anon_sym_RPAREN] = ACTIONS(3100), [anon_sym_LBRACK] = ACTIONS(3100), [anon_sym_QMARK] = ACTIONS(3100), [anon_sym_COMMA] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_DOLLAR] = ACTIONS(3100), [anon_sym_EQ] = ACTIONS(3098), [anon_sym_EQ_EQ] = ACTIONS(3100), [anon_sym_STAR] = ACTIONS(3098), [anon_sym_STAR_EQ] = ACTIONS(3100), [anon_sym_PERCENT] = ACTIONS(3098), [anon_sym_PERCENT_EQ] = ACTIONS(3100), [anon_sym_CARET] = ACTIONS(3098), [anon_sym_CARET_EQ] = ACTIONS(3100), [anon_sym_CARET_CARET] = ACTIONS(3098), [anon_sym_CARET_CARET_EQ] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3098), [anon_sym_TILDE_EQ] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_true] = ACTIONS(3098), [sym_false] = ACTIONS(3098), [sym_null] = ACTIONS(3098), [sym_super] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_asm] = ACTIONS(3098), [sym_assert] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_break] = ACTIONS(3098), [sym_case] = ACTIONS(3098), [sym_cast] = ACTIONS(3098), [sym_catch] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_continue] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_default] = ACTIONS(3098), [sym_delegate] = ACTIONS(3098), [sym_delete] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_finally] = ACTIONS(3098), [sym_for] = ACTIONS(3098), [sym_foreach] = ACTIONS(3098), [sym_foreach_reverse] = ACTIONS(3098), [sym_function] = ACTIONS(3098), [sym_goto] = ACTIONS(3098), [sym_if] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_is] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_new] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_switch] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_throw] = ACTIONS(3098), [sym_try] = ACTIONS(3098), [sym_typeid] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_with] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [anon_sym_BQUOTE] = ACTIONS(3100), [anon_sym_r_DQUOTE] = ACTIONS(3100), [anon_sym_x_DQUOTE] = ACTIONS(3100), [anon_sym_DQUOTE] = ACTIONS(3100), [anon_sym_i_BQUOTE] = ACTIONS(3100), [anon_sym_i_DQUOTE] = ACTIONS(3100), [anon_sym_iq_LBRACE] = ACTIONS(3100), [aux_sym_char_literal_token1] = ACTIONS(3100), [anon_sym_SQUOTE] = ACTIONS(3098), [anon_sym___DATE__] = ACTIONS(3098), [anon_sym___FILE__] = ACTIONS(3098), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3098), [anon_sym___FUNCTION__] = ACTIONS(3098), [anon_sym___LINE__] = ACTIONS(3098), [anon_sym___MODULE__] = ACTIONS(3098), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3098), [anon_sym___TIME__] = ACTIONS(3098), [anon_sym___TIMESTAMP__] = ACTIONS(3098), [anon_sym___VENDOR__] = ACTIONS(3098), [anon_sym___VERSION__] = ACTIONS(3098), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3100), [sym_float_literal] = ACTIONS(3100), [sym__string] = ACTIONS(3100), [sym_not_in] = ACTIONS(3100), [sym_not_is] = ACTIONS(3100), }, [665] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3104), [anon_sym_RBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_SLASH] = ACTIONS(3102), [anon_sym_SLASH_EQ] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_AMP] = ACTIONS(3102), [anon_sym_AMP_EQ] = ACTIONS(3104), [anon_sym_AMP_AMP] = ACTIONS(3104), [anon_sym_PIPE] = ACTIONS(3102), [anon_sym_PIPE_EQ] = ACTIONS(3104), [anon_sym_PIPE_PIPE] = ACTIONS(3104), [anon_sym_DASH] = ACTIONS(3102), [anon_sym_DASH_EQ] = ACTIONS(3104), [anon_sym_DASH_DASH] = ACTIONS(3104), [anon_sym_PLUS] = ACTIONS(3102), [anon_sym_PLUS_EQ] = ACTIONS(3104), [anon_sym_PLUS_PLUS] = ACTIONS(3104), [anon_sym_LT] = ACTIONS(3102), [anon_sym_LT_EQ] = ACTIONS(3104), [anon_sym_LT_LT] = ACTIONS(3102), [anon_sym_LT_LT_EQ] = ACTIONS(3104), [anon_sym_GT] = ACTIONS(3102), [anon_sym_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT] = ACTIONS(3102), [anon_sym_GT_GT_GT] = ACTIONS(3102), [anon_sym_BANG] = ACTIONS(3102), [anon_sym_BANG_EQ] = ACTIONS(3104), [anon_sym_LPAREN] = ACTIONS(3104), [anon_sym_RPAREN] = ACTIONS(3104), [anon_sym_LBRACK] = ACTIONS(3104), [anon_sym_QMARK] = ACTIONS(3104), [anon_sym_COMMA] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_DOLLAR] = ACTIONS(3104), [anon_sym_EQ] = ACTIONS(3102), [anon_sym_EQ_EQ] = ACTIONS(3104), [anon_sym_STAR] = ACTIONS(3102), [anon_sym_STAR_EQ] = ACTIONS(3104), [anon_sym_PERCENT] = ACTIONS(3102), [anon_sym_PERCENT_EQ] = ACTIONS(3104), [anon_sym_CARET] = ACTIONS(3102), [anon_sym_CARET_EQ] = ACTIONS(3104), [anon_sym_CARET_CARET] = ACTIONS(3102), [anon_sym_CARET_CARET_EQ] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3102), [anon_sym_TILDE_EQ] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_true] = ACTIONS(3102), [sym_false] = ACTIONS(3102), [sym_null] = ACTIONS(3102), [sym_super] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_asm] = ACTIONS(3102), [sym_assert] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_break] = ACTIONS(3102), [sym_case] = ACTIONS(3102), [sym_cast] = ACTIONS(3102), [sym_catch] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_continue] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_default] = ACTIONS(3102), [sym_delegate] = ACTIONS(3102), [sym_delete] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_finally] = ACTIONS(3102), [sym_for] = ACTIONS(3102), [sym_foreach] = ACTIONS(3102), [sym_foreach_reverse] = ACTIONS(3102), [sym_function] = ACTIONS(3102), [sym_goto] = ACTIONS(3102), [sym_if] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_is] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_new] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_switch] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_throw] = ACTIONS(3102), [sym_try] = ACTIONS(3102), [sym_typeid] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_with] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [anon_sym_BQUOTE] = ACTIONS(3104), [anon_sym_r_DQUOTE] = ACTIONS(3104), [anon_sym_x_DQUOTE] = ACTIONS(3104), [anon_sym_DQUOTE] = ACTIONS(3104), [anon_sym_i_BQUOTE] = ACTIONS(3104), [anon_sym_i_DQUOTE] = ACTIONS(3104), [anon_sym_iq_LBRACE] = ACTIONS(3104), [aux_sym_char_literal_token1] = ACTIONS(3104), [anon_sym_SQUOTE] = ACTIONS(3102), [anon_sym___DATE__] = ACTIONS(3102), [anon_sym___FILE__] = ACTIONS(3102), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3102), [anon_sym___FUNCTION__] = ACTIONS(3102), [anon_sym___LINE__] = ACTIONS(3102), [anon_sym___MODULE__] = ACTIONS(3102), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3102), [anon_sym___TIME__] = ACTIONS(3102), [anon_sym___TIMESTAMP__] = ACTIONS(3102), [anon_sym___VENDOR__] = ACTIONS(3102), [anon_sym___VERSION__] = ACTIONS(3102), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3104), [sym_float_literal] = ACTIONS(3104), [sym__string] = ACTIONS(3104), [sym_not_in] = ACTIONS(3104), [sym_not_is] = ACTIONS(3104), }, [666] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_RBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3070), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3070), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_RPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3070), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3070), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_asm] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_break] = ACTIONS(3070), [sym_case] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_catch] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_continue] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_default] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_finally] = ACTIONS(3070), [sym_for] = ACTIONS(3070), [sym_foreach] = ACTIONS(3070), [sym_foreach_reverse] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_goto] = ACTIONS(3070), [sym_if] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_switch] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_try] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_with] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [667] = { [sym_identifier] = ACTIONS(3106), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3109), [anon_sym_RBRACE] = ACTIONS(3109), [anon_sym_LBRACE] = ACTIONS(3109), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3109), [anon_sym_AMP] = ACTIONS(3106), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3106), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3109), [anon_sym_PLUS] = ACTIONS(3106), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3109), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3106), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3109), [anon_sym_RPAREN] = ACTIONS(3109), [anon_sym_LBRACK] = ACTIONS(3109), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3109), [anon_sym_DOLLAR] = ACTIONS(3109), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3106), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3106), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3109), [sym_bool] = ACTIONS(3106), [sym_byte] = ACTIONS(3106), [sym_ubyte] = ACTIONS(3106), [sym_char] = ACTIONS(3106), [sym_short] = ACTIONS(3106), [sym_ushort] = ACTIONS(3106), [sym_int] = ACTIONS(3106), [sym_uint] = ACTIONS(3106), [sym_long] = ACTIONS(3106), [sym_ulong] = ACTIONS(3106), [sym_cent] = ACTIONS(3106), [sym_ucent] = ACTIONS(3106), [sym_wchar] = ACTIONS(3106), [sym_dchar] = ACTIONS(3106), [sym_float] = ACTIONS(3106), [sym_double] = ACTIONS(3106), [sym_real] = ACTIONS(3106), [sym_ifloat] = ACTIONS(3106), [sym_idouble] = ACTIONS(3106), [sym_ireal] = ACTIONS(3106), [sym_cfloat] = ACTIONS(3106), [sym_cdouble] = ACTIONS(3106), [sym_creal] = ACTIONS(3106), [sym_size_t] = ACTIONS(3106), [sym_ptrdiff_t] = ACTIONS(3106), [sym_string] = ACTIONS(3106), [sym_cstring] = ACTIONS(3106), [sym_dstring] = ACTIONS(3106), [sym_wstring] = ACTIONS(3106), [sym_noreturn] = ACTIONS(3106), [sym_true] = ACTIONS(3106), [sym_false] = ACTIONS(3106), [sym_null] = ACTIONS(3106), [sym_super] = ACTIONS(3106), [sym_this] = ACTIONS(3106), [sym_abstract] = ACTIONS(3106), [sym_alias] = ACTIONS(3106), [sym_align] = ACTIONS(3106), [sym_asm] = ACTIONS(3106), [sym_assert] = ACTIONS(3106), [sym_auto] = ACTIONS(3106), [sym_break] = ACTIONS(3106), [sym_case] = ACTIONS(3106), [sym_cast] = ACTIONS(3106), [sym_catch] = ACTIONS(3106), [sym_class] = ACTIONS(3106), [sym_const] = ACTIONS(3106), [sym_continue] = ACTIONS(3106), [sym_debug] = ACTIONS(3106), [sym_default] = ACTIONS(3106), [sym_delegate] = ACTIONS(3106), [sym_delete] = ACTIONS(3106), [sym_deprecated] = ACTIONS(3106), [sym_do] = ACTIONS(3106), [sym_else] = ACTIONS(3106), [sym_enum] = ACTIONS(3106), [sym_export] = ACTIONS(3106), [sym_extern] = ACTIONS(3106), [sym_final] = ACTIONS(3106), [sym_finally] = ACTIONS(3106), [sym_for] = ACTIONS(3106), [sym_foreach] = ACTIONS(3106), [sym_foreach_reverse] = ACTIONS(3106), [sym_function] = ACTIONS(3106), [sym_goto] = ACTIONS(3106), [sym_if] = ACTIONS(3106), [sym_immutable] = ACTIONS(3106), [sym_import] = ACTIONS(3106), [sym_in] = ACTIONS(3106), [sym_inout] = ACTIONS(3106), [sym_interface] = ACTIONS(3106), [sym_invariant] = ACTIONS(3106), [sym_is] = ACTIONS(3106), [sym_mixin] = ACTIONS(3106), [sym_new] = ACTIONS(3106), [sym_nothrow] = ACTIONS(3106), [sym_out] = ACTIONS(3106), [sym_override] = ACTIONS(3106), [sym_package] = ACTIONS(3106), [sym_pragma] = ACTIONS(3106), [sym_private] = ACTIONS(3106), [sym_protected] = ACTIONS(3106), [sym_public] = ACTIONS(3106), [sym_pure] = ACTIONS(3106), [sym_ref] = ACTIONS(3106), [sym_return] = ACTIONS(3106), [sym_scope] = ACTIONS(3106), [sym_shared] = ACTIONS(3106), [sym_static] = ACTIONS(3106), [sym_struct] = ACTIONS(3106), [sym_switch] = ACTIONS(3106), [sym_synchronized] = ACTIONS(3106), [sym_template] = ACTIONS(3106), [sym_throw] = ACTIONS(3106), [sym_try] = ACTIONS(3106), [sym_typeid] = ACTIONS(3106), [sym_typeof] = ACTIONS(3106), [sym_union] = ACTIONS(3106), [sym_unittest] = ACTIONS(3106), [sym_version] = ACTIONS(3106), [sym_while] = ACTIONS(3106), [sym_with] = ACTIONS(3106), [sym_gshared] = ACTIONS(3106), [sym_traits] = ACTIONS(3106), [sym_vector] = ACTIONS(3106), [sym_void] = ACTIONS(3106), [anon_sym_BQUOTE] = ACTIONS(3109), [anon_sym_r_DQUOTE] = ACTIONS(3109), [anon_sym_x_DQUOTE] = ACTIONS(3109), [anon_sym_DQUOTE] = ACTIONS(3109), [anon_sym_i_BQUOTE] = ACTIONS(3109), [anon_sym_i_DQUOTE] = ACTIONS(3109), [anon_sym_iq_LBRACE] = ACTIONS(3109), [aux_sym_char_literal_token1] = ACTIONS(3109), [anon_sym_SQUOTE] = ACTIONS(3106), [anon_sym___DATE__] = ACTIONS(3106), [anon_sym___FILE__] = ACTIONS(3106), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3106), [anon_sym___FUNCTION__] = ACTIONS(3106), [anon_sym___LINE__] = ACTIONS(3106), [anon_sym___MODULE__] = ACTIONS(3106), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3106), [anon_sym___TIME__] = ACTIONS(3106), [anon_sym___TIMESTAMP__] = ACTIONS(3106), [anon_sym___VENDOR__] = ACTIONS(3106), [anon_sym___VERSION__] = ACTIONS(3106), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3109), [sym_float_literal] = ACTIONS(3109), [sym__string] = ACTIONS(3109), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [668] = { [sym_identifier] = ACTIONS(3112), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3115), [anon_sym_RBRACE] = ACTIONS(3115), [anon_sym_LBRACE] = ACTIONS(3115), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3115), [anon_sym_AMP] = ACTIONS(3112), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3112), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3115), [anon_sym_PLUS] = ACTIONS(3112), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3115), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3112), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3115), [anon_sym_RPAREN] = ACTIONS(3115), [anon_sym_LBRACK] = ACTIONS(3115), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3115), [anon_sym_DOLLAR] = ACTIONS(3115), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3112), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3112), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3115), [sym_bool] = ACTIONS(3112), [sym_byte] = ACTIONS(3112), [sym_ubyte] = ACTIONS(3112), [sym_char] = ACTIONS(3112), [sym_short] = ACTIONS(3112), [sym_ushort] = ACTIONS(3112), [sym_int] = ACTIONS(3112), [sym_uint] = ACTIONS(3112), [sym_long] = ACTIONS(3112), [sym_ulong] = ACTIONS(3112), [sym_cent] = ACTIONS(3112), [sym_ucent] = ACTIONS(3112), [sym_wchar] = ACTIONS(3112), [sym_dchar] = ACTIONS(3112), [sym_float] = ACTIONS(3112), [sym_double] = ACTIONS(3112), [sym_real] = ACTIONS(3112), [sym_ifloat] = ACTIONS(3112), [sym_idouble] = ACTIONS(3112), [sym_ireal] = ACTIONS(3112), [sym_cfloat] = ACTIONS(3112), [sym_cdouble] = ACTIONS(3112), [sym_creal] = ACTIONS(3112), [sym_size_t] = ACTIONS(3112), [sym_ptrdiff_t] = ACTIONS(3112), [sym_string] = ACTIONS(3112), [sym_cstring] = ACTIONS(3112), [sym_dstring] = ACTIONS(3112), [sym_wstring] = ACTIONS(3112), [sym_noreturn] = ACTIONS(3112), [sym_true] = ACTIONS(3112), [sym_false] = ACTIONS(3112), [sym_null] = ACTIONS(3112), [sym_super] = ACTIONS(3112), [sym_this] = ACTIONS(3112), [sym_abstract] = ACTIONS(3112), [sym_alias] = ACTIONS(3112), [sym_align] = ACTIONS(3112), [sym_asm] = ACTIONS(3112), [sym_assert] = ACTIONS(3112), [sym_auto] = ACTIONS(3112), [sym_break] = ACTIONS(3112), [sym_case] = ACTIONS(3112), [sym_cast] = ACTIONS(3112), [sym_catch] = ACTIONS(3112), [sym_class] = ACTIONS(3112), [sym_const] = ACTIONS(3112), [sym_continue] = ACTIONS(3112), [sym_debug] = ACTIONS(3112), [sym_default] = ACTIONS(3112), [sym_delegate] = ACTIONS(3112), [sym_delete] = ACTIONS(3112), [sym_deprecated] = ACTIONS(3112), [sym_do] = ACTIONS(3112), [sym_else] = ACTIONS(3112), [sym_enum] = ACTIONS(3112), [sym_export] = ACTIONS(3112), [sym_extern] = ACTIONS(3112), [sym_final] = ACTIONS(3112), [sym_finally] = ACTIONS(3112), [sym_for] = ACTIONS(3112), [sym_foreach] = ACTIONS(3112), [sym_foreach_reverse] = ACTIONS(3112), [sym_function] = ACTIONS(3112), [sym_goto] = ACTIONS(3112), [sym_if] = ACTIONS(3112), [sym_immutable] = ACTIONS(3112), [sym_import] = ACTIONS(3112), [sym_in] = ACTIONS(3112), [sym_inout] = ACTIONS(3112), [sym_interface] = ACTIONS(3112), [sym_invariant] = ACTIONS(3112), [sym_is] = ACTIONS(3112), [sym_mixin] = ACTIONS(3112), [sym_new] = ACTIONS(3112), [sym_nothrow] = ACTIONS(3112), [sym_out] = ACTIONS(3112), [sym_override] = ACTIONS(3112), [sym_package] = ACTIONS(3112), [sym_pragma] = ACTIONS(3112), [sym_private] = ACTIONS(3112), [sym_protected] = ACTIONS(3112), [sym_public] = ACTIONS(3112), [sym_pure] = ACTIONS(3112), [sym_ref] = ACTIONS(3112), [sym_return] = ACTIONS(3112), [sym_scope] = ACTIONS(3112), [sym_shared] = ACTIONS(3112), [sym_static] = ACTIONS(3112), [sym_struct] = ACTIONS(3112), [sym_switch] = ACTIONS(3112), [sym_synchronized] = ACTIONS(3112), [sym_template] = ACTIONS(3112), [sym_throw] = ACTIONS(3112), [sym_try] = ACTIONS(3112), [sym_typeid] = ACTIONS(3112), [sym_typeof] = ACTIONS(3112), [sym_union] = ACTIONS(3112), [sym_unittest] = ACTIONS(3112), [sym_version] = ACTIONS(3112), [sym_while] = ACTIONS(3112), [sym_with] = ACTIONS(3112), [sym_gshared] = ACTIONS(3112), [sym_traits] = ACTIONS(3112), [sym_vector] = ACTIONS(3112), [sym_void] = ACTIONS(3112), [anon_sym_BQUOTE] = ACTIONS(3115), [anon_sym_r_DQUOTE] = ACTIONS(3115), [anon_sym_x_DQUOTE] = ACTIONS(3115), [anon_sym_DQUOTE] = ACTIONS(3115), [anon_sym_i_BQUOTE] = ACTIONS(3115), [anon_sym_i_DQUOTE] = ACTIONS(3115), [anon_sym_iq_LBRACE] = ACTIONS(3115), [aux_sym_char_literal_token1] = ACTIONS(3115), [anon_sym_SQUOTE] = ACTIONS(3112), [anon_sym___DATE__] = ACTIONS(3112), [anon_sym___FILE__] = ACTIONS(3112), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3112), [anon_sym___FUNCTION__] = ACTIONS(3112), [anon_sym___LINE__] = ACTIONS(3112), [anon_sym___MODULE__] = ACTIONS(3112), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3112), [anon_sym___TIME__] = ACTIONS(3112), [anon_sym___TIMESTAMP__] = ACTIONS(3112), [anon_sym___VENDOR__] = ACTIONS(3112), [anon_sym___VERSION__] = ACTIONS(3112), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3115), [sym_float_literal] = ACTIONS(3115), [sym__string] = ACTIONS(3115), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [669] = { [sym_identifier] = ACTIONS(3118), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3121), [anon_sym_RBRACE] = ACTIONS(3121), [anon_sym_LBRACE] = ACTIONS(3121), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3121), [anon_sym_AMP] = ACTIONS(3118), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3118), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3121), [anon_sym_PLUS] = ACTIONS(3118), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3121), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3118), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3121), [anon_sym_RPAREN] = ACTIONS(3121), [anon_sym_LBRACK] = ACTIONS(3121), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3121), [anon_sym_DOLLAR] = ACTIONS(3121), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3118), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3118), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3121), [sym_bool] = ACTIONS(3118), [sym_byte] = ACTIONS(3118), [sym_ubyte] = ACTIONS(3118), [sym_char] = ACTIONS(3118), [sym_short] = ACTIONS(3118), [sym_ushort] = ACTIONS(3118), [sym_int] = ACTIONS(3118), [sym_uint] = ACTIONS(3118), [sym_long] = ACTIONS(3118), [sym_ulong] = ACTIONS(3118), [sym_cent] = ACTIONS(3118), [sym_ucent] = ACTIONS(3118), [sym_wchar] = ACTIONS(3118), [sym_dchar] = ACTIONS(3118), [sym_float] = ACTIONS(3118), [sym_double] = ACTIONS(3118), [sym_real] = ACTIONS(3118), [sym_ifloat] = ACTIONS(3118), [sym_idouble] = ACTIONS(3118), [sym_ireal] = ACTIONS(3118), [sym_cfloat] = ACTIONS(3118), [sym_cdouble] = ACTIONS(3118), [sym_creal] = ACTIONS(3118), [sym_size_t] = ACTIONS(3118), [sym_ptrdiff_t] = ACTIONS(3118), [sym_string] = ACTIONS(3118), [sym_cstring] = ACTIONS(3118), [sym_dstring] = ACTIONS(3118), [sym_wstring] = ACTIONS(3118), [sym_noreturn] = ACTIONS(3118), [sym_true] = ACTIONS(3118), [sym_false] = ACTIONS(3118), [sym_null] = ACTIONS(3118), [sym_super] = ACTIONS(3118), [sym_this] = ACTIONS(3118), [sym_abstract] = ACTIONS(3118), [sym_alias] = ACTIONS(3118), [sym_align] = ACTIONS(3118), [sym_asm] = ACTIONS(3118), [sym_assert] = ACTIONS(3118), [sym_auto] = ACTIONS(3118), [sym_break] = ACTIONS(3118), [sym_case] = ACTIONS(3118), [sym_cast] = ACTIONS(3118), [sym_catch] = ACTIONS(3118), [sym_class] = ACTIONS(3118), [sym_const] = ACTIONS(3118), [sym_continue] = ACTIONS(3118), [sym_debug] = ACTIONS(3118), [sym_default] = ACTIONS(3118), [sym_delegate] = ACTIONS(3118), [sym_delete] = ACTIONS(3118), [sym_deprecated] = ACTIONS(3118), [sym_do] = ACTIONS(3118), [sym_else] = ACTIONS(3118), [sym_enum] = ACTIONS(3118), [sym_export] = ACTIONS(3118), [sym_extern] = ACTIONS(3118), [sym_final] = ACTIONS(3118), [sym_finally] = ACTIONS(3118), [sym_for] = ACTIONS(3118), [sym_foreach] = ACTIONS(3118), [sym_foreach_reverse] = ACTIONS(3118), [sym_function] = ACTIONS(3118), [sym_goto] = ACTIONS(3118), [sym_if] = ACTIONS(3118), [sym_immutable] = ACTIONS(3118), [sym_import] = ACTIONS(3118), [sym_in] = ACTIONS(3118), [sym_inout] = ACTIONS(3118), [sym_interface] = ACTIONS(3118), [sym_invariant] = ACTIONS(3118), [sym_is] = ACTIONS(3118), [sym_mixin] = ACTIONS(3118), [sym_new] = ACTIONS(3118), [sym_nothrow] = ACTIONS(3118), [sym_out] = ACTIONS(3118), [sym_override] = ACTIONS(3118), [sym_package] = ACTIONS(3118), [sym_pragma] = ACTIONS(3118), [sym_private] = ACTIONS(3118), [sym_protected] = ACTIONS(3118), [sym_public] = ACTIONS(3118), [sym_pure] = ACTIONS(3118), [sym_ref] = ACTIONS(3118), [sym_return] = ACTIONS(3118), [sym_scope] = ACTIONS(3118), [sym_shared] = ACTIONS(3118), [sym_static] = ACTIONS(3118), [sym_struct] = ACTIONS(3118), [sym_switch] = ACTIONS(3118), [sym_synchronized] = ACTIONS(3118), [sym_template] = ACTIONS(3118), [sym_throw] = ACTIONS(3118), [sym_try] = ACTIONS(3118), [sym_typeid] = ACTIONS(3118), [sym_typeof] = ACTIONS(3118), [sym_union] = ACTIONS(3118), [sym_unittest] = ACTIONS(3118), [sym_version] = ACTIONS(3118), [sym_while] = ACTIONS(3118), [sym_with] = ACTIONS(3118), [sym_gshared] = ACTIONS(3118), [sym_traits] = ACTIONS(3118), [sym_vector] = ACTIONS(3118), [sym_void] = ACTIONS(3118), [anon_sym_BQUOTE] = ACTIONS(3121), [anon_sym_r_DQUOTE] = ACTIONS(3121), [anon_sym_x_DQUOTE] = ACTIONS(3121), [anon_sym_DQUOTE] = ACTIONS(3121), [anon_sym_i_BQUOTE] = ACTIONS(3121), [anon_sym_i_DQUOTE] = ACTIONS(3121), [anon_sym_iq_LBRACE] = ACTIONS(3121), [aux_sym_char_literal_token1] = ACTIONS(3121), [anon_sym_SQUOTE] = ACTIONS(3118), [anon_sym___DATE__] = ACTIONS(3118), [anon_sym___FILE__] = ACTIONS(3118), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3118), [anon_sym___FUNCTION__] = ACTIONS(3118), [anon_sym___LINE__] = ACTIONS(3118), [anon_sym___MODULE__] = ACTIONS(3118), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3118), [anon_sym___TIME__] = ACTIONS(3118), [anon_sym___TIMESTAMP__] = ACTIONS(3118), [anon_sym___VENDOR__] = ACTIONS(3118), [anon_sym___VERSION__] = ACTIONS(3118), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3121), [sym_float_literal] = ACTIONS(3121), [sym__string] = ACTIONS(3121), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [670] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_RBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3091), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_abstract] = ACTIONS(3088), [sym_alias] = ACTIONS(3088), [sym_align] = ACTIONS(3088), [sym_asm] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_break] = ACTIONS(3088), [sym_case] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_catch] = ACTIONS(3088), [sym_class] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_continue] = ACTIONS(3088), [sym_debug] = ACTIONS(3088), [sym_default] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_deprecated] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(3124), [sym_enum] = ACTIONS(3088), [sym_export] = ACTIONS(3088), [sym_extern] = ACTIONS(3088), [sym_final] = ACTIONS(3088), [sym_finally] = ACTIONS(3088), [sym_for] = ACTIONS(3088), [sym_foreach] = ACTIONS(3088), [sym_foreach_reverse] = ACTIONS(3088), [sym_function] = ACTIONS(3088), [sym_goto] = ACTIONS(3088), [sym_if] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_interface] = ACTIONS(3088), [sym_invariant] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_nothrow] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_override] = ACTIONS(3088), [sym_package] = ACTIONS(3088), [sym_pragma] = ACTIONS(3088), [sym_private] = ACTIONS(3088), [sym_protected] = ACTIONS(3088), [sym_public] = ACTIONS(3088), [sym_pure] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_return] = ACTIONS(3088), [sym_scope] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_static] = ACTIONS(3088), [sym_struct] = ACTIONS(3088), [sym_switch] = ACTIONS(3088), [sym_synchronized] = ACTIONS(3088), [sym_template] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_try] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_union] = ACTIONS(3088), [sym_unittest] = ACTIONS(3088), [sym_version] = ACTIONS(3088), [sym_while] = ACTIONS(3088), [sym_with] = ACTIONS(3088), [sym_gshared] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [671] = { [sym_identifier] = ACTIONS(3112), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3115), [anon_sym_RBRACE] = ACTIONS(3115), [anon_sym_LBRACE] = ACTIONS(3115), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3115), [anon_sym_AMP] = ACTIONS(3112), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3112), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3115), [anon_sym_PLUS] = ACTIONS(3112), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3115), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3112), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3115), [anon_sym_RPAREN] = ACTIONS(3115), [anon_sym_LBRACK] = ACTIONS(3115), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3115), [anon_sym_DOLLAR] = ACTIONS(3115), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3112), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3112), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3115), [sym_bool] = ACTIONS(3112), [sym_byte] = ACTIONS(3112), [sym_ubyte] = ACTIONS(3112), [sym_char] = ACTIONS(3112), [sym_short] = ACTIONS(3112), [sym_ushort] = ACTIONS(3112), [sym_int] = ACTIONS(3112), [sym_uint] = ACTIONS(3112), [sym_long] = ACTIONS(3112), [sym_ulong] = ACTIONS(3112), [sym_cent] = ACTIONS(3112), [sym_ucent] = ACTIONS(3112), [sym_wchar] = ACTIONS(3112), [sym_dchar] = ACTIONS(3112), [sym_float] = ACTIONS(3112), [sym_double] = ACTIONS(3112), [sym_real] = ACTIONS(3112), [sym_ifloat] = ACTIONS(3112), [sym_idouble] = ACTIONS(3112), [sym_ireal] = ACTIONS(3112), [sym_cfloat] = ACTIONS(3112), [sym_cdouble] = ACTIONS(3112), [sym_creal] = ACTIONS(3112), [sym_size_t] = ACTIONS(3112), [sym_ptrdiff_t] = ACTIONS(3112), [sym_string] = ACTIONS(3112), [sym_cstring] = ACTIONS(3112), [sym_dstring] = ACTIONS(3112), [sym_wstring] = ACTIONS(3112), [sym_noreturn] = ACTIONS(3112), [sym_true] = ACTIONS(3112), [sym_false] = ACTIONS(3112), [sym_null] = ACTIONS(3112), [sym_super] = ACTIONS(3112), [sym_this] = ACTIONS(3112), [sym_abstract] = ACTIONS(3112), [sym_alias] = ACTIONS(3112), [sym_align] = ACTIONS(3112), [sym_asm] = ACTIONS(3112), [sym_assert] = ACTIONS(3112), [sym_auto] = ACTIONS(3112), [sym_break] = ACTIONS(3112), [sym_case] = ACTIONS(3112), [sym_cast] = ACTIONS(3112), [sym_class] = ACTIONS(3112), [sym_const] = ACTIONS(3112), [sym_continue] = ACTIONS(3112), [sym_debug] = ACTIONS(3112), [sym_default] = ACTIONS(3112), [sym_delegate] = ACTIONS(3112), [sym_delete] = ACTIONS(3112), [sym_deprecated] = ACTIONS(3112), [sym_do] = ACTIONS(3112), [sym_else] = ACTIONS(3112), [sym_enum] = ACTIONS(3112), [sym_export] = ACTIONS(3112), [sym_extern] = ACTIONS(3112), [sym_final] = ACTIONS(3112), [sym_for] = ACTIONS(3112), [sym_foreach] = ACTIONS(3112), [sym_foreach_reverse] = ACTIONS(3112), [sym_function] = ACTIONS(3112), [sym_goto] = ACTIONS(3112), [sym_if] = ACTIONS(3112), [sym_immutable] = ACTIONS(3112), [sym_import] = ACTIONS(3112), [sym_in] = ACTIONS(3112), [sym_inout] = ACTIONS(3112), [sym_interface] = ACTIONS(3112), [sym_invariant] = ACTIONS(3112), [sym_is] = ACTIONS(3112), [sym_mixin] = ACTIONS(3112), [sym_new] = ACTIONS(3112), [sym_nothrow] = ACTIONS(3112), [sym_out] = ACTIONS(3112), [sym_override] = ACTIONS(3112), [sym_package] = ACTIONS(3112), [sym_pragma] = ACTIONS(3112), [sym_private] = ACTIONS(3112), [sym_protected] = ACTIONS(3112), [sym_public] = ACTIONS(3112), [sym_pure] = ACTIONS(3112), [sym_ref] = ACTIONS(3112), [sym_return] = ACTIONS(3112), [sym_scope] = ACTIONS(3112), [sym_shared] = ACTIONS(3112), [sym_static] = ACTIONS(3112), [sym_struct] = ACTIONS(3112), [sym_switch] = ACTIONS(3112), [sym_synchronized] = ACTIONS(3112), [sym_template] = ACTIONS(3112), [sym_throw] = ACTIONS(3112), [sym_try] = ACTIONS(3112), [sym_typeid] = ACTIONS(3112), [sym_typeof] = ACTIONS(3112), [sym_union] = ACTIONS(3112), [sym_unittest] = ACTIONS(3112), [sym_version] = ACTIONS(3112), [sym_while] = ACTIONS(3112), [sym_with] = ACTIONS(3112), [sym_gshared] = ACTIONS(3112), [sym_traits] = ACTIONS(3112), [sym_vector] = ACTIONS(3112), [sym_void] = ACTIONS(3112), [anon_sym_BQUOTE] = ACTIONS(3115), [anon_sym_r_DQUOTE] = ACTIONS(3115), [anon_sym_x_DQUOTE] = ACTIONS(3115), [anon_sym_DQUOTE] = ACTIONS(3115), [anon_sym_i_BQUOTE] = ACTIONS(3115), [anon_sym_i_DQUOTE] = ACTIONS(3115), [anon_sym_iq_LBRACE] = ACTIONS(3115), [aux_sym_char_literal_token1] = ACTIONS(3115), [anon_sym_SQUOTE] = ACTIONS(3112), [anon_sym___DATE__] = ACTIONS(3112), [anon_sym___FILE__] = ACTIONS(3112), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3112), [anon_sym___FUNCTION__] = ACTIONS(3112), [anon_sym___LINE__] = ACTIONS(3112), [anon_sym___MODULE__] = ACTIONS(3112), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3112), [anon_sym___TIME__] = ACTIONS(3112), [anon_sym___TIMESTAMP__] = ACTIONS(3112), [anon_sym___VENDOR__] = ACTIONS(3112), [anon_sym___VERSION__] = ACTIONS(3112), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3115), [sym_float_literal] = ACTIONS(3115), [sym__string] = ACTIONS(3115), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [672] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7272), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [673] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7397), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [674] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7005), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [675] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7091), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [676] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_RBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3091), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_abstract] = ACTIONS(3088), [sym_alias] = ACTIONS(3088), [sym_align] = ACTIONS(3088), [sym_asm] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_break] = ACTIONS(3088), [sym_case] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_class] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_continue] = ACTIONS(3088), [sym_debug] = ACTIONS(3088), [sym_default] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_deprecated] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(3163), [sym_enum] = ACTIONS(3088), [sym_export] = ACTIONS(3088), [sym_extern] = ACTIONS(3088), [sym_final] = ACTIONS(3088), [sym_for] = ACTIONS(3088), [sym_foreach] = ACTIONS(3088), [sym_foreach_reverse] = ACTIONS(3088), [sym_function] = ACTIONS(3088), [sym_goto] = ACTIONS(3088), [sym_if] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_interface] = ACTIONS(3088), [sym_invariant] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_nothrow] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_override] = ACTIONS(3088), [sym_package] = ACTIONS(3088), [sym_pragma] = ACTIONS(3088), [sym_private] = ACTIONS(3088), [sym_protected] = ACTIONS(3088), [sym_public] = ACTIONS(3088), [sym_pure] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_return] = ACTIONS(3088), [sym_scope] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_static] = ACTIONS(3088), [sym_struct] = ACTIONS(3088), [sym_switch] = ACTIONS(3088), [sym_synchronized] = ACTIONS(3088), [sym_template] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_try] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_union] = ACTIONS(3088), [sym_unittest] = ACTIONS(3088), [sym_version] = ACTIONS(3088), [sym_while] = ACTIONS(3088), [sym_with] = ACTIONS(3088), [sym_gshared] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [677] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7145), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [678] = { [sym_identifier] = ACTIONS(3118), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3121), [anon_sym_RBRACE] = ACTIONS(3121), [anon_sym_LBRACE] = ACTIONS(3121), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3121), [anon_sym_AMP] = ACTIONS(3118), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3118), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3121), [anon_sym_PLUS] = ACTIONS(3118), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3121), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3118), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3121), [anon_sym_RPAREN] = ACTIONS(3121), [anon_sym_LBRACK] = ACTIONS(3121), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3121), [anon_sym_DOLLAR] = ACTIONS(3121), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3118), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3118), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3121), [sym_bool] = ACTIONS(3118), [sym_byte] = ACTIONS(3118), [sym_ubyte] = ACTIONS(3118), [sym_char] = ACTIONS(3118), [sym_short] = ACTIONS(3118), [sym_ushort] = ACTIONS(3118), [sym_int] = ACTIONS(3118), [sym_uint] = ACTIONS(3118), [sym_long] = ACTIONS(3118), [sym_ulong] = ACTIONS(3118), [sym_cent] = ACTIONS(3118), [sym_ucent] = ACTIONS(3118), [sym_wchar] = ACTIONS(3118), [sym_dchar] = ACTIONS(3118), [sym_float] = ACTIONS(3118), [sym_double] = ACTIONS(3118), [sym_real] = ACTIONS(3118), [sym_ifloat] = ACTIONS(3118), [sym_idouble] = ACTIONS(3118), [sym_ireal] = ACTIONS(3118), [sym_cfloat] = ACTIONS(3118), [sym_cdouble] = ACTIONS(3118), [sym_creal] = ACTIONS(3118), [sym_size_t] = ACTIONS(3118), [sym_ptrdiff_t] = ACTIONS(3118), [sym_string] = ACTIONS(3118), [sym_cstring] = ACTIONS(3118), [sym_dstring] = ACTIONS(3118), [sym_wstring] = ACTIONS(3118), [sym_noreturn] = ACTIONS(3118), [sym_true] = ACTIONS(3118), [sym_false] = ACTIONS(3118), [sym_null] = ACTIONS(3118), [sym_super] = ACTIONS(3118), [sym_this] = ACTIONS(3118), [sym_abstract] = ACTIONS(3118), [sym_alias] = ACTIONS(3118), [sym_align] = ACTIONS(3118), [sym_asm] = ACTIONS(3118), [sym_assert] = ACTIONS(3118), [sym_auto] = ACTIONS(3118), [sym_break] = ACTIONS(3118), [sym_case] = ACTIONS(3118), [sym_cast] = ACTIONS(3118), [sym_class] = ACTIONS(3118), [sym_const] = ACTIONS(3118), [sym_continue] = ACTIONS(3118), [sym_debug] = ACTIONS(3118), [sym_default] = ACTIONS(3118), [sym_delegate] = ACTIONS(3118), [sym_delete] = ACTIONS(3118), [sym_deprecated] = ACTIONS(3118), [sym_do] = ACTIONS(3118), [sym_else] = ACTIONS(3118), [sym_enum] = ACTIONS(3118), [sym_export] = ACTIONS(3118), [sym_extern] = ACTIONS(3118), [sym_final] = ACTIONS(3118), [sym_for] = ACTIONS(3118), [sym_foreach] = ACTIONS(3118), [sym_foreach_reverse] = ACTIONS(3118), [sym_function] = ACTIONS(3118), [sym_goto] = ACTIONS(3118), [sym_if] = ACTIONS(3118), [sym_immutable] = ACTIONS(3118), [sym_import] = ACTIONS(3118), [sym_in] = ACTIONS(3118), [sym_inout] = ACTIONS(3118), [sym_interface] = ACTIONS(3118), [sym_invariant] = ACTIONS(3118), [sym_is] = ACTIONS(3118), [sym_mixin] = ACTIONS(3118), [sym_new] = ACTIONS(3118), [sym_nothrow] = ACTIONS(3118), [sym_out] = ACTIONS(3118), [sym_override] = ACTIONS(3118), [sym_package] = ACTIONS(3118), [sym_pragma] = ACTIONS(3118), [sym_private] = ACTIONS(3118), [sym_protected] = ACTIONS(3118), [sym_public] = ACTIONS(3118), [sym_pure] = ACTIONS(3118), [sym_ref] = ACTIONS(3118), [sym_return] = ACTIONS(3118), [sym_scope] = ACTIONS(3118), [sym_shared] = ACTIONS(3118), [sym_static] = ACTIONS(3118), [sym_struct] = ACTIONS(3118), [sym_switch] = ACTIONS(3118), [sym_synchronized] = ACTIONS(3118), [sym_template] = ACTIONS(3118), [sym_throw] = ACTIONS(3118), [sym_try] = ACTIONS(3118), [sym_typeid] = ACTIONS(3118), [sym_typeof] = ACTIONS(3118), [sym_union] = ACTIONS(3118), [sym_unittest] = ACTIONS(3118), [sym_version] = ACTIONS(3118), [sym_while] = ACTIONS(3118), [sym_with] = ACTIONS(3118), [sym_gshared] = ACTIONS(3118), [sym_traits] = ACTIONS(3118), [sym_vector] = ACTIONS(3118), [sym_void] = ACTIONS(3118), [anon_sym_BQUOTE] = ACTIONS(3121), [anon_sym_r_DQUOTE] = ACTIONS(3121), [anon_sym_x_DQUOTE] = ACTIONS(3121), [anon_sym_DQUOTE] = ACTIONS(3121), [anon_sym_i_BQUOTE] = ACTIONS(3121), [anon_sym_i_DQUOTE] = ACTIONS(3121), [anon_sym_iq_LBRACE] = ACTIONS(3121), [aux_sym_char_literal_token1] = ACTIONS(3121), [anon_sym_SQUOTE] = ACTIONS(3118), [anon_sym___DATE__] = ACTIONS(3118), [anon_sym___FILE__] = ACTIONS(3118), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3118), [anon_sym___FUNCTION__] = ACTIONS(3118), [anon_sym___LINE__] = ACTIONS(3118), [anon_sym___MODULE__] = ACTIONS(3118), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3118), [anon_sym___TIME__] = ACTIONS(3118), [anon_sym___TIMESTAMP__] = ACTIONS(3118), [anon_sym___VENDOR__] = ACTIONS(3118), [anon_sym___VERSION__] = ACTIONS(3118), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3121), [sym_float_literal] = ACTIONS(3121), [sym__string] = ACTIONS(3121), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [679] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7339), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [680] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_RBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3070), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3070), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_RPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3070), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3070), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_asm] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_break] = ACTIONS(3070), [sym_case] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_continue] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_default] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_for] = ACTIONS(3070), [sym_foreach] = ACTIONS(3070), [sym_foreach_reverse] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_goto] = ACTIONS(3070), [sym_if] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_switch] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_try] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_with] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [681] = { [sym_identifier] = ACTIONS(3064), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3067), [anon_sym_RBRACE] = ACTIONS(3067), [anon_sym_LBRACE] = ACTIONS(3067), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3067), [anon_sym_AMP] = ACTIONS(3064), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3064), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3067), [anon_sym_PLUS] = ACTIONS(3064), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3067), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3064), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3067), [anon_sym_RPAREN] = ACTIONS(3067), [anon_sym_LBRACK] = ACTIONS(3067), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3067), [anon_sym_DOLLAR] = ACTIONS(3067), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3064), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3064), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3067), [sym_bool] = ACTIONS(3064), [sym_byte] = ACTIONS(3064), [sym_ubyte] = ACTIONS(3064), [sym_char] = ACTIONS(3064), [sym_short] = ACTIONS(3064), [sym_ushort] = ACTIONS(3064), [sym_int] = ACTIONS(3064), [sym_uint] = ACTIONS(3064), [sym_long] = ACTIONS(3064), [sym_ulong] = ACTIONS(3064), [sym_cent] = ACTIONS(3064), [sym_ucent] = ACTIONS(3064), [sym_wchar] = ACTIONS(3064), [sym_dchar] = ACTIONS(3064), [sym_float] = ACTIONS(3064), [sym_double] = ACTIONS(3064), [sym_real] = ACTIONS(3064), [sym_ifloat] = ACTIONS(3064), [sym_idouble] = ACTIONS(3064), [sym_ireal] = ACTIONS(3064), [sym_cfloat] = ACTIONS(3064), [sym_cdouble] = ACTIONS(3064), [sym_creal] = ACTIONS(3064), [sym_size_t] = ACTIONS(3064), [sym_ptrdiff_t] = ACTIONS(3064), [sym_string] = ACTIONS(3064), [sym_cstring] = ACTIONS(3064), [sym_dstring] = ACTIONS(3064), [sym_wstring] = ACTIONS(3064), [sym_noreturn] = ACTIONS(3064), [sym_true] = ACTIONS(3064), [sym_false] = ACTIONS(3064), [sym_null] = ACTIONS(3064), [sym_super] = ACTIONS(3064), [sym_this] = ACTIONS(3064), [sym_abstract] = ACTIONS(3064), [sym_alias] = ACTIONS(3064), [sym_align] = ACTIONS(3064), [sym_asm] = ACTIONS(3064), [sym_assert] = ACTIONS(3064), [sym_auto] = ACTIONS(3064), [sym_break] = ACTIONS(3064), [sym_case] = ACTIONS(3064), [sym_cast] = ACTIONS(3064), [sym_class] = ACTIONS(3064), [sym_const] = ACTIONS(3064), [sym_continue] = ACTIONS(3064), [sym_debug] = ACTIONS(3064), [sym_default] = ACTIONS(3064), [sym_delegate] = ACTIONS(3064), [sym_delete] = ACTIONS(3064), [sym_deprecated] = ACTIONS(3064), [sym_do] = ACTIONS(3064), [sym_else] = ACTIONS(3064), [sym_enum] = ACTIONS(3064), [sym_export] = ACTIONS(3064), [sym_extern] = ACTIONS(3064), [sym_final] = ACTIONS(3064), [sym_for] = ACTIONS(3064), [sym_foreach] = ACTIONS(3064), [sym_foreach_reverse] = ACTIONS(3064), [sym_function] = ACTIONS(3064), [sym_goto] = ACTIONS(3064), [sym_if] = ACTIONS(3064), [sym_immutable] = ACTIONS(3064), [sym_import] = ACTIONS(3064), [sym_in] = ACTIONS(3064), [sym_inout] = ACTIONS(3064), [sym_interface] = ACTIONS(3064), [sym_invariant] = ACTIONS(3064), [sym_is] = ACTIONS(3064), [sym_mixin] = ACTIONS(3064), [sym_new] = ACTIONS(3064), [sym_nothrow] = ACTIONS(3064), [sym_out] = ACTIONS(3064), [sym_override] = ACTIONS(3064), [sym_package] = ACTIONS(3064), [sym_pragma] = ACTIONS(3064), [sym_private] = ACTIONS(3064), [sym_protected] = ACTIONS(3064), [sym_public] = ACTIONS(3064), [sym_pure] = ACTIONS(3064), [sym_ref] = ACTIONS(3064), [sym_return] = ACTIONS(3064), [sym_scope] = ACTIONS(3064), [sym_shared] = ACTIONS(3064), [sym_static] = ACTIONS(3064), [sym_struct] = ACTIONS(3064), [sym_switch] = ACTIONS(3064), [sym_synchronized] = ACTIONS(3064), [sym_template] = ACTIONS(3064), [sym_throw] = ACTIONS(3064), [sym_try] = ACTIONS(3064), [sym_typeid] = ACTIONS(3064), [sym_typeof] = ACTIONS(3064), [sym_union] = ACTIONS(3064), [sym_unittest] = ACTIONS(3064), [sym_version] = ACTIONS(3064), [sym_while] = ACTIONS(3064), [sym_with] = ACTIONS(3064), [sym_gshared] = ACTIONS(3064), [sym_traits] = ACTIONS(3064), [sym_vector] = ACTIONS(3064), [sym_void] = ACTIONS(3064), [anon_sym_BQUOTE] = ACTIONS(3067), [anon_sym_r_DQUOTE] = ACTIONS(3067), [anon_sym_x_DQUOTE] = ACTIONS(3067), [anon_sym_DQUOTE] = ACTIONS(3067), [anon_sym_i_BQUOTE] = ACTIONS(3067), [anon_sym_i_DQUOTE] = ACTIONS(3067), [anon_sym_iq_LBRACE] = ACTIONS(3067), [aux_sym_char_literal_token1] = ACTIONS(3067), [anon_sym_SQUOTE] = ACTIONS(3064), [anon_sym___DATE__] = ACTIONS(3064), [anon_sym___FILE__] = ACTIONS(3064), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3064), [anon_sym___FUNCTION__] = ACTIONS(3064), [anon_sym___LINE__] = ACTIONS(3064), [anon_sym___MODULE__] = ACTIONS(3064), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3064), [anon_sym___TIME__] = ACTIONS(3064), [anon_sym___TIMESTAMP__] = ACTIONS(3064), [anon_sym___VENDOR__] = ACTIONS(3064), [anon_sym___VERSION__] = ACTIONS(3064), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3067), [sym_float_literal] = ACTIONS(3067), [sym__string] = ACTIONS(3067), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [682] = { [sym_identifier] = ACTIONS(3074), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3076), [anon_sym_RBRACE] = ACTIONS(3076), [anon_sym_LBRACE] = ACTIONS(3076), [anon_sym_SLASH] = ACTIONS(3078), [anon_sym_SLASH_EQ] = ACTIONS(3080), [anon_sym_DOT] = ACTIONS(3082), [anon_sym_AMP] = ACTIONS(3085), [anon_sym_AMP_EQ] = ACTIONS(3080), [anon_sym_AMP_AMP] = ACTIONS(3080), [anon_sym_PIPE] = ACTIONS(3078), [anon_sym_PIPE_EQ] = ACTIONS(3080), [anon_sym_PIPE_PIPE] = ACTIONS(3080), [anon_sym_DASH] = ACTIONS(3085), [anon_sym_DASH_EQ] = ACTIONS(3080), [anon_sym_DASH_DASH] = ACTIONS(3082), [anon_sym_PLUS] = ACTIONS(3085), [anon_sym_PLUS_EQ] = ACTIONS(3080), [anon_sym_PLUS_PLUS] = ACTIONS(3082), [anon_sym_LT] = ACTIONS(3078), [anon_sym_LT_EQ] = ACTIONS(3080), [anon_sym_LT_LT] = ACTIONS(3078), [anon_sym_LT_LT_EQ] = ACTIONS(3080), [anon_sym_GT] = ACTIONS(3078), [anon_sym_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT] = ACTIONS(3078), [anon_sym_GT_GT_GT] = ACTIONS(3078), [anon_sym_BANG] = ACTIONS(3074), [anon_sym_BANG_EQ] = ACTIONS(3080), [anon_sym_LPAREN] = ACTIONS(3082), [anon_sym_RPAREN] = ACTIONS(3076), [anon_sym_LBRACK] = ACTIONS(3082), [anon_sym_QMARK] = ACTIONS(3080), [anon_sym_COMMA] = ACTIONS(3080), [anon_sym_SEMI] = ACTIONS(3082), [anon_sym_DOLLAR] = ACTIONS(3076), [anon_sym_EQ] = ACTIONS(3078), [anon_sym_EQ_EQ] = ACTIONS(3080), [anon_sym_STAR] = ACTIONS(3085), [anon_sym_STAR_EQ] = ACTIONS(3080), [anon_sym_PERCENT] = ACTIONS(3078), [anon_sym_PERCENT_EQ] = ACTIONS(3080), [anon_sym_CARET] = ACTIONS(3078), [anon_sym_CARET_EQ] = ACTIONS(3080), [anon_sym_CARET_CARET] = ACTIONS(3078), [anon_sym_CARET_CARET_EQ] = ACTIONS(3080), [anon_sym_TILDE] = ACTIONS(3085), [anon_sym_TILDE_EQ] = ACTIONS(3080), [anon_sym_AT] = ACTIONS(3076), [sym_bool] = ACTIONS(3074), [sym_byte] = ACTIONS(3074), [sym_ubyte] = ACTIONS(3074), [sym_char] = ACTIONS(3074), [sym_short] = ACTIONS(3074), [sym_ushort] = ACTIONS(3074), [sym_int] = ACTIONS(3074), [sym_uint] = ACTIONS(3074), [sym_long] = ACTIONS(3074), [sym_ulong] = ACTIONS(3074), [sym_cent] = ACTIONS(3074), [sym_ucent] = ACTIONS(3074), [sym_wchar] = ACTIONS(3074), [sym_dchar] = ACTIONS(3074), [sym_float] = ACTIONS(3074), [sym_double] = ACTIONS(3074), [sym_real] = ACTIONS(3074), [sym_ifloat] = ACTIONS(3074), [sym_idouble] = ACTIONS(3074), [sym_ireal] = ACTIONS(3074), [sym_cfloat] = ACTIONS(3074), [sym_cdouble] = ACTIONS(3074), [sym_creal] = ACTIONS(3074), [sym_size_t] = ACTIONS(3074), [sym_ptrdiff_t] = ACTIONS(3074), [sym_string] = ACTIONS(3074), [sym_cstring] = ACTIONS(3074), [sym_dstring] = ACTIONS(3074), [sym_wstring] = ACTIONS(3074), [sym_noreturn] = ACTIONS(3074), [sym_true] = ACTIONS(3074), [sym_false] = ACTIONS(3074), [sym_null] = ACTIONS(3074), [sym_super] = ACTIONS(3074), [sym_this] = ACTIONS(3074), [sym_abstract] = ACTIONS(3074), [sym_alias] = ACTIONS(3074), [sym_align] = ACTIONS(3074), [sym_asm] = ACTIONS(3074), [sym_assert] = ACTIONS(3074), [sym_auto] = ACTIONS(3074), [sym_break] = ACTIONS(3074), [sym_case] = ACTIONS(3074), [sym_cast] = ACTIONS(3074), [sym_class] = ACTIONS(3074), [sym_const] = ACTIONS(3074), [sym_continue] = ACTIONS(3074), [sym_debug] = ACTIONS(3074), [sym_default] = ACTIONS(3074), [sym_delegate] = ACTIONS(3074), [sym_delete] = ACTIONS(3074), [sym_deprecated] = ACTIONS(3074), [sym_do] = ACTIONS(3074), [sym_else] = ACTIONS(3074), [sym_enum] = ACTIONS(3074), [sym_export] = ACTIONS(3074), [sym_extern] = ACTIONS(3074), [sym_final] = ACTIONS(3074), [sym_for] = ACTIONS(3074), [sym_foreach] = ACTIONS(3074), [sym_foreach_reverse] = ACTIONS(3074), [sym_function] = ACTIONS(3074), [sym_goto] = ACTIONS(3074), [sym_if] = ACTIONS(3074), [sym_immutable] = ACTIONS(3074), [sym_import] = ACTIONS(3074), [sym_in] = ACTIONS(3085), [sym_inout] = ACTIONS(3074), [sym_interface] = ACTIONS(3074), [sym_invariant] = ACTIONS(3074), [sym_is] = ACTIONS(3085), [sym_mixin] = ACTIONS(3074), [sym_new] = ACTIONS(3074), [sym_nothrow] = ACTIONS(3074), [sym_out] = ACTIONS(3074), [sym_override] = ACTIONS(3074), [sym_package] = ACTIONS(3074), [sym_pragma] = ACTIONS(3074), [sym_private] = ACTIONS(3074), [sym_protected] = ACTIONS(3074), [sym_public] = ACTIONS(3074), [sym_pure] = ACTIONS(3074), [sym_ref] = ACTIONS(3074), [sym_return] = ACTIONS(3074), [sym_scope] = ACTIONS(3074), [sym_shared] = ACTIONS(3074), [sym_static] = ACTIONS(3074), [sym_struct] = ACTIONS(3074), [sym_switch] = ACTIONS(3074), [sym_synchronized] = ACTIONS(3074), [sym_template] = ACTIONS(3074), [sym_throw] = ACTIONS(3074), [sym_try] = ACTIONS(3074), [sym_typeid] = ACTIONS(3074), [sym_typeof] = ACTIONS(3074), [sym_union] = ACTIONS(3074), [sym_unittest] = ACTIONS(3074), [sym_version] = ACTIONS(3074), [sym_while] = ACTIONS(3074), [sym_with] = ACTIONS(3074), [sym_gshared] = ACTIONS(3074), [sym_traits] = ACTIONS(3074), [sym_vector] = ACTIONS(3074), [sym_void] = ACTIONS(3074), [anon_sym_BQUOTE] = ACTIONS(3076), [anon_sym_r_DQUOTE] = ACTIONS(3076), [anon_sym_x_DQUOTE] = ACTIONS(3076), [anon_sym_DQUOTE] = ACTIONS(3076), [anon_sym_i_BQUOTE] = ACTIONS(3076), [anon_sym_i_DQUOTE] = ACTIONS(3076), [anon_sym_iq_LBRACE] = ACTIONS(3076), [aux_sym_char_literal_token1] = ACTIONS(3076), [anon_sym_SQUOTE] = ACTIONS(3074), [anon_sym___DATE__] = ACTIONS(3074), [anon_sym___FILE__] = ACTIONS(3074), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3074), [anon_sym___FUNCTION__] = ACTIONS(3074), [anon_sym___LINE__] = ACTIONS(3074), [anon_sym___MODULE__] = ACTIONS(3074), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3074), [anon_sym___TIME__] = ACTIONS(3074), [anon_sym___TIMESTAMP__] = ACTIONS(3074), [anon_sym___VENDOR__] = ACTIONS(3074), [anon_sym___VERSION__] = ACTIONS(3074), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3076), [sym_float_literal] = ACTIONS(3076), [sym__string] = ACTIONS(3076), [sym_not_in] = ACTIONS(3080), [sym_not_is] = ACTIONS(3080), }, [683] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3100), [anon_sym_RBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_SLASH] = ACTIONS(3098), [anon_sym_SLASH_EQ] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_AMP] = ACTIONS(3098), [anon_sym_AMP_EQ] = ACTIONS(3100), [anon_sym_AMP_AMP] = ACTIONS(3100), [anon_sym_PIPE] = ACTIONS(3098), [anon_sym_PIPE_EQ] = ACTIONS(3100), [anon_sym_PIPE_PIPE] = ACTIONS(3100), [anon_sym_DASH] = ACTIONS(3098), [anon_sym_DASH_EQ] = ACTIONS(3100), [anon_sym_DASH_DASH] = ACTIONS(3100), [anon_sym_PLUS] = ACTIONS(3098), [anon_sym_PLUS_EQ] = ACTIONS(3100), [anon_sym_PLUS_PLUS] = ACTIONS(3100), [anon_sym_LT] = ACTIONS(3098), [anon_sym_LT_EQ] = ACTIONS(3100), [anon_sym_LT_LT] = ACTIONS(3098), [anon_sym_LT_LT_EQ] = ACTIONS(3100), [anon_sym_GT] = ACTIONS(3098), [anon_sym_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT] = ACTIONS(3098), [anon_sym_GT_GT_GT] = ACTIONS(3098), [anon_sym_BANG] = ACTIONS(3098), [anon_sym_BANG_EQ] = ACTIONS(3100), [anon_sym_LPAREN] = ACTIONS(3100), [anon_sym_RPAREN] = ACTIONS(3100), [anon_sym_LBRACK] = ACTIONS(3100), [anon_sym_QMARK] = ACTIONS(3100), [anon_sym_COMMA] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_DOLLAR] = ACTIONS(3100), [anon_sym_EQ] = ACTIONS(3098), [anon_sym_EQ_EQ] = ACTIONS(3100), [anon_sym_STAR] = ACTIONS(3098), [anon_sym_STAR_EQ] = ACTIONS(3100), [anon_sym_PERCENT] = ACTIONS(3098), [anon_sym_PERCENT_EQ] = ACTIONS(3100), [anon_sym_CARET] = ACTIONS(3098), [anon_sym_CARET_EQ] = ACTIONS(3100), [anon_sym_CARET_CARET] = ACTIONS(3098), [anon_sym_CARET_CARET_EQ] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3098), [anon_sym_TILDE_EQ] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_true] = ACTIONS(3098), [sym_false] = ACTIONS(3098), [sym_null] = ACTIONS(3098), [sym_super] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_asm] = ACTIONS(3098), [sym_assert] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_break] = ACTIONS(3098), [sym_case] = ACTIONS(3098), [sym_cast] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_continue] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_default] = ACTIONS(3098), [sym_delegate] = ACTIONS(3098), [sym_delete] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_for] = ACTIONS(3098), [sym_foreach] = ACTIONS(3098), [sym_foreach_reverse] = ACTIONS(3098), [sym_function] = ACTIONS(3098), [sym_goto] = ACTIONS(3098), [sym_if] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_is] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_new] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_switch] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_throw] = ACTIONS(3098), [sym_try] = ACTIONS(3098), [sym_typeid] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_with] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [anon_sym_BQUOTE] = ACTIONS(3100), [anon_sym_r_DQUOTE] = ACTIONS(3100), [anon_sym_x_DQUOTE] = ACTIONS(3100), [anon_sym_DQUOTE] = ACTIONS(3100), [anon_sym_i_BQUOTE] = ACTIONS(3100), [anon_sym_i_DQUOTE] = ACTIONS(3100), [anon_sym_iq_LBRACE] = ACTIONS(3100), [aux_sym_char_literal_token1] = ACTIONS(3100), [anon_sym_SQUOTE] = ACTIONS(3098), [anon_sym___DATE__] = ACTIONS(3098), [anon_sym___FILE__] = ACTIONS(3098), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3098), [anon_sym___FUNCTION__] = ACTIONS(3098), [anon_sym___LINE__] = ACTIONS(3098), [anon_sym___MODULE__] = ACTIONS(3098), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3098), [anon_sym___TIME__] = ACTIONS(3098), [anon_sym___TIMESTAMP__] = ACTIONS(3098), [anon_sym___VENDOR__] = ACTIONS(3098), [anon_sym___VERSION__] = ACTIONS(3098), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3100), [sym_float_literal] = ACTIONS(3100), [sym__string] = ACTIONS(3100), [sym_not_in] = ACTIONS(3100), [sym_not_is] = ACTIONS(3100), }, [684] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7263), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [685] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7367), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [686] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(6966), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [687] = { [sym_identifier] = ACTIONS(3106), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3109), [anon_sym_RBRACE] = ACTIONS(3109), [anon_sym_LBRACE] = ACTIONS(3109), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3109), [anon_sym_AMP] = ACTIONS(3106), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3106), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3109), [anon_sym_PLUS] = ACTIONS(3106), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3109), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3106), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3109), [anon_sym_RPAREN] = ACTIONS(3109), [anon_sym_LBRACK] = ACTIONS(3109), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3109), [anon_sym_DOLLAR] = ACTIONS(3109), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3106), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3106), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3109), [sym_bool] = ACTIONS(3106), [sym_byte] = ACTIONS(3106), [sym_ubyte] = ACTIONS(3106), [sym_char] = ACTIONS(3106), [sym_short] = ACTIONS(3106), [sym_ushort] = ACTIONS(3106), [sym_int] = ACTIONS(3106), [sym_uint] = ACTIONS(3106), [sym_long] = ACTIONS(3106), [sym_ulong] = ACTIONS(3106), [sym_cent] = ACTIONS(3106), [sym_ucent] = ACTIONS(3106), [sym_wchar] = ACTIONS(3106), [sym_dchar] = ACTIONS(3106), [sym_float] = ACTIONS(3106), [sym_double] = ACTIONS(3106), [sym_real] = ACTIONS(3106), [sym_ifloat] = ACTIONS(3106), [sym_idouble] = ACTIONS(3106), [sym_ireal] = ACTIONS(3106), [sym_cfloat] = ACTIONS(3106), [sym_cdouble] = ACTIONS(3106), [sym_creal] = ACTIONS(3106), [sym_size_t] = ACTIONS(3106), [sym_ptrdiff_t] = ACTIONS(3106), [sym_string] = ACTIONS(3106), [sym_cstring] = ACTIONS(3106), [sym_dstring] = ACTIONS(3106), [sym_wstring] = ACTIONS(3106), [sym_noreturn] = ACTIONS(3106), [sym_true] = ACTIONS(3106), [sym_false] = ACTIONS(3106), [sym_null] = ACTIONS(3106), [sym_super] = ACTIONS(3106), [sym_this] = ACTIONS(3106), [sym_abstract] = ACTIONS(3106), [sym_alias] = ACTIONS(3106), [sym_align] = ACTIONS(3106), [sym_asm] = ACTIONS(3106), [sym_assert] = ACTIONS(3106), [sym_auto] = ACTIONS(3106), [sym_break] = ACTIONS(3106), [sym_case] = ACTIONS(3106), [sym_cast] = ACTIONS(3106), [sym_class] = ACTIONS(3106), [sym_const] = ACTIONS(3106), [sym_continue] = ACTIONS(3106), [sym_debug] = ACTIONS(3106), [sym_default] = ACTIONS(3106), [sym_delegate] = ACTIONS(3106), [sym_delete] = ACTIONS(3106), [sym_deprecated] = ACTIONS(3106), [sym_do] = ACTIONS(3106), [sym_else] = ACTIONS(3106), [sym_enum] = ACTIONS(3106), [sym_export] = ACTIONS(3106), [sym_extern] = ACTIONS(3106), [sym_final] = ACTIONS(3106), [sym_for] = ACTIONS(3106), [sym_foreach] = ACTIONS(3106), [sym_foreach_reverse] = ACTIONS(3106), [sym_function] = ACTIONS(3106), [sym_goto] = ACTIONS(3106), [sym_if] = ACTIONS(3106), [sym_immutable] = ACTIONS(3106), [sym_import] = ACTIONS(3106), [sym_in] = ACTIONS(3106), [sym_inout] = ACTIONS(3106), [sym_interface] = ACTIONS(3106), [sym_invariant] = ACTIONS(3106), [sym_is] = ACTIONS(3106), [sym_mixin] = ACTIONS(3106), [sym_new] = ACTIONS(3106), [sym_nothrow] = ACTIONS(3106), [sym_out] = ACTIONS(3106), [sym_override] = ACTIONS(3106), [sym_package] = ACTIONS(3106), [sym_pragma] = ACTIONS(3106), [sym_private] = ACTIONS(3106), [sym_protected] = ACTIONS(3106), [sym_public] = ACTIONS(3106), [sym_pure] = ACTIONS(3106), [sym_ref] = ACTIONS(3106), [sym_return] = ACTIONS(3106), [sym_scope] = ACTIONS(3106), [sym_shared] = ACTIONS(3106), [sym_static] = ACTIONS(3106), [sym_struct] = ACTIONS(3106), [sym_switch] = ACTIONS(3106), [sym_synchronized] = ACTIONS(3106), [sym_template] = ACTIONS(3106), [sym_throw] = ACTIONS(3106), [sym_try] = ACTIONS(3106), [sym_typeid] = ACTIONS(3106), [sym_typeof] = ACTIONS(3106), [sym_union] = ACTIONS(3106), [sym_unittest] = ACTIONS(3106), [sym_version] = ACTIONS(3106), [sym_while] = ACTIONS(3106), [sym_with] = ACTIONS(3106), [sym_gshared] = ACTIONS(3106), [sym_traits] = ACTIONS(3106), [sym_vector] = ACTIONS(3106), [sym_void] = ACTIONS(3106), [anon_sym_BQUOTE] = ACTIONS(3109), [anon_sym_r_DQUOTE] = ACTIONS(3109), [anon_sym_x_DQUOTE] = ACTIONS(3109), [anon_sym_DQUOTE] = ACTIONS(3109), [anon_sym_i_BQUOTE] = ACTIONS(3109), [anon_sym_i_DQUOTE] = ACTIONS(3109), [anon_sym_iq_LBRACE] = ACTIONS(3109), [aux_sym_char_literal_token1] = ACTIONS(3109), [anon_sym_SQUOTE] = ACTIONS(3106), [anon_sym___DATE__] = ACTIONS(3106), [anon_sym___FILE__] = ACTIONS(3106), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3106), [anon_sym___FUNCTION__] = ACTIONS(3106), [anon_sym___LINE__] = ACTIONS(3106), [anon_sym___MODULE__] = ACTIONS(3106), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3106), [anon_sym___TIME__] = ACTIONS(3106), [anon_sym___TIMESTAMP__] = ACTIONS(3106), [anon_sym___VENDOR__] = ACTIONS(3106), [anon_sym___VERSION__] = ACTIONS(3106), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3109), [sym_float_literal] = ACTIONS(3109), [sym__string] = ACTIONS(3109), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [688] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7425), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [689] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_RBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3091), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_abstract] = ACTIONS(3088), [sym_alias] = ACTIONS(3088), [sym_align] = ACTIONS(3088), [sym_asm] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_break] = ACTIONS(3088), [sym_case] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_class] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_continue] = ACTIONS(3088), [sym_debug] = ACTIONS(3088), [sym_default] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_deprecated] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(3166), [sym_enum] = ACTIONS(3088), [sym_export] = ACTIONS(3088), [sym_extern] = ACTIONS(3088), [sym_final] = ACTIONS(3088), [sym_for] = ACTIONS(3088), [sym_foreach] = ACTIONS(3088), [sym_foreach_reverse] = ACTIONS(3088), [sym_function] = ACTIONS(3088), [sym_goto] = ACTIONS(3088), [sym_if] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_interface] = ACTIONS(3088), [sym_invariant] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_nothrow] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_override] = ACTIONS(3088), [sym_package] = ACTIONS(3088), [sym_pragma] = ACTIONS(3088), [sym_private] = ACTIONS(3088), [sym_protected] = ACTIONS(3088), [sym_public] = ACTIONS(3088), [sym_pure] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_return] = ACTIONS(3088), [sym_scope] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_static] = ACTIONS(3088), [sym_struct] = ACTIONS(3088), [sym_switch] = ACTIONS(3088), [sym_synchronized] = ACTIONS(3088), [sym_template] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_try] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_union] = ACTIONS(3088), [sym_unittest] = ACTIONS(3088), [sym_version] = ACTIONS(3088), [sym_while] = ACTIONS(3088), [sym_with] = ACTIONS(3088), [sym_gshared] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [690] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7865), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [691] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym_expression] = STATE(7331), [sym__expr] = STATE(4170), [sym_ternary_expression] = STATE(4170), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4170), [sym_binary_expression] = STATE(4170), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [692] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3104), [anon_sym_RBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_SLASH] = ACTIONS(3102), [anon_sym_SLASH_EQ] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_AMP] = ACTIONS(3102), [anon_sym_AMP_EQ] = ACTIONS(3104), [anon_sym_AMP_AMP] = ACTIONS(3104), [anon_sym_PIPE] = ACTIONS(3102), [anon_sym_PIPE_EQ] = ACTIONS(3104), [anon_sym_PIPE_PIPE] = ACTIONS(3104), [anon_sym_DASH] = ACTIONS(3102), [anon_sym_DASH_EQ] = ACTIONS(3104), [anon_sym_DASH_DASH] = ACTIONS(3104), [anon_sym_PLUS] = ACTIONS(3102), [anon_sym_PLUS_EQ] = ACTIONS(3104), [anon_sym_PLUS_PLUS] = ACTIONS(3104), [anon_sym_LT] = ACTIONS(3102), [anon_sym_LT_EQ] = ACTIONS(3104), [anon_sym_LT_LT] = ACTIONS(3102), [anon_sym_LT_LT_EQ] = ACTIONS(3104), [anon_sym_GT] = ACTIONS(3102), [anon_sym_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT] = ACTIONS(3102), [anon_sym_GT_GT_GT] = ACTIONS(3102), [anon_sym_BANG] = ACTIONS(3102), [anon_sym_BANG_EQ] = ACTIONS(3104), [anon_sym_LPAREN] = ACTIONS(3104), [anon_sym_RPAREN] = ACTIONS(3104), [anon_sym_LBRACK] = ACTIONS(3104), [anon_sym_QMARK] = ACTIONS(3104), [anon_sym_COMMA] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_DOLLAR] = ACTIONS(3104), [anon_sym_EQ] = ACTIONS(3102), [anon_sym_EQ_EQ] = ACTIONS(3104), [anon_sym_STAR] = ACTIONS(3102), [anon_sym_STAR_EQ] = ACTIONS(3104), [anon_sym_PERCENT] = ACTIONS(3102), [anon_sym_PERCENT_EQ] = ACTIONS(3104), [anon_sym_CARET] = ACTIONS(3102), [anon_sym_CARET_EQ] = ACTIONS(3104), [anon_sym_CARET_CARET] = ACTIONS(3102), [anon_sym_CARET_CARET_EQ] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3102), [anon_sym_TILDE_EQ] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_true] = ACTIONS(3102), [sym_false] = ACTIONS(3102), [sym_null] = ACTIONS(3102), [sym_super] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_asm] = ACTIONS(3102), [sym_assert] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_break] = ACTIONS(3102), [sym_case] = ACTIONS(3102), [sym_cast] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_continue] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_default] = ACTIONS(3102), [sym_delegate] = ACTIONS(3102), [sym_delete] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_for] = ACTIONS(3102), [sym_foreach] = ACTIONS(3102), [sym_foreach_reverse] = ACTIONS(3102), [sym_function] = ACTIONS(3102), [sym_goto] = ACTIONS(3102), [sym_if] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_is] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_new] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_switch] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_throw] = ACTIONS(3102), [sym_try] = ACTIONS(3102), [sym_typeid] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_with] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [anon_sym_BQUOTE] = ACTIONS(3104), [anon_sym_r_DQUOTE] = ACTIONS(3104), [anon_sym_x_DQUOTE] = ACTIONS(3104), [anon_sym_DQUOTE] = ACTIONS(3104), [anon_sym_i_BQUOTE] = ACTIONS(3104), [anon_sym_i_DQUOTE] = ACTIONS(3104), [anon_sym_iq_LBRACE] = ACTIONS(3104), [aux_sym_char_literal_token1] = ACTIONS(3104), [anon_sym_SQUOTE] = ACTIONS(3102), [anon_sym___DATE__] = ACTIONS(3102), [anon_sym___FILE__] = ACTIONS(3102), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3102), [anon_sym___FUNCTION__] = ACTIONS(3102), [anon_sym___LINE__] = ACTIONS(3102), [anon_sym___MODULE__] = ACTIONS(3102), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3102), [anon_sym___TIME__] = ACTIONS(3102), [anon_sym___TIMESTAMP__] = ACTIONS(3102), [anon_sym___VENDOR__] = ACTIONS(3102), [anon_sym___VERSION__] = ACTIONS(3102), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3104), [sym_float_literal] = ACTIONS(3104), [sym__string] = ACTIONS(3104), [sym_not_in] = ACTIONS(3104), [sym_not_is] = ACTIONS(3104), }, [693] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5194), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7105), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [694] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5145), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7079), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [695] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5186), [sym_type_ctor] = STATE(3784), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5070), [sym__builtin_type] = STATE(5064), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(3778), [sym_at_attribute] = STATE(3921), [sym_expression_list] = STATE(7189), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3777), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3775), [sym_traits_expression] = STATE(3777), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3127), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3129), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(3137), [sym_byte] = ACTIONS(3137), [sym_ubyte] = ACTIONS(3137), [sym_char] = ACTIONS(3137), [sym_short] = ACTIONS(3137), [sym_ushort] = ACTIONS(3137), [sym_int] = ACTIONS(3137), [sym_uint] = ACTIONS(3137), [sym_long] = ACTIONS(3137), [sym_ulong] = ACTIONS(3137), [sym_cent] = ACTIONS(3137), [sym_ucent] = ACTIONS(3137), [sym_wchar] = ACTIONS(3137), [sym_dchar] = ACTIONS(3137), [sym_float] = ACTIONS(3137), [sym_double] = ACTIONS(3137), [sym_real] = ACTIONS(3137), [sym_ifloat] = ACTIONS(3137), [sym_idouble] = ACTIONS(3137), [sym_ireal] = ACTIONS(3137), [sym_cfloat] = ACTIONS(3137), [sym_cdouble] = ACTIONS(3137), [sym_creal] = ACTIONS(3137), [sym_size_t] = ACTIONS(3137), [sym_ptrdiff_t] = ACTIONS(3137), [sym_string] = ACTIONS(3137), [sym_cstring] = ACTIONS(3137), [sym_dstring] = ACTIONS(3137), [sym_wstring] = ACTIONS(3137), [sym_noreturn] = ACTIONS(3137), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3139), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(3141), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_final] = ACTIONS(3143), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(3141), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(3145), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(3149), [sym_ref] = ACTIONS(3151), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(3161), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [696] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_RBRACE] = ACTIONS(3170), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3070), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3070), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3170), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3070), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3070), [anon_sym_TILDE_EQ] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_asm] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_break] = ACTIONS(3070), [sym_case] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_continue] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_default] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_for] = ACTIONS(3070), [sym_foreach] = ACTIONS(3070), [sym_foreach_reverse] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_goto] = ACTIONS(3070), [sym_if] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_switch] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_try] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_with] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [697] = { [sym_identifier] = ACTIONS(3074), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3076), [anon_sym_RBRACE] = ACTIONS(3082), [anon_sym_LBRACE] = ACTIONS(3076), [anon_sym_SLASH] = ACTIONS(3078), [anon_sym_SLASH_EQ] = ACTIONS(3080), [anon_sym_DOT] = ACTIONS(3082), [anon_sym_AMP] = ACTIONS(3085), [anon_sym_AMP_EQ] = ACTIONS(3080), [anon_sym_AMP_AMP] = ACTIONS(3080), [anon_sym_PIPE] = ACTIONS(3078), [anon_sym_PIPE_EQ] = ACTIONS(3080), [anon_sym_PIPE_PIPE] = ACTIONS(3080), [anon_sym_DASH] = ACTIONS(3085), [anon_sym_DASH_EQ] = ACTIONS(3080), [anon_sym_DASH_DASH] = ACTIONS(3082), [anon_sym_PLUS] = ACTIONS(3085), [anon_sym_PLUS_EQ] = ACTIONS(3080), [anon_sym_PLUS_PLUS] = ACTIONS(3082), [anon_sym_LT] = ACTIONS(3078), [anon_sym_LT_EQ] = ACTIONS(3080), [anon_sym_LT_LT] = ACTIONS(3078), [anon_sym_LT_LT_EQ] = ACTIONS(3080), [anon_sym_GT] = ACTIONS(3078), [anon_sym_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT] = ACTIONS(3078), [anon_sym_GT_GT_GT] = ACTIONS(3078), [anon_sym_BANG] = ACTIONS(3074), [anon_sym_BANG_EQ] = ACTIONS(3080), [anon_sym_LPAREN] = ACTIONS(3082), [anon_sym_LBRACK] = ACTIONS(3082), [anon_sym_QMARK] = ACTIONS(3080), [anon_sym_COMMA] = ACTIONS(3080), [anon_sym_SEMI] = ACTIONS(3082), [anon_sym_DOLLAR] = ACTIONS(3076), [anon_sym_EQ] = ACTIONS(3078), [anon_sym_EQ_EQ] = ACTIONS(3080), [anon_sym_STAR] = ACTIONS(3085), [anon_sym_STAR_EQ] = ACTIONS(3080), [anon_sym_PERCENT] = ACTIONS(3078), [anon_sym_PERCENT_EQ] = ACTIONS(3080), [anon_sym_CARET] = ACTIONS(3078), [anon_sym_CARET_EQ] = ACTIONS(3080), [anon_sym_CARET_CARET] = ACTIONS(3078), [anon_sym_CARET_CARET_EQ] = ACTIONS(3080), [anon_sym_TILDE] = ACTIONS(3085), [anon_sym_TILDE_EQ] = ACTIONS(3080), [anon_sym_AT] = ACTIONS(3076), [sym_bool] = ACTIONS(3074), [sym_byte] = ACTIONS(3074), [sym_ubyte] = ACTIONS(3074), [sym_char] = ACTIONS(3074), [sym_short] = ACTIONS(3074), [sym_ushort] = ACTIONS(3074), [sym_int] = ACTIONS(3074), [sym_uint] = ACTIONS(3074), [sym_long] = ACTIONS(3074), [sym_ulong] = ACTIONS(3074), [sym_cent] = ACTIONS(3074), [sym_ucent] = ACTIONS(3074), [sym_wchar] = ACTIONS(3074), [sym_dchar] = ACTIONS(3074), [sym_float] = ACTIONS(3074), [sym_double] = ACTIONS(3074), [sym_real] = ACTIONS(3074), [sym_ifloat] = ACTIONS(3074), [sym_idouble] = ACTIONS(3074), [sym_ireal] = ACTIONS(3074), [sym_cfloat] = ACTIONS(3074), [sym_cdouble] = ACTIONS(3074), [sym_creal] = ACTIONS(3074), [sym_size_t] = ACTIONS(3074), [sym_ptrdiff_t] = ACTIONS(3074), [sym_string] = ACTIONS(3074), [sym_cstring] = ACTIONS(3074), [sym_dstring] = ACTIONS(3074), [sym_wstring] = ACTIONS(3074), [sym_noreturn] = ACTIONS(3074), [sym_true] = ACTIONS(3074), [sym_false] = ACTIONS(3074), [sym_null] = ACTIONS(3074), [sym_super] = ACTIONS(3074), [sym_this] = ACTIONS(3074), [sym_abstract] = ACTIONS(3074), [sym_alias] = ACTIONS(3074), [sym_align] = ACTIONS(3074), [sym_asm] = ACTIONS(3074), [sym_assert] = ACTIONS(3074), [sym_auto] = ACTIONS(3074), [sym_break] = ACTIONS(3074), [sym_case] = ACTIONS(3074), [sym_cast] = ACTIONS(3074), [sym_class] = ACTIONS(3074), [sym_const] = ACTIONS(3074), [sym_continue] = ACTIONS(3074), [sym_debug] = ACTIONS(3074), [sym_default] = ACTIONS(3074), [sym_delegate] = ACTIONS(3074), [sym_delete] = ACTIONS(3074), [sym_deprecated] = ACTIONS(3074), [sym_do] = ACTIONS(3074), [sym_enum] = ACTIONS(3074), [sym_export] = ACTIONS(3074), [sym_extern] = ACTIONS(3074), [sym_final] = ACTIONS(3074), [sym_for] = ACTIONS(3074), [sym_foreach] = ACTIONS(3074), [sym_foreach_reverse] = ACTIONS(3074), [sym_function] = ACTIONS(3074), [sym_goto] = ACTIONS(3074), [sym_if] = ACTIONS(3074), [sym_immutable] = ACTIONS(3074), [sym_import] = ACTIONS(3074), [sym_in] = ACTIONS(3085), [sym_inout] = ACTIONS(3074), [sym_interface] = ACTIONS(3074), [sym_invariant] = ACTIONS(3074), [sym_is] = ACTIONS(3085), [sym_mixin] = ACTIONS(3074), [sym_new] = ACTIONS(3074), [sym_nothrow] = ACTIONS(3074), [sym_out] = ACTIONS(3074), [sym_override] = ACTIONS(3074), [sym_package] = ACTIONS(3074), [sym_pragma] = ACTIONS(3074), [sym_private] = ACTIONS(3074), [sym_protected] = ACTIONS(3074), [sym_public] = ACTIONS(3074), [sym_pure] = ACTIONS(3074), [sym_ref] = ACTIONS(3074), [sym_return] = ACTIONS(3074), [sym_scope] = ACTIONS(3074), [sym_shared] = ACTIONS(3074), [sym_static] = ACTIONS(3074), [sym_struct] = ACTIONS(3074), [sym_switch] = ACTIONS(3074), [sym_synchronized] = ACTIONS(3074), [sym_template] = ACTIONS(3074), [sym_throw] = ACTIONS(3074), [sym_try] = ACTIONS(3074), [sym_typeid] = ACTIONS(3074), [sym_typeof] = ACTIONS(3074), [sym_union] = ACTIONS(3074), [sym_unittest] = ACTIONS(3074), [sym_version] = ACTIONS(3074), [sym_while] = ACTIONS(3074), [sym_with] = ACTIONS(3074), [sym_gshared] = ACTIONS(3074), [sym_traits] = ACTIONS(3074), [sym_vector] = ACTIONS(3074), [sym_void] = ACTIONS(3074), [anon_sym_BQUOTE] = ACTIONS(3076), [anon_sym_r_DQUOTE] = ACTIONS(3076), [anon_sym_x_DQUOTE] = ACTIONS(3076), [anon_sym_DQUOTE] = ACTIONS(3076), [anon_sym_i_BQUOTE] = ACTIONS(3076), [anon_sym_i_DQUOTE] = ACTIONS(3076), [anon_sym_iq_LBRACE] = ACTIONS(3076), [aux_sym_char_literal_token1] = ACTIONS(3076), [anon_sym_SQUOTE] = ACTIONS(3074), [anon_sym___DATE__] = ACTIONS(3074), [anon_sym___FILE__] = ACTIONS(3074), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3074), [anon_sym___FUNCTION__] = ACTIONS(3074), [anon_sym___LINE__] = ACTIONS(3074), [anon_sym___MODULE__] = ACTIONS(3074), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3074), [anon_sym___TIME__] = ACTIONS(3074), [anon_sym___TIMESTAMP__] = ACTIONS(3074), [anon_sym___VENDOR__] = ACTIONS(3074), [anon_sym___VERSION__] = ACTIONS(3074), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3076), [sym_float_literal] = ACTIONS(3076), [sym__string] = ACTIONS(3076), [sym_not_in] = ACTIONS(3080), [sym_not_is] = ACTIONS(3080), }, [698] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(6980), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3173), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(3175), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_struct] = ACTIONS(3175), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [699] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7725), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3177), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_class] = ACTIONS(3179), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_struct] = ACTIONS(3179), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [700] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3191), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [701] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_named_argument] = STATE(5788), [sym__named_argument_list] = STATE(8002), [sym_expression] = STATE(6921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3207), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3209), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [702] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3211), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [703] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3213), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [704] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3215), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [705] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3217), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [706] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(5887), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3219), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [707] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_named_argument] = STATE(5788), [sym__named_argument_list] = STATE(7013), [sym_expression] = STATE(6921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3207), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3221), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [708] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6918), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6918), [sym_member_initializer] = STATE(6543), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3223), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(3225), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [709] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6086), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3227), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [710] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(5981), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3229), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [711] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_named_argument] = STATE(5788), [sym__named_argument_list] = STATE(7236), [sym_expression] = STATE(6921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3207), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3231), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [712] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_RBRACK] = ACTIONS(3233), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [713] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6918), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6918), [sym_member_initializer] = STATE(6543), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3223), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(3235), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [714] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7837), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3241), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [715] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7614), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3243), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [716] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7255), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3245), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [717] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3263), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [718] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7196), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3329), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [719] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6904), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3331), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3333), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [720] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3335), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [721] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7789), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3337), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [722] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7427), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3339), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [723] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7782), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3341), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [724] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7363), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3343), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [725] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7170), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3345), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [726] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6554), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3347), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3349), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [727] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7136), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3351), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [728] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7724), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3353), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [729] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7096), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3355), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [730] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7670), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3357), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [731] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6826), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3359), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3361), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [732] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(6955), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3363), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [733] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(6992), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3365), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [734] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6883), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3367), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3369), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [735] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6918), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6918), [sym_member_initializer] = STATE(6543), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3223), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [736] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7098), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3371), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [737] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7132), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3373), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [738] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6734), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3375), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3377), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [739] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7228), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3379), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [740] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7259), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3381), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [741] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3383), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [742] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression] = STATE(7062), [sym__expr] = STATE(4176), [sym_ternary_expression] = STATE(4176), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4176), [sym_binary_expression] = STATE(4176), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym__array_member_init] = STATE(6687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6858), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [743] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7665), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3385), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [744] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_named_argument] = STATE(6583), [sym_expression] = STATE(6921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3207), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3387), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [745] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6584), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3389), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3391), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [746] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7098), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3393), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [747] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7132), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3395), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [748] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6534), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3397), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3399), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [749] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6503), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3401), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3403), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [750] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6470), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3405), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3407), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [751] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6436), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3409), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3411), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [752] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7713), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3413), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [753] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7102), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3415), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [754] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(5734), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3417), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [755] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3419), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [756] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(5861), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3421), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [757] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7626), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3423), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [758] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7774), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3425), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [759] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_named_argument] = STATE(6583), [sym_expression] = STATE(6921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3207), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3427), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [760] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7114), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3429), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [761] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7824), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3431), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [762] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(8008), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3433), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [763] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(8017), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3435), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [764] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7092), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3437), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [765] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6627), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3439), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3441), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [766] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7863), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3443), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [767] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7841), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3445), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [768] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7546), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3447), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [769] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7531), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3449), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [770] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3451), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [771] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(8029), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3453), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [772] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3455), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [773] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6565), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3457), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3459), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [774] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6192), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3461), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [775] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6972), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3463), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [776] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6385), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6438), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3469), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [777] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7375), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3471), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [778] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6144), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6782), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3473), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [779] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7920), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [780] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6601), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4258), [sym_ternary_expression] = STATE(4258), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4258), [sym_binary_expression] = STATE(4258), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6601), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [781] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7266), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [782] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6139), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6417), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3475), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [783] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7023), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3477), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [784] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7378), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3479), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [785] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(6485), [sym_expression] = STATE(8035), [sym__expr] = STATE(4212), [sym_ternary_expression] = STATE(4212), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4212), [sym_binary_expression] = STATE(4212), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [786] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(5731), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3481), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [787] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7379), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3483), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [788] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6399), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6414), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3485), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [789] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6759), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6759), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [790] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7018), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3487), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [791] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7434), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [792] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(6717), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3489), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [793] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7796), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [794] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7292), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3491), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [795] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7249), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3493), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [796] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7830), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [797] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7345), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3495), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [798] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7739), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [799] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7683), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(3497), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [800] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7295), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3499), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [801] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7485), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [802] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7163), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3501), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [803] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6054), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6732), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3503), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [804] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7619), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [805] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7491), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(3505), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [806] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7025), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3507), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [807] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6139), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6632), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3475), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [808] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6861), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3509), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [809] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7309), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3511), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [810] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7361), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3513), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [811] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7369), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3515), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [812] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7405), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3517), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [813] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7408), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3519), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [814] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6809), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6809), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [815] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6507), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6507), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [816] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7409), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3521), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [817] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7862), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [818] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7258), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3523), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [819] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7574), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [820] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7168), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3525), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [821] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6779), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6779), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [822] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7643), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3527), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [823] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(6954), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [824] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7169), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3529), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [825] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_expression] = STATE(5859), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_index] = STATE(6527), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [826] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6032), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6767), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3531), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [827] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7750), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [828] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(6961), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [829] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7227), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [830] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7294), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3533), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [831] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6719), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6719), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [832] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(6641), [sym_expression] = STATE(8004), [sym__expr] = STATE(4212), [sym_ternary_expression] = STATE(4212), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4212), [sym_binary_expression] = STATE(4212), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [833] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6547), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6547), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [834] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7075), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3535), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [835] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7347), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3537), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [836] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7673), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [837] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7432), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3539), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [838] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(6717), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3541), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [839] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7575), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3543), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [840] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_named_argument] = STATE(6583), [sym_expression] = STATE(6921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3207), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [841] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7634), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [842] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7346), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3545), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [843] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(5999), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6444), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3547), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [844] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7435), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3549), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [845] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7813), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(3551), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [846] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7785), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [847] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7436), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3553), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [848] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6139), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6671), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3475), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [849] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(5985), [sym__template_argument_list] = STATE(7655), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [850] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6861), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3555), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [851] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6861), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3557), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [852] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7069), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3559), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [853] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6861), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3561), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [854] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(6435), [sym_expression] = STATE(7433), [sym__expr] = STATE(4212), [sym_ternary_expression] = STATE(4212), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4212), [sym_binary_expression] = STATE(4212), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [855] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7208), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [856] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7630), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [857] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7803), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [858] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7790), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [859] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6038), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6754), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3563), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [860] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7986), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [861] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6377), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6511), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3565), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [862] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6105), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6932), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3567), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [863] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7550), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3569), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [864] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6139), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6689), [sym__expr] = STATE(4190), [sym_ternary_expression] = STATE(4190), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4190), [sym_binary_expression] = STATE(4190), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3465), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_RBRACK] = ACTIONS(3475), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [865] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7846), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [866] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7552), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3571), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [867] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7152), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(3573), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [868] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7157), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [869] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7139), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [870] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7024), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3575), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [871] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7763), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [872] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7148), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(3577), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [873] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7290), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3579), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [874] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7342), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3581), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [875] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7029), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3583), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [876] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7030), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3585), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [877] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression_list] = STATE(7070), [sym__expr] = STATE(4162), [sym_ternary_expression] = STATE(4162), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4162), [sym_binary_expression] = STATE(4162), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_RPAREN] = ACTIONS(3587), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [878] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(6848), [sym_expression] = STATE(7987), [sym__expr] = STATE(4212), [sym_ternary_expression] = STATE(4212), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4212), [sym_binary_expression] = STATE(4212), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [879] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6709), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_assert_arguments] = STATE(7046), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [880] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(7118), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [881] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym__initializer] = STATE(6927), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4227), [sym_ternary_expression] = STATE(4227), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4227), [sym_binary_expression] = STATE(4227), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6927), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(209), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [882] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(8028), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_return] = ACTIONS(3589), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [883] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__argument_list] = STATE(8060), [sym_expression] = STATE(6083), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [884] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7871), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_SEMI] = ACTIONS(3591), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [885] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7611), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [886] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7267), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [887] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7699), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [888] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(7553), [sym__expr] = STATE(4284), [sym_ternary_expression] = STATE(4284), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4284), [sym_binary_expression] = STATE(4284), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [889] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4268), [sym_ternary_expression] = STATE(4268), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4268), [sym_binary_expression] = STATE(4268), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym_aggregate_initializer] = STATE(6690), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(3183), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [890] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7711), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [891] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7735), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [892] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7045), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [893] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6001), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4301), [sym_ternary_expression] = STATE(4301), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4301), [sym_binary_expression] = STATE(4301), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3781), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3613), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_scope] = ACTIONS(3615), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [894] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7093), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [895] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7087), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [896] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6840), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [897] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6846), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [898] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7797), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [899] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(7237), [sym__expr] = STATE(4284), [sym_ternary_expression] = STATE(4284), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4284), [sym_binary_expression] = STATE(4284), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [900] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7063), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [901] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7059), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [902] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7058), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [903] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7057), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [904] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7014), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [905] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7001), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [906] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7923), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [907] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5638), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4275), [sym_ternary_expression] = STATE(4275), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4275), [sym_binary_expression] = STATE(4275), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_template_argument] = STATE(6717), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [908] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7543), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [909] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5813), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(6996), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [910] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7570), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [911] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6989), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [912] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7514), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [913] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7401), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [914] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(6985), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [915] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7989), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [916] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6468), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [917] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7439), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [918] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7004), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [919] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6489), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [920] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7006), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [921] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7198), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [922] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6867), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [923] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7566), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [924] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7354), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [925] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6865), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [926] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7033), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [927] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7034), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [928] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7544), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [929] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6508), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [930] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6620), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [931] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7035), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [932] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7036), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [933] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5817), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(7981), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [934] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6720), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [935] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6471), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [936] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7657), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [937] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7635), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [938] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6530), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [939] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7795), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [940] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7636), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [941] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7659), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [942] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7592), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [943] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6967), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [944] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7144), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [945] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7394), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [946] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7146), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [947] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6965), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [948] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6724), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [949] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6718), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [950] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7172), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [951] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7173), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [952] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7174), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [953] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7966), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [954] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7866), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [955] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7633), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [956] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7967), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [957] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7861), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [958] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7328), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [959] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6952), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [960] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7747), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [961] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7175), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [962] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7280), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [963] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7281), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [964] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7282), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [965] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7284), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [966] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7285), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [967] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7235), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [968] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6578), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [969] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7483), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [970] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(7296), [sym__expr] = STATE(4284), [sym_ternary_expression] = STATE(4284), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4284), [sym_binary_expression] = STATE(4284), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [971] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7815), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [972] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7571), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [973] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6899), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [974] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7271), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [975] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7273), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [976] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6993), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [977] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6861), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [978] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7244), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [979] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7513), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [980] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6576), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [981] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7301), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [982] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7707), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [983] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6882), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [984] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6532), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [985] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7020), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [986] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6573), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [987] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6570), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [988] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7297), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [989] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7298), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [990] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7299), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [991] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7300), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [992] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7960), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [993] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6556), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [994] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7330), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [995] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7332), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [996] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6531), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [997] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6528), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [998] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6860), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [999] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7349), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1000] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6557), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1001] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(7021), [sym__expr] = STATE(4284), [sym_ternary_expression] = STATE(4284), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4284), [sym_binary_expression] = STATE(4284), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1002] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7350), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1003] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7910), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1004] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7351), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1005] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7352), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1006] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7978), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1007] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7366), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1008] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7338), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1009] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6186), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_expression] = STATE(7246), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1010] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7247), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1011] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(6589), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1012] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7368), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1013] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7343), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1014] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7248), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1015] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6499), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1016] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6498), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1017] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7381), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1018] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7382), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1019] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7771), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1020] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6871), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1021] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7383), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1022] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7933), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1023] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7907), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1024] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7908), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1025] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6834), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1026] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7384), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1027] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7026), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1028] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7396), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1029] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7398), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1030] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6465), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1031] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7027), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1032] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_expression_list] = STATE(7360), [sym__expr] = STATE(4234), [sym_ternary_expression] = STATE(4234), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4234), [sym_binary_expression] = STATE(4234), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1033] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6462), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1034] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7411), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1035] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7412), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1036] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7413), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1037] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7414), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1038] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7424), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1039] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7426), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1040] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6431), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1041] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6428), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1042] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(8007), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1043] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7039), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1044] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7041), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1045] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7438), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1046] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7921), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1047] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7376), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1048] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_expression] = STATE(6612), [sym__expr] = STATE(4248), [sym_ternary_expression] = STATE(4248), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4248), [sym_binary_expression] = STATE(4248), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1049] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7497), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1050] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7293), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1051] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7264), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1052] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7913), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1053] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7441), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1054] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7440), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1055] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7262), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1056] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7939), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1057] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7043), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1058] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7826), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1059] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_expression] = STATE(7393), [sym__expr] = STATE(4166), [sym_ternary_expression] = STATE(4166), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4166), [sym_binary_expression] = STATE(4166), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1060] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4059), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4059), [sym_ternary_expression] = STATE(4059), [sym_call_expression] = STATE(4059), [sym_primary_expression] = STATE(4059), [sym__primary_expr] = STATE(4059), [sym_index_expression] = STATE(4059), [sym_assignment_expression] = STATE(4059), [sym_binary_expression] = STATE(4059), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4059), [sym_unary_expression] = STATE(4059), [sym__unary_expr] = STATE(4059), [sym_property_expression] = STATE(4059), [sym_cast_expression] = STATE(4059), [sym_delete_expression] = STATE(4059), [sym_throw_expression] = STATE(4059), [sym_assert_expression] = STATE(4059), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4059), [sym_new_expression] = STATE(4059), [sym_typeid_expression] = STATE(4059), [sym_is_expression] = STATE(4059), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4059), [sym_char_literal] = STATE(4059), [sym_array_literal] = STATE(4059), [sym_function_literal] = STATE(4059), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4059), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3637), [sym_false] = ACTIONS(3637), [sym_null] = ACTIONS(3637), [sym_super] = ACTIONS(3637), [sym_this] = ACTIONS(3637), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3639), [sym_float_literal] = ACTIONS(3639), [sym__string] = ACTIONS(233), }, [1061] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4140), [sym_ternary_expression] = STATE(4140), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4140), [sym_binary_expression] = STATE(4140), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1062] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4305), [sym_ternary_expression] = STATE(4305), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4305), [sym_binary_expression] = STATE(4305), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1063] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4279), [sym_ternary_expression] = STATE(4279), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4279), [sym_binary_expression] = STATE(4279), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1064] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4159), [sym_ternary_expression] = STATE(4159), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4159), [sym_binary_expression] = STATE(4159), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1065] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4182), [sym_ternary_expression] = STATE(4182), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4182), [sym_binary_expression] = STATE(4182), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1066] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4064), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4064), [sym_ternary_expression] = STATE(4064), [sym_call_expression] = STATE(4064), [sym_primary_expression] = STATE(4064), [sym__primary_expr] = STATE(4064), [sym_index_expression] = STATE(4064), [sym_assignment_expression] = STATE(4064), [sym_binary_expression] = STATE(4064), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4064), [sym_unary_expression] = STATE(4064), [sym__unary_expr] = STATE(4064), [sym_property_expression] = STATE(4064), [sym_cast_expression] = STATE(4064), [sym_delete_expression] = STATE(4064), [sym_throw_expression] = STATE(4064), [sym_assert_expression] = STATE(4064), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4064), [sym_new_expression] = STATE(4064), [sym_typeid_expression] = STATE(4064), [sym_is_expression] = STATE(4064), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4064), [sym_char_literal] = STATE(4064), [sym_array_literal] = STATE(4064), [sym_function_literal] = STATE(4064), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4064), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3715), [sym_false] = ACTIONS(3715), [sym_null] = ACTIONS(3715), [sym_super] = ACTIONS(3715), [sym_this] = ACTIONS(3715), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3717), [sym_float_literal] = ACTIONS(3717), [sym__string] = ACTIONS(3713), }, [1067] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4291), [sym_ternary_expression] = STATE(4291), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4291), [sym_binary_expression] = STATE(4291), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1068] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4167), [sym_ternary_expression] = STATE(4167), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4167), [sym_binary_expression] = STATE(4167), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1069] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4183), [sym_ternary_expression] = STATE(4183), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4183), [sym_binary_expression] = STATE(4183), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1070] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4011), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4011), [sym_ternary_expression] = STATE(4011), [sym_call_expression] = STATE(4011), [sym_primary_expression] = STATE(4011), [sym__primary_expr] = STATE(4011), [sym_index_expression] = STATE(4011), [sym_assignment_expression] = STATE(4011), [sym_binary_expression] = STATE(4011), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4011), [sym_unary_expression] = STATE(4011), [sym__unary_expr] = STATE(4011), [sym_property_expression] = STATE(4011), [sym_cast_expression] = STATE(4011), [sym_delete_expression] = STATE(4011), [sym_throw_expression] = STATE(4011), [sym_assert_expression] = STATE(4011), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4011), [sym_new_expression] = STATE(4011), [sym_typeid_expression] = STATE(4011), [sym_is_expression] = STATE(4011), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4011), [sym_char_literal] = STATE(4011), [sym_array_literal] = STATE(4011), [sym_function_literal] = STATE(4011), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4011), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3719), [sym_false] = ACTIONS(3719), [sym_null] = ACTIONS(3719), [sym_super] = ACTIONS(3719), [sym_this] = ACTIONS(3719), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3721), [sym_float_literal] = ACTIONS(3721), [sym__string] = ACTIONS(3327), }, [1071] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4102), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4102), [sym_ternary_expression] = STATE(4102), [sym_call_expression] = STATE(4102), [sym_primary_expression] = STATE(4102), [sym__primary_expr] = STATE(4102), [sym_index_expression] = STATE(4102), [sym_assignment_expression] = STATE(4102), [sym_binary_expression] = STATE(4102), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4102), [sym_unary_expression] = STATE(4102), [sym__unary_expr] = STATE(4102), [sym_property_expression] = STATE(4102), [sym_cast_expression] = STATE(4102), [sym_delete_expression] = STATE(4102), [sym_throw_expression] = STATE(4102), [sym_assert_expression] = STATE(4102), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4102), [sym_new_expression] = STATE(4102), [sym_typeid_expression] = STATE(4102), [sym_is_expression] = STATE(4102), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4102), [sym_char_literal] = STATE(4102), [sym_array_literal] = STATE(4102), [sym_function_literal] = STATE(4102), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4102), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3723), [sym_false] = ACTIONS(3723), [sym_null] = ACTIONS(3723), [sym_super] = ACTIONS(3723), [sym_this] = ACTIONS(3723), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3725), [sym_float_literal] = ACTIONS(3725), [sym__string] = ACTIONS(3327), }, [1072] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4296), [sym_ternary_expression] = STATE(4296), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4296), [sym_binary_expression] = STATE(4296), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1073] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4031), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4031), [sym_ternary_expression] = STATE(4031), [sym_call_expression] = STATE(4031), [sym_primary_expression] = STATE(4031), [sym__primary_expr] = STATE(4031), [sym_index_expression] = STATE(4031), [sym_assignment_expression] = STATE(4031), [sym_binary_expression] = STATE(4031), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4031), [sym_unary_expression] = STATE(4031), [sym__unary_expr] = STATE(4031), [sym_property_expression] = STATE(4031), [sym_cast_expression] = STATE(4031), [sym_delete_expression] = STATE(4031), [sym_throw_expression] = STATE(4031), [sym_assert_expression] = STATE(4031), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4031), [sym_new_expression] = STATE(4031), [sym_typeid_expression] = STATE(4031), [sym_is_expression] = STATE(4031), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4031), [sym_char_literal] = STATE(4031), [sym_array_literal] = STATE(4031), [sym_function_literal] = STATE(4031), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4031), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3727), [sym_false] = ACTIONS(3727), [sym_null] = ACTIONS(3727), [sym_super] = ACTIONS(3727), [sym_this] = ACTIONS(3727), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3729), [sym_float_literal] = ACTIONS(3729), [sym__string] = ACTIONS(3327), }, [1074] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4178), [sym_ternary_expression] = STATE(4178), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4178), [sym_binary_expression] = STATE(4178), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1075] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4233), [sym_ternary_expression] = STATE(4233), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4233), [sym_binary_expression] = STATE(4233), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1076] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3918), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3918), [sym_ternary_expression] = STATE(3918), [sym_call_expression] = STATE(3918), [sym_primary_expression] = STATE(3918), [sym__primary_expr] = STATE(3918), [sym_index_expression] = STATE(3918), [sym_assignment_expression] = STATE(3918), [sym_binary_expression] = STATE(3918), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3918), [sym_unary_expression] = STATE(3918), [sym__unary_expr] = STATE(3918), [sym_property_expression] = STATE(3918), [sym_cast_expression] = STATE(3918), [sym_delete_expression] = STATE(3918), [sym_throw_expression] = STATE(3918), [sym_assert_expression] = STATE(3918), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3918), [sym_new_expression] = STATE(3918), [sym_typeid_expression] = STATE(3918), [sym_is_expression] = STATE(3918), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3918), [sym_char_literal] = STATE(3918), [sym_array_literal] = STATE(3918), [sym_function_literal] = STATE(3918), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3918), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3731), [sym_false] = ACTIONS(3731), [sym_null] = ACTIONS(3731), [sym_super] = ACTIONS(3731), [sym_this] = ACTIONS(3731), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3733), [sym_float_literal] = ACTIONS(3733), [sym__string] = ACTIONS(233), }, [1077] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4120), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4120), [sym_ternary_expression] = STATE(4120), [sym_call_expression] = STATE(4120), [sym_primary_expression] = STATE(4120), [sym__primary_expr] = STATE(4120), [sym_index_expression] = STATE(4120), [sym_assignment_expression] = STATE(4120), [sym_binary_expression] = STATE(4120), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4120), [sym_unary_expression] = STATE(4120), [sym__unary_expr] = STATE(4120), [sym_property_expression] = STATE(4120), [sym_cast_expression] = STATE(4120), [sym_delete_expression] = STATE(4120), [sym_throw_expression] = STATE(4120), [sym_assert_expression] = STATE(4120), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4120), [sym_new_expression] = STATE(4120), [sym_typeid_expression] = STATE(4120), [sym_is_expression] = STATE(4120), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4120), [sym_char_literal] = STATE(4120), [sym_array_literal] = STATE(4120), [sym_function_literal] = STATE(4120), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4120), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3735), [sym_false] = ACTIONS(3735), [sym_null] = ACTIONS(3735), [sym_super] = ACTIONS(3735), [sym_this] = ACTIONS(3735), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3737), [sym_float_literal] = ACTIONS(3737), [sym__string] = ACTIONS(3327), }, [1078] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4041), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4041), [sym_ternary_expression] = STATE(4041), [sym_call_expression] = STATE(4041), [sym_primary_expression] = STATE(4041), [sym__primary_expr] = STATE(4041), [sym_index_expression] = STATE(4041), [sym_assignment_expression] = STATE(4041), [sym_binary_expression] = STATE(4041), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4041), [sym_unary_expression] = STATE(4041), [sym__unary_expr] = STATE(4041), [sym_property_expression] = STATE(4041), [sym_cast_expression] = STATE(4041), [sym_delete_expression] = STATE(4041), [sym_throw_expression] = STATE(4041), [sym_assert_expression] = STATE(4041), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4041), [sym_new_expression] = STATE(4041), [sym_typeid_expression] = STATE(4041), [sym_is_expression] = STATE(4041), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4041), [sym_char_literal] = STATE(4041), [sym_array_literal] = STATE(4041), [sym_function_literal] = STATE(4041), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4041), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3739), [sym_false] = ACTIONS(3739), [sym_null] = ACTIONS(3739), [sym_super] = ACTIONS(3739), [sym_this] = ACTIONS(3739), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3741), [sym_float_literal] = ACTIONS(3741), [sym__string] = ACTIONS(3713), }, [1079] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4237), [sym_ternary_expression] = STATE(4237), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4237), [sym_binary_expression] = STATE(4237), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1080] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4253), [sym_ternary_expression] = STATE(4253), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4253), [sym_binary_expression] = STATE(4253), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1081] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3924), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3924), [sym_ternary_expression] = STATE(3924), [sym_call_expression] = STATE(3924), [sym_primary_expression] = STATE(3924), [sym__primary_expr] = STATE(3924), [sym_index_expression] = STATE(3924), [sym_assignment_expression] = STATE(3924), [sym_binary_expression] = STATE(3924), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3924), [sym_unary_expression] = STATE(3924), [sym__unary_expr] = STATE(3924), [sym_property_expression] = STATE(3924), [sym_cast_expression] = STATE(3924), [sym_delete_expression] = STATE(3924), [sym_throw_expression] = STATE(3924), [sym_assert_expression] = STATE(3924), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3924), [sym_new_expression] = STATE(3924), [sym_typeid_expression] = STATE(3924), [sym_is_expression] = STATE(3924), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3924), [sym_char_literal] = STATE(3924), [sym_array_literal] = STATE(3924), [sym_function_literal] = STATE(3924), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3924), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3743), [sym_false] = ACTIONS(3743), [sym_null] = ACTIONS(3743), [sym_super] = ACTIONS(3743), [sym_this] = ACTIONS(3743), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3745), [sym_float_literal] = ACTIONS(3745), [sym__string] = ACTIONS(233), }, [1082] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5646), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4246), [sym_ternary_expression] = STATE(4246), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4246), [sym_binary_expression] = STATE(4246), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1083] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5646), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4262), [sym_ternary_expression] = STATE(4262), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4262), [sym_binary_expression] = STATE(4262), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1084] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3916), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3916), [sym_ternary_expression] = STATE(3916), [sym_call_expression] = STATE(3916), [sym_primary_expression] = STATE(3916), [sym__primary_expr] = STATE(3916), [sym_index_expression] = STATE(3916), [sym_assignment_expression] = STATE(3916), [sym_binary_expression] = STATE(3916), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3916), [sym_unary_expression] = STATE(3916), [sym__unary_expr] = STATE(3916), [sym_property_expression] = STATE(3916), [sym_cast_expression] = STATE(3916), [sym_delete_expression] = STATE(3916), [sym_throw_expression] = STATE(3916), [sym_assert_expression] = STATE(3916), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3916), [sym_new_expression] = STATE(3916), [sym_typeid_expression] = STATE(3916), [sym_is_expression] = STATE(3916), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3916), [sym_char_literal] = STATE(3916), [sym_array_literal] = STATE(3916), [sym_function_literal] = STATE(3916), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3916), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3747), [sym_false] = ACTIONS(3747), [sym_null] = ACTIONS(3747), [sym_super] = ACTIONS(3747), [sym_this] = ACTIONS(3747), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3749), [sym_float_literal] = ACTIONS(3749), [sym__string] = ACTIONS(233), }, [1085] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3923), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3923), [sym_ternary_expression] = STATE(3923), [sym_call_expression] = STATE(3923), [sym_primary_expression] = STATE(3923), [sym__primary_expr] = STATE(3923), [sym_index_expression] = STATE(3923), [sym_assignment_expression] = STATE(3923), [sym_binary_expression] = STATE(3923), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3923), [sym_unary_expression] = STATE(3923), [sym__unary_expr] = STATE(3923), [sym_property_expression] = STATE(3923), [sym_cast_expression] = STATE(3923), [sym_delete_expression] = STATE(3923), [sym_throw_expression] = STATE(3923), [sym_assert_expression] = STATE(3923), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3923), [sym_new_expression] = STATE(3923), [sym_typeid_expression] = STATE(3923), [sym_is_expression] = STATE(3923), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3923), [sym_char_literal] = STATE(3923), [sym_array_literal] = STATE(3923), [sym_function_literal] = STATE(3923), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3923), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3751), [sym_false] = ACTIONS(3751), [sym_null] = ACTIONS(3751), [sym_super] = ACTIONS(3751), [sym_this] = ACTIONS(3751), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3753), [sym_float_literal] = ACTIONS(3753), [sym__string] = ACTIONS(233), }, [1086] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4292), [sym_ternary_expression] = STATE(4292), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4292), [sym_binary_expression] = STATE(4292), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1087] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4116), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4116), [sym_ternary_expression] = STATE(4116), [sym_call_expression] = STATE(4116), [sym_primary_expression] = STATE(4116), [sym__primary_expr] = STATE(4116), [sym_index_expression] = STATE(4116), [sym_assignment_expression] = STATE(4116), [sym_binary_expression] = STATE(4116), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4116), [sym_unary_expression] = STATE(4116), [sym__unary_expr] = STATE(4116), [sym_property_expression] = STATE(4116), [sym_cast_expression] = STATE(4116), [sym_delete_expression] = STATE(4116), [sym_throw_expression] = STATE(4116), [sym_assert_expression] = STATE(4116), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4116), [sym_new_expression] = STATE(4116), [sym_typeid_expression] = STATE(4116), [sym_is_expression] = STATE(4116), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4116), [sym_char_literal] = STATE(4116), [sym_array_literal] = STATE(4116), [sym_function_literal] = STATE(4116), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4116), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3755), [sym_false] = ACTIONS(3755), [sym_null] = ACTIONS(3755), [sym_super] = ACTIONS(3755), [sym_this] = ACTIONS(3755), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3757), [sym_float_literal] = ACTIONS(3757), [sym__string] = ACTIONS(3327), }, [1088] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4185), [sym_ternary_expression] = STATE(4185), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4185), [sym_binary_expression] = STATE(4185), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1089] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4186), [sym_ternary_expression] = STATE(4186), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4186), [sym_binary_expression] = STATE(4186), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1090] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4168), [sym_ternary_expression] = STATE(4168), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4168), [sym_binary_expression] = STATE(4168), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1091] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4068), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4068), [sym_ternary_expression] = STATE(4068), [sym_call_expression] = STATE(4068), [sym_primary_expression] = STATE(4068), [sym__primary_expr] = STATE(4068), [sym_index_expression] = STATE(4068), [sym_assignment_expression] = STATE(4068), [sym_binary_expression] = STATE(4068), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4068), [sym_unary_expression] = STATE(4068), [sym__unary_expr] = STATE(4068), [sym_property_expression] = STATE(4068), [sym_cast_expression] = STATE(4068), [sym_delete_expression] = STATE(4068), [sym_throw_expression] = STATE(4068), [sym_assert_expression] = STATE(4068), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4068), [sym_new_expression] = STATE(4068), [sym_typeid_expression] = STATE(4068), [sym_is_expression] = STATE(4068), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4068), [sym_char_literal] = STATE(4068), [sym_array_literal] = STATE(4068), [sym_function_literal] = STATE(4068), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4068), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3759), [sym_false] = ACTIONS(3759), [sym_null] = ACTIONS(3759), [sym_super] = ACTIONS(3759), [sym_this] = ACTIONS(3759), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3761), [sym_float_literal] = ACTIONS(3761), [sym__string] = ACTIONS(3327), }, [1092] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4219), [sym_ternary_expression] = STATE(4219), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4219), [sym_binary_expression] = STATE(4219), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1093] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4232), [sym_ternary_expression] = STATE(4232), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4232), [sym_binary_expression] = STATE(4232), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1094] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4160), [sym_ternary_expression] = STATE(4160), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4160), [sym_binary_expression] = STATE(4160), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1095] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4020), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4020), [sym_ternary_expression] = STATE(4020), [sym_call_expression] = STATE(4020), [sym_primary_expression] = STATE(4020), [sym__primary_expr] = STATE(4020), [sym_index_expression] = STATE(4020), [sym_assignment_expression] = STATE(4020), [sym_binary_expression] = STATE(4020), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4020), [sym_unary_expression] = STATE(4020), [sym__unary_expr] = STATE(4020), [sym_property_expression] = STATE(4020), [sym_cast_expression] = STATE(4020), [sym_delete_expression] = STATE(4020), [sym_throw_expression] = STATE(4020), [sym_assert_expression] = STATE(4020), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4020), [sym_new_expression] = STATE(4020), [sym_typeid_expression] = STATE(4020), [sym_is_expression] = STATE(4020), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4020), [sym_char_literal] = STATE(4020), [sym_array_literal] = STATE(4020), [sym_function_literal] = STATE(4020), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4020), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3763), [sym_false] = ACTIONS(3763), [sym_null] = ACTIONS(3763), [sym_super] = ACTIONS(3763), [sym_this] = ACTIONS(3763), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3765), [sym_float_literal] = ACTIONS(3765), [sym__string] = ACTIONS(3713), }, [1096] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4221), [sym_ternary_expression] = STATE(4221), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4221), [sym_binary_expression] = STATE(4221), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1097] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4161), [sym_ternary_expression] = STATE(4161), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4161), [sym_binary_expression] = STATE(4161), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1098] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4222), [sym_ternary_expression] = STATE(4222), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4222), [sym_binary_expression] = STATE(4222), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1099] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4220), [sym_ternary_expression] = STATE(4220), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4220), [sym_binary_expression] = STATE(4220), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1100] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4028), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4028), [sym_ternary_expression] = STATE(4028), [sym_call_expression] = STATE(4028), [sym_primary_expression] = STATE(4028), [sym__primary_expr] = STATE(4028), [sym_index_expression] = STATE(4028), [sym_assignment_expression] = STATE(4028), [sym_binary_expression] = STATE(4028), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4028), [sym_unary_expression] = STATE(4028), [sym__unary_expr] = STATE(4028), [sym_property_expression] = STATE(4028), [sym_cast_expression] = STATE(4028), [sym_delete_expression] = STATE(4028), [sym_throw_expression] = STATE(4028), [sym_assert_expression] = STATE(4028), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4028), [sym_new_expression] = STATE(4028), [sym_typeid_expression] = STATE(4028), [sym_is_expression] = STATE(4028), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4028), [sym_char_literal] = STATE(4028), [sym_array_literal] = STATE(4028), [sym_function_literal] = STATE(4028), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4028), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3767), [sym_false] = ACTIONS(3767), [sym_null] = ACTIONS(3767), [sym_super] = ACTIONS(3767), [sym_this] = ACTIONS(3767), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3769), [sym_float_literal] = ACTIONS(3769), [sym__string] = ACTIONS(3713), }, [1101] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4304), [sym_ternary_expression] = STATE(4304), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4304), [sym_binary_expression] = STATE(4304), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1102] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4260), [sym_ternary_expression] = STATE(4260), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4260), [sym_binary_expression] = STATE(4260), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1103] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4236), [sym_ternary_expression] = STATE(4236), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4236), [sym_binary_expression] = STATE(4236), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1104] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4300), [sym_ternary_expression] = STATE(4300), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4300), [sym_binary_expression] = STATE(4300), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1105] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4223), [sym_ternary_expression] = STATE(4223), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4223), [sym_binary_expression] = STATE(4223), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1106] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4155), [sym_ternary_expression] = STATE(4155), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4155), [sym_binary_expression] = STATE(4155), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1107] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4148), [sym_ternary_expression] = STATE(4148), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4148), [sym_binary_expression] = STATE(4148), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1108] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4154), [sym_ternary_expression] = STATE(4154), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4154), [sym_binary_expression] = STATE(4154), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1109] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4302), [sym_ternary_expression] = STATE(4302), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4302), [sym_binary_expression] = STATE(4302), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1110] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4153), [sym_ternary_expression] = STATE(4153), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4153), [sym_binary_expression] = STATE(4153), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1111] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3997), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(3997), [sym_ternary_expression] = STATE(3997), [sym_call_expression] = STATE(3997), [sym_primary_expression] = STATE(3997), [sym__primary_expr] = STATE(3997), [sym_index_expression] = STATE(3997), [sym_assignment_expression] = STATE(3997), [sym_binary_expression] = STATE(3997), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(3997), [sym_unary_expression] = STATE(3997), [sym__unary_expr] = STATE(3997), [sym_property_expression] = STATE(3997), [sym_cast_expression] = STATE(3997), [sym_delete_expression] = STATE(3997), [sym_throw_expression] = STATE(3997), [sym_assert_expression] = STATE(3997), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3997), [sym_new_expression] = STATE(3997), [sym_typeid_expression] = STATE(3997), [sym_is_expression] = STATE(3997), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3997), [sym_char_literal] = STATE(3997), [sym_array_literal] = STATE(3997), [sym_function_literal] = STATE(3997), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3997), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3771), [sym_false] = ACTIONS(3771), [sym_null] = ACTIONS(3771), [sym_super] = ACTIONS(3771), [sym_this] = ACTIONS(3771), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3773), [sym_float_literal] = ACTIONS(3773), [sym__string] = ACTIONS(3713), }, [1112] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4076), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4076), [sym_ternary_expression] = STATE(4076), [sym_call_expression] = STATE(4076), [sym_primary_expression] = STATE(4076), [sym__primary_expr] = STATE(4076), [sym_index_expression] = STATE(4076), [sym_assignment_expression] = STATE(4076), [sym_binary_expression] = STATE(4076), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4076), [sym_unary_expression] = STATE(4076), [sym__unary_expr] = STATE(4076), [sym_property_expression] = STATE(4076), [sym_cast_expression] = STATE(4076), [sym_delete_expression] = STATE(4076), [sym_throw_expression] = STATE(4076), [sym_assert_expression] = STATE(4076), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4076), [sym_new_expression] = STATE(4076), [sym_typeid_expression] = STATE(4076), [sym_is_expression] = STATE(4076), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4076), [sym_char_literal] = STATE(4076), [sym_array_literal] = STATE(4076), [sym_function_literal] = STATE(4076), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4076), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3775), [sym_false] = ACTIONS(3775), [sym_null] = ACTIONS(3775), [sym_super] = ACTIONS(3775), [sym_this] = ACTIONS(3775), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3777), [sym_float_literal] = ACTIONS(3777), [sym__string] = ACTIONS(3713), }, [1113] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4085), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4085), [sym_ternary_expression] = STATE(4085), [sym_call_expression] = STATE(4085), [sym_primary_expression] = STATE(4085), [sym__primary_expr] = STATE(4085), [sym_index_expression] = STATE(4085), [sym_assignment_expression] = STATE(4085), [sym_binary_expression] = STATE(4085), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4085), [sym_unary_expression] = STATE(4085), [sym__unary_expr] = STATE(4085), [sym_property_expression] = STATE(4085), [sym_cast_expression] = STATE(4085), [sym_delete_expression] = STATE(4085), [sym_throw_expression] = STATE(4085), [sym_assert_expression] = STATE(4085), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4085), [sym_new_expression] = STATE(4085), [sym_typeid_expression] = STATE(4085), [sym_is_expression] = STATE(4085), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4085), [sym_char_literal] = STATE(4085), [sym_array_literal] = STATE(4085), [sym_function_literal] = STATE(4085), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4085), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3779), [sym_false] = ACTIONS(3779), [sym_null] = ACTIONS(3779), [sym_super] = ACTIONS(3779), [sym_this] = ACTIONS(3779), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3781), [sym_float_literal] = ACTIONS(3781), [sym__string] = ACTIONS(3713), }, [1114] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4141), [sym_ternary_expression] = STATE(4141), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4141), [sym_binary_expression] = STATE(4141), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1115] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4145), [sym_ternary_expression] = STATE(4145), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4145), [sym_binary_expression] = STATE(4145), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1116] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4087), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4087), [sym_ternary_expression] = STATE(4087), [sym_call_expression] = STATE(4087), [sym_primary_expression] = STATE(4087), [sym__primary_expr] = STATE(4087), [sym_index_expression] = STATE(4087), [sym_assignment_expression] = STATE(4087), [sym_binary_expression] = STATE(4087), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4087), [sym_unary_expression] = STATE(4087), [sym__unary_expr] = STATE(4087), [sym_property_expression] = STATE(4087), [sym_cast_expression] = STATE(4087), [sym_delete_expression] = STATE(4087), [sym_throw_expression] = STATE(4087), [sym_assert_expression] = STATE(4087), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4087), [sym_new_expression] = STATE(4087), [sym_typeid_expression] = STATE(4087), [sym_is_expression] = STATE(4087), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4087), [sym_char_literal] = STATE(4087), [sym_array_literal] = STATE(4087), [sym_function_literal] = STATE(4087), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4087), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3783), [sym_false] = ACTIONS(3783), [sym_null] = ACTIONS(3783), [sym_super] = ACTIONS(3783), [sym_this] = ACTIONS(3783), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3785), [sym_float_literal] = ACTIONS(3785), [sym__string] = ACTIONS(3713), }, [1117] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4095), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4095), [sym_ternary_expression] = STATE(4095), [sym_call_expression] = STATE(4095), [sym_primary_expression] = STATE(4095), [sym__primary_expr] = STATE(4095), [sym_index_expression] = STATE(4095), [sym_assignment_expression] = STATE(4095), [sym_binary_expression] = STATE(4095), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4095), [sym_unary_expression] = STATE(4095), [sym__unary_expr] = STATE(4095), [sym_property_expression] = STATE(4095), [sym_cast_expression] = STATE(4095), [sym_delete_expression] = STATE(4095), [sym_throw_expression] = STATE(4095), [sym_assert_expression] = STATE(4095), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4095), [sym_new_expression] = STATE(4095), [sym_typeid_expression] = STATE(4095), [sym_is_expression] = STATE(4095), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4095), [sym_char_literal] = STATE(4095), [sym_array_literal] = STATE(4095), [sym_function_literal] = STATE(4095), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4095), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3787), [sym_false] = ACTIONS(3787), [sym_null] = ACTIONS(3787), [sym_super] = ACTIONS(3787), [sym_this] = ACTIONS(3787), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3789), [sym_float_literal] = ACTIONS(3789), [sym__string] = ACTIONS(3713), }, [1118] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4096), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4096), [sym_ternary_expression] = STATE(4096), [sym_call_expression] = STATE(4096), [sym_primary_expression] = STATE(4096), [sym__primary_expr] = STATE(4096), [sym_index_expression] = STATE(4096), [sym_assignment_expression] = STATE(4096), [sym_binary_expression] = STATE(4096), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4096), [sym_unary_expression] = STATE(4096), [sym__unary_expr] = STATE(4096), [sym_property_expression] = STATE(4096), [sym_cast_expression] = STATE(4096), [sym_delete_expression] = STATE(4096), [sym_throw_expression] = STATE(4096), [sym_assert_expression] = STATE(4096), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4096), [sym_new_expression] = STATE(4096), [sym_typeid_expression] = STATE(4096), [sym_is_expression] = STATE(4096), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4096), [sym_char_literal] = STATE(4096), [sym_array_literal] = STATE(4096), [sym_function_literal] = STATE(4096), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4096), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3791), [sym_false] = ACTIONS(3791), [sym_null] = ACTIONS(3791), [sym_super] = ACTIONS(3791), [sym_this] = ACTIONS(3791), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3793), [sym_float_literal] = ACTIONS(3793), [sym__string] = ACTIONS(3713), }, [1119] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4131), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4131), [sym_ternary_expression] = STATE(4131), [sym_call_expression] = STATE(4131), [sym_primary_expression] = STATE(4131), [sym__primary_expr] = STATE(4131), [sym_index_expression] = STATE(4131), [sym_assignment_expression] = STATE(4131), [sym_binary_expression] = STATE(4131), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4131), [sym_unary_expression] = STATE(4131), [sym__unary_expr] = STATE(4131), [sym_property_expression] = STATE(4131), [sym_cast_expression] = STATE(4131), [sym_delete_expression] = STATE(4131), [sym_throw_expression] = STATE(4131), [sym_assert_expression] = STATE(4131), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4131), [sym_new_expression] = STATE(4131), [sym_typeid_expression] = STATE(4131), [sym_is_expression] = STATE(4131), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4131), [sym_char_literal] = STATE(4131), [sym_array_literal] = STATE(4131), [sym_function_literal] = STATE(4131), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4131), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3795), [sym_false] = ACTIONS(3795), [sym_null] = ACTIONS(3795), [sym_super] = ACTIONS(3795), [sym_this] = ACTIONS(3795), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3797), [sym_float_literal] = ACTIONS(3797), [sym__string] = ACTIONS(233), }, [1120] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4152), [sym_ternary_expression] = STATE(4152), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4152), [sym_binary_expression] = STATE(4152), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1121] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4063), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4063), [sym_ternary_expression] = STATE(4063), [sym_call_expression] = STATE(4063), [sym_primary_expression] = STATE(4063), [sym__primary_expr] = STATE(4063), [sym_index_expression] = STATE(4063), [sym_assignment_expression] = STATE(4063), [sym_binary_expression] = STATE(4063), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4063), [sym_unary_expression] = STATE(4063), [sym__unary_expr] = STATE(4063), [sym_property_expression] = STATE(4063), [sym_cast_expression] = STATE(4063), [sym_delete_expression] = STATE(4063), [sym_throw_expression] = STATE(4063), [sym_assert_expression] = STATE(4063), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4063), [sym_new_expression] = STATE(4063), [sym_typeid_expression] = STATE(4063), [sym_is_expression] = STATE(4063), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4063), [sym_char_literal] = STATE(4063), [sym_array_literal] = STATE(4063), [sym_function_literal] = STATE(4063), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4063), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3799), [sym_false] = ACTIONS(3799), [sym_null] = ACTIONS(3799), [sym_super] = ACTIONS(3799), [sym_this] = ACTIONS(3799), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3801), [sym_float_literal] = ACTIONS(3801), [sym__string] = ACTIONS(3713), }, [1122] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4071), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4071), [sym_ternary_expression] = STATE(4071), [sym_call_expression] = STATE(4071), [sym_primary_expression] = STATE(4071), [sym__primary_expr] = STATE(4071), [sym_index_expression] = STATE(4071), [sym_assignment_expression] = STATE(4071), [sym_binary_expression] = STATE(4071), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4071), [sym_unary_expression] = STATE(4071), [sym__unary_expr] = STATE(4071), [sym_property_expression] = STATE(4071), [sym_cast_expression] = STATE(4071), [sym_delete_expression] = STATE(4071), [sym_throw_expression] = STATE(4071), [sym_assert_expression] = STATE(4071), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4071), [sym_new_expression] = STATE(4071), [sym_typeid_expression] = STATE(4071), [sym_is_expression] = STATE(4071), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4071), [sym_char_literal] = STATE(4071), [sym_array_literal] = STATE(4071), [sym_function_literal] = STATE(4071), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4071), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3803), [sym_false] = ACTIONS(3803), [sym_null] = ACTIONS(3803), [sym_super] = ACTIONS(3803), [sym_this] = ACTIONS(3803), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3805), [sym_float_literal] = ACTIONS(3805), [sym__string] = ACTIONS(3713), }, [1123] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4132), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4132), [sym_ternary_expression] = STATE(4132), [sym_call_expression] = STATE(4132), [sym_primary_expression] = STATE(4132), [sym__primary_expr] = STATE(4132), [sym_index_expression] = STATE(4132), [sym_assignment_expression] = STATE(4132), [sym_binary_expression] = STATE(4132), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4132), [sym_unary_expression] = STATE(4132), [sym__unary_expr] = STATE(4132), [sym_property_expression] = STATE(4132), [sym_cast_expression] = STATE(4132), [sym_delete_expression] = STATE(4132), [sym_throw_expression] = STATE(4132), [sym_assert_expression] = STATE(4132), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4132), [sym_new_expression] = STATE(4132), [sym_typeid_expression] = STATE(4132), [sym_is_expression] = STATE(4132), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4132), [sym_char_literal] = STATE(4132), [sym_array_literal] = STATE(4132), [sym_function_literal] = STATE(4132), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4132), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3807), [sym_false] = ACTIONS(3807), [sym_null] = ACTIONS(3807), [sym_super] = ACTIONS(3807), [sym_this] = ACTIONS(3807), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3809), [sym_float_literal] = ACTIONS(3809), [sym__string] = ACTIONS(233), }, [1124] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4151), [sym_ternary_expression] = STATE(4151), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4151), [sym_binary_expression] = STATE(4151), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1125] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4135), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4135), [sym_ternary_expression] = STATE(4135), [sym_call_expression] = STATE(4135), [sym_primary_expression] = STATE(4135), [sym__primary_expr] = STATE(4135), [sym_index_expression] = STATE(4135), [sym_assignment_expression] = STATE(4135), [sym_binary_expression] = STATE(4135), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4135), [sym_unary_expression] = STATE(4135), [sym__unary_expr] = STATE(4135), [sym_property_expression] = STATE(4135), [sym_cast_expression] = STATE(4135), [sym_delete_expression] = STATE(4135), [sym_throw_expression] = STATE(4135), [sym_assert_expression] = STATE(4135), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4135), [sym_new_expression] = STATE(4135), [sym_typeid_expression] = STATE(4135), [sym_is_expression] = STATE(4135), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4135), [sym_char_literal] = STATE(4135), [sym_array_literal] = STATE(4135), [sym_function_literal] = STATE(4135), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4135), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3811), [sym_false] = ACTIONS(3811), [sym_null] = ACTIONS(3811), [sym_super] = ACTIONS(3811), [sym_this] = ACTIONS(3811), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3813), [sym_float_literal] = ACTIONS(3813), [sym__string] = ACTIONS(233), }, [1126] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4250), [sym_ternary_expression] = STATE(4250), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4250), [sym_binary_expression] = STATE(4250), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1127] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4137), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4137), [sym_ternary_expression] = STATE(4137), [sym_call_expression] = STATE(4137), [sym_primary_expression] = STATE(4137), [sym__primary_expr] = STATE(4137), [sym_index_expression] = STATE(4137), [sym_assignment_expression] = STATE(4137), [sym_binary_expression] = STATE(4137), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4137), [sym_unary_expression] = STATE(4137), [sym__unary_expr] = STATE(4137), [sym_property_expression] = STATE(4137), [sym_cast_expression] = STATE(4137), [sym_delete_expression] = STATE(4137), [sym_throw_expression] = STATE(4137), [sym_assert_expression] = STATE(4137), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4137), [sym_new_expression] = STATE(4137), [sym_typeid_expression] = STATE(4137), [sym_is_expression] = STATE(4137), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4137), [sym_char_literal] = STATE(4137), [sym_array_literal] = STATE(4137), [sym_function_literal] = STATE(4137), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4137), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3815), [sym_false] = ACTIONS(3815), [sym_null] = ACTIONS(3815), [sym_super] = ACTIONS(3815), [sym_this] = ACTIONS(3815), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3817), [sym_float_literal] = ACTIONS(3817), [sym__string] = ACTIONS(233), }, [1128] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4138), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4138), [sym_ternary_expression] = STATE(4138), [sym_call_expression] = STATE(4138), [sym_primary_expression] = STATE(4138), [sym__primary_expr] = STATE(4138), [sym_index_expression] = STATE(4138), [sym_assignment_expression] = STATE(4138), [sym_binary_expression] = STATE(4138), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4138), [sym_unary_expression] = STATE(4138), [sym__unary_expr] = STATE(4138), [sym_property_expression] = STATE(4138), [sym_cast_expression] = STATE(4138), [sym_delete_expression] = STATE(4138), [sym_throw_expression] = STATE(4138), [sym_assert_expression] = STATE(4138), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4138), [sym_new_expression] = STATE(4138), [sym_typeid_expression] = STATE(4138), [sym_is_expression] = STATE(4138), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4138), [sym_char_literal] = STATE(4138), [sym_array_literal] = STATE(4138), [sym_function_literal] = STATE(4138), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4138), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3819), [sym_false] = ACTIONS(3819), [sym_null] = ACTIONS(3819), [sym_super] = ACTIONS(3819), [sym_this] = ACTIONS(3819), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3821), [sym_float_literal] = ACTIONS(3821), [sym__string] = ACTIONS(233), }, [1129] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4244), [sym_ternary_expression] = STATE(4244), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4244), [sym_binary_expression] = STATE(4244), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1130] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4143), [sym_ternary_expression] = STATE(4143), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4143), [sym_binary_expression] = STATE(4143), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1131] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4247), [sym_ternary_expression] = STATE(4247), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4247), [sym_binary_expression] = STATE(4247), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1132] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4017), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4017), [sym_ternary_expression] = STATE(4017), [sym_call_expression] = STATE(4017), [sym_primary_expression] = STATE(4017), [sym__primary_expr] = STATE(4017), [sym_index_expression] = STATE(4017), [sym_assignment_expression] = STATE(4017), [sym_binary_expression] = STATE(4017), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4017), [sym_unary_expression] = STATE(4017), [sym__unary_expr] = STATE(4017), [sym_property_expression] = STATE(4017), [sym_cast_expression] = STATE(4017), [sym_delete_expression] = STATE(4017), [sym_throw_expression] = STATE(4017), [sym_assert_expression] = STATE(4017), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4017), [sym_new_expression] = STATE(4017), [sym_typeid_expression] = STATE(4017), [sym_is_expression] = STATE(4017), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4017), [sym_char_literal] = STATE(4017), [sym_array_literal] = STATE(4017), [sym_function_literal] = STATE(4017), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4017), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3823), [sym_false] = ACTIONS(3823), [sym_null] = ACTIONS(3823), [sym_super] = ACTIONS(3823), [sym_this] = ACTIONS(3823), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3825), [sym_float_literal] = ACTIONS(3825), [sym__string] = ACTIONS(3327), }, [1133] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4249), [sym_ternary_expression] = STATE(4249), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4249), [sym_binary_expression] = STATE(4249), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1134] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4206), [sym_ternary_expression] = STATE(4206), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4206), [sym_binary_expression] = STATE(4206), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1135] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4255), [sym_ternary_expression] = STATE(4255), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4255), [sym_binary_expression] = STATE(4255), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1136] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4122), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4122), [sym_ternary_expression] = STATE(4122), [sym_call_expression] = STATE(4122), [sym_primary_expression] = STATE(4122), [sym__primary_expr] = STATE(4122), [sym_index_expression] = STATE(4122), [sym_assignment_expression] = STATE(4122), [sym_binary_expression] = STATE(4122), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4122), [sym_unary_expression] = STATE(4122), [sym__unary_expr] = STATE(4122), [sym_property_expression] = STATE(4122), [sym_cast_expression] = STATE(4122), [sym_delete_expression] = STATE(4122), [sym_throw_expression] = STATE(4122), [sym_assert_expression] = STATE(4122), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4122), [sym_new_expression] = STATE(4122), [sym_typeid_expression] = STATE(4122), [sym_is_expression] = STATE(4122), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4122), [sym_char_literal] = STATE(4122), [sym_array_literal] = STATE(4122), [sym_function_literal] = STATE(4122), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4122), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3827), [sym_false] = ACTIONS(3827), [sym_null] = ACTIONS(3827), [sym_super] = ACTIONS(3827), [sym_this] = ACTIONS(3827), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3829), [sym_float_literal] = ACTIONS(3829), [sym__string] = ACTIONS(233), }, [1137] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4019), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4019), [sym_ternary_expression] = STATE(4019), [sym_call_expression] = STATE(4019), [sym_primary_expression] = STATE(4019), [sym__primary_expr] = STATE(4019), [sym_index_expression] = STATE(4019), [sym_assignment_expression] = STATE(4019), [sym_binary_expression] = STATE(4019), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4019), [sym_unary_expression] = STATE(4019), [sym__unary_expr] = STATE(4019), [sym_property_expression] = STATE(4019), [sym_cast_expression] = STATE(4019), [sym_delete_expression] = STATE(4019), [sym_throw_expression] = STATE(4019), [sym_assert_expression] = STATE(4019), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4019), [sym_new_expression] = STATE(4019), [sym_typeid_expression] = STATE(4019), [sym_is_expression] = STATE(4019), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4019), [sym_char_literal] = STATE(4019), [sym_array_literal] = STATE(4019), [sym_function_literal] = STATE(4019), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4019), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3831), [sym_false] = ACTIONS(3831), [sym_null] = ACTIONS(3831), [sym_super] = ACTIONS(3831), [sym_this] = ACTIONS(3831), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3833), [sym_float_literal] = ACTIONS(3833), [sym__string] = ACTIONS(3327), }, [1138] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4278), [sym_ternary_expression] = STATE(4278), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4278), [sym_binary_expression] = STATE(4278), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1139] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4238), [sym_ternary_expression] = STATE(4238), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4238), [sym_binary_expression] = STATE(4238), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1140] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4136), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4136), [sym_ternary_expression] = STATE(4136), [sym_call_expression] = STATE(4136), [sym_primary_expression] = STATE(4136), [sym__primary_expr] = STATE(4136), [sym_index_expression] = STATE(4136), [sym_assignment_expression] = STATE(4136), [sym_binary_expression] = STATE(4136), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4136), [sym_unary_expression] = STATE(4136), [sym__unary_expr] = STATE(4136), [sym_property_expression] = STATE(4136), [sym_cast_expression] = STATE(4136), [sym_delete_expression] = STATE(4136), [sym_throw_expression] = STATE(4136), [sym_assert_expression] = STATE(4136), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4136), [sym_new_expression] = STATE(4136), [sym_typeid_expression] = STATE(4136), [sym_is_expression] = STATE(4136), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4136), [sym_char_literal] = STATE(4136), [sym_array_literal] = STATE(4136), [sym_function_literal] = STATE(4136), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4136), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3835), [sym_false] = ACTIONS(3835), [sym_null] = ACTIONS(3835), [sym_super] = ACTIONS(3835), [sym_this] = ACTIONS(3835), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3837), [sym_float_literal] = ACTIONS(3837), [sym__string] = ACTIONS(233), }, [1141] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4204), [sym_ternary_expression] = STATE(4204), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4204), [sym_binary_expression] = STATE(4204), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1142] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4134), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4134), [sym_ternary_expression] = STATE(4134), [sym_call_expression] = STATE(4134), [sym_primary_expression] = STATE(4134), [sym__primary_expr] = STATE(4134), [sym_index_expression] = STATE(4134), [sym_assignment_expression] = STATE(4134), [sym_binary_expression] = STATE(4134), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4134), [sym_unary_expression] = STATE(4134), [sym__unary_expr] = STATE(4134), [sym_property_expression] = STATE(4134), [sym_cast_expression] = STATE(4134), [sym_delete_expression] = STATE(4134), [sym_throw_expression] = STATE(4134), [sym_assert_expression] = STATE(4134), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4134), [sym_new_expression] = STATE(4134), [sym_typeid_expression] = STATE(4134), [sym_is_expression] = STATE(4134), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4134), [sym_char_literal] = STATE(4134), [sym_array_literal] = STATE(4134), [sym_function_literal] = STATE(4134), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4134), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3839), [sym_false] = ACTIONS(3839), [sym_null] = ACTIONS(3839), [sym_super] = ACTIONS(3839), [sym_this] = ACTIONS(3839), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3841), [sym_float_literal] = ACTIONS(3841), [sym__string] = ACTIONS(233), }, [1143] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4205), [sym_ternary_expression] = STATE(4205), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4205), [sym_binary_expression] = STATE(4205), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1144] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4208), [sym_ternary_expression] = STATE(4208), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4208), [sym_binary_expression] = STATE(4208), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1145] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4133), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4133), [sym_ternary_expression] = STATE(4133), [sym_call_expression] = STATE(4133), [sym_primary_expression] = STATE(4133), [sym__primary_expr] = STATE(4133), [sym_index_expression] = STATE(4133), [sym_assignment_expression] = STATE(4133), [sym_binary_expression] = STATE(4133), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4133), [sym_unary_expression] = STATE(4133), [sym__unary_expr] = STATE(4133), [sym_property_expression] = STATE(4133), [sym_cast_expression] = STATE(4133), [sym_delete_expression] = STATE(4133), [sym_throw_expression] = STATE(4133), [sym_assert_expression] = STATE(4133), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4133), [sym_new_expression] = STATE(4133), [sym_typeid_expression] = STATE(4133), [sym_is_expression] = STATE(4133), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4133), [sym_char_literal] = STATE(4133), [sym_array_literal] = STATE(4133), [sym_function_literal] = STATE(4133), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4133), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3843), [sym_false] = ACTIONS(3843), [sym_null] = ACTIONS(3843), [sym_super] = ACTIONS(3843), [sym_this] = ACTIONS(3843), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3845), [sym_float_literal] = ACTIONS(3845), [sym__string] = ACTIONS(233), }, [1146] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4209), [sym_ternary_expression] = STATE(4209), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4209), [sym_binary_expression] = STATE(4209), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1147] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4130), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4130), [sym_ternary_expression] = STATE(4130), [sym_call_expression] = STATE(4130), [sym_primary_expression] = STATE(4130), [sym__primary_expr] = STATE(4130), [sym_index_expression] = STATE(4130), [sym_assignment_expression] = STATE(4130), [sym_binary_expression] = STATE(4130), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4130), [sym_unary_expression] = STATE(4130), [sym__unary_expr] = STATE(4130), [sym_property_expression] = STATE(4130), [sym_cast_expression] = STATE(4130), [sym_delete_expression] = STATE(4130), [sym_throw_expression] = STATE(4130), [sym_assert_expression] = STATE(4130), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4130), [sym_new_expression] = STATE(4130), [sym_typeid_expression] = STATE(4130), [sym_is_expression] = STATE(4130), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4130), [sym_char_literal] = STATE(4130), [sym_array_literal] = STATE(4130), [sym_function_literal] = STATE(4130), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4130), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3847), [sym_false] = ACTIONS(3847), [sym_null] = ACTIONS(3847), [sym_super] = ACTIONS(3847), [sym_this] = ACTIONS(3847), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3849), [sym_float_literal] = ACTIONS(3849), [sym__string] = ACTIONS(233), }, [1148] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4210), [sym_ternary_expression] = STATE(4210), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4210), [sym_binary_expression] = STATE(4210), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1149] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4129), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4129), [sym_ternary_expression] = STATE(4129), [sym_call_expression] = STATE(4129), [sym_primary_expression] = STATE(4129), [sym__primary_expr] = STATE(4129), [sym_index_expression] = STATE(4129), [sym_assignment_expression] = STATE(4129), [sym_binary_expression] = STATE(4129), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4129), [sym_unary_expression] = STATE(4129), [sym__unary_expr] = STATE(4129), [sym_property_expression] = STATE(4129), [sym_cast_expression] = STATE(4129), [sym_delete_expression] = STATE(4129), [sym_throw_expression] = STATE(4129), [sym_assert_expression] = STATE(4129), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4129), [sym_new_expression] = STATE(4129), [sym_typeid_expression] = STATE(4129), [sym_is_expression] = STATE(4129), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4129), [sym_char_literal] = STATE(4129), [sym_array_literal] = STATE(4129), [sym_function_literal] = STATE(4129), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4129), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3851), [sym_false] = ACTIONS(3851), [sym_null] = ACTIONS(3851), [sym_super] = ACTIONS(3851), [sym_this] = ACTIONS(3851), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3853), [sym_float_literal] = ACTIONS(3853), [sym__string] = ACTIONS(233), }, [1150] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4211), [sym_ternary_expression] = STATE(4211), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4211), [sym_binary_expression] = STATE(4211), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1151] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4213), [sym_ternary_expression] = STATE(4213), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4213), [sym_binary_expression] = STATE(4213), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1152] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4046), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4046), [sym_ternary_expression] = STATE(4046), [sym_call_expression] = STATE(4046), [sym_primary_expression] = STATE(4046), [sym__primary_expr] = STATE(4046), [sym_index_expression] = STATE(4046), [sym_assignment_expression] = STATE(4046), [sym_binary_expression] = STATE(4046), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4046), [sym_unary_expression] = STATE(4046), [sym__unary_expr] = STATE(4046), [sym_property_expression] = STATE(4046), [sym_cast_expression] = STATE(4046), [sym_delete_expression] = STATE(4046), [sym_throw_expression] = STATE(4046), [sym_assert_expression] = STATE(4046), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4046), [sym_new_expression] = STATE(4046), [sym_typeid_expression] = STATE(4046), [sym_is_expression] = STATE(4046), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4046), [sym_char_literal] = STATE(4046), [sym_array_literal] = STATE(4046), [sym_function_literal] = STATE(4046), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4046), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3855), [sym_false] = ACTIONS(3855), [sym_null] = ACTIONS(3855), [sym_super] = ACTIONS(3855), [sym_this] = ACTIONS(3855), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3857), [sym_float_literal] = ACTIONS(3857), [sym__string] = ACTIONS(3327), }, [1153] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4121), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4121), [sym_ternary_expression] = STATE(4121), [sym_call_expression] = STATE(4121), [sym_primary_expression] = STATE(4121), [sym__primary_expr] = STATE(4121), [sym_index_expression] = STATE(4121), [sym_assignment_expression] = STATE(4121), [sym_binary_expression] = STATE(4121), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4121), [sym_unary_expression] = STATE(4121), [sym__unary_expr] = STATE(4121), [sym_property_expression] = STATE(4121), [sym_cast_expression] = STATE(4121), [sym_delete_expression] = STATE(4121), [sym_throw_expression] = STATE(4121), [sym_assert_expression] = STATE(4121), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4121), [sym_new_expression] = STATE(4121), [sym_typeid_expression] = STATE(4121), [sym_is_expression] = STATE(4121), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4121), [sym_char_literal] = STATE(4121), [sym_array_literal] = STATE(4121), [sym_function_literal] = STATE(4121), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4121), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3859), [sym_false] = ACTIONS(3859), [sym_null] = ACTIONS(3859), [sym_super] = ACTIONS(3859), [sym_this] = ACTIONS(3859), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3861), [sym_float_literal] = ACTIONS(3861), [sym__string] = ACTIONS(233), }, [1154] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4142), [sym_ternary_expression] = STATE(4142), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4142), [sym_binary_expression] = STATE(4142), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1155] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4021), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4021), [sym_ternary_expression] = STATE(4021), [sym_call_expression] = STATE(4021), [sym_primary_expression] = STATE(4021), [sym__primary_expr] = STATE(4021), [sym_index_expression] = STATE(4021), [sym_assignment_expression] = STATE(4021), [sym_binary_expression] = STATE(4021), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4021), [sym_unary_expression] = STATE(4021), [sym__unary_expr] = STATE(4021), [sym_property_expression] = STATE(4021), [sym_cast_expression] = STATE(4021), [sym_delete_expression] = STATE(4021), [sym_throw_expression] = STATE(4021), [sym_assert_expression] = STATE(4021), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4021), [sym_new_expression] = STATE(4021), [sym_typeid_expression] = STATE(4021), [sym_is_expression] = STATE(4021), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4021), [sym_char_literal] = STATE(4021), [sym_array_literal] = STATE(4021), [sym_function_literal] = STATE(4021), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4021), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3863), [sym_false] = ACTIONS(3863), [sym_null] = ACTIONS(3863), [sym_super] = ACTIONS(3863), [sym_this] = ACTIONS(3863), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3865), [sym_float_literal] = ACTIONS(3865), [sym__string] = ACTIONS(3327), }, [1156] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4150), [sym_ternary_expression] = STATE(4150), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4150), [sym_binary_expression] = STATE(4150), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1157] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4225), [sym_ternary_expression] = STATE(4225), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4225), [sym_binary_expression] = STATE(4225), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1158] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4128), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4128), [sym_ternary_expression] = STATE(4128), [sym_call_expression] = STATE(4128), [sym_primary_expression] = STATE(4128), [sym__primary_expr] = STATE(4128), [sym_index_expression] = STATE(4128), [sym_assignment_expression] = STATE(4128), [sym_binary_expression] = STATE(4128), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4128), [sym_unary_expression] = STATE(4128), [sym__unary_expr] = STATE(4128), [sym_property_expression] = STATE(4128), [sym_cast_expression] = STATE(4128), [sym_delete_expression] = STATE(4128), [sym_throw_expression] = STATE(4128), [sym_assert_expression] = STATE(4128), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4128), [sym_new_expression] = STATE(4128), [sym_typeid_expression] = STATE(4128), [sym_is_expression] = STATE(4128), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4128), [sym_char_literal] = STATE(4128), [sym_array_literal] = STATE(4128), [sym_function_literal] = STATE(4128), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4128), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3867), [sym_false] = ACTIONS(3867), [sym_null] = ACTIONS(3867), [sym_super] = ACTIONS(3867), [sym_this] = ACTIONS(3867), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3869), [sym_float_literal] = ACTIONS(3869), [sym__string] = ACTIONS(233), }, [1159] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4203), [sym_ternary_expression] = STATE(4203), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4203), [sym_binary_expression] = STATE(4203), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1160] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4202), [sym_ternary_expression] = STATE(4202), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4202), [sym_binary_expression] = STATE(4202), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1161] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4149), [sym_ternary_expression] = STATE(4149), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4149), [sym_binary_expression] = STATE(4149), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1162] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4119), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4119), [sym_ternary_expression] = STATE(4119), [sym_call_expression] = STATE(4119), [sym_primary_expression] = STATE(4119), [sym__primary_expr] = STATE(4119), [sym_index_expression] = STATE(4119), [sym_assignment_expression] = STATE(4119), [sym_binary_expression] = STATE(4119), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4119), [sym_unary_expression] = STATE(4119), [sym__unary_expr] = STATE(4119), [sym_property_expression] = STATE(4119), [sym_cast_expression] = STATE(4119), [sym_delete_expression] = STATE(4119), [sym_throw_expression] = STATE(4119), [sym_assert_expression] = STATE(4119), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4119), [sym_new_expression] = STATE(4119), [sym_typeid_expression] = STATE(4119), [sym_is_expression] = STATE(4119), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4119), [sym_char_literal] = STATE(4119), [sym_array_literal] = STATE(4119), [sym_function_literal] = STATE(4119), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4119), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3871), [sym_false] = ACTIONS(3871), [sym_null] = ACTIONS(3871), [sym_super] = ACTIONS(3871), [sym_this] = ACTIONS(3871), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3873), [sym_float_literal] = ACTIONS(3873), [sym__string] = ACTIONS(3327), }, [1163] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4198), [sym_ternary_expression] = STATE(4198), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4198), [sym_binary_expression] = STATE(4198), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1164] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4214), [sym_ternary_expression] = STATE(4214), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4214), [sym_binary_expression] = STATE(4214), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1165] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4144), [sym_ternary_expression] = STATE(4144), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4144), [sym_binary_expression] = STATE(4144), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1166] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4023), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4023), [sym_ternary_expression] = STATE(4023), [sym_call_expression] = STATE(4023), [sym_primary_expression] = STATE(4023), [sym__primary_expr] = STATE(4023), [sym_index_expression] = STATE(4023), [sym_assignment_expression] = STATE(4023), [sym_binary_expression] = STATE(4023), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4023), [sym_unary_expression] = STATE(4023), [sym__unary_expr] = STATE(4023), [sym_property_expression] = STATE(4023), [sym_cast_expression] = STATE(4023), [sym_delete_expression] = STATE(4023), [sym_throw_expression] = STATE(4023), [sym_assert_expression] = STATE(4023), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4023), [sym_new_expression] = STATE(4023), [sym_typeid_expression] = STATE(4023), [sym_is_expression] = STATE(4023), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4023), [sym_char_literal] = STATE(4023), [sym_array_literal] = STATE(4023), [sym_function_literal] = STATE(4023), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4023), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3875), [sym_false] = ACTIONS(3875), [sym_null] = ACTIONS(3875), [sym_super] = ACTIONS(3875), [sym_this] = ACTIONS(3875), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3877), [sym_float_literal] = ACTIONS(3877), [sym__string] = ACTIONS(3327), }, [1167] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4118), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4118), [sym_ternary_expression] = STATE(4118), [sym_call_expression] = STATE(4118), [sym_primary_expression] = STATE(4118), [sym__primary_expr] = STATE(4118), [sym_index_expression] = STATE(4118), [sym_assignment_expression] = STATE(4118), [sym_binary_expression] = STATE(4118), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4118), [sym_unary_expression] = STATE(4118), [sym__unary_expr] = STATE(4118), [sym_property_expression] = STATE(4118), [sym_cast_expression] = STATE(4118), [sym_delete_expression] = STATE(4118), [sym_throw_expression] = STATE(4118), [sym_assert_expression] = STATE(4118), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4118), [sym_new_expression] = STATE(4118), [sym_typeid_expression] = STATE(4118), [sym_is_expression] = STATE(4118), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4118), [sym_char_literal] = STATE(4118), [sym_array_literal] = STATE(4118), [sym_function_literal] = STATE(4118), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4118), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3879), [sym_false] = ACTIONS(3879), [sym_null] = ACTIONS(3879), [sym_super] = ACTIONS(3879), [sym_this] = ACTIONS(3879), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3881), [sym_float_literal] = ACTIONS(3881), [sym__string] = ACTIONS(3327), }, [1168] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4263), [sym_ternary_expression] = STATE(4263), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4263), [sym_binary_expression] = STATE(4263), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1169] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4215), [sym_ternary_expression] = STATE(4215), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4215), [sym_binary_expression] = STATE(4215), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1170] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4216), [sym_ternary_expression] = STATE(4216), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4216), [sym_binary_expression] = STATE(4216), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1171] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4217), [sym_ternary_expression] = STATE(4217), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4217), [sym_binary_expression] = STATE(4217), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1172] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4218), [sym_ternary_expression] = STATE(4218), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4218), [sym_binary_expression] = STATE(4218), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1173] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4026), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4026), [sym_ternary_expression] = STATE(4026), [sym_call_expression] = STATE(4026), [sym_primary_expression] = STATE(4026), [sym__primary_expr] = STATE(4026), [sym_index_expression] = STATE(4026), [sym_assignment_expression] = STATE(4026), [sym_binary_expression] = STATE(4026), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4026), [sym_unary_expression] = STATE(4026), [sym__unary_expr] = STATE(4026), [sym_property_expression] = STATE(4026), [sym_cast_expression] = STATE(4026), [sym_delete_expression] = STATE(4026), [sym_throw_expression] = STATE(4026), [sym_assert_expression] = STATE(4026), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4026), [sym_new_expression] = STATE(4026), [sym_typeid_expression] = STATE(4026), [sym_is_expression] = STATE(4026), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4026), [sym_char_literal] = STATE(4026), [sym_array_literal] = STATE(4026), [sym_function_literal] = STATE(4026), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4026), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3883), [sym_false] = ACTIONS(3883), [sym_null] = ACTIONS(3883), [sym_super] = ACTIONS(3883), [sym_this] = ACTIONS(3883), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3885), [sym_float_literal] = ACTIONS(3885), [sym__string] = ACTIONS(3327), }, [1174] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4197), [sym_ternary_expression] = STATE(4197), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4197), [sym_binary_expression] = STATE(4197), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1175] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4104), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4104), [sym_ternary_expression] = STATE(4104), [sym_call_expression] = STATE(4104), [sym_primary_expression] = STATE(4104), [sym__primary_expr] = STATE(4104), [sym_index_expression] = STATE(4104), [sym_assignment_expression] = STATE(4104), [sym_binary_expression] = STATE(4104), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4104), [sym_unary_expression] = STATE(4104), [sym__unary_expr] = STATE(4104), [sym_property_expression] = STATE(4104), [sym_cast_expression] = STATE(4104), [sym_delete_expression] = STATE(4104), [sym_throw_expression] = STATE(4104), [sym_assert_expression] = STATE(4104), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4104), [sym_new_expression] = STATE(4104), [sym_typeid_expression] = STATE(4104), [sym_is_expression] = STATE(4104), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4104), [sym_char_literal] = STATE(4104), [sym_array_literal] = STATE(4104), [sym_function_literal] = STATE(4104), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4104), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3887), [sym_false] = ACTIONS(3887), [sym_null] = ACTIONS(3887), [sym_super] = ACTIONS(3887), [sym_this] = ACTIONS(3887), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3889), [sym_float_literal] = ACTIONS(3889), [sym__string] = ACTIONS(3327), }, [1176] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4201), [sym_ternary_expression] = STATE(4201), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4201), [sym_binary_expression] = STATE(4201), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1177] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4282), [sym_ternary_expression] = STATE(4282), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4282), [sym_binary_expression] = STATE(4282), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1178] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4239), [sym_ternary_expression] = STATE(4239), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4239), [sym_binary_expression] = STATE(4239), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1179] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4240), [sym_ternary_expression] = STATE(4240), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4240), [sym_binary_expression] = STATE(4240), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1180] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4267), [sym_ternary_expression] = STATE(4267), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4267), [sym_binary_expression] = STATE(4267), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1181] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4306), [sym_ternary_expression] = STATE(4306), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4306), [sym_binary_expression] = STATE(4306), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1182] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4272), [sym_ternary_expression] = STATE(4272), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4272), [sym_binary_expression] = STATE(4272), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1183] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4030), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4030), [sym_ternary_expression] = STATE(4030), [sym_call_expression] = STATE(4030), [sym_primary_expression] = STATE(4030), [sym__primary_expr] = STATE(4030), [sym_index_expression] = STATE(4030), [sym_assignment_expression] = STATE(4030), [sym_binary_expression] = STATE(4030), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4030), [sym_unary_expression] = STATE(4030), [sym__unary_expr] = STATE(4030), [sym_property_expression] = STATE(4030), [sym_cast_expression] = STATE(4030), [sym_delete_expression] = STATE(4030), [sym_throw_expression] = STATE(4030), [sym_assert_expression] = STATE(4030), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4030), [sym_new_expression] = STATE(4030), [sym_typeid_expression] = STATE(4030), [sym_is_expression] = STATE(4030), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4030), [sym_char_literal] = STATE(4030), [sym_array_literal] = STATE(4030), [sym_function_literal] = STATE(4030), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4030), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3891), [sym_false] = ACTIONS(3891), [sym_null] = ACTIONS(3891), [sym_super] = ACTIONS(3891), [sym_this] = ACTIONS(3891), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3893), [sym_float_literal] = ACTIONS(3893), [sym__string] = ACTIONS(3327), }, [1184] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4259), [sym_ternary_expression] = STATE(4259), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4259), [sym_binary_expression] = STATE(4259), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1185] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4018), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4018), [sym_ternary_expression] = STATE(4018), [sym_call_expression] = STATE(4018), [sym_primary_expression] = STATE(4018), [sym__primary_expr] = STATE(4018), [sym_index_expression] = STATE(4018), [sym_assignment_expression] = STATE(4018), [sym_binary_expression] = STATE(4018), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4018), [sym_unary_expression] = STATE(4018), [sym__unary_expr] = STATE(4018), [sym_property_expression] = STATE(4018), [sym_cast_expression] = STATE(4018), [sym_delete_expression] = STATE(4018), [sym_throw_expression] = STATE(4018), [sym_assert_expression] = STATE(4018), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4018), [sym_new_expression] = STATE(4018), [sym_typeid_expression] = STATE(4018), [sym_is_expression] = STATE(4018), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4018), [sym_char_literal] = STATE(4018), [sym_array_literal] = STATE(4018), [sym_function_literal] = STATE(4018), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4018), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3895), [sym_false] = ACTIONS(3895), [sym_null] = ACTIONS(3895), [sym_super] = ACTIONS(3895), [sym_this] = ACTIONS(3895), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3897), [sym_float_literal] = ACTIONS(3897), [sym__string] = ACTIONS(3713), }, [1186] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4092), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4092), [sym_ternary_expression] = STATE(4092), [sym_call_expression] = STATE(4092), [sym_primary_expression] = STATE(4092), [sym__primary_expr] = STATE(4092), [sym_index_expression] = STATE(4092), [sym_assignment_expression] = STATE(4092), [sym_binary_expression] = STATE(4092), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4092), [sym_unary_expression] = STATE(4092), [sym__unary_expr] = STATE(4092), [sym_property_expression] = STATE(4092), [sym_cast_expression] = STATE(4092), [sym_delete_expression] = STATE(4092), [sym_throw_expression] = STATE(4092), [sym_assert_expression] = STATE(4092), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4092), [sym_new_expression] = STATE(4092), [sym_typeid_expression] = STATE(4092), [sym_is_expression] = STATE(4092), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4092), [sym_char_literal] = STATE(4092), [sym_array_literal] = STATE(4092), [sym_function_literal] = STATE(4092), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4092), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3899), [sym_false] = ACTIONS(3899), [sym_null] = ACTIONS(3899), [sym_super] = ACTIONS(3899), [sym_this] = ACTIONS(3899), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3901), [sym_float_literal] = ACTIONS(3901), [sym__string] = ACTIONS(3713), }, [1187] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4036), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4036), [sym_ternary_expression] = STATE(4036), [sym_call_expression] = STATE(4036), [sym_primary_expression] = STATE(4036), [sym__primary_expr] = STATE(4036), [sym_index_expression] = STATE(4036), [sym_assignment_expression] = STATE(4036), [sym_binary_expression] = STATE(4036), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4036), [sym_unary_expression] = STATE(4036), [sym__unary_expr] = STATE(4036), [sym_property_expression] = STATE(4036), [sym_cast_expression] = STATE(4036), [sym_delete_expression] = STATE(4036), [sym_throw_expression] = STATE(4036), [sym_assert_expression] = STATE(4036), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4036), [sym_new_expression] = STATE(4036), [sym_typeid_expression] = STATE(4036), [sym_is_expression] = STATE(4036), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4036), [sym_char_literal] = STATE(4036), [sym_array_literal] = STATE(4036), [sym_function_literal] = STATE(4036), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4036), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3903), [sym_false] = ACTIONS(3903), [sym_null] = ACTIONS(3903), [sym_super] = ACTIONS(3903), [sym_this] = ACTIONS(3903), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3905), [sym_float_literal] = ACTIONS(3905), [sym__string] = ACTIONS(3327), }, [1188] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4037), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4037), [sym_ternary_expression] = STATE(4037), [sym_call_expression] = STATE(4037), [sym_primary_expression] = STATE(4037), [sym__primary_expr] = STATE(4037), [sym_index_expression] = STATE(4037), [sym_assignment_expression] = STATE(4037), [sym_binary_expression] = STATE(4037), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4037), [sym_unary_expression] = STATE(4037), [sym__unary_expr] = STATE(4037), [sym_property_expression] = STATE(4037), [sym_cast_expression] = STATE(4037), [sym_delete_expression] = STATE(4037), [sym_throw_expression] = STATE(4037), [sym_assert_expression] = STATE(4037), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4037), [sym_new_expression] = STATE(4037), [sym_typeid_expression] = STATE(4037), [sym_is_expression] = STATE(4037), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4037), [sym_char_literal] = STATE(4037), [sym_array_literal] = STATE(4037), [sym_function_literal] = STATE(4037), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4037), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3907), [sym_false] = ACTIONS(3907), [sym_null] = ACTIONS(3907), [sym_super] = ACTIONS(3907), [sym_this] = ACTIONS(3907), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3909), [sym_float_literal] = ACTIONS(3909), [sym__string] = ACTIONS(3327), }, [1189] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4231), [sym_ternary_expression] = STATE(4231), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4231), [sym_binary_expression] = STATE(4231), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1190] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4038), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4038), [sym_ternary_expression] = STATE(4038), [sym_call_expression] = STATE(4038), [sym_primary_expression] = STATE(4038), [sym__primary_expr] = STATE(4038), [sym_index_expression] = STATE(4038), [sym_assignment_expression] = STATE(4038), [sym_binary_expression] = STATE(4038), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4038), [sym_unary_expression] = STATE(4038), [sym__unary_expr] = STATE(4038), [sym_property_expression] = STATE(4038), [sym_cast_expression] = STATE(4038), [sym_delete_expression] = STATE(4038), [sym_throw_expression] = STATE(4038), [sym_assert_expression] = STATE(4038), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4038), [sym_new_expression] = STATE(4038), [sym_typeid_expression] = STATE(4038), [sym_is_expression] = STATE(4038), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4038), [sym_char_literal] = STATE(4038), [sym_array_literal] = STATE(4038), [sym_function_literal] = STATE(4038), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4038), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3911), [sym_false] = ACTIONS(3911), [sym_null] = ACTIONS(3911), [sym_super] = ACTIONS(3911), [sym_this] = ACTIONS(3911), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3913), [sym_float_literal] = ACTIONS(3913), [sym__string] = ACTIONS(3327), }, [1191] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4195), [sym_ternary_expression] = STATE(4195), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4195), [sym_binary_expression] = STATE(4195), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1192] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4303), [sym_ternary_expression] = STATE(4303), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4303), [sym_binary_expression] = STATE(4303), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1193] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5520), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(5108), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(5108), [sym_typeof_expression] = STATE(3963), [sym__expr] = STATE(4241), [sym_ternary_expression] = STATE(4241), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4241), [sym_binary_expression] = STATE(4241), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3947), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3950), [sym_traits_expression] = STATE(3947), [aux_sym_type_repeat1] = STATE(3783), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3915), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3917), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(3919), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1194] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5688), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4264), [sym_ternary_expression] = STATE(4264), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4264), [sym_binary_expression] = STATE(4264), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1195] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4254), [sym_ternary_expression] = STATE(4254), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4254), [sym_binary_expression] = STATE(4254), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1196] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4297), [sym_ternary_expression] = STATE(4297), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4297), [sym_binary_expression] = STATE(4297), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1197] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4082), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4082), [sym_ternary_expression] = STATE(4082), [sym_call_expression] = STATE(4082), [sym_primary_expression] = STATE(4082), [sym__primary_expr] = STATE(4082), [sym_index_expression] = STATE(4082), [sym_assignment_expression] = STATE(4082), [sym_binary_expression] = STATE(4082), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4082), [sym_unary_expression] = STATE(4082), [sym__unary_expr] = STATE(4082), [sym_property_expression] = STATE(4082), [sym_cast_expression] = STATE(4082), [sym_delete_expression] = STATE(4082), [sym_throw_expression] = STATE(4082), [sym_assert_expression] = STATE(4082), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4082), [sym_new_expression] = STATE(4082), [sym_typeid_expression] = STATE(4082), [sym_is_expression] = STATE(4082), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4082), [sym_char_literal] = STATE(4082), [sym_array_literal] = STATE(4082), [sym_function_literal] = STATE(4082), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4082), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3921), [sym_false] = ACTIONS(3921), [sym_null] = ACTIONS(3921), [sym_super] = ACTIONS(3921), [sym_this] = ACTIONS(3921), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3923), [sym_float_literal] = ACTIONS(3923), [sym__string] = ACTIONS(3713), }, [1198] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4295), [sym_ternary_expression] = STATE(4295), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4295), [sym_binary_expression] = STATE(4295), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1199] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4040), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4040), [sym_ternary_expression] = STATE(4040), [sym_call_expression] = STATE(4040), [sym_primary_expression] = STATE(4040), [sym__primary_expr] = STATE(4040), [sym_index_expression] = STATE(4040), [sym_assignment_expression] = STATE(4040), [sym_binary_expression] = STATE(4040), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4040), [sym_unary_expression] = STATE(4040), [sym__unary_expr] = STATE(4040), [sym_property_expression] = STATE(4040), [sym_cast_expression] = STATE(4040), [sym_delete_expression] = STATE(4040), [sym_throw_expression] = STATE(4040), [sym_assert_expression] = STATE(4040), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4040), [sym_new_expression] = STATE(4040), [sym_typeid_expression] = STATE(4040), [sym_is_expression] = STATE(4040), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4040), [sym_char_literal] = STATE(4040), [sym_array_literal] = STATE(4040), [sym_function_literal] = STATE(4040), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4040), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3925), [sym_false] = ACTIONS(3925), [sym_null] = ACTIONS(3925), [sym_super] = ACTIONS(3925), [sym_this] = ACTIONS(3925), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3927), [sym_float_literal] = ACTIONS(3927), [sym__string] = ACTIONS(3713), }, [1200] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4113), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4113), [sym_ternary_expression] = STATE(4113), [sym_call_expression] = STATE(4113), [sym_primary_expression] = STATE(4113), [sym__primary_expr] = STATE(4113), [sym_index_expression] = STATE(4113), [sym_assignment_expression] = STATE(4113), [sym_binary_expression] = STATE(4113), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4113), [sym_unary_expression] = STATE(4113), [sym__unary_expr] = STATE(4113), [sym_property_expression] = STATE(4113), [sym_cast_expression] = STATE(4113), [sym_delete_expression] = STATE(4113), [sym_throw_expression] = STATE(4113), [sym_assert_expression] = STATE(4113), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4113), [sym_new_expression] = STATE(4113), [sym_typeid_expression] = STATE(4113), [sym_is_expression] = STATE(4113), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4113), [sym_char_literal] = STATE(4113), [sym_array_literal] = STATE(4113), [sym_function_literal] = STATE(4113), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4113), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3929), [sym_false] = ACTIONS(3929), [sym_null] = ACTIONS(3929), [sym_super] = ACTIONS(3929), [sym_this] = ACTIONS(3929), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3931), [sym_float_literal] = ACTIONS(3931), [sym__string] = ACTIONS(3327), }, [1201] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4293), [sym_ternary_expression] = STATE(4293), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4293), [sym_binary_expression] = STATE(4293), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1202] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4044), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4044), [sym_ternary_expression] = STATE(4044), [sym_call_expression] = STATE(4044), [sym_primary_expression] = STATE(4044), [sym__primary_expr] = STATE(4044), [sym_index_expression] = STATE(4044), [sym_assignment_expression] = STATE(4044), [sym_binary_expression] = STATE(4044), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4044), [sym_unary_expression] = STATE(4044), [sym__unary_expr] = STATE(4044), [sym_property_expression] = STATE(4044), [sym_cast_expression] = STATE(4044), [sym_delete_expression] = STATE(4044), [sym_throw_expression] = STATE(4044), [sym_assert_expression] = STATE(4044), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4044), [sym_new_expression] = STATE(4044), [sym_typeid_expression] = STATE(4044), [sym_is_expression] = STATE(4044), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4044), [sym_char_literal] = STATE(4044), [sym_array_literal] = STATE(4044), [sym_function_literal] = STATE(4044), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4044), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3933), [sym_false] = ACTIONS(3933), [sym_null] = ACTIONS(3933), [sym_super] = ACTIONS(3933), [sym_this] = ACTIONS(3933), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3935), [sym_float_literal] = ACTIONS(3935), [sym__string] = ACTIONS(3327), }, [1203] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4165), [sym_ternary_expression] = STATE(4165), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4165), [sym_binary_expression] = STATE(4165), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1204] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4298), [sym_ternary_expression] = STATE(4298), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4298), [sym_binary_expression] = STATE(4298), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1205] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4285), [sym_ternary_expression] = STATE(4285), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4285), [sym_binary_expression] = STATE(4285), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1206] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4286), [sym_ternary_expression] = STATE(4286), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4286), [sym_binary_expression] = STATE(4286), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1207] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4307), [sym_ternary_expression] = STATE(4307), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4307), [sym_binary_expression] = STATE(4307), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1208] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4047), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4047), [sym_ternary_expression] = STATE(4047), [sym_call_expression] = STATE(4047), [sym_primary_expression] = STATE(4047), [sym__primary_expr] = STATE(4047), [sym_index_expression] = STATE(4047), [sym_assignment_expression] = STATE(4047), [sym_binary_expression] = STATE(4047), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4047), [sym_unary_expression] = STATE(4047), [sym__unary_expr] = STATE(4047), [sym_property_expression] = STATE(4047), [sym_cast_expression] = STATE(4047), [sym_delete_expression] = STATE(4047), [sym_throw_expression] = STATE(4047), [sym_assert_expression] = STATE(4047), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4047), [sym_new_expression] = STATE(4047), [sym_typeid_expression] = STATE(4047), [sym_is_expression] = STATE(4047), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4047), [sym_char_literal] = STATE(4047), [sym_array_literal] = STATE(4047), [sym_function_literal] = STATE(4047), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4047), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3937), [sym_false] = ACTIONS(3937), [sym_null] = ACTIONS(3937), [sym_super] = ACTIONS(3937), [sym_this] = ACTIONS(3937), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3939), [sym_float_literal] = ACTIONS(3939), [sym__string] = ACTIONS(3327), }, [1209] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4277), [sym_ternary_expression] = STATE(4277), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4277), [sym_binary_expression] = STATE(4277), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1210] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4283), [sym_ternary_expression] = STATE(4283), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4283), [sym_binary_expression] = STATE(4283), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1211] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4299), [sym_ternary_expression] = STATE(4299), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4299), [sym_binary_expression] = STATE(4299), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1212] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4287), [sym_ternary_expression] = STATE(4287), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4287), [sym_binary_expression] = STATE(4287), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1213] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4288), [sym_ternary_expression] = STATE(4288), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4288), [sym_binary_expression] = STATE(4288), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1214] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4289), [sym_ternary_expression] = STATE(4289), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4289), [sym_binary_expression] = STATE(4289), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1215] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4274), [sym_ternary_expression] = STATE(4274), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4274), [sym_binary_expression] = STATE(4274), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1216] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4194), [sym_ternary_expression] = STATE(4194), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4194), [sym_binary_expression] = STATE(4194), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1217] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4235), [sym_ternary_expression] = STATE(4235), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4235), [sym_binary_expression] = STATE(4235), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1218] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4123), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4123), [sym_ternary_expression] = STATE(4123), [sym_call_expression] = STATE(4123), [sym_primary_expression] = STATE(4123), [sym__primary_expr] = STATE(4123), [sym_index_expression] = STATE(4123), [sym_assignment_expression] = STATE(4123), [sym_binary_expression] = STATE(4123), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4123), [sym_unary_expression] = STATE(4123), [sym__unary_expr] = STATE(4123), [sym_property_expression] = STATE(4123), [sym_cast_expression] = STATE(4123), [sym_delete_expression] = STATE(4123), [sym_throw_expression] = STATE(4123), [sym_assert_expression] = STATE(4123), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4123), [sym_new_expression] = STATE(4123), [sym_typeid_expression] = STATE(4123), [sym_is_expression] = STATE(4123), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4123), [sym_char_literal] = STATE(4123), [sym_array_literal] = STATE(4123), [sym_function_literal] = STATE(4123), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4123), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3941), [sym_false] = ACTIONS(3941), [sym_null] = ACTIONS(3941), [sym_super] = ACTIONS(3941), [sym_this] = ACTIONS(3941), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3943), [sym_float_literal] = ACTIONS(3943), [sym__string] = ACTIONS(233), }, [1219] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4193), [sym_ternary_expression] = STATE(4193), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4193), [sym_binary_expression] = STATE(4193), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1220] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4084), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4084), [sym_ternary_expression] = STATE(4084), [sym_call_expression] = STATE(4084), [sym_primary_expression] = STATE(4084), [sym__primary_expr] = STATE(4084), [sym_index_expression] = STATE(4084), [sym_assignment_expression] = STATE(4084), [sym_binary_expression] = STATE(4084), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4084), [sym_unary_expression] = STATE(4084), [sym__unary_expr] = STATE(4084), [sym_property_expression] = STATE(4084), [sym_cast_expression] = STATE(4084), [sym_delete_expression] = STATE(4084), [sym_throw_expression] = STATE(4084), [sym_assert_expression] = STATE(4084), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4084), [sym_new_expression] = STATE(4084), [sym_typeid_expression] = STATE(4084), [sym_is_expression] = STATE(4084), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4084), [sym_char_literal] = STATE(4084), [sym_array_literal] = STATE(4084), [sym_function_literal] = STATE(4084), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4084), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3945), [sym_false] = ACTIONS(3945), [sym_null] = ACTIONS(3945), [sym_super] = ACTIONS(3945), [sym_this] = ACTIONS(3945), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3947), [sym_float_literal] = ACTIONS(3947), [sym__string] = ACTIONS(233), }, [1221] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4083), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4083), [sym_ternary_expression] = STATE(4083), [sym_call_expression] = STATE(4083), [sym_primary_expression] = STATE(4083), [sym__primary_expr] = STATE(4083), [sym_index_expression] = STATE(4083), [sym_assignment_expression] = STATE(4083), [sym_binary_expression] = STATE(4083), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4083), [sym_unary_expression] = STATE(4083), [sym__unary_expr] = STATE(4083), [sym_property_expression] = STATE(4083), [sym_cast_expression] = STATE(4083), [sym_delete_expression] = STATE(4083), [sym_throw_expression] = STATE(4083), [sym_assert_expression] = STATE(4083), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4083), [sym_new_expression] = STATE(4083), [sym_typeid_expression] = STATE(4083), [sym_is_expression] = STATE(4083), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4083), [sym_char_literal] = STATE(4083), [sym_array_literal] = STATE(4083), [sym_function_literal] = STATE(4083), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4083), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3949), [sym_false] = ACTIONS(3949), [sym_null] = ACTIONS(3949), [sym_super] = ACTIONS(3949), [sym_this] = ACTIONS(3949), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3951), [sym_float_literal] = ACTIONS(3951), [sym__string] = ACTIONS(233), }, [1222] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4081), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4081), [sym_ternary_expression] = STATE(4081), [sym_call_expression] = STATE(4081), [sym_primary_expression] = STATE(4081), [sym__primary_expr] = STATE(4081), [sym_index_expression] = STATE(4081), [sym_assignment_expression] = STATE(4081), [sym_binary_expression] = STATE(4081), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4081), [sym_unary_expression] = STATE(4081), [sym__unary_expr] = STATE(4081), [sym_property_expression] = STATE(4081), [sym_cast_expression] = STATE(4081), [sym_delete_expression] = STATE(4081), [sym_throw_expression] = STATE(4081), [sym_assert_expression] = STATE(4081), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4081), [sym_new_expression] = STATE(4081), [sym_typeid_expression] = STATE(4081), [sym_is_expression] = STATE(4081), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4081), [sym_char_literal] = STATE(4081), [sym_array_literal] = STATE(4081), [sym_function_literal] = STATE(4081), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4081), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3953), [sym_false] = ACTIONS(3953), [sym_null] = ACTIONS(3953), [sym_super] = ACTIONS(3953), [sym_this] = ACTIONS(3953), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3955), [sym_float_literal] = ACTIONS(3955), [sym__string] = ACTIONS(233), }, [1223] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4049), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4049), [sym_ternary_expression] = STATE(4049), [sym_call_expression] = STATE(4049), [sym_primary_expression] = STATE(4049), [sym__primary_expr] = STATE(4049), [sym_index_expression] = STATE(4049), [sym_assignment_expression] = STATE(4049), [sym_binary_expression] = STATE(4049), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4049), [sym_unary_expression] = STATE(4049), [sym__unary_expr] = STATE(4049), [sym_property_expression] = STATE(4049), [sym_cast_expression] = STATE(4049), [sym_delete_expression] = STATE(4049), [sym_throw_expression] = STATE(4049), [sym_assert_expression] = STATE(4049), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4049), [sym_new_expression] = STATE(4049), [sym_typeid_expression] = STATE(4049), [sym_is_expression] = STATE(4049), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4049), [sym_char_literal] = STATE(4049), [sym_array_literal] = STATE(4049), [sym_function_literal] = STATE(4049), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4049), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3957), [sym_false] = ACTIONS(3957), [sym_null] = ACTIONS(3957), [sym_super] = ACTIONS(3957), [sym_this] = ACTIONS(3957), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3959), [sym_float_literal] = ACTIONS(3959), [sym__string] = ACTIONS(3327), }, [1224] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4192), [sym_ternary_expression] = STATE(4192), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4192), [sym_binary_expression] = STATE(4192), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1225] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5630), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4274), [sym_ternary_expression] = STATE(4274), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4274), [sym_binary_expression] = STATE(4274), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1226] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5630), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4257), [sym_ternary_expression] = STATE(4257), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4257), [sym_binary_expression] = STATE(4257), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1227] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4080), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4080), [sym_ternary_expression] = STATE(4080), [sym_call_expression] = STATE(4080), [sym_primary_expression] = STATE(4080), [sym__primary_expr] = STATE(4080), [sym_index_expression] = STATE(4080), [sym_assignment_expression] = STATE(4080), [sym_binary_expression] = STATE(4080), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4080), [sym_unary_expression] = STATE(4080), [sym__unary_expr] = STATE(4080), [sym_property_expression] = STATE(4080), [sym_cast_expression] = STATE(4080), [sym_delete_expression] = STATE(4080), [sym_throw_expression] = STATE(4080), [sym_assert_expression] = STATE(4080), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4080), [sym_new_expression] = STATE(4080), [sym_typeid_expression] = STATE(4080), [sym_is_expression] = STATE(4080), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4080), [sym_char_literal] = STATE(4080), [sym_array_literal] = STATE(4080), [sym_function_literal] = STATE(4080), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4080), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3961), [sym_false] = ACTIONS(3961), [sym_null] = ACTIONS(3961), [sym_super] = ACTIONS(3961), [sym_this] = ACTIONS(3961), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3963), [sym_float_literal] = ACTIONS(3963), [sym__string] = ACTIONS(233), }, [1228] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4079), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4079), [sym_ternary_expression] = STATE(4079), [sym_call_expression] = STATE(4079), [sym_primary_expression] = STATE(4079), [sym__primary_expr] = STATE(4079), [sym_index_expression] = STATE(4079), [sym_assignment_expression] = STATE(4079), [sym_binary_expression] = STATE(4079), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4079), [sym_unary_expression] = STATE(4079), [sym__unary_expr] = STATE(4079), [sym_property_expression] = STATE(4079), [sym_cast_expression] = STATE(4079), [sym_delete_expression] = STATE(4079), [sym_throw_expression] = STATE(4079), [sym_assert_expression] = STATE(4079), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4079), [sym_new_expression] = STATE(4079), [sym_typeid_expression] = STATE(4079), [sym_is_expression] = STATE(4079), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4079), [sym_char_literal] = STATE(4079), [sym_array_literal] = STATE(4079), [sym_function_literal] = STATE(4079), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4079), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3965), [sym_false] = ACTIONS(3965), [sym_null] = ACTIONS(3965), [sym_super] = ACTIONS(3965), [sym_this] = ACTIONS(3965), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3967), [sym_float_literal] = ACTIONS(3967), [sym__string] = ACTIONS(233), }, [1229] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4074), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4074), [sym_ternary_expression] = STATE(4074), [sym_call_expression] = STATE(4074), [sym_primary_expression] = STATE(4074), [sym__primary_expr] = STATE(4074), [sym_index_expression] = STATE(4074), [sym_assignment_expression] = STATE(4074), [sym_binary_expression] = STATE(4074), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4074), [sym_unary_expression] = STATE(4074), [sym__unary_expr] = STATE(4074), [sym_property_expression] = STATE(4074), [sym_cast_expression] = STATE(4074), [sym_delete_expression] = STATE(4074), [sym_throw_expression] = STATE(4074), [sym_assert_expression] = STATE(4074), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4074), [sym_new_expression] = STATE(4074), [sym_typeid_expression] = STATE(4074), [sym_is_expression] = STATE(4074), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4074), [sym_char_literal] = STATE(4074), [sym_array_literal] = STATE(4074), [sym_function_literal] = STATE(4074), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4074), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3969), [sym_false] = ACTIONS(3969), [sym_null] = ACTIONS(3969), [sym_super] = ACTIONS(3969), [sym_this] = ACTIONS(3969), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3971), [sym_float_literal] = ACTIONS(3971), [sym__string] = ACTIONS(233), }, [1230] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4164), [sym_ternary_expression] = STATE(4164), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4164), [sym_binary_expression] = STATE(4164), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1231] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4039), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4039), [sym_ternary_expression] = STATE(4039), [sym_call_expression] = STATE(4039), [sym_primary_expression] = STATE(4039), [sym__primary_expr] = STATE(4039), [sym_index_expression] = STATE(4039), [sym_assignment_expression] = STATE(4039), [sym_binary_expression] = STATE(4039), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4039), [sym_unary_expression] = STATE(4039), [sym__unary_expr] = STATE(4039), [sym_property_expression] = STATE(4039), [sym_cast_expression] = STATE(4039), [sym_delete_expression] = STATE(4039), [sym_throw_expression] = STATE(4039), [sym_assert_expression] = STATE(4039), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4039), [sym_new_expression] = STATE(4039), [sym_typeid_expression] = STATE(4039), [sym_is_expression] = STATE(4039), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4039), [sym_char_literal] = STATE(4039), [sym_array_literal] = STATE(4039), [sym_function_literal] = STATE(4039), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4039), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3973), [sym_false] = ACTIONS(3973), [sym_null] = ACTIONS(3973), [sym_super] = ACTIONS(3973), [sym_this] = ACTIONS(3973), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3975), [sym_float_literal] = ACTIONS(3975), [sym__string] = ACTIONS(3713), }, [1232] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4189), [sym_ternary_expression] = STATE(4189), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4189), [sym_binary_expression] = STATE(4189), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1233] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4290), [sym_ternary_expression] = STATE(4290), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4290), [sym_binary_expression] = STATE(4290), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1234] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4073), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4073), [sym_ternary_expression] = STATE(4073), [sym_call_expression] = STATE(4073), [sym_primary_expression] = STATE(4073), [sym__primary_expr] = STATE(4073), [sym_index_expression] = STATE(4073), [sym_assignment_expression] = STATE(4073), [sym_binary_expression] = STATE(4073), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4073), [sym_unary_expression] = STATE(4073), [sym__unary_expr] = STATE(4073), [sym_property_expression] = STATE(4073), [sym_cast_expression] = STATE(4073), [sym_delete_expression] = STATE(4073), [sym_throw_expression] = STATE(4073), [sym_assert_expression] = STATE(4073), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4073), [sym_new_expression] = STATE(4073), [sym_typeid_expression] = STATE(4073), [sym_is_expression] = STATE(4073), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4073), [sym_char_literal] = STATE(4073), [sym_array_literal] = STATE(4073), [sym_function_literal] = STATE(4073), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4073), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3977), [sym_false] = ACTIONS(3977), [sym_null] = ACTIONS(3977), [sym_super] = ACTIONS(3977), [sym_this] = ACTIONS(3977), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3979), [sym_float_literal] = ACTIONS(3979), [sym__string] = ACTIONS(233), }, [1235] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4072), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4072), [sym_ternary_expression] = STATE(4072), [sym_call_expression] = STATE(4072), [sym_primary_expression] = STATE(4072), [sym__primary_expr] = STATE(4072), [sym_index_expression] = STATE(4072), [sym_assignment_expression] = STATE(4072), [sym_binary_expression] = STATE(4072), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4072), [sym_unary_expression] = STATE(4072), [sym__unary_expr] = STATE(4072), [sym_property_expression] = STATE(4072), [sym_cast_expression] = STATE(4072), [sym_delete_expression] = STATE(4072), [sym_throw_expression] = STATE(4072), [sym_assert_expression] = STATE(4072), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4072), [sym_new_expression] = STATE(4072), [sym_typeid_expression] = STATE(4072), [sym_is_expression] = STATE(4072), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4072), [sym_char_literal] = STATE(4072), [sym_array_literal] = STATE(4072), [sym_function_literal] = STATE(4072), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4072), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3981), [sym_false] = ACTIONS(3981), [sym_null] = ACTIONS(3981), [sym_super] = ACTIONS(3981), [sym_this] = ACTIONS(3981), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3983), [sym_float_literal] = ACTIONS(3983), [sym__string] = ACTIONS(233), }, [1236] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4069), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4069), [sym_ternary_expression] = STATE(4069), [sym_call_expression] = STATE(4069), [sym_primary_expression] = STATE(4069), [sym__primary_expr] = STATE(4069), [sym_index_expression] = STATE(4069), [sym_assignment_expression] = STATE(4069), [sym_binary_expression] = STATE(4069), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4069), [sym_unary_expression] = STATE(4069), [sym__unary_expr] = STATE(4069), [sym_property_expression] = STATE(4069), [sym_cast_expression] = STATE(4069), [sym_delete_expression] = STATE(4069), [sym_throw_expression] = STATE(4069), [sym_assert_expression] = STATE(4069), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4069), [sym_new_expression] = STATE(4069), [sym_typeid_expression] = STATE(4069), [sym_is_expression] = STATE(4069), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4069), [sym_char_literal] = STATE(4069), [sym_array_literal] = STATE(4069), [sym_function_literal] = STATE(4069), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4069), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3985), [sym_false] = ACTIONS(3985), [sym_null] = ACTIONS(3985), [sym_super] = ACTIONS(3985), [sym_this] = ACTIONS(3985), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3987), [sym_float_literal] = ACTIONS(3987), [sym__string] = ACTIONS(233), }, [1237] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4107), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4107), [sym_ternary_expression] = STATE(4107), [sym_call_expression] = STATE(4107), [sym_primary_expression] = STATE(4107), [sym__primary_expr] = STATE(4107), [sym_index_expression] = STATE(4107), [sym_assignment_expression] = STATE(4107), [sym_binary_expression] = STATE(4107), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4107), [sym_unary_expression] = STATE(4107), [sym__unary_expr] = STATE(4107), [sym_property_expression] = STATE(4107), [sym_cast_expression] = STATE(4107), [sym_delete_expression] = STATE(4107), [sym_throw_expression] = STATE(4107), [sym_assert_expression] = STATE(4107), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4107), [sym_new_expression] = STATE(4107), [sym_typeid_expression] = STATE(4107), [sym_is_expression] = STATE(4107), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4107), [sym_char_literal] = STATE(4107), [sym_array_literal] = STATE(4107), [sym_function_literal] = STATE(4107), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4107), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3989), [sym_false] = ACTIONS(3989), [sym_null] = ACTIONS(3989), [sym_super] = ACTIONS(3989), [sym_this] = ACTIONS(3989), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3991), [sym_float_literal] = ACTIONS(3991), [sym__string] = ACTIONS(3327), }, [1238] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3905), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3905), [sym_ternary_expression] = STATE(3905), [sym_call_expression] = STATE(3905), [sym_primary_expression] = STATE(3905), [sym__primary_expr] = STATE(3905), [sym_index_expression] = STATE(3905), [sym_assignment_expression] = STATE(3905), [sym_binary_expression] = STATE(3905), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3905), [sym_unary_expression] = STATE(3905), [sym__unary_expr] = STATE(3905), [sym_property_expression] = STATE(3905), [sym_cast_expression] = STATE(3905), [sym_delete_expression] = STATE(3905), [sym_throw_expression] = STATE(3905), [sym_assert_expression] = STATE(3905), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3905), [sym_new_expression] = STATE(3905), [sym_typeid_expression] = STATE(3905), [sym_is_expression] = STATE(3905), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3905), [sym_char_literal] = STATE(3905), [sym_array_literal] = STATE(3905), [sym_function_literal] = STATE(3905), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3905), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(3993), [sym_false] = ACTIONS(3993), [sym_null] = ACTIONS(3993), [sym_super] = ACTIONS(3993), [sym_this] = ACTIONS(3993), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3995), [sym_float_literal] = ACTIONS(3995), [sym__string] = ACTIONS(233), }, [1239] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4114), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4114), [sym_ternary_expression] = STATE(4114), [sym_call_expression] = STATE(4114), [sym_primary_expression] = STATE(4114), [sym__primary_expr] = STATE(4114), [sym_index_expression] = STATE(4114), [sym_assignment_expression] = STATE(4114), [sym_binary_expression] = STATE(4114), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4114), [sym_unary_expression] = STATE(4114), [sym__unary_expr] = STATE(4114), [sym_property_expression] = STATE(4114), [sym_cast_expression] = STATE(4114), [sym_delete_expression] = STATE(4114), [sym_throw_expression] = STATE(4114), [sym_assert_expression] = STATE(4114), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4114), [sym_new_expression] = STATE(4114), [sym_typeid_expression] = STATE(4114), [sym_is_expression] = STATE(4114), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4114), [sym_char_literal] = STATE(4114), [sym_array_literal] = STATE(4114), [sym_function_literal] = STATE(4114), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4114), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3997), [sym_false] = ACTIONS(3997), [sym_null] = ACTIONS(3997), [sym_super] = ACTIONS(3997), [sym_this] = ACTIONS(3997), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3999), [sym_float_literal] = ACTIONS(3999), [sym__string] = ACTIONS(3327), }, [1240] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4115), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4115), [sym_ternary_expression] = STATE(4115), [sym_call_expression] = STATE(4115), [sym_primary_expression] = STATE(4115), [sym__primary_expr] = STATE(4115), [sym_index_expression] = STATE(4115), [sym_assignment_expression] = STATE(4115), [sym_binary_expression] = STATE(4115), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4115), [sym_unary_expression] = STATE(4115), [sym__unary_expr] = STATE(4115), [sym_property_expression] = STATE(4115), [sym_cast_expression] = STATE(4115), [sym_delete_expression] = STATE(4115), [sym_throw_expression] = STATE(4115), [sym_assert_expression] = STATE(4115), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4115), [sym_new_expression] = STATE(4115), [sym_typeid_expression] = STATE(4115), [sym_is_expression] = STATE(4115), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4115), [sym_char_literal] = STATE(4115), [sym_array_literal] = STATE(4115), [sym_function_literal] = STATE(4115), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4115), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4001), [sym_false] = ACTIONS(4001), [sym_null] = ACTIONS(4001), [sym_super] = ACTIONS(4001), [sym_this] = ACTIONS(4001), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4003), [sym_float_literal] = ACTIONS(4003), [sym__string] = ACTIONS(3327), }, [1241] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4043), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4043), [sym_ternary_expression] = STATE(4043), [sym_call_expression] = STATE(4043), [sym_primary_expression] = STATE(4043), [sym__primary_expr] = STATE(4043), [sym_index_expression] = STATE(4043), [sym_assignment_expression] = STATE(4043), [sym_binary_expression] = STATE(4043), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4043), [sym_unary_expression] = STATE(4043), [sym__unary_expr] = STATE(4043), [sym_property_expression] = STATE(4043), [sym_cast_expression] = STATE(4043), [sym_delete_expression] = STATE(4043), [sym_throw_expression] = STATE(4043), [sym_assert_expression] = STATE(4043), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4043), [sym_new_expression] = STATE(4043), [sym_typeid_expression] = STATE(4043), [sym_is_expression] = STATE(4043), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4043), [sym_char_literal] = STATE(4043), [sym_array_literal] = STATE(4043), [sym_function_literal] = STATE(4043), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4043), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4005), [sym_false] = ACTIONS(4005), [sym_null] = ACTIONS(4005), [sym_super] = ACTIONS(4005), [sym_this] = ACTIONS(4005), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4007), [sym_float_literal] = ACTIONS(4007), [sym__string] = ACTIONS(3327), }, [1242] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4061), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4061), [sym_ternary_expression] = STATE(4061), [sym_call_expression] = STATE(4061), [sym_primary_expression] = STATE(4061), [sym__primary_expr] = STATE(4061), [sym_index_expression] = STATE(4061), [sym_assignment_expression] = STATE(4061), [sym_binary_expression] = STATE(4061), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4061), [sym_unary_expression] = STATE(4061), [sym__unary_expr] = STATE(4061), [sym_property_expression] = STATE(4061), [sym_cast_expression] = STATE(4061), [sym_delete_expression] = STATE(4061), [sym_throw_expression] = STATE(4061), [sym_assert_expression] = STATE(4061), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4061), [sym_new_expression] = STATE(4061), [sym_typeid_expression] = STATE(4061), [sym_is_expression] = STATE(4061), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4061), [sym_char_literal] = STATE(4061), [sym_array_literal] = STATE(4061), [sym_function_literal] = STATE(4061), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4061), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4009), [sym_false] = ACTIONS(4009), [sym_null] = ACTIONS(4009), [sym_super] = ACTIONS(4009), [sym_this] = ACTIONS(4009), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4011), [sym_float_literal] = ACTIONS(4011), [sym__string] = ACTIONS(233), }, [1243] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4057), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4057), [sym_ternary_expression] = STATE(4057), [sym_call_expression] = STATE(4057), [sym_primary_expression] = STATE(4057), [sym__primary_expr] = STATE(4057), [sym_index_expression] = STATE(4057), [sym_assignment_expression] = STATE(4057), [sym_binary_expression] = STATE(4057), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4057), [sym_unary_expression] = STATE(4057), [sym__unary_expr] = STATE(4057), [sym_property_expression] = STATE(4057), [sym_cast_expression] = STATE(4057), [sym_delete_expression] = STATE(4057), [sym_throw_expression] = STATE(4057), [sym_assert_expression] = STATE(4057), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4057), [sym_new_expression] = STATE(4057), [sym_typeid_expression] = STATE(4057), [sym_is_expression] = STATE(4057), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4057), [sym_char_literal] = STATE(4057), [sym_array_literal] = STATE(4057), [sym_function_literal] = STATE(4057), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4057), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4013), [sym_false] = ACTIONS(4013), [sym_null] = ACTIONS(4013), [sym_super] = ACTIONS(4013), [sym_this] = ACTIONS(4013), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4015), [sym_float_literal] = ACTIONS(4015), [sym__string] = ACTIONS(233), }, [1244] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4294), [sym_ternary_expression] = STATE(4294), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4294), [sym_binary_expression] = STATE(4294), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1245] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4090), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4090), [sym_ternary_expression] = STATE(4090), [sym_call_expression] = STATE(4090), [sym_primary_expression] = STATE(4090), [sym__primary_expr] = STATE(4090), [sym_index_expression] = STATE(4090), [sym_assignment_expression] = STATE(4090), [sym_binary_expression] = STATE(4090), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4090), [sym_unary_expression] = STATE(4090), [sym__unary_expr] = STATE(4090), [sym_property_expression] = STATE(4090), [sym_cast_expression] = STATE(4090), [sym_delete_expression] = STATE(4090), [sym_throw_expression] = STATE(4090), [sym_assert_expression] = STATE(4090), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(4090), [sym_new_expression] = STATE(4090), [sym_typeid_expression] = STATE(4090), [sym_is_expression] = STATE(4090), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4090), [sym_char_literal] = STATE(4090), [sym_array_literal] = STATE(4090), [sym_function_literal] = STATE(4090), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(4090), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4017), [sym_false] = ACTIONS(4017), [sym_null] = ACTIONS(4017), [sym_super] = ACTIONS(4017), [sym_this] = ACTIONS(4017), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4019), [sym_float_literal] = ACTIONS(4019), [sym__string] = ACTIONS(3327), }, [1246] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4124), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4124), [sym_ternary_expression] = STATE(4124), [sym_call_expression] = STATE(4124), [sym_primary_expression] = STATE(4124), [sym__primary_expr] = STATE(4124), [sym_index_expression] = STATE(4124), [sym_assignment_expression] = STATE(4124), [sym_binary_expression] = STATE(4124), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4124), [sym_unary_expression] = STATE(4124), [sym__unary_expr] = STATE(4124), [sym_property_expression] = STATE(4124), [sym_cast_expression] = STATE(4124), [sym_delete_expression] = STATE(4124), [sym_throw_expression] = STATE(4124), [sym_assert_expression] = STATE(4124), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4124), [sym_new_expression] = STATE(4124), [sym_typeid_expression] = STATE(4124), [sym_is_expression] = STATE(4124), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4124), [sym_char_literal] = STATE(4124), [sym_array_literal] = STATE(4124), [sym_function_literal] = STATE(4124), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4124), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4021), [sym_false] = ACTIONS(4021), [sym_null] = ACTIONS(4021), [sym_super] = ACTIONS(4021), [sym_this] = ACTIONS(4021), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4023), [sym_float_literal] = ACTIONS(4023), [sym__string] = ACTIONS(233), }, [1247] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4125), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4125), [sym_ternary_expression] = STATE(4125), [sym_call_expression] = STATE(4125), [sym_primary_expression] = STATE(4125), [sym__primary_expr] = STATE(4125), [sym_index_expression] = STATE(4125), [sym_assignment_expression] = STATE(4125), [sym_binary_expression] = STATE(4125), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4125), [sym_unary_expression] = STATE(4125), [sym__unary_expr] = STATE(4125), [sym_property_expression] = STATE(4125), [sym_cast_expression] = STATE(4125), [sym_delete_expression] = STATE(4125), [sym_throw_expression] = STATE(4125), [sym_assert_expression] = STATE(4125), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4125), [sym_new_expression] = STATE(4125), [sym_typeid_expression] = STATE(4125), [sym_is_expression] = STATE(4125), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4125), [sym_char_literal] = STATE(4125), [sym_array_literal] = STATE(4125), [sym_function_literal] = STATE(4125), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4125), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4025), [sym_false] = ACTIONS(4025), [sym_null] = ACTIONS(4025), [sym_super] = ACTIONS(4025), [sym_this] = ACTIONS(4025), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4027), [sym_float_literal] = ACTIONS(4027), [sym__string] = ACTIONS(233), }, [1248] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4056), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4056), [sym_ternary_expression] = STATE(4056), [sym_call_expression] = STATE(4056), [sym_primary_expression] = STATE(4056), [sym__primary_expr] = STATE(4056), [sym_index_expression] = STATE(4056), [sym_assignment_expression] = STATE(4056), [sym_binary_expression] = STATE(4056), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4056), [sym_unary_expression] = STATE(4056), [sym__unary_expr] = STATE(4056), [sym_property_expression] = STATE(4056), [sym_cast_expression] = STATE(4056), [sym_delete_expression] = STATE(4056), [sym_throw_expression] = STATE(4056), [sym_assert_expression] = STATE(4056), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4056), [sym_new_expression] = STATE(4056), [sym_typeid_expression] = STATE(4056), [sym_is_expression] = STATE(4056), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4056), [sym_char_literal] = STATE(4056), [sym_array_literal] = STATE(4056), [sym_function_literal] = STATE(4056), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4056), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4029), [sym_false] = ACTIONS(4029), [sym_null] = ACTIONS(4029), [sym_super] = ACTIONS(4029), [sym_this] = ACTIONS(4029), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4031), [sym_float_literal] = ACTIONS(4031), [sym__string] = ACTIONS(233), }, [1249] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4156), [sym_ternary_expression] = STATE(4156), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4156), [sym_binary_expression] = STATE(4156), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1250] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4251), [sym_ternary_expression] = STATE(4251), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4251), [sym_binary_expression] = STATE(4251), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1251] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4126), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4126), [sym_ternary_expression] = STATE(4126), [sym_call_expression] = STATE(4126), [sym_primary_expression] = STATE(4126), [sym__primary_expr] = STATE(4126), [sym_index_expression] = STATE(4126), [sym_assignment_expression] = STATE(4126), [sym_binary_expression] = STATE(4126), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4126), [sym_unary_expression] = STATE(4126), [sym__unary_expr] = STATE(4126), [sym_property_expression] = STATE(4126), [sym_cast_expression] = STATE(4126), [sym_delete_expression] = STATE(4126), [sym_throw_expression] = STATE(4126), [sym_assert_expression] = STATE(4126), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4126), [sym_new_expression] = STATE(4126), [sym_typeid_expression] = STATE(4126), [sym_is_expression] = STATE(4126), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4126), [sym_char_literal] = STATE(4126), [sym_array_literal] = STATE(4126), [sym_function_literal] = STATE(4126), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4126), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4033), [sym_false] = ACTIONS(4033), [sym_null] = ACTIONS(4033), [sym_super] = ACTIONS(4033), [sym_this] = ACTIONS(4033), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4035), [sym_float_literal] = ACTIONS(4035), [sym__string] = ACTIONS(233), }, [1252] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5612), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4277), [sym_ternary_expression] = STATE(4277), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4277), [sym_binary_expression] = STATE(4277), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3237), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1253] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4127), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym__expr] = STATE(4127), [sym_ternary_expression] = STATE(4127), [sym_call_expression] = STATE(4127), [sym_primary_expression] = STATE(4127), [sym__primary_expr] = STATE(4127), [sym_index_expression] = STATE(4127), [sym_assignment_expression] = STATE(4127), [sym_binary_expression] = STATE(4127), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4127), [sym_unary_expression] = STATE(4127), [sym__unary_expr] = STATE(4127), [sym_property_expression] = STATE(4127), [sym_cast_expression] = STATE(4127), [sym_delete_expression] = STATE(4127), [sym_throw_expression] = STATE(4127), [sym_assert_expression] = STATE(4127), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(4127), [sym_new_expression] = STATE(4127), [sym_typeid_expression] = STATE(4127), [sym_is_expression] = STATE(4127), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4127), [sym_char_literal] = STATE(4127), [sym_array_literal] = STATE(4127), [sym_function_literal] = STATE(4127), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(4127), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4037), [sym_false] = ACTIONS(4037), [sym_null] = ACTIONS(4037), [sym_super] = ACTIONS(4037), [sym_this] = ACTIONS(4037), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4039), [sym_float_literal] = ACTIONS(4039), [sym__string] = ACTIONS(233), }, [1254] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4147), [sym_ternary_expression] = STATE(4147), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4147), [sym_binary_expression] = STATE(4147), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1255] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4146), [sym_ternary_expression] = STATE(4146), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4146), [sym_binary_expression] = STATE(4146), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1256] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4276), [sym_ternary_expression] = STATE(4276), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4276), [sym_binary_expression] = STATE(4276), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1257] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3977), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4157), [sym_ternary_expression] = STATE(4157), [sym_call_expression] = STATE(3977), [sym_primary_expression] = STATE(3977), [sym__primary_expr] = STATE(3977), [sym_index_expression] = STATE(3977), [sym_assignment_expression] = STATE(4157), [sym_binary_expression] = STATE(4157), [sym_logical_or_expression] = STATE(4188), [sym_logical_and_expression] = STATE(4188), [sym_or_expression] = STATE(4188), [sym_xor_expression] = STATE(4188), [sym_and_expression] = STATE(4188), [sym_equal_expression] = STATE(4188), [sym_rel_expression] = STATE(4188), [sym_identity_expression] = STATE(4188), [sym_add_expression] = STATE(4188), [sym_mul_expression] = STATE(4188), [sym_shift_expression] = STATE(4188), [sym_power_expression] = STATE(4188), [sym_postfix_expression] = STATE(3977), [sym_unary_expression] = STATE(3977), [sym__unary_expr] = STATE(3977), [sym_property_expression] = STATE(3977), [sym_cast_expression] = STATE(3977), [sym_delete_expression] = STATE(3977), [sym_throw_expression] = STATE(3977), [sym_assert_expression] = STATE(3977), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3977), [sym_new_expression] = STATE(3977), [sym_typeid_expression] = STATE(3977), [sym_is_expression] = STATE(3977), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3977), [sym_char_literal] = STATE(3977), [sym_array_literal] = STATE(3977), [sym_function_literal] = STATE(3977), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3977), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(3661), [sym_false] = ACTIONS(3661), [sym_null] = ACTIONS(3661), [sym_super] = ACTIONS(3661), [sym_this] = ACTIONS(3661), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3711), [sym_float_literal] = ACTIONS(3711), [sym__string] = ACTIONS(3713), }, [1258] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4256), [sym_ternary_expression] = STATE(4256), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4256), [sym_binary_expression] = STATE(4256), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1259] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3907), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym__expr] = STATE(4226), [sym_ternary_expression] = STATE(4226), [sym_call_expression] = STATE(3907), [sym_primary_expression] = STATE(3907), [sym__primary_expr] = STATE(3907), [sym_index_expression] = STATE(3907), [sym_assignment_expression] = STATE(4226), [sym_binary_expression] = STATE(4226), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3907), [sym_unary_expression] = STATE(3907), [sym__unary_expr] = STATE(3907), [sym_property_expression] = STATE(3907), [sym_cast_expression] = STATE(3907), [sym_delete_expression] = STATE(3907), [sym_throw_expression] = STATE(3907), [sym_assert_expression] = STATE(3907), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3907), [sym_new_expression] = STATE(3907), [sym_typeid_expression] = STATE(3907), [sym_is_expression] = STATE(3907), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3907), [sym_char_literal] = STATE(3907), [sym_array_literal] = STATE(3907), [sym_function_literal] = STATE(3907), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3907), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(3269), [sym_false] = ACTIONS(3269), [sym_null] = ACTIONS(3269), [sym_super] = ACTIONS(3269), [sym_this] = ACTIONS(3269), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3325), [sym_float_literal] = ACTIONS(3325), [sym__string] = ACTIONS(3327), }, [1260] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(5486), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(5108), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(5108), [sym_typeof_expression] = STATE(3963), [sym__expr] = STATE(4243), [sym_ternary_expression] = STATE(4243), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4243), [sym_binary_expression] = STATE(4243), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3947), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3950), [sym_traits_expression] = STATE(3947), [aux_sym_type_repeat1] = STATE(3783), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3915), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3917), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(3919), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1261] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(4004), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym__expr] = STATE(4004), [sym_ternary_expression] = STATE(4004), [sym_call_expression] = STATE(4004), [sym_primary_expression] = STATE(4004), [sym__primary_expr] = STATE(4004), [sym_index_expression] = STATE(4004), [sym_assignment_expression] = STATE(4004), [sym_binary_expression] = STATE(4004), [sym_logical_or_expression] = STATE(4075), [sym_logical_and_expression] = STATE(4075), [sym_or_expression] = STATE(4075), [sym_xor_expression] = STATE(4075), [sym_and_expression] = STATE(4075), [sym_equal_expression] = STATE(4075), [sym_rel_expression] = STATE(4075), [sym_identity_expression] = STATE(4075), [sym_add_expression] = STATE(4075), [sym_mul_expression] = STATE(4075), [sym_shift_expression] = STATE(4075), [sym_power_expression] = STATE(4075), [sym_postfix_expression] = STATE(4004), [sym_unary_expression] = STATE(4004), [sym__unary_expr] = STATE(4004), [sym_property_expression] = STATE(4004), [sym_cast_expression] = STATE(4004), [sym_delete_expression] = STATE(4004), [sym_throw_expression] = STATE(4004), [sym_assert_expression] = STATE(4004), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(4004), [sym_new_expression] = STATE(4004), [sym_typeid_expression] = STATE(4004), [sym_is_expression] = STATE(4004), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(4004), [sym_char_literal] = STATE(4004), [sym_array_literal] = STATE(4004), [sym_function_literal] = STATE(4004), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(4004), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4041), [sym_false] = ACTIONS(4041), [sym_null] = ACTIONS(4041), [sym_super] = ACTIONS(4041), [sym_this] = ACTIONS(4041), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4043), [sym_float_literal] = ACTIONS(4043), [sym__string] = ACTIONS(3713), }, [1262] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4100), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4100), [sym_ternary_expression] = STATE(4100), [sym_call_expression] = STATE(4100), [sym_primary_expression] = STATE(4100), [sym__primary_expr] = STATE(4100), [sym_index_expression] = STATE(4100), [sym_assignment_expression] = STATE(4100), [sym_binary_expression] = STATE(4100), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4100), [sym_unary_expression] = STATE(4100), [sym__unary_expr] = STATE(4100), [sym_property_expression] = STATE(4100), [sym_cast_expression] = STATE(4100), [sym_delete_expression] = STATE(4100), [sym_throw_expression] = STATE(4100), [sym_assert_expression] = STATE(4100), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4100), [sym_new_expression] = STATE(4100), [sym_typeid_expression] = STATE(4100), [sym_is_expression] = STATE(4100), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4100), [sym_char_literal] = STATE(4100), [sym_array_literal] = STATE(4100), [sym_function_literal] = STATE(4100), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4100), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4045), [sym_false] = ACTIONS(4045), [sym_null] = ACTIONS(4045), [sym_super] = ACTIONS(4045), [sym_this] = ACTIONS(4045), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4047), [sym_float_literal] = ACTIONS(4047), [sym__string] = ACTIONS(3327), }, [1263] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4106), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4106), [sym_ternary_expression] = STATE(4106), [sym_call_expression] = STATE(4106), [sym_primary_expression] = STATE(4106), [sym__primary_expr] = STATE(4106), [sym_index_expression] = STATE(4106), [sym_assignment_expression] = STATE(4106), [sym_binary_expression] = STATE(4106), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4106), [sym_unary_expression] = STATE(4106), [sym__unary_expr] = STATE(4106), [sym_property_expression] = STATE(4106), [sym_cast_expression] = STATE(4106), [sym_delete_expression] = STATE(4106), [sym_throw_expression] = STATE(4106), [sym_assert_expression] = STATE(4106), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4106), [sym_new_expression] = STATE(4106), [sym_typeid_expression] = STATE(4106), [sym_is_expression] = STATE(4106), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4106), [sym_char_literal] = STATE(4106), [sym_array_literal] = STATE(4106), [sym_function_literal] = STATE(4106), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4106), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4049), [sym_false] = ACTIONS(4049), [sym_null] = ACTIONS(4049), [sym_super] = ACTIONS(4049), [sym_this] = ACTIONS(4049), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4051), [sym_float_literal] = ACTIONS(4051), [sym__string] = ACTIONS(3327), }, [1264] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4281), [sym_ternary_expression] = STATE(4281), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4281), [sym_binary_expression] = STATE(4281), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1265] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4273), [sym_ternary_expression] = STATE(4273), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4273), [sym_binary_expression] = STATE(4273), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1266] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3687), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(4265), [sym_ternary_expression] = STATE(4265), [sym_call_expression] = STATE(3687), [sym_primary_expression] = STATE(3687), [sym__primary_expr] = STATE(3687), [sym_index_expression] = STATE(3687), [sym_assignment_expression] = STATE(4265), [sym_binary_expression] = STATE(4265), [sym_logical_or_expression] = STATE(4103), [sym_logical_and_expression] = STATE(4103), [sym_or_expression] = STATE(4103), [sym_xor_expression] = STATE(4103), [sym_and_expression] = STATE(4103), [sym_equal_expression] = STATE(4103), [sym_rel_expression] = STATE(4103), [sym_identity_expression] = STATE(4103), [sym_add_expression] = STATE(4103), [sym_mul_expression] = STATE(4103), [sym_shift_expression] = STATE(4103), [sym_power_expression] = STATE(4103), [sym_postfix_expression] = STATE(3687), [sym_unary_expression] = STATE(3687), [sym__unary_expr] = STATE(3687), [sym_property_expression] = STATE(3687), [sym_cast_expression] = STATE(3687), [sym_delete_expression] = STATE(3687), [sym_throw_expression] = STATE(3687), [sym_assert_expression] = STATE(3687), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3687), [sym_new_expression] = STATE(3687), [sym_typeid_expression] = STATE(3687), [sym_is_expression] = STATE(3687), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3687), [sym_char_literal] = STATE(3687), [sym_array_literal] = STATE(3687), [sym_function_literal] = STATE(3687), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3687), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(105), [sym_false] = ACTIONS(105), [sym_null] = ACTIONS(105), [sym_super] = ACTIONS(105), [sym_this] = ACTIONS(105), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(231), [sym_float_literal] = ACTIONS(231), [sym__string] = ACTIONS(233), }, [1267] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4097), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4097), [sym_ternary_expression] = STATE(4097), [sym_call_expression] = STATE(4097), [sym_primary_expression] = STATE(4097), [sym__primary_expr] = STATE(4097), [sym_index_expression] = STATE(4097), [sym_assignment_expression] = STATE(4097), [sym_binary_expression] = STATE(4097), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4097), [sym_unary_expression] = STATE(4097), [sym__unary_expr] = STATE(4097), [sym_property_expression] = STATE(4097), [sym_cast_expression] = STATE(4097), [sym_delete_expression] = STATE(4097), [sym_throw_expression] = STATE(4097), [sym_assert_expression] = STATE(4097), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4097), [sym_new_expression] = STATE(4097), [sym_typeid_expression] = STATE(4097), [sym_is_expression] = STATE(4097), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4097), [sym_char_literal] = STATE(4097), [sym_array_literal] = STATE(4097), [sym_function_literal] = STATE(4097), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4097), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4053), [sym_false] = ACTIONS(4053), [sym_null] = ACTIONS(4053), [sym_super] = ACTIONS(4053), [sym_this] = ACTIONS(4053), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4055), [sym_float_literal] = ACTIONS(4055), [sym__string] = ACTIONS(3327), }, [1268] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4094), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4094), [sym_ternary_expression] = STATE(4094), [sym_call_expression] = STATE(4094), [sym_primary_expression] = STATE(4094), [sym__primary_expr] = STATE(4094), [sym_index_expression] = STATE(4094), [sym_assignment_expression] = STATE(4094), [sym_binary_expression] = STATE(4094), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4094), [sym_unary_expression] = STATE(4094), [sym__unary_expr] = STATE(4094), [sym_property_expression] = STATE(4094), [sym_cast_expression] = STATE(4094), [sym_delete_expression] = STATE(4094), [sym_throw_expression] = STATE(4094), [sym_assert_expression] = STATE(4094), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4094), [sym_new_expression] = STATE(4094), [sym_typeid_expression] = STATE(4094), [sym_is_expression] = STATE(4094), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4094), [sym_char_literal] = STATE(4094), [sym_array_literal] = STATE(4094), [sym_function_literal] = STATE(4094), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4094), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4057), [sym_false] = ACTIONS(4057), [sym_null] = ACTIONS(4057), [sym_super] = ACTIONS(4057), [sym_this] = ACTIONS(4057), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4059), [sym_float_literal] = ACTIONS(4059), [sym__string] = ACTIONS(233), }, [1269] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3899), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3899), [sym_ternary_expression] = STATE(3899), [sym_call_expression] = STATE(3899), [sym_primary_expression] = STATE(3899), [sym__primary_expr] = STATE(3899), [sym_index_expression] = STATE(3899), [sym_assignment_expression] = STATE(3899), [sym_binary_expression] = STATE(3899), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3899), [sym_unary_expression] = STATE(3899), [sym__unary_expr] = STATE(3899), [sym_property_expression] = STATE(3899), [sym_cast_expression] = STATE(3899), [sym_delete_expression] = STATE(3899), [sym_throw_expression] = STATE(3899), [sym_assert_expression] = STATE(3899), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3899), [sym_new_expression] = STATE(3899), [sym_typeid_expression] = STATE(3899), [sym_is_expression] = STATE(3899), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3899), [sym_char_literal] = STATE(3899), [sym_array_literal] = STATE(3899), [sym_function_literal] = STATE(3899), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3899), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4061), [sym_false] = ACTIONS(4061), [sym_null] = ACTIONS(4061), [sym_super] = ACTIONS(4061), [sym_this] = ACTIONS(4061), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4063), [sym_float_literal] = ACTIONS(4063), [sym__string] = ACTIONS(233), }, [1270] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4099), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4099), [sym_ternary_expression] = STATE(4099), [sym_call_expression] = STATE(4099), [sym_primary_expression] = STATE(4099), [sym__primary_expr] = STATE(4099), [sym_index_expression] = STATE(4099), [sym_assignment_expression] = STATE(4099), [sym_binary_expression] = STATE(4099), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4099), [sym_unary_expression] = STATE(4099), [sym__unary_expr] = STATE(4099), [sym_property_expression] = STATE(4099), [sym_cast_expression] = STATE(4099), [sym_delete_expression] = STATE(4099), [sym_throw_expression] = STATE(4099), [sym_assert_expression] = STATE(4099), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4099), [sym_new_expression] = STATE(4099), [sym_typeid_expression] = STATE(4099), [sym_is_expression] = STATE(4099), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4099), [sym_char_literal] = STATE(4099), [sym_array_literal] = STATE(4099), [sym_function_literal] = STATE(4099), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4099), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4065), [sym_false] = ACTIONS(4065), [sym_null] = ACTIONS(4065), [sym_super] = ACTIONS(4065), [sym_this] = ACTIONS(4065), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4067), [sym_float_literal] = ACTIONS(4067), [sym__string] = ACTIONS(3327), }, [1271] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4108), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4108), [sym_ternary_expression] = STATE(4108), [sym_call_expression] = STATE(4108), [sym_primary_expression] = STATE(4108), [sym__primary_expr] = STATE(4108), [sym_index_expression] = STATE(4108), [sym_assignment_expression] = STATE(4108), [sym_binary_expression] = STATE(4108), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4108), [sym_unary_expression] = STATE(4108), [sym__unary_expr] = STATE(4108), [sym_property_expression] = STATE(4108), [sym_cast_expression] = STATE(4108), [sym_delete_expression] = STATE(4108), [sym_throw_expression] = STATE(4108), [sym_assert_expression] = STATE(4108), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4108), [sym_new_expression] = STATE(4108), [sym_typeid_expression] = STATE(4108), [sym_is_expression] = STATE(4108), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4108), [sym_char_literal] = STATE(4108), [sym_array_literal] = STATE(4108), [sym_function_literal] = STATE(4108), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4108), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4069), [sym_false] = ACTIONS(4069), [sym_null] = ACTIONS(4069), [sym_super] = ACTIONS(4069), [sym_this] = ACTIONS(4069), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4071), [sym_float_literal] = ACTIONS(4071), [sym__string] = ACTIONS(3327), }, [1272] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3898), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3898), [sym_ternary_expression] = STATE(3898), [sym_call_expression] = STATE(3898), [sym_primary_expression] = STATE(3898), [sym__primary_expr] = STATE(3898), [sym_index_expression] = STATE(3898), [sym_assignment_expression] = STATE(3898), [sym_binary_expression] = STATE(3898), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3898), [sym_unary_expression] = STATE(3898), [sym__unary_expr] = STATE(3898), [sym_property_expression] = STATE(3898), [sym_cast_expression] = STATE(3898), [sym_delete_expression] = STATE(3898), [sym_throw_expression] = STATE(3898), [sym_assert_expression] = STATE(3898), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3898), [sym_new_expression] = STATE(3898), [sym_typeid_expression] = STATE(3898), [sym_is_expression] = STATE(3898), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3898), [sym_char_literal] = STATE(3898), [sym_array_literal] = STATE(3898), [sym_function_literal] = STATE(3898), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3898), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4073), [sym_false] = ACTIONS(4073), [sym_null] = ACTIONS(4073), [sym_super] = ACTIONS(4073), [sym_this] = ACTIONS(4073), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4075), [sym_float_literal] = ACTIONS(4075), [sym__string] = ACTIONS(233), }, [1273] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3996), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(3996), [sym_ternary_expression] = STATE(3996), [sym_call_expression] = STATE(3996), [sym_primary_expression] = STATE(3996), [sym__primary_expr] = STATE(3996), [sym_index_expression] = STATE(3996), [sym_assignment_expression] = STATE(3996), [sym_binary_expression] = STATE(3996), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3996), [sym_unary_expression] = STATE(3996), [sym__unary_expr] = STATE(3996), [sym_property_expression] = STATE(3996), [sym_cast_expression] = STATE(3996), [sym_delete_expression] = STATE(3996), [sym_throw_expression] = STATE(3996), [sym_assert_expression] = STATE(3996), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3996), [sym_new_expression] = STATE(3996), [sym_typeid_expression] = STATE(3996), [sym_is_expression] = STATE(3996), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3996), [sym_char_literal] = STATE(3996), [sym_array_literal] = STATE(3996), [sym_function_literal] = STATE(3996), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3996), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4077), [sym_false] = ACTIONS(4077), [sym_null] = ACTIONS(4077), [sym_super] = ACTIONS(4077), [sym_this] = ACTIONS(4077), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4079), [sym_float_literal] = ACTIONS(4079), [sym__string] = ACTIONS(233), }, [1274] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4117), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4117), [sym_ternary_expression] = STATE(4117), [sym_call_expression] = STATE(4117), [sym_primary_expression] = STATE(4117), [sym__primary_expr] = STATE(4117), [sym_index_expression] = STATE(4117), [sym_assignment_expression] = STATE(4117), [sym_binary_expression] = STATE(4117), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4117), [sym_unary_expression] = STATE(4117), [sym__unary_expr] = STATE(4117), [sym_property_expression] = STATE(4117), [sym_cast_expression] = STATE(4117), [sym_delete_expression] = STATE(4117), [sym_throw_expression] = STATE(4117), [sym_assert_expression] = STATE(4117), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4117), [sym_new_expression] = STATE(4117), [sym_typeid_expression] = STATE(4117), [sym_is_expression] = STATE(4117), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4117), [sym_char_literal] = STATE(4117), [sym_array_literal] = STATE(4117), [sym_function_literal] = STATE(4117), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4117), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4081), [sym_false] = ACTIONS(4081), [sym_null] = ACTIONS(4081), [sym_super] = ACTIONS(4081), [sym_this] = ACTIONS(4081), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4083), [sym_float_literal] = ACTIONS(4083), [sym__string] = ACTIONS(3327), }, [1275] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3897), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3897), [sym_ternary_expression] = STATE(3897), [sym_call_expression] = STATE(3897), [sym_primary_expression] = STATE(3897), [sym__primary_expr] = STATE(3897), [sym_index_expression] = STATE(3897), [sym_assignment_expression] = STATE(3897), [sym_binary_expression] = STATE(3897), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3897), [sym_unary_expression] = STATE(3897), [sym__unary_expr] = STATE(3897), [sym_property_expression] = STATE(3897), [sym_cast_expression] = STATE(3897), [sym_delete_expression] = STATE(3897), [sym_throw_expression] = STATE(3897), [sym_assert_expression] = STATE(3897), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3897), [sym_new_expression] = STATE(3897), [sym_typeid_expression] = STATE(3897), [sym_is_expression] = STATE(3897), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3897), [sym_char_literal] = STATE(3897), [sym_array_literal] = STATE(3897), [sym_function_literal] = STATE(3897), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3897), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4085), [sym_false] = ACTIONS(4085), [sym_null] = ACTIONS(4085), [sym_super] = ACTIONS(4085), [sym_this] = ACTIONS(4085), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4087), [sym_float_literal] = ACTIONS(4087), [sym__string] = ACTIONS(233), }, [1276] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3895), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3895), [sym_ternary_expression] = STATE(3895), [sym_call_expression] = STATE(3895), [sym_primary_expression] = STATE(3895), [sym__primary_expr] = STATE(3895), [sym_index_expression] = STATE(3895), [sym_assignment_expression] = STATE(3895), [sym_binary_expression] = STATE(3895), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3895), [sym_unary_expression] = STATE(3895), [sym__unary_expr] = STATE(3895), [sym_property_expression] = STATE(3895), [sym_cast_expression] = STATE(3895), [sym_delete_expression] = STATE(3895), [sym_throw_expression] = STATE(3895), [sym_assert_expression] = STATE(3895), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3895), [sym_new_expression] = STATE(3895), [sym_typeid_expression] = STATE(3895), [sym_is_expression] = STATE(3895), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3895), [sym_char_literal] = STATE(3895), [sym_array_literal] = STATE(3895), [sym_function_literal] = STATE(3895), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3895), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4089), [sym_false] = ACTIONS(4089), [sym_null] = ACTIONS(4089), [sym_super] = ACTIONS(4089), [sym_this] = ACTIONS(4089), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4091), [sym_float_literal] = ACTIONS(4091), [sym__string] = ACTIONS(233), }, [1277] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3894), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3894), [sym_ternary_expression] = STATE(3894), [sym_call_expression] = STATE(3894), [sym_primary_expression] = STATE(3894), [sym__primary_expr] = STATE(3894), [sym_index_expression] = STATE(3894), [sym_assignment_expression] = STATE(3894), [sym_binary_expression] = STATE(3894), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3894), [sym_unary_expression] = STATE(3894), [sym__unary_expr] = STATE(3894), [sym_property_expression] = STATE(3894), [sym_cast_expression] = STATE(3894), [sym_delete_expression] = STATE(3894), [sym_throw_expression] = STATE(3894), [sym_assert_expression] = STATE(3894), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3894), [sym_new_expression] = STATE(3894), [sym_typeid_expression] = STATE(3894), [sym_is_expression] = STATE(3894), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3894), [sym_char_literal] = STATE(3894), [sym_array_literal] = STATE(3894), [sym_function_literal] = STATE(3894), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3894), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4093), [sym_false] = ACTIONS(4093), [sym_null] = ACTIONS(4093), [sym_super] = ACTIONS(4093), [sym_this] = ACTIONS(4093), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4095), [sym_float_literal] = ACTIONS(4095), [sym__string] = ACTIONS(233), }, [1278] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3892), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3892), [sym_ternary_expression] = STATE(3892), [sym_call_expression] = STATE(3892), [sym_primary_expression] = STATE(3892), [sym__primary_expr] = STATE(3892), [sym_index_expression] = STATE(3892), [sym_assignment_expression] = STATE(3892), [sym_binary_expression] = STATE(3892), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3892), [sym_unary_expression] = STATE(3892), [sym__unary_expr] = STATE(3892), [sym_property_expression] = STATE(3892), [sym_cast_expression] = STATE(3892), [sym_delete_expression] = STATE(3892), [sym_throw_expression] = STATE(3892), [sym_assert_expression] = STATE(3892), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3892), [sym_new_expression] = STATE(3892), [sym_typeid_expression] = STATE(3892), [sym_is_expression] = STATE(3892), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3892), [sym_char_literal] = STATE(3892), [sym_array_literal] = STATE(3892), [sym_function_literal] = STATE(3892), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3892), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4097), [sym_false] = ACTIONS(4097), [sym_null] = ACTIONS(4097), [sym_super] = ACTIONS(4097), [sym_this] = ACTIONS(4097), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4099), [sym_float_literal] = ACTIONS(4099), [sym__string] = ACTIONS(233), }, [1279] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4088), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4088), [sym_ternary_expression] = STATE(4088), [sym_call_expression] = STATE(4088), [sym_primary_expression] = STATE(4088), [sym__primary_expr] = STATE(4088), [sym_index_expression] = STATE(4088), [sym_assignment_expression] = STATE(4088), [sym_binary_expression] = STATE(4088), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4088), [sym_unary_expression] = STATE(4088), [sym__unary_expr] = STATE(4088), [sym_property_expression] = STATE(4088), [sym_cast_expression] = STATE(4088), [sym_delete_expression] = STATE(4088), [sym_throw_expression] = STATE(4088), [sym_assert_expression] = STATE(4088), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4088), [sym_new_expression] = STATE(4088), [sym_typeid_expression] = STATE(4088), [sym_is_expression] = STATE(4088), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4088), [sym_char_literal] = STATE(4088), [sym_array_literal] = STATE(4088), [sym_function_literal] = STATE(4088), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4088), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4101), [sym_false] = ACTIONS(4101), [sym_null] = ACTIONS(4101), [sym_super] = ACTIONS(4101), [sym_this] = ACTIONS(4101), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4103), [sym_float_literal] = ACTIONS(4103), [sym__string] = ACTIONS(233), }, [1280] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4105), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4105), [sym_ternary_expression] = STATE(4105), [sym_call_expression] = STATE(4105), [sym_primary_expression] = STATE(4105), [sym__primary_expr] = STATE(4105), [sym_index_expression] = STATE(4105), [sym_assignment_expression] = STATE(4105), [sym_binary_expression] = STATE(4105), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4105), [sym_unary_expression] = STATE(4105), [sym__unary_expr] = STATE(4105), [sym_property_expression] = STATE(4105), [sym_cast_expression] = STATE(4105), [sym_delete_expression] = STATE(4105), [sym_throw_expression] = STATE(4105), [sym_assert_expression] = STATE(4105), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4105), [sym_new_expression] = STATE(4105), [sym_typeid_expression] = STATE(4105), [sym_is_expression] = STATE(4105), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4105), [sym_char_literal] = STATE(4105), [sym_array_literal] = STATE(4105), [sym_function_literal] = STATE(4105), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4105), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4105), [sym_false] = ACTIONS(4105), [sym_null] = ACTIONS(4105), [sym_super] = ACTIONS(4105), [sym_this] = ACTIONS(4105), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4107), [sym_float_literal] = ACTIONS(4107), [sym__string] = ACTIONS(3327), }, [1281] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3875), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3875), [sym_ternary_expression] = STATE(3875), [sym_call_expression] = STATE(3875), [sym_primary_expression] = STATE(3875), [sym__primary_expr] = STATE(3875), [sym_index_expression] = STATE(3875), [sym_assignment_expression] = STATE(3875), [sym_binary_expression] = STATE(3875), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3875), [sym_unary_expression] = STATE(3875), [sym__unary_expr] = STATE(3875), [sym_property_expression] = STATE(3875), [sym_cast_expression] = STATE(3875), [sym_delete_expression] = STATE(3875), [sym_throw_expression] = STATE(3875), [sym_assert_expression] = STATE(3875), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3875), [sym_new_expression] = STATE(3875), [sym_typeid_expression] = STATE(3875), [sym_is_expression] = STATE(3875), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3875), [sym_char_literal] = STATE(3875), [sym_array_literal] = STATE(3875), [sym_function_literal] = STATE(3875), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3875), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4109), [sym_false] = ACTIONS(4109), [sym_null] = ACTIONS(4109), [sym_super] = ACTIONS(4109), [sym_this] = ACTIONS(4109), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4111), [sym_float_literal] = ACTIONS(4111), [sym__string] = ACTIONS(233), }, [1282] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(4101), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym__expr] = STATE(4101), [sym_ternary_expression] = STATE(4101), [sym_call_expression] = STATE(4101), [sym_primary_expression] = STATE(4101), [sym__primary_expr] = STATE(4101), [sym_index_expression] = STATE(4101), [sym_assignment_expression] = STATE(4101), [sym_binary_expression] = STATE(4101), [sym_logical_or_expression] = STATE(3983), [sym_logical_and_expression] = STATE(3983), [sym_or_expression] = STATE(3983), [sym_xor_expression] = STATE(3983), [sym_and_expression] = STATE(3983), [sym_equal_expression] = STATE(3983), [sym_rel_expression] = STATE(3983), [sym_identity_expression] = STATE(3983), [sym_add_expression] = STATE(3983), [sym_mul_expression] = STATE(3983), [sym_shift_expression] = STATE(3983), [sym_power_expression] = STATE(3983), [sym_postfix_expression] = STATE(4101), [sym_unary_expression] = STATE(4101), [sym__unary_expr] = STATE(4101), [sym_property_expression] = STATE(4101), [sym_cast_expression] = STATE(4101), [sym_delete_expression] = STATE(4101), [sym_throw_expression] = STATE(4101), [sym_assert_expression] = STATE(4101), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(4101), [sym_new_expression] = STATE(4101), [sym_typeid_expression] = STATE(4101), [sym_is_expression] = STATE(4101), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(4101), [sym_char_literal] = STATE(4101), [sym_array_literal] = STATE(4101), [sym_function_literal] = STATE(4101), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(4101), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4113), [sym_false] = ACTIONS(4113), [sym_null] = ACTIONS(4113), [sym_super] = ACTIONS(4113), [sym_this] = ACTIONS(4113), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4115), [sym_float_literal] = ACTIONS(4115), [sym__string] = ACTIONS(3327), }, [1283] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3891), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3891), [sym_ternary_expression] = STATE(3891), [sym_call_expression] = STATE(3891), [sym_primary_expression] = STATE(3891), [sym__primary_expr] = STATE(3891), [sym_index_expression] = STATE(3891), [sym_assignment_expression] = STATE(3891), [sym_binary_expression] = STATE(3891), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3891), [sym_unary_expression] = STATE(3891), [sym__unary_expr] = STATE(3891), [sym_property_expression] = STATE(3891), [sym_cast_expression] = STATE(3891), [sym_delete_expression] = STATE(3891), [sym_throw_expression] = STATE(3891), [sym_assert_expression] = STATE(3891), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3891), [sym_new_expression] = STATE(3891), [sym_typeid_expression] = STATE(3891), [sym_is_expression] = STATE(3891), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3891), [sym_char_literal] = STATE(3891), [sym_array_literal] = STATE(3891), [sym_function_literal] = STATE(3891), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3891), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4117), [sym_false] = ACTIONS(4117), [sym_null] = ACTIONS(4117), [sym_super] = ACTIONS(4117), [sym_this] = ACTIONS(4117), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4119), [sym_float_literal] = ACTIONS(4119), [sym__string] = ACTIONS(233), }, [1284] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3889), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3889), [sym_ternary_expression] = STATE(3889), [sym_call_expression] = STATE(3889), [sym_primary_expression] = STATE(3889), [sym__primary_expr] = STATE(3889), [sym_index_expression] = STATE(3889), [sym_assignment_expression] = STATE(3889), [sym_binary_expression] = STATE(3889), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3889), [sym_unary_expression] = STATE(3889), [sym__unary_expr] = STATE(3889), [sym_property_expression] = STATE(3889), [sym_cast_expression] = STATE(3889), [sym_delete_expression] = STATE(3889), [sym_throw_expression] = STATE(3889), [sym_assert_expression] = STATE(3889), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3889), [sym_new_expression] = STATE(3889), [sym_typeid_expression] = STATE(3889), [sym_is_expression] = STATE(3889), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3889), [sym_char_literal] = STATE(3889), [sym_array_literal] = STATE(3889), [sym_function_literal] = STATE(3889), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3889), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4121), [sym_false] = ACTIONS(4121), [sym_null] = ACTIONS(4121), [sym_super] = ACTIONS(4121), [sym_this] = ACTIONS(4121), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4123), [sym_float_literal] = ACTIONS(4123), [sym__string] = ACTIONS(233), }, [1285] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4091), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4091), [sym_ternary_expression] = STATE(4091), [sym_call_expression] = STATE(4091), [sym_primary_expression] = STATE(4091), [sym__primary_expr] = STATE(4091), [sym_index_expression] = STATE(4091), [sym_assignment_expression] = STATE(4091), [sym_binary_expression] = STATE(4091), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4091), [sym_unary_expression] = STATE(4091), [sym__unary_expr] = STATE(4091), [sym_property_expression] = STATE(4091), [sym_cast_expression] = STATE(4091), [sym_delete_expression] = STATE(4091), [sym_throw_expression] = STATE(4091), [sym_assert_expression] = STATE(4091), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4091), [sym_new_expression] = STATE(4091), [sym_typeid_expression] = STATE(4091), [sym_is_expression] = STATE(4091), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4091), [sym_char_literal] = STATE(4091), [sym_array_literal] = STATE(4091), [sym_function_literal] = STATE(4091), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4091), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4125), [sym_false] = ACTIONS(4125), [sym_null] = ACTIONS(4125), [sym_super] = ACTIONS(4125), [sym_this] = ACTIONS(4125), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4127), [sym_float_literal] = ACTIONS(4127), [sym__string] = ACTIONS(233), }, [1286] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3887), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3887), [sym_ternary_expression] = STATE(3887), [sym_call_expression] = STATE(3887), [sym_primary_expression] = STATE(3887), [sym__primary_expr] = STATE(3887), [sym_index_expression] = STATE(3887), [sym_assignment_expression] = STATE(3887), [sym_binary_expression] = STATE(3887), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3887), [sym_unary_expression] = STATE(3887), [sym__unary_expr] = STATE(3887), [sym_property_expression] = STATE(3887), [sym_cast_expression] = STATE(3887), [sym_delete_expression] = STATE(3887), [sym_throw_expression] = STATE(3887), [sym_assert_expression] = STATE(3887), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3887), [sym_new_expression] = STATE(3887), [sym_typeid_expression] = STATE(3887), [sym_is_expression] = STATE(3887), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3887), [sym_char_literal] = STATE(3887), [sym_array_literal] = STATE(3887), [sym_function_literal] = STATE(3887), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3887), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4129), [sym_false] = ACTIONS(4129), [sym_null] = ACTIONS(4129), [sym_super] = ACTIONS(4129), [sym_this] = ACTIONS(4129), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4131), [sym_float_literal] = ACTIONS(4131), [sym__string] = ACTIONS(233), }, [1287] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(4093), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym__expr] = STATE(4093), [sym_ternary_expression] = STATE(4093), [sym_call_expression] = STATE(4093), [sym_primary_expression] = STATE(4093), [sym__primary_expr] = STATE(4093), [sym_index_expression] = STATE(4093), [sym_assignment_expression] = STATE(4093), [sym_binary_expression] = STATE(4093), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(4093), [sym_unary_expression] = STATE(4093), [sym__unary_expr] = STATE(4093), [sym_property_expression] = STATE(4093), [sym_cast_expression] = STATE(4093), [sym_delete_expression] = STATE(4093), [sym_throw_expression] = STATE(4093), [sym_assert_expression] = STATE(4093), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(4093), [sym_new_expression] = STATE(4093), [sym_typeid_expression] = STATE(4093), [sym_is_expression] = STATE(4093), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(4093), [sym_char_literal] = STATE(4093), [sym_array_literal] = STATE(4093), [sym_function_literal] = STATE(4093), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(4093), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4133), [sym_false] = ACTIONS(4133), [sym_null] = ACTIONS(4133), [sym_super] = ACTIONS(4133), [sym_this] = ACTIONS(4133), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4135), [sym_float_literal] = ACTIONS(4135), [sym__string] = ACTIONS(233), }, [1288] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3885), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3885), [sym_ternary_expression] = STATE(3885), [sym_call_expression] = STATE(3885), [sym_primary_expression] = STATE(3885), [sym__primary_expr] = STATE(3885), [sym_index_expression] = STATE(3885), [sym_assignment_expression] = STATE(3885), [sym_binary_expression] = STATE(3885), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3885), [sym_unary_expression] = STATE(3885), [sym__unary_expr] = STATE(3885), [sym_property_expression] = STATE(3885), [sym_cast_expression] = STATE(3885), [sym_delete_expression] = STATE(3885), [sym_throw_expression] = STATE(3885), [sym_assert_expression] = STATE(3885), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3885), [sym_new_expression] = STATE(3885), [sym_typeid_expression] = STATE(3885), [sym_is_expression] = STATE(3885), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3885), [sym_char_literal] = STATE(3885), [sym_array_literal] = STATE(3885), [sym_function_literal] = STATE(3885), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3885), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4137), [sym_false] = ACTIONS(4137), [sym_null] = ACTIONS(4137), [sym_super] = ACTIONS(4137), [sym_this] = ACTIONS(4137), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4139), [sym_float_literal] = ACTIONS(4139), [sym__string] = ACTIONS(233), }, [1289] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3883), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3883), [sym_ternary_expression] = STATE(3883), [sym_call_expression] = STATE(3883), [sym_primary_expression] = STATE(3883), [sym__primary_expr] = STATE(3883), [sym_index_expression] = STATE(3883), [sym_assignment_expression] = STATE(3883), [sym_binary_expression] = STATE(3883), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3883), [sym_unary_expression] = STATE(3883), [sym__unary_expr] = STATE(3883), [sym_property_expression] = STATE(3883), [sym_cast_expression] = STATE(3883), [sym_delete_expression] = STATE(3883), [sym_throw_expression] = STATE(3883), [sym_assert_expression] = STATE(3883), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3883), [sym_new_expression] = STATE(3883), [sym_typeid_expression] = STATE(3883), [sym_is_expression] = STATE(3883), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3883), [sym_char_literal] = STATE(3883), [sym_array_literal] = STATE(3883), [sym_function_literal] = STATE(3883), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3883), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4141), [sym_false] = ACTIONS(4141), [sym_null] = ACTIONS(4141), [sym_super] = ACTIONS(4141), [sym_this] = ACTIONS(4141), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4143), [sym_float_literal] = ACTIONS(4143), [sym__string] = ACTIONS(233), }, [1290] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3863), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym__expr] = STATE(3863), [sym_ternary_expression] = STATE(3863), [sym_call_expression] = STATE(3863), [sym_primary_expression] = STATE(3863), [sym__primary_expr] = STATE(3863), [sym_index_expression] = STATE(3863), [sym_assignment_expression] = STATE(3863), [sym_binary_expression] = STATE(3863), [sym_logical_or_expression] = STATE(3807), [sym_logical_and_expression] = STATE(3807), [sym_or_expression] = STATE(3807), [sym_xor_expression] = STATE(3807), [sym_and_expression] = STATE(3807), [sym_equal_expression] = STATE(3807), [sym_rel_expression] = STATE(3807), [sym_identity_expression] = STATE(3807), [sym_add_expression] = STATE(3807), [sym_mul_expression] = STATE(3807), [sym_shift_expression] = STATE(3807), [sym_power_expression] = STATE(3807), [sym_postfix_expression] = STATE(3863), [sym_unary_expression] = STATE(3863), [sym__unary_expr] = STATE(3863), [sym_property_expression] = STATE(3863), [sym_cast_expression] = STATE(3863), [sym_delete_expression] = STATE(3863), [sym_throw_expression] = STATE(3863), [sym_assert_expression] = STATE(3863), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3863), [sym_new_expression] = STATE(3863), [sym_typeid_expression] = STATE(3863), [sym_is_expression] = STATE(3863), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3863), [sym_char_literal] = STATE(3863), [sym_array_literal] = STATE(3863), [sym_function_literal] = STATE(3863), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3863), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4145), [sym_false] = ACTIONS(4145), [sym_null] = ACTIONS(4145), [sym_super] = ACTIONS(4145), [sym_this] = ACTIONS(4145), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4147), [sym_float_literal] = ACTIONS(4147), [sym__string] = ACTIONS(233), }, [1291] = { [sym_catch_statement] = STATE(1298), [sym_finally_statement] = STATE(1537), [aux_sym_try_statement_repeat1] = STATE(1298), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_RBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [anon_sym_AT] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_abstract] = ACTIONS(4149), [sym_alias] = ACTIONS(4149), [sym_align] = ACTIONS(4149), [sym_asm] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_break] = ACTIONS(4149), [sym_case] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(4153), [sym_class] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_continue] = ACTIONS(4149), [sym_debug] = ACTIONS(4149), [sym_default] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_deprecated] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_enum] = ACTIONS(4149), [sym_export] = ACTIONS(4149), [sym_extern] = ACTIONS(4149), [sym_final] = ACTIONS(4149), [sym_finally] = ACTIONS(4155), [sym_for] = ACTIONS(4149), [sym_foreach] = ACTIONS(4149), [sym_foreach_reverse] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_goto] = ACTIONS(4149), [sym_if] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_interface] = ACTIONS(4149), [sym_invariant] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_nothrow] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_override] = ACTIONS(4149), [sym_package] = ACTIONS(4149), [sym_pragma] = ACTIONS(4149), [sym_private] = ACTIONS(4149), [sym_protected] = ACTIONS(4149), [sym_public] = ACTIONS(4149), [sym_pure] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_return] = ACTIONS(4149), [sym_scope] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_static] = ACTIONS(4149), [sym_struct] = ACTIONS(4149), [sym_switch] = ACTIONS(4149), [sym_synchronized] = ACTIONS(4149), [sym_template] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_try] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_union] = ACTIONS(4149), [sym_unittest] = ACTIONS(4149), [sym_version] = ACTIONS(4149), [sym_while] = ACTIONS(4149), [sym_with] = ACTIONS(4149), [sym_gshared] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [1292] = { [sym_catch_statement] = STATE(1298), [sym_finally_statement] = STATE(1730), [aux_sym_try_statement_repeat1] = STATE(1298), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_RBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [anon_sym_AT] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_abstract] = ACTIONS(4149), [sym_alias] = ACTIONS(4149), [sym_align] = ACTIONS(4149), [sym_asm] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_break] = ACTIONS(4149), [sym_case] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(4153), [sym_class] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_continue] = ACTIONS(4149), [sym_debug] = ACTIONS(4149), [sym_default] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_deprecated] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_enum] = ACTIONS(4149), [sym_export] = ACTIONS(4149), [sym_extern] = ACTIONS(4149), [sym_final] = ACTIONS(4149), [sym_finally] = ACTIONS(4157), [sym_for] = ACTIONS(4149), [sym_foreach] = ACTIONS(4149), [sym_foreach_reverse] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_goto] = ACTIONS(4149), [sym_if] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_interface] = ACTIONS(4149), [sym_invariant] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_nothrow] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_override] = ACTIONS(4149), [sym_package] = ACTIONS(4149), [sym_pragma] = ACTIONS(4149), [sym_private] = ACTIONS(4149), [sym_protected] = ACTIONS(4149), [sym_public] = ACTIONS(4149), [sym_pure] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_return] = ACTIONS(4149), [sym_scope] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_static] = ACTIONS(4149), [sym_struct] = ACTIONS(4149), [sym_switch] = ACTIONS(4149), [sym_synchronized] = ACTIONS(4149), [sym_template] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_try] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_union] = ACTIONS(4149), [sym_unittest] = ACTIONS(4149), [sym_version] = ACTIONS(4149), [sym_while] = ACTIONS(4149), [sym_with] = ACTIONS(4149), [sym_gshared] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [1293] = { [sym_catch_statement] = STATE(1292), [sym_finally_statement] = STATE(1599), [aux_sym_try_statement_repeat1] = STATE(1292), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_RBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [anon_sym_AT] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_abstract] = ACTIONS(4159), [sym_alias] = ACTIONS(4159), [sym_align] = ACTIONS(4159), [sym_asm] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_break] = ACTIONS(4159), [sym_case] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(4153), [sym_class] = ACTIONS(4159), [sym_const] = ACTIONS(4159), [sym_continue] = ACTIONS(4159), [sym_debug] = ACTIONS(4159), [sym_default] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_deprecated] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_else] = ACTIONS(4159), [sym_enum] = ACTIONS(4159), [sym_export] = ACTIONS(4159), [sym_extern] = ACTIONS(4159), [sym_final] = ACTIONS(4159), [sym_finally] = ACTIONS(4157), [sym_for] = ACTIONS(4159), [sym_foreach] = ACTIONS(4159), [sym_foreach_reverse] = ACTIONS(4159), [sym_function] = ACTIONS(4159), [sym_goto] = ACTIONS(4159), [sym_if] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_interface] = ACTIONS(4159), [sym_invariant] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_nothrow] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_override] = ACTIONS(4159), [sym_package] = ACTIONS(4159), [sym_pragma] = ACTIONS(4159), [sym_private] = ACTIONS(4159), [sym_protected] = ACTIONS(4159), [sym_public] = ACTIONS(4159), [sym_pure] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_return] = ACTIONS(4159), [sym_scope] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_static] = ACTIONS(4159), [sym_struct] = ACTIONS(4159), [sym_switch] = ACTIONS(4159), [sym_synchronized] = ACTIONS(4159), [sym_template] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_try] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_union] = ACTIONS(4159), [sym_unittest] = ACTIONS(4159), [sym_version] = ACTIONS(4159), [sym_while] = ACTIONS(4159), [sym_with] = ACTIONS(4159), [sym_gshared] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [1294] = { [sym_catch_statement] = STATE(1291), [sym_finally_statement] = STATE(1442), [aux_sym_try_statement_repeat1] = STATE(1291), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_RBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [anon_sym_AT] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_abstract] = ACTIONS(4159), [sym_alias] = ACTIONS(4159), [sym_align] = ACTIONS(4159), [sym_asm] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_break] = ACTIONS(4159), [sym_case] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(4153), [sym_class] = ACTIONS(4159), [sym_const] = ACTIONS(4159), [sym_continue] = ACTIONS(4159), [sym_debug] = ACTIONS(4159), [sym_default] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_deprecated] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_else] = ACTIONS(4159), [sym_enum] = ACTIONS(4159), [sym_export] = ACTIONS(4159), [sym_extern] = ACTIONS(4159), [sym_final] = ACTIONS(4159), [sym_finally] = ACTIONS(4155), [sym_for] = ACTIONS(4159), [sym_foreach] = ACTIONS(4159), [sym_foreach_reverse] = ACTIONS(4159), [sym_function] = ACTIONS(4159), [sym_goto] = ACTIONS(4159), [sym_if] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_interface] = ACTIONS(4159), [sym_invariant] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_nothrow] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_override] = ACTIONS(4159), [sym_package] = ACTIONS(4159), [sym_pragma] = ACTIONS(4159), [sym_private] = ACTIONS(4159), [sym_protected] = ACTIONS(4159), [sym_public] = ACTIONS(4159), [sym_pure] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_return] = ACTIONS(4159), [sym_scope] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_static] = ACTIONS(4159), [sym_struct] = ACTIONS(4159), [sym_switch] = ACTIONS(4159), [sym_synchronized] = ACTIONS(4159), [sym_template] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_try] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_union] = ACTIONS(4159), [sym_unittest] = ACTIONS(4159), [sym_version] = ACTIONS(4159), [sym_while] = ACTIONS(4159), [sym_with] = ACTIONS(4159), [sym_gshared] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [1295] = { [sym_catch_statement] = STATE(1297), [sym_finally_statement] = STATE(1442), [aux_sym_try_statement_repeat1] = STATE(1297), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_RBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [anon_sym_AT] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_abstract] = ACTIONS(4159), [sym_alias] = ACTIONS(4159), [sym_align] = ACTIONS(4159), [sym_asm] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_break] = ACTIONS(4159), [sym_case] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(4163), [sym_class] = ACTIONS(4159), [sym_const] = ACTIONS(4159), [sym_continue] = ACTIONS(4159), [sym_debug] = ACTIONS(4159), [sym_default] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_deprecated] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_enum] = ACTIONS(4159), [sym_export] = ACTIONS(4159), [sym_extern] = ACTIONS(4159), [sym_final] = ACTIONS(4159), [sym_finally] = ACTIONS(4165), [sym_for] = ACTIONS(4159), [sym_foreach] = ACTIONS(4159), [sym_foreach_reverse] = ACTIONS(4159), [sym_function] = ACTIONS(4159), [sym_goto] = ACTIONS(4159), [sym_if] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_interface] = ACTIONS(4159), [sym_invariant] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_nothrow] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_override] = ACTIONS(4159), [sym_package] = ACTIONS(4159), [sym_pragma] = ACTIONS(4159), [sym_private] = ACTIONS(4159), [sym_protected] = ACTIONS(4159), [sym_public] = ACTIONS(4159), [sym_pure] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_return] = ACTIONS(4159), [sym_scope] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_static] = ACTIONS(4159), [sym_struct] = ACTIONS(4159), [sym_switch] = ACTIONS(4159), [sym_synchronized] = ACTIONS(4159), [sym_template] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_try] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_union] = ACTIONS(4159), [sym_unittest] = ACTIONS(4159), [sym_version] = ACTIONS(4159), [sym_while] = ACTIONS(4159), [sym_with] = ACTIONS(4159), [sym_gshared] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [1296] = { [sym_catch_statement] = STATE(1299), [sym_finally_statement] = STATE(1599), [aux_sym_try_statement_repeat1] = STATE(1299), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_RBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [anon_sym_AT] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_abstract] = ACTIONS(4159), [sym_alias] = ACTIONS(4159), [sym_align] = ACTIONS(4159), [sym_asm] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_break] = ACTIONS(4159), [sym_case] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(4163), [sym_class] = ACTIONS(4159), [sym_const] = ACTIONS(4159), [sym_continue] = ACTIONS(4159), [sym_debug] = ACTIONS(4159), [sym_default] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_deprecated] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_enum] = ACTIONS(4159), [sym_export] = ACTIONS(4159), [sym_extern] = ACTIONS(4159), [sym_final] = ACTIONS(4159), [sym_finally] = ACTIONS(4167), [sym_for] = ACTIONS(4159), [sym_foreach] = ACTIONS(4159), [sym_foreach_reverse] = ACTIONS(4159), [sym_function] = ACTIONS(4159), [sym_goto] = ACTIONS(4159), [sym_if] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_interface] = ACTIONS(4159), [sym_invariant] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_nothrow] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_override] = ACTIONS(4159), [sym_package] = ACTIONS(4159), [sym_pragma] = ACTIONS(4159), [sym_private] = ACTIONS(4159), [sym_protected] = ACTIONS(4159), [sym_public] = ACTIONS(4159), [sym_pure] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_return] = ACTIONS(4159), [sym_scope] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_static] = ACTIONS(4159), [sym_struct] = ACTIONS(4159), [sym_switch] = ACTIONS(4159), [sym_synchronized] = ACTIONS(4159), [sym_template] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_try] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_union] = ACTIONS(4159), [sym_unittest] = ACTIONS(4159), [sym_version] = ACTIONS(4159), [sym_while] = ACTIONS(4159), [sym_with] = ACTIONS(4159), [sym_gshared] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [1297] = { [sym_catch_statement] = STATE(1312), [sym_finally_statement] = STATE(1537), [aux_sym_try_statement_repeat1] = STATE(1312), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_RBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [anon_sym_AT] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_abstract] = ACTIONS(4149), [sym_alias] = ACTIONS(4149), [sym_align] = ACTIONS(4149), [sym_asm] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_break] = ACTIONS(4149), [sym_case] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(4163), [sym_class] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_continue] = ACTIONS(4149), [sym_debug] = ACTIONS(4149), [sym_default] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_deprecated] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_enum] = ACTIONS(4149), [sym_export] = ACTIONS(4149), [sym_extern] = ACTIONS(4149), [sym_final] = ACTIONS(4149), [sym_finally] = ACTIONS(4165), [sym_for] = ACTIONS(4149), [sym_foreach] = ACTIONS(4149), [sym_foreach_reverse] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_goto] = ACTIONS(4149), [sym_if] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_interface] = ACTIONS(4149), [sym_invariant] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_nothrow] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_override] = ACTIONS(4149), [sym_package] = ACTIONS(4149), [sym_pragma] = ACTIONS(4149), [sym_private] = ACTIONS(4149), [sym_protected] = ACTIONS(4149), [sym_public] = ACTIONS(4149), [sym_pure] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_return] = ACTIONS(4149), [sym_scope] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_static] = ACTIONS(4149), [sym_struct] = ACTIONS(4149), [sym_switch] = ACTIONS(4149), [sym_synchronized] = ACTIONS(4149), [sym_template] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_try] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_union] = ACTIONS(4149), [sym_unittest] = ACTIONS(4149), [sym_version] = ACTIONS(4149), [sym_while] = ACTIONS(4149), [sym_with] = ACTIONS(4149), [sym_gshared] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [1298] = { [sym_catch_statement] = STATE(1298), [aux_sym_try_statement_repeat1] = STATE(1298), [sym_identifier] = ACTIONS(4169), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4171), [anon_sym_RBRACE] = ACTIONS(4171), [anon_sym_LBRACE] = ACTIONS(4171), [anon_sym_DOT] = ACTIONS(4171), [anon_sym_AMP] = ACTIONS(4171), [anon_sym_DASH] = ACTIONS(4169), [anon_sym_DASH_DASH] = ACTIONS(4171), [anon_sym_PLUS] = ACTIONS(4169), [anon_sym_PLUS_PLUS] = ACTIONS(4171), [anon_sym_BANG] = ACTIONS(4171), [anon_sym_LPAREN] = ACTIONS(4171), [anon_sym_RPAREN] = ACTIONS(4171), [anon_sym_LBRACK] = ACTIONS(4171), [anon_sym_SEMI] = ACTIONS(4171), [anon_sym_DOLLAR] = ACTIONS(4171), [anon_sym_STAR] = ACTIONS(4171), [anon_sym_TILDE] = ACTIONS(4171), [anon_sym_AT] = ACTIONS(4171), [sym_bool] = ACTIONS(4169), [sym_byte] = ACTIONS(4169), [sym_ubyte] = ACTIONS(4169), [sym_char] = ACTIONS(4169), [sym_short] = ACTIONS(4169), [sym_ushort] = ACTIONS(4169), [sym_int] = ACTIONS(4169), [sym_uint] = ACTIONS(4169), [sym_long] = ACTIONS(4169), [sym_ulong] = ACTIONS(4169), [sym_cent] = ACTIONS(4169), [sym_ucent] = ACTIONS(4169), [sym_wchar] = ACTIONS(4169), [sym_dchar] = ACTIONS(4169), [sym_float] = ACTIONS(4169), [sym_double] = ACTIONS(4169), [sym_real] = ACTIONS(4169), [sym_ifloat] = ACTIONS(4169), [sym_idouble] = ACTIONS(4169), [sym_ireal] = ACTIONS(4169), [sym_cfloat] = ACTIONS(4169), [sym_cdouble] = ACTIONS(4169), [sym_creal] = ACTIONS(4169), [sym_size_t] = ACTIONS(4169), [sym_ptrdiff_t] = ACTIONS(4169), [sym_string] = ACTIONS(4169), [sym_cstring] = ACTIONS(4169), [sym_dstring] = ACTIONS(4169), [sym_wstring] = ACTIONS(4169), [sym_noreturn] = ACTIONS(4169), [sym_true] = ACTIONS(4169), [sym_false] = ACTIONS(4169), [sym_null] = ACTIONS(4169), [sym_super] = ACTIONS(4169), [sym_this] = ACTIONS(4169), [sym_abstract] = ACTIONS(4169), [sym_alias] = ACTIONS(4169), [sym_align] = ACTIONS(4169), [sym_asm] = ACTIONS(4169), [sym_assert] = ACTIONS(4169), [sym_auto] = ACTIONS(4169), [sym_break] = ACTIONS(4169), [sym_case] = ACTIONS(4169), [sym_cast] = ACTIONS(4169), [sym_catch] = ACTIONS(4173), [sym_class] = ACTIONS(4169), [sym_const] = ACTIONS(4169), [sym_continue] = ACTIONS(4169), [sym_debug] = ACTIONS(4169), [sym_default] = ACTIONS(4169), [sym_delegate] = ACTIONS(4169), [sym_delete] = ACTIONS(4169), [sym_deprecated] = ACTIONS(4169), [sym_do] = ACTIONS(4169), [sym_else] = ACTIONS(4169), [sym_enum] = ACTIONS(4169), [sym_export] = ACTIONS(4169), [sym_extern] = ACTIONS(4169), [sym_final] = ACTIONS(4169), [sym_finally] = ACTIONS(4169), [sym_for] = ACTIONS(4169), [sym_foreach] = ACTIONS(4169), [sym_foreach_reverse] = ACTIONS(4169), [sym_function] = ACTIONS(4169), [sym_goto] = ACTIONS(4169), [sym_if] = ACTIONS(4169), [sym_immutable] = ACTIONS(4169), [sym_import] = ACTIONS(4169), [sym_in] = ACTIONS(4169), [sym_inout] = ACTIONS(4169), [sym_interface] = ACTIONS(4169), [sym_invariant] = ACTIONS(4169), [sym_is] = ACTIONS(4169), [sym_mixin] = ACTIONS(4169), [sym_new] = ACTIONS(4169), [sym_nothrow] = ACTIONS(4169), [sym_out] = ACTIONS(4169), [sym_override] = ACTIONS(4169), [sym_package] = ACTIONS(4169), [sym_pragma] = ACTIONS(4169), [sym_private] = ACTIONS(4169), [sym_protected] = ACTIONS(4169), [sym_public] = ACTIONS(4169), [sym_pure] = ACTIONS(4169), [sym_ref] = ACTIONS(4169), [sym_return] = ACTIONS(4169), [sym_scope] = ACTIONS(4169), [sym_shared] = ACTIONS(4169), [sym_static] = ACTIONS(4169), [sym_struct] = ACTIONS(4169), [sym_switch] = ACTIONS(4169), [sym_synchronized] = ACTIONS(4169), [sym_template] = ACTIONS(4169), [sym_throw] = ACTIONS(4169), [sym_try] = ACTIONS(4169), [sym_typeid] = ACTIONS(4169), [sym_typeof] = ACTIONS(4169), [sym_union] = ACTIONS(4169), [sym_unittest] = ACTIONS(4169), [sym_version] = ACTIONS(4169), [sym_while] = ACTIONS(4169), [sym_with] = ACTIONS(4169), [sym_gshared] = ACTIONS(4169), [sym_traits] = ACTIONS(4169), [sym_vector] = ACTIONS(4169), [sym_void] = ACTIONS(4169), [anon_sym_BQUOTE] = ACTIONS(4171), [anon_sym_r_DQUOTE] = ACTIONS(4171), [anon_sym_x_DQUOTE] = ACTIONS(4171), [anon_sym_DQUOTE] = ACTIONS(4171), [anon_sym_i_BQUOTE] = ACTIONS(4171), [anon_sym_i_DQUOTE] = ACTIONS(4171), [anon_sym_iq_LBRACE] = ACTIONS(4171), [aux_sym_char_literal_token1] = ACTIONS(4171), [anon_sym_SQUOTE] = ACTIONS(4169), [anon_sym___DATE__] = ACTIONS(4169), [anon_sym___FILE__] = ACTIONS(4169), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4169), [anon_sym___FUNCTION__] = ACTIONS(4169), [anon_sym___LINE__] = ACTIONS(4169), [anon_sym___MODULE__] = ACTIONS(4169), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4169), [anon_sym___TIME__] = ACTIONS(4169), [anon_sym___TIMESTAMP__] = ACTIONS(4169), [anon_sym___VENDOR__] = ACTIONS(4169), [anon_sym___VERSION__] = ACTIONS(4169), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4171), [sym_float_literal] = ACTIONS(4171), [sym__string] = ACTIONS(4171), }, [1299] = { [sym_catch_statement] = STATE(1312), [sym_finally_statement] = STATE(1730), [aux_sym_try_statement_repeat1] = STATE(1312), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_RBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [anon_sym_AT] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_abstract] = ACTIONS(4149), [sym_alias] = ACTIONS(4149), [sym_align] = ACTIONS(4149), [sym_asm] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_break] = ACTIONS(4149), [sym_case] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(4163), [sym_class] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_continue] = ACTIONS(4149), [sym_debug] = ACTIONS(4149), [sym_default] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_deprecated] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_enum] = ACTIONS(4149), [sym_export] = ACTIONS(4149), [sym_extern] = ACTIONS(4149), [sym_final] = ACTIONS(4149), [sym_finally] = ACTIONS(4167), [sym_for] = ACTIONS(4149), [sym_foreach] = ACTIONS(4149), [sym_foreach_reverse] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_goto] = ACTIONS(4149), [sym_if] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_interface] = ACTIONS(4149), [sym_invariant] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_nothrow] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_override] = ACTIONS(4149), [sym_package] = ACTIONS(4149), [sym_pragma] = ACTIONS(4149), [sym_private] = ACTIONS(4149), [sym_protected] = ACTIONS(4149), [sym_public] = ACTIONS(4149), [sym_pure] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_return] = ACTIONS(4149), [sym_scope] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_static] = ACTIONS(4149), [sym_struct] = ACTIONS(4149), [sym_switch] = ACTIONS(4149), [sym_synchronized] = ACTIONS(4149), [sym_template] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_try] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_union] = ACTIONS(4149), [sym_unittest] = ACTIONS(4149), [sym_version] = ACTIONS(4149), [sym_while] = ACTIONS(4149), [sym_with] = ACTIONS(4149), [sym_gshared] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [1300] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3908), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3908), [sym_primary_expression] = STATE(3908), [sym__primary_expr] = STATE(3908), [sym_index_expression] = STATE(3908), [sym_postfix_expression] = STATE(3908), [sym_unary_expression] = STATE(3908), [sym__unary_expr] = STATE(3908), [sym_property_expression] = STATE(3908), [sym_cast_expression] = STATE(3908), [sym_delete_expression] = STATE(3908), [sym_throw_expression] = STATE(3908), [sym_assert_expression] = STATE(3908), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3908), [sym_new_expression] = STATE(3908), [sym_typeid_expression] = STATE(3908), [sym_is_expression] = STATE(3908), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3908), [sym_char_literal] = STATE(3908), [sym_array_literal] = STATE(3908), [sym_function_literal] = STATE(3908), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3908), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4176), [sym_false] = ACTIONS(4176), [sym_null] = ACTIONS(4176), [sym_super] = ACTIONS(4176), [sym_this] = ACTIONS(4176), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4178), [sym_float_literal] = ACTIONS(4178), [sym__string] = ACTIONS(3327), }, [1301] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3896), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3896), [sym_primary_expression] = STATE(3896), [sym__primary_expr] = STATE(3896), [sym_index_expression] = STATE(3896), [sym_postfix_expression] = STATE(3896), [sym_unary_expression] = STATE(3896), [sym__unary_expr] = STATE(3896), [sym_property_expression] = STATE(3896), [sym_cast_expression] = STATE(3896), [sym_delete_expression] = STATE(3896), [sym_throw_expression] = STATE(3896), [sym_assert_expression] = STATE(3896), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3896), [sym_new_expression] = STATE(3896), [sym_typeid_expression] = STATE(3896), [sym_is_expression] = STATE(3896), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3896), [sym_char_literal] = STATE(3896), [sym_array_literal] = STATE(3896), [sym_function_literal] = STATE(3896), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3896), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4180), [sym_false] = ACTIONS(4180), [sym_null] = ACTIONS(4180), [sym_super] = ACTIONS(4180), [sym_this] = ACTIONS(4180), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4182), [sym_float_literal] = ACTIONS(4182), [sym__string] = ACTIONS(3327), }, [1302] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4184), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1303] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3945), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3945), [sym_primary_expression] = STATE(3945), [sym__primary_expr] = STATE(3945), [sym_index_expression] = STATE(3945), [sym_postfix_expression] = STATE(3945), [sym_unary_expression] = STATE(3945), [sym__unary_expr] = STATE(3945), [sym_property_expression] = STATE(3945), [sym_cast_expression] = STATE(3945), [sym_delete_expression] = STATE(3945), [sym_throw_expression] = STATE(3945), [sym_assert_expression] = STATE(3945), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3945), [sym_new_expression] = STATE(3945), [sym_typeid_expression] = STATE(3945), [sym_is_expression] = STATE(3945), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3945), [sym_char_literal] = STATE(3945), [sym_array_literal] = STATE(3945), [sym_function_literal] = STATE(3945), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3945), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4188), [sym_false] = ACTIONS(4188), [sym_null] = ACTIONS(4188), [sym_super] = ACTIONS(4188), [sym_this] = ACTIONS(4188), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4190), [sym_float_literal] = ACTIONS(4190), [sym__string] = ACTIONS(3713), }, [1304] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3667), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3667), [sym_primary_expression] = STATE(3667), [sym__primary_expr] = STATE(3667), [sym_index_expression] = STATE(3667), [sym_postfix_expression] = STATE(3667), [sym_unary_expression] = STATE(3667), [sym__unary_expr] = STATE(3667), [sym_property_expression] = STATE(3667), [sym_cast_expression] = STATE(3667), [sym_delete_expression] = STATE(3667), [sym_throw_expression] = STATE(3667), [sym_assert_expression] = STATE(3667), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3667), [sym_new_expression] = STATE(3667), [sym_typeid_expression] = STATE(3667), [sym_is_expression] = STATE(3667), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3667), [sym_char_literal] = STATE(3667), [sym_array_literal] = STATE(3667), [sym_function_literal] = STATE(3667), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3667), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4192), [sym_false] = ACTIONS(4192), [sym_null] = ACTIONS(4192), [sym_super] = ACTIONS(4192), [sym_this] = ACTIONS(4192), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4194), [sym_float_literal] = ACTIONS(4194), [sym__string] = ACTIONS(233), }, [1305] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3666), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3666), [sym_primary_expression] = STATE(3666), [sym__primary_expr] = STATE(3666), [sym_index_expression] = STATE(3666), [sym_postfix_expression] = STATE(3666), [sym_unary_expression] = STATE(3666), [sym__unary_expr] = STATE(3666), [sym_property_expression] = STATE(3666), [sym_cast_expression] = STATE(3666), [sym_delete_expression] = STATE(3666), [sym_throw_expression] = STATE(3666), [sym_assert_expression] = STATE(3666), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3666), [sym_new_expression] = STATE(3666), [sym_typeid_expression] = STATE(3666), [sym_is_expression] = STATE(3666), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3666), [sym_char_literal] = STATE(3666), [sym_array_literal] = STATE(3666), [sym_function_literal] = STATE(3666), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3666), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4196), [sym_false] = ACTIONS(4196), [sym_null] = ACTIONS(4196), [sym_super] = ACTIONS(4196), [sym_this] = ACTIONS(4196), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4198), [sym_float_literal] = ACTIONS(4198), [sym__string] = ACTIONS(233), }, [1306] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3912), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3912), [sym_primary_expression] = STATE(3912), [sym__primary_expr] = STATE(3912), [sym_index_expression] = STATE(3912), [sym_postfix_expression] = STATE(3912), [sym_unary_expression] = STATE(3912), [sym__unary_expr] = STATE(3912), [sym_property_expression] = STATE(3912), [sym_cast_expression] = STATE(3912), [sym_delete_expression] = STATE(3912), [sym_throw_expression] = STATE(3912), [sym_assert_expression] = STATE(3912), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3912), [sym_new_expression] = STATE(3912), [sym_typeid_expression] = STATE(3912), [sym_is_expression] = STATE(3912), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3912), [sym_char_literal] = STATE(3912), [sym_array_literal] = STATE(3912), [sym_function_literal] = STATE(3912), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3912), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4200), [sym_false] = ACTIONS(4200), [sym_null] = ACTIONS(4200), [sym_super] = ACTIONS(4200), [sym_this] = ACTIONS(4200), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4202), [sym_float_literal] = ACTIONS(4202), [sym__string] = ACTIONS(3327), }, [1307] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3666), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3666), [sym_primary_expression] = STATE(3666), [sym__primary_expr] = STATE(3666), [sym_index_expression] = STATE(3666), [sym_postfix_expression] = STATE(3666), [sym_unary_expression] = STATE(3666), [sym__unary_expr] = STATE(3666), [sym_property_expression] = STATE(3666), [sym_cast_expression] = STATE(3666), [sym_delete_expression] = STATE(3666), [sym_throw_expression] = STATE(3666), [sym_assert_expression] = STATE(3666), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3666), [sym_new_expression] = STATE(3666), [sym_typeid_expression] = STATE(3666), [sym_is_expression] = STATE(3666), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3666), [sym_char_literal] = STATE(3666), [sym_array_literal] = STATE(3666), [sym_function_literal] = STATE(3666), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3666), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4196), [sym_false] = ACTIONS(4196), [sym_null] = ACTIONS(4196), [sym_super] = ACTIONS(4196), [sym_this] = ACTIONS(4196), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4198), [sym_float_literal] = ACTIONS(4198), [sym__string] = ACTIONS(233), }, [1308] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3954), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3954), [sym_primary_expression] = STATE(3954), [sym__primary_expr] = STATE(3954), [sym_index_expression] = STATE(3954), [sym_postfix_expression] = STATE(3954), [sym_unary_expression] = STATE(3954), [sym__unary_expr] = STATE(3954), [sym_property_expression] = STATE(3954), [sym_cast_expression] = STATE(3954), [sym_delete_expression] = STATE(3954), [sym_throw_expression] = STATE(3954), [sym_assert_expression] = STATE(3954), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3954), [sym_new_expression] = STATE(3954), [sym_typeid_expression] = STATE(3954), [sym_is_expression] = STATE(3954), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3954), [sym_char_literal] = STATE(3954), [sym_array_literal] = STATE(3954), [sym_function_literal] = STATE(3954), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3954), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4204), [sym_false] = ACTIONS(4204), [sym_null] = ACTIONS(4204), [sym_super] = ACTIONS(4204), [sym_this] = ACTIONS(4204), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4206), [sym_float_literal] = ACTIONS(4206), [sym__string] = ACTIONS(3713), }, [1309] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3933), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3933), [sym_primary_expression] = STATE(3933), [sym__primary_expr] = STATE(3933), [sym_index_expression] = STATE(3933), [sym_postfix_expression] = STATE(3933), [sym_unary_expression] = STATE(3933), [sym__unary_expr] = STATE(3933), [sym_property_expression] = STATE(3933), [sym_cast_expression] = STATE(3933), [sym_delete_expression] = STATE(3933), [sym_throw_expression] = STATE(3933), [sym_assert_expression] = STATE(3933), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3933), [sym_new_expression] = STATE(3933), [sym_typeid_expression] = STATE(3933), [sym_is_expression] = STATE(3933), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3933), [sym_char_literal] = STATE(3933), [sym_array_literal] = STATE(3933), [sym_function_literal] = STATE(3933), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3933), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4208), [sym_false] = ACTIONS(4208), [sym_null] = ACTIONS(4208), [sym_super] = ACTIONS(4208), [sym_this] = ACTIONS(4208), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4210), [sym_float_literal] = ACTIONS(4210), [sym__string] = ACTIONS(3713), }, [1310] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3934), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3934), [sym_primary_expression] = STATE(3934), [sym__primary_expr] = STATE(3934), [sym_index_expression] = STATE(3934), [sym_postfix_expression] = STATE(3934), [sym_unary_expression] = STATE(3934), [sym__unary_expr] = STATE(3934), [sym_property_expression] = STATE(3934), [sym_cast_expression] = STATE(3934), [sym_delete_expression] = STATE(3934), [sym_throw_expression] = STATE(3934), [sym_assert_expression] = STATE(3934), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3934), [sym_new_expression] = STATE(3934), [sym_typeid_expression] = STATE(3934), [sym_is_expression] = STATE(3934), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3934), [sym_char_literal] = STATE(3934), [sym_array_literal] = STATE(3934), [sym_function_literal] = STATE(3934), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3934), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4212), [sym_false] = ACTIONS(4212), [sym_null] = ACTIONS(4212), [sym_super] = ACTIONS(4212), [sym_this] = ACTIONS(4212), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4214), [sym_float_literal] = ACTIONS(4214), [sym__string] = ACTIONS(3713), }, [1311] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4184), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1312] = { [sym_catch_statement] = STATE(1312), [aux_sym_try_statement_repeat1] = STATE(1312), [sym_identifier] = ACTIONS(4169), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4171), [anon_sym_RBRACE] = ACTIONS(4171), [anon_sym_LBRACE] = ACTIONS(4171), [anon_sym_DOT] = ACTIONS(4171), [anon_sym_AMP] = ACTIONS(4171), [anon_sym_DASH] = ACTIONS(4169), [anon_sym_DASH_DASH] = ACTIONS(4171), [anon_sym_PLUS] = ACTIONS(4169), [anon_sym_PLUS_PLUS] = ACTIONS(4171), [anon_sym_BANG] = ACTIONS(4171), [anon_sym_LPAREN] = ACTIONS(4171), [anon_sym_RPAREN] = ACTIONS(4171), [anon_sym_LBRACK] = ACTIONS(4171), [anon_sym_SEMI] = ACTIONS(4171), [anon_sym_DOLLAR] = ACTIONS(4171), [anon_sym_STAR] = ACTIONS(4171), [anon_sym_TILDE] = ACTIONS(4171), [anon_sym_AT] = ACTIONS(4171), [sym_bool] = ACTIONS(4169), [sym_byte] = ACTIONS(4169), [sym_ubyte] = ACTIONS(4169), [sym_char] = ACTIONS(4169), [sym_short] = ACTIONS(4169), [sym_ushort] = ACTIONS(4169), [sym_int] = ACTIONS(4169), [sym_uint] = ACTIONS(4169), [sym_long] = ACTIONS(4169), [sym_ulong] = ACTIONS(4169), [sym_cent] = ACTIONS(4169), [sym_ucent] = ACTIONS(4169), [sym_wchar] = ACTIONS(4169), [sym_dchar] = ACTIONS(4169), [sym_float] = ACTIONS(4169), [sym_double] = ACTIONS(4169), [sym_real] = ACTIONS(4169), [sym_ifloat] = ACTIONS(4169), [sym_idouble] = ACTIONS(4169), [sym_ireal] = ACTIONS(4169), [sym_cfloat] = ACTIONS(4169), [sym_cdouble] = ACTIONS(4169), [sym_creal] = ACTIONS(4169), [sym_size_t] = ACTIONS(4169), [sym_ptrdiff_t] = ACTIONS(4169), [sym_string] = ACTIONS(4169), [sym_cstring] = ACTIONS(4169), [sym_dstring] = ACTIONS(4169), [sym_wstring] = ACTIONS(4169), [sym_noreturn] = ACTIONS(4169), [sym_true] = ACTIONS(4169), [sym_false] = ACTIONS(4169), [sym_null] = ACTIONS(4169), [sym_super] = ACTIONS(4169), [sym_this] = ACTIONS(4169), [sym_abstract] = ACTIONS(4169), [sym_alias] = ACTIONS(4169), [sym_align] = ACTIONS(4169), [sym_asm] = ACTIONS(4169), [sym_assert] = ACTIONS(4169), [sym_auto] = ACTIONS(4169), [sym_break] = ACTIONS(4169), [sym_case] = ACTIONS(4169), [sym_cast] = ACTIONS(4169), [sym_catch] = ACTIONS(4216), [sym_class] = ACTIONS(4169), [sym_const] = ACTIONS(4169), [sym_continue] = ACTIONS(4169), [sym_debug] = ACTIONS(4169), [sym_default] = ACTIONS(4169), [sym_delegate] = ACTIONS(4169), [sym_delete] = ACTIONS(4169), [sym_deprecated] = ACTIONS(4169), [sym_do] = ACTIONS(4169), [sym_enum] = ACTIONS(4169), [sym_export] = ACTIONS(4169), [sym_extern] = ACTIONS(4169), [sym_final] = ACTIONS(4169), [sym_finally] = ACTIONS(4169), [sym_for] = ACTIONS(4169), [sym_foreach] = ACTIONS(4169), [sym_foreach_reverse] = ACTIONS(4169), [sym_function] = ACTIONS(4169), [sym_goto] = ACTIONS(4169), [sym_if] = ACTIONS(4169), [sym_immutable] = ACTIONS(4169), [sym_import] = ACTIONS(4169), [sym_in] = ACTIONS(4169), [sym_inout] = ACTIONS(4169), [sym_interface] = ACTIONS(4169), [sym_invariant] = ACTIONS(4169), [sym_is] = ACTIONS(4169), [sym_mixin] = ACTIONS(4169), [sym_new] = ACTIONS(4169), [sym_nothrow] = ACTIONS(4169), [sym_out] = ACTIONS(4169), [sym_override] = ACTIONS(4169), [sym_package] = ACTIONS(4169), [sym_pragma] = ACTIONS(4169), [sym_private] = ACTIONS(4169), [sym_protected] = ACTIONS(4169), [sym_public] = ACTIONS(4169), [sym_pure] = ACTIONS(4169), [sym_ref] = ACTIONS(4169), [sym_return] = ACTIONS(4169), [sym_scope] = ACTIONS(4169), [sym_shared] = ACTIONS(4169), [sym_static] = ACTIONS(4169), [sym_struct] = ACTIONS(4169), [sym_switch] = ACTIONS(4169), [sym_synchronized] = ACTIONS(4169), [sym_template] = ACTIONS(4169), [sym_throw] = ACTIONS(4169), [sym_try] = ACTIONS(4169), [sym_typeid] = ACTIONS(4169), [sym_typeof] = ACTIONS(4169), [sym_union] = ACTIONS(4169), [sym_unittest] = ACTIONS(4169), [sym_version] = ACTIONS(4169), [sym_while] = ACTIONS(4169), [sym_with] = ACTIONS(4169), [sym_gshared] = ACTIONS(4169), [sym_traits] = ACTIONS(4169), [sym_vector] = ACTIONS(4169), [sym_void] = ACTIONS(4169), [anon_sym_BQUOTE] = ACTIONS(4171), [anon_sym_r_DQUOTE] = ACTIONS(4171), [anon_sym_x_DQUOTE] = ACTIONS(4171), [anon_sym_DQUOTE] = ACTIONS(4171), [anon_sym_i_BQUOTE] = ACTIONS(4171), [anon_sym_i_DQUOTE] = ACTIONS(4171), [anon_sym_iq_LBRACE] = ACTIONS(4171), [aux_sym_char_literal_token1] = ACTIONS(4171), [anon_sym_SQUOTE] = ACTIONS(4169), [anon_sym___DATE__] = ACTIONS(4169), [anon_sym___FILE__] = ACTIONS(4169), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4169), [anon_sym___FUNCTION__] = ACTIONS(4169), [anon_sym___LINE__] = ACTIONS(4169), [anon_sym___MODULE__] = ACTIONS(4169), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4169), [anon_sym___TIME__] = ACTIONS(4169), [anon_sym___TIMESTAMP__] = ACTIONS(4169), [anon_sym___VENDOR__] = ACTIONS(4169), [anon_sym___VERSION__] = ACTIONS(4169), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4171), [sym_float_literal] = ACTIONS(4171), [sym__string] = ACTIONS(4171), }, [1313] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3680), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3680), [sym_primary_expression] = STATE(3680), [sym__primary_expr] = STATE(3680), [sym_index_expression] = STATE(3680), [sym_postfix_expression] = STATE(3680), [sym_unary_expression] = STATE(3680), [sym__unary_expr] = STATE(3680), [sym_property_expression] = STATE(3680), [sym_cast_expression] = STATE(3680), [sym_delete_expression] = STATE(3680), [sym_throw_expression] = STATE(3680), [sym_assert_expression] = STATE(3680), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3680), [sym_new_expression] = STATE(3680), [sym_typeid_expression] = STATE(3680), [sym_is_expression] = STATE(3680), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3680), [sym_char_literal] = STATE(3680), [sym_array_literal] = STATE(3680), [sym_function_literal] = STATE(3680), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3680), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4219), [sym_false] = ACTIONS(4219), [sym_null] = ACTIONS(4219), [sym_super] = ACTIONS(4219), [sym_this] = ACTIONS(4219), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4221), [sym_float_literal] = ACTIONS(4221), [sym__string] = ACTIONS(233), }, [1314] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3868), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3868), [sym_primary_expression] = STATE(3868), [sym__primary_expr] = STATE(3868), [sym_index_expression] = STATE(3868), [sym_postfix_expression] = STATE(3868), [sym_unary_expression] = STATE(3868), [sym__unary_expr] = STATE(3868), [sym_property_expression] = STATE(3868), [sym_cast_expression] = STATE(3868), [sym_delete_expression] = STATE(3868), [sym_throw_expression] = STATE(3868), [sym_assert_expression] = STATE(3868), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3868), [sym_new_expression] = STATE(3868), [sym_typeid_expression] = STATE(3868), [sym_is_expression] = STATE(3868), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3868), [sym_char_literal] = STATE(3868), [sym_array_literal] = STATE(3868), [sym_function_literal] = STATE(3868), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3868), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4223), [sym_false] = ACTIONS(4223), [sym_null] = ACTIONS(4223), [sym_super] = ACTIONS(4223), [sym_this] = ACTIONS(4223), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4225), [sym_float_literal] = ACTIONS(4225), [sym__string] = ACTIONS(3327), }, [1315] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3667), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3667), [sym_primary_expression] = STATE(3667), [sym__primary_expr] = STATE(3667), [sym_index_expression] = STATE(3667), [sym_postfix_expression] = STATE(3667), [sym_unary_expression] = STATE(3667), [sym__unary_expr] = STATE(3667), [sym_property_expression] = STATE(3667), [sym_cast_expression] = STATE(3667), [sym_delete_expression] = STATE(3667), [sym_throw_expression] = STATE(3667), [sym_assert_expression] = STATE(3667), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3667), [sym_new_expression] = STATE(3667), [sym_typeid_expression] = STATE(3667), [sym_is_expression] = STATE(3667), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3667), [sym_char_literal] = STATE(3667), [sym_array_literal] = STATE(3667), [sym_function_literal] = STATE(3667), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3667), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4192), [sym_false] = ACTIONS(4192), [sym_null] = ACTIONS(4192), [sym_super] = ACTIONS(4192), [sym_this] = ACTIONS(4192), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4194), [sym_float_literal] = ACTIONS(4194), [sym__string] = ACTIONS(233), }, [1316] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3651), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3651), [sym_primary_expression] = STATE(3651), [sym__primary_expr] = STATE(3651), [sym_index_expression] = STATE(3651), [sym_postfix_expression] = STATE(3651), [sym_unary_expression] = STATE(3651), [sym__unary_expr] = STATE(3651), [sym_property_expression] = STATE(3651), [sym_cast_expression] = STATE(3651), [sym_delete_expression] = STATE(3651), [sym_throw_expression] = STATE(3651), [sym_assert_expression] = STATE(3651), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3651), [sym_new_expression] = STATE(3651), [sym_typeid_expression] = STATE(3651), [sym_is_expression] = STATE(3651), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3651), [sym_char_literal] = STATE(3651), [sym_array_literal] = STATE(3651), [sym_function_literal] = STATE(3651), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3651), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4227), [sym_false] = ACTIONS(4227), [sym_null] = ACTIONS(4227), [sym_super] = ACTIONS(4227), [sym_this] = ACTIONS(4227), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4229), [sym_float_literal] = ACTIONS(4229), [sym__string] = ACTIONS(233), }, [1317] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4231), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1318] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4233), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1319] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3621), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3621), [sym_primary_expression] = STATE(3621), [sym__primary_expr] = STATE(3621), [sym_index_expression] = STATE(3621), [sym_postfix_expression] = STATE(3621), [sym_unary_expression] = STATE(3621), [sym__unary_expr] = STATE(3621), [sym_property_expression] = STATE(3621), [sym_cast_expression] = STATE(3621), [sym_delete_expression] = STATE(3621), [sym_throw_expression] = STATE(3621), [sym_assert_expression] = STATE(3621), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3621), [sym_new_expression] = STATE(3621), [sym_typeid_expression] = STATE(3621), [sym_is_expression] = STATE(3621), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3621), [sym_char_literal] = STATE(3621), [sym_array_literal] = STATE(3621), [sym_function_literal] = STATE(3621), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3621), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4235), [sym_false] = ACTIONS(4235), [sym_null] = ACTIONS(4235), [sym_super] = ACTIONS(4235), [sym_this] = ACTIONS(4235), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4237), [sym_float_literal] = ACTIONS(4237), [sym__string] = ACTIONS(233), }, [1320] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3702), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3702), [sym_primary_expression] = STATE(3702), [sym__primary_expr] = STATE(3702), [sym_index_expression] = STATE(3702), [sym_postfix_expression] = STATE(3702), [sym_unary_expression] = STATE(3702), [sym__unary_expr] = STATE(3702), [sym_property_expression] = STATE(3702), [sym_cast_expression] = STATE(3702), [sym_delete_expression] = STATE(3702), [sym_throw_expression] = STATE(3702), [sym_assert_expression] = STATE(3702), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3702), [sym_new_expression] = STATE(3702), [sym_typeid_expression] = STATE(3702), [sym_is_expression] = STATE(3702), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3702), [sym_char_literal] = STATE(3702), [sym_array_literal] = STATE(3702), [sym_function_literal] = STATE(3702), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3702), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4239), [sym_false] = ACTIONS(4239), [sym_null] = ACTIONS(4239), [sym_super] = ACTIONS(4239), [sym_this] = ACTIONS(4239), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4241), [sym_float_literal] = ACTIONS(4241), [sym__string] = ACTIONS(233), }, [1321] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3680), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3680), [sym_primary_expression] = STATE(3680), [sym__primary_expr] = STATE(3680), [sym_index_expression] = STATE(3680), [sym_postfix_expression] = STATE(3680), [sym_unary_expression] = STATE(3680), [sym__unary_expr] = STATE(3680), [sym_property_expression] = STATE(3680), [sym_cast_expression] = STATE(3680), [sym_delete_expression] = STATE(3680), [sym_throw_expression] = STATE(3680), [sym_assert_expression] = STATE(3680), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3680), [sym_new_expression] = STATE(3680), [sym_typeid_expression] = STATE(3680), [sym_is_expression] = STATE(3680), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3680), [sym_char_literal] = STATE(3680), [sym_array_literal] = STATE(3680), [sym_function_literal] = STATE(3680), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3680), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4219), [sym_false] = ACTIONS(4219), [sym_null] = ACTIONS(4219), [sym_super] = ACTIONS(4219), [sym_this] = ACTIONS(4219), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4221), [sym_float_literal] = ACTIONS(4221), [sym__string] = ACTIONS(233), }, [1322] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3955), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3955), [sym_primary_expression] = STATE(3955), [sym__primary_expr] = STATE(3955), [sym_index_expression] = STATE(3955), [sym_postfix_expression] = STATE(3955), [sym_unary_expression] = STATE(3955), [sym__unary_expr] = STATE(3955), [sym_property_expression] = STATE(3955), [sym_cast_expression] = STATE(3955), [sym_delete_expression] = STATE(3955), [sym_throw_expression] = STATE(3955), [sym_assert_expression] = STATE(3955), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3955), [sym_new_expression] = STATE(3955), [sym_typeid_expression] = STATE(3955), [sym_is_expression] = STATE(3955), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3955), [sym_char_literal] = STATE(3955), [sym_array_literal] = STATE(3955), [sym_function_literal] = STATE(3955), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3955), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4243), [sym_false] = ACTIONS(4243), [sym_null] = ACTIONS(4243), [sym_super] = ACTIONS(4243), [sym_this] = ACTIONS(4243), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4245), [sym_float_literal] = ACTIONS(4245), [sym__string] = ACTIONS(3713), }, [1323] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3871), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3871), [sym_primary_expression] = STATE(3871), [sym__primary_expr] = STATE(3871), [sym_index_expression] = STATE(3871), [sym_postfix_expression] = STATE(3871), [sym_unary_expression] = STATE(3871), [sym__unary_expr] = STATE(3871), [sym_property_expression] = STATE(3871), [sym_cast_expression] = STATE(3871), [sym_delete_expression] = STATE(3871), [sym_throw_expression] = STATE(3871), [sym_assert_expression] = STATE(3871), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3871), [sym_new_expression] = STATE(3871), [sym_typeid_expression] = STATE(3871), [sym_is_expression] = STATE(3871), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3871), [sym_char_literal] = STATE(3871), [sym_array_literal] = STATE(3871), [sym_function_literal] = STATE(3871), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3871), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4247), [sym_false] = ACTIONS(4247), [sym_null] = ACTIONS(4247), [sym_super] = ACTIONS(4247), [sym_this] = ACTIONS(4247), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4249), [sym_float_literal] = ACTIONS(4249), [sym__string] = ACTIONS(3327), }, [1324] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3868), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3868), [sym_primary_expression] = STATE(3868), [sym__primary_expr] = STATE(3868), [sym_index_expression] = STATE(3868), [sym_postfix_expression] = STATE(3868), [sym_unary_expression] = STATE(3868), [sym__unary_expr] = STATE(3868), [sym_property_expression] = STATE(3868), [sym_cast_expression] = STATE(3868), [sym_delete_expression] = STATE(3868), [sym_throw_expression] = STATE(3868), [sym_assert_expression] = STATE(3868), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3868), [sym_new_expression] = STATE(3868), [sym_typeid_expression] = STATE(3868), [sym_is_expression] = STATE(3868), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3868), [sym_char_literal] = STATE(3868), [sym_array_literal] = STATE(3868), [sym_function_literal] = STATE(3868), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3868), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4223), [sym_false] = ACTIONS(4223), [sym_null] = ACTIONS(4223), [sym_super] = ACTIONS(4223), [sym_this] = ACTIONS(4223), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4225), [sym_float_literal] = ACTIONS(4225), [sym__string] = ACTIONS(3327), }, [1325] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3935), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3935), [sym_primary_expression] = STATE(3935), [sym__primary_expr] = STATE(3935), [sym_index_expression] = STATE(3935), [sym_postfix_expression] = STATE(3935), [sym_unary_expression] = STATE(3935), [sym__unary_expr] = STATE(3935), [sym_property_expression] = STATE(3935), [sym_cast_expression] = STATE(3935), [sym_delete_expression] = STATE(3935), [sym_throw_expression] = STATE(3935), [sym_assert_expression] = STATE(3935), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3935), [sym_new_expression] = STATE(3935), [sym_typeid_expression] = STATE(3935), [sym_is_expression] = STATE(3935), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3935), [sym_char_literal] = STATE(3935), [sym_array_literal] = STATE(3935), [sym_function_literal] = STATE(3935), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3935), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4251), [sym_false] = ACTIONS(4251), [sym_null] = ACTIONS(4251), [sym_super] = ACTIONS(4251), [sym_this] = ACTIONS(4251), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4253), [sym_float_literal] = ACTIONS(4253), [sym__string] = ACTIONS(3713), }, [1326] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3632), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3632), [sym_primary_expression] = STATE(3632), [sym__primary_expr] = STATE(3632), [sym_index_expression] = STATE(3632), [sym_postfix_expression] = STATE(3632), [sym_unary_expression] = STATE(3632), [sym__unary_expr] = STATE(3632), [sym_property_expression] = STATE(3632), [sym_cast_expression] = STATE(3632), [sym_delete_expression] = STATE(3632), [sym_throw_expression] = STATE(3632), [sym_assert_expression] = STATE(3632), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3632), [sym_new_expression] = STATE(3632), [sym_typeid_expression] = STATE(3632), [sym_is_expression] = STATE(3632), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3632), [sym_char_literal] = STATE(3632), [sym_array_literal] = STATE(3632), [sym_function_literal] = STATE(3632), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3632), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4255), [sym_false] = ACTIONS(4255), [sym_null] = ACTIONS(4255), [sym_super] = ACTIONS(4255), [sym_this] = ACTIONS(4255), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4257), [sym_float_literal] = ACTIONS(4257), [sym__string] = ACTIONS(233), }, [1327] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3621), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3621), [sym_primary_expression] = STATE(3621), [sym__primary_expr] = STATE(3621), [sym_index_expression] = STATE(3621), [sym_postfix_expression] = STATE(3621), [sym_unary_expression] = STATE(3621), [sym__unary_expr] = STATE(3621), [sym_property_expression] = STATE(3621), [sym_cast_expression] = STATE(3621), [sym_delete_expression] = STATE(3621), [sym_throw_expression] = STATE(3621), [sym_assert_expression] = STATE(3621), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3621), [sym_new_expression] = STATE(3621), [sym_typeid_expression] = STATE(3621), [sym_is_expression] = STATE(3621), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3621), [sym_char_literal] = STATE(3621), [sym_array_literal] = STATE(3621), [sym_function_literal] = STATE(3621), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3621), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4235), [sym_false] = ACTIONS(4235), [sym_null] = ACTIONS(4235), [sym_super] = ACTIONS(4235), [sym_this] = ACTIONS(4235), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4237), [sym_float_literal] = ACTIONS(4237), [sym__string] = ACTIONS(233), }, [1328] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3896), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3896), [sym_primary_expression] = STATE(3896), [sym__primary_expr] = STATE(3896), [sym_index_expression] = STATE(3896), [sym_postfix_expression] = STATE(3896), [sym_unary_expression] = STATE(3896), [sym__unary_expr] = STATE(3896), [sym_property_expression] = STATE(3896), [sym_cast_expression] = STATE(3896), [sym_delete_expression] = STATE(3896), [sym_throw_expression] = STATE(3896), [sym_assert_expression] = STATE(3896), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3896), [sym_new_expression] = STATE(3896), [sym_typeid_expression] = STATE(3896), [sym_is_expression] = STATE(3896), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3896), [sym_char_literal] = STATE(3896), [sym_array_literal] = STATE(3896), [sym_function_literal] = STATE(3896), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3896), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4180), [sym_false] = ACTIONS(4180), [sym_null] = ACTIONS(4180), [sym_super] = ACTIONS(4180), [sym_this] = ACTIONS(4180), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4182), [sym_float_literal] = ACTIONS(4182), [sym__string] = ACTIONS(3327), }, [1329] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3876), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3876), [sym_primary_expression] = STATE(3876), [sym__primary_expr] = STATE(3876), [sym_index_expression] = STATE(3876), [sym_postfix_expression] = STATE(3876), [sym_unary_expression] = STATE(3876), [sym__unary_expr] = STATE(3876), [sym_property_expression] = STATE(3876), [sym_cast_expression] = STATE(3876), [sym_delete_expression] = STATE(3876), [sym_throw_expression] = STATE(3876), [sym_assert_expression] = STATE(3876), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3876), [sym_new_expression] = STATE(3876), [sym_typeid_expression] = STATE(3876), [sym_is_expression] = STATE(3876), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3876), [sym_char_literal] = STATE(3876), [sym_array_literal] = STATE(3876), [sym_function_literal] = STATE(3876), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3876), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4259), [sym_false] = ACTIONS(4259), [sym_null] = ACTIONS(4259), [sym_super] = ACTIONS(4259), [sym_this] = ACTIONS(4259), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4261), [sym_float_literal] = ACTIONS(4261), [sym__string] = ACTIONS(3327), }, [1330] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3667), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3667), [sym_primary_expression] = STATE(3667), [sym__primary_expr] = STATE(3667), [sym_index_expression] = STATE(3667), [sym_postfix_expression] = STATE(3667), [sym_unary_expression] = STATE(3667), [sym__unary_expr] = STATE(3667), [sym_property_expression] = STATE(3667), [sym_cast_expression] = STATE(3667), [sym_delete_expression] = STATE(3667), [sym_throw_expression] = STATE(3667), [sym_assert_expression] = STATE(3667), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3667), [sym_new_expression] = STATE(3667), [sym_typeid_expression] = STATE(3667), [sym_is_expression] = STATE(3667), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3667), [sym_char_literal] = STATE(3667), [sym_array_literal] = STATE(3667), [sym_function_literal] = STATE(3667), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3667), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4192), [sym_false] = ACTIONS(4192), [sym_null] = ACTIONS(4192), [sym_super] = ACTIONS(4192), [sym_this] = ACTIONS(4192), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4194), [sym_float_literal] = ACTIONS(4194), [sym__string] = ACTIONS(233), }, [1331] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3666), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3666), [sym_primary_expression] = STATE(3666), [sym__primary_expr] = STATE(3666), [sym_index_expression] = STATE(3666), [sym_postfix_expression] = STATE(3666), [sym_unary_expression] = STATE(3666), [sym__unary_expr] = STATE(3666), [sym_property_expression] = STATE(3666), [sym_cast_expression] = STATE(3666), [sym_delete_expression] = STATE(3666), [sym_throw_expression] = STATE(3666), [sym_assert_expression] = STATE(3666), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3666), [sym_new_expression] = STATE(3666), [sym_typeid_expression] = STATE(3666), [sym_is_expression] = STATE(3666), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3666), [sym_char_literal] = STATE(3666), [sym_array_literal] = STATE(3666), [sym_function_literal] = STATE(3666), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3666), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4196), [sym_false] = ACTIONS(4196), [sym_null] = ACTIONS(4196), [sym_super] = ACTIONS(4196), [sym_this] = ACTIONS(4196), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4198), [sym_float_literal] = ACTIONS(4198), [sym__string] = ACTIONS(233), }, [1332] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3893), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3893), [sym_primary_expression] = STATE(3893), [sym__primary_expr] = STATE(3893), [sym_index_expression] = STATE(3893), [sym_postfix_expression] = STATE(3893), [sym_unary_expression] = STATE(3893), [sym__unary_expr] = STATE(3893), [sym_property_expression] = STATE(3893), [sym_cast_expression] = STATE(3893), [sym_delete_expression] = STATE(3893), [sym_throw_expression] = STATE(3893), [sym_assert_expression] = STATE(3893), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3893), [sym_new_expression] = STATE(3893), [sym_typeid_expression] = STATE(3893), [sym_is_expression] = STATE(3893), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3893), [sym_char_literal] = STATE(3893), [sym_array_literal] = STATE(3893), [sym_function_literal] = STATE(3893), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3893), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4263), [sym_false] = ACTIONS(4263), [sym_null] = ACTIONS(4263), [sym_super] = ACTIONS(4263), [sym_this] = ACTIONS(4263), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4265), [sym_float_literal] = ACTIONS(4265), [sym__string] = ACTIONS(3327), }, [1333] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3901), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3901), [sym_primary_expression] = STATE(3901), [sym__primary_expr] = STATE(3901), [sym_index_expression] = STATE(3901), [sym_postfix_expression] = STATE(3901), [sym_unary_expression] = STATE(3901), [sym__unary_expr] = STATE(3901), [sym_property_expression] = STATE(3901), [sym_cast_expression] = STATE(3901), [sym_delete_expression] = STATE(3901), [sym_throw_expression] = STATE(3901), [sym_assert_expression] = STATE(3901), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3901), [sym_new_expression] = STATE(3901), [sym_typeid_expression] = STATE(3901), [sym_is_expression] = STATE(3901), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3901), [sym_char_literal] = STATE(3901), [sym_array_literal] = STATE(3901), [sym_function_literal] = STATE(3901), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3901), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4267), [sym_false] = ACTIONS(4267), [sym_null] = ACTIONS(4267), [sym_super] = ACTIONS(4267), [sym_this] = ACTIONS(4267), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4269), [sym_float_literal] = ACTIONS(4269), [sym__string] = ACTIONS(3327), }, [1334] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3651), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3651), [sym_primary_expression] = STATE(3651), [sym__primary_expr] = STATE(3651), [sym_index_expression] = STATE(3651), [sym_postfix_expression] = STATE(3651), [sym_unary_expression] = STATE(3651), [sym__unary_expr] = STATE(3651), [sym_property_expression] = STATE(3651), [sym_cast_expression] = STATE(3651), [sym_delete_expression] = STATE(3651), [sym_throw_expression] = STATE(3651), [sym_assert_expression] = STATE(3651), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3651), [sym_new_expression] = STATE(3651), [sym_typeid_expression] = STATE(3651), [sym_is_expression] = STATE(3651), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3651), [sym_char_literal] = STATE(3651), [sym_array_literal] = STATE(3651), [sym_function_literal] = STATE(3651), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3651), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4227), [sym_false] = ACTIONS(4227), [sym_null] = ACTIONS(4227), [sym_super] = ACTIONS(4227), [sym_this] = ACTIONS(4227), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4229), [sym_float_literal] = ACTIONS(4229), [sym__string] = ACTIONS(233), }, [1335] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3680), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3680), [sym_primary_expression] = STATE(3680), [sym__primary_expr] = STATE(3680), [sym_index_expression] = STATE(3680), [sym_postfix_expression] = STATE(3680), [sym_unary_expression] = STATE(3680), [sym__unary_expr] = STATE(3680), [sym_property_expression] = STATE(3680), [sym_cast_expression] = STATE(3680), [sym_delete_expression] = STATE(3680), [sym_throw_expression] = STATE(3680), [sym_assert_expression] = STATE(3680), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3680), [sym_new_expression] = STATE(3680), [sym_typeid_expression] = STATE(3680), [sym_is_expression] = STATE(3680), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3680), [sym_char_literal] = STATE(3680), [sym_array_literal] = STATE(3680), [sym_function_literal] = STATE(3680), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3680), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4219), [sym_false] = ACTIONS(4219), [sym_null] = ACTIONS(4219), [sym_super] = ACTIONS(4219), [sym_this] = ACTIONS(4219), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4221), [sym_float_literal] = ACTIONS(4221), [sym__string] = ACTIONS(233), }, [1336] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3621), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3621), [sym_primary_expression] = STATE(3621), [sym__primary_expr] = STATE(3621), [sym_index_expression] = STATE(3621), [sym_postfix_expression] = STATE(3621), [sym_unary_expression] = STATE(3621), [sym__unary_expr] = STATE(3621), [sym_property_expression] = STATE(3621), [sym_cast_expression] = STATE(3621), [sym_delete_expression] = STATE(3621), [sym_throw_expression] = STATE(3621), [sym_assert_expression] = STATE(3621), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3621), [sym_new_expression] = STATE(3621), [sym_typeid_expression] = STATE(3621), [sym_is_expression] = STATE(3621), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3621), [sym_char_literal] = STATE(3621), [sym_array_literal] = STATE(3621), [sym_function_literal] = STATE(3621), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3621), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4235), [sym_false] = ACTIONS(4235), [sym_null] = ACTIONS(4235), [sym_super] = ACTIONS(4235), [sym_this] = ACTIONS(4235), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4237), [sym_float_literal] = ACTIONS(4237), [sym__string] = ACTIONS(233), }, [1337] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4184), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1338] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3893), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3893), [sym_primary_expression] = STATE(3893), [sym__primary_expr] = STATE(3893), [sym_index_expression] = STATE(3893), [sym_postfix_expression] = STATE(3893), [sym_unary_expression] = STATE(3893), [sym__unary_expr] = STATE(3893), [sym_property_expression] = STATE(3893), [sym_cast_expression] = STATE(3893), [sym_delete_expression] = STATE(3893), [sym_throw_expression] = STATE(3893), [sym_assert_expression] = STATE(3893), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3893), [sym_new_expression] = STATE(3893), [sym_typeid_expression] = STATE(3893), [sym_is_expression] = STATE(3893), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3893), [sym_char_literal] = STATE(3893), [sym_array_literal] = STATE(3893), [sym_function_literal] = STATE(3893), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3893), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4263), [sym_false] = ACTIONS(4263), [sym_null] = ACTIONS(4263), [sym_super] = ACTIONS(4263), [sym_this] = ACTIONS(4263), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4265), [sym_float_literal] = ACTIONS(4265), [sym__string] = ACTIONS(3327), }, [1339] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3632), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3632), [sym_primary_expression] = STATE(3632), [sym__primary_expr] = STATE(3632), [sym_index_expression] = STATE(3632), [sym_postfix_expression] = STATE(3632), [sym_unary_expression] = STATE(3632), [sym__unary_expr] = STATE(3632), [sym_property_expression] = STATE(3632), [sym_cast_expression] = STATE(3632), [sym_delete_expression] = STATE(3632), [sym_throw_expression] = STATE(3632), [sym_assert_expression] = STATE(3632), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3632), [sym_new_expression] = STATE(3632), [sym_typeid_expression] = STATE(3632), [sym_is_expression] = STATE(3632), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3632), [sym_char_literal] = STATE(3632), [sym_array_literal] = STATE(3632), [sym_function_literal] = STATE(3632), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3632), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4255), [sym_false] = ACTIONS(4255), [sym_null] = ACTIONS(4255), [sym_super] = ACTIONS(4255), [sym_this] = ACTIONS(4255), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4257), [sym_float_literal] = ACTIONS(4257), [sym__string] = ACTIONS(233), }, [1340] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3651), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3651), [sym_primary_expression] = STATE(3651), [sym__primary_expr] = STATE(3651), [sym_index_expression] = STATE(3651), [sym_postfix_expression] = STATE(3651), [sym_unary_expression] = STATE(3651), [sym__unary_expr] = STATE(3651), [sym_property_expression] = STATE(3651), [sym_cast_expression] = STATE(3651), [sym_delete_expression] = STATE(3651), [sym_throw_expression] = STATE(3651), [sym_assert_expression] = STATE(3651), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3651), [sym_new_expression] = STATE(3651), [sym_typeid_expression] = STATE(3651), [sym_is_expression] = STATE(3651), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3651), [sym_char_literal] = STATE(3651), [sym_array_literal] = STATE(3651), [sym_function_literal] = STATE(3651), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3651), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4227), [sym_false] = ACTIONS(4227), [sym_null] = ACTIONS(4227), [sym_super] = ACTIONS(4227), [sym_this] = ACTIONS(4227), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4229), [sym_float_literal] = ACTIONS(4229), [sym__string] = ACTIONS(233), }, [1341] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3702), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3702), [sym_primary_expression] = STATE(3702), [sym__primary_expr] = STATE(3702), [sym_index_expression] = STATE(3702), [sym_postfix_expression] = STATE(3702), [sym_unary_expression] = STATE(3702), [sym__unary_expr] = STATE(3702), [sym_property_expression] = STATE(3702), [sym_cast_expression] = STATE(3702), [sym_delete_expression] = STATE(3702), [sym_throw_expression] = STATE(3702), [sym_assert_expression] = STATE(3702), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3702), [sym_new_expression] = STATE(3702), [sym_typeid_expression] = STATE(3702), [sym_is_expression] = STATE(3702), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3702), [sym_char_literal] = STATE(3702), [sym_array_literal] = STATE(3702), [sym_function_literal] = STATE(3702), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3702), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4239), [sym_false] = ACTIONS(4239), [sym_null] = ACTIONS(4239), [sym_super] = ACTIONS(4239), [sym_this] = ACTIONS(4239), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4241), [sym_float_literal] = ACTIONS(4241), [sym__string] = ACTIONS(233), }, [1342] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3632), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3881), [sym_call_expression] = STATE(3632), [sym_primary_expression] = STATE(3632), [sym__primary_expr] = STATE(3632), [sym_index_expression] = STATE(3632), [sym_postfix_expression] = STATE(3632), [sym_unary_expression] = STATE(3632), [sym__unary_expr] = STATE(3632), [sym_property_expression] = STATE(3632), [sym_cast_expression] = STATE(3632), [sym_delete_expression] = STATE(3632), [sym_throw_expression] = STATE(3632), [sym_assert_expression] = STATE(3632), [sym_mixin_expression] = STATE(3879), [sym_import_expression] = STATE(3632), [sym_new_expression] = STATE(3632), [sym_typeid_expression] = STATE(3632), [sym_is_expression] = STATE(3632), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3632), [sym_char_literal] = STATE(3632), [sym_array_literal] = STATE(3632), [sym_function_literal] = STATE(3632), [sym__parameter_with_member_attributes] = STATE(4942), [sym_special_keyword] = STATE(3632), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3878), [sym_traits_expression] = STATE(3879), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3181), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3185), [anon_sym_AMP] = ACTIONS(3187), [anon_sym_DASH] = ACTIONS(3189), [anon_sym_DASH_DASH] = ACTIONS(3187), [anon_sym_PLUS] = ACTIONS(3189), [anon_sym_PLUS_PLUS] = ACTIONS(3187), [anon_sym_BANG] = ACTIONS(3187), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3187), [anon_sym_TILDE] = ACTIONS(3187), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4255), [sym_false] = ACTIONS(4255), [sym_null] = ACTIONS(4255), [sym_super] = ACTIONS(4255), [sym_this] = ACTIONS(4255), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3193), [sym_cast] = ACTIONS(3195), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3197), [sym_delete] = ACTIONS(3199), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3201), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3203), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3205), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4257), [sym_float_literal] = ACTIONS(4257), [sym__string] = ACTIONS(233), }, [1343] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4271), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1344] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3912), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3912), [sym_primary_expression] = STATE(3912), [sym__primary_expr] = STATE(3912), [sym_index_expression] = STATE(3912), [sym_postfix_expression] = STATE(3912), [sym_unary_expression] = STATE(3912), [sym__unary_expr] = STATE(3912), [sym_property_expression] = STATE(3912), [sym_cast_expression] = STATE(3912), [sym_delete_expression] = STATE(3912), [sym_throw_expression] = STATE(3912), [sym_assert_expression] = STATE(3912), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3912), [sym_new_expression] = STATE(3912), [sym_typeid_expression] = STATE(3912), [sym_is_expression] = STATE(3912), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3912), [sym_char_literal] = STATE(3912), [sym_array_literal] = STATE(3912), [sym_function_literal] = STATE(3912), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3912), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4200), [sym_false] = ACTIONS(4200), [sym_null] = ACTIONS(4200), [sym_super] = ACTIONS(4200), [sym_this] = ACTIONS(4200), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4202), [sym_float_literal] = ACTIONS(4202), [sym__string] = ACTIONS(3327), }, [1345] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3871), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3871), [sym_primary_expression] = STATE(3871), [sym__primary_expr] = STATE(3871), [sym_index_expression] = STATE(3871), [sym_postfix_expression] = STATE(3871), [sym_unary_expression] = STATE(3871), [sym__unary_expr] = STATE(3871), [sym_property_expression] = STATE(3871), [sym_cast_expression] = STATE(3871), [sym_delete_expression] = STATE(3871), [sym_throw_expression] = STATE(3871), [sym_assert_expression] = STATE(3871), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3871), [sym_new_expression] = STATE(3871), [sym_typeid_expression] = STATE(3871), [sym_is_expression] = STATE(3871), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3871), [sym_char_literal] = STATE(3871), [sym_array_literal] = STATE(3871), [sym_function_literal] = STATE(3871), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3871), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4247), [sym_false] = ACTIONS(4247), [sym_null] = ACTIONS(4247), [sym_super] = ACTIONS(4247), [sym_this] = ACTIONS(4247), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4249), [sym_float_literal] = ACTIONS(4249), [sym__string] = ACTIONS(3327), }, [1346] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3876), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3876), [sym_primary_expression] = STATE(3876), [sym__primary_expr] = STATE(3876), [sym_index_expression] = STATE(3876), [sym_postfix_expression] = STATE(3876), [sym_unary_expression] = STATE(3876), [sym__unary_expr] = STATE(3876), [sym_property_expression] = STATE(3876), [sym_cast_expression] = STATE(3876), [sym_delete_expression] = STATE(3876), [sym_throw_expression] = STATE(3876), [sym_assert_expression] = STATE(3876), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3876), [sym_new_expression] = STATE(3876), [sym_typeid_expression] = STATE(3876), [sym_is_expression] = STATE(3876), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3876), [sym_char_literal] = STATE(3876), [sym_array_literal] = STATE(3876), [sym_function_literal] = STATE(3876), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3876), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4259), [sym_false] = ACTIONS(4259), [sym_null] = ACTIONS(4259), [sym_super] = ACTIONS(4259), [sym_this] = ACTIONS(4259), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4261), [sym_float_literal] = ACTIONS(4261), [sym__string] = ACTIONS(3327), }, [1347] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3908), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3927), [sym_call_expression] = STATE(3908), [sym_primary_expression] = STATE(3908), [sym__primary_expr] = STATE(3908), [sym_index_expression] = STATE(3908), [sym_postfix_expression] = STATE(3908), [sym_unary_expression] = STATE(3908), [sym__unary_expr] = STATE(3908), [sym_property_expression] = STATE(3908), [sym_cast_expression] = STATE(3908), [sym_delete_expression] = STATE(3908), [sym_throw_expression] = STATE(3908), [sym_assert_expression] = STATE(3908), [sym_mixin_expression] = STATE(3928), [sym_import_expression] = STATE(3908), [sym_new_expression] = STATE(3908), [sym_typeid_expression] = STATE(3908), [sym_is_expression] = STATE(3908), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3908), [sym_char_literal] = STATE(3908), [sym_array_literal] = STATE(3908), [sym_function_literal] = STATE(3908), [sym__parameter_with_member_attributes] = STATE(4880), [sym_special_keyword] = STATE(3908), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3922), [sym_traits_expression] = STATE(3928), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3247), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3253), [anon_sym_AMP] = ACTIONS(3255), [anon_sym_DASH] = ACTIONS(3257), [anon_sym_DASH_DASH] = ACTIONS(3255), [anon_sym_PLUS] = ACTIONS(3257), [anon_sym_PLUS_PLUS] = ACTIONS(3255), [anon_sym_BANG] = ACTIONS(3255), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3255), [anon_sym_TILDE] = ACTIONS(3255), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4176), [sym_false] = ACTIONS(4176), [sym_null] = ACTIONS(4176), [sym_super] = ACTIONS(4176), [sym_this] = ACTIONS(4176), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3273), [sym_cast] = ACTIONS(3275), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3277), [sym_delete] = ACTIONS(3279), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3283), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3293), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3295), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4178), [sym_float_literal] = ACTIONS(4178), [sym__string] = ACTIONS(3327), }, [1348] = { [sym_token_string] = STATE(3547), [sym_dollar] = STATE(3901), [sym_type] = STATE(6678), [sym_type_ctor] = STATE(4271), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5320), [sym__builtin_type] = STATE(5230), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3906), [sym_call_expression] = STATE(3901), [sym_primary_expression] = STATE(3901), [sym__primary_expr] = STATE(3901), [sym_index_expression] = STATE(3901), [sym_postfix_expression] = STATE(3901), [sym_unary_expression] = STATE(3901), [sym__unary_expr] = STATE(3901), [sym_property_expression] = STATE(3901), [sym_cast_expression] = STATE(3901), [sym_delete_expression] = STATE(3901), [sym_throw_expression] = STATE(3901), [sym_assert_expression] = STATE(3901), [sym_mixin_expression] = STATE(3910), [sym_import_expression] = STATE(3901), [sym_new_expression] = STATE(3901), [sym_typeid_expression] = STATE(3901), [sym_is_expression] = STATE(3901), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3901), [sym_char_literal] = STATE(3901), [sym_array_literal] = STATE(3901), [sym_function_literal] = STATE(3901), [sym__parameter_with_member_attributes] = STATE(4905), [sym_special_keyword] = STATE(3901), [sym_block_statement] = STATE(3941), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3941), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(3914), [sym_traits_expression] = STATE(3910), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(3617), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(3467), [anon_sym_AMP] = ACTIONS(3619), [anon_sym_DASH] = ACTIONS(3621), [anon_sym_DASH_DASH] = ACTIONS(3619), [anon_sym_PLUS] = ACTIONS(3621), [anon_sym_PLUS_PLUS] = ACTIONS(3619), [anon_sym_BANG] = ACTIONS(3619), [anon_sym_LPAREN] = ACTIONS(3259), [anon_sym_LBRACK] = ACTIONS(3261), [anon_sym_DOLLAR] = ACTIONS(3265), [anon_sym_STAR] = ACTIONS(3619), [anon_sym_TILDE] = ACTIONS(3619), [sym_bool] = ACTIONS(3267), [sym_byte] = ACTIONS(3267), [sym_ubyte] = ACTIONS(3267), [sym_char] = ACTIONS(3267), [sym_short] = ACTIONS(3267), [sym_ushort] = ACTIONS(3267), [sym_int] = ACTIONS(3267), [sym_uint] = ACTIONS(3267), [sym_long] = ACTIONS(3267), [sym_ulong] = ACTIONS(3267), [sym_cent] = ACTIONS(3267), [sym_ucent] = ACTIONS(3267), [sym_wchar] = ACTIONS(3267), [sym_dchar] = ACTIONS(3267), [sym_float] = ACTIONS(3267), [sym_double] = ACTIONS(3267), [sym_real] = ACTIONS(3267), [sym_ifloat] = ACTIONS(3267), [sym_idouble] = ACTIONS(3267), [sym_ireal] = ACTIONS(3267), [sym_cfloat] = ACTIONS(3267), [sym_cdouble] = ACTIONS(3267), [sym_creal] = ACTIONS(3267), [sym_size_t] = ACTIONS(3267), [sym_ptrdiff_t] = ACTIONS(3267), [sym_string] = ACTIONS(3267), [sym_cstring] = ACTIONS(3267), [sym_dstring] = ACTIONS(3267), [sym_wstring] = ACTIONS(3267), [sym_noreturn] = ACTIONS(3267), [sym_true] = ACTIONS(4267), [sym_false] = ACTIONS(4267), [sym_null] = ACTIONS(4267), [sym_super] = ACTIONS(4267), [sym_this] = ACTIONS(4267), [sym_assert] = ACTIONS(3271), [sym_auto] = ACTIONS(3623), [sym_cast] = ACTIONS(3625), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3627), [sym_delete] = ACTIONS(3629), [sym_do] = ACTIONS(3281), [sym_function] = ACTIONS(3631), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3285), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3287), [sym_mixin] = ACTIONS(3289), [sym_new] = ACTIONS(3291), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3633), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3635), [sym_typeid] = ACTIONS(3297), [sym_typeof] = ACTIONS(3299), [sym_traits] = ACTIONS(3301), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3303), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4269), [sym_float_literal] = ACTIONS(4269), [sym__string] = ACTIONS(3327), }, [1349] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4273), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1350] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3989), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3989), [sym_primary_expression] = STATE(3989), [sym__primary_expr] = STATE(3989), [sym_index_expression] = STATE(3989), [sym_postfix_expression] = STATE(3989), [sym_unary_expression] = STATE(3989), [sym__unary_expr] = STATE(3989), [sym_property_expression] = STATE(3989), [sym_cast_expression] = STATE(3989), [sym_delete_expression] = STATE(3989), [sym_throw_expression] = STATE(3989), [sym_assert_expression] = STATE(3989), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3989), [sym_new_expression] = STATE(3989), [sym_typeid_expression] = STATE(3989), [sym_is_expression] = STATE(3989), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3989), [sym_char_literal] = STATE(3989), [sym_array_literal] = STATE(3989), [sym_function_literal] = STATE(3989), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3989), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4275), [sym_false] = ACTIONS(4275), [sym_null] = ACTIONS(4275), [sym_super] = ACTIONS(4275), [sym_this] = ACTIONS(4275), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4277), [sym_float_literal] = ACTIONS(4277), [sym__string] = ACTIONS(3713), }, [1351] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3702), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3884), [sym_call_expression] = STATE(3702), [sym_primary_expression] = STATE(3702), [sym__primary_expr] = STATE(3702), [sym_index_expression] = STATE(3702), [sym_postfix_expression] = STATE(3702), [sym_unary_expression] = STATE(3702), [sym__unary_expr] = STATE(3702), [sym_property_expression] = STATE(3702), [sym_cast_expression] = STATE(3702), [sym_delete_expression] = STATE(3702), [sym_throw_expression] = STATE(3702), [sym_assert_expression] = STATE(3702), [sym_mixin_expression] = STATE(3886), [sym_import_expression] = STATE(3702), [sym_new_expression] = STATE(3702), [sym_typeid_expression] = STATE(3702), [sym_is_expression] = STATE(3702), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3702), [sym_char_literal] = STATE(3702), [sym_array_literal] = STATE(3702), [sym_function_literal] = STATE(3702), [sym__parameter_with_member_attributes] = STATE(4830), [sym_special_keyword] = STATE(3702), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3888), [sym_traits_expression] = STATE(3886), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(3593), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(3239), [anon_sym_AMP] = ACTIONS(3595), [anon_sym_DASH] = ACTIONS(3597), [anon_sym_DASH_DASH] = ACTIONS(3595), [anon_sym_PLUS] = ACTIONS(3597), [anon_sym_PLUS_PLUS] = ACTIONS(3595), [anon_sym_BANG] = ACTIONS(3595), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(3595), [anon_sym_TILDE] = ACTIONS(3595), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4239), [sym_false] = ACTIONS(4239), [sym_null] = ACTIONS(4239), [sym_super] = ACTIONS(4239), [sym_this] = ACTIONS(4239), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(3599), [sym_cast] = ACTIONS(3601), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3603), [sym_delete] = ACTIONS(3605), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(3607), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3609), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3611), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4241), [sym_float_literal] = ACTIONS(4241), [sym__string] = ACTIONS(233), }, [1352] = { [sym_token_string] = STATE(3527), [sym_dollar] = STATE(3949), [sym_type] = STATE(6778), [sym_type_ctor] = STATE(4269), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5348), [sym__builtin_type] = STATE(5285), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3866), [sym_call_expression] = STATE(3949), [sym_primary_expression] = STATE(3949), [sym__primary_expr] = STATE(3949), [sym_index_expression] = STATE(3949), [sym_postfix_expression] = STATE(3949), [sym_unary_expression] = STATE(3949), [sym__unary_expr] = STATE(3949), [sym_property_expression] = STATE(3949), [sym_cast_expression] = STATE(3949), [sym_delete_expression] = STATE(3949), [sym_throw_expression] = STATE(3949), [sym_assert_expression] = STATE(3949), [sym_mixin_expression] = STATE(3865), [sym_import_expression] = STATE(3949), [sym_new_expression] = STATE(3949), [sym_typeid_expression] = STATE(3949), [sym_is_expression] = STATE(3949), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3949), [sym_char_literal] = STATE(3949), [sym_array_literal] = STATE(3949), [sym_function_literal] = STATE(3949), [sym__parameter_with_member_attributes] = STATE(4868), [sym_special_keyword] = STATE(3949), [sym_block_statement] = STATE(4042), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4042), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(3864), [sym_traits_expression] = STATE(3865), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(3641), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(3647), [anon_sym_AMP] = ACTIONS(3649), [anon_sym_DASH] = ACTIONS(3651), [anon_sym_DASH_DASH] = ACTIONS(3649), [anon_sym_PLUS] = ACTIONS(3651), [anon_sym_PLUS_PLUS] = ACTIONS(3649), [anon_sym_BANG] = ACTIONS(3649), [anon_sym_LPAREN] = ACTIONS(3653), [anon_sym_LBRACK] = ACTIONS(3655), [anon_sym_DOLLAR] = ACTIONS(3657), [anon_sym_STAR] = ACTIONS(3649), [anon_sym_TILDE] = ACTIONS(3649), [sym_bool] = ACTIONS(3659), [sym_byte] = ACTIONS(3659), [sym_ubyte] = ACTIONS(3659), [sym_char] = ACTIONS(3659), [sym_short] = ACTIONS(3659), [sym_ushort] = ACTIONS(3659), [sym_int] = ACTIONS(3659), [sym_uint] = ACTIONS(3659), [sym_long] = ACTIONS(3659), [sym_ulong] = ACTIONS(3659), [sym_cent] = ACTIONS(3659), [sym_ucent] = ACTIONS(3659), [sym_wchar] = ACTIONS(3659), [sym_dchar] = ACTIONS(3659), [sym_float] = ACTIONS(3659), [sym_double] = ACTIONS(3659), [sym_real] = ACTIONS(3659), [sym_ifloat] = ACTIONS(3659), [sym_idouble] = ACTIONS(3659), [sym_ireal] = ACTIONS(3659), [sym_cfloat] = ACTIONS(3659), [sym_cdouble] = ACTIONS(3659), [sym_creal] = ACTIONS(3659), [sym_size_t] = ACTIONS(3659), [sym_ptrdiff_t] = ACTIONS(3659), [sym_string] = ACTIONS(3659), [sym_cstring] = ACTIONS(3659), [sym_dstring] = ACTIONS(3659), [sym_wstring] = ACTIONS(3659), [sym_noreturn] = ACTIONS(3659), [sym_true] = ACTIONS(4279), [sym_false] = ACTIONS(4279), [sym_null] = ACTIONS(4279), [sym_super] = ACTIONS(4279), [sym_this] = ACTIONS(4279), [sym_assert] = ACTIONS(3663), [sym_auto] = ACTIONS(3665), [sym_cast] = ACTIONS(3667), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(3669), [sym_delete] = ACTIONS(3671), [sym_do] = ACTIONS(3673), [sym_function] = ACTIONS(3675), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(3677), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(3679), [sym_mixin] = ACTIONS(3147), [sym_new] = ACTIONS(3681), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(3683), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(3685), [sym_typeid] = ACTIONS(3687), [sym_typeof] = ACTIONS(3155), [sym_traits] = ACTIONS(3157), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(3689), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4281), [sym_float_literal] = ACTIONS(4281), [sym__string] = ACTIONS(3713), }, [1353] = { [sym_token_string] = STATE(3437), [sym_dollar] = STATE(3629), [sym_type] = STATE(6705), [sym_type_ctor] = STATE(4280), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(5082), [sym__builtin_type] = STATE(5059), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(3539), [sym_call_expression] = STATE(3629), [sym_primary_expression] = STATE(3629), [sym__primary_expr] = STATE(3629), [sym_index_expression] = STATE(3629), [sym_postfix_expression] = STATE(3629), [sym_unary_expression] = STATE(3629), [sym__unary_expr] = STATE(3629), [sym_property_expression] = STATE(3629), [sym_cast_expression] = STATE(3629), [sym_delete_expression] = STATE(3629), [sym_throw_expression] = STATE(3629), [sym_assert_expression] = STATE(3629), [sym_mixin_expression] = STATE(3573), [sym_import_expression] = STATE(3629), [sym_new_expression] = STATE(3629), [sym_typeid_expression] = STATE(3629), [sym_is_expression] = STATE(3629), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3629), [sym_char_literal] = STATE(3629), [sym_array_literal] = STATE(3629), [sym_function_literal] = STATE(3629), [sym__parameter_with_member_attributes] = STATE(4864), [sym_special_keyword] = STATE(3629), [sym_block_statement] = STATE(3806), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3806), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(3577), [sym_traits_expression] = STATE(3573), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(2956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(87), [anon_sym_AMP] = ACTIONS(89), [anon_sym_DASH] = ACTIONS(91), [anon_sym_DASH_DASH] = ACTIONS(89), [anon_sym_PLUS] = ACTIONS(91), [anon_sym_PLUS_PLUS] = ACTIONS(89), [anon_sym_BANG] = ACTIONS(89), [anon_sym_LPAREN] = ACTIONS(93), [anon_sym_LBRACK] = ACTIONS(95), [anon_sym_DOLLAR] = ACTIONS(99), [anon_sym_STAR] = ACTIONS(89), [anon_sym_TILDE] = ACTIONS(89), [sym_bool] = ACTIONS(103), [sym_byte] = ACTIONS(103), [sym_ubyte] = ACTIONS(103), [sym_char] = ACTIONS(103), [sym_short] = ACTIONS(103), [sym_ushort] = ACTIONS(103), [sym_int] = ACTIONS(103), [sym_uint] = ACTIONS(103), [sym_long] = ACTIONS(103), [sym_ulong] = ACTIONS(103), [sym_cent] = ACTIONS(103), [sym_ucent] = ACTIONS(103), [sym_wchar] = ACTIONS(103), [sym_dchar] = ACTIONS(103), [sym_float] = ACTIONS(103), [sym_double] = ACTIONS(103), [sym_real] = ACTIONS(103), [sym_ifloat] = ACTIONS(103), [sym_idouble] = ACTIONS(103), [sym_ireal] = ACTIONS(103), [sym_cfloat] = ACTIONS(103), [sym_cdouble] = ACTIONS(103), [sym_creal] = ACTIONS(103), [sym_size_t] = ACTIONS(103), [sym_ptrdiff_t] = ACTIONS(103), [sym_string] = ACTIONS(103), [sym_cstring] = ACTIONS(103), [sym_dstring] = ACTIONS(103), [sym_wstring] = ACTIONS(103), [sym_noreturn] = ACTIONS(103), [sym_true] = ACTIONS(4184), [sym_false] = ACTIONS(4184), [sym_null] = ACTIONS(4184), [sym_super] = ACTIONS(4184), [sym_this] = ACTIONS(4283), [sym_assert] = ACTIONS(113), [sym_auto] = ACTIONS(2962), [sym_cast] = ACTIONS(121), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(131), [sym_delete] = ACTIONS(133), [sym_do] = ACTIONS(2966), [sym_function] = ACTIONS(147), [sym_immutable] = ACTIONS(2964), [sym_import] = ACTIONS(2968), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_is] = ACTIONS(161), [sym_mixin] = ACTIONS(2970), [sym_new] = ACTIONS(165), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(2972), [sym_shared] = ACTIONS(2964), [sym_throw] = ACTIONS(189), [sym_typeid] = ACTIONS(193), [sym_typeof] = ACTIONS(195), [sym_traits] = ACTIONS(207), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(247), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4186), [sym_float_literal] = ACTIONS(4186), [sym__string] = ACTIONS(233), }, [1354] = { [sym_identifier] = ACTIONS(4285), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4287), [anon_sym_RBRACE] = ACTIONS(4287), [anon_sym_LBRACE] = ACTIONS(4287), [anon_sym_DOT] = ACTIONS(4287), [anon_sym_AMP] = ACTIONS(4287), [anon_sym_DASH] = ACTIONS(4285), [anon_sym_DASH_DASH] = ACTIONS(4287), [anon_sym_PLUS] = ACTIONS(4285), [anon_sym_PLUS_PLUS] = ACTIONS(4287), [anon_sym_BANG] = ACTIONS(4287), [anon_sym_LPAREN] = ACTIONS(4287), [anon_sym_RPAREN] = ACTIONS(4287), [anon_sym_LBRACK] = ACTIONS(4287), [anon_sym_SEMI] = ACTIONS(4287), [anon_sym_DOLLAR] = ACTIONS(4287), [anon_sym_STAR] = ACTIONS(4287), [anon_sym_TILDE] = ACTIONS(4287), [anon_sym_AT] = ACTIONS(4287), [sym_bool] = ACTIONS(4285), [sym_byte] = ACTIONS(4285), [sym_ubyte] = ACTIONS(4285), [sym_char] = ACTIONS(4285), [sym_short] = ACTIONS(4285), [sym_ushort] = ACTIONS(4285), [sym_int] = ACTIONS(4285), [sym_uint] = ACTIONS(4285), [sym_long] = ACTIONS(4285), [sym_ulong] = ACTIONS(4285), [sym_cent] = ACTIONS(4285), [sym_ucent] = ACTIONS(4285), [sym_wchar] = ACTIONS(4285), [sym_dchar] = ACTIONS(4285), [sym_float] = ACTIONS(4285), [sym_double] = ACTIONS(4285), [sym_real] = ACTIONS(4285), [sym_ifloat] = ACTIONS(4285), [sym_idouble] = ACTIONS(4285), [sym_ireal] = ACTIONS(4285), [sym_cfloat] = ACTIONS(4285), [sym_cdouble] = ACTIONS(4285), [sym_creal] = ACTIONS(4285), [sym_size_t] = ACTIONS(4285), [sym_ptrdiff_t] = ACTIONS(4285), [sym_string] = ACTIONS(4285), [sym_cstring] = ACTIONS(4285), [sym_dstring] = ACTIONS(4285), [sym_wstring] = ACTIONS(4285), [sym_noreturn] = ACTIONS(4285), [sym_true] = ACTIONS(4285), [sym_false] = ACTIONS(4285), [sym_null] = ACTIONS(4285), [sym_super] = ACTIONS(4285), [sym_this] = ACTIONS(4285), [sym_abstract] = ACTIONS(4285), [sym_alias] = ACTIONS(4285), [sym_align] = ACTIONS(4285), [sym_asm] = ACTIONS(4285), [sym_assert] = ACTIONS(4285), [sym_auto] = ACTIONS(4285), [sym_break] = ACTIONS(4285), [sym_case] = ACTIONS(4285), [sym_cast] = ACTIONS(4285), [sym_catch] = ACTIONS(4285), [sym_class] = ACTIONS(4285), [sym_const] = ACTIONS(4285), [sym_continue] = ACTIONS(4285), [sym_debug] = ACTIONS(4285), [sym_default] = ACTIONS(4285), [sym_delegate] = ACTIONS(4285), [sym_delete] = ACTIONS(4285), [sym_deprecated] = ACTIONS(4285), [sym_do] = ACTIONS(4285), [sym_else] = ACTIONS(4285), [sym_enum] = ACTIONS(4285), [sym_export] = ACTIONS(4285), [sym_extern] = ACTIONS(4285), [sym_final] = ACTIONS(4285), [sym_finally] = ACTIONS(4285), [sym_for] = ACTIONS(4285), [sym_foreach] = ACTIONS(4285), [sym_foreach_reverse] = ACTIONS(4285), [sym_function] = ACTIONS(4285), [sym_goto] = ACTIONS(4285), [sym_if] = ACTIONS(4285), [sym_immutable] = ACTIONS(4285), [sym_import] = ACTIONS(4285), [sym_in] = ACTIONS(4285), [sym_inout] = ACTIONS(4285), [sym_interface] = ACTIONS(4285), [sym_invariant] = ACTIONS(4285), [sym_is] = ACTIONS(4285), [sym_mixin] = ACTIONS(4285), [sym_new] = ACTIONS(4285), [sym_nothrow] = ACTIONS(4285), [sym_out] = ACTIONS(4285), [sym_override] = ACTIONS(4285), [sym_package] = ACTIONS(4285), [sym_pragma] = ACTIONS(4285), [sym_private] = ACTIONS(4285), [sym_protected] = ACTIONS(4285), [sym_public] = ACTIONS(4285), [sym_pure] = ACTIONS(4285), [sym_ref] = ACTIONS(4285), [sym_return] = ACTIONS(4285), [sym_scope] = ACTIONS(4285), [sym_shared] = ACTIONS(4285), [sym_static] = ACTIONS(4285), [sym_struct] = ACTIONS(4285), [sym_switch] = ACTIONS(4285), [sym_synchronized] = ACTIONS(4285), [sym_template] = ACTIONS(4285), [sym_throw] = ACTIONS(4285), [sym_try] = ACTIONS(4285), [sym_typeid] = ACTIONS(4285), [sym_typeof] = ACTIONS(4285), [sym_union] = ACTIONS(4285), [sym_unittest] = ACTIONS(4285), [sym_version] = ACTIONS(4285), [sym_while] = ACTIONS(4285), [sym_with] = ACTIONS(4285), [sym_gshared] = ACTIONS(4285), [sym_traits] = ACTIONS(4285), [sym_vector] = ACTIONS(4285), [sym_void] = ACTIONS(4285), [anon_sym_BQUOTE] = ACTIONS(4287), [anon_sym_r_DQUOTE] = ACTIONS(4287), [anon_sym_x_DQUOTE] = ACTIONS(4287), [anon_sym_DQUOTE] = ACTIONS(4287), [anon_sym_i_BQUOTE] = ACTIONS(4287), [anon_sym_i_DQUOTE] = ACTIONS(4287), [anon_sym_iq_LBRACE] = ACTIONS(4287), [aux_sym_char_literal_token1] = ACTIONS(4287), [anon_sym_SQUOTE] = ACTIONS(4285), [anon_sym___DATE__] = ACTIONS(4285), [anon_sym___FILE__] = ACTIONS(4285), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4285), [anon_sym___FUNCTION__] = ACTIONS(4285), [anon_sym___LINE__] = ACTIONS(4285), [anon_sym___MODULE__] = ACTIONS(4285), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4285), [anon_sym___TIME__] = ACTIONS(4285), [anon_sym___TIMESTAMP__] = ACTIONS(4285), [anon_sym___VENDOR__] = ACTIONS(4285), [anon_sym___VERSION__] = ACTIONS(4285), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4287), [sym_float_literal] = ACTIONS(4287), [sym__string] = ACTIONS(4287), }, [1355] = { [sym_identifier] = ACTIONS(4289), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4291), [anon_sym_RBRACE] = ACTIONS(4291), [anon_sym_LBRACE] = ACTIONS(4291), [anon_sym_DOT] = ACTIONS(4291), [anon_sym_AMP] = ACTIONS(4291), [anon_sym_DASH] = ACTIONS(4289), [anon_sym_DASH_DASH] = ACTIONS(4291), [anon_sym_PLUS] = ACTIONS(4289), [anon_sym_PLUS_PLUS] = ACTIONS(4291), [anon_sym_BANG] = ACTIONS(4291), [anon_sym_LPAREN] = ACTIONS(4291), [anon_sym_RPAREN] = ACTIONS(4291), [anon_sym_LBRACK] = ACTIONS(4291), [anon_sym_SEMI] = ACTIONS(4291), [anon_sym_DOLLAR] = ACTIONS(4291), [anon_sym_STAR] = ACTIONS(4291), [anon_sym_TILDE] = ACTIONS(4291), [anon_sym_AT] = ACTIONS(4291), [sym_bool] = ACTIONS(4289), [sym_byte] = ACTIONS(4289), [sym_ubyte] = ACTIONS(4289), [sym_char] = ACTIONS(4289), [sym_short] = ACTIONS(4289), [sym_ushort] = ACTIONS(4289), [sym_int] = ACTIONS(4289), [sym_uint] = ACTIONS(4289), [sym_long] = ACTIONS(4289), [sym_ulong] = ACTIONS(4289), [sym_cent] = ACTIONS(4289), [sym_ucent] = ACTIONS(4289), [sym_wchar] = ACTIONS(4289), [sym_dchar] = ACTIONS(4289), [sym_float] = ACTIONS(4289), [sym_double] = ACTIONS(4289), [sym_real] = ACTIONS(4289), [sym_ifloat] = ACTIONS(4289), [sym_idouble] = ACTIONS(4289), [sym_ireal] = ACTIONS(4289), [sym_cfloat] = ACTIONS(4289), [sym_cdouble] = ACTIONS(4289), [sym_creal] = ACTIONS(4289), [sym_size_t] = ACTIONS(4289), [sym_ptrdiff_t] = ACTIONS(4289), [sym_string] = ACTIONS(4289), [sym_cstring] = ACTIONS(4289), [sym_dstring] = ACTIONS(4289), [sym_wstring] = ACTIONS(4289), [sym_noreturn] = ACTIONS(4289), [sym_true] = ACTIONS(4289), [sym_false] = ACTIONS(4289), [sym_null] = ACTIONS(4289), [sym_super] = ACTIONS(4289), [sym_this] = ACTIONS(4289), [sym_abstract] = ACTIONS(4289), [sym_alias] = ACTIONS(4289), [sym_align] = ACTIONS(4289), [sym_asm] = ACTIONS(4289), [sym_assert] = ACTIONS(4289), [sym_auto] = ACTIONS(4289), [sym_break] = ACTIONS(4289), [sym_case] = ACTIONS(4289), [sym_cast] = ACTIONS(4289), [sym_catch] = ACTIONS(4289), [sym_class] = ACTIONS(4289), [sym_const] = ACTIONS(4289), [sym_continue] = ACTIONS(4289), [sym_debug] = ACTIONS(4289), [sym_default] = ACTIONS(4289), [sym_delegate] = ACTIONS(4289), [sym_delete] = ACTIONS(4289), [sym_deprecated] = ACTIONS(4289), [sym_do] = ACTIONS(4289), [sym_else] = ACTIONS(4289), [sym_enum] = ACTIONS(4289), [sym_export] = ACTIONS(4289), [sym_extern] = ACTIONS(4289), [sym_final] = ACTIONS(4289), [sym_finally] = ACTIONS(4289), [sym_for] = ACTIONS(4289), [sym_foreach] = ACTIONS(4289), [sym_foreach_reverse] = ACTIONS(4289), [sym_function] = ACTIONS(4289), [sym_goto] = ACTIONS(4289), [sym_if] = ACTIONS(4289), [sym_immutable] = ACTIONS(4289), [sym_import] = ACTIONS(4289), [sym_in] = ACTIONS(4289), [sym_inout] = ACTIONS(4289), [sym_interface] = ACTIONS(4289), [sym_invariant] = ACTIONS(4289), [sym_is] = ACTIONS(4289), [sym_mixin] = ACTIONS(4289), [sym_new] = ACTIONS(4289), [sym_nothrow] = ACTIONS(4289), [sym_out] = ACTIONS(4289), [sym_override] = ACTIONS(4289), [sym_package] = ACTIONS(4289), [sym_pragma] = ACTIONS(4289), [sym_private] = ACTIONS(4289), [sym_protected] = ACTIONS(4289), [sym_public] = ACTIONS(4289), [sym_pure] = ACTIONS(4289), [sym_ref] = ACTIONS(4289), [sym_return] = ACTIONS(4289), [sym_scope] = ACTIONS(4289), [sym_shared] = ACTIONS(4289), [sym_static] = ACTIONS(4289), [sym_struct] = ACTIONS(4289), [sym_switch] = ACTIONS(4289), [sym_synchronized] = ACTIONS(4289), [sym_template] = ACTIONS(4289), [sym_throw] = ACTIONS(4289), [sym_try] = ACTIONS(4289), [sym_typeid] = ACTIONS(4289), [sym_typeof] = ACTIONS(4289), [sym_union] = ACTIONS(4289), [sym_unittest] = ACTIONS(4289), [sym_version] = ACTIONS(4289), [sym_while] = ACTIONS(4289), [sym_with] = ACTIONS(4289), [sym_gshared] = ACTIONS(4289), [sym_traits] = ACTIONS(4289), [sym_vector] = ACTIONS(4289), [sym_void] = ACTIONS(4289), [anon_sym_BQUOTE] = ACTIONS(4291), [anon_sym_r_DQUOTE] = ACTIONS(4291), [anon_sym_x_DQUOTE] = ACTIONS(4291), [anon_sym_DQUOTE] = ACTIONS(4291), [anon_sym_i_BQUOTE] = ACTIONS(4291), [anon_sym_i_DQUOTE] = ACTIONS(4291), [anon_sym_iq_LBRACE] = ACTIONS(4291), [aux_sym_char_literal_token1] = ACTIONS(4291), [anon_sym_SQUOTE] = ACTIONS(4289), [anon_sym___DATE__] = ACTIONS(4289), [anon_sym___FILE__] = ACTIONS(4289), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4289), [anon_sym___FUNCTION__] = ACTIONS(4289), [anon_sym___LINE__] = ACTIONS(4289), [anon_sym___MODULE__] = ACTIONS(4289), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4289), [anon_sym___TIME__] = ACTIONS(4289), [anon_sym___TIMESTAMP__] = ACTIONS(4289), [anon_sym___VENDOR__] = ACTIONS(4289), [anon_sym___VERSION__] = ACTIONS(4289), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4291), [sym_float_literal] = ACTIONS(4291), [sym__string] = ACTIONS(4291), }, [1356] = { [sym_identifier] = ACTIONS(4293), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4295), [anon_sym_RBRACE] = ACTIONS(4295), [anon_sym_LBRACE] = ACTIONS(4295), [anon_sym_DOT] = ACTIONS(4295), [anon_sym_AMP] = ACTIONS(4295), [anon_sym_DASH] = ACTIONS(4293), [anon_sym_DASH_DASH] = ACTIONS(4295), [anon_sym_PLUS] = ACTIONS(4293), [anon_sym_PLUS_PLUS] = ACTIONS(4295), [anon_sym_BANG] = ACTIONS(4295), [anon_sym_LPAREN] = ACTIONS(4295), [anon_sym_RPAREN] = ACTIONS(4295), [anon_sym_LBRACK] = ACTIONS(4295), [anon_sym_SEMI] = ACTIONS(4295), [anon_sym_DOLLAR] = ACTIONS(4295), [anon_sym_STAR] = ACTIONS(4295), [anon_sym_TILDE] = ACTIONS(4295), [anon_sym_AT] = ACTIONS(4295), [sym_bool] = ACTIONS(4293), [sym_byte] = ACTIONS(4293), [sym_ubyte] = ACTIONS(4293), [sym_char] = ACTIONS(4293), [sym_short] = ACTIONS(4293), [sym_ushort] = ACTIONS(4293), [sym_int] = ACTIONS(4293), [sym_uint] = ACTIONS(4293), [sym_long] = ACTIONS(4293), [sym_ulong] = ACTIONS(4293), [sym_cent] = ACTIONS(4293), [sym_ucent] = ACTIONS(4293), [sym_wchar] = ACTIONS(4293), [sym_dchar] = ACTIONS(4293), [sym_float] = ACTIONS(4293), [sym_double] = ACTIONS(4293), [sym_real] = ACTIONS(4293), [sym_ifloat] = ACTIONS(4293), [sym_idouble] = ACTIONS(4293), [sym_ireal] = ACTIONS(4293), [sym_cfloat] = ACTIONS(4293), [sym_cdouble] = ACTIONS(4293), [sym_creal] = ACTIONS(4293), [sym_size_t] = ACTIONS(4293), [sym_ptrdiff_t] = ACTIONS(4293), [sym_string] = ACTIONS(4293), [sym_cstring] = ACTIONS(4293), [sym_dstring] = ACTIONS(4293), [sym_wstring] = ACTIONS(4293), [sym_noreturn] = ACTIONS(4293), [sym_true] = ACTIONS(4293), [sym_false] = ACTIONS(4293), [sym_null] = ACTIONS(4293), [sym_super] = ACTIONS(4293), [sym_this] = ACTIONS(4293), [sym_abstract] = ACTIONS(4293), [sym_alias] = ACTIONS(4293), [sym_align] = ACTIONS(4293), [sym_asm] = ACTIONS(4293), [sym_assert] = ACTIONS(4293), [sym_auto] = ACTIONS(4293), [sym_break] = ACTIONS(4293), [sym_case] = ACTIONS(4293), [sym_cast] = ACTIONS(4293), [sym_catch] = ACTIONS(4293), [sym_class] = ACTIONS(4293), [sym_const] = ACTIONS(4293), [sym_continue] = ACTIONS(4293), [sym_debug] = ACTIONS(4293), [sym_default] = ACTIONS(4293), [sym_delegate] = ACTIONS(4293), [sym_delete] = ACTIONS(4293), [sym_deprecated] = ACTIONS(4293), [sym_do] = ACTIONS(4293), [sym_else] = ACTIONS(4293), [sym_enum] = ACTIONS(4293), [sym_export] = ACTIONS(4293), [sym_extern] = ACTIONS(4293), [sym_final] = ACTIONS(4293), [sym_finally] = ACTIONS(4293), [sym_for] = ACTIONS(4293), [sym_foreach] = ACTIONS(4293), [sym_foreach_reverse] = ACTIONS(4293), [sym_function] = ACTIONS(4293), [sym_goto] = ACTIONS(4293), [sym_if] = ACTIONS(4293), [sym_immutable] = ACTIONS(4293), [sym_import] = ACTIONS(4293), [sym_in] = ACTIONS(4293), [sym_inout] = ACTIONS(4293), [sym_interface] = ACTIONS(4293), [sym_invariant] = ACTIONS(4293), [sym_is] = ACTIONS(4293), [sym_mixin] = ACTIONS(4293), [sym_new] = ACTIONS(4293), [sym_nothrow] = ACTIONS(4293), [sym_out] = ACTIONS(4293), [sym_override] = ACTIONS(4293), [sym_package] = ACTIONS(4293), [sym_pragma] = ACTIONS(4293), [sym_private] = ACTIONS(4293), [sym_protected] = ACTIONS(4293), [sym_public] = ACTIONS(4293), [sym_pure] = ACTIONS(4293), [sym_ref] = ACTIONS(4293), [sym_return] = ACTIONS(4293), [sym_scope] = ACTIONS(4293), [sym_shared] = ACTIONS(4293), [sym_static] = ACTIONS(4293), [sym_struct] = ACTIONS(4293), [sym_switch] = ACTIONS(4293), [sym_synchronized] = ACTIONS(4293), [sym_template] = ACTIONS(4293), [sym_throw] = ACTIONS(4293), [sym_try] = ACTIONS(4293), [sym_typeid] = ACTIONS(4293), [sym_typeof] = ACTIONS(4293), [sym_union] = ACTIONS(4293), [sym_unittest] = ACTIONS(4293), [sym_version] = ACTIONS(4293), [sym_while] = ACTIONS(4293), [sym_with] = ACTIONS(4293), [sym_gshared] = ACTIONS(4293), [sym_traits] = ACTIONS(4293), [sym_vector] = ACTIONS(4293), [sym_void] = ACTIONS(4293), [anon_sym_BQUOTE] = ACTIONS(4295), [anon_sym_r_DQUOTE] = ACTIONS(4295), [anon_sym_x_DQUOTE] = ACTIONS(4295), [anon_sym_DQUOTE] = ACTIONS(4295), [anon_sym_i_BQUOTE] = ACTIONS(4295), [anon_sym_i_DQUOTE] = ACTIONS(4295), [anon_sym_iq_LBRACE] = ACTIONS(4295), [aux_sym_char_literal_token1] = ACTIONS(4295), [anon_sym_SQUOTE] = ACTIONS(4293), [anon_sym___DATE__] = ACTIONS(4293), [anon_sym___FILE__] = ACTIONS(4293), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4293), [anon_sym___FUNCTION__] = ACTIONS(4293), [anon_sym___LINE__] = ACTIONS(4293), [anon_sym___MODULE__] = ACTIONS(4293), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4293), [anon_sym___TIME__] = ACTIONS(4293), [anon_sym___TIMESTAMP__] = ACTIONS(4293), [anon_sym___VENDOR__] = ACTIONS(4293), [anon_sym___VERSION__] = ACTIONS(4293), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4295), [sym_float_literal] = ACTIONS(4295), [sym__string] = ACTIONS(4295), }, [1357] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4299), [anon_sym_RBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(4299), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_AMP] = ACTIONS(4299), [anon_sym_DASH] = ACTIONS(4297), [anon_sym_DASH_DASH] = ACTIONS(4299), [anon_sym_PLUS] = ACTIONS(4297), [anon_sym_PLUS_PLUS] = ACTIONS(4299), [anon_sym_BANG] = ACTIONS(4299), [anon_sym_LPAREN] = ACTIONS(4299), [anon_sym_RPAREN] = ACTIONS(4299), [anon_sym_LBRACK] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(4299), [anon_sym_DOLLAR] = ACTIONS(4299), [anon_sym_STAR] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_true] = ACTIONS(4297), [sym_false] = ACTIONS(4297), [sym_null] = ACTIONS(4297), [sym_super] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_asm] = ACTIONS(4297), [sym_assert] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_break] = ACTIONS(4297), [sym_case] = ACTIONS(4297), [sym_cast] = ACTIONS(4297), [sym_catch] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_continue] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_default] = ACTIONS(4297), [sym_delegate] = ACTIONS(4297), [sym_delete] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(4297), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_finally] = ACTIONS(4297), [sym_for] = ACTIONS(4297), [sym_foreach] = ACTIONS(4297), [sym_foreach_reverse] = ACTIONS(4297), [sym_function] = ACTIONS(4297), [sym_goto] = ACTIONS(4297), [sym_if] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(4297), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_is] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_new] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(4297), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_switch] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_throw] = ACTIONS(4297), [sym_try] = ACTIONS(4297), [sym_typeid] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_with] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [anon_sym_BQUOTE] = ACTIONS(4299), [anon_sym_r_DQUOTE] = ACTIONS(4299), [anon_sym_x_DQUOTE] = ACTIONS(4299), [anon_sym_DQUOTE] = ACTIONS(4299), [anon_sym_i_BQUOTE] = ACTIONS(4299), [anon_sym_i_DQUOTE] = ACTIONS(4299), [anon_sym_iq_LBRACE] = ACTIONS(4299), [aux_sym_char_literal_token1] = ACTIONS(4299), [anon_sym_SQUOTE] = ACTIONS(4297), [anon_sym___DATE__] = ACTIONS(4297), [anon_sym___FILE__] = ACTIONS(4297), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4297), [anon_sym___FUNCTION__] = ACTIONS(4297), [anon_sym___LINE__] = ACTIONS(4297), [anon_sym___MODULE__] = ACTIONS(4297), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4297), [anon_sym___TIME__] = ACTIONS(4297), [anon_sym___TIMESTAMP__] = ACTIONS(4297), [anon_sym___VENDOR__] = ACTIONS(4297), [anon_sym___VERSION__] = ACTIONS(4297), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4299), [sym_float_literal] = ACTIONS(4299), [sym__string] = ACTIONS(4299), }, [1358] = { [sym_identifier] = ACTIONS(4301), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4303), [anon_sym_RBRACE] = ACTIONS(4303), [anon_sym_LBRACE] = ACTIONS(4303), [anon_sym_DOT] = ACTIONS(4303), [anon_sym_AMP] = ACTIONS(4303), [anon_sym_DASH] = ACTIONS(4301), [anon_sym_DASH_DASH] = ACTIONS(4303), [anon_sym_PLUS] = ACTIONS(4301), [anon_sym_PLUS_PLUS] = ACTIONS(4303), [anon_sym_BANG] = ACTIONS(4303), [anon_sym_LPAREN] = ACTIONS(4303), [anon_sym_RPAREN] = ACTIONS(4303), [anon_sym_LBRACK] = ACTIONS(4303), [anon_sym_SEMI] = ACTIONS(4303), [anon_sym_DOLLAR] = ACTIONS(4303), [anon_sym_STAR] = ACTIONS(4303), [anon_sym_TILDE] = ACTIONS(4303), [anon_sym_AT] = ACTIONS(4303), [sym_bool] = ACTIONS(4301), [sym_byte] = ACTIONS(4301), [sym_ubyte] = ACTIONS(4301), [sym_char] = ACTIONS(4301), [sym_short] = ACTIONS(4301), [sym_ushort] = ACTIONS(4301), [sym_int] = ACTIONS(4301), [sym_uint] = ACTIONS(4301), [sym_long] = ACTIONS(4301), [sym_ulong] = ACTIONS(4301), [sym_cent] = ACTIONS(4301), [sym_ucent] = ACTIONS(4301), [sym_wchar] = ACTIONS(4301), [sym_dchar] = ACTIONS(4301), [sym_float] = ACTIONS(4301), [sym_double] = ACTIONS(4301), [sym_real] = ACTIONS(4301), [sym_ifloat] = ACTIONS(4301), [sym_idouble] = ACTIONS(4301), [sym_ireal] = ACTIONS(4301), [sym_cfloat] = ACTIONS(4301), [sym_cdouble] = ACTIONS(4301), [sym_creal] = ACTIONS(4301), [sym_size_t] = ACTIONS(4301), [sym_ptrdiff_t] = ACTIONS(4301), [sym_string] = ACTIONS(4301), [sym_cstring] = ACTIONS(4301), [sym_dstring] = ACTIONS(4301), [sym_wstring] = ACTIONS(4301), [sym_noreturn] = ACTIONS(4301), [sym_true] = ACTIONS(4301), [sym_false] = ACTIONS(4301), [sym_null] = ACTIONS(4301), [sym_super] = ACTIONS(4301), [sym_this] = ACTIONS(4301), [sym_abstract] = ACTIONS(4301), [sym_alias] = ACTIONS(4301), [sym_align] = ACTIONS(4301), [sym_asm] = ACTIONS(4301), [sym_assert] = ACTIONS(4301), [sym_auto] = ACTIONS(4301), [sym_break] = ACTIONS(4301), [sym_case] = ACTIONS(4301), [sym_cast] = ACTIONS(4301), [sym_catch] = ACTIONS(4301), [sym_class] = ACTIONS(4301), [sym_const] = ACTIONS(4301), [sym_continue] = ACTIONS(4301), [sym_debug] = ACTIONS(4301), [sym_default] = ACTIONS(4301), [sym_delegate] = ACTIONS(4301), [sym_delete] = ACTIONS(4301), [sym_deprecated] = ACTIONS(4301), [sym_do] = ACTIONS(4301), [sym_else] = ACTIONS(4301), [sym_enum] = ACTIONS(4301), [sym_export] = ACTIONS(4301), [sym_extern] = ACTIONS(4301), [sym_final] = ACTIONS(4301), [sym_finally] = ACTIONS(4301), [sym_for] = ACTIONS(4301), [sym_foreach] = ACTIONS(4301), [sym_foreach_reverse] = ACTIONS(4301), [sym_function] = ACTIONS(4301), [sym_goto] = ACTIONS(4301), [sym_if] = ACTIONS(4301), [sym_immutable] = ACTIONS(4301), [sym_import] = ACTIONS(4301), [sym_in] = ACTIONS(4301), [sym_inout] = ACTIONS(4301), [sym_interface] = ACTIONS(4301), [sym_invariant] = ACTIONS(4301), [sym_is] = ACTIONS(4301), [sym_mixin] = ACTIONS(4301), [sym_new] = ACTIONS(4301), [sym_nothrow] = ACTIONS(4301), [sym_out] = ACTIONS(4301), [sym_override] = ACTIONS(4301), [sym_package] = ACTIONS(4301), [sym_pragma] = ACTIONS(4301), [sym_private] = ACTIONS(4301), [sym_protected] = ACTIONS(4301), [sym_public] = ACTIONS(4301), [sym_pure] = ACTIONS(4301), [sym_ref] = ACTIONS(4301), [sym_return] = ACTIONS(4301), [sym_scope] = ACTIONS(4301), [sym_shared] = ACTIONS(4301), [sym_static] = ACTIONS(4301), [sym_struct] = ACTIONS(4301), [sym_switch] = ACTIONS(4301), [sym_synchronized] = ACTIONS(4301), [sym_template] = ACTIONS(4301), [sym_throw] = ACTIONS(4301), [sym_try] = ACTIONS(4301), [sym_typeid] = ACTIONS(4301), [sym_typeof] = ACTIONS(4301), [sym_union] = ACTIONS(4301), [sym_unittest] = ACTIONS(4301), [sym_version] = ACTIONS(4301), [sym_while] = ACTIONS(4301), [sym_with] = ACTIONS(4301), [sym_gshared] = ACTIONS(4301), [sym_traits] = ACTIONS(4301), [sym_vector] = ACTIONS(4301), [sym_void] = ACTIONS(4301), [anon_sym_BQUOTE] = ACTIONS(4303), [anon_sym_r_DQUOTE] = ACTIONS(4303), [anon_sym_x_DQUOTE] = ACTIONS(4303), [anon_sym_DQUOTE] = ACTIONS(4303), [anon_sym_i_BQUOTE] = ACTIONS(4303), [anon_sym_i_DQUOTE] = ACTIONS(4303), [anon_sym_iq_LBRACE] = ACTIONS(4303), [aux_sym_char_literal_token1] = ACTIONS(4303), [anon_sym_SQUOTE] = ACTIONS(4301), [anon_sym___DATE__] = ACTIONS(4301), [anon_sym___FILE__] = ACTIONS(4301), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4301), [anon_sym___FUNCTION__] = ACTIONS(4301), [anon_sym___LINE__] = ACTIONS(4301), [anon_sym___MODULE__] = ACTIONS(4301), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4301), [anon_sym___TIME__] = ACTIONS(4301), [anon_sym___TIMESTAMP__] = ACTIONS(4301), [anon_sym___VENDOR__] = ACTIONS(4301), [anon_sym___VERSION__] = ACTIONS(4301), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4303), [sym_float_literal] = ACTIONS(4303), [sym__string] = ACTIONS(4303), }, [1359] = { [sym_identifier] = ACTIONS(4305), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4307), [anon_sym_RBRACE] = ACTIONS(4307), [anon_sym_LBRACE] = ACTIONS(4307), [anon_sym_DOT] = ACTIONS(4307), [anon_sym_AMP] = ACTIONS(4307), [anon_sym_DASH] = ACTIONS(4305), [anon_sym_DASH_DASH] = ACTIONS(4307), [anon_sym_PLUS] = ACTIONS(4305), [anon_sym_PLUS_PLUS] = ACTIONS(4307), [anon_sym_BANG] = ACTIONS(4307), [anon_sym_LPAREN] = ACTIONS(4307), [anon_sym_RPAREN] = ACTIONS(4307), [anon_sym_LBRACK] = ACTIONS(4307), [anon_sym_SEMI] = ACTIONS(4307), [anon_sym_DOLLAR] = ACTIONS(4307), [anon_sym_STAR] = ACTIONS(4307), [anon_sym_TILDE] = ACTIONS(4307), [anon_sym_AT] = ACTIONS(4307), [sym_bool] = ACTIONS(4305), [sym_byte] = ACTIONS(4305), [sym_ubyte] = ACTIONS(4305), [sym_char] = ACTIONS(4305), [sym_short] = ACTIONS(4305), [sym_ushort] = ACTIONS(4305), [sym_int] = ACTIONS(4305), [sym_uint] = ACTIONS(4305), [sym_long] = ACTIONS(4305), [sym_ulong] = ACTIONS(4305), [sym_cent] = ACTIONS(4305), [sym_ucent] = ACTIONS(4305), [sym_wchar] = ACTIONS(4305), [sym_dchar] = ACTIONS(4305), [sym_float] = ACTIONS(4305), [sym_double] = ACTIONS(4305), [sym_real] = ACTIONS(4305), [sym_ifloat] = ACTIONS(4305), [sym_idouble] = ACTIONS(4305), [sym_ireal] = ACTIONS(4305), [sym_cfloat] = ACTIONS(4305), [sym_cdouble] = ACTIONS(4305), [sym_creal] = ACTIONS(4305), [sym_size_t] = ACTIONS(4305), [sym_ptrdiff_t] = ACTIONS(4305), [sym_string] = ACTIONS(4305), [sym_cstring] = ACTIONS(4305), [sym_dstring] = ACTIONS(4305), [sym_wstring] = ACTIONS(4305), [sym_noreturn] = ACTIONS(4305), [sym_true] = ACTIONS(4305), [sym_false] = ACTIONS(4305), [sym_null] = ACTIONS(4305), [sym_super] = ACTIONS(4305), [sym_this] = ACTIONS(4305), [sym_abstract] = ACTIONS(4305), [sym_alias] = ACTIONS(4305), [sym_align] = ACTIONS(4305), [sym_asm] = ACTIONS(4305), [sym_assert] = ACTIONS(4305), [sym_auto] = ACTIONS(4305), [sym_break] = ACTIONS(4305), [sym_case] = ACTIONS(4305), [sym_cast] = ACTIONS(4305), [sym_catch] = ACTIONS(4305), [sym_class] = ACTIONS(4305), [sym_const] = ACTIONS(4305), [sym_continue] = ACTIONS(4305), [sym_debug] = ACTIONS(4305), [sym_default] = ACTIONS(4305), [sym_delegate] = ACTIONS(4305), [sym_delete] = ACTIONS(4305), [sym_deprecated] = ACTIONS(4305), [sym_do] = ACTIONS(4305), [sym_else] = ACTIONS(4305), [sym_enum] = ACTIONS(4305), [sym_export] = ACTIONS(4305), [sym_extern] = ACTIONS(4305), [sym_final] = ACTIONS(4305), [sym_finally] = ACTIONS(4305), [sym_for] = ACTIONS(4305), [sym_foreach] = ACTIONS(4305), [sym_foreach_reverse] = ACTIONS(4305), [sym_function] = ACTIONS(4305), [sym_goto] = ACTIONS(4305), [sym_if] = ACTIONS(4305), [sym_immutable] = ACTIONS(4305), [sym_import] = ACTIONS(4305), [sym_in] = ACTIONS(4305), [sym_inout] = ACTIONS(4305), [sym_interface] = ACTIONS(4305), [sym_invariant] = ACTIONS(4305), [sym_is] = ACTIONS(4305), [sym_mixin] = ACTIONS(4305), [sym_new] = ACTIONS(4305), [sym_nothrow] = ACTIONS(4305), [sym_out] = ACTIONS(4305), [sym_override] = ACTIONS(4305), [sym_package] = ACTIONS(4305), [sym_pragma] = ACTIONS(4305), [sym_private] = ACTIONS(4305), [sym_protected] = ACTIONS(4305), [sym_public] = ACTIONS(4305), [sym_pure] = ACTIONS(4305), [sym_ref] = ACTIONS(4305), [sym_return] = ACTIONS(4305), [sym_scope] = ACTIONS(4305), [sym_shared] = ACTIONS(4305), [sym_static] = ACTIONS(4305), [sym_struct] = ACTIONS(4305), [sym_switch] = ACTIONS(4305), [sym_synchronized] = ACTIONS(4305), [sym_template] = ACTIONS(4305), [sym_throw] = ACTIONS(4305), [sym_try] = ACTIONS(4305), [sym_typeid] = ACTIONS(4305), [sym_typeof] = ACTIONS(4305), [sym_union] = ACTIONS(4305), [sym_unittest] = ACTIONS(4305), [sym_version] = ACTIONS(4305), [sym_while] = ACTIONS(4305), [sym_with] = ACTIONS(4305), [sym_gshared] = ACTIONS(4305), [sym_traits] = ACTIONS(4305), [sym_vector] = ACTIONS(4305), [sym_void] = ACTIONS(4305), [anon_sym_BQUOTE] = ACTIONS(4307), [anon_sym_r_DQUOTE] = ACTIONS(4307), [anon_sym_x_DQUOTE] = ACTIONS(4307), [anon_sym_DQUOTE] = ACTIONS(4307), [anon_sym_i_BQUOTE] = ACTIONS(4307), [anon_sym_i_DQUOTE] = ACTIONS(4307), [anon_sym_iq_LBRACE] = ACTIONS(4307), [aux_sym_char_literal_token1] = ACTIONS(4307), [anon_sym_SQUOTE] = ACTIONS(4305), [anon_sym___DATE__] = ACTIONS(4305), [anon_sym___FILE__] = ACTIONS(4305), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4305), [anon_sym___FUNCTION__] = ACTIONS(4305), [anon_sym___LINE__] = ACTIONS(4305), [anon_sym___MODULE__] = ACTIONS(4305), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4305), [anon_sym___TIME__] = ACTIONS(4305), [anon_sym___TIMESTAMP__] = ACTIONS(4305), [anon_sym___VENDOR__] = ACTIONS(4305), [anon_sym___VERSION__] = ACTIONS(4305), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4307), [sym_float_literal] = ACTIONS(4307), [sym__string] = ACTIONS(4307), }, [1360] = { [sym_identifier] = ACTIONS(4309), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4311), [anon_sym_RBRACE] = ACTIONS(4311), [anon_sym_LBRACE] = ACTIONS(4311), [anon_sym_DOT] = ACTIONS(4311), [anon_sym_AMP] = ACTIONS(4311), [anon_sym_DASH] = ACTIONS(4309), [anon_sym_DASH_DASH] = ACTIONS(4311), [anon_sym_PLUS] = ACTIONS(4309), [anon_sym_PLUS_PLUS] = ACTIONS(4311), [anon_sym_BANG] = ACTIONS(4311), [anon_sym_LPAREN] = ACTIONS(4311), [anon_sym_RPAREN] = ACTIONS(4311), [anon_sym_LBRACK] = ACTIONS(4311), [anon_sym_SEMI] = ACTIONS(4311), [anon_sym_DOLLAR] = ACTIONS(4311), [anon_sym_STAR] = ACTIONS(4311), [anon_sym_TILDE] = ACTIONS(4311), [anon_sym_AT] = ACTIONS(4311), [sym_bool] = ACTIONS(4309), [sym_byte] = ACTIONS(4309), [sym_ubyte] = ACTIONS(4309), [sym_char] = ACTIONS(4309), [sym_short] = ACTIONS(4309), [sym_ushort] = ACTIONS(4309), [sym_int] = ACTIONS(4309), [sym_uint] = ACTIONS(4309), [sym_long] = ACTIONS(4309), [sym_ulong] = ACTIONS(4309), [sym_cent] = ACTIONS(4309), [sym_ucent] = ACTIONS(4309), [sym_wchar] = ACTIONS(4309), [sym_dchar] = ACTIONS(4309), [sym_float] = ACTIONS(4309), [sym_double] = ACTIONS(4309), [sym_real] = ACTIONS(4309), [sym_ifloat] = ACTIONS(4309), [sym_idouble] = ACTIONS(4309), [sym_ireal] = ACTIONS(4309), [sym_cfloat] = ACTIONS(4309), [sym_cdouble] = ACTIONS(4309), [sym_creal] = ACTIONS(4309), [sym_size_t] = ACTIONS(4309), [sym_ptrdiff_t] = ACTIONS(4309), [sym_string] = ACTIONS(4309), [sym_cstring] = ACTIONS(4309), [sym_dstring] = ACTIONS(4309), [sym_wstring] = ACTIONS(4309), [sym_noreturn] = ACTIONS(4309), [sym_true] = ACTIONS(4309), [sym_false] = ACTIONS(4309), [sym_null] = ACTIONS(4309), [sym_super] = ACTIONS(4309), [sym_this] = ACTIONS(4309), [sym_abstract] = ACTIONS(4309), [sym_alias] = ACTIONS(4309), [sym_align] = ACTIONS(4309), [sym_asm] = ACTIONS(4309), [sym_assert] = ACTIONS(4309), [sym_auto] = ACTIONS(4309), [sym_break] = ACTIONS(4309), [sym_case] = ACTIONS(4309), [sym_cast] = ACTIONS(4309), [sym_catch] = ACTIONS(4309), [sym_class] = ACTIONS(4309), [sym_const] = ACTIONS(4309), [sym_continue] = ACTIONS(4309), [sym_debug] = ACTIONS(4309), [sym_default] = ACTIONS(4309), [sym_delegate] = ACTIONS(4309), [sym_delete] = ACTIONS(4309), [sym_deprecated] = ACTIONS(4309), [sym_do] = ACTIONS(4309), [sym_else] = ACTIONS(4309), [sym_enum] = ACTIONS(4309), [sym_export] = ACTIONS(4309), [sym_extern] = ACTIONS(4309), [sym_final] = ACTIONS(4309), [sym_finally] = ACTIONS(4309), [sym_for] = ACTIONS(4309), [sym_foreach] = ACTIONS(4309), [sym_foreach_reverse] = ACTIONS(4309), [sym_function] = ACTIONS(4309), [sym_goto] = ACTIONS(4309), [sym_if] = ACTIONS(4309), [sym_immutable] = ACTIONS(4309), [sym_import] = ACTIONS(4309), [sym_in] = ACTIONS(4309), [sym_inout] = ACTIONS(4309), [sym_interface] = ACTIONS(4309), [sym_invariant] = ACTIONS(4309), [sym_is] = ACTIONS(4309), [sym_mixin] = ACTIONS(4309), [sym_new] = ACTIONS(4309), [sym_nothrow] = ACTIONS(4309), [sym_out] = ACTIONS(4309), [sym_override] = ACTIONS(4309), [sym_package] = ACTIONS(4309), [sym_pragma] = ACTIONS(4309), [sym_private] = ACTIONS(4309), [sym_protected] = ACTIONS(4309), [sym_public] = ACTIONS(4309), [sym_pure] = ACTIONS(4309), [sym_ref] = ACTIONS(4309), [sym_return] = ACTIONS(4309), [sym_scope] = ACTIONS(4309), [sym_shared] = ACTIONS(4309), [sym_static] = ACTIONS(4309), [sym_struct] = ACTIONS(4309), [sym_switch] = ACTIONS(4309), [sym_synchronized] = ACTIONS(4309), [sym_template] = ACTIONS(4309), [sym_throw] = ACTIONS(4309), [sym_try] = ACTIONS(4309), [sym_typeid] = ACTIONS(4309), [sym_typeof] = ACTIONS(4309), [sym_union] = ACTIONS(4309), [sym_unittest] = ACTIONS(4309), [sym_version] = ACTIONS(4309), [sym_while] = ACTIONS(4309), [sym_with] = ACTIONS(4309), [sym_gshared] = ACTIONS(4309), [sym_traits] = ACTIONS(4309), [sym_vector] = ACTIONS(4309), [sym_void] = ACTIONS(4309), [anon_sym_BQUOTE] = ACTIONS(4311), [anon_sym_r_DQUOTE] = ACTIONS(4311), [anon_sym_x_DQUOTE] = ACTIONS(4311), [anon_sym_DQUOTE] = ACTIONS(4311), [anon_sym_i_BQUOTE] = ACTIONS(4311), [anon_sym_i_DQUOTE] = ACTIONS(4311), [anon_sym_iq_LBRACE] = ACTIONS(4311), [aux_sym_char_literal_token1] = ACTIONS(4311), [anon_sym_SQUOTE] = ACTIONS(4309), [anon_sym___DATE__] = ACTIONS(4309), [anon_sym___FILE__] = ACTIONS(4309), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4309), [anon_sym___FUNCTION__] = ACTIONS(4309), [anon_sym___LINE__] = ACTIONS(4309), [anon_sym___MODULE__] = ACTIONS(4309), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4309), [anon_sym___TIME__] = ACTIONS(4309), [anon_sym___TIMESTAMP__] = ACTIONS(4309), [anon_sym___VENDOR__] = ACTIONS(4309), [anon_sym___VERSION__] = ACTIONS(4309), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4311), [sym_float_literal] = ACTIONS(4311), [sym__string] = ACTIONS(4311), }, [1361] = { [sym_identifier] = ACTIONS(4313), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4315), [anon_sym_RBRACE] = ACTIONS(4315), [anon_sym_LBRACE] = ACTIONS(4315), [anon_sym_DOT] = ACTIONS(4315), [anon_sym_AMP] = ACTIONS(4315), [anon_sym_DASH] = ACTIONS(4313), [anon_sym_DASH_DASH] = ACTIONS(4315), [anon_sym_PLUS] = ACTIONS(4313), [anon_sym_PLUS_PLUS] = ACTIONS(4315), [anon_sym_BANG] = ACTIONS(4315), [anon_sym_LPAREN] = ACTIONS(4315), [anon_sym_RPAREN] = ACTIONS(4315), [anon_sym_LBRACK] = ACTIONS(4315), [anon_sym_SEMI] = ACTIONS(4315), [anon_sym_DOLLAR] = ACTIONS(4315), [anon_sym_STAR] = ACTIONS(4315), [anon_sym_TILDE] = ACTIONS(4315), [anon_sym_AT] = ACTIONS(4315), [sym_bool] = ACTIONS(4313), [sym_byte] = ACTIONS(4313), [sym_ubyte] = ACTIONS(4313), [sym_char] = ACTIONS(4313), [sym_short] = ACTIONS(4313), [sym_ushort] = ACTIONS(4313), [sym_int] = ACTIONS(4313), [sym_uint] = ACTIONS(4313), [sym_long] = ACTIONS(4313), [sym_ulong] = ACTIONS(4313), [sym_cent] = ACTIONS(4313), [sym_ucent] = ACTIONS(4313), [sym_wchar] = ACTIONS(4313), [sym_dchar] = ACTIONS(4313), [sym_float] = ACTIONS(4313), [sym_double] = ACTIONS(4313), [sym_real] = ACTIONS(4313), [sym_ifloat] = ACTIONS(4313), [sym_idouble] = ACTIONS(4313), [sym_ireal] = ACTIONS(4313), [sym_cfloat] = ACTIONS(4313), [sym_cdouble] = ACTIONS(4313), [sym_creal] = ACTIONS(4313), [sym_size_t] = ACTIONS(4313), [sym_ptrdiff_t] = ACTIONS(4313), [sym_string] = ACTIONS(4313), [sym_cstring] = ACTIONS(4313), [sym_dstring] = ACTIONS(4313), [sym_wstring] = ACTIONS(4313), [sym_noreturn] = ACTIONS(4313), [sym_true] = ACTIONS(4313), [sym_false] = ACTIONS(4313), [sym_null] = ACTIONS(4313), [sym_super] = ACTIONS(4313), [sym_this] = ACTIONS(4313), [sym_abstract] = ACTIONS(4313), [sym_alias] = ACTIONS(4313), [sym_align] = ACTIONS(4313), [sym_asm] = ACTIONS(4313), [sym_assert] = ACTIONS(4313), [sym_auto] = ACTIONS(4313), [sym_break] = ACTIONS(4313), [sym_case] = ACTIONS(4313), [sym_cast] = ACTIONS(4313), [sym_catch] = ACTIONS(4313), [sym_class] = ACTIONS(4313), [sym_const] = ACTIONS(4313), [sym_continue] = ACTIONS(4313), [sym_debug] = ACTIONS(4313), [sym_default] = ACTIONS(4313), [sym_delegate] = ACTIONS(4313), [sym_delete] = ACTIONS(4313), [sym_deprecated] = ACTIONS(4313), [sym_do] = ACTIONS(4313), [sym_else] = ACTIONS(4313), [sym_enum] = ACTIONS(4313), [sym_export] = ACTIONS(4313), [sym_extern] = ACTIONS(4313), [sym_final] = ACTIONS(4313), [sym_finally] = ACTIONS(4313), [sym_for] = ACTIONS(4313), [sym_foreach] = ACTIONS(4313), [sym_foreach_reverse] = ACTIONS(4313), [sym_function] = ACTIONS(4313), [sym_goto] = ACTIONS(4313), [sym_if] = ACTIONS(4313), [sym_immutable] = ACTIONS(4313), [sym_import] = ACTIONS(4313), [sym_in] = ACTIONS(4313), [sym_inout] = ACTIONS(4313), [sym_interface] = ACTIONS(4313), [sym_invariant] = ACTIONS(4313), [sym_is] = ACTIONS(4313), [sym_mixin] = ACTIONS(4313), [sym_new] = ACTIONS(4313), [sym_nothrow] = ACTIONS(4313), [sym_out] = ACTIONS(4313), [sym_override] = ACTIONS(4313), [sym_package] = ACTIONS(4313), [sym_pragma] = ACTIONS(4313), [sym_private] = ACTIONS(4313), [sym_protected] = ACTIONS(4313), [sym_public] = ACTIONS(4313), [sym_pure] = ACTIONS(4313), [sym_ref] = ACTIONS(4313), [sym_return] = ACTIONS(4313), [sym_scope] = ACTIONS(4313), [sym_shared] = ACTIONS(4313), [sym_static] = ACTIONS(4313), [sym_struct] = ACTIONS(4313), [sym_switch] = ACTIONS(4313), [sym_synchronized] = ACTIONS(4313), [sym_template] = ACTIONS(4313), [sym_throw] = ACTIONS(4313), [sym_try] = ACTIONS(4313), [sym_typeid] = ACTIONS(4313), [sym_typeof] = ACTIONS(4313), [sym_union] = ACTIONS(4313), [sym_unittest] = ACTIONS(4313), [sym_version] = ACTIONS(4313), [sym_while] = ACTIONS(4313), [sym_with] = ACTIONS(4313), [sym_gshared] = ACTIONS(4313), [sym_traits] = ACTIONS(4313), [sym_vector] = ACTIONS(4313), [sym_void] = ACTIONS(4313), [anon_sym_BQUOTE] = ACTIONS(4315), [anon_sym_r_DQUOTE] = ACTIONS(4315), [anon_sym_x_DQUOTE] = ACTIONS(4315), [anon_sym_DQUOTE] = ACTIONS(4315), [anon_sym_i_BQUOTE] = ACTIONS(4315), [anon_sym_i_DQUOTE] = ACTIONS(4315), [anon_sym_iq_LBRACE] = ACTIONS(4315), [aux_sym_char_literal_token1] = ACTIONS(4315), [anon_sym_SQUOTE] = ACTIONS(4313), [anon_sym___DATE__] = ACTIONS(4313), [anon_sym___FILE__] = ACTIONS(4313), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4313), [anon_sym___FUNCTION__] = ACTIONS(4313), [anon_sym___LINE__] = ACTIONS(4313), [anon_sym___MODULE__] = ACTIONS(4313), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4313), [anon_sym___TIME__] = ACTIONS(4313), [anon_sym___TIMESTAMP__] = ACTIONS(4313), [anon_sym___VENDOR__] = ACTIONS(4313), [anon_sym___VERSION__] = ACTIONS(4313), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4315), [sym_float_literal] = ACTIONS(4315), [sym__string] = ACTIONS(4315), }, [1362] = { [sym_identifier] = ACTIONS(4317), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4319), [anon_sym_RBRACE] = ACTIONS(4319), [anon_sym_LBRACE] = ACTIONS(4319), [anon_sym_DOT] = ACTIONS(4319), [anon_sym_AMP] = ACTIONS(4319), [anon_sym_DASH] = ACTIONS(4317), [anon_sym_DASH_DASH] = ACTIONS(4319), [anon_sym_PLUS] = ACTIONS(4317), [anon_sym_PLUS_PLUS] = ACTIONS(4319), [anon_sym_BANG] = ACTIONS(4319), [anon_sym_LPAREN] = ACTIONS(4319), [anon_sym_RPAREN] = ACTIONS(4319), [anon_sym_LBRACK] = ACTIONS(4319), [anon_sym_SEMI] = ACTIONS(4319), [anon_sym_DOLLAR] = ACTIONS(4319), [anon_sym_STAR] = ACTIONS(4319), [anon_sym_TILDE] = ACTIONS(4319), [anon_sym_AT] = ACTIONS(4319), [sym_bool] = ACTIONS(4317), [sym_byte] = ACTIONS(4317), [sym_ubyte] = ACTIONS(4317), [sym_char] = ACTIONS(4317), [sym_short] = ACTIONS(4317), [sym_ushort] = ACTIONS(4317), [sym_int] = ACTIONS(4317), [sym_uint] = ACTIONS(4317), [sym_long] = ACTIONS(4317), [sym_ulong] = ACTIONS(4317), [sym_cent] = ACTIONS(4317), [sym_ucent] = ACTIONS(4317), [sym_wchar] = ACTIONS(4317), [sym_dchar] = ACTIONS(4317), [sym_float] = ACTIONS(4317), [sym_double] = ACTIONS(4317), [sym_real] = ACTIONS(4317), [sym_ifloat] = ACTIONS(4317), [sym_idouble] = ACTIONS(4317), [sym_ireal] = ACTIONS(4317), [sym_cfloat] = ACTIONS(4317), [sym_cdouble] = ACTIONS(4317), [sym_creal] = ACTIONS(4317), [sym_size_t] = ACTIONS(4317), [sym_ptrdiff_t] = ACTIONS(4317), [sym_string] = ACTIONS(4317), [sym_cstring] = ACTIONS(4317), [sym_dstring] = ACTIONS(4317), [sym_wstring] = ACTIONS(4317), [sym_noreturn] = ACTIONS(4317), [sym_true] = ACTIONS(4317), [sym_false] = ACTIONS(4317), [sym_null] = ACTIONS(4317), [sym_super] = ACTIONS(4317), [sym_this] = ACTIONS(4317), [sym_abstract] = ACTIONS(4317), [sym_alias] = ACTIONS(4317), [sym_align] = ACTIONS(4317), [sym_asm] = ACTIONS(4317), [sym_assert] = ACTIONS(4317), [sym_auto] = ACTIONS(4317), [sym_break] = ACTIONS(4317), [sym_case] = ACTIONS(4317), [sym_cast] = ACTIONS(4317), [sym_catch] = ACTIONS(4317), [sym_class] = ACTIONS(4317), [sym_const] = ACTIONS(4317), [sym_continue] = ACTIONS(4317), [sym_debug] = ACTIONS(4317), [sym_default] = ACTIONS(4317), [sym_delegate] = ACTIONS(4317), [sym_delete] = ACTIONS(4317), [sym_deprecated] = ACTIONS(4317), [sym_do] = ACTIONS(4317), [sym_else] = ACTIONS(4317), [sym_enum] = ACTIONS(4317), [sym_export] = ACTIONS(4317), [sym_extern] = ACTIONS(4317), [sym_final] = ACTIONS(4317), [sym_finally] = ACTIONS(4317), [sym_for] = ACTIONS(4317), [sym_foreach] = ACTIONS(4317), [sym_foreach_reverse] = ACTIONS(4317), [sym_function] = ACTIONS(4317), [sym_goto] = ACTIONS(4317), [sym_if] = ACTIONS(4317), [sym_immutable] = ACTIONS(4317), [sym_import] = ACTIONS(4317), [sym_in] = ACTIONS(4317), [sym_inout] = ACTIONS(4317), [sym_interface] = ACTIONS(4317), [sym_invariant] = ACTIONS(4317), [sym_is] = ACTIONS(4317), [sym_mixin] = ACTIONS(4317), [sym_new] = ACTIONS(4317), [sym_nothrow] = ACTIONS(4317), [sym_out] = ACTIONS(4317), [sym_override] = ACTIONS(4317), [sym_package] = ACTIONS(4317), [sym_pragma] = ACTIONS(4317), [sym_private] = ACTIONS(4317), [sym_protected] = ACTIONS(4317), [sym_public] = ACTIONS(4317), [sym_pure] = ACTIONS(4317), [sym_ref] = ACTIONS(4317), [sym_return] = ACTIONS(4317), [sym_scope] = ACTIONS(4317), [sym_shared] = ACTIONS(4317), [sym_static] = ACTIONS(4317), [sym_struct] = ACTIONS(4317), [sym_switch] = ACTIONS(4317), [sym_synchronized] = ACTIONS(4317), [sym_template] = ACTIONS(4317), [sym_throw] = ACTIONS(4317), [sym_try] = ACTIONS(4317), [sym_typeid] = ACTIONS(4317), [sym_typeof] = ACTIONS(4317), [sym_union] = ACTIONS(4317), [sym_unittest] = ACTIONS(4317), [sym_version] = ACTIONS(4317), [sym_while] = ACTIONS(4317), [sym_with] = ACTIONS(4317), [sym_gshared] = ACTIONS(4317), [sym_traits] = ACTIONS(4317), [sym_vector] = ACTIONS(4317), [sym_void] = ACTIONS(4317), [anon_sym_BQUOTE] = ACTIONS(4319), [anon_sym_r_DQUOTE] = ACTIONS(4319), [anon_sym_x_DQUOTE] = ACTIONS(4319), [anon_sym_DQUOTE] = ACTIONS(4319), [anon_sym_i_BQUOTE] = ACTIONS(4319), [anon_sym_i_DQUOTE] = ACTIONS(4319), [anon_sym_iq_LBRACE] = ACTIONS(4319), [aux_sym_char_literal_token1] = ACTIONS(4319), [anon_sym_SQUOTE] = ACTIONS(4317), [anon_sym___DATE__] = ACTIONS(4317), [anon_sym___FILE__] = ACTIONS(4317), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4317), [anon_sym___FUNCTION__] = ACTIONS(4317), [anon_sym___LINE__] = ACTIONS(4317), [anon_sym___MODULE__] = ACTIONS(4317), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4317), [anon_sym___TIME__] = ACTIONS(4317), [anon_sym___TIMESTAMP__] = ACTIONS(4317), [anon_sym___VENDOR__] = ACTIONS(4317), [anon_sym___VERSION__] = ACTIONS(4317), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4319), [sym_float_literal] = ACTIONS(4319), [sym__string] = ACTIONS(4319), }, [1363] = { [sym_identifier] = ACTIONS(4321), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4324), [anon_sym_RBRACE] = ACTIONS(4324), [anon_sym_LBRACE] = ACTIONS(4324), [anon_sym_DOT] = ACTIONS(4324), [anon_sym_AMP] = ACTIONS(4324), [anon_sym_DASH] = ACTIONS(4321), [anon_sym_DASH_DASH] = ACTIONS(4324), [anon_sym_PLUS] = ACTIONS(4321), [anon_sym_PLUS_PLUS] = ACTIONS(4324), [anon_sym_BANG] = ACTIONS(4324), [anon_sym_LPAREN] = ACTIONS(4324), [anon_sym_RPAREN] = ACTIONS(4324), [anon_sym_LBRACK] = ACTIONS(4324), [anon_sym_SEMI] = ACTIONS(4324), [anon_sym_DOLLAR] = ACTIONS(4324), [anon_sym_STAR] = ACTIONS(4324), [anon_sym_TILDE] = ACTIONS(4324), [anon_sym_AT] = ACTIONS(4324), [sym_bool] = ACTIONS(4321), [sym_byte] = ACTIONS(4321), [sym_ubyte] = ACTIONS(4321), [sym_char] = ACTIONS(4321), [sym_short] = ACTIONS(4321), [sym_ushort] = ACTIONS(4321), [sym_int] = ACTIONS(4321), [sym_uint] = ACTIONS(4321), [sym_long] = ACTIONS(4321), [sym_ulong] = ACTIONS(4321), [sym_cent] = ACTIONS(4321), [sym_ucent] = ACTIONS(4321), [sym_wchar] = ACTIONS(4321), [sym_dchar] = ACTIONS(4321), [sym_float] = ACTIONS(4321), [sym_double] = ACTIONS(4321), [sym_real] = ACTIONS(4321), [sym_ifloat] = ACTIONS(4321), [sym_idouble] = ACTIONS(4321), [sym_ireal] = ACTIONS(4321), [sym_cfloat] = ACTIONS(4321), [sym_cdouble] = ACTIONS(4321), [sym_creal] = ACTIONS(4321), [sym_size_t] = ACTIONS(4321), [sym_ptrdiff_t] = ACTIONS(4321), [sym_string] = ACTIONS(4321), [sym_cstring] = ACTIONS(4321), [sym_dstring] = ACTIONS(4321), [sym_wstring] = ACTIONS(4321), [sym_noreturn] = ACTIONS(4321), [sym_true] = ACTIONS(4321), [sym_false] = ACTIONS(4321), [sym_null] = ACTIONS(4321), [sym_super] = ACTIONS(4321), [sym_this] = ACTIONS(4321), [sym_abstract] = ACTIONS(4321), [sym_alias] = ACTIONS(4321), [sym_align] = ACTIONS(4321), [sym_asm] = ACTIONS(4321), [sym_assert] = ACTIONS(4321), [sym_auto] = ACTIONS(4321), [sym_break] = ACTIONS(4321), [sym_case] = ACTIONS(4321), [sym_cast] = ACTIONS(4321), [sym_catch] = ACTIONS(4321), [sym_class] = ACTIONS(4321), [sym_const] = ACTIONS(4321), [sym_continue] = ACTIONS(4321), [sym_debug] = ACTIONS(4321), [sym_default] = ACTIONS(4321), [sym_delegate] = ACTIONS(4321), [sym_delete] = ACTIONS(4321), [sym_deprecated] = ACTIONS(4321), [sym_do] = ACTIONS(4321), [sym_else] = ACTIONS(4321), [sym_enum] = ACTIONS(4321), [sym_export] = ACTIONS(4321), [sym_extern] = ACTIONS(4321), [sym_final] = ACTIONS(4321), [sym_finally] = ACTIONS(4321), [sym_for] = ACTIONS(4321), [sym_foreach] = ACTIONS(4321), [sym_foreach_reverse] = ACTIONS(4321), [sym_function] = ACTIONS(4321), [sym_goto] = ACTIONS(4321), [sym_if] = ACTIONS(4321), [sym_immutable] = ACTIONS(4321), [sym_import] = ACTIONS(4321), [sym_in] = ACTIONS(4321), [sym_inout] = ACTIONS(4321), [sym_interface] = ACTIONS(4321), [sym_invariant] = ACTIONS(4321), [sym_is] = ACTIONS(4321), [sym_mixin] = ACTIONS(4321), [sym_new] = ACTIONS(4321), [sym_nothrow] = ACTIONS(4321), [sym_out] = ACTIONS(4321), [sym_override] = ACTIONS(4321), [sym_package] = ACTIONS(4321), [sym_pragma] = ACTIONS(4321), [sym_private] = ACTIONS(4321), [sym_protected] = ACTIONS(4321), [sym_public] = ACTIONS(4321), [sym_pure] = ACTIONS(4321), [sym_ref] = ACTIONS(4321), [sym_return] = ACTIONS(4321), [sym_scope] = ACTIONS(4321), [sym_shared] = ACTIONS(4321), [sym_static] = ACTIONS(4321), [sym_struct] = ACTIONS(4321), [sym_switch] = ACTIONS(4321), [sym_synchronized] = ACTIONS(4321), [sym_template] = ACTIONS(4321), [sym_throw] = ACTIONS(4321), [sym_try] = ACTIONS(4321), [sym_typeid] = ACTIONS(4321), [sym_typeof] = ACTIONS(4321), [sym_union] = ACTIONS(4321), [sym_unittest] = ACTIONS(4321), [sym_version] = ACTIONS(4321), [sym_while] = ACTIONS(4321), [sym_with] = ACTIONS(4321), [sym_gshared] = ACTIONS(4321), [sym_traits] = ACTIONS(4321), [sym_vector] = ACTIONS(4321), [sym_void] = ACTIONS(4321), [anon_sym_BQUOTE] = ACTIONS(4324), [anon_sym_r_DQUOTE] = ACTIONS(4324), [anon_sym_x_DQUOTE] = ACTIONS(4324), [anon_sym_DQUOTE] = ACTIONS(4324), [anon_sym_i_BQUOTE] = ACTIONS(4324), [anon_sym_i_DQUOTE] = ACTIONS(4324), [anon_sym_iq_LBRACE] = ACTIONS(4324), [aux_sym_char_literal_token1] = ACTIONS(4324), [anon_sym_SQUOTE] = ACTIONS(4321), [anon_sym___DATE__] = ACTIONS(4321), [anon_sym___FILE__] = ACTIONS(4321), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4321), [anon_sym___FUNCTION__] = ACTIONS(4321), [anon_sym___LINE__] = ACTIONS(4321), [anon_sym___MODULE__] = ACTIONS(4321), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4321), [anon_sym___TIME__] = ACTIONS(4321), [anon_sym___TIMESTAMP__] = ACTIONS(4321), [anon_sym___VENDOR__] = ACTIONS(4321), [anon_sym___VERSION__] = ACTIONS(4321), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4324), [sym_float_literal] = ACTIONS(4324), [sym__string] = ACTIONS(4324), }, [1364] = { [sym_identifier] = ACTIONS(4327), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4329), [anon_sym_RBRACE] = ACTIONS(4329), [anon_sym_LBRACE] = ACTIONS(4329), [anon_sym_DOT] = ACTIONS(4329), [anon_sym_AMP] = ACTIONS(4329), [anon_sym_DASH] = ACTIONS(4327), [anon_sym_DASH_DASH] = ACTIONS(4329), [anon_sym_PLUS] = ACTIONS(4327), [anon_sym_PLUS_PLUS] = ACTIONS(4329), [anon_sym_BANG] = ACTIONS(4329), [anon_sym_LPAREN] = ACTIONS(4329), [anon_sym_RPAREN] = ACTIONS(4329), [anon_sym_LBRACK] = ACTIONS(4329), [anon_sym_SEMI] = ACTIONS(4329), [anon_sym_DOLLAR] = ACTIONS(4329), [anon_sym_STAR] = ACTIONS(4329), [anon_sym_TILDE] = ACTIONS(4329), [anon_sym_AT] = ACTIONS(4329), [sym_bool] = ACTIONS(4327), [sym_byte] = ACTIONS(4327), [sym_ubyte] = ACTIONS(4327), [sym_char] = ACTIONS(4327), [sym_short] = ACTIONS(4327), [sym_ushort] = ACTIONS(4327), [sym_int] = ACTIONS(4327), [sym_uint] = ACTIONS(4327), [sym_long] = ACTIONS(4327), [sym_ulong] = ACTIONS(4327), [sym_cent] = ACTIONS(4327), [sym_ucent] = ACTIONS(4327), [sym_wchar] = ACTIONS(4327), [sym_dchar] = ACTIONS(4327), [sym_float] = ACTIONS(4327), [sym_double] = ACTIONS(4327), [sym_real] = ACTIONS(4327), [sym_ifloat] = ACTIONS(4327), [sym_idouble] = ACTIONS(4327), [sym_ireal] = ACTIONS(4327), [sym_cfloat] = ACTIONS(4327), [sym_cdouble] = ACTIONS(4327), [sym_creal] = ACTIONS(4327), [sym_size_t] = ACTIONS(4327), [sym_ptrdiff_t] = ACTIONS(4327), [sym_string] = ACTIONS(4327), [sym_cstring] = ACTIONS(4327), [sym_dstring] = ACTIONS(4327), [sym_wstring] = ACTIONS(4327), [sym_noreturn] = ACTIONS(4327), [sym_true] = ACTIONS(4327), [sym_false] = ACTIONS(4327), [sym_null] = ACTIONS(4327), [sym_super] = ACTIONS(4327), [sym_this] = ACTIONS(4327), [sym_abstract] = ACTIONS(4327), [sym_alias] = ACTIONS(4327), [sym_align] = ACTIONS(4327), [sym_asm] = ACTIONS(4327), [sym_assert] = ACTIONS(4327), [sym_auto] = ACTIONS(4327), [sym_break] = ACTIONS(4327), [sym_case] = ACTIONS(4327), [sym_cast] = ACTIONS(4327), [sym_catch] = ACTIONS(4327), [sym_class] = ACTIONS(4327), [sym_const] = ACTIONS(4327), [sym_continue] = ACTIONS(4327), [sym_debug] = ACTIONS(4327), [sym_default] = ACTIONS(4327), [sym_delegate] = ACTIONS(4327), [sym_delete] = ACTIONS(4327), [sym_deprecated] = ACTIONS(4327), [sym_do] = ACTIONS(4327), [sym_else] = ACTIONS(4327), [sym_enum] = ACTIONS(4327), [sym_export] = ACTIONS(4327), [sym_extern] = ACTIONS(4327), [sym_final] = ACTIONS(4327), [sym_finally] = ACTIONS(4327), [sym_for] = ACTIONS(4327), [sym_foreach] = ACTIONS(4327), [sym_foreach_reverse] = ACTIONS(4327), [sym_function] = ACTIONS(4327), [sym_goto] = ACTIONS(4327), [sym_if] = ACTIONS(4327), [sym_immutable] = ACTIONS(4327), [sym_import] = ACTIONS(4327), [sym_in] = ACTIONS(4327), [sym_inout] = ACTIONS(4327), [sym_interface] = ACTIONS(4327), [sym_invariant] = ACTIONS(4327), [sym_is] = ACTIONS(4327), [sym_mixin] = ACTIONS(4327), [sym_new] = ACTIONS(4327), [sym_nothrow] = ACTIONS(4327), [sym_out] = ACTIONS(4327), [sym_override] = ACTIONS(4327), [sym_package] = ACTIONS(4327), [sym_pragma] = ACTIONS(4327), [sym_private] = ACTIONS(4327), [sym_protected] = ACTIONS(4327), [sym_public] = ACTIONS(4327), [sym_pure] = ACTIONS(4327), [sym_ref] = ACTIONS(4327), [sym_return] = ACTIONS(4327), [sym_scope] = ACTIONS(4327), [sym_shared] = ACTIONS(4327), [sym_static] = ACTIONS(4327), [sym_struct] = ACTIONS(4327), [sym_switch] = ACTIONS(4327), [sym_synchronized] = ACTIONS(4327), [sym_template] = ACTIONS(4327), [sym_throw] = ACTIONS(4327), [sym_try] = ACTIONS(4327), [sym_typeid] = ACTIONS(4327), [sym_typeof] = ACTIONS(4327), [sym_union] = ACTIONS(4327), [sym_unittest] = ACTIONS(4327), [sym_version] = ACTIONS(4327), [sym_while] = ACTIONS(4327), [sym_with] = ACTIONS(4327), [sym_gshared] = ACTIONS(4327), [sym_traits] = ACTIONS(4327), [sym_vector] = ACTIONS(4327), [sym_void] = ACTIONS(4327), [anon_sym_BQUOTE] = ACTIONS(4329), [anon_sym_r_DQUOTE] = ACTIONS(4329), [anon_sym_x_DQUOTE] = ACTIONS(4329), [anon_sym_DQUOTE] = ACTIONS(4329), [anon_sym_i_BQUOTE] = ACTIONS(4329), [anon_sym_i_DQUOTE] = ACTIONS(4329), [anon_sym_iq_LBRACE] = ACTIONS(4329), [aux_sym_char_literal_token1] = ACTIONS(4329), [anon_sym_SQUOTE] = ACTIONS(4327), [anon_sym___DATE__] = ACTIONS(4327), [anon_sym___FILE__] = ACTIONS(4327), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4327), [anon_sym___FUNCTION__] = ACTIONS(4327), [anon_sym___LINE__] = ACTIONS(4327), [anon_sym___MODULE__] = ACTIONS(4327), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4327), [anon_sym___TIME__] = ACTIONS(4327), [anon_sym___TIMESTAMP__] = ACTIONS(4327), [anon_sym___VENDOR__] = ACTIONS(4327), [anon_sym___VERSION__] = ACTIONS(4327), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4329), [sym_float_literal] = ACTIONS(4329), [sym__string] = ACTIONS(4329), }, [1365] = { [sym_identifier] = ACTIONS(4331), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4333), [anon_sym_RBRACE] = ACTIONS(4333), [anon_sym_LBRACE] = ACTIONS(4333), [anon_sym_DOT] = ACTIONS(4333), [anon_sym_AMP] = ACTIONS(4333), [anon_sym_DASH] = ACTIONS(4331), [anon_sym_DASH_DASH] = ACTIONS(4333), [anon_sym_PLUS] = ACTIONS(4331), [anon_sym_PLUS_PLUS] = ACTIONS(4333), [anon_sym_BANG] = ACTIONS(4333), [anon_sym_LPAREN] = ACTIONS(4333), [anon_sym_RPAREN] = ACTIONS(4333), [anon_sym_LBRACK] = ACTIONS(4333), [anon_sym_SEMI] = ACTIONS(4333), [anon_sym_DOLLAR] = ACTIONS(4333), [anon_sym_STAR] = ACTIONS(4333), [anon_sym_TILDE] = ACTIONS(4333), [anon_sym_AT] = ACTIONS(4333), [sym_bool] = ACTIONS(4331), [sym_byte] = ACTIONS(4331), [sym_ubyte] = ACTIONS(4331), [sym_char] = ACTIONS(4331), [sym_short] = ACTIONS(4331), [sym_ushort] = ACTIONS(4331), [sym_int] = ACTIONS(4331), [sym_uint] = ACTIONS(4331), [sym_long] = ACTIONS(4331), [sym_ulong] = ACTIONS(4331), [sym_cent] = ACTIONS(4331), [sym_ucent] = ACTIONS(4331), [sym_wchar] = ACTIONS(4331), [sym_dchar] = ACTIONS(4331), [sym_float] = ACTIONS(4331), [sym_double] = ACTIONS(4331), [sym_real] = ACTIONS(4331), [sym_ifloat] = ACTIONS(4331), [sym_idouble] = ACTIONS(4331), [sym_ireal] = ACTIONS(4331), [sym_cfloat] = ACTIONS(4331), [sym_cdouble] = ACTIONS(4331), [sym_creal] = ACTIONS(4331), [sym_size_t] = ACTIONS(4331), [sym_ptrdiff_t] = ACTIONS(4331), [sym_string] = ACTIONS(4331), [sym_cstring] = ACTIONS(4331), [sym_dstring] = ACTIONS(4331), [sym_wstring] = ACTIONS(4331), [sym_noreturn] = ACTIONS(4331), [sym_true] = ACTIONS(4331), [sym_false] = ACTIONS(4331), [sym_null] = ACTIONS(4331), [sym_super] = ACTIONS(4331), [sym_this] = ACTIONS(4331), [sym_abstract] = ACTIONS(4331), [sym_alias] = ACTIONS(4331), [sym_align] = ACTIONS(4331), [sym_asm] = ACTIONS(4331), [sym_assert] = ACTIONS(4331), [sym_auto] = ACTIONS(4331), [sym_break] = ACTIONS(4331), [sym_case] = ACTIONS(4331), [sym_cast] = ACTIONS(4331), [sym_catch] = ACTIONS(4331), [sym_class] = ACTIONS(4331), [sym_const] = ACTIONS(4331), [sym_continue] = ACTIONS(4331), [sym_debug] = ACTIONS(4331), [sym_default] = ACTIONS(4331), [sym_delegate] = ACTIONS(4331), [sym_delete] = ACTIONS(4331), [sym_deprecated] = ACTIONS(4331), [sym_do] = ACTIONS(4331), [sym_else] = ACTIONS(4331), [sym_enum] = ACTIONS(4331), [sym_export] = ACTIONS(4331), [sym_extern] = ACTIONS(4331), [sym_final] = ACTIONS(4331), [sym_finally] = ACTIONS(4331), [sym_for] = ACTIONS(4331), [sym_foreach] = ACTIONS(4331), [sym_foreach_reverse] = ACTIONS(4331), [sym_function] = ACTIONS(4331), [sym_goto] = ACTIONS(4331), [sym_if] = ACTIONS(4331), [sym_immutable] = ACTIONS(4331), [sym_import] = ACTIONS(4331), [sym_in] = ACTIONS(4331), [sym_inout] = ACTIONS(4331), [sym_interface] = ACTIONS(4331), [sym_invariant] = ACTIONS(4331), [sym_is] = ACTIONS(4331), [sym_mixin] = ACTIONS(4331), [sym_new] = ACTIONS(4331), [sym_nothrow] = ACTIONS(4331), [sym_out] = ACTIONS(4331), [sym_override] = ACTIONS(4331), [sym_package] = ACTIONS(4331), [sym_pragma] = ACTIONS(4331), [sym_private] = ACTIONS(4331), [sym_protected] = ACTIONS(4331), [sym_public] = ACTIONS(4331), [sym_pure] = ACTIONS(4331), [sym_ref] = ACTIONS(4331), [sym_return] = ACTIONS(4331), [sym_scope] = ACTIONS(4331), [sym_shared] = ACTIONS(4331), [sym_static] = ACTIONS(4331), [sym_struct] = ACTIONS(4331), [sym_switch] = ACTIONS(4331), [sym_synchronized] = ACTIONS(4331), [sym_template] = ACTIONS(4331), [sym_throw] = ACTIONS(4331), [sym_try] = ACTIONS(4331), [sym_typeid] = ACTIONS(4331), [sym_typeof] = ACTIONS(4331), [sym_union] = ACTIONS(4331), [sym_unittest] = ACTIONS(4331), [sym_version] = ACTIONS(4331), [sym_while] = ACTIONS(4331), [sym_with] = ACTIONS(4331), [sym_gshared] = ACTIONS(4331), [sym_traits] = ACTIONS(4331), [sym_vector] = ACTIONS(4331), [sym_void] = ACTIONS(4331), [anon_sym_BQUOTE] = ACTIONS(4333), [anon_sym_r_DQUOTE] = ACTIONS(4333), [anon_sym_x_DQUOTE] = ACTIONS(4333), [anon_sym_DQUOTE] = ACTIONS(4333), [anon_sym_i_BQUOTE] = ACTIONS(4333), [anon_sym_i_DQUOTE] = ACTIONS(4333), [anon_sym_iq_LBRACE] = ACTIONS(4333), [aux_sym_char_literal_token1] = ACTIONS(4333), [anon_sym_SQUOTE] = ACTIONS(4331), [anon_sym___DATE__] = ACTIONS(4331), [anon_sym___FILE__] = ACTIONS(4331), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4331), [anon_sym___FUNCTION__] = ACTIONS(4331), [anon_sym___LINE__] = ACTIONS(4331), [anon_sym___MODULE__] = ACTIONS(4331), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4331), [anon_sym___TIME__] = ACTIONS(4331), [anon_sym___TIMESTAMP__] = ACTIONS(4331), [anon_sym___VENDOR__] = ACTIONS(4331), [anon_sym___VERSION__] = ACTIONS(4331), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4333), [sym_float_literal] = ACTIONS(4333), [sym__string] = ACTIONS(4333), }, [1366] = { [sym_identifier] = ACTIONS(4335), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4337), [anon_sym_RBRACE] = ACTIONS(4337), [anon_sym_LBRACE] = ACTIONS(4337), [anon_sym_DOT] = ACTIONS(4337), [anon_sym_AMP] = ACTIONS(4337), [anon_sym_DASH] = ACTIONS(4335), [anon_sym_DASH_DASH] = ACTIONS(4337), [anon_sym_PLUS] = ACTIONS(4335), [anon_sym_PLUS_PLUS] = ACTIONS(4337), [anon_sym_BANG] = ACTIONS(4337), [anon_sym_LPAREN] = ACTIONS(4337), [anon_sym_RPAREN] = ACTIONS(4337), [anon_sym_LBRACK] = ACTIONS(4337), [anon_sym_SEMI] = ACTIONS(4337), [anon_sym_DOLLAR] = ACTIONS(4337), [anon_sym_STAR] = ACTIONS(4337), [anon_sym_TILDE] = ACTIONS(4337), [anon_sym_AT] = ACTIONS(4337), [sym_bool] = ACTIONS(4335), [sym_byte] = ACTIONS(4335), [sym_ubyte] = ACTIONS(4335), [sym_char] = ACTIONS(4335), [sym_short] = ACTIONS(4335), [sym_ushort] = ACTIONS(4335), [sym_int] = ACTIONS(4335), [sym_uint] = ACTIONS(4335), [sym_long] = ACTIONS(4335), [sym_ulong] = ACTIONS(4335), [sym_cent] = ACTIONS(4335), [sym_ucent] = ACTIONS(4335), [sym_wchar] = ACTIONS(4335), [sym_dchar] = ACTIONS(4335), [sym_float] = ACTIONS(4335), [sym_double] = ACTIONS(4335), [sym_real] = ACTIONS(4335), [sym_ifloat] = ACTIONS(4335), [sym_idouble] = ACTIONS(4335), [sym_ireal] = ACTIONS(4335), [sym_cfloat] = ACTIONS(4335), [sym_cdouble] = ACTIONS(4335), [sym_creal] = ACTIONS(4335), [sym_size_t] = ACTIONS(4335), [sym_ptrdiff_t] = ACTIONS(4335), [sym_string] = ACTIONS(4335), [sym_cstring] = ACTIONS(4335), [sym_dstring] = ACTIONS(4335), [sym_wstring] = ACTIONS(4335), [sym_noreturn] = ACTIONS(4335), [sym_true] = ACTIONS(4335), [sym_false] = ACTIONS(4335), [sym_null] = ACTIONS(4335), [sym_super] = ACTIONS(4335), [sym_this] = ACTIONS(4335), [sym_abstract] = ACTIONS(4335), [sym_alias] = ACTIONS(4335), [sym_align] = ACTIONS(4335), [sym_asm] = ACTIONS(4335), [sym_assert] = ACTIONS(4335), [sym_auto] = ACTIONS(4335), [sym_break] = ACTIONS(4335), [sym_case] = ACTIONS(4335), [sym_cast] = ACTIONS(4335), [sym_catch] = ACTIONS(4335), [sym_class] = ACTIONS(4335), [sym_const] = ACTIONS(4335), [sym_continue] = ACTIONS(4335), [sym_debug] = ACTIONS(4335), [sym_default] = ACTIONS(4335), [sym_delegate] = ACTIONS(4335), [sym_delete] = ACTIONS(4335), [sym_deprecated] = ACTIONS(4335), [sym_do] = ACTIONS(4335), [sym_else] = ACTIONS(4335), [sym_enum] = ACTIONS(4335), [sym_export] = ACTIONS(4335), [sym_extern] = ACTIONS(4335), [sym_final] = ACTIONS(4335), [sym_finally] = ACTIONS(4335), [sym_for] = ACTIONS(4335), [sym_foreach] = ACTIONS(4335), [sym_foreach_reverse] = ACTIONS(4335), [sym_function] = ACTIONS(4335), [sym_goto] = ACTIONS(4335), [sym_if] = ACTIONS(4335), [sym_immutable] = ACTIONS(4335), [sym_import] = ACTIONS(4335), [sym_in] = ACTIONS(4335), [sym_inout] = ACTIONS(4335), [sym_interface] = ACTIONS(4335), [sym_invariant] = ACTIONS(4335), [sym_is] = ACTIONS(4335), [sym_mixin] = ACTIONS(4335), [sym_new] = ACTIONS(4335), [sym_nothrow] = ACTIONS(4335), [sym_out] = ACTIONS(4335), [sym_override] = ACTIONS(4335), [sym_package] = ACTIONS(4335), [sym_pragma] = ACTIONS(4335), [sym_private] = ACTIONS(4335), [sym_protected] = ACTIONS(4335), [sym_public] = ACTIONS(4335), [sym_pure] = ACTIONS(4335), [sym_ref] = ACTIONS(4335), [sym_return] = ACTIONS(4335), [sym_scope] = ACTIONS(4335), [sym_shared] = ACTIONS(4335), [sym_static] = ACTIONS(4335), [sym_struct] = ACTIONS(4335), [sym_switch] = ACTIONS(4335), [sym_synchronized] = ACTIONS(4335), [sym_template] = ACTIONS(4335), [sym_throw] = ACTIONS(4335), [sym_try] = ACTIONS(4335), [sym_typeid] = ACTIONS(4335), [sym_typeof] = ACTIONS(4335), [sym_union] = ACTIONS(4335), [sym_unittest] = ACTIONS(4335), [sym_version] = ACTIONS(4335), [sym_while] = ACTIONS(4335), [sym_with] = ACTIONS(4335), [sym_gshared] = ACTIONS(4335), [sym_traits] = ACTIONS(4335), [sym_vector] = ACTIONS(4335), [sym_void] = ACTIONS(4335), [anon_sym_BQUOTE] = ACTIONS(4337), [anon_sym_r_DQUOTE] = ACTIONS(4337), [anon_sym_x_DQUOTE] = ACTIONS(4337), [anon_sym_DQUOTE] = ACTIONS(4337), [anon_sym_i_BQUOTE] = ACTIONS(4337), [anon_sym_i_DQUOTE] = ACTIONS(4337), [anon_sym_iq_LBRACE] = ACTIONS(4337), [aux_sym_char_literal_token1] = ACTIONS(4337), [anon_sym_SQUOTE] = ACTIONS(4335), [anon_sym___DATE__] = ACTIONS(4335), [anon_sym___FILE__] = ACTIONS(4335), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4335), [anon_sym___FUNCTION__] = ACTIONS(4335), [anon_sym___LINE__] = ACTIONS(4335), [anon_sym___MODULE__] = ACTIONS(4335), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4335), [anon_sym___TIME__] = ACTIONS(4335), [anon_sym___TIMESTAMP__] = ACTIONS(4335), [anon_sym___VENDOR__] = ACTIONS(4335), [anon_sym___VERSION__] = ACTIONS(4335), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4337), [sym_float_literal] = ACTIONS(4337), [sym__string] = ACTIONS(4337), }, [1367] = { [sym_identifier] = ACTIONS(4339), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4341), [anon_sym_RBRACE] = ACTIONS(4341), [anon_sym_LBRACE] = ACTIONS(4341), [anon_sym_DOT] = ACTIONS(4341), [anon_sym_AMP] = ACTIONS(4341), [anon_sym_DASH] = ACTIONS(4339), [anon_sym_DASH_DASH] = ACTIONS(4341), [anon_sym_PLUS] = ACTIONS(4339), [anon_sym_PLUS_PLUS] = ACTIONS(4341), [anon_sym_BANG] = ACTIONS(4341), [anon_sym_LPAREN] = ACTIONS(4341), [anon_sym_RPAREN] = ACTIONS(4341), [anon_sym_LBRACK] = ACTIONS(4341), [anon_sym_SEMI] = ACTIONS(4341), [anon_sym_DOLLAR] = ACTIONS(4341), [anon_sym_STAR] = ACTIONS(4341), [anon_sym_TILDE] = ACTIONS(4341), [anon_sym_AT] = ACTIONS(4341), [sym_bool] = ACTIONS(4339), [sym_byte] = ACTIONS(4339), [sym_ubyte] = ACTIONS(4339), [sym_char] = ACTIONS(4339), [sym_short] = ACTIONS(4339), [sym_ushort] = ACTIONS(4339), [sym_int] = ACTIONS(4339), [sym_uint] = ACTIONS(4339), [sym_long] = ACTIONS(4339), [sym_ulong] = ACTIONS(4339), [sym_cent] = ACTIONS(4339), [sym_ucent] = ACTIONS(4339), [sym_wchar] = ACTIONS(4339), [sym_dchar] = ACTIONS(4339), [sym_float] = ACTIONS(4339), [sym_double] = ACTIONS(4339), [sym_real] = ACTIONS(4339), [sym_ifloat] = ACTIONS(4339), [sym_idouble] = ACTIONS(4339), [sym_ireal] = ACTIONS(4339), [sym_cfloat] = ACTIONS(4339), [sym_cdouble] = ACTIONS(4339), [sym_creal] = ACTIONS(4339), [sym_size_t] = ACTIONS(4339), [sym_ptrdiff_t] = ACTIONS(4339), [sym_string] = ACTIONS(4339), [sym_cstring] = ACTIONS(4339), [sym_dstring] = ACTIONS(4339), [sym_wstring] = ACTIONS(4339), [sym_noreturn] = ACTIONS(4339), [sym_true] = ACTIONS(4339), [sym_false] = ACTIONS(4339), [sym_null] = ACTIONS(4339), [sym_super] = ACTIONS(4339), [sym_this] = ACTIONS(4339), [sym_abstract] = ACTIONS(4339), [sym_alias] = ACTIONS(4339), [sym_align] = ACTIONS(4339), [sym_asm] = ACTIONS(4339), [sym_assert] = ACTIONS(4339), [sym_auto] = ACTIONS(4339), [sym_break] = ACTIONS(4339), [sym_case] = ACTIONS(4339), [sym_cast] = ACTIONS(4339), [sym_catch] = ACTIONS(4339), [sym_class] = ACTIONS(4339), [sym_const] = ACTIONS(4339), [sym_continue] = ACTIONS(4339), [sym_debug] = ACTIONS(4339), [sym_default] = ACTIONS(4339), [sym_delegate] = ACTIONS(4339), [sym_delete] = ACTIONS(4339), [sym_deprecated] = ACTIONS(4339), [sym_do] = ACTIONS(4339), [sym_else] = ACTIONS(4339), [sym_enum] = ACTIONS(4339), [sym_export] = ACTIONS(4339), [sym_extern] = ACTIONS(4339), [sym_final] = ACTIONS(4339), [sym_finally] = ACTIONS(4339), [sym_for] = ACTIONS(4339), [sym_foreach] = ACTIONS(4339), [sym_foreach_reverse] = ACTIONS(4339), [sym_function] = ACTIONS(4339), [sym_goto] = ACTIONS(4339), [sym_if] = ACTIONS(4339), [sym_immutable] = ACTIONS(4339), [sym_import] = ACTIONS(4339), [sym_in] = ACTIONS(4339), [sym_inout] = ACTIONS(4339), [sym_interface] = ACTIONS(4339), [sym_invariant] = ACTIONS(4339), [sym_is] = ACTIONS(4339), [sym_mixin] = ACTIONS(4339), [sym_new] = ACTIONS(4339), [sym_nothrow] = ACTIONS(4339), [sym_out] = ACTIONS(4339), [sym_override] = ACTIONS(4339), [sym_package] = ACTIONS(4339), [sym_pragma] = ACTIONS(4339), [sym_private] = ACTIONS(4339), [sym_protected] = ACTIONS(4339), [sym_public] = ACTIONS(4339), [sym_pure] = ACTIONS(4339), [sym_ref] = ACTIONS(4339), [sym_return] = ACTIONS(4339), [sym_scope] = ACTIONS(4339), [sym_shared] = ACTIONS(4339), [sym_static] = ACTIONS(4339), [sym_struct] = ACTIONS(4339), [sym_switch] = ACTIONS(4339), [sym_synchronized] = ACTIONS(4339), [sym_template] = ACTIONS(4339), [sym_throw] = ACTIONS(4339), [sym_try] = ACTIONS(4339), [sym_typeid] = ACTIONS(4339), [sym_typeof] = ACTIONS(4339), [sym_union] = ACTIONS(4339), [sym_unittest] = ACTIONS(4339), [sym_version] = ACTIONS(4339), [sym_while] = ACTIONS(4339), [sym_with] = ACTIONS(4339), [sym_gshared] = ACTIONS(4339), [sym_traits] = ACTIONS(4339), [sym_vector] = ACTIONS(4339), [sym_void] = ACTIONS(4339), [anon_sym_BQUOTE] = ACTIONS(4341), [anon_sym_r_DQUOTE] = ACTIONS(4341), [anon_sym_x_DQUOTE] = ACTIONS(4341), [anon_sym_DQUOTE] = ACTIONS(4341), [anon_sym_i_BQUOTE] = ACTIONS(4341), [anon_sym_i_DQUOTE] = ACTIONS(4341), [anon_sym_iq_LBRACE] = ACTIONS(4341), [aux_sym_char_literal_token1] = ACTIONS(4341), [anon_sym_SQUOTE] = ACTIONS(4339), [anon_sym___DATE__] = ACTIONS(4339), [anon_sym___FILE__] = ACTIONS(4339), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4339), [anon_sym___FUNCTION__] = ACTIONS(4339), [anon_sym___LINE__] = ACTIONS(4339), [anon_sym___MODULE__] = ACTIONS(4339), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4339), [anon_sym___TIME__] = ACTIONS(4339), [anon_sym___TIMESTAMP__] = ACTIONS(4339), [anon_sym___VENDOR__] = ACTIONS(4339), [anon_sym___VERSION__] = ACTIONS(4339), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4341), [sym_float_literal] = ACTIONS(4341), [sym__string] = ACTIONS(4341), }, [1368] = { [sym_identifier] = ACTIONS(4343), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4345), [anon_sym_RBRACE] = ACTIONS(4345), [anon_sym_LBRACE] = ACTIONS(4345), [anon_sym_DOT] = ACTIONS(4345), [anon_sym_AMP] = ACTIONS(4345), [anon_sym_DASH] = ACTIONS(4343), [anon_sym_DASH_DASH] = ACTIONS(4345), [anon_sym_PLUS] = ACTIONS(4343), [anon_sym_PLUS_PLUS] = ACTIONS(4345), [anon_sym_BANG] = ACTIONS(4345), [anon_sym_LPAREN] = ACTIONS(4345), [anon_sym_RPAREN] = ACTIONS(4345), [anon_sym_LBRACK] = ACTIONS(4345), [anon_sym_SEMI] = ACTIONS(4345), [anon_sym_DOLLAR] = ACTIONS(4345), [anon_sym_STAR] = ACTIONS(4345), [anon_sym_TILDE] = ACTIONS(4345), [anon_sym_AT] = ACTIONS(4345), [sym_bool] = ACTIONS(4343), [sym_byte] = ACTIONS(4343), [sym_ubyte] = ACTIONS(4343), [sym_char] = ACTIONS(4343), [sym_short] = ACTIONS(4343), [sym_ushort] = ACTIONS(4343), [sym_int] = ACTIONS(4343), [sym_uint] = ACTIONS(4343), [sym_long] = ACTIONS(4343), [sym_ulong] = ACTIONS(4343), [sym_cent] = ACTIONS(4343), [sym_ucent] = ACTIONS(4343), [sym_wchar] = ACTIONS(4343), [sym_dchar] = ACTIONS(4343), [sym_float] = ACTIONS(4343), [sym_double] = ACTIONS(4343), [sym_real] = ACTIONS(4343), [sym_ifloat] = ACTIONS(4343), [sym_idouble] = ACTIONS(4343), [sym_ireal] = ACTIONS(4343), [sym_cfloat] = ACTIONS(4343), [sym_cdouble] = ACTIONS(4343), [sym_creal] = ACTIONS(4343), [sym_size_t] = ACTIONS(4343), [sym_ptrdiff_t] = ACTIONS(4343), [sym_string] = ACTIONS(4343), [sym_cstring] = ACTIONS(4343), [sym_dstring] = ACTIONS(4343), [sym_wstring] = ACTIONS(4343), [sym_noreturn] = ACTIONS(4343), [sym_true] = ACTIONS(4343), [sym_false] = ACTIONS(4343), [sym_null] = ACTIONS(4343), [sym_super] = ACTIONS(4343), [sym_this] = ACTIONS(4343), [sym_abstract] = ACTIONS(4343), [sym_alias] = ACTIONS(4343), [sym_align] = ACTIONS(4343), [sym_asm] = ACTIONS(4343), [sym_assert] = ACTIONS(4343), [sym_auto] = ACTIONS(4343), [sym_break] = ACTIONS(4343), [sym_case] = ACTIONS(4343), [sym_cast] = ACTIONS(4343), [sym_catch] = ACTIONS(4343), [sym_class] = ACTIONS(4343), [sym_const] = ACTIONS(4343), [sym_continue] = ACTIONS(4343), [sym_debug] = ACTIONS(4343), [sym_default] = ACTIONS(4343), [sym_delegate] = ACTIONS(4343), [sym_delete] = ACTIONS(4343), [sym_deprecated] = ACTIONS(4343), [sym_do] = ACTIONS(4343), [sym_else] = ACTIONS(4343), [sym_enum] = ACTIONS(4343), [sym_export] = ACTIONS(4343), [sym_extern] = ACTIONS(4343), [sym_final] = ACTIONS(4343), [sym_finally] = ACTIONS(4343), [sym_for] = ACTIONS(4343), [sym_foreach] = ACTIONS(4343), [sym_foreach_reverse] = ACTIONS(4343), [sym_function] = ACTIONS(4343), [sym_goto] = ACTIONS(4343), [sym_if] = ACTIONS(4343), [sym_immutable] = ACTIONS(4343), [sym_import] = ACTIONS(4343), [sym_in] = ACTIONS(4343), [sym_inout] = ACTIONS(4343), [sym_interface] = ACTIONS(4343), [sym_invariant] = ACTIONS(4343), [sym_is] = ACTIONS(4343), [sym_mixin] = ACTIONS(4343), [sym_new] = ACTIONS(4343), [sym_nothrow] = ACTIONS(4343), [sym_out] = ACTIONS(4343), [sym_override] = ACTIONS(4343), [sym_package] = ACTIONS(4343), [sym_pragma] = ACTIONS(4343), [sym_private] = ACTIONS(4343), [sym_protected] = ACTIONS(4343), [sym_public] = ACTIONS(4343), [sym_pure] = ACTIONS(4343), [sym_ref] = ACTIONS(4343), [sym_return] = ACTIONS(4343), [sym_scope] = ACTIONS(4343), [sym_shared] = ACTIONS(4343), [sym_static] = ACTIONS(4343), [sym_struct] = ACTIONS(4343), [sym_switch] = ACTIONS(4343), [sym_synchronized] = ACTIONS(4343), [sym_template] = ACTIONS(4343), [sym_throw] = ACTIONS(4343), [sym_try] = ACTIONS(4343), [sym_typeid] = ACTIONS(4343), [sym_typeof] = ACTIONS(4343), [sym_union] = ACTIONS(4343), [sym_unittest] = ACTIONS(4343), [sym_version] = ACTIONS(4343), [sym_while] = ACTIONS(4343), [sym_with] = ACTIONS(4343), [sym_gshared] = ACTIONS(4343), [sym_traits] = ACTIONS(4343), [sym_vector] = ACTIONS(4343), [sym_void] = ACTIONS(4343), [anon_sym_BQUOTE] = ACTIONS(4345), [anon_sym_r_DQUOTE] = ACTIONS(4345), [anon_sym_x_DQUOTE] = ACTIONS(4345), [anon_sym_DQUOTE] = ACTIONS(4345), [anon_sym_i_BQUOTE] = ACTIONS(4345), [anon_sym_i_DQUOTE] = ACTIONS(4345), [anon_sym_iq_LBRACE] = ACTIONS(4345), [aux_sym_char_literal_token1] = ACTIONS(4345), [anon_sym_SQUOTE] = ACTIONS(4343), [anon_sym___DATE__] = ACTIONS(4343), [anon_sym___FILE__] = ACTIONS(4343), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4343), [anon_sym___FUNCTION__] = ACTIONS(4343), [anon_sym___LINE__] = ACTIONS(4343), [anon_sym___MODULE__] = ACTIONS(4343), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4343), [anon_sym___TIME__] = ACTIONS(4343), [anon_sym___TIMESTAMP__] = ACTIONS(4343), [anon_sym___VENDOR__] = ACTIONS(4343), [anon_sym___VERSION__] = ACTIONS(4343), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4345), [sym_float_literal] = ACTIONS(4345), [sym__string] = ACTIONS(4345), }, [1369] = { [sym_identifier] = ACTIONS(4347), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4349), [anon_sym_RBRACE] = ACTIONS(4349), [anon_sym_LBRACE] = ACTIONS(4349), [anon_sym_DOT] = ACTIONS(4349), [anon_sym_AMP] = ACTIONS(4349), [anon_sym_DASH] = ACTIONS(4347), [anon_sym_DASH_DASH] = ACTIONS(4349), [anon_sym_PLUS] = ACTIONS(4347), [anon_sym_PLUS_PLUS] = ACTIONS(4349), [anon_sym_BANG] = ACTIONS(4349), [anon_sym_LPAREN] = ACTIONS(4349), [anon_sym_RPAREN] = ACTIONS(4349), [anon_sym_LBRACK] = ACTIONS(4349), [anon_sym_SEMI] = ACTIONS(4349), [anon_sym_DOLLAR] = ACTIONS(4349), [anon_sym_STAR] = ACTIONS(4349), [anon_sym_TILDE] = ACTIONS(4349), [anon_sym_AT] = ACTIONS(4349), [sym_bool] = ACTIONS(4347), [sym_byte] = ACTIONS(4347), [sym_ubyte] = ACTIONS(4347), [sym_char] = ACTIONS(4347), [sym_short] = ACTIONS(4347), [sym_ushort] = ACTIONS(4347), [sym_int] = ACTIONS(4347), [sym_uint] = ACTIONS(4347), [sym_long] = ACTIONS(4347), [sym_ulong] = ACTIONS(4347), [sym_cent] = ACTIONS(4347), [sym_ucent] = ACTIONS(4347), [sym_wchar] = ACTIONS(4347), [sym_dchar] = ACTIONS(4347), [sym_float] = ACTIONS(4347), [sym_double] = ACTIONS(4347), [sym_real] = ACTIONS(4347), [sym_ifloat] = ACTIONS(4347), [sym_idouble] = ACTIONS(4347), [sym_ireal] = ACTIONS(4347), [sym_cfloat] = ACTIONS(4347), [sym_cdouble] = ACTIONS(4347), [sym_creal] = ACTIONS(4347), [sym_size_t] = ACTIONS(4347), [sym_ptrdiff_t] = ACTIONS(4347), [sym_string] = ACTIONS(4347), [sym_cstring] = ACTIONS(4347), [sym_dstring] = ACTIONS(4347), [sym_wstring] = ACTIONS(4347), [sym_noreturn] = ACTIONS(4347), [sym_true] = ACTIONS(4347), [sym_false] = ACTIONS(4347), [sym_null] = ACTIONS(4347), [sym_super] = ACTIONS(4347), [sym_this] = ACTIONS(4347), [sym_abstract] = ACTIONS(4347), [sym_alias] = ACTIONS(4347), [sym_align] = ACTIONS(4347), [sym_asm] = ACTIONS(4347), [sym_assert] = ACTIONS(4347), [sym_auto] = ACTIONS(4347), [sym_break] = ACTIONS(4347), [sym_case] = ACTIONS(4347), [sym_cast] = ACTIONS(4347), [sym_catch] = ACTIONS(4347), [sym_class] = ACTIONS(4347), [sym_const] = ACTIONS(4347), [sym_continue] = ACTIONS(4347), [sym_debug] = ACTIONS(4347), [sym_default] = ACTIONS(4347), [sym_delegate] = ACTIONS(4347), [sym_delete] = ACTIONS(4347), [sym_deprecated] = ACTIONS(4347), [sym_do] = ACTIONS(4347), [sym_else] = ACTIONS(4347), [sym_enum] = ACTIONS(4347), [sym_export] = ACTIONS(4347), [sym_extern] = ACTIONS(4347), [sym_final] = ACTIONS(4347), [sym_finally] = ACTIONS(4347), [sym_for] = ACTIONS(4347), [sym_foreach] = ACTIONS(4347), [sym_foreach_reverse] = ACTIONS(4347), [sym_function] = ACTIONS(4347), [sym_goto] = ACTIONS(4347), [sym_if] = ACTIONS(4347), [sym_immutable] = ACTIONS(4347), [sym_import] = ACTIONS(4347), [sym_in] = ACTIONS(4347), [sym_inout] = ACTIONS(4347), [sym_interface] = ACTIONS(4347), [sym_invariant] = ACTIONS(4347), [sym_is] = ACTIONS(4347), [sym_mixin] = ACTIONS(4347), [sym_new] = ACTIONS(4347), [sym_nothrow] = ACTIONS(4347), [sym_out] = ACTIONS(4347), [sym_override] = ACTIONS(4347), [sym_package] = ACTIONS(4347), [sym_pragma] = ACTIONS(4347), [sym_private] = ACTIONS(4347), [sym_protected] = ACTIONS(4347), [sym_public] = ACTIONS(4347), [sym_pure] = ACTIONS(4347), [sym_ref] = ACTIONS(4347), [sym_return] = ACTIONS(4347), [sym_scope] = ACTIONS(4347), [sym_shared] = ACTIONS(4347), [sym_static] = ACTIONS(4347), [sym_struct] = ACTIONS(4347), [sym_switch] = ACTIONS(4347), [sym_synchronized] = ACTIONS(4347), [sym_template] = ACTIONS(4347), [sym_throw] = ACTIONS(4347), [sym_try] = ACTIONS(4347), [sym_typeid] = ACTIONS(4347), [sym_typeof] = ACTIONS(4347), [sym_union] = ACTIONS(4347), [sym_unittest] = ACTIONS(4347), [sym_version] = ACTIONS(4347), [sym_while] = ACTIONS(4347), [sym_with] = ACTIONS(4347), [sym_gshared] = ACTIONS(4347), [sym_traits] = ACTIONS(4347), [sym_vector] = ACTIONS(4347), [sym_void] = ACTIONS(4347), [anon_sym_BQUOTE] = ACTIONS(4349), [anon_sym_r_DQUOTE] = ACTIONS(4349), [anon_sym_x_DQUOTE] = ACTIONS(4349), [anon_sym_DQUOTE] = ACTIONS(4349), [anon_sym_i_BQUOTE] = ACTIONS(4349), [anon_sym_i_DQUOTE] = ACTIONS(4349), [anon_sym_iq_LBRACE] = ACTIONS(4349), [aux_sym_char_literal_token1] = ACTIONS(4349), [anon_sym_SQUOTE] = ACTIONS(4347), [anon_sym___DATE__] = ACTIONS(4347), [anon_sym___FILE__] = ACTIONS(4347), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4347), [anon_sym___FUNCTION__] = ACTIONS(4347), [anon_sym___LINE__] = ACTIONS(4347), [anon_sym___MODULE__] = ACTIONS(4347), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4347), [anon_sym___TIME__] = ACTIONS(4347), [anon_sym___TIMESTAMP__] = ACTIONS(4347), [anon_sym___VENDOR__] = ACTIONS(4347), [anon_sym___VERSION__] = ACTIONS(4347), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4349), [sym_float_literal] = ACTIONS(4349), [sym__string] = ACTIONS(4349), }, [1370] = { [sym_identifier] = ACTIONS(4351), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4353), [anon_sym_RBRACE] = ACTIONS(4353), [anon_sym_LBRACE] = ACTIONS(4353), [anon_sym_DOT] = ACTIONS(4353), [anon_sym_AMP] = ACTIONS(4353), [anon_sym_DASH] = ACTIONS(4351), [anon_sym_DASH_DASH] = ACTIONS(4353), [anon_sym_PLUS] = ACTIONS(4351), [anon_sym_PLUS_PLUS] = ACTIONS(4353), [anon_sym_BANG] = ACTIONS(4353), [anon_sym_LPAREN] = ACTIONS(4353), [anon_sym_RPAREN] = ACTIONS(4353), [anon_sym_LBRACK] = ACTIONS(4353), [anon_sym_SEMI] = ACTIONS(4353), [anon_sym_DOLLAR] = ACTIONS(4353), [anon_sym_STAR] = ACTIONS(4353), [anon_sym_TILDE] = ACTIONS(4353), [anon_sym_AT] = ACTIONS(4353), [sym_bool] = ACTIONS(4351), [sym_byte] = ACTIONS(4351), [sym_ubyte] = ACTIONS(4351), [sym_char] = ACTIONS(4351), [sym_short] = ACTIONS(4351), [sym_ushort] = ACTIONS(4351), [sym_int] = ACTIONS(4351), [sym_uint] = ACTIONS(4351), [sym_long] = ACTIONS(4351), [sym_ulong] = ACTIONS(4351), [sym_cent] = ACTIONS(4351), [sym_ucent] = ACTIONS(4351), [sym_wchar] = ACTIONS(4351), [sym_dchar] = ACTIONS(4351), [sym_float] = ACTIONS(4351), [sym_double] = ACTIONS(4351), [sym_real] = ACTIONS(4351), [sym_ifloat] = ACTIONS(4351), [sym_idouble] = ACTIONS(4351), [sym_ireal] = ACTIONS(4351), [sym_cfloat] = ACTIONS(4351), [sym_cdouble] = ACTIONS(4351), [sym_creal] = ACTIONS(4351), [sym_size_t] = ACTIONS(4351), [sym_ptrdiff_t] = ACTIONS(4351), [sym_string] = ACTIONS(4351), [sym_cstring] = ACTIONS(4351), [sym_dstring] = ACTIONS(4351), [sym_wstring] = ACTIONS(4351), [sym_noreturn] = ACTIONS(4351), [sym_true] = ACTIONS(4351), [sym_false] = ACTIONS(4351), [sym_null] = ACTIONS(4351), [sym_super] = ACTIONS(4351), [sym_this] = ACTIONS(4351), [sym_abstract] = ACTIONS(4351), [sym_alias] = ACTIONS(4351), [sym_align] = ACTIONS(4351), [sym_asm] = ACTIONS(4351), [sym_assert] = ACTIONS(4351), [sym_auto] = ACTIONS(4351), [sym_break] = ACTIONS(4351), [sym_case] = ACTIONS(4351), [sym_cast] = ACTIONS(4351), [sym_catch] = ACTIONS(4351), [sym_class] = ACTIONS(4351), [sym_const] = ACTIONS(4351), [sym_continue] = ACTIONS(4351), [sym_debug] = ACTIONS(4351), [sym_default] = ACTIONS(4351), [sym_delegate] = ACTIONS(4351), [sym_delete] = ACTIONS(4351), [sym_deprecated] = ACTIONS(4351), [sym_do] = ACTIONS(4351), [sym_else] = ACTIONS(4351), [sym_enum] = ACTIONS(4351), [sym_export] = ACTIONS(4351), [sym_extern] = ACTIONS(4351), [sym_final] = ACTIONS(4351), [sym_finally] = ACTIONS(4351), [sym_for] = ACTIONS(4351), [sym_foreach] = ACTIONS(4351), [sym_foreach_reverse] = ACTIONS(4351), [sym_function] = ACTIONS(4351), [sym_goto] = ACTIONS(4351), [sym_if] = ACTIONS(4351), [sym_immutable] = ACTIONS(4351), [sym_import] = ACTIONS(4351), [sym_in] = ACTIONS(4351), [sym_inout] = ACTIONS(4351), [sym_interface] = ACTIONS(4351), [sym_invariant] = ACTIONS(4351), [sym_is] = ACTIONS(4351), [sym_mixin] = ACTIONS(4351), [sym_new] = ACTIONS(4351), [sym_nothrow] = ACTIONS(4351), [sym_out] = ACTIONS(4351), [sym_override] = ACTIONS(4351), [sym_package] = ACTIONS(4351), [sym_pragma] = ACTIONS(4351), [sym_private] = ACTIONS(4351), [sym_protected] = ACTIONS(4351), [sym_public] = ACTIONS(4351), [sym_pure] = ACTIONS(4351), [sym_ref] = ACTIONS(4351), [sym_return] = ACTIONS(4351), [sym_scope] = ACTIONS(4351), [sym_shared] = ACTIONS(4351), [sym_static] = ACTIONS(4351), [sym_struct] = ACTIONS(4351), [sym_switch] = ACTIONS(4351), [sym_synchronized] = ACTIONS(4351), [sym_template] = ACTIONS(4351), [sym_throw] = ACTIONS(4351), [sym_try] = ACTIONS(4351), [sym_typeid] = ACTIONS(4351), [sym_typeof] = ACTIONS(4351), [sym_union] = ACTIONS(4351), [sym_unittest] = ACTIONS(4351), [sym_version] = ACTIONS(4351), [sym_while] = ACTIONS(4351), [sym_with] = ACTIONS(4351), [sym_gshared] = ACTIONS(4351), [sym_traits] = ACTIONS(4351), [sym_vector] = ACTIONS(4351), [sym_void] = ACTIONS(4351), [anon_sym_BQUOTE] = ACTIONS(4353), [anon_sym_r_DQUOTE] = ACTIONS(4353), [anon_sym_x_DQUOTE] = ACTIONS(4353), [anon_sym_DQUOTE] = ACTIONS(4353), [anon_sym_i_BQUOTE] = ACTIONS(4353), [anon_sym_i_DQUOTE] = ACTIONS(4353), [anon_sym_iq_LBRACE] = ACTIONS(4353), [aux_sym_char_literal_token1] = ACTIONS(4353), [anon_sym_SQUOTE] = ACTIONS(4351), [anon_sym___DATE__] = ACTIONS(4351), [anon_sym___FILE__] = ACTIONS(4351), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4351), [anon_sym___FUNCTION__] = ACTIONS(4351), [anon_sym___LINE__] = ACTIONS(4351), [anon_sym___MODULE__] = ACTIONS(4351), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4351), [anon_sym___TIME__] = ACTIONS(4351), [anon_sym___TIMESTAMP__] = ACTIONS(4351), [anon_sym___VENDOR__] = ACTIONS(4351), [anon_sym___VERSION__] = ACTIONS(4351), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4353), [sym_float_literal] = ACTIONS(4353), [sym__string] = ACTIONS(4353), }, [1371] = { [sym_identifier] = ACTIONS(4355), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4357), [anon_sym_RBRACE] = ACTIONS(4357), [anon_sym_LBRACE] = ACTIONS(4357), [anon_sym_DOT] = ACTIONS(4357), [anon_sym_AMP] = ACTIONS(4357), [anon_sym_DASH] = ACTIONS(4355), [anon_sym_DASH_DASH] = ACTIONS(4357), [anon_sym_PLUS] = ACTIONS(4355), [anon_sym_PLUS_PLUS] = ACTIONS(4357), [anon_sym_BANG] = ACTIONS(4357), [anon_sym_LPAREN] = ACTIONS(4357), [anon_sym_RPAREN] = ACTIONS(4357), [anon_sym_LBRACK] = ACTIONS(4357), [anon_sym_SEMI] = ACTIONS(4357), [anon_sym_DOLLAR] = ACTIONS(4357), [anon_sym_STAR] = ACTIONS(4357), [anon_sym_TILDE] = ACTIONS(4357), [anon_sym_AT] = ACTIONS(4357), [sym_bool] = ACTIONS(4355), [sym_byte] = ACTIONS(4355), [sym_ubyte] = ACTIONS(4355), [sym_char] = ACTIONS(4355), [sym_short] = ACTIONS(4355), [sym_ushort] = ACTIONS(4355), [sym_int] = ACTIONS(4355), [sym_uint] = ACTIONS(4355), [sym_long] = ACTIONS(4355), [sym_ulong] = ACTIONS(4355), [sym_cent] = ACTIONS(4355), [sym_ucent] = ACTIONS(4355), [sym_wchar] = ACTIONS(4355), [sym_dchar] = ACTIONS(4355), [sym_float] = ACTIONS(4355), [sym_double] = ACTIONS(4355), [sym_real] = ACTIONS(4355), [sym_ifloat] = ACTIONS(4355), [sym_idouble] = ACTIONS(4355), [sym_ireal] = ACTIONS(4355), [sym_cfloat] = ACTIONS(4355), [sym_cdouble] = ACTIONS(4355), [sym_creal] = ACTIONS(4355), [sym_size_t] = ACTIONS(4355), [sym_ptrdiff_t] = ACTIONS(4355), [sym_string] = ACTIONS(4355), [sym_cstring] = ACTIONS(4355), [sym_dstring] = ACTIONS(4355), [sym_wstring] = ACTIONS(4355), [sym_noreturn] = ACTIONS(4355), [sym_true] = ACTIONS(4355), [sym_false] = ACTIONS(4355), [sym_null] = ACTIONS(4355), [sym_super] = ACTIONS(4355), [sym_this] = ACTIONS(4355), [sym_abstract] = ACTIONS(4355), [sym_alias] = ACTIONS(4355), [sym_align] = ACTIONS(4355), [sym_asm] = ACTIONS(4355), [sym_assert] = ACTIONS(4355), [sym_auto] = ACTIONS(4355), [sym_break] = ACTIONS(4355), [sym_case] = ACTIONS(4355), [sym_cast] = ACTIONS(4355), [sym_catch] = ACTIONS(4355), [sym_class] = ACTIONS(4355), [sym_const] = ACTIONS(4355), [sym_continue] = ACTIONS(4355), [sym_debug] = ACTIONS(4355), [sym_default] = ACTIONS(4355), [sym_delegate] = ACTIONS(4355), [sym_delete] = ACTIONS(4355), [sym_deprecated] = ACTIONS(4355), [sym_do] = ACTIONS(4355), [sym_else] = ACTIONS(4355), [sym_enum] = ACTIONS(4355), [sym_export] = ACTIONS(4355), [sym_extern] = ACTIONS(4355), [sym_final] = ACTIONS(4355), [sym_finally] = ACTIONS(4355), [sym_for] = ACTIONS(4355), [sym_foreach] = ACTIONS(4355), [sym_foreach_reverse] = ACTIONS(4355), [sym_function] = ACTIONS(4355), [sym_goto] = ACTIONS(4355), [sym_if] = ACTIONS(4355), [sym_immutable] = ACTIONS(4355), [sym_import] = ACTIONS(4355), [sym_in] = ACTIONS(4355), [sym_inout] = ACTIONS(4355), [sym_interface] = ACTIONS(4355), [sym_invariant] = ACTIONS(4355), [sym_is] = ACTIONS(4355), [sym_mixin] = ACTIONS(4355), [sym_new] = ACTIONS(4355), [sym_nothrow] = ACTIONS(4355), [sym_out] = ACTIONS(4355), [sym_override] = ACTIONS(4355), [sym_package] = ACTIONS(4355), [sym_pragma] = ACTIONS(4355), [sym_private] = ACTIONS(4355), [sym_protected] = ACTIONS(4355), [sym_public] = ACTIONS(4355), [sym_pure] = ACTIONS(4355), [sym_ref] = ACTIONS(4355), [sym_return] = ACTIONS(4355), [sym_scope] = ACTIONS(4355), [sym_shared] = ACTIONS(4355), [sym_static] = ACTIONS(4355), [sym_struct] = ACTIONS(4355), [sym_switch] = ACTIONS(4355), [sym_synchronized] = ACTIONS(4355), [sym_template] = ACTIONS(4355), [sym_throw] = ACTIONS(4355), [sym_try] = ACTIONS(4355), [sym_typeid] = ACTIONS(4355), [sym_typeof] = ACTIONS(4355), [sym_union] = ACTIONS(4355), [sym_unittest] = ACTIONS(4355), [sym_version] = ACTIONS(4355), [sym_while] = ACTIONS(4355), [sym_with] = ACTIONS(4355), [sym_gshared] = ACTIONS(4355), [sym_traits] = ACTIONS(4355), [sym_vector] = ACTIONS(4355), [sym_void] = ACTIONS(4355), [anon_sym_BQUOTE] = ACTIONS(4357), [anon_sym_r_DQUOTE] = ACTIONS(4357), [anon_sym_x_DQUOTE] = ACTIONS(4357), [anon_sym_DQUOTE] = ACTIONS(4357), [anon_sym_i_BQUOTE] = ACTIONS(4357), [anon_sym_i_DQUOTE] = ACTIONS(4357), [anon_sym_iq_LBRACE] = ACTIONS(4357), [aux_sym_char_literal_token1] = ACTIONS(4357), [anon_sym_SQUOTE] = ACTIONS(4355), [anon_sym___DATE__] = ACTIONS(4355), [anon_sym___FILE__] = ACTIONS(4355), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4355), [anon_sym___FUNCTION__] = ACTIONS(4355), [anon_sym___LINE__] = ACTIONS(4355), [anon_sym___MODULE__] = ACTIONS(4355), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4355), [anon_sym___TIME__] = ACTIONS(4355), [anon_sym___TIMESTAMP__] = ACTIONS(4355), [anon_sym___VENDOR__] = ACTIONS(4355), [anon_sym___VERSION__] = ACTIONS(4355), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4357), [sym_float_literal] = ACTIONS(4357), [sym__string] = ACTIONS(4357), }, [1372] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_RBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [anon_sym_AT] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_abstract] = ACTIONS(4359), [sym_alias] = ACTIONS(4359), [sym_align] = ACTIONS(4359), [sym_asm] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_break] = ACTIONS(4359), [sym_case] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_catch] = ACTIONS(4359), [sym_class] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_continue] = ACTIONS(4359), [sym_debug] = ACTIONS(4359), [sym_default] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_deprecated] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(4363), [sym_enum] = ACTIONS(4359), [sym_export] = ACTIONS(4359), [sym_extern] = ACTIONS(4359), [sym_final] = ACTIONS(4359), [sym_finally] = ACTIONS(4359), [sym_for] = ACTIONS(4359), [sym_foreach] = ACTIONS(4359), [sym_foreach_reverse] = ACTIONS(4359), [sym_function] = ACTIONS(4359), [sym_goto] = ACTIONS(4359), [sym_if] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_interface] = ACTIONS(4359), [sym_invariant] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_nothrow] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_override] = ACTIONS(4359), [sym_package] = ACTIONS(4359), [sym_pragma] = ACTIONS(4359), [sym_private] = ACTIONS(4359), [sym_protected] = ACTIONS(4359), [sym_public] = ACTIONS(4359), [sym_pure] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_return] = ACTIONS(4359), [sym_scope] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_static] = ACTIONS(4359), [sym_struct] = ACTIONS(4359), [sym_switch] = ACTIONS(4359), [sym_synchronized] = ACTIONS(4359), [sym_template] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_try] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_union] = ACTIONS(4359), [sym_unittest] = ACTIONS(4359), [sym_version] = ACTIONS(4359), [sym_while] = ACTIONS(4359), [sym_with] = ACTIONS(4359), [sym_gshared] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [1373] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_RBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [anon_sym_AT] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_abstract] = ACTIONS(4365), [sym_alias] = ACTIONS(4365), [sym_align] = ACTIONS(4365), [sym_asm] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_break] = ACTIONS(4365), [sym_case] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_catch] = ACTIONS(4365), [sym_class] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_continue] = ACTIONS(4365), [sym_debug] = ACTIONS(4365), [sym_default] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_deprecated] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(4371), [sym_enum] = ACTIONS(4365), [sym_export] = ACTIONS(4365), [sym_extern] = ACTIONS(4365), [sym_final] = ACTIONS(4365), [sym_finally] = ACTIONS(4365), [sym_for] = ACTIONS(4365), [sym_foreach] = ACTIONS(4365), [sym_foreach_reverse] = ACTIONS(4365), [sym_function] = ACTIONS(4365), [sym_goto] = ACTIONS(4365), [sym_if] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_interface] = ACTIONS(4365), [sym_invariant] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_nothrow] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_override] = ACTIONS(4365), [sym_package] = ACTIONS(4365), [sym_pragma] = ACTIONS(4365), [sym_private] = ACTIONS(4365), [sym_protected] = ACTIONS(4365), [sym_public] = ACTIONS(4365), [sym_pure] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_return] = ACTIONS(4365), [sym_scope] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_static] = ACTIONS(4365), [sym_struct] = ACTIONS(4365), [sym_switch] = ACTIONS(4365), [sym_synchronized] = ACTIONS(4365), [sym_template] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_try] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_union] = ACTIONS(4365), [sym_unittest] = ACTIONS(4365), [sym_version] = ACTIONS(4365), [sym_while] = ACTIONS(4365), [sym_with] = ACTIONS(4365), [sym_gshared] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [1374] = { [sym_identifier] = ACTIONS(4374), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4376), [anon_sym_RBRACE] = ACTIONS(4376), [anon_sym_LBRACE] = ACTIONS(4376), [anon_sym_DOT] = ACTIONS(4376), [anon_sym_AMP] = ACTIONS(4376), [anon_sym_DASH] = ACTIONS(4374), [anon_sym_DASH_DASH] = ACTIONS(4376), [anon_sym_PLUS] = ACTIONS(4374), [anon_sym_PLUS_PLUS] = ACTIONS(4376), [anon_sym_BANG] = ACTIONS(4376), [anon_sym_LPAREN] = ACTIONS(4376), [anon_sym_RPAREN] = ACTIONS(4376), [anon_sym_LBRACK] = ACTIONS(4376), [anon_sym_SEMI] = ACTIONS(4376), [anon_sym_DOLLAR] = ACTIONS(4376), [anon_sym_STAR] = ACTIONS(4376), [anon_sym_TILDE] = ACTIONS(4376), [anon_sym_AT] = ACTIONS(4376), [sym_bool] = ACTIONS(4374), [sym_byte] = ACTIONS(4374), [sym_ubyte] = ACTIONS(4374), [sym_char] = ACTIONS(4374), [sym_short] = ACTIONS(4374), [sym_ushort] = ACTIONS(4374), [sym_int] = ACTIONS(4374), [sym_uint] = ACTIONS(4374), [sym_long] = ACTIONS(4374), [sym_ulong] = ACTIONS(4374), [sym_cent] = ACTIONS(4374), [sym_ucent] = ACTIONS(4374), [sym_wchar] = ACTIONS(4374), [sym_dchar] = ACTIONS(4374), [sym_float] = ACTIONS(4374), [sym_double] = ACTIONS(4374), [sym_real] = ACTIONS(4374), [sym_ifloat] = ACTIONS(4374), [sym_idouble] = ACTIONS(4374), [sym_ireal] = ACTIONS(4374), [sym_cfloat] = ACTIONS(4374), [sym_cdouble] = ACTIONS(4374), [sym_creal] = ACTIONS(4374), [sym_size_t] = ACTIONS(4374), [sym_ptrdiff_t] = ACTIONS(4374), [sym_string] = ACTIONS(4374), [sym_cstring] = ACTIONS(4374), [sym_dstring] = ACTIONS(4374), [sym_wstring] = ACTIONS(4374), [sym_noreturn] = ACTIONS(4374), [sym_true] = ACTIONS(4374), [sym_false] = ACTIONS(4374), [sym_null] = ACTIONS(4374), [sym_super] = ACTIONS(4374), [sym_this] = ACTIONS(4374), [sym_abstract] = ACTIONS(4374), [sym_alias] = ACTIONS(4374), [sym_align] = ACTIONS(4374), [sym_asm] = ACTIONS(4374), [sym_assert] = ACTIONS(4374), [sym_auto] = ACTIONS(4374), [sym_break] = ACTIONS(4374), [sym_case] = ACTIONS(4374), [sym_cast] = ACTIONS(4374), [sym_catch] = ACTIONS(4374), [sym_class] = ACTIONS(4374), [sym_const] = ACTIONS(4374), [sym_continue] = ACTIONS(4374), [sym_debug] = ACTIONS(4374), [sym_default] = ACTIONS(4374), [sym_delegate] = ACTIONS(4374), [sym_delete] = ACTIONS(4374), [sym_deprecated] = ACTIONS(4374), [sym_do] = ACTIONS(4374), [sym_else] = ACTIONS(4374), [sym_enum] = ACTIONS(4374), [sym_export] = ACTIONS(4374), [sym_extern] = ACTIONS(4374), [sym_final] = ACTIONS(4374), [sym_finally] = ACTIONS(4374), [sym_for] = ACTIONS(4374), [sym_foreach] = ACTIONS(4374), [sym_foreach_reverse] = ACTIONS(4374), [sym_function] = ACTIONS(4374), [sym_goto] = ACTIONS(4374), [sym_if] = ACTIONS(4374), [sym_immutable] = ACTIONS(4374), [sym_import] = ACTIONS(4374), [sym_in] = ACTIONS(4374), [sym_inout] = ACTIONS(4374), [sym_interface] = ACTIONS(4374), [sym_invariant] = ACTIONS(4374), [sym_is] = ACTIONS(4374), [sym_mixin] = ACTIONS(4374), [sym_new] = ACTIONS(4374), [sym_nothrow] = ACTIONS(4374), [sym_out] = ACTIONS(4374), [sym_override] = ACTIONS(4374), [sym_package] = ACTIONS(4374), [sym_pragma] = ACTIONS(4374), [sym_private] = ACTIONS(4374), [sym_protected] = ACTIONS(4374), [sym_public] = ACTIONS(4374), [sym_pure] = ACTIONS(4374), [sym_ref] = ACTIONS(4374), [sym_return] = ACTIONS(4374), [sym_scope] = ACTIONS(4374), [sym_shared] = ACTIONS(4374), [sym_static] = ACTIONS(4374), [sym_struct] = ACTIONS(4374), [sym_switch] = ACTIONS(4374), [sym_synchronized] = ACTIONS(4374), [sym_template] = ACTIONS(4374), [sym_throw] = ACTIONS(4374), [sym_try] = ACTIONS(4374), [sym_typeid] = ACTIONS(4374), [sym_typeof] = ACTIONS(4374), [sym_union] = ACTIONS(4374), [sym_unittest] = ACTIONS(4374), [sym_version] = ACTIONS(4374), [sym_while] = ACTIONS(4374), [sym_with] = ACTIONS(4374), [sym_gshared] = ACTIONS(4374), [sym_traits] = ACTIONS(4374), [sym_vector] = ACTIONS(4374), [sym_void] = ACTIONS(4374), [anon_sym_BQUOTE] = ACTIONS(4376), [anon_sym_r_DQUOTE] = ACTIONS(4376), [anon_sym_x_DQUOTE] = ACTIONS(4376), [anon_sym_DQUOTE] = ACTIONS(4376), [anon_sym_i_BQUOTE] = ACTIONS(4376), [anon_sym_i_DQUOTE] = ACTIONS(4376), [anon_sym_iq_LBRACE] = ACTIONS(4376), [aux_sym_char_literal_token1] = ACTIONS(4376), [anon_sym_SQUOTE] = ACTIONS(4374), [anon_sym___DATE__] = ACTIONS(4374), [anon_sym___FILE__] = ACTIONS(4374), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4374), [anon_sym___FUNCTION__] = ACTIONS(4374), [anon_sym___LINE__] = ACTIONS(4374), [anon_sym___MODULE__] = ACTIONS(4374), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4374), [anon_sym___TIME__] = ACTIONS(4374), [anon_sym___TIMESTAMP__] = ACTIONS(4374), [anon_sym___VENDOR__] = ACTIONS(4374), [anon_sym___VERSION__] = ACTIONS(4374), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4376), [sym_float_literal] = ACTIONS(4376), [sym__string] = ACTIONS(4376), }, [1375] = { [sym_identifier] = ACTIONS(4378), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4380), [anon_sym_RBRACE] = ACTIONS(4380), [anon_sym_LBRACE] = ACTIONS(4380), [anon_sym_DOT] = ACTIONS(4380), [anon_sym_AMP] = ACTIONS(4380), [anon_sym_DASH] = ACTIONS(4378), [anon_sym_DASH_DASH] = ACTIONS(4380), [anon_sym_PLUS] = ACTIONS(4378), [anon_sym_PLUS_PLUS] = ACTIONS(4380), [anon_sym_BANG] = ACTIONS(4380), [anon_sym_LPAREN] = ACTIONS(4380), [anon_sym_RPAREN] = ACTIONS(4380), [anon_sym_LBRACK] = ACTIONS(4380), [anon_sym_SEMI] = ACTIONS(4380), [anon_sym_DOLLAR] = ACTIONS(4380), [anon_sym_STAR] = ACTIONS(4380), [anon_sym_TILDE] = ACTIONS(4380), [anon_sym_AT] = ACTIONS(4380), [sym_bool] = ACTIONS(4378), [sym_byte] = ACTIONS(4378), [sym_ubyte] = ACTIONS(4378), [sym_char] = ACTIONS(4378), [sym_short] = ACTIONS(4378), [sym_ushort] = ACTIONS(4378), [sym_int] = ACTIONS(4378), [sym_uint] = ACTIONS(4378), [sym_long] = ACTIONS(4378), [sym_ulong] = ACTIONS(4378), [sym_cent] = ACTIONS(4378), [sym_ucent] = ACTIONS(4378), [sym_wchar] = ACTIONS(4378), [sym_dchar] = ACTIONS(4378), [sym_float] = ACTIONS(4378), [sym_double] = ACTIONS(4378), [sym_real] = ACTIONS(4378), [sym_ifloat] = ACTIONS(4378), [sym_idouble] = ACTIONS(4378), [sym_ireal] = ACTIONS(4378), [sym_cfloat] = ACTIONS(4378), [sym_cdouble] = ACTIONS(4378), [sym_creal] = ACTIONS(4378), [sym_size_t] = ACTIONS(4378), [sym_ptrdiff_t] = ACTIONS(4378), [sym_string] = ACTIONS(4378), [sym_cstring] = ACTIONS(4378), [sym_dstring] = ACTIONS(4378), [sym_wstring] = ACTIONS(4378), [sym_noreturn] = ACTIONS(4378), [sym_true] = ACTIONS(4378), [sym_false] = ACTIONS(4378), [sym_null] = ACTIONS(4378), [sym_super] = ACTIONS(4378), [sym_this] = ACTIONS(4378), [sym_abstract] = ACTIONS(4378), [sym_alias] = ACTIONS(4378), [sym_align] = ACTIONS(4378), [sym_asm] = ACTIONS(4378), [sym_assert] = ACTIONS(4378), [sym_auto] = ACTIONS(4378), [sym_break] = ACTIONS(4378), [sym_case] = ACTIONS(4378), [sym_cast] = ACTIONS(4378), [sym_catch] = ACTIONS(4378), [sym_class] = ACTIONS(4378), [sym_const] = ACTIONS(4378), [sym_continue] = ACTIONS(4378), [sym_debug] = ACTIONS(4378), [sym_default] = ACTIONS(4378), [sym_delegate] = ACTIONS(4378), [sym_delete] = ACTIONS(4378), [sym_deprecated] = ACTIONS(4378), [sym_do] = ACTIONS(4378), [sym_else] = ACTIONS(4378), [sym_enum] = ACTIONS(4378), [sym_export] = ACTIONS(4378), [sym_extern] = ACTIONS(4378), [sym_final] = ACTIONS(4378), [sym_finally] = ACTIONS(4378), [sym_for] = ACTIONS(4378), [sym_foreach] = ACTIONS(4378), [sym_foreach_reverse] = ACTIONS(4378), [sym_function] = ACTIONS(4378), [sym_goto] = ACTIONS(4378), [sym_if] = ACTIONS(4378), [sym_immutable] = ACTIONS(4378), [sym_import] = ACTIONS(4378), [sym_in] = ACTIONS(4378), [sym_inout] = ACTIONS(4378), [sym_interface] = ACTIONS(4378), [sym_invariant] = ACTIONS(4378), [sym_is] = ACTIONS(4378), [sym_mixin] = ACTIONS(4378), [sym_new] = ACTIONS(4378), [sym_nothrow] = ACTIONS(4378), [sym_out] = ACTIONS(4378), [sym_override] = ACTIONS(4378), [sym_package] = ACTIONS(4378), [sym_pragma] = ACTIONS(4378), [sym_private] = ACTIONS(4378), [sym_protected] = ACTIONS(4378), [sym_public] = ACTIONS(4378), [sym_pure] = ACTIONS(4378), [sym_ref] = ACTIONS(4378), [sym_return] = ACTIONS(4378), [sym_scope] = ACTIONS(4378), [sym_shared] = ACTIONS(4378), [sym_static] = ACTIONS(4378), [sym_struct] = ACTIONS(4378), [sym_switch] = ACTIONS(4378), [sym_synchronized] = ACTIONS(4378), [sym_template] = ACTIONS(4378), [sym_throw] = ACTIONS(4378), [sym_try] = ACTIONS(4378), [sym_typeid] = ACTIONS(4378), [sym_typeof] = ACTIONS(4378), [sym_union] = ACTIONS(4378), [sym_unittest] = ACTIONS(4378), [sym_version] = ACTIONS(4378), [sym_while] = ACTIONS(4378), [sym_with] = ACTIONS(4378), [sym_gshared] = ACTIONS(4378), [sym_traits] = ACTIONS(4378), [sym_vector] = ACTIONS(4378), [sym_void] = ACTIONS(4378), [anon_sym_BQUOTE] = ACTIONS(4380), [anon_sym_r_DQUOTE] = ACTIONS(4380), [anon_sym_x_DQUOTE] = ACTIONS(4380), [anon_sym_DQUOTE] = ACTIONS(4380), [anon_sym_i_BQUOTE] = ACTIONS(4380), [anon_sym_i_DQUOTE] = ACTIONS(4380), [anon_sym_iq_LBRACE] = ACTIONS(4380), [aux_sym_char_literal_token1] = ACTIONS(4380), [anon_sym_SQUOTE] = ACTIONS(4378), [anon_sym___DATE__] = ACTIONS(4378), [anon_sym___FILE__] = ACTIONS(4378), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4378), [anon_sym___FUNCTION__] = ACTIONS(4378), [anon_sym___LINE__] = ACTIONS(4378), [anon_sym___MODULE__] = ACTIONS(4378), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4378), [anon_sym___TIME__] = ACTIONS(4378), [anon_sym___TIMESTAMP__] = ACTIONS(4378), [anon_sym___VENDOR__] = ACTIONS(4378), [anon_sym___VERSION__] = ACTIONS(4378), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4380), [sym_float_literal] = ACTIONS(4380), [sym__string] = ACTIONS(4380), }, [1376] = { [sym_identifier] = ACTIONS(4382), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4384), [anon_sym_RBRACE] = ACTIONS(4384), [anon_sym_LBRACE] = ACTIONS(4384), [anon_sym_DOT] = ACTIONS(4384), [anon_sym_AMP] = ACTIONS(4384), [anon_sym_DASH] = ACTIONS(4382), [anon_sym_DASH_DASH] = ACTIONS(4384), [anon_sym_PLUS] = ACTIONS(4382), [anon_sym_PLUS_PLUS] = ACTIONS(4384), [anon_sym_BANG] = ACTIONS(4384), [anon_sym_LPAREN] = ACTIONS(4384), [anon_sym_RPAREN] = ACTIONS(4384), [anon_sym_LBRACK] = ACTIONS(4384), [anon_sym_SEMI] = ACTIONS(4384), [anon_sym_DOLLAR] = ACTIONS(4384), [anon_sym_STAR] = ACTIONS(4384), [anon_sym_TILDE] = ACTIONS(4384), [anon_sym_AT] = ACTIONS(4384), [sym_bool] = ACTIONS(4382), [sym_byte] = ACTIONS(4382), [sym_ubyte] = ACTIONS(4382), [sym_char] = ACTIONS(4382), [sym_short] = ACTIONS(4382), [sym_ushort] = ACTIONS(4382), [sym_int] = ACTIONS(4382), [sym_uint] = ACTIONS(4382), [sym_long] = ACTIONS(4382), [sym_ulong] = ACTIONS(4382), [sym_cent] = ACTIONS(4382), [sym_ucent] = ACTIONS(4382), [sym_wchar] = ACTIONS(4382), [sym_dchar] = ACTIONS(4382), [sym_float] = ACTIONS(4382), [sym_double] = ACTIONS(4382), [sym_real] = ACTIONS(4382), [sym_ifloat] = ACTIONS(4382), [sym_idouble] = ACTIONS(4382), [sym_ireal] = ACTIONS(4382), [sym_cfloat] = ACTIONS(4382), [sym_cdouble] = ACTIONS(4382), [sym_creal] = ACTIONS(4382), [sym_size_t] = ACTIONS(4382), [sym_ptrdiff_t] = ACTIONS(4382), [sym_string] = ACTIONS(4382), [sym_cstring] = ACTIONS(4382), [sym_dstring] = ACTIONS(4382), [sym_wstring] = ACTIONS(4382), [sym_noreturn] = ACTIONS(4382), [sym_true] = ACTIONS(4382), [sym_false] = ACTIONS(4382), [sym_null] = ACTIONS(4382), [sym_super] = ACTIONS(4382), [sym_this] = ACTIONS(4382), [sym_abstract] = ACTIONS(4382), [sym_alias] = ACTIONS(4382), [sym_align] = ACTIONS(4382), [sym_asm] = ACTIONS(4382), [sym_assert] = ACTIONS(4382), [sym_auto] = ACTIONS(4382), [sym_break] = ACTIONS(4382), [sym_case] = ACTIONS(4382), [sym_cast] = ACTIONS(4382), [sym_catch] = ACTIONS(4382), [sym_class] = ACTIONS(4382), [sym_const] = ACTIONS(4382), [sym_continue] = ACTIONS(4382), [sym_debug] = ACTIONS(4382), [sym_default] = ACTIONS(4382), [sym_delegate] = ACTIONS(4382), [sym_delete] = ACTIONS(4382), [sym_deprecated] = ACTIONS(4382), [sym_do] = ACTIONS(4382), [sym_else] = ACTIONS(4382), [sym_enum] = ACTIONS(4382), [sym_export] = ACTIONS(4382), [sym_extern] = ACTIONS(4382), [sym_final] = ACTIONS(4382), [sym_finally] = ACTIONS(4382), [sym_for] = ACTIONS(4382), [sym_foreach] = ACTIONS(4382), [sym_foreach_reverse] = ACTIONS(4382), [sym_function] = ACTIONS(4382), [sym_goto] = ACTIONS(4382), [sym_if] = ACTIONS(4382), [sym_immutable] = ACTIONS(4382), [sym_import] = ACTIONS(4382), [sym_in] = ACTIONS(4382), [sym_inout] = ACTIONS(4382), [sym_interface] = ACTIONS(4382), [sym_invariant] = ACTIONS(4382), [sym_is] = ACTIONS(4382), [sym_mixin] = ACTIONS(4382), [sym_new] = ACTIONS(4382), [sym_nothrow] = ACTIONS(4382), [sym_out] = ACTIONS(4382), [sym_override] = ACTIONS(4382), [sym_package] = ACTIONS(4382), [sym_pragma] = ACTIONS(4382), [sym_private] = ACTIONS(4382), [sym_protected] = ACTIONS(4382), [sym_public] = ACTIONS(4382), [sym_pure] = ACTIONS(4382), [sym_ref] = ACTIONS(4382), [sym_return] = ACTIONS(4382), [sym_scope] = ACTIONS(4382), [sym_shared] = ACTIONS(4382), [sym_static] = ACTIONS(4382), [sym_struct] = ACTIONS(4382), [sym_switch] = ACTIONS(4382), [sym_synchronized] = ACTIONS(4382), [sym_template] = ACTIONS(4382), [sym_throw] = ACTIONS(4382), [sym_try] = ACTIONS(4382), [sym_typeid] = ACTIONS(4382), [sym_typeof] = ACTIONS(4382), [sym_union] = ACTIONS(4382), [sym_unittest] = ACTIONS(4382), [sym_version] = ACTIONS(4382), [sym_while] = ACTIONS(4382), [sym_with] = ACTIONS(4382), [sym_gshared] = ACTIONS(4382), [sym_traits] = ACTIONS(4382), [sym_vector] = ACTIONS(4382), [sym_void] = ACTIONS(4382), [anon_sym_BQUOTE] = ACTIONS(4384), [anon_sym_r_DQUOTE] = ACTIONS(4384), [anon_sym_x_DQUOTE] = ACTIONS(4384), [anon_sym_DQUOTE] = ACTIONS(4384), [anon_sym_i_BQUOTE] = ACTIONS(4384), [anon_sym_i_DQUOTE] = ACTIONS(4384), [anon_sym_iq_LBRACE] = ACTIONS(4384), [aux_sym_char_literal_token1] = ACTIONS(4384), [anon_sym_SQUOTE] = ACTIONS(4382), [anon_sym___DATE__] = ACTIONS(4382), [anon_sym___FILE__] = ACTIONS(4382), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4382), [anon_sym___FUNCTION__] = ACTIONS(4382), [anon_sym___LINE__] = ACTIONS(4382), [anon_sym___MODULE__] = ACTIONS(4382), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4382), [anon_sym___TIME__] = ACTIONS(4382), [anon_sym___TIMESTAMP__] = ACTIONS(4382), [anon_sym___VENDOR__] = ACTIONS(4382), [anon_sym___VERSION__] = ACTIONS(4382), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4384), [sym_float_literal] = ACTIONS(4384), [sym__string] = ACTIONS(4384), }, [1377] = { [sym_identifier] = ACTIONS(4386), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4388), [anon_sym_RBRACE] = ACTIONS(4388), [anon_sym_LBRACE] = ACTIONS(4388), [anon_sym_DOT] = ACTIONS(4388), [anon_sym_AMP] = ACTIONS(4388), [anon_sym_DASH] = ACTIONS(4386), [anon_sym_DASH_DASH] = ACTIONS(4388), [anon_sym_PLUS] = ACTIONS(4386), [anon_sym_PLUS_PLUS] = ACTIONS(4388), [anon_sym_BANG] = ACTIONS(4388), [anon_sym_LPAREN] = ACTIONS(4388), [anon_sym_RPAREN] = ACTIONS(4388), [anon_sym_LBRACK] = ACTIONS(4388), [anon_sym_SEMI] = ACTIONS(4388), [anon_sym_DOLLAR] = ACTIONS(4388), [anon_sym_STAR] = ACTIONS(4388), [anon_sym_TILDE] = ACTIONS(4388), [anon_sym_AT] = ACTIONS(4388), [sym_bool] = ACTIONS(4386), [sym_byte] = ACTIONS(4386), [sym_ubyte] = ACTIONS(4386), [sym_char] = ACTIONS(4386), [sym_short] = ACTIONS(4386), [sym_ushort] = ACTIONS(4386), [sym_int] = ACTIONS(4386), [sym_uint] = ACTIONS(4386), [sym_long] = ACTIONS(4386), [sym_ulong] = ACTIONS(4386), [sym_cent] = ACTIONS(4386), [sym_ucent] = ACTIONS(4386), [sym_wchar] = ACTIONS(4386), [sym_dchar] = ACTIONS(4386), [sym_float] = ACTIONS(4386), [sym_double] = ACTIONS(4386), [sym_real] = ACTIONS(4386), [sym_ifloat] = ACTIONS(4386), [sym_idouble] = ACTIONS(4386), [sym_ireal] = ACTIONS(4386), [sym_cfloat] = ACTIONS(4386), [sym_cdouble] = ACTIONS(4386), [sym_creal] = ACTIONS(4386), [sym_size_t] = ACTIONS(4386), [sym_ptrdiff_t] = ACTIONS(4386), [sym_string] = ACTIONS(4386), [sym_cstring] = ACTIONS(4386), [sym_dstring] = ACTIONS(4386), [sym_wstring] = ACTIONS(4386), [sym_noreturn] = ACTIONS(4386), [sym_true] = ACTIONS(4386), [sym_false] = ACTIONS(4386), [sym_null] = ACTIONS(4386), [sym_super] = ACTIONS(4386), [sym_this] = ACTIONS(4386), [sym_abstract] = ACTIONS(4386), [sym_alias] = ACTIONS(4386), [sym_align] = ACTIONS(4386), [sym_asm] = ACTIONS(4386), [sym_assert] = ACTIONS(4386), [sym_auto] = ACTIONS(4386), [sym_break] = ACTIONS(4386), [sym_case] = ACTIONS(4386), [sym_cast] = ACTIONS(4386), [sym_catch] = ACTIONS(4386), [sym_class] = ACTIONS(4386), [sym_const] = ACTIONS(4386), [sym_continue] = ACTIONS(4386), [sym_debug] = ACTIONS(4386), [sym_default] = ACTIONS(4386), [sym_delegate] = ACTIONS(4386), [sym_delete] = ACTIONS(4386), [sym_deprecated] = ACTIONS(4386), [sym_do] = ACTIONS(4386), [sym_else] = ACTIONS(4386), [sym_enum] = ACTIONS(4386), [sym_export] = ACTIONS(4386), [sym_extern] = ACTIONS(4386), [sym_final] = ACTIONS(4386), [sym_finally] = ACTIONS(4386), [sym_for] = ACTIONS(4386), [sym_foreach] = ACTIONS(4386), [sym_foreach_reverse] = ACTIONS(4386), [sym_function] = ACTIONS(4386), [sym_goto] = ACTIONS(4386), [sym_if] = ACTIONS(4386), [sym_immutable] = ACTIONS(4386), [sym_import] = ACTIONS(4386), [sym_in] = ACTIONS(4386), [sym_inout] = ACTIONS(4386), [sym_interface] = ACTIONS(4386), [sym_invariant] = ACTIONS(4386), [sym_is] = ACTIONS(4386), [sym_mixin] = ACTIONS(4386), [sym_new] = ACTIONS(4386), [sym_nothrow] = ACTIONS(4386), [sym_out] = ACTIONS(4386), [sym_override] = ACTIONS(4386), [sym_package] = ACTIONS(4386), [sym_pragma] = ACTIONS(4386), [sym_private] = ACTIONS(4386), [sym_protected] = ACTIONS(4386), [sym_public] = ACTIONS(4386), [sym_pure] = ACTIONS(4386), [sym_ref] = ACTIONS(4386), [sym_return] = ACTIONS(4386), [sym_scope] = ACTIONS(4386), [sym_shared] = ACTIONS(4386), [sym_static] = ACTIONS(4386), [sym_struct] = ACTIONS(4386), [sym_switch] = ACTIONS(4386), [sym_synchronized] = ACTIONS(4386), [sym_template] = ACTIONS(4386), [sym_throw] = ACTIONS(4386), [sym_try] = ACTIONS(4386), [sym_typeid] = ACTIONS(4386), [sym_typeof] = ACTIONS(4386), [sym_union] = ACTIONS(4386), [sym_unittest] = ACTIONS(4386), [sym_version] = ACTIONS(4386), [sym_while] = ACTIONS(4386), [sym_with] = ACTIONS(4386), [sym_gshared] = ACTIONS(4386), [sym_traits] = ACTIONS(4386), [sym_vector] = ACTIONS(4386), [sym_void] = ACTIONS(4386), [anon_sym_BQUOTE] = ACTIONS(4388), [anon_sym_r_DQUOTE] = ACTIONS(4388), [anon_sym_x_DQUOTE] = ACTIONS(4388), [anon_sym_DQUOTE] = ACTIONS(4388), [anon_sym_i_BQUOTE] = ACTIONS(4388), [anon_sym_i_DQUOTE] = ACTIONS(4388), [anon_sym_iq_LBRACE] = ACTIONS(4388), [aux_sym_char_literal_token1] = ACTIONS(4388), [anon_sym_SQUOTE] = ACTIONS(4386), [anon_sym___DATE__] = ACTIONS(4386), [anon_sym___FILE__] = ACTIONS(4386), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4386), [anon_sym___FUNCTION__] = ACTIONS(4386), [anon_sym___LINE__] = ACTIONS(4386), [anon_sym___MODULE__] = ACTIONS(4386), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4386), [anon_sym___TIME__] = ACTIONS(4386), [anon_sym___TIMESTAMP__] = ACTIONS(4386), [anon_sym___VENDOR__] = ACTIONS(4386), [anon_sym___VERSION__] = ACTIONS(4386), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4388), [sym_float_literal] = ACTIONS(4388), [sym__string] = ACTIONS(4388), }, [1378] = { [sym_identifier] = ACTIONS(4390), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4394), [anon_sym_RBRACE] = ACTIONS(4394), [anon_sym_LBRACE] = ACTIONS(4394), [anon_sym_DOT] = ACTIONS(4394), [anon_sym_AMP] = ACTIONS(4394), [anon_sym_DASH] = ACTIONS(4390), [anon_sym_DASH_DASH] = ACTIONS(4394), [anon_sym_PLUS] = ACTIONS(4390), [anon_sym_PLUS_PLUS] = ACTIONS(4394), [anon_sym_BANG] = ACTIONS(4394), [anon_sym_LPAREN] = ACTIONS(4394), [anon_sym_RPAREN] = ACTIONS(4394), [anon_sym_LBRACK] = ACTIONS(4394), [anon_sym_SEMI] = ACTIONS(4394), [anon_sym_DOLLAR] = ACTIONS(4394), [anon_sym_STAR] = ACTIONS(4394), [anon_sym_TILDE] = ACTIONS(4394), [anon_sym_AT] = ACTIONS(4394), [sym_bool] = ACTIONS(4390), [sym_byte] = ACTIONS(4390), [sym_ubyte] = ACTIONS(4390), [sym_char] = ACTIONS(4390), [sym_short] = ACTIONS(4390), [sym_ushort] = ACTIONS(4390), [sym_int] = ACTIONS(4390), [sym_uint] = ACTIONS(4390), [sym_long] = ACTIONS(4390), [sym_ulong] = ACTIONS(4390), [sym_cent] = ACTIONS(4390), [sym_ucent] = ACTIONS(4390), [sym_wchar] = ACTIONS(4390), [sym_dchar] = ACTIONS(4390), [sym_float] = ACTIONS(4390), [sym_double] = ACTIONS(4390), [sym_real] = ACTIONS(4390), [sym_ifloat] = ACTIONS(4390), [sym_idouble] = ACTIONS(4390), [sym_ireal] = ACTIONS(4390), [sym_cfloat] = ACTIONS(4390), [sym_cdouble] = ACTIONS(4390), [sym_creal] = ACTIONS(4390), [sym_size_t] = ACTIONS(4390), [sym_ptrdiff_t] = ACTIONS(4390), [sym_string] = ACTIONS(4390), [sym_cstring] = ACTIONS(4390), [sym_dstring] = ACTIONS(4390), [sym_wstring] = ACTIONS(4390), [sym_noreturn] = ACTIONS(4390), [sym_true] = ACTIONS(4390), [sym_false] = ACTIONS(4390), [sym_null] = ACTIONS(4390), [sym_super] = ACTIONS(4390), [sym_this] = ACTIONS(4390), [sym_abstract] = ACTIONS(4390), [sym_alias] = ACTIONS(4390), [sym_align] = ACTIONS(4390), [sym_asm] = ACTIONS(4390), [sym_assert] = ACTIONS(4390), [sym_auto] = ACTIONS(4390), [sym_break] = ACTIONS(4390), [sym_case] = ACTIONS(4390), [sym_cast] = ACTIONS(4390), [sym_catch] = ACTIONS(4390), [sym_class] = ACTIONS(4390), [sym_const] = ACTIONS(4390), [sym_continue] = ACTIONS(4390), [sym_debug] = ACTIONS(4390), [sym_default] = ACTIONS(4390), [sym_delegate] = ACTIONS(4390), [sym_delete] = ACTIONS(4390), [sym_deprecated] = ACTIONS(4390), [sym_do] = ACTIONS(4390), [sym_else] = ACTIONS(4390), [sym_enum] = ACTIONS(4390), [sym_export] = ACTIONS(4390), [sym_extern] = ACTIONS(4390), [sym_final] = ACTIONS(4390), [sym_finally] = ACTIONS(4390), [sym_for] = ACTIONS(4390), [sym_foreach] = ACTIONS(4390), [sym_foreach_reverse] = ACTIONS(4390), [sym_function] = ACTIONS(4390), [sym_goto] = ACTIONS(4390), [sym_if] = ACTIONS(4390), [sym_immutable] = ACTIONS(4390), [sym_import] = ACTIONS(4390), [sym_in] = ACTIONS(4390), [sym_inout] = ACTIONS(4390), [sym_interface] = ACTIONS(4390), [sym_invariant] = ACTIONS(4390), [sym_is] = ACTIONS(4390), [sym_mixin] = ACTIONS(4390), [sym_new] = ACTIONS(4390), [sym_nothrow] = ACTIONS(4390), [sym_out] = ACTIONS(4390), [sym_override] = ACTIONS(4390), [sym_package] = ACTIONS(4390), [sym_pragma] = ACTIONS(4390), [sym_private] = ACTIONS(4390), [sym_protected] = ACTIONS(4390), [sym_public] = ACTIONS(4390), [sym_pure] = ACTIONS(4390), [sym_ref] = ACTIONS(4390), [sym_return] = ACTIONS(4390), [sym_scope] = ACTIONS(4390), [sym_shared] = ACTIONS(4390), [sym_static] = ACTIONS(4390), [sym_struct] = ACTIONS(4390), [sym_switch] = ACTIONS(4390), [sym_synchronized] = ACTIONS(4390), [sym_template] = ACTIONS(4390), [sym_throw] = ACTIONS(4390), [sym_try] = ACTIONS(4390), [sym_typeid] = ACTIONS(4390), [sym_typeof] = ACTIONS(4390), [sym_union] = ACTIONS(4390), [sym_unittest] = ACTIONS(4390), [sym_version] = ACTIONS(4390), [sym_while] = ACTIONS(4390), [sym_with] = ACTIONS(4390), [sym_gshared] = ACTIONS(4390), [sym_traits] = ACTIONS(4390), [sym_vector] = ACTIONS(4390), [sym_void] = ACTIONS(4390), [anon_sym_BQUOTE] = ACTIONS(4394), [anon_sym_r_DQUOTE] = ACTIONS(4394), [anon_sym_x_DQUOTE] = ACTIONS(4394), [anon_sym_DQUOTE] = ACTIONS(4394), [anon_sym_i_BQUOTE] = ACTIONS(4394), [anon_sym_i_DQUOTE] = ACTIONS(4394), [anon_sym_iq_LBRACE] = ACTIONS(4394), [aux_sym_char_literal_token1] = ACTIONS(4394), [anon_sym_SQUOTE] = ACTIONS(4390), [anon_sym___DATE__] = ACTIONS(4390), [anon_sym___FILE__] = ACTIONS(4390), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4390), [anon_sym___FUNCTION__] = ACTIONS(4390), [anon_sym___LINE__] = ACTIONS(4390), [anon_sym___MODULE__] = ACTIONS(4390), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4390), [anon_sym___TIME__] = ACTIONS(4390), [anon_sym___TIMESTAMP__] = ACTIONS(4390), [anon_sym___VENDOR__] = ACTIONS(4390), [anon_sym___VERSION__] = ACTIONS(4390), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4394), [sym_float_literal] = ACTIONS(4394), [sym__string] = ACTIONS(4394), }, [1379] = { [sym_identifier] = ACTIONS(4398), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4400), [anon_sym_RBRACE] = ACTIONS(4400), [anon_sym_LBRACE] = ACTIONS(4400), [anon_sym_DOT] = ACTIONS(4400), [anon_sym_AMP] = ACTIONS(4400), [anon_sym_DASH] = ACTIONS(4398), [anon_sym_DASH_DASH] = ACTIONS(4400), [anon_sym_PLUS] = ACTIONS(4398), [anon_sym_PLUS_PLUS] = ACTIONS(4400), [anon_sym_BANG] = ACTIONS(4400), [anon_sym_LPAREN] = ACTIONS(4400), [anon_sym_RPAREN] = ACTIONS(4400), [anon_sym_LBRACK] = ACTIONS(4400), [anon_sym_SEMI] = ACTIONS(4400), [anon_sym_DOLLAR] = ACTIONS(4400), [anon_sym_STAR] = ACTIONS(4400), [anon_sym_TILDE] = ACTIONS(4400), [anon_sym_AT] = ACTIONS(4400), [sym_bool] = ACTIONS(4398), [sym_byte] = ACTIONS(4398), [sym_ubyte] = ACTIONS(4398), [sym_char] = ACTIONS(4398), [sym_short] = ACTIONS(4398), [sym_ushort] = ACTIONS(4398), [sym_int] = ACTIONS(4398), [sym_uint] = ACTIONS(4398), [sym_long] = ACTIONS(4398), [sym_ulong] = ACTIONS(4398), [sym_cent] = ACTIONS(4398), [sym_ucent] = ACTIONS(4398), [sym_wchar] = ACTIONS(4398), [sym_dchar] = ACTIONS(4398), [sym_float] = ACTIONS(4398), [sym_double] = ACTIONS(4398), [sym_real] = ACTIONS(4398), [sym_ifloat] = ACTIONS(4398), [sym_idouble] = ACTIONS(4398), [sym_ireal] = ACTIONS(4398), [sym_cfloat] = ACTIONS(4398), [sym_cdouble] = ACTIONS(4398), [sym_creal] = ACTIONS(4398), [sym_size_t] = ACTIONS(4398), [sym_ptrdiff_t] = ACTIONS(4398), [sym_string] = ACTIONS(4398), [sym_cstring] = ACTIONS(4398), [sym_dstring] = ACTIONS(4398), [sym_wstring] = ACTIONS(4398), [sym_noreturn] = ACTIONS(4398), [sym_true] = ACTIONS(4398), [sym_false] = ACTIONS(4398), [sym_null] = ACTIONS(4398), [sym_super] = ACTIONS(4398), [sym_this] = ACTIONS(4398), [sym_abstract] = ACTIONS(4398), [sym_alias] = ACTIONS(4398), [sym_align] = ACTIONS(4398), [sym_asm] = ACTIONS(4398), [sym_assert] = ACTIONS(4398), [sym_auto] = ACTIONS(4398), [sym_break] = ACTIONS(4398), [sym_case] = ACTIONS(4398), [sym_cast] = ACTIONS(4398), [sym_catch] = ACTIONS(4398), [sym_class] = ACTIONS(4398), [sym_const] = ACTIONS(4398), [sym_continue] = ACTIONS(4398), [sym_debug] = ACTIONS(4398), [sym_default] = ACTIONS(4398), [sym_delegate] = ACTIONS(4398), [sym_delete] = ACTIONS(4398), [sym_deprecated] = ACTIONS(4398), [sym_do] = ACTIONS(4398), [sym_else] = ACTIONS(4398), [sym_enum] = ACTIONS(4398), [sym_export] = ACTIONS(4398), [sym_extern] = ACTIONS(4398), [sym_final] = ACTIONS(4398), [sym_finally] = ACTIONS(4398), [sym_for] = ACTIONS(4398), [sym_foreach] = ACTIONS(4398), [sym_foreach_reverse] = ACTIONS(4398), [sym_function] = ACTIONS(4398), [sym_goto] = ACTIONS(4398), [sym_if] = ACTIONS(4398), [sym_immutable] = ACTIONS(4398), [sym_import] = ACTIONS(4398), [sym_in] = ACTIONS(4398), [sym_inout] = ACTIONS(4398), [sym_interface] = ACTIONS(4398), [sym_invariant] = ACTIONS(4398), [sym_is] = ACTIONS(4398), [sym_mixin] = ACTIONS(4398), [sym_new] = ACTIONS(4398), [sym_nothrow] = ACTIONS(4398), [sym_out] = ACTIONS(4398), [sym_override] = ACTIONS(4398), [sym_package] = ACTIONS(4398), [sym_pragma] = ACTIONS(4398), [sym_private] = ACTIONS(4398), [sym_protected] = ACTIONS(4398), [sym_public] = ACTIONS(4398), [sym_pure] = ACTIONS(4398), [sym_ref] = ACTIONS(4398), [sym_return] = ACTIONS(4398), [sym_scope] = ACTIONS(4398), [sym_shared] = ACTIONS(4398), [sym_static] = ACTIONS(4398), [sym_struct] = ACTIONS(4398), [sym_switch] = ACTIONS(4398), [sym_synchronized] = ACTIONS(4398), [sym_template] = ACTIONS(4398), [sym_throw] = ACTIONS(4398), [sym_try] = ACTIONS(4398), [sym_typeid] = ACTIONS(4398), [sym_typeof] = ACTIONS(4398), [sym_union] = ACTIONS(4398), [sym_unittest] = ACTIONS(4398), [sym_version] = ACTIONS(4398), [sym_while] = ACTIONS(4398), [sym_with] = ACTIONS(4398), [sym_gshared] = ACTIONS(4398), [sym_traits] = ACTIONS(4398), [sym_vector] = ACTIONS(4398), [sym_void] = ACTIONS(4398), [anon_sym_BQUOTE] = ACTIONS(4400), [anon_sym_r_DQUOTE] = ACTIONS(4400), [anon_sym_x_DQUOTE] = ACTIONS(4400), [anon_sym_DQUOTE] = ACTIONS(4400), [anon_sym_i_BQUOTE] = ACTIONS(4400), [anon_sym_i_DQUOTE] = ACTIONS(4400), [anon_sym_iq_LBRACE] = ACTIONS(4400), [aux_sym_char_literal_token1] = ACTIONS(4400), [anon_sym_SQUOTE] = ACTIONS(4398), [anon_sym___DATE__] = ACTIONS(4398), [anon_sym___FILE__] = ACTIONS(4398), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4398), [anon_sym___FUNCTION__] = ACTIONS(4398), [anon_sym___LINE__] = ACTIONS(4398), [anon_sym___MODULE__] = ACTIONS(4398), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4398), [anon_sym___TIME__] = ACTIONS(4398), [anon_sym___TIMESTAMP__] = ACTIONS(4398), [anon_sym___VENDOR__] = ACTIONS(4398), [anon_sym___VERSION__] = ACTIONS(4398), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4400), [sym_float_literal] = ACTIONS(4400), [sym__string] = ACTIONS(4400), }, [1380] = { [sym_identifier] = ACTIONS(4402), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4404), [anon_sym_RBRACE] = ACTIONS(4404), [anon_sym_LBRACE] = ACTIONS(4404), [anon_sym_DOT] = ACTIONS(4404), [anon_sym_AMP] = ACTIONS(4404), [anon_sym_DASH] = ACTIONS(4402), [anon_sym_DASH_DASH] = ACTIONS(4404), [anon_sym_PLUS] = ACTIONS(4402), [anon_sym_PLUS_PLUS] = ACTIONS(4404), [anon_sym_BANG] = ACTIONS(4404), [anon_sym_LPAREN] = ACTIONS(4404), [anon_sym_RPAREN] = ACTIONS(4404), [anon_sym_LBRACK] = ACTIONS(4404), [anon_sym_SEMI] = ACTIONS(4404), [anon_sym_DOLLAR] = ACTIONS(4404), [anon_sym_STAR] = ACTIONS(4404), [anon_sym_TILDE] = ACTIONS(4404), [anon_sym_AT] = ACTIONS(4404), [sym_bool] = ACTIONS(4402), [sym_byte] = ACTIONS(4402), [sym_ubyte] = ACTIONS(4402), [sym_char] = ACTIONS(4402), [sym_short] = ACTIONS(4402), [sym_ushort] = ACTIONS(4402), [sym_int] = ACTIONS(4402), [sym_uint] = ACTIONS(4402), [sym_long] = ACTIONS(4402), [sym_ulong] = ACTIONS(4402), [sym_cent] = ACTIONS(4402), [sym_ucent] = ACTIONS(4402), [sym_wchar] = ACTIONS(4402), [sym_dchar] = ACTIONS(4402), [sym_float] = ACTIONS(4402), [sym_double] = ACTIONS(4402), [sym_real] = ACTIONS(4402), [sym_ifloat] = ACTIONS(4402), [sym_idouble] = ACTIONS(4402), [sym_ireal] = ACTIONS(4402), [sym_cfloat] = ACTIONS(4402), [sym_cdouble] = ACTIONS(4402), [sym_creal] = ACTIONS(4402), [sym_size_t] = ACTIONS(4402), [sym_ptrdiff_t] = ACTIONS(4402), [sym_string] = ACTIONS(4402), [sym_cstring] = ACTIONS(4402), [sym_dstring] = ACTIONS(4402), [sym_wstring] = ACTIONS(4402), [sym_noreturn] = ACTIONS(4402), [sym_true] = ACTIONS(4402), [sym_false] = ACTIONS(4402), [sym_null] = ACTIONS(4402), [sym_super] = ACTIONS(4402), [sym_this] = ACTIONS(4402), [sym_abstract] = ACTIONS(4402), [sym_alias] = ACTIONS(4402), [sym_align] = ACTIONS(4402), [sym_asm] = ACTIONS(4402), [sym_assert] = ACTIONS(4402), [sym_auto] = ACTIONS(4402), [sym_break] = ACTIONS(4402), [sym_case] = ACTIONS(4402), [sym_cast] = ACTIONS(4402), [sym_catch] = ACTIONS(4402), [sym_class] = ACTIONS(4402), [sym_const] = ACTIONS(4402), [sym_continue] = ACTIONS(4402), [sym_debug] = ACTIONS(4402), [sym_default] = ACTIONS(4402), [sym_delegate] = ACTIONS(4402), [sym_delete] = ACTIONS(4402), [sym_deprecated] = ACTIONS(4402), [sym_do] = ACTIONS(4402), [sym_else] = ACTIONS(4402), [sym_enum] = ACTIONS(4402), [sym_export] = ACTIONS(4402), [sym_extern] = ACTIONS(4402), [sym_final] = ACTIONS(4402), [sym_finally] = ACTIONS(4402), [sym_for] = ACTIONS(4402), [sym_foreach] = ACTIONS(4402), [sym_foreach_reverse] = ACTIONS(4402), [sym_function] = ACTIONS(4402), [sym_goto] = ACTIONS(4402), [sym_if] = ACTIONS(4402), [sym_immutable] = ACTIONS(4402), [sym_import] = ACTIONS(4402), [sym_in] = ACTIONS(4402), [sym_inout] = ACTIONS(4402), [sym_interface] = ACTIONS(4402), [sym_invariant] = ACTIONS(4402), [sym_is] = ACTIONS(4402), [sym_mixin] = ACTIONS(4402), [sym_new] = ACTIONS(4402), [sym_nothrow] = ACTIONS(4402), [sym_out] = ACTIONS(4402), [sym_override] = ACTIONS(4402), [sym_package] = ACTIONS(4402), [sym_pragma] = ACTIONS(4402), [sym_private] = ACTIONS(4402), [sym_protected] = ACTIONS(4402), [sym_public] = ACTIONS(4402), [sym_pure] = ACTIONS(4402), [sym_ref] = ACTIONS(4402), [sym_return] = ACTIONS(4402), [sym_scope] = ACTIONS(4402), [sym_shared] = ACTIONS(4402), [sym_static] = ACTIONS(4402), [sym_struct] = ACTIONS(4402), [sym_switch] = ACTIONS(4402), [sym_synchronized] = ACTIONS(4402), [sym_template] = ACTIONS(4402), [sym_throw] = ACTIONS(4402), [sym_try] = ACTIONS(4402), [sym_typeid] = ACTIONS(4402), [sym_typeof] = ACTIONS(4402), [sym_union] = ACTIONS(4402), [sym_unittest] = ACTIONS(4402), [sym_version] = ACTIONS(4402), [sym_while] = ACTIONS(4402), [sym_with] = ACTIONS(4402), [sym_gshared] = ACTIONS(4402), [sym_traits] = ACTIONS(4402), [sym_vector] = ACTIONS(4402), [sym_void] = ACTIONS(4402), [anon_sym_BQUOTE] = ACTIONS(4404), [anon_sym_r_DQUOTE] = ACTIONS(4404), [anon_sym_x_DQUOTE] = ACTIONS(4404), [anon_sym_DQUOTE] = ACTIONS(4404), [anon_sym_i_BQUOTE] = ACTIONS(4404), [anon_sym_i_DQUOTE] = ACTIONS(4404), [anon_sym_iq_LBRACE] = ACTIONS(4404), [aux_sym_char_literal_token1] = ACTIONS(4404), [anon_sym_SQUOTE] = ACTIONS(4402), [anon_sym___DATE__] = ACTIONS(4402), [anon_sym___FILE__] = ACTIONS(4402), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4402), [anon_sym___FUNCTION__] = ACTIONS(4402), [anon_sym___LINE__] = ACTIONS(4402), [anon_sym___MODULE__] = ACTIONS(4402), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4402), [anon_sym___TIME__] = ACTIONS(4402), [anon_sym___TIMESTAMP__] = ACTIONS(4402), [anon_sym___VENDOR__] = ACTIONS(4402), [anon_sym___VERSION__] = ACTIONS(4402), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4404), [sym_float_literal] = ACTIONS(4404), [sym__string] = ACTIONS(4404), }, [1381] = { [sym_identifier] = ACTIONS(4406), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4408), [anon_sym_RBRACE] = ACTIONS(4408), [anon_sym_LBRACE] = ACTIONS(4408), [anon_sym_DOT] = ACTIONS(4408), [anon_sym_AMP] = ACTIONS(4408), [anon_sym_DASH] = ACTIONS(4406), [anon_sym_DASH_DASH] = ACTIONS(4408), [anon_sym_PLUS] = ACTIONS(4406), [anon_sym_PLUS_PLUS] = ACTIONS(4408), [anon_sym_BANG] = ACTIONS(4408), [anon_sym_LPAREN] = ACTIONS(4408), [anon_sym_RPAREN] = ACTIONS(4408), [anon_sym_LBRACK] = ACTIONS(4408), [anon_sym_SEMI] = ACTIONS(4408), [anon_sym_DOLLAR] = ACTIONS(4408), [anon_sym_STAR] = ACTIONS(4408), [anon_sym_TILDE] = ACTIONS(4408), [anon_sym_AT] = ACTIONS(4408), [sym_bool] = ACTIONS(4406), [sym_byte] = ACTIONS(4406), [sym_ubyte] = ACTIONS(4406), [sym_char] = ACTIONS(4406), [sym_short] = ACTIONS(4406), [sym_ushort] = ACTIONS(4406), [sym_int] = ACTIONS(4406), [sym_uint] = ACTIONS(4406), [sym_long] = ACTIONS(4406), [sym_ulong] = ACTIONS(4406), [sym_cent] = ACTIONS(4406), [sym_ucent] = ACTIONS(4406), [sym_wchar] = ACTIONS(4406), [sym_dchar] = ACTIONS(4406), [sym_float] = ACTIONS(4406), [sym_double] = ACTIONS(4406), [sym_real] = ACTIONS(4406), [sym_ifloat] = ACTIONS(4406), [sym_idouble] = ACTIONS(4406), [sym_ireal] = ACTIONS(4406), [sym_cfloat] = ACTIONS(4406), [sym_cdouble] = ACTIONS(4406), [sym_creal] = ACTIONS(4406), [sym_size_t] = ACTIONS(4406), [sym_ptrdiff_t] = ACTIONS(4406), [sym_string] = ACTIONS(4406), [sym_cstring] = ACTIONS(4406), [sym_dstring] = ACTIONS(4406), [sym_wstring] = ACTIONS(4406), [sym_noreturn] = ACTIONS(4406), [sym_true] = ACTIONS(4406), [sym_false] = ACTIONS(4406), [sym_null] = ACTIONS(4406), [sym_super] = ACTIONS(4406), [sym_this] = ACTIONS(4406), [sym_abstract] = ACTIONS(4406), [sym_alias] = ACTIONS(4406), [sym_align] = ACTIONS(4406), [sym_asm] = ACTIONS(4406), [sym_assert] = ACTIONS(4406), [sym_auto] = ACTIONS(4406), [sym_break] = ACTIONS(4406), [sym_case] = ACTIONS(4406), [sym_cast] = ACTIONS(4406), [sym_catch] = ACTIONS(4406), [sym_class] = ACTIONS(4406), [sym_const] = ACTIONS(4406), [sym_continue] = ACTIONS(4406), [sym_debug] = ACTIONS(4406), [sym_default] = ACTIONS(4406), [sym_delegate] = ACTIONS(4406), [sym_delete] = ACTIONS(4406), [sym_deprecated] = ACTIONS(4406), [sym_do] = ACTIONS(4406), [sym_else] = ACTIONS(4406), [sym_enum] = ACTIONS(4406), [sym_export] = ACTIONS(4406), [sym_extern] = ACTIONS(4406), [sym_final] = ACTIONS(4406), [sym_finally] = ACTIONS(4406), [sym_for] = ACTIONS(4406), [sym_foreach] = ACTIONS(4406), [sym_foreach_reverse] = ACTIONS(4406), [sym_function] = ACTIONS(4406), [sym_goto] = ACTIONS(4406), [sym_if] = ACTIONS(4406), [sym_immutable] = ACTIONS(4406), [sym_import] = ACTIONS(4406), [sym_in] = ACTIONS(4406), [sym_inout] = ACTIONS(4406), [sym_interface] = ACTIONS(4406), [sym_invariant] = ACTIONS(4406), [sym_is] = ACTIONS(4406), [sym_mixin] = ACTIONS(4406), [sym_new] = ACTIONS(4406), [sym_nothrow] = ACTIONS(4406), [sym_out] = ACTIONS(4406), [sym_override] = ACTIONS(4406), [sym_package] = ACTIONS(4406), [sym_pragma] = ACTIONS(4406), [sym_private] = ACTIONS(4406), [sym_protected] = ACTIONS(4406), [sym_public] = ACTIONS(4406), [sym_pure] = ACTIONS(4406), [sym_ref] = ACTIONS(4406), [sym_return] = ACTIONS(4406), [sym_scope] = ACTIONS(4406), [sym_shared] = ACTIONS(4406), [sym_static] = ACTIONS(4406), [sym_struct] = ACTIONS(4406), [sym_switch] = ACTIONS(4406), [sym_synchronized] = ACTIONS(4406), [sym_template] = ACTIONS(4406), [sym_throw] = ACTIONS(4406), [sym_try] = ACTIONS(4406), [sym_typeid] = ACTIONS(4406), [sym_typeof] = ACTIONS(4406), [sym_union] = ACTIONS(4406), [sym_unittest] = ACTIONS(4406), [sym_version] = ACTIONS(4406), [sym_while] = ACTIONS(4406), [sym_with] = ACTIONS(4406), [sym_gshared] = ACTIONS(4406), [sym_traits] = ACTIONS(4406), [sym_vector] = ACTIONS(4406), [sym_void] = ACTIONS(4406), [anon_sym_BQUOTE] = ACTIONS(4408), [anon_sym_r_DQUOTE] = ACTIONS(4408), [anon_sym_x_DQUOTE] = ACTIONS(4408), [anon_sym_DQUOTE] = ACTIONS(4408), [anon_sym_i_BQUOTE] = ACTIONS(4408), [anon_sym_i_DQUOTE] = ACTIONS(4408), [anon_sym_iq_LBRACE] = ACTIONS(4408), [aux_sym_char_literal_token1] = ACTIONS(4408), [anon_sym_SQUOTE] = ACTIONS(4406), [anon_sym___DATE__] = ACTIONS(4406), [anon_sym___FILE__] = ACTIONS(4406), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4406), [anon_sym___FUNCTION__] = ACTIONS(4406), [anon_sym___LINE__] = ACTIONS(4406), [anon_sym___MODULE__] = ACTIONS(4406), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4406), [anon_sym___TIME__] = ACTIONS(4406), [anon_sym___TIMESTAMP__] = ACTIONS(4406), [anon_sym___VENDOR__] = ACTIONS(4406), [anon_sym___VERSION__] = ACTIONS(4406), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4408), [sym_float_literal] = ACTIONS(4408), [sym__string] = ACTIONS(4408), }, [1382] = { [sym_identifier] = ACTIONS(4410), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4412), [anon_sym_RBRACE] = ACTIONS(4412), [anon_sym_LBRACE] = ACTIONS(4412), [anon_sym_DOT] = ACTIONS(4412), [anon_sym_AMP] = ACTIONS(4412), [anon_sym_DASH] = ACTIONS(4410), [anon_sym_DASH_DASH] = ACTIONS(4412), [anon_sym_PLUS] = ACTIONS(4410), [anon_sym_PLUS_PLUS] = ACTIONS(4412), [anon_sym_BANG] = ACTIONS(4412), [anon_sym_LPAREN] = ACTIONS(4412), [anon_sym_RPAREN] = ACTIONS(4412), [anon_sym_LBRACK] = ACTIONS(4412), [anon_sym_SEMI] = ACTIONS(4412), [anon_sym_DOLLAR] = ACTIONS(4412), [anon_sym_STAR] = ACTIONS(4412), [anon_sym_TILDE] = ACTIONS(4412), [anon_sym_AT] = ACTIONS(4412), [sym_bool] = ACTIONS(4410), [sym_byte] = ACTIONS(4410), [sym_ubyte] = ACTIONS(4410), [sym_char] = ACTIONS(4410), [sym_short] = ACTIONS(4410), [sym_ushort] = ACTIONS(4410), [sym_int] = ACTIONS(4410), [sym_uint] = ACTIONS(4410), [sym_long] = ACTIONS(4410), [sym_ulong] = ACTIONS(4410), [sym_cent] = ACTIONS(4410), [sym_ucent] = ACTIONS(4410), [sym_wchar] = ACTIONS(4410), [sym_dchar] = ACTIONS(4410), [sym_float] = ACTIONS(4410), [sym_double] = ACTIONS(4410), [sym_real] = ACTIONS(4410), [sym_ifloat] = ACTIONS(4410), [sym_idouble] = ACTIONS(4410), [sym_ireal] = ACTIONS(4410), [sym_cfloat] = ACTIONS(4410), [sym_cdouble] = ACTIONS(4410), [sym_creal] = ACTIONS(4410), [sym_size_t] = ACTIONS(4410), [sym_ptrdiff_t] = ACTIONS(4410), [sym_string] = ACTIONS(4410), [sym_cstring] = ACTIONS(4410), [sym_dstring] = ACTIONS(4410), [sym_wstring] = ACTIONS(4410), [sym_noreturn] = ACTIONS(4410), [sym_true] = ACTIONS(4410), [sym_false] = ACTIONS(4410), [sym_null] = ACTIONS(4410), [sym_super] = ACTIONS(4410), [sym_this] = ACTIONS(4410), [sym_abstract] = ACTIONS(4410), [sym_alias] = ACTIONS(4410), [sym_align] = ACTIONS(4410), [sym_asm] = ACTIONS(4410), [sym_assert] = ACTIONS(4410), [sym_auto] = ACTIONS(4410), [sym_break] = ACTIONS(4410), [sym_case] = ACTIONS(4410), [sym_cast] = ACTIONS(4410), [sym_catch] = ACTIONS(4410), [sym_class] = ACTIONS(4410), [sym_const] = ACTIONS(4410), [sym_continue] = ACTIONS(4410), [sym_debug] = ACTIONS(4410), [sym_default] = ACTIONS(4410), [sym_delegate] = ACTIONS(4410), [sym_delete] = ACTIONS(4410), [sym_deprecated] = ACTIONS(4410), [sym_do] = ACTIONS(4410), [sym_else] = ACTIONS(4410), [sym_enum] = ACTIONS(4410), [sym_export] = ACTIONS(4410), [sym_extern] = ACTIONS(4410), [sym_final] = ACTIONS(4410), [sym_finally] = ACTIONS(4410), [sym_for] = ACTIONS(4410), [sym_foreach] = ACTIONS(4410), [sym_foreach_reverse] = ACTIONS(4410), [sym_function] = ACTIONS(4410), [sym_goto] = ACTIONS(4410), [sym_if] = ACTIONS(4410), [sym_immutable] = ACTIONS(4410), [sym_import] = ACTIONS(4410), [sym_in] = ACTIONS(4410), [sym_inout] = ACTIONS(4410), [sym_interface] = ACTIONS(4410), [sym_invariant] = ACTIONS(4410), [sym_is] = ACTIONS(4410), [sym_mixin] = ACTIONS(4410), [sym_new] = ACTIONS(4410), [sym_nothrow] = ACTIONS(4410), [sym_out] = ACTIONS(4410), [sym_override] = ACTIONS(4410), [sym_package] = ACTIONS(4410), [sym_pragma] = ACTIONS(4410), [sym_private] = ACTIONS(4410), [sym_protected] = ACTIONS(4410), [sym_public] = ACTIONS(4410), [sym_pure] = ACTIONS(4410), [sym_ref] = ACTIONS(4410), [sym_return] = ACTIONS(4410), [sym_scope] = ACTIONS(4410), [sym_shared] = ACTIONS(4410), [sym_static] = ACTIONS(4410), [sym_struct] = ACTIONS(4410), [sym_switch] = ACTIONS(4410), [sym_synchronized] = ACTIONS(4410), [sym_template] = ACTIONS(4410), [sym_throw] = ACTIONS(4410), [sym_try] = ACTIONS(4410), [sym_typeid] = ACTIONS(4410), [sym_typeof] = ACTIONS(4410), [sym_union] = ACTIONS(4410), [sym_unittest] = ACTIONS(4410), [sym_version] = ACTIONS(4410), [sym_while] = ACTIONS(4410), [sym_with] = ACTIONS(4410), [sym_gshared] = ACTIONS(4410), [sym_traits] = ACTIONS(4410), [sym_vector] = ACTIONS(4410), [sym_void] = ACTIONS(4410), [anon_sym_BQUOTE] = ACTIONS(4412), [anon_sym_r_DQUOTE] = ACTIONS(4412), [anon_sym_x_DQUOTE] = ACTIONS(4412), [anon_sym_DQUOTE] = ACTIONS(4412), [anon_sym_i_BQUOTE] = ACTIONS(4412), [anon_sym_i_DQUOTE] = ACTIONS(4412), [anon_sym_iq_LBRACE] = ACTIONS(4412), [aux_sym_char_literal_token1] = ACTIONS(4412), [anon_sym_SQUOTE] = ACTIONS(4410), [anon_sym___DATE__] = ACTIONS(4410), [anon_sym___FILE__] = ACTIONS(4410), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4410), [anon_sym___FUNCTION__] = ACTIONS(4410), [anon_sym___LINE__] = ACTIONS(4410), [anon_sym___MODULE__] = ACTIONS(4410), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4410), [anon_sym___TIME__] = ACTIONS(4410), [anon_sym___TIMESTAMP__] = ACTIONS(4410), [anon_sym___VENDOR__] = ACTIONS(4410), [anon_sym___VERSION__] = ACTIONS(4410), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4412), [sym_float_literal] = ACTIONS(4412), [sym__string] = ACTIONS(4412), }, [1383] = { [sym_identifier] = ACTIONS(4414), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4416), [anon_sym_RBRACE] = ACTIONS(4416), [anon_sym_LBRACE] = ACTIONS(4416), [anon_sym_DOT] = ACTIONS(4416), [anon_sym_AMP] = ACTIONS(4416), [anon_sym_DASH] = ACTIONS(4414), [anon_sym_DASH_DASH] = ACTIONS(4416), [anon_sym_PLUS] = ACTIONS(4414), [anon_sym_PLUS_PLUS] = ACTIONS(4416), [anon_sym_BANG] = ACTIONS(4416), [anon_sym_LPAREN] = ACTIONS(4416), [anon_sym_RPAREN] = ACTIONS(4416), [anon_sym_LBRACK] = ACTIONS(4416), [anon_sym_SEMI] = ACTIONS(4416), [anon_sym_DOLLAR] = ACTIONS(4416), [anon_sym_STAR] = ACTIONS(4416), [anon_sym_TILDE] = ACTIONS(4416), [anon_sym_AT] = ACTIONS(4416), [sym_bool] = ACTIONS(4414), [sym_byte] = ACTIONS(4414), [sym_ubyte] = ACTIONS(4414), [sym_char] = ACTIONS(4414), [sym_short] = ACTIONS(4414), [sym_ushort] = ACTIONS(4414), [sym_int] = ACTIONS(4414), [sym_uint] = ACTIONS(4414), [sym_long] = ACTIONS(4414), [sym_ulong] = ACTIONS(4414), [sym_cent] = ACTIONS(4414), [sym_ucent] = ACTIONS(4414), [sym_wchar] = ACTIONS(4414), [sym_dchar] = ACTIONS(4414), [sym_float] = ACTIONS(4414), [sym_double] = ACTIONS(4414), [sym_real] = ACTIONS(4414), [sym_ifloat] = ACTIONS(4414), [sym_idouble] = ACTIONS(4414), [sym_ireal] = ACTIONS(4414), [sym_cfloat] = ACTIONS(4414), [sym_cdouble] = ACTIONS(4414), [sym_creal] = ACTIONS(4414), [sym_size_t] = ACTIONS(4414), [sym_ptrdiff_t] = ACTIONS(4414), [sym_string] = ACTIONS(4414), [sym_cstring] = ACTIONS(4414), [sym_dstring] = ACTIONS(4414), [sym_wstring] = ACTIONS(4414), [sym_noreturn] = ACTIONS(4414), [sym_true] = ACTIONS(4414), [sym_false] = ACTIONS(4414), [sym_null] = ACTIONS(4414), [sym_super] = ACTIONS(4414), [sym_this] = ACTIONS(4414), [sym_abstract] = ACTIONS(4414), [sym_alias] = ACTIONS(4414), [sym_align] = ACTIONS(4414), [sym_asm] = ACTIONS(4414), [sym_assert] = ACTIONS(4414), [sym_auto] = ACTIONS(4414), [sym_break] = ACTIONS(4414), [sym_case] = ACTIONS(4414), [sym_cast] = ACTIONS(4414), [sym_catch] = ACTIONS(4414), [sym_class] = ACTIONS(4414), [sym_const] = ACTIONS(4414), [sym_continue] = ACTIONS(4414), [sym_debug] = ACTIONS(4414), [sym_default] = ACTIONS(4414), [sym_delegate] = ACTIONS(4414), [sym_delete] = ACTIONS(4414), [sym_deprecated] = ACTIONS(4414), [sym_do] = ACTIONS(4414), [sym_else] = ACTIONS(4414), [sym_enum] = ACTIONS(4414), [sym_export] = ACTIONS(4414), [sym_extern] = ACTIONS(4414), [sym_final] = ACTIONS(4414), [sym_finally] = ACTIONS(4414), [sym_for] = ACTIONS(4414), [sym_foreach] = ACTIONS(4414), [sym_foreach_reverse] = ACTIONS(4414), [sym_function] = ACTIONS(4414), [sym_goto] = ACTIONS(4414), [sym_if] = ACTIONS(4414), [sym_immutable] = ACTIONS(4414), [sym_import] = ACTIONS(4414), [sym_in] = ACTIONS(4414), [sym_inout] = ACTIONS(4414), [sym_interface] = ACTIONS(4414), [sym_invariant] = ACTIONS(4414), [sym_is] = ACTIONS(4414), [sym_mixin] = ACTIONS(4414), [sym_new] = ACTIONS(4414), [sym_nothrow] = ACTIONS(4414), [sym_out] = ACTIONS(4414), [sym_override] = ACTIONS(4414), [sym_package] = ACTIONS(4414), [sym_pragma] = ACTIONS(4414), [sym_private] = ACTIONS(4414), [sym_protected] = ACTIONS(4414), [sym_public] = ACTIONS(4414), [sym_pure] = ACTIONS(4414), [sym_ref] = ACTIONS(4414), [sym_return] = ACTIONS(4414), [sym_scope] = ACTIONS(4414), [sym_shared] = ACTIONS(4414), [sym_static] = ACTIONS(4414), [sym_struct] = ACTIONS(4414), [sym_switch] = ACTIONS(4414), [sym_synchronized] = ACTIONS(4414), [sym_template] = ACTIONS(4414), [sym_throw] = ACTIONS(4414), [sym_try] = ACTIONS(4414), [sym_typeid] = ACTIONS(4414), [sym_typeof] = ACTIONS(4414), [sym_union] = ACTIONS(4414), [sym_unittest] = ACTIONS(4414), [sym_version] = ACTIONS(4414), [sym_while] = ACTIONS(4414), [sym_with] = ACTIONS(4414), [sym_gshared] = ACTIONS(4414), [sym_traits] = ACTIONS(4414), [sym_vector] = ACTIONS(4414), [sym_void] = ACTIONS(4414), [anon_sym_BQUOTE] = ACTIONS(4416), [anon_sym_r_DQUOTE] = ACTIONS(4416), [anon_sym_x_DQUOTE] = ACTIONS(4416), [anon_sym_DQUOTE] = ACTIONS(4416), [anon_sym_i_BQUOTE] = ACTIONS(4416), [anon_sym_i_DQUOTE] = ACTIONS(4416), [anon_sym_iq_LBRACE] = ACTIONS(4416), [aux_sym_char_literal_token1] = ACTIONS(4416), [anon_sym_SQUOTE] = ACTIONS(4414), [anon_sym___DATE__] = ACTIONS(4414), [anon_sym___FILE__] = ACTIONS(4414), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4414), [anon_sym___FUNCTION__] = ACTIONS(4414), [anon_sym___LINE__] = ACTIONS(4414), [anon_sym___MODULE__] = ACTIONS(4414), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4414), [anon_sym___TIME__] = ACTIONS(4414), [anon_sym___TIMESTAMP__] = ACTIONS(4414), [anon_sym___VENDOR__] = ACTIONS(4414), [anon_sym___VERSION__] = ACTIONS(4414), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4416), [sym_float_literal] = ACTIONS(4416), [sym__string] = ACTIONS(4416), }, [1384] = { [sym_identifier] = ACTIONS(4418), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4420), [anon_sym_RBRACE] = ACTIONS(4420), [anon_sym_LBRACE] = ACTIONS(4420), [anon_sym_DOT] = ACTIONS(4420), [anon_sym_AMP] = ACTIONS(4420), [anon_sym_DASH] = ACTIONS(4418), [anon_sym_DASH_DASH] = ACTIONS(4420), [anon_sym_PLUS] = ACTIONS(4418), [anon_sym_PLUS_PLUS] = ACTIONS(4420), [anon_sym_BANG] = ACTIONS(4420), [anon_sym_LPAREN] = ACTIONS(4420), [anon_sym_RPAREN] = ACTIONS(4420), [anon_sym_LBRACK] = ACTIONS(4420), [anon_sym_SEMI] = ACTIONS(4420), [anon_sym_DOLLAR] = ACTIONS(4420), [anon_sym_STAR] = ACTIONS(4420), [anon_sym_TILDE] = ACTIONS(4420), [anon_sym_AT] = ACTIONS(4420), [sym_bool] = ACTIONS(4418), [sym_byte] = ACTIONS(4418), [sym_ubyte] = ACTIONS(4418), [sym_char] = ACTIONS(4418), [sym_short] = ACTIONS(4418), [sym_ushort] = ACTIONS(4418), [sym_int] = ACTIONS(4418), [sym_uint] = ACTIONS(4418), [sym_long] = ACTIONS(4418), [sym_ulong] = ACTIONS(4418), [sym_cent] = ACTIONS(4418), [sym_ucent] = ACTIONS(4418), [sym_wchar] = ACTIONS(4418), [sym_dchar] = ACTIONS(4418), [sym_float] = ACTIONS(4418), [sym_double] = ACTIONS(4418), [sym_real] = ACTIONS(4418), [sym_ifloat] = ACTIONS(4418), [sym_idouble] = ACTIONS(4418), [sym_ireal] = ACTIONS(4418), [sym_cfloat] = ACTIONS(4418), [sym_cdouble] = ACTIONS(4418), [sym_creal] = ACTIONS(4418), [sym_size_t] = ACTIONS(4418), [sym_ptrdiff_t] = ACTIONS(4418), [sym_string] = ACTIONS(4418), [sym_cstring] = ACTIONS(4418), [sym_dstring] = ACTIONS(4418), [sym_wstring] = ACTIONS(4418), [sym_noreturn] = ACTIONS(4418), [sym_true] = ACTIONS(4418), [sym_false] = ACTIONS(4418), [sym_null] = ACTIONS(4418), [sym_super] = ACTIONS(4418), [sym_this] = ACTIONS(4418), [sym_abstract] = ACTIONS(4418), [sym_alias] = ACTIONS(4418), [sym_align] = ACTIONS(4418), [sym_asm] = ACTIONS(4418), [sym_assert] = ACTIONS(4418), [sym_auto] = ACTIONS(4418), [sym_break] = ACTIONS(4418), [sym_case] = ACTIONS(4418), [sym_cast] = ACTIONS(4418), [sym_catch] = ACTIONS(4418), [sym_class] = ACTIONS(4418), [sym_const] = ACTIONS(4418), [sym_continue] = ACTIONS(4418), [sym_debug] = ACTIONS(4418), [sym_default] = ACTIONS(4418), [sym_delegate] = ACTIONS(4418), [sym_delete] = ACTIONS(4418), [sym_deprecated] = ACTIONS(4418), [sym_do] = ACTIONS(4418), [sym_else] = ACTIONS(4418), [sym_enum] = ACTIONS(4418), [sym_export] = ACTIONS(4418), [sym_extern] = ACTIONS(4418), [sym_final] = ACTIONS(4418), [sym_finally] = ACTIONS(4418), [sym_for] = ACTIONS(4418), [sym_foreach] = ACTIONS(4418), [sym_foreach_reverse] = ACTIONS(4418), [sym_function] = ACTIONS(4418), [sym_goto] = ACTIONS(4418), [sym_if] = ACTIONS(4418), [sym_immutable] = ACTIONS(4418), [sym_import] = ACTIONS(4418), [sym_in] = ACTIONS(4418), [sym_inout] = ACTIONS(4418), [sym_interface] = ACTIONS(4418), [sym_invariant] = ACTIONS(4418), [sym_is] = ACTIONS(4418), [sym_mixin] = ACTIONS(4418), [sym_new] = ACTIONS(4418), [sym_nothrow] = ACTIONS(4418), [sym_out] = ACTIONS(4418), [sym_override] = ACTIONS(4418), [sym_package] = ACTIONS(4418), [sym_pragma] = ACTIONS(4418), [sym_private] = ACTIONS(4418), [sym_protected] = ACTIONS(4418), [sym_public] = ACTIONS(4418), [sym_pure] = ACTIONS(4418), [sym_ref] = ACTIONS(4418), [sym_return] = ACTIONS(4418), [sym_scope] = ACTIONS(4418), [sym_shared] = ACTIONS(4418), [sym_static] = ACTIONS(4418), [sym_struct] = ACTIONS(4418), [sym_switch] = ACTIONS(4418), [sym_synchronized] = ACTIONS(4418), [sym_template] = ACTIONS(4418), [sym_throw] = ACTIONS(4418), [sym_try] = ACTIONS(4418), [sym_typeid] = ACTIONS(4418), [sym_typeof] = ACTIONS(4418), [sym_union] = ACTIONS(4418), [sym_unittest] = ACTIONS(4418), [sym_version] = ACTIONS(4418), [sym_while] = ACTIONS(4418), [sym_with] = ACTIONS(4418), [sym_gshared] = ACTIONS(4418), [sym_traits] = ACTIONS(4418), [sym_vector] = ACTIONS(4418), [sym_void] = ACTIONS(4418), [anon_sym_BQUOTE] = ACTIONS(4420), [anon_sym_r_DQUOTE] = ACTIONS(4420), [anon_sym_x_DQUOTE] = ACTIONS(4420), [anon_sym_DQUOTE] = ACTIONS(4420), [anon_sym_i_BQUOTE] = ACTIONS(4420), [anon_sym_i_DQUOTE] = ACTIONS(4420), [anon_sym_iq_LBRACE] = ACTIONS(4420), [aux_sym_char_literal_token1] = ACTIONS(4420), [anon_sym_SQUOTE] = ACTIONS(4418), [anon_sym___DATE__] = ACTIONS(4418), [anon_sym___FILE__] = ACTIONS(4418), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4418), [anon_sym___FUNCTION__] = ACTIONS(4418), [anon_sym___LINE__] = ACTIONS(4418), [anon_sym___MODULE__] = ACTIONS(4418), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4418), [anon_sym___TIME__] = ACTIONS(4418), [anon_sym___TIMESTAMP__] = ACTIONS(4418), [anon_sym___VENDOR__] = ACTIONS(4418), [anon_sym___VERSION__] = ACTIONS(4418), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4420), [sym_float_literal] = ACTIONS(4420), [sym__string] = ACTIONS(4420), }, [1385] = { [sym_identifier] = ACTIONS(4422), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4424), [anon_sym_RBRACE] = ACTIONS(4424), [anon_sym_LBRACE] = ACTIONS(4424), [anon_sym_DOT] = ACTIONS(4424), [anon_sym_AMP] = ACTIONS(4424), [anon_sym_DASH] = ACTIONS(4422), [anon_sym_DASH_DASH] = ACTIONS(4424), [anon_sym_PLUS] = ACTIONS(4422), [anon_sym_PLUS_PLUS] = ACTIONS(4424), [anon_sym_BANG] = ACTIONS(4424), [anon_sym_LPAREN] = ACTIONS(4424), [anon_sym_RPAREN] = ACTIONS(4424), [anon_sym_LBRACK] = ACTIONS(4424), [anon_sym_SEMI] = ACTIONS(4424), [anon_sym_DOLLAR] = ACTIONS(4424), [anon_sym_STAR] = ACTIONS(4424), [anon_sym_TILDE] = ACTIONS(4424), [anon_sym_AT] = ACTIONS(4424), [sym_bool] = ACTIONS(4422), [sym_byte] = ACTIONS(4422), [sym_ubyte] = ACTIONS(4422), [sym_char] = ACTIONS(4422), [sym_short] = ACTIONS(4422), [sym_ushort] = ACTIONS(4422), [sym_int] = ACTIONS(4422), [sym_uint] = ACTIONS(4422), [sym_long] = ACTIONS(4422), [sym_ulong] = ACTIONS(4422), [sym_cent] = ACTIONS(4422), [sym_ucent] = ACTIONS(4422), [sym_wchar] = ACTIONS(4422), [sym_dchar] = ACTIONS(4422), [sym_float] = ACTIONS(4422), [sym_double] = ACTIONS(4422), [sym_real] = ACTIONS(4422), [sym_ifloat] = ACTIONS(4422), [sym_idouble] = ACTIONS(4422), [sym_ireal] = ACTIONS(4422), [sym_cfloat] = ACTIONS(4422), [sym_cdouble] = ACTIONS(4422), [sym_creal] = ACTIONS(4422), [sym_size_t] = ACTIONS(4422), [sym_ptrdiff_t] = ACTIONS(4422), [sym_string] = ACTIONS(4422), [sym_cstring] = ACTIONS(4422), [sym_dstring] = ACTIONS(4422), [sym_wstring] = ACTIONS(4422), [sym_noreturn] = ACTIONS(4422), [sym_true] = ACTIONS(4422), [sym_false] = ACTIONS(4422), [sym_null] = ACTIONS(4422), [sym_super] = ACTIONS(4422), [sym_this] = ACTIONS(4422), [sym_abstract] = ACTIONS(4422), [sym_alias] = ACTIONS(4422), [sym_align] = ACTIONS(4422), [sym_asm] = ACTIONS(4422), [sym_assert] = ACTIONS(4422), [sym_auto] = ACTIONS(4422), [sym_break] = ACTIONS(4422), [sym_case] = ACTIONS(4422), [sym_cast] = ACTIONS(4422), [sym_catch] = ACTIONS(4422), [sym_class] = ACTIONS(4422), [sym_const] = ACTIONS(4422), [sym_continue] = ACTIONS(4422), [sym_debug] = ACTIONS(4422), [sym_default] = ACTIONS(4422), [sym_delegate] = ACTIONS(4422), [sym_delete] = ACTIONS(4422), [sym_deprecated] = ACTIONS(4422), [sym_do] = ACTIONS(4422), [sym_else] = ACTIONS(4422), [sym_enum] = ACTIONS(4422), [sym_export] = ACTIONS(4422), [sym_extern] = ACTIONS(4422), [sym_final] = ACTIONS(4422), [sym_finally] = ACTIONS(4422), [sym_for] = ACTIONS(4422), [sym_foreach] = ACTIONS(4422), [sym_foreach_reverse] = ACTIONS(4422), [sym_function] = ACTIONS(4422), [sym_goto] = ACTIONS(4422), [sym_if] = ACTIONS(4422), [sym_immutable] = ACTIONS(4422), [sym_import] = ACTIONS(4422), [sym_in] = ACTIONS(4422), [sym_inout] = ACTIONS(4422), [sym_interface] = ACTIONS(4422), [sym_invariant] = ACTIONS(4422), [sym_is] = ACTIONS(4422), [sym_mixin] = ACTIONS(4422), [sym_new] = ACTIONS(4422), [sym_nothrow] = ACTIONS(4422), [sym_out] = ACTIONS(4422), [sym_override] = ACTIONS(4422), [sym_package] = ACTIONS(4422), [sym_pragma] = ACTIONS(4422), [sym_private] = ACTIONS(4422), [sym_protected] = ACTIONS(4422), [sym_public] = ACTIONS(4422), [sym_pure] = ACTIONS(4422), [sym_ref] = ACTIONS(4422), [sym_return] = ACTIONS(4422), [sym_scope] = ACTIONS(4422), [sym_shared] = ACTIONS(4422), [sym_static] = ACTIONS(4422), [sym_struct] = ACTIONS(4422), [sym_switch] = ACTIONS(4422), [sym_synchronized] = ACTIONS(4422), [sym_template] = ACTIONS(4422), [sym_throw] = ACTIONS(4422), [sym_try] = ACTIONS(4422), [sym_typeid] = ACTIONS(4422), [sym_typeof] = ACTIONS(4422), [sym_union] = ACTIONS(4422), [sym_unittest] = ACTIONS(4422), [sym_version] = ACTIONS(4422), [sym_while] = ACTIONS(4422), [sym_with] = ACTIONS(4422), [sym_gshared] = ACTIONS(4422), [sym_traits] = ACTIONS(4422), [sym_vector] = ACTIONS(4422), [sym_void] = ACTIONS(4422), [anon_sym_BQUOTE] = ACTIONS(4424), [anon_sym_r_DQUOTE] = ACTIONS(4424), [anon_sym_x_DQUOTE] = ACTIONS(4424), [anon_sym_DQUOTE] = ACTIONS(4424), [anon_sym_i_BQUOTE] = ACTIONS(4424), [anon_sym_i_DQUOTE] = ACTIONS(4424), [anon_sym_iq_LBRACE] = ACTIONS(4424), [aux_sym_char_literal_token1] = ACTIONS(4424), [anon_sym_SQUOTE] = ACTIONS(4422), [anon_sym___DATE__] = ACTIONS(4422), [anon_sym___FILE__] = ACTIONS(4422), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4422), [anon_sym___FUNCTION__] = ACTIONS(4422), [anon_sym___LINE__] = ACTIONS(4422), [anon_sym___MODULE__] = ACTIONS(4422), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4422), [anon_sym___TIME__] = ACTIONS(4422), [anon_sym___TIMESTAMP__] = ACTIONS(4422), [anon_sym___VENDOR__] = ACTIONS(4422), [anon_sym___VERSION__] = ACTIONS(4422), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4424), [sym_float_literal] = ACTIONS(4424), [sym__string] = ACTIONS(4424), }, [1386] = { [sym_identifier] = ACTIONS(4426), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4428), [anon_sym_RBRACE] = ACTIONS(4428), [anon_sym_LBRACE] = ACTIONS(4428), [anon_sym_DOT] = ACTIONS(4428), [anon_sym_AMP] = ACTIONS(4428), [anon_sym_DASH] = ACTIONS(4426), [anon_sym_DASH_DASH] = ACTIONS(4428), [anon_sym_PLUS] = ACTIONS(4426), [anon_sym_PLUS_PLUS] = ACTIONS(4428), [anon_sym_BANG] = ACTIONS(4428), [anon_sym_LPAREN] = ACTIONS(4428), [anon_sym_RPAREN] = ACTIONS(4428), [anon_sym_LBRACK] = ACTIONS(4428), [anon_sym_SEMI] = ACTIONS(4428), [anon_sym_DOLLAR] = ACTIONS(4428), [anon_sym_STAR] = ACTIONS(4428), [anon_sym_TILDE] = ACTIONS(4428), [anon_sym_AT] = ACTIONS(4428), [sym_bool] = ACTIONS(4426), [sym_byte] = ACTIONS(4426), [sym_ubyte] = ACTIONS(4426), [sym_char] = ACTIONS(4426), [sym_short] = ACTIONS(4426), [sym_ushort] = ACTIONS(4426), [sym_int] = ACTIONS(4426), [sym_uint] = ACTIONS(4426), [sym_long] = ACTIONS(4426), [sym_ulong] = ACTIONS(4426), [sym_cent] = ACTIONS(4426), [sym_ucent] = ACTIONS(4426), [sym_wchar] = ACTIONS(4426), [sym_dchar] = ACTIONS(4426), [sym_float] = ACTIONS(4426), [sym_double] = ACTIONS(4426), [sym_real] = ACTIONS(4426), [sym_ifloat] = ACTIONS(4426), [sym_idouble] = ACTIONS(4426), [sym_ireal] = ACTIONS(4426), [sym_cfloat] = ACTIONS(4426), [sym_cdouble] = ACTIONS(4426), [sym_creal] = ACTIONS(4426), [sym_size_t] = ACTIONS(4426), [sym_ptrdiff_t] = ACTIONS(4426), [sym_string] = ACTIONS(4426), [sym_cstring] = ACTIONS(4426), [sym_dstring] = ACTIONS(4426), [sym_wstring] = ACTIONS(4426), [sym_noreturn] = ACTIONS(4426), [sym_true] = ACTIONS(4426), [sym_false] = ACTIONS(4426), [sym_null] = ACTIONS(4426), [sym_super] = ACTIONS(4426), [sym_this] = ACTIONS(4426), [sym_abstract] = ACTIONS(4426), [sym_alias] = ACTIONS(4426), [sym_align] = ACTIONS(4426), [sym_asm] = ACTIONS(4426), [sym_assert] = ACTIONS(4426), [sym_auto] = ACTIONS(4426), [sym_break] = ACTIONS(4426), [sym_case] = ACTIONS(4426), [sym_cast] = ACTIONS(4426), [sym_catch] = ACTIONS(4426), [sym_class] = ACTIONS(4426), [sym_const] = ACTIONS(4426), [sym_continue] = ACTIONS(4426), [sym_debug] = ACTIONS(4426), [sym_default] = ACTIONS(4426), [sym_delegate] = ACTIONS(4426), [sym_delete] = ACTIONS(4426), [sym_deprecated] = ACTIONS(4426), [sym_do] = ACTIONS(4426), [sym_else] = ACTIONS(4426), [sym_enum] = ACTIONS(4426), [sym_export] = ACTIONS(4426), [sym_extern] = ACTIONS(4426), [sym_final] = ACTIONS(4426), [sym_finally] = ACTIONS(4426), [sym_for] = ACTIONS(4426), [sym_foreach] = ACTIONS(4426), [sym_foreach_reverse] = ACTIONS(4426), [sym_function] = ACTIONS(4426), [sym_goto] = ACTIONS(4426), [sym_if] = ACTIONS(4426), [sym_immutable] = ACTIONS(4426), [sym_import] = ACTIONS(4426), [sym_in] = ACTIONS(4426), [sym_inout] = ACTIONS(4426), [sym_interface] = ACTIONS(4426), [sym_invariant] = ACTIONS(4426), [sym_is] = ACTIONS(4426), [sym_mixin] = ACTIONS(4426), [sym_new] = ACTIONS(4426), [sym_nothrow] = ACTIONS(4426), [sym_out] = ACTIONS(4426), [sym_override] = ACTIONS(4426), [sym_package] = ACTIONS(4426), [sym_pragma] = ACTIONS(4426), [sym_private] = ACTIONS(4426), [sym_protected] = ACTIONS(4426), [sym_public] = ACTIONS(4426), [sym_pure] = ACTIONS(4426), [sym_ref] = ACTIONS(4426), [sym_return] = ACTIONS(4426), [sym_scope] = ACTIONS(4426), [sym_shared] = ACTIONS(4426), [sym_static] = ACTIONS(4426), [sym_struct] = ACTIONS(4426), [sym_switch] = ACTIONS(4426), [sym_synchronized] = ACTIONS(4426), [sym_template] = ACTIONS(4426), [sym_throw] = ACTIONS(4426), [sym_try] = ACTIONS(4426), [sym_typeid] = ACTIONS(4426), [sym_typeof] = ACTIONS(4426), [sym_union] = ACTIONS(4426), [sym_unittest] = ACTIONS(4426), [sym_version] = ACTIONS(4426), [sym_while] = ACTIONS(4426), [sym_with] = ACTIONS(4426), [sym_gshared] = ACTIONS(4426), [sym_traits] = ACTIONS(4426), [sym_vector] = ACTIONS(4426), [sym_void] = ACTIONS(4426), [anon_sym_BQUOTE] = ACTIONS(4428), [anon_sym_r_DQUOTE] = ACTIONS(4428), [anon_sym_x_DQUOTE] = ACTIONS(4428), [anon_sym_DQUOTE] = ACTIONS(4428), [anon_sym_i_BQUOTE] = ACTIONS(4428), [anon_sym_i_DQUOTE] = ACTIONS(4428), [anon_sym_iq_LBRACE] = ACTIONS(4428), [aux_sym_char_literal_token1] = ACTIONS(4428), [anon_sym_SQUOTE] = ACTIONS(4426), [anon_sym___DATE__] = ACTIONS(4426), [anon_sym___FILE__] = ACTIONS(4426), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4426), [anon_sym___FUNCTION__] = ACTIONS(4426), [anon_sym___LINE__] = ACTIONS(4426), [anon_sym___MODULE__] = ACTIONS(4426), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4426), [anon_sym___TIME__] = ACTIONS(4426), [anon_sym___TIMESTAMP__] = ACTIONS(4426), [anon_sym___VENDOR__] = ACTIONS(4426), [anon_sym___VERSION__] = ACTIONS(4426), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4428), [sym_float_literal] = ACTIONS(4428), [sym__string] = ACTIONS(4428), }, [1387] = { [sym_identifier] = ACTIONS(4430), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4432), [anon_sym_RBRACE] = ACTIONS(4432), [anon_sym_LBRACE] = ACTIONS(4432), [anon_sym_DOT] = ACTIONS(4432), [anon_sym_AMP] = ACTIONS(4432), [anon_sym_DASH] = ACTIONS(4430), [anon_sym_DASH_DASH] = ACTIONS(4432), [anon_sym_PLUS] = ACTIONS(4430), [anon_sym_PLUS_PLUS] = ACTIONS(4432), [anon_sym_BANG] = ACTIONS(4432), [anon_sym_LPAREN] = ACTIONS(4432), [anon_sym_RPAREN] = ACTIONS(4432), [anon_sym_LBRACK] = ACTIONS(4432), [anon_sym_SEMI] = ACTIONS(4432), [anon_sym_DOLLAR] = ACTIONS(4432), [anon_sym_STAR] = ACTIONS(4432), [anon_sym_TILDE] = ACTIONS(4432), [anon_sym_AT] = ACTIONS(4432), [sym_bool] = ACTIONS(4430), [sym_byte] = ACTIONS(4430), [sym_ubyte] = ACTIONS(4430), [sym_char] = ACTIONS(4430), [sym_short] = ACTIONS(4430), [sym_ushort] = ACTIONS(4430), [sym_int] = ACTIONS(4430), [sym_uint] = ACTIONS(4430), [sym_long] = ACTIONS(4430), [sym_ulong] = ACTIONS(4430), [sym_cent] = ACTIONS(4430), [sym_ucent] = ACTIONS(4430), [sym_wchar] = ACTIONS(4430), [sym_dchar] = ACTIONS(4430), [sym_float] = ACTIONS(4430), [sym_double] = ACTIONS(4430), [sym_real] = ACTIONS(4430), [sym_ifloat] = ACTIONS(4430), [sym_idouble] = ACTIONS(4430), [sym_ireal] = ACTIONS(4430), [sym_cfloat] = ACTIONS(4430), [sym_cdouble] = ACTIONS(4430), [sym_creal] = ACTIONS(4430), [sym_size_t] = ACTIONS(4430), [sym_ptrdiff_t] = ACTIONS(4430), [sym_string] = ACTIONS(4430), [sym_cstring] = ACTIONS(4430), [sym_dstring] = ACTIONS(4430), [sym_wstring] = ACTIONS(4430), [sym_noreturn] = ACTIONS(4430), [sym_true] = ACTIONS(4430), [sym_false] = ACTIONS(4430), [sym_null] = ACTIONS(4430), [sym_super] = ACTIONS(4430), [sym_this] = ACTIONS(4430), [sym_abstract] = ACTIONS(4430), [sym_alias] = ACTIONS(4430), [sym_align] = ACTIONS(4430), [sym_asm] = ACTIONS(4430), [sym_assert] = ACTIONS(4430), [sym_auto] = ACTIONS(4430), [sym_break] = ACTIONS(4430), [sym_case] = ACTIONS(4430), [sym_cast] = ACTIONS(4430), [sym_catch] = ACTIONS(4430), [sym_class] = ACTIONS(4430), [sym_const] = ACTIONS(4430), [sym_continue] = ACTIONS(4430), [sym_debug] = ACTIONS(4430), [sym_default] = ACTIONS(4430), [sym_delegate] = ACTIONS(4430), [sym_delete] = ACTIONS(4430), [sym_deprecated] = ACTIONS(4430), [sym_do] = ACTIONS(4430), [sym_else] = ACTIONS(4430), [sym_enum] = ACTIONS(4430), [sym_export] = ACTIONS(4430), [sym_extern] = ACTIONS(4430), [sym_final] = ACTIONS(4430), [sym_finally] = ACTIONS(4430), [sym_for] = ACTIONS(4430), [sym_foreach] = ACTIONS(4430), [sym_foreach_reverse] = ACTIONS(4430), [sym_function] = ACTIONS(4430), [sym_goto] = ACTIONS(4430), [sym_if] = ACTIONS(4430), [sym_immutable] = ACTIONS(4430), [sym_import] = ACTIONS(4430), [sym_in] = ACTIONS(4430), [sym_inout] = ACTIONS(4430), [sym_interface] = ACTIONS(4430), [sym_invariant] = ACTIONS(4430), [sym_is] = ACTIONS(4430), [sym_mixin] = ACTIONS(4430), [sym_new] = ACTIONS(4430), [sym_nothrow] = ACTIONS(4430), [sym_out] = ACTIONS(4430), [sym_override] = ACTIONS(4430), [sym_package] = ACTIONS(4430), [sym_pragma] = ACTIONS(4430), [sym_private] = ACTIONS(4430), [sym_protected] = ACTIONS(4430), [sym_public] = ACTIONS(4430), [sym_pure] = ACTIONS(4430), [sym_ref] = ACTIONS(4430), [sym_return] = ACTIONS(4430), [sym_scope] = ACTIONS(4430), [sym_shared] = ACTIONS(4430), [sym_static] = ACTIONS(4430), [sym_struct] = ACTIONS(4430), [sym_switch] = ACTIONS(4430), [sym_synchronized] = ACTIONS(4430), [sym_template] = ACTIONS(4430), [sym_throw] = ACTIONS(4430), [sym_try] = ACTIONS(4430), [sym_typeid] = ACTIONS(4430), [sym_typeof] = ACTIONS(4430), [sym_union] = ACTIONS(4430), [sym_unittest] = ACTIONS(4430), [sym_version] = ACTIONS(4430), [sym_while] = ACTIONS(4430), [sym_with] = ACTIONS(4430), [sym_gshared] = ACTIONS(4430), [sym_traits] = ACTIONS(4430), [sym_vector] = ACTIONS(4430), [sym_void] = ACTIONS(4430), [anon_sym_BQUOTE] = ACTIONS(4432), [anon_sym_r_DQUOTE] = ACTIONS(4432), [anon_sym_x_DQUOTE] = ACTIONS(4432), [anon_sym_DQUOTE] = ACTIONS(4432), [anon_sym_i_BQUOTE] = ACTIONS(4432), [anon_sym_i_DQUOTE] = ACTIONS(4432), [anon_sym_iq_LBRACE] = ACTIONS(4432), [aux_sym_char_literal_token1] = ACTIONS(4432), [anon_sym_SQUOTE] = ACTIONS(4430), [anon_sym___DATE__] = ACTIONS(4430), [anon_sym___FILE__] = ACTIONS(4430), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4430), [anon_sym___FUNCTION__] = ACTIONS(4430), [anon_sym___LINE__] = ACTIONS(4430), [anon_sym___MODULE__] = ACTIONS(4430), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4430), [anon_sym___TIME__] = ACTIONS(4430), [anon_sym___TIMESTAMP__] = ACTIONS(4430), [anon_sym___VENDOR__] = ACTIONS(4430), [anon_sym___VERSION__] = ACTIONS(4430), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4432), [sym_float_literal] = ACTIONS(4432), [sym__string] = ACTIONS(4432), }, [1388] = { [sym_identifier] = ACTIONS(4434), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4436), [anon_sym_RBRACE] = ACTIONS(4436), [anon_sym_LBRACE] = ACTIONS(4436), [anon_sym_DOT] = ACTIONS(4436), [anon_sym_AMP] = ACTIONS(4436), [anon_sym_DASH] = ACTIONS(4434), [anon_sym_DASH_DASH] = ACTIONS(4436), [anon_sym_PLUS] = ACTIONS(4434), [anon_sym_PLUS_PLUS] = ACTIONS(4436), [anon_sym_BANG] = ACTIONS(4436), [anon_sym_LPAREN] = ACTIONS(4436), [anon_sym_RPAREN] = ACTIONS(4436), [anon_sym_LBRACK] = ACTIONS(4436), [anon_sym_SEMI] = ACTIONS(4436), [anon_sym_DOLLAR] = ACTIONS(4436), [anon_sym_STAR] = ACTIONS(4436), [anon_sym_TILDE] = ACTIONS(4436), [anon_sym_AT] = ACTIONS(4436), [sym_bool] = ACTIONS(4434), [sym_byte] = ACTIONS(4434), [sym_ubyte] = ACTIONS(4434), [sym_char] = ACTIONS(4434), [sym_short] = ACTIONS(4434), [sym_ushort] = ACTIONS(4434), [sym_int] = ACTIONS(4434), [sym_uint] = ACTIONS(4434), [sym_long] = ACTIONS(4434), [sym_ulong] = ACTIONS(4434), [sym_cent] = ACTIONS(4434), [sym_ucent] = ACTIONS(4434), [sym_wchar] = ACTIONS(4434), [sym_dchar] = ACTIONS(4434), [sym_float] = ACTIONS(4434), [sym_double] = ACTIONS(4434), [sym_real] = ACTIONS(4434), [sym_ifloat] = ACTIONS(4434), [sym_idouble] = ACTIONS(4434), [sym_ireal] = ACTIONS(4434), [sym_cfloat] = ACTIONS(4434), [sym_cdouble] = ACTIONS(4434), [sym_creal] = ACTIONS(4434), [sym_size_t] = ACTIONS(4434), [sym_ptrdiff_t] = ACTIONS(4434), [sym_string] = ACTIONS(4434), [sym_cstring] = ACTIONS(4434), [sym_dstring] = ACTIONS(4434), [sym_wstring] = ACTIONS(4434), [sym_noreturn] = ACTIONS(4434), [sym_true] = ACTIONS(4434), [sym_false] = ACTIONS(4434), [sym_null] = ACTIONS(4434), [sym_super] = ACTIONS(4434), [sym_this] = ACTIONS(4434), [sym_abstract] = ACTIONS(4434), [sym_alias] = ACTIONS(4434), [sym_align] = ACTIONS(4434), [sym_asm] = ACTIONS(4434), [sym_assert] = ACTIONS(4434), [sym_auto] = ACTIONS(4434), [sym_break] = ACTIONS(4434), [sym_case] = ACTIONS(4434), [sym_cast] = ACTIONS(4434), [sym_catch] = ACTIONS(4434), [sym_class] = ACTIONS(4434), [sym_const] = ACTIONS(4434), [sym_continue] = ACTIONS(4434), [sym_debug] = ACTIONS(4434), [sym_default] = ACTIONS(4434), [sym_delegate] = ACTIONS(4434), [sym_delete] = ACTIONS(4434), [sym_deprecated] = ACTIONS(4434), [sym_do] = ACTIONS(4434), [sym_else] = ACTIONS(4434), [sym_enum] = ACTIONS(4434), [sym_export] = ACTIONS(4434), [sym_extern] = ACTIONS(4434), [sym_final] = ACTIONS(4434), [sym_finally] = ACTIONS(4434), [sym_for] = ACTIONS(4434), [sym_foreach] = ACTIONS(4434), [sym_foreach_reverse] = ACTIONS(4434), [sym_function] = ACTIONS(4434), [sym_goto] = ACTIONS(4434), [sym_if] = ACTIONS(4434), [sym_immutable] = ACTIONS(4434), [sym_import] = ACTIONS(4434), [sym_in] = ACTIONS(4434), [sym_inout] = ACTIONS(4434), [sym_interface] = ACTIONS(4434), [sym_invariant] = ACTIONS(4434), [sym_is] = ACTIONS(4434), [sym_mixin] = ACTIONS(4434), [sym_new] = ACTIONS(4434), [sym_nothrow] = ACTIONS(4434), [sym_out] = ACTIONS(4434), [sym_override] = ACTIONS(4434), [sym_package] = ACTIONS(4434), [sym_pragma] = ACTIONS(4434), [sym_private] = ACTIONS(4434), [sym_protected] = ACTIONS(4434), [sym_public] = ACTIONS(4434), [sym_pure] = ACTIONS(4434), [sym_ref] = ACTIONS(4434), [sym_return] = ACTIONS(4434), [sym_scope] = ACTIONS(4434), [sym_shared] = ACTIONS(4434), [sym_static] = ACTIONS(4434), [sym_struct] = ACTIONS(4434), [sym_switch] = ACTIONS(4434), [sym_synchronized] = ACTIONS(4434), [sym_template] = ACTIONS(4434), [sym_throw] = ACTIONS(4434), [sym_try] = ACTIONS(4434), [sym_typeid] = ACTIONS(4434), [sym_typeof] = ACTIONS(4434), [sym_union] = ACTIONS(4434), [sym_unittest] = ACTIONS(4434), [sym_version] = ACTIONS(4434), [sym_while] = ACTIONS(4434), [sym_with] = ACTIONS(4434), [sym_gshared] = ACTIONS(4434), [sym_traits] = ACTIONS(4434), [sym_vector] = ACTIONS(4434), [sym_void] = ACTIONS(4434), [anon_sym_BQUOTE] = ACTIONS(4436), [anon_sym_r_DQUOTE] = ACTIONS(4436), [anon_sym_x_DQUOTE] = ACTIONS(4436), [anon_sym_DQUOTE] = ACTIONS(4436), [anon_sym_i_BQUOTE] = ACTIONS(4436), [anon_sym_i_DQUOTE] = ACTIONS(4436), [anon_sym_iq_LBRACE] = ACTIONS(4436), [aux_sym_char_literal_token1] = ACTIONS(4436), [anon_sym_SQUOTE] = ACTIONS(4434), [anon_sym___DATE__] = ACTIONS(4434), [anon_sym___FILE__] = ACTIONS(4434), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4434), [anon_sym___FUNCTION__] = ACTIONS(4434), [anon_sym___LINE__] = ACTIONS(4434), [anon_sym___MODULE__] = ACTIONS(4434), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4434), [anon_sym___TIME__] = ACTIONS(4434), [anon_sym___TIMESTAMP__] = ACTIONS(4434), [anon_sym___VENDOR__] = ACTIONS(4434), [anon_sym___VERSION__] = ACTIONS(4434), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4436), [sym_float_literal] = ACTIONS(4436), [sym__string] = ACTIONS(4436), }, [1389] = { [sym_identifier] = ACTIONS(4438), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4440), [anon_sym_RBRACE] = ACTIONS(4440), [anon_sym_LBRACE] = ACTIONS(4440), [anon_sym_DOT] = ACTIONS(4440), [anon_sym_AMP] = ACTIONS(4440), [anon_sym_DASH] = ACTIONS(4438), [anon_sym_DASH_DASH] = ACTIONS(4440), [anon_sym_PLUS] = ACTIONS(4438), [anon_sym_PLUS_PLUS] = ACTIONS(4440), [anon_sym_BANG] = ACTIONS(4440), [anon_sym_LPAREN] = ACTIONS(4440), [anon_sym_RPAREN] = ACTIONS(4440), [anon_sym_LBRACK] = ACTIONS(4440), [anon_sym_SEMI] = ACTIONS(4440), [anon_sym_DOLLAR] = ACTIONS(4440), [anon_sym_STAR] = ACTIONS(4440), [anon_sym_TILDE] = ACTIONS(4440), [anon_sym_AT] = ACTIONS(4440), [sym_bool] = ACTIONS(4438), [sym_byte] = ACTIONS(4438), [sym_ubyte] = ACTIONS(4438), [sym_char] = ACTIONS(4438), [sym_short] = ACTIONS(4438), [sym_ushort] = ACTIONS(4438), [sym_int] = ACTIONS(4438), [sym_uint] = ACTIONS(4438), [sym_long] = ACTIONS(4438), [sym_ulong] = ACTIONS(4438), [sym_cent] = ACTIONS(4438), [sym_ucent] = ACTIONS(4438), [sym_wchar] = ACTIONS(4438), [sym_dchar] = ACTIONS(4438), [sym_float] = ACTIONS(4438), [sym_double] = ACTIONS(4438), [sym_real] = ACTIONS(4438), [sym_ifloat] = ACTIONS(4438), [sym_idouble] = ACTIONS(4438), [sym_ireal] = ACTIONS(4438), [sym_cfloat] = ACTIONS(4438), [sym_cdouble] = ACTIONS(4438), [sym_creal] = ACTIONS(4438), [sym_size_t] = ACTIONS(4438), [sym_ptrdiff_t] = ACTIONS(4438), [sym_string] = ACTIONS(4438), [sym_cstring] = ACTIONS(4438), [sym_dstring] = ACTIONS(4438), [sym_wstring] = ACTIONS(4438), [sym_noreturn] = ACTIONS(4438), [sym_true] = ACTIONS(4438), [sym_false] = ACTIONS(4438), [sym_null] = ACTIONS(4438), [sym_super] = ACTIONS(4438), [sym_this] = ACTIONS(4438), [sym_abstract] = ACTIONS(4438), [sym_alias] = ACTIONS(4438), [sym_align] = ACTIONS(4438), [sym_asm] = ACTIONS(4438), [sym_assert] = ACTIONS(4438), [sym_auto] = ACTIONS(4438), [sym_break] = ACTIONS(4438), [sym_case] = ACTIONS(4438), [sym_cast] = ACTIONS(4438), [sym_catch] = ACTIONS(4438), [sym_class] = ACTIONS(4438), [sym_const] = ACTIONS(4438), [sym_continue] = ACTIONS(4438), [sym_debug] = ACTIONS(4438), [sym_default] = ACTIONS(4438), [sym_delegate] = ACTIONS(4438), [sym_delete] = ACTIONS(4438), [sym_deprecated] = ACTIONS(4438), [sym_do] = ACTIONS(4438), [sym_else] = ACTIONS(4438), [sym_enum] = ACTIONS(4438), [sym_export] = ACTIONS(4438), [sym_extern] = ACTIONS(4438), [sym_final] = ACTIONS(4438), [sym_finally] = ACTIONS(4438), [sym_for] = ACTIONS(4438), [sym_foreach] = ACTIONS(4438), [sym_foreach_reverse] = ACTIONS(4438), [sym_function] = ACTIONS(4438), [sym_goto] = ACTIONS(4438), [sym_if] = ACTIONS(4438), [sym_immutable] = ACTIONS(4438), [sym_import] = ACTIONS(4438), [sym_in] = ACTIONS(4438), [sym_inout] = ACTIONS(4438), [sym_interface] = ACTIONS(4438), [sym_invariant] = ACTIONS(4438), [sym_is] = ACTIONS(4438), [sym_mixin] = ACTIONS(4438), [sym_new] = ACTIONS(4438), [sym_nothrow] = ACTIONS(4438), [sym_out] = ACTIONS(4438), [sym_override] = ACTIONS(4438), [sym_package] = ACTIONS(4438), [sym_pragma] = ACTIONS(4438), [sym_private] = ACTIONS(4438), [sym_protected] = ACTIONS(4438), [sym_public] = ACTIONS(4438), [sym_pure] = ACTIONS(4438), [sym_ref] = ACTIONS(4438), [sym_return] = ACTIONS(4438), [sym_scope] = ACTIONS(4438), [sym_shared] = ACTIONS(4438), [sym_static] = ACTIONS(4438), [sym_struct] = ACTIONS(4438), [sym_switch] = ACTIONS(4438), [sym_synchronized] = ACTIONS(4438), [sym_template] = ACTIONS(4438), [sym_throw] = ACTIONS(4438), [sym_try] = ACTIONS(4438), [sym_typeid] = ACTIONS(4438), [sym_typeof] = ACTIONS(4438), [sym_union] = ACTIONS(4438), [sym_unittest] = ACTIONS(4438), [sym_version] = ACTIONS(4438), [sym_while] = ACTIONS(4438), [sym_with] = ACTIONS(4438), [sym_gshared] = ACTIONS(4438), [sym_traits] = ACTIONS(4438), [sym_vector] = ACTIONS(4438), [sym_void] = ACTIONS(4438), [anon_sym_BQUOTE] = ACTIONS(4440), [anon_sym_r_DQUOTE] = ACTIONS(4440), [anon_sym_x_DQUOTE] = ACTIONS(4440), [anon_sym_DQUOTE] = ACTIONS(4440), [anon_sym_i_BQUOTE] = ACTIONS(4440), [anon_sym_i_DQUOTE] = ACTIONS(4440), [anon_sym_iq_LBRACE] = ACTIONS(4440), [aux_sym_char_literal_token1] = ACTIONS(4440), [anon_sym_SQUOTE] = ACTIONS(4438), [anon_sym___DATE__] = ACTIONS(4438), [anon_sym___FILE__] = ACTIONS(4438), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4438), [anon_sym___FUNCTION__] = ACTIONS(4438), [anon_sym___LINE__] = ACTIONS(4438), [anon_sym___MODULE__] = ACTIONS(4438), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4438), [anon_sym___TIME__] = ACTIONS(4438), [anon_sym___TIMESTAMP__] = ACTIONS(4438), [anon_sym___VENDOR__] = ACTIONS(4438), [anon_sym___VERSION__] = ACTIONS(4438), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4440), [sym_float_literal] = ACTIONS(4440), [sym__string] = ACTIONS(4440), }, [1390] = { [sym_identifier] = ACTIONS(4442), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4444), [anon_sym_RBRACE] = ACTIONS(4444), [anon_sym_LBRACE] = ACTIONS(4444), [anon_sym_DOT] = ACTIONS(4444), [anon_sym_AMP] = ACTIONS(4444), [anon_sym_DASH] = ACTIONS(4442), [anon_sym_DASH_DASH] = ACTIONS(4444), [anon_sym_PLUS] = ACTIONS(4442), [anon_sym_PLUS_PLUS] = ACTIONS(4444), [anon_sym_BANG] = ACTIONS(4444), [anon_sym_LPAREN] = ACTIONS(4444), [anon_sym_RPAREN] = ACTIONS(4444), [anon_sym_LBRACK] = ACTIONS(4444), [anon_sym_SEMI] = ACTIONS(4444), [anon_sym_DOLLAR] = ACTIONS(4444), [anon_sym_STAR] = ACTIONS(4444), [anon_sym_TILDE] = ACTIONS(4444), [anon_sym_AT] = ACTIONS(4444), [sym_bool] = ACTIONS(4442), [sym_byte] = ACTIONS(4442), [sym_ubyte] = ACTIONS(4442), [sym_char] = ACTIONS(4442), [sym_short] = ACTIONS(4442), [sym_ushort] = ACTIONS(4442), [sym_int] = ACTIONS(4442), [sym_uint] = ACTIONS(4442), [sym_long] = ACTIONS(4442), [sym_ulong] = ACTIONS(4442), [sym_cent] = ACTIONS(4442), [sym_ucent] = ACTIONS(4442), [sym_wchar] = ACTIONS(4442), [sym_dchar] = ACTIONS(4442), [sym_float] = ACTIONS(4442), [sym_double] = ACTIONS(4442), [sym_real] = ACTIONS(4442), [sym_ifloat] = ACTIONS(4442), [sym_idouble] = ACTIONS(4442), [sym_ireal] = ACTIONS(4442), [sym_cfloat] = ACTIONS(4442), [sym_cdouble] = ACTIONS(4442), [sym_creal] = ACTIONS(4442), [sym_size_t] = ACTIONS(4442), [sym_ptrdiff_t] = ACTIONS(4442), [sym_string] = ACTIONS(4442), [sym_cstring] = ACTIONS(4442), [sym_dstring] = ACTIONS(4442), [sym_wstring] = ACTIONS(4442), [sym_noreturn] = ACTIONS(4442), [sym_true] = ACTIONS(4442), [sym_false] = ACTIONS(4442), [sym_null] = ACTIONS(4442), [sym_super] = ACTIONS(4442), [sym_this] = ACTIONS(4442), [sym_abstract] = ACTIONS(4442), [sym_alias] = ACTIONS(4442), [sym_align] = ACTIONS(4442), [sym_asm] = ACTIONS(4442), [sym_assert] = ACTIONS(4442), [sym_auto] = ACTIONS(4442), [sym_break] = ACTIONS(4442), [sym_case] = ACTIONS(4442), [sym_cast] = ACTIONS(4442), [sym_catch] = ACTIONS(4442), [sym_class] = ACTIONS(4442), [sym_const] = ACTIONS(4442), [sym_continue] = ACTIONS(4442), [sym_debug] = ACTIONS(4442), [sym_default] = ACTIONS(4442), [sym_delegate] = ACTIONS(4442), [sym_delete] = ACTIONS(4442), [sym_deprecated] = ACTIONS(4442), [sym_do] = ACTIONS(4442), [sym_else] = ACTIONS(4442), [sym_enum] = ACTIONS(4442), [sym_export] = ACTIONS(4442), [sym_extern] = ACTIONS(4442), [sym_final] = ACTIONS(4442), [sym_finally] = ACTIONS(4442), [sym_for] = ACTIONS(4442), [sym_foreach] = ACTIONS(4442), [sym_foreach_reverse] = ACTIONS(4442), [sym_function] = ACTIONS(4442), [sym_goto] = ACTIONS(4442), [sym_if] = ACTIONS(4442), [sym_immutable] = ACTIONS(4442), [sym_import] = ACTIONS(4442), [sym_in] = ACTIONS(4442), [sym_inout] = ACTIONS(4442), [sym_interface] = ACTIONS(4442), [sym_invariant] = ACTIONS(4442), [sym_is] = ACTIONS(4442), [sym_mixin] = ACTIONS(4442), [sym_new] = ACTIONS(4442), [sym_nothrow] = ACTIONS(4442), [sym_out] = ACTIONS(4442), [sym_override] = ACTIONS(4442), [sym_package] = ACTIONS(4442), [sym_pragma] = ACTIONS(4442), [sym_private] = ACTIONS(4442), [sym_protected] = ACTIONS(4442), [sym_public] = ACTIONS(4442), [sym_pure] = ACTIONS(4442), [sym_ref] = ACTIONS(4442), [sym_return] = ACTIONS(4442), [sym_scope] = ACTIONS(4442), [sym_shared] = ACTIONS(4442), [sym_static] = ACTIONS(4442), [sym_struct] = ACTIONS(4442), [sym_switch] = ACTIONS(4442), [sym_synchronized] = ACTIONS(4442), [sym_template] = ACTIONS(4442), [sym_throw] = ACTIONS(4442), [sym_try] = ACTIONS(4442), [sym_typeid] = ACTIONS(4442), [sym_typeof] = ACTIONS(4442), [sym_union] = ACTIONS(4442), [sym_unittest] = ACTIONS(4442), [sym_version] = ACTIONS(4442), [sym_while] = ACTIONS(4442), [sym_with] = ACTIONS(4442), [sym_gshared] = ACTIONS(4442), [sym_traits] = ACTIONS(4442), [sym_vector] = ACTIONS(4442), [sym_void] = ACTIONS(4442), [anon_sym_BQUOTE] = ACTIONS(4444), [anon_sym_r_DQUOTE] = ACTIONS(4444), [anon_sym_x_DQUOTE] = ACTIONS(4444), [anon_sym_DQUOTE] = ACTIONS(4444), [anon_sym_i_BQUOTE] = ACTIONS(4444), [anon_sym_i_DQUOTE] = ACTIONS(4444), [anon_sym_iq_LBRACE] = ACTIONS(4444), [aux_sym_char_literal_token1] = ACTIONS(4444), [anon_sym_SQUOTE] = ACTIONS(4442), [anon_sym___DATE__] = ACTIONS(4442), [anon_sym___FILE__] = ACTIONS(4442), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4442), [anon_sym___FUNCTION__] = ACTIONS(4442), [anon_sym___LINE__] = ACTIONS(4442), [anon_sym___MODULE__] = ACTIONS(4442), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4442), [anon_sym___TIME__] = ACTIONS(4442), [anon_sym___TIMESTAMP__] = ACTIONS(4442), [anon_sym___VENDOR__] = ACTIONS(4442), [anon_sym___VERSION__] = ACTIONS(4442), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4444), [sym_float_literal] = ACTIONS(4444), [sym__string] = ACTIONS(4444), }, [1391] = { [sym_identifier] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4448), [anon_sym_RBRACE] = ACTIONS(4448), [anon_sym_LBRACE] = ACTIONS(4448), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_AMP] = ACTIONS(4448), [anon_sym_DASH] = ACTIONS(4446), [anon_sym_DASH_DASH] = ACTIONS(4448), [anon_sym_PLUS] = ACTIONS(4446), [anon_sym_PLUS_PLUS] = ACTIONS(4448), [anon_sym_BANG] = ACTIONS(4448), [anon_sym_LPAREN] = ACTIONS(4448), [anon_sym_RPAREN] = ACTIONS(4448), [anon_sym_LBRACK] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_DOLLAR] = ACTIONS(4448), [anon_sym_STAR] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [anon_sym_AT] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_true] = ACTIONS(4446), [sym_false] = ACTIONS(4446), [sym_null] = ACTIONS(4446), [sym_super] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_abstract] = ACTIONS(4446), [sym_alias] = ACTIONS(4446), [sym_align] = ACTIONS(4446), [sym_asm] = ACTIONS(4446), [sym_assert] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_break] = ACTIONS(4446), [sym_case] = ACTIONS(4446), [sym_cast] = ACTIONS(4446), [sym_catch] = ACTIONS(4446), [sym_class] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_continue] = ACTIONS(4446), [sym_debug] = ACTIONS(4446), [sym_default] = ACTIONS(4446), [sym_delegate] = ACTIONS(4446), [sym_delete] = ACTIONS(4446), [sym_deprecated] = ACTIONS(4446), [sym_do] = ACTIONS(4446), [sym_else] = ACTIONS(4450), [sym_enum] = ACTIONS(4446), [sym_export] = ACTIONS(4446), [sym_extern] = ACTIONS(4446), [sym_final] = ACTIONS(4446), [sym_finally] = ACTIONS(4446), [sym_for] = ACTIONS(4446), [sym_foreach] = ACTIONS(4446), [sym_foreach_reverse] = ACTIONS(4446), [sym_function] = ACTIONS(4446), [sym_goto] = ACTIONS(4446), [sym_if] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_in] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_interface] = ACTIONS(4446), [sym_invariant] = ACTIONS(4446), [sym_is] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_new] = ACTIONS(4446), [sym_nothrow] = ACTIONS(4446), [sym_out] = ACTIONS(4446), [sym_override] = ACTIONS(4446), [sym_package] = ACTIONS(4446), [sym_pragma] = ACTIONS(4446), [sym_private] = ACTIONS(4446), [sym_protected] = ACTIONS(4446), [sym_public] = ACTIONS(4446), [sym_pure] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_return] = ACTIONS(4446), [sym_scope] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_static] = ACTIONS(4446), [sym_struct] = ACTIONS(4446), [sym_switch] = ACTIONS(4446), [sym_synchronized] = ACTIONS(4446), [sym_template] = ACTIONS(4446), [sym_throw] = ACTIONS(4446), [sym_try] = ACTIONS(4446), [sym_typeid] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_union] = ACTIONS(4446), [sym_unittest] = ACTIONS(4446), [sym_version] = ACTIONS(4446), [sym_while] = ACTIONS(4446), [sym_with] = ACTIONS(4446), [sym_gshared] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [anon_sym_BQUOTE] = ACTIONS(4448), [anon_sym_r_DQUOTE] = ACTIONS(4448), [anon_sym_x_DQUOTE] = ACTIONS(4448), [anon_sym_DQUOTE] = ACTIONS(4448), [anon_sym_i_BQUOTE] = ACTIONS(4448), [anon_sym_i_DQUOTE] = ACTIONS(4448), [anon_sym_iq_LBRACE] = ACTIONS(4448), [aux_sym_char_literal_token1] = ACTIONS(4448), [anon_sym_SQUOTE] = ACTIONS(4446), [anon_sym___DATE__] = ACTIONS(4446), [anon_sym___FILE__] = ACTIONS(4446), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4446), [anon_sym___FUNCTION__] = ACTIONS(4446), [anon_sym___LINE__] = ACTIONS(4446), [anon_sym___MODULE__] = ACTIONS(4446), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4446), [anon_sym___TIME__] = ACTIONS(4446), [anon_sym___TIMESTAMP__] = ACTIONS(4446), [anon_sym___VENDOR__] = ACTIONS(4446), [anon_sym___VERSION__] = ACTIONS(4446), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4448), [sym_float_literal] = ACTIONS(4448), [sym__string] = ACTIONS(4448), }, [1392] = { [sym_identifier] = ACTIONS(4452), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4454), [anon_sym_RBRACE] = ACTIONS(4454), [anon_sym_LBRACE] = ACTIONS(4454), [anon_sym_DOT] = ACTIONS(4454), [anon_sym_AMP] = ACTIONS(4454), [anon_sym_DASH] = ACTIONS(4452), [anon_sym_DASH_DASH] = ACTIONS(4454), [anon_sym_PLUS] = ACTIONS(4452), [anon_sym_PLUS_PLUS] = ACTIONS(4454), [anon_sym_BANG] = ACTIONS(4454), [anon_sym_LPAREN] = ACTIONS(4454), [anon_sym_RPAREN] = ACTIONS(4454), [anon_sym_LBRACK] = ACTIONS(4454), [anon_sym_SEMI] = ACTIONS(4454), [anon_sym_DOLLAR] = ACTIONS(4454), [anon_sym_STAR] = ACTIONS(4454), [anon_sym_TILDE] = ACTIONS(4454), [anon_sym_AT] = ACTIONS(4454), [sym_bool] = ACTIONS(4452), [sym_byte] = ACTIONS(4452), [sym_ubyte] = ACTIONS(4452), [sym_char] = ACTIONS(4452), [sym_short] = ACTIONS(4452), [sym_ushort] = ACTIONS(4452), [sym_int] = ACTIONS(4452), [sym_uint] = ACTIONS(4452), [sym_long] = ACTIONS(4452), [sym_ulong] = ACTIONS(4452), [sym_cent] = ACTIONS(4452), [sym_ucent] = ACTIONS(4452), [sym_wchar] = ACTIONS(4452), [sym_dchar] = ACTIONS(4452), [sym_float] = ACTIONS(4452), [sym_double] = ACTIONS(4452), [sym_real] = ACTIONS(4452), [sym_ifloat] = ACTIONS(4452), [sym_idouble] = ACTIONS(4452), [sym_ireal] = ACTIONS(4452), [sym_cfloat] = ACTIONS(4452), [sym_cdouble] = ACTIONS(4452), [sym_creal] = ACTIONS(4452), [sym_size_t] = ACTIONS(4452), [sym_ptrdiff_t] = ACTIONS(4452), [sym_string] = ACTIONS(4452), [sym_cstring] = ACTIONS(4452), [sym_dstring] = ACTIONS(4452), [sym_wstring] = ACTIONS(4452), [sym_noreturn] = ACTIONS(4452), [sym_true] = ACTIONS(4452), [sym_false] = ACTIONS(4452), [sym_null] = ACTIONS(4452), [sym_super] = ACTIONS(4452), [sym_this] = ACTIONS(4452), [sym_abstract] = ACTIONS(4452), [sym_alias] = ACTIONS(4452), [sym_align] = ACTIONS(4452), [sym_asm] = ACTIONS(4452), [sym_assert] = ACTIONS(4452), [sym_auto] = ACTIONS(4452), [sym_break] = ACTIONS(4452), [sym_case] = ACTIONS(4452), [sym_cast] = ACTIONS(4452), [sym_catch] = ACTIONS(4452), [sym_class] = ACTIONS(4452), [sym_const] = ACTIONS(4452), [sym_continue] = ACTIONS(4452), [sym_debug] = ACTIONS(4452), [sym_default] = ACTIONS(4452), [sym_delegate] = ACTIONS(4452), [sym_delete] = ACTIONS(4452), [sym_deprecated] = ACTIONS(4452), [sym_do] = ACTIONS(4452), [sym_else] = ACTIONS(4452), [sym_enum] = ACTIONS(4452), [sym_export] = ACTIONS(4452), [sym_extern] = ACTIONS(4452), [sym_final] = ACTIONS(4452), [sym_finally] = ACTIONS(4452), [sym_for] = ACTIONS(4452), [sym_foreach] = ACTIONS(4452), [sym_foreach_reverse] = ACTIONS(4452), [sym_function] = ACTIONS(4452), [sym_goto] = ACTIONS(4452), [sym_if] = ACTIONS(4452), [sym_immutable] = ACTIONS(4452), [sym_import] = ACTIONS(4452), [sym_in] = ACTIONS(4452), [sym_inout] = ACTIONS(4452), [sym_interface] = ACTIONS(4452), [sym_invariant] = ACTIONS(4452), [sym_is] = ACTIONS(4452), [sym_mixin] = ACTIONS(4452), [sym_new] = ACTIONS(4452), [sym_nothrow] = ACTIONS(4452), [sym_out] = ACTIONS(4452), [sym_override] = ACTIONS(4452), [sym_package] = ACTIONS(4452), [sym_pragma] = ACTIONS(4452), [sym_private] = ACTIONS(4452), [sym_protected] = ACTIONS(4452), [sym_public] = ACTIONS(4452), [sym_pure] = ACTIONS(4452), [sym_ref] = ACTIONS(4452), [sym_return] = ACTIONS(4452), [sym_scope] = ACTIONS(4452), [sym_shared] = ACTIONS(4452), [sym_static] = ACTIONS(4452), [sym_struct] = ACTIONS(4452), [sym_switch] = ACTIONS(4452), [sym_synchronized] = ACTIONS(4452), [sym_template] = ACTIONS(4452), [sym_throw] = ACTIONS(4452), [sym_try] = ACTIONS(4452), [sym_typeid] = ACTIONS(4452), [sym_typeof] = ACTIONS(4452), [sym_union] = ACTIONS(4452), [sym_unittest] = ACTIONS(4452), [sym_version] = ACTIONS(4452), [sym_while] = ACTIONS(4452), [sym_with] = ACTIONS(4452), [sym_gshared] = ACTIONS(4452), [sym_traits] = ACTIONS(4452), [sym_vector] = ACTIONS(4452), [sym_void] = ACTIONS(4452), [anon_sym_BQUOTE] = ACTIONS(4454), [anon_sym_r_DQUOTE] = ACTIONS(4454), [anon_sym_x_DQUOTE] = ACTIONS(4454), [anon_sym_DQUOTE] = ACTIONS(4454), [anon_sym_i_BQUOTE] = ACTIONS(4454), [anon_sym_i_DQUOTE] = ACTIONS(4454), [anon_sym_iq_LBRACE] = ACTIONS(4454), [aux_sym_char_literal_token1] = ACTIONS(4454), [anon_sym_SQUOTE] = ACTIONS(4452), [anon_sym___DATE__] = ACTIONS(4452), [anon_sym___FILE__] = ACTIONS(4452), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4452), [anon_sym___FUNCTION__] = ACTIONS(4452), [anon_sym___LINE__] = ACTIONS(4452), [anon_sym___MODULE__] = ACTIONS(4452), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4452), [anon_sym___TIME__] = ACTIONS(4452), [anon_sym___TIMESTAMP__] = ACTIONS(4452), [anon_sym___VENDOR__] = ACTIONS(4452), [anon_sym___VERSION__] = ACTIONS(4452), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4454), [sym_float_literal] = ACTIONS(4454), [sym__string] = ACTIONS(4454), }, [1393] = { [sym_identifier] = ACTIONS(4456), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4458), [anon_sym_RBRACE] = ACTIONS(4458), [anon_sym_LBRACE] = ACTIONS(4458), [anon_sym_DOT] = ACTIONS(4458), [anon_sym_AMP] = ACTIONS(4458), [anon_sym_DASH] = ACTIONS(4456), [anon_sym_DASH_DASH] = ACTIONS(4458), [anon_sym_PLUS] = ACTIONS(4456), [anon_sym_PLUS_PLUS] = ACTIONS(4458), [anon_sym_BANG] = ACTIONS(4458), [anon_sym_LPAREN] = ACTIONS(4458), [anon_sym_RPAREN] = ACTIONS(4458), [anon_sym_LBRACK] = ACTIONS(4458), [anon_sym_SEMI] = ACTIONS(4458), [anon_sym_DOLLAR] = ACTIONS(4458), [anon_sym_STAR] = ACTIONS(4458), [anon_sym_TILDE] = ACTIONS(4458), [anon_sym_AT] = ACTIONS(4458), [sym_bool] = ACTIONS(4456), [sym_byte] = ACTIONS(4456), [sym_ubyte] = ACTIONS(4456), [sym_char] = ACTIONS(4456), [sym_short] = ACTIONS(4456), [sym_ushort] = ACTIONS(4456), [sym_int] = ACTIONS(4456), [sym_uint] = ACTIONS(4456), [sym_long] = ACTIONS(4456), [sym_ulong] = ACTIONS(4456), [sym_cent] = ACTIONS(4456), [sym_ucent] = ACTIONS(4456), [sym_wchar] = ACTIONS(4456), [sym_dchar] = ACTIONS(4456), [sym_float] = ACTIONS(4456), [sym_double] = ACTIONS(4456), [sym_real] = ACTIONS(4456), [sym_ifloat] = ACTIONS(4456), [sym_idouble] = ACTIONS(4456), [sym_ireal] = ACTIONS(4456), [sym_cfloat] = ACTIONS(4456), [sym_cdouble] = ACTIONS(4456), [sym_creal] = ACTIONS(4456), [sym_size_t] = ACTIONS(4456), [sym_ptrdiff_t] = ACTIONS(4456), [sym_string] = ACTIONS(4456), [sym_cstring] = ACTIONS(4456), [sym_dstring] = ACTIONS(4456), [sym_wstring] = ACTIONS(4456), [sym_noreturn] = ACTIONS(4456), [sym_true] = ACTIONS(4456), [sym_false] = ACTIONS(4456), [sym_null] = ACTIONS(4456), [sym_super] = ACTIONS(4456), [sym_this] = ACTIONS(4456), [sym_abstract] = ACTIONS(4456), [sym_alias] = ACTIONS(4456), [sym_align] = ACTIONS(4456), [sym_asm] = ACTIONS(4456), [sym_assert] = ACTIONS(4456), [sym_auto] = ACTIONS(4456), [sym_break] = ACTIONS(4456), [sym_case] = ACTIONS(4456), [sym_cast] = ACTIONS(4456), [sym_catch] = ACTIONS(4456), [sym_class] = ACTIONS(4456), [sym_const] = ACTIONS(4456), [sym_continue] = ACTIONS(4456), [sym_debug] = ACTIONS(4456), [sym_default] = ACTIONS(4456), [sym_delegate] = ACTIONS(4456), [sym_delete] = ACTIONS(4456), [sym_deprecated] = ACTIONS(4456), [sym_do] = ACTIONS(4456), [sym_else] = ACTIONS(4456), [sym_enum] = ACTIONS(4456), [sym_export] = ACTIONS(4456), [sym_extern] = ACTIONS(4456), [sym_final] = ACTIONS(4456), [sym_finally] = ACTIONS(4456), [sym_for] = ACTIONS(4456), [sym_foreach] = ACTIONS(4456), [sym_foreach_reverse] = ACTIONS(4456), [sym_function] = ACTIONS(4456), [sym_goto] = ACTIONS(4456), [sym_if] = ACTIONS(4456), [sym_immutable] = ACTIONS(4456), [sym_import] = ACTIONS(4456), [sym_in] = ACTIONS(4456), [sym_inout] = ACTIONS(4456), [sym_interface] = ACTIONS(4456), [sym_invariant] = ACTIONS(4456), [sym_is] = ACTIONS(4456), [sym_mixin] = ACTIONS(4456), [sym_new] = ACTIONS(4456), [sym_nothrow] = ACTIONS(4456), [sym_out] = ACTIONS(4456), [sym_override] = ACTIONS(4456), [sym_package] = ACTIONS(4456), [sym_pragma] = ACTIONS(4456), [sym_private] = ACTIONS(4456), [sym_protected] = ACTIONS(4456), [sym_public] = ACTIONS(4456), [sym_pure] = ACTIONS(4456), [sym_ref] = ACTIONS(4456), [sym_return] = ACTIONS(4456), [sym_scope] = ACTIONS(4456), [sym_shared] = ACTIONS(4456), [sym_static] = ACTIONS(4456), [sym_struct] = ACTIONS(4456), [sym_switch] = ACTIONS(4456), [sym_synchronized] = ACTIONS(4456), [sym_template] = ACTIONS(4456), [sym_throw] = ACTIONS(4456), [sym_try] = ACTIONS(4456), [sym_typeid] = ACTIONS(4456), [sym_typeof] = ACTIONS(4456), [sym_union] = ACTIONS(4456), [sym_unittest] = ACTIONS(4456), [sym_version] = ACTIONS(4456), [sym_while] = ACTIONS(4456), [sym_with] = ACTIONS(4456), [sym_gshared] = ACTIONS(4456), [sym_traits] = ACTIONS(4456), [sym_vector] = ACTIONS(4456), [sym_void] = ACTIONS(4456), [anon_sym_BQUOTE] = ACTIONS(4458), [anon_sym_r_DQUOTE] = ACTIONS(4458), [anon_sym_x_DQUOTE] = ACTIONS(4458), [anon_sym_DQUOTE] = ACTIONS(4458), [anon_sym_i_BQUOTE] = ACTIONS(4458), [anon_sym_i_DQUOTE] = ACTIONS(4458), [anon_sym_iq_LBRACE] = ACTIONS(4458), [aux_sym_char_literal_token1] = ACTIONS(4458), [anon_sym_SQUOTE] = ACTIONS(4456), [anon_sym___DATE__] = ACTIONS(4456), [anon_sym___FILE__] = ACTIONS(4456), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4456), [anon_sym___FUNCTION__] = ACTIONS(4456), [anon_sym___LINE__] = ACTIONS(4456), [anon_sym___MODULE__] = ACTIONS(4456), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4456), [anon_sym___TIME__] = ACTIONS(4456), [anon_sym___TIMESTAMP__] = ACTIONS(4456), [anon_sym___VENDOR__] = ACTIONS(4456), [anon_sym___VERSION__] = ACTIONS(4456), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4458), [sym_float_literal] = ACTIONS(4458), [sym__string] = ACTIONS(4458), }, [1394] = { [sym_identifier] = ACTIONS(4460), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4462), [anon_sym_RBRACE] = ACTIONS(4462), [anon_sym_LBRACE] = ACTIONS(4462), [anon_sym_DOT] = ACTIONS(4462), [anon_sym_AMP] = ACTIONS(4462), [anon_sym_DASH] = ACTIONS(4460), [anon_sym_DASH_DASH] = ACTIONS(4462), [anon_sym_PLUS] = ACTIONS(4460), [anon_sym_PLUS_PLUS] = ACTIONS(4462), [anon_sym_BANG] = ACTIONS(4462), [anon_sym_LPAREN] = ACTIONS(4462), [anon_sym_RPAREN] = ACTIONS(4462), [anon_sym_LBRACK] = ACTIONS(4462), [anon_sym_SEMI] = ACTIONS(4462), [anon_sym_DOLLAR] = ACTIONS(4462), [anon_sym_STAR] = ACTIONS(4462), [anon_sym_TILDE] = ACTIONS(4462), [anon_sym_AT] = ACTIONS(4462), [sym_bool] = ACTIONS(4460), [sym_byte] = ACTIONS(4460), [sym_ubyte] = ACTIONS(4460), [sym_char] = ACTIONS(4460), [sym_short] = ACTIONS(4460), [sym_ushort] = ACTIONS(4460), [sym_int] = ACTIONS(4460), [sym_uint] = ACTIONS(4460), [sym_long] = ACTIONS(4460), [sym_ulong] = ACTIONS(4460), [sym_cent] = ACTIONS(4460), [sym_ucent] = ACTIONS(4460), [sym_wchar] = ACTIONS(4460), [sym_dchar] = ACTIONS(4460), [sym_float] = ACTIONS(4460), [sym_double] = ACTIONS(4460), [sym_real] = ACTIONS(4460), [sym_ifloat] = ACTIONS(4460), [sym_idouble] = ACTIONS(4460), [sym_ireal] = ACTIONS(4460), [sym_cfloat] = ACTIONS(4460), [sym_cdouble] = ACTIONS(4460), [sym_creal] = ACTIONS(4460), [sym_size_t] = ACTIONS(4460), [sym_ptrdiff_t] = ACTIONS(4460), [sym_string] = ACTIONS(4460), [sym_cstring] = ACTIONS(4460), [sym_dstring] = ACTIONS(4460), [sym_wstring] = ACTIONS(4460), [sym_noreturn] = ACTIONS(4460), [sym_true] = ACTIONS(4460), [sym_false] = ACTIONS(4460), [sym_null] = ACTIONS(4460), [sym_super] = ACTIONS(4460), [sym_this] = ACTIONS(4460), [sym_abstract] = ACTIONS(4460), [sym_alias] = ACTIONS(4460), [sym_align] = ACTIONS(4460), [sym_asm] = ACTIONS(4460), [sym_assert] = ACTIONS(4460), [sym_auto] = ACTIONS(4460), [sym_break] = ACTIONS(4460), [sym_case] = ACTIONS(4460), [sym_cast] = ACTIONS(4460), [sym_catch] = ACTIONS(4460), [sym_class] = ACTIONS(4460), [sym_const] = ACTIONS(4460), [sym_continue] = ACTIONS(4460), [sym_debug] = ACTIONS(4460), [sym_default] = ACTIONS(4460), [sym_delegate] = ACTIONS(4460), [sym_delete] = ACTIONS(4460), [sym_deprecated] = ACTIONS(4460), [sym_do] = ACTIONS(4460), [sym_else] = ACTIONS(4460), [sym_enum] = ACTIONS(4460), [sym_export] = ACTIONS(4460), [sym_extern] = ACTIONS(4460), [sym_final] = ACTIONS(4460), [sym_finally] = ACTIONS(4460), [sym_for] = ACTIONS(4460), [sym_foreach] = ACTIONS(4460), [sym_foreach_reverse] = ACTIONS(4460), [sym_function] = ACTIONS(4460), [sym_goto] = ACTIONS(4460), [sym_if] = ACTIONS(4460), [sym_immutable] = ACTIONS(4460), [sym_import] = ACTIONS(4460), [sym_in] = ACTIONS(4460), [sym_inout] = ACTIONS(4460), [sym_interface] = ACTIONS(4460), [sym_invariant] = ACTIONS(4460), [sym_is] = ACTIONS(4460), [sym_mixin] = ACTIONS(4460), [sym_new] = ACTIONS(4460), [sym_nothrow] = ACTIONS(4460), [sym_out] = ACTIONS(4460), [sym_override] = ACTIONS(4460), [sym_package] = ACTIONS(4460), [sym_pragma] = ACTIONS(4460), [sym_private] = ACTIONS(4460), [sym_protected] = ACTIONS(4460), [sym_public] = ACTIONS(4460), [sym_pure] = ACTIONS(4460), [sym_ref] = ACTIONS(4460), [sym_return] = ACTIONS(4460), [sym_scope] = ACTIONS(4460), [sym_shared] = ACTIONS(4460), [sym_static] = ACTIONS(4460), [sym_struct] = ACTIONS(4460), [sym_switch] = ACTIONS(4460), [sym_synchronized] = ACTIONS(4460), [sym_template] = ACTIONS(4460), [sym_throw] = ACTIONS(4460), [sym_try] = ACTIONS(4460), [sym_typeid] = ACTIONS(4460), [sym_typeof] = ACTIONS(4460), [sym_union] = ACTIONS(4460), [sym_unittest] = ACTIONS(4460), [sym_version] = ACTIONS(4460), [sym_while] = ACTIONS(4460), [sym_with] = ACTIONS(4460), [sym_gshared] = ACTIONS(4460), [sym_traits] = ACTIONS(4460), [sym_vector] = ACTIONS(4460), [sym_void] = ACTIONS(4460), [anon_sym_BQUOTE] = ACTIONS(4462), [anon_sym_r_DQUOTE] = ACTIONS(4462), [anon_sym_x_DQUOTE] = ACTIONS(4462), [anon_sym_DQUOTE] = ACTIONS(4462), [anon_sym_i_BQUOTE] = ACTIONS(4462), [anon_sym_i_DQUOTE] = ACTIONS(4462), [anon_sym_iq_LBRACE] = ACTIONS(4462), [aux_sym_char_literal_token1] = ACTIONS(4462), [anon_sym_SQUOTE] = ACTIONS(4460), [anon_sym___DATE__] = ACTIONS(4460), [anon_sym___FILE__] = ACTIONS(4460), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4460), [anon_sym___FUNCTION__] = ACTIONS(4460), [anon_sym___LINE__] = ACTIONS(4460), [anon_sym___MODULE__] = ACTIONS(4460), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4460), [anon_sym___TIME__] = ACTIONS(4460), [anon_sym___TIMESTAMP__] = ACTIONS(4460), [anon_sym___VENDOR__] = ACTIONS(4460), [anon_sym___VERSION__] = ACTIONS(4460), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4462), [sym_float_literal] = ACTIONS(4462), [sym__string] = ACTIONS(4462), }, [1395] = { [sym_identifier] = ACTIONS(4464), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4466), [anon_sym_RBRACE] = ACTIONS(4466), [anon_sym_LBRACE] = ACTIONS(4466), [anon_sym_DOT] = ACTIONS(4466), [anon_sym_AMP] = ACTIONS(4466), [anon_sym_DASH] = ACTIONS(4464), [anon_sym_DASH_DASH] = ACTIONS(4466), [anon_sym_PLUS] = ACTIONS(4464), [anon_sym_PLUS_PLUS] = ACTIONS(4466), [anon_sym_BANG] = ACTIONS(4466), [anon_sym_LPAREN] = ACTIONS(4466), [anon_sym_RPAREN] = ACTIONS(4466), [anon_sym_LBRACK] = ACTIONS(4466), [anon_sym_SEMI] = ACTIONS(4466), [anon_sym_DOLLAR] = ACTIONS(4466), [anon_sym_STAR] = ACTIONS(4466), [anon_sym_TILDE] = ACTIONS(4466), [anon_sym_AT] = ACTIONS(4466), [sym_bool] = ACTIONS(4464), [sym_byte] = ACTIONS(4464), [sym_ubyte] = ACTIONS(4464), [sym_char] = ACTIONS(4464), [sym_short] = ACTIONS(4464), [sym_ushort] = ACTIONS(4464), [sym_int] = ACTIONS(4464), [sym_uint] = ACTIONS(4464), [sym_long] = ACTIONS(4464), [sym_ulong] = ACTIONS(4464), [sym_cent] = ACTIONS(4464), [sym_ucent] = ACTIONS(4464), [sym_wchar] = ACTIONS(4464), [sym_dchar] = ACTIONS(4464), [sym_float] = ACTIONS(4464), [sym_double] = ACTIONS(4464), [sym_real] = ACTIONS(4464), [sym_ifloat] = ACTIONS(4464), [sym_idouble] = ACTIONS(4464), [sym_ireal] = ACTIONS(4464), [sym_cfloat] = ACTIONS(4464), [sym_cdouble] = ACTIONS(4464), [sym_creal] = ACTIONS(4464), [sym_size_t] = ACTIONS(4464), [sym_ptrdiff_t] = ACTIONS(4464), [sym_string] = ACTIONS(4464), [sym_cstring] = ACTIONS(4464), [sym_dstring] = ACTIONS(4464), [sym_wstring] = ACTIONS(4464), [sym_noreturn] = ACTIONS(4464), [sym_true] = ACTIONS(4464), [sym_false] = ACTIONS(4464), [sym_null] = ACTIONS(4464), [sym_super] = ACTIONS(4464), [sym_this] = ACTIONS(4464), [sym_abstract] = ACTIONS(4464), [sym_alias] = ACTIONS(4464), [sym_align] = ACTIONS(4464), [sym_asm] = ACTIONS(4464), [sym_assert] = ACTIONS(4464), [sym_auto] = ACTIONS(4464), [sym_break] = ACTIONS(4464), [sym_case] = ACTIONS(4464), [sym_cast] = ACTIONS(4464), [sym_catch] = ACTIONS(4464), [sym_class] = ACTIONS(4464), [sym_const] = ACTIONS(4464), [sym_continue] = ACTIONS(4464), [sym_debug] = ACTIONS(4464), [sym_default] = ACTIONS(4464), [sym_delegate] = ACTIONS(4464), [sym_delete] = ACTIONS(4464), [sym_deprecated] = ACTIONS(4464), [sym_do] = ACTIONS(4464), [sym_else] = ACTIONS(4464), [sym_enum] = ACTIONS(4464), [sym_export] = ACTIONS(4464), [sym_extern] = ACTIONS(4464), [sym_final] = ACTIONS(4464), [sym_finally] = ACTIONS(4464), [sym_for] = ACTIONS(4464), [sym_foreach] = ACTIONS(4464), [sym_foreach_reverse] = ACTIONS(4464), [sym_function] = ACTIONS(4464), [sym_goto] = ACTIONS(4464), [sym_if] = ACTIONS(4464), [sym_immutable] = ACTIONS(4464), [sym_import] = ACTIONS(4464), [sym_in] = ACTIONS(4464), [sym_inout] = ACTIONS(4464), [sym_interface] = ACTIONS(4464), [sym_invariant] = ACTIONS(4464), [sym_is] = ACTIONS(4464), [sym_mixin] = ACTIONS(4464), [sym_new] = ACTIONS(4464), [sym_nothrow] = ACTIONS(4464), [sym_out] = ACTIONS(4464), [sym_override] = ACTIONS(4464), [sym_package] = ACTIONS(4464), [sym_pragma] = ACTIONS(4464), [sym_private] = ACTIONS(4464), [sym_protected] = ACTIONS(4464), [sym_public] = ACTIONS(4464), [sym_pure] = ACTIONS(4464), [sym_ref] = ACTIONS(4464), [sym_return] = ACTIONS(4464), [sym_scope] = ACTIONS(4464), [sym_shared] = ACTIONS(4464), [sym_static] = ACTIONS(4464), [sym_struct] = ACTIONS(4464), [sym_switch] = ACTIONS(4464), [sym_synchronized] = ACTIONS(4464), [sym_template] = ACTIONS(4464), [sym_throw] = ACTIONS(4464), [sym_try] = ACTIONS(4464), [sym_typeid] = ACTIONS(4464), [sym_typeof] = ACTIONS(4464), [sym_union] = ACTIONS(4464), [sym_unittest] = ACTIONS(4464), [sym_version] = ACTIONS(4464), [sym_while] = ACTIONS(4464), [sym_with] = ACTIONS(4464), [sym_gshared] = ACTIONS(4464), [sym_traits] = ACTIONS(4464), [sym_vector] = ACTIONS(4464), [sym_void] = ACTIONS(4464), [anon_sym_BQUOTE] = ACTIONS(4466), [anon_sym_r_DQUOTE] = ACTIONS(4466), [anon_sym_x_DQUOTE] = ACTIONS(4466), [anon_sym_DQUOTE] = ACTIONS(4466), [anon_sym_i_BQUOTE] = ACTIONS(4466), [anon_sym_i_DQUOTE] = ACTIONS(4466), [anon_sym_iq_LBRACE] = ACTIONS(4466), [aux_sym_char_literal_token1] = ACTIONS(4466), [anon_sym_SQUOTE] = ACTIONS(4464), [anon_sym___DATE__] = ACTIONS(4464), [anon_sym___FILE__] = ACTIONS(4464), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4464), [anon_sym___FUNCTION__] = ACTIONS(4464), [anon_sym___LINE__] = ACTIONS(4464), [anon_sym___MODULE__] = ACTIONS(4464), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4464), [anon_sym___TIME__] = ACTIONS(4464), [anon_sym___TIMESTAMP__] = ACTIONS(4464), [anon_sym___VENDOR__] = ACTIONS(4464), [anon_sym___VERSION__] = ACTIONS(4464), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4466), [sym_float_literal] = ACTIONS(4466), [sym__string] = ACTIONS(4466), }, [1396] = { [sym_identifier] = ACTIONS(4468), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4470), [anon_sym_RBRACE] = ACTIONS(4470), [anon_sym_LBRACE] = ACTIONS(4470), [anon_sym_DOT] = ACTIONS(4470), [anon_sym_AMP] = ACTIONS(4470), [anon_sym_DASH] = ACTIONS(4468), [anon_sym_DASH_DASH] = ACTIONS(4470), [anon_sym_PLUS] = ACTIONS(4468), [anon_sym_PLUS_PLUS] = ACTIONS(4470), [anon_sym_BANG] = ACTIONS(4470), [anon_sym_LPAREN] = ACTIONS(4470), [anon_sym_RPAREN] = ACTIONS(4470), [anon_sym_LBRACK] = ACTIONS(4470), [anon_sym_SEMI] = ACTIONS(4470), [anon_sym_DOLLAR] = ACTIONS(4470), [anon_sym_STAR] = ACTIONS(4470), [anon_sym_TILDE] = ACTIONS(4470), [anon_sym_AT] = ACTIONS(4470), [sym_bool] = ACTIONS(4468), [sym_byte] = ACTIONS(4468), [sym_ubyte] = ACTIONS(4468), [sym_char] = ACTIONS(4468), [sym_short] = ACTIONS(4468), [sym_ushort] = ACTIONS(4468), [sym_int] = ACTIONS(4468), [sym_uint] = ACTIONS(4468), [sym_long] = ACTIONS(4468), [sym_ulong] = ACTIONS(4468), [sym_cent] = ACTIONS(4468), [sym_ucent] = ACTIONS(4468), [sym_wchar] = ACTIONS(4468), [sym_dchar] = ACTIONS(4468), [sym_float] = ACTIONS(4468), [sym_double] = ACTIONS(4468), [sym_real] = ACTIONS(4468), [sym_ifloat] = ACTIONS(4468), [sym_idouble] = ACTIONS(4468), [sym_ireal] = ACTIONS(4468), [sym_cfloat] = ACTIONS(4468), [sym_cdouble] = ACTIONS(4468), [sym_creal] = ACTIONS(4468), [sym_size_t] = ACTIONS(4468), [sym_ptrdiff_t] = ACTIONS(4468), [sym_string] = ACTIONS(4468), [sym_cstring] = ACTIONS(4468), [sym_dstring] = ACTIONS(4468), [sym_wstring] = ACTIONS(4468), [sym_noreturn] = ACTIONS(4468), [sym_true] = ACTIONS(4468), [sym_false] = ACTIONS(4468), [sym_null] = ACTIONS(4468), [sym_super] = ACTIONS(4468), [sym_this] = ACTIONS(4468), [sym_abstract] = ACTIONS(4468), [sym_alias] = ACTIONS(4468), [sym_align] = ACTIONS(4468), [sym_asm] = ACTIONS(4468), [sym_assert] = ACTIONS(4468), [sym_auto] = ACTIONS(4468), [sym_break] = ACTIONS(4468), [sym_case] = ACTIONS(4468), [sym_cast] = ACTIONS(4468), [sym_catch] = ACTIONS(4468), [sym_class] = ACTIONS(4468), [sym_const] = ACTIONS(4468), [sym_continue] = ACTIONS(4468), [sym_debug] = ACTIONS(4468), [sym_default] = ACTIONS(4468), [sym_delegate] = ACTIONS(4468), [sym_delete] = ACTIONS(4468), [sym_deprecated] = ACTIONS(4468), [sym_do] = ACTIONS(4468), [sym_else] = ACTIONS(4468), [sym_enum] = ACTIONS(4468), [sym_export] = ACTIONS(4468), [sym_extern] = ACTIONS(4468), [sym_final] = ACTIONS(4468), [sym_finally] = ACTIONS(4468), [sym_for] = ACTIONS(4468), [sym_foreach] = ACTIONS(4468), [sym_foreach_reverse] = ACTIONS(4468), [sym_function] = ACTIONS(4468), [sym_goto] = ACTIONS(4468), [sym_if] = ACTIONS(4468), [sym_immutable] = ACTIONS(4468), [sym_import] = ACTIONS(4468), [sym_in] = ACTIONS(4468), [sym_inout] = ACTIONS(4468), [sym_interface] = ACTIONS(4468), [sym_invariant] = ACTIONS(4468), [sym_is] = ACTIONS(4468), [sym_mixin] = ACTIONS(4468), [sym_new] = ACTIONS(4468), [sym_nothrow] = ACTIONS(4468), [sym_out] = ACTIONS(4468), [sym_override] = ACTIONS(4468), [sym_package] = ACTIONS(4468), [sym_pragma] = ACTIONS(4468), [sym_private] = ACTIONS(4468), [sym_protected] = ACTIONS(4468), [sym_public] = ACTIONS(4468), [sym_pure] = ACTIONS(4468), [sym_ref] = ACTIONS(4468), [sym_return] = ACTIONS(4468), [sym_scope] = ACTIONS(4468), [sym_shared] = ACTIONS(4468), [sym_static] = ACTIONS(4468), [sym_struct] = ACTIONS(4468), [sym_switch] = ACTIONS(4468), [sym_synchronized] = ACTIONS(4468), [sym_template] = ACTIONS(4468), [sym_throw] = ACTIONS(4468), [sym_try] = ACTIONS(4468), [sym_typeid] = ACTIONS(4468), [sym_typeof] = ACTIONS(4468), [sym_union] = ACTIONS(4468), [sym_unittest] = ACTIONS(4468), [sym_version] = ACTIONS(4468), [sym_while] = ACTIONS(4468), [sym_with] = ACTIONS(4468), [sym_gshared] = ACTIONS(4468), [sym_traits] = ACTIONS(4468), [sym_vector] = ACTIONS(4468), [sym_void] = ACTIONS(4468), [anon_sym_BQUOTE] = ACTIONS(4470), [anon_sym_r_DQUOTE] = ACTIONS(4470), [anon_sym_x_DQUOTE] = ACTIONS(4470), [anon_sym_DQUOTE] = ACTIONS(4470), [anon_sym_i_BQUOTE] = ACTIONS(4470), [anon_sym_i_DQUOTE] = ACTIONS(4470), [anon_sym_iq_LBRACE] = ACTIONS(4470), [aux_sym_char_literal_token1] = ACTIONS(4470), [anon_sym_SQUOTE] = ACTIONS(4468), [anon_sym___DATE__] = ACTIONS(4468), [anon_sym___FILE__] = ACTIONS(4468), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4468), [anon_sym___FUNCTION__] = ACTIONS(4468), [anon_sym___LINE__] = ACTIONS(4468), [anon_sym___MODULE__] = ACTIONS(4468), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4468), [anon_sym___TIME__] = ACTIONS(4468), [anon_sym___TIMESTAMP__] = ACTIONS(4468), [anon_sym___VENDOR__] = ACTIONS(4468), [anon_sym___VERSION__] = ACTIONS(4468), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4470), [sym_float_literal] = ACTIONS(4470), [sym__string] = ACTIONS(4470), }, [1397] = { [sym_identifier] = ACTIONS(4472), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4474), [anon_sym_RBRACE] = ACTIONS(4474), [anon_sym_LBRACE] = ACTIONS(4474), [anon_sym_DOT] = ACTIONS(4474), [anon_sym_AMP] = ACTIONS(4474), [anon_sym_DASH] = ACTIONS(4472), [anon_sym_DASH_DASH] = ACTIONS(4474), [anon_sym_PLUS] = ACTIONS(4472), [anon_sym_PLUS_PLUS] = ACTIONS(4474), [anon_sym_BANG] = ACTIONS(4474), [anon_sym_LPAREN] = ACTIONS(4474), [anon_sym_RPAREN] = ACTIONS(4474), [anon_sym_LBRACK] = ACTIONS(4474), [anon_sym_SEMI] = ACTIONS(4474), [anon_sym_DOLLAR] = ACTIONS(4474), [anon_sym_STAR] = ACTIONS(4474), [anon_sym_TILDE] = ACTIONS(4474), [anon_sym_AT] = ACTIONS(4474), [sym_bool] = ACTIONS(4472), [sym_byte] = ACTIONS(4472), [sym_ubyte] = ACTIONS(4472), [sym_char] = ACTIONS(4472), [sym_short] = ACTIONS(4472), [sym_ushort] = ACTIONS(4472), [sym_int] = ACTIONS(4472), [sym_uint] = ACTIONS(4472), [sym_long] = ACTIONS(4472), [sym_ulong] = ACTIONS(4472), [sym_cent] = ACTIONS(4472), [sym_ucent] = ACTIONS(4472), [sym_wchar] = ACTIONS(4472), [sym_dchar] = ACTIONS(4472), [sym_float] = ACTIONS(4472), [sym_double] = ACTIONS(4472), [sym_real] = ACTIONS(4472), [sym_ifloat] = ACTIONS(4472), [sym_idouble] = ACTIONS(4472), [sym_ireal] = ACTIONS(4472), [sym_cfloat] = ACTIONS(4472), [sym_cdouble] = ACTIONS(4472), [sym_creal] = ACTIONS(4472), [sym_size_t] = ACTIONS(4472), [sym_ptrdiff_t] = ACTIONS(4472), [sym_string] = ACTIONS(4472), [sym_cstring] = ACTIONS(4472), [sym_dstring] = ACTIONS(4472), [sym_wstring] = ACTIONS(4472), [sym_noreturn] = ACTIONS(4472), [sym_true] = ACTIONS(4472), [sym_false] = ACTIONS(4472), [sym_null] = ACTIONS(4472), [sym_super] = ACTIONS(4472), [sym_this] = ACTIONS(4472), [sym_abstract] = ACTIONS(4472), [sym_alias] = ACTIONS(4472), [sym_align] = ACTIONS(4472), [sym_asm] = ACTIONS(4472), [sym_assert] = ACTIONS(4472), [sym_auto] = ACTIONS(4472), [sym_break] = ACTIONS(4472), [sym_case] = ACTIONS(4472), [sym_cast] = ACTIONS(4472), [sym_catch] = ACTIONS(4472), [sym_class] = ACTIONS(4472), [sym_const] = ACTIONS(4472), [sym_continue] = ACTIONS(4472), [sym_debug] = ACTIONS(4472), [sym_default] = ACTIONS(4472), [sym_delegate] = ACTIONS(4472), [sym_delete] = ACTIONS(4472), [sym_deprecated] = ACTIONS(4472), [sym_do] = ACTIONS(4472), [sym_else] = ACTIONS(4472), [sym_enum] = ACTIONS(4472), [sym_export] = ACTIONS(4472), [sym_extern] = ACTIONS(4472), [sym_final] = ACTIONS(4472), [sym_finally] = ACTIONS(4472), [sym_for] = ACTIONS(4472), [sym_foreach] = ACTIONS(4472), [sym_foreach_reverse] = ACTIONS(4472), [sym_function] = ACTIONS(4472), [sym_goto] = ACTIONS(4472), [sym_if] = ACTIONS(4472), [sym_immutable] = ACTIONS(4472), [sym_import] = ACTIONS(4472), [sym_in] = ACTIONS(4472), [sym_inout] = ACTIONS(4472), [sym_interface] = ACTIONS(4472), [sym_invariant] = ACTIONS(4472), [sym_is] = ACTIONS(4472), [sym_mixin] = ACTIONS(4472), [sym_new] = ACTIONS(4472), [sym_nothrow] = ACTIONS(4472), [sym_out] = ACTIONS(4472), [sym_override] = ACTIONS(4472), [sym_package] = ACTIONS(4472), [sym_pragma] = ACTIONS(4472), [sym_private] = ACTIONS(4472), [sym_protected] = ACTIONS(4472), [sym_public] = ACTIONS(4472), [sym_pure] = ACTIONS(4472), [sym_ref] = ACTIONS(4472), [sym_return] = ACTIONS(4472), [sym_scope] = ACTIONS(4472), [sym_shared] = ACTIONS(4472), [sym_static] = ACTIONS(4472), [sym_struct] = ACTIONS(4472), [sym_switch] = ACTIONS(4472), [sym_synchronized] = ACTIONS(4472), [sym_template] = ACTIONS(4472), [sym_throw] = ACTIONS(4472), [sym_try] = ACTIONS(4472), [sym_typeid] = ACTIONS(4472), [sym_typeof] = ACTIONS(4472), [sym_union] = ACTIONS(4472), [sym_unittest] = ACTIONS(4472), [sym_version] = ACTIONS(4472), [sym_while] = ACTIONS(4472), [sym_with] = ACTIONS(4472), [sym_gshared] = ACTIONS(4472), [sym_traits] = ACTIONS(4472), [sym_vector] = ACTIONS(4472), [sym_void] = ACTIONS(4472), [anon_sym_BQUOTE] = ACTIONS(4474), [anon_sym_r_DQUOTE] = ACTIONS(4474), [anon_sym_x_DQUOTE] = ACTIONS(4474), [anon_sym_DQUOTE] = ACTIONS(4474), [anon_sym_i_BQUOTE] = ACTIONS(4474), [anon_sym_i_DQUOTE] = ACTIONS(4474), [anon_sym_iq_LBRACE] = ACTIONS(4474), [aux_sym_char_literal_token1] = ACTIONS(4474), [anon_sym_SQUOTE] = ACTIONS(4472), [anon_sym___DATE__] = ACTIONS(4472), [anon_sym___FILE__] = ACTIONS(4472), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4472), [anon_sym___FUNCTION__] = ACTIONS(4472), [anon_sym___LINE__] = ACTIONS(4472), [anon_sym___MODULE__] = ACTIONS(4472), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4472), [anon_sym___TIME__] = ACTIONS(4472), [anon_sym___TIMESTAMP__] = ACTIONS(4472), [anon_sym___VENDOR__] = ACTIONS(4472), [anon_sym___VERSION__] = ACTIONS(4472), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4474), [sym_float_literal] = ACTIONS(4474), [sym__string] = ACTIONS(4474), }, [1398] = { [sym_identifier] = ACTIONS(4476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4478), [anon_sym_RBRACE] = ACTIONS(4478), [anon_sym_LBRACE] = ACTIONS(4478), [anon_sym_DOT] = ACTIONS(4478), [anon_sym_AMP] = ACTIONS(4478), [anon_sym_DASH] = ACTIONS(4476), [anon_sym_DASH_DASH] = ACTIONS(4478), [anon_sym_PLUS] = ACTIONS(4476), [anon_sym_PLUS_PLUS] = ACTIONS(4478), [anon_sym_BANG] = ACTIONS(4478), [anon_sym_LPAREN] = ACTIONS(4478), [anon_sym_RPAREN] = ACTIONS(4478), [anon_sym_LBRACK] = ACTIONS(4478), [anon_sym_SEMI] = ACTIONS(4478), [anon_sym_DOLLAR] = ACTIONS(4478), [anon_sym_STAR] = ACTIONS(4478), [anon_sym_TILDE] = ACTIONS(4478), [anon_sym_AT] = ACTIONS(4478), [sym_bool] = ACTIONS(4476), [sym_byte] = ACTIONS(4476), [sym_ubyte] = ACTIONS(4476), [sym_char] = ACTIONS(4476), [sym_short] = ACTIONS(4476), [sym_ushort] = ACTIONS(4476), [sym_int] = ACTIONS(4476), [sym_uint] = ACTIONS(4476), [sym_long] = ACTIONS(4476), [sym_ulong] = ACTIONS(4476), [sym_cent] = ACTIONS(4476), [sym_ucent] = ACTIONS(4476), [sym_wchar] = ACTIONS(4476), [sym_dchar] = ACTIONS(4476), [sym_float] = ACTIONS(4476), [sym_double] = ACTIONS(4476), [sym_real] = ACTIONS(4476), [sym_ifloat] = ACTIONS(4476), [sym_idouble] = ACTIONS(4476), [sym_ireal] = ACTIONS(4476), [sym_cfloat] = ACTIONS(4476), [sym_cdouble] = ACTIONS(4476), [sym_creal] = ACTIONS(4476), [sym_size_t] = ACTIONS(4476), [sym_ptrdiff_t] = ACTIONS(4476), [sym_string] = ACTIONS(4476), [sym_cstring] = ACTIONS(4476), [sym_dstring] = ACTIONS(4476), [sym_wstring] = ACTIONS(4476), [sym_noreturn] = ACTIONS(4476), [sym_true] = ACTIONS(4476), [sym_false] = ACTIONS(4476), [sym_null] = ACTIONS(4476), [sym_super] = ACTIONS(4476), [sym_this] = ACTIONS(4476), [sym_abstract] = ACTIONS(4476), [sym_alias] = ACTIONS(4476), [sym_align] = ACTIONS(4476), [sym_asm] = ACTIONS(4476), [sym_assert] = ACTIONS(4476), [sym_auto] = ACTIONS(4476), [sym_break] = ACTIONS(4476), [sym_case] = ACTIONS(4476), [sym_cast] = ACTIONS(4476), [sym_catch] = ACTIONS(4476), [sym_class] = ACTIONS(4476), [sym_const] = ACTIONS(4476), [sym_continue] = ACTIONS(4476), [sym_debug] = ACTIONS(4476), [sym_default] = ACTIONS(4476), [sym_delegate] = ACTIONS(4476), [sym_delete] = ACTIONS(4476), [sym_deprecated] = ACTIONS(4476), [sym_do] = ACTIONS(4476), [sym_else] = ACTIONS(4476), [sym_enum] = ACTIONS(4476), [sym_export] = ACTIONS(4476), [sym_extern] = ACTIONS(4476), [sym_final] = ACTIONS(4476), [sym_finally] = ACTIONS(4476), [sym_for] = ACTIONS(4476), [sym_foreach] = ACTIONS(4476), [sym_foreach_reverse] = ACTIONS(4476), [sym_function] = ACTIONS(4476), [sym_goto] = ACTIONS(4476), [sym_if] = ACTIONS(4476), [sym_immutable] = ACTIONS(4476), [sym_import] = ACTIONS(4476), [sym_in] = ACTIONS(4476), [sym_inout] = ACTIONS(4476), [sym_interface] = ACTIONS(4476), [sym_invariant] = ACTIONS(4476), [sym_is] = ACTIONS(4476), [sym_mixin] = ACTIONS(4476), [sym_new] = ACTIONS(4476), [sym_nothrow] = ACTIONS(4476), [sym_out] = ACTIONS(4476), [sym_override] = ACTIONS(4476), [sym_package] = ACTIONS(4476), [sym_pragma] = ACTIONS(4476), [sym_private] = ACTIONS(4476), [sym_protected] = ACTIONS(4476), [sym_public] = ACTIONS(4476), [sym_pure] = ACTIONS(4476), [sym_ref] = ACTIONS(4476), [sym_return] = ACTIONS(4476), [sym_scope] = ACTIONS(4476), [sym_shared] = ACTIONS(4476), [sym_static] = ACTIONS(4476), [sym_struct] = ACTIONS(4476), [sym_switch] = ACTIONS(4476), [sym_synchronized] = ACTIONS(4476), [sym_template] = ACTIONS(4476), [sym_throw] = ACTIONS(4476), [sym_try] = ACTIONS(4476), [sym_typeid] = ACTIONS(4476), [sym_typeof] = ACTIONS(4476), [sym_union] = ACTIONS(4476), [sym_unittest] = ACTIONS(4476), [sym_version] = ACTIONS(4476), [sym_while] = ACTIONS(4476), [sym_with] = ACTIONS(4476), [sym_gshared] = ACTIONS(4476), [sym_traits] = ACTIONS(4476), [sym_vector] = ACTIONS(4476), [sym_void] = ACTIONS(4476), [anon_sym_BQUOTE] = ACTIONS(4478), [anon_sym_r_DQUOTE] = ACTIONS(4478), [anon_sym_x_DQUOTE] = ACTIONS(4478), [anon_sym_DQUOTE] = ACTIONS(4478), [anon_sym_i_BQUOTE] = ACTIONS(4478), [anon_sym_i_DQUOTE] = ACTIONS(4478), [anon_sym_iq_LBRACE] = ACTIONS(4478), [aux_sym_char_literal_token1] = ACTIONS(4478), [anon_sym_SQUOTE] = ACTIONS(4476), [anon_sym___DATE__] = ACTIONS(4476), [anon_sym___FILE__] = ACTIONS(4476), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4476), [anon_sym___FUNCTION__] = ACTIONS(4476), [anon_sym___LINE__] = ACTIONS(4476), [anon_sym___MODULE__] = ACTIONS(4476), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4476), [anon_sym___TIME__] = ACTIONS(4476), [anon_sym___TIMESTAMP__] = ACTIONS(4476), [anon_sym___VENDOR__] = ACTIONS(4476), [anon_sym___VERSION__] = ACTIONS(4476), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4478), [sym_float_literal] = ACTIONS(4478), [sym__string] = ACTIONS(4478), }, [1399] = { [sym_identifier] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(2643), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2643), [anon_sym_AT] = ACTIONS(2643), [sym_bool] = ACTIONS(2645), [sym_byte] = ACTIONS(2645), [sym_ubyte] = ACTIONS(2645), [sym_char] = ACTIONS(2645), [sym_short] = ACTIONS(2645), [sym_ushort] = ACTIONS(2645), [sym_int] = ACTIONS(2645), [sym_uint] = ACTIONS(2645), [sym_long] = ACTIONS(2645), [sym_ulong] = ACTIONS(2645), [sym_cent] = ACTIONS(2645), [sym_ucent] = ACTIONS(2645), [sym_wchar] = ACTIONS(2645), [sym_dchar] = ACTIONS(2645), [sym_float] = ACTIONS(2645), [sym_double] = ACTIONS(2645), [sym_real] = ACTIONS(2645), [sym_ifloat] = ACTIONS(2645), [sym_idouble] = ACTIONS(2645), [sym_ireal] = ACTIONS(2645), [sym_cfloat] = ACTIONS(2645), [sym_cdouble] = ACTIONS(2645), [sym_creal] = ACTIONS(2645), [sym_size_t] = ACTIONS(2645), [sym_ptrdiff_t] = ACTIONS(2645), [sym_string] = ACTIONS(2645), [sym_cstring] = ACTIONS(2645), [sym_dstring] = ACTIONS(2645), [sym_wstring] = ACTIONS(2645), [sym_noreturn] = ACTIONS(2645), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2645), [sym_abstract] = ACTIONS(2645), [sym_alias] = ACTIONS(2645), [sym_align] = ACTIONS(2645), [sym_asm] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(2645), [sym_break] = ACTIONS(2645), [sym_case] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_catch] = ACTIONS(2645), [sym_class] = ACTIONS(2645), [sym_const] = ACTIONS(2645), [sym_continue] = ACTIONS(2645), [sym_debug] = ACTIONS(2645), [sym_default] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_deprecated] = ACTIONS(2645), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(2645), [sym_export] = ACTIONS(2645), [sym_extern] = ACTIONS(2645), [sym_final] = ACTIONS(2645), [sym_finally] = ACTIONS(2645), [sym_for] = ACTIONS(2645), [sym_foreach] = ACTIONS(2645), [sym_foreach_reverse] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_goto] = ACTIONS(2645), [sym_if] = ACTIONS(2645), [sym_immutable] = ACTIONS(2645), [sym_import] = ACTIONS(2645), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(2645), [sym_interface] = ACTIONS(2645), [sym_invariant] = ACTIONS(2645), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2645), [sym_new] = ACTIONS(2645), [sym_nothrow] = ACTIONS(2645), [sym_out] = ACTIONS(2645), [sym_override] = ACTIONS(2645), [sym_package] = ACTIONS(2645), [sym_pragma] = ACTIONS(2645), [sym_private] = ACTIONS(2645), [sym_protected] = ACTIONS(2645), [sym_public] = ACTIONS(2645), [sym_pure] = ACTIONS(2645), [sym_ref] = ACTIONS(2645), [sym_return] = ACTIONS(2645), [sym_scope] = ACTIONS(2645), [sym_shared] = ACTIONS(2645), [sym_static] = ACTIONS(2645), [sym_struct] = ACTIONS(2645), [sym_switch] = ACTIONS(2645), [sym_synchronized] = ACTIONS(2645), [sym_template] = ACTIONS(2645), [sym_throw] = ACTIONS(2645), [sym_try] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(2645), [sym_union] = ACTIONS(2645), [sym_unittest] = ACTIONS(2645), [sym_version] = ACTIONS(2645), [sym_while] = ACTIONS(2645), [sym_with] = ACTIONS(2645), [sym_gshared] = ACTIONS(2645), [sym_traits] = ACTIONS(2645), [sym_vector] = ACTIONS(2645), [sym_void] = ACTIONS(2645), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [1400] = { [sym_identifier] = ACTIONS(4480), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4482), [anon_sym_RBRACE] = ACTIONS(4482), [anon_sym_LBRACE] = ACTIONS(4482), [anon_sym_DOT] = ACTIONS(4482), [anon_sym_AMP] = ACTIONS(4482), [anon_sym_DASH] = ACTIONS(4480), [anon_sym_DASH_DASH] = ACTIONS(4482), [anon_sym_PLUS] = ACTIONS(4480), [anon_sym_PLUS_PLUS] = ACTIONS(4482), [anon_sym_BANG] = ACTIONS(4482), [anon_sym_LPAREN] = ACTIONS(4482), [anon_sym_RPAREN] = ACTIONS(4482), [anon_sym_LBRACK] = ACTIONS(4482), [anon_sym_SEMI] = ACTIONS(4482), [anon_sym_DOLLAR] = ACTIONS(4482), [anon_sym_STAR] = ACTIONS(4482), [anon_sym_TILDE] = ACTIONS(4482), [anon_sym_AT] = ACTIONS(4482), [sym_bool] = ACTIONS(4480), [sym_byte] = ACTIONS(4480), [sym_ubyte] = ACTIONS(4480), [sym_char] = ACTIONS(4480), [sym_short] = ACTIONS(4480), [sym_ushort] = ACTIONS(4480), [sym_int] = ACTIONS(4480), [sym_uint] = ACTIONS(4480), [sym_long] = ACTIONS(4480), [sym_ulong] = ACTIONS(4480), [sym_cent] = ACTIONS(4480), [sym_ucent] = ACTIONS(4480), [sym_wchar] = ACTIONS(4480), [sym_dchar] = ACTIONS(4480), [sym_float] = ACTIONS(4480), [sym_double] = ACTIONS(4480), [sym_real] = ACTIONS(4480), [sym_ifloat] = ACTIONS(4480), [sym_idouble] = ACTIONS(4480), [sym_ireal] = ACTIONS(4480), [sym_cfloat] = ACTIONS(4480), [sym_cdouble] = ACTIONS(4480), [sym_creal] = ACTIONS(4480), [sym_size_t] = ACTIONS(4480), [sym_ptrdiff_t] = ACTIONS(4480), [sym_string] = ACTIONS(4480), [sym_cstring] = ACTIONS(4480), [sym_dstring] = ACTIONS(4480), [sym_wstring] = ACTIONS(4480), [sym_noreturn] = ACTIONS(4480), [sym_true] = ACTIONS(4480), [sym_false] = ACTIONS(4480), [sym_null] = ACTIONS(4480), [sym_super] = ACTIONS(4480), [sym_this] = ACTIONS(4480), [sym_abstract] = ACTIONS(4480), [sym_alias] = ACTIONS(4480), [sym_align] = ACTIONS(4480), [sym_asm] = ACTIONS(4480), [sym_assert] = ACTIONS(4480), [sym_auto] = ACTIONS(4480), [sym_break] = ACTIONS(4480), [sym_case] = ACTIONS(4480), [sym_cast] = ACTIONS(4480), [sym_catch] = ACTIONS(4480), [sym_class] = ACTIONS(4480), [sym_const] = ACTIONS(4480), [sym_continue] = ACTIONS(4480), [sym_debug] = ACTIONS(4480), [sym_default] = ACTIONS(4480), [sym_delegate] = ACTIONS(4480), [sym_delete] = ACTIONS(4480), [sym_deprecated] = ACTIONS(4480), [sym_do] = ACTIONS(4480), [sym_else] = ACTIONS(4480), [sym_enum] = ACTIONS(4480), [sym_export] = ACTIONS(4480), [sym_extern] = ACTIONS(4480), [sym_final] = ACTIONS(4480), [sym_finally] = ACTIONS(4480), [sym_for] = ACTIONS(4480), [sym_foreach] = ACTIONS(4480), [sym_foreach_reverse] = ACTIONS(4480), [sym_function] = ACTIONS(4480), [sym_goto] = ACTIONS(4480), [sym_if] = ACTIONS(4480), [sym_immutable] = ACTIONS(4480), [sym_import] = ACTIONS(4480), [sym_in] = ACTIONS(4480), [sym_inout] = ACTIONS(4480), [sym_interface] = ACTIONS(4480), [sym_invariant] = ACTIONS(4480), [sym_is] = ACTIONS(4480), [sym_mixin] = ACTIONS(4480), [sym_new] = ACTIONS(4480), [sym_nothrow] = ACTIONS(4480), [sym_out] = ACTIONS(4480), [sym_override] = ACTIONS(4480), [sym_package] = ACTIONS(4480), [sym_pragma] = ACTIONS(4480), [sym_private] = ACTIONS(4480), [sym_protected] = ACTIONS(4480), [sym_public] = ACTIONS(4480), [sym_pure] = ACTIONS(4480), [sym_ref] = ACTIONS(4480), [sym_return] = ACTIONS(4480), [sym_scope] = ACTIONS(4480), [sym_shared] = ACTIONS(4480), [sym_static] = ACTIONS(4480), [sym_struct] = ACTIONS(4480), [sym_switch] = ACTIONS(4480), [sym_synchronized] = ACTIONS(4480), [sym_template] = ACTIONS(4480), [sym_throw] = ACTIONS(4480), [sym_try] = ACTIONS(4480), [sym_typeid] = ACTIONS(4480), [sym_typeof] = ACTIONS(4480), [sym_union] = ACTIONS(4480), [sym_unittest] = ACTIONS(4480), [sym_version] = ACTIONS(4480), [sym_while] = ACTIONS(4480), [sym_with] = ACTIONS(4480), [sym_gshared] = ACTIONS(4480), [sym_traits] = ACTIONS(4480), [sym_vector] = ACTIONS(4480), [sym_void] = ACTIONS(4480), [anon_sym_BQUOTE] = ACTIONS(4482), [anon_sym_r_DQUOTE] = ACTIONS(4482), [anon_sym_x_DQUOTE] = ACTIONS(4482), [anon_sym_DQUOTE] = ACTIONS(4482), [anon_sym_i_BQUOTE] = ACTIONS(4482), [anon_sym_i_DQUOTE] = ACTIONS(4482), [anon_sym_iq_LBRACE] = ACTIONS(4482), [aux_sym_char_literal_token1] = ACTIONS(4482), [anon_sym_SQUOTE] = ACTIONS(4480), [anon_sym___DATE__] = ACTIONS(4480), [anon_sym___FILE__] = ACTIONS(4480), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4480), [anon_sym___FUNCTION__] = ACTIONS(4480), [anon_sym___LINE__] = ACTIONS(4480), [anon_sym___MODULE__] = ACTIONS(4480), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4480), [anon_sym___TIME__] = ACTIONS(4480), [anon_sym___TIMESTAMP__] = ACTIONS(4480), [anon_sym___VENDOR__] = ACTIONS(4480), [anon_sym___VERSION__] = ACTIONS(4480), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4482), [sym_float_literal] = ACTIONS(4482), [sym__string] = ACTIONS(4482), }, [1401] = { [sym_identifier] = ACTIONS(4484), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4486), [anon_sym_RBRACE] = ACTIONS(4486), [anon_sym_LBRACE] = ACTIONS(4486), [anon_sym_DOT] = ACTIONS(4486), [anon_sym_AMP] = ACTIONS(4486), [anon_sym_DASH] = ACTIONS(4484), [anon_sym_DASH_DASH] = ACTIONS(4486), [anon_sym_PLUS] = ACTIONS(4484), [anon_sym_PLUS_PLUS] = ACTIONS(4486), [anon_sym_BANG] = ACTIONS(4486), [anon_sym_LPAREN] = ACTIONS(4486), [anon_sym_RPAREN] = ACTIONS(4486), [anon_sym_LBRACK] = ACTIONS(4486), [anon_sym_SEMI] = ACTIONS(4486), [anon_sym_DOLLAR] = ACTIONS(4486), [anon_sym_STAR] = ACTIONS(4486), [anon_sym_TILDE] = ACTIONS(4486), [anon_sym_AT] = ACTIONS(4486), [sym_bool] = ACTIONS(4484), [sym_byte] = ACTIONS(4484), [sym_ubyte] = ACTIONS(4484), [sym_char] = ACTIONS(4484), [sym_short] = ACTIONS(4484), [sym_ushort] = ACTIONS(4484), [sym_int] = ACTIONS(4484), [sym_uint] = ACTIONS(4484), [sym_long] = ACTIONS(4484), [sym_ulong] = ACTIONS(4484), [sym_cent] = ACTIONS(4484), [sym_ucent] = ACTIONS(4484), [sym_wchar] = ACTIONS(4484), [sym_dchar] = ACTIONS(4484), [sym_float] = ACTIONS(4484), [sym_double] = ACTIONS(4484), [sym_real] = ACTIONS(4484), [sym_ifloat] = ACTIONS(4484), [sym_idouble] = ACTIONS(4484), [sym_ireal] = ACTIONS(4484), [sym_cfloat] = ACTIONS(4484), [sym_cdouble] = ACTIONS(4484), [sym_creal] = ACTIONS(4484), [sym_size_t] = ACTIONS(4484), [sym_ptrdiff_t] = ACTIONS(4484), [sym_string] = ACTIONS(4484), [sym_cstring] = ACTIONS(4484), [sym_dstring] = ACTIONS(4484), [sym_wstring] = ACTIONS(4484), [sym_noreturn] = ACTIONS(4484), [sym_true] = ACTIONS(4484), [sym_false] = ACTIONS(4484), [sym_null] = ACTIONS(4484), [sym_super] = ACTIONS(4484), [sym_this] = ACTIONS(4484), [sym_abstract] = ACTIONS(4484), [sym_alias] = ACTIONS(4484), [sym_align] = ACTIONS(4484), [sym_asm] = ACTIONS(4484), [sym_assert] = ACTIONS(4484), [sym_auto] = ACTIONS(4484), [sym_break] = ACTIONS(4484), [sym_case] = ACTIONS(4484), [sym_cast] = ACTIONS(4484), [sym_catch] = ACTIONS(4484), [sym_class] = ACTIONS(4484), [sym_const] = ACTIONS(4484), [sym_continue] = ACTIONS(4484), [sym_debug] = ACTIONS(4484), [sym_default] = ACTIONS(4484), [sym_delegate] = ACTIONS(4484), [sym_delete] = ACTIONS(4484), [sym_deprecated] = ACTIONS(4484), [sym_do] = ACTIONS(4484), [sym_else] = ACTIONS(4484), [sym_enum] = ACTIONS(4484), [sym_export] = ACTIONS(4484), [sym_extern] = ACTIONS(4484), [sym_final] = ACTIONS(4484), [sym_finally] = ACTIONS(4484), [sym_for] = ACTIONS(4484), [sym_foreach] = ACTIONS(4484), [sym_foreach_reverse] = ACTIONS(4484), [sym_function] = ACTIONS(4484), [sym_goto] = ACTIONS(4484), [sym_if] = ACTIONS(4484), [sym_immutable] = ACTIONS(4484), [sym_import] = ACTIONS(4484), [sym_in] = ACTIONS(4484), [sym_inout] = ACTIONS(4484), [sym_interface] = ACTIONS(4484), [sym_invariant] = ACTIONS(4484), [sym_is] = ACTIONS(4484), [sym_mixin] = ACTIONS(4484), [sym_new] = ACTIONS(4484), [sym_nothrow] = ACTIONS(4484), [sym_out] = ACTIONS(4484), [sym_override] = ACTIONS(4484), [sym_package] = ACTIONS(4484), [sym_pragma] = ACTIONS(4484), [sym_private] = ACTIONS(4484), [sym_protected] = ACTIONS(4484), [sym_public] = ACTIONS(4484), [sym_pure] = ACTIONS(4484), [sym_ref] = ACTIONS(4484), [sym_return] = ACTIONS(4484), [sym_scope] = ACTIONS(4484), [sym_shared] = ACTIONS(4484), [sym_static] = ACTIONS(4484), [sym_struct] = ACTIONS(4484), [sym_switch] = ACTIONS(4484), [sym_synchronized] = ACTIONS(4484), [sym_template] = ACTIONS(4484), [sym_throw] = ACTIONS(4484), [sym_try] = ACTIONS(4484), [sym_typeid] = ACTIONS(4484), [sym_typeof] = ACTIONS(4484), [sym_union] = ACTIONS(4484), [sym_unittest] = ACTIONS(4484), [sym_version] = ACTIONS(4484), [sym_while] = ACTIONS(4484), [sym_with] = ACTIONS(4484), [sym_gshared] = ACTIONS(4484), [sym_traits] = ACTIONS(4484), [sym_vector] = ACTIONS(4484), [sym_void] = ACTIONS(4484), [anon_sym_BQUOTE] = ACTIONS(4486), [anon_sym_r_DQUOTE] = ACTIONS(4486), [anon_sym_x_DQUOTE] = ACTIONS(4486), [anon_sym_DQUOTE] = ACTIONS(4486), [anon_sym_i_BQUOTE] = ACTIONS(4486), [anon_sym_i_DQUOTE] = ACTIONS(4486), [anon_sym_iq_LBRACE] = ACTIONS(4486), [aux_sym_char_literal_token1] = ACTIONS(4486), [anon_sym_SQUOTE] = ACTIONS(4484), [anon_sym___DATE__] = ACTIONS(4484), [anon_sym___FILE__] = ACTIONS(4484), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4484), [anon_sym___FUNCTION__] = ACTIONS(4484), [anon_sym___LINE__] = ACTIONS(4484), [anon_sym___MODULE__] = ACTIONS(4484), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4484), [anon_sym___TIME__] = ACTIONS(4484), [anon_sym___TIMESTAMP__] = ACTIONS(4484), [anon_sym___VENDOR__] = ACTIONS(4484), [anon_sym___VERSION__] = ACTIONS(4484), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4486), [sym_float_literal] = ACTIONS(4486), [sym__string] = ACTIONS(4486), }, [1402] = { [sym_identifier] = ACTIONS(4488), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4490), [anon_sym_RBRACE] = ACTIONS(4490), [anon_sym_LBRACE] = ACTIONS(4490), [anon_sym_DOT] = ACTIONS(4490), [anon_sym_AMP] = ACTIONS(4490), [anon_sym_DASH] = ACTIONS(4488), [anon_sym_DASH_DASH] = ACTIONS(4490), [anon_sym_PLUS] = ACTIONS(4488), [anon_sym_PLUS_PLUS] = ACTIONS(4490), [anon_sym_BANG] = ACTIONS(4490), [anon_sym_LPAREN] = ACTIONS(4490), [anon_sym_RPAREN] = ACTIONS(4490), [anon_sym_LBRACK] = ACTIONS(4490), [anon_sym_SEMI] = ACTIONS(4490), [anon_sym_DOLLAR] = ACTIONS(4490), [anon_sym_STAR] = ACTIONS(4490), [anon_sym_TILDE] = ACTIONS(4490), [anon_sym_AT] = ACTIONS(4490), [sym_bool] = ACTIONS(4488), [sym_byte] = ACTIONS(4488), [sym_ubyte] = ACTIONS(4488), [sym_char] = ACTIONS(4488), [sym_short] = ACTIONS(4488), [sym_ushort] = ACTIONS(4488), [sym_int] = ACTIONS(4488), [sym_uint] = ACTIONS(4488), [sym_long] = ACTIONS(4488), [sym_ulong] = ACTIONS(4488), [sym_cent] = ACTIONS(4488), [sym_ucent] = ACTIONS(4488), [sym_wchar] = ACTIONS(4488), [sym_dchar] = ACTIONS(4488), [sym_float] = ACTIONS(4488), [sym_double] = ACTIONS(4488), [sym_real] = ACTIONS(4488), [sym_ifloat] = ACTIONS(4488), [sym_idouble] = ACTIONS(4488), [sym_ireal] = ACTIONS(4488), [sym_cfloat] = ACTIONS(4488), [sym_cdouble] = ACTIONS(4488), [sym_creal] = ACTIONS(4488), [sym_size_t] = ACTIONS(4488), [sym_ptrdiff_t] = ACTIONS(4488), [sym_string] = ACTIONS(4488), [sym_cstring] = ACTIONS(4488), [sym_dstring] = ACTIONS(4488), [sym_wstring] = ACTIONS(4488), [sym_noreturn] = ACTIONS(4488), [sym_true] = ACTIONS(4488), [sym_false] = ACTIONS(4488), [sym_null] = ACTIONS(4488), [sym_super] = ACTIONS(4488), [sym_this] = ACTIONS(4488), [sym_abstract] = ACTIONS(4488), [sym_alias] = ACTIONS(4488), [sym_align] = ACTIONS(4488), [sym_asm] = ACTIONS(4488), [sym_assert] = ACTIONS(4488), [sym_auto] = ACTIONS(4488), [sym_break] = ACTIONS(4488), [sym_case] = ACTIONS(4488), [sym_cast] = ACTIONS(4488), [sym_catch] = ACTIONS(4488), [sym_class] = ACTIONS(4488), [sym_const] = ACTIONS(4488), [sym_continue] = ACTIONS(4488), [sym_debug] = ACTIONS(4488), [sym_default] = ACTIONS(4488), [sym_delegate] = ACTIONS(4488), [sym_delete] = ACTIONS(4488), [sym_deprecated] = ACTIONS(4488), [sym_do] = ACTIONS(4488), [sym_else] = ACTIONS(4488), [sym_enum] = ACTIONS(4488), [sym_export] = ACTIONS(4488), [sym_extern] = ACTIONS(4488), [sym_final] = ACTIONS(4488), [sym_finally] = ACTIONS(4488), [sym_for] = ACTIONS(4488), [sym_foreach] = ACTIONS(4488), [sym_foreach_reverse] = ACTIONS(4488), [sym_function] = ACTIONS(4488), [sym_goto] = ACTIONS(4488), [sym_if] = ACTIONS(4488), [sym_immutable] = ACTIONS(4488), [sym_import] = ACTIONS(4488), [sym_in] = ACTIONS(4488), [sym_inout] = ACTIONS(4488), [sym_interface] = ACTIONS(4488), [sym_invariant] = ACTIONS(4488), [sym_is] = ACTIONS(4488), [sym_mixin] = ACTIONS(4488), [sym_new] = ACTIONS(4488), [sym_nothrow] = ACTIONS(4488), [sym_out] = ACTIONS(4488), [sym_override] = ACTIONS(4488), [sym_package] = ACTIONS(4488), [sym_pragma] = ACTIONS(4488), [sym_private] = ACTIONS(4488), [sym_protected] = ACTIONS(4488), [sym_public] = ACTIONS(4488), [sym_pure] = ACTIONS(4488), [sym_ref] = ACTIONS(4488), [sym_return] = ACTIONS(4488), [sym_scope] = ACTIONS(4488), [sym_shared] = ACTIONS(4488), [sym_static] = ACTIONS(4488), [sym_struct] = ACTIONS(4488), [sym_switch] = ACTIONS(4488), [sym_synchronized] = ACTIONS(4488), [sym_template] = ACTIONS(4488), [sym_throw] = ACTIONS(4488), [sym_try] = ACTIONS(4488), [sym_typeid] = ACTIONS(4488), [sym_typeof] = ACTIONS(4488), [sym_union] = ACTIONS(4488), [sym_unittest] = ACTIONS(4488), [sym_version] = ACTIONS(4488), [sym_while] = ACTIONS(4488), [sym_with] = ACTIONS(4488), [sym_gshared] = ACTIONS(4488), [sym_traits] = ACTIONS(4488), [sym_vector] = ACTIONS(4488), [sym_void] = ACTIONS(4488), [anon_sym_BQUOTE] = ACTIONS(4490), [anon_sym_r_DQUOTE] = ACTIONS(4490), [anon_sym_x_DQUOTE] = ACTIONS(4490), [anon_sym_DQUOTE] = ACTIONS(4490), [anon_sym_i_BQUOTE] = ACTIONS(4490), [anon_sym_i_DQUOTE] = ACTIONS(4490), [anon_sym_iq_LBRACE] = ACTIONS(4490), [aux_sym_char_literal_token1] = ACTIONS(4490), [anon_sym_SQUOTE] = ACTIONS(4488), [anon_sym___DATE__] = ACTIONS(4488), [anon_sym___FILE__] = ACTIONS(4488), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4488), [anon_sym___FUNCTION__] = ACTIONS(4488), [anon_sym___LINE__] = ACTIONS(4488), [anon_sym___MODULE__] = ACTIONS(4488), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4488), [anon_sym___TIME__] = ACTIONS(4488), [anon_sym___TIMESTAMP__] = ACTIONS(4488), [anon_sym___VENDOR__] = ACTIONS(4488), [anon_sym___VERSION__] = ACTIONS(4488), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4490), [sym_float_literal] = ACTIONS(4490), [sym__string] = ACTIONS(4490), }, [1403] = { [sym_identifier] = ACTIONS(4492), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4494), [anon_sym_RBRACE] = ACTIONS(4494), [anon_sym_LBRACE] = ACTIONS(4494), [anon_sym_DOT] = ACTIONS(4494), [anon_sym_AMP] = ACTIONS(4494), [anon_sym_DASH] = ACTIONS(4492), [anon_sym_DASH_DASH] = ACTIONS(4494), [anon_sym_PLUS] = ACTIONS(4492), [anon_sym_PLUS_PLUS] = ACTIONS(4494), [anon_sym_BANG] = ACTIONS(4494), [anon_sym_LPAREN] = ACTIONS(4494), [anon_sym_RPAREN] = ACTIONS(4494), [anon_sym_LBRACK] = ACTIONS(4494), [anon_sym_SEMI] = ACTIONS(4494), [anon_sym_DOLLAR] = ACTIONS(4494), [anon_sym_STAR] = ACTIONS(4494), [anon_sym_TILDE] = ACTIONS(4494), [anon_sym_AT] = ACTIONS(4494), [sym_bool] = ACTIONS(4492), [sym_byte] = ACTIONS(4492), [sym_ubyte] = ACTIONS(4492), [sym_char] = ACTIONS(4492), [sym_short] = ACTIONS(4492), [sym_ushort] = ACTIONS(4492), [sym_int] = ACTIONS(4492), [sym_uint] = ACTIONS(4492), [sym_long] = ACTIONS(4492), [sym_ulong] = ACTIONS(4492), [sym_cent] = ACTIONS(4492), [sym_ucent] = ACTIONS(4492), [sym_wchar] = ACTIONS(4492), [sym_dchar] = ACTIONS(4492), [sym_float] = ACTIONS(4492), [sym_double] = ACTIONS(4492), [sym_real] = ACTIONS(4492), [sym_ifloat] = ACTIONS(4492), [sym_idouble] = ACTIONS(4492), [sym_ireal] = ACTIONS(4492), [sym_cfloat] = ACTIONS(4492), [sym_cdouble] = ACTIONS(4492), [sym_creal] = ACTIONS(4492), [sym_size_t] = ACTIONS(4492), [sym_ptrdiff_t] = ACTIONS(4492), [sym_string] = ACTIONS(4492), [sym_cstring] = ACTIONS(4492), [sym_dstring] = ACTIONS(4492), [sym_wstring] = ACTIONS(4492), [sym_noreturn] = ACTIONS(4492), [sym_true] = ACTIONS(4492), [sym_false] = ACTIONS(4492), [sym_null] = ACTIONS(4492), [sym_super] = ACTIONS(4492), [sym_this] = ACTIONS(4492), [sym_abstract] = ACTIONS(4492), [sym_alias] = ACTIONS(4492), [sym_align] = ACTIONS(4492), [sym_asm] = ACTIONS(4492), [sym_assert] = ACTIONS(4492), [sym_auto] = ACTIONS(4492), [sym_break] = ACTIONS(4492), [sym_case] = ACTIONS(4492), [sym_cast] = ACTIONS(4492), [sym_catch] = ACTIONS(4492), [sym_class] = ACTIONS(4492), [sym_const] = ACTIONS(4492), [sym_continue] = ACTIONS(4492), [sym_debug] = ACTIONS(4492), [sym_default] = ACTIONS(4492), [sym_delegate] = ACTIONS(4492), [sym_delete] = ACTIONS(4492), [sym_deprecated] = ACTIONS(4492), [sym_do] = ACTIONS(4492), [sym_else] = ACTIONS(4492), [sym_enum] = ACTIONS(4492), [sym_export] = ACTIONS(4492), [sym_extern] = ACTIONS(4492), [sym_final] = ACTIONS(4492), [sym_finally] = ACTIONS(4492), [sym_for] = ACTIONS(4492), [sym_foreach] = ACTIONS(4492), [sym_foreach_reverse] = ACTIONS(4492), [sym_function] = ACTIONS(4492), [sym_goto] = ACTIONS(4492), [sym_if] = ACTIONS(4492), [sym_immutable] = ACTIONS(4492), [sym_import] = ACTIONS(4492), [sym_in] = ACTIONS(4492), [sym_inout] = ACTIONS(4492), [sym_interface] = ACTIONS(4492), [sym_invariant] = ACTIONS(4492), [sym_is] = ACTIONS(4492), [sym_mixin] = ACTIONS(4492), [sym_new] = ACTIONS(4492), [sym_nothrow] = ACTIONS(4492), [sym_out] = ACTIONS(4492), [sym_override] = ACTIONS(4492), [sym_package] = ACTIONS(4492), [sym_pragma] = ACTIONS(4492), [sym_private] = ACTIONS(4492), [sym_protected] = ACTIONS(4492), [sym_public] = ACTIONS(4492), [sym_pure] = ACTIONS(4492), [sym_ref] = ACTIONS(4492), [sym_return] = ACTIONS(4492), [sym_scope] = ACTIONS(4492), [sym_shared] = ACTIONS(4492), [sym_static] = ACTIONS(4492), [sym_struct] = ACTIONS(4492), [sym_switch] = ACTIONS(4492), [sym_synchronized] = ACTIONS(4492), [sym_template] = ACTIONS(4492), [sym_throw] = ACTIONS(4492), [sym_try] = ACTIONS(4492), [sym_typeid] = ACTIONS(4492), [sym_typeof] = ACTIONS(4492), [sym_union] = ACTIONS(4492), [sym_unittest] = ACTIONS(4492), [sym_version] = ACTIONS(4492), [sym_while] = ACTIONS(4492), [sym_with] = ACTIONS(4492), [sym_gshared] = ACTIONS(4492), [sym_traits] = ACTIONS(4492), [sym_vector] = ACTIONS(4492), [sym_void] = ACTIONS(4492), [anon_sym_BQUOTE] = ACTIONS(4494), [anon_sym_r_DQUOTE] = ACTIONS(4494), [anon_sym_x_DQUOTE] = ACTIONS(4494), [anon_sym_DQUOTE] = ACTIONS(4494), [anon_sym_i_BQUOTE] = ACTIONS(4494), [anon_sym_i_DQUOTE] = ACTIONS(4494), [anon_sym_iq_LBRACE] = ACTIONS(4494), [aux_sym_char_literal_token1] = ACTIONS(4494), [anon_sym_SQUOTE] = ACTIONS(4492), [anon_sym___DATE__] = ACTIONS(4492), [anon_sym___FILE__] = ACTIONS(4492), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4492), [anon_sym___FUNCTION__] = ACTIONS(4492), [anon_sym___LINE__] = ACTIONS(4492), [anon_sym___MODULE__] = ACTIONS(4492), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4492), [anon_sym___TIME__] = ACTIONS(4492), [anon_sym___TIMESTAMP__] = ACTIONS(4492), [anon_sym___VENDOR__] = ACTIONS(4492), [anon_sym___VERSION__] = ACTIONS(4492), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4494), [sym_float_literal] = ACTIONS(4494), [sym__string] = ACTIONS(4494), }, [1404] = { [sym_identifier] = ACTIONS(4496), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4498), [anon_sym_RBRACE] = ACTIONS(4498), [anon_sym_LBRACE] = ACTIONS(4498), [anon_sym_DOT] = ACTIONS(4498), [anon_sym_AMP] = ACTIONS(4498), [anon_sym_DASH] = ACTIONS(4496), [anon_sym_DASH_DASH] = ACTIONS(4498), [anon_sym_PLUS] = ACTIONS(4496), [anon_sym_PLUS_PLUS] = ACTIONS(4498), [anon_sym_BANG] = ACTIONS(4498), [anon_sym_LPAREN] = ACTIONS(4498), [anon_sym_RPAREN] = ACTIONS(4498), [anon_sym_LBRACK] = ACTIONS(4498), [anon_sym_SEMI] = ACTIONS(4498), [anon_sym_DOLLAR] = ACTIONS(4498), [anon_sym_STAR] = ACTIONS(4498), [anon_sym_TILDE] = ACTIONS(4498), [anon_sym_AT] = ACTIONS(4498), [sym_bool] = ACTIONS(4496), [sym_byte] = ACTIONS(4496), [sym_ubyte] = ACTIONS(4496), [sym_char] = ACTIONS(4496), [sym_short] = ACTIONS(4496), [sym_ushort] = ACTIONS(4496), [sym_int] = ACTIONS(4496), [sym_uint] = ACTIONS(4496), [sym_long] = ACTIONS(4496), [sym_ulong] = ACTIONS(4496), [sym_cent] = ACTIONS(4496), [sym_ucent] = ACTIONS(4496), [sym_wchar] = ACTIONS(4496), [sym_dchar] = ACTIONS(4496), [sym_float] = ACTIONS(4496), [sym_double] = ACTIONS(4496), [sym_real] = ACTIONS(4496), [sym_ifloat] = ACTIONS(4496), [sym_idouble] = ACTIONS(4496), [sym_ireal] = ACTIONS(4496), [sym_cfloat] = ACTIONS(4496), [sym_cdouble] = ACTIONS(4496), [sym_creal] = ACTIONS(4496), [sym_size_t] = ACTIONS(4496), [sym_ptrdiff_t] = ACTIONS(4496), [sym_string] = ACTIONS(4496), [sym_cstring] = ACTIONS(4496), [sym_dstring] = ACTIONS(4496), [sym_wstring] = ACTIONS(4496), [sym_noreturn] = ACTIONS(4496), [sym_true] = ACTIONS(4496), [sym_false] = ACTIONS(4496), [sym_null] = ACTIONS(4496), [sym_super] = ACTIONS(4496), [sym_this] = ACTIONS(4496), [sym_abstract] = ACTIONS(4496), [sym_alias] = ACTIONS(4496), [sym_align] = ACTIONS(4496), [sym_asm] = ACTIONS(4496), [sym_assert] = ACTIONS(4496), [sym_auto] = ACTIONS(4496), [sym_break] = ACTIONS(4496), [sym_case] = ACTIONS(4496), [sym_cast] = ACTIONS(4496), [sym_catch] = ACTIONS(4496), [sym_class] = ACTIONS(4496), [sym_const] = ACTIONS(4496), [sym_continue] = ACTIONS(4496), [sym_debug] = ACTIONS(4496), [sym_default] = ACTIONS(4496), [sym_delegate] = ACTIONS(4496), [sym_delete] = ACTIONS(4496), [sym_deprecated] = ACTIONS(4496), [sym_do] = ACTIONS(4496), [sym_else] = ACTIONS(4496), [sym_enum] = ACTIONS(4496), [sym_export] = ACTIONS(4496), [sym_extern] = ACTIONS(4496), [sym_final] = ACTIONS(4496), [sym_finally] = ACTIONS(4496), [sym_for] = ACTIONS(4496), [sym_foreach] = ACTIONS(4496), [sym_foreach_reverse] = ACTIONS(4496), [sym_function] = ACTIONS(4496), [sym_goto] = ACTIONS(4496), [sym_if] = ACTIONS(4496), [sym_immutable] = ACTIONS(4496), [sym_import] = ACTIONS(4496), [sym_in] = ACTIONS(4496), [sym_inout] = ACTIONS(4496), [sym_interface] = ACTIONS(4496), [sym_invariant] = ACTIONS(4496), [sym_is] = ACTIONS(4496), [sym_mixin] = ACTIONS(4496), [sym_new] = ACTIONS(4496), [sym_nothrow] = ACTIONS(4496), [sym_out] = ACTIONS(4496), [sym_override] = ACTIONS(4496), [sym_package] = ACTIONS(4496), [sym_pragma] = ACTIONS(4496), [sym_private] = ACTIONS(4496), [sym_protected] = ACTIONS(4496), [sym_public] = ACTIONS(4496), [sym_pure] = ACTIONS(4496), [sym_ref] = ACTIONS(4496), [sym_return] = ACTIONS(4496), [sym_scope] = ACTIONS(4496), [sym_shared] = ACTIONS(4496), [sym_static] = ACTIONS(4496), [sym_struct] = ACTIONS(4496), [sym_switch] = ACTIONS(4496), [sym_synchronized] = ACTIONS(4496), [sym_template] = ACTIONS(4496), [sym_throw] = ACTIONS(4496), [sym_try] = ACTIONS(4496), [sym_typeid] = ACTIONS(4496), [sym_typeof] = ACTIONS(4496), [sym_union] = ACTIONS(4496), [sym_unittest] = ACTIONS(4496), [sym_version] = ACTIONS(4496), [sym_while] = ACTIONS(4496), [sym_with] = ACTIONS(4496), [sym_gshared] = ACTIONS(4496), [sym_traits] = ACTIONS(4496), [sym_vector] = ACTIONS(4496), [sym_void] = ACTIONS(4496), [anon_sym_BQUOTE] = ACTIONS(4498), [anon_sym_r_DQUOTE] = ACTIONS(4498), [anon_sym_x_DQUOTE] = ACTIONS(4498), [anon_sym_DQUOTE] = ACTIONS(4498), [anon_sym_i_BQUOTE] = ACTIONS(4498), [anon_sym_i_DQUOTE] = ACTIONS(4498), [anon_sym_iq_LBRACE] = ACTIONS(4498), [aux_sym_char_literal_token1] = ACTIONS(4498), [anon_sym_SQUOTE] = ACTIONS(4496), [anon_sym___DATE__] = ACTIONS(4496), [anon_sym___FILE__] = ACTIONS(4496), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4496), [anon_sym___FUNCTION__] = ACTIONS(4496), [anon_sym___LINE__] = ACTIONS(4496), [anon_sym___MODULE__] = ACTIONS(4496), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4496), [anon_sym___TIME__] = ACTIONS(4496), [anon_sym___TIMESTAMP__] = ACTIONS(4496), [anon_sym___VENDOR__] = ACTIONS(4496), [anon_sym___VERSION__] = ACTIONS(4496), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4498), [sym_float_literal] = ACTIONS(4498), [sym__string] = ACTIONS(4498), }, [1405] = { [sym_identifier] = ACTIONS(4500), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4502), [anon_sym_RBRACE] = ACTIONS(4502), [anon_sym_LBRACE] = ACTIONS(4502), [anon_sym_DOT] = ACTIONS(4502), [anon_sym_AMP] = ACTIONS(4502), [anon_sym_DASH] = ACTIONS(4500), [anon_sym_DASH_DASH] = ACTIONS(4502), [anon_sym_PLUS] = ACTIONS(4500), [anon_sym_PLUS_PLUS] = ACTIONS(4502), [anon_sym_BANG] = ACTIONS(4502), [anon_sym_LPAREN] = ACTIONS(4502), [anon_sym_RPAREN] = ACTIONS(4502), [anon_sym_LBRACK] = ACTIONS(4502), [anon_sym_SEMI] = ACTIONS(4502), [anon_sym_DOLLAR] = ACTIONS(4502), [anon_sym_STAR] = ACTIONS(4502), [anon_sym_TILDE] = ACTIONS(4502), [anon_sym_AT] = ACTIONS(4502), [sym_bool] = ACTIONS(4500), [sym_byte] = ACTIONS(4500), [sym_ubyte] = ACTIONS(4500), [sym_char] = ACTIONS(4500), [sym_short] = ACTIONS(4500), [sym_ushort] = ACTIONS(4500), [sym_int] = ACTIONS(4500), [sym_uint] = ACTIONS(4500), [sym_long] = ACTIONS(4500), [sym_ulong] = ACTIONS(4500), [sym_cent] = ACTIONS(4500), [sym_ucent] = ACTIONS(4500), [sym_wchar] = ACTIONS(4500), [sym_dchar] = ACTIONS(4500), [sym_float] = ACTIONS(4500), [sym_double] = ACTIONS(4500), [sym_real] = ACTIONS(4500), [sym_ifloat] = ACTIONS(4500), [sym_idouble] = ACTIONS(4500), [sym_ireal] = ACTIONS(4500), [sym_cfloat] = ACTIONS(4500), [sym_cdouble] = ACTIONS(4500), [sym_creal] = ACTIONS(4500), [sym_size_t] = ACTIONS(4500), [sym_ptrdiff_t] = ACTIONS(4500), [sym_string] = ACTIONS(4500), [sym_cstring] = ACTIONS(4500), [sym_dstring] = ACTIONS(4500), [sym_wstring] = ACTIONS(4500), [sym_noreturn] = ACTIONS(4500), [sym_true] = ACTIONS(4500), [sym_false] = ACTIONS(4500), [sym_null] = ACTIONS(4500), [sym_super] = ACTIONS(4500), [sym_this] = ACTIONS(4500), [sym_abstract] = ACTIONS(4500), [sym_alias] = ACTIONS(4500), [sym_align] = ACTIONS(4500), [sym_asm] = ACTIONS(4500), [sym_assert] = ACTIONS(4500), [sym_auto] = ACTIONS(4500), [sym_break] = ACTIONS(4500), [sym_case] = ACTIONS(4500), [sym_cast] = ACTIONS(4500), [sym_catch] = ACTIONS(4500), [sym_class] = ACTIONS(4500), [sym_const] = ACTIONS(4500), [sym_continue] = ACTIONS(4500), [sym_debug] = ACTIONS(4500), [sym_default] = ACTIONS(4500), [sym_delegate] = ACTIONS(4500), [sym_delete] = ACTIONS(4500), [sym_deprecated] = ACTIONS(4500), [sym_do] = ACTIONS(4500), [sym_else] = ACTIONS(4500), [sym_enum] = ACTIONS(4500), [sym_export] = ACTIONS(4500), [sym_extern] = ACTIONS(4500), [sym_final] = ACTIONS(4500), [sym_finally] = ACTIONS(4500), [sym_for] = ACTIONS(4500), [sym_foreach] = ACTIONS(4500), [sym_foreach_reverse] = ACTIONS(4500), [sym_function] = ACTIONS(4500), [sym_goto] = ACTIONS(4500), [sym_if] = ACTIONS(4500), [sym_immutable] = ACTIONS(4500), [sym_import] = ACTIONS(4500), [sym_in] = ACTIONS(4500), [sym_inout] = ACTIONS(4500), [sym_interface] = ACTIONS(4500), [sym_invariant] = ACTIONS(4500), [sym_is] = ACTIONS(4500), [sym_mixin] = ACTIONS(4500), [sym_new] = ACTIONS(4500), [sym_nothrow] = ACTIONS(4500), [sym_out] = ACTIONS(4500), [sym_override] = ACTIONS(4500), [sym_package] = ACTIONS(4500), [sym_pragma] = ACTIONS(4500), [sym_private] = ACTIONS(4500), [sym_protected] = ACTIONS(4500), [sym_public] = ACTIONS(4500), [sym_pure] = ACTIONS(4500), [sym_ref] = ACTIONS(4500), [sym_return] = ACTIONS(4500), [sym_scope] = ACTIONS(4500), [sym_shared] = ACTIONS(4500), [sym_static] = ACTIONS(4500), [sym_struct] = ACTIONS(4500), [sym_switch] = ACTIONS(4500), [sym_synchronized] = ACTIONS(4500), [sym_template] = ACTIONS(4500), [sym_throw] = ACTIONS(4500), [sym_try] = ACTIONS(4500), [sym_typeid] = ACTIONS(4500), [sym_typeof] = ACTIONS(4500), [sym_union] = ACTIONS(4500), [sym_unittest] = ACTIONS(4500), [sym_version] = ACTIONS(4500), [sym_while] = ACTIONS(4500), [sym_with] = ACTIONS(4500), [sym_gshared] = ACTIONS(4500), [sym_traits] = ACTIONS(4500), [sym_vector] = ACTIONS(4500), [sym_void] = ACTIONS(4500), [anon_sym_BQUOTE] = ACTIONS(4502), [anon_sym_r_DQUOTE] = ACTIONS(4502), [anon_sym_x_DQUOTE] = ACTIONS(4502), [anon_sym_DQUOTE] = ACTIONS(4502), [anon_sym_i_BQUOTE] = ACTIONS(4502), [anon_sym_i_DQUOTE] = ACTIONS(4502), [anon_sym_iq_LBRACE] = ACTIONS(4502), [aux_sym_char_literal_token1] = ACTIONS(4502), [anon_sym_SQUOTE] = ACTIONS(4500), [anon_sym___DATE__] = ACTIONS(4500), [anon_sym___FILE__] = ACTIONS(4500), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4500), [anon_sym___FUNCTION__] = ACTIONS(4500), [anon_sym___LINE__] = ACTIONS(4500), [anon_sym___MODULE__] = ACTIONS(4500), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4500), [anon_sym___TIME__] = ACTIONS(4500), [anon_sym___TIMESTAMP__] = ACTIONS(4500), [anon_sym___VENDOR__] = ACTIONS(4500), [anon_sym___VERSION__] = ACTIONS(4500), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4502), [sym_float_literal] = ACTIONS(4502), [sym__string] = ACTIONS(4502), }, [1406] = { [sym_identifier] = ACTIONS(4504), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4506), [anon_sym_RBRACE] = ACTIONS(4506), [anon_sym_LBRACE] = ACTIONS(4506), [anon_sym_DOT] = ACTIONS(4506), [anon_sym_AMP] = ACTIONS(4506), [anon_sym_DASH] = ACTIONS(4504), [anon_sym_DASH_DASH] = ACTIONS(4506), [anon_sym_PLUS] = ACTIONS(4504), [anon_sym_PLUS_PLUS] = ACTIONS(4506), [anon_sym_BANG] = ACTIONS(4506), [anon_sym_LPAREN] = ACTIONS(4506), [anon_sym_RPAREN] = ACTIONS(4506), [anon_sym_LBRACK] = ACTIONS(4506), [anon_sym_SEMI] = ACTIONS(4506), [anon_sym_DOLLAR] = ACTIONS(4506), [anon_sym_STAR] = ACTIONS(4506), [anon_sym_TILDE] = ACTIONS(4506), [anon_sym_AT] = ACTIONS(4506), [sym_bool] = ACTIONS(4504), [sym_byte] = ACTIONS(4504), [sym_ubyte] = ACTIONS(4504), [sym_char] = ACTIONS(4504), [sym_short] = ACTIONS(4504), [sym_ushort] = ACTIONS(4504), [sym_int] = ACTIONS(4504), [sym_uint] = ACTIONS(4504), [sym_long] = ACTIONS(4504), [sym_ulong] = ACTIONS(4504), [sym_cent] = ACTIONS(4504), [sym_ucent] = ACTIONS(4504), [sym_wchar] = ACTIONS(4504), [sym_dchar] = ACTIONS(4504), [sym_float] = ACTIONS(4504), [sym_double] = ACTIONS(4504), [sym_real] = ACTIONS(4504), [sym_ifloat] = ACTIONS(4504), [sym_idouble] = ACTIONS(4504), [sym_ireal] = ACTIONS(4504), [sym_cfloat] = ACTIONS(4504), [sym_cdouble] = ACTIONS(4504), [sym_creal] = ACTIONS(4504), [sym_size_t] = ACTIONS(4504), [sym_ptrdiff_t] = ACTIONS(4504), [sym_string] = ACTIONS(4504), [sym_cstring] = ACTIONS(4504), [sym_dstring] = ACTIONS(4504), [sym_wstring] = ACTIONS(4504), [sym_noreturn] = ACTIONS(4504), [sym_true] = ACTIONS(4504), [sym_false] = ACTIONS(4504), [sym_null] = ACTIONS(4504), [sym_super] = ACTIONS(4504), [sym_this] = ACTIONS(4504), [sym_abstract] = ACTIONS(4504), [sym_alias] = ACTIONS(4504), [sym_align] = ACTIONS(4504), [sym_asm] = ACTIONS(4504), [sym_assert] = ACTIONS(4504), [sym_auto] = ACTIONS(4504), [sym_break] = ACTIONS(4504), [sym_case] = ACTIONS(4504), [sym_cast] = ACTIONS(4504), [sym_catch] = ACTIONS(4504), [sym_class] = ACTIONS(4504), [sym_const] = ACTIONS(4504), [sym_continue] = ACTIONS(4504), [sym_debug] = ACTIONS(4504), [sym_default] = ACTIONS(4504), [sym_delegate] = ACTIONS(4504), [sym_delete] = ACTIONS(4504), [sym_deprecated] = ACTIONS(4504), [sym_do] = ACTIONS(4504), [sym_else] = ACTIONS(4504), [sym_enum] = ACTIONS(4504), [sym_export] = ACTIONS(4504), [sym_extern] = ACTIONS(4504), [sym_final] = ACTIONS(4504), [sym_finally] = ACTIONS(4504), [sym_for] = ACTIONS(4504), [sym_foreach] = ACTIONS(4504), [sym_foreach_reverse] = ACTIONS(4504), [sym_function] = ACTIONS(4504), [sym_goto] = ACTIONS(4504), [sym_if] = ACTIONS(4504), [sym_immutable] = ACTIONS(4504), [sym_import] = ACTIONS(4504), [sym_in] = ACTIONS(4504), [sym_inout] = ACTIONS(4504), [sym_interface] = ACTIONS(4504), [sym_invariant] = ACTIONS(4504), [sym_is] = ACTIONS(4504), [sym_mixin] = ACTIONS(4504), [sym_new] = ACTIONS(4504), [sym_nothrow] = ACTIONS(4504), [sym_out] = ACTIONS(4504), [sym_override] = ACTIONS(4504), [sym_package] = ACTIONS(4504), [sym_pragma] = ACTIONS(4504), [sym_private] = ACTIONS(4504), [sym_protected] = ACTIONS(4504), [sym_public] = ACTIONS(4504), [sym_pure] = ACTIONS(4504), [sym_ref] = ACTIONS(4504), [sym_return] = ACTIONS(4504), [sym_scope] = ACTIONS(4504), [sym_shared] = ACTIONS(4504), [sym_static] = ACTIONS(4504), [sym_struct] = ACTIONS(4504), [sym_switch] = ACTIONS(4504), [sym_synchronized] = ACTIONS(4504), [sym_template] = ACTIONS(4504), [sym_throw] = ACTIONS(4504), [sym_try] = ACTIONS(4504), [sym_typeid] = ACTIONS(4504), [sym_typeof] = ACTIONS(4504), [sym_union] = ACTIONS(4504), [sym_unittest] = ACTIONS(4504), [sym_version] = ACTIONS(4504), [sym_while] = ACTIONS(4504), [sym_with] = ACTIONS(4504), [sym_gshared] = ACTIONS(4504), [sym_traits] = ACTIONS(4504), [sym_vector] = ACTIONS(4504), [sym_void] = ACTIONS(4504), [anon_sym_BQUOTE] = ACTIONS(4506), [anon_sym_r_DQUOTE] = ACTIONS(4506), [anon_sym_x_DQUOTE] = ACTIONS(4506), [anon_sym_DQUOTE] = ACTIONS(4506), [anon_sym_i_BQUOTE] = ACTIONS(4506), [anon_sym_i_DQUOTE] = ACTIONS(4506), [anon_sym_iq_LBRACE] = ACTIONS(4506), [aux_sym_char_literal_token1] = ACTIONS(4506), [anon_sym_SQUOTE] = ACTIONS(4504), [anon_sym___DATE__] = ACTIONS(4504), [anon_sym___FILE__] = ACTIONS(4504), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4504), [anon_sym___FUNCTION__] = ACTIONS(4504), [anon_sym___LINE__] = ACTIONS(4504), [anon_sym___MODULE__] = ACTIONS(4504), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4504), [anon_sym___TIME__] = ACTIONS(4504), [anon_sym___TIMESTAMP__] = ACTIONS(4504), [anon_sym___VENDOR__] = ACTIONS(4504), [anon_sym___VERSION__] = ACTIONS(4504), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4506), [sym_float_literal] = ACTIONS(4506), [sym__string] = ACTIONS(4506), }, [1407] = { [sym_identifier] = ACTIONS(4508), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4510), [anon_sym_RBRACE] = ACTIONS(4510), [anon_sym_LBRACE] = ACTIONS(4510), [anon_sym_DOT] = ACTIONS(4510), [anon_sym_AMP] = ACTIONS(4510), [anon_sym_DASH] = ACTIONS(4508), [anon_sym_DASH_DASH] = ACTIONS(4510), [anon_sym_PLUS] = ACTIONS(4508), [anon_sym_PLUS_PLUS] = ACTIONS(4510), [anon_sym_BANG] = ACTIONS(4510), [anon_sym_LPAREN] = ACTIONS(4510), [anon_sym_RPAREN] = ACTIONS(4510), [anon_sym_LBRACK] = ACTIONS(4510), [anon_sym_SEMI] = ACTIONS(4510), [anon_sym_DOLLAR] = ACTIONS(4510), [anon_sym_STAR] = ACTIONS(4510), [anon_sym_TILDE] = ACTIONS(4510), [anon_sym_AT] = ACTIONS(4510), [sym_bool] = ACTIONS(4508), [sym_byte] = ACTIONS(4508), [sym_ubyte] = ACTIONS(4508), [sym_char] = ACTIONS(4508), [sym_short] = ACTIONS(4508), [sym_ushort] = ACTIONS(4508), [sym_int] = ACTIONS(4508), [sym_uint] = ACTIONS(4508), [sym_long] = ACTIONS(4508), [sym_ulong] = ACTIONS(4508), [sym_cent] = ACTIONS(4508), [sym_ucent] = ACTIONS(4508), [sym_wchar] = ACTIONS(4508), [sym_dchar] = ACTIONS(4508), [sym_float] = ACTIONS(4508), [sym_double] = ACTIONS(4508), [sym_real] = ACTIONS(4508), [sym_ifloat] = ACTIONS(4508), [sym_idouble] = ACTIONS(4508), [sym_ireal] = ACTIONS(4508), [sym_cfloat] = ACTIONS(4508), [sym_cdouble] = ACTIONS(4508), [sym_creal] = ACTIONS(4508), [sym_size_t] = ACTIONS(4508), [sym_ptrdiff_t] = ACTIONS(4508), [sym_string] = ACTIONS(4508), [sym_cstring] = ACTIONS(4508), [sym_dstring] = ACTIONS(4508), [sym_wstring] = ACTIONS(4508), [sym_noreturn] = ACTIONS(4508), [sym_true] = ACTIONS(4508), [sym_false] = ACTIONS(4508), [sym_null] = ACTIONS(4508), [sym_super] = ACTIONS(4508), [sym_this] = ACTIONS(4508), [sym_abstract] = ACTIONS(4508), [sym_alias] = ACTIONS(4508), [sym_align] = ACTIONS(4508), [sym_asm] = ACTIONS(4508), [sym_assert] = ACTIONS(4508), [sym_auto] = ACTIONS(4508), [sym_break] = ACTIONS(4508), [sym_case] = ACTIONS(4508), [sym_cast] = ACTIONS(4508), [sym_catch] = ACTIONS(4508), [sym_class] = ACTIONS(4508), [sym_const] = ACTIONS(4508), [sym_continue] = ACTIONS(4508), [sym_debug] = ACTIONS(4508), [sym_default] = ACTIONS(4508), [sym_delegate] = ACTIONS(4508), [sym_delete] = ACTIONS(4508), [sym_deprecated] = ACTIONS(4508), [sym_do] = ACTIONS(4508), [sym_else] = ACTIONS(4508), [sym_enum] = ACTIONS(4508), [sym_export] = ACTIONS(4508), [sym_extern] = ACTIONS(4508), [sym_final] = ACTIONS(4508), [sym_finally] = ACTIONS(4508), [sym_for] = ACTIONS(4508), [sym_foreach] = ACTIONS(4508), [sym_foreach_reverse] = ACTIONS(4508), [sym_function] = ACTIONS(4508), [sym_goto] = ACTIONS(4508), [sym_if] = ACTIONS(4508), [sym_immutable] = ACTIONS(4508), [sym_import] = ACTIONS(4508), [sym_in] = ACTIONS(4508), [sym_inout] = ACTIONS(4508), [sym_interface] = ACTIONS(4508), [sym_invariant] = ACTIONS(4508), [sym_is] = ACTIONS(4508), [sym_mixin] = ACTIONS(4508), [sym_new] = ACTIONS(4508), [sym_nothrow] = ACTIONS(4508), [sym_out] = ACTIONS(4508), [sym_override] = ACTIONS(4508), [sym_package] = ACTIONS(4508), [sym_pragma] = ACTIONS(4508), [sym_private] = ACTIONS(4508), [sym_protected] = ACTIONS(4508), [sym_public] = ACTIONS(4508), [sym_pure] = ACTIONS(4508), [sym_ref] = ACTIONS(4508), [sym_return] = ACTIONS(4508), [sym_scope] = ACTIONS(4508), [sym_shared] = ACTIONS(4508), [sym_static] = ACTIONS(4508), [sym_struct] = ACTIONS(4508), [sym_switch] = ACTIONS(4508), [sym_synchronized] = ACTIONS(4508), [sym_template] = ACTIONS(4508), [sym_throw] = ACTIONS(4508), [sym_try] = ACTIONS(4508), [sym_typeid] = ACTIONS(4508), [sym_typeof] = ACTIONS(4508), [sym_union] = ACTIONS(4508), [sym_unittest] = ACTIONS(4508), [sym_version] = ACTIONS(4508), [sym_while] = ACTIONS(4508), [sym_with] = ACTIONS(4508), [sym_gshared] = ACTIONS(4508), [sym_traits] = ACTIONS(4508), [sym_vector] = ACTIONS(4508), [sym_void] = ACTIONS(4508), [anon_sym_BQUOTE] = ACTIONS(4510), [anon_sym_r_DQUOTE] = ACTIONS(4510), [anon_sym_x_DQUOTE] = ACTIONS(4510), [anon_sym_DQUOTE] = ACTIONS(4510), [anon_sym_i_BQUOTE] = ACTIONS(4510), [anon_sym_i_DQUOTE] = ACTIONS(4510), [anon_sym_iq_LBRACE] = ACTIONS(4510), [aux_sym_char_literal_token1] = ACTIONS(4510), [anon_sym_SQUOTE] = ACTIONS(4508), [anon_sym___DATE__] = ACTIONS(4508), [anon_sym___FILE__] = ACTIONS(4508), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4508), [anon_sym___FUNCTION__] = ACTIONS(4508), [anon_sym___LINE__] = ACTIONS(4508), [anon_sym___MODULE__] = ACTIONS(4508), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4508), [anon_sym___TIME__] = ACTIONS(4508), [anon_sym___TIMESTAMP__] = ACTIONS(4508), [anon_sym___VENDOR__] = ACTIONS(4508), [anon_sym___VERSION__] = ACTIONS(4508), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4510), [sym_float_literal] = ACTIONS(4510), [sym__string] = ACTIONS(4510), }, [1408] = { [sym_identifier] = ACTIONS(4512), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4514), [anon_sym_RBRACE] = ACTIONS(4514), [anon_sym_LBRACE] = ACTIONS(4514), [anon_sym_DOT] = ACTIONS(4514), [anon_sym_AMP] = ACTIONS(4514), [anon_sym_DASH] = ACTIONS(4512), [anon_sym_DASH_DASH] = ACTIONS(4514), [anon_sym_PLUS] = ACTIONS(4512), [anon_sym_PLUS_PLUS] = ACTIONS(4514), [anon_sym_BANG] = ACTIONS(4514), [anon_sym_LPAREN] = ACTIONS(4514), [anon_sym_RPAREN] = ACTIONS(4514), [anon_sym_LBRACK] = ACTIONS(4514), [anon_sym_SEMI] = ACTIONS(4514), [anon_sym_DOLLAR] = ACTIONS(4514), [anon_sym_STAR] = ACTIONS(4514), [anon_sym_TILDE] = ACTIONS(4514), [anon_sym_AT] = ACTIONS(4514), [sym_bool] = ACTIONS(4512), [sym_byte] = ACTIONS(4512), [sym_ubyte] = ACTIONS(4512), [sym_char] = ACTIONS(4512), [sym_short] = ACTIONS(4512), [sym_ushort] = ACTIONS(4512), [sym_int] = ACTIONS(4512), [sym_uint] = ACTIONS(4512), [sym_long] = ACTIONS(4512), [sym_ulong] = ACTIONS(4512), [sym_cent] = ACTIONS(4512), [sym_ucent] = ACTIONS(4512), [sym_wchar] = ACTIONS(4512), [sym_dchar] = ACTIONS(4512), [sym_float] = ACTIONS(4512), [sym_double] = ACTIONS(4512), [sym_real] = ACTIONS(4512), [sym_ifloat] = ACTIONS(4512), [sym_idouble] = ACTIONS(4512), [sym_ireal] = ACTIONS(4512), [sym_cfloat] = ACTIONS(4512), [sym_cdouble] = ACTIONS(4512), [sym_creal] = ACTIONS(4512), [sym_size_t] = ACTIONS(4512), [sym_ptrdiff_t] = ACTIONS(4512), [sym_string] = ACTIONS(4512), [sym_cstring] = ACTIONS(4512), [sym_dstring] = ACTIONS(4512), [sym_wstring] = ACTIONS(4512), [sym_noreturn] = ACTIONS(4512), [sym_true] = ACTIONS(4512), [sym_false] = ACTIONS(4512), [sym_null] = ACTIONS(4512), [sym_super] = ACTIONS(4512), [sym_this] = ACTIONS(4512), [sym_abstract] = ACTIONS(4512), [sym_alias] = ACTIONS(4512), [sym_align] = ACTIONS(4512), [sym_asm] = ACTIONS(4512), [sym_assert] = ACTIONS(4512), [sym_auto] = ACTIONS(4512), [sym_break] = ACTIONS(4512), [sym_case] = ACTIONS(4512), [sym_cast] = ACTIONS(4512), [sym_catch] = ACTIONS(4512), [sym_class] = ACTIONS(4512), [sym_const] = ACTIONS(4512), [sym_continue] = ACTIONS(4512), [sym_debug] = ACTIONS(4512), [sym_default] = ACTIONS(4512), [sym_delegate] = ACTIONS(4512), [sym_delete] = ACTIONS(4512), [sym_deprecated] = ACTIONS(4512), [sym_do] = ACTIONS(4512), [sym_else] = ACTIONS(4512), [sym_enum] = ACTIONS(4512), [sym_export] = ACTIONS(4512), [sym_extern] = ACTIONS(4512), [sym_final] = ACTIONS(4512), [sym_finally] = ACTIONS(4512), [sym_for] = ACTIONS(4512), [sym_foreach] = ACTIONS(4512), [sym_foreach_reverse] = ACTIONS(4512), [sym_function] = ACTIONS(4512), [sym_goto] = ACTIONS(4512), [sym_if] = ACTIONS(4512), [sym_immutable] = ACTIONS(4512), [sym_import] = ACTIONS(4512), [sym_in] = ACTIONS(4512), [sym_inout] = ACTIONS(4512), [sym_interface] = ACTIONS(4512), [sym_invariant] = ACTIONS(4512), [sym_is] = ACTIONS(4512), [sym_mixin] = ACTIONS(4512), [sym_new] = ACTIONS(4512), [sym_nothrow] = ACTIONS(4512), [sym_out] = ACTIONS(4512), [sym_override] = ACTIONS(4512), [sym_package] = ACTIONS(4512), [sym_pragma] = ACTIONS(4512), [sym_private] = ACTIONS(4512), [sym_protected] = ACTIONS(4512), [sym_public] = ACTIONS(4512), [sym_pure] = ACTIONS(4512), [sym_ref] = ACTIONS(4512), [sym_return] = ACTIONS(4512), [sym_scope] = ACTIONS(4512), [sym_shared] = ACTIONS(4512), [sym_static] = ACTIONS(4512), [sym_struct] = ACTIONS(4512), [sym_switch] = ACTIONS(4512), [sym_synchronized] = ACTIONS(4512), [sym_template] = ACTIONS(4512), [sym_throw] = ACTIONS(4512), [sym_try] = ACTIONS(4512), [sym_typeid] = ACTIONS(4512), [sym_typeof] = ACTIONS(4512), [sym_union] = ACTIONS(4512), [sym_unittest] = ACTIONS(4512), [sym_version] = ACTIONS(4512), [sym_while] = ACTIONS(4512), [sym_with] = ACTIONS(4512), [sym_gshared] = ACTIONS(4512), [sym_traits] = ACTIONS(4512), [sym_vector] = ACTIONS(4512), [sym_void] = ACTIONS(4512), [anon_sym_BQUOTE] = ACTIONS(4514), [anon_sym_r_DQUOTE] = ACTIONS(4514), [anon_sym_x_DQUOTE] = ACTIONS(4514), [anon_sym_DQUOTE] = ACTIONS(4514), [anon_sym_i_BQUOTE] = ACTIONS(4514), [anon_sym_i_DQUOTE] = ACTIONS(4514), [anon_sym_iq_LBRACE] = ACTIONS(4514), [aux_sym_char_literal_token1] = ACTIONS(4514), [anon_sym_SQUOTE] = ACTIONS(4512), [anon_sym___DATE__] = ACTIONS(4512), [anon_sym___FILE__] = ACTIONS(4512), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4512), [anon_sym___FUNCTION__] = ACTIONS(4512), [anon_sym___LINE__] = ACTIONS(4512), [anon_sym___MODULE__] = ACTIONS(4512), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4512), [anon_sym___TIME__] = ACTIONS(4512), [anon_sym___TIMESTAMP__] = ACTIONS(4512), [anon_sym___VENDOR__] = ACTIONS(4512), [anon_sym___VERSION__] = ACTIONS(4512), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4514), [sym_float_literal] = ACTIONS(4514), [sym__string] = ACTIONS(4514), }, [1409] = { [sym_identifier] = ACTIONS(4516), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4518), [anon_sym_RBRACE] = ACTIONS(4518), [anon_sym_LBRACE] = ACTIONS(4518), [anon_sym_DOT] = ACTIONS(4518), [anon_sym_AMP] = ACTIONS(4518), [anon_sym_DASH] = ACTIONS(4516), [anon_sym_DASH_DASH] = ACTIONS(4518), [anon_sym_PLUS] = ACTIONS(4516), [anon_sym_PLUS_PLUS] = ACTIONS(4518), [anon_sym_BANG] = ACTIONS(4518), [anon_sym_LPAREN] = ACTIONS(4518), [anon_sym_RPAREN] = ACTIONS(4518), [anon_sym_LBRACK] = ACTIONS(4518), [anon_sym_SEMI] = ACTIONS(4518), [anon_sym_DOLLAR] = ACTIONS(4518), [anon_sym_STAR] = ACTIONS(4518), [anon_sym_TILDE] = ACTIONS(4518), [anon_sym_AT] = ACTIONS(4518), [sym_bool] = ACTIONS(4516), [sym_byte] = ACTIONS(4516), [sym_ubyte] = ACTIONS(4516), [sym_char] = ACTIONS(4516), [sym_short] = ACTIONS(4516), [sym_ushort] = ACTIONS(4516), [sym_int] = ACTIONS(4516), [sym_uint] = ACTIONS(4516), [sym_long] = ACTIONS(4516), [sym_ulong] = ACTIONS(4516), [sym_cent] = ACTIONS(4516), [sym_ucent] = ACTIONS(4516), [sym_wchar] = ACTIONS(4516), [sym_dchar] = ACTIONS(4516), [sym_float] = ACTIONS(4516), [sym_double] = ACTIONS(4516), [sym_real] = ACTIONS(4516), [sym_ifloat] = ACTIONS(4516), [sym_idouble] = ACTIONS(4516), [sym_ireal] = ACTIONS(4516), [sym_cfloat] = ACTIONS(4516), [sym_cdouble] = ACTIONS(4516), [sym_creal] = ACTIONS(4516), [sym_size_t] = ACTIONS(4516), [sym_ptrdiff_t] = ACTIONS(4516), [sym_string] = ACTIONS(4516), [sym_cstring] = ACTIONS(4516), [sym_dstring] = ACTIONS(4516), [sym_wstring] = ACTIONS(4516), [sym_noreturn] = ACTIONS(4516), [sym_true] = ACTIONS(4516), [sym_false] = ACTIONS(4516), [sym_null] = ACTIONS(4516), [sym_super] = ACTIONS(4516), [sym_this] = ACTIONS(4516), [sym_abstract] = ACTIONS(4516), [sym_alias] = ACTIONS(4516), [sym_align] = ACTIONS(4516), [sym_asm] = ACTIONS(4516), [sym_assert] = ACTIONS(4516), [sym_auto] = ACTIONS(4516), [sym_break] = ACTIONS(4516), [sym_case] = ACTIONS(4516), [sym_cast] = ACTIONS(4516), [sym_catch] = ACTIONS(4516), [sym_class] = ACTIONS(4516), [sym_const] = ACTIONS(4516), [sym_continue] = ACTIONS(4516), [sym_debug] = ACTIONS(4516), [sym_default] = ACTIONS(4516), [sym_delegate] = ACTIONS(4516), [sym_delete] = ACTIONS(4516), [sym_deprecated] = ACTIONS(4516), [sym_do] = ACTIONS(4516), [sym_else] = ACTIONS(4516), [sym_enum] = ACTIONS(4516), [sym_export] = ACTIONS(4516), [sym_extern] = ACTIONS(4516), [sym_final] = ACTIONS(4516), [sym_finally] = ACTIONS(4516), [sym_for] = ACTIONS(4516), [sym_foreach] = ACTIONS(4516), [sym_foreach_reverse] = ACTIONS(4516), [sym_function] = ACTIONS(4516), [sym_goto] = ACTIONS(4516), [sym_if] = ACTIONS(4516), [sym_immutable] = ACTIONS(4516), [sym_import] = ACTIONS(4516), [sym_in] = ACTIONS(4516), [sym_inout] = ACTIONS(4516), [sym_interface] = ACTIONS(4516), [sym_invariant] = ACTIONS(4516), [sym_is] = ACTIONS(4516), [sym_mixin] = ACTIONS(4516), [sym_new] = ACTIONS(4516), [sym_nothrow] = ACTIONS(4516), [sym_out] = ACTIONS(4516), [sym_override] = ACTIONS(4516), [sym_package] = ACTIONS(4516), [sym_pragma] = ACTIONS(4516), [sym_private] = ACTIONS(4516), [sym_protected] = ACTIONS(4516), [sym_public] = ACTIONS(4516), [sym_pure] = ACTIONS(4516), [sym_ref] = ACTIONS(4516), [sym_return] = ACTIONS(4516), [sym_scope] = ACTIONS(4516), [sym_shared] = ACTIONS(4516), [sym_static] = ACTIONS(4516), [sym_struct] = ACTIONS(4516), [sym_switch] = ACTIONS(4516), [sym_synchronized] = ACTIONS(4516), [sym_template] = ACTIONS(4516), [sym_throw] = ACTIONS(4516), [sym_try] = ACTIONS(4516), [sym_typeid] = ACTIONS(4516), [sym_typeof] = ACTIONS(4516), [sym_union] = ACTIONS(4516), [sym_unittest] = ACTIONS(4516), [sym_version] = ACTIONS(4516), [sym_while] = ACTIONS(4516), [sym_with] = ACTIONS(4516), [sym_gshared] = ACTIONS(4516), [sym_traits] = ACTIONS(4516), [sym_vector] = ACTIONS(4516), [sym_void] = ACTIONS(4516), [anon_sym_BQUOTE] = ACTIONS(4518), [anon_sym_r_DQUOTE] = ACTIONS(4518), [anon_sym_x_DQUOTE] = ACTIONS(4518), [anon_sym_DQUOTE] = ACTIONS(4518), [anon_sym_i_BQUOTE] = ACTIONS(4518), [anon_sym_i_DQUOTE] = ACTIONS(4518), [anon_sym_iq_LBRACE] = ACTIONS(4518), [aux_sym_char_literal_token1] = ACTIONS(4518), [anon_sym_SQUOTE] = ACTIONS(4516), [anon_sym___DATE__] = ACTIONS(4516), [anon_sym___FILE__] = ACTIONS(4516), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4516), [anon_sym___FUNCTION__] = ACTIONS(4516), [anon_sym___LINE__] = ACTIONS(4516), [anon_sym___MODULE__] = ACTIONS(4516), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4516), [anon_sym___TIME__] = ACTIONS(4516), [anon_sym___TIMESTAMP__] = ACTIONS(4516), [anon_sym___VENDOR__] = ACTIONS(4516), [anon_sym___VERSION__] = ACTIONS(4516), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4518), [sym_float_literal] = ACTIONS(4518), [sym__string] = ACTIONS(4518), }, [1410] = { [sym_identifier] = ACTIONS(4520), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4522), [anon_sym_RBRACE] = ACTIONS(4522), [anon_sym_LBRACE] = ACTIONS(4522), [anon_sym_DOT] = ACTIONS(4522), [anon_sym_AMP] = ACTIONS(4522), [anon_sym_DASH] = ACTIONS(4520), [anon_sym_DASH_DASH] = ACTIONS(4522), [anon_sym_PLUS] = ACTIONS(4520), [anon_sym_PLUS_PLUS] = ACTIONS(4522), [anon_sym_BANG] = ACTIONS(4522), [anon_sym_LPAREN] = ACTIONS(4522), [anon_sym_RPAREN] = ACTIONS(4522), [anon_sym_LBRACK] = ACTIONS(4522), [anon_sym_SEMI] = ACTIONS(4522), [anon_sym_DOLLAR] = ACTIONS(4522), [anon_sym_STAR] = ACTIONS(4522), [anon_sym_TILDE] = ACTIONS(4522), [anon_sym_AT] = ACTIONS(4522), [sym_bool] = ACTIONS(4520), [sym_byte] = ACTIONS(4520), [sym_ubyte] = ACTIONS(4520), [sym_char] = ACTIONS(4520), [sym_short] = ACTIONS(4520), [sym_ushort] = ACTIONS(4520), [sym_int] = ACTIONS(4520), [sym_uint] = ACTIONS(4520), [sym_long] = ACTIONS(4520), [sym_ulong] = ACTIONS(4520), [sym_cent] = ACTIONS(4520), [sym_ucent] = ACTIONS(4520), [sym_wchar] = ACTIONS(4520), [sym_dchar] = ACTIONS(4520), [sym_float] = ACTIONS(4520), [sym_double] = ACTIONS(4520), [sym_real] = ACTIONS(4520), [sym_ifloat] = ACTIONS(4520), [sym_idouble] = ACTIONS(4520), [sym_ireal] = ACTIONS(4520), [sym_cfloat] = ACTIONS(4520), [sym_cdouble] = ACTIONS(4520), [sym_creal] = ACTIONS(4520), [sym_size_t] = ACTIONS(4520), [sym_ptrdiff_t] = ACTIONS(4520), [sym_string] = ACTIONS(4520), [sym_cstring] = ACTIONS(4520), [sym_dstring] = ACTIONS(4520), [sym_wstring] = ACTIONS(4520), [sym_noreturn] = ACTIONS(4520), [sym_true] = ACTIONS(4520), [sym_false] = ACTIONS(4520), [sym_null] = ACTIONS(4520), [sym_super] = ACTIONS(4520), [sym_this] = ACTIONS(4520), [sym_abstract] = ACTIONS(4520), [sym_alias] = ACTIONS(4520), [sym_align] = ACTIONS(4520), [sym_asm] = ACTIONS(4520), [sym_assert] = ACTIONS(4520), [sym_auto] = ACTIONS(4520), [sym_break] = ACTIONS(4520), [sym_case] = ACTIONS(4520), [sym_cast] = ACTIONS(4520), [sym_catch] = ACTIONS(4520), [sym_class] = ACTIONS(4520), [sym_const] = ACTIONS(4520), [sym_continue] = ACTIONS(4520), [sym_debug] = ACTIONS(4520), [sym_default] = ACTIONS(4520), [sym_delegate] = ACTIONS(4520), [sym_delete] = ACTIONS(4520), [sym_deprecated] = ACTIONS(4520), [sym_do] = ACTIONS(4520), [sym_else] = ACTIONS(4520), [sym_enum] = ACTIONS(4520), [sym_export] = ACTIONS(4520), [sym_extern] = ACTIONS(4520), [sym_final] = ACTIONS(4520), [sym_finally] = ACTIONS(4520), [sym_for] = ACTIONS(4520), [sym_foreach] = ACTIONS(4520), [sym_foreach_reverse] = ACTIONS(4520), [sym_function] = ACTIONS(4520), [sym_goto] = ACTIONS(4520), [sym_if] = ACTIONS(4520), [sym_immutable] = ACTIONS(4520), [sym_import] = ACTIONS(4520), [sym_in] = ACTIONS(4520), [sym_inout] = ACTIONS(4520), [sym_interface] = ACTIONS(4520), [sym_invariant] = ACTIONS(4520), [sym_is] = ACTIONS(4520), [sym_mixin] = ACTIONS(4520), [sym_new] = ACTIONS(4520), [sym_nothrow] = ACTIONS(4520), [sym_out] = ACTIONS(4520), [sym_override] = ACTIONS(4520), [sym_package] = ACTIONS(4520), [sym_pragma] = ACTIONS(4520), [sym_private] = ACTIONS(4520), [sym_protected] = ACTIONS(4520), [sym_public] = ACTIONS(4520), [sym_pure] = ACTIONS(4520), [sym_ref] = ACTIONS(4520), [sym_return] = ACTIONS(4520), [sym_scope] = ACTIONS(4520), [sym_shared] = ACTIONS(4520), [sym_static] = ACTIONS(4520), [sym_struct] = ACTIONS(4520), [sym_switch] = ACTIONS(4520), [sym_synchronized] = ACTIONS(4520), [sym_template] = ACTIONS(4520), [sym_throw] = ACTIONS(4520), [sym_try] = ACTIONS(4520), [sym_typeid] = ACTIONS(4520), [sym_typeof] = ACTIONS(4520), [sym_union] = ACTIONS(4520), [sym_unittest] = ACTIONS(4520), [sym_version] = ACTIONS(4520), [sym_while] = ACTIONS(4520), [sym_with] = ACTIONS(4520), [sym_gshared] = ACTIONS(4520), [sym_traits] = ACTIONS(4520), [sym_vector] = ACTIONS(4520), [sym_void] = ACTIONS(4520), [anon_sym_BQUOTE] = ACTIONS(4522), [anon_sym_r_DQUOTE] = ACTIONS(4522), [anon_sym_x_DQUOTE] = ACTIONS(4522), [anon_sym_DQUOTE] = ACTIONS(4522), [anon_sym_i_BQUOTE] = ACTIONS(4522), [anon_sym_i_DQUOTE] = ACTIONS(4522), [anon_sym_iq_LBRACE] = ACTIONS(4522), [aux_sym_char_literal_token1] = ACTIONS(4522), [anon_sym_SQUOTE] = ACTIONS(4520), [anon_sym___DATE__] = ACTIONS(4520), [anon_sym___FILE__] = ACTIONS(4520), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4520), [anon_sym___FUNCTION__] = ACTIONS(4520), [anon_sym___LINE__] = ACTIONS(4520), [anon_sym___MODULE__] = ACTIONS(4520), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4520), [anon_sym___TIME__] = ACTIONS(4520), [anon_sym___TIMESTAMP__] = ACTIONS(4520), [anon_sym___VENDOR__] = ACTIONS(4520), [anon_sym___VERSION__] = ACTIONS(4520), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4522), [sym_float_literal] = ACTIONS(4522), [sym__string] = ACTIONS(4522), }, [1411] = { [sym_identifier] = ACTIONS(4524), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4526), [anon_sym_RBRACE] = ACTIONS(4526), [anon_sym_LBRACE] = ACTIONS(4526), [anon_sym_DOT] = ACTIONS(4526), [anon_sym_AMP] = ACTIONS(4526), [anon_sym_DASH] = ACTIONS(4524), [anon_sym_DASH_DASH] = ACTIONS(4526), [anon_sym_PLUS] = ACTIONS(4524), [anon_sym_PLUS_PLUS] = ACTIONS(4526), [anon_sym_BANG] = ACTIONS(4526), [anon_sym_LPAREN] = ACTIONS(4526), [anon_sym_RPAREN] = ACTIONS(4526), [anon_sym_LBRACK] = ACTIONS(4526), [anon_sym_SEMI] = ACTIONS(4526), [anon_sym_DOLLAR] = ACTIONS(4526), [anon_sym_STAR] = ACTIONS(4526), [anon_sym_TILDE] = ACTIONS(4526), [anon_sym_AT] = ACTIONS(4526), [sym_bool] = ACTIONS(4524), [sym_byte] = ACTIONS(4524), [sym_ubyte] = ACTIONS(4524), [sym_char] = ACTIONS(4524), [sym_short] = ACTIONS(4524), [sym_ushort] = ACTIONS(4524), [sym_int] = ACTIONS(4524), [sym_uint] = ACTIONS(4524), [sym_long] = ACTIONS(4524), [sym_ulong] = ACTIONS(4524), [sym_cent] = ACTIONS(4524), [sym_ucent] = ACTIONS(4524), [sym_wchar] = ACTIONS(4524), [sym_dchar] = ACTIONS(4524), [sym_float] = ACTIONS(4524), [sym_double] = ACTIONS(4524), [sym_real] = ACTIONS(4524), [sym_ifloat] = ACTIONS(4524), [sym_idouble] = ACTIONS(4524), [sym_ireal] = ACTIONS(4524), [sym_cfloat] = ACTIONS(4524), [sym_cdouble] = ACTIONS(4524), [sym_creal] = ACTIONS(4524), [sym_size_t] = ACTIONS(4524), [sym_ptrdiff_t] = ACTIONS(4524), [sym_string] = ACTIONS(4524), [sym_cstring] = ACTIONS(4524), [sym_dstring] = ACTIONS(4524), [sym_wstring] = ACTIONS(4524), [sym_noreturn] = ACTIONS(4524), [sym_true] = ACTIONS(4524), [sym_false] = ACTIONS(4524), [sym_null] = ACTIONS(4524), [sym_super] = ACTIONS(4524), [sym_this] = ACTIONS(4524), [sym_abstract] = ACTIONS(4524), [sym_alias] = ACTIONS(4524), [sym_align] = ACTIONS(4524), [sym_asm] = ACTIONS(4524), [sym_assert] = ACTIONS(4524), [sym_auto] = ACTIONS(4524), [sym_break] = ACTIONS(4524), [sym_case] = ACTIONS(4524), [sym_cast] = ACTIONS(4524), [sym_catch] = ACTIONS(4524), [sym_class] = ACTIONS(4524), [sym_const] = ACTIONS(4524), [sym_continue] = ACTIONS(4524), [sym_debug] = ACTIONS(4524), [sym_default] = ACTIONS(4524), [sym_delegate] = ACTIONS(4524), [sym_delete] = ACTIONS(4524), [sym_deprecated] = ACTIONS(4524), [sym_do] = ACTIONS(4524), [sym_else] = ACTIONS(4524), [sym_enum] = ACTIONS(4524), [sym_export] = ACTIONS(4524), [sym_extern] = ACTIONS(4524), [sym_final] = ACTIONS(4524), [sym_finally] = ACTIONS(4524), [sym_for] = ACTIONS(4524), [sym_foreach] = ACTIONS(4524), [sym_foreach_reverse] = ACTIONS(4524), [sym_function] = ACTIONS(4524), [sym_goto] = ACTIONS(4524), [sym_if] = ACTIONS(4524), [sym_immutable] = ACTIONS(4524), [sym_import] = ACTIONS(4524), [sym_in] = ACTIONS(4524), [sym_inout] = ACTIONS(4524), [sym_interface] = ACTIONS(4524), [sym_invariant] = ACTIONS(4524), [sym_is] = ACTIONS(4524), [sym_mixin] = ACTIONS(4524), [sym_new] = ACTIONS(4524), [sym_nothrow] = ACTIONS(4524), [sym_out] = ACTIONS(4524), [sym_override] = ACTIONS(4524), [sym_package] = ACTIONS(4524), [sym_pragma] = ACTIONS(4524), [sym_private] = ACTIONS(4524), [sym_protected] = ACTIONS(4524), [sym_public] = ACTIONS(4524), [sym_pure] = ACTIONS(4524), [sym_ref] = ACTIONS(4524), [sym_return] = ACTIONS(4524), [sym_scope] = ACTIONS(4524), [sym_shared] = ACTIONS(4524), [sym_static] = ACTIONS(4524), [sym_struct] = ACTIONS(4524), [sym_switch] = ACTIONS(4524), [sym_synchronized] = ACTIONS(4524), [sym_template] = ACTIONS(4524), [sym_throw] = ACTIONS(4524), [sym_try] = ACTIONS(4524), [sym_typeid] = ACTIONS(4524), [sym_typeof] = ACTIONS(4524), [sym_union] = ACTIONS(4524), [sym_unittest] = ACTIONS(4524), [sym_version] = ACTIONS(4524), [sym_while] = ACTIONS(4524), [sym_with] = ACTIONS(4524), [sym_gshared] = ACTIONS(4524), [sym_traits] = ACTIONS(4524), [sym_vector] = ACTIONS(4524), [sym_void] = ACTIONS(4524), [anon_sym_BQUOTE] = ACTIONS(4526), [anon_sym_r_DQUOTE] = ACTIONS(4526), [anon_sym_x_DQUOTE] = ACTIONS(4526), [anon_sym_DQUOTE] = ACTIONS(4526), [anon_sym_i_BQUOTE] = ACTIONS(4526), [anon_sym_i_DQUOTE] = ACTIONS(4526), [anon_sym_iq_LBRACE] = ACTIONS(4526), [aux_sym_char_literal_token1] = ACTIONS(4526), [anon_sym_SQUOTE] = ACTIONS(4524), [anon_sym___DATE__] = ACTIONS(4524), [anon_sym___FILE__] = ACTIONS(4524), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4524), [anon_sym___FUNCTION__] = ACTIONS(4524), [anon_sym___LINE__] = ACTIONS(4524), [anon_sym___MODULE__] = ACTIONS(4524), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4524), [anon_sym___TIME__] = ACTIONS(4524), [anon_sym___TIMESTAMP__] = ACTIONS(4524), [anon_sym___VENDOR__] = ACTIONS(4524), [anon_sym___VERSION__] = ACTIONS(4524), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4526), [sym_float_literal] = ACTIONS(4526), [sym__string] = ACTIONS(4526), }, [1412] = { [sym_identifier] = ACTIONS(4528), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4531), [anon_sym_RBRACE] = ACTIONS(4531), [anon_sym_LBRACE] = ACTIONS(4531), [anon_sym_DOT] = ACTIONS(4531), [anon_sym_AMP] = ACTIONS(4531), [anon_sym_DASH] = ACTIONS(4528), [anon_sym_DASH_DASH] = ACTIONS(4531), [anon_sym_PLUS] = ACTIONS(4528), [anon_sym_PLUS_PLUS] = ACTIONS(4531), [anon_sym_BANG] = ACTIONS(4531), [anon_sym_LPAREN] = ACTIONS(4531), [anon_sym_RPAREN] = ACTIONS(4531), [anon_sym_LBRACK] = ACTIONS(4531), [anon_sym_SEMI] = ACTIONS(4531), [anon_sym_DOLLAR] = ACTIONS(4531), [anon_sym_STAR] = ACTIONS(4531), [anon_sym_TILDE] = ACTIONS(4531), [anon_sym_AT] = ACTIONS(4531), [sym_bool] = ACTIONS(4528), [sym_byte] = ACTIONS(4528), [sym_ubyte] = ACTIONS(4528), [sym_char] = ACTIONS(4528), [sym_short] = ACTIONS(4528), [sym_ushort] = ACTIONS(4528), [sym_int] = ACTIONS(4528), [sym_uint] = ACTIONS(4528), [sym_long] = ACTIONS(4528), [sym_ulong] = ACTIONS(4528), [sym_cent] = ACTIONS(4528), [sym_ucent] = ACTIONS(4528), [sym_wchar] = ACTIONS(4528), [sym_dchar] = ACTIONS(4528), [sym_float] = ACTIONS(4528), [sym_double] = ACTIONS(4528), [sym_real] = ACTIONS(4528), [sym_ifloat] = ACTIONS(4528), [sym_idouble] = ACTIONS(4528), [sym_ireal] = ACTIONS(4528), [sym_cfloat] = ACTIONS(4528), [sym_cdouble] = ACTIONS(4528), [sym_creal] = ACTIONS(4528), [sym_size_t] = ACTIONS(4528), [sym_ptrdiff_t] = ACTIONS(4528), [sym_string] = ACTIONS(4528), [sym_cstring] = ACTIONS(4528), [sym_dstring] = ACTIONS(4528), [sym_wstring] = ACTIONS(4528), [sym_noreturn] = ACTIONS(4528), [sym_true] = ACTIONS(4528), [sym_false] = ACTIONS(4528), [sym_null] = ACTIONS(4528), [sym_super] = ACTIONS(4528), [sym_this] = ACTIONS(4528), [sym_abstract] = ACTIONS(4528), [sym_alias] = ACTIONS(4528), [sym_align] = ACTIONS(4528), [sym_asm] = ACTIONS(4528), [sym_assert] = ACTIONS(4528), [sym_auto] = ACTIONS(4528), [sym_break] = ACTIONS(4528), [sym_case] = ACTIONS(4528), [sym_cast] = ACTIONS(4528), [sym_catch] = ACTIONS(4528), [sym_class] = ACTIONS(4528), [sym_const] = ACTIONS(4528), [sym_continue] = ACTIONS(4528), [sym_debug] = ACTIONS(4528), [sym_default] = ACTIONS(4528), [sym_delegate] = ACTIONS(4528), [sym_delete] = ACTIONS(4528), [sym_deprecated] = ACTIONS(4528), [sym_do] = ACTIONS(4528), [sym_else] = ACTIONS(4528), [sym_enum] = ACTIONS(4528), [sym_export] = ACTIONS(4528), [sym_extern] = ACTIONS(4528), [sym_final] = ACTIONS(4528), [sym_finally] = ACTIONS(4528), [sym_for] = ACTIONS(4528), [sym_foreach] = ACTIONS(4528), [sym_foreach_reverse] = ACTIONS(4528), [sym_function] = ACTIONS(4528), [sym_goto] = ACTIONS(4528), [sym_if] = ACTIONS(4528), [sym_immutable] = ACTIONS(4528), [sym_import] = ACTIONS(4528), [sym_in] = ACTIONS(4528), [sym_inout] = ACTIONS(4528), [sym_interface] = ACTIONS(4528), [sym_invariant] = ACTIONS(4528), [sym_is] = ACTIONS(4528), [sym_mixin] = ACTIONS(4528), [sym_new] = ACTIONS(4528), [sym_nothrow] = ACTIONS(4528), [sym_out] = ACTIONS(4528), [sym_override] = ACTIONS(4528), [sym_package] = ACTIONS(4528), [sym_pragma] = ACTIONS(4528), [sym_private] = ACTIONS(4528), [sym_protected] = ACTIONS(4528), [sym_public] = ACTIONS(4528), [sym_pure] = ACTIONS(4528), [sym_ref] = ACTIONS(4528), [sym_return] = ACTIONS(4528), [sym_scope] = ACTIONS(4528), [sym_shared] = ACTIONS(4528), [sym_static] = ACTIONS(4528), [sym_struct] = ACTIONS(4528), [sym_switch] = ACTIONS(4528), [sym_synchronized] = ACTIONS(4528), [sym_template] = ACTIONS(4528), [sym_throw] = ACTIONS(4528), [sym_try] = ACTIONS(4528), [sym_typeid] = ACTIONS(4528), [sym_typeof] = ACTIONS(4528), [sym_union] = ACTIONS(4528), [sym_unittest] = ACTIONS(4528), [sym_version] = ACTIONS(4528), [sym_while] = ACTIONS(4528), [sym_with] = ACTIONS(4528), [sym_gshared] = ACTIONS(4528), [sym_traits] = ACTIONS(4528), [sym_vector] = ACTIONS(4528), [sym_void] = ACTIONS(4528), [anon_sym_BQUOTE] = ACTIONS(4531), [anon_sym_r_DQUOTE] = ACTIONS(4531), [anon_sym_x_DQUOTE] = ACTIONS(4531), [anon_sym_DQUOTE] = ACTIONS(4531), [anon_sym_i_BQUOTE] = ACTIONS(4531), [anon_sym_i_DQUOTE] = ACTIONS(4531), [anon_sym_iq_LBRACE] = ACTIONS(4531), [aux_sym_char_literal_token1] = ACTIONS(4531), [anon_sym_SQUOTE] = ACTIONS(4528), [anon_sym___DATE__] = ACTIONS(4528), [anon_sym___FILE__] = ACTIONS(4528), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4528), [anon_sym___FUNCTION__] = ACTIONS(4528), [anon_sym___LINE__] = ACTIONS(4528), [anon_sym___MODULE__] = ACTIONS(4528), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4528), [anon_sym___TIME__] = ACTIONS(4528), [anon_sym___TIMESTAMP__] = ACTIONS(4528), [anon_sym___VENDOR__] = ACTIONS(4528), [anon_sym___VERSION__] = ACTIONS(4528), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4531), [sym_float_literal] = ACTIONS(4531), [sym__string] = ACTIONS(4531), }, [1413] = { [sym_identifier] = ACTIONS(4534), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4536), [anon_sym_RBRACE] = ACTIONS(4536), [anon_sym_LBRACE] = ACTIONS(4536), [anon_sym_DOT] = ACTIONS(4536), [anon_sym_AMP] = ACTIONS(4536), [anon_sym_DASH] = ACTIONS(4534), [anon_sym_DASH_DASH] = ACTIONS(4536), [anon_sym_PLUS] = ACTIONS(4534), [anon_sym_PLUS_PLUS] = ACTIONS(4536), [anon_sym_BANG] = ACTIONS(4536), [anon_sym_LPAREN] = ACTIONS(4536), [anon_sym_RPAREN] = ACTIONS(4536), [anon_sym_LBRACK] = ACTIONS(4536), [anon_sym_SEMI] = ACTIONS(4536), [anon_sym_DOLLAR] = ACTIONS(4536), [anon_sym_STAR] = ACTIONS(4536), [anon_sym_TILDE] = ACTIONS(4536), [anon_sym_AT] = ACTIONS(4536), [sym_bool] = ACTIONS(4534), [sym_byte] = ACTIONS(4534), [sym_ubyte] = ACTIONS(4534), [sym_char] = ACTIONS(4534), [sym_short] = ACTIONS(4534), [sym_ushort] = ACTIONS(4534), [sym_int] = ACTIONS(4534), [sym_uint] = ACTIONS(4534), [sym_long] = ACTIONS(4534), [sym_ulong] = ACTIONS(4534), [sym_cent] = ACTIONS(4534), [sym_ucent] = ACTIONS(4534), [sym_wchar] = ACTIONS(4534), [sym_dchar] = ACTIONS(4534), [sym_float] = ACTIONS(4534), [sym_double] = ACTIONS(4534), [sym_real] = ACTIONS(4534), [sym_ifloat] = ACTIONS(4534), [sym_idouble] = ACTIONS(4534), [sym_ireal] = ACTIONS(4534), [sym_cfloat] = ACTIONS(4534), [sym_cdouble] = ACTIONS(4534), [sym_creal] = ACTIONS(4534), [sym_size_t] = ACTIONS(4534), [sym_ptrdiff_t] = ACTIONS(4534), [sym_string] = ACTIONS(4534), [sym_cstring] = ACTIONS(4534), [sym_dstring] = ACTIONS(4534), [sym_wstring] = ACTIONS(4534), [sym_noreturn] = ACTIONS(4534), [sym_true] = ACTIONS(4534), [sym_false] = ACTIONS(4534), [sym_null] = ACTIONS(4534), [sym_super] = ACTIONS(4534), [sym_this] = ACTIONS(4534), [sym_abstract] = ACTIONS(4534), [sym_alias] = ACTIONS(4534), [sym_align] = ACTIONS(4534), [sym_asm] = ACTIONS(4534), [sym_assert] = ACTIONS(4534), [sym_auto] = ACTIONS(4534), [sym_break] = ACTIONS(4534), [sym_case] = ACTIONS(4534), [sym_cast] = ACTIONS(4534), [sym_catch] = ACTIONS(4534), [sym_class] = ACTIONS(4534), [sym_const] = ACTIONS(4534), [sym_continue] = ACTIONS(4534), [sym_debug] = ACTIONS(4534), [sym_default] = ACTIONS(4534), [sym_delegate] = ACTIONS(4534), [sym_delete] = ACTIONS(4534), [sym_deprecated] = ACTIONS(4534), [sym_do] = ACTIONS(4534), [sym_else] = ACTIONS(4534), [sym_enum] = ACTIONS(4534), [sym_export] = ACTIONS(4534), [sym_extern] = ACTIONS(4534), [sym_final] = ACTIONS(4534), [sym_finally] = ACTIONS(4534), [sym_for] = ACTIONS(4534), [sym_foreach] = ACTIONS(4534), [sym_foreach_reverse] = ACTIONS(4534), [sym_function] = ACTIONS(4534), [sym_goto] = ACTIONS(4534), [sym_if] = ACTIONS(4534), [sym_immutable] = ACTIONS(4534), [sym_import] = ACTIONS(4534), [sym_in] = ACTIONS(4534), [sym_inout] = ACTIONS(4534), [sym_interface] = ACTIONS(4534), [sym_invariant] = ACTIONS(4534), [sym_is] = ACTIONS(4534), [sym_mixin] = ACTIONS(4534), [sym_new] = ACTIONS(4534), [sym_nothrow] = ACTIONS(4534), [sym_out] = ACTIONS(4534), [sym_override] = ACTIONS(4534), [sym_package] = ACTIONS(4534), [sym_pragma] = ACTIONS(4534), [sym_private] = ACTIONS(4534), [sym_protected] = ACTIONS(4534), [sym_public] = ACTIONS(4534), [sym_pure] = ACTIONS(4534), [sym_ref] = ACTIONS(4534), [sym_return] = ACTIONS(4534), [sym_scope] = ACTIONS(4534), [sym_shared] = ACTIONS(4534), [sym_static] = ACTIONS(4534), [sym_struct] = ACTIONS(4534), [sym_switch] = ACTIONS(4534), [sym_synchronized] = ACTIONS(4534), [sym_template] = ACTIONS(4534), [sym_throw] = ACTIONS(4534), [sym_try] = ACTIONS(4534), [sym_typeid] = ACTIONS(4534), [sym_typeof] = ACTIONS(4534), [sym_union] = ACTIONS(4534), [sym_unittest] = ACTIONS(4534), [sym_version] = ACTIONS(4534), [sym_while] = ACTIONS(4534), [sym_with] = ACTIONS(4534), [sym_gshared] = ACTIONS(4534), [sym_traits] = ACTIONS(4534), [sym_vector] = ACTIONS(4534), [sym_void] = ACTIONS(4534), [anon_sym_BQUOTE] = ACTIONS(4536), [anon_sym_r_DQUOTE] = ACTIONS(4536), [anon_sym_x_DQUOTE] = ACTIONS(4536), [anon_sym_DQUOTE] = ACTIONS(4536), [anon_sym_i_BQUOTE] = ACTIONS(4536), [anon_sym_i_DQUOTE] = ACTIONS(4536), [anon_sym_iq_LBRACE] = ACTIONS(4536), [aux_sym_char_literal_token1] = ACTIONS(4536), [anon_sym_SQUOTE] = ACTIONS(4534), [anon_sym___DATE__] = ACTIONS(4534), [anon_sym___FILE__] = ACTIONS(4534), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4534), [anon_sym___FUNCTION__] = ACTIONS(4534), [anon_sym___LINE__] = ACTIONS(4534), [anon_sym___MODULE__] = ACTIONS(4534), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4534), [anon_sym___TIME__] = ACTIONS(4534), [anon_sym___TIMESTAMP__] = ACTIONS(4534), [anon_sym___VENDOR__] = ACTIONS(4534), [anon_sym___VERSION__] = ACTIONS(4534), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4536), [sym_float_literal] = ACTIONS(4536), [sym__string] = ACTIONS(4536), }, [1414] = { [sym_identifier] = ACTIONS(4538), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4540), [anon_sym_RBRACE] = ACTIONS(4540), [anon_sym_LBRACE] = ACTIONS(4540), [anon_sym_DOT] = ACTIONS(4540), [anon_sym_AMP] = ACTIONS(4540), [anon_sym_DASH] = ACTIONS(4538), [anon_sym_DASH_DASH] = ACTIONS(4540), [anon_sym_PLUS] = ACTIONS(4538), [anon_sym_PLUS_PLUS] = ACTIONS(4540), [anon_sym_BANG] = ACTIONS(4540), [anon_sym_LPAREN] = ACTIONS(4540), [anon_sym_RPAREN] = ACTIONS(4540), [anon_sym_LBRACK] = ACTIONS(4540), [anon_sym_SEMI] = ACTIONS(4540), [anon_sym_DOLLAR] = ACTIONS(4540), [anon_sym_STAR] = ACTIONS(4540), [anon_sym_TILDE] = ACTIONS(4540), [anon_sym_AT] = ACTIONS(4540), [sym_bool] = ACTIONS(4538), [sym_byte] = ACTIONS(4538), [sym_ubyte] = ACTIONS(4538), [sym_char] = ACTIONS(4538), [sym_short] = ACTIONS(4538), [sym_ushort] = ACTIONS(4538), [sym_int] = ACTIONS(4538), [sym_uint] = ACTIONS(4538), [sym_long] = ACTIONS(4538), [sym_ulong] = ACTIONS(4538), [sym_cent] = ACTIONS(4538), [sym_ucent] = ACTIONS(4538), [sym_wchar] = ACTIONS(4538), [sym_dchar] = ACTIONS(4538), [sym_float] = ACTIONS(4538), [sym_double] = ACTIONS(4538), [sym_real] = ACTIONS(4538), [sym_ifloat] = ACTIONS(4538), [sym_idouble] = ACTIONS(4538), [sym_ireal] = ACTIONS(4538), [sym_cfloat] = ACTIONS(4538), [sym_cdouble] = ACTIONS(4538), [sym_creal] = ACTIONS(4538), [sym_size_t] = ACTIONS(4538), [sym_ptrdiff_t] = ACTIONS(4538), [sym_string] = ACTIONS(4538), [sym_cstring] = ACTIONS(4538), [sym_dstring] = ACTIONS(4538), [sym_wstring] = ACTIONS(4538), [sym_noreturn] = ACTIONS(4538), [sym_true] = ACTIONS(4538), [sym_false] = ACTIONS(4538), [sym_null] = ACTIONS(4538), [sym_super] = ACTIONS(4538), [sym_this] = ACTIONS(4538), [sym_abstract] = ACTIONS(4538), [sym_alias] = ACTIONS(4538), [sym_align] = ACTIONS(4538), [sym_asm] = ACTIONS(4538), [sym_assert] = ACTIONS(4538), [sym_auto] = ACTIONS(4538), [sym_break] = ACTIONS(4538), [sym_case] = ACTIONS(4538), [sym_cast] = ACTIONS(4538), [sym_catch] = ACTIONS(4538), [sym_class] = ACTIONS(4538), [sym_const] = ACTIONS(4538), [sym_continue] = ACTIONS(4538), [sym_debug] = ACTIONS(4538), [sym_default] = ACTIONS(4538), [sym_delegate] = ACTIONS(4538), [sym_delete] = ACTIONS(4538), [sym_deprecated] = ACTIONS(4538), [sym_do] = ACTIONS(4538), [sym_else] = ACTIONS(4538), [sym_enum] = ACTIONS(4538), [sym_export] = ACTIONS(4538), [sym_extern] = ACTIONS(4538), [sym_final] = ACTIONS(4538), [sym_finally] = ACTIONS(4538), [sym_for] = ACTIONS(4538), [sym_foreach] = ACTIONS(4538), [sym_foreach_reverse] = ACTIONS(4538), [sym_function] = ACTIONS(4538), [sym_goto] = ACTIONS(4538), [sym_if] = ACTIONS(4538), [sym_immutable] = ACTIONS(4538), [sym_import] = ACTIONS(4538), [sym_in] = ACTIONS(4538), [sym_inout] = ACTIONS(4538), [sym_interface] = ACTIONS(4538), [sym_invariant] = ACTIONS(4538), [sym_is] = ACTIONS(4538), [sym_mixin] = ACTIONS(4538), [sym_new] = ACTIONS(4538), [sym_nothrow] = ACTIONS(4538), [sym_out] = ACTIONS(4538), [sym_override] = ACTIONS(4538), [sym_package] = ACTIONS(4538), [sym_pragma] = ACTIONS(4538), [sym_private] = ACTIONS(4538), [sym_protected] = ACTIONS(4538), [sym_public] = ACTIONS(4538), [sym_pure] = ACTIONS(4538), [sym_ref] = ACTIONS(4538), [sym_return] = ACTIONS(4538), [sym_scope] = ACTIONS(4538), [sym_shared] = ACTIONS(4538), [sym_static] = ACTIONS(4538), [sym_struct] = ACTIONS(4538), [sym_switch] = ACTIONS(4538), [sym_synchronized] = ACTIONS(4538), [sym_template] = ACTIONS(4538), [sym_throw] = ACTIONS(4538), [sym_try] = ACTIONS(4538), [sym_typeid] = ACTIONS(4538), [sym_typeof] = ACTIONS(4538), [sym_union] = ACTIONS(4538), [sym_unittest] = ACTIONS(4538), [sym_version] = ACTIONS(4538), [sym_while] = ACTIONS(4538), [sym_with] = ACTIONS(4538), [sym_gshared] = ACTIONS(4538), [sym_traits] = ACTIONS(4538), [sym_vector] = ACTIONS(4538), [sym_void] = ACTIONS(4538), [anon_sym_BQUOTE] = ACTIONS(4540), [anon_sym_r_DQUOTE] = ACTIONS(4540), [anon_sym_x_DQUOTE] = ACTIONS(4540), [anon_sym_DQUOTE] = ACTIONS(4540), [anon_sym_i_BQUOTE] = ACTIONS(4540), [anon_sym_i_DQUOTE] = ACTIONS(4540), [anon_sym_iq_LBRACE] = ACTIONS(4540), [aux_sym_char_literal_token1] = ACTIONS(4540), [anon_sym_SQUOTE] = ACTIONS(4538), [anon_sym___DATE__] = ACTIONS(4538), [anon_sym___FILE__] = ACTIONS(4538), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4538), [anon_sym___FUNCTION__] = ACTIONS(4538), [anon_sym___LINE__] = ACTIONS(4538), [anon_sym___MODULE__] = ACTIONS(4538), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4538), [anon_sym___TIME__] = ACTIONS(4538), [anon_sym___TIMESTAMP__] = ACTIONS(4538), [anon_sym___VENDOR__] = ACTIONS(4538), [anon_sym___VERSION__] = ACTIONS(4538), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4540), [sym_float_literal] = ACTIONS(4540), [sym__string] = ACTIONS(4540), }, [1415] = { [sym_identifier] = ACTIONS(4542), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4544), [anon_sym_RBRACE] = ACTIONS(4544), [anon_sym_LBRACE] = ACTIONS(4544), [anon_sym_DOT] = ACTIONS(4544), [anon_sym_AMP] = ACTIONS(4544), [anon_sym_DASH] = ACTIONS(4542), [anon_sym_DASH_DASH] = ACTIONS(4544), [anon_sym_PLUS] = ACTIONS(4542), [anon_sym_PLUS_PLUS] = ACTIONS(4544), [anon_sym_BANG] = ACTIONS(4544), [anon_sym_LPAREN] = ACTIONS(4544), [anon_sym_RPAREN] = ACTIONS(4544), [anon_sym_LBRACK] = ACTIONS(4544), [anon_sym_SEMI] = ACTIONS(4544), [anon_sym_DOLLAR] = ACTIONS(4544), [anon_sym_STAR] = ACTIONS(4544), [anon_sym_TILDE] = ACTIONS(4544), [anon_sym_AT] = ACTIONS(4544), [sym_bool] = ACTIONS(4542), [sym_byte] = ACTIONS(4542), [sym_ubyte] = ACTIONS(4542), [sym_char] = ACTIONS(4542), [sym_short] = ACTIONS(4542), [sym_ushort] = ACTIONS(4542), [sym_int] = ACTIONS(4542), [sym_uint] = ACTIONS(4542), [sym_long] = ACTIONS(4542), [sym_ulong] = ACTIONS(4542), [sym_cent] = ACTIONS(4542), [sym_ucent] = ACTIONS(4542), [sym_wchar] = ACTIONS(4542), [sym_dchar] = ACTIONS(4542), [sym_float] = ACTIONS(4542), [sym_double] = ACTIONS(4542), [sym_real] = ACTIONS(4542), [sym_ifloat] = ACTIONS(4542), [sym_idouble] = ACTIONS(4542), [sym_ireal] = ACTIONS(4542), [sym_cfloat] = ACTIONS(4542), [sym_cdouble] = ACTIONS(4542), [sym_creal] = ACTIONS(4542), [sym_size_t] = ACTIONS(4542), [sym_ptrdiff_t] = ACTIONS(4542), [sym_string] = ACTIONS(4542), [sym_cstring] = ACTIONS(4542), [sym_dstring] = ACTIONS(4542), [sym_wstring] = ACTIONS(4542), [sym_noreturn] = ACTIONS(4542), [sym_true] = ACTIONS(4542), [sym_false] = ACTIONS(4542), [sym_null] = ACTIONS(4542), [sym_super] = ACTIONS(4542), [sym_this] = ACTIONS(4542), [sym_abstract] = ACTIONS(4542), [sym_alias] = ACTIONS(4542), [sym_align] = ACTIONS(4542), [sym_asm] = ACTIONS(4542), [sym_assert] = ACTIONS(4542), [sym_auto] = ACTIONS(4542), [sym_break] = ACTIONS(4542), [sym_case] = ACTIONS(4542), [sym_cast] = ACTIONS(4542), [sym_catch] = ACTIONS(4542), [sym_class] = ACTIONS(4542), [sym_const] = ACTIONS(4542), [sym_continue] = ACTIONS(4542), [sym_debug] = ACTIONS(4542), [sym_default] = ACTIONS(4542), [sym_delegate] = ACTIONS(4542), [sym_delete] = ACTIONS(4542), [sym_deprecated] = ACTIONS(4542), [sym_do] = ACTIONS(4542), [sym_else] = ACTIONS(4542), [sym_enum] = ACTIONS(4542), [sym_export] = ACTIONS(4542), [sym_extern] = ACTIONS(4542), [sym_final] = ACTIONS(4542), [sym_finally] = ACTIONS(4542), [sym_for] = ACTIONS(4542), [sym_foreach] = ACTIONS(4542), [sym_foreach_reverse] = ACTIONS(4542), [sym_function] = ACTIONS(4542), [sym_goto] = ACTIONS(4542), [sym_if] = ACTIONS(4542), [sym_immutable] = ACTIONS(4542), [sym_import] = ACTIONS(4542), [sym_in] = ACTIONS(4542), [sym_inout] = ACTIONS(4542), [sym_interface] = ACTIONS(4542), [sym_invariant] = ACTIONS(4542), [sym_is] = ACTIONS(4542), [sym_mixin] = ACTIONS(4542), [sym_new] = ACTIONS(4542), [sym_nothrow] = ACTIONS(4542), [sym_out] = ACTIONS(4542), [sym_override] = ACTIONS(4542), [sym_package] = ACTIONS(4542), [sym_pragma] = ACTIONS(4542), [sym_private] = ACTIONS(4542), [sym_protected] = ACTIONS(4542), [sym_public] = ACTIONS(4542), [sym_pure] = ACTIONS(4542), [sym_ref] = ACTIONS(4542), [sym_return] = ACTIONS(4542), [sym_scope] = ACTIONS(4542), [sym_shared] = ACTIONS(4542), [sym_static] = ACTIONS(4542), [sym_struct] = ACTIONS(4542), [sym_switch] = ACTIONS(4542), [sym_synchronized] = ACTIONS(4542), [sym_template] = ACTIONS(4542), [sym_throw] = ACTIONS(4542), [sym_try] = ACTIONS(4542), [sym_typeid] = ACTIONS(4542), [sym_typeof] = ACTIONS(4542), [sym_union] = ACTIONS(4542), [sym_unittest] = ACTIONS(4542), [sym_version] = ACTIONS(4542), [sym_while] = ACTIONS(4542), [sym_with] = ACTIONS(4542), [sym_gshared] = ACTIONS(4542), [sym_traits] = ACTIONS(4542), [sym_vector] = ACTIONS(4542), [sym_void] = ACTIONS(4542), [anon_sym_BQUOTE] = ACTIONS(4544), [anon_sym_r_DQUOTE] = ACTIONS(4544), [anon_sym_x_DQUOTE] = ACTIONS(4544), [anon_sym_DQUOTE] = ACTIONS(4544), [anon_sym_i_BQUOTE] = ACTIONS(4544), [anon_sym_i_DQUOTE] = ACTIONS(4544), [anon_sym_iq_LBRACE] = ACTIONS(4544), [aux_sym_char_literal_token1] = ACTIONS(4544), [anon_sym_SQUOTE] = ACTIONS(4542), [anon_sym___DATE__] = ACTIONS(4542), [anon_sym___FILE__] = ACTIONS(4542), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4542), [anon_sym___FUNCTION__] = ACTIONS(4542), [anon_sym___LINE__] = ACTIONS(4542), [anon_sym___MODULE__] = ACTIONS(4542), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4542), [anon_sym___TIME__] = ACTIONS(4542), [anon_sym___TIMESTAMP__] = ACTIONS(4542), [anon_sym___VENDOR__] = ACTIONS(4542), [anon_sym___VERSION__] = ACTIONS(4542), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4544), [sym_float_literal] = ACTIONS(4544), [sym__string] = ACTIONS(4544), }, [1416] = { [sym_identifier] = ACTIONS(4546), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4548), [anon_sym_RBRACE] = ACTIONS(4548), [anon_sym_LBRACE] = ACTIONS(4548), [anon_sym_DOT] = ACTIONS(4548), [anon_sym_AMP] = ACTIONS(4548), [anon_sym_DASH] = ACTIONS(4546), [anon_sym_DASH_DASH] = ACTIONS(4548), [anon_sym_PLUS] = ACTIONS(4546), [anon_sym_PLUS_PLUS] = ACTIONS(4548), [anon_sym_BANG] = ACTIONS(4548), [anon_sym_LPAREN] = ACTIONS(4548), [anon_sym_RPAREN] = ACTIONS(4548), [anon_sym_LBRACK] = ACTIONS(4548), [anon_sym_SEMI] = ACTIONS(4548), [anon_sym_DOLLAR] = ACTIONS(4548), [anon_sym_STAR] = ACTIONS(4548), [anon_sym_TILDE] = ACTIONS(4548), [anon_sym_AT] = ACTIONS(4548), [sym_bool] = ACTIONS(4546), [sym_byte] = ACTIONS(4546), [sym_ubyte] = ACTIONS(4546), [sym_char] = ACTIONS(4546), [sym_short] = ACTIONS(4546), [sym_ushort] = ACTIONS(4546), [sym_int] = ACTIONS(4546), [sym_uint] = ACTIONS(4546), [sym_long] = ACTIONS(4546), [sym_ulong] = ACTIONS(4546), [sym_cent] = ACTIONS(4546), [sym_ucent] = ACTIONS(4546), [sym_wchar] = ACTIONS(4546), [sym_dchar] = ACTIONS(4546), [sym_float] = ACTIONS(4546), [sym_double] = ACTIONS(4546), [sym_real] = ACTIONS(4546), [sym_ifloat] = ACTIONS(4546), [sym_idouble] = ACTIONS(4546), [sym_ireal] = ACTIONS(4546), [sym_cfloat] = ACTIONS(4546), [sym_cdouble] = ACTIONS(4546), [sym_creal] = ACTIONS(4546), [sym_size_t] = ACTIONS(4546), [sym_ptrdiff_t] = ACTIONS(4546), [sym_string] = ACTIONS(4546), [sym_cstring] = ACTIONS(4546), [sym_dstring] = ACTIONS(4546), [sym_wstring] = ACTIONS(4546), [sym_noreturn] = ACTIONS(4546), [sym_true] = ACTIONS(4546), [sym_false] = ACTIONS(4546), [sym_null] = ACTIONS(4546), [sym_super] = ACTIONS(4546), [sym_this] = ACTIONS(4546), [sym_abstract] = ACTIONS(4546), [sym_alias] = ACTIONS(4546), [sym_align] = ACTIONS(4546), [sym_asm] = ACTIONS(4546), [sym_assert] = ACTIONS(4546), [sym_auto] = ACTIONS(4546), [sym_break] = ACTIONS(4546), [sym_case] = ACTIONS(4546), [sym_cast] = ACTIONS(4546), [sym_catch] = ACTIONS(4546), [sym_class] = ACTIONS(4546), [sym_const] = ACTIONS(4546), [sym_continue] = ACTIONS(4546), [sym_debug] = ACTIONS(4546), [sym_default] = ACTIONS(4546), [sym_delegate] = ACTIONS(4546), [sym_delete] = ACTIONS(4546), [sym_deprecated] = ACTIONS(4546), [sym_do] = ACTIONS(4546), [sym_else] = ACTIONS(4546), [sym_enum] = ACTIONS(4546), [sym_export] = ACTIONS(4546), [sym_extern] = ACTIONS(4546), [sym_final] = ACTIONS(4546), [sym_finally] = ACTIONS(4546), [sym_for] = ACTIONS(4546), [sym_foreach] = ACTIONS(4546), [sym_foreach_reverse] = ACTIONS(4546), [sym_function] = ACTIONS(4546), [sym_goto] = ACTIONS(4546), [sym_if] = ACTIONS(4546), [sym_immutable] = ACTIONS(4546), [sym_import] = ACTIONS(4546), [sym_in] = ACTIONS(4546), [sym_inout] = ACTIONS(4546), [sym_interface] = ACTIONS(4546), [sym_invariant] = ACTIONS(4546), [sym_is] = ACTIONS(4546), [sym_mixin] = ACTIONS(4546), [sym_new] = ACTIONS(4546), [sym_nothrow] = ACTIONS(4546), [sym_out] = ACTIONS(4546), [sym_override] = ACTIONS(4546), [sym_package] = ACTIONS(4546), [sym_pragma] = ACTIONS(4546), [sym_private] = ACTIONS(4546), [sym_protected] = ACTIONS(4546), [sym_public] = ACTIONS(4546), [sym_pure] = ACTIONS(4546), [sym_ref] = ACTIONS(4546), [sym_return] = ACTIONS(4546), [sym_scope] = ACTIONS(4546), [sym_shared] = ACTIONS(4546), [sym_static] = ACTIONS(4546), [sym_struct] = ACTIONS(4546), [sym_switch] = ACTIONS(4546), [sym_synchronized] = ACTIONS(4546), [sym_template] = ACTIONS(4546), [sym_throw] = ACTIONS(4546), [sym_try] = ACTIONS(4546), [sym_typeid] = ACTIONS(4546), [sym_typeof] = ACTIONS(4546), [sym_union] = ACTIONS(4546), [sym_unittest] = ACTIONS(4546), [sym_version] = ACTIONS(4546), [sym_while] = ACTIONS(4546), [sym_with] = ACTIONS(4546), [sym_gshared] = ACTIONS(4546), [sym_traits] = ACTIONS(4546), [sym_vector] = ACTIONS(4546), [sym_void] = ACTIONS(4546), [anon_sym_BQUOTE] = ACTIONS(4548), [anon_sym_r_DQUOTE] = ACTIONS(4548), [anon_sym_x_DQUOTE] = ACTIONS(4548), [anon_sym_DQUOTE] = ACTIONS(4548), [anon_sym_i_BQUOTE] = ACTIONS(4548), [anon_sym_i_DQUOTE] = ACTIONS(4548), [anon_sym_iq_LBRACE] = ACTIONS(4548), [aux_sym_char_literal_token1] = ACTIONS(4548), [anon_sym_SQUOTE] = ACTIONS(4546), [anon_sym___DATE__] = ACTIONS(4546), [anon_sym___FILE__] = ACTIONS(4546), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4546), [anon_sym___FUNCTION__] = ACTIONS(4546), [anon_sym___LINE__] = ACTIONS(4546), [anon_sym___MODULE__] = ACTIONS(4546), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4546), [anon_sym___TIME__] = ACTIONS(4546), [anon_sym___TIMESTAMP__] = ACTIONS(4546), [anon_sym___VENDOR__] = ACTIONS(4546), [anon_sym___VERSION__] = ACTIONS(4546), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4548), [sym_float_literal] = ACTIONS(4548), [sym__string] = ACTIONS(4548), }, [1417] = { [sym_identifier] = ACTIONS(4550), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4552), [anon_sym_RBRACE] = ACTIONS(4552), [anon_sym_LBRACE] = ACTIONS(4552), [anon_sym_DOT] = ACTIONS(4552), [anon_sym_AMP] = ACTIONS(4552), [anon_sym_DASH] = ACTIONS(4550), [anon_sym_DASH_DASH] = ACTIONS(4552), [anon_sym_PLUS] = ACTIONS(4550), [anon_sym_PLUS_PLUS] = ACTIONS(4552), [anon_sym_BANG] = ACTIONS(4552), [anon_sym_LPAREN] = ACTIONS(4552), [anon_sym_RPAREN] = ACTIONS(4552), [anon_sym_LBRACK] = ACTIONS(4552), [anon_sym_SEMI] = ACTIONS(4552), [anon_sym_DOLLAR] = ACTIONS(4552), [anon_sym_STAR] = ACTIONS(4552), [anon_sym_TILDE] = ACTIONS(4552), [anon_sym_AT] = ACTIONS(4552), [sym_bool] = ACTIONS(4550), [sym_byte] = ACTIONS(4550), [sym_ubyte] = ACTIONS(4550), [sym_char] = ACTIONS(4550), [sym_short] = ACTIONS(4550), [sym_ushort] = ACTIONS(4550), [sym_int] = ACTIONS(4550), [sym_uint] = ACTIONS(4550), [sym_long] = ACTIONS(4550), [sym_ulong] = ACTIONS(4550), [sym_cent] = ACTIONS(4550), [sym_ucent] = ACTIONS(4550), [sym_wchar] = ACTIONS(4550), [sym_dchar] = ACTIONS(4550), [sym_float] = ACTIONS(4550), [sym_double] = ACTIONS(4550), [sym_real] = ACTIONS(4550), [sym_ifloat] = ACTIONS(4550), [sym_idouble] = ACTIONS(4550), [sym_ireal] = ACTIONS(4550), [sym_cfloat] = ACTIONS(4550), [sym_cdouble] = ACTIONS(4550), [sym_creal] = ACTIONS(4550), [sym_size_t] = ACTIONS(4550), [sym_ptrdiff_t] = ACTIONS(4550), [sym_string] = ACTIONS(4550), [sym_cstring] = ACTIONS(4550), [sym_dstring] = ACTIONS(4550), [sym_wstring] = ACTIONS(4550), [sym_noreturn] = ACTIONS(4550), [sym_true] = ACTIONS(4550), [sym_false] = ACTIONS(4550), [sym_null] = ACTIONS(4550), [sym_super] = ACTIONS(4550), [sym_this] = ACTIONS(4550), [sym_abstract] = ACTIONS(4550), [sym_alias] = ACTIONS(4550), [sym_align] = ACTIONS(4550), [sym_asm] = ACTIONS(4550), [sym_assert] = ACTIONS(4550), [sym_auto] = ACTIONS(4550), [sym_break] = ACTIONS(4550), [sym_case] = ACTIONS(4550), [sym_cast] = ACTIONS(4550), [sym_catch] = ACTIONS(4550), [sym_class] = ACTIONS(4550), [sym_const] = ACTIONS(4550), [sym_continue] = ACTIONS(4550), [sym_debug] = ACTIONS(4550), [sym_default] = ACTIONS(4550), [sym_delegate] = ACTIONS(4550), [sym_delete] = ACTIONS(4550), [sym_deprecated] = ACTIONS(4550), [sym_do] = ACTIONS(4550), [sym_else] = ACTIONS(4550), [sym_enum] = ACTIONS(4550), [sym_export] = ACTIONS(4550), [sym_extern] = ACTIONS(4550), [sym_final] = ACTIONS(4550), [sym_finally] = ACTIONS(4550), [sym_for] = ACTIONS(4550), [sym_foreach] = ACTIONS(4550), [sym_foreach_reverse] = ACTIONS(4550), [sym_function] = ACTIONS(4550), [sym_goto] = ACTIONS(4550), [sym_if] = ACTIONS(4550), [sym_immutable] = ACTIONS(4550), [sym_import] = ACTIONS(4550), [sym_in] = ACTIONS(4550), [sym_inout] = ACTIONS(4550), [sym_interface] = ACTIONS(4550), [sym_invariant] = ACTIONS(4550), [sym_is] = ACTIONS(4550), [sym_mixin] = ACTIONS(4550), [sym_new] = ACTIONS(4550), [sym_nothrow] = ACTIONS(4550), [sym_out] = ACTIONS(4550), [sym_override] = ACTIONS(4550), [sym_package] = ACTIONS(4550), [sym_pragma] = ACTIONS(4550), [sym_private] = ACTIONS(4550), [sym_protected] = ACTIONS(4550), [sym_public] = ACTIONS(4550), [sym_pure] = ACTIONS(4550), [sym_ref] = ACTIONS(4550), [sym_return] = ACTIONS(4550), [sym_scope] = ACTIONS(4550), [sym_shared] = ACTIONS(4550), [sym_static] = ACTIONS(4550), [sym_struct] = ACTIONS(4550), [sym_switch] = ACTIONS(4550), [sym_synchronized] = ACTIONS(4550), [sym_template] = ACTIONS(4550), [sym_throw] = ACTIONS(4550), [sym_try] = ACTIONS(4550), [sym_typeid] = ACTIONS(4550), [sym_typeof] = ACTIONS(4550), [sym_union] = ACTIONS(4550), [sym_unittest] = ACTIONS(4550), [sym_version] = ACTIONS(4550), [sym_while] = ACTIONS(4550), [sym_with] = ACTIONS(4550), [sym_gshared] = ACTIONS(4550), [sym_traits] = ACTIONS(4550), [sym_vector] = ACTIONS(4550), [sym_void] = ACTIONS(4550), [anon_sym_BQUOTE] = ACTIONS(4552), [anon_sym_r_DQUOTE] = ACTIONS(4552), [anon_sym_x_DQUOTE] = ACTIONS(4552), [anon_sym_DQUOTE] = ACTIONS(4552), [anon_sym_i_BQUOTE] = ACTIONS(4552), [anon_sym_i_DQUOTE] = ACTIONS(4552), [anon_sym_iq_LBRACE] = ACTIONS(4552), [aux_sym_char_literal_token1] = ACTIONS(4552), [anon_sym_SQUOTE] = ACTIONS(4550), [anon_sym___DATE__] = ACTIONS(4550), [anon_sym___FILE__] = ACTIONS(4550), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4550), [anon_sym___FUNCTION__] = ACTIONS(4550), [anon_sym___LINE__] = ACTIONS(4550), [anon_sym___MODULE__] = ACTIONS(4550), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4550), [anon_sym___TIME__] = ACTIONS(4550), [anon_sym___TIMESTAMP__] = ACTIONS(4550), [anon_sym___VENDOR__] = ACTIONS(4550), [anon_sym___VERSION__] = ACTIONS(4550), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4552), [sym_float_literal] = ACTIONS(4552), [sym__string] = ACTIONS(4552), }, [1418] = { [sym_identifier] = ACTIONS(4554), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4556), [anon_sym_RBRACE] = ACTIONS(4556), [anon_sym_LBRACE] = ACTIONS(4556), [anon_sym_DOT] = ACTIONS(4556), [anon_sym_AMP] = ACTIONS(4556), [anon_sym_DASH] = ACTIONS(4554), [anon_sym_DASH_DASH] = ACTIONS(4556), [anon_sym_PLUS] = ACTIONS(4554), [anon_sym_PLUS_PLUS] = ACTIONS(4556), [anon_sym_BANG] = ACTIONS(4556), [anon_sym_LPAREN] = ACTIONS(4556), [anon_sym_RPAREN] = ACTIONS(4556), [anon_sym_LBRACK] = ACTIONS(4556), [anon_sym_SEMI] = ACTIONS(4556), [anon_sym_DOLLAR] = ACTIONS(4556), [anon_sym_STAR] = ACTIONS(4556), [anon_sym_TILDE] = ACTIONS(4556), [anon_sym_AT] = ACTIONS(4556), [sym_bool] = ACTIONS(4554), [sym_byte] = ACTIONS(4554), [sym_ubyte] = ACTIONS(4554), [sym_char] = ACTIONS(4554), [sym_short] = ACTIONS(4554), [sym_ushort] = ACTIONS(4554), [sym_int] = ACTIONS(4554), [sym_uint] = ACTIONS(4554), [sym_long] = ACTIONS(4554), [sym_ulong] = ACTIONS(4554), [sym_cent] = ACTIONS(4554), [sym_ucent] = ACTIONS(4554), [sym_wchar] = ACTIONS(4554), [sym_dchar] = ACTIONS(4554), [sym_float] = ACTIONS(4554), [sym_double] = ACTIONS(4554), [sym_real] = ACTIONS(4554), [sym_ifloat] = ACTIONS(4554), [sym_idouble] = ACTIONS(4554), [sym_ireal] = ACTIONS(4554), [sym_cfloat] = ACTIONS(4554), [sym_cdouble] = ACTIONS(4554), [sym_creal] = ACTIONS(4554), [sym_size_t] = ACTIONS(4554), [sym_ptrdiff_t] = ACTIONS(4554), [sym_string] = ACTIONS(4554), [sym_cstring] = ACTIONS(4554), [sym_dstring] = ACTIONS(4554), [sym_wstring] = ACTIONS(4554), [sym_noreturn] = ACTIONS(4554), [sym_true] = ACTIONS(4554), [sym_false] = ACTIONS(4554), [sym_null] = ACTIONS(4554), [sym_super] = ACTIONS(4554), [sym_this] = ACTIONS(4554), [sym_abstract] = ACTIONS(4554), [sym_alias] = ACTIONS(4554), [sym_align] = ACTIONS(4554), [sym_asm] = ACTIONS(4554), [sym_assert] = ACTIONS(4554), [sym_auto] = ACTIONS(4554), [sym_break] = ACTIONS(4554), [sym_case] = ACTIONS(4554), [sym_cast] = ACTIONS(4554), [sym_catch] = ACTIONS(4554), [sym_class] = ACTIONS(4554), [sym_const] = ACTIONS(4554), [sym_continue] = ACTIONS(4554), [sym_debug] = ACTIONS(4554), [sym_default] = ACTIONS(4554), [sym_delegate] = ACTIONS(4554), [sym_delete] = ACTIONS(4554), [sym_deprecated] = ACTIONS(4554), [sym_do] = ACTIONS(4554), [sym_else] = ACTIONS(4554), [sym_enum] = ACTIONS(4554), [sym_export] = ACTIONS(4554), [sym_extern] = ACTIONS(4554), [sym_final] = ACTIONS(4554), [sym_finally] = ACTIONS(4554), [sym_for] = ACTIONS(4554), [sym_foreach] = ACTIONS(4554), [sym_foreach_reverse] = ACTIONS(4554), [sym_function] = ACTIONS(4554), [sym_goto] = ACTIONS(4554), [sym_if] = ACTIONS(4554), [sym_immutable] = ACTIONS(4554), [sym_import] = ACTIONS(4554), [sym_in] = ACTIONS(4554), [sym_inout] = ACTIONS(4554), [sym_interface] = ACTIONS(4554), [sym_invariant] = ACTIONS(4554), [sym_is] = ACTIONS(4554), [sym_mixin] = ACTIONS(4554), [sym_new] = ACTIONS(4554), [sym_nothrow] = ACTIONS(4554), [sym_out] = ACTIONS(4554), [sym_override] = ACTIONS(4554), [sym_package] = ACTIONS(4554), [sym_pragma] = ACTIONS(4554), [sym_private] = ACTIONS(4554), [sym_protected] = ACTIONS(4554), [sym_public] = ACTIONS(4554), [sym_pure] = ACTIONS(4554), [sym_ref] = ACTIONS(4554), [sym_return] = ACTIONS(4554), [sym_scope] = ACTIONS(4554), [sym_shared] = ACTIONS(4554), [sym_static] = ACTIONS(4554), [sym_struct] = ACTIONS(4554), [sym_switch] = ACTIONS(4554), [sym_synchronized] = ACTIONS(4554), [sym_template] = ACTIONS(4554), [sym_throw] = ACTIONS(4554), [sym_try] = ACTIONS(4554), [sym_typeid] = ACTIONS(4554), [sym_typeof] = ACTIONS(4554), [sym_union] = ACTIONS(4554), [sym_unittest] = ACTIONS(4554), [sym_version] = ACTIONS(4554), [sym_while] = ACTIONS(4554), [sym_with] = ACTIONS(4554), [sym_gshared] = ACTIONS(4554), [sym_traits] = ACTIONS(4554), [sym_vector] = ACTIONS(4554), [sym_void] = ACTIONS(4554), [anon_sym_BQUOTE] = ACTIONS(4556), [anon_sym_r_DQUOTE] = ACTIONS(4556), [anon_sym_x_DQUOTE] = ACTIONS(4556), [anon_sym_DQUOTE] = ACTIONS(4556), [anon_sym_i_BQUOTE] = ACTIONS(4556), [anon_sym_i_DQUOTE] = ACTIONS(4556), [anon_sym_iq_LBRACE] = ACTIONS(4556), [aux_sym_char_literal_token1] = ACTIONS(4556), [anon_sym_SQUOTE] = ACTIONS(4554), [anon_sym___DATE__] = ACTIONS(4554), [anon_sym___FILE__] = ACTIONS(4554), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4554), [anon_sym___FUNCTION__] = ACTIONS(4554), [anon_sym___LINE__] = ACTIONS(4554), [anon_sym___MODULE__] = ACTIONS(4554), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4554), [anon_sym___TIME__] = ACTIONS(4554), [anon_sym___TIMESTAMP__] = ACTIONS(4554), [anon_sym___VENDOR__] = ACTIONS(4554), [anon_sym___VERSION__] = ACTIONS(4554), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4556), [sym_float_literal] = ACTIONS(4556), [sym__string] = ACTIONS(4556), }, [1419] = { [sym_identifier] = ACTIONS(4558), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4560), [anon_sym_RBRACE] = ACTIONS(4560), [anon_sym_LBRACE] = ACTIONS(4560), [anon_sym_DOT] = ACTIONS(4560), [anon_sym_AMP] = ACTIONS(4560), [anon_sym_DASH] = ACTIONS(4558), [anon_sym_DASH_DASH] = ACTIONS(4560), [anon_sym_PLUS] = ACTIONS(4558), [anon_sym_PLUS_PLUS] = ACTIONS(4560), [anon_sym_BANG] = ACTIONS(4560), [anon_sym_LPAREN] = ACTIONS(4560), [anon_sym_RPAREN] = ACTIONS(4560), [anon_sym_LBRACK] = ACTIONS(4560), [anon_sym_SEMI] = ACTIONS(4560), [anon_sym_DOLLAR] = ACTIONS(4560), [anon_sym_STAR] = ACTIONS(4560), [anon_sym_TILDE] = ACTIONS(4560), [anon_sym_AT] = ACTIONS(4560), [sym_bool] = ACTIONS(4558), [sym_byte] = ACTIONS(4558), [sym_ubyte] = ACTIONS(4558), [sym_char] = ACTIONS(4558), [sym_short] = ACTIONS(4558), [sym_ushort] = ACTIONS(4558), [sym_int] = ACTIONS(4558), [sym_uint] = ACTIONS(4558), [sym_long] = ACTIONS(4558), [sym_ulong] = ACTIONS(4558), [sym_cent] = ACTIONS(4558), [sym_ucent] = ACTIONS(4558), [sym_wchar] = ACTIONS(4558), [sym_dchar] = ACTIONS(4558), [sym_float] = ACTIONS(4558), [sym_double] = ACTIONS(4558), [sym_real] = ACTIONS(4558), [sym_ifloat] = ACTIONS(4558), [sym_idouble] = ACTIONS(4558), [sym_ireal] = ACTIONS(4558), [sym_cfloat] = ACTIONS(4558), [sym_cdouble] = ACTIONS(4558), [sym_creal] = ACTIONS(4558), [sym_size_t] = ACTIONS(4558), [sym_ptrdiff_t] = ACTIONS(4558), [sym_string] = ACTIONS(4558), [sym_cstring] = ACTIONS(4558), [sym_dstring] = ACTIONS(4558), [sym_wstring] = ACTIONS(4558), [sym_noreturn] = ACTIONS(4558), [sym_true] = ACTIONS(4558), [sym_false] = ACTIONS(4558), [sym_null] = ACTIONS(4558), [sym_super] = ACTIONS(4558), [sym_this] = ACTIONS(4558), [sym_abstract] = ACTIONS(4558), [sym_alias] = ACTIONS(4558), [sym_align] = ACTIONS(4558), [sym_asm] = ACTIONS(4558), [sym_assert] = ACTIONS(4558), [sym_auto] = ACTIONS(4558), [sym_break] = ACTIONS(4558), [sym_case] = ACTIONS(4558), [sym_cast] = ACTIONS(4558), [sym_catch] = ACTIONS(4558), [sym_class] = ACTIONS(4558), [sym_const] = ACTIONS(4558), [sym_continue] = ACTIONS(4558), [sym_debug] = ACTIONS(4558), [sym_default] = ACTIONS(4558), [sym_delegate] = ACTIONS(4558), [sym_delete] = ACTIONS(4558), [sym_deprecated] = ACTIONS(4558), [sym_do] = ACTIONS(4558), [sym_else] = ACTIONS(4558), [sym_enum] = ACTIONS(4558), [sym_export] = ACTIONS(4558), [sym_extern] = ACTIONS(4558), [sym_final] = ACTIONS(4558), [sym_finally] = ACTIONS(4558), [sym_for] = ACTIONS(4558), [sym_foreach] = ACTIONS(4558), [sym_foreach_reverse] = ACTIONS(4558), [sym_function] = ACTIONS(4558), [sym_goto] = ACTIONS(4558), [sym_if] = ACTIONS(4558), [sym_immutable] = ACTIONS(4558), [sym_import] = ACTIONS(4558), [sym_in] = ACTIONS(4558), [sym_inout] = ACTIONS(4558), [sym_interface] = ACTIONS(4558), [sym_invariant] = ACTIONS(4558), [sym_is] = ACTIONS(4558), [sym_mixin] = ACTIONS(4558), [sym_new] = ACTIONS(4558), [sym_nothrow] = ACTIONS(4558), [sym_out] = ACTIONS(4558), [sym_override] = ACTIONS(4558), [sym_package] = ACTIONS(4558), [sym_pragma] = ACTIONS(4558), [sym_private] = ACTIONS(4558), [sym_protected] = ACTIONS(4558), [sym_public] = ACTIONS(4558), [sym_pure] = ACTIONS(4558), [sym_ref] = ACTIONS(4558), [sym_return] = ACTIONS(4558), [sym_scope] = ACTIONS(4558), [sym_shared] = ACTIONS(4558), [sym_static] = ACTIONS(4558), [sym_struct] = ACTIONS(4558), [sym_switch] = ACTIONS(4558), [sym_synchronized] = ACTIONS(4558), [sym_template] = ACTIONS(4558), [sym_throw] = ACTIONS(4558), [sym_try] = ACTIONS(4558), [sym_typeid] = ACTIONS(4558), [sym_typeof] = ACTIONS(4558), [sym_union] = ACTIONS(4558), [sym_unittest] = ACTIONS(4558), [sym_version] = ACTIONS(4558), [sym_while] = ACTIONS(4558), [sym_with] = ACTIONS(4558), [sym_gshared] = ACTIONS(4558), [sym_traits] = ACTIONS(4558), [sym_vector] = ACTIONS(4558), [sym_void] = ACTIONS(4558), [anon_sym_BQUOTE] = ACTIONS(4560), [anon_sym_r_DQUOTE] = ACTIONS(4560), [anon_sym_x_DQUOTE] = ACTIONS(4560), [anon_sym_DQUOTE] = ACTIONS(4560), [anon_sym_i_BQUOTE] = ACTIONS(4560), [anon_sym_i_DQUOTE] = ACTIONS(4560), [anon_sym_iq_LBRACE] = ACTIONS(4560), [aux_sym_char_literal_token1] = ACTIONS(4560), [anon_sym_SQUOTE] = ACTIONS(4558), [anon_sym___DATE__] = ACTIONS(4558), [anon_sym___FILE__] = ACTIONS(4558), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4558), [anon_sym___FUNCTION__] = ACTIONS(4558), [anon_sym___LINE__] = ACTIONS(4558), [anon_sym___MODULE__] = ACTIONS(4558), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4558), [anon_sym___TIME__] = ACTIONS(4558), [anon_sym___TIMESTAMP__] = ACTIONS(4558), [anon_sym___VENDOR__] = ACTIONS(4558), [anon_sym___VERSION__] = ACTIONS(4558), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4560), [sym_float_literal] = ACTIONS(4560), [sym__string] = ACTIONS(4560), }, [1420] = { [sym_identifier] = ACTIONS(4562), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4564), [anon_sym_RBRACE] = ACTIONS(4564), [anon_sym_LBRACE] = ACTIONS(4564), [anon_sym_DOT] = ACTIONS(4564), [anon_sym_AMP] = ACTIONS(4564), [anon_sym_DASH] = ACTIONS(4562), [anon_sym_DASH_DASH] = ACTIONS(4564), [anon_sym_PLUS] = ACTIONS(4562), [anon_sym_PLUS_PLUS] = ACTIONS(4564), [anon_sym_BANG] = ACTIONS(4564), [anon_sym_LPAREN] = ACTIONS(4564), [anon_sym_RPAREN] = ACTIONS(4564), [anon_sym_LBRACK] = ACTIONS(4564), [anon_sym_SEMI] = ACTIONS(4564), [anon_sym_DOLLAR] = ACTIONS(4564), [anon_sym_STAR] = ACTIONS(4564), [anon_sym_TILDE] = ACTIONS(4564), [anon_sym_AT] = ACTIONS(4564), [sym_bool] = ACTIONS(4562), [sym_byte] = ACTIONS(4562), [sym_ubyte] = ACTIONS(4562), [sym_char] = ACTIONS(4562), [sym_short] = ACTIONS(4562), [sym_ushort] = ACTIONS(4562), [sym_int] = ACTIONS(4562), [sym_uint] = ACTIONS(4562), [sym_long] = ACTIONS(4562), [sym_ulong] = ACTIONS(4562), [sym_cent] = ACTIONS(4562), [sym_ucent] = ACTIONS(4562), [sym_wchar] = ACTIONS(4562), [sym_dchar] = ACTIONS(4562), [sym_float] = ACTIONS(4562), [sym_double] = ACTIONS(4562), [sym_real] = ACTIONS(4562), [sym_ifloat] = ACTIONS(4562), [sym_idouble] = ACTIONS(4562), [sym_ireal] = ACTIONS(4562), [sym_cfloat] = ACTIONS(4562), [sym_cdouble] = ACTIONS(4562), [sym_creal] = ACTIONS(4562), [sym_size_t] = ACTIONS(4562), [sym_ptrdiff_t] = ACTIONS(4562), [sym_string] = ACTIONS(4562), [sym_cstring] = ACTIONS(4562), [sym_dstring] = ACTIONS(4562), [sym_wstring] = ACTIONS(4562), [sym_noreturn] = ACTIONS(4562), [sym_true] = ACTIONS(4562), [sym_false] = ACTIONS(4562), [sym_null] = ACTIONS(4562), [sym_super] = ACTIONS(4562), [sym_this] = ACTIONS(4562), [sym_abstract] = ACTIONS(4562), [sym_alias] = ACTIONS(4562), [sym_align] = ACTIONS(4562), [sym_asm] = ACTIONS(4562), [sym_assert] = ACTIONS(4562), [sym_auto] = ACTIONS(4562), [sym_break] = ACTIONS(4562), [sym_case] = ACTIONS(4562), [sym_cast] = ACTIONS(4562), [sym_catch] = ACTIONS(4562), [sym_class] = ACTIONS(4562), [sym_const] = ACTIONS(4562), [sym_continue] = ACTIONS(4562), [sym_debug] = ACTIONS(4562), [sym_default] = ACTIONS(4562), [sym_delegate] = ACTIONS(4562), [sym_delete] = ACTIONS(4562), [sym_deprecated] = ACTIONS(4562), [sym_do] = ACTIONS(4562), [sym_else] = ACTIONS(4562), [sym_enum] = ACTIONS(4562), [sym_export] = ACTIONS(4562), [sym_extern] = ACTIONS(4562), [sym_final] = ACTIONS(4562), [sym_finally] = ACTIONS(4562), [sym_for] = ACTIONS(4562), [sym_foreach] = ACTIONS(4562), [sym_foreach_reverse] = ACTIONS(4562), [sym_function] = ACTIONS(4562), [sym_goto] = ACTIONS(4562), [sym_if] = ACTIONS(4562), [sym_immutable] = ACTIONS(4562), [sym_import] = ACTIONS(4562), [sym_in] = ACTIONS(4562), [sym_inout] = ACTIONS(4562), [sym_interface] = ACTIONS(4562), [sym_invariant] = ACTIONS(4562), [sym_is] = ACTIONS(4562), [sym_mixin] = ACTIONS(4562), [sym_new] = ACTIONS(4562), [sym_nothrow] = ACTIONS(4562), [sym_out] = ACTIONS(4562), [sym_override] = ACTIONS(4562), [sym_package] = ACTIONS(4562), [sym_pragma] = ACTIONS(4562), [sym_private] = ACTIONS(4562), [sym_protected] = ACTIONS(4562), [sym_public] = ACTIONS(4562), [sym_pure] = ACTIONS(4562), [sym_ref] = ACTIONS(4562), [sym_return] = ACTIONS(4562), [sym_scope] = ACTIONS(4562), [sym_shared] = ACTIONS(4562), [sym_static] = ACTIONS(4562), [sym_struct] = ACTIONS(4562), [sym_switch] = ACTIONS(4562), [sym_synchronized] = ACTIONS(4562), [sym_template] = ACTIONS(4562), [sym_throw] = ACTIONS(4562), [sym_try] = ACTIONS(4562), [sym_typeid] = ACTIONS(4562), [sym_typeof] = ACTIONS(4562), [sym_union] = ACTIONS(4562), [sym_unittest] = ACTIONS(4562), [sym_version] = ACTIONS(4562), [sym_while] = ACTIONS(4562), [sym_with] = ACTIONS(4562), [sym_gshared] = ACTIONS(4562), [sym_traits] = ACTIONS(4562), [sym_vector] = ACTIONS(4562), [sym_void] = ACTIONS(4562), [anon_sym_BQUOTE] = ACTIONS(4564), [anon_sym_r_DQUOTE] = ACTIONS(4564), [anon_sym_x_DQUOTE] = ACTIONS(4564), [anon_sym_DQUOTE] = ACTIONS(4564), [anon_sym_i_BQUOTE] = ACTIONS(4564), [anon_sym_i_DQUOTE] = ACTIONS(4564), [anon_sym_iq_LBRACE] = ACTIONS(4564), [aux_sym_char_literal_token1] = ACTIONS(4564), [anon_sym_SQUOTE] = ACTIONS(4562), [anon_sym___DATE__] = ACTIONS(4562), [anon_sym___FILE__] = ACTIONS(4562), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4562), [anon_sym___FUNCTION__] = ACTIONS(4562), [anon_sym___LINE__] = ACTIONS(4562), [anon_sym___MODULE__] = ACTIONS(4562), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4562), [anon_sym___TIME__] = ACTIONS(4562), [anon_sym___TIMESTAMP__] = ACTIONS(4562), [anon_sym___VENDOR__] = ACTIONS(4562), [anon_sym___VERSION__] = ACTIONS(4562), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4564), [sym_float_literal] = ACTIONS(4564), [sym__string] = ACTIONS(4564), }, [1421] = { [sym_identifier] = ACTIONS(4566), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4568), [anon_sym_RBRACE] = ACTIONS(4568), [anon_sym_LBRACE] = ACTIONS(4568), [anon_sym_DOT] = ACTIONS(4568), [anon_sym_AMP] = ACTIONS(4568), [anon_sym_DASH] = ACTIONS(4566), [anon_sym_DASH_DASH] = ACTIONS(4568), [anon_sym_PLUS] = ACTIONS(4566), [anon_sym_PLUS_PLUS] = ACTIONS(4568), [anon_sym_BANG] = ACTIONS(4568), [anon_sym_LPAREN] = ACTIONS(4568), [anon_sym_RPAREN] = ACTIONS(4568), [anon_sym_LBRACK] = ACTIONS(4568), [anon_sym_SEMI] = ACTIONS(4568), [anon_sym_DOLLAR] = ACTIONS(4568), [anon_sym_STAR] = ACTIONS(4568), [anon_sym_TILDE] = ACTIONS(4568), [anon_sym_AT] = ACTIONS(4568), [sym_bool] = ACTIONS(4566), [sym_byte] = ACTIONS(4566), [sym_ubyte] = ACTIONS(4566), [sym_char] = ACTIONS(4566), [sym_short] = ACTIONS(4566), [sym_ushort] = ACTIONS(4566), [sym_int] = ACTIONS(4566), [sym_uint] = ACTIONS(4566), [sym_long] = ACTIONS(4566), [sym_ulong] = ACTIONS(4566), [sym_cent] = ACTIONS(4566), [sym_ucent] = ACTIONS(4566), [sym_wchar] = ACTIONS(4566), [sym_dchar] = ACTIONS(4566), [sym_float] = ACTIONS(4566), [sym_double] = ACTIONS(4566), [sym_real] = ACTIONS(4566), [sym_ifloat] = ACTIONS(4566), [sym_idouble] = ACTIONS(4566), [sym_ireal] = ACTIONS(4566), [sym_cfloat] = ACTIONS(4566), [sym_cdouble] = ACTIONS(4566), [sym_creal] = ACTIONS(4566), [sym_size_t] = ACTIONS(4566), [sym_ptrdiff_t] = ACTIONS(4566), [sym_string] = ACTIONS(4566), [sym_cstring] = ACTIONS(4566), [sym_dstring] = ACTIONS(4566), [sym_wstring] = ACTIONS(4566), [sym_noreturn] = ACTIONS(4566), [sym_true] = ACTIONS(4566), [sym_false] = ACTIONS(4566), [sym_null] = ACTIONS(4566), [sym_super] = ACTIONS(4566), [sym_this] = ACTIONS(4566), [sym_abstract] = ACTIONS(4566), [sym_alias] = ACTIONS(4566), [sym_align] = ACTIONS(4566), [sym_asm] = ACTIONS(4566), [sym_assert] = ACTIONS(4566), [sym_auto] = ACTIONS(4566), [sym_break] = ACTIONS(4566), [sym_case] = ACTIONS(4566), [sym_cast] = ACTIONS(4566), [sym_catch] = ACTIONS(4566), [sym_class] = ACTIONS(4566), [sym_const] = ACTIONS(4566), [sym_continue] = ACTIONS(4566), [sym_debug] = ACTIONS(4566), [sym_default] = ACTIONS(4566), [sym_delegate] = ACTIONS(4566), [sym_delete] = ACTIONS(4566), [sym_deprecated] = ACTIONS(4566), [sym_do] = ACTIONS(4566), [sym_else] = ACTIONS(4566), [sym_enum] = ACTIONS(4566), [sym_export] = ACTIONS(4566), [sym_extern] = ACTIONS(4566), [sym_final] = ACTIONS(4566), [sym_finally] = ACTIONS(4566), [sym_for] = ACTIONS(4566), [sym_foreach] = ACTIONS(4566), [sym_foreach_reverse] = ACTIONS(4566), [sym_function] = ACTIONS(4566), [sym_goto] = ACTIONS(4566), [sym_if] = ACTIONS(4566), [sym_immutable] = ACTIONS(4566), [sym_import] = ACTIONS(4566), [sym_in] = ACTIONS(4566), [sym_inout] = ACTIONS(4566), [sym_interface] = ACTIONS(4566), [sym_invariant] = ACTIONS(4566), [sym_is] = ACTIONS(4566), [sym_mixin] = ACTIONS(4566), [sym_new] = ACTIONS(4566), [sym_nothrow] = ACTIONS(4566), [sym_out] = ACTIONS(4566), [sym_override] = ACTIONS(4566), [sym_package] = ACTIONS(4566), [sym_pragma] = ACTIONS(4566), [sym_private] = ACTIONS(4566), [sym_protected] = ACTIONS(4566), [sym_public] = ACTIONS(4566), [sym_pure] = ACTIONS(4566), [sym_ref] = ACTIONS(4566), [sym_return] = ACTIONS(4566), [sym_scope] = ACTIONS(4566), [sym_shared] = ACTIONS(4566), [sym_static] = ACTIONS(4566), [sym_struct] = ACTIONS(4566), [sym_switch] = ACTIONS(4566), [sym_synchronized] = ACTIONS(4566), [sym_template] = ACTIONS(4566), [sym_throw] = ACTIONS(4566), [sym_try] = ACTIONS(4566), [sym_typeid] = ACTIONS(4566), [sym_typeof] = ACTIONS(4566), [sym_union] = ACTIONS(4566), [sym_unittest] = ACTIONS(4566), [sym_version] = ACTIONS(4566), [sym_while] = ACTIONS(4566), [sym_with] = ACTIONS(4566), [sym_gshared] = ACTIONS(4566), [sym_traits] = ACTIONS(4566), [sym_vector] = ACTIONS(4566), [sym_void] = ACTIONS(4566), [anon_sym_BQUOTE] = ACTIONS(4568), [anon_sym_r_DQUOTE] = ACTIONS(4568), [anon_sym_x_DQUOTE] = ACTIONS(4568), [anon_sym_DQUOTE] = ACTIONS(4568), [anon_sym_i_BQUOTE] = ACTIONS(4568), [anon_sym_i_DQUOTE] = ACTIONS(4568), [anon_sym_iq_LBRACE] = ACTIONS(4568), [aux_sym_char_literal_token1] = ACTIONS(4568), [anon_sym_SQUOTE] = ACTIONS(4566), [anon_sym___DATE__] = ACTIONS(4566), [anon_sym___FILE__] = ACTIONS(4566), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4566), [anon_sym___FUNCTION__] = ACTIONS(4566), [anon_sym___LINE__] = ACTIONS(4566), [anon_sym___MODULE__] = ACTIONS(4566), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4566), [anon_sym___TIME__] = ACTIONS(4566), [anon_sym___TIMESTAMP__] = ACTIONS(4566), [anon_sym___VENDOR__] = ACTIONS(4566), [anon_sym___VERSION__] = ACTIONS(4566), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4568), [sym_float_literal] = ACTIONS(4568), [sym__string] = ACTIONS(4568), }, [1422] = { [sym_identifier] = ACTIONS(4570), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4572), [anon_sym_RBRACE] = ACTIONS(4572), [anon_sym_LBRACE] = ACTIONS(4572), [anon_sym_DOT] = ACTIONS(4572), [anon_sym_AMP] = ACTIONS(4572), [anon_sym_DASH] = ACTIONS(4570), [anon_sym_DASH_DASH] = ACTIONS(4572), [anon_sym_PLUS] = ACTIONS(4570), [anon_sym_PLUS_PLUS] = ACTIONS(4572), [anon_sym_BANG] = ACTIONS(4572), [anon_sym_LPAREN] = ACTIONS(4572), [anon_sym_RPAREN] = ACTIONS(4572), [anon_sym_LBRACK] = ACTIONS(4572), [anon_sym_SEMI] = ACTIONS(4572), [anon_sym_DOLLAR] = ACTIONS(4572), [anon_sym_STAR] = ACTIONS(4572), [anon_sym_TILDE] = ACTIONS(4572), [anon_sym_AT] = ACTIONS(4572), [sym_bool] = ACTIONS(4570), [sym_byte] = ACTIONS(4570), [sym_ubyte] = ACTIONS(4570), [sym_char] = ACTIONS(4570), [sym_short] = ACTIONS(4570), [sym_ushort] = ACTIONS(4570), [sym_int] = ACTIONS(4570), [sym_uint] = ACTIONS(4570), [sym_long] = ACTIONS(4570), [sym_ulong] = ACTIONS(4570), [sym_cent] = ACTIONS(4570), [sym_ucent] = ACTIONS(4570), [sym_wchar] = ACTIONS(4570), [sym_dchar] = ACTIONS(4570), [sym_float] = ACTIONS(4570), [sym_double] = ACTIONS(4570), [sym_real] = ACTIONS(4570), [sym_ifloat] = ACTIONS(4570), [sym_idouble] = ACTIONS(4570), [sym_ireal] = ACTIONS(4570), [sym_cfloat] = ACTIONS(4570), [sym_cdouble] = ACTIONS(4570), [sym_creal] = ACTIONS(4570), [sym_size_t] = ACTIONS(4570), [sym_ptrdiff_t] = ACTIONS(4570), [sym_string] = ACTIONS(4570), [sym_cstring] = ACTIONS(4570), [sym_dstring] = ACTIONS(4570), [sym_wstring] = ACTIONS(4570), [sym_noreturn] = ACTIONS(4570), [sym_true] = ACTIONS(4570), [sym_false] = ACTIONS(4570), [sym_null] = ACTIONS(4570), [sym_super] = ACTIONS(4570), [sym_this] = ACTIONS(4570), [sym_abstract] = ACTIONS(4570), [sym_alias] = ACTIONS(4570), [sym_align] = ACTIONS(4570), [sym_asm] = ACTIONS(4570), [sym_assert] = ACTIONS(4570), [sym_auto] = ACTIONS(4570), [sym_break] = ACTIONS(4570), [sym_case] = ACTIONS(4570), [sym_cast] = ACTIONS(4570), [sym_catch] = ACTIONS(4570), [sym_class] = ACTIONS(4570), [sym_const] = ACTIONS(4570), [sym_continue] = ACTIONS(4570), [sym_debug] = ACTIONS(4570), [sym_default] = ACTIONS(4570), [sym_delegate] = ACTIONS(4570), [sym_delete] = ACTIONS(4570), [sym_deprecated] = ACTIONS(4570), [sym_do] = ACTIONS(4570), [sym_else] = ACTIONS(4570), [sym_enum] = ACTIONS(4570), [sym_export] = ACTIONS(4570), [sym_extern] = ACTIONS(4570), [sym_final] = ACTIONS(4570), [sym_finally] = ACTIONS(4570), [sym_for] = ACTIONS(4570), [sym_foreach] = ACTIONS(4570), [sym_foreach_reverse] = ACTIONS(4570), [sym_function] = ACTIONS(4570), [sym_goto] = ACTIONS(4570), [sym_if] = ACTIONS(4570), [sym_immutable] = ACTIONS(4570), [sym_import] = ACTIONS(4570), [sym_in] = ACTIONS(4570), [sym_inout] = ACTIONS(4570), [sym_interface] = ACTIONS(4570), [sym_invariant] = ACTIONS(4570), [sym_is] = ACTIONS(4570), [sym_mixin] = ACTIONS(4570), [sym_new] = ACTIONS(4570), [sym_nothrow] = ACTIONS(4570), [sym_out] = ACTIONS(4570), [sym_override] = ACTIONS(4570), [sym_package] = ACTIONS(4570), [sym_pragma] = ACTIONS(4570), [sym_private] = ACTIONS(4570), [sym_protected] = ACTIONS(4570), [sym_public] = ACTIONS(4570), [sym_pure] = ACTIONS(4570), [sym_ref] = ACTIONS(4570), [sym_return] = ACTIONS(4570), [sym_scope] = ACTIONS(4570), [sym_shared] = ACTIONS(4570), [sym_static] = ACTIONS(4570), [sym_struct] = ACTIONS(4570), [sym_switch] = ACTIONS(4570), [sym_synchronized] = ACTIONS(4570), [sym_template] = ACTIONS(4570), [sym_throw] = ACTIONS(4570), [sym_try] = ACTIONS(4570), [sym_typeid] = ACTIONS(4570), [sym_typeof] = ACTIONS(4570), [sym_union] = ACTIONS(4570), [sym_unittest] = ACTIONS(4570), [sym_version] = ACTIONS(4570), [sym_while] = ACTIONS(4570), [sym_with] = ACTIONS(4570), [sym_gshared] = ACTIONS(4570), [sym_traits] = ACTIONS(4570), [sym_vector] = ACTIONS(4570), [sym_void] = ACTIONS(4570), [anon_sym_BQUOTE] = ACTIONS(4572), [anon_sym_r_DQUOTE] = ACTIONS(4572), [anon_sym_x_DQUOTE] = ACTIONS(4572), [anon_sym_DQUOTE] = ACTIONS(4572), [anon_sym_i_BQUOTE] = ACTIONS(4572), [anon_sym_i_DQUOTE] = ACTIONS(4572), [anon_sym_iq_LBRACE] = ACTIONS(4572), [aux_sym_char_literal_token1] = ACTIONS(4572), [anon_sym_SQUOTE] = ACTIONS(4570), [anon_sym___DATE__] = ACTIONS(4570), [anon_sym___FILE__] = ACTIONS(4570), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4570), [anon_sym___FUNCTION__] = ACTIONS(4570), [anon_sym___LINE__] = ACTIONS(4570), [anon_sym___MODULE__] = ACTIONS(4570), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4570), [anon_sym___TIME__] = ACTIONS(4570), [anon_sym___TIMESTAMP__] = ACTIONS(4570), [anon_sym___VENDOR__] = ACTIONS(4570), [anon_sym___VERSION__] = ACTIONS(4570), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4572), [sym_float_literal] = ACTIONS(4572), [sym__string] = ACTIONS(4572), }, [1423] = { [sym_identifier] = ACTIONS(4574), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4576), [anon_sym_RBRACE] = ACTIONS(4576), [anon_sym_LBRACE] = ACTIONS(4576), [anon_sym_DOT] = ACTIONS(4576), [anon_sym_AMP] = ACTIONS(4576), [anon_sym_DASH] = ACTIONS(4574), [anon_sym_DASH_DASH] = ACTIONS(4576), [anon_sym_PLUS] = ACTIONS(4574), [anon_sym_PLUS_PLUS] = ACTIONS(4576), [anon_sym_BANG] = ACTIONS(4576), [anon_sym_LPAREN] = ACTIONS(4576), [anon_sym_RPAREN] = ACTIONS(4576), [anon_sym_LBRACK] = ACTIONS(4576), [anon_sym_SEMI] = ACTIONS(4576), [anon_sym_DOLLAR] = ACTIONS(4576), [anon_sym_STAR] = ACTIONS(4576), [anon_sym_TILDE] = ACTIONS(4576), [anon_sym_AT] = ACTIONS(4576), [sym_bool] = ACTIONS(4574), [sym_byte] = ACTIONS(4574), [sym_ubyte] = ACTIONS(4574), [sym_char] = ACTIONS(4574), [sym_short] = ACTIONS(4574), [sym_ushort] = ACTIONS(4574), [sym_int] = ACTIONS(4574), [sym_uint] = ACTIONS(4574), [sym_long] = ACTIONS(4574), [sym_ulong] = ACTIONS(4574), [sym_cent] = ACTIONS(4574), [sym_ucent] = ACTIONS(4574), [sym_wchar] = ACTIONS(4574), [sym_dchar] = ACTIONS(4574), [sym_float] = ACTIONS(4574), [sym_double] = ACTIONS(4574), [sym_real] = ACTIONS(4574), [sym_ifloat] = ACTIONS(4574), [sym_idouble] = ACTIONS(4574), [sym_ireal] = ACTIONS(4574), [sym_cfloat] = ACTIONS(4574), [sym_cdouble] = ACTIONS(4574), [sym_creal] = ACTIONS(4574), [sym_size_t] = ACTIONS(4574), [sym_ptrdiff_t] = ACTIONS(4574), [sym_string] = ACTIONS(4574), [sym_cstring] = ACTIONS(4574), [sym_dstring] = ACTIONS(4574), [sym_wstring] = ACTIONS(4574), [sym_noreturn] = ACTIONS(4574), [sym_true] = ACTIONS(4574), [sym_false] = ACTIONS(4574), [sym_null] = ACTIONS(4574), [sym_super] = ACTIONS(4574), [sym_this] = ACTIONS(4574), [sym_abstract] = ACTIONS(4574), [sym_alias] = ACTIONS(4574), [sym_align] = ACTIONS(4574), [sym_asm] = ACTIONS(4574), [sym_assert] = ACTIONS(4574), [sym_auto] = ACTIONS(4574), [sym_break] = ACTIONS(4574), [sym_case] = ACTIONS(4574), [sym_cast] = ACTIONS(4574), [sym_catch] = ACTIONS(4574), [sym_class] = ACTIONS(4574), [sym_const] = ACTIONS(4574), [sym_continue] = ACTIONS(4574), [sym_debug] = ACTIONS(4574), [sym_default] = ACTIONS(4574), [sym_delegate] = ACTIONS(4574), [sym_delete] = ACTIONS(4574), [sym_deprecated] = ACTIONS(4574), [sym_do] = ACTIONS(4574), [sym_else] = ACTIONS(4574), [sym_enum] = ACTIONS(4574), [sym_export] = ACTIONS(4574), [sym_extern] = ACTIONS(4574), [sym_final] = ACTIONS(4574), [sym_finally] = ACTIONS(4574), [sym_for] = ACTIONS(4574), [sym_foreach] = ACTIONS(4574), [sym_foreach_reverse] = ACTIONS(4574), [sym_function] = ACTIONS(4574), [sym_goto] = ACTIONS(4574), [sym_if] = ACTIONS(4574), [sym_immutable] = ACTIONS(4574), [sym_import] = ACTIONS(4574), [sym_in] = ACTIONS(4574), [sym_inout] = ACTIONS(4574), [sym_interface] = ACTIONS(4574), [sym_invariant] = ACTIONS(4574), [sym_is] = ACTIONS(4574), [sym_mixin] = ACTIONS(4574), [sym_new] = ACTIONS(4574), [sym_nothrow] = ACTIONS(4574), [sym_out] = ACTIONS(4574), [sym_override] = ACTIONS(4574), [sym_package] = ACTIONS(4574), [sym_pragma] = ACTIONS(4574), [sym_private] = ACTIONS(4574), [sym_protected] = ACTIONS(4574), [sym_public] = ACTIONS(4574), [sym_pure] = ACTIONS(4574), [sym_ref] = ACTIONS(4574), [sym_return] = ACTIONS(4574), [sym_scope] = ACTIONS(4574), [sym_shared] = ACTIONS(4574), [sym_static] = ACTIONS(4574), [sym_struct] = ACTIONS(4574), [sym_switch] = ACTIONS(4574), [sym_synchronized] = ACTIONS(4574), [sym_template] = ACTIONS(4574), [sym_throw] = ACTIONS(4574), [sym_try] = ACTIONS(4574), [sym_typeid] = ACTIONS(4574), [sym_typeof] = ACTIONS(4574), [sym_union] = ACTIONS(4574), [sym_unittest] = ACTIONS(4574), [sym_version] = ACTIONS(4574), [sym_while] = ACTIONS(4574), [sym_with] = ACTIONS(4574), [sym_gshared] = ACTIONS(4574), [sym_traits] = ACTIONS(4574), [sym_vector] = ACTIONS(4574), [sym_void] = ACTIONS(4574), [anon_sym_BQUOTE] = ACTIONS(4576), [anon_sym_r_DQUOTE] = ACTIONS(4576), [anon_sym_x_DQUOTE] = ACTIONS(4576), [anon_sym_DQUOTE] = ACTIONS(4576), [anon_sym_i_BQUOTE] = ACTIONS(4576), [anon_sym_i_DQUOTE] = ACTIONS(4576), [anon_sym_iq_LBRACE] = ACTIONS(4576), [aux_sym_char_literal_token1] = ACTIONS(4576), [anon_sym_SQUOTE] = ACTIONS(4574), [anon_sym___DATE__] = ACTIONS(4574), [anon_sym___FILE__] = ACTIONS(4574), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4574), [anon_sym___FUNCTION__] = ACTIONS(4574), [anon_sym___LINE__] = ACTIONS(4574), [anon_sym___MODULE__] = ACTIONS(4574), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4574), [anon_sym___TIME__] = ACTIONS(4574), [anon_sym___TIMESTAMP__] = ACTIONS(4574), [anon_sym___VENDOR__] = ACTIONS(4574), [anon_sym___VERSION__] = ACTIONS(4574), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4576), [sym_float_literal] = ACTIONS(4576), [sym__string] = ACTIONS(4576), }, [1424] = { [sym_identifier] = ACTIONS(4578), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4580), [anon_sym_RBRACE] = ACTIONS(4580), [anon_sym_LBRACE] = ACTIONS(4580), [anon_sym_DOT] = ACTIONS(4580), [anon_sym_AMP] = ACTIONS(4580), [anon_sym_DASH] = ACTIONS(4578), [anon_sym_DASH_DASH] = ACTIONS(4580), [anon_sym_PLUS] = ACTIONS(4578), [anon_sym_PLUS_PLUS] = ACTIONS(4580), [anon_sym_BANG] = ACTIONS(4580), [anon_sym_LPAREN] = ACTIONS(4580), [anon_sym_RPAREN] = ACTIONS(4580), [anon_sym_LBRACK] = ACTIONS(4580), [anon_sym_SEMI] = ACTIONS(4580), [anon_sym_DOLLAR] = ACTIONS(4580), [anon_sym_STAR] = ACTIONS(4580), [anon_sym_TILDE] = ACTIONS(4580), [anon_sym_AT] = ACTIONS(4580), [sym_bool] = ACTIONS(4578), [sym_byte] = ACTIONS(4578), [sym_ubyte] = ACTIONS(4578), [sym_char] = ACTIONS(4578), [sym_short] = ACTIONS(4578), [sym_ushort] = ACTIONS(4578), [sym_int] = ACTIONS(4578), [sym_uint] = ACTIONS(4578), [sym_long] = ACTIONS(4578), [sym_ulong] = ACTIONS(4578), [sym_cent] = ACTIONS(4578), [sym_ucent] = ACTIONS(4578), [sym_wchar] = ACTIONS(4578), [sym_dchar] = ACTIONS(4578), [sym_float] = ACTIONS(4578), [sym_double] = ACTIONS(4578), [sym_real] = ACTIONS(4578), [sym_ifloat] = ACTIONS(4578), [sym_idouble] = ACTIONS(4578), [sym_ireal] = ACTIONS(4578), [sym_cfloat] = ACTIONS(4578), [sym_cdouble] = ACTIONS(4578), [sym_creal] = ACTIONS(4578), [sym_size_t] = ACTIONS(4578), [sym_ptrdiff_t] = ACTIONS(4578), [sym_string] = ACTIONS(4578), [sym_cstring] = ACTIONS(4578), [sym_dstring] = ACTIONS(4578), [sym_wstring] = ACTIONS(4578), [sym_noreturn] = ACTIONS(4578), [sym_true] = ACTIONS(4578), [sym_false] = ACTIONS(4578), [sym_null] = ACTIONS(4578), [sym_super] = ACTIONS(4578), [sym_this] = ACTIONS(4578), [sym_abstract] = ACTIONS(4578), [sym_alias] = ACTIONS(4578), [sym_align] = ACTIONS(4578), [sym_asm] = ACTIONS(4578), [sym_assert] = ACTIONS(4578), [sym_auto] = ACTIONS(4578), [sym_break] = ACTIONS(4578), [sym_case] = ACTIONS(4578), [sym_cast] = ACTIONS(4578), [sym_catch] = ACTIONS(4578), [sym_class] = ACTIONS(4578), [sym_const] = ACTIONS(4578), [sym_continue] = ACTIONS(4578), [sym_debug] = ACTIONS(4578), [sym_default] = ACTIONS(4578), [sym_delegate] = ACTIONS(4578), [sym_delete] = ACTIONS(4578), [sym_deprecated] = ACTIONS(4578), [sym_do] = ACTIONS(4578), [sym_else] = ACTIONS(4578), [sym_enum] = ACTIONS(4578), [sym_export] = ACTIONS(4578), [sym_extern] = ACTIONS(4578), [sym_final] = ACTIONS(4578), [sym_finally] = ACTIONS(4578), [sym_for] = ACTIONS(4578), [sym_foreach] = ACTIONS(4578), [sym_foreach_reverse] = ACTIONS(4578), [sym_function] = ACTIONS(4578), [sym_goto] = ACTIONS(4578), [sym_if] = ACTIONS(4578), [sym_immutable] = ACTIONS(4578), [sym_import] = ACTIONS(4578), [sym_in] = ACTIONS(4578), [sym_inout] = ACTIONS(4578), [sym_interface] = ACTIONS(4578), [sym_invariant] = ACTIONS(4578), [sym_is] = ACTIONS(4578), [sym_mixin] = ACTIONS(4578), [sym_new] = ACTIONS(4578), [sym_nothrow] = ACTIONS(4578), [sym_out] = ACTIONS(4578), [sym_override] = ACTIONS(4578), [sym_package] = ACTIONS(4578), [sym_pragma] = ACTIONS(4578), [sym_private] = ACTIONS(4578), [sym_protected] = ACTIONS(4578), [sym_public] = ACTIONS(4578), [sym_pure] = ACTIONS(4578), [sym_ref] = ACTIONS(4578), [sym_return] = ACTIONS(4578), [sym_scope] = ACTIONS(4578), [sym_shared] = ACTIONS(4578), [sym_static] = ACTIONS(4578), [sym_struct] = ACTIONS(4578), [sym_switch] = ACTIONS(4578), [sym_synchronized] = ACTIONS(4578), [sym_template] = ACTIONS(4578), [sym_throw] = ACTIONS(4578), [sym_try] = ACTIONS(4578), [sym_typeid] = ACTIONS(4578), [sym_typeof] = ACTIONS(4578), [sym_union] = ACTIONS(4578), [sym_unittest] = ACTIONS(4578), [sym_version] = ACTIONS(4578), [sym_while] = ACTIONS(4578), [sym_with] = ACTIONS(4578), [sym_gshared] = ACTIONS(4578), [sym_traits] = ACTIONS(4578), [sym_vector] = ACTIONS(4578), [sym_void] = ACTIONS(4578), [anon_sym_BQUOTE] = ACTIONS(4580), [anon_sym_r_DQUOTE] = ACTIONS(4580), [anon_sym_x_DQUOTE] = ACTIONS(4580), [anon_sym_DQUOTE] = ACTIONS(4580), [anon_sym_i_BQUOTE] = ACTIONS(4580), [anon_sym_i_DQUOTE] = ACTIONS(4580), [anon_sym_iq_LBRACE] = ACTIONS(4580), [aux_sym_char_literal_token1] = ACTIONS(4580), [anon_sym_SQUOTE] = ACTIONS(4578), [anon_sym___DATE__] = ACTIONS(4578), [anon_sym___FILE__] = ACTIONS(4578), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4578), [anon_sym___FUNCTION__] = ACTIONS(4578), [anon_sym___LINE__] = ACTIONS(4578), [anon_sym___MODULE__] = ACTIONS(4578), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4578), [anon_sym___TIME__] = ACTIONS(4578), [anon_sym___TIMESTAMP__] = ACTIONS(4578), [anon_sym___VENDOR__] = ACTIONS(4578), [anon_sym___VERSION__] = ACTIONS(4578), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4580), [sym_float_literal] = ACTIONS(4580), [sym__string] = ACTIONS(4580), }, [1425] = { [sym_identifier] = ACTIONS(4582), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4584), [anon_sym_RBRACE] = ACTIONS(4584), [anon_sym_LBRACE] = ACTIONS(4584), [anon_sym_DOT] = ACTIONS(4584), [anon_sym_AMP] = ACTIONS(4584), [anon_sym_DASH] = ACTIONS(4582), [anon_sym_DASH_DASH] = ACTIONS(4584), [anon_sym_PLUS] = ACTIONS(4582), [anon_sym_PLUS_PLUS] = ACTIONS(4584), [anon_sym_BANG] = ACTIONS(4584), [anon_sym_LPAREN] = ACTIONS(4584), [anon_sym_RPAREN] = ACTIONS(4584), [anon_sym_LBRACK] = ACTIONS(4584), [anon_sym_SEMI] = ACTIONS(4584), [anon_sym_DOLLAR] = ACTIONS(4584), [anon_sym_STAR] = ACTIONS(4584), [anon_sym_TILDE] = ACTIONS(4584), [anon_sym_AT] = ACTIONS(4584), [sym_bool] = ACTIONS(4582), [sym_byte] = ACTIONS(4582), [sym_ubyte] = ACTIONS(4582), [sym_char] = ACTIONS(4582), [sym_short] = ACTIONS(4582), [sym_ushort] = ACTIONS(4582), [sym_int] = ACTIONS(4582), [sym_uint] = ACTIONS(4582), [sym_long] = ACTIONS(4582), [sym_ulong] = ACTIONS(4582), [sym_cent] = ACTIONS(4582), [sym_ucent] = ACTIONS(4582), [sym_wchar] = ACTIONS(4582), [sym_dchar] = ACTIONS(4582), [sym_float] = ACTIONS(4582), [sym_double] = ACTIONS(4582), [sym_real] = ACTIONS(4582), [sym_ifloat] = ACTIONS(4582), [sym_idouble] = ACTIONS(4582), [sym_ireal] = ACTIONS(4582), [sym_cfloat] = ACTIONS(4582), [sym_cdouble] = ACTIONS(4582), [sym_creal] = ACTIONS(4582), [sym_size_t] = ACTIONS(4582), [sym_ptrdiff_t] = ACTIONS(4582), [sym_string] = ACTIONS(4582), [sym_cstring] = ACTIONS(4582), [sym_dstring] = ACTIONS(4582), [sym_wstring] = ACTIONS(4582), [sym_noreturn] = ACTIONS(4582), [sym_true] = ACTIONS(4582), [sym_false] = ACTIONS(4582), [sym_null] = ACTIONS(4582), [sym_super] = ACTIONS(4582), [sym_this] = ACTIONS(4582), [sym_abstract] = ACTIONS(4582), [sym_alias] = ACTIONS(4582), [sym_align] = ACTIONS(4582), [sym_asm] = ACTIONS(4582), [sym_assert] = ACTIONS(4582), [sym_auto] = ACTIONS(4582), [sym_break] = ACTIONS(4582), [sym_case] = ACTIONS(4582), [sym_cast] = ACTIONS(4582), [sym_catch] = ACTIONS(4582), [sym_class] = ACTIONS(4582), [sym_const] = ACTIONS(4582), [sym_continue] = ACTIONS(4582), [sym_debug] = ACTIONS(4582), [sym_default] = ACTIONS(4582), [sym_delegate] = ACTIONS(4582), [sym_delete] = ACTIONS(4582), [sym_deprecated] = ACTIONS(4582), [sym_do] = ACTIONS(4582), [sym_else] = ACTIONS(4582), [sym_enum] = ACTIONS(4582), [sym_export] = ACTIONS(4582), [sym_extern] = ACTIONS(4582), [sym_final] = ACTIONS(4582), [sym_finally] = ACTIONS(4582), [sym_for] = ACTIONS(4582), [sym_foreach] = ACTIONS(4582), [sym_foreach_reverse] = ACTIONS(4582), [sym_function] = ACTIONS(4582), [sym_goto] = ACTIONS(4582), [sym_if] = ACTIONS(4582), [sym_immutable] = ACTIONS(4582), [sym_import] = ACTIONS(4582), [sym_in] = ACTIONS(4582), [sym_inout] = ACTIONS(4582), [sym_interface] = ACTIONS(4582), [sym_invariant] = ACTIONS(4582), [sym_is] = ACTIONS(4582), [sym_mixin] = ACTIONS(4582), [sym_new] = ACTIONS(4582), [sym_nothrow] = ACTIONS(4582), [sym_out] = ACTIONS(4582), [sym_override] = ACTIONS(4582), [sym_package] = ACTIONS(4582), [sym_pragma] = ACTIONS(4582), [sym_private] = ACTIONS(4582), [sym_protected] = ACTIONS(4582), [sym_public] = ACTIONS(4582), [sym_pure] = ACTIONS(4582), [sym_ref] = ACTIONS(4582), [sym_return] = ACTIONS(4582), [sym_scope] = ACTIONS(4582), [sym_shared] = ACTIONS(4582), [sym_static] = ACTIONS(4582), [sym_struct] = ACTIONS(4582), [sym_switch] = ACTIONS(4582), [sym_synchronized] = ACTIONS(4582), [sym_template] = ACTIONS(4582), [sym_throw] = ACTIONS(4582), [sym_try] = ACTIONS(4582), [sym_typeid] = ACTIONS(4582), [sym_typeof] = ACTIONS(4582), [sym_union] = ACTIONS(4582), [sym_unittest] = ACTIONS(4582), [sym_version] = ACTIONS(4582), [sym_while] = ACTIONS(4582), [sym_with] = ACTIONS(4582), [sym_gshared] = ACTIONS(4582), [sym_traits] = ACTIONS(4582), [sym_vector] = ACTIONS(4582), [sym_void] = ACTIONS(4582), [anon_sym_BQUOTE] = ACTIONS(4584), [anon_sym_r_DQUOTE] = ACTIONS(4584), [anon_sym_x_DQUOTE] = ACTIONS(4584), [anon_sym_DQUOTE] = ACTIONS(4584), [anon_sym_i_BQUOTE] = ACTIONS(4584), [anon_sym_i_DQUOTE] = ACTIONS(4584), [anon_sym_iq_LBRACE] = ACTIONS(4584), [aux_sym_char_literal_token1] = ACTIONS(4584), [anon_sym_SQUOTE] = ACTIONS(4582), [anon_sym___DATE__] = ACTIONS(4582), [anon_sym___FILE__] = ACTIONS(4582), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4582), [anon_sym___FUNCTION__] = ACTIONS(4582), [anon_sym___LINE__] = ACTIONS(4582), [anon_sym___MODULE__] = ACTIONS(4582), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4582), [anon_sym___TIME__] = ACTIONS(4582), [anon_sym___TIMESTAMP__] = ACTIONS(4582), [anon_sym___VENDOR__] = ACTIONS(4582), [anon_sym___VERSION__] = ACTIONS(4582), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4584), [sym_float_literal] = ACTIONS(4584), [sym__string] = ACTIONS(4584), }, [1426] = { [sym_identifier] = ACTIONS(4586), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4588), [anon_sym_RBRACE] = ACTIONS(4588), [anon_sym_LBRACE] = ACTIONS(4588), [anon_sym_DOT] = ACTIONS(4588), [anon_sym_AMP] = ACTIONS(4588), [anon_sym_DASH] = ACTIONS(4586), [anon_sym_DASH_DASH] = ACTIONS(4588), [anon_sym_PLUS] = ACTIONS(4586), [anon_sym_PLUS_PLUS] = ACTIONS(4588), [anon_sym_BANG] = ACTIONS(4588), [anon_sym_LPAREN] = ACTIONS(4588), [anon_sym_RPAREN] = ACTIONS(4588), [anon_sym_LBRACK] = ACTIONS(4588), [anon_sym_SEMI] = ACTIONS(4588), [anon_sym_DOLLAR] = ACTIONS(4588), [anon_sym_STAR] = ACTIONS(4588), [anon_sym_TILDE] = ACTIONS(4588), [anon_sym_AT] = ACTIONS(4588), [sym_bool] = ACTIONS(4586), [sym_byte] = ACTIONS(4586), [sym_ubyte] = ACTIONS(4586), [sym_char] = ACTIONS(4586), [sym_short] = ACTIONS(4586), [sym_ushort] = ACTIONS(4586), [sym_int] = ACTIONS(4586), [sym_uint] = ACTIONS(4586), [sym_long] = ACTIONS(4586), [sym_ulong] = ACTIONS(4586), [sym_cent] = ACTIONS(4586), [sym_ucent] = ACTIONS(4586), [sym_wchar] = ACTIONS(4586), [sym_dchar] = ACTIONS(4586), [sym_float] = ACTIONS(4586), [sym_double] = ACTIONS(4586), [sym_real] = ACTIONS(4586), [sym_ifloat] = ACTIONS(4586), [sym_idouble] = ACTIONS(4586), [sym_ireal] = ACTIONS(4586), [sym_cfloat] = ACTIONS(4586), [sym_cdouble] = ACTIONS(4586), [sym_creal] = ACTIONS(4586), [sym_size_t] = ACTIONS(4586), [sym_ptrdiff_t] = ACTIONS(4586), [sym_string] = ACTIONS(4586), [sym_cstring] = ACTIONS(4586), [sym_dstring] = ACTIONS(4586), [sym_wstring] = ACTIONS(4586), [sym_noreturn] = ACTIONS(4586), [sym_true] = ACTIONS(4586), [sym_false] = ACTIONS(4586), [sym_null] = ACTIONS(4586), [sym_super] = ACTIONS(4586), [sym_this] = ACTIONS(4586), [sym_abstract] = ACTIONS(4586), [sym_alias] = ACTIONS(4586), [sym_align] = ACTIONS(4586), [sym_asm] = ACTIONS(4586), [sym_assert] = ACTIONS(4586), [sym_auto] = ACTIONS(4586), [sym_break] = ACTIONS(4586), [sym_case] = ACTIONS(4586), [sym_cast] = ACTIONS(4586), [sym_catch] = ACTIONS(4586), [sym_class] = ACTIONS(4586), [sym_const] = ACTIONS(4586), [sym_continue] = ACTIONS(4586), [sym_debug] = ACTIONS(4586), [sym_default] = ACTIONS(4586), [sym_delegate] = ACTIONS(4586), [sym_delete] = ACTIONS(4586), [sym_deprecated] = ACTIONS(4586), [sym_do] = ACTIONS(4586), [sym_else] = ACTIONS(4586), [sym_enum] = ACTIONS(4586), [sym_export] = ACTIONS(4586), [sym_extern] = ACTIONS(4586), [sym_final] = ACTIONS(4586), [sym_finally] = ACTIONS(4586), [sym_for] = ACTIONS(4586), [sym_foreach] = ACTIONS(4586), [sym_foreach_reverse] = ACTIONS(4586), [sym_function] = ACTIONS(4586), [sym_goto] = ACTIONS(4586), [sym_if] = ACTIONS(4586), [sym_immutable] = ACTIONS(4586), [sym_import] = ACTIONS(4586), [sym_in] = ACTIONS(4586), [sym_inout] = ACTIONS(4586), [sym_interface] = ACTIONS(4586), [sym_invariant] = ACTIONS(4586), [sym_is] = ACTIONS(4586), [sym_mixin] = ACTIONS(4586), [sym_new] = ACTIONS(4586), [sym_nothrow] = ACTIONS(4586), [sym_out] = ACTIONS(4586), [sym_override] = ACTIONS(4586), [sym_package] = ACTIONS(4586), [sym_pragma] = ACTIONS(4586), [sym_private] = ACTIONS(4586), [sym_protected] = ACTIONS(4586), [sym_public] = ACTIONS(4586), [sym_pure] = ACTIONS(4586), [sym_ref] = ACTIONS(4586), [sym_return] = ACTIONS(4586), [sym_scope] = ACTIONS(4586), [sym_shared] = ACTIONS(4586), [sym_static] = ACTIONS(4586), [sym_struct] = ACTIONS(4586), [sym_switch] = ACTIONS(4586), [sym_synchronized] = ACTIONS(4586), [sym_template] = ACTIONS(4586), [sym_throw] = ACTIONS(4586), [sym_try] = ACTIONS(4586), [sym_typeid] = ACTIONS(4586), [sym_typeof] = ACTIONS(4586), [sym_union] = ACTIONS(4586), [sym_unittest] = ACTIONS(4586), [sym_version] = ACTIONS(4586), [sym_while] = ACTIONS(4586), [sym_with] = ACTIONS(4586), [sym_gshared] = ACTIONS(4586), [sym_traits] = ACTIONS(4586), [sym_vector] = ACTIONS(4586), [sym_void] = ACTIONS(4586), [anon_sym_BQUOTE] = ACTIONS(4588), [anon_sym_r_DQUOTE] = ACTIONS(4588), [anon_sym_x_DQUOTE] = ACTIONS(4588), [anon_sym_DQUOTE] = ACTIONS(4588), [anon_sym_i_BQUOTE] = ACTIONS(4588), [anon_sym_i_DQUOTE] = ACTIONS(4588), [anon_sym_iq_LBRACE] = ACTIONS(4588), [aux_sym_char_literal_token1] = ACTIONS(4588), [anon_sym_SQUOTE] = ACTIONS(4586), [anon_sym___DATE__] = ACTIONS(4586), [anon_sym___FILE__] = ACTIONS(4586), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4586), [anon_sym___FUNCTION__] = ACTIONS(4586), [anon_sym___LINE__] = ACTIONS(4586), [anon_sym___MODULE__] = ACTIONS(4586), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4586), [anon_sym___TIME__] = ACTIONS(4586), [anon_sym___TIMESTAMP__] = ACTIONS(4586), [anon_sym___VENDOR__] = ACTIONS(4586), [anon_sym___VERSION__] = ACTIONS(4586), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4588), [sym_float_literal] = ACTIONS(4588), [sym__string] = ACTIONS(4588), }, [1427] = { [sym_identifier] = ACTIONS(4590), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4592), [anon_sym_RBRACE] = ACTIONS(4592), [anon_sym_LBRACE] = ACTIONS(4592), [anon_sym_DOT] = ACTIONS(4592), [anon_sym_AMP] = ACTIONS(4592), [anon_sym_DASH] = ACTIONS(4590), [anon_sym_DASH_DASH] = ACTIONS(4592), [anon_sym_PLUS] = ACTIONS(4590), [anon_sym_PLUS_PLUS] = ACTIONS(4592), [anon_sym_BANG] = ACTIONS(4592), [anon_sym_LPAREN] = ACTIONS(4592), [anon_sym_RPAREN] = ACTIONS(4592), [anon_sym_LBRACK] = ACTIONS(4592), [anon_sym_SEMI] = ACTIONS(4592), [anon_sym_DOLLAR] = ACTIONS(4592), [anon_sym_STAR] = ACTIONS(4592), [anon_sym_TILDE] = ACTIONS(4592), [anon_sym_AT] = ACTIONS(4592), [sym_bool] = ACTIONS(4590), [sym_byte] = ACTIONS(4590), [sym_ubyte] = ACTIONS(4590), [sym_char] = ACTIONS(4590), [sym_short] = ACTIONS(4590), [sym_ushort] = ACTIONS(4590), [sym_int] = ACTIONS(4590), [sym_uint] = ACTIONS(4590), [sym_long] = ACTIONS(4590), [sym_ulong] = ACTIONS(4590), [sym_cent] = ACTIONS(4590), [sym_ucent] = ACTIONS(4590), [sym_wchar] = ACTIONS(4590), [sym_dchar] = ACTIONS(4590), [sym_float] = ACTIONS(4590), [sym_double] = ACTIONS(4590), [sym_real] = ACTIONS(4590), [sym_ifloat] = ACTIONS(4590), [sym_idouble] = ACTIONS(4590), [sym_ireal] = ACTIONS(4590), [sym_cfloat] = ACTIONS(4590), [sym_cdouble] = ACTIONS(4590), [sym_creal] = ACTIONS(4590), [sym_size_t] = ACTIONS(4590), [sym_ptrdiff_t] = ACTIONS(4590), [sym_string] = ACTIONS(4590), [sym_cstring] = ACTIONS(4590), [sym_dstring] = ACTIONS(4590), [sym_wstring] = ACTIONS(4590), [sym_noreturn] = ACTIONS(4590), [sym_true] = ACTIONS(4590), [sym_false] = ACTIONS(4590), [sym_null] = ACTIONS(4590), [sym_super] = ACTIONS(4590), [sym_this] = ACTIONS(4590), [sym_abstract] = ACTIONS(4590), [sym_alias] = ACTIONS(4590), [sym_align] = ACTIONS(4590), [sym_asm] = ACTIONS(4590), [sym_assert] = ACTIONS(4590), [sym_auto] = ACTIONS(4590), [sym_break] = ACTIONS(4590), [sym_case] = ACTIONS(4590), [sym_cast] = ACTIONS(4590), [sym_catch] = ACTIONS(4590), [sym_class] = ACTIONS(4590), [sym_const] = ACTIONS(4590), [sym_continue] = ACTIONS(4590), [sym_debug] = ACTIONS(4590), [sym_default] = ACTIONS(4590), [sym_delegate] = ACTIONS(4590), [sym_delete] = ACTIONS(4590), [sym_deprecated] = ACTIONS(4590), [sym_do] = ACTIONS(4590), [sym_else] = ACTIONS(4590), [sym_enum] = ACTIONS(4590), [sym_export] = ACTIONS(4590), [sym_extern] = ACTIONS(4590), [sym_final] = ACTIONS(4590), [sym_finally] = ACTIONS(4590), [sym_for] = ACTIONS(4590), [sym_foreach] = ACTIONS(4590), [sym_foreach_reverse] = ACTIONS(4590), [sym_function] = ACTIONS(4590), [sym_goto] = ACTIONS(4590), [sym_if] = ACTIONS(4590), [sym_immutable] = ACTIONS(4590), [sym_import] = ACTIONS(4590), [sym_in] = ACTIONS(4590), [sym_inout] = ACTIONS(4590), [sym_interface] = ACTIONS(4590), [sym_invariant] = ACTIONS(4590), [sym_is] = ACTIONS(4590), [sym_mixin] = ACTIONS(4590), [sym_new] = ACTIONS(4590), [sym_nothrow] = ACTIONS(4590), [sym_out] = ACTIONS(4590), [sym_override] = ACTIONS(4590), [sym_package] = ACTIONS(4590), [sym_pragma] = ACTIONS(4590), [sym_private] = ACTIONS(4590), [sym_protected] = ACTIONS(4590), [sym_public] = ACTIONS(4590), [sym_pure] = ACTIONS(4590), [sym_ref] = ACTIONS(4590), [sym_return] = ACTIONS(4590), [sym_scope] = ACTIONS(4590), [sym_shared] = ACTIONS(4590), [sym_static] = ACTIONS(4590), [sym_struct] = ACTIONS(4590), [sym_switch] = ACTIONS(4590), [sym_synchronized] = ACTIONS(4590), [sym_template] = ACTIONS(4590), [sym_throw] = ACTIONS(4590), [sym_try] = ACTIONS(4590), [sym_typeid] = ACTIONS(4590), [sym_typeof] = ACTIONS(4590), [sym_union] = ACTIONS(4590), [sym_unittest] = ACTIONS(4590), [sym_version] = ACTIONS(4590), [sym_while] = ACTIONS(4590), [sym_with] = ACTIONS(4590), [sym_gshared] = ACTIONS(4590), [sym_traits] = ACTIONS(4590), [sym_vector] = ACTIONS(4590), [sym_void] = ACTIONS(4590), [anon_sym_BQUOTE] = ACTIONS(4592), [anon_sym_r_DQUOTE] = ACTIONS(4592), [anon_sym_x_DQUOTE] = ACTIONS(4592), [anon_sym_DQUOTE] = ACTIONS(4592), [anon_sym_i_BQUOTE] = ACTIONS(4592), [anon_sym_i_DQUOTE] = ACTIONS(4592), [anon_sym_iq_LBRACE] = ACTIONS(4592), [aux_sym_char_literal_token1] = ACTIONS(4592), [anon_sym_SQUOTE] = ACTIONS(4590), [anon_sym___DATE__] = ACTIONS(4590), [anon_sym___FILE__] = ACTIONS(4590), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4590), [anon_sym___FUNCTION__] = ACTIONS(4590), [anon_sym___LINE__] = ACTIONS(4590), [anon_sym___MODULE__] = ACTIONS(4590), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4590), [anon_sym___TIME__] = ACTIONS(4590), [anon_sym___TIMESTAMP__] = ACTIONS(4590), [anon_sym___VENDOR__] = ACTIONS(4590), [anon_sym___VERSION__] = ACTIONS(4590), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4592), [sym_float_literal] = ACTIONS(4592), [sym__string] = ACTIONS(4592), }, [1428] = { [sym_identifier] = ACTIONS(4594), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4596), [anon_sym_RBRACE] = ACTIONS(4596), [anon_sym_LBRACE] = ACTIONS(4596), [anon_sym_DOT] = ACTIONS(4596), [anon_sym_AMP] = ACTIONS(4596), [anon_sym_DASH] = ACTIONS(4594), [anon_sym_DASH_DASH] = ACTIONS(4596), [anon_sym_PLUS] = ACTIONS(4594), [anon_sym_PLUS_PLUS] = ACTIONS(4596), [anon_sym_BANG] = ACTIONS(4596), [anon_sym_LPAREN] = ACTIONS(4596), [anon_sym_RPAREN] = ACTIONS(4596), [anon_sym_LBRACK] = ACTIONS(4596), [anon_sym_SEMI] = ACTIONS(4596), [anon_sym_DOLLAR] = ACTIONS(4596), [anon_sym_STAR] = ACTIONS(4596), [anon_sym_TILDE] = ACTIONS(4596), [anon_sym_AT] = ACTIONS(4596), [sym_bool] = ACTIONS(4594), [sym_byte] = ACTIONS(4594), [sym_ubyte] = ACTIONS(4594), [sym_char] = ACTIONS(4594), [sym_short] = ACTIONS(4594), [sym_ushort] = ACTIONS(4594), [sym_int] = ACTIONS(4594), [sym_uint] = ACTIONS(4594), [sym_long] = ACTIONS(4594), [sym_ulong] = ACTIONS(4594), [sym_cent] = ACTIONS(4594), [sym_ucent] = ACTIONS(4594), [sym_wchar] = ACTIONS(4594), [sym_dchar] = ACTIONS(4594), [sym_float] = ACTIONS(4594), [sym_double] = ACTIONS(4594), [sym_real] = ACTIONS(4594), [sym_ifloat] = ACTIONS(4594), [sym_idouble] = ACTIONS(4594), [sym_ireal] = ACTIONS(4594), [sym_cfloat] = ACTIONS(4594), [sym_cdouble] = ACTIONS(4594), [sym_creal] = ACTIONS(4594), [sym_size_t] = ACTIONS(4594), [sym_ptrdiff_t] = ACTIONS(4594), [sym_string] = ACTIONS(4594), [sym_cstring] = ACTIONS(4594), [sym_dstring] = ACTIONS(4594), [sym_wstring] = ACTIONS(4594), [sym_noreturn] = ACTIONS(4594), [sym_true] = ACTIONS(4594), [sym_false] = ACTIONS(4594), [sym_null] = ACTIONS(4594), [sym_super] = ACTIONS(4594), [sym_this] = ACTIONS(4594), [sym_abstract] = ACTIONS(4594), [sym_alias] = ACTIONS(4594), [sym_align] = ACTIONS(4594), [sym_asm] = ACTIONS(4594), [sym_assert] = ACTIONS(4594), [sym_auto] = ACTIONS(4594), [sym_break] = ACTIONS(4594), [sym_case] = ACTIONS(4594), [sym_cast] = ACTIONS(4594), [sym_catch] = ACTIONS(4594), [sym_class] = ACTIONS(4594), [sym_const] = ACTIONS(4594), [sym_continue] = ACTIONS(4594), [sym_debug] = ACTIONS(4594), [sym_default] = ACTIONS(4594), [sym_delegate] = ACTIONS(4594), [sym_delete] = ACTIONS(4594), [sym_deprecated] = ACTIONS(4594), [sym_do] = ACTIONS(4594), [sym_else] = ACTIONS(4594), [sym_enum] = ACTIONS(4594), [sym_export] = ACTIONS(4594), [sym_extern] = ACTIONS(4594), [sym_final] = ACTIONS(4594), [sym_finally] = ACTIONS(4594), [sym_for] = ACTIONS(4594), [sym_foreach] = ACTIONS(4594), [sym_foreach_reverse] = ACTIONS(4594), [sym_function] = ACTIONS(4594), [sym_goto] = ACTIONS(4594), [sym_if] = ACTIONS(4594), [sym_immutable] = ACTIONS(4594), [sym_import] = ACTIONS(4594), [sym_in] = ACTIONS(4594), [sym_inout] = ACTIONS(4594), [sym_interface] = ACTIONS(4594), [sym_invariant] = ACTIONS(4594), [sym_is] = ACTIONS(4594), [sym_mixin] = ACTIONS(4594), [sym_new] = ACTIONS(4594), [sym_nothrow] = ACTIONS(4594), [sym_out] = ACTIONS(4594), [sym_override] = ACTIONS(4594), [sym_package] = ACTIONS(4594), [sym_pragma] = ACTIONS(4594), [sym_private] = ACTIONS(4594), [sym_protected] = ACTIONS(4594), [sym_public] = ACTIONS(4594), [sym_pure] = ACTIONS(4594), [sym_ref] = ACTIONS(4594), [sym_return] = ACTIONS(4594), [sym_scope] = ACTIONS(4594), [sym_shared] = ACTIONS(4594), [sym_static] = ACTIONS(4594), [sym_struct] = ACTIONS(4594), [sym_switch] = ACTIONS(4594), [sym_synchronized] = ACTIONS(4594), [sym_template] = ACTIONS(4594), [sym_throw] = ACTIONS(4594), [sym_try] = ACTIONS(4594), [sym_typeid] = ACTIONS(4594), [sym_typeof] = ACTIONS(4594), [sym_union] = ACTIONS(4594), [sym_unittest] = ACTIONS(4594), [sym_version] = ACTIONS(4594), [sym_while] = ACTIONS(4594), [sym_with] = ACTIONS(4594), [sym_gshared] = ACTIONS(4594), [sym_traits] = ACTIONS(4594), [sym_vector] = ACTIONS(4594), [sym_void] = ACTIONS(4594), [anon_sym_BQUOTE] = ACTIONS(4596), [anon_sym_r_DQUOTE] = ACTIONS(4596), [anon_sym_x_DQUOTE] = ACTIONS(4596), [anon_sym_DQUOTE] = ACTIONS(4596), [anon_sym_i_BQUOTE] = ACTIONS(4596), [anon_sym_i_DQUOTE] = ACTIONS(4596), [anon_sym_iq_LBRACE] = ACTIONS(4596), [aux_sym_char_literal_token1] = ACTIONS(4596), [anon_sym_SQUOTE] = ACTIONS(4594), [anon_sym___DATE__] = ACTIONS(4594), [anon_sym___FILE__] = ACTIONS(4594), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4594), [anon_sym___FUNCTION__] = ACTIONS(4594), [anon_sym___LINE__] = ACTIONS(4594), [anon_sym___MODULE__] = ACTIONS(4594), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4594), [anon_sym___TIME__] = ACTIONS(4594), [anon_sym___TIMESTAMP__] = ACTIONS(4594), [anon_sym___VENDOR__] = ACTIONS(4594), [anon_sym___VERSION__] = ACTIONS(4594), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4596), [sym_float_literal] = ACTIONS(4596), [sym__string] = ACTIONS(4596), }, [1429] = { [sym_identifier] = ACTIONS(4598), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4600), [anon_sym_RBRACE] = ACTIONS(4600), [anon_sym_LBRACE] = ACTIONS(4600), [anon_sym_DOT] = ACTIONS(4600), [anon_sym_AMP] = ACTIONS(4600), [anon_sym_DASH] = ACTIONS(4598), [anon_sym_DASH_DASH] = ACTIONS(4600), [anon_sym_PLUS] = ACTIONS(4598), [anon_sym_PLUS_PLUS] = ACTIONS(4600), [anon_sym_BANG] = ACTIONS(4600), [anon_sym_LPAREN] = ACTIONS(4600), [anon_sym_RPAREN] = ACTIONS(4600), [anon_sym_LBRACK] = ACTIONS(4600), [anon_sym_SEMI] = ACTIONS(4600), [anon_sym_DOLLAR] = ACTIONS(4600), [anon_sym_STAR] = ACTIONS(4600), [anon_sym_TILDE] = ACTIONS(4600), [anon_sym_AT] = ACTIONS(4600), [sym_bool] = ACTIONS(4598), [sym_byte] = ACTIONS(4598), [sym_ubyte] = ACTIONS(4598), [sym_char] = ACTIONS(4598), [sym_short] = ACTIONS(4598), [sym_ushort] = ACTIONS(4598), [sym_int] = ACTIONS(4598), [sym_uint] = ACTIONS(4598), [sym_long] = ACTIONS(4598), [sym_ulong] = ACTIONS(4598), [sym_cent] = ACTIONS(4598), [sym_ucent] = ACTIONS(4598), [sym_wchar] = ACTIONS(4598), [sym_dchar] = ACTIONS(4598), [sym_float] = ACTIONS(4598), [sym_double] = ACTIONS(4598), [sym_real] = ACTIONS(4598), [sym_ifloat] = ACTIONS(4598), [sym_idouble] = ACTIONS(4598), [sym_ireal] = ACTIONS(4598), [sym_cfloat] = ACTIONS(4598), [sym_cdouble] = ACTIONS(4598), [sym_creal] = ACTIONS(4598), [sym_size_t] = ACTIONS(4598), [sym_ptrdiff_t] = ACTIONS(4598), [sym_string] = ACTIONS(4598), [sym_cstring] = ACTIONS(4598), [sym_dstring] = ACTIONS(4598), [sym_wstring] = ACTIONS(4598), [sym_noreturn] = ACTIONS(4598), [sym_true] = ACTIONS(4598), [sym_false] = ACTIONS(4598), [sym_null] = ACTIONS(4598), [sym_super] = ACTIONS(4598), [sym_this] = ACTIONS(4598), [sym_abstract] = ACTIONS(4598), [sym_alias] = ACTIONS(4598), [sym_align] = ACTIONS(4598), [sym_asm] = ACTIONS(4598), [sym_assert] = ACTIONS(4598), [sym_auto] = ACTIONS(4598), [sym_break] = ACTIONS(4598), [sym_case] = ACTIONS(4598), [sym_cast] = ACTIONS(4598), [sym_catch] = ACTIONS(4598), [sym_class] = ACTIONS(4598), [sym_const] = ACTIONS(4598), [sym_continue] = ACTIONS(4598), [sym_debug] = ACTIONS(4598), [sym_default] = ACTIONS(4598), [sym_delegate] = ACTIONS(4598), [sym_delete] = ACTIONS(4598), [sym_deprecated] = ACTIONS(4598), [sym_do] = ACTIONS(4598), [sym_else] = ACTIONS(4598), [sym_enum] = ACTIONS(4598), [sym_export] = ACTIONS(4598), [sym_extern] = ACTIONS(4598), [sym_final] = ACTIONS(4598), [sym_finally] = ACTIONS(4598), [sym_for] = ACTIONS(4598), [sym_foreach] = ACTIONS(4598), [sym_foreach_reverse] = ACTIONS(4598), [sym_function] = ACTIONS(4598), [sym_goto] = ACTIONS(4598), [sym_if] = ACTIONS(4598), [sym_immutable] = ACTIONS(4598), [sym_import] = ACTIONS(4598), [sym_in] = ACTIONS(4598), [sym_inout] = ACTIONS(4598), [sym_interface] = ACTIONS(4598), [sym_invariant] = ACTIONS(4598), [sym_is] = ACTIONS(4598), [sym_mixin] = ACTIONS(4598), [sym_new] = ACTIONS(4598), [sym_nothrow] = ACTIONS(4598), [sym_out] = ACTIONS(4598), [sym_override] = ACTIONS(4598), [sym_package] = ACTIONS(4598), [sym_pragma] = ACTIONS(4598), [sym_private] = ACTIONS(4598), [sym_protected] = ACTIONS(4598), [sym_public] = ACTIONS(4598), [sym_pure] = ACTIONS(4598), [sym_ref] = ACTIONS(4598), [sym_return] = ACTIONS(4598), [sym_scope] = ACTIONS(4598), [sym_shared] = ACTIONS(4598), [sym_static] = ACTIONS(4598), [sym_struct] = ACTIONS(4598), [sym_switch] = ACTIONS(4598), [sym_synchronized] = ACTIONS(4598), [sym_template] = ACTIONS(4598), [sym_throw] = ACTIONS(4598), [sym_try] = ACTIONS(4598), [sym_typeid] = ACTIONS(4598), [sym_typeof] = ACTIONS(4598), [sym_union] = ACTIONS(4598), [sym_unittest] = ACTIONS(4598), [sym_version] = ACTIONS(4598), [sym_while] = ACTIONS(4598), [sym_with] = ACTIONS(4598), [sym_gshared] = ACTIONS(4598), [sym_traits] = ACTIONS(4598), [sym_vector] = ACTIONS(4598), [sym_void] = ACTIONS(4598), [anon_sym_BQUOTE] = ACTIONS(4600), [anon_sym_r_DQUOTE] = ACTIONS(4600), [anon_sym_x_DQUOTE] = ACTIONS(4600), [anon_sym_DQUOTE] = ACTIONS(4600), [anon_sym_i_BQUOTE] = ACTIONS(4600), [anon_sym_i_DQUOTE] = ACTIONS(4600), [anon_sym_iq_LBRACE] = ACTIONS(4600), [aux_sym_char_literal_token1] = ACTIONS(4600), [anon_sym_SQUOTE] = ACTIONS(4598), [anon_sym___DATE__] = ACTIONS(4598), [anon_sym___FILE__] = ACTIONS(4598), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4598), [anon_sym___FUNCTION__] = ACTIONS(4598), [anon_sym___LINE__] = ACTIONS(4598), [anon_sym___MODULE__] = ACTIONS(4598), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4598), [anon_sym___TIME__] = ACTIONS(4598), [anon_sym___TIMESTAMP__] = ACTIONS(4598), [anon_sym___VENDOR__] = ACTIONS(4598), [anon_sym___VERSION__] = ACTIONS(4598), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4600), [sym_float_literal] = ACTIONS(4600), [sym__string] = ACTIONS(4600), }, [1430] = { [sym_identifier] = ACTIONS(4602), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4604), [anon_sym_RBRACE] = ACTIONS(4604), [anon_sym_LBRACE] = ACTIONS(4604), [anon_sym_DOT] = ACTIONS(4604), [anon_sym_AMP] = ACTIONS(4604), [anon_sym_DASH] = ACTIONS(4602), [anon_sym_DASH_DASH] = ACTIONS(4604), [anon_sym_PLUS] = ACTIONS(4602), [anon_sym_PLUS_PLUS] = ACTIONS(4604), [anon_sym_BANG] = ACTIONS(4604), [anon_sym_LPAREN] = ACTIONS(4604), [anon_sym_RPAREN] = ACTIONS(4604), [anon_sym_LBRACK] = ACTIONS(4604), [anon_sym_SEMI] = ACTIONS(4604), [anon_sym_DOLLAR] = ACTIONS(4604), [anon_sym_STAR] = ACTIONS(4604), [anon_sym_TILDE] = ACTIONS(4604), [anon_sym_AT] = ACTIONS(4604), [sym_bool] = ACTIONS(4602), [sym_byte] = ACTIONS(4602), [sym_ubyte] = ACTIONS(4602), [sym_char] = ACTIONS(4602), [sym_short] = ACTIONS(4602), [sym_ushort] = ACTIONS(4602), [sym_int] = ACTIONS(4602), [sym_uint] = ACTIONS(4602), [sym_long] = ACTIONS(4602), [sym_ulong] = ACTIONS(4602), [sym_cent] = ACTIONS(4602), [sym_ucent] = ACTIONS(4602), [sym_wchar] = ACTIONS(4602), [sym_dchar] = ACTIONS(4602), [sym_float] = ACTIONS(4602), [sym_double] = ACTIONS(4602), [sym_real] = ACTIONS(4602), [sym_ifloat] = ACTIONS(4602), [sym_idouble] = ACTIONS(4602), [sym_ireal] = ACTIONS(4602), [sym_cfloat] = ACTIONS(4602), [sym_cdouble] = ACTIONS(4602), [sym_creal] = ACTIONS(4602), [sym_size_t] = ACTIONS(4602), [sym_ptrdiff_t] = ACTIONS(4602), [sym_string] = ACTIONS(4602), [sym_cstring] = ACTIONS(4602), [sym_dstring] = ACTIONS(4602), [sym_wstring] = ACTIONS(4602), [sym_noreturn] = ACTIONS(4602), [sym_true] = ACTIONS(4602), [sym_false] = ACTIONS(4602), [sym_null] = ACTIONS(4602), [sym_super] = ACTIONS(4602), [sym_this] = ACTIONS(4602), [sym_abstract] = ACTIONS(4602), [sym_alias] = ACTIONS(4602), [sym_align] = ACTIONS(4602), [sym_asm] = ACTIONS(4602), [sym_assert] = ACTIONS(4602), [sym_auto] = ACTIONS(4602), [sym_break] = ACTIONS(4602), [sym_case] = ACTIONS(4602), [sym_cast] = ACTIONS(4602), [sym_catch] = ACTIONS(4602), [sym_class] = ACTIONS(4602), [sym_const] = ACTIONS(4602), [sym_continue] = ACTIONS(4602), [sym_debug] = ACTIONS(4602), [sym_default] = ACTIONS(4602), [sym_delegate] = ACTIONS(4602), [sym_delete] = ACTIONS(4602), [sym_deprecated] = ACTIONS(4602), [sym_do] = ACTIONS(4602), [sym_else] = ACTIONS(4602), [sym_enum] = ACTIONS(4602), [sym_export] = ACTIONS(4602), [sym_extern] = ACTIONS(4602), [sym_final] = ACTIONS(4602), [sym_finally] = ACTIONS(4602), [sym_for] = ACTIONS(4602), [sym_foreach] = ACTIONS(4602), [sym_foreach_reverse] = ACTIONS(4602), [sym_function] = ACTIONS(4602), [sym_goto] = ACTIONS(4602), [sym_if] = ACTIONS(4602), [sym_immutable] = ACTIONS(4602), [sym_import] = ACTIONS(4602), [sym_in] = ACTIONS(4602), [sym_inout] = ACTIONS(4602), [sym_interface] = ACTIONS(4602), [sym_invariant] = ACTIONS(4602), [sym_is] = ACTIONS(4602), [sym_mixin] = ACTIONS(4602), [sym_new] = ACTIONS(4602), [sym_nothrow] = ACTIONS(4602), [sym_out] = ACTIONS(4602), [sym_override] = ACTIONS(4602), [sym_package] = ACTIONS(4602), [sym_pragma] = ACTIONS(4602), [sym_private] = ACTIONS(4602), [sym_protected] = ACTIONS(4602), [sym_public] = ACTIONS(4602), [sym_pure] = ACTIONS(4602), [sym_ref] = ACTIONS(4602), [sym_return] = ACTIONS(4602), [sym_scope] = ACTIONS(4602), [sym_shared] = ACTIONS(4602), [sym_static] = ACTIONS(4602), [sym_struct] = ACTIONS(4602), [sym_switch] = ACTIONS(4602), [sym_synchronized] = ACTIONS(4602), [sym_template] = ACTIONS(4602), [sym_throw] = ACTIONS(4602), [sym_try] = ACTIONS(4602), [sym_typeid] = ACTIONS(4602), [sym_typeof] = ACTIONS(4602), [sym_union] = ACTIONS(4602), [sym_unittest] = ACTIONS(4602), [sym_version] = ACTIONS(4602), [sym_while] = ACTIONS(4602), [sym_with] = ACTIONS(4602), [sym_gshared] = ACTIONS(4602), [sym_traits] = ACTIONS(4602), [sym_vector] = ACTIONS(4602), [sym_void] = ACTIONS(4602), [anon_sym_BQUOTE] = ACTIONS(4604), [anon_sym_r_DQUOTE] = ACTIONS(4604), [anon_sym_x_DQUOTE] = ACTIONS(4604), [anon_sym_DQUOTE] = ACTIONS(4604), [anon_sym_i_BQUOTE] = ACTIONS(4604), [anon_sym_i_DQUOTE] = ACTIONS(4604), [anon_sym_iq_LBRACE] = ACTIONS(4604), [aux_sym_char_literal_token1] = ACTIONS(4604), [anon_sym_SQUOTE] = ACTIONS(4602), [anon_sym___DATE__] = ACTIONS(4602), [anon_sym___FILE__] = ACTIONS(4602), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4602), [anon_sym___FUNCTION__] = ACTIONS(4602), [anon_sym___LINE__] = ACTIONS(4602), [anon_sym___MODULE__] = ACTIONS(4602), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4602), [anon_sym___TIME__] = ACTIONS(4602), [anon_sym___TIMESTAMP__] = ACTIONS(4602), [anon_sym___VENDOR__] = ACTIONS(4602), [anon_sym___VERSION__] = ACTIONS(4602), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4604), [sym_float_literal] = ACTIONS(4604), [sym__string] = ACTIONS(4604), }, [1431] = { [sym_identifier] = ACTIONS(4606), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4608), [anon_sym_RBRACE] = ACTIONS(4608), [anon_sym_LBRACE] = ACTIONS(4608), [anon_sym_DOT] = ACTIONS(4608), [anon_sym_AMP] = ACTIONS(4608), [anon_sym_DASH] = ACTIONS(4606), [anon_sym_DASH_DASH] = ACTIONS(4608), [anon_sym_PLUS] = ACTIONS(4606), [anon_sym_PLUS_PLUS] = ACTIONS(4608), [anon_sym_BANG] = ACTIONS(4608), [anon_sym_LPAREN] = ACTIONS(4608), [anon_sym_RPAREN] = ACTIONS(4608), [anon_sym_LBRACK] = ACTIONS(4608), [anon_sym_SEMI] = ACTIONS(4608), [anon_sym_DOLLAR] = ACTIONS(4608), [anon_sym_STAR] = ACTIONS(4608), [anon_sym_TILDE] = ACTIONS(4608), [anon_sym_AT] = ACTIONS(4608), [sym_bool] = ACTIONS(4606), [sym_byte] = ACTIONS(4606), [sym_ubyte] = ACTIONS(4606), [sym_char] = ACTIONS(4606), [sym_short] = ACTIONS(4606), [sym_ushort] = ACTIONS(4606), [sym_int] = ACTIONS(4606), [sym_uint] = ACTIONS(4606), [sym_long] = ACTIONS(4606), [sym_ulong] = ACTIONS(4606), [sym_cent] = ACTIONS(4606), [sym_ucent] = ACTIONS(4606), [sym_wchar] = ACTIONS(4606), [sym_dchar] = ACTIONS(4606), [sym_float] = ACTIONS(4606), [sym_double] = ACTIONS(4606), [sym_real] = ACTIONS(4606), [sym_ifloat] = ACTIONS(4606), [sym_idouble] = ACTIONS(4606), [sym_ireal] = ACTIONS(4606), [sym_cfloat] = ACTIONS(4606), [sym_cdouble] = ACTIONS(4606), [sym_creal] = ACTIONS(4606), [sym_size_t] = ACTIONS(4606), [sym_ptrdiff_t] = ACTIONS(4606), [sym_string] = ACTIONS(4606), [sym_cstring] = ACTIONS(4606), [sym_dstring] = ACTIONS(4606), [sym_wstring] = ACTIONS(4606), [sym_noreturn] = ACTIONS(4606), [sym_true] = ACTIONS(4606), [sym_false] = ACTIONS(4606), [sym_null] = ACTIONS(4606), [sym_super] = ACTIONS(4606), [sym_this] = ACTIONS(4606), [sym_abstract] = ACTIONS(4606), [sym_alias] = ACTIONS(4606), [sym_align] = ACTIONS(4606), [sym_asm] = ACTIONS(4606), [sym_assert] = ACTIONS(4606), [sym_auto] = ACTIONS(4606), [sym_break] = ACTIONS(4606), [sym_case] = ACTIONS(4606), [sym_cast] = ACTIONS(4606), [sym_catch] = ACTIONS(4606), [sym_class] = ACTIONS(4606), [sym_const] = ACTIONS(4606), [sym_continue] = ACTIONS(4606), [sym_debug] = ACTIONS(4606), [sym_default] = ACTIONS(4606), [sym_delegate] = ACTIONS(4606), [sym_delete] = ACTIONS(4606), [sym_deprecated] = ACTIONS(4606), [sym_do] = ACTIONS(4606), [sym_else] = ACTIONS(4606), [sym_enum] = ACTIONS(4606), [sym_export] = ACTIONS(4606), [sym_extern] = ACTIONS(4606), [sym_final] = ACTIONS(4606), [sym_finally] = ACTIONS(4606), [sym_for] = ACTIONS(4606), [sym_foreach] = ACTIONS(4606), [sym_foreach_reverse] = ACTIONS(4606), [sym_function] = ACTIONS(4606), [sym_goto] = ACTIONS(4606), [sym_if] = ACTIONS(4606), [sym_immutable] = ACTIONS(4606), [sym_import] = ACTIONS(4606), [sym_in] = ACTIONS(4606), [sym_inout] = ACTIONS(4606), [sym_interface] = ACTIONS(4606), [sym_invariant] = ACTIONS(4606), [sym_is] = ACTIONS(4606), [sym_mixin] = ACTIONS(4606), [sym_new] = ACTIONS(4606), [sym_nothrow] = ACTIONS(4606), [sym_out] = ACTIONS(4606), [sym_override] = ACTIONS(4606), [sym_package] = ACTIONS(4606), [sym_pragma] = ACTIONS(4606), [sym_private] = ACTIONS(4606), [sym_protected] = ACTIONS(4606), [sym_public] = ACTIONS(4606), [sym_pure] = ACTIONS(4606), [sym_ref] = ACTIONS(4606), [sym_return] = ACTIONS(4606), [sym_scope] = ACTIONS(4606), [sym_shared] = ACTIONS(4606), [sym_static] = ACTIONS(4606), [sym_struct] = ACTIONS(4606), [sym_switch] = ACTIONS(4606), [sym_synchronized] = ACTIONS(4606), [sym_template] = ACTIONS(4606), [sym_throw] = ACTIONS(4606), [sym_try] = ACTIONS(4606), [sym_typeid] = ACTIONS(4606), [sym_typeof] = ACTIONS(4606), [sym_union] = ACTIONS(4606), [sym_unittest] = ACTIONS(4606), [sym_version] = ACTIONS(4606), [sym_while] = ACTIONS(4606), [sym_with] = ACTIONS(4606), [sym_gshared] = ACTIONS(4606), [sym_traits] = ACTIONS(4606), [sym_vector] = ACTIONS(4606), [sym_void] = ACTIONS(4606), [anon_sym_BQUOTE] = ACTIONS(4608), [anon_sym_r_DQUOTE] = ACTIONS(4608), [anon_sym_x_DQUOTE] = ACTIONS(4608), [anon_sym_DQUOTE] = ACTIONS(4608), [anon_sym_i_BQUOTE] = ACTIONS(4608), [anon_sym_i_DQUOTE] = ACTIONS(4608), [anon_sym_iq_LBRACE] = ACTIONS(4608), [aux_sym_char_literal_token1] = ACTIONS(4608), [anon_sym_SQUOTE] = ACTIONS(4606), [anon_sym___DATE__] = ACTIONS(4606), [anon_sym___FILE__] = ACTIONS(4606), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4606), [anon_sym___FUNCTION__] = ACTIONS(4606), [anon_sym___LINE__] = ACTIONS(4606), [anon_sym___MODULE__] = ACTIONS(4606), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4606), [anon_sym___TIME__] = ACTIONS(4606), [anon_sym___TIMESTAMP__] = ACTIONS(4606), [anon_sym___VENDOR__] = ACTIONS(4606), [anon_sym___VERSION__] = ACTIONS(4606), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4608), [sym_float_literal] = ACTIONS(4608), [sym__string] = ACTIONS(4608), }, [1432] = { [sym_identifier] = ACTIONS(4610), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4612), [anon_sym_RBRACE] = ACTIONS(4612), [anon_sym_LBRACE] = ACTIONS(4612), [anon_sym_DOT] = ACTIONS(4612), [anon_sym_AMP] = ACTIONS(4612), [anon_sym_DASH] = ACTIONS(4610), [anon_sym_DASH_DASH] = ACTIONS(4612), [anon_sym_PLUS] = ACTIONS(4610), [anon_sym_PLUS_PLUS] = ACTIONS(4612), [anon_sym_BANG] = ACTIONS(4612), [anon_sym_LPAREN] = ACTIONS(4612), [anon_sym_RPAREN] = ACTIONS(4612), [anon_sym_LBRACK] = ACTIONS(4612), [anon_sym_SEMI] = ACTIONS(4612), [anon_sym_DOLLAR] = ACTIONS(4612), [anon_sym_STAR] = ACTIONS(4612), [anon_sym_TILDE] = ACTIONS(4612), [anon_sym_AT] = ACTIONS(4612), [sym_bool] = ACTIONS(4610), [sym_byte] = ACTIONS(4610), [sym_ubyte] = ACTIONS(4610), [sym_char] = ACTIONS(4610), [sym_short] = ACTIONS(4610), [sym_ushort] = ACTIONS(4610), [sym_int] = ACTIONS(4610), [sym_uint] = ACTIONS(4610), [sym_long] = ACTIONS(4610), [sym_ulong] = ACTIONS(4610), [sym_cent] = ACTIONS(4610), [sym_ucent] = ACTIONS(4610), [sym_wchar] = ACTIONS(4610), [sym_dchar] = ACTIONS(4610), [sym_float] = ACTIONS(4610), [sym_double] = ACTIONS(4610), [sym_real] = ACTIONS(4610), [sym_ifloat] = ACTIONS(4610), [sym_idouble] = ACTIONS(4610), [sym_ireal] = ACTIONS(4610), [sym_cfloat] = ACTIONS(4610), [sym_cdouble] = ACTIONS(4610), [sym_creal] = ACTIONS(4610), [sym_size_t] = ACTIONS(4610), [sym_ptrdiff_t] = ACTIONS(4610), [sym_string] = ACTIONS(4610), [sym_cstring] = ACTIONS(4610), [sym_dstring] = ACTIONS(4610), [sym_wstring] = ACTIONS(4610), [sym_noreturn] = ACTIONS(4610), [sym_true] = ACTIONS(4610), [sym_false] = ACTIONS(4610), [sym_null] = ACTIONS(4610), [sym_super] = ACTIONS(4610), [sym_this] = ACTIONS(4610), [sym_abstract] = ACTIONS(4610), [sym_alias] = ACTIONS(4610), [sym_align] = ACTIONS(4610), [sym_asm] = ACTIONS(4610), [sym_assert] = ACTIONS(4610), [sym_auto] = ACTIONS(4610), [sym_break] = ACTIONS(4610), [sym_case] = ACTIONS(4610), [sym_cast] = ACTIONS(4610), [sym_catch] = ACTIONS(4610), [sym_class] = ACTIONS(4610), [sym_const] = ACTIONS(4610), [sym_continue] = ACTIONS(4610), [sym_debug] = ACTIONS(4610), [sym_default] = ACTIONS(4610), [sym_delegate] = ACTIONS(4610), [sym_delete] = ACTIONS(4610), [sym_deprecated] = ACTIONS(4610), [sym_do] = ACTIONS(4610), [sym_else] = ACTIONS(4610), [sym_enum] = ACTIONS(4610), [sym_export] = ACTIONS(4610), [sym_extern] = ACTIONS(4610), [sym_final] = ACTIONS(4610), [sym_finally] = ACTIONS(4610), [sym_for] = ACTIONS(4610), [sym_foreach] = ACTIONS(4610), [sym_foreach_reverse] = ACTIONS(4610), [sym_function] = ACTIONS(4610), [sym_goto] = ACTIONS(4610), [sym_if] = ACTIONS(4610), [sym_immutable] = ACTIONS(4610), [sym_import] = ACTIONS(4610), [sym_in] = ACTIONS(4610), [sym_inout] = ACTIONS(4610), [sym_interface] = ACTIONS(4610), [sym_invariant] = ACTIONS(4610), [sym_is] = ACTIONS(4610), [sym_mixin] = ACTIONS(4610), [sym_new] = ACTIONS(4610), [sym_nothrow] = ACTIONS(4610), [sym_out] = ACTIONS(4610), [sym_override] = ACTIONS(4610), [sym_package] = ACTIONS(4610), [sym_pragma] = ACTIONS(4610), [sym_private] = ACTIONS(4610), [sym_protected] = ACTIONS(4610), [sym_public] = ACTIONS(4610), [sym_pure] = ACTIONS(4610), [sym_ref] = ACTIONS(4610), [sym_return] = ACTIONS(4610), [sym_scope] = ACTIONS(4610), [sym_shared] = ACTIONS(4610), [sym_static] = ACTIONS(4610), [sym_struct] = ACTIONS(4610), [sym_switch] = ACTIONS(4610), [sym_synchronized] = ACTIONS(4610), [sym_template] = ACTIONS(4610), [sym_throw] = ACTIONS(4610), [sym_try] = ACTIONS(4610), [sym_typeid] = ACTIONS(4610), [sym_typeof] = ACTIONS(4610), [sym_union] = ACTIONS(4610), [sym_unittest] = ACTIONS(4610), [sym_version] = ACTIONS(4610), [sym_while] = ACTIONS(4610), [sym_with] = ACTIONS(4610), [sym_gshared] = ACTIONS(4610), [sym_traits] = ACTIONS(4610), [sym_vector] = ACTIONS(4610), [sym_void] = ACTIONS(4610), [anon_sym_BQUOTE] = ACTIONS(4612), [anon_sym_r_DQUOTE] = ACTIONS(4612), [anon_sym_x_DQUOTE] = ACTIONS(4612), [anon_sym_DQUOTE] = ACTIONS(4612), [anon_sym_i_BQUOTE] = ACTIONS(4612), [anon_sym_i_DQUOTE] = ACTIONS(4612), [anon_sym_iq_LBRACE] = ACTIONS(4612), [aux_sym_char_literal_token1] = ACTIONS(4612), [anon_sym_SQUOTE] = ACTIONS(4610), [anon_sym___DATE__] = ACTIONS(4610), [anon_sym___FILE__] = ACTIONS(4610), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4610), [anon_sym___FUNCTION__] = ACTIONS(4610), [anon_sym___LINE__] = ACTIONS(4610), [anon_sym___MODULE__] = ACTIONS(4610), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4610), [anon_sym___TIME__] = ACTIONS(4610), [anon_sym___TIMESTAMP__] = ACTIONS(4610), [anon_sym___VENDOR__] = ACTIONS(4610), [anon_sym___VERSION__] = ACTIONS(4610), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4612), [sym_float_literal] = ACTIONS(4612), [sym__string] = ACTIONS(4612), }, [1433] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(4614), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_finally] = ACTIONS(2798), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [1434] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4618), [anon_sym_RBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(4618), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_AMP] = ACTIONS(4618), [anon_sym_DASH] = ACTIONS(4616), [anon_sym_DASH_DASH] = ACTIONS(4618), [anon_sym_PLUS] = ACTIONS(4616), [anon_sym_PLUS_PLUS] = ACTIONS(4618), [anon_sym_BANG] = ACTIONS(4618), [anon_sym_LPAREN] = ACTIONS(4618), [anon_sym_RPAREN] = ACTIONS(4618), [anon_sym_LBRACK] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4618), [anon_sym_DOLLAR] = ACTIONS(4618), [anon_sym_STAR] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_true] = ACTIONS(4616), [sym_false] = ACTIONS(4616), [sym_null] = ACTIONS(4616), [sym_super] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_asm] = ACTIONS(4616), [sym_assert] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_break] = ACTIONS(4616), [sym_case] = ACTIONS(4616), [sym_cast] = ACTIONS(4616), [sym_catch] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_continue] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_default] = ACTIONS(4616), [sym_delegate] = ACTIONS(4616), [sym_delete] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(4616), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_finally] = ACTIONS(4616), [sym_for] = ACTIONS(4616), [sym_foreach] = ACTIONS(4616), [sym_foreach_reverse] = ACTIONS(4616), [sym_function] = ACTIONS(4616), [sym_goto] = ACTIONS(4616), [sym_if] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(4616), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_is] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_new] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(4616), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_switch] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_throw] = ACTIONS(4616), [sym_try] = ACTIONS(4616), [sym_typeid] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_with] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [anon_sym_BQUOTE] = ACTIONS(4618), [anon_sym_r_DQUOTE] = ACTIONS(4618), [anon_sym_x_DQUOTE] = ACTIONS(4618), [anon_sym_DQUOTE] = ACTIONS(4618), [anon_sym_i_BQUOTE] = ACTIONS(4618), [anon_sym_i_DQUOTE] = ACTIONS(4618), [anon_sym_iq_LBRACE] = ACTIONS(4618), [aux_sym_char_literal_token1] = ACTIONS(4618), [anon_sym_SQUOTE] = ACTIONS(4616), [anon_sym___DATE__] = ACTIONS(4616), [anon_sym___FILE__] = ACTIONS(4616), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4616), [anon_sym___FUNCTION__] = ACTIONS(4616), [anon_sym___LINE__] = ACTIONS(4616), [anon_sym___MODULE__] = ACTIONS(4616), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4616), [anon_sym___TIME__] = ACTIONS(4616), [anon_sym___TIMESTAMP__] = ACTIONS(4616), [anon_sym___VENDOR__] = ACTIONS(4616), [anon_sym___VERSION__] = ACTIONS(4616), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4618), [sym_float_literal] = ACTIONS(4618), [sym__string] = ACTIONS(4618), }, [1435] = { [sym_identifier] = ACTIONS(4620), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4622), [anon_sym_RBRACE] = ACTIONS(4622), [anon_sym_LBRACE] = ACTIONS(4622), [anon_sym_DOT] = ACTIONS(4622), [anon_sym_AMP] = ACTIONS(4622), [anon_sym_DASH] = ACTIONS(4620), [anon_sym_DASH_DASH] = ACTIONS(4622), [anon_sym_PLUS] = ACTIONS(4620), [anon_sym_PLUS_PLUS] = ACTIONS(4622), [anon_sym_BANG] = ACTIONS(4622), [anon_sym_LPAREN] = ACTIONS(4622), [anon_sym_RPAREN] = ACTIONS(4622), [anon_sym_LBRACK] = ACTIONS(4622), [anon_sym_SEMI] = ACTIONS(4622), [anon_sym_DOLLAR] = ACTIONS(4622), [anon_sym_STAR] = ACTIONS(4622), [anon_sym_TILDE] = ACTIONS(4622), [anon_sym_AT] = ACTIONS(4622), [sym_bool] = ACTIONS(4620), [sym_byte] = ACTIONS(4620), [sym_ubyte] = ACTIONS(4620), [sym_char] = ACTIONS(4620), [sym_short] = ACTIONS(4620), [sym_ushort] = ACTIONS(4620), [sym_int] = ACTIONS(4620), [sym_uint] = ACTIONS(4620), [sym_long] = ACTIONS(4620), [sym_ulong] = ACTIONS(4620), [sym_cent] = ACTIONS(4620), [sym_ucent] = ACTIONS(4620), [sym_wchar] = ACTIONS(4620), [sym_dchar] = ACTIONS(4620), [sym_float] = ACTIONS(4620), [sym_double] = ACTIONS(4620), [sym_real] = ACTIONS(4620), [sym_ifloat] = ACTIONS(4620), [sym_idouble] = ACTIONS(4620), [sym_ireal] = ACTIONS(4620), [sym_cfloat] = ACTIONS(4620), [sym_cdouble] = ACTIONS(4620), [sym_creal] = ACTIONS(4620), [sym_size_t] = ACTIONS(4620), [sym_ptrdiff_t] = ACTIONS(4620), [sym_string] = ACTIONS(4620), [sym_cstring] = ACTIONS(4620), [sym_dstring] = ACTIONS(4620), [sym_wstring] = ACTIONS(4620), [sym_noreturn] = ACTIONS(4620), [sym_true] = ACTIONS(4620), [sym_false] = ACTIONS(4620), [sym_null] = ACTIONS(4620), [sym_super] = ACTIONS(4620), [sym_this] = ACTIONS(4620), [sym_abstract] = ACTIONS(4620), [sym_alias] = ACTIONS(4620), [sym_align] = ACTIONS(4620), [sym_asm] = ACTIONS(4620), [sym_assert] = ACTIONS(4620), [sym_auto] = ACTIONS(4620), [sym_break] = ACTIONS(4620), [sym_case] = ACTIONS(4620), [sym_cast] = ACTIONS(4620), [sym_catch] = ACTIONS(4620), [sym_class] = ACTIONS(4620), [sym_const] = ACTIONS(4620), [sym_continue] = ACTIONS(4620), [sym_debug] = ACTIONS(4620), [sym_default] = ACTIONS(4620), [sym_delegate] = ACTIONS(4620), [sym_delete] = ACTIONS(4620), [sym_deprecated] = ACTIONS(4620), [sym_do] = ACTIONS(4620), [sym_else] = ACTIONS(4620), [sym_enum] = ACTIONS(4620), [sym_export] = ACTIONS(4620), [sym_extern] = ACTIONS(4620), [sym_final] = ACTIONS(4620), [sym_finally] = ACTIONS(4620), [sym_for] = ACTIONS(4620), [sym_foreach] = ACTIONS(4620), [sym_foreach_reverse] = ACTIONS(4620), [sym_function] = ACTIONS(4620), [sym_goto] = ACTIONS(4620), [sym_if] = ACTIONS(4620), [sym_immutable] = ACTIONS(4620), [sym_import] = ACTIONS(4620), [sym_in] = ACTIONS(4620), [sym_inout] = ACTIONS(4620), [sym_interface] = ACTIONS(4620), [sym_invariant] = ACTIONS(4620), [sym_is] = ACTIONS(4620), [sym_mixin] = ACTIONS(4620), [sym_new] = ACTIONS(4620), [sym_nothrow] = ACTIONS(4620), [sym_out] = ACTIONS(4620), [sym_override] = ACTIONS(4620), [sym_package] = ACTIONS(4620), [sym_pragma] = ACTIONS(4620), [sym_private] = ACTIONS(4620), [sym_protected] = ACTIONS(4620), [sym_public] = ACTIONS(4620), [sym_pure] = ACTIONS(4620), [sym_ref] = ACTIONS(4620), [sym_return] = ACTIONS(4620), [sym_scope] = ACTIONS(4620), [sym_shared] = ACTIONS(4620), [sym_static] = ACTIONS(4620), [sym_struct] = ACTIONS(4620), [sym_switch] = ACTIONS(4620), [sym_synchronized] = ACTIONS(4620), [sym_template] = ACTIONS(4620), [sym_throw] = ACTIONS(4620), [sym_try] = ACTIONS(4620), [sym_typeid] = ACTIONS(4620), [sym_typeof] = ACTIONS(4620), [sym_union] = ACTIONS(4620), [sym_unittest] = ACTIONS(4620), [sym_version] = ACTIONS(4620), [sym_while] = ACTIONS(4620), [sym_with] = ACTIONS(4620), [sym_gshared] = ACTIONS(4620), [sym_traits] = ACTIONS(4620), [sym_vector] = ACTIONS(4620), [sym_void] = ACTIONS(4620), [anon_sym_BQUOTE] = ACTIONS(4622), [anon_sym_r_DQUOTE] = ACTIONS(4622), [anon_sym_x_DQUOTE] = ACTIONS(4622), [anon_sym_DQUOTE] = ACTIONS(4622), [anon_sym_i_BQUOTE] = ACTIONS(4622), [anon_sym_i_DQUOTE] = ACTIONS(4622), [anon_sym_iq_LBRACE] = ACTIONS(4622), [aux_sym_char_literal_token1] = ACTIONS(4622), [anon_sym_SQUOTE] = ACTIONS(4620), [anon_sym___DATE__] = ACTIONS(4620), [anon_sym___FILE__] = ACTIONS(4620), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4620), [anon_sym___FUNCTION__] = ACTIONS(4620), [anon_sym___LINE__] = ACTIONS(4620), [anon_sym___MODULE__] = ACTIONS(4620), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4620), [anon_sym___TIME__] = ACTIONS(4620), [anon_sym___TIMESTAMP__] = ACTIONS(4620), [anon_sym___VENDOR__] = ACTIONS(4620), [anon_sym___VERSION__] = ACTIONS(4620), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4622), [sym_float_literal] = ACTIONS(4622), [sym__string] = ACTIONS(4622), }, [1436] = { [sym_identifier] = ACTIONS(4624), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4626), [anon_sym_RBRACE] = ACTIONS(4626), [anon_sym_LBRACE] = ACTIONS(4626), [anon_sym_DOT] = ACTIONS(4626), [anon_sym_AMP] = ACTIONS(4626), [anon_sym_DASH] = ACTIONS(4624), [anon_sym_DASH_DASH] = ACTIONS(4626), [anon_sym_PLUS] = ACTIONS(4624), [anon_sym_PLUS_PLUS] = ACTIONS(4626), [anon_sym_BANG] = ACTIONS(4626), [anon_sym_LPAREN] = ACTIONS(4626), [anon_sym_RPAREN] = ACTIONS(4626), [anon_sym_LBRACK] = ACTIONS(4626), [anon_sym_SEMI] = ACTIONS(4626), [anon_sym_DOLLAR] = ACTIONS(4626), [anon_sym_STAR] = ACTIONS(4626), [anon_sym_TILDE] = ACTIONS(4626), [anon_sym_AT] = ACTIONS(4626), [sym_bool] = ACTIONS(4624), [sym_byte] = ACTIONS(4624), [sym_ubyte] = ACTIONS(4624), [sym_char] = ACTIONS(4624), [sym_short] = ACTIONS(4624), [sym_ushort] = ACTIONS(4624), [sym_int] = ACTIONS(4624), [sym_uint] = ACTIONS(4624), [sym_long] = ACTIONS(4624), [sym_ulong] = ACTIONS(4624), [sym_cent] = ACTIONS(4624), [sym_ucent] = ACTIONS(4624), [sym_wchar] = ACTIONS(4624), [sym_dchar] = ACTIONS(4624), [sym_float] = ACTIONS(4624), [sym_double] = ACTIONS(4624), [sym_real] = ACTIONS(4624), [sym_ifloat] = ACTIONS(4624), [sym_idouble] = ACTIONS(4624), [sym_ireal] = ACTIONS(4624), [sym_cfloat] = ACTIONS(4624), [sym_cdouble] = ACTIONS(4624), [sym_creal] = ACTIONS(4624), [sym_size_t] = ACTIONS(4624), [sym_ptrdiff_t] = ACTIONS(4624), [sym_string] = ACTIONS(4624), [sym_cstring] = ACTIONS(4624), [sym_dstring] = ACTIONS(4624), [sym_wstring] = ACTIONS(4624), [sym_noreturn] = ACTIONS(4624), [sym_true] = ACTIONS(4624), [sym_false] = ACTIONS(4624), [sym_null] = ACTIONS(4624), [sym_super] = ACTIONS(4624), [sym_this] = ACTIONS(4624), [sym_abstract] = ACTIONS(4624), [sym_alias] = ACTIONS(4624), [sym_align] = ACTIONS(4624), [sym_asm] = ACTIONS(4624), [sym_assert] = ACTIONS(4624), [sym_auto] = ACTIONS(4624), [sym_break] = ACTIONS(4624), [sym_case] = ACTIONS(4624), [sym_cast] = ACTIONS(4624), [sym_catch] = ACTIONS(4624), [sym_class] = ACTIONS(4624), [sym_const] = ACTIONS(4624), [sym_continue] = ACTIONS(4624), [sym_debug] = ACTIONS(4624), [sym_default] = ACTIONS(4624), [sym_delegate] = ACTIONS(4624), [sym_delete] = ACTIONS(4624), [sym_deprecated] = ACTIONS(4624), [sym_do] = ACTIONS(4624), [sym_else] = ACTIONS(4624), [sym_enum] = ACTIONS(4624), [sym_export] = ACTIONS(4624), [sym_extern] = ACTIONS(4624), [sym_final] = ACTIONS(4624), [sym_finally] = ACTIONS(4624), [sym_for] = ACTIONS(4624), [sym_foreach] = ACTIONS(4624), [sym_foreach_reverse] = ACTIONS(4624), [sym_function] = ACTIONS(4624), [sym_goto] = ACTIONS(4624), [sym_if] = ACTIONS(4624), [sym_immutable] = ACTIONS(4624), [sym_import] = ACTIONS(4624), [sym_in] = ACTIONS(4624), [sym_inout] = ACTIONS(4624), [sym_interface] = ACTIONS(4624), [sym_invariant] = ACTIONS(4624), [sym_is] = ACTIONS(4624), [sym_mixin] = ACTIONS(4624), [sym_new] = ACTIONS(4624), [sym_nothrow] = ACTIONS(4624), [sym_out] = ACTIONS(4624), [sym_override] = ACTIONS(4624), [sym_package] = ACTIONS(4624), [sym_pragma] = ACTIONS(4624), [sym_private] = ACTIONS(4624), [sym_protected] = ACTIONS(4624), [sym_public] = ACTIONS(4624), [sym_pure] = ACTIONS(4624), [sym_ref] = ACTIONS(4624), [sym_return] = ACTIONS(4624), [sym_scope] = ACTIONS(4624), [sym_shared] = ACTIONS(4624), [sym_static] = ACTIONS(4624), [sym_struct] = ACTIONS(4624), [sym_switch] = ACTIONS(4624), [sym_synchronized] = ACTIONS(4624), [sym_template] = ACTIONS(4624), [sym_throw] = ACTIONS(4624), [sym_try] = ACTIONS(4624), [sym_typeid] = ACTIONS(4624), [sym_typeof] = ACTIONS(4624), [sym_union] = ACTIONS(4624), [sym_unittest] = ACTIONS(4624), [sym_version] = ACTIONS(4624), [sym_while] = ACTIONS(4624), [sym_with] = ACTIONS(4624), [sym_gshared] = ACTIONS(4624), [sym_traits] = ACTIONS(4624), [sym_vector] = ACTIONS(4624), [sym_void] = ACTIONS(4624), [anon_sym_BQUOTE] = ACTIONS(4626), [anon_sym_r_DQUOTE] = ACTIONS(4626), [anon_sym_x_DQUOTE] = ACTIONS(4626), [anon_sym_DQUOTE] = ACTIONS(4626), [anon_sym_i_BQUOTE] = ACTIONS(4626), [anon_sym_i_DQUOTE] = ACTIONS(4626), [anon_sym_iq_LBRACE] = ACTIONS(4626), [aux_sym_char_literal_token1] = ACTIONS(4626), [anon_sym_SQUOTE] = ACTIONS(4624), [anon_sym___DATE__] = ACTIONS(4624), [anon_sym___FILE__] = ACTIONS(4624), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4624), [anon_sym___FUNCTION__] = ACTIONS(4624), [anon_sym___LINE__] = ACTIONS(4624), [anon_sym___MODULE__] = ACTIONS(4624), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4624), [anon_sym___TIME__] = ACTIONS(4624), [anon_sym___TIMESTAMP__] = ACTIONS(4624), [anon_sym___VENDOR__] = ACTIONS(4624), [anon_sym___VERSION__] = ACTIONS(4624), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4626), [sym_float_literal] = ACTIONS(4626), [sym__string] = ACTIONS(4626), }, [1437] = { [sym_identifier] = ACTIONS(4628), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4630), [anon_sym_RBRACE] = ACTIONS(4630), [anon_sym_LBRACE] = ACTIONS(4630), [anon_sym_DOT] = ACTIONS(4630), [anon_sym_AMP] = ACTIONS(4630), [anon_sym_DASH] = ACTIONS(4628), [anon_sym_DASH_DASH] = ACTIONS(4630), [anon_sym_PLUS] = ACTIONS(4628), [anon_sym_PLUS_PLUS] = ACTIONS(4630), [anon_sym_BANG] = ACTIONS(4630), [anon_sym_LPAREN] = ACTIONS(4630), [anon_sym_RPAREN] = ACTIONS(4630), [anon_sym_LBRACK] = ACTIONS(4630), [anon_sym_SEMI] = ACTIONS(4630), [anon_sym_DOLLAR] = ACTIONS(4630), [anon_sym_STAR] = ACTIONS(4630), [anon_sym_TILDE] = ACTIONS(4630), [anon_sym_AT] = ACTIONS(4630), [sym_bool] = ACTIONS(4628), [sym_byte] = ACTIONS(4628), [sym_ubyte] = ACTIONS(4628), [sym_char] = ACTIONS(4628), [sym_short] = ACTIONS(4628), [sym_ushort] = ACTIONS(4628), [sym_int] = ACTIONS(4628), [sym_uint] = ACTIONS(4628), [sym_long] = ACTIONS(4628), [sym_ulong] = ACTIONS(4628), [sym_cent] = ACTIONS(4628), [sym_ucent] = ACTIONS(4628), [sym_wchar] = ACTIONS(4628), [sym_dchar] = ACTIONS(4628), [sym_float] = ACTIONS(4628), [sym_double] = ACTIONS(4628), [sym_real] = ACTIONS(4628), [sym_ifloat] = ACTIONS(4628), [sym_idouble] = ACTIONS(4628), [sym_ireal] = ACTIONS(4628), [sym_cfloat] = ACTIONS(4628), [sym_cdouble] = ACTIONS(4628), [sym_creal] = ACTIONS(4628), [sym_size_t] = ACTIONS(4628), [sym_ptrdiff_t] = ACTIONS(4628), [sym_string] = ACTIONS(4628), [sym_cstring] = ACTIONS(4628), [sym_dstring] = ACTIONS(4628), [sym_wstring] = ACTIONS(4628), [sym_noreturn] = ACTIONS(4628), [sym_true] = ACTIONS(4628), [sym_false] = ACTIONS(4628), [sym_null] = ACTIONS(4628), [sym_super] = ACTIONS(4628), [sym_this] = ACTIONS(4628), [sym_abstract] = ACTIONS(4628), [sym_alias] = ACTIONS(4628), [sym_align] = ACTIONS(4628), [sym_asm] = ACTIONS(4628), [sym_assert] = ACTIONS(4628), [sym_auto] = ACTIONS(4628), [sym_break] = ACTIONS(4628), [sym_case] = ACTIONS(4628), [sym_cast] = ACTIONS(4628), [sym_catch] = ACTIONS(4628), [sym_class] = ACTIONS(4628), [sym_const] = ACTIONS(4628), [sym_continue] = ACTIONS(4628), [sym_debug] = ACTIONS(4628), [sym_default] = ACTIONS(4628), [sym_delegate] = ACTIONS(4628), [sym_delete] = ACTIONS(4628), [sym_deprecated] = ACTIONS(4628), [sym_do] = ACTIONS(4628), [sym_else] = ACTIONS(4628), [sym_enum] = ACTIONS(4628), [sym_export] = ACTIONS(4628), [sym_extern] = ACTIONS(4628), [sym_final] = ACTIONS(4628), [sym_finally] = ACTIONS(4628), [sym_for] = ACTIONS(4628), [sym_foreach] = ACTIONS(4628), [sym_foreach_reverse] = ACTIONS(4628), [sym_function] = ACTIONS(4628), [sym_goto] = ACTIONS(4628), [sym_if] = ACTIONS(4628), [sym_immutable] = ACTIONS(4628), [sym_import] = ACTIONS(4628), [sym_in] = ACTIONS(4628), [sym_inout] = ACTIONS(4628), [sym_interface] = ACTIONS(4628), [sym_invariant] = ACTIONS(4628), [sym_is] = ACTIONS(4628), [sym_mixin] = ACTIONS(4628), [sym_new] = ACTIONS(4628), [sym_nothrow] = ACTIONS(4628), [sym_out] = ACTIONS(4628), [sym_override] = ACTIONS(4628), [sym_package] = ACTIONS(4628), [sym_pragma] = ACTIONS(4628), [sym_private] = ACTIONS(4628), [sym_protected] = ACTIONS(4628), [sym_public] = ACTIONS(4628), [sym_pure] = ACTIONS(4628), [sym_ref] = ACTIONS(4628), [sym_return] = ACTIONS(4628), [sym_scope] = ACTIONS(4628), [sym_shared] = ACTIONS(4628), [sym_static] = ACTIONS(4628), [sym_struct] = ACTIONS(4628), [sym_switch] = ACTIONS(4628), [sym_synchronized] = ACTIONS(4628), [sym_template] = ACTIONS(4628), [sym_throw] = ACTIONS(4628), [sym_try] = ACTIONS(4628), [sym_typeid] = ACTIONS(4628), [sym_typeof] = ACTIONS(4628), [sym_union] = ACTIONS(4628), [sym_unittest] = ACTIONS(4628), [sym_version] = ACTIONS(4628), [sym_while] = ACTIONS(4628), [sym_with] = ACTIONS(4628), [sym_gshared] = ACTIONS(4628), [sym_traits] = ACTIONS(4628), [sym_vector] = ACTIONS(4628), [sym_void] = ACTIONS(4628), [anon_sym_BQUOTE] = ACTIONS(4630), [anon_sym_r_DQUOTE] = ACTIONS(4630), [anon_sym_x_DQUOTE] = ACTIONS(4630), [anon_sym_DQUOTE] = ACTIONS(4630), [anon_sym_i_BQUOTE] = ACTIONS(4630), [anon_sym_i_DQUOTE] = ACTIONS(4630), [anon_sym_iq_LBRACE] = ACTIONS(4630), [aux_sym_char_literal_token1] = ACTIONS(4630), [anon_sym_SQUOTE] = ACTIONS(4628), [anon_sym___DATE__] = ACTIONS(4628), [anon_sym___FILE__] = ACTIONS(4628), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4628), [anon_sym___FUNCTION__] = ACTIONS(4628), [anon_sym___LINE__] = ACTIONS(4628), [anon_sym___MODULE__] = ACTIONS(4628), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4628), [anon_sym___TIME__] = ACTIONS(4628), [anon_sym___TIMESTAMP__] = ACTIONS(4628), [anon_sym___VENDOR__] = ACTIONS(4628), [anon_sym___VERSION__] = ACTIONS(4628), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4630), [sym_float_literal] = ACTIONS(4630), [sym__string] = ACTIONS(4630), }, [1438] = { [sym_identifier] = ACTIONS(4632), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4634), [anon_sym_RBRACE] = ACTIONS(4634), [anon_sym_LBRACE] = ACTIONS(4634), [anon_sym_DOT] = ACTIONS(4634), [anon_sym_AMP] = ACTIONS(4634), [anon_sym_DASH] = ACTIONS(4632), [anon_sym_DASH_DASH] = ACTIONS(4634), [anon_sym_PLUS] = ACTIONS(4632), [anon_sym_PLUS_PLUS] = ACTIONS(4634), [anon_sym_BANG] = ACTIONS(4634), [anon_sym_LPAREN] = ACTIONS(4634), [anon_sym_RPAREN] = ACTIONS(4634), [anon_sym_LBRACK] = ACTIONS(4634), [anon_sym_SEMI] = ACTIONS(4634), [anon_sym_DOLLAR] = ACTIONS(4634), [anon_sym_STAR] = ACTIONS(4634), [anon_sym_TILDE] = ACTIONS(4634), [anon_sym_AT] = ACTIONS(4634), [sym_bool] = ACTIONS(4632), [sym_byte] = ACTIONS(4632), [sym_ubyte] = ACTIONS(4632), [sym_char] = ACTIONS(4632), [sym_short] = ACTIONS(4632), [sym_ushort] = ACTIONS(4632), [sym_int] = ACTIONS(4632), [sym_uint] = ACTIONS(4632), [sym_long] = ACTIONS(4632), [sym_ulong] = ACTIONS(4632), [sym_cent] = ACTIONS(4632), [sym_ucent] = ACTIONS(4632), [sym_wchar] = ACTIONS(4632), [sym_dchar] = ACTIONS(4632), [sym_float] = ACTIONS(4632), [sym_double] = ACTIONS(4632), [sym_real] = ACTIONS(4632), [sym_ifloat] = ACTIONS(4632), [sym_idouble] = ACTIONS(4632), [sym_ireal] = ACTIONS(4632), [sym_cfloat] = ACTIONS(4632), [sym_cdouble] = ACTIONS(4632), [sym_creal] = ACTIONS(4632), [sym_size_t] = ACTIONS(4632), [sym_ptrdiff_t] = ACTIONS(4632), [sym_string] = ACTIONS(4632), [sym_cstring] = ACTIONS(4632), [sym_dstring] = ACTIONS(4632), [sym_wstring] = ACTIONS(4632), [sym_noreturn] = ACTIONS(4632), [sym_true] = ACTIONS(4632), [sym_false] = ACTIONS(4632), [sym_null] = ACTIONS(4632), [sym_super] = ACTIONS(4632), [sym_this] = ACTIONS(4632), [sym_abstract] = ACTIONS(4632), [sym_alias] = ACTIONS(4632), [sym_align] = ACTIONS(4632), [sym_asm] = ACTIONS(4632), [sym_assert] = ACTIONS(4632), [sym_auto] = ACTIONS(4632), [sym_break] = ACTIONS(4632), [sym_case] = ACTIONS(4632), [sym_cast] = ACTIONS(4632), [sym_catch] = ACTIONS(4632), [sym_class] = ACTIONS(4632), [sym_const] = ACTIONS(4632), [sym_continue] = ACTIONS(4632), [sym_debug] = ACTIONS(4632), [sym_default] = ACTIONS(4632), [sym_delegate] = ACTIONS(4632), [sym_delete] = ACTIONS(4632), [sym_deprecated] = ACTIONS(4632), [sym_do] = ACTIONS(4632), [sym_else] = ACTIONS(4632), [sym_enum] = ACTIONS(4632), [sym_export] = ACTIONS(4632), [sym_extern] = ACTIONS(4632), [sym_final] = ACTIONS(4632), [sym_finally] = ACTIONS(4632), [sym_for] = ACTIONS(4632), [sym_foreach] = ACTIONS(4632), [sym_foreach_reverse] = ACTIONS(4632), [sym_function] = ACTIONS(4632), [sym_goto] = ACTIONS(4632), [sym_if] = ACTIONS(4632), [sym_immutable] = ACTIONS(4632), [sym_import] = ACTIONS(4632), [sym_in] = ACTIONS(4632), [sym_inout] = ACTIONS(4632), [sym_interface] = ACTIONS(4632), [sym_invariant] = ACTIONS(4632), [sym_is] = ACTIONS(4632), [sym_mixin] = ACTIONS(4632), [sym_new] = ACTIONS(4632), [sym_nothrow] = ACTIONS(4632), [sym_out] = ACTIONS(4632), [sym_override] = ACTIONS(4632), [sym_package] = ACTIONS(4632), [sym_pragma] = ACTIONS(4632), [sym_private] = ACTIONS(4632), [sym_protected] = ACTIONS(4632), [sym_public] = ACTIONS(4632), [sym_pure] = ACTIONS(4632), [sym_ref] = ACTIONS(4632), [sym_return] = ACTIONS(4632), [sym_scope] = ACTIONS(4632), [sym_shared] = ACTIONS(4632), [sym_static] = ACTIONS(4632), [sym_struct] = ACTIONS(4632), [sym_switch] = ACTIONS(4632), [sym_synchronized] = ACTIONS(4632), [sym_template] = ACTIONS(4632), [sym_throw] = ACTIONS(4632), [sym_try] = ACTIONS(4632), [sym_typeid] = ACTIONS(4632), [sym_typeof] = ACTIONS(4632), [sym_union] = ACTIONS(4632), [sym_unittest] = ACTIONS(4632), [sym_version] = ACTIONS(4632), [sym_while] = ACTIONS(4632), [sym_with] = ACTIONS(4632), [sym_gshared] = ACTIONS(4632), [sym_traits] = ACTIONS(4632), [sym_vector] = ACTIONS(4632), [sym_void] = ACTIONS(4632), [anon_sym_BQUOTE] = ACTIONS(4634), [anon_sym_r_DQUOTE] = ACTIONS(4634), [anon_sym_x_DQUOTE] = ACTIONS(4634), [anon_sym_DQUOTE] = ACTIONS(4634), [anon_sym_i_BQUOTE] = ACTIONS(4634), [anon_sym_i_DQUOTE] = ACTIONS(4634), [anon_sym_iq_LBRACE] = ACTIONS(4634), [aux_sym_char_literal_token1] = ACTIONS(4634), [anon_sym_SQUOTE] = ACTIONS(4632), [anon_sym___DATE__] = ACTIONS(4632), [anon_sym___FILE__] = ACTIONS(4632), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4632), [anon_sym___FUNCTION__] = ACTIONS(4632), [anon_sym___LINE__] = ACTIONS(4632), [anon_sym___MODULE__] = ACTIONS(4632), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4632), [anon_sym___TIME__] = ACTIONS(4632), [anon_sym___TIMESTAMP__] = ACTIONS(4632), [anon_sym___VENDOR__] = ACTIONS(4632), [anon_sym___VERSION__] = ACTIONS(4632), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4634), [sym_float_literal] = ACTIONS(4634), [sym__string] = ACTIONS(4634), }, [1439] = { [sym_identifier] = ACTIONS(4636), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4638), [anon_sym_RBRACE] = ACTIONS(4638), [anon_sym_LBRACE] = ACTIONS(4638), [anon_sym_DOT] = ACTIONS(4638), [anon_sym_AMP] = ACTIONS(4638), [anon_sym_DASH] = ACTIONS(4636), [anon_sym_DASH_DASH] = ACTIONS(4638), [anon_sym_PLUS] = ACTIONS(4636), [anon_sym_PLUS_PLUS] = ACTIONS(4638), [anon_sym_BANG] = ACTIONS(4638), [anon_sym_LPAREN] = ACTIONS(4638), [anon_sym_RPAREN] = ACTIONS(4638), [anon_sym_LBRACK] = ACTIONS(4638), [anon_sym_SEMI] = ACTIONS(4638), [anon_sym_DOLLAR] = ACTIONS(4638), [anon_sym_STAR] = ACTIONS(4638), [anon_sym_TILDE] = ACTIONS(4638), [anon_sym_AT] = ACTIONS(4638), [sym_bool] = ACTIONS(4636), [sym_byte] = ACTIONS(4636), [sym_ubyte] = ACTIONS(4636), [sym_char] = ACTIONS(4636), [sym_short] = ACTIONS(4636), [sym_ushort] = ACTIONS(4636), [sym_int] = ACTIONS(4636), [sym_uint] = ACTIONS(4636), [sym_long] = ACTIONS(4636), [sym_ulong] = ACTIONS(4636), [sym_cent] = ACTIONS(4636), [sym_ucent] = ACTIONS(4636), [sym_wchar] = ACTIONS(4636), [sym_dchar] = ACTIONS(4636), [sym_float] = ACTIONS(4636), [sym_double] = ACTIONS(4636), [sym_real] = ACTIONS(4636), [sym_ifloat] = ACTIONS(4636), [sym_idouble] = ACTIONS(4636), [sym_ireal] = ACTIONS(4636), [sym_cfloat] = ACTIONS(4636), [sym_cdouble] = ACTIONS(4636), [sym_creal] = ACTIONS(4636), [sym_size_t] = ACTIONS(4636), [sym_ptrdiff_t] = ACTIONS(4636), [sym_string] = ACTIONS(4636), [sym_cstring] = ACTIONS(4636), [sym_dstring] = ACTIONS(4636), [sym_wstring] = ACTIONS(4636), [sym_noreturn] = ACTIONS(4636), [sym_true] = ACTIONS(4636), [sym_false] = ACTIONS(4636), [sym_null] = ACTIONS(4636), [sym_super] = ACTIONS(4636), [sym_this] = ACTIONS(4636), [sym_abstract] = ACTIONS(4636), [sym_alias] = ACTIONS(4636), [sym_align] = ACTIONS(4636), [sym_asm] = ACTIONS(4636), [sym_assert] = ACTIONS(4636), [sym_auto] = ACTIONS(4636), [sym_break] = ACTIONS(4636), [sym_case] = ACTIONS(4636), [sym_cast] = ACTIONS(4636), [sym_catch] = ACTIONS(4636), [sym_class] = ACTIONS(4636), [sym_const] = ACTIONS(4636), [sym_continue] = ACTIONS(4636), [sym_debug] = ACTIONS(4636), [sym_default] = ACTIONS(4636), [sym_delegate] = ACTIONS(4636), [sym_delete] = ACTIONS(4636), [sym_deprecated] = ACTIONS(4636), [sym_do] = ACTIONS(4636), [sym_else] = ACTIONS(4636), [sym_enum] = ACTIONS(4636), [sym_export] = ACTIONS(4636), [sym_extern] = ACTIONS(4636), [sym_final] = ACTIONS(4636), [sym_finally] = ACTIONS(4636), [sym_for] = ACTIONS(4636), [sym_foreach] = ACTIONS(4636), [sym_foreach_reverse] = ACTIONS(4636), [sym_function] = ACTIONS(4636), [sym_goto] = ACTIONS(4636), [sym_if] = ACTIONS(4636), [sym_immutable] = ACTIONS(4636), [sym_import] = ACTIONS(4636), [sym_in] = ACTIONS(4636), [sym_inout] = ACTIONS(4636), [sym_interface] = ACTIONS(4636), [sym_invariant] = ACTIONS(4636), [sym_is] = ACTIONS(4636), [sym_mixin] = ACTIONS(4636), [sym_new] = ACTIONS(4636), [sym_nothrow] = ACTIONS(4636), [sym_out] = ACTIONS(4636), [sym_override] = ACTIONS(4636), [sym_package] = ACTIONS(4636), [sym_pragma] = ACTIONS(4636), [sym_private] = ACTIONS(4636), [sym_protected] = ACTIONS(4636), [sym_public] = ACTIONS(4636), [sym_pure] = ACTIONS(4636), [sym_ref] = ACTIONS(4636), [sym_return] = ACTIONS(4636), [sym_scope] = ACTIONS(4636), [sym_shared] = ACTIONS(4636), [sym_static] = ACTIONS(4636), [sym_struct] = ACTIONS(4636), [sym_switch] = ACTIONS(4636), [sym_synchronized] = ACTIONS(4636), [sym_template] = ACTIONS(4636), [sym_throw] = ACTIONS(4636), [sym_try] = ACTIONS(4636), [sym_typeid] = ACTIONS(4636), [sym_typeof] = ACTIONS(4636), [sym_union] = ACTIONS(4636), [sym_unittest] = ACTIONS(4636), [sym_version] = ACTIONS(4636), [sym_while] = ACTIONS(4636), [sym_with] = ACTIONS(4636), [sym_gshared] = ACTIONS(4636), [sym_traits] = ACTIONS(4636), [sym_vector] = ACTIONS(4636), [sym_void] = ACTIONS(4636), [anon_sym_BQUOTE] = ACTIONS(4638), [anon_sym_r_DQUOTE] = ACTIONS(4638), [anon_sym_x_DQUOTE] = ACTIONS(4638), [anon_sym_DQUOTE] = ACTIONS(4638), [anon_sym_i_BQUOTE] = ACTIONS(4638), [anon_sym_i_DQUOTE] = ACTIONS(4638), [anon_sym_iq_LBRACE] = ACTIONS(4638), [aux_sym_char_literal_token1] = ACTIONS(4638), [anon_sym_SQUOTE] = ACTIONS(4636), [anon_sym___DATE__] = ACTIONS(4636), [anon_sym___FILE__] = ACTIONS(4636), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4636), [anon_sym___FUNCTION__] = ACTIONS(4636), [anon_sym___LINE__] = ACTIONS(4636), [anon_sym___MODULE__] = ACTIONS(4636), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4636), [anon_sym___TIME__] = ACTIONS(4636), [anon_sym___TIMESTAMP__] = ACTIONS(4636), [anon_sym___VENDOR__] = ACTIONS(4636), [anon_sym___VERSION__] = ACTIONS(4636), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4638), [sym_float_literal] = ACTIONS(4638), [sym__string] = ACTIONS(4638), }, [1440] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_RBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [anon_sym_AT] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_abstract] = ACTIONS(4640), [sym_alias] = ACTIONS(4640), [sym_align] = ACTIONS(4640), [sym_asm] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_break] = ACTIONS(4640), [sym_case] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_catch] = ACTIONS(4640), [sym_class] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_continue] = ACTIONS(4640), [sym_debug] = ACTIONS(4640), [sym_default] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_deprecated] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(4644), [sym_enum] = ACTIONS(4640), [sym_export] = ACTIONS(4640), [sym_extern] = ACTIONS(4640), [sym_final] = ACTIONS(4640), [sym_finally] = ACTIONS(4640), [sym_for] = ACTIONS(4640), [sym_foreach] = ACTIONS(4640), [sym_foreach_reverse] = ACTIONS(4640), [sym_function] = ACTIONS(4640), [sym_goto] = ACTIONS(4640), [sym_if] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_interface] = ACTIONS(4640), [sym_invariant] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_nothrow] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_override] = ACTIONS(4640), [sym_package] = ACTIONS(4640), [sym_pragma] = ACTIONS(4640), [sym_private] = ACTIONS(4640), [sym_protected] = ACTIONS(4640), [sym_public] = ACTIONS(4640), [sym_pure] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_return] = ACTIONS(4640), [sym_scope] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_static] = ACTIONS(4640), [sym_struct] = ACTIONS(4640), [sym_switch] = ACTIONS(4640), [sym_synchronized] = ACTIONS(4640), [sym_template] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_try] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_union] = ACTIONS(4640), [sym_unittest] = ACTIONS(4640), [sym_version] = ACTIONS(4640), [sym_while] = ACTIONS(4640), [sym_with] = ACTIONS(4640), [sym_gshared] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [1441] = { [sym_identifier] = ACTIONS(4646), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4648), [anon_sym_RBRACE] = ACTIONS(4648), [anon_sym_LBRACE] = ACTIONS(4648), [anon_sym_DOT] = ACTIONS(4648), [anon_sym_AMP] = ACTIONS(4648), [anon_sym_DASH] = ACTIONS(4646), [anon_sym_DASH_DASH] = ACTIONS(4648), [anon_sym_PLUS] = ACTIONS(4646), [anon_sym_PLUS_PLUS] = ACTIONS(4648), [anon_sym_BANG] = ACTIONS(4648), [anon_sym_LPAREN] = ACTIONS(4648), [anon_sym_RPAREN] = ACTIONS(4648), [anon_sym_LBRACK] = ACTIONS(4648), [anon_sym_SEMI] = ACTIONS(4648), [anon_sym_DOLLAR] = ACTIONS(4648), [anon_sym_STAR] = ACTIONS(4648), [anon_sym_TILDE] = ACTIONS(4648), [anon_sym_AT] = ACTIONS(4648), [sym_bool] = ACTIONS(4646), [sym_byte] = ACTIONS(4646), [sym_ubyte] = ACTIONS(4646), [sym_char] = ACTIONS(4646), [sym_short] = ACTIONS(4646), [sym_ushort] = ACTIONS(4646), [sym_int] = ACTIONS(4646), [sym_uint] = ACTIONS(4646), [sym_long] = ACTIONS(4646), [sym_ulong] = ACTIONS(4646), [sym_cent] = ACTIONS(4646), [sym_ucent] = ACTIONS(4646), [sym_wchar] = ACTIONS(4646), [sym_dchar] = ACTIONS(4646), [sym_float] = ACTIONS(4646), [sym_double] = ACTIONS(4646), [sym_real] = ACTIONS(4646), [sym_ifloat] = ACTIONS(4646), [sym_idouble] = ACTIONS(4646), [sym_ireal] = ACTIONS(4646), [sym_cfloat] = ACTIONS(4646), [sym_cdouble] = ACTIONS(4646), [sym_creal] = ACTIONS(4646), [sym_size_t] = ACTIONS(4646), [sym_ptrdiff_t] = ACTIONS(4646), [sym_string] = ACTIONS(4646), [sym_cstring] = ACTIONS(4646), [sym_dstring] = ACTIONS(4646), [sym_wstring] = ACTIONS(4646), [sym_noreturn] = ACTIONS(4646), [sym_true] = ACTIONS(4646), [sym_false] = ACTIONS(4646), [sym_null] = ACTIONS(4646), [sym_super] = ACTIONS(4646), [sym_this] = ACTIONS(4646), [sym_abstract] = ACTIONS(4646), [sym_alias] = ACTIONS(4646), [sym_align] = ACTIONS(4646), [sym_asm] = ACTIONS(4646), [sym_assert] = ACTIONS(4646), [sym_auto] = ACTIONS(4646), [sym_break] = ACTIONS(4646), [sym_case] = ACTIONS(4646), [sym_cast] = ACTIONS(4646), [sym_catch] = ACTIONS(4646), [sym_class] = ACTIONS(4646), [sym_const] = ACTIONS(4646), [sym_continue] = ACTIONS(4646), [sym_debug] = ACTIONS(4646), [sym_default] = ACTIONS(4646), [sym_delegate] = ACTIONS(4646), [sym_delete] = ACTIONS(4646), [sym_deprecated] = ACTIONS(4646), [sym_do] = ACTIONS(4646), [sym_else] = ACTIONS(4646), [sym_enum] = ACTIONS(4646), [sym_export] = ACTIONS(4646), [sym_extern] = ACTIONS(4646), [sym_final] = ACTIONS(4646), [sym_finally] = ACTIONS(4646), [sym_for] = ACTIONS(4646), [sym_foreach] = ACTIONS(4646), [sym_foreach_reverse] = ACTIONS(4646), [sym_function] = ACTIONS(4646), [sym_goto] = ACTIONS(4646), [sym_if] = ACTIONS(4646), [sym_immutable] = ACTIONS(4646), [sym_import] = ACTIONS(4646), [sym_in] = ACTIONS(4646), [sym_inout] = ACTIONS(4646), [sym_interface] = ACTIONS(4646), [sym_invariant] = ACTIONS(4646), [sym_is] = ACTIONS(4646), [sym_mixin] = ACTIONS(4646), [sym_new] = ACTIONS(4646), [sym_nothrow] = ACTIONS(4646), [sym_out] = ACTIONS(4646), [sym_override] = ACTIONS(4646), [sym_package] = ACTIONS(4646), [sym_pragma] = ACTIONS(4646), [sym_private] = ACTIONS(4646), [sym_protected] = ACTIONS(4646), [sym_public] = ACTIONS(4646), [sym_pure] = ACTIONS(4646), [sym_ref] = ACTIONS(4646), [sym_return] = ACTIONS(4646), [sym_scope] = ACTIONS(4646), [sym_shared] = ACTIONS(4646), [sym_static] = ACTIONS(4646), [sym_struct] = ACTIONS(4646), [sym_switch] = ACTIONS(4646), [sym_synchronized] = ACTIONS(4646), [sym_template] = ACTIONS(4646), [sym_throw] = ACTIONS(4646), [sym_try] = ACTIONS(4646), [sym_typeid] = ACTIONS(4646), [sym_typeof] = ACTIONS(4646), [sym_union] = ACTIONS(4646), [sym_unittest] = ACTIONS(4646), [sym_version] = ACTIONS(4646), [sym_while] = ACTIONS(4646), [sym_with] = ACTIONS(4646), [sym_gshared] = ACTIONS(4646), [sym_traits] = ACTIONS(4646), [sym_vector] = ACTIONS(4646), [sym_void] = ACTIONS(4646), [anon_sym_BQUOTE] = ACTIONS(4648), [anon_sym_r_DQUOTE] = ACTIONS(4648), [anon_sym_x_DQUOTE] = ACTIONS(4648), [anon_sym_DQUOTE] = ACTIONS(4648), [anon_sym_i_BQUOTE] = ACTIONS(4648), [anon_sym_i_DQUOTE] = ACTIONS(4648), [anon_sym_iq_LBRACE] = ACTIONS(4648), [aux_sym_char_literal_token1] = ACTIONS(4648), [anon_sym_SQUOTE] = ACTIONS(4646), [anon_sym___DATE__] = ACTIONS(4646), [anon_sym___FILE__] = ACTIONS(4646), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4646), [anon_sym___FUNCTION__] = ACTIONS(4646), [anon_sym___LINE__] = ACTIONS(4646), [anon_sym___MODULE__] = ACTIONS(4646), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4646), [anon_sym___TIME__] = ACTIONS(4646), [anon_sym___TIMESTAMP__] = ACTIONS(4646), [anon_sym___VENDOR__] = ACTIONS(4646), [anon_sym___VERSION__] = ACTIONS(4646), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4648), [sym_float_literal] = ACTIONS(4648), [sym__string] = ACTIONS(4648), }, [1442] = { [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_RBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [anon_sym_AT] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_abstract] = ACTIONS(4149), [sym_alias] = ACTIONS(4149), [sym_align] = ACTIONS(4149), [sym_asm] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_break] = ACTIONS(4149), [sym_case] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(4149), [sym_class] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_continue] = ACTIONS(4149), [sym_debug] = ACTIONS(4149), [sym_default] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_deprecated] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_enum] = ACTIONS(4149), [sym_export] = ACTIONS(4149), [sym_extern] = ACTIONS(4149), [sym_final] = ACTIONS(4149), [sym_finally] = ACTIONS(4149), [sym_for] = ACTIONS(4149), [sym_foreach] = ACTIONS(4149), [sym_foreach_reverse] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_goto] = ACTIONS(4149), [sym_if] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_interface] = ACTIONS(4149), [sym_invariant] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_nothrow] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_override] = ACTIONS(4149), [sym_package] = ACTIONS(4149), [sym_pragma] = ACTIONS(4149), [sym_private] = ACTIONS(4149), [sym_protected] = ACTIONS(4149), [sym_public] = ACTIONS(4149), [sym_pure] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_return] = ACTIONS(4149), [sym_scope] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_static] = ACTIONS(4149), [sym_struct] = ACTIONS(4149), [sym_switch] = ACTIONS(4149), [sym_synchronized] = ACTIONS(4149), [sym_template] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_try] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_union] = ACTIONS(4149), [sym_unittest] = ACTIONS(4149), [sym_version] = ACTIONS(4149), [sym_while] = ACTIONS(4149), [sym_with] = ACTIONS(4149), [sym_gshared] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [1443] = { [sym_identifier] = ACTIONS(4650), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4652), [anon_sym_RBRACE] = ACTIONS(4652), [anon_sym_LBRACE] = ACTIONS(4652), [anon_sym_DOT] = ACTIONS(4652), [anon_sym_AMP] = ACTIONS(4652), [anon_sym_DASH] = ACTIONS(4650), [anon_sym_DASH_DASH] = ACTIONS(4652), [anon_sym_PLUS] = ACTIONS(4650), [anon_sym_PLUS_PLUS] = ACTIONS(4652), [anon_sym_BANG] = ACTIONS(4652), [anon_sym_LPAREN] = ACTIONS(4652), [anon_sym_RPAREN] = ACTIONS(4652), [anon_sym_LBRACK] = ACTIONS(4652), [anon_sym_SEMI] = ACTIONS(4652), [anon_sym_DOLLAR] = ACTIONS(4652), [anon_sym_STAR] = ACTIONS(4652), [anon_sym_TILDE] = ACTIONS(4652), [anon_sym_AT] = ACTIONS(4652), [sym_bool] = ACTIONS(4650), [sym_byte] = ACTIONS(4650), [sym_ubyte] = ACTIONS(4650), [sym_char] = ACTIONS(4650), [sym_short] = ACTIONS(4650), [sym_ushort] = ACTIONS(4650), [sym_int] = ACTIONS(4650), [sym_uint] = ACTIONS(4650), [sym_long] = ACTIONS(4650), [sym_ulong] = ACTIONS(4650), [sym_cent] = ACTIONS(4650), [sym_ucent] = ACTIONS(4650), [sym_wchar] = ACTIONS(4650), [sym_dchar] = ACTIONS(4650), [sym_float] = ACTIONS(4650), [sym_double] = ACTIONS(4650), [sym_real] = ACTIONS(4650), [sym_ifloat] = ACTIONS(4650), [sym_idouble] = ACTIONS(4650), [sym_ireal] = ACTIONS(4650), [sym_cfloat] = ACTIONS(4650), [sym_cdouble] = ACTIONS(4650), [sym_creal] = ACTIONS(4650), [sym_size_t] = ACTIONS(4650), [sym_ptrdiff_t] = ACTIONS(4650), [sym_string] = ACTIONS(4650), [sym_cstring] = ACTIONS(4650), [sym_dstring] = ACTIONS(4650), [sym_wstring] = ACTIONS(4650), [sym_noreturn] = ACTIONS(4650), [sym_true] = ACTIONS(4650), [sym_false] = ACTIONS(4650), [sym_null] = ACTIONS(4650), [sym_super] = ACTIONS(4650), [sym_this] = ACTIONS(4650), [sym_abstract] = ACTIONS(4650), [sym_alias] = ACTIONS(4650), [sym_align] = ACTIONS(4650), [sym_asm] = ACTIONS(4650), [sym_assert] = ACTIONS(4650), [sym_auto] = ACTIONS(4650), [sym_break] = ACTIONS(4650), [sym_case] = ACTIONS(4650), [sym_cast] = ACTIONS(4650), [sym_catch] = ACTIONS(4650), [sym_class] = ACTIONS(4650), [sym_const] = ACTIONS(4650), [sym_continue] = ACTIONS(4650), [sym_debug] = ACTIONS(4650), [sym_default] = ACTIONS(4650), [sym_delegate] = ACTIONS(4650), [sym_delete] = ACTIONS(4650), [sym_deprecated] = ACTIONS(4650), [sym_do] = ACTIONS(4650), [sym_else] = ACTIONS(4650), [sym_enum] = ACTIONS(4650), [sym_export] = ACTIONS(4650), [sym_extern] = ACTIONS(4650), [sym_final] = ACTIONS(4650), [sym_finally] = ACTIONS(4650), [sym_for] = ACTIONS(4650), [sym_foreach] = ACTIONS(4650), [sym_foreach_reverse] = ACTIONS(4650), [sym_function] = ACTIONS(4650), [sym_goto] = ACTIONS(4650), [sym_if] = ACTIONS(4650), [sym_immutable] = ACTIONS(4650), [sym_import] = ACTIONS(4650), [sym_in] = ACTIONS(4650), [sym_inout] = ACTIONS(4650), [sym_interface] = ACTIONS(4650), [sym_invariant] = ACTIONS(4650), [sym_is] = ACTIONS(4650), [sym_mixin] = ACTIONS(4650), [sym_new] = ACTIONS(4650), [sym_nothrow] = ACTIONS(4650), [sym_out] = ACTIONS(4650), [sym_override] = ACTIONS(4650), [sym_package] = ACTIONS(4650), [sym_pragma] = ACTIONS(4650), [sym_private] = ACTIONS(4650), [sym_protected] = ACTIONS(4650), [sym_public] = ACTIONS(4650), [sym_pure] = ACTIONS(4650), [sym_ref] = ACTIONS(4650), [sym_return] = ACTIONS(4650), [sym_scope] = ACTIONS(4650), [sym_shared] = ACTIONS(4650), [sym_static] = ACTIONS(4650), [sym_struct] = ACTIONS(4650), [sym_switch] = ACTIONS(4650), [sym_synchronized] = ACTIONS(4650), [sym_template] = ACTIONS(4650), [sym_throw] = ACTIONS(4650), [sym_try] = ACTIONS(4650), [sym_typeid] = ACTIONS(4650), [sym_typeof] = ACTIONS(4650), [sym_union] = ACTIONS(4650), [sym_unittest] = ACTIONS(4650), [sym_version] = ACTIONS(4650), [sym_while] = ACTIONS(4650), [sym_with] = ACTIONS(4650), [sym_gshared] = ACTIONS(4650), [sym_traits] = ACTIONS(4650), [sym_vector] = ACTIONS(4650), [sym_void] = ACTIONS(4650), [anon_sym_BQUOTE] = ACTIONS(4652), [anon_sym_r_DQUOTE] = ACTIONS(4652), [anon_sym_x_DQUOTE] = ACTIONS(4652), [anon_sym_DQUOTE] = ACTIONS(4652), [anon_sym_i_BQUOTE] = ACTIONS(4652), [anon_sym_i_DQUOTE] = ACTIONS(4652), [anon_sym_iq_LBRACE] = ACTIONS(4652), [aux_sym_char_literal_token1] = ACTIONS(4652), [anon_sym_SQUOTE] = ACTIONS(4650), [anon_sym___DATE__] = ACTIONS(4650), [anon_sym___FILE__] = ACTIONS(4650), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4650), [anon_sym___FUNCTION__] = ACTIONS(4650), [anon_sym___LINE__] = ACTIONS(4650), [anon_sym___MODULE__] = ACTIONS(4650), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4650), [anon_sym___TIME__] = ACTIONS(4650), [anon_sym___TIMESTAMP__] = ACTIONS(4650), [anon_sym___VENDOR__] = ACTIONS(4650), [anon_sym___VERSION__] = ACTIONS(4650), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4652), [sym_float_literal] = ACTIONS(4652), [sym__string] = ACTIONS(4652), }, [1444] = { [sym_identifier] = ACTIONS(4654), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4656), [anon_sym_RBRACE] = ACTIONS(4656), [anon_sym_LBRACE] = ACTIONS(4656), [anon_sym_DOT] = ACTIONS(4656), [anon_sym_AMP] = ACTIONS(4656), [anon_sym_DASH] = ACTIONS(4654), [anon_sym_DASH_DASH] = ACTIONS(4656), [anon_sym_PLUS] = ACTIONS(4654), [anon_sym_PLUS_PLUS] = ACTIONS(4656), [anon_sym_BANG] = ACTIONS(4656), [anon_sym_LPAREN] = ACTIONS(4656), [anon_sym_RPAREN] = ACTIONS(4656), [anon_sym_LBRACK] = ACTIONS(4656), [anon_sym_SEMI] = ACTIONS(4656), [anon_sym_DOLLAR] = ACTIONS(4656), [anon_sym_STAR] = ACTIONS(4656), [anon_sym_TILDE] = ACTIONS(4656), [anon_sym_AT] = ACTIONS(4656), [sym_bool] = ACTIONS(4654), [sym_byte] = ACTIONS(4654), [sym_ubyte] = ACTIONS(4654), [sym_char] = ACTIONS(4654), [sym_short] = ACTIONS(4654), [sym_ushort] = ACTIONS(4654), [sym_int] = ACTIONS(4654), [sym_uint] = ACTIONS(4654), [sym_long] = ACTIONS(4654), [sym_ulong] = ACTIONS(4654), [sym_cent] = ACTIONS(4654), [sym_ucent] = ACTIONS(4654), [sym_wchar] = ACTIONS(4654), [sym_dchar] = ACTIONS(4654), [sym_float] = ACTIONS(4654), [sym_double] = ACTIONS(4654), [sym_real] = ACTIONS(4654), [sym_ifloat] = ACTIONS(4654), [sym_idouble] = ACTIONS(4654), [sym_ireal] = ACTIONS(4654), [sym_cfloat] = ACTIONS(4654), [sym_cdouble] = ACTIONS(4654), [sym_creal] = ACTIONS(4654), [sym_size_t] = ACTIONS(4654), [sym_ptrdiff_t] = ACTIONS(4654), [sym_string] = ACTIONS(4654), [sym_cstring] = ACTIONS(4654), [sym_dstring] = ACTIONS(4654), [sym_wstring] = ACTIONS(4654), [sym_noreturn] = ACTIONS(4654), [sym_true] = ACTIONS(4654), [sym_false] = ACTIONS(4654), [sym_null] = ACTIONS(4654), [sym_super] = ACTIONS(4654), [sym_this] = ACTIONS(4654), [sym_abstract] = ACTIONS(4654), [sym_alias] = ACTIONS(4654), [sym_align] = ACTIONS(4654), [sym_asm] = ACTIONS(4654), [sym_assert] = ACTIONS(4654), [sym_auto] = ACTIONS(4654), [sym_break] = ACTIONS(4654), [sym_case] = ACTIONS(4654), [sym_cast] = ACTIONS(4654), [sym_catch] = ACTIONS(4654), [sym_class] = ACTIONS(4654), [sym_const] = ACTIONS(4654), [sym_continue] = ACTIONS(4654), [sym_debug] = ACTIONS(4654), [sym_default] = ACTIONS(4654), [sym_delegate] = ACTIONS(4654), [sym_delete] = ACTIONS(4654), [sym_deprecated] = ACTIONS(4654), [sym_do] = ACTIONS(4654), [sym_else] = ACTIONS(4654), [sym_enum] = ACTIONS(4654), [sym_export] = ACTIONS(4654), [sym_extern] = ACTIONS(4654), [sym_final] = ACTIONS(4654), [sym_finally] = ACTIONS(4654), [sym_for] = ACTIONS(4654), [sym_foreach] = ACTIONS(4654), [sym_foreach_reverse] = ACTIONS(4654), [sym_function] = ACTIONS(4654), [sym_goto] = ACTIONS(4654), [sym_if] = ACTIONS(4654), [sym_immutable] = ACTIONS(4654), [sym_import] = ACTIONS(4654), [sym_in] = ACTIONS(4654), [sym_inout] = ACTIONS(4654), [sym_interface] = ACTIONS(4654), [sym_invariant] = ACTIONS(4654), [sym_is] = ACTIONS(4654), [sym_mixin] = ACTIONS(4654), [sym_new] = ACTIONS(4654), [sym_nothrow] = ACTIONS(4654), [sym_out] = ACTIONS(4654), [sym_override] = ACTIONS(4654), [sym_package] = ACTIONS(4654), [sym_pragma] = ACTIONS(4654), [sym_private] = ACTIONS(4654), [sym_protected] = ACTIONS(4654), [sym_public] = ACTIONS(4654), [sym_pure] = ACTIONS(4654), [sym_ref] = ACTIONS(4654), [sym_return] = ACTIONS(4654), [sym_scope] = ACTIONS(4654), [sym_shared] = ACTIONS(4654), [sym_static] = ACTIONS(4654), [sym_struct] = ACTIONS(4654), [sym_switch] = ACTIONS(4654), [sym_synchronized] = ACTIONS(4654), [sym_template] = ACTIONS(4654), [sym_throw] = ACTIONS(4654), [sym_try] = ACTIONS(4654), [sym_typeid] = ACTIONS(4654), [sym_typeof] = ACTIONS(4654), [sym_union] = ACTIONS(4654), [sym_unittest] = ACTIONS(4654), [sym_version] = ACTIONS(4654), [sym_while] = ACTIONS(4654), [sym_with] = ACTIONS(4654), [sym_gshared] = ACTIONS(4654), [sym_traits] = ACTIONS(4654), [sym_vector] = ACTIONS(4654), [sym_void] = ACTIONS(4654), [anon_sym_BQUOTE] = ACTIONS(4656), [anon_sym_r_DQUOTE] = ACTIONS(4656), [anon_sym_x_DQUOTE] = ACTIONS(4656), [anon_sym_DQUOTE] = ACTIONS(4656), [anon_sym_i_BQUOTE] = ACTIONS(4656), [anon_sym_i_DQUOTE] = ACTIONS(4656), [anon_sym_iq_LBRACE] = ACTIONS(4656), [aux_sym_char_literal_token1] = ACTIONS(4656), [anon_sym_SQUOTE] = ACTIONS(4654), [anon_sym___DATE__] = ACTIONS(4654), [anon_sym___FILE__] = ACTIONS(4654), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4654), [anon_sym___FUNCTION__] = ACTIONS(4654), [anon_sym___LINE__] = ACTIONS(4654), [anon_sym___MODULE__] = ACTIONS(4654), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4654), [anon_sym___TIME__] = ACTIONS(4654), [anon_sym___TIMESTAMP__] = ACTIONS(4654), [anon_sym___VENDOR__] = ACTIONS(4654), [anon_sym___VERSION__] = ACTIONS(4654), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4656), [sym_float_literal] = ACTIONS(4656), [sym__string] = ACTIONS(4656), }, [1445] = { [sym_identifier] = ACTIONS(4658), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4660), [anon_sym_RBRACE] = ACTIONS(4660), [anon_sym_LBRACE] = ACTIONS(4660), [anon_sym_DOT] = ACTIONS(4660), [anon_sym_AMP] = ACTIONS(4660), [anon_sym_DASH] = ACTIONS(4658), [anon_sym_DASH_DASH] = ACTIONS(4660), [anon_sym_PLUS] = ACTIONS(4658), [anon_sym_PLUS_PLUS] = ACTIONS(4660), [anon_sym_BANG] = ACTIONS(4660), [anon_sym_LPAREN] = ACTIONS(4660), [anon_sym_RPAREN] = ACTIONS(4660), [anon_sym_LBRACK] = ACTIONS(4660), [anon_sym_SEMI] = ACTIONS(4660), [anon_sym_DOLLAR] = ACTIONS(4660), [anon_sym_STAR] = ACTIONS(4660), [anon_sym_TILDE] = ACTIONS(4660), [anon_sym_AT] = ACTIONS(4660), [sym_bool] = ACTIONS(4658), [sym_byte] = ACTIONS(4658), [sym_ubyte] = ACTIONS(4658), [sym_char] = ACTIONS(4658), [sym_short] = ACTIONS(4658), [sym_ushort] = ACTIONS(4658), [sym_int] = ACTIONS(4658), [sym_uint] = ACTIONS(4658), [sym_long] = ACTIONS(4658), [sym_ulong] = ACTIONS(4658), [sym_cent] = ACTIONS(4658), [sym_ucent] = ACTIONS(4658), [sym_wchar] = ACTIONS(4658), [sym_dchar] = ACTIONS(4658), [sym_float] = ACTIONS(4658), [sym_double] = ACTIONS(4658), [sym_real] = ACTIONS(4658), [sym_ifloat] = ACTIONS(4658), [sym_idouble] = ACTIONS(4658), [sym_ireal] = ACTIONS(4658), [sym_cfloat] = ACTIONS(4658), [sym_cdouble] = ACTIONS(4658), [sym_creal] = ACTIONS(4658), [sym_size_t] = ACTIONS(4658), [sym_ptrdiff_t] = ACTIONS(4658), [sym_string] = ACTIONS(4658), [sym_cstring] = ACTIONS(4658), [sym_dstring] = ACTIONS(4658), [sym_wstring] = ACTIONS(4658), [sym_noreturn] = ACTIONS(4658), [sym_true] = ACTIONS(4658), [sym_false] = ACTIONS(4658), [sym_null] = ACTIONS(4658), [sym_super] = ACTIONS(4658), [sym_this] = ACTIONS(4658), [sym_abstract] = ACTIONS(4658), [sym_alias] = ACTIONS(4658), [sym_align] = ACTIONS(4658), [sym_asm] = ACTIONS(4658), [sym_assert] = ACTIONS(4658), [sym_auto] = ACTIONS(4658), [sym_break] = ACTIONS(4658), [sym_case] = ACTIONS(4658), [sym_cast] = ACTIONS(4658), [sym_catch] = ACTIONS(4658), [sym_class] = ACTIONS(4658), [sym_const] = ACTIONS(4658), [sym_continue] = ACTIONS(4658), [sym_debug] = ACTIONS(4658), [sym_default] = ACTIONS(4658), [sym_delegate] = ACTIONS(4658), [sym_delete] = ACTIONS(4658), [sym_deprecated] = ACTIONS(4658), [sym_do] = ACTIONS(4658), [sym_else] = ACTIONS(4658), [sym_enum] = ACTIONS(4658), [sym_export] = ACTIONS(4658), [sym_extern] = ACTIONS(4658), [sym_final] = ACTIONS(4658), [sym_finally] = ACTIONS(4658), [sym_for] = ACTIONS(4658), [sym_foreach] = ACTIONS(4658), [sym_foreach_reverse] = ACTIONS(4658), [sym_function] = ACTIONS(4658), [sym_goto] = ACTIONS(4658), [sym_if] = ACTIONS(4658), [sym_immutable] = ACTIONS(4658), [sym_import] = ACTIONS(4658), [sym_in] = ACTIONS(4658), [sym_inout] = ACTIONS(4658), [sym_interface] = ACTIONS(4658), [sym_invariant] = ACTIONS(4658), [sym_is] = ACTIONS(4658), [sym_mixin] = ACTIONS(4658), [sym_new] = ACTIONS(4658), [sym_nothrow] = ACTIONS(4658), [sym_out] = ACTIONS(4658), [sym_override] = ACTIONS(4658), [sym_package] = ACTIONS(4658), [sym_pragma] = ACTIONS(4658), [sym_private] = ACTIONS(4658), [sym_protected] = ACTIONS(4658), [sym_public] = ACTIONS(4658), [sym_pure] = ACTIONS(4658), [sym_ref] = ACTIONS(4658), [sym_return] = ACTIONS(4658), [sym_scope] = ACTIONS(4658), [sym_shared] = ACTIONS(4658), [sym_static] = ACTIONS(4658), [sym_struct] = ACTIONS(4658), [sym_switch] = ACTIONS(4658), [sym_synchronized] = ACTIONS(4658), [sym_template] = ACTIONS(4658), [sym_throw] = ACTIONS(4658), [sym_try] = ACTIONS(4658), [sym_typeid] = ACTIONS(4658), [sym_typeof] = ACTIONS(4658), [sym_union] = ACTIONS(4658), [sym_unittest] = ACTIONS(4658), [sym_version] = ACTIONS(4658), [sym_while] = ACTIONS(4658), [sym_with] = ACTIONS(4658), [sym_gshared] = ACTIONS(4658), [sym_traits] = ACTIONS(4658), [sym_vector] = ACTIONS(4658), [sym_void] = ACTIONS(4658), [anon_sym_BQUOTE] = ACTIONS(4660), [anon_sym_r_DQUOTE] = ACTIONS(4660), [anon_sym_x_DQUOTE] = ACTIONS(4660), [anon_sym_DQUOTE] = ACTIONS(4660), [anon_sym_i_BQUOTE] = ACTIONS(4660), [anon_sym_i_DQUOTE] = ACTIONS(4660), [anon_sym_iq_LBRACE] = ACTIONS(4660), [aux_sym_char_literal_token1] = ACTIONS(4660), [anon_sym_SQUOTE] = ACTIONS(4658), [anon_sym___DATE__] = ACTIONS(4658), [anon_sym___FILE__] = ACTIONS(4658), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4658), [anon_sym___FUNCTION__] = ACTIONS(4658), [anon_sym___LINE__] = ACTIONS(4658), [anon_sym___MODULE__] = ACTIONS(4658), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4658), [anon_sym___TIME__] = ACTIONS(4658), [anon_sym___TIMESTAMP__] = ACTIONS(4658), [anon_sym___VENDOR__] = ACTIONS(4658), [anon_sym___VERSION__] = ACTIONS(4658), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4660), [sym_float_literal] = ACTIONS(4660), [sym__string] = ACTIONS(4660), }, [1446] = { [sym_identifier] = ACTIONS(4662), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4664), [anon_sym_RBRACE] = ACTIONS(4664), [anon_sym_LBRACE] = ACTIONS(4664), [anon_sym_DOT] = ACTIONS(4664), [anon_sym_AMP] = ACTIONS(4664), [anon_sym_DASH] = ACTIONS(4662), [anon_sym_DASH_DASH] = ACTIONS(4664), [anon_sym_PLUS] = ACTIONS(4662), [anon_sym_PLUS_PLUS] = ACTIONS(4664), [anon_sym_BANG] = ACTIONS(4664), [anon_sym_LPAREN] = ACTIONS(4664), [anon_sym_RPAREN] = ACTIONS(4664), [anon_sym_LBRACK] = ACTIONS(4664), [anon_sym_SEMI] = ACTIONS(4664), [anon_sym_DOLLAR] = ACTIONS(4664), [anon_sym_STAR] = ACTIONS(4664), [anon_sym_TILDE] = ACTIONS(4664), [anon_sym_AT] = ACTIONS(4664), [sym_bool] = ACTIONS(4662), [sym_byte] = ACTIONS(4662), [sym_ubyte] = ACTIONS(4662), [sym_char] = ACTIONS(4662), [sym_short] = ACTIONS(4662), [sym_ushort] = ACTIONS(4662), [sym_int] = ACTIONS(4662), [sym_uint] = ACTIONS(4662), [sym_long] = ACTIONS(4662), [sym_ulong] = ACTIONS(4662), [sym_cent] = ACTIONS(4662), [sym_ucent] = ACTIONS(4662), [sym_wchar] = ACTIONS(4662), [sym_dchar] = ACTIONS(4662), [sym_float] = ACTIONS(4662), [sym_double] = ACTIONS(4662), [sym_real] = ACTIONS(4662), [sym_ifloat] = ACTIONS(4662), [sym_idouble] = ACTIONS(4662), [sym_ireal] = ACTIONS(4662), [sym_cfloat] = ACTIONS(4662), [sym_cdouble] = ACTIONS(4662), [sym_creal] = ACTIONS(4662), [sym_size_t] = ACTIONS(4662), [sym_ptrdiff_t] = ACTIONS(4662), [sym_string] = ACTIONS(4662), [sym_cstring] = ACTIONS(4662), [sym_dstring] = ACTIONS(4662), [sym_wstring] = ACTIONS(4662), [sym_noreturn] = ACTIONS(4662), [sym_true] = ACTIONS(4662), [sym_false] = ACTIONS(4662), [sym_null] = ACTIONS(4662), [sym_super] = ACTIONS(4662), [sym_this] = ACTIONS(4662), [sym_abstract] = ACTIONS(4662), [sym_alias] = ACTIONS(4662), [sym_align] = ACTIONS(4662), [sym_asm] = ACTIONS(4662), [sym_assert] = ACTIONS(4662), [sym_auto] = ACTIONS(4662), [sym_break] = ACTIONS(4662), [sym_case] = ACTIONS(4662), [sym_cast] = ACTIONS(4662), [sym_catch] = ACTIONS(4662), [sym_class] = ACTIONS(4662), [sym_const] = ACTIONS(4662), [sym_continue] = ACTIONS(4662), [sym_debug] = ACTIONS(4662), [sym_default] = ACTIONS(4662), [sym_delegate] = ACTIONS(4662), [sym_delete] = ACTIONS(4662), [sym_deprecated] = ACTIONS(4662), [sym_do] = ACTIONS(4662), [sym_else] = ACTIONS(4662), [sym_enum] = ACTIONS(4662), [sym_export] = ACTIONS(4662), [sym_extern] = ACTIONS(4662), [sym_final] = ACTIONS(4662), [sym_finally] = ACTIONS(4662), [sym_for] = ACTIONS(4662), [sym_foreach] = ACTIONS(4662), [sym_foreach_reverse] = ACTIONS(4662), [sym_function] = ACTIONS(4662), [sym_goto] = ACTIONS(4662), [sym_if] = ACTIONS(4662), [sym_immutable] = ACTIONS(4662), [sym_import] = ACTIONS(4662), [sym_in] = ACTIONS(4662), [sym_inout] = ACTIONS(4662), [sym_interface] = ACTIONS(4662), [sym_invariant] = ACTIONS(4662), [sym_is] = ACTIONS(4662), [sym_mixin] = ACTIONS(4662), [sym_new] = ACTIONS(4662), [sym_nothrow] = ACTIONS(4662), [sym_out] = ACTIONS(4662), [sym_override] = ACTIONS(4662), [sym_package] = ACTIONS(4662), [sym_pragma] = ACTIONS(4662), [sym_private] = ACTIONS(4662), [sym_protected] = ACTIONS(4662), [sym_public] = ACTIONS(4662), [sym_pure] = ACTIONS(4662), [sym_ref] = ACTIONS(4662), [sym_return] = ACTIONS(4662), [sym_scope] = ACTIONS(4662), [sym_shared] = ACTIONS(4662), [sym_static] = ACTIONS(4662), [sym_struct] = ACTIONS(4662), [sym_switch] = ACTIONS(4662), [sym_synchronized] = ACTIONS(4662), [sym_template] = ACTIONS(4662), [sym_throw] = ACTIONS(4662), [sym_try] = ACTIONS(4662), [sym_typeid] = ACTIONS(4662), [sym_typeof] = ACTIONS(4662), [sym_union] = ACTIONS(4662), [sym_unittest] = ACTIONS(4662), [sym_version] = ACTIONS(4662), [sym_while] = ACTIONS(4662), [sym_with] = ACTIONS(4662), [sym_gshared] = ACTIONS(4662), [sym_traits] = ACTIONS(4662), [sym_vector] = ACTIONS(4662), [sym_void] = ACTIONS(4662), [anon_sym_BQUOTE] = ACTIONS(4664), [anon_sym_r_DQUOTE] = ACTIONS(4664), [anon_sym_x_DQUOTE] = ACTIONS(4664), [anon_sym_DQUOTE] = ACTIONS(4664), [anon_sym_i_BQUOTE] = ACTIONS(4664), [anon_sym_i_DQUOTE] = ACTIONS(4664), [anon_sym_iq_LBRACE] = ACTIONS(4664), [aux_sym_char_literal_token1] = ACTIONS(4664), [anon_sym_SQUOTE] = ACTIONS(4662), [anon_sym___DATE__] = ACTIONS(4662), [anon_sym___FILE__] = ACTIONS(4662), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4662), [anon_sym___FUNCTION__] = ACTIONS(4662), [anon_sym___LINE__] = ACTIONS(4662), [anon_sym___MODULE__] = ACTIONS(4662), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4662), [anon_sym___TIME__] = ACTIONS(4662), [anon_sym___TIMESTAMP__] = ACTIONS(4662), [anon_sym___VENDOR__] = ACTIONS(4662), [anon_sym___VERSION__] = ACTIONS(4662), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4664), [sym_float_literal] = ACTIONS(4664), [sym__string] = ACTIONS(4664), }, [1447] = { [sym_identifier] = ACTIONS(4666), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4668), [anon_sym_RBRACE] = ACTIONS(4668), [anon_sym_LBRACE] = ACTIONS(4668), [anon_sym_DOT] = ACTIONS(4668), [anon_sym_AMP] = ACTIONS(4668), [anon_sym_DASH] = ACTIONS(4666), [anon_sym_DASH_DASH] = ACTIONS(4668), [anon_sym_PLUS] = ACTIONS(4666), [anon_sym_PLUS_PLUS] = ACTIONS(4668), [anon_sym_BANG] = ACTIONS(4668), [anon_sym_LPAREN] = ACTIONS(4668), [anon_sym_RPAREN] = ACTIONS(4668), [anon_sym_LBRACK] = ACTIONS(4668), [anon_sym_SEMI] = ACTIONS(4668), [anon_sym_DOLLAR] = ACTIONS(4668), [anon_sym_STAR] = ACTIONS(4668), [anon_sym_TILDE] = ACTIONS(4668), [anon_sym_AT] = ACTIONS(4668), [sym_bool] = ACTIONS(4666), [sym_byte] = ACTIONS(4666), [sym_ubyte] = ACTIONS(4666), [sym_char] = ACTIONS(4666), [sym_short] = ACTIONS(4666), [sym_ushort] = ACTIONS(4666), [sym_int] = ACTIONS(4666), [sym_uint] = ACTIONS(4666), [sym_long] = ACTIONS(4666), [sym_ulong] = ACTIONS(4666), [sym_cent] = ACTIONS(4666), [sym_ucent] = ACTIONS(4666), [sym_wchar] = ACTIONS(4666), [sym_dchar] = ACTIONS(4666), [sym_float] = ACTIONS(4666), [sym_double] = ACTIONS(4666), [sym_real] = ACTIONS(4666), [sym_ifloat] = ACTIONS(4666), [sym_idouble] = ACTIONS(4666), [sym_ireal] = ACTIONS(4666), [sym_cfloat] = ACTIONS(4666), [sym_cdouble] = ACTIONS(4666), [sym_creal] = ACTIONS(4666), [sym_size_t] = ACTIONS(4666), [sym_ptrdiff_t] = ACTIONS(4666), [sym_string] = ACTIONS(4666), [sym_cstring] = ACTIONS(4666), [sym_dstring] = ACTIONS(4666), [sym_wstring] = ACTIONS(4666), [sym_noreturn] = ACTIONS(4666), [sym_true] = ACTIONS(4666), [sym_false] = ACTIONS(4666), [sym_null] = ACTIONS(4666), [sym_super] = ACTIONS(4666), [sym_this] = ACTIONS(4666), [sym_abstract] = ACTIONS(4666), [sym_alias] = ACTIONS(4666), [sym_align] = ACTIONS(4666), [sym_asm] = ACTIONS(4666), [sym_assert] = ACTIONS(4666), [sym_auto] = ACTIONS(4666), [sym_break] = ACTIONS(4666), [sym_case] = ACTIONS(4666), [sym_cast] = ACTIONS(4666), [sym_catch] = ACTIONS(4666), [sym_class] = ACTIONS(4666), [sym_const] = ACTIONS(4666), [sym_continue] = ACTIONS(4666), [sym_debug] = ACTIONS(4666), [sym_default] = ACTIONS(4666), [sym_delegate] = ACTIONS(4666), [sym_delete] = ACTIONS(4666), [sym_deprecated] = ACTIONS(4666), [sym_do] = ACTIONS(4666), [sym_else] = ACTIONS(4666), [sym_enum] = ACTIONS(4666), [sym_export] = ACTIONS(4666), [sym_extern] = ACTIONS(4666), [sym_final] = ACTIONS(4666), [sym_finally] = ACTIONS(4666), [sym_for] = ACTIONS(4666), [sym_foreach] = ACTIONS(4666), [sym_foreach_reverse] = ACTIONS(4666), [sym_function] = ACTIONS(4666), [sym_goto] = ACTIONS(4666), [sym_if] = ACTIONS(4666), [sym_immutable] = ACTIONS(4666), [sym_import] = ACTIONS(4666), [sym_in] = ACTIONS(4666), [sym_inout] = ACTIONS(4666), [sym_interface] = ACTIONS(4666), [sym_invariant] = ACTIONS(4666), [sym_is] = ACTIONS(4666), [sym_mixin] = ACTIONS(4666), [sym_new] = ACTIONS(4666), [sym_nothrow] = ACTIONS(4666), [sym_out] = ACTIONS(4666), [sym_override] = ACTIONS(4666), [sym_package] = ACTIONS(4666), [sym_pragma] = ACTIONS(4666), [sym_private] = ACTIONS(4666), [sym_protected] = ACTIONS(4666), [sym_public] = ACTIONS(4666), [sym_pure] = ACTIONS(4666), [sym_ref] = ACTIONS(4666), [sym_return] = ACTIONS(4666), [sym_scope] = ACTIONS(4666), [sym_shared] = ACTIONS(4666), [sym_static] = ACTIONS(4666), [sym_struct] = ACTIONS(4666), [sym_switch] = ACTIONS(4666), [sym_synchronized] = ACTIONS(4666), [sym_template] = ACTIONS(4666), [sym_throw] = ACTIONS(4666), [sym_try] = ACTIONS(4666), [sym_typeid] = ACTIONS(4666), [sym_typeof] = ACTIONS(4666), [sym_union] = ACTIONS(4666), [sym_unittest] = ACTIONS(4666), [sym_version] = ACTIONS(4666), [sym_while] = ACTIONS(4666), [sym_with] = ACTIONS(4666), [sym_gshared] = ACTIONS(4666), [sym_traits] = ACTIONS(4666), [sym_vector] = ACTIONS(4666), [sym_void] = ACTIONS(4666), [anon_sym_BQUOTE] = ACTIONS(4668), [anon_sym_r_DQUOTE] = ACTIONS(4668), [anon_sym_x_DQUOTE] = ACTIONS(4668), [anon_sym_DQUOTE] = ACTIONS(4668), [anon_sym_i_BQUOTE] = ACTIONS(4668), [anon_sym_i_DQUOTE] = ACTIONS(4668), [anon_sym_iq_LBRACE] = ACTIONS(4668), [aux_sym_char_literal_token1] = ACTIONS(4668), [anon_sym_SQUOTE] = ACTIONS(4666), [anon_sym___DATE__] = ACTIONS(4666), [anon_sym___FILE__] = ACTIONS(4666), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4666), [anon_sym___FUNCTION__] = ACTIONS(4666), [anon_sym___LINE__] = ACTIONS(4666), [anon_sym___MODULE__] = ACTIONS(4666), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4666), [anon_sym___TIME__] = ACTIONS(4666), [anon_sym___TIMESTAMP__] = ACTIONS(4666), [anon_sym___VENDOR__] = ACTIONS(4666), [anon_sym___VERSION__] = ACTIONS(4666), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4668), [sym_float_literal] = ACTIONS(4668), [sym__string] = ACTIONS(4668), }, [1448] = { [sym_identifier] = ACTIONS(4670), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4672), [anon_sym_RBRACE] = ACTIONS(4672), [anon_sym_LBRACE] = ACTIONS(4672), [anon_sym_DOT] = ACTIONS(4672), [anon_sym_AMP] = ACTIONS(4672), [anon_sym_DASH] = ACTIONS(4670), [anon_sym_DASH_DASH] = ACTIONS(4672), [anon_sym_PLUS] = ACTIONS(4670), [anon_sym_PLUS_PLUS] = ACTIONS(4672), [anon_sym_BANG] = ACTIONS(4672), [anon_sym_LPAREN] = ACTIONS(4672), [anon_sym_RPAREN] = ACTIONS(4672), [anon_sym_LBRACK] = ACTIONS(4672), [anon_sym_SEMI] = ACTIONS(4672), [anon_sym_DOLLAR] = ACTIONS(4672), [anon_sym_STAR] = ACTIONS(4672), [anon_sym_TILDE] = ACTIONS(4672), [anon_sym_AT] = ACTIONS(4672), [sym_bool] = ACTIONS(4670), [sym_byte] = ACTIONS(4670), [sym_ubyte] = ACTIONS(4670), [sym_char] = ACTIONS(4670), [sym_short] = ACTIONS(4670), [sym_ushort] = ACTIONS(4670), [sym_int] = ACTIONS(4670), [sym_uint] = ACTIONS(4670), [sym_long] = ACTIONS(4670), [sym_ulong] = ACTIONS(4670), [sym_cent] = ACTIONS(4670), [sym_ucent] = ACTIONS(4670), [sym_wchar] = ACTIONS(4670), [sym_dchar] = ACTIONS(4670), [sym_float] = ACTIONS(4670), [sym_double] = ACTIONS(4670), [sym_real] = ACTIONS(4670), [sym_ifloat] = ACTIONS(4670), [sym_idouble] = ACTIONS(4670), [sym_ireal] = ACTIONS(4670), [sym_cfloat] = ACTIONS(4670), [sym_cdouble] = ACTIONS(4670), [sym_creal] = ACTIONS(4670), [sym_size_t] = ACTIONS(4670), [sym_ptrdiff_t] = ACTIONS(4670), [sym_string] = ACTIONS(4670), [sym_cstring] = ACTIONS(4670), [sym_dstring] = ACTIONS(4670), [sym_wstring] = ACTIONS(4670), [sym_noreturn] = ACTIONS(4670), [sym_true] = ACTIONS(4670), [sym_false] = ACTIONS(4670), [sym_null] = ACTIONS(4670), [sym_super] = ACTIONS(4670), [sym_this] = ACTIONS(4670), [sym_abstract] = ACTIONS(4670), [sym_alias] = ACTIONS(4670), [sym_align] = ACTIONS(4670), [sym_asm] = ACTIONS(4670), [sym_assert] = ACTIONS(4670), [sym_auto] = ACTIONS(4670), [sym_break] = ACTIONS(4670), [sym_case] = ACTIONS(4670), [sym_cast] = ACTIONS(4670), [sym_catch] = ACTIONS(4670), [sym_class] = ACTIONS(4670), [sym_const] = ACTIONS(4670), [sym_continue] = ACTIONS(4670), [sym_debug] = ACTIONS(4670), [sym_default] = ACTIONS(4670), [sym_delegate] = ACTIONS(4670), [sym_delete] = ACTIONS(4670), [sym_deprecated] = ACTIONS(4670), [sym_do] = ACTIONS(4670), [sym_else] = ACTIONS(4670), [sym_enum] = ACTIONS(4670), [sym_export] = ACTIONS(4670), [sym_extern] = ACTIONS(4670), [sym_final] = ACTIONS(4670), [sym_finally] = ACTIONS(4670), [sym_for] = ACTIONS(4670), [sym_foreach] = ACTIONS(4670), [sym_foreach_reverse] = ACTIONS(4670), [sym_function] = ACTIONS(4670), [sym_goto] = ACTIONS(4670), [sym_if] = ACTIONS(4670), [sym_immutable] = ACTIONS(4670), [sym_import] = ACTIONS(4670), [sym_in] = ACTIONS(4670), [sym_inout] = ACTIONS(4670), [sym_interface] = ACTIONS(4670), [sym_invariant] = ACTIONS(4670), [sym_is] = ACTIONS(4670), [sym_mixin] = ACTIONS(4670), [sym_new] = ACTIONS(4670), [sym_nothrow] = ACTIONS(4670), [sym_out] = ACTIONS(4670), [sym_override] = ACTIONS(4670), [sym_package] = ACTIONS(4670), [sym_pragma] = ACTIONS(4670), [sym_private] = ACTIONS(4670), [sym_protected] = ACTIONS(4670), [sym_public] = ACTIONS(4670), [sym_pure] = ACTIONS(4670), [sym_ref] = ACTIONS(4670), [sym_return] = ACTIONS(4670), [sym_scope] = ACTIONS(4670), [sym_shared] = ACTIONS(4670), [sym_static] = ACTIONS(4670), [sym_struct] = ACTIONS(4670), [sym_switch] = ACTIONS(4670), [sym_synchronized] = ACTIONS(4670), [sym_template] = ACTIONS(4670), [sym_throw] = ACTIONS(4670), [sym_try] = ACTIONS(4670), [sym_typeid] = ACTIONS(4670), [sym_typeof] = ACTIONS(4670), [sym_union] = ACTIONS(4670), [sym_unittest] = ACTIONS(4670), [sym_version] = ACTIONS(4670), [sym_while] = ACTIONS(4670), [sym_with] = ACTIONS(4670), [sym_gshared] = ACTIONS(4670), [sym_traits] = ACTIONS(4670), [sym_vector] = ACTIONS(4670), [sym_void] = ACTIONS(4670), [anon_sym_BQUOTE] = ACTIONS(4672), [anon_sym_r_DQUOTE] = ACTIONS(4672), [anon_sym_x_DQUOTE] = ACTIONS(4672), [anon_sym_DQUOTE] = ACTIONS(4672), [anon_sym_i_BQUOTE] = ACTIONS(4672), [anon_sym_i_DQUOTE] = ACTIONS(4672), [anon_sym_iq_LBRACE] = ACTIONS(4672), [aux_sym_char_literal_token1] = ACTIONS(4672), [anon_sym_SQUOTE] = ACTIONS(4670), [anon_sym___DATE__] = ACTIONS(4670), [anon_sym___FILE__] = ACTIONS(4670), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4670), [anon_sym___FUNCTION__] = ACTIONS(4670), [anon_sym___LINE__] = ACTIONS(4670), [anon_sym___MODULE__] = ACTIONS(4670), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4670), [anon_sym___TIME__] = ACTIONS(4670), [anon_sym___TIMESTAMP__] = ACTIONS(4670), [anon_sym___VENDOR__] = ACTIONS(4670), [anon_sym___VERSION__] = ACTIONS(4670), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4672), [sym_float_literal] = ACTIONS(4672), [sym__string] = ACTIONS(4672), }, [1449] = { [sym_identifier] = ACTIONS(4674), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4676), [anon_sym_RBRACE] = ACTIONS(4676), [anon_sym_LBRACE] = ACTIONS(4676), [anon_sym_DOT] = ACTIONS(4676), [anon_sym_AMP] = ACTIONS(4676), [anon_sym_DASH] = ACTIONS(4674), [anon_sym_DASH_DASH] = ACTIONS(4676), [anon_sym_PLUS] = ACTIONS(4674), [anon_sym_PLUS_PLUS] = ACTIONS(4676), [anon_sym_BANG] = ACTIONS(4676), [anon_sym_LPAREN] = ACTIONS(4676), [anon_sym_RPAREN] = ACTIONS(4676), [anon_sym_LBRACK] = ACTIONS(4676), [anon_sym_SEMI] = ACTIONS(4676), [anon_sym_DOLLAR] = ACTIONS(4676), [anon_sym_STAR] = ACTIONS(4676), [anon_sym_TILDE] = ACTIONS(4676), [anon_sym_AT] = ACTIONS(4676), [sym_bool] = ACTIONS(4674), [sym_byte] = ACTIONS(4674), [sym_ubyte] = ACTIONS(4674), [sym_char] = ACTIONS(4674), [sym_short] = ACTIONS(4674), [sym_ushort] = ACTIONS(4674), [sym_int] = ACTIONS(4674), [sym_uint] = ACTIONS(4674), [sym_long] = ACTIONS(4674), [sym_ulong] = ACTIONS(4674), [sym_cent] = ACTIONS(4674), [sym_ucent] = ACTIONS(4674), [sym_wchar] = ACTIONS(4674), [sym_dchar] = ACTIONS(4674), [sym_float] = ACTIONS(4674), [sym_double] = ACTIONS(4674), [sym_real] = ACTIONS(4674), [sym_ifloat] = ACTIONS(4674), [sym_idouble] = ACTIONS(4674), [sym_ireal] = ACTIONS(4674), [sym_cfloat] = ACTIONS(4674), [sym_cdouble] = ACTIONS(4674), [sym_creal] = ACTIONS(4674), [sym_size_t] = ACTIONS(4674), [sym_ptrdiff_t] = ACTIONS(4674), [sym_string] = ACTIONS(4674), [sym_cstring] = ACTIONS(4674), [sym_dstring] = ACTIONS(4674), [sym_wstring] = ACTIONS(4674), [sym_noreturn] = ACTIONS(4674), [sym_true] = ACTIONS(4674), [sym_false] = ACTIONS(4674), [sym_null] = ACTIONS(4674), [sym_super] = ACTIONS(4674), [sym_this] = ACTIONS(4674), [sym_abstract] = ACTIONS(4674), [sym_alias] = ACTIONS(4674), [sym_align] = ACTIONS(4674), [sym_asm] = ACTIONS(4674), [sym_assert] = ACTIONS(4674), [sym_auto] = ACTIONS(4674), [sym_break] = ACTIONS(4674), [sym_case] = ACTIONS(4674), [sym_cast] = ACTIONS(4674), [sym_catch] = ACTIONS(4674), [sym_class] = ACTIONS(4674), [sym_const] = ACTIONS(4674), [sym_continue] = ACTIONS(4674), [sym_debug] = ACTIONS(4674), [sym_default] = ACTIONS(4674), [sym_delegate] = ACTIONS(4674), [sym_delete] = ACTIONS(4674), [sym_deprecated] = ACTIONS(4674), [sym_do] = ACTIONS(4674), [sym_else] = ACTIONS(4674), [sym_enum] = ACTIONS(4674), [sym_export] = ACTIONS(4674), [sym_extern] = ACTIONS(4674), [sym_final] = ACTIONS(4674), [sym_finally] = ACTIONS(4674), [sym_for] = ACTIONS(4674), [sym_foreach] = ACTIONS(4674), [sym_foreach_reverse] = ACTIONS(4674), [sym_function] = ACTIONS(4674), [sym_goto] = ACTIONS(4674), [sym_if] = ACTIONS(4674), [sym_immutable] = ACTIONS(4674), [sym_import] = ACTIONS(4674), [sym_in] = ACTIONS(4674), [sym_inout] = ACTIONS(4674), [sym_interface] = ACTIONS(4674), [sym_invariant] = ACTIONS(4674), [sym_is] = ACTIONS(4674), [sym_mixin] = ACTIONS(4674), [sym_new] = ACTIONS(4674), [sym_nothrow] = ACTIONS(4674), [sym_out] = ACTIONS(4674), [sym_override] = ACTIONS(4674), [sym_package] = ACTIONS(4674), [sym_pragma] = ACTIONS(4674), [sym_private] = ACTIONS(4674), [sym_protected] = ACTIONS(4674), [sym_public] = ACTIONS(4674), [sym_pure] = ACTIONS(4674), [sym_ref] = ACTIONS(4674), [sym_return] = ACTIONS(4674), [sym_scope] = ACTIONS(4674), [sym_shared] = ACTIONS(4674), [sym_static] = ACTIONS(4674), [sym_struct] = ACTIONS(4674), [sym_switch] = ACTIONS(4674), [sym_synchronized] = ACTIONS(4674), [sym_template] = ACTIONS(4674), [sym_throw] = ACTIONS(4674), [sym_try] = ACTIONS(4674), [sym_typeid] = ACTIONS(4674), [sym_typeof] = ACTIONS(4674), [sym_union] = ACTIONS(4674), [sym_unittest] = ACTIONS(4674), [sym_version] = ACTIONS(4674), [sym_while] = ACTIONS(4674), [sym_with] = ACTIONS(4674), [sym_gshared] = ACTIONS(4674), [sym_traits] = ACTIONS(4674), [sym_vector] = ACTIONS(4674), [sym_void] = ACTIONS(4674), [anon_sym_BQUOTE] = ACTIONS(4676), [anon_sym_r_DQUOTE] = ACTIONS(4676), [anon_sym_x_DQUOTE] = ACTIONS(4676), [anon_sym_DQUOTE] = ACTIONS(4676), [anon_sym_i_BQUOTE] = ACTIONS(4676), [anon_sym_i_DQUOTE] = ACTIONS(4676), [anon_sym_iq_LBRACE] = ACTIONS(4676), [aux_sym_char_literal_token1] = ACTIONS(4676), [anon_sym_SQUOTE] = ACTIONS(4674), [anon_sym___DATE__] = ACTIONS(4674), [anon_sym___FILE__] = ACTIONS(4674), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4674), [anon_sym___FUNCTION__] = ACTIONS(4674), [anon_sym___LINE__] = ACTIONS(4674), [anon_sym___MODULE__] = ACTIONS(4674), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4674), [anon_sym___TIME__] = ACTIONS(4674), [anon_sym___TIMESTAMP__] = ACTIONS(4674), [anon_sym___VENDOR__] = ACTIONS(4674), [anon_sym___VERSION__] = ACTIONS(4674), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4676), [sym_float_literal] = ACTIONS(4676), [sym__string] = ACTIONS(4676), }, [1450] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_RBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [anon_sym_AT] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_abstract] = ACTIONS(4365), [sym_alias] = ACTIONS(4365), [sym_align] = ACTIONS(4365), [sym_asm] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_break] = ACTIONS(4365), [sym_case] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_catch] = ACTIONS(4365), [sym_class] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_continue] = ACTIONS(4365), [sym_debug] = ACTIONS(4365), [sym_default] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_deprecated] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(4678), [sym_enum] = ACTIONS(4365), [sym_export] = ACTIONS(4365), [sym_extern] = ACTIONS(4365), [sym_final] = ACTIONS(4365), [sym_finally] = ACTIONS(4365), [sym_for] = ACTIONS(4365), [sym_foreach] = ACTIONS(4365), [sym_foreach_reverse] = ACTIONS(4365), [sym_function] = ACTIONS(4365), [sym_goto] = ACTIONS(4365), [sym_if] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_interface] = ACTIONS(4365), [sym_invariant] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_nothrow] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_override] = ACTIONS(4365), [sym_package] = ACTIONS(4365), [sym_pragma] = ACTIONS(4365), [sym_private] = ACTIONS(4365), [sym_protected] = ACTIONS(4365), [sym_public] = ACTIONS(4365), [sym_pure] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_return] = ACTIONS(4365), [sym_scope] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_static] = ACTIONS(4365), [sym_struct] = ACTIONS(4365), [sym_switch] = ACTIONS(4365), [sym_synchronized] = ACTIONS(4365), [sym_template] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_try] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_union] = ACTIONS(4365), [sym_unittest] = ACTIONS(4365), [sym_version] = ACTIONS(4365), [sym_while] = ACTIONS(4365), [sym_with] = ACTIONS(4365), [sym_gshared] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [1451] = { [sym_identifier] = ACTIONS(4682), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4684), [anon_sym_RBRACE] = ACTIONS(4684), [anon_sym_LBRACE] = ACTIONS(4684), [anon_sym_DOT] = ACTIONS(4684), [anon_sym_AMP] = ACTIONS(4684), [anon_sym_DASH] = ACTIONS(4682), [anon_sym_DASH_DASH] = ACTIONS(4684), [anon_sym_PLUS] = ACTIONS(4682), [anon_sym_PLUS_PLUS] = ACTIONS(4684), [anon_sym_BANG] = ACTIONS(4684), [anon_sym_LPAREN] = ACTIONS(4684), [anon_sym_RPAREN] = ACTIONS(4684), [anon_sym_LBRACK] = ACTIONS(4684), [anon_sym_SEMI] = ACTIONS(4684), [anon_sym_DOLLAR] = ACTIONS(4684), [anon_sym_STAR] = ACTIONS(4684), [anon_sym_TILDE] = ACTIONS(4684), [anon_sym_AT] = ACTIONS(4684), [sym_bool] = ACTIONS(4682), [sym_byte] = ACTIONS(4682), [sym_ubyte] = ACTIONS(4682), [sym_char] = ACTIONS(4682), [sym_short] = ACTIONS(4682), [sym_ushort] = ACTIONS(4682), [sym_int] = ACTIONS(4682), [sym_uint] = ACTIONS(4682), [sym_long] = ACTIONS(4682), [sym_ulong] = ACTIONS(4682), [sym_cent] = ACTIONS(4682), [sym_ucent] = ACTIONS(4682), [sym_wchar] = ACTIONS(4682), [sym_dchar] = ACTIONS(4682), [sym_float] = ACTIONS(4682), [sym_double] = ACTIONS(4682), [sym_real] = ACTIONS(4682), [sym_ifloat] = ACTIONS(4682), [sym_idouble] = ACTIONS(4682), [sym_ireal] = ACTIONS(4682), [sym_cfloat] = ACTIONS(4682), [sym_cdouble] = ACTIONS(4682), [sym_creal] = ACTIONS(4682), [sym_size_t] = ACTIONS(4682), [sym_ptrdiff_t] = ACTIONS(4682), [sym_string] = ACTIONS(4682), [sym_cstring] = ACTIONS(4682), [sym_dstring] = ACTIONS(4682), [sym_wstring] = ACTIONS(4682), [sym_noreturn] = ACTIONS(4682), [sym_true] = ACTIONS(4682), [sym_false] = ACTIONS(4682), [sym_null] = ACTIONS(4682), [sym_super] = ACTIONS(4682), [sym_this] = ACTIONS(4682), [sym_abstract] = ACTIONS(4682), [sym_alias] = ACTIONS(4682), [sym_align] = ACTIONS(4682), [sym_asm] = ACTIONS(4682), [sym_assert] = ACTIONS(4682), [sym_auto] = ACTIONS(4682), [sym_break] = ACTIONS(4682), [sym_case] = ACTIONS(4682), [sym_cast] = ACTIONS(4682), [sym_catch] = ACTIONS(4682), [sym_class] = ACTIONS(4682), [sym_const] = ACTIONS(4682), [sym_continue] = ACTIONS(4682), [sym_debug] = ACTIONS(4682), [sym_default] = ACTIONS(4682), [sym_delegate] = ACTIONS(4682), [sym_delete] = ACTIONS(4682), [sym_deprecated] = ACTIONS(4682), [sym_do] = ACTIONS(4682), [sym_else] = ACTIONS(4682), [sym_enum] = ACTIONS(4682), [sym_export] = ACTIONS(4682), [sym_extern] = ACTIONS(4682), [sym_final] = ACTIONS(4682), [sym_finally] = ACTIONS(4682), [sym_for] = ACTIONS(4682), [sym_foreach] = ACTIONS(4682), [sym_foreach_reverse] = ACTIONS(4682), [sym_function] = ACTIONS(4682), [sym_goto] = ACTIONS(4682), [sym_if] = ACTIONS(4682), [sym_immutable] = ACTIONS(4682), [sym_import] = ACTIONS(4682), [sym_in] = ACTIONS(4682), [sym_inout] = ACTIONS(4682), [sym_interface] = ACTIONS(4682), [sym_invariant] = ACTIONS(4682), [sym_is] = ACTIONS(4682), [sym_mixin] = ACTIONS(4682), [sym_new] = ACTIONS(4682), [sym_nothrow] = ACTIONS(4682), [sym_out] = ACTIONS(4682), [sym_override] = ACTIONS(4682), [sym_package] = ACTIONS(4682), [sym_pragma] = ACTIONS(4682), [sym_private] = ACTIONS(4682), [sym_protected] = ACTIONS(4682), [sym_public] = ACTIONS(4682), [sym_pure] = ACTIONS(4682), [sym_ref] = ACTIONS(4682), [sym_return] = ACTIONS(4682), [sym_scope] = ACTIONS(4682), [sym_shared] = ACTIONS(4682), [sym_static] = ACTIONS(4682), [sym_struct] = ACTIONS(4682), [sym_switch] = ACTIONS(4682), [sym_synchronized] = ACTIONS(4682), [sym_template] = ACTIONS(4682), [sym_throw] = ACTIONS(4682), [sym_try] = ACTIONS(4682), [sym_typeid] = ACTIONS(4682), [sym_typeof] = ACTIONS(4682), [sym_union] = ACTIONS(4682), [sym_unittest] = ACTIONS(4682), [sym_version] = ACTIONS(4682), [sym_while] = ACTIONS(4682), [sym_with] = ACTIONS(4682), [sym_gshared] = ACTIONS(4682), [sym_traits] = ACTIONS(4682), [sym_vector] = ACTIONS(4682), [sym_void] = ACTIONS(4682), [anon_sym_BQUOTE] = ACTIONS(4684), [anon_sym_r_DQUOTE] = ACTIONS(4684), [anon_sym_x_DQUOTE] = ACTIONS(4684), [anon_sym_DQUOTE] = ACTIONS(4684), [anon_sym_i_BQUOTE] = ACTIONS(4684), [anon_sym_i_DQUOTE] = ACTIONS(4684), [anon_sym_iq_LBRACE] = ACTIONS(4684), [aux_sym_char_literal_token1] = ACTIONS(4684), [anon_sym_SQUOTE] = ACTIONS(4682), [anon_sym___DATE__] = ACTIONS(4682), [anon_sym___FILE__] = ACTIONS(4682), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4682), [anon_sym___FUNCTION__] = ACTIONS(4682), [anon_sym___LINE__] = ACTIONS(4682), [anon_sym___MODULE__] = ACTIONS(4682), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4682), [anon_sym___TIME__] = ACTIONS(4682), [anon_sym___TIMESTAMP__] = ACTIONS(4682), [anon_sym___VENDOR__] = ACTIONS(4682), [anon_sym___VERSION__] = ACTIONS(4682), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4684), [sym_float_literal] = ACTIONS(4684), [sym__string] = ACTIONS(4684), }, [1452] = { [sym_identifier] = ACTIONS(4686), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4688), [anon_sym_RBRACE] = ACTIONS(4688), [anon_sym_LBRACE] = ACTIONS(4688), [anon_sym_DOT] = ACTIONS(4688), [anon_sym_AMP] = ACTIONS(4688), [anon_sym_DASH] = ACTIONS(4686), [anon_sym_DASH_DASH] = ACTIONS(4688), [anon_sym_PLUS] = ACTIONS(4686), [anon_sym_PLUS_PLUS] = ACTIONS(4688), [anon_sym_BANG] = ACTIONS(4688), [anon_sym_LPAREN] = ACTIONS(4688), [anon_sym_RPAREN] = ACTIONS(4688), [anon_sym_LBRACK] = ACTIONS(4688), [anon_sym_SEMI] = ACTIONS(4688), [anon_sym_DOLLAR] = ACTIONS(4688), [anon_sym_STAR] = ACTIONS(4688), [anon_sym_TILDE] = ACTIONS(4688), [anon_sym_AT] = ACTIONS(4688), [sym_bool] = ACTIONS(4686), [sym_byte] = ACTIONS(4686), [sym_ubyte] = ACTIONS(4686), [sym_char] = ACTIONS(4686), [sym_short] = ACTIONS(4686), [sym_ushort] = ACTIONS(4686), [sym_int] = ACTIONS(4686), [sym_uint] = ACTIONS(4686), [sym_long] = ACTIONS(4686), [sym_ulong] = ACTIONS(4686), [sym_cent] = ACTIONS(4686), [sym_ucent] = ACTIONS(4686), [sym_wchar] = ACTIONS(4686), [sym_dchar] = ACTIONS(4686), [sym_float] = ACTIONS(4686), [sym_double] = ACTIONS(4686), [sym_real] = ACTIONS(4686), [sym_ifloat] = ACTIONS(4686), [sym_idouble] = ACTIONS(4686), [sym_ireal] = ACTIONS(4686), [sym_cfloat] = ACTIONS(4686), [sym_cdouble] = ACTIONS(4686), [sym_creal] = ACTIONS(4686), [sym_size_t] = ACTIONS(4686), [sym_ptrdiff_t] = ACTIONS(4686), [sym_string] = ACTIONS(4686), [sym_cstring] = ACTIONS(4686), [sym_dstring] = ACTIONS(4686), [sym_wstring] = ACTIONS(4686), [sym_noreturn] = ACTIONS(4686), [sym_true] = ACTIONS(4686), [sym_false] = ACTIONS(4686), [sym_null] = ACTIONS(4686), [sym_super] = ACTIONS(4686), [sym_this] = ACTIONS(4686), [sym_abstract] = ACTIONS(4686), [sym_alias] = ACTIONS(4686), [sym_align] = ACTIONS(4686), [sym_asm] = ACTIONS(4686), [sym_assert] = ACTIONS(4686), [sym_auto] = ACTIONS(4686), [sym_break] = ACTIONS(4686), [sym_case] = ACTIONS(4686), [sym_cast] = ACTIONS(4686), [sym_catch] = ACTIONS(4686), [sym_class] = ACTIONS(4686), [sym_const] = ACTIONS(4686), [sym_continue] = ACTIONS(4686), [sym_debug] = ACTIONS(4686), [sym_default] = ACTIONS(4686), [sym_delegate] = ACTIONS(4686), [sym_delete] = ACTIONS(4686), [sym_deprecated] = ACTIONS(4686), [sym_do] = ACTIONS(4686), [sym_else] = ACTIONS(4686), [sym_enum] = ACTIONS(4686), [sym_export] = ACTIONS(4686), [sym_extern] = ACTIONS(4686), [sym_final] = ACTIONS(4686), [sym_finally] = ACTIONS(4686), [sym_for] = ACTIONS(4686), [sym_foreach] = ACTIONS(4686), [sym_foreach_reverse] = ACTIONS(4686), [sym_function] = ACTIONS(4686), [sym_goto] = ACTIONS(4686), [sym_if] = ACTIONS(4686), [sym_immutable] = ACTIONS(4686), [sym_import] = ACTIONS(4686), [sym_in] = ACTIONS(4686), [sym_inout] = ACTIONS(4686), [sym_interface] = ACTIONS(4686), [sym_invariant] = ACTIONS(4686), [sym_is] = ACTIONS(4686), [sym_mixin] = ACTIONS(4686), [sym_new] = ACTIONS(4686), [sym_nothrow] = ACTIONS(4686), [sym_out] = ACTIONS(4686), [sym_override] = ACTIONS(4686), [sym_package] = ACTIONS(4686), [sym_pragma] = ACTIONS(4686), [sym_private] = ACTIONS(4686), [sym_protected] = ACTIONS(4686), [sym_public] = ACTIONS(4686), [sym_pure] = ACTIONS(4686), [sym_ref] = ACTIONS(4686), [sym_return] = ACTIONS(4686), [sym_scope] = ACTIONS(4686), [sym_shared] = ACTIONS(4686), [sym_static] = ACTIONS(4686), [sym_struct] = ACTIONS(4686), [sym_switch] = ACTIONS(4686), [sym_synchronized] = ACTIONS(4686), [sym_template] = ACTIONS(4686), [sym_throw] = ACTIONS(4686), [sym_try] = ACTIONS(4686), [sym_typeid] = ACTIONS(4686), [sym_typeof] = ACTIONS(4686), [sym_union] = ACTIONS(4686), [sym_unittest] = ACTIONS(4686), [sym_version] = ACTIONS(4686), [sym_while] = ACTIONS(4686), [sym_with] = ACTIONS(4686), [sym_gshared] = ACTIONS(4686), [sym_traits] = ACTIONS(4686), [sym_vector] = ACTIONS(4686), [sym_void] = ACTIONS(4686), [anon_sym_BQUOTE] = ACTIONS(4688), [anon_sym_r_DQUOTE] = ACTIONS(4688), [anon_sym_x_DQUOTE] = ACTIONS(4688), [anon_sym_DQUOTE] = ACTIONS(4688), [anon_sym_i_BQUOTE] = ACTIONS(4688), [anon_sym_i_DQUOTE] = ACTIONS(4688), [anon_sym_iq_LBRACE] = ACTIONS(4688), [aux_sym_char_literal_token1] = ACTIONS(4688), [anon_sym_SQUOTE] = ACTIONS(4686), [anon_sym___DATE__] = ACTIONS(4686), [anon_sym___FILE__] = ACTIONS(4686), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4686), [anon_sym___FUNCTION__] = ACTIONS(4686), [anon_sym___LINE__] = ACTIONS(4686), [anon_sym___MODULE__] = ACTIONS(4686), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4686), [anon_sym___TIME__] = ACTIONS(4686), [anon_sym___TIMESTAMP__] = ACTIONS(4686), [anon_sym___VENDOR__] = ACTIONS(4686), [anon_sym___VERSION__] = ACTIONS(4686), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4688), [sym_float_literal] = ACTIONS(4688), [sym__string] = ACTIONS(4688), }, [1453] = { [sym_identifier] = ACTIONS(4690), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4692), [anon_sym_RBRACE] = ACTIONS(4692), [anon_sym_LBRACE] = ACTIONS(4692), [anon_sym_DOT] = ACTIONS(4692), [anon_sym_AMP] = ACTIONS(4692), [anon_sym_DASH] = ACTIONS(4690), [anon_sym_DASH_DASH] = ACTIONS(4692), [anon_sym_PLUS] = ACTIONS(4690), [anon_sym_PLUS_PLUS] = ACTIONS(4692), [anon_sym_BANG] = ACTIONS(4692), [anon_sym_LPAREN] = ACTIONS(4692), [anon_sym_RPAREN] = ACTIONS(4692), [anon_sym_LBRACK] = ACTIONS(4692), [anon_sym_SEMI] = ACTIONS(4692), [anon_sym_DOLLAR] = ACTIONS(4692), [anon_sym_STAR] = ACTIONS(4692), [anon_sym_TILDE] = ACTIONS(4692), [anon_sym_AT] = ACTIONS(4692), [sym_bool] = ACTIONS(4690), [sym_byte] = ACTIONS(4690), [sym_ubyte] = ACTIONS(4690), [sym_char] = ACTIONS(4690), [sym_short] = ACTIONS(4690), [sym_ushort] = ACTIONS(4690), [sym_int] = ACTIONS(4690), [sym_uint] = ACTIONS(4690), [sym_long] = ACTIONS(4690), [sym_ulong] = ACTIONS(4690), [sym_cent] = ACTIONS(4690), [sym_ucent] = ACTIONS(4690), [sym_wchar] = ACTIONS(4690), [sym_dchar] = ACTIONS(4690), [sym_float] = ACTIONS(4690), [sym_double] = ACTIONS(4690), [sym_real] = ACTIONS(4690), [sym_ifloat] = ACTIONS(4690), [sym_idouble] = ACTIONS(4690), [sym_ireal] = ACTIONS(4690), [sym_cfloat] = ACTIONS(4690), [sym_cdouble] = ACTIONS(4690), [sym_creal] = ACTIONS(4690), [sym_size_t] = ACTIONS(4690), [sym_ptrdiff_t] = ACTIONS(4690), [sym_string] = ACTIONS(4690), [sym_cstring] = ACTIONS(4690), [sym_dstring] = ACTIONS(4690), [sym_wstring] = ACTIONS(4690), [sym_noreturn] = ACTIONS(4690), [sym_true] = ACTIONS(4690), [sym_false] = ACTIONS(4690), [sym_null] = ACTIONS(4690), [sym_super] = ACTIONS(4690), [sym_this] = ACTIONS(4690), [sym_abstract] = ACTIONS(4690), [sym_alias] = ACTIONS(4690), [sym_align] = ACTIONS(4690), [sym_asm] = ACTIONS(4690), [sym_assert] = ACTIONS(4690), [sym_auto] = ACTIONS(4690), [sym_break] = ACTIONS(4690), [sym_case] = ACTIONS(4690), [sym_cast] = ACTIONS(4690), [sym_catch] = ACTIONS(4690), [sym_class] = ACTIONS(4690), [sym_const] = ACTIONS(4690), [sym_continue] = ACTIONS(4690), [sym_debug] = ACTIONS(4690), [sym_default] = ACTIONS(4690), [sym_delegate] = ACTIONS(4690), [sym_delete] = ACTIONS(4690), [sym_deprecated] = ACTIONS(4690), [sym_do] = ACTIONS(4690), [sym_else] = ACTIONS(4690), [sym_enum] = ACTIONS(4690), [sym_export] = ACTIONS(4690), [sym_extern] = ACTIONS(4690), [sym_final] = ACTIONS(4690), [sym_finally] = ACTIONS(4690), [sym_for] = ACTIONS(4690), [sym_foreach] = ACTIONS(4690), [sym_foreach_reverse] = ACTIONS(4690), [sym_function] = ACTIONS(4690), [sym_goto] = ACTIONS(4690), [sym_if] = ACTIONS(4690), [sym_immutable] = ACTIONS(4690), [sym_import] = ACTIONS(4690), [sym_in] = ACTIONS(4690), [sym_inout] = ACTIONS(4690), [sym_interface] = ACTIONS(4690), [sym_invariant] = ACTIONS(4690), [sym_is] = ACTIONS(4690), [sym_mixin] = ACTIONS(4690), [sym_new] = ACTIONS(4690), [sym_nothrow] = ACTIONS(4690), [sym_out] = ACTIONS(4690), [sym_override] = ACTIONS(4690), [sym_package] = ACTIONS(4690), [sym_pragma] = ACTIONS(4690), [sym_private] = ACTIONS(4690), [sym_protected] = ACTIONS(4690), [sym_public] = ACTIONS(4690), [sym_pure] = ACTIONS(4690), [sym_ref] = ACTIONS(4690), [sym_return] = ACTIONS(4690), [sym_scope] = ACTIONS(4690), [sym_shared] = ACTIONS(4690), [sym_static] = ACTIONS(4690), [sym_struct] = ACTIONS(4690), [sym_switch] = ACTIONS(4690), [sym_synchronized] = ACTIONS(4690), [sym_template] = ACTIONS(4690), [sym_throw] = ACTIONS(4690), [sym_try] = ACTIONS(4690), [sym_typeid] = ACTIONS(4690), [sym_typeof] = ACTIONS(4690), [sym_union] = ACTIONS(4690), [sym_unittest] = ACTIONS(4690), [sym_version] = ACTIONS(4690), [sym_while] = ACTIONS(4690), [sym_with] = ACTIONS(4690), [sym_gshared] = ACTIONS(4690), [sym_traits] = ACTIONS(4690), [sym_vector] = ACTIONS(4690), [sym_void] = ACTIONS(4690), [anon_sym_BQUOTE] = ACTIONS(4692), [anon_sym_r_DQUOTE] = ACTIONS(4692), [anon_sym_x_DQUOTE] = ACTIONS(4692), [anon_sym_DQUOTE] = ACTIONS(4692), [anon_sym_i_BQUOTE] = ACTIONS(4692), [anon_sym_i_DQUOTE] = ACTIONS(4692), [anon_sym_iq_LBRACE] = ACTIONS(4692), [aux_sym_char_literal_token1] = ACTIONS(4692), [anon_sym_SQUOTE] = ACTIONS(4690), [anon_sym___DATE__] = ACTIONS(4690), [anon_sym___FILE__] = ACTIONS(4690), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4690), [anon_sym___FUNCTION__] = ACTIONS(4690), [anon_sym___LINE__] = ACTIONS(4690), [anon_sym___MODULE__] = ACTIONS(4690), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4690), [anon_sym___TIME__] = ACTIONS(4690), [anon_sym___TIMESTAMP__] = ACTIONS(4690), [anon_sym___VENDOR__] = ACTIONS(4690), [anon_sym___VERSION__] = ACTIONS(4690), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4692), [sym_float_literal] = ACTIONS(4692), [sym__string] = ACTIONS(4692), }, [1454] = { [sym_identifier] = ACTIONS(4694), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4696), [anon_sym_RBRACE] = ACTIONS(4696), [anon_sym_LBRACE] = ACTIONS(4696), [anon_sym_DOT] = ACTIONS(4696), [anon_sym_AMP] = ACTIONS(4696), [anon_sym_DASH] = ACTIONS(4694), [anon_sym_DASH_DASH] = ACTIONS(4696), [anon_sym_PLUS] = ACTIONS(4694), [anon_sym_PLUS_PLUS] = ACTIONS(4696), [anon_sym_BANG] = ACTIONS(4696), [anon_sym_LPAREN] = ACTIONS(4696), [anon_sym_RPAREN] = ACTIONS(4696), [anon_sym_LBRACK] = ACTIONS(4696), [anon_sym_SEMI] = ACTIONS(4696), [anon_sym_DOLLAR] = ACTIONS(4696), [anon_sym_STAR] = ACTIONS(4696), [anon_sym_TILDE] = ACTIONS(4696), [anon_sym_AT] = ACTIONS(4696), [sym_bool] = ACTIONS(4694), [sym_byte] = ACTIONS(4694), [sym_ubyte] = ACTIONS(4694), [sym_char] = ACTIONS(4694), [sym_short] = ACTIONS(4694), [sym_ushort] = ACTIONS(4694), [sym_int] = ACTIONS(4694), [sym_uint] = ACTIONS(4694), [sym_long] = ACTIONS(4694), [sym_ulong] = ACTIONS(4694), [sym_cent] = ACTIONS(4694), [sym_ucent] = ACTIONS(4694), [sym_wchar] = ACTIONS(4694), [sym_dchar] = ACTIONS(4694), [sym_float] = ACTIONS(4694), [sym_double] = ACTIONS(4694), [sym_real] = ACTIONS(4694), [sym_ifloat] = ACTIONS(4694), [sym_idouble] = ACTIONS(4694), [sym_ireal] = ACTIONS(4694), [sym_cfloat] = ACTIONS(4694), [sym_cdouble] = ACTIONS(4694), [sym_creal] = ACTIONS(4694), [sym_size_t] = ACTIONS(4694), [sym_ptrdiff_t] = ACTIONS(4694), [sym_string] = ACTIONS(4694), [sym_cstring] = ACTIONS(4694), [sym_dstring] = ACTIONS(4694), [sym_wstring] = ACTIONS(4694), [sym_noreturn] = ACTIONS(4694), [sym_true] = ACTIONS(4694), [sym_false] = ACTIONS(4694), [sym_null] = ACTIONS(4694), [sym_super] = ACTIONS(4694), [sym_this] = ACTIONS(4694), [sym_abstract] = ACTIONS(4694), [sym_alias] = ACTIONS(4694), [sym_align] = ACTIONS(4694), [sym_asm] = ACTIONS(4694), [sym_assert] = ACTIONS(4694), [sym_auto] = ACTIONS(4694), [sym_break] = ACTIONS(4694), [sym_case] = ACTIONS(4694), [sym_cast] = ACTIONS(4694), [sym_catch] = ACTIONS(4694), [sym_class] = ACTIONS(4694), [sym_const] = ACTIONS(4694), [sym_continue] = ACTIONS(4694), [sym_debug] = ACTIONS(4694), [sym_default] = ACTIONS(4694), [sym_delegate] = ACTIONS(4694), [sym_delete] = ACTIONS(4694), [sym_deprecated] = ACTIONS(4694), [sym_do] = ACTIONS(4694), [sym_else] = ACTIONS(4694), [sym_enum] = ACTIONS(4694), [sym_export] = ACTIONS(4694), [sym_extern] = ACTIONS(4694), [sym_final] = ACTIONS(4694), [sym_finally] = ACTIONS(4694), [sym_for] = ACTIONS(4694), [sym_foreach] = ACTIONS(4694), [sym_foreach_reverse] = ACTIONS(4694), [sym_function] = ACTIONS(4694), [sym_goto] = ACTIONS(4694), [sym_if] = ACTIONS(4694), [sym_immutable] = ACTIONS(4694), [sym_import] = ACTIONS(4694), [sym_in] = ACTIONS(4694), [sym_inout] = ACTIONS(4694), [sym_interface] = ACTIONS(4694), [sym_invariant] = ACTIONS(4694), [sym_is] = ACTIONS(4694), [sym_mixin] = ACTIONS(4694), [sym_new] = ACTIONS(4694), [sym_nothrow] = ACTIONS(4694), [sym_out] = ACTIONS(4694), [sym_override] = ACTIONS(4694), [sym_package] = ACTIONS(4694), [sym_pragma] = ACTIONS(4694), [sym_private] = ACTIONS(4694), [sym_protected] = ACTIONS(4694), [sym_public] = ACTIONS(4694), [sym_pure] = ACTIONS(4694), [sym_ref] = ACTIONS(4694), [sym_return] = ACTIONS(4694), [sym_scope] = ACTIONS(4694), [sym_shared] = ACTIONS(4694), [sym_static] = ACTIONS(4694), [sym_struct] = ACTIONS(4694), [sym_switch] = ACTIONS(4694), [sym_synchronized] = ACTIONS(4694), [sym_template] = ACTIONS(4694), [sym_throw] = ACTIONS(4694), [sym_try] = ACTIONS(4694), [sym_typeid] = ACTIONS(4694), [sym_typeof] = ACTIONS(4694), [sym_union] = ACTIONS(4694), [sym_unittest] = ACTIONS(4694), [sym_version] = ACTIONS(4694), [sym_while] = ACTIONS(4694), [sym_with] = ACTIONS(4694), [sym_gshared] = ACTIONS(4694), [sym_traits] = ACTIONS(4694), [sym_vector] = ACTIONS(4694), [sym_void] = ACTIONS(4694), [anon_sym_BQUOTE] = ACTIONS(4696), [anon_sym_r_DQUOTE] = ACTIONS(4696), [anon_sym_x_DQUOTE] = ACTIONS(4696), [anon_sym_DQUOTE] = ACTIONS(4696), [anon_sym_i_BQUOTE] = ACTIONS(4696), [anon_sym_i_DQUOTE] = ACTIONS(4696), [anon_sym_iq_LBRACE] = ACTIONS(4696), [aux_sym_char_literal_token1] = ACTIONS(4696), [anon_sym_SQUOTE] = ACTIONS(4694), [anon_sym___DATE__] = ACTIONS(4694), [anon_sym___FILE__] = ACTIONS(4694), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4694), [anon_sym___FUNCTION__] = ACTIONS(4694), [anon_sym___LINE__] = ACTIONS(4694), [anon_sym___MODULE__] = ACTIONS(4694), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4694), [anon_sym___TIME__] = ACTIONS(4694), [anon_sym___TIMESTAMP__] = ACTIONS(4694), [anon_sym___VENDOR__] = ACTIONS(4694), [anon_sym___VERSION__] = ACTIONS(4694), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4696), [sym_float_literal] = ACTIONS(4696), [sym__string] = ACTIONS(4696), }, [1455] = { [sym_identifier] = ACTIONS(4698), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4701), [anon_sym_RBRACE] = ACTIONS(4701), [anon_sym_LBRACE] = ACTIONS(4701), [anon_sym_DOT] = ACTIONS(4701), [anon_sym_AMP] = ACTIONS(4701), [anon_sym_DASH] = ACTIONS(4698), [anon_sym_DASH_DASH] = ACTIONS(4701), [anon_sym_PLUS] = ACTIONS(4698), [anon_sym_PLUS_PLUS] = ACTIONS(4701), [anon_sym_BANG] = ACTIONS(4701), [anon_sym_LPAREN] = ACTIONS(4701), [anon_sym_RPAREN] = ACTIONS(4701), [anon_sym_LBRACK] = ACTIONS(4701), [anon_sym_SEMI] = ACTIONS(4701), [anon_sym_DOLLAR] = ACTIONS(4701), [anon_sym_STAR] = ACTIONS(4701), [anon_sym_TILDE] = ACTIONS(4701), [anon_sym_AT] = ACTIONS(4701), [sym_bool] = ACTIONS(4698), [sym_byte] = ACTIONS(4698), [sym_ubyte] = ACTIONS(4698), [sym_char] = ACTIONS(4698), [sym_short] = ACTIONS(4698), [sym_ushort] = ACTIONS(4698), [sym_int] = ACTIONS(4698), [sym_uint] = ACTIONS(4698), [sym_long] = ACTIONS(4698), [sym_ulong] = ACTIONS(4698), [sym_cent] = ACTIONS(4698), [sym_ucent] = ACTIONS(4698), [sym_wchar] = ACTIONS(4698), [sym_dchar] = ACTIONS(4698), [sym_float] = ACTIONS(4698), [sym_double] = ACTIONS(4698), [sym_real] = ACTIONS(4698), [sym_ifloat] = ACTIONS(4698), [sym_idouble] = ACTIONS(4698), [sym_ireal] = ACTIONS(4698), [sym_cfloat] = ACTIONS(4698), [sym_cdouble] = ACTIONS(4698), [sym_creal] = ACTIONS(4698), [sym_size_t] = ACTIONS(4698), [sym_ptrdiff_t] = ACTIONS(4698), [sym_string] = ACTIONS(4698), [sym_cstring] = ACTIONS(4698), [sym_dstring] = ACTIONS(4698), [sym_wstring] = ACTIONS(4698), [sym_noreturn] = ACTIONS(4698), [sym_true] = ACTIONS(4698), [sym_false] = ACTIONS(4698), [sym_null] = ACTIONS(4698), [sym_super] = ACTIONS(4698), [sym_this] = ACTIONS(4698), [sym_abstract] = ACTIONS(4698), [sym_alias] = ACTIONS(4698), [sym_align] = ACTIONS(4698), [sym_asm] = ACTIONS(4698), [sym_assert] = ACTIONS(4698), [sym_auto] = ACTIONS(4698), [sym_break] = ACTIONS(4698), [sym_case] = ACTIONS(4698), [sym_cast] = ACTIONS(4698), [sym_catch] = ACTIONS(4698), [sym_class] = ACTIONS(4698), [sym_const] = ACTIONS(4698), [sym_continue] = ACTIONS(4698), [sym_debug] = ACTIONS(4698), [sym_default] = ACTIONS(4698), [sym_delegate] = ACTIONS(4698), [sym_delete] = ACTIONS(4698), [sym_deprecated] = ACTIONS(4698), [sym_do] = ACTIONS(4698), [sym_else] = ACTIONS(4698), [sym_enum] = ACTIONS(4698), [sym_export] = ACTIONS(4698), [sym_extern] = ACTIONS(4698), [sym_final] = ACTIONS(4698), [sym_finally] = ACTIONS(4698), [sym_for] = ACTIONS(4698), [sym_foreach] = ACTIONS(4698), [sym_foreach_reverse] = ACTIONS(4698), [sym_function] = ACTIONS(4698), [sym_goto] = ACTIONS(4698), [sym_if] = ACTIONS(4698), [sym_immutable] = ACTIONS(4698), [sym_import] = ACTIONS(4698), [sym_in] = ACTIONS(4698), [sym_inout] = ACTIONS(4698), [sym_interface] = ACTIONS(4698), [sym_invariant] = ACTIONS(4698), [sym_is] = ACTIONS(4698), [sym_mixin] = ACTIONS(4698), [sym_new] = ACTIONS(4698), [sym_nothrow] = ACTIONS(4698), [sym_out] = ACTIONS(4698), [sym_override] = ACTIONS(4698), [sym_package] = ACTIONS(4698), [sym_pragma] = ACTIONS(4698), [sym_private] = ACTIONS(4698), [sym_protected] = ACTIONS(4698), [sym_public] = ACTIONS(4698), [sym_pure] = ACTIONS(4698), [sym_ref] = ACTIONS(4698), [sym_return] = ACTIONS(4698), [sym_scope] = ACTIONS(4698), [sym_shared] = ACTIONS(4698), [sym_static] = ACTIONS(4698), [sym_struct] = ACTIONS(4698), [sym_switch] = ACTIONS(4698), [sym_synchronized] = ACTIONS(4698), [sym_template] = ACTIONS(4698), [sym_throw] = ACTIONS(4698), [sym_try] = ACTIONS(4698), [sym_typeid] = ACTIONS(4698), [sym_typeof] = ACTIONS(4698), [sym_union] = ACTIONS(4698), [sym_unittest] = ACTIONS(4698), [sym_version] = ACTIONS(4698), [sym_while] = ACTIONS(4698), [sym_with] = ACTIONS(4698), [sym_gshared] = ACTIONS(4698), [sym_traits] = ACTIONS(4698), [sym_vector] = ACTIONS(4698), [sym_void] = ACTIONS(4698), [anon_sym_BQUOTE] = ACTIONS(4701), [anon_sym_r_DQUOTE] = ACTIONS(4701), [anon_sym_x_DQUOTE] = ACTIONS(4701), [anon_sym_DQUOTE] = ACTIONS(4701), [anon_sym_i_BQUOTE] = ACTIONS(4701), [anon_sym_i_DQUOTE] = ACTIONS(4701), [anon_sym_iq_LBRACE] = ACTIONS(4701), [aux_sym_char_literal_token1] = ACTIONS(4701), [anon_sym_SQUOTE] = ACTIONS(4698), [anon_sym___DATE__] = ACTIONS(4698), [anon_sym___FILE__] = ACTIONS(4698), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4698), [anon_sym___FUNCTION__] = ACTIONS(4698), [anon_sym___LINE__] = ACTIONS(4698), [anon_sym___MODULE__] = ACTIONS(4698), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4698), [anon_sym___TIME__] = ACTIONS(4698), [anon_sym___TIMESTAMP__] = ACTIONS(4698), [anon_sym___VENDOR__] = ACTIONS(4698), [anon_sym___VERSION__] = ACTIONS(4698), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4701), [sym_float_literal] = ACTIONS(4701), [sym__string] = ACTIONS(4701), }, [1456] = { [sym_identifier] = ACTIONS(4704), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4706), [anon_sym_RBRACE] = ACTIONS(4706), [anon_sym_LBRACE] = ACTIONS(4706), [anon_sym_DOT] = ACTIONS(4706), [anon_sym_AMP] = ACTIONS(4706), [anon_sym_DASH] = ACTIONS(4704), [anon_sym_DASH_DASH] = ACTIONS(4706), [anon_sym_PLUS] = ACTIONS(4704), [anon_sym_PLUS_PLUS] = ACTIONS(4706), [anon_sym_BANG] = ACTIONS(4706), [anon_sym_LPAREN] = ACTIONS(4706), [anon_sym_RPAREN] = ACTIONS(4706), [anon_sym_LBRACK] = ACTIONS(4706), [anon_sym_SEMI] = ACTIONS(4706), [anon_sym_DOLLAR] = ACTIONS(4706), [anon_sym_STAR] = ACTIONS(4706), [anon_sym_TILDE] = ACTIONS(4706), [anon_sym_AT] = ACTIONS(4706), [sym_bool] = ACTIONS(4704), [sym_byte] = ACTIONS(4704), [sym_ubyte] = ACTIONS(4704), [sym_char] = ACTIONS(4704), [sym_short] = ACTIONS(4704), [sym_ushort] = ACTIONS(4704), [sym_int] = ACTIONS(4704), [sym_uint] = ACTIONS(4704), [sym_long] = ACTIONS(4704), [sym_ulong] = ACTIONS(4704), [sym_cent] = ACTIONS(4704), [sym_ucent] = ACTIONS(4704), [sym_wchar] = ACTIONS(4704), [sym_dchar] = ACTIONS(4704), [sym_float] = ACTIONS(4704), [sym_double] = ACTIONS(4704), [sym_real] = ACTIONS(4704), [sym_ifloat] = ACTIONS(4704), [sym_idouble] = ACTIONS(4704), [sym_ireal] = ACTIONS(4704), [sym_cfloat] = ACTIONS(4704), [sym_cdouble] = ACTIONS(4704), [sym_creal] = ACTIONS(4704), [sym_size_t] = ACTIONS(4704), [sym_ptrdiff_t] = ACTIONS(4704), [sym_string] = ACTIONS(4704), [sym_cstring] = ACTIONS(4704), [sym_dstring] = ACTIONS(4704), [sym_wstring] = ACTIONS(4704), [sym_noreturn] = ACTIONS(4704), [sym_true] = ACTIONS(4704), [sym_false] = ACTIONS(4704), [sym_null] = ACTIONS(4704), [sym_super] = ACTIONS(4704), [sym_this] = ACTIONS(4704), [sym_abstract] = ACTIONS(4704), [sym_alias] = ACTIONS(4704), [sym_align] = ACTIONS(4704), [sym_asm] = ACTIONS(4704), [sym_assert] = ACTIONS(4704), [sym_auto] = ACTIONS(4704), [sym_break] = ACTIONS(4704), [sym_case] = ACTIONS(4704), [sym_cast] = ACTIONS(4704), [sym_catch] = ACTIONS(4704), [sym_class] = ACTIONS(4704), [sym_const] = ACTIONS(4704), [sym_continue] = ACTIONS(4704), [sym_debug] = ACTIONS(4704), [sym_default] = ACTIONS(4704), [sym_delegate] = ACTIONS(4704), [sym_delete] = ACTIONS(4704), [sym_deprecated] = ACTIONS(4704), [sym_do] = ACTIONS(4704), [sym_else] = ACTIONS(4704), [sym_enum] = ACTIONS(4704), [sym_export] = ACTIONS(4704), [sym_extern] = ACTIONS(4704), [sym_final] = ACTIONS(4704), [sym_finally] = ACTIONS(4704), [sym_for] = ACTIONS(4704), [sym_foreach] = ACTIONS(4704), [sym_foreach_reverse] = ACTIONS(4704), [sym_function] = ACTIONS(4704), [sym_goto] = ACTIONS(4704), [sym_if] = ACTIONS(4704), [sym_immutable] = ACTIONS(4704), [sym_import] = ACTIONS(4704), [sym_in] = ACTIONS(4704), [sym_inout] = ACTIONS(4704), [sym_interface] = ACTIONS(4704), [sym_invariant] = ACTIONS(4704), [sym_is] = ACTIONS(4704), [sym_mixin] = ACTIONS(4704), [sym_new] = ACTIONS(4704), [sym_nothrow] = ACTIONS(4704), [sym_out] = ACTIONS(4704), [sym_override] = ACTIONS(4704), [sym_package] = ACTIONS(4704), [sym_pragma] = ACTIONS(4704), [sym_private] = ACTIONS(4704), [sym_protected] = ACTIONS(4704), [sym_public] = ACTIONS(4704), [sym_pure] = ACTIONS(4704), [sym_ref] = ACTIONS(4704), [sym_return] = ACTIONS(4704), [sym_scope] = ACTIONS(4704), [sym_shared] = ACTIONS(4704), [sym_static] = ACTIONS(4704), [sym_struct] = ACTIONS(4704), [sym_switch] = ACTIONS(4704), [sym_synchronized] = ACTIONS(4704), [sym_template] = ACTIONS(4704), [sym_throw] = ACTIONS(4704), [sym_try] = ACTIONS(4704), [sym_typeid] = ACTIONS(4704), [sym_typeof] = ACTIONS(4704), [sym_union] = ACTIONS(4704), [sym_unittest] = ACTIONS(4704), [sym_version] = ACTIONS(4704), [sym_while] = ACTIONS(4704), [sym_with] = ACTIONS(4704), [sym_gshared] = ACTIONS(4704), [sym_traits] = ACTIONS(4704), [sym_vector] = ACTIONS(4704), [sym_void] = ACTIONS(4704), [anon_sym_BQUOTE] = ACTIONS(4706), [anon_sym_r_DQUOTE] = ACTIONS(4706), [anon_sym_x_DQUOTE] = ACTIONS(4706), [anon_sym_DQUOTE] = ACTIONS(4706), [anon_sym_i_BQUOTE] = ACTIONS(4706), [anon_sym_i_DQUOTE] = ACTIONS(4706), [anon_sym_iq_LBRACE] = ACTIONS(4706), [aux_sym_char_literal_token1] = ACTIONS(4706), [anon_sym_SQUOTE] = ACTIONS(4704), [anon_sym___DATE__] = ACTIONS(4704), [anon_sym___FILE__] = ACTIONS(4704), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4704), [anon_sym___FUNCTION__] = ACTIONS(4704), [anon_sym___LINE__] = ACTIONS(4704), [anon_sym___MODULE__] = ACTIONS(4704), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4704), [anon_sym___TIME__] = ACTIONS(4704), [anon_sym___TIMESTAMP__] = ACTIONS(4704), [anon_sym___VENDOR__] = ACTIONS(4704), [anon_sym___VERSION__] = ACTIONS(4704), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4706), [sym_float_literal] = ACTIONS(4706), [sym__string] = ACTIONS(4706), }, [1457] = { [sym_identifier] = ACTIONS(4708), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4710), [anon_sym_RBRACE] = ACTIONS(4710), [anon_sym_LBRACE] = ACTIONS(4710), [anon_sym_DOT] = ACTIONS(4710), [anon_sym_AMP] = ACTIONS(4710), [anon_sym_DASH] = ACTIONS(4708), [anon_sym_DASH_DASH] = ACTIONS(4710), [anon_sym_PLUS] = ACTIONS(4708), [anon_sym_PLUS_PLUS] = ACTIONS(4710), [anon_sym_BANG] = ACTIONS(4710), [anon_sym_LPAREN] = ACTIONS(4710), [anon_sym_RPAREN] = ACTIONS(4710), [anon_sym_LBRACK] = ACTIONS(4710), [anon_sym_SEMI] = ACTIONS(4710), [anon_sym_DOLLAR] = ACTIONS(4710), [anon_sym_STAR] = ACTIONS(4710), [anon_sym_TILDE] = ACTIONS(4710), [anon_sym_AT] = ACTIONS(4710), [sym_bool] = ACTIONS(4708), [sym_byte] = ACTIONS(4708), [sym_ubyte] = ACTIONS(4708), [sym_char] = ACTIONS(4708), [sym_short] = ACTIONS(4708), [sym_ushort] = ACTIONS(4708), [sym_int] = ACTIONS(4708), [sym_uint] = ACTIONS(4708), [sym_long] = ACTIONS(4708), [sym_ulong] = ACTIONS(4708), [sym_cent] = ACTIONS(4708), [sym_ucent] = ACTIONS(4708), [sym_wchar] = ACTIONS(4708), [sym_dchar] = ACTIONS(4708), [sym_float] = ACTIONS(4708), [sym_double] = ACTIONS(4708), [sym_real] = ACTIONS(4708), [sym_ifloat] = ACTIONS(4708), [sym_idouble] = ACTIONS(4708), [sym_ireal] = ACTIONS(4708), [sym_cfloat] = ACTIONS(4708), [sym_cdouble] = ACTIONS(4708), [sym_creal] = ACTIONS(4708), [sym_size_t] = ACTIONS(4708), [sym_ptrdiff_t] = ACTIONS(4708), [sym_string] = ACTIONS(4708), [sym_cstring] = ACTIONS(4708), [sym_dstring] = ACTIONS(4708), [sym_wstring] = ACTIONS(4708), [sym_noreturn] = ACTIONS(4708), [sym_true] = ACTIONS(4708), [sym_false] = ACTIONS(4708), [sym_null] = ACTIONS(4708), [sym_super] = ACTIONS(4708), [sym_this] = ACTIONS(4708), [sym_abstract] = ACTIONS(4708), [sym_alias] = ACTIONS(4708), [sym_align] = ACTIONS(4708), [sym_asm] = ACTIONS(4708), [sym_assert] = ACTIONS(4708), [sym_auto] = ACTIONS(4708), [sym_break] = ACTIONS(4708), [sym_case] = ACTIONS(4708), [sym_cast] = ACTIONS(4708), [sym_catch] = ACTIONS(4708), [sym_class] = ACTIONS(4708), [sym_const] = ACTIONS(4708), [sym_continue] = ACTIONS(4708), [sym_debug] = ACTIONS(4708), [sym_default] = ACTIONS(4708), [sym_delegate] = ACTIONS(4708), [sym_delete] = ACTIONS(4708), [sym_deprecated] = ACTIONS(4708), [sym_do] = ACTIONS(4708), [sym_else] = ACTIONS(4708), [sym_enum] = ACTIONS(4708), [sym_export] = ACTIONS(4708), [sym_extern] = ACTIONS(4708), [sym_final] = ACTIONS(4708), [sym_finally] = ACTIONS(4708), [sym_for] = ACTIONS(4708), [sym_foreach] = ACTIONS(4708), [sym_foreach_reverse] = ACTIONS(4708), [sym_function] = ACTIONS(4708), [sym_goto] = ACTIONS(4708), [sym_if] = ACTIONS(4708), [sym_immutable] = ACTIONS(4708), [sym_import] = ACTIONS(4708), [sym_in] = ACTIONS(4708), [sym_inout] = ACTIONS(4708), [sym_interface] = ACTIONS(4708), [sym_invariant] = ACTIONS(4708), [sym_is] = ACTIONS(4708), [sym_mixin] = ACTIONS(4708), [sym_new] = ACTIONS(4708), [sym_nothrow] = ACTIONS(4708), [sym_out] = ACTIONS(4708), [sym_override] = ACTIONS(4708), [sym_package] = ACTIONS(4708), [sym_pragma] = ACTIONS(4708), [sym_private] = ACTIONS(4708), [sym_protected] = ACTIONS(4708), [sym_public] = ACTIONS(4708), [sym_pure] = ACTIONS(4708), [sym_ref] = ACTIONS(4708), [sym_return] = ACTIONS(4708), [sym_scope] = ACTIONS(4708), [sym_shared] = ACTIONS(4708), [sym_static] = ACTIONS(4708), [sym_struct] = ACTIONS(4708), [sym_switch] = ACTIONS(4708), [sym_synchronized] = ACTIONS(4708), [sym_template] = ACTIONS(4708), [sym_throw] = ACTIONS(4708), [sym_try] = ACTIONS(4708), [sym_typeid] = ACTIONS(4708), [sym_typeof] = ACTIONS(4708), [sym_union] = ACTIONS(4708), [sym_unittest] = ACTIONS(4708), [sym_version] = ACTIONS(4708), [sym_while] = ACTIONS(4708), [sym_with] = ACTIONS(4708), [sym_gshared] = ACTIONS(4708), [sym_traits] = ACTIONS(4708), [sym_vector] = ACTIONS(4708), [sym_void] = ACTIONS(4708), [anon_sym_BQUOTE] = ACTIONS(4710), [anon_sym_r_DQUOTE] = ACTIONS(4710), [anon_sym_x_DQUOTE] = ACTIONS(4710), [anon_sym_DQUOTE] = ACTIONS(4710), [anon_sym_i_BQUOTE] = ACTIONS(4710), [anon_sym_i_DQUOTE] = ACTIONS(4710), [anon_sym_iq_LBRACE] = ACTIONS(4710), [aux_sym_char_literal_token1] = ACTIONS(4710), [anon_sym_SQUOTE] = ACTIONS(4708), [anon_sym___DATE__] = ACTIONS(4708), [anon_sym___FILE__] = ACTIONS(4708), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4708), [anon_sym___FUNCTION__] = ACTIONS(4708), [anon_sym___LINE__] = ACTIONS(4708), [anon_sym___MODULE__] = ACTIONS(4708), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4708), [anon_sym___TIME__] = ACTIONS(4708), [anon_sym___TIMESTAMP__] = ACTIONS(4708), [anon_sym___VENDOR__] = ACTIONS(4708), [anon_sym___VERSION__] = ACTIONS(4708), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4710), [sym_float_literal] = ACTIONS(4710), [sym__string] = ACTIONS(4710), }, [1458] = { [sym_identifier] = ACTIONS(4712), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4714), [anon_sym_RBRACE] = ACTIONS(4714), [anon_sym_LBRACE] = ACTIONS(4714), [anon_sym_DOT] = ACTIONS(4714), [anon_sym_AMP] = ACTIONS(4714), [anon_sym_DASH] = ACTIONS(4712), [anon_sym_DASH_DASH] = ACTIONS(4714), [anon_sym_PLUS] = ACTIONS(4712), [anon_sym_PLUS_PLUS] = ACTIONS(4714), [anon_sym_BANG] = ACTIONS(4714), [anon_sym_LPAREN] = ACTIONS(4714), [anon_sym_RPAREN] = ACTIONS(4714), [anon_sym_LBRACK] = ACTIONS(4714), [anon_sym_SEMI] = ACTIONS(4714), [anon_sym_DOLLAR] = ACTIONS(4714), [anon_sym_STAR] = ACTIONS(4714), [anon_sym_TILDE] = ACTIONS(4714), [anon_sym_AT] = ACTIONS(4714), [sym_bool] = ACTIONS(4712), [sym_byte] = ACTIONS(4712), [sym_ubyte] = ACTIONS(4712), [sym_char] = ACTIONS(4712), [sym_short] = ACTIONS(4712), [sym_ushort] = ACTIONS(4712), [sym_int] = ACTIONS(4712), [sym_uint] = ACTIONS(4712), [sym_long] = ACTIONS(4712), [sym_ulong] = ACTIONS(4712), [sym_cent] = ACTIONS(4712), [sym_ucent] = ACTIONS(4712), [sym_wchar] = ACTIONS(4712), [sym_dchar] = ACTIONS(4712), [sym_float] = ACTIONS(4712), [sym_double] = ACTIONS(4712), [sym_real] = ACTIONS(4712), [sym_ifloat] = ACTIONS(4712), [sym_idouble] = ACTIONS(4712), [sym_ireal] = ACTIONS(4712), [sym_cfloat] = ACTIONS(4712), [sym_cdouble] = ACTIONS(4712), [sym_creal] = ACTIONS(4712), [sym_size_t] = ACTIONS(4712), [sym_ptrdiff_t] = ACTIONS(4712), [sym_string] = ACTIONS(4712), [sym_cstring] = ACTIONS(4712), [sym_dstring] = ACTIONS(4712), [sym_wstring] = ACTIONS(4712), [sym_noreturn] = ACTIONS(4712), [sym_true] = ACTIONS(4712), [sym_false] = ACTIONS(4712), [sym_null] = ACTIONS(4712), [sym_super] = ACTIONS(4712), [sym_this] = ACTIONS(4712), [sym_abstract] = ACTIONS(4712), [sym_alias] = ACTIONS(4712), [sym_align] = ACTIONS(4712), [sym_asm] = ACTIONS(4712), [sym_assert] = ACTIONS(4712), [sym_auto] = ACTIONS(4712), [sym_break] = ACTIONS(4712), [sym_case] = ACTIONS(4712), [sym_cast] = ACTIONS(4712), [sym_catch] = ACTIONS(4712), [sym_class] = ACTIONS(4712), [sym_const] = ACTIONS(4712), [sym_continue] = ACTIONS(4712), [sym_debug] = ACTIONS(4712), [sym_default] = ACTIONS(4712), [sym_delegate] = ACTIONS(4712), [sym_delete] = ACTIONS(4712), [sym_deprecated] = ACTIONS(4712), [sym_do] = ACTIONS(4712), [sym_else] = ACTIONS(4712), [sym_enum] = ACTIONS(4712), [sym_export] = ACTIONS(4712), [sym_extern] = ACTIONS(4712), [sym_final] = ACTIONS(4712), [sym_finally] = ACTIONS(4712), [sym_for] = ACTIONS(4712), [sym_foreach] = ACTIONS(4712), [sym_foreach_reverse] = ACTIONS(4712), [sym_function] = ACTIONS(4712), [sym_goto] = ACTIONS(4712), [sym_if] = ACTIONS(4712), [sym_immutable] = ACTIONS(4712), [sym_import] = ACTIONS(4712), [sym_in] = ACTIONS(4712), [sym_inout] = ACTIONS(4712), [sym_interface] = ACTIONS(4712), [sym_invariant] = ACTIONS(4712), [sym_is] = ACTIONS(4712), [sym_mixin] = ACTIONS(4712), [sym_new] = ACTIONS(4712), [sym_nothrow] = ACTIONS(4712), [sym_out] = ACTIONS(4712), [sym_override] = ACTIONS(4712), [sym_package] = ACTIONS(4712), [sym_pragma] = ACTIONS(4712), [sym_private] = ACTIONS(4712), [sym_protected] = ACTIONS(4712), [sym_public] = ACTIONS(4712), [sym_pure] = ACTIONS(4712), [sym_ref] = ACTIONS(4712), [sym_return] = ACTIONS(4712), [sym_scope] = ACTIONS(4712), [sym_shared] = ACTIONS(4712), [sym_static] = ACTIONS(4712), [sym_struct] = ACTIONS(4712), [sym_switch] = ACTIONS(4712), [sym_synchronized] = ACTIONS(4712), [sym_template] = ACTIONS(4712), [sym_throw] = ACTIONS(4712), [sym_try] = ACTIONS(4712), [sym_typeid] = ACTIONS(4712), [sym_typeof] = ACTIONS(4712), [sym_union] = ACTIONS(4712), [sym_unittest] = ACTIONS(4712), [sym_version] = ACTIONS(4712), [sym_while] = ACTIONS(4712), [sym_with] = ACTIONS(4712), [sym_gshared] = ACTIONS(4712), [sym_traits] = ACTIONS(4712), [sym_vector] = ACTIONS(4712), [sym_void] = ACTIONS(4712), [anon_sym_BQUOTE] = ACTIONS(4714), [anon_sym_r_DQUOTE] = ACTIONS(4714), [anon_sym_x_DQUOTE] = ACTIONS(4714), [anon_sym_DQUOTE] = ACTIONS(4714), [anon_sym_i_BQUOTE] = ACTIONS(4714), [anon_sym_i_DQUOTE] = ACTIONS(4714), [anon_sym_iq_LBRACE] = ACTIONS(4714), [aux_sym_char_literal_token1] = ACTIONS(4714), [anon_sym_SQUOTE] = ACTIONS(4712), [anon_sym___DATE__] = ACTIONS(4712), [anon_sym___FILE__] = ACTIONS(4712), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4712), [anon_sym___FUNCTION__] = ACTIONS(4712), [anon_sym___LINE__] = ACTIONS(4712), [anon_sym___MODULE__] = ACTIONS(4712), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4712), [anon_sym___TIME__] = ACTIONS(4712), [anon_sym___TIMESTAMP__] = ACTIONS(4712), [anon_sym___VENDOR__] = ACTIONS(4712), [anon_sym___VERSION__] = ACTIONS(4712), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4714), [sym_float_literal] = ACTIONS(4714), [sym__string] = ACTIONS(4714), }, [1459] = { [sym_identifier] = ACTIONS(4716), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4718), [anon_sym_RBRACE] = ACTIONS(4718), [anon_sym_LBRACE] = ACTIONS(4718), [anon_sym_DOT] = ACTIONS(4718), [anon_sym_AMP] = ACTIONS(4718), [anon_sym_DASH] = ACTIONS(4716), [anon_sym_DASH_DASH] = ACTIONS(4718), [anon_sym_PLUS] = ACTIONS(4716), [anon_sym_PLUS_PLUS] = ACTIONS(4718), [anon_sym_BANG] = ACTIONS(4718), [anon_sym_LPAREN] = ACTIONS(4718), [anon_sym_RPAREN] = ACTIONS(4718), [anon_sym_LBRACK] = ACTIONS(4718), [anon_sym_SEMI] = ACTIONS(4718), [anon_sym_DOLLAR] = ACTIONS(4718), [anon_sym_STAR] = ACTIONS(4718), [anon_sym_TILDE] = ACTIONS(4718), [anon_sym_AT] = ACTIONS(4718), [sym_bool] = ACTIONS(4716), [sym_byte] = ACTIONS(4716), [sym_ubyte] = ACTIONS(4716), [sym_char] = ACTIONS(4716), [sym_short] = ACTIONS(4716), [sym_ushort] = ACTIONS(4716), [sym_int] = ACTIONS(4716), [sym_uint] = ACTIONS(4716), [sym_long] = ACTIONS(4716), [sym_ulong] = ACTIONS(4716), [sym_cent] = ACTIONS(4716), [sym_ucent] = ACTIONS(4716), [sym_wchar] = ACTIONS(4716), [sym_dchar] = ACTIONS(4716), [sym_float] = ACTIONS(4716), [sym_double] = ACTIONS(4716), [sym_real] = ACTIONS(4716), [sym_ifloat] = ACTIONS(4716), [sym_idouble] = ACTIONS(4716), [sym_ireal] = ACTIONS(4716), [sym_cfloat] = ACTIONS(4716), [sym_cdouble] = ACTIONS(4716), [sym_creal] = ACTIONS(4716), [sym_size_t] = ACTIONS(4716), [sym_ptrdiff_t] = ACTIONS(4716), [sym_string] = ACTIONS(4716), [sym_cstring] = ACTIONS(4716), [sym_dstring] = ACTIONS(4716), [sym_wstring] = ACTIONS(4716), [sym_noreturn] = ACTIONS(4716), [sym_true] = ACTIONS(4716), [sym_false] = ACTIONS(4716), [sym_null] = ACTIONS(4716), [sym_super] = ACTIONS(4716), [sym_this] = ACTIONS(4716), [sym_abstract] = ACTIONS(4716), [sym_alias] = ACTIONS(4716), [sym_align] = ACTIONS(4716), [sym_asm] = ACTIONS(4716), [sym_assert] = ACTIONS(4716), [sym_auto] = ACTIONS(4716), [sym_break] = ACTIONS(4716), [sym_case] = ACTIONS(4716), [sym_cast] = ACTIONS(4716), [sym_catch] = ACTIONS(4716), [sym_class] = ACTIONS(4716), [sym_const] = ACTIONS(4716), [sym_continue] = ACTIONS(4716), [sym_debug] = ACTIONS(4716), [sym_default] = ACTIONS(4716), [sym_delegate] = ACTIONS(4716), [sym_delete] = ACTIONS(4716), [sym_deprecated] = ACTIONS(4716), [sym_do] = ACTIONS(4716), [sym_else] = ACTIONS(4716), [sym_enum] = ACTIONS(4716), [sym_export] = ACTIONS(4716), [sym_extern] = ACTIONS(4716), [sym_final] = ACTIONS(4716), [sym_finally] = ACTIONS(4716), [sym_for] = ACTIONS(4716), [sym_foreach] = ACTIONS(4716), [sym_foreach_reverse] = ACTIONS(4716), [sym_function] = ACTIONS(4716), [sym_goto] = ACTIONS(4716), [sym_if] = ACTIONS(4716), [sym_immutable] = ACTIONS(4716), [sym_import] = ACTIONS(4716), [sym_in] = ACTIONS(4716), [sym_inout] = ACTIONS(4716), [sym_interface] = ACTIONS(4716), [sym_invariant] = ACTIONS(4716), [sym_is] = ACTIONS(4716), [sym_mixin] = ACTIONS(4716), [sym_new] = ACTIONS(4716), [sym_nothrow] = ACTIONS(4716), [sym_out] = ACTIONS(4716), [sym_override] = ACTIONS(4716), [sym_package] = ACTIONS(4716), [sym_pragma] = ACTIONS(4716), [sym_private] = ACTIONS(4716), [sym_protected] = ACTIONS(4716), [sym_public] = ACTIONS(4716), [sym_pure] = ACTIONS(4716), [sym_ref] = ACTIONS(4716), [sym_return] = ACTIONS(4716), [sym_scope] = ACTIONS(4716), [sym_shared] = ACTIONS(4716), [sym_static] = ACTIONS(4716), [sym_struct] = ACTIONS(4716), [sym_switch] = ACTIONS(4716), [sym_synchronized] = ACTIONS(4716), [sym_template] = ACTIONS(4716), [sym_throw] = ACTIONS(4716), [sym_try] = ACTIONS(4716), [sym_typeid] = ACTIONS(4716), [sym_typeof] = ACTIONS(4716), [sym_union] = ACTIONS(4716), [sym_unittest] = ACTIONS(4716), [sym_version] = ACTIONS(4716), [sym_while] = ACTIONS(4716), [sym_with] = ACTIONS(4716), [sym_gshared] = ACTIONS(4716), [sym_traits] = ACTIONS(4716), [sym_vector] = ACTIONS(4716), [sym_void] = ACTIONS(4716), [anon_sym_BQUOTE] = ACTIONS(4718), [anon_sym_r_DQUOTE] = ACTIONS(4718), [anon_sym_x_DQUOTE] = ACTIONS(4718), [anon_sym_DQUOTE] = ACTIONS(4718), [anon_sym_i_BQUOTE] = ACTIONS(4718), [anon_sym_i_DQUOTE] = ACTIONS(4718), [anon_sym_iq_LBRACE] = ACTIONS(4718), [aux_sym_char_literal_token1] = ACTIONS(4718), [anon_sym_SQUOTE] = ACTIONS(4716), [anon_sym___DATE__] = ACTIONS(4716), [anon_sym___FILE__] = ACTIONS(4716), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4716), [anon_sym___FUNCTION__] = ACTIONS(4716), [anon_sym___LINE__] = ACTIONS(4716), [anon_sym___MODULE__] = ACTIONS(4716), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4716), [anon_sym___TIME__] = ACTIONS(4716), [anon_sym___TIMESTAMP__] = ACTIONS(4716), [anon_sym___VENDOR__] = ACTIONS(4716), [anon_sym___VERSION__] = ACTIONS(4716), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4718), [sym_float_literal] = ACTIONS(4718), [sym__string] = ACTIONS(4718), }, [1460] = { [sym_identifier] = ACTIONS(4720), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4722), [anon_sym_RBRACE] = ACTIONS(4722), [anon_sym_LBRACE] = ACTIONS(4722), [anon_sym_DOT] = ACTIONS(4722), [anon_sym_AMP] = ACTIONS(4722), [anon_sym_DASH] = ACTIONS(4720), [anon_sym_DASH_DASH] = ACTIONS(4722), [anon_sym_PLUS] = ACTIONS(4720), [anon_sym_PLUS_PLUS] = ACTIONS(4722), [anon_sym_BANG] = ACTIONS(4722), [anon_sym_LPAREN] = ACTIONS(4722), [anon_sym_RPAREN] = ACTIONS(4722), [anon_sym_LBRACK] = ACTIONS(4722), [anon_sym_SEMI] = ACTIONS(4722), [anon_sym_DOLLAR] = ACTIONS(4722), [anon_sym_STAR] = ACTIONS(4722), [anon_sym_TILDE] = ACTIONS(4722), [anon_sym_AT] = ACTIONS(4722), [sym_bool] = ACTIONS(4720), [sym_byte] = ACTIONS(4720), [sym_ubyte] = ACTIONS(4720), [sym_char] = ACTIONS(4720), [sym_short] = ACTIONS(4720), [sym_ushort] = ACTIONS(4720), [sym_int] = ACTIONS(4720), [sym_uint] = ACTIONS(4720), [sym_long] = ACTIONS(4720), [sym_ulong] = ACTIONS(4720), [sym_cent] = ACTIONS(4720), [sym_ucent] = ACTIONS(4720), [sym_wchar] = ACTIONS(4720), [sym_dchar] = ACTIONS(4720), [sym_float] = ACTIONS(4720), [sym_double] = ACTIONS(4720), [sym_real] = ACTIONS(4720), [sym_ifloat] = ACTIONS(4720), [sym_idouble] = ACTIONS(4720), [sym_ireal] = ACTIONS(4720), [sym_cfloat] = ACTIONS(4720), [sym_cdouble] = ACTIONS(4720), [sym_creal] = ACTIONS(4720), [sym_size_t] = ACTIONS(4720), [sym_ptrdiff_t] = ACTIONS(4720), [sym_string] = ACTIONS(4720), [sym_cstring] = ACTIONS(4720), [sym_dstring] = ACTIONS(4720), [sym_wstring] = ACTIONS(4720), [sym_noreturn] = ACTIONS(4720), [sym_true] = ACTIONS(4720), [sym_false] = ACTIONS(4720), [sym_null] = ACTIONS(4720), [sym_super] = ACTIONS(4720), [sym_this] = ACTIONS(4720), [sym_abstract] = ACTIONS(4720), [sym_alias] = ACTIONS(4720), [sym_align] = ACTIONS(4720), [sym_asm] = ACTIONS(4720), [sym_assert] = ACTIONS(4720), [sym_auto] = ACTIONS(4720), [sym_break] = ACTIONS(4720), [sym_case] = ACTIONS(4720), [sym_cast] = ACTIONS(4720), [sym_catch] = ACTIONS(4720), [sym_class] = ACTIONS(4720), [sym_const] = ACTIONS(4720), [sym_continue] = ACTIONS(4720), [sym_debug] = ACTIONS(4720), [sym_default] = ACTIONS(4720), [sym_delegate] = ACTIONS(4720), [sym_delete] = ACTIONS(4720), [sym_deprecated] = ACTIONS(4720), [sym_do] = ACTIONS(4720), [sym_else] = ACTIONS(4720), [sym_enum] = ACTIONS(4720), [sym_export] = ACTIONS(4720), [sym_extern] = ACTIONS(4720), [sym_final] = ACTIONS(4720), [sym_finally] = ACTIONS(4720), [sym_for] = ACTIONS(4720), [sym_foreach] = ACTIONS(4720), [sym_foreach_reverse] = ACTIONS(4720), [sym_function] = ACTIONS(4720), [sym_goto] = ACTIONS(4720), [sym_if] = ACTIONS(4720), [sym_immutable] = ACTIONS(4720), [sym_import] = ACTIONS(4720), [sym_in] = ACTIONS(4720), [sym_inout] = ACTIONS(4720), [sym_interface] = ACTIONS(4720), [sym_invariant] = ACTIONS(4720), [sym_is] = ACTIONS(4720), [sym_mixin] = ACTIONS(4720), [sym_new] = ACTIONS(4720), [sym_nothrow] = ACTIONS(4720), [sym_out] = ACTIONS(4720), [sym_override] = ACTIONS(4720), [sym_package] = ACTIONS(4720), [sym_pragma] = ACTIONS(4720), [sym_private] = ACTIONS(4720), [sym_protected] = ACTIONS(4720), [sym_public] = ACTIONS(4720), [sym_pure] = ACTIONS(4720), [sym_ref] = ACTIONS(4720), [sym_return] = ACTIONS(4720), [sym_scope] = ACTIONS(4720), [sym_shared] = ACTIONS(4720), [sym_static] = ACTIONS(4720), [sym_struct] = ACTIONS(4720), [sym_switch] = ACTIONS(4720), [sym_synchronized] = ACTIONS(4720), [sym_template] = ACTIONS(4720), [sym_throw] = ACTIONS(4720), [sym_try] = ACTIONS(4720), [sym_typeid] = ACTIONS(4720), [sym_typeof] = ACTIONS(4720), [sym_union] = ACTIONS(4720), [sym_unittest] = ACTIONS(4720), [sym_version] = ACTIONS(4720), [sym_while] = ACTIONS(4720), [sym_with] = ACTIONS(4720), [sym_gshared] = ACTIONS(4720), [sym_traits] = ACTIONS(4720), [sym_vector] = ACTIONS(4720), [sym_void] = ACTIONS(4720), [anon_sym_BQUOTE] = ACTIONS(4722), [anon_sym_r_DQUOTE] = ACTIONS(4722), [anon_sym_x_DQUOTE] = ACTIONS(4722), [anon_sym_DQUOTE] = ACTIONS(4722), [anon_sym_i_BQUOTE] = ACTIONS(4722), [anon_sym_i_DQUOTE] = ACTIONS(4722), [anon_sym_iq_LBRACE] = ACTIONS(4722), [aux_sym_char_literal_token1] = ACTIONS(4722), [anon_sym_SQUOTE] = ACTIONS(4720), [anon_sym___DATE__] = ACTIONS(4720), [anon_sym___FILE__] = ACTIONS(4720), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4720), [anon_sym___FUNCTION__] = ACTIONS(4720), [anon_sym___LINE__] = ACTIONS(4720), [anon_sym___MODULE__] = ACTIONS(4720), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4720), [anon_sym___TIME__] = ACTIONS(4720), [anon_sym___TIMESTAMP__] = ACTIONS(4720), [anon_sym___VENDOR__] = ACTIONS(4720), [anon_sym___VERSION__] = ACTIONS(4720), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4722), [sym_float_literal] = ACTIONS(4722), [sym__string] = ACTIONS(4722), }, [1461] = { [sym_identifier] = ACTIONS(4724), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4726), [anon_sym_RBRACE] = ACTIONS(4726), [anon_sym_LBRACE] = ACTIONS(4726), [anon_sym_DOT] = ACTIONS(4726), [anon_sym_AMP] = ACTIONS(4726), [anon_sym_DASH] = ACTIONS(4724), [anon_sym_DASH_DASH] = ACTIONS(4726), [anon_sym_PLUS] = ACTIONS(4724), [anon_sym_PLUS_PLUS] = ACTIONS(4726), [anon_sym_BANG] = ACTIONS(4726), [anon_sym_LPAREN] = ACTIONS(4726), [anon_sym_RPAREN] = ACTIONS(4726), [anon_sym_LBRACK] = ACTIONS(4726), [anon_sym_SEMI] = ACTIONS(4726), [anon_sym_DOLLAR] = ACTIONS(4726), [anon_sym_STAR] = ACTIONS(4726), [anon_sym_TILDE] = ACTIONS(4726), [anon_sym_AT] = ACTIONS(4726), [sym_bool] = ACTIONS(4724), [sym_byte] = ACTIONS(4724), [sym_ubyte] = ACTIONS(4724), [sym_char] = ACTIONS(4724), [sym_short] = ACTIONS(4724), [sym_ushort] = ACTIONS(4724), [sym_int] = ACTIONS(4724), [sym_uint] = ACTIONS(4724), [sym_long] = ACTIONS(4724), [sym_ulong] = ACTIONS(4724), [sym_cent] = ACTIONS(4724), [sym_ucent] = ACTIONS(4724), [sym_wchar] = ACTIONS(4724), [sym_dchar] = ACTIONS(4724), [sym_float] = ACTIONS(4724), [sym_double] = ACTIONS(4724), [sym_real] = ACTIONS(4724), [sym_ifloat] = ACTIONS(4724), [sym_idouble] = ACTIONS(4724), [sym_ireal] = ACTIONS(4724), [sym_cfloat] = ACTIONS(4724), [sym_cdouble] = ACTIONS(4724), [sym_creal] = ACTIONS(4724), [sym_size_t] = ACTIONS(4724), [sym_ptrdiff_t] = ACTIONS(4724), [sym_string] = ACTIONS(4724), [sym_cstring] = ACTIONS(4724), [sym_dstring] = ACTIONS(4724), [sym_wstring] = ACTIONS(4724), [sym_noreturn] = ACTIONS(4724), [sym_true] = ACTIONS(4724), [sym_false] = ACTIONS(4724), [sym_null] = ACTIONS(4724), [sym_super] = ACTIONS(4724), [sym_this] = ACTIONS(4724), [sym_abstract] = ACTIONS(4724), [sym_alias] = ACTIONS(4724), [sym_align] = ACTIONS(4724), [sym_asm] = ACTIONS(4724), [sym_assert] = ACTIONS(4724), [sym_auto] = ACTIONS(4724), [sym_break] = ACTIONS(4724), [sym_case] = ACTIONS(4724), [sym_cast] = ACTIONS(4724), [sym_catch] = ACTIONS(4724), [sym_class] = ACTIONS(4724), [sym_const] = ACTIONS(4724), [sym_continue] = ACTIONS(4724), [sym_debug] = ACTIONS(4724), [sym_default] = ACTIONS(4724), [sym_delegate] = ACTIONS(4724), [sym_delete] = ACTIONS(4724), [sym_deprecated] = ACTIONS(4724), [sym_do] = ACTIONS(4724), [sym_else] = ACTIONS(4724), [sym_enum] = ACTIONS(4724), [sym_export] = ACTIONS(4724), [sym_extern] = ACTIONS(4724), [sym_final] = ACTIONS(4724), [sym_finally] = ACTIONS(4724), [sym_for] = ACTIONS(4724), [sym_foreach] = ACTIONS(4724), [sym_foreach_reverse] = ACTIONS(4724), [sym_function] = ACTIONS(4724), [sym_goto] = ACTIONS(4724), [sym_if] = ACTIONS(4724), [sym_immutable] = ACTIONS(4724), [sym_import] = ACTIONS(4724), [sym_in] = ACTIONS(4724), [sym_inout] = ACTIONS(4724), [sym_interface] = ACTIONS(4724), [sym_invariant] = ACTIONS(4724), [sym_is] = ACTIONS(4724), [sym_mixin] = ACTIONS(4724), [sym_new] = ACTIONS(4724), [sym_nothrow] = ACTIONS(4724), [sym_out] = ACTIONS(4724), [sym_override] = ACTIONS(4724), [sym_package] = ACTIONS(4724), [sym_pragma] = ACTIONS(4724), [sym_private] = ACTIONS(4724), [sym_protected] = ACTIONS(4724), [sym_public] = ACTIONS(4724), [sym_pure] = ACTIONS(4724), [sym_ref] = ACTIONS(4724), [sym_return] = ACTIONS(4724), [sym_scope] = ACTIONS(4724), [sym_shared] = ACTIONS(4724), [sym_static] = ACTIONS(4724), [sym_struct] = ACTIONS(4724), [sym_switch] = ACTIONS(4724), [sym_synchronized] = ACTIONS(4724), [sym_template] = ACTIONS(4724), [sym_throw] = ACTIONS(4724), [sym_try] = ACTIONS(4724), [sym_typeid] = ACTIONS(4724), [sym_typeof] = ACTIONS(4724), [sym_union] = ACTIONS(4724), [sym_unittest] = ACTIONS(4724), [sym_version] = ACTIONS(4724), [sym_while] = ACTIONS(4724), [sym_with] = ACTIONS(4724), [sym_gshared] = ACTIONS(4724), [sym_traits] = ACTIONS(4724), [sym_vector] = ACTIONS(4724), [sym_void] = ACTIONS(4724), [anon_sym_BQUOTE] = ACTIONS(4726), [anon_sym_r_DQUOTE] = ACTIONS(4726), [anon_sym_x_DQUOTE] = ACTIONS(4726), [anon_sym_DQUOTE] = ACTIONS(4726), [anon_sym_i_BQUOTE] = ACTIONS(4726), [anon_sym_i_DQUOTE] = ACTIONS(4726), [anon_sym_iq_LBRACE] = ACTIONS(4726), [aux_sym_char_literal_token1] = ACTIONS(4726), [anon_sym_SQUOTE] = ACTIONS(4724), [anon_sym___DATE__] = ACTIONS(4724), [anon_sym___FILE__] = ACTIONS(4724), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4724), [anon_sym___FUNCTION__] = ACTIONS(4724), [anon_sym___LINE__] = ACTIONS(4724), [anon_sym___MODULE__] = ACTIONS(4724), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4724), [anon_sym___TIME__] = ACTIONS(4724), [anon_sym___TIMESTAMP__] = ACTIONS(4724), [anon_sym___VENDOR__] = ACTIONS(4724), [anon_sym___VERSION__] = ACTIONS(4724), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4726), [sym_float_literal] = ACTIONS(4726), [sym__string] = ACTIONS(4726), }, [1462] = { [sym_identifier] = ACTIONS(4728), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4730), [anon_sym_RBRACE] = ACTIONS(4730), [anon_sym_LBRACE] = ACTIONS(4730), [anon_sym_DOT] = ACTIONS(4730), [anon_sym_AMP] = ACTIONS(4730), [anon_sym_DASH] = ACTIONS(4728), [anon_sym_DASH_DASH] = ACTIONS(4730), [anon_sym_PLUS] = ACTIONS(4728), [anon_sym_PLUS_PLUS] = ACTIONS(4730), [anon_sym_BANG] = ACTIONS(4730), [anon_sym_LPAREN] = ACTIONS(4730), [anon_sym_RPAREN] = ACTIONS(4730), [anon_sym_LBRACK] = ACTIONS(4730), [anon_sym_SEMI] = ACTIONS(4730), [anon_sym_DOLLAR] = ACTIONS(4730), [anon_sym_STAR] = ACTIONS(4730), [anon_sym_TILDE] = ACTIONS(4730), [anon_sym_AT] = ACTIONS(4730), [sym_bool] = ACTIONS(4728), [sym_byte] = ACTIONS(4728), [sym_ubyte] = ACTIONS(4728), [sym_char] = ACTIONS(4728), [sym_short] = ACTIONS(4728), [sym_ushort] = ACTIONS(4728), [sym_int] = ACTIONS(4728), [sym_uint] = ACTIONS(4728), [sym_long] = ACTIONS(4728), [sym_ulong] = ACTIONS(4728), [sym_cent] = ACTIONS(4728), [sym_ucent] = ACTIONS(4728), [sym_wchar] = ACTIONS(4728), [sym_dchar] = ACTIONS(4728), [sym_float] = ACTIONS(4728), [sym_double] = ACTIONS(4728), [sym_real] = ACTIONS(4728), [sym_ifloat] = ACTIONS(4728), [sym_idouble] = ACTIONS(4728), [sym_ireal] = ACTIONS(4728), [sym_cfloat] = ACTIONS(4728), [sym_cdouble] = ACTIONS(4728), [sym_creal] = ACTIONS(4728), [sym_size_t] = ACTIONS(4728), [sym_ptrdiff_t] = ACTIONS(4728), [sym_string] = ACTIONS(4728), [sym_cstring] = ACTIONS(4728), [sym_dstring] = ACTIONS(4728), [sym_wstring] = ACTIONS(4728), [sym_noreturn] = ACTIONS(4728), [sym_true] = ACTIONS(4728), [sym_false] = ACTIONS(4728), [sym_null] = ACTIONS(4728), [sym_super] = ACTIONS(4728), [sym_this] = ACTIONS(4728), [sym_abstract] = ACTIONS(4728), [sym_alias] = ACTIONS(4728), [sym_align] = ACTIONS(4728), [sym_asm] = ACTIONS(4728), [sym_assert] = ACTIONS(4728), [sym_auto] = ACTIONS(4728), [sym_break] = ACTIONS(4728), [sym_case] = ACTIONS(4728), [sym_cast] = ACTIONS(4728), [sym_catch] = ACTIONS(4728), [sym_class] = ACTIONS(4728), [sym_const] = ACTIONS(4728), [sym_continue] = ACTIONS(4728), [sym_debug] = ACTIONS(4728), [sym_default] = ACTIONS(4728), [sym_delegate] = ACTIONS(4728), [sym_delete] = ACTIONS(4728), [sym_deprecated] = ACTIONS(4728), [sym_do] = ACTIONS(4728), [sym_else] = ACTIONS(4728), [sym_enum] = ACTIONS(4728), [sym_export] = ACTIONS(4728), [sym_extern] = ACTIONS(4728), [sym_final] = ACTIONS(4728), [sym_finally] = ACTIONS(4728), [sym_for] = ACTIONS(4728), [sym_foreach] = ACTIONS(4728), [sym_foreach_reverse] = ACTIONS(4728), [sym_function] = ACTIONS(4728), [sym_goto] = ACTIONS(4728), [sym_if] = ACTIONS(4728), [sym_immutable] = ACTIONS(4728), [sym_import] = ACTIONS(4728), [sym_in] = ACTIONS(4728), [sym_inout] = ACTIONS(4728), [sym_interface] = ACTIONS(4728), [sym_invariant] = ACTIONS(4728), [sym_is] = ACTIONS(4728), [sym_mixin] = ACTIONS(4728), [sym_new] = ACTIONS(4728), [sym_nothrow] = ACTIONS(4728), [sym_out] = ACTIONS(4728), [sym_override] = ACTIONS(4728), [sym_package] = ACTIONS(4728), [sym_pragma] = ACTIONS(4728), [sym_private] = ACTIONS(4728), [sym_protected] = ACTIONS(4728), [sym_public] = ACTIONS(4728), [sym_pure] = ACTIONS(4728), [sym_ref] = ACTIONS(4728), [sym_return] = ACTIONS(4728), [sym_scope] = ACTIONS(4728), [sym_shared] = ACTIONS(4728), [sym_static] = ACTIONS(4728), [sym_struct] = ACTIONS(4728), [sym_switch] = ACTIONS(4728), [sym_synchronized] = ACTIONS(4728), [sym_template] = ACTIONS(4728), [sym_throw] = ACTIONS(4728), [sym_try] = ACTIONS(4728), [sym_typeid] = ACTIONS(4728), [sym_typeof] = ACTIONS(4728), [sym_union] = ACTIONS(4728), [sym_unittest] = ACTIONS(4728), [sym_version] = ACTIONS(4728), [sym_while] = ACTIONS(4728), [sym_with] = ACTIONS(4728), [sym_gshared] = ACTIONS(4728), [sym_traits] = ACTIONS(4728), [sym_vector] = ACTIONS(4728), [sym_void] = ACTIONS(4728), [anon_sym_BQUOTE] = ACTIONS(4730), [anon_sym_r_DQUOTE] = ACTIONS(4730), [anon_sym_x_DQUOTE] = ACTIONS(4730), [anon_sym_DQUOTE] = ACTIONS(4730), [anon_sym_i_BQUOTE] = ACTIONS(4730), [anon_sym_i_DQUOTE] = ACTIONS(4730), [anon_sym_iq_LBRACE] = ACTIONS(4730), [aux_sym_char_literal_token1] = ACTIONS(4730), [anon_sym_SQUOTE] = ACTIONS(4728), [anon_sym___DATE__] = ACTIONS(4728), [anon_sym___FILE__] = ACTIONS(4728), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4728), [anon_sym___FUNCTION__] = ACTIONS(4728), [anon_sym___LINE__] = ACTIONS(4728), [anon_sym___MODULE__] = ACTIONS(4728), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4728), [anon_sym___TIME__] = ACTIONS(4728), [anon_sym___TIMESTAMP__] = ACTIONS(4728), [anon_sym___VENDOR__] = ACTIONS(4728), [anon_sym___VERSION__] = ACTIONS(4728), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4730), [sym_float_literal] = ACTIONS(4730), [sym__string] = ACTIONS(4730), }, [1463] = { [sym_identifier] = ACTIONS(4732), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4734), [anon_sym_RBRACE] = ACTIONS(4734), [anon_sym_LBRACE] = ACTIONS(4734), [anon_sym_DOT] = ACTIONS(4734), [anon_sym_AMP] = ACTIONS(4734), [anon_sym_DASH] = ACTIONS(4732), [anon_sym_DASH_DASH] = ACTIONS(4734), [anon_sym_PLUS] = ACTIONS(4732), [anon_sym_PLUS_PLUS] = ACTIONS(4734), [anon_sym_BANG] = ACTIONS(4734), [anon_sym_LPAREN] = ACTIONS(4734), [anon_sym_RPAREN] = ACTIONS(4734), [anon_sym_LBRACK] = ACTIONS(4734), [anon_sym_SEMI] = ACTIONS(4734), [anon_sym_DOLLAR] = ACTIONS(4734), [anon_sym_STAR] = ACTIONS(4734), [anon_sym_TILDE] = ACTIONS(4734), [anon_sym_AT] = ACTIONS(4734), [sym_bool] = ACTIONS(4732), [sym_byte] = ACTIONS(4732), [sym_ubyte] = ACTIONS(4732), [sym_char] = ACTIONS(4732), [sym_short] = ACTIONS(4732), [sym_ushort] = ACTIONS(4732), [sym_int] = ACTIONS(4732), [sym_uint] = ACTIONS(4732), [sym_long] = ACTIONS(4732), [sym_ulong] = ACTIONS(4732), [sym_cent] = ACTIONS(4732), [sym_ucent] = ACTIONS(4732), [sym_wchar] = ACTIONS(4732), [sym_dchar] = ACTIONS(4732), [sym_float] = ACTIONS(4732), [sym_double] = ACTIONS(4732), [sym_real] = ACTIONS(4732), [sym_ifloat] = ACTIONS(4732), [sym_idouble] = ACTIONS(4732), [sym_ireal] = ACTIONS(4732), [sym_cfloat] = ACTIONS(4732), [sym_cdouble] = ACTIONS(4732), [sym_creal] = ACTIONS(4732), [sym_size_t] = ACTIONS(4732), [sym_ptrdiff_t] = ACTIONS(4732), [sym_string] = ACTIONS(4732), [sym_cstring] = ACTIONS(4732), [sym_dstring] = ACTIONS(4732), [sym_wstring] = ACTIONS(4732), [sym_noreturn] = ACTIONS(4732), [sym_true] = ACTIONS(4732), [sym_false] = ACTIONS(4732), [sym_null] = ACTIONS(4732), [sym_super] = ACTIONS(4732), [sym_this] = ACTIONS(4732), [sym_abstract] = ACTIONS(4732), [sym_alias] = ACTIONS(4732), [sym_align] = ACTIONS(4732), [sym_asm] = ACTIONS(4732), [sym_assert] = ACTIONS(4732), [sym_auto] = ACTIONS(4732), [sym_break] = ACTIONS(4732), [sym_case] = ACTIONS(4732), [sym_cast] = ACTIONS(4732), [sym_catch] = ACTIONS(4732), [sym_class] = ACTIONS(4732), [sym_const] = ACTIONS(4732), [sym_continue] = ACTIONS(4732), [sym_debug] = ACTIONS(4732), [sym_default] = ACTIONS(4732), [sym_delegate] = ACTIONS(4732), [sym_delete] = ACTIONS(4732), [sym_deprecated] = ACTIONS(4732), [sym_do] = ACTIONS(4732), [sym_else] = ACTIONS(4732), [sym_enum] = ACTIONS(4732), [sym_export] = ACTIONS(4732), [sym_extern] = ACTIONS(4732), [sym_final] = ACTIONS(4732), [sym_finally] = ACTIONS(4732), [sym_for] = ACTIONS(4732), [sym_foreach] = ACTIONS(4732), [sym_foreach_reverse] = ACTIONS(4732), [sym_function] = ACTIONS(4732), [sym_goto] = ACTIONS(4732), [sym_if] = ACTIONS(4732), [sym_immutable] = ACTIONS(4732), [sym_import] = ACTIONS(4732), [sym_in] = ACTIONS(4732), [sym_inout] = ACTIONS(4732), [sym_interface] = ACTIONS(4732), [sym_invariant] = ACTIONS(4732), [sym_is] = ACTIONS(4732), [sym_mixin] = ACTIONS(4732), [sym_new] = ACTIONS(4732), [sym_nothrow] = ACTIONS(4732), [sym_out] = ACTIONS(4732), [sym_override] = ACTIONS(4732), [sym_package] = ACTIONS(4732), [sym_pragma] = ACTIONS(4732), [sym_private] = ACTIONS(4732), [sym_protected] = ACTIONS(4732), [sym_public] = ACTIONS(4732), [sym_pure] = ACTIONS(4732), [sym_ref] = ACTIONS(4732), [sym_return] = ACTIONS(4732), [sym_scope] = ACTIONS(4732), [sym_shared] = ACTIONS(4732), [sym_static] = ACTIONS(4732), [sym_struct] = ACTIONS(4732), [sym_switch] = ACTIONS(4732), [sym_synchronized] = ACTIONS(4732), [sym_template] = ACTIONS(4732), [sym_throw] = ACTIONS(4732), [sym_try] = ACTIONS(4732), [sym_typeid] = ACTIONS(4732), [sym_typeof] = ACTIONS(4732), [sym_union] = ACTIONS(4732), [sym_unittest] = ACTIONS(4732), [sym_version] = ACTIONS(4732), [sym_while] = ACTIONS(4732), [sym_with] = ACTIONS(4732), [sym_gshared] = ACTIONS(4732), [sym_traits] = ACTIONS(4732), [sym_vector] = ACTIONS(4732), [sym_void] = ACTIONS(4732), [anon_sym_BQUOTE] = ACTIONS(4734), [anon_sym_r_DQUOTE] = ACTIONS(4734), [anon_sym_x_DQUOTE] = ACTIONS(4734), [anon_sym_DQUOTE] = ACTIONS(4734), [anon_sym_i_BQUOTE] = ACTIONS(4734), [anon_sym_i_DQUOTE] = ACTIONS(4734), [anon_sym_iq_LBRACE] = ACTIONS(4734), [aux_sym_char_literal_token1] = ACTIONS(4734), [anon_sym_SQUOTE] = ACTIONS(4732), [anon_sym___DATE__] = ACTIONS(4732), [anon_sym___FILE__] = ACTIONS(4732), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4732), [anon_sym___FUNCTION__] = ACTIONS(4732), [anon_sym___LINE__] = ACTIONS(4732), [anon_sym___MODULE__] = ACTIONS(4732), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4732), [anon_sym___TIME__] = ACTIONS(4732), [anon_sym___TIMESTAMP__] = ACTIONS(4732), [anon_sym___VENDOR__] = ACTIONS(4732), [anon_sym___VERSION__] = ACTIONS(4732), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4734), [sym_float_literal] = ACTIONS(4734), [sym__string] = ACTIONS(4734), }, [1464] = { [sym_identifier] = ACTIONS(4736), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4738), [anon_sym_RBRACE] = ACTIONS(4738), [anon_sym_LBRACE] = ACTIONS(4738), [anon_sym_DOT] = ACTIONS(4738), [anon_sym_AMP] = ACTIONS(4738), [anon_sym_DASH] = ACTIONS(4736), [anon_sym_DASH_DASH] = ACTIONS(4738), [anon_sym_PLUS] = ACTIONS(4736), [anon_sym_PLUS_PLUS] = ACTIONS(4738), [anon_sym_BANG] = ACTIONS(4738), [anon_sym_LPAREN] = ACTIONS(4738), [anon_sym_RPAREN] = ACTIONS(4738), [anon_sym_LBRACK] = ACTIONS(4738), [anon_sym_SEMI] = ACTIONS(4738), [anon_sym_DOLLAR] = ACTIONS(4738), [anon_sym_STAR] = ACTIONS(4738), [anon_sym_TILDE] = ACTIONS(4738), [anon_sym_AT] = ACTIONS(4738), [sym_bool] = ACTIONS(4736), [sym_byte] = ACTIONS(4736), [sym_ubyte] = ACTIONS(4736), [sym_char] = ACTIONS(4736), [sym_short] = ACTIONS(4736), [sym_ushort] = ACTIONS(4736), [sym_int] = ACTIONS(4736), [sym_uint] = ACTIONS(4736), [sym_long] = ACTIONS(4736), [sym_ulong] = ACTIONS(4736), [sym_cent] = ACTIONS(4736), [sym_ucent] = ACTIONS(4736), [sym_wchar] = ACTIONS(4736), [sym_dchar] = ACTIONS(4736), [sym_float] = ACTIONS(4736), [sym_double] = ACTIONS(4736), [sym_real] = ACTIONS(4736), [sym_ifloat] = ACTIONS(4736), [sym_idouble] = ACTIONS(4736), [sym_ireal] = ACTIONS(4736), [sym_cfloat] = ACTIONS(4736), [sym_cdouble] = ACTIONS(4736), [sym_creal] = ACTIONS(4736), [sym_size_t] = ACTIONS(4736), [sym_ptrdiff_t] = ACTIONS(4736), [sym_string] = ACTIONS(4736), [sym_cstring] = ACTIONS(4736), [sym_dstring] = ACTIONS(4736), [sym_wstring] = ACTIONS(4736), [sym_noreturn] = ACTIONS(4736), [sym_true] = ACTIONS(4736), [sym_false] = ACTIONS(4736), [sym_null] = ACTIONS(4736), [sym_super] = ACTIONS(4736), [sym_this] = ACTIONS(4736), [sym_abstract] = ACTIONS(4736), [sym_alias] = ACTIONS(4736), [sym_align] = ACTIONS(4736), [sym_asm] = ACTIONS(4736), [sym_assert] = ACTIONS(4736), [sym_auto] = ACTIONS(4736), [sym_break] = ACTIONS(4736), [sym_case] = ACTIONS(4736), [sym_cast] = ACTIONS(4736), [sym_catch] = ACTIONS(4736), [sym_class] = ACTIONS(4736), [sym_const] = ACTIONS(4736), [sym_continue] = ACTIONS(4736), [sym_debug] = ACTIONS(4736), [sym_default] = ACTIONS(4736), [sym_delegate] = ACTIONS(4736), [sym_delete] = ACTIONS(4736), [sym_deprecated] = ACTIONS(4736), [sym_do] = ACTIONS(4736), [sym_else] = ACTIONS(4736), [sym_enum] = ACTIONS(4736), [sym_export] = ACTIONS(4736), [sym_extern] = ACTIONS(4736), [sym_final] = ACTIONS(4736), [sym_finally] = ACTIONS(4736), [sym_for] = ACTIONS(4736), [sym_foreach] = ACTIONS(4736), [sym_foreach_reverse] = ACTIONS(4736), [sym_function] = ACTIONS(4736), [sym_goto] = ACTIONS(4736), [sym_if] = ACTIONS(4736), [sym_immutable] = ACTIONS(4736), [sym_import] = ACTIONS(4736), [sym_in] = ACTIONS(4736), [sym_inout] = ACTIONS(4736), [sym_interface] = ACTIONS(4736), [sym_invariant] = ACTIONS(4736), [sym_is] = ACTIONS(4736), [sym_mixin] = ACTIONS(4736), [sym_new] = ACTIONS(4736), [sym_nothrow] = ACTIONS(4736), [sym_out] = ACTIONS(4736), [sym_override] = ACTIONS(4736), [sym_package] = ACTIONS(4736), [sym_pragma] = ACTIONS(4736), [sym_private] = ACTIONS(4736), [sym_protected] = ACTIONS(4736), [sym_public] = ACTIONS(4736), [sym_pure] = ACTIONS(4736), [sym_ref] = ACTIONS(4736), [sym_return] = ACTIONS(4736), [sym_scope] = ACTIONS(4736), [sym_shared] = ACTIONS(4736), [sym_static] = ACTIONS(4736), [sym_struct] = ACTIONS(4736), [sym_switch] = ACTIONS(4736), [sym_synchronized] = ACTIONS(4736), [sym_template] = ACTIONS(4736), [sym_throw] = ACTIONS(4736), [sym_try] = ACTIONS(4736), [sym_typeid] = ACTIONS(4736), [sym_typeof] = ACTIONS(4736), [sym_union] = ACTIONS(4736), [sym_unittest] = ACTIONS(4736), [sym_version] = ACTIONS(4736), [sym_while] = ACTIONS(4736), [sym_with] = ACTIONS(4736), [sym_gshared] = ACTIONS(4736), [sym_traits] = ACTIONS(4736), [sym_vector] = ACTIONS(4736), [sym_void] = ACTIONS(4736), [anon_sym_BQUOTE] = ACTIONS(4738), [anon_sym_r_DQUOTE] = ACTIONS(4738), [anon_sym_x_DQUOTE] = ACTIONS(4738), [anon_sym_DQUOTE] = ACTIONS(4738), [anon_sym_i_BQUOTE] = ACTIONS(4738), [anon_sym_i_DQUOTE] = ACTIONS(4738), [anon_sym_iq_LBRACE] = ACTIONS(4738), [aux_sym_char_literal_token1] = ACTIONS(4738), [anon_sym_SQUOTE] = ACTIONS(4736), [anon_sym___DATE__] = ACTIONS(4736), [anon_sym___FILE__] = ACTIONS(4736), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4736), [anon_sym___FUNCTION__] = ACTIONS(4736), [anon_sym___LINE__] = ACTIONS(4736), [anon_sym___MODULE__] = ACTIONS(4736), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4736), [anon_sym___TIME__] = ACTIONS(4736), [anon_sym___TIMESTAMP__] = ACTIONS(4736), [anon_sym___VENDOR__] = ACTIONS(4736), [anon_sym___VERSION__] = ACTIONS(4736), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4738), [sym_float_literal] = ACTIONS(4738), [sym__string] = ACTIONS(4738), }, [1465] = { [sym_identifier] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(2804), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2804), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2804), [anon_sym_AT] = ACTIONS(2804), [sym_bool] = ACTIONS(2806), [sym_byte] = ACTIONS(2806), [sym_ubyte] = ACTIONS(2806), [sym_char] = ACTIONS(2806), [sym_short] = ACTIONS(2806), [sym_ushort] = ACTIONS(2806), [sym_int] = ACTIONS(2806), [sym_uint] = ACTIONS(2806), [sym_long] = ACTIONS(2806), [sym_ulong] = ACTIONS(2806), [sym_cent] = ACTIONS(2806), [sym_ucent] = ACTIONS(2806), [sym_wchar] = ACTIONS(2806), [sym_dchar] = ACTIONS(2806), [sym_float] = ACTIONS(2806), [sym_double] = ACTIONS(2806), [sym_real] = ACTIONS(2806), [sym_ifloat] = ACTIONS(2806), [sym_idouble] = ACTIONS(2806), [sym_ireal] = ACTIONS(2806), [sym_cfloat] = ACTIONS(2806), [sym_cdouble] = ACTIONS(2806), [sym_creal] = ACTIONS(2806), [sym_size_t] = ACTIONS(2806), [sym_ptrdiff_t] = ACTIONS(2806), [sym_string] = ACTIONS(2806), [sym_cstring] = ACTIONS(2806), [sym_dstring] = ACTIONS(2806), [sym_wstring] = ACTIONS(2806), [sym_noreturn] = ACTIONS(2806), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2806), [sym_abstract] = ACTIONS(2806), [sym_alias] = ACTIONS(2806), [sym_align] = ACTIONS(2806), [sym_asm] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(2806), [sym_break] = ACTIONS(2806), [sym_case] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_catch] = ACTIONS(2806), [sym_class] = ACTIONS(2806), [sym_const] = ACTIONS(2806), [sym_continue] = ACTIONS(2806), [sym_debug] = ACTIONS(2806), [sym_default] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_deprecated] = ACTIONS(2806), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(2806), [sym_export] = ACTIONS(2806), [sym_extern] = ACTIONS(2806), [sym_final] = ACTIONS(2806), [sym_finally] = ACTIONS(2806), [sym_for] = ACTIONS(2806), [sym_foreach] = ACTIONS(2806), [sym_foreach_reverse] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_goto] = ACTIONS(2806), [sym_if] = ACTIONS(2806), [sym_immutable] = ACTIONS(2806), [sym_import] = ACTIONS(2806), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(2806), [sym_interface] = ACTIONS(2806), [sym_invariant] = ACTIONS(2806), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2806), [sym_new] = ACTIONS(2806), [sym_nothrow] = ACTIONS(2806), [sym_out] = ACTIONS(2806), [sym_override] = ACTIONS(2806), [sym_package] = ACTIONS(2806), [sym_pragma] = ACTIONS(2806), [sym_private] = ACTIONS(2806), [sym_protected] = ACTIONS(2806), [sym_public] = ACTIONS(2806), [sym_pure] = ACTIONS(2806), [sym_ref] = ACTIONS(2806), [sym_return] = ACTIONS(2806), [sym_scope] = ACTIONS(2806), [sym_shared] = ACTIONS(2806), [sym_static] = ACTIONS(2806), [sym_struct] = ACTIONS(2806), [sym_switch] = ACTIONS(2806), [sym_synchronized] = ACTIONS(2806), [sym_template] = ACTIONS(2806), [sym_throw] = ACTIONS(2806), [sym_try] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(2806), [sym_union] = ACTIONS(2806), [sym_unittest] = ACTIONS(2806), [sym_version] = ACTIONS(2806), [sym_while] = ACTIONS(2806), [sym_with] = ACTIONS(2806), [sym_gshared] = ACTIONS(2806), [sym_traits] = ACTIONS(2806), [sym_vector] = ACTIONS(2806), [sym_void] = ACTIONS(2806), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [1466] = { [sym_identifier] = ACTIONS(4740), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4743), [anon_sym_RBRACE] = ACTIONS(4743), [anon_sym_LBRACE] = ACTIONS(4743), [anon_sym_DOT] = ACTIONS(4743), [anon_sym_AMP] = ACTIONS(4743), [anon_sym_DASH] = ACTIONS(4740), [anon_sym_DASH_DASH] = ACTIONS(4743), [anon_sym_PLUS] = ACTIONS(4740), [anon_sym_PLUS_PLUS] = ACTIONS(4743), [anon_sym_BANG] = ACTIONS(4743), [anon_sym_LPAREN] = ACTIONS(4743), [anon_sym_RPAREN] = ACTIONS(4743), [anon_sym_LBRACK] = ACTIONS(4743), [anon_sym_SEMI] = ACTIONS(4743), [anon_sym_DOLLAR] = ACTIONS(4743), [anon_sym_STAR] = ACTIONS(4743), [anon_sym_TILDE] = ACTIONS(4743), [anon_sym_AT] = ACTIONS(4743), [sym_bool] = ACTIONS(4740), [sym_byte] = ACTIONS(4740), [sym_ubyte] = ACTIONS(4740), [sym_char] = ACTIONS(4740), [sym_short] = ACTIONS(4740), [sym_ushort] = ACTIONS(4740), [sym_int] = ACTIONS(4740), [sym_uint] = ACTIONS(4740), [sym_long] = ACTIONS(4740), [sym_ulong] = ACTIONS(4740), [sym_cent] = ACTIONS(4740), [sym_ucent] = ACTIONS(4740), [sym_wchar] = ACTIONS(4740), [sym_dchar] = ACTIONS(4740), [sym_float] = ACTIONS(4740), [sym_double] = ACTIONS(4740), [sym_real] = ACTIONS(4740), [sym_ifloat] = ACTIONS(4740), [sym_idouble] = ACTIONS(4740), [sym_ireal] = ACTIONS(4740), [sym_cfloat] = ACTIONS(4740), [sym_cdouble] = ACTIONS(4740), [sym_creal] = ACTIONS(4740), [sym_size_t] = ACTIONS(4740), [sym_ptrdiff_t] = ACTIONS(4740), [sym_string] = ACTIONS(4740), [sym_cstring] = ACTIONS(4740), [sym_dstring] = ACTIONS(4740), [sym_wstring] = ACTIONS(4740), [sym_noreturn] = ACTIONS(4740), [sym_true] = ACTIONS(4740), [sym_false] = ACTIONS(4740), [sym_null] = ACTIONS(4740), [sym_super] = ACTIONS(4740), [sym_this] = ACTIONS(4740), [sym_abstract] = ACTIONS(4740), [sym_alias] = ACTIONS(4740), [sym_align] = ACTIONS(4740), [sym_asm] = ACTIONS(4740), [sym_assert] = ACTIONS(4740), [sym_auto] = ACTIONS(4740), [sym_break] = ACTIONS(4740), [sym_case] = ACTIONS(4740), [sym_cast] = ACTIONS(4740), [sym_catch] = ACTIONS(4740), [sym_class] = ACTIONS(4740), [sym_const] = ACTIONS(4740), [sym_continue] = ACTIONS(4740), [sym_debug] = ACTIONS(4740), [sym_default] = ACTIONS(4740), [sym_delegate] = ACTIONS(4740), [sym_delete] = ACTIONS(4740), [sym_deprecated] = ACTIONS(4740), [sym_do] = ACTIONS(4740), [sym_else] = ACTIONS(4740), [sym_enum] = ACTIONS(4740), [sym_export] = ACTIONS(4740), [sym_extern] = ACTIONS(4740), [sym_final] = ACTIONS(4740), [sym_finally] = ACTIONS(4740), [sym_for] = ACTIONS(4740), [sym_foreach] = ACTIONS(4740), [sym_foreach_reverse] = ACTIONS(4740), [sym_function] = ACTIONS(4740), [sym_goto] = ACTIONS(4740), [sym_if] = ACTIONS(4740), [sym_immutable] = ACTIONS(4740), [sym_import] = ACTIONS(4740), [sym_in] = ACTIONS(4740), [sym_inout] = ACTIONS(4740), [sym_interface] = ACTIONS(4740), [sym_invariant] = ACTIONS(4740), [sym_is] = ACTIONS(4740), [sym_mixin] = ACTIONS(4740), [sym_new] = ACTIONS(4740), [sym_nothrow] = ACTIONS(4740), [sym_out] = ACTIONS(4740), [sym_override] = ACTIONS(4740), [sym_package] = ACTIONS(4740), [sym_pragma] = ACTIONS(4740), [sym_private] = ACTIONS(4740), [sym_protected] = ACTIONS(4740), [sym_public] = ACTIONS(4740), [sym_pure] = ACTIONS(4740), [sym_ref] = ACTIONS(4740), [sym_return] = ACTIONS(4740), [sym_scope] = ACTIONS(4740), [sym_shared] = ACTIONS(4740), [sym_static] = ACTIONS(4740), [sym_struct] = ACTIONS(4740), [sym_switch] = ACTIONS(4740), [sym_synchronized] = ACTIONS(4740), [sym_template] = ACTIONS(4740), [sym_throw] = ACTIONS(4740), [sym_try] = ACTIONS(4740), [sym_typeid] = ACTIONS(4740), [sym_typeof] = ACTIONS(4740), [sym_union] = ACTIONS(4740), [sym_unittest] = ACTIONS(4740), [sym_version] = ACTIONS(4740), [sym_while] = ACTIONS(4740), [sym_with] = ACTIONS(4740), [sym_gshared] = ACTIONS(4740), [sym_traits] = ACTIONS(4740), [sym_vector] = ACTIONS(4740), [sym_void] = ACTIONS(4740), [anon_sym_BQUOTE] = ACTIONS(4743), [anon_sym_r_DQUOTE] = ACTIONS(4743), [anon_sym_x_DQUOTE] = ACTIONS(4743), [anon_sym_DQUOTE] = ACTIONS(4743), [anon_sym_i_BQUOTE] = ACTIONS(4743), [anon_sym_i_DQUOTE] = ACTIONS(4743), [anon_sym_iq_LBRACE] = ACTIONS(4743), [aux_sym_char_literal_token1] = ACTIONS(4743), [anon_sym_SQUOTE] = ACTIONS(4740), [anon_sym___DATE__] = ACTIONS(4740), [anon_sym___FILE__] = ACTIONS(4740), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4740), [anon_sym___FUNCTION__] = ACTIONS(4740), [anon_sym___LINE__] = ACTIONS(4740), [anon_sym___MODULE__] = ACTIONS(4740), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4740), [anon_sym___TIME__] = ACTIONS(4740), [anon_sym___TIMESTAMP__] = ACTIONS(4740), [anon_sym___VENDOR__] = ACTIONS(4740), [anon_sym___VERSION__] = ACTIONS(4740), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4743), [sym_float_literal] = ACTIONS(4743), [sym__string] = ACTIONS(4743), }, [1467] = { [sym_identifier] = ACTIONS(4746), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4748), [anon_sym_RBRACE] = ACTIONS(4748), [anon_sym_LBRACE] = ACTIONS(4748), [anon_sym_DOT] = ACTIONS(4748), [anon_sym_AMP] = ACTIONS(4748), [anon_sym_DASH] = ACTIONS(4746), [anon_sym_DASH_DASH] = ACTIONS(4748), [anon_sym_PLUS] = ACTIONS(4746), [anon_sym_PLUS_PLUS] = ACTIONS(4748), [anon_sym_BANG] = ACTIONS(4748), [anon_sym_LPAREN] = ACTIONS(4748), [anon_sym_RPAREN] = ACTIONS(4748), [anon_sym_LBRACK] = ACTIONS(4748), [anon_sym_SEMI] = ACTIONS(4748), [anon_sym_DOLLAR] = ACTIONS(4748), [anon_sym_STAR] = ACTIONS(4748), [anon_sym_TILDE] = ACTIONS(4748), [anon_sym_AT] = ACTIONS(4748), [sym_bool] = ACTIONS(4746), [sym_byte] = ACTIONS(4746), [sym_ubyte] = ACTIONS(4746), [sym_char] = ACTIONS(4746), [sym_short] = ACTIONS(4746), [sym_ushort] = ACTIONS(4746), [sym_int] = ACTIONS(4746), [sym_uint] = ACTIONS(4746), [sym_long] = ACTIONS(4746), [sym_ulong] = ACTIONS(4746), [sym_cent] = ACTIONS(4746), [sym_ucent] = ACTIONS(4746), [sym_wchar] = ACTIONS(4746), [sym_dchar] = ACTIONS(4746), [sym_float] = ACTIONS(4746), [sym_double] = ACTIONS(4746), [sym_real] = ACTIONS(4746), [sym_ifloat] = ACTIONS(4746), [sym_idouble] = ACTIONS(4746), [sym_ireal] = ACTIONS(4746), [sym_cfloat] = ACTIONS(4746), [sym_cdouble] = ACTIONS(4746), [sym_creal] = ACTIONS(4746), [sym_size_t] = ACTIONS(4746), [sym_ptrdiff_t] = ACTIONS(4746), [sym_string] = ACTIONS(4746), [sym_cstring] = ACTIONS(4746), [sym_dstring] = ACTIONS(4746), [sym_wstring] = ACTIONS(4746), [sym_noreturn] = ACTIONS(4746), [sym_true] = ACTIONS(4746), [sym_false] = ACTIONS(4746), [sym_null] = ACTIONS(4746), [sym_super] = ACTIONS(4746), [sym_this] = ACTIONS(4746), [sym_abstract] = ACTIONS(4746), [sym_alias] = ACTIONS(4746), [sym_align] = ACTIONS(4746), [sym_asm] = ACTIONS(4746), [sym_assert] = ACTIONS(4746), [sym_auto] = ACTIONS(4746), [sym_break] = ACTIONS(4746), [sym_case] = ACTIONS(4746), [sym_cast] = ACTIONS(4746), [sym_catch] = ACTIONS(4746), [sym_class] = ACTIONS(4746), [sym_const] = ACTIONS(4746), [sym_continue] = ACTIONS(4746), [sym_debug] = ACTIONS(4746), [sym_default] = ACTIONS(4746), [sym_delegate] = ACTIONS(4746), [sym_delete] = ACTIONS(4746), [sym_deprecated] = ACTIONS(4746), [sym_do] = ACTIONS(4746), [sym_else] = ACTIONS(4746), [sym_enum] = ACTIONS(4746), [sym_export] = ACTIONS(4746), [sym_extern] = ACTIONS(4746), [sym_final] = ACTIONS(4746), [sym_finally] = ACTIONS(4746), [sym_for] = ACTIONS(4746), [sym_foreach] = ACTIONS(4746), [sym_foreach_reverse] = ACTIONS(4746), [sym_function] = ACTIONS(4746), [sym_goto] = ACTIONS(4746), [sym_if] = ACTIONS(4746), [sym_immutable] = ACTIONS(4746), [sym_import] = ACTIONS(4746), [sym_in] = ACTIONS(4746), [sym_inout] = ACTIONS(4746), [sym_interface] = ACTIONS(4746), [sym_invariant] = ACTIONS(4746), [sym_is] = ACTIONS(4746), [sym_mixin] = ACTIONS(4746), [sym_new] = ACTIONS(4746), [sym_nothrow] = ACTIONS(4746), [sym_out] = ACTIONS(4746), [sym_override] = ACTIONS(4746), [sym_package] = ACTIONS(4746), [sym_pragma] = ACTIONS(4746), [sym_private] = ACTIONS(4746), [sym_protected] = ACTIONS(4746), [sym_public] = ACTIONS(4746), [sym_pure] = ACTIONS(4746), [sym_ref] = ACTIONS(4746), [sym_return] = ACTIONS(4746), [sym_scope] = ACTIONS(4746), [sym_shared] = ACTIONS(4746), [sym_static] = ACTIONS(4746), [sym_struct] = ACTIONS(4746), [sym_switch] = ACTIONS(4746), [sym_synchronized] = ACTIONS(4746), [sym_template] = ACTIONS(4746), [sym_throw] = ACTIONS(4746), [sym_try] = ACTIONS(4746), [sym_typeid] = ACTIONS(4746), [sym_typeof] = ACTIONS(4746), [sym_union] = ACTIONS(4746), [sym_unittest] = ACTIONS(4746), [sym_version] = ACTIONS(4746), [sym_while] = ACTIONS(4746), [sym_with] = ACTIONS(4746), [sym_gshared] = ACTIONS(4746), [sym_traits] = ACTIONS(4746), [sym_vector] = ACTIONS(4746), [sym_void] = ACTIONS(4746), [anon_sym_BQUOTE] = ACTIONS(4748), [anon_sym_r_DQUOTE] = ACTIONS(4748), [anon_sym_x_DQUOTE] = ACTIONS(4748), [anon_sym_DQUOTE] = ACTIONS(4748), [anon_sym_i_BQUOTE] = ACTIONS(4748), [anon_sym_i_DQUOTE] = ACTIONS(4748), [anon_sym_iq_LBRACE] = ACTIONS(4748), [aux_sym_char_literal_token1] = ACTIONS(4748), [anon_sym_SQUOTE] = ACTIONS(4746), [anon_sym___DATE__] = ACTIONS(4746), [anon_sym___FILE__] = ACTIONS(4746), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4746), [anon_sym___FUNCTION__] = ACTIONS(4746), [anon_sym___LINE__] = ACTIONS(4746), [anon_sym___MODULE__] = ACTIONS(4746), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4746), [anon_sym___TIME__] = ACTIONS(4746), [anon_sym___TIMESTAMP__] = ACTIONS(4746), [anon_sym___VENDOR__] = ACTIONS(4746), [anon_sym___VERSION__] = ACTIONS(4746), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4748), [sym_float_literal] = ACTIONS(4748), [sym__string] = ACTIONS(4748), }, [1468] = { [sym_identifier] = ACTIONS(4750), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4752), [anon_sym_RBRACE] = ACTIONS(4752), [anon_sym_LBRACE] = ACTIONS(4752), [anon_sym_DOT] = ACTIONS(4752), [anon_sym_AMP] = ACTIONS(4752), [anon_sym_DASH] = ACTIONS(4750), [anon_sym_DASH_DASH] = ACTIONS(4752), [anon_sym_PLUS] = ACTIONS(4750), [anon_sym_PLUS_PLUS] = ACTIONS(4752), [anon_sym_BANG] = ACTIONS(4752), [anon_sym_LPAREN] = ACTIONS(4752), [anon_sym_RPAREN] = ACTIONS(4752), [anon_sym_LBRACK] = ACTIONS(4752), [anon_sym_SEMI] = ACTIONS(4752), [anon_sym_DOLLAR] = ACTIONS(4752), [anon_sym_STAR] = ACTIONS(4752), [anon_sym_TILDE] = ACTIONS(4752), [anon_sym_AT] = ACTIONS(4752), [sym_bool] = ACTIONS(4750), [sym_byte] = ACTIONS(4750), [sym_ubyte] = ACTIONS(4750), [sym_char] = ACTIONS(4750), [sym_short] = ACTIONS(4750), [sym_ushort] = ACTIONS(4750), [sym_int] = ACTIONS(4750), [sym_uint] = ACTIONS(4750), [sym_long] = ACTIONS(4750), [sym_ulong] = ACTIONS(4750), [sym_cent] = ACTIONS(4750), [sym_ucent] = ACTIONS(4750), [sym_wchar] = ACTIONS(4750), [sym_dchar] = ACTIONS(4750), [sym_float] = ACTIONS(4750), [sym_double] = ACTIONS(4750), [sym_real] = ACTIONS(4750), [sym_ifloat] = ACTIONS(4750), [sym_idouble] = ACTIONS(4750), [sym_ireal] = ACTIONS(4750), [sym_cfloat] = ACTIONS(4750), [sym_cdouble] = ACTIONS(4750), [sym_creal] = ACTIONS(4750), [sym_size_t] = ACTIONS(4750), [sym_ptrdiff_t] = ACTIONS(4750), [sym_string] = ACTIONS(4750), [sym_cstring] = ACTIONS(4750), [sym_dstring] = ACTIONS(4750), [sym_wstring] = ACTIONS(4750), [sym_noreturn] = ACTIONS(4750), [sym_true] = ACTIONS(4750), [sym_false] = ACTIONS(4750), [sym_null] = ACTIONS(4750), [sym_super] = ACTIONS(4750), [sym_this] = ACTIONS(4750), [sym_abstract] = ACTIONS(4750), [sym_alias] = ACTIONS(4750), [sym_align] = ACTIONS(4750), [sym_asm] = ACTIONS(4750), [sym_assert] = ACTIONS(4750), [sym_auto] = ACTIONS(4750), [sym_break] = ACTIONS(4750), [sym_case] = ACTIONS(4750), [sym_cast] = ACTIONS(4750), [sym_catch] = ACTIONS(4750), [sym_class] = ACTIONS(4750), [sym_const] = ACTIONS(4750), [sym_continue] = ACTIONS(4750), [sym_debug] = ACTIONS(4750), [sym_default] = ACTIONS(4750), [sym_delegate] = ACTIONS(4750), [sym_delete] = ACTIONS(4750), [sym_deprecated] = ACTIONS(4750), [sym_do] = ACTIONS(4750), [sym_else] = ACTIONS(4750), [sym_enum] = ACTIONS(4750), [sym_export] = ACTIONS(4750), [sym_extern] = ACTIONS(4750), [sym_final] = ACTIONS(4750), [sym_finally] = ACTIONS(4750), [sym_for] = ACTIONS(4750), [sym_foreach] = ACTIONS(4750), [sym_foreach_reverse] = ACTIONS(4750), [sym_function] = ACTIONS(4750), [sym_goto] = ACTIONS(4750), [sym_if] = ACTIONS(4750), [sym_immutable] = ACTIONS(4750), [sym_import] = ACTIONS(4750), [sym_in] = ACTIONS(4750), [sym_inout] = ACTIONS(4750), [sym_interface] = ACTIONS(4750), [sym_invariant] = ACTIONS(4750), [sym_is] = ACTIONS(4750), [sym_mixin] = ACTIONS(4750), [sym_new] = ACTIONS(4750), [sym_nothrow] = ACTIONS(4750), [sym_out] = ACTIONS(4750), [sym_override] = ACTIONS(4750), [sym_package] = ACTIONS(4750), [sym_pragma] = ACTIONS(4750), [sym_private] = ACTIONS(4750), [sym_protected] = ACTIONS(4750), [sym_public] = ACTIONS(4750), [sym_pure] = ACTIONS(4750), [sym_ref] = ACTIONS(4750), [sym_return] = ACTIONS(4750), [sym_scope] = ACTIONS(4750), [sym_shared] = ACTIONS(4750), [sym_static] = ACTIONS(4750), [sym_struct] = ACTIONS(4750), [sym_switch] = ACTIONS(4750), [sym_synchronized] = ACTIONS(4750), [sym_template] = ACTIONS(4750), [sym_throw] = ACTIONS(4750), [sym_try] = ACTIONS(4750), [sym_typeid] = ACTIONS(4750), [sym_typeof] = ACTIONS(4750), [sym_union] = ACTIONS(4750), [sym_unittest] = ACTIONS(4750), [sym_version] = ACTIONS(4750), [sym_while] = ACTIONS(4750), [sym_with] = ACTIONS(4750), [sym_gshared] = ACTIONS(4750), [sym_traits] = ACTIONS(4750), [sym_vector] = ACTIONS(4750), [sym_void] = ACTIONS(4750), [anon_sym_BQUOTE] = ACTIONS(4752), [anon_sym_r_DQUOTE] = ACTIONS(4752), [anon_sym_x_DQUOTE] = ACTIONS(4752), [anon_sym_DQUOTE] = ACTIONS(4752), [anon_sym_i_BQUOTE] = ACTIONS(4752), [anon_sym_i_DQUOTE] = ACTIONS(4752), [anon_sym_iq_LBRACE] = ACTIONS(4752), [aux_sym_char_literal_token1] = ACTIONS(4752), [anon_sym_SQUOTE] = ACTIONS(4750), [anon_sym___DATE__] = ACTIONS(4750), [anon_sym___FILE__] = ACTIONS(4750), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4750), [anon_sym___FUNCTION__] = ACTIONS(4750), [anon_sym___LINE__] = ACTIONS(4750), [anon_sym___MODULE__] = ACTIONS(4750), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4750), [anon_sym___TIME__] = ACTIONS(4750), [anon_sym___TIMESTAMP__] = ACTIONS(4750), [anon_sym___VENDOR__] = ACTIONS(4750), [anon_sym___VERSION__] = ACTIONS(4750), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4752), [sym_float_literal] = ACTIONS(4752), [sym__string] = ACTIONS(4752), }, [1469] = { [sym_identifier] = ACTIONS(4754), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4756), [anon_sym_RBRACE] = ACTIONS(4756), [anon_sym_LBRACE] = ACTIONS(4756), [anon_sym_DOT] = ACTIONS(4756), [anon_sym_AMP] = ACTIONS(4756), [anon_sym_DASH] = ACTIONS(4754), [anon_sym_DASH_DASH] = ACTIONS(4756), [anon_sym_PLUS] = ACTIONS(4754), [anon_sym_PLUS_PLUS] = ACTIONS(4756), [anon_sym_BANG] = ACTIONS(4756), [anon_sym_LPAREN] = ACTIONS(4756), [anon_sym_RPAREN] = ACTIONS(4756), [anon_sym_LBRACK] = ACTIONS(4756), [anon_sym_SEMI] = ACTIONS(4756), [anon_sym_DOLLAR] = ACTIONS(4756), [anon_sym_STAR] = ACTIONS(4756), [anon_sym_TILDE] = ACTIONS(4756), [anon_sym_AT] = ACTIONS(4756), [sym_bool] = ACTIONS(4754), [sym_byte] = ACTIONS(4754), [sym_ubyte] = ACTIONS(4754), [sym_char] = ACTIONS(4754), [sym_short] = ACTIONS(4754), [sym_ushort] = ACTIONS(4754), [sym_int] = ACTIONS(4754), [sym_uint] = ACTIONS(4754), [sym_long] = ACTIONS(4754), [sym_ulong] = ACTIONS(4754), [sym_cent] = ACTIONS(4754), [sym_ucent] = ACTIONS(4754), [sym_wchar] = ACTIONS(4754), [sym_dchar] = ACTIONS(4754), [sym_float] = ACTIONS(4754), [sym_double] = ACTIONS(4754), [sym_real] = ACTIONS(4754), [sym_ifloat] = ACTIONS(4754), [sym_idouble] = ACTIONS(4754), [sym_ireal] = ACTIONS(4754), [sym_cfloat] = ACTIONS(4754), [sym_cdouble] = ACTIONS(4754), [sym_creal] = ACTIONS(4754), [sym_size_t] = ACTIONS(4754), [sym_ptrdiff_t] = ACTIONS(4754), [sym_string] = ACTIONS(4754), [sym_cstring] = ACTIONS(4754), [sym_dstring] = ACTIONS(4754), [sym_wstring] = ACTIONS(4754), [sym_noreturn] = ACTIONS(4754), [sym_true] = ACTIONS(4754), [sym_false] = ACTIONS(4754), [sym_null] = ACTIONS(4754), [sym_super] = ACTIONS(4754), [sym_this] = ACTIONS(4754), [sym_abstract] = ACTIONS(4754), [sym_alias] = ACTIONS(4754), [sym_align] = ACTIONS(4754), [sym_asm] = ACTIONS(4754), [sym_assert] = ACTIONS(4754), [sym_auto] = ACTIONS(4754), [sym_break] = ACTIONS(4754), [sym_case] = ACTIONS(4754), [sym_cast] = ACTIONS(4754), [sym_catch] = ACTIONS(4754), [sym_class] = ACTIONS(4754), [sym_const] = ACTIONS(4754), [sym_continue] = ACTIONS(4754), [sym_debug] = ACTIONS(4754), [sym_default] = ACTIONS(4754), [sym_delegate] = ACTIONS(4754), [sym_delete] = ACTIONS(4754), [sym_deprecated] = ACTIONS(4754), [sym_do] = ACTIONS(4754), [sym_else] = ACTIONS(4754), [sym_enum] = ACTIONS(4754), [sym_export] = ACTIONS(4754), [sym_extern] = ACTIONS(4754), [sym_final] = ACTIONS(4754), [sym_finally] = ACTIONS(4754), [sym_for] = ACTIONS(4754), [sym_foreach] = ACTIONS(4754), [sym_foreach_reverse] = ACTIONS(4754), [sym_function] = ACTIONS(4754), [sym_goto] = ACTIONS(4754), [sym_if] = ACTIONS(4754), [sym_immutable] = ACTIONS(4754), [sym_import] = ACTIONS(4754), [sym_in] = ACTIONS(4754), [sym_inout] = ACTIONS(4754), [sym_interface] = ACTIONS(4754), [sym_invariant] = ACTIONS(4754), [sym_is] = ACTIONS(4754), [sym_mixin] = ACTIONS(4754), [sym_new] = ACTIONS(4754), [sym_nothrow] = ACTIONS(4754), [sym_out] = ACTIONS(4754), [sym_override] = ACTIONS(4754), [sym_package] = ACTIONS(4754), [sym_pragma] = ACTIONS(4754), [sym_private] = ACTIONS(4754), [sym_protected] = ACTIONS(4754), [sym_public] = ACTIONS(4754), [sym_pure] = ACTIONS(4754), [sym_ref] = ACTIONS(4754), [sym_return] = ACTIONS(4754), [sym_scope] = ACTIONS(4754), [sym_shared] = ACTIONS(4754), [sym_static] = ACTIONS(4754), [sym_struct] = ACTIONS(4754), [sym_switch] = ACTIONS(4754), [sym_synchronized] = ACTIONS(4754), [sym_template] = ACTIONS(4754), [sym_throw] = ACTIONS(4754), [sym_try] = ACTIONS(4754), [sym_typeid] = ACTIONS(4754), [sym_typeof] = ACTIONS(4754), [sym_union] = ACTIONS(4754), [sym_unittest] = ACTIONS(4754), [sym_version] = ACTIONS(4754), [sym_while] = ACTIONS(4754), [sym_with] = ACTIONS(4754), [sym_gshared] = ACTIONS(4754), [sym_traits] = ACTIONS(4754), [sym_vector] = ACTIONS(4754), [sym_void] = ACTIONS(4754), [anon_sym_BQUOTE] = ACTIONS(4756), [anon_sym_r_DQUOTE] = ACTIONS(4756), [anon_sym_x_DQUOTE] = ACTIONS(4756), [anon_sym_DQUOTE] = ACTIONS(4756), [anon_sym_i_BQUOTE] = ACTIONS(4756), [anon_sym_i_DQUOTE] = ACTIONS(4756), [anon_sym_iq_LBRACE] = ACTIONS(4756), [aux_sym_char_literal_token1] = ACTIONS(4756), [anon_sym_SQUOTE] = ACTIONS(4754), [anon_sym___DATE__] = ACTIONS(4754), [anon_sym___FILE__] = ACTIONS(4754), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4754), [anon_sym___FUNCTION__] = ACTIONS(4754), [anon_sym___LINE__] = ACTIONS(4754), [anon_sym___MODULE__] = ACTIONS(4754), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4754), [anon_sym___TIME__] = ACTIONS(4754), [anon_sym___TIMESTAMP__] = ACTIONS(4754), [anon_sym___VENDOR__] = ACTIONS(4754), [anon_sym___VERSION__] = ACTIONS(4754), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4756), [sym_float_literal] = ACTIONS(4756), [sym__string] = ACTIONS(4756), }, [1470] = { [sym_identifier] = ACTIONS(4758), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4760), [anon_sym_RBRACE] = ACTIONS(4760), [anon_sym_LBRACE] = ACTIONS(4760), [anon_sym_DOT] = ACTIONS(4760), [anon_sym_AMP] = ACTIONS(4760), [anon_sym_DASH] = ACTIONS(4758), [anon_sym_DASH_DASH] = ACTIONS(4760), [anon_sym_PLUS] = ACTIONS(4758), [anon_sym_PLUS_PLUS] = ACTIONS(4760), [anon_sym_BANG] = ACTIONS(4760), [anon_sym_LPAREN] = ACTIONS(4760), [anon_sym_RPAREN] = ACTIONS(4760), [anon_sym_LBRACK] = ACTIONS(4760), [anon_sym_SEMI] = ACTIONS(4760), [anon_sym_DOLLAR] = ACTIONS(4760), [anon_sym_STAR] = ACTIONS(4760), [anon_sym_TILDE] = ACTIONS(4760), [anon_sym_AT] = ACTIONS(4760), [sym_bool] = ACTIONS(4758), [sym_byte] = ACTIONS(4758), [sym_ubyte] = ACTIONS(4758), [sym_char] = ACTIONS(4758), [sym_short] = ACTIONS(4758), [sym_ushort] = ACTIONS(4758), [sym_int] = ACTIONS(4758), [sym_uint] = ACTIONS(4758), [sym_long] = ACTIONS(4758), [sym_ulong] = ACTIONS(4758), [sym_cent] = ACTIONS(4758), [sym_ucent] = ACTIONS(4758), [sym_wchar] = ACTIONS(4758), [sym_dchar] = ACTIONS(4758), [sym_float] = ACTIONS(4758), [sym_double] = ACTIONS(4758), [sym_real] = ACTIONS(4758), [sym_ifloat] = ACTIONS(4758), [sym_idouble] = ACTIONS(4758), [sym_ireal] = ACTIONS(4758), [sym_cfloat] = ACTIONS(4758), [sym_cdouble] = ACTIONS(4758), [sym_creal] = ACTIONS(4758), [sym_size_t] = ACTIONS(4758), [sym_ptrdiff_t] = ACTIONS(4758), [sym_string] = ACTIONS(4758), [sym_cstring] = ACTIONS(4758), [sym_dstring] = ACTIONS(4758), [sym_wstring] = ACTIONS(4758), [sym_noreturn] = ACTIONS(4758), [sym_true] = ACTIONS(4758), [sym_false] = ACTIONS(4758), [sym_null] = ACTIONS(4758), [sym_super] = ACTIONS(4758), [sym_this] = ACTIONS(4758), [sym_abstract] = ACTIONS(4758), [sym_alias] = ACTIONS(4758), [sym_align] = ACTIONS(4758), [sym_asm] = ACTIONS(4758), [sym_assert] = ACTIONS(4758), [sym_auto] = ACTIONS(4758), [sym_break] = ACTIONS(4758), [sym_case] = ACTIONS(4758), [sym_cast] = ACTIONS(4758), [sym_catch] = ACTIONS(4758), [sym_class] = ACTIONS(4758), [sym_const] = ACTIONS(4758), [sym_continue] = ACTIONS(4758), [sym_debug] = ACTIONS(4758), [sym_default] = ACTIONS(4758), [sym_delegate] = ACTIONS(4758), [sym_delete] = ACTIONS(4758), [sym_deprecated] = ACTIONS(4758), [sym_do] = ACTIONS(4758), [sym_else] = ACTIONS(4758), [sym_enum] = ACTIONS(4758), [sym_export] = ACTIONS(4758), [sym_extern] = ACTIONS(4758), [sym_final] = ACTIONS(4758), [sym_finally] = ACTIONS(4758), [sym_for] = ACTIONS(4758), [sym_foreach] = ACTIONS(4758), [sym_foreach_reverse] = ACTIONS(4758), [sym_function] = ACTIONS(4758), [sym_goto] = ACTIONS(4758), [sym_if] = ACTIONS(4758), [sym_immutable] = ACTIONS(4758), [sym_import] = ACTIONS(4758), [sym_in] = ACTIONS(4758), [sym_inout] = ACTIONS(4758), [sym_interface] = ACTIONS(4758), [sym_invariant] = ACTIONS(4758), [sym_is] = ACTIONS(4758), [sym_mixin] = ACTIONS(4758), [sym_new] = ACTIONS(4758), [sym_nothrow] = ACTIONS(4758), [sym_out] = ACTIONS(4758), [sym_override] = ACTIONS(4758), [sym_package] = ACTIONS(4758), [sym_pragma] = ACTIONS(4758), [sym_private] = ACTIONS(4758), [sym_protected] = ACTIONS(4758), [sym_public] = ACTIONS(4758), [sym_pure] = ACTIONS(4758), [sym_ref] = ACTIONS(4758), [sym_return] = ACTIONS(4758), [sym_scope] = ACTIONS(4758), [sym_shared] = ACTIONS(4758), [sym_static] = ACTIONS(4758), [sym_struct] = ACTIONS(4758), [sym_switch] = ACTIONS(4758), [sym_synchronized] = ACTIONS(4758), [sym_template] = ACTIONS(4758), [sym_throw] = ACTIONS(4758), [sym_try] = ACTIONS(4758), [sym_typeid] = ACTIONS(4758), [sym_typeof] = ACTIONS(4758), [sym_union] = ACTIONS(4758), [sym_unittest] = ACTIONS(4758), [sym_version] = ACTIONS(4758), [sym_while] = ACTIONS(4758), [sym_with] = ACTIONS(4758), [sym_gshared] = ACTIONS(4758), [sym_traits] = ACTIONS(4758), [sym_vector] = ACTIONS(4758), [sym_void] = ACTIONS(4758), [anon_sym_BQUOTE] = ACTIONS(4760), [anon_sym_r_DQUOTE] = ACTIONS(4760), [anon_sym_x_DQUOTE] = ACTIONS(4760), [anon_sym_DQUOTE] = ACTIONS(4760), [anon_sym_i_BQUOTE] = ACTIONS(4760), [anon_sym_i_DQUOTE] = ACTIONS(4760), [anon_sym_iq_LBRACE] = ACTIONS(4760), [aux_sym_char_literal_token1] = ACTIONS(4760), [anon_sym_SQUOTE] = ACTIONS(4758), [anon_sym___DATE__] = ACTIONS(4758), [anon_sym___FILE__] = ACTIONS(4758), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4758), [anon_sym___FUNCTION__] = ACTIONS(4758), [anon_sym___LINE__] = ACTIONS(4758), [anon_sym___MODULE__] = ACTIONS(4758), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4758), [anon_sym___TIME__] = ACTIONS(4758), [anon_sym___TIMESTAMP__] = ACTIONS(4758), [anon_sym___VENDOR__] = ACTIONS(4758), [anon_sym___VERSION__] = ACTIONS(4758), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4760), [sym_float_literal] = ACTIONS(4760), [sym__string] = ACTIONS(4760), }, [1471] = { [sym_identifier] = ACTIONS(4762), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4764), [anon_sym_RBRACE] = ACTIONS(4764), [anon_sym_LBRACE] = ACTIONS(4764), [anon_sym_DOT] = ACTIONS(4764), [anon_sym_AMP] = ACTIONS(4764), [anon_sym_DASH] = ACTIONS(4762), [anon_sym_DASH_DASH] = ACTIONS(4764), [anon_sym_PLUS] = ACTIONS(4762), [anon_sym_PLUS_PLUS] = ACTIONS(4764), [anon_sym_BANG] = ACTIONS(4764), [anon_sym_LPAREN] = ACTIONS(4764), [anon_sym_RPAREN] = ACTIONS(4764), [anon_sym_LBRACK] = ACTIONS(4764), [anon_sym_SEMI] = ACTIONS(4764), [anon_sym_DOLLAR] = ACTIONS(4764), [anon_sym_STAR] = ACTIONS(4764), [anon_sym_TILDE] = ACTIONS(4764), [anon_sym_AT] = ACTIONS(4764), [sym_bool] = ACTIONS(4762), [sym_byte] = ACTIONS(4762), [sym_ubyte] = ACTIONS(4762), [sym_char] = ACTIONS(4762), [sym_short] = ACTIONS(4762), [sym_ushort] = ACTIONS(4762), [sym_int] = ACTIONS(4762), [sym_uint] = ACTIONS(4762), [sym_long] = ACTIONS(4762), [sym_ulong] = ACTIONS(4762), [sym_cent] = ACTIONS(4762), [sym_ucent] = ACTIONS(4762), [sym_wchar] = ACTIONS(4762), [sym_dchar] = ACTIONS(4762), [sym_float] = ACTIONS(4762), [sym_double] = ACTIONS(4762), [sym_real] = ACTIONS(4762), [sym_ifloat] = ACTIONS(4762), [sym_idouble] = ACTIONS(4762), [sym_ireal] = ACTIONS(4762), [sym_cfloat] = ACTIONS(4762), [sym_cdouble] = ACTIONS(4762), [sym_creal] = ACTIONS(4762), [sym_size_t] = ACTIONS(4762), [sym_ptrdiff_t] = ACTIONS(4762), [sym_string] = ACTIONS(4762), [sym_cstring] = ACTIONS(4762), [sym_dstring] = ACTIONS(4762), [sym_wstring] = ACTIONS(4762), [sym_noreturn] = ACTIONS(4762), [sym_true] = ACTIONS(4762), [sym_false] = ACTIONS(4762), [sym_null] = ACTIONS(4762), [sym_super] = ACTIONS(4762), [sym_this] = ACTIONS(4762), [sym_abstract] = ACTIONS(4762), [sym_alias] = ACTIONS(4762), [sym_align] = ACTIONS(4762), [sym_asm] = ACTIONS(4762), [sym_assert] = ACTIONS(4762), [sym_auto] = ACTIONS(4762), [sym_break] = ACTIONS(4762), [sym_case] = ACTIONS(4762), [sym_cast] = ACTIONS(4762), [sym_catch] = ACTIONS(4762), [sym_class] = ACTIONS(4762), [sym_const] = ACTIONS(4762), [sym_continue] = ACTIONS(4762), [sym_debug] = ACTIONS(4762), [sym_default] = ACTIONS(4762), [sym_delegate] = ACTIONS(4762), [sym_delete] = ACTIONS(4762), [sym_deprecated] = ACTIONS(4762), [sym_do] = ACTIONS(4762), [sym_else] = ACTIONS(4762), [sym_enum] = ACTIONS(4762), [sym_export] = ACTIONS(4762), [sym_extern] = ACTIONS(4762), [sym_final] = ACTIONS(4762), [sym_finally] = ACTIONS(4762), [sym_for] = ACTIONS(4762), [sym_foreach] = ACTIONS(4762), [sym_foreach_reverse] = ACTIONS(4762), [sym_function] = ACTIONS(4762), [sym_goto] = ACTIONS(4762), [sym_if] = ACTIONS(4762), [sym_immutable] = ACTIONS(4762), [sym_import] = ACTIONS(4762), [sym_in] = ACTIONS(4762), [sym_inout] = ACTIONS(4762), [sym_interface] = ACTIONS(4762), [sym_invariant] = ACTIONS(4762), [sym_is] = ACTIONS(4762), [sym_mixin] = ACTIONS(4762), [sym_new] = ACTIONS(4762), [sym_nothrow] = ACTIONS(4762), [sym_out] = ACTIONS(4762), [sym_override] = ACTIONS(4762), [sym_package] = ACTIONS(4762), [sym_pragma] = ACTIONS(4762), [sym_private] = ACTIONS(4762), [sym_protected] = ACTIONS(4762), [sym_public] = ACTIONS(4762), [sym_pure] = ACTIONS(4762), [sym_ref] = ACTIONS(4762), [sym_return] = ACTIONS(4762), [sym_scope] = ACTIONS(4762), [sym_shared] = ACTIONS(4762), [sym_static] = ACTIONS(4762), [sym_struct] = ACTIONS(4762), [sym_switch] = ACTIONS(4762), [sym_synchronized] = ACTIONS(4762), [sym_template] = ACTIONS(4762), [sym_throw] = ACTIONS(4762), [sym_try] = ACTIONS(4762), [sym_typeid] = ACTIONS(4762), [sym_typeof] = ACTIONS(4762), [sym_union] = ACTIONS(4762), [sym_unittest] = ACTIONS(4762), [sym_version] = ACTIONS(4762), [sym_while] = ACTIONS(4762), [sym_with] = ACTIONS(4762), [sym_gshared] = ACTIONS(4762), [sym_traits] = ACTIONS(4762), [sym_vector] = ACTIONS(4762), [sym_void] = ACTIONS(4762), [anon_sym_BQUOTE] = ACTIONS(4764), [anon_sym_r_DQUOTE] = ACTIONS(4764), [anon_sym_x_DQUOTE] = ACTIONS(4764), [anon_sym_DQUOTE] = ACTIONS(4764), [anon_sym_i_BQUOTE] = ACTIONS(4764), [anon_sym_i_DQUOTE] = ACTIONS(4764), [anon_sym_iq_LBRACE] = ACTIONS(4764), [aux_sym_char_literal_token1] = ACTIONS(4764), [anon_sym_SQUOTE] = ACTIONS(4762), [anon_sym___DATE__] = ACTIONS(4762), [anon_sym___FILE__] = ACTIONS(4762), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4762), [anon_sym___FUNCTION__] = ACTIONS(4762), [anon_sym___LINE__] = ACTIONS(4762), [anon_sym___MODULE__] = ACTIONS(4762), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4762), [anon_sym___TIME__] = ACTIONS(4762), [anon_sym___TIMESTAMP__] = ACTIONS(4762), [anon_sym___VENDOR__] = ACTIONS(4762), [anon_sym___VERSION__] = ACTIONS(4762), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4764), [sym_float_literal] = ACTIONS(4764), [sym__string] = ACTIONS(4764), }, [1472] = { [sym_identifier] = ACTIONS(4766), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4768), [anon_sym_RBRACE] = ACTIONS(4768), [anon_sym_LBRACE] = ACTIONS(4768), [anon_sym_DOT] = ACTIONS(4768), [anon_sym_AMP] = ACTIONS(4768), [anon_sym_DASH] = ACTIONS(4766), [anon_sym_DASH_DASH] = ACTIONS(4768), [anon_sym_PLUS] = ACTIONS(4766), [anon_sym_PLUS_PLUS] = ACTIONS(4768), [anon_sym_BANG] = ACTIONS(4768), [anon_sym_LPAREN] = ACTIONS(4768), [anon_sym_RPAREN] = ACTIONS(4768), [anon_sym_LBRACK] = ACTIONS(4768), [anon_sym_SEMI] = ACTIONS(4768), [anon_sym_DOLLAR] = ACTIONS(4768), [anon_sym_STAR] = ACTIONS(4768), [anon_sym_TILDE] = ACTIONS(4768), [anon_sym_AT] = ACTIONS(4768), [sym_bool] = ACTIONS(4766), [sym_byte] = ACTIONS(4766), [sym_ubyte] = ACTIONS(4766), [sym_char] = ACTIONS(4766), [sym_short] = ACTIONS(4766), [sym_ushort] = ACTIONS(4766), [sym_int] = ACTIONS(4766), [sym_uint] = ACTIONS(4766), [sym_long] = ACTIONS(4766), [sym_ulong] = ACTIONS(4766), [sym_cent] = ACTIONS(4766), [sym_ucent] = ACTIONS(4766), [sym_wchar] = ACTIONS(4766), [sym_dchar] = ACTIONS(4766), [sym_float] = ACTIONS(4766), [sym_double] = ACTIONS(4766), [sym_real] = ACTIONS(4766), [sym_ifloat] = ACTIONS(4766), [sym_idouble] = ACTIONS(4766), [sym_ireal] = ACTIONS(4766), [sym_cfloat] = ACTIONS(4766), [sym_cdouble] = ACTIONS(4766), [sym_creal] = ACTIONS(4766), [sym_size_t] = ACTIONS(4766), [sym_ptrdiff_t] = ACTIONS(4766), [sym_string] = ACTIONS(4766), [sym_cstring] = ACTIONS(4766), [sym_dstring] = ACTIONS(4766), [sym_wstring] = ACTIONS(4766), [sym_noreturn] = ACTIONS(4766), [sym_true] = ACTIONS(4766), [sym_false] = ACTIONS(4766), [sym_null] = ACTIONS(4766), [sym_super] = ACTIONS(4766), [sym_this] = ACTIONS(4766), [sym_abstract] = ACTIONS(4766), [sym_alias] = ACTIONS(4766), [sym_align] = ACTIONS(4766), [sym_asm] = ACTIONS(4766), [sym_assert] = ACTIONS(4766), [sym_auto] = ACTIONS(4766), [sym_break] = ACTIONS(4766), [sym_case] = ACTIONS(4766), [sym_cast] = ACTIONS(4766), [sym_catch] = ACTIONS(4766), [sym_class] = ACTIONS(4766), [sym_const] = ACTIONS(4766), [sym_continue] = ACTIONS(4766), [sym_debug] = ACTIONS(4766), [sym_default] = ACTIONS(4766), [sym_delegate] = ACTIONS(4766), [sym_delete] = ACTIONS(4766), [sym_deprecated] = ACTIONS(4766), [sym_do] = ACTIONS(4766), [sym_else] = ACTIONS(4766), [sym_enum] = ACTIONS(4766), [sym_export] = ACTIONS(4766), [sym_extern] = ACTIONS(4766), [sym_final] = ACTIONS(4766), [sym_finally] = ACTIONS(4766), [sym_for] = ACTIONS(4766), [sym_foreach] = ACTIONS(4766), [sym_foreach_reverse] = ACTIONS(4766), [sym_function] = ACTIONS(4766), [sym_goto] = ACTIONS(4766), [sym_if] = ACTIONS(4766), [sym_immutable] = ACTIONS(4766), [sym_import] = ACTIONS(4766), [sym_in] = ACTIONS(4766), [sym_inout] = ACTIONS(4766), [sym_interface] = ACTIONS(4766), [sym_invariant] = ACTIONS(4766), [sym_is] = ACTIONS(4766), [sym_mixin] = ACTIONS(4766), [sym_new] = ACTIONS(4766), [sym_nothrow] = ACTIONS(4766), [sym_out] = ACTIONS(4766), [sym_override] = ACTIONS(4766), [sym_package] = ACTIONS(4766), [sym_pragma] = ACTIONS(4766), [sym_private] = ACTIONS(4766), [sym_protected] = ACTIONS(4766), [sym_public] = ACTIONS(4766), [sym_pure] = ACTIONS(4766), [sym_ref] = ACTIONS(4766), [sym_return] = ACTIONS(4766), [sym_scope] = ACTIONS(4766), [sym_shared] = ACTIONS(4766), [sym_static] = ACTIONS(4766), [sym_struct] = ACTIONS(4766), [sym_switch] = ACTIONS(4766), [sym_synchronized] = ACTIONS(4766), [sym_template] = ACTIONS(4766), [sym_throw] = ACTIONS(4766), [sym_try] = ACTIONS(4766), [sym_typeid] = ACTIONS(4766), [sym_typeof] = ACTIONS(4766), [sym_union] = ACTIONS(4766), [sym_unittest] = ACTIONS(4766), [sym_version] = ACTIONS(4766), [sym_while] = ACTIONS(4766), [sym_with] = ACTIONS(4766), [sym_gshared] = ACTIONS(4766), [sym_traits] = ACTIONS(4766), [sym_vector] = ACTIONS(4766), [sym_void] = ACTIONS(4766), [anon_sym_BQUOTE] = ACTIONS(4768), [anon_sym_r_DQUOTE] = ACTIONS(4768), [anon_sym_x_DQUOTE] = ACTIONS(4768), [anon_sym_DQUOTE] = ACTIONS(4768), [anon_sym_i_BQUOTE] = ACTIONS(4768), [anon_sym_i_DQUOTE] = ACTIONS(4768), [anon_sym_iq_LBRACE] = ACTIONS(4768), [aux_sym_char_literal_token1] = ACTIONS(4768), [anon_sym_SQUOTE] = ACTIONS(4766), [anon_sym___DATE__] = ACTIONS(4766), [anon_sym___FILE__] = ACTIONS(4766), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4766), [anon_sym___FUNCTION__] = ACTIONS(4766), [anon_sym___LINE__] = ACTIONS(4766), [anon_sym___MODULE__] = ACTIONS(4766), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4766), [anon_sym___TIME__] = ACTIONS(4766), [anon_sym___TIMESTAMP__] = ACTIONS(4766), [anon_sym___VENDOR__] = ACTIONS(4766), [anon_sym___VERSION__] = ACTIONS(4766), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4768), [sym_float_literal] = ACTIONS(4768), [sym__string] = ACTIONS(4768), }, [1473] = { [sym_identifier] = ACTIONS(4770), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4772), [anon_sym_RBRACE] = ACTIONS(4772), [anon_sym_LBRACE] = ACTIONS(4772), [anon_sym_DOT] = ACTIONS(4772), [anon_sym_AMP] = ACTIONS(4772), [anon_sym_DASH] = ACTIONS(4770), [anon_sym_DASH_DASH] = ACTIONS(4772), [anon_sym_PLUS] = ACTIONS(4770), [anon_sym_PLUS_PLUS] = ACTIONS(4772), [anon_sym_BANG] = ACTIONS(4772), [anon_sym_LPAREN] = ACTIONS(4772), [anon_sym_RPAREN] = ACTIONS(4772), [anon_sym_LBRACK] = ACTIONS(4772), [anon_sym_SEMI] = ACTIONS(4772), [anon_sym_DOLLAR] = ACTIONS(4772), [anon_sym_STAR] = ACTIONS(4772), [anon_sym_TILDE] = ACTIONS(4772), [anon_sym_AT] = ACTIONS(4772), [sym_bool] = ACTIONS(4770), [sym_byte] = ACTIONS(4770), [sym_ubyte] = ACTIONS(4770), [sym_char] = ACTIONS(4770), [sym_short] = ACTIONS(4770), [sym_ushort] = ACTIONS(4770), [sym_int] = ACTIONS(4770), [sym_uint] = ACTIONS(4770), [sym_long] = ACTIONS(4770), [sym_ulong] = ACTIONS(4770), [sym_cent] = ACTIONS(4770), [sym_ucent] = ACTIONS(4770), [sym_wchar] = ACTIONS(4770), [sym_dchar] = ACTIONS(4770), [sym_float] = ACTIONS(4770), [sym_double] = ACTIONS(4770), [sym_real] = ACTIONS(4770), [sym_ifloat] = ACTIONS(4770), [sym_idouble] = ACTIONS(4770), [sym_ireal] = ACTIONS(4770), [sym_cfloat] = ACTIONS(4770), [sym_cdouble] = ACTIONS(4770), [sym_creal] = ACTIONS(4770), [sym_size_t] = ACTIONS(4770), [sym_ptrdiff_t] = ACTIONS(4770), [sym_string] = ACTIONS(4770), [sym_cstring] = ACTIONS(4770), [sym_dstring] = ACTIONS(4770), [sym_wstring] = ACTIONS(4770), [sym_noreturn] = ACTIONS(4770), [sym_true] = ACTIONS(4770), [sym_false] = ACTIONS(4770), [sym_null] = ACTIONS(4770), [sym_super] = ACTIONS(4770), [sym_this] = ACTIONS(4770), [sym_abstract] = ACTIONS(4770), [sym_alias] = ACTIONS(4770), [sym_align] = ACTIONS(4770), [sym_asm] = ACTIONS(4770), [sym_assert] = ACTIONS(4770), [sym_auto] = ACTIONS(4770), [sym_break] = ACTIONS(4770), [sym_case] = ACTIONS(4770), [sym_cast] = ACTIONS(4770), [sym_catch] = ACTIONS(4770), [sym_class] = ACTIONS(4770), [sym_const] = ACTIONS(4770), [sym_continue] = ACTIONS(4770), [sym_debug] = ACTIONS(4770), [sym_default] = ACTIONS(4770), [sym_delegate] = ACTIONS(4770), [sym_delete] = ACTIONS(4770), [sym_deprecated] = ACTIONS(4770), [sym_do] = ACTIONS(4770), [sym_else] = ACTIONS(4770), [sym_enum] = ACTIONS(4770), [sym_export] = ACTIONS(4770), [sym_extern] = ACTIONS(4770), [sym_final] = ACTIONS(4770), [sym_finally] = ACTIONS(4770), [sym_for] = ACTIONS(4770), [sym_foreach] = ACTIONS(4770), [sym_foreach_reverse] = ACTIONS(4770), [sym_function] = ACTIONS(4770), [sym_goto] = ACTIONS(4770), [sym_if] = ACTIONS(4770), [sym_immutable] = ACTIONS(4770), [sym_import] = ACTIONS(4770), [sym_in] = ACTIONS(4770), [sym_inout] = ACTIONS(4770), [sym_interface] = ACTIONS(4770), [sym_invariant] = ACTIONS(4770), [sym_is] = ACTIONS(4770), [sym_mixin] = ACTIONS(4770), [sym_new] = ACTIONS(4770), [sym_nothrow] = ACTIONS(4770), [sym_out] = ACTIONS(4770), [sym_override] = ACTIONS(4770), [sym_package] = ACTIONS(4770), [sym_pragma] = ACTIONS(4770), [sym_private] = ACTIONS(4770), [sym_protected] = ACTIONS(4770), [sym_public] = ACTIONS(4770), [sym_pure] = ACTIONS(4770), [sym_ref] = ACTIONS(4770), [sym_return] = ACTIONS(4770), [sym_scope] = ACTIONS(4770), [sym_shared] = ACTIONS(4770), [sym_static] = ACTIONS(4770), [sym_struct] = ACTIONS(4770), [sym_switch] = ACTIONS(4770), [sym_synchronized] = ACTIONS(4770), [sym_template] = ACTIONS(4770), [sym_throw] = ACTIONS(4770), [sym_try] = ACTIONS(4770), [sym_typeid] = ACTIONS(4770), [sym_typeof] = ACTIONS(4770), [sym_union] = ACTIONS(4770), [sym_unittest] = ACTIONS(4770), [sym_version] = ACTIONS(4770), [sym_while] = ACTIONS(4770), [sym_with] = ACTIONS(4770), [sym_gshared] = ACTIONS(4770), [sym_traits] = ACTIONS(4770), [sym_vector] = ACTIONS(4770), [sym_void] = ACTIONS(4770), [anon_sym_BQUOTE] = ACTIONS(4772), [anon_sym_r_DQUOTE] = ACTIONS(4772), [anon_sym_x_DQUOTE] = ACTIONS(4772), [anon_sym_DQUOTE] = ACTIONS(4772), [anon_sym_i_BQUOTE] = ACTIONS(4772), [anon_sym_i_DQUOTE] = ACTIONS(4772), [anon_sym_iq_LBRACE] = ACTIONS(4772), [aux_sym_char_literal_token1] = ACTIONS(4772), [anon_sym_SQUOTE] = ACTIONS(4770), [anon_sym___DATE__] = ACTIONS(4770), [anon_sym___FILE__] = ACTIONS(4770), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4770), [anon_sym___FUNCTION__] = ACTIONS(4770), [anon_sym___LINE__] = ACTIONS(4770), [anon_sym___MODULE__] = ACTIONS(4770), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4770), [anon_sym___TIME__] = ACTIONS(4770), [anon_sym___TIMESTAMP__] = ACTIONS(4770), [anon_sym___VENDOR__] = ACTIONS(4770), [anon_sym___VERSION__] = ACTIONS(4770), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4772), [sym_float_literal] = ACTIONS(4772), [sym__string] = ACTIONS(4772), }, [1474] = { [sym_identifier] = ACTIONS(4774), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4776), [anon_sym_RBRACE] = ACTIONS(4776), [anon_sym_LBRACE] = ACTIONS(4776), [anon_sym_DOT] = ACTIONS(4776), [anon_sym_AMP] = ACTIONS(4776), [anon_sym_DASH] = ACTIONS(4774), [anon_sym_DASH_DASH] = ACTIONS(4776), [anon_sym_PLUS] = ACTIONS(4774), [anon_sym_PLUS_PLUS] = ACTIONS(4776), [anon_sym_BANG] = ACTIONS(4776), [anon_sym_LPAREN] = ACTIONS(4776), [anon_sym_RPAREN] = ACTIONS(4776), [anon_sym_LBRACK] = ACTIONS(4776), [anon_sym_SEMI] = ACTIONS(4776), [anon_sym_DOLLAR] = ACTIONS(4776), [anon_sym_STAR] = ACTIONS(4776), [anon_sym_TILDE] = ACTIONS(4776), [anon_sym_AT] = ACTIONS(4776), [sym_bool] = ACTIONS(4774), [sym_byte] = ACTIONS(4774), [sym_ubyte] = ACTIONS(4774), [sym_char] = ACTIONS(4774), [sym_short] = ACTIONS(4774), [sym_ushort] = ACTIONS(4774), [sym_int] = ACTIONS(4774), [sym_uint] = ACTIONS(4774), [sym_long] = ACTIONS(4774), [sym_ulong] = ACTIONS(4774), [sym_cent] = ACTIONS(4774), [sym_ucent] = ACTIONS(4774), [sym_wchar] = ACTIONS(4774), [sym_dchar] = ACTIONS(4774), [sym_float] = ACTIONS(4774), [sym_double] = ACTIONS(4774), [sym_real] = ACTIONS(4774), [sym_ifloat] = ACTIONS(4774), [sym_idouble] = ACTIONS(4774), [sym_ireal] = ACTIONS(4774), [sym_cfloat] = ACTIONS(4774), [sym_cdouble] = ACTIONS(4774), [sym_creal] = ACTIONS(4774), [sym_size_t] = ACTIONS(4774), [sym_ptrdiff_t] = ACTIONS(4774), [sym_string] = ACTIONS(4774), [sym_cstring] = ACTIONS(4774), [sym_dstring] = ACTIONS(4774), [sym_wstring] = ACTIONS(4774), [sym_noreturn] = ACTIONS(4774), [sym_true] = ACTIONS(4774), [sym_false] = ACTIONS(4774), [sym_null] = ACTIONS(4774), [sym_super] = ACTIONS(4774), [sym_this] = ACTIONS(4774), [sym_abstract] = ACTIONS(4774), [sym_alias] = ACTIONS(4774), [sym_align] = ACTIONS(4774), [sym_asm] = ACTIONS(4774), [sym_assert] = ACTIONS(4774), [sym_auto] = ACTIONS(4774), [sym_break] = ACTIONS(4774), [sym_case] = ACTIONS(4774), [sym_cast] = ACTIONS(4774), [sym_catch] = ACTIONS(4774), [sym_class] = ACTIONS(4774), [sym_const] = ACTIONS(4774), [sym_continue] = ACTIONS(4774), [sym_debug] = ACTIONS(4774), [sym_default] = ACTIONS(4774), [sym_delegate] = ACTIONS(4774), [sym_delete] = ACTIONS(4774), [sym_deprecated] = ACTIONS(4774), [sym_do] = ACTIONS(4774), [sym_else] = ACTIONS(4774), [sym_enum] = ACTIONS(4774), [sym_export] = ACTIONS(4774), [sym_extern] = ACTIONS(4774), [sym_final] = ACTIONS(4774), [sym_finally] = ACTIONS(4774), [sym_for] = ACTIONS(4774), [sym_foreach] = ACTIONS(4774), [sym_foreach_reverse] = ACTIONS(4774), [sym_function] = ACTIONS(4774), [sym_goto] = ACTIONS(4774), [sym_if] = ACTIONS(4774), [sym_immutable] = ACTIONS(4774), [sym_import] = ACTIONS(4774), [sym_in] = ACTIONS(4774), [sym_inout] = ACTIONS(4774), [sym_interface] = ACTIONS(4774), [sym_invariant] = ACTIONS(4774), [sym_is] = ACTIONS(4774), [sym_mixin] = ACTIONS(4774), [sym_new] = ACTIONS(4774), [sym_nothrow] = ACTIONS(4774), [sym_out] = ACTIONS(4774), [sym_override] = ACTIONS(4774), [sym_package] = ACTIONS(4774), [sym_pragma] = ACTIONS(4774), [sym_private] = ACTIONS(4774), [sym_protected] = ACTIONS(4774), [sym_public] = ACTIONS(4774), [sym_pure] = ACTIONS(4774), [sym_ref] = ACTIONS(4774), [sym_return] = ACTIONS(4774), [sym_scope] = ACTIONS(4774), [sym_shared] = ACTIONS(4774), [sym_static] = ACTIONS(4774), [sym_struct] = ACTIONS(4774), [sym_switch] = ACTIONS(4774), [sym_synchronized] = ACTIONS(4774), [sym_template] = ACTIONS(4774), [sym_throw] = ACTIONS(4774), [sym_try] = ACTIONS(4774), [sym_typeid] = ACTIONS(4774), [sym_typeof] = ACTIONS(4774), [sym_union] = ACTIONS(4774), [sym_unittest] = ACTIONS(4774), [sym_version] = ACTIONS(4774), [sym_while] = ACTIONS(4774), [sym_with] = ACTIONS(4774), [sym_gshared] = ACTIONS(4774), [sym_traits] = ACTIONS(4774), [sym_vector] = ACTIONS(4774), [sym_void] = ACTIONS(4774), [anon_sym_BQUOTE] = ACTIONS(4776), [anon_sym_r_DQUOTE] = ACTIONS(4776), [anon_sym_x_DQUOTE] = ACTIONS(4776), [anon_sym_DQUOTE] = ACTIONS(4776), [anon_sym_i_BQUOTE] = ACTIONS(4776), [anon_sym_i_DQUOTE] = ACTIONS(4776), [anon_sym_iq_LBRACE] = ACTIONS(4776), [aux_sym_char_literal_token1] = ACTIONS(4776), [anon_sym_SQUOTE] = ACTIONS(4774), [anon_sym___DATE__] = ACTIONS(4774), [anon_sym___FILE__] = ACTIONS(4774), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4774), [anon_sym___FUNCTION__] = ACTIONS(4774), [anon_sym___LINE__] = ACTIONS(4774), [anon_sym___MODULE__] = ACTIONS(4774), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4774), [anon_sym___TIME__] = ACTIONS(4774), [anon_sym___TIMESTAMP__] = ACTIONS(4774), [anon_sym___VENDOR__] = ACTIONS(4774), [anon_sym___VERSION__] = ACTIONS(4774), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4776), [sym_float_literal] = ACTIONS(4776), [sym__string] = ACTIONS(4776), }, [1475] = { [sym_identifier] = ACTIONS(4778), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4780), [anon_sym_RBRACE] = ACTIONS(4780), [anon_sym_LBRACE] = ACTIONS(4780), [anon_sym_DOT] = ACTIONS(4780), [anon_sym_AMP] = ACTIONS(4780), [anon_sym_DASH] = ACTIONS(4778), [anon_sym_DASH_DASH] = ACTIONS(4780), [anon_sym_PLUS] = ACTIONS(4778), [anon_sym_PLUS_PLUS] = ACTIONS(4780), [anon_sym_BANG] = ACTIONS(4780), [anon_sym_LPAREN] = ACTIONS(4780), [anon_sym_RPAREN] = ACTIONS(4780), [anon_sym_LBRACK] = ACTIONS(4780), [anon_sym_SEMI] = ACTIONS(4780), [anon_sym_DOLLAR] = ACTIONS(4780), [anon_sym_STAR] = ACTIONS(4780), [anon_sym_TILDE] = ACTIONS(4780), [anon_sym_AT] = ACTIONS(4780), [sym_bool] = ACTIONS(4778), [sym_byte] = ACTIONS(4778), [sym_ubyte] = ACTIONS(4778), [sym_char] = ACTIONS(4778), [sym_short] = ACTIONS(4778), [sym_ushort] = ACTIONS(4778), [sym_int] = ACTIONS(4778), [sym_uint] = ACTIONS(4778), [sym_long] = ACTIONS(4778), [sym_ulong] = ACTIONS(4778), [sym_cent] = ACTIONS(4778), [sym_ucent] = ACTIONS(4778), [sym_wchar] = ACTIONS(4778), [sym_dchar] = ACTIONS(4778), [sym_float] = ACTIONS(4778), [sym_double] = ACTIONS(4778), [sym_real] = ACTIONS(4778), [sym_ifloat] = ACTIONS(4778), [sym_idouble] = ACTIONS(4778), [sym_ireal] = ACTIONS(4778), [sym_cfloat] = ACTIONS(4778), [sym_cdouble] = ACTIONS(4778), [sym_creal] = ACTIONS(4778), [sym_size_t] = ACTIONS(4778), [sym_ptrdiff_t] = ACTIONS(4778), [sym_string] = ACTIONS(4778), [sym_cstring] = ACTIONS(4778), [sym_dstring] = ACTIONS(4778), [sym_wstring] = ACTIONS(4778), [sym_noreturn] = ACTIONS(4778), [sym_true] = ACTIONS(4778), [sym_false] = ACTIONS(4778), [sym_null] = ACTIONS(4778), [sym_super] = ACTIONS(4778), [sym_this] = ACTIONS(4778), [sym_abstract] = ACTIONS(4778), [sym_alias] = ACTIONS(4778), [sym_align] = ACTIONS(4778), [sym_asm] = ACTIONS(4778), [sym_assert] = ACTIONS(4778), [sym_auto] = ACTIONS(4778), [sym_break] = ACTIONS(4778), [sym_case] = ACTIONS(4778), [sym_cast] = ACTIONS(4778), [sym_catch] = ACTIONS(4778), [sym_class] = ACTIONS(4778), [sym_const] = ACTIONS(4778), [sym_continue] = ACTIONS(4778), [sym_debug] = ACTIONS(4778), [sym_default] = ACTIONS(4778), [sym_delegate] = ACTIONS(4778), [sym_delete] = ACTIONS(4778), [sym_deprecated] = ACTIONS(4778), [sym_do] = ACTIONS(4778), [sym_else] = ACTIONS(4778), [sym_enum] = ACTIONS(4778), [sym_export] = ACTIONS(4778), [sym_extern] = ACTIONS(4778), [sym_final] = ACTIONS(4778), [sym_finally] = ACTIONS(4778), [sym_for] = ACTIONS(4778), [sym_foreach] = ACTIONS(4778), [sym_foreach_reverse] = ACTIONS(4778), [sym_function] = ACTIONS(4778), [sym_goto] = ACTIONS(4778), [sym_if] = ACTIONS(4778), [sym_immutable] = ACTIONS(4778), [sym_import] = ACTIONS(4778), [sym_in] = ACTIONS(4778), [sym_inout] = ACTIONS(4778), [sym_interface] = ACTIONS(4778), [sym_invariant] = ACTIONS(4778), [sym_is] = ACTIONS(4778), [sym_mixin] = ACTIONS(4778), [sym_new] = ACTIONS(4778), [sym_nothrow] = ACTIONS(4778), [sym_out] = ACTIONS(4778), [sym_override] = ACTIONS(4778), [sym_package] = ACTIONS(4778), [sym_pragma] = ACTIONS(4778), [sym_private] = ACTIONS(4778), [sym_protected] = ACTIONS(4778), [sym_public] = ACTIONS(4778), [sym_pure] = ACTIONS(4778), [sym_ref] = ACTIONS(4778), [sym_return] = ACTIONS(4778), [sym_scope] = ACTIONS(4778), [sym_shared] = ACTIONS(4778), [sym_static] = ACTIONS(4778), [sym_struct] = ACTIONS(4778), [sym_switch] = ACTIONS(4778), [sym_synchronized] = ACTIONS(4778), [sym_template] = ACTIONS(4778), [sym_throw] = ACTIONS(4778), [sym_try] = ACTIONS(4778), [sym_typeid] = ACTIONS(4778), [sym_typeof] = ACTIONS(4778), [sym_union] = ACTIONS(4778), [sym_unittest] = ACTIONS(4778), [sym_version] = ACTIONS(4778), [sym_while] = ACTIONS(4778), [sym_with] = ACTIONS(4778), [sym_gshared] = ACTIONS(4778), [sym_traits] = ACTIONS(4778), [sym_vector] = ACTIONS(4778), [sym_void] = ACTIONS(4778), [anon_sym_BQUOTE] = ACTIONS(4780), [anon_sym_r_DQUOTE] = ACTIONS(4780), [anon_sym_x_DQUOTE] = ACTIONS(4780), [anon_sym_DQUOTE] = ACTIONS(4780), [anon_sym_i_BQUOTE] = ACTIONS(4780), [anon_sym_i_DQUOTE] = ACTIONS(4780), [anon_sym_iq_LBRACE] = ACTIONS(4780), [aux_sym_char_literal_token1] = ACTIONS(4780), [anon_sym_SQUOTE] = ACTIONS(4778), [anon_sym___DATE__] = ACTIONS(4778), [anon_sym___FILE__] = ACTIONS(4778), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4778), [anon_sym___FUNCTION__] = ACTIONS(4778), [anon_sym___LINE__] = ACTIONS(4778), [anon_sym___MODULE__] = ACTIONS(4778), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4778), [anon_sym___TIME__] = ACTIONS(4778), [anon_sym___TIMESTAMP__] = ACTIONS(4778), [anon_sym___VENDOR__] = ACTIONS(4778), [anon_sym___VERSION__] = ACTIONS(4778), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4780), [sym_float_literal] = ACTIONS(4780), [sym__string] = ACTIONS(4780), }, [1476] = { [sym_identifier] = ACTIONS(4782), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4785), [anon_sym_RBRACE] = ACTIONS(4785), [anon_sym_LBRACE] = ACTIONS(4785), [anon_sym_DOT] = ACTIONS(4785), [anon_sym_AMP] = ACTIONS(4785), [anon_sym_DASH] = ACTIONS(4782), [anon_sym_DASH_DASH] = ACTIONS(4785), [anon_sym_PLUS] = ACTIONS(4782), [anon_sym_PLUS_PLUS] = ACTIONS(4785), [anon_sym_BANG] = ACTIONS(4785), [anon_sym_LPAREN] = ACTIONS(4785), [anon_sym_RPAREN] = ACTIONS(4785), [anon_sym_LBRACK] = ACTIONS(4785), [anon_sym_SEMI] = ACTIONS(4785), [anon_sym_DOLLAR] = ACTIONS(4785), [anon_sym_STAR] = ACTIONS(4785), [anon_sym_TILDE] = ACTIONS(4785), [anon_sym_AT] = ACTIONS(4785), [sym_bool] = ACTIONS(4782), [sym_byte] = ACTIONS(4782), [sym_ubyte] = ACTIONS(4782), [sym_char] = ACTIONS(4782), [sym_short] = ACTIONS(4782), [sym_ushort] = ACTIONS(4782), [sym_int] = ACTIONS(4782), [sym_uint] = ACTIONS(4782), [sym_long] = ACTIONS(4782), [sym_ulong] = ACTIONS(4782), [sym_cent] = ACTIONS(4782), [sym_ucent] = ACTIONS(4782), [sym_wchar] = ACTIONS(4782), [sym_dchar] = ACTIONS(4782), [sym_float] = ACTIONS(4782), [sym_double] = ACTIONS(4782), [sym_real] = ACTIONS(4782), [sym_ifloat] = ACTIONS(4782), [sym_idouble] = ACTIONS(4782), [sym_ireal] = ACTIONS(4782), [sym_cfloat] = ACTIONS(4782), [sym_cdouble] = ACTIONS(4782), [sym_creal] = ACTIONS(4782), [sym_size_t] = ACTIONS(4782), [sym_ptrdiff_t] = ACTIONS(4782), [sym_string] = ACTIONS(4782), [sym_cstring] = ACTIONS(4782), [sym_dstring] = ACTIONS(4782), [sym_wstring] = ACTIONS(4782), [sym_noreturn] = ACTIONS(4782), [sym_true] = ACTIONS(4782), [sym_false] = ACTIONS(4782), [sym_null] = ACTIONS(4782), [sym_super] = ACTIONS(4782), [sym_this] = ACTIONS(4782), [sym_abstract] = ACTIONS(4782), [sym_alias] = ACTIONS(4782), [sym_align] = ACTIONS(4782), [sym_asm] = ACTIONS(4782), [sym_assert] = ACTIONS(4782), [sym_auto] = ACTIONS(4782), [sym_break] = ACTIONS(4782), [sym_case] = ACTIONS(4782), [sym_cast] = ACTIONS(4782), [sym_catch] = ACTIONS(4782), [sym_class] = ACTIONS(4782), [sym_const] = ACTIONS(4782), [sym_continue] = ACTIONS(4782), [sym_debug] = ACTIONS(4782), [sym_default] = ACTIONS(4782), [sym_delegate] = ACTIONS(4782), [sym_delete] = ACTIONS(4782), [sym_deprecated] = ACTIONS(4782), [sym_do] = ACTIONS(4782), [sym_else] = ACTIONS(4782), [sym_enum] = ACTIONS(4782), [sym_export] = ACTIONS(4782), [sym_extern] = ACTIONS(4782), [sym_final] = ACTIONS(4782), [sym_finally] = ACTIONS(4782), [sym_for] = ACTIONS(4782), [sym_foreach] = ACTIONS(4782), [sym_foreach_reverse] = ACTIONS(4782), [sym_function] = ACTIONS(4782), [sym_goto] = ACTIONS(4782), [sym_if] = ACTIONS(4782), [sym_immutable] = ACTIONS(4782), [sym_import] = ACTIONS(4782), [sym_in] = ACTIONS(4782), [sym_inout] = ACTIONS(4782), [sym_interface] = ACTIONS(4782), [sym_invariant] = ACTIONS(4782), [sym_is] = ACTIONS(4782), [sym_mixin] = ACTIONS(4782), [sym_new] = ACTIONS(4782), [sym_nothrow] = ACTIONS(4782), [sym_out] = ACTIONS(4782), [sym_override] = ACTIONS(4782), [sym_package] = ACTIONS(4782), [sym_pragma] = ACTIONS(4782), [sym_private] = ACTIONS(4782), [sym_protected] = ACTIONS(4782), [sym_public] = ACTIONS(4782), [sym_pure] = ACTIONS(4782), [sym_ref] = ACTIONS(4782), [sym_return] = ACTIONS(4782), [sym_scope] = ACTIONS(4782), [sym_shared] = ACTIONS(4782), [sym_static] = ACTIONS(4782), [sym_struct] = ACTIONS(4782), [sym_switch] = ACTIONS(4782), [sym_synchronized] = ACTIONS(4782), [sym_template] = ACTIONS(4782), [sym_throw] = ACTIONS(4782), [sym_try] = ACTIONS(4782), [sym_typeid] = ACTIONS(4782), [sym_typeof] = ACTIONS(4782), [sym_union] = ACTIONS(4782), [sym_unittest] = ACTIONS(4782), [sym_version] = ACTIONS(4782), [sym_while] = ACTIONS(4782), [sym_with] = ACTIONS(4782), [sym_gshared] = ACTIONS(4782), [sym_traits] = ACTIONS(4782), [sym_vector] = ACTIONS(4782), [sym_void] = ACTIONS(4782), [anon_sym_BQUOTE] = ACTIONS(4785), [anon_sym_r_DQUOTE] = ACTIONS(4785), [anon_sym_x_DQUOTE] = ACTIONS(4785), [anon_sym_DQUOTE] = ACTIONS(4785), [anon_sym_i_BQUOTE] = ACTIONS(4785), [anon_sym_i_DQUOTE] = ACTIONS(4785), [anon_sym_iq_LBRACE] = ACTIONS(4785), [aux_sym_char_literal_token1] = ACTIONS(4785), [anon_sym_SQUOTE] = ACTIONS(4782), [anon_sym___DATE__] = ACTIONS(4782), [anon_sym___FILE__] = ACTIONS(4782), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4782), [anon_sym___FUNCTION__] = ACTIONS(4782), [anon_sym___LINE__] = ACTIONS(4782), [anon_sym___MODULE__] = ACTIONS(4782), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4782), [anon_sym___TIME__] = ACTIONS(4782), [anon_sym___TIMESTAMP__] = ACTIONS(4782), [anon_sym___VENDOR__] = ACTIONS(4782), [anon_sym___VERSION__] = ACTIONS(4782), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4785), [sym_float_literal] = ACTIONS(4785), [sym__string] = ACTIONS(4785), }, [1477] = { [sym_identifier] = ACTIONS(4788), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4790), [anon_sym_RBRACE] = ACTIONS(4790), [anon_sym_LBRACE] = ACTIONS(4790), [anon_sym_DOT] = ACTIONS(4790), [anon_sym_AMP] = ACTIONS(4790), [anon_sym_DASH] = ACTIONS(4788), [anon_sym_DASH_DASH] = ACTIONS(4790), [anon_sym_PLUS] = ACTIONS(4788), [anon_sym_PLUS_PLUS] = ACTIONS(4790), [anon_sym_BANG] = ACTIONS(4790), [anon_sym_LPAREN] = ACTIONS(4790), [anon_sym_RPAREN] = ACTIONS(4790), [anon_sym_LBRACK] = ACTIONS(4790), [anon_sym_SEMI] = ACTIONS(4790), [anon_sym_DOLLAR] = ACTIONS(4790), [anon_sym_STAR] = ACTIONS(4790), [anon_sym_TILDE] = ACTIONS(4790), [anon_sym_AT] = ACTIONS(4790), [sym_bool] = ACTIONS(4788), [sym_byte] = ACTIONS(4788), [sym_ubyte] = ACTIONS(4788), [sym_char] = ACTIONS(4788), [sym_short] = ACTIONS(4788), [sym_ushort] = ACTIONS(4788), [sym_int] = ACTIONS(4788), [sym_uint] = ACTIONS(4788), [sym_long] = ACTIONS(4788), [sym_ulong] = ACTIONS(4788), [sym_cent] = ACTIONS(4788), [sym_ucent] = ACTIONS(4788), [sym_wchar] = ACTIONS(4788), [sym_dchar] = ACTIONS(4788), [sym_float] = ACTIONS(4788), [sym_double] = ACTIONS(4788), [sym_real] = ACTIONS(4788), [sym_ifloat] = ACTIONS(4788), [sym_idouble] = ACTIONS(4788), [sym_ireal] = ACTIONS(4788), [sym_cfloat] = ACTIONS(4788), [sym_cdouble] = ACTIONS(4788), [sym_creal] = ACTIONS(4788), [sym_size_t] = ACTIONS(4788), [sym_ptrdiff_t] = ACTIONS(4788), [sym_string] = ACTIONS(4788), [sym_cstring] = ACTIONS(4788), [sym_dstring] = ACTIONS(4788), [sym_wstring] = ACTIONS(4788), [sym_noreturn] = ACTIONS(4788), [sym_true] = ACTIONS(4788), [sym_false] = ACTIONS(4788), [sym_null] = ACTIONS(4788), [sym_super] = ACTIONS(4788), [sym_this] = ACTIONS(4788), [sym_abstract] = ACTIONS(4788), [sym_alias] = ACTIONS(4788), [sym_align] = ACTIONS(4788), [sym_asm] = ACTIONS(4788), [sym_assert] = ACTIONS(4788), [sym_auto] = ACTIONS(4788), [sym_break] = ACTIONS(4788), [sym_case] = ACTIONS(4788), [sym_cast] = ACTIONS(4788), [sym_catch] = ACTIONS(4788), [sym_class] = ACTIONS(4788), [sym_const] = ACTIONS(4788), [sym_continue] = ACTIONS(4788), [sym_debug] = ACTIONS(4788), [sym_default] = ACTIONS(4788), [sym_delegate] = ACTIONS(4788), [sym_delete] = ACTIONS(4788), [sym_deprecated] = ACTIONS(4788), [sym_do] = ACTIONS(4788), [sym_else] = ACTIONS(4788), [sym_enum] = ACTIONS(4788), [sym_export] = ACTIONS(4788), [sym_extern] = ACTIONS(4788), [sym_final] = ACTIONS(4788), [sym_finally] = ACTIONS(4788), [sym_for] = ACTIONS(4788), [sym_foreach] = ACTIONS(4788), [sym_foreach_reverse] = ACTIONS(4788), [sym_function] = ACTIONS(4788), [sym_goto] = ACTIONS(4788), [sym_if] = ACTIONS(4788), [sym_immutable] = ACTIONS(4788), [sym_import] = ACTIONS(4788), [sym_in] = ACTIONS(4788), [sym_inout] = ACTIONS(4788), [sym_interface] = ACTIONS(4788), [sym_invariant] = ACTIONS(4788), [sym_is] = ACTIONS(4788), [sym_mixin] = ACTIONS(4788), [sym_new] = ACTIONS(4788), [sym_nothrow] = ACTIONS(4788), [sym_out] = ACTIONS(4788), [sym_override] = ACTIONS(4788), [sym_package] = ACTIONS(4788), [sym_pragma] = ACTIONS(4788), [sym_private] = ACTIONS(4788), [sym_protected] = ACTIONS(4788), [sym_public] = ACTIONS(4788), [sym_pure] = ACTIONS(4788), [sym_ref] = ACTIONS(4788), [sym_return] = ACTIONS(4788), [sym_scope] = ACTIONS(4788), [sym_shared] = ACTIONS(4788), [sym_static] = ACTIONS(4788), [sym_struct] = ACTIONS(4788), [sym_switch] = ACTIONS(4788), [sym_synchronized] = ACTIONS(4788), [sym_template] = ACTIONS(4788), [sym_throw] = ACTIONS(4788), [sym_try] = ACTIONS(4788), [sym_typeid] = ACTIONS(4788), [sym_typeof] = ACTIONS(4788), [sym_union] = ACTIONS(4788), [sym_unittest] = ACTIONS(4788), [sym_version] = ACTIONS(4788), [sym_while] = ACTIONS(4788), [sym_with] = ACTIONS(4788), [sym_gshared] = ACTIONS(4788), [sym_traits] = ACTIONS(4788), [sym_vector] = ACTIONS(4788), [sym_void] = ACTIONS(4788), [anon_sym_BQUOTE] = ACTIONS(4790), [anon_sym_r_DQUOTE] = ACTIONS(4790), [anon_sym_x_DQUOTE] = ACTIONS(4790), [anon_sym_DQUOTE] = ACTIONS(4790), [anon_sym_i_BQUOTE] = ACTIONS(4790), [anon_sym_i_DQUOTE] = ACTIONS(4790), [anon_sym_iq_LBRACE] = ACTIONS(4790), [aux_sym_char_literal_token1] = ACTIONS(4790), [anon_sym_SQUOTE] = ACTIONS(4788), [anon_sym___DATE__] = ACTIONS(4788), [anon_sym___FILE__] = ACTIONS(4788), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4788), [anon_sym___FUNCTION__] = ACTIONS(4788), [anon_sym___LINE__] = ACTIONS(4788), [anon_sym___MODULE__] = ACTIONS(4788), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4788), [anon_sym___TIME__] = ACTIONS(4788), [anon_sym___TIMESTAMP__] = ACTIONS(4788), [anon_sym___VENDOR__] = ACTIONS(4788), [anon_sym___VERSION__] = ACTIONS(4788), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4790), [sym_float_literal] = ACTIONS(4790), [sym__string] = ACTIONS(4790), }, [1478] = { [sym_identifier] = ACTIONS(4792), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4795), [anon_sym_RBRACE] = ACTIONS(4795), [anon_sym_LBRACE] = ACTIONS(4795), [anon_sym_DOT] = ACTIONS(4795), [anon_sym_AMP] = ACTIONS(4795), [anon_sym_DASH] = ACTIONS(4792), [anon_sym_DASH_DASH] = ACTIONS(4795), [anon_sym_PLUS] = ACTIONS(4792), [anon_sym_PLUS_PLUS] = ACTIONS(4795), [anon_sym_BANG] = ACTIONS(4795), [anon_sym_LPAREN] = ACTIONS(4795), [anon_sym_RPAREN] = ACTIONS(4795), [anon_sym_LBRACK] = ACTIONS(4795), [anon_sym_SEMI] = ACTIONS(4795), [anon_sym_DOLLAR] = ACTIONS(4795), [anon_sym_STAR] = ACTIONS(4795), [anon_sym_TILDE] = ACTIONS(4795), [anon_sym_AT] = ACTIONS(4795), [sym_bool] = ACTIONS(4792), [sym_byte] = ACTIONS(4792), [sym_ubyte] = ACTIONS(4792), [sym_char] = ACTIONS(4792), [sym_short] = ACTIONS(4792), [sym_ushort] = ACTIONS(4792), [sym_int] = ACTIONS(4792), [sym_uint] = ACTIONS(4792), [sym_long] = ACTIONS(4792), [sym_ulong] = ACTIONS(4792), [sym_cent] = ACTIONS(4792), [sym_ucent] = ACTIONS(4792), [sym_wchar] = ACTIONS(4792), [sym_dchar] = ACTIONS(4792), [sym_float] = ACTIONS(4792), [sym_double] = ACTIONS(4792), [sym_real] = ACTIONS(4792), [sym_ifloat] = ACTIONS(4792), [sym_idouble] = ACTIONS(4792), [sym_ireal] = ACTIONS(4792), [sym_cfloat] = ACTIONS(4792), [sym_cdouble] = ACTIONS(4792), [sym_creal] = ACTIONS(4792), [sym_size_t] = ACTIONS(4792), [sym_ptrdiff_t] = ACTIONS(4792), [sym_string] = ACTIONS(4792), [sym_cstring] = ACTIONS(4792), [sym_dstring] = ACTIONS(4792), [sym_wstring] = ACTIONS(4792), [sym_noreturn] = ACTIONS(4792), [sym_true] = ACTIONS(4792), [sym_false] = ACTIONS(4792), [sym_null] = ACTIONS(4792), [sym_super] = ACTIONS(4792), [sym_this] = ACTIONS(4792), [sym_abstract] = ACTIONS(4792), [sym_alias] = ACTIONS(4792), [sym_align] = ACTIONS(4792), [sym_asm] = ACTIONS(4792), [sym_assert] = ACTIONS(4792), [sym_auto] = ACTIONS(4792), [sym_break] = ACTIONS(4792), [sym_case] = ACTIONS(4792), [sym_cast] = ACTIONS(4792), [sym_catch] = ACTIONS(4792), [sym_class] = ACTIONS(4792), [sym_const] = ACTIONS(4792), [sym_continue] = ACTIONS(4792), [sym_debug] = ACTIONS(4792), [sym_default] = ACTIONS(4792), [sym_delegate] = ACTIONS(4792), [sym_delete] = ACTIONS(4792), [sym_deprecated] = ACTIONS(4792), [sym_do] = ACTIONS(4792), [sym_else] = ACTIONS(4792), [sym_enum] = ACTIONS(4792), [sym_export] = ACTIONS(4792), [sym_extern] = ACTIONS(4792), [sym_final] = ACTIONS(4792), [sym_finally] = ACTIONS(4792), [sym_for] = ACTIONS(4792), [sym_foreach] = ACTIONS(4792), [sym_foreach_reverse] = ACTIONS(4792), [sym_function] = ACTIONS(4792), [sym_goto] = ACTIONS(4792), [sym_if] = ACTIONS(4792), [sym_immutable] = ACTIONS(4792), [sym_import] = ACTIONS(4792), [sym_in] = ACTIONS(4792), [sym_inout] = ACTIONS(4792), [sym_interface] = ACTIONS(4792), [sym_invariant] = ACTIONS(4792), [sym_is] = ACTIONS(4792), [sym_mixin] = ACTIONS(4792), [sym_new] = ACTIONS(4792), [sym_nothrow] = ACTIONS(4792), [sym_out] = ACTIONS(4792), [sym_override] = ACTIONS(4792), [sym_package] = ACTIONS(4792), [sym_pragma] = ACTIONS(4792), [sym_private] = ACTIONS(4792), [sym_protected] = ACTIONS(4792), [sym_public] = ACTIONS(4792), [sym_pure] = ACTIONS(4792), [sym_ref] = ACTIONS(4792), [sym_return] = ACTIONS(4792), [sym_scope] = ACTIONS(4792), [sym_shared] = ACTIONS(4792), [sym_static] = ACTIONS(4792), [sym_struct] = ACTIONS(4792), [sym_switch] = ACTIONS(4792), [sym_synchronized] = ACTIONS(4792), [sym_template] = ACTIONS(4792), [sym_throw] = ACTIONS(4792), [sym_try] = ACTIONS(4792), [sym_typeid] = ACTIONS(4792), [sym_typeof] = ACTIONS(4792), [sym_union] = ACTIONS(4792), [sym_unittest] = ACTIONS(4792), [sym_version] = ACTIONS(4792), [sym_while] = ACTIONS(4792), [sym_with] = ACTIONS(4792), [sym_gshared] = ACTIONS(4792), [sym_traits] = ACTIONS(4792), [sym_vector] = ACTIONS(4792), [sym_void] = ACTIONS(4792), [anon_sym_BQUOTE] = ACTIONS(4795), [anon_sym_r_DQUOTE] = ACTIONS(4795), [anon_sym_x_DQUOTE] = ACTIONS(4795), [anon_sym_DQUOTE] = ACTIONS(4795), [anon_sym_i_BQUOTE] = ACTIONS(4795), [anon_sym_i_DQUOTE] = ACTIONS(4795), [anon_sym_iq_LBRACE] = ACTIONS(4795), [aux_sym_char_literal_token1] = ACTIONS(4795), [anon_sym_SQUOTE] = ACTIONS(4792), [anon_sym___DATE__] = ACTIONS(4792), [anon_sym___FILE__] = ACTIONS(4792), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4792), [anon_sym___FUNCTION__] = ACTIONS(4792), [anon_sym___LINE__] = ACTIONS(4792), [anon_sym___MODULE__] = ACTIONS(4792), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4792), [anon_sym___TIME__] = ACTIONS(4792), [anon_sym___TIMESTAMP__] = ACTIONS(4792), [anon_sym___VENDOR__] = ACTIONS(4792), [anon_sym___VERSION__] = ACTIONS(4792), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4795), [sym_float_literal] = ACTIONS(4795), [sym__string] = ACTIONS(4795), }, [1479] = { [sym_identifier] = ACTIONS(4798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4800), [anon_sym_RBRACE] = ACTIONS(4800), [anon_sym_LBRACE] = ACTIONS(4800), [anon_sym_DOT] = ACTIONS(4800), [anon_sym_AMP] = ACTIONS(4800), [anon_sym_DASH] = ACTIONS(4798), [anon_sym_DASH_DASH] = ACTIONS(4800), [anon_sym_PLUS] = ACTIONS(4798), [anon_sym_PLUS_PLUS] = ACTIONS(4800), [anon_sym_BANG] = ACTIONS(4800), [anon_sym_LPAREN] = ACTIONS(4800), [anon_sym_RPAREN] = ACTIONS(4800), [anon_sym_LBRACK] = ACTIONS(4800), [anon_sym_SEMI] = ACTIONS(4800), [anon_sym_DOLLAR] = ACTIONS(4800), [anon_sym_STAR] = ACTIONS(4800), [anon_sym_TILDE] = ACTIONS(4800), [anon_sym_AT] = ACTIONS(4800), [sym_bool] = ACTIONS(4798), [sym_byte] = ACTIONS(4798), [sym_ubyte] = ACTIONS(4798), [sym_char] = ACTIONS(4798), [sym_short] = ACTIONS(4798), [sym_ushort] = ACTIONS(4798), [sym_int] = ACTIONS(4798), [sym_uint] = ACTIONS(4798), [sym_long] = ACTIONS(4798), [sym_ulong] = ACTIONS(4798), [sym_cent] = ACTIONS(4798), [sym_ucent] = ACTIONS(4798), [sym_wchar] = ACTIONS(4798), [sym_dchar] = ACTIONS(4798), [sym_float] = ACTIONS(4798), [sym_double] = ACTIONS(4798), [sym_real] = ACTIONS(4798), [sym_ifloat] = ACTIONS(4798), [sym_idouble] = ACTIONS(4798), [sym_ireal] = ACTIONS(4798), [sym_cfloat] = ACTIONS(4798), [sym_cdouble] = ACTIONS(4798), [sym_creal] = ACTIONS(4798), [sym_size_t] = ACTIONS(4798), [sym_ptrdiff_t] = ACTIONS(4798), [sym_string] = ACTIONS(4798), [sym_cstring] = ACTIONS(4798), [sym_dstring] = ACTIONS(4798), [sym_wstring] = ACTIONS(4798), [sym_noreturn] = ACTIONS(4798), [sym_true] = ACTIONS(4798), [sym_false] = ACTIONS(4798), [sym_null] = ACTIONS(4798), [sym_super] = ACTIONS(4798), [sym_this] = ACTIONS(4798), [sym_abstract] = ACTIONS(4798), [sym_alias] = ACTIONS(4798), [sym_align] = ACTIONS(4798), [sym_asm] = ACTIONS(4798), [sym_assert] = ACTIONS(4798), [sym_auto] = ACTIONS(4798), [sym_break] = ACTIONS(4798), [sym_case] = ACTIONS(4798), [sym_cast] = ACTIONS(4798), [sym_catch] = ACTIONS(4798), [sym_class] = ACTIONS(4798), [sym_const] = ACTIONS(4798), [sym_continue] = ACTIONS(4798), [sym_debug] = ACTIONS(4798), [sym_default] = ACTIONS(4798), [sym_delegate] = ACTIONS(4798), [sym_delete] = ACTIONS(4798), [sym_deprecated] = ACTIONS(4798), [sym_do] = ACTIONS(4798), [sym_else] = ACTIONS(4798), [sym_enum] = ACTIONS(4798), [sym_export] = ACTIONS(4798), [sym_extern] = ACTIONS(4798), [sym_final] = ACTIONS(4798), [sym_finally] = ACTIONS(4798), [sym_for] = ACTIONS(4798), [sym_foreach] = ACTIONS(4798), [sym_foreach_reverse] = ACTIONS(4798), [sym_function] = ACTIONS(4798), [sym_goto] = ACTIONS(4798), [sym_if] = ACTIONS(4798), [sym_immutable] = ACTIONS(4798), [sym_import] = ACTIONS(4798), [sym_in] = ACTIONS(4798), [sym_inout] = ACTIONS(4798), [sym_interface] = ACTIONS(4798), [sym_invariant] = ACTIONS(4798), [sym_is] = ACTIONS(4798), [sym_mixin] = ACTIONS(4798), [sym_new] = ACTIONS(4798), [sym_nothrow] = ACTIONS(4798), [sym_out] = ACTIONS(4798), [sym_override] = ACTIONS(4798), [sym_package] = ACTIONS(4798), [sym_pragma] = ACTIONS(4798), [sym_private] = ACTIONS(4798), [sym_protected] = ACTIONS(4798), [sym_public] = ACTIONS(4798), [sym_pure] = ACTIONS(4798), [sym_ref] = ACTIONS(4798), [sym_return] = ACTIONS(4798), [sym_scope] = ACTIONS(4798), [sym_shared] = ACTIONS(4798), [sym_static] = ACTIONS(4798), [sym_struct] = ACTIONS(4798), [sym_switch] = ACTIONS(4798), [sym_synchronized] = ACTIONS(4798), [sym_template] = ACTIONS(4798), [sym_throw] = ACTIONS(4798), [sym_try] = ACTIONS(4798), [sym_typeid] = ACTIONS(4798), [sym_typeof] = ACTIONS(4798), [sym_union] = ACTIONS(4798), [sym_unittest] = ACTIONS(4798), [sym_version] = ACTIONS(4798), [sym_while] = ACTIONS(4798), [sym_with] = ACTIONS(4798), [sym_gshared] = ACTIONS(4798), [sym_traits] = ACTIONS(4798), [sym_vector] = ACTIONS(4798), [sym_void] = ACTIONS(4798), [anon_sym_BQUOTE] = ACTIONS(4800), [anon_sym_r_DQUOTE] = ACTIONS(4800), [anon_sym_x_DQUOTE] = ACTIONS(4800), [anon_sym_DQUOTE] = ACTIONS(4800), [anon_sym_i_BQUOTE] = ACTIONS(4800), [anon_sym_i_DQUOTE] = ACTIONS(4800), [anon_sym_iq_LBRACE] = ACTIONS(4800), [aux_sym_char_literal_token1] = ACTIONS(4800), [anon_sym_SQUOTE] = ACTIONS(4798), [anon_sym___DATE__] = ACTIONS(4798), [anon_sym___FILE__] = ACTIONS(4798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4798), [anon_sym___FUNCTION__] = ACTIONS(4798), [anon_sym___LINE__] = ACTIONS(4798), [anon_sym___MODULE__] = ACTIONS(4798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4798), [anon_sym___TIME__] = ACTIONS(4798), [anon_sym___TIMESTAMP__] = ACTIONS(4798), [anon_sym___VENDOR__] = ACTIONS(4798), [anon_sym___VERSION__] = ACTIONS(4798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4800), [sym_float_literal] = ACTIONS(4800), [sym__string] = ACTIONS(4800), }, [1480] = { [sym_identifier] = ACTIONS(4802), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4804), [anon_sym_RBRACE] = ACTIONS(4804), [anon_sym_LBRACE] = ACTIONS(4804), [anon_sym_DOT] = ACTIONS(4804), [anon_sym_AMP] = ACTIONS(4804), [anon_sym_DASH] = ACTIONS(4802), [anon_sym_DASH_DASH] = ACTIONS(4804), [anon_sym_PLUS] = ACTIONS(4802), [anon_sym_PLUS_PLUS] = ACTIONS(4804), [anon_sym_BANG] = ACTIONS(4804), [anon_sym_LPAREN] = ACTIONS(4804), [anon_sym_RPAREN] = ACTIONS(4804), [anon_sym_LBRACK] = ACTIONS(4804), [anon_sym_SEMI] = ACTIONS(4804), [anon_sym_DOLLAR] = ACTIONS(4804), [anon_sym_STAR] = ACTIONS(4804), [anon_sym_TILDE] = ACTIONS(4804), [anon_sym_AT] = ACTIONS(4804), [sym_bool] = ACTIONS(4802), [sym_byte] = ACTIONS(4802), [sym_ubyte] = ACTIONS(4802), [sym_char] = ACTIONS(4802), [sym_short] = ACTIONS(4802), [sym_ushort] = ACTIONS(4802), [sym_int] = ACTIONS(4802), [sym_uint] = ACTIONS(4802), [sym_long] = ACTIONS(4802), [sym_ulong] = ACTIONS(4802), [sym_cent] = ACTIONS(4802), [sym_ucent] = ACTIONS(4802), [sym_wchar] = ACTIONS(4802), [sym_dchar] = ACTIONS(4802), [sym_float] = ACTIONS(4802), [sym_double] = ACTIONS(4802), [sym_real] = ACTIONS(4802), [sym_ifloat] = ACTIONS(4802), [sym_idouble] = ACTIONS(4802), [sym_ireal] = ACTIONS(4802), [sym_cfloat] = ACTIONS(4802), [sym_cdouble] = ACTIONS(4802), [sym_creal] = ACTIONS(4802), [sym_size_t] = ACTIONS(4802), [sym_ptrdiff_t] = ACTIONS(4802), [sym_string] = ACTIONS(4802), [sym_cstring] = ACTIONS(4802), [sym_dstring] = ACTIONS(4802), [sym_wstring] = ACTIONS(4802), [sym_noreturn] = ACTIONS(4802), [sym_true] = ACTIONS(4802), [sym_false] = ACTIONS(4802), [sym_null] = ACTIONS(4802), [sym_super] = ACTIONS(4802), [sym_this] = ACTIONS(4802), [sym_abstract] = ACTIONS(4802), [sym_alias] = ACTIONS(4802), [sym_align] = ACTIONS(4802), [sym_asm] = ACTIONS(4802), [sym_assert] = ACTIONS(4802), [sym_auto] = ACTIONS(4802), [sym_break] = ACTIONS(4802), [sym_case] = ACTIONS(4802), [sym_cast] = ACTIONS(4802), [sym_catch] = ACTIONS(4802), [sym_class] = ACTIONS(4802), [sym_const] = ACTIONS(4802), [sym_continue] = ACTIONS(4802), [sym_debug] = ACTIONS(4802), [sym_default] = ACTIONS(4802), [sym_delegate] = ACTIONS(4802), [sym_delete] = ACTIONS(4802), [sym_deprecated] = ACTIONS(4802), [sym_do] = ACTIONS(4802), [sym_else] = ACTIONS(4802), [sym_enum] = ACTIONS(4802), [sym_export] = ACTIONS(4802), [sym_extern] = ACTIONS(4802), [sym_final] = ACTIONS(4802), [sym_finally] = ACTIONS(4802), [sym_for] = ACTIONS(4802), [sym_foreach] = ACTIONS(4802), [sym_foreach_reverse] = ACTIONS(4802), [sym_function] = ACTIONS(4802), [sym_goto] = ACTIONS(4802), [sym_if] = ACTIONS(4802), [sym_immutable] = ACTIONS(4802), [sym_import] = ACTIONS(4802), [sym_in] = ACTIONS(4802), [sym_inout] = ACTIONS(4802), [sym_interface] = ACTIONS(4802), [sym_invariant] = ACTIONS(4802), [sym_is] = ACTIONS(4802), [sym_mixin] = ACTIONS(4802), [sym_new] = ACTIONS(4802), [sym_nothrow] = ACTIONS(4802), [sym_out] = ACTIONS(4802), [sym_override] = ACTIONS(4802), [sym_package] = ACTIONS(4802), [sym_pragma] = ACTIONS(4802), [sym_private] = ACTIONS(4802), [sym_protected] = ACTIONS(4802), [sym_public] = ACTIONS(4802), [sym_pure] = ACTIONS(4802), [sym_ref] = ACTIONS(4802), [sym_return] = ACTIONS(4802), [sym_scope] = ACTIONS(4802), [sym_shared] = ACTIONS(4802), [sym_static] = ACTIONS(4802), [sym_struct] = ACTIONS(4802), [sym_switch] = ACTIONS(4802), [sym_synchronized] = ACTIONS(4802), [sym_template] = ACTIONS(4802), [sym_throw] = ACTIONS(4802), [sym_try] = ACTIONS(4802), [sym_typeid] = ACTIONS(4802), [sym_typeof] = ACTIONS(4802), [sym_union] = ACTIONS(4802), [sym_unittest] = ACTIONS(4802), [sym_version] = ACTIONS(4802), [sym_while] = ACTIONS(4802), [sym_with] = ACTIONS(4802), [sym_gshared] = ACTIONS(4802), [sym_traits] = ACTIONS(4802), [sym_vector] = ACTIONS(4802), [sym_void] = ACTIONS(4802), [anon_sym_BQUOTE] = ACTIONS(4804), [anon_sym_r_DQUOTE] = ACTIONS(4804), [anon_sym_x_DQUOTE] = ACTIONS(4804), [anon_sym_DQUOTE] = ACTIONS(4804), [anon_sym_i_BQUOTE] = ACTIONS(4804), [anon_sym_i_DQUOTE] = ACTIONS(4804), [anon_sym_iq_LBRACE] = ACTIONS(4804), [aux_sym_char_literal_token1] = ACTIONS(4804), [anon_sym_SQUOTE] = ACTIONS(4802), [anon_sym___DATE__] = ACTIONS(4802), [anon_sym___FILE__] = ACTIONS(4802), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4802), [anon_sym___FUNCTION__] = ACTIONS(4802), [anon_sym___LINE__] = ACTIONS(4802), [anon_sym___MODULE__] = ACTIONS(4802), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4802), [anon_sym___TIME__] = ACTIONS(4802), [anon_sym___TIMESTAMP__] = ACTIONS(4802), [anon_sym___VENDOR__] = ACTIONS(4802), [anon_sym___VERSION__] = ACTIONS(4802), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4804), [sym_float_literal] = ACTIONS(4804), [sym__string] = ACTIONS(4804), }, [1481] = { [sym_identifier] = ACTIONS(4806), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4808), [anon_sym_RBRACE] = ACTIONS(4808), [anon_sym_LBRACE] = ACTIONS(4808), [anon_sym_DOT] = ACTIONS(4808), [anon_sym_AMP] = ACTIONS(4808), [anon_sym_DASH] = ACTIONS(4806), [anon_sym_DASH_DASH] = ACTIONS(4808), [anon_sym_PLUS] = ACTIONS(4806), [anon_sym_PLUS_PLUS] = ACTIONS(4808), [anon_sym_BANG] = ACTIONS(4808), [anon_sym_LPAREN] = ACTIONS(4808), [anon_sym_RPAREN] = ACTIONS(4808), [anon_sym_LBRACK] = ACTIONS(4808), [anon_sym_SEMI] = ACTIONS(4808), [anon_sym_DOLLAR] = ACTIONS(4808), [anon_sym_STAR] = ACTIONS(4808), [anon_sym_TILDE] = ACTIONS(4808), [anon_sym_AT] = ACTIONS(4808), [sym_bool] = ACTIONS(4806), [sym_byte] = ACTIONS(4806), [sym_ubyte] = ACTIONS(4806), [sym_char] = ACTIONS(4806), [sym_short] = ACTIONS(4806), [sym_ushort] = ACTIONS(4806), [sym_int] = ACTIONS(4806), [sym_uint] = ACTIONS(4806), [sym_long] = ACTIONS(4806), [sym_ulong] = ACTIONS(4806), [sym_cent] = ACTIONS(4806), [sym_ucent] = ACTIONS(4806), [sym_wchar] = ACTIONS(4806), [sym_dchar] = ACTIONS(4806), [sym_float] = ACTIONS(4806), [sym_double] = ACTIONS(4806), [sym_real] = ACTIONS(4806), [sym_ifloat] = ACTIONS(4806), [sym_idouble] = ACTIONS(4806), [sym_ireal] = ACTIONS(4806), [sym_cfloat] = ACTIONS(4806), [sym_cdouble] = ACTIONS(4806), [sym_creal] = ACTIONS(4806), [sym_size_t] = ACTIONS(4806), [sym_ptrdiff_t] = ACTIONS(4806), [sym_string] = ACTIONS(4806), [sym_cstring] = ACTIONS(4806), [sym_dstring] = ACTIONS(4806), [sym_wstring] = ACTIONS(4806), [sym_noreturn] = ACTIONS(4806), [sym_true] = ACTIONS(4806), [sym_false] = ACTIONS(4806), [sym_null] = ACTIONS(4806), [sym_super] = ACTIONS(4806), [sym_this] = ACTIONS(4806), [sym_abstract] = ACTIONS(4806), [sym_alias] = ACTIONS(4806), [sym_align] = ACTIONS(4806), [sym_asm] = ACTIONS(4806), [sym_assert] = ACTIONS(4806), [sym_auto] = ACTIONS(4806), [sym_break] = ACTIONS(4806), [sym_case] = ACTIONS(4806), [sym_cast] = ACTIONS(4806), [sym_catch] = ACTIONS(4806), [sym_class] = ACTIONS(4806), [sym_const] = ACTIONS(4806), [sym_continue] = ACTIONS(4806), [sym_debug] = ACTIONS(4806), [sym_default] = ACTIONS(4806), [sym_delegate] = ACTIONS(4806), [sym_delete] = ACTIONS(4806), [sym_deprecated] = ACTIONS(4806), [sym_do] = ACTIONS(4806), [sym_else] = ACTIONS(4806), [sym_enum] = ACTIONS(4806), [sym_export] = ACTIONS(4806), [sym_extern] = ACTIONS(4806), [sym_final] = ACTIONS(4806), [sym_finally] = ACTIONS(4806), [sym_for] = ACTIONS(4806), [sym_foreach] = ACTIONS(4806), [sym_foreach_reverse] = ACTIONS(4806), [sym_function] = ACTIONS(4806), [sym_goto] = ACTIONS(4806), [sym_if] = ACTIONS(4806), [sym_immutable] = ACTIONS(4806), [sym_import] = ACTIONS(4806), [sym_in] = ACTIONS(4806), [sym_inout] = ACTIONS(4806), [sym_interface] = ACTIONS(4806), [sym_invariant] = ACTIONS(4806), [sym_is] = ACTIONS(4806), [sym_mixin] = ACTIONS(4806), [sym_new] = ACTIONS(4806), [sym_nothrow] = ACTIONS(4806), [sym_out] = ACTIONS(4806), [sym_override] = ACTIONS(4806), [sym_package] = ACTIONS(4806), [sym_pragma] = ACTIONS(4806), [sym_private] = ACTIONS(4806), [sym_protected] = ACTIONS(4806), [sym_public] = ACTIONS(4806), [sym_pure] = ACTIONS(4806), [sym_ref] = ACTIONS(4806), [sym_return] = ACTIONS(4806), [sym_scope] = ACTIONS(4806), [sym_shared] = ACTIONS(4806), [sym_static] = ACTIONS(4806), [sym_struct] = ACTIONS(4806), [sym_switch] = ACTIONS(4806), [sym_synchronized] = ACTIONS(4806), [sym_template] = ACTIONS(4806), [sym_throw] = ACTIONS(4806), [sym_try] = ACTIONS(4806), [sym_typeid] = ACTIONS(4806), [sym_typeof] = ACTIONS(4806), [sym_union] = ACTIONS(4806), [sym_unittest] = ACTIONS(4806), [sym_version] = ACTIONS(4806), [sym_while] = ACTIONS(4806), [sym_with] = ACTIONS(4806), [sym_gshared] = ACTIONS(4806), [sym_traits] = ACTIONS(4806), [sym_vector] = ACTIONS(4806), [sym_void] = ACTIONS(4806), [anon_sym_BQUOTE] = ACTIONS(4808), [anon_sym_r_DQUOTE] = ACTIONS(4808), [anon_sym_x_DQUOTE] = ACTIONS(4808), [anon_sym_DQUOTE] = ACTIONS(4808), [anon_sym_i_BQUOTE] = ACTIONS(4808), [anon_sym_i_DQUOTE] = ACTIONS(4808), [anon_sym_iq_LBRACE] = ACTIONS(4808), [aux_sym_char_literal_token1] = ACTIONS(4808), [anon_sym_SQUOTE] = ACTIONS(4806), [anon_sym___DATE__] = ACTIONS(4806), [anon_sym___FILE__] = ACTIONS(4806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4806), [anon_sym___FUNCTION__] = ACTIONS(4806), [anon_sym___LINE__] = ACTIONS(4806), [anon_sym___MODULE__] = ACTIONS(4806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4806), [anon_sym___TIME__] = ACTIONS(4806), [anon_sym___TIMESTAMP__] = ACTIONS(4806), [anon_sym___VENDOR__] = ACTIONS(4806), [anon_sym___VERSION__] = ACTIONS(4806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4808), [sym_float_literal] = ACTIONS(4808), [sym__string] = ACTIONS(4808), }, [1482] = { [sym_identifier] = ACTIONS(4810), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4812), [anon_sym_RBRACE] = ACTIONS(4812), [anon_sym_LBRACE] = ACTIONS(4812), [anon_sym_DOT] = ACTIONS(4812), [anon_sym_AMP] = ACTIONS(4812), [anon_sym_DASH] = ACTIONS(4810), [anon_sym_DASH_DASH] = ACTIONS(4812), [anon_sym_PLUS] = ACTIONS(4810), [anon_sym_PLUS_PLUS] = ACTIONS(4812), [anon_sym_BANG] = ACTIONS(4812), [anon_sym_LPAREN] = ACTIONS(4812), [anon_sym_RPAREN] = ACTIONS(4812), [anon_sym_LBRACK] = ACTIONS(4812), [anon_sym_SEMI] = ACTIONS(4812), [anon_sym_DOLLAR] = ACTIONS(4812), [anon_sym_STAR] = ACTIONS(4812), [anon_sym_TILDE] = ACTIONS(4812), [anon_sym_AT] = ACTIONS(4812), [sym_bool] = ACTIONS(4810), [sym_byte] = ACTIONS(4810), [sym_ubyte] = ACTIONS(4810), [sym_char] = ACTIONS(4810), [sym_short] = ACTIONS(4810), [sym_ushort] = ACTIONS(4810), [sym_int] = ACTIONS(4810), [sym_uint] = ACTIONS(4810), [sym_long] = ACTIONS(4810), [sym_ulong] = ACTIONS(4810), [sym_cent] = ACTIONS(4810), [sym_ucent] = ACTIONS(4810), [sym_wchar] = ACTIONS(4810), [sym_dchar] = ACTIONS(4810), [sym_float] = ACTIONS(4810), [sym_double] = ACTIONS(4810), [sym_real] = ACTIONS(4810), [sym_ifloat] = ACTIONS(4810), [sym_idouble] = ACTIONS(4810), [sym_ireal] = ACTIONS(4810), [sym_cfloat] = ACTIONS(4810), [sym_cdouble] = ACTIONS(4810), [sym_creal] = ACTIONS(4810), [sym_size_t] = ACTIONS(4810), [sym_ptrdiff_t] = ACTIONS(4810), [sym_string] = ACTIONS(4810), [sym_cstring] = ACTIONS(4810), [sym_dstring] = ACTIONS(4810), [sym_wstring] = ACTIONS(4810), [sym_noreturn] = ACTIONS(4810), [sym_true] = ACTIONS(4810), [sym_false] = ACTIONS(4810), [sym_null] = ACTIONS(4810), [sym_super] = ACTIONS(4810), [sym_this] = ACTIONS(4810), [sym_abstract] = ACTIONS(4810), [sym_alias] = ACTIONS(4810), [sym_align] = ACTIONS(4810), [sym_asm] = ACTIONS(4810), [sym_assert] = ACTIONS(4810), [sym_auto] = ACTIONS(4810), [sym_break] = ACTIONS(4810), [sym_case] = ACTIONS(4810), [sym_cast] = ACTIONS(4810), [sym_catch] = ACTIONS(4810), [sym_class] = ACTIONS(4810), [sym_const] = ACTIONS(4810), [sym_continue] = ACTIONS(4810), [sym_debug] = ACTIONS(4810), [sym_default] = ACTIONS(4810), [sym_delegate] = ACTIONS(4810), [sym_delete] = ACTIONS(4810), [sym_deprecated] = ACTIONS(4810), [sym_do] = ACTIONS(4810), [sym_else] = ACTIONS(4810), [sym_enum] = ACTIONS(4810), [sym_export] = ACTIONS(4810), [sym_extern] = ACTIONS(4810), [sym_final] = ACTIONS(4810), [sym_finally] = ACTIONS(4810), [sym_for] = ACTIONS(4810), [sym_foreach] = ACTIONS(4810), [sym_foreach_reverse] = ACTIONS(4810), [sym_function] = ACTIONS(4810), [sym_goto] = ACTIONS(4810), [sym_if] = ACTIONS(4810), [sym_immutable] = ACTIONS(4810), [sym_import] = ACTIONS(4810), [sym_in] = ACTIONS(4810), [sym_inout] = ACTIONS(4810), [sym_interface] = ACTIONS(4810), [sym_invariant] = ACTIONS(4810), [sym_is] = ACTIONS(4810), [sym_mixin] = ACTIONS(4810), [sym_new] = ACTIONS(4810), [sym_nothrow] = ACTIONS(4810), [sym_out] = ACTIONS(4810), [sym_override] = ACTIONS(4810), [sym_package] = ACTIONS(4810), [sym_pragma] = ACTIONS(4810), [sym_private] = ACTIONS(4810), [sym_protected] = ACTIONS(4810), [sym_public] = ACTIONS(4810), [sym_pure] = ACTIONS(4810), [sym_ref] = ACTIONS(4810), [sym_return] = ACTIONS(4810), [sym_scope] = ACTIONS(4810), [sym_shared] = ACTIONS(4810), [sym_static] = ACTIONS(4810), [sym_struct] = ACTIONS(4810), [sym_switch] = ACTIONS(4810), [sym_synchronized] = ACTIONS(4810), [sym_template] = ACTIONS(4810), [sym_throw] = ACTIONS(4810), [sym_try] = ACTIONS(4810), [sym_typeid] = ACTIONS(4810), [sym_typeof] = ACTIONS(4810), [sym_union] = ACTIONS(4810), [sym_unittest] = ACTIONS(4810), [sym_version] = ACTIONS(4810), [sym_while] = ACTIONS(4810), [sym_with] = ACTIONS(4810), [sym_gshared] = ACTIONS(4810), [sym_traits] = ACTIONS(4810), [sym_vector] = ACTIONS(4810), [sym_void] = ACTIONS(4810), [anon_sym_BQUOTE] = ACTIONS(4812), [anon_sym_r_DQUOTE] = ACTIONS(4812), [anon_sym_x_DQUOTE] = ACTIONS(4812), [anon_sym_DQUOTE] = ACTIONS(4812), [anon_sym_i_BQUOTE] = ACTIONS(4812), [anon_sym_i_DQUOTE] = ACTIONS(4812), [anon_sym_iq_LBRACE] = ACTIONS(4812), [aux_sym_char_literal_token1] = ACTIONS(4812), [anon_sym_SQUOTE] = ACTIONS(4810), [anon_sym___DATE__] = ACTIONS(4810), [anon_sym___FILE__] = ACTIONS(4810), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4810), [anon_sym___FUNCTION__] = ACTIONS(4810), [anon_sym___LINE__] = ACTIONS(4810), [anon_sym___MODULE__] = ACTIONS(4810), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4810), [anon_sym___TIME__] = ACTIONS(4810), [anon_sym___TIMESTAMP__] = ACTIONS(4810), [anon_sym___VENDOR__] = ACTIONS(4810), [anon_sym___VERSION__] = ACTIONS(4810), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4812), [sym_float_literal] = ACTIONS(4812), [sym__string] = ACTIONS(4812), }, [1483] = { [sym_identifier] = ACTIONS(4814), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4816), [anon_sym_RBRACE] = ACTIONS(4816), [anon_sym_LBRACE] = ACTIONS(4816), [anon_sym_DOT] = ACTIONS(4816), [anon_sym_AMP] = ACTIONS(4816), [anon_sym_DASH] = ACTIONS(4814), [anon_sym_DASH_DASH] = ACTIONS(4816), [anon_sym_PLUS] = ACTIONS(4814), [anon_sym_PLUS_PLUS] = ACTIONS(4816), [anon_sym_BANG] = ACTIONS(4816), [anon_sym_LPAREN] = ACTIONS(4816), [anon_sym_RPAREN] = ACTIONS(4816), [anon_sym_LBRACK] = ACTIONS(4816), [anon_sym_SEMI] = ACTIONS(4816), [anon_sym_DOLLAR] = ACTIONS(4816), [anon_sym_STAR] = ACTIONS(4816), [anon_sym_TILDE] = ACTIONS(4816), [anon_sym_AT] = ACTIONS(4816), [sym_bool] = ACTIONS(4814), [sym_byte] = ACTIONS(4814), [sym_ubyte] = ACTIONS(4814), [sym_char] = ACTIONS(4814), [sym_short] = ACTIONS(4814), [sym_ushort] = ACTIONS(4814), [sym_int] = ACTIONS(4814), [sym_uint] = ACTIONS(4814), [sym_long] = ACTIONS(4814), [sym_ulong] = ACTIONS(4814), [sym_cent] = ACTIONS(4814), [sym_ucent] = ACTIONS(4814), [sym_wchar] = ACTIONS(4814), [sym_dchar] = ACTIONS(4814), [sym_float] = ACTIONS(4814), [sym_double] = ACTIONS(4814), [sym_real] = ACTIONS(4814), [sym_ifloat] = ACTIONS(4814), [sym_idouble] = ACTIONS(4814), [sym_ireal] = ACTIONS(4814), [sym_cfloat] = ACTIONS(4814), [sym_cdouble] = ACTIONS(4814), [sym_creal] = ACTIONS(4814), [sym_size_t] = ACTIONS(4814), [sym_ptrdiff_t] = ACTIONS(4814), [sym_string] = ACTIONS(4814), [sym_cstring] = ACTIONS(4814), [sym_dstring] = ACTIONS(4814), [sym_wstring] = ACTIONS(4814), [sym_noreturn] = ACTIONS(4814), [sym_true] = ACTIONS(4814), [sym_false] = ACTIONS(4814), [sym_null] = ACTIONS(4814), [sym_super] = ACTIONS(4814), [sym_this] = ACTIONS(4814), [sym_abstract] = ACTIONS(4814), [sym_alias] = ACTIONS(4814), [sym_align] = ACTIONS(4814), [sym_asm] = ACTIONS(4814), [sym_assert] = ACTIONS(4814), [sym_auto] = ACTIONS(4814), [sym_break] = ACTIONS(4814), [sym_case] = ACTIONS(4814), [sym_cast] = ACTIONS(4814), [sym_catch] = ACTIONS(4814), [sym_class] = ACTIONS(4814), [sym_const] = ACTIONS(4814), [sym_continue] = ACTIONS(4814), [sym_debug] = ACTIONS(4814), [sym_default] = ACTIONS(4814), [sym_delegate] = ACTIONS(4814), [sym_delete] = ACTIONS(4814), [sym_deprecated] = ACTIONS(4814), [sym_do] = ACTIONS(4814), [sym_else] = ACTIONS(4814), [sym_enum] = ACTIONS(4814), [sym_export] = ACTIONS(4814), [sym_extern] = ACTIONS(4814), [sym_final] = ACTIONS(4814), [sym_finally] = ACTIONS(4814), [sym_for] = ACTIONS(4814), [sym_foreach] = ACTIONS(4814), [sym_foreach_reverse] = ACTIONS(4814), [sym_function] = ACTIONS(4814), [sym_goto] = ACTIONS(4814), [sym_if] = ACTIONS(4814), [sym_immutable] = ACTIONS(4814), [sym_import] = ACTIONS(4814), [sym_in] = ACTIONS(4814), [sym_inout] = ACTIONS(4814), [sym_interface] = ACTIONS(4814), [sym_invariant] = ACTIONS(4814), [sym_is] = ACTIONS(4814), [sym_mixin] = ACTIONS(4814), [sym_new] = ACTIONS(4814), [sym_nothrow] = ACTIONS(4814), [sym_out] = ACTIONS(4814), [sym_override] = ACTIONS(4814), [sym_package] = ACTIONS(4814), [sym_pragma] = ACTIONS(4814), [sym_private] = ACTIONS(4814), [sym_protected] = ACTIONS(4814), [sym_public] = ACTIONS(4814), [sym_pure] = ACTIONS(4814), [sym_ref] = ACTIONS(4814), [sym_return] = ACTIONS(4814), [sym_scope] = ACTIONS(4814), [sym_shared] = ACTIONS(4814), [sym_static] = ACTIONS(4814), [sym_struct] = ACTIONS(4814), [sym_switch] = ACTIONS(4814), [sym_synchronized] = ACTIONS(4814), [sym_template] = ACTIONS(4814), [sym_throw] = ACTIONS(4814), [sym_try] = ACTIONS(4814), [sym_typeid] = ACTIONS(4814), [sym_typeof] = ACTIONS(4814), [sym_union] = ACTIONS(4814), [sym_unittest] = ACTIONS(4814), [sym_version] = ACTIONS(4814), [sym_while] = ACTIONS(4814), [sym_with] = ACTIONS(4814), [sym_gshared] = ACTIONS(4814), [sym_traits] = ACTIONS(4814), [sym_vector] = ACTIONS(4814), [sym_void] = ACTIONS(4814), [anon_sym_BQUOTE] = ACTIONS(4816), [anon_sym_r_DQUOTE] = ACTIONS(4816), [anon_sym_x_DQUOTE] = ACTIONS(4816), [anon_sym_DQUOTE] = ACTIONS(4816), [anon_sym_i_BQUOTE] = ACTIONS(4816), [anon_sym_i_DQUOTE] = ACTIONS(4816), [anon_sym_iq_LBRACE] = ACTIONS(4816), [aux_sym_char_literal_token1] = ACTIONS(4816), [anon_sym_SQUOTE] = ACTIONS(4814), [anon_sym___DATE__] = ACTIONS(4814), [anon_sym___FILE__] = ACTIONS(4814), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4814), [anon_sym___FUNCTION__] = ACTIONS(4814), [anon_sym___LINE__] = ACTIONS(4814), [anon_sym___MODULE__] = ACTIONS(4814), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4814), [anon_sym___TIME__] = ACTIONS(4814), [anon_sym___TIMESTAMP__] = ACTIONS(4814), [anon_sym___VENDOR__] = ACTIONS(4814), [anon_sym___VERSION__] = ACTIONS(4814), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4816), [sym_float_literal] = ACTIONS(4816), [sym__string] = ACTIONS(4816), }, [1484] = { [sym_identifier] = ACTIONS(4818), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4820), [anon_sym_RBRACE] = ACTIONS(4820), [anon_sym_LBRACE] = ACTIONS(4820), [anon_sym_DOT] = ACTIONS(4820), [anon_sym_AMP] = ACTIONS(4820), [anon_sym_DASH] = ACTIONS(4818), [anon_sym_DASH_DASH] = ACTIONS(4820), [anon_sym_PLUS] = ACTIONS(4818), [anon_sym_PLUS_PLUS] = ACTIONS(4820), [anon_sym_BANG] = ACTIONS(4820), [anon_sym_LPAREN] = ACTIONS(4820), [anon_sym_RPAREN] = ACTIONS(4820), [anon_sym_LBRACK] = ACTIONS(4820), [anon_sym_SEMI] = ACTIONS(4820), [anon_sym_DOLLAR] = ACTIONS(4820), [anon_sym_STAR] = ACTIONS(4820), [anon_sym_TILDE] = ACTIONS(4820), [anon_sym_AT] = ACTIONS(4820), [sym_bool] = ACTIONS(4818), [sym_byte] = ACTIONS(4818), [sym_ubyte] = ACTIONS(4818), [sym_char] = ACTIONS(4818), [sym_short] = ACTIONS(4818), [sym_ushort] = ACTIONS(4818), [sym_int] = ACTIONS(4818), [sym_uint] = ACTIONS(4818), [sym_long] = ACTIONS(4818), [sym_ulong] = ACTIONS(4818), [sym_cent] = ACTIONS(4818), [sym_ucent] = ACTIONS(4818), [sym_wchar] = ACTIONS(4818), [sym_dchar] = ACTIONS(4818), [sym_float] = ACTIONS(4818), [sym_double] = ACTIONS(4818), [sym_real] = ACTIONS(4818), [sym_ifloat] = ACTIONS(4818), [sym_idouble] = ACTIONS(4818), [sym_ireal] = ACTIONS(4818), [sym_cfloat] = ACTIONS(4818), [sym_cdouble] = ACTIONS(4818), [sym_creal] = ACTIONS(4818), [sym_size_t] = ACTIONS(4818), [sym_ptrdiff_t] = ACTIONS(4818), [sym_string] = ACTIONS(4818), [sym_cstring] = ACTIONS(4818), [sym_dstring] = ACTIONS(4818), [sym_wstring] = ACTIONS(4818), [sym_noreturn] = ACTIONS(4818), [sym_true] = ACTIONS(4818), [sym_false] = ACTIONS(4818), [sym_null] = ACTIONS(4818), [sym_super] = ACTIONS(4818), [sym_this] = ACTIONS(4818), [sym_abstract] = ACTIONS(4818), [sym_alias] = ACTIONS(4818), [sym_align] = ACTIONS(4818), [sym_asm] = ACTIONS(4818), [sym_assert] = ACTIONS(4818), [sym_auto] = ACTIONS(4818), [sym_break] = ACTIONS(4818), [sym_case] = ACTIONS(4818), [sym_cast] = ACTIONS(4818), [sym_catch] = ACTIONS(4818), [sym_class] = ACTIONS(4818), [sym_const] = ACTIONS(4818), [sym_continue] = ACTIONS(4818), [sym_debug] = ACTIONS(4818), [sym_default] = ACTIONS(4818), [sym_delegate] = ACTIONS(4818), [sym_delete] = ACTIONS(4818), [sym_deprecated] = ACTIONS(4818), [sym_do] = ACTIONS(4818), [sym_else] = ACTIONS(4818), [sym_enum] = ACTIONS(4818), [sym_export] = ACTIONS(4818), [sym_extern] = ACTIONS(4818), [sym_final] = ACTIONS(4818), [sym_finally] = ACTIONS(4818), [sym_for] = ACTIONS(4818), [sym_foreach] = ACTIONS(4818), [sym_foreach_reverse] = ACTIONS(4818), [sym_function] = ACTIONS(4818), [sym_goto] = ACTIONS(4818), [sym_if] = ACTIONS(4818), [sym_immutable] = ACTIONS(4818), [sym_import] = ACTIONS(4818), [sym_in] = ACTIONS(4818), [sym_inout] = ACTIONS(4818), [sym_interface] = ACTIONS(4818), [sym_invariant] = ACTIONS(4818), [sym_is] = ACTIONS(4818), [sym_mixin] = ACTIONS(4818), [sym_new] = ACTIONS(4818), [sym_nothrow] = ACTIONS(4818), [sym_out] = ACTIONS(4818), [sym_override] = ACTIONS(4818), [sym_package] = ACTIONS(4818), [sym_pragma] = ACTIONS(4818), [sym_private] = ACTIONS(4818), [sym_protected] = ACTIONS(4818), [sym_public] = ACTIONS(4818), [sym_pure] = ACTIONS(4818), [sym_ref] = ACTIONS(4818), [sym_return] = ACTIONS(4818), [sym_scope] = ACTIONS(4818), [sym_shared] = ACTIONS(4818), [sym_static] = ACTIONS(4818), [sym_struct] = ACTIONS(4818), [sym_switch] = ACTIONS(4818), [sym_synchronized] = ACTIONS(4818), [sym_template] = ACTIONS(4818), [sym_throw] = ACTIONS(4818), [sym_try] = ACTIONS(4818), [sym_typeid] = ACTIONS(4818), [sym_typeof] = ACTIONS(4818), [sym_union] = ACTIONS(4818), [sym_unittest] = ACTIONS(4818), [sym_version] = ACTIONS(4818), [sym_while] = ACTIONS(4818), [sym_with] = ACTIONS(4818), [sym_gshared] = ACTIONS(4818), [sym_traits] = ACTIONS(4818), [sym_vector] = ACTIONS(4818), [sym_void] = ACTIONS(4818), [anon_sym_BQUOTE] = ACTIONS(4820), [anon_sym_r_DQUOTE] = ACTIONS(4820), [anon_sym_x_DQUOTE] = ACTIONS(4820), [anon_sym_DQUOTE] = ACTIONS(4820), [anon_sym_i_BQUOTE] = ACTIONS(4820), [anon_sym_i_DQUOTE] = ACTIONS(4820), [anon_sym_iq_LBRACE] = ACTIONS(4820), [aux_sym_char_literal_token1] = ACTIONS(4820), [anon_sym_SQUOTE] = ACTIONS(4818), [anon_sym___DATE__] = ACTIONS(4818), [anon_sym___FILE__] = ACTIONS(4818), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4818), [anon_sym___FUNCTION__] = ACTIONS(4818), [anon_sym___LINE__] = ACTIONS(4818), [anon_sym___MODULE__] = ACTIONS(4818), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4818), [anon_sym___TIME__] = ACTIONS(4818), [anon_sym___TIMESTAMP__] = ACTIONS(4818), [anon_sym___VENDOR__] = ACTIONS(4818), [anon_sym___VERSION__] = ACTIONS(4818), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4820), [sym_float_literal] = ACTIONS(4820), [sym__string] = ACTIONS(4820), }, [1485] = { [sym_identifier] = ACTIONS(4822), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4824), [anon_sym_RBRACE] = ACTIONS(4824), [anon_sym_LBRACE] = ACTIONS(4824), [anon_sym_DOT] = ACTIONS(4824), [anon_sym_AMP] = ACTIONS(4824), [anon_sym_DASH] = ACTIONS(4822), [anon_sym_DASH_DASH] = ACTIONS(4824), [anon_sym_PLUS] = ACTIONS(4822), [anon_sym_PLUS_PLUS] = ACTIONS(4824), [anon_sym_BANG] = ACTIONS(4824), [anon_sym_LPAREN] = ACTIONS(4824), [anon_sym_RPAREN] = ACTIONS(4824), [anon_sym_LBRACK] = ACTIONS(4824), [anon_sym_SEMI] = ACTIONS(4824), [anon_sym_DOLLAR] = ACTIONS(4824), [anon_sym_STAR] = ACTIONS(4824), [anon_sym_TILDE] = ACTIONS(4824), [anon_sym_AT] = ACTIONS(4824), [sym_bool] = ACTIONS(4822), [sym_byte] = ACTIONS(4822), [sym_ubyte] = ACTIONS(4822), [sym_char] = ACTIONS(4822), [sym_short] = ACTIONS(4822), [sym_ushort] = ACTIONS(4822), [sym_int] = ACTIONS(4822), [sym_uint] = ACTIONS(4822), [sym_long] = ACTIONS(4822), [sym_ulong] = ACTIONS(4822), [sym_cent] = ACTIONS(4822), [sym_ucent] = ACTIONS(4822), [sym_wchar] = ACTIONS(4822), [sym_dchar] = ACTIONS(4822), [sym_float] = ACTIONS(4822), [sym_double] = ACTIONS(4822), [sym_real] = ACTIONS(4822), [sym_ifloat] = ACTIONS(4822), [sym_idouble] = ACTIONS(4822), [sym_ireal] = ACTIONS(4822), [sym_cfloat] = ACTIONS(4822), [sym_cdouble] = ACTIONS(4822), [sym_creal] = ACTIONS(4822), [sym_size_t] = ACTIONS(4822), [sym_ptrdiff_t] = ACTIONS(4822), [sym_string] = ACTIONS(4822), [sym_cstring] = ACTIONS(4822), [sym_dstring] = ACTIONS(4822), [sym_wstring] = ACTIONS(4822), [sym_noreturn] = ACTIONS(4822), [sym_true] = ACTIONS(4822), [sym_false] = ACTIONS(4822), [sym_null] = ACTIONS(4822), [sym_super] = ACTIONS(4822), [sym_this] = ACTIONS(4822), [sym_abstract] = ACTIONS(4822), [sym_alias] = ACTIONS(4822), [sym_align] = ACTIONS(4822), [sym_asm] = ACTIONS(4822), [sym_assert] = ACTIONS(4822), [sym_auto] = ACTIONS(4822), [sym_break] = ACTIONS(4822), [sym_case] = ACTIONS(4822), [sym_cast] = ACTIONS(4822), [sym_catch] = ACTIONS(4822), [sym_class] = ACTIONS(4822), [sym_const] = ACTIONS(4822), [sym_continue] = ACTIONS(4822), [sym_debug] = ACTIONS(4822), [sym_default] = ACTIONS(4822), [sym_delegate] = ACTIONS(4822), [sym_delete] = ACTIONS(4822), [sym_deprecated] = ACTIONS(4822), [sym_do] = ACTIONS(4822), [sym_else] = ACTIONS(4822), [sym_enum] = ACTIONS(4822), [sym_export] = ACTIONS(4822), [sym_extern] = ACTIONS(4822), [sym_final] = ACTIONS(4822), [sym_finally] = ACTIONS(4822), [sym_for] = ACTIONS(4822), [sym_foreach] = ACTIONS(4822), [sym_foreach_reverse] = ACTIONS(4822), [sym_function] = ACTIONS(4822), [sym_goto] = ACTIONS(4822), [sym_if] = ACTIONS(4822), [sym_immutable] = ACTIONS(4822), [sym_import] = ACTIONS(4822), [sym_in] = ACTIONS(4822), [sym_inout] = ACTIONS(4822), [sym_interface] = ACTIONS(4822), [sym_invariant] = ACTIONS(4822), [sym_is] = ACTIONS(4822), [sym_mixin] = ACTIONS(4822), [sym_new] = ACTIONS(4822), [sym_nothrow] = ACTIONS(4822), [sym_out] = ACTIONS(4822), [sym_override] = ACTIONS(4822), [sym_package] = ACTIONS(4822), [sym_pragma] = ACTIONS(4822), [sym_private] = ACTIONS(4822), [sym_protected] = ACTIONS(4822), [sym_public] = ACTIONS(4822), [sym_pure] = ACTIONS(4822), [sym_ref] = ACTIONS(4822), [sym_return] = ACTIONS(4822), [sym_scope] = ACTIONS(4822), [sym_shared] = ACTIONS(4822), [sym_static] = ACTIONS(4822), [sym_struct] = ACTIONS(4822), [sym_switch] = ACTIONS(4822), [sym_synchronized] = ACTIONS(4822), [sym_template] = ACTIONS(4822), [sym_throw] = ACTIONS(4822), [sym_try] = ACTIONS(4822), [sym_typeid] = ACTIONS(4822), [sym_typeof] = ACTIONS(4822), [sym_union] = ACTIONS(4822), [sym_unittest] = ACTIONS(4822), [sym_version] = ACTIONS(4822), [sym_while] = ACTIONS(4822), [sym_with] = ACTIONS(4822), [sym_gshared] = ACTIONS(4822), [sym_traits] = ACTIONS(4822), [sym_vector] = ACTIONS(4822), [sym_void] = ACTIONS(4822), [anon_sym_BQUOTE] = ACTIONS(4824), [anon_sym_r_DQUOTE] = ACTIONS(4824), [anon_sym_x_DQUOTE] = ACTIONS(4824), [anon_sym_DQUOTE] = ACTIONS(4824), [anon_sym_i_BQUOTE] = ACTIONS(4824), [anon_sym_i_DQUOTE] = ACTIONS(4824), [anon_sym_iq_LBRACE] = ACTIONS(4824), [aux_sym_char_literal_token1] = ACTIONS(4824), [anon_sym_SQUOTE] = ACTIONS(4822), [anon_sym___DATE__] = ACTIONS(4822), [anon_sym___FILE__] = ACTIONS(4822), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4822), [anon_sym___FUNCTION__] = ACTIONS(4822), [anon_sym___LINE__] = ACTIONS(4822), [anon_sym___MODULE__] = ACTIONS(4822), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4822), [anon_sym___TIME__] = ACTIONS(4822), [anon_sym___TIMESTAMP__] = ACTIONS(4822), [anon_sym___VENDOR__] = ACTIONS(4822), [anon_sym___VERSION__] = ACTIONS(4822), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4824), [sym_float_literal] = ACTIONS(4824), [sym__string] = ACTIONS(4824), }, [1486] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_finally] = ACTIONS(2665), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [1487] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(4826), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_finally] = ACTIONS(2665), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [1488] = { [sym_identifier] = ACTIONS(4828), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4830), [anon_sym_RBRACE] = ACTIONS(4830), [anon_sym_LBRACE] = ACTIONS(4830), [anon_sym_DOT] = ACTIONS(4830), [anon_sym_AMP] = ACTIONS(4830), [anon_sym_DASH] = ACTIONS(4828), [anon_sym_DASH_DASH] = ACTIONS(4830), [anon_sym_PLUS] = ACTIONS(4828), [anon_sym_PLUS_PLUS] = ACTIONS(4830), [anon_sym_BANG] = ACTIONS(4830), [anon_sym_LPAREN] = ACTIONS(4830), [anon_sym_RPAREN] = ACTIONS(4830), [anon_sym_LBRACK] = ACTIONS(4830), [anon_sym_SEMI] = ACTIONS(4830), [anon_sym_DOLLAR] = ACTIONS(4830), [anon_sym_STAR] = ACTIONS(4830), [anon_sym_TILDE] = ACTIONS(4830), [anon_sym_AT] = ACTIONS(4830), [sym_bool] = ACTIONS(4828), [sym_byte] = ACTIONS(4828), [sym_ubyte] = ACTIONS(4828), [sym_char] = ACTIONS(4828), [sym_short] = ACTIONS(4828), [sym_ushort] = ACTIONS(4828), [sym_int] = ACTIONS(4828), [sym_uint] = ACTIONS(4828), [sym_long] = ACTIONS(4828), [sym_ulong] = ACTIONS(4828), [sym_cent] = ACTIONS(4828), [sym_ucent] = ACTIONS(4828), [sym_wchar] = ACTIONS(4828), [sym_dchar] = ACTIONS(4828), [sym_float] = ACTIONS(4828), [sym_double] = ACTIONS(4828), [sym_real] = ACTIONS(4828), [sym_ifloat] = ACTIONS(4828), [sym_idouble] = ACTIONS(4828), [sym_ireal] = ACTIONS(4828), [sym_cfloat] = ACTIONS(4828), [sym_cdouble] = ACTIONS(4828), [sym_creal] = ACTIONS(4828), [sym_size_t] = ACTIONS(4828), [sym_ptrdiff_t] = ACTIONS(4828), [sym_string] = ACTIONS(4828), [sym_cstring] = ACTIONS(4828), [sym_dstring] = ACTIONS(4828), [sym_wstring] = ACTIONS(4828), [sym_noreturn] = ACTIONS(4828), [sym_true] = ACTIONS(4828), [sym_false] = ACTIONS(4828), [sym_null] = ACTIONS(4828), [sym_super] = ACTIONS(4828), [sym_this] = ACTIONS(4828), [sym_abstract] = ACTIONS(4828), [sym_alias] = ACTIONS(4828), [sym_align] = ACTIONS(4828), [sym_asm] = ACTIONS(4828), [sym_assert] = ACTIONS(4828), [sym_auto] = ACTIONS(4828), [sym_break] = ACTIONS(4828), [sym_case] = ACTIONS(4828), [sym_cast] = ACTIONS(4828), [sym_catch] = ACTIONS(4828), [sym_class] = ACTIONS(4828), [sym_const] = ACTIONS(4828), [sym_continue] = ACTIONS(4828), [sym_debug] = ACTIONS(4828), [sym_default] = ACTIONS(4828), [sym_delegate] = ACTIONS(4828), [sym_delete] = ACTIONS(4828), [sym_deprecated] = ACTIONS(4828), [sym_do] = ACTIONS(4828), [sym_else] = ACTIONS(4828), [sym_enum] = ACTIONS(4828), [sym_export] = ACTIONS(4828), [sym_extern] = ACTIONS(4828), [sym_final] = ACTIONS(4828), [sym_finally] = ACTIONS(4828), [sym_for] = ACTIONS(4828), [sym_foreach] = ACTIONS(4828), [sym_foreach_reverse] = ACTIONS(4828), [sym_function] = ACTIONS(4828), [sym_goto] = ACTIONS(4828), [sym_if] = ACTIONS(4828), [sym_immutable] = ACTIONS(4828), [sym_import] = ACTIONS(4828), [sym_in] = ACTIONS(4828), [sym_inout] = ACTIONS(4828), [sym_interface] = ACTIONS(4828), [sym_invariant] = ACTIONS(4828), [sym_is] = ACTIONS(4828), [sym_mixin] = ACTIONS(4828), [sym_new] = ACTIONS(4828), [sym_nothrow] = ACTIONS(4828), [sym_out] = ACTIONS(4828), [sym_override] = ACTIONS(4828), [sym_package] = ACTIONS(4828), [sym_pragma] = ACTIONS(4828), [sym_private] = ACTIONS(4828), [sym_protected] = ACTIONS(4828), [sym_public] = ACTIONS(4828), [sym_pure] = ACTIONS(4828), [sym_ref] = ACTIONS(4828), [sym_return] = ACTIONS(4828), [sym_scope] = ACTIONS(4828), [sym_shared] = ACTIONS(4828), [sym_static] = ACTIONS(4828), [sym_struct] = ACTIONS(4828), [sym_switch] = ACTIONS(4828), [sym_synchronized] = ACTIONS(4828), [sym_template] = ACTIONS(4828), [sym_throw] = ACTIONS(4828), [sym_try] = ACTIONS(4828), [sym_typeid] = ACTIONS(4828), [sym_typeof] = ACTIONS(4828), [sym_union] = ACTIONS(4828), [sym_unittest] = ACTIONS(4828), [sym_version] = ACTIONS(4828), [sym_while] = ACTIONS(4828), [sym_with] = ACTIONS(4828), [sym_gshared] = ACTIONS(4828), [sym_traits] = ACTIONS(4828), [sym_vector] = ACTIONS(4828), [sym_void] = ACTIONS(4828), [anon_sym_BQUOTE] = ACTIONS(4830), [anon_sym_r_DQUOTE] = ACTIONS(4830), [anon_sym_x_DQUOTE] = ACTIONS(4830), [anon_sym_DQUOTE] = ACTIONS(4830), [anon_sym_i_BQUOTE] = ACTIONS(4830), [anon_sym_i_DQUOTE] = ACTIONS(4830), [anon_sym_iq_LBRACE] = ACTIONS(4830), [aux_sym_char_literal_token1] = ACTIONS(4830), [anon_sym_SQUOTE] = ACTIONS(4828), [anon_sym___DATE__] = ACTIONS(4828), [anon_sym___FILE__] = ACTIONS(4828), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4828), [anon_sym___FUNCTION__] = ACTIONS(4828), [anon_sym___LINE__] = ACTIONS(4828), [anon_sym___MODULE__] = ACTIONS(4828), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4828), [anon_sym___TIME__] = ACTIONS(4828), [anon_sym___TIMESTAMP__] = ACTIONS(4828), [anon_sym___VENDOR__] = ACTIONS(4828), [anon_sym___VERSION__] = ACTIONS(4828), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4830), [sym_float_literal] = ACTIONS(4830), [sym__string] = ACTIONS(4830), }, [1489] = { [sym_identifier] = ACTIONS(4832), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4834), [anon_sym_RBRACE] = ACTIONS(4834), [anon_sym_LBRACE] = ACTIONS(4834), [anon_sym_DOT] = ACTIONS(4834), [anon_sym_AMP] = ACTIONS(4834), [anon_sym_DASH] = ACTIONS(4832), [anon_sym_DASH_DASH] = ACTIONS(4834), [anon_sym_PLUS] = ACTIONS(4832), [anon_sym_PLUS_PLUS] = ACTIONS(4834), [anon_sym_BANG] = ACTIONS(4834), [anon_sym_LPAREN] = ACTIONS(4834), [anon_sym_RPAREN] = ACTIONS(4834), [anon_sym_LBRACK] = ACTIONS(4834), [anon_sym_SEMI] = ACTIONS(4834), [anon_sym_DOLLAR] = ACTIONS(4834), [anon_sym_STAR] = ACTIONS(4834), [anon_sym_TILDE] = ACTIONS(4834), [anon_sym_AT] = ACTIONS(4834), [sym_bool] = ACTIONS(4832), [sym_byte] = ACTIONS(4832), [sym_ubyte] = ACTIONS(4832), [sym_char] = ACTIONS(4832), [sym_short] = ACTIONS(4832), [sym_ushort] = ACTIONS(4832), [sym_int] = ACTIONS(4832), [sym_uint] = ACTIONS(4832), [sym_long] = ACTIONS(4832), [sym_ulong] = ACTIONS(4832), [sym_cent] = ACTIONS(4832), [sym_ucent] = ACTIONS(4832), [sym_wchar] = ACTIONS(4832), [sym_dchar] = ACTIONS(4832), [sym_float] = ACTIONS(4832), [sym_double] = ACTIONS(4832), [sym_real] = ACTIONS(4832), [sym_ifloat] = ACTIONS(4832), [sym_idouble] = ACTIONS(4832), [sym_ireal] = ACTIONS(4832), [sym_cfloat] = ACTIONS(4832), [sym_cdouble] = ACTIONS(4832), [sym_creal] = ACTIONS(4832), [sym_size_t] = ACTIONS(4832), [sym_ptrdiff_t] = ACTIONS(4832), [sym_string] = ACTIONS(4832), [sym_cstring] = ACTIONS(4832), [sym_dstring] = ACTIONS(4832), [sym_wstring] = ACTIONS(4832), [sym_noreturn] = ACTIONS(4832), [sym_true] = ACTIONS(4832), [sym_false] = ACTIONS(4832), [sym_null] = ACTIONS(4832), [sym_super] = ACTIONS(4832), [sym_this] = ACTIONS(4832), [sym_abstract] = ACTIONS(4832), [sym_alias] = ACTIONS(4832), [sym_align] = ACTIONS(4832), [sym_asm] = ACTIONS(4832), [sym_assert] = ACTIONS(4832), [sym_auto] = ACTIONS(4832), [sym_break] = ACTIONS(4832), [sym_case] = ACTIONS(4832), [sym_cast] = ACTIONS(4832), [sym_catch] = ACTIONS(4832), [sym_class] = ACTIONS(4832), [sym_const] = ACTIONS(4832), [sym_continue] = ACTIONS(4832), [sym_debug] = ACTIONS(4832), [sym_default] = ACTIONS(4832), [sym_delegate] = ACTIONS(4832), [sym_delete] = ACTIONS(4832), [sym_deprecated] = ACTIONS(4832), [sym_do] = ACTIONS(4832), [sym_else] = ACTIONS(4832), [sym_enum] = ACTIONS(4832), [sym_export] = ACTIONS(4832), [sym_extern] = ACTIONS(4832), [sym_final] = ACTIONS(4832), [sym_finally] = ACTIONS(4832), [sym_for] = ACTIONS(4832), [sym_foreach] = ACTIONS(4832), [sym_foreach_reverse] = ACTIONS(4832), [sym_function] = ACTIONS(4832), [sym_goto] = ACTIONS(4832), [sym_if] = ACTIONS(4832), [sym_immutable] = ACTIONS(4832), [sym_import] = ACTIONS(4832), [sym_in] = ACTIONS(4832), [sym_inout] = ACTIONS(4832), [sym_interface] = ACTIONS(4832), [sym_invariant] = ACTIONS(4832), [sym_is] = ACTIONS(4832), [sym_mixin] = ACTIONS(4832), [sym_new] = ACTIONS(4832), [sym_nothrow] = ACTIONS(4832), [sym_out] = ACTIONS(4832), [sym_override] = ACTIONS(4832), [sym_package] = ACTIONS(4832), [sym_pragma] = ACTIONS(4832), [sym_private] = ACTIONS(4832), [sym_protected] = ACTIONS(4832), [sym_public] = ACTIONS(4832), [sym_pure] = ACTIONS(4832), [sym_ref] = ACTIONS(4832), [sym_return] = ACTIONS(4832), [sym_scope] = ACTIONS(4832), [sym_shared] = ACTIONS(4832), [sym_static] = ACTIONS(4832), [sym_struct] = ACTIONS(4832), [sym_switch] = ACTIONS(4832), [sym_synchronized] = ACTIONS(4832), [sym_template] = ACTIONS(4832), [sym_throw] = ACTIONS(4832), [sym_try] = ACTIONS(4832), [sym_typeid] = ACTIONS(4832), [sym_typeof] = ACTIONS(4832), [sym_union] = ACTIONS(4832), [sym_unittest] = ACTIONS(4832), [sym_version] = ACTIONS(4832), [sym_while] = ACTIONS(4832), [sym_with] = ACTIONS(4832), [sym_gshared] = ACTIONS(4832), [sym_traits] = ACTIONS(4832), [sym_vector] = ACTIONS(4832), [sym_void] = ACTIONS(4832), [anon_sym_BQUOTE] = ACTIONS(4834), [anon_sym_r_DQUOTE] = ACTIONS(4834), [anon_sym_x_DQUOTE] = ACTIONS(4834), [anon_sym_DQUOTE] = ACTIONS(4834), [anon_sym_i_BQUOTE] = ACTIONS(4834), [anon_sym_i_DQUOTE] = ACTIONS(4834), [anon_sym_iq_LBRACE] = ACTIONS(4834), [aux_sym_char_literal_token1] = ACTIONS(4834), [anon_sym_SQUOTE] = ACTIONS(4832), [anon_sym___DATE__] = ACTIONS(4832), [anon_sym___FILE__] = ACTIONS(4832), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4832), [anon_sym___FUNCTION__] = ACTIONS(4832), [anon_sym___LINE__] = ACTIONS(4832), [anon_sym___MODULE__] = ACTIONS(4832), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4832), [anon_sym___TIME__] = ACTIONS(4832), [anon_sym___TIMESTAMP__] = ACTIONS(4832), [anon_sym___VENDOR__] = ACTIONS(4832), [anon_sym___VERSION__] = ACTIONS(4832), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4834), [sym_float_literal] = ACTIONS(4834), [sym__string] = ACTIONS(4834), }, [1490] = { [sym_identifier] = ACTIONS(4836), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4838), [anon_sym_RBRACE] = ACTIONS(4838), [anon_sym_LBRACE] = ACTIONS(4838), [anon_sym_DOT] = ACTIONS(4838), [anon_sym_AMP] = ACTIONS(4838), [anon_sym_DASH] = ACTIONS(4836), [anon_sym_DASH_DASH] = ACTIONS(4838), [anon_sym_PLUS] = ACTIONS(4836), [anon_sym_PLUS_PLUS] = ACTIONS(4838), [anon_sym_BANG] = ACTIONS(4838), [anon_sym_LPAREN] = ACTIONS(4838), [anon_sym_RPAREN] = ACTIONS(4838), [anon_sym_LBRACK] = ACTIONS(4838), [anon_sym_SEMI] = ACTIONS(4838), [anon_sym_DOLLAR] = ACTIONS(4838), [anon_sym_STAR] = ACTIONS(4838), [anon_sym_TILDE] = ACTIONS(4838), [anon_sym_AT] = ACTIONS(4838), [sym_bool] = ACTIONS(4836), [sym_byte] = ACTIONS(4836), [sym_ubyte] = ACTIONS(4836), [sym_char] = ACTIONS(4836), [sym_short] = ACTIONS(4836), [sym_ushort] = ACTIONS(4836), [sym_int] = ACTIONS(4836), [sym_uint] = ACTIONS(4836), [sym_long] = ACTIONS(4836), [sym_ulong] = ACTIONS(4836), [sym_cent] = ACTIONS(4836), [sym_ucent] = ACTIONS(4836), [sym_wchar] = ACTIONS(4836), [sym_dchar] = ACTIONS(4836), [sym_float] = ACTIONS(4836), [sym_double] = ACTIONS(4836), [sym_real] = ACTIONS(4836), [sym_ifloat] = ACTIONS(4836), [sym_idouble] = ACTIONS(4836), [sym_ireal] = ACTIONS(4836), [sym_cfloat] = ACTIONS(4836), [sym_cdouble] = ACTIONS(4836), [sym_creal] = ACTIONS(4836), [sym_size_t] = ACTIONS(4836), [sym_ptrdiff_t] = ACTIONS(4836), [sym_string] = ACTIONS(4836), [sym_cstring] = ACTIONS(4836), [sym_dstring] = ACTIONS(4836), [sym_wstring] = ACTIONS(4836), [sym_noreturn] = ACTIONS(4836), [sym_true] = ACTIONS(4836), [sym_false] = ACTIONS(4836), [sym_null] = ACTIONS(4836), [sym_super] = ACTIONS(4836), [sym_this] = ACTIONS(4836), [sym_abstract] = ACTIONS(4836), [sym_alias] = ACTIONS(4836), [sym_align] = ACTIONS(4836), [sym_asm] = ACTIONS(4836), [sym_assert] = ACTIONS(4836), [sym_auto] = ACTIONS(4836), [sym_break] = ACTIONS(4836), [sym_case] = ACTIONS(4836), [sym_cast] = ACTIONS(4836), [sym_catch] = ACTIONS(4836), [sym_class] = ACTIONS(4836), [sym_const] = ACTIONS(4836), [sym_continue] = ACTIONS(4836), [sym_debug] = ACTIONS(4836), [sym_default] = ACTIONS(4836), [sym_delegate] = ACTIONS(4836), [sym_delete] = ACTIONS(4836), [sym_deprecated] = ACTIONS(4836), [sym_do] = ACTIONS(4836), [sym_else] = ACTIONS(4836), [sym_enum] = ACTIONS(4836), [sym_export] = ACTIONS(4836), [sym_extern] = ACTIONS(4836), [sym_final] = ACTIONS(4836), [sym_finally] = ACTIONS(4836), [sym_for] = ACTIONS(4836), [sym_foreach] = ACTIONS(4836), [sym_foreach_reverse] = ACTIONS(4836), [sym_function] = ACTIONS(4836), [sym_goto] = ACTIONS(4836), [sym_if] = ACTIONS(4836), [sym_immutable] = ACTIONS(4836), [sym_import] = ACTIONS(4836), [sym_in] = ACTIONS(4836), [sym_inout] = ACTIONS(4836), [sym_interface] = ACTIONS(4836), [sym_invariant] = ACTIONS(4836), [sym_is] = ACTIONS(4836), [sym_mixin] = ACTIONS(4836), [sym_new] = ACTIONS(4836), [sym_nothrow] = ACTIONS(4836), [sym_out] = ACTIONS(4836), [sym_override] = ACTIONS(4836), [sym_package] = ACTIONS(4836), [sym_pragma] = ACTIONS(4836), [sym_private] = ACTIONS(4836), [sym_protected] = ACTIONS(4836), [sym_public] = ACTIONS(4836), [sym_pure] = ACTIONS(4836), [sym_ref] = ACTIONS(4836), [sym_return] = ACTIONS(4836), [sym_scope] = ACTIONS(4836), [sym_shared] = ACTIONS(4836), [sym_static] = ACTIONS(4836), [sym_struct] = ACTIONS(4836), [sym_switch] = ACTIONS(4836), [sym_synchronized] = ACTIONS(4836), [sym_template] = ACTIONS(4836), [sym_throw] = ACTIONS(4836), [sym_try] = ACTIONS(4836), [sym_typeid] = ACTIONS(4836), [sym_typeof] = ACTIONS(4836), [sym_union] = ACTIONS(4836), [sym_unittest] = ACTIONS(4836), [sym_version] = ACTIONS(4836), [sym_while] = ACTIONS(4836), [sym_with] = ACTIONS(4836), [sym_gshared] = ACTIONS(4836), [sym_traits] = ACTIONS(4836), [sym_vector] = ACTIONS(4836), [sym_void] = ACTIONS(4836), [anon_sym_BQUOTE] = ACTIONS(4838), [anon_sym_r_DQUOTE] = ACTIONS(4838), [anon_sym_x_DQUOTE] = ACTIONS(4838), [anon_sym_DQUOTE] = ACTIONS(4838), [anon_sym_i_BQUOTE] = ACTIONS(4838), [anon_sym_i_DQUOTE] = ACTIONS(4838), [anon_sym_iq_LBRACE] = ACTIONS(4838), [aux_sym_char_literal_token1] = ACTIONS(4838), [anon_sym_SQUOTE] = ACTIONS(4836), [anon_sym___DATE__] = ACTIONS(4836), [anon_sym___FILE__] = ACTIONS(4836), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4836), [anon_sym___FUNCTION__] = ACTIONS(4836), [anon_sym___LINE__] = ACTIONS(4836), [anon_sym___MODULE__] = ACTIONS(4836), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4836), [anon_sym___TIME__] = ACTIONS(4836), [anon_sym___TIMESTAMP__] = ACTIONS(4836), [anon_sym___VENDOR__] = ACTIONS(4836), [anon_sym___VERSION__] = ACTIONS(4836), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4838), [sym_float_literal] = ACTIONS(4838), [sym__string] = ACTIONS(4838), }, [1491] = { [sym_identifier] = ACTIONS(4840), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4842), [anon_sym_RBRACE] = ACTIONS(4842), [anon_sym_LBRACE] = ACTIONS(4842), [anon_sym_DOT] = ACTIONS(4842), [anon_sym_AMP] = ACTIONS(4842), [anon_sym_DASH] = ACTIONS(4840), [anon_sym_DASH_DASH] = ACTIONS(4842), [anon_sym_PLUS] = ACTIONS(4840), [anon_sym_PLUS_PLUS] = ACTIONS(4842), [anon_sym_BANG] = ACTIONS(4842), [anon_sym_LPAREN] = ACTIONS(4842), [anon_sym_RPAREN] = ACTIONS(4842), [anon_sym_LBRACK] = ACTIONS(4842), [anon_sym_SEMI] = ACTIONS(4842), [anon_sym_DOLLAR] = ACTIONS(4842), [anon_sym_STAR] = ACTIONS(4842), [anon_sym_TILDE] = ACTIONS(4842), [anon_sym_AT] = ACTIONS(4842), [sym_bool] = ACTIONS(4840), [sym_byte] = ACTIONS(4840), [sym_ubyte] = ACTIONS(4840), [sym_char] = ACTIONS(4840), [sym_short] = ACTIONS(4840), [sym_ushort] = ACTIONS(4840), [sym_int] = ACTIONS(4840), [sym_uint] = ACTIONS(4840), [sym_long] = ACTIONS(4840), [sym_ulong] = ACTIONS(4840), [sym_cent] = ACTIONS(4840), [sym_ucent] = ACTIONS(4840), [sym_wchar] = ACTIONS(4840), [sym_dchar] = ACTIONS(4840), [sym_float] = ACTIONS(4840), [sym_double] = ACTIONS(4840), [sym_real] = ACTIONS(4840), [sym_ifloat] = ACTIONS(4840), [sym_idouble] = ACTIONS(4840), [sym_ireal] = ACTIONS(4840), [sym_cfloat] = ACTIONS(4840), [sym_cdouble] = ACTIONS(4840), [sym_creal] = ACTIONS(4840), [sym_size_t] = ACTIONS(4840), [sym_ptrdiff_t] = ACTIONS(4840), [sym_string] = ACTIONS(4840), [sym_cstring] = ACTIONS(4840), [sym_dstring] = ACTIONS(4840), [sym_wstring] = ACTIONS(4840), [sym_noreturn] = ACTIONS(4840), [sym_true] = ACTIONS(4840), [sym_false] = ACTIONS(4840), [sym_null] = ACTIONS(4840), [sym_super] = ACTIONS(4840), [sym_this] = ACTIONS(4840), [sym_abstract] = ACTIONS(4840), [sym_alias] = ACTIONS(4840), [sym_align] = ACTIONS(4840), [sym_asm] = ACTIONS(4840), [sym_assert] = ACTIONS(4840), [sym_auto] = ACTIONS(4840), [sym_break] = ACTIONS(4840), [sym_case] = ACTIONS(4840), [sym_cast] = ACTIONS(4840), [sym_catch] = ACTIONS(4840), [sym_class] = ACTIONS(4840), [sym_const] = ACTIONS(4840), [sym_continue] = ACTIONS(4840), [sym_debug] = ACTIONS(4840), [sym_default] = ACTIONS(4840), [sym_delegate] = ACTIONS(4840), [sym_delete] = ACTIONS(4840), [sym_deprecated] = ACTIONS(4840), [sym_do] = ACTIONS(4840), [sym_else] = ACTIONS(4840), [sym_enum] = ACTIONS(4840), [sym_export] = ACTIONS(4840), [sym_extern] = ACTIONS(4840), [sym_final] = ACTIONS(4840), [sym_finally] = ACTIONS(4840), [sym_for] = ACTIONS(4840), [sym_foreach] = ACTIONS(4840), [sym_foreach_reverse] = ACTIONS(4840), [sym_function] = ACTIONS(4840), [sym_goto] = ACTIONS(4840), [sym_if] = ACTIONS(4840), [sym_immutable] = ACTIONS(4840), [sym_import] = ACTIONS(4840), [sym_in] = ACTIONS(4840), [sym_inout] = ACTIONS(4840), [sym_interface] = ACTIONS(4840), [sym_invariant] = ACTIONS(4840), [sym_is] = ACTIONS(4840), [sym_mixin] = ACTIONS(4840), [sym_new] = ACTIONS(4840), [sym_nothrow] = ACTIONS(4840), [sym_out] = ACTIONS(4840), [sym_override] = ACTIONS(4840), [sym_package] = ACTIONS(4840), [sym_pragma] = ACTIONS(4840), [sym_private] = ACTIONS(4840), [sym_protected] = ACTIONS(4840), [sym_public] = ACTIONS(4840), [sym_pure] = ACTIONS(4840), [sym_ref] = ACTIONS(4840), [sym_return] = ACTIONS(4840), [sym_scope] = ACTIONS(4840), [sym_shared] = ACTIONS(4840), [sym_static] = ACTIONS(4840), [sym_struct] = ACTIONS(4840), [sym_switch] = ACTIONS(4840), [sym_synchronized] = ACTIONS(4840), [sym_template] = ACTIONS(4840), [sym_throw] = ACTIONS(4840), [sym_try] = ACTIONS(4840), [sym_typeid] = ACTIONS(4840), [sym_typeof] = ACTIONS(4840), [sym_union] = ACTIONS(4840), [sym_unittest] = ACTIONS(4840), [sym_version] = ACTIONS(4840), [sym_while] = ACTIONS(4840), [sym_with] = ACTIONS(4840), [sym_gshared] = ACTIONS(4840), [sym_traits] = ACTIONS(4840), [sym_vector] = ACTIONS(4840), [sym_void] = ACTIONS(4840), [anon_sym_BQUOTE] = ACTIONS(4842), [anon_sym_r_DQUOTE] = ACTIONS(4842), [anon_sym_x_DQUOTE] = ACTIONS(4842), [anon_sym_DQUOTE] = ACTIONS(4842), [anon_sym_i_BQUOTE] = ACTIONS(4842), [anon_sym_i_DQUOTE] = ACTIONS(4842), [anon_sym_iq_LBRACE] = ACTIONS(4842), [aux_sym_char_literal_token1] = ACTIONS(4842), [anon_sym_SQUOTE] = ACTIONS(4840), [anon_sym___DATE__] = ACTIONS(4840), [anon_sym___FILE__] = ACTIONS(4840), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4840), [anon_sym___FUNCTION__] = ACTIONS(4840), [anon_sym___LINE__] = ACTIONS(4840), [anon_sym___MODULE__] = ACTIONS(4840), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4840), [anon_sym___TIME__] = ACTIONS(4840), [anon_sym___TIMESTAMP__] = ACTIONS(4840), [anon_sym___VENDOR__] = ACTIONS(4840), [anon_sym___VERSION__] = ACTIONS(4840), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4842), [sym_float_literal] = ACTIONS(4842), [sym__string] = ACTIONS(4842), }, [1492] = { [sym_identifier] = ACTIONS(4844), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4846), [anon_sym_RBRACE] = ACTIONS(4846), [anon_sym_LBRACE] = ACTIONS(4846), [anon_sym_DOT] = ACTIONS(4846), [anon_sym_AMP] = ACTIONS(4846), [anon_sym_DASH] = ACTIONS(4844), [anon_sym_DASH_DASH] = ACTIONS(4846), [anon_sym_PLUS] = ACTIONS(4844), [anon_sym_PLUS_PLUS] = ACTIONS(4846), [anon_sym_BANG] = ACTIONS(4846), [anon_sym_LPAREN] = ACTIONS(4846), [anon_sym_RPAREN] = ACTIONS(4846), [anon_sym_LBRACK] = ACTIONS(4846), [anon_sym_SEMI] = ACTIONS(4846), [anon_sym_DOLLAR] = ACTIONS(4846), [anon_sym_STAR] = ACTIONS(4846), [anon_sym_TILDE] = ACTIONS(4846), [anon_sym_AT] = ACTIONS(4846), [sym_bool] = ACTIONS(4844), [sym_byte] = ACTIONS(4844), [sym_ubyte] = ACTIONS(4844), [sym_char] = ACTIONS(4844), [sym_short] = ACTIONS(4844), [sym_ushort] = ACTIONS(4844), [sym_int] = ACTIONS(4844), [sym_uint] = ACTIONS(4844), [sym_long] = ACTIONS(4844), [sym_ulong] = ACTIONS(4844), [sym_cent] = ACTIONS(4844), [sym_ucent] = ACTIONS(4844), [sym_wchar] = ACTIONS(4844), [sym_dchar] = ACTIONS(4844), [sym_float] = ACTIONS(4844), [sym_double] = ACTIONS(4844), [sym_real] = ACTIONS(4844), [sym_ifloat] = ACTIONS(4844), [sym_idouble] = ACTIONS(4844), [sym_ireal] = ACTIONS(4844), [sym_cfloat] = ACTIONS(4844), [sym_cdouble] = ACTIONS(4844), [sym_creal] = ACTIONS(4844), [sym_size_t] = ACTIONS(4844), [sym_ptrdiff_t] = ACTIONS(4844), [sym_string] = ACTIONS(4844), [sym_cstring] = ACTIONS(4844), [sym_dstring] = ACTIONS(4844), [sym_wstring] = ACTIONS(4844), [sym_noreturn] = ACTIONS(4844), [sym_true] = ACTIONS(4844), [sym_false] = ACTIONS(4844), [sym_null] = ACTIONS(4844), [sym_super] = ACTIONS(4844), [sym_this] = ACTIONS(4844), [sym_abstract] = ACTIONS(4844), [sym_alias] = ACTIONS(4844), [sym_align] = ACTIONS(4844), [sym_asm] = ACTIONS(4844), [sym_assert] = ACTIONS(4844), [sym_auto] = ACTIONS(4844), [sym_break] = ACTIONS(4844), [sym_case] = ACTIONS(4844), [sym_cast] = ACTIONS(4844), [sym_catch] = ACTIONS(4844), [sym_class] = ACTIONS(4844), [sym_const] = ACTIONS(4844), [sym_continue] = ACTIONS(4844), [sym_debug] = ACTIONS(4844), [sym_default] = ACTIONS(4844), [sym_delegate] = ACTIONS(4844), [sym_delete] = ACTIONS(4844), [sym_deprecated] = ACTIONS(4844), [sym_do] = ACTIONS(4844), [sym_else] = ACTIONS(4844), [sym_enum] = ACTIONS(4844), [sym_export] = ACTIONS(4844), [sym_extern] = ACTIONS(4844), [sym_final] = ACTIONS(4844), [sym_finally] = ACTIONS(4844), [sym_for] = ACTIONS(4844), [sym_foreach] = ACTIONS(4844), [sym_foreach_reverse] = ACTIONS(4844), [sym_function] = ACTIONS(4844), [sym_goto] = ACTIONS(4844), [sym_if] = ACTIONS(4844), [sym_immutable] = ACTIONS(4844), [sym_import] = ACTIONS(4844), [sym_in] = ACTIONS(4844), [sym_inout] = ACTIONS(4844), [sym_interface] = ACTIONS(4844), [sym_invariant] = ACTIONS(4844), [sym_is] = ACTIONS(4844), [sym_mixin] = ACTIONS(4844), [sym_new] = ACTIONS(4844), [sym_nothrow] = ACTIONS(4844), [sym_out] = ACTIONS(4844), [sym_override] = ACTIONS(4844), [sym_package] = ACTIONS(4844), [sym_pragma] = ACTIONS(4844), [sym_private] = ACTIONS(4844), [sym_protected] = ACTIONS(4844), [sym_public] = ACTIONS(4844), [sym_pure] = ACTIONS(4844), [sym_ref] = ACTIONS(4844), [sym_return] = ACTIONS(4844), [sym_scope] = ACTIONS(4844), [sym_shared] = ACTIONS(4844), [sym_static] = ACTIONS(4844), [sym_struct] = ACTIONS(4844), [sym_switch] = ACTIONS(4844), [sym_synchronized] = ACTIONS(4844), [sym_template] = ACTIONS(4844), [sym_throw] = ACTIONS(4844), [sym_try] = ACTIONS(4844), [sym_typeid] = ACTIONS(4844), [sym_typeof] = ACTIONS(4844), [sym_union] = ACTIONS(4844), [sym_unittest] = ACTIONS(4844), [sym_version] = ACTIONS(4844), [sym_while] = ACTIONS(4844), [sym_with] = ACTIONS(4844), [sym_gshared] = ACTIONS(4844), [sym_traits] = ACTIONS(4844), [sym_vector] = ACTIONS(4844), [sym_void] = ACTIONS(4844), [anon_sym_BQUOTE] = ACTIONS(4846), [anon_sym_r_DQUOTE] = ACTIONS(4846), [anon_sym_x_DQUOTE] = ACTIONS(4846), [anon_sym_DQUOTE] = ACTIONS(4846), [anon_sym_i_BQUOTE] = ACTIONS(4846), [anon_sym_i_DQUOTE] = ACTIONS(4846), [anon_sym_iq_LBRACE] = ACTIONS(4846), [aux_sym_char_literal_token1] = ACTIONS(4846), [anon_sym_SQUOTE] = ACTIONS(4844), [anon_sym___DATE__] = ACTIONS(4844), [anon_sym___FILE__] = ACTIONS(4844), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4844), [anon_sym___FUNCTION__] = ACTIONS(4844), [anon_sym___LINE__] = ACTIONS(4844), [anon_sym___MODULE__] = ACTIONS(4844), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4844), [anon_sym___TIME__] = ACTIONS(4844), [anon_sym___TIMESTAMP__] = ACTIONS(4844), [anon_sym___VENDOR__] = ACTIONS(4844), [anon_sym___VERSION__] = ACTIONS(4844), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4846), [sym_float_literal] = ACTIONS(4846), [sym__string] = ACTIONS(4846), }, [1493] = { [sym_identifier] = ACTIONS(4848), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4850), [anon_sym_RBRACE] = ACTIONS(4850), [anon_sym_LBRACE] = ACTIONS(4850), [anon_sym_DOT] = ACTIONS(4850), [anon_sym_AMP] = ACTIONS(4850), [anon_sym_DASH] = ACTIONS(4848), [anon_sym_DASH_DASH] = ACTIONS(4850), [anon_sym_PLUS] = ACTIONS(4848), [anon_sym_PLUS_PLUS] = ACTIONS(4850), [anon_sym_BANG] = ACTIONS(4850), [anon_sym_LPAREN] = ACTIONS(4850), [anon_sym_RPAREN] = ACTIONS(4850), [anon_sym_LBRACK] = ACTIONS(4850), [anon_sym_SEMI] = ACTIONS(4850), [anon_sym_DOLLAR] = ACTIONS(4850), [anon_sym_STAR] = ACTIONS(4850), [anon_sym_TILDE] = ACTIONS(4850), [anon_sym_AT] = ACTIONS(4850), [sym_bool] = ACTIONS(4848), [sym_byte] = ACTIONS(4848), [sym_ubyte] = ACTIONS(4848), [sym_char] = ACTIONS(4848), [sym_short] = ACTIONS(4848), [sym_ushort] = ACTIONS(4848), [sym_int] = ACTIONS(4848), [sym_uint] = ACTIONS(4848), [sym_long] = ACTIONS(4848), [sym_ulong] = ACTIONS(4848), [sym_cent] = ACTIONS(4848), [sym_ucent] = ACTIONS(4848), [sym_wchar] = ACTIONS(4848), [sym_dchar] = ACTIONS(4848), [sym_float] = ACTIONS(4848), [sym_double] = ACTIONS(4848), [sym_real] = ACTIONS(4848), [sym_ifloat] = ACTIONS(4848), [sym_idouble] = ACTIONS(4848), [sym_ireal] = ACTIONS(4848), [sym_cfloat] = ACTIONS(4848), [sym_cdouble] = ACTIONS(4848), [sym_creal] = ACTIONS(4848), [sym_size_t] = ACTIONS(4848), [sym_ptrdiff_t] = ACTIONS(4848), [sym_string] = ACTIONS(4848), [sym_cstring] = ACTIONS(4848), [sym_dstring] = ACTIONS(4848), [sym_wstring] = ACTIONS(4848), [sym_noreturn] = ACTIONS(4848), [sym_true] = ACTIONS(4848), [sym_false] = ACTIONS(4848), [sym_null] = ACTIONS(4848), [sym_super] = ACTIONS(4848), [sym_this] = ACTIONS(4848), [sym_abstract] = ACTIONS(4848), [sym_alias] = ACTIONS(4848), [sym_align] = ACTIONS(4848), [sym_asm] = ACTIONS(4848), [sym_assert] = ACTIONS(4848), [sym_auto] = ACTIONS(4848), [sym_break] = ACTIONS(4848), [sym_case] = ACTIONS(4848), [sym_cast] = ACTIONS(4848), [sym_catch] = ACTIONS(4848), [sym_class] = ACTIONS(4848), [sym_const] = ACTIONS(4848), [sym_continue] = ACTIONS(4848), [sym_debug] = ACTIONS(4848), [sym_default] = ACTIONS(4848), [sym_delegate] = ACTIONS(4848), [sym_delete] = ACTIONS(4848), [sym_deprecated] = ACTIONS(4848), [sym_do] = ACTIONS(4848), [sym_else] = ACTIONS(4848), [sym_enum] = ACTIONS(4848), [sym_export] = ACTIONS(4848), [sym_extern] = ACTIONS(4848), [sym_final] = ACTIONS(4848), [sym_finally] = ACTIONS(4848), [sym_for] = ACTIONS(4848), [sym_foreach] = ACTIONS(4848), [sym_foreach_reverse] = ACTIONS(4848), [sym_function] = ACTIONS(4848), [sym_goto] = ACTIONS(4848), [sym_if] = ACTIONS(4848), [sym_immutable] = ACTIONS(4848), [sym_import] = ACTIONS(4848), [sym_in] = ACTIONS(4848), [sym_inout] = ACTIONS(4848), [sym_interface] = ACTIONS(4848), [sym_invariant] = ACTIONS(4848), [sym_is] = ACTIONS(4848), [sym_mixin] = ACTIONS(4848), [sym_new] = ACTIONS(4848), [sym_nothrow] = ACTIONS(4848), [sym_out] = ACTIONS(4848), [sym_override] = ACTIONS(4848), [sym_package] = ACTIONS(4848), [sym_pragma] = ACTIONS(4848), [sym_private] = ACTIONS(4848), [sym_protected] = ACTIONS(4848), [sym_public] = ACTIONS(4848), [sym_pure] = ACTIONS(4848), [sym_ref] = ACTIONS(4848), [sym_return] = ACTIONS(4848), [sym_scope] = ACTIONS(4848), [sym_shared] = ACTIONS(4848), [sym_static] = ACTIONS(4848), [sym_struct] = ACTIONS(4848), [sym_switch] = ACTIONS(4848), [sym_synchronized] = ACTIONS(4848), [sym_template] = ACTIONS(4848), [sym_throw] = ACTIONS(4848), [sym_try] = ACTIONS(4848), [sym_typeid] = ACTIONS(4848), [sym_typeof] = ACTIONS(4848), [sym_union] = ACTIONS(4848), [sym_unittest] = ACTIONS(4848), [sym_version] = ACTIONS(4848), [sym_while] = ACTIONS(4848), [sym_with] = ACTIONS(4848), [sym_gshared] = ACTIONS(4848), [sym_traits] = ACTIONS(4848), [sym_vector] = ACTIONS(4848), [sym_void] = ACTIONS(4848), [anon_sym_BQUOTE] = ACTIONS(4850), [anon_sym_r_DQUOTE] = ACTIONS(4850), [anon_sym_x_DQUOTE] = ACTIONS(4850), [anon_sym_DQUOTE] = ACTIONS(4850), [anon_sym_i_BQUOTE] = ACTIONS(4850), [anon_sym_i_DQUOTE] = ACTIONS(4850), [anon_sym_iq_LBRACE] = ACTIONS(4850), [aux_sym_char_literal_token1] = ACTIONS(4850), [anon_sym_SQUOTE] = ACTIONS(4848), [anon_sym___DATE__] = ACTIONS(4848), [anon_sym___FILE__] = ACTIONS(4848), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4848), [anon_sym___FUNCTION__] = ACTIONS(4848), [anon_sym___LINE__] = ACTIONS(4848), [anon_sym___MODULE__] = ACTIONS(4848), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4848), [anon_sym___TIME__] = ACTIONS(4848), [anon_sym___TIMESTAMP__] = ACTIONS(4848), [anon_sym___VENDOR__] = ACTIONS(4848), [anon_sym___VERSION__] = ACTIONS(4848), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4850), [sym_float_literal] = ACTIONS(4850), [sym__string] = ACTIONS(4850), }, [1494] = { [sym_identifier] = ACTIONS(4852), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4854), [anon_sym_RBRACE] = ACTIONS(4854), [anon_sym_LBRACE] = ACTIONS(4854), [anon_sym_DOT] = ACTIONS(4854), [anon_sym_AMP] = ACTIONS(4854), [anon_sym_DASH] = ACTIONS(4852), [anon_sym_DASH_DASH] = ACTIONS(4854), [anon_sym_PLUS] = ACTIONS(4852), [anon_sym_PLUS_PLUS] = ACTIONS(4854), [anon_sym_BANG] = ACTIONS(4854), [anon_sym_LPAREN] = ACTIONS(4854), [anon_sym_RPAREN] = ACTIONS(4854), [anon_sym_LBRACK] = ACTIONS(4854), [anon_sym_SEMI] = ACTIONS(4854), [anon_sym_DOLLAR] = ACTIONS(4854), [anon_sym_STAR] = ACTIONS(4854), [anon_sym_TILDE] = ACTIONS(4854), [anon_sym_AT] = ACTIONS(4854), [sym_bool] = ACTIONS(4852), [sym_byte] = ACTIONS(4852), [sym_ubyte] = ACTIONS(4852), [sym_char] = ACTIONS(4852), [sym_short] = ACTIONS(4852), [sym_ushort] = ACTIONS(4852), [sym_int] = ACTIONS(4852), [sym_uint] = ACTIONS(4852), [sym_long] = ACTIONS(4852), [sym_ulong] = ACTIONS(4852), [sym_cent] = ACTIONS(4852), [sym_ucent] = ACTIONS(4852), [sym_wchar] = ACTIONS(4852), [sym_dchar] = ACTIONS(4852), [sym_float] = ACTIONS(4852), [sym_double] = ACTIONS(4852), [sym_real] = ACTIONS(4852), [sym_ifloat] = ACTIONS(4852), [sym_idouble] = ACTIONS(4852), [sym_ireal] = ACTIONS(4852), [sym_cfloat] = ACTIONS(4852), [sym_cdouble] = ACTIONS(4852), [sym_creal] = ACTIONS(4852), [sym_size_t] = ACTIONS(4852), [sym_ptrdiff_t] = ACTIONS(4852), [sym_string] = ACTIONS(4852), [sym_cstring] = ACTIONS(4852), [sym_dstring] = ACTIONS(4852), [sym_wstring] = ACTIONS(4852), [sym_noreturn] = ACTIONS(4852), [sym_true] = ACTIONS(4852), [sym_false] = ACTIONS(4852), [sym_null] = ACTIONS(4852), [sym_super] = ACTIONS(4852), [sym_this] = ACTIONS(4852), [sym_abstract] = ACTIONS(4852), [sym_alias] = ACTIONS(4852), [sym_align] = ACTIONS(4852), [sym_asm] = ACTIONS(4852), [sym_assert] = ACTIONS(4852), [sym_auto] = ACTIONS(4852), [sym_break] = ACTIONS(4852), [sym_case] = ACTIONS(4852), [sym_cast] = ACTIONS(4852), [sym_catch] = ACTIONS(4852), [sym_class] = ACTIONS(4852), [sym_const] = ACTIONS(4852), [sym_continue] = ACTIONS(4852), [sym_debug] = ACTIONS(4852), [sym_default] = ACTIONS(4852), [sym_delegate] = ACTIONS(4852), [sym_delete] = ACTIONS(4852), [sym_deprecated] = ACTIONS(4852), [sym_do] = ACTIONS(4852), [sym_else] = ACTIONS(4852), [sym_enum] = ACTIONS(4852), [sym_export] = ACTIONS(4852), [sym_extern] = ACTIONS(4852), [sym_final] = ACTIONS(4852), [sym_finally] = ACTIONS(4852), [sym_for] = ACTIONS(4852), [sym_foreach] = ACTIONS(4852), [sym_foreach_reverse] = ACTIONS(4852), [sym_function] = ACTIONS(4852), [sym_goto] = ACTIONS(4852), [sym_if] = ACTIONS(4852), [sym_immutable] = ACTIONS(4852), [sym_import] = ACTIONS(4852), [sym_in] = ACTIONS(4852), [sym_inout] = ACTIONS(4852), [sym_interface] = ACTIONS(4852), [sym_invariant] = ACTIONS(4852), [sym_is] = ACTIONS(4852), [sym_mixin] = ACTIONS(4852), [sym_new] = ACTIONS(4852), [sym_nothrow] = ACTIONS(4852), [sym_out] = ACTIONS(4852), [sym_override] = ACTIONS(4852), [sym_package] = ACTIONS(4852), [sym_pragma] = ACTIONS(4852), [sym_private] = ACTIONS(4852), [sym_protected] = ACTIONS(4852), [sym_public] = ACTIONS(4852), [sym_pure] = ACTIONS(4852), [sym_ref] = ACTIONS(4852), [sym_return] = ACTIONS(4852), [sym_scope] = ACTIONS(4852), [sym_shared] = ACTIONS(4852), [sym_static] = ACTIONS(4852), [sym_struct] = ACTIONS(4852), [sym_switch] = ACTIONS(4852), [sym_synchronized] = ACTIONS(4852), [sym_template] = ACTIONS(4852), [sym_throw] = ACTIONS(4852), [sym_try] = ACTIONS(4852), [sym_typeid] = ACTIONS(4852), [sym_typeof] = ACTIONS(4852), [sym_union] = ACTIONS(4852), [sym_unittest] = ACTIONS(4852), [sym_version] = ACTIONS(4852), [sym_while] = ACTIONS(4852), [sym_with] = ACTIONS(4852), [sym_gshared] = ACTIONS(4852), [sym_traits] = ACTIONS(4852), [sym_vector] = ACTIONS(4852), [sym_void] = ACTIONS(4852), [anon_sym_BQUOTE] = ACTIONS(4854), [anon_sym_r_DQUOTE] = ACTIONS(4854), [anon_sym_x_DQUOTE] = ACTIONS(4854), [anon_sym_DQUOTE] = ACTIONS(4854), [anon_sym_i_BQUOTE] = ACTIONS(4854), [anon_sym_i_DQUOTE] = ACTIONS(4854), [anon_sym_iq_LBRACE] = ACTIONS(4854), [aux_sym_char_literal_token1] = ACTIONS(4854), [anon_sym_SQUOTE] = ACTIONS(4852), [anon_sym___DATE__] = ACTIONS(4852), [anon_sym___FILE__] = ACTIONS(4852), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4852), [anon_sym___FUNCTION__] = ACTIONS(4852), [anon_sym___LINE__] = ACTIONS(4852), [anon_sym___MODULE__] = ACTIONS(4852), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4852), [anon_sym___TIME__] = ACTIONS(4852), [anon_sym___TIMESTAMP__] = ACTIONS(4852), [anon_sym___VENDOR__] = ACTIONS(4852), [anon_sym___VERSION__] = ACTIONS(4852), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4854), [sym_float_literal] = ACTIONS(4854), [sym__string] = ACTIONS(4854), }, [1495] = { [sym_identifier] = ACTIONS(4856), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4858), [anon_sym_RBRACE] = ACTIONS(4858), [anon_sym_LBRACE] = ACTIONS(4858), [anon_sym_DOT] = ACTIONS(4858), [anon_sym_AMP] = ACTIONS(4858), [anon_sym_DASH] = ACTIONS(4856), [anon_sym_DASH_DASH] = ACTIONS(4858), [anon_sym_PLUS] = ACTIONS(4856), [anon_sym_PLUS_PLUS] = ACTIONS(4858), [anon_sym_BANG] = ACTIONS(4858), [anon_sym_LPAREN] = ACTIONS(4858), [anon_sym_RPAREN] = ACTIONS(4858), [anon_sym_LBRACK] = ACTIONS(4858), [anon_sym_SEMI] = ACTIONS(4858), [anon_sym_DOLLAR] = ACTIONS(4858), [anon_sym_STAR] = ACTIONS(4858), [anon_sym_TILDE] = ACTIONS(4858), [anon_sym_AT] = ACTIONS(4858), [sym_bool] = ACTIONS(4856), [sym_byte] = ACTIONS(4856), [sym_ubyte] = ACTIONS(4856), [sym_char] = ACTIONS(4856), [sym_short] = ACTIONS(4856), [sym_ushort] = ACTIONS(4856), [sym_int] = ACTIONS(4856), [sym_uint] = ACTIONS(4856), [sym_long] = ACTIONS(4856), [sym_ulong] = ACTIONS(4856), [sym_cent] = ACTIONS(4856), [sym_ucent] = ACTIONS(4856), [sym_wchar] = ACTIONS(4856), [sym_dchar] = ACTIONS(4856), [sym_float] = ACTIONS(4856), [sym_double] = ACTIONS(4856), [sym_real] = ACTIONS(4856), [sym_ifloat] = ACTIONS(4856), [sym_idouble] = ACTIONS(4856), [sym_ireal] = ACTIONS(4856), [sym_cfloat] = ACTIONS(4856), [sym_cdouble] = ACTIONS(4856), [sym_creal] = ACTIONS(4856), [sym_size_t] = ACTIONS(4856), [sym_ptrdiff_t] = ACTIONS(4856), [sym_string] = ACTIONS(4856), [sym_cstring] = ACTIONS(4856), [sym_dstring] = ACTIONS(4856), [sym_wstring] = ACTIONS(4856), [sym_noreturn] = ACTIONS(4856), [sym_true] = ACTIONS(4856), [sym_false] = ACTIONS(4856), [sym_null] = ACTIONS(4856), [sym_super] = ACTIONS(4856), [sym_this] = ACTIONS(4856), [sym_abstract] = ACTIONS(4856), [sym_alias] = ACTIONS(4856), [sym_align] = ACTIONS(4856), [sym_asm] = ACTIONS(4856), [sym_assert] = ACTIONS(4856), [sym_auto] = ACTIONS(4856), [sym_break] = ACTIONS(4856), [sym_case] = ACTIONS(4856), [sym_cast] = ACTIONS(4856), [sym_catch] = ACTIONS(4856), [sym_class] = ACTIONS(4856), [sym_const] = ACTIONS(4856), [sym_continue] = ACTIONS(4856), [sym_debug] = ACTIONS(4856), [sym_default] = ACTIONS(4856), [sym_delegate] = ACTIONS(4856), [sym_delete] = ACTIONS(4856), [sym_deprecated] = ACTIONS(4856), [sym_do] = ACTIONS(4856), [sym_else] = ACTIONS(4856), [sym_enum] = ACTIONS(4856), [sym_export] = ACTIONS(4856), [sym_extern] = ACTIONS(4856), [sym_final] = ACTIONS(4856), [sym_finally] = ACTIONS(4856), [sym_for] = ACTIONS(4856), [sym_foreach] = ACTIONS(4856), [sym_foreach_reverse] = ACTIONS(4856), [sym_function] = ACTIONS(4856), [sym_goto] = ACTIONS(4856), [sym_if] = ACTIONS(4856), [sym_immutable] = ACTIONS(4856), [sym_import] = ACTIONS(4856), [sym_in] = ACTIONS(4856), [sym_inout] = ACTIONS(4856), [sym_interface] = ACTIONS(4856), [sym_invariant] = ACTIONS(4856), [sym_is] = ACTIONS(4856), [sym_mixin] = ACTIONS(4856), [sym_new] = ACTIONS(4856), [sym_nothrow] = ACTIONS(4856), [sym_out] = ACTIONS(4856), [sym_override] = ACTIONS(4856), [sym_package] = ACTIONS(4856), [sym_pragma] = ACTIONS(4856), [sym_private] = ACTIONS(4856), [sym_protected] = ACTIONS(4856), [sym_public] = ACTIONS(4856), [sym_pure] = ACTIONS(4856), [sym_ref] = ACTIONS(4856), [sym_return] = ACTIONS(4856), [sym_scope] = ACTIONS(4856), [sym_shared] = ACTIONS(4856), [sym_static] = ACTIONS(4856), [sym_struct] = ACTIONS(4856), [sym_switch] = ACTIONS(4856), [sym_synchronized] = ACTIONS(4856), [sym_template] = ACTIONS(4856), [sym_throw] = ACTIONS(4856), [sym_try] = ACTIONS(4856), [sym_typeid] = ACTIONS(4856), [sym_typeof] = ACTIONS(4856), [sym_union] = ACTIONS(4856), [sym_unittest] = ACTIONS(4856), [sym_version] = ACTIONS(4856), [sym_while] = ACTIONS(4856), [sym_with] = ACTIONS(4856), [sym_gshared] = ACTIONS(4856), [sym_traits] = ACTIONS(4856), [sym_vector] = ACTIONS(4856), [sym_void] = ACTIONS(4856), [anon_sym_BQUOTE] = ACTIONS(4858), [anon_sym_r_DQUOTE] = ACTIONS(4858), [anon_sym_x_DQUOTE] = ACTIONS(4858), [anon_sym_DQUOTE] = ACTIONS(4858), [anon_sym_i_BQUOTE] = ACTIONS(4858), [anon_sym_i_DQUOTE] = ACTIONS(4858), [anon_sym_iq_LBRACE] = ACTIONS(4858), [aux_sym_char_literal_token1] = ACTIONS(4858), [anon_sym_SQUOTE] = ACTIONS(4856), [anon_sym___DATE__] = ACTIONS(4856), [anon_sym___FILE__] = ACTIONS(4856), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4856), [anon_sym___FUNCTION__] = ACTIONS(4856), [anon_sym___LINE__] = ACTIONS(4856), [anon_sym___MODULE__] = ACTIONS(4856), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4856), [anon_sym___TIME__] = ACTIONS(4856), [anon_sym___TIMESTAMP__] = ACTIONS(4856), [anon_sym___VENDOR__] = ACTIONS(4856), [anon_sym___VERSION__] = ACTIONS(4856), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4858), [sym_float_literal] = ACTIONS(4858), [sym__string] = ACTIONS(4858), }, [1496] = { [sym_identifier] = ACTIONS(4860), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4862), [anon_sym_RBRACE] = ACTIONS(4862), [anon_sym_LBRACE] = ACTIONS(4862), [anon_sym_DOT] = ACTIONS(4862), [anon_sym_AMP] = ACTIONS(4862), [anon_sym_DASH] = ACTIONS(4860), [anon_sym_DASH_DASH] = ACTIONS(4862), [anon_sym_PLUS] = ACTIONS(4860), [anon_sym_PLUS_PLUS] = ACTIONS(4862), [anon_sym_BANG] = ACTIONS(4862), [anon_sym_LPAREN] = ACTIONS(4862), [anon_sym_RPAREN] = ACTIONS(4862), [anon_sym_LBRACK] = ACTIONS(4862), [anon_sym_SEMI] = ACTIONS(4862), [anon_sym_DOLLAR] = ACTIONS(4862), [anon_sym_STAR] = ACTIONS(4862), [anon_sym_TILDE] = ACTIONS(4862), [anon_sym_AT] = ACTIONS(4862), [sym_bool] = ACTIONS(4860), [sym_byte] = ACTIONS(4860), [sym_ubyte] = ACTIONS(4860), [sym_char] = ACTIONS(4860), [sym_short] = ACTIONS(4860), [sym_ushort] = ACTIONS(4860), [sym_int] = ACTIONS(4860), [sym_uint] = ACTIONS(4860), [sym_long] = ACTIONS(4860), [sym_ulong] = ACTIONS(4860), [sym_cent] = ACTIONS(4860), [sym_ucent] = ACTIONS(4860), [sym_wchar] = ACTIONS(4860), [sym_dchar] = ACTIONS(4860), [sym_float] = ACTIONS(4860), [sym_double] = ACTIONS(4860), [sym_real] = ACTIONS(4860), [sym_ifloat] = ACTIONS(4860), [sym_idouble] = ACTIONS(4860), [sym_ireal] = ACTIONS(4860), [sym_cfloat] = ACTIONS(4860), [sym_cdouble] = ACTIONS(4860), [sym_creal] = ACTIONS(4860), [sym_size_t] = ACTIONS(4860), [sym_ptrdiff_t] = ACTIONS(4860), [sym_string] = ACTIONS(4860), [sym_cstring] = ACTIONS(4860), [sym_dstring] = ACTIONS(4860), [sym_wstring] = ACTIONS(4860), [sym_noreturn] = ACTIONS(4860), [sym_true] = ACTIONS(4860), [sym_false] = ACTIONS(4860), [sym_null] = ACTIONS(4860), [sym_super] = ACTIONS(4860), [sym_this] = ACTIONS(4860), [sym_abstract] = ACTIONS(4860), [sym_alias] = ACTIONS(4860), [sym_align] = ACTIONS(4860), [sym_asm] = ACTIONS(4860), [sym_assert] = ACTIONS(4860), [sym_auto] = ACTIONS(4860), [sym_break] = ACTIONS(4860), [sym_case] = ACTIONS(4860), [sym_cast] = ACTIONS(4860), [sym_catch] = ACTIONS(4860), [sym_class] = ACTIONS(4860), [sym_const] = ACTIONS(4860), [sym_continue] = ACTIONS(4860), [sym_debug] = ACTIONS(4860), [sym_default] = ACTIONS(4860), [sym_delegate] = ACTIONS(4860), [sym_delete] = ACTIONS(4860), [sym_deprecated] = ACTIONS(4860), [sym_do] = ACTIONS(4860), [sym_else] = ACTIONS(4860), [sym_enum] = ACTIONS(4860), [sym_export] = ACTIONS(4860), [sym_extern] = ACTIONS(4860), [sym_final] = ACTIONS(4860), [sym_finally] = ACTIONS(4860), [sym_for] = ACTIONS(4860), [sym_foreach] = ACTIONS(4860), [sym_foreach_reverse] = ACTIONS(4860), [sym_function] = ACTIONS(4860), [sym_goto] = ACTIONS(4860), [sym_if] = ACTIONS(4860), [sym_immutable] = ACTIONS(4860), [sym_import] = ACTIONS(4860), [sym_in] = ACTIONS(4860), [sym_inout] = ACTIONS(4860), [sym_interface] = ACTIONS(4860), [sym_invariant] = ACTIONS(4860), [sym_is] = ACTIONS(4860), [sym_mixin] = ACTIONS(4860), [sym_new] = ACTIONS(4860), [sym_nothrow] = ACTIONS(4860), [sym_out] = ACTIONS(4860), [sym_override] = ACTIONS(4860), [sym_package] = ACTIONS(4860), [sym_pragma] = ACTIONS(4860), [sym_private] = ACTIONS(4860), [sym_protected] = ACTIONS(4860), [sym_public] = ACTIONS(4860), [sym_pure] = ACTIONS(4860), [sym_ref] = ACTIONS(4860), [sym_return] = ACTIONS(4860), [sym_scope] = ACTIONS(4860), [sym_shared] = ACTIONS(4860), [sym_static] = ACTIONS(4860), [sym_struct] = ACTIONS(4860), [sym_switch] = ACTIONS(4860), [sym_synchronized] = ACTIONS(4860), [sym_template] = ACTIONS(4860), [sym_throw] = ACTIONS(4860), [sym_try] = ACTIONS(4860), [sym_typeid] = ACTIONS(4860), [sym_typeof] = ACTIONS(4860), [sym_union] = ACTIONS(4860), [sym_unittest] = ACTIONS(4860), [sym_version] = ACTIONS(4860), [sym_while] = ACTIONS(4860), [sym_with] = ACTIONS(4860), [sym_gshared] = ACTIONS(4860), [sym_traits] = ACTIONS(4860), [sym_vector] = ACTIONS(4860), [sym_void] = ACTIONS(4860), [anon_sym_BQUOTE] = ACTIONS(4862), [anon_sym_r_DQUOTE] = ACTIONS(4862), [anon_sym_x_DQUOTE] = ACTIONS(4862), [anon_sym_DQUOTE] = ACTIONS(4862), [anon_sym_i_BQUOTE] = ACTIONS(4862), [anon_sym_i_DQUOTE] = ACTIONS(4862), [anon_sym_iq_LBRACE] = ACTIONS(4862), [aux_sym_char_literal_token1] = ACTIONS(4862), [anon_sym_SQUOTE] = ACTIONS(4860), [anon_sym___DATE__] = ACTIONS(4860), [anon_sym___FILE__] = ACTIONS(4860), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4860), [anon_sym___FUNCTION__] = ACTIONS(4860), [anon_sym___LINE__] = ACTIONS(4860), [anon_sym___MODULE__] = ACTIONS(4860), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4860), [anon_sym___TIME__] = ACTIONS(4860), [anon_sym___TIMESTAMP__] = ACTIONS(4860), [anon_sym___VENDOR__] = ACTIONS(4860), [anon_sym___VERSION__] = ACTIONS(4860), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4862), [sym_float_literal] = ACTIONS(4862), [sym__string] = ACTIONS(4862), }, [1497] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_finally] = ACTIONS(2798), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [1498] = { [sym_identifier] = ACTIONS(4864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4866), [anon_sym_RBRACE] = ACTIONS(4866), [anon_sym_LBRACE] = ACTIONS(4866), [anon_sym_DOT] = ACTIONS(4866), [anon_sym_AMP] = ACTIONS(4866), [anon_sym_DASH] = ACTIONS(4864), [anon_sym_DASH_DASH] = ACTIONS(4866), [anon_sym_PLUS] = ACTIONS(4864), [anon_sym_PLUS_PLUS] = ACTIONS(4866), [anon_sym_BANG] = ACTIONS(4866), [anon_sym_LPAREN] = ACTIONS(4866), [anon_sym_RPAREN] = ACTIONS(4866), [anon_sym_LBRACK] = ACTIONS(4866), [anon_sym_SEMI] = ACTIONS(4866), [anon_sym_DOLLAR] = ACTIONS(4866), [anon_sym_STAR] = ACTIONS(4866), [anon_sym_TILDE] = ACTIONS(4866), [anon_sym_AT] = ACTIONS(4866), [sym_bool] = ACTIONS(4864), [sym_byte] = ACTIONS(4864), [sym_ubyte] = ACTIONS(4864), [sym_char] = ACTIONS(4864), [sym_short] = ACTIONS(4864), [sym_ushort] = ACTIONS(4864), [sym_int] = ACTIONS(4864), [sym_uint] = ACTIONS(4864), [sym_long] = ACTIONS(4864), [sym_ulong] = ACTIONS(4864), [sym_cent] = ACTIONS(4864), [sym_ucent] = ACTIONS(4864), [sym_wchar] = ACTIONS(4864), [sym_dchar] = ACTIONS(4864), [sym_float] = ACTIONS(4864), [sym_double] = ACTIONS(4864), [sym_real] = ACTIONS(4864), [sym_ifloat] = ACTIONS(4864), [sym_idouble] = ACTIONS(4864), [sym_ireal] = ACTIONS(4864), [sym_cfloat] = ACTIONS(4864), [sym_cdouble] = ACTIONS(4864), [sym_creal] = ACTIONS(4864), [sym_size_t] = ACTIONS(4864), [sym_ptrdiff_t] = ACTIONS(4864), [sym_string] = ACTIONS(4864), [sym_cstring] = ACTIONS(4864), [sym_dstring] = ACTIONS(4864), [sym_wstring] = ACTIONS(4864), [sym_noreturn] = ACTIONS(4864), [sym_true] = ACTIONS(4864), [sym_false] = ACTIONS(4864), [sym_null] = ACTIONS(4864), [sym_super] = ACTIONS(4864), [sym_this] = ACTIONS(4864), [sym_abstract] = ACTIONS(4864), [sym_alias] = ACTIONS(4864), [sym_align] = ACTIONS(4864), [sym_asm] = ACTIONS(4864), [sym_assert] = ACTIONS(4864), [sym_auto] = ACTIONS(4864), [sym_break] = ACTIONS(4864), [sym_case] = ACTIONS(4864), [sym_cast] = ACTIONS(4864), [sym_catch] = ACTIONS(4864), [sym_class] = ACTIONS(4864), [sym_const] = ACTIONS(4864), [sym_continue] = ACTIONS(4864), [sym_debug] = ACTIONS(4864), [sym_default] = ACTIONS(4864), [sym_delegate] = ACTIONS(4864), [sym_delete] = ACTIONS(4864), [sym_deprecated] = ACTIONS(4864), [sym_do] = ACTIONS(4864), [sym_else] = ACTIONS(4864), [sym_enum] = ACTIONS(4864), [sym_export] = ACTIONS(4864), [sym_extern] = ACTIONS(4864), [sym_final] = ACTIONS(4864), [sym_finally] = ACTIONS(4864), [sym_for] = ACTIONS(4864), [sym_foreach] = ACTIONS(4864), [sym_foreach_reverse] = ACTIONS(4864), [sym_function] = ACTIONS(4864), [sym_goto] = ACTIONS(4864), [sym_if] = ACTIONS(4864), [sym_immutable] = ACTIONS(4864), [sym_import] = ACTIONS(4864), [sym_in] = ACTIONS(4864), [sym_inout] = ACTIONS(4864), [sym_interface] = ACTIONS(4864), [sym_invariant] = ACTIONS(4864), [sym_is] = ACTIONS(4864), [sym_mixin] = ACTIONS(4864), [sym_new] = ACTIONS(4864), [sym_nothrow] = ACTIONS(4864), [sym_out] = ACTIONS(4864), [sym_override] = ACTIONS(4864), [sym_package] = ACTIONS(4864), [sym_pragma] = ACTIONS(4864), [sym_private] = ACTIONS(4864), [sym_protected] = ACTIONS(4864), [sym_public] = ACTIONS(4864), [sym_pure] = ACTIONS(4864), [sym_ref] = ACTIONS(4864), [sym_return] = ACTIONS(4864), [sym_scope] = ACTIONS(4864), [sym_shared] = ACTIONS(4864), [sym_static] = ACTIONS(4864), [sym_struct] = ACTIONS(4864), [sym_switch] = ACTIONS(4864), [sym_synchronized] = ACTIONS(4864), [sym_template] = ACTIONS(4864), [sym_throw] = ACTIONS(4864), [sym_try] = ACTIONS(4864), [sym_typeid] = ACTIONS(4864), [sym_typeof] = ACTIONS(4864), [sym_union] = ACTIONS(4864), [sym_unittest] = ACTIONS(4864), [sym_version] = ACTIONS(4864), [sym_while] = ACTIONS(4864), [sym_with] = ACTIONS(4864), [sym_gshared] = ACTIONS(4864), [sym_traits] = ACTIONS(4864), [sym_vector] = ACTIONS(4864), [sym_void] = ACTIONS(4864), [anon_sym_BQUOTE] = ACTIONS(4866), [anon_sym_r_DQUOTE] = ACTIONS(4866), [anon_sym_x_DQUOTE] = ACTIONS(4866), [anon_sym_DQUOTE] = ACTIONS(4866), [anon_sym_i_BQUOTE] = ACTIONS(4866), [anon_sym_i_DQUOTE] = ACTIONS(4866), [anon_sym_iq_LBRACE] = ACTIONS(4866), [aux_sym_char_literal_token1] = ACTIONS(4866), [anon_sym_SQUOTE] = ACTIONS(4864), [anon_sym___DATE__] = ACTIONS(4864), [anon_sym___FILE__] = ACTIONS(4864), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4864), [anon_sym___FUNCTION__] = ACTIONS(4864), [anon_sym___LINE__] = ACTIONS(4864), [anon_sym___MODULE__] = ACTIONS(4864), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4864), [anon_sym___TIME__] = ACTIONS(4864), [anon_sym___TIMESTAMP__] = ACTIONS(4864), [anon_sym___VENDOR__] = ACTIONS(4864), [anon_sym___VERSION__] = ACTIONS(4864), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4866), [sym_float_literal] = ACTIONS(4866), [sym__string] = ACTIONS(4866), }, [1499] = { [sym_identifier] = ACTIONS(4868), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4870), [anon_sym_RBRACE] = ACTIONS(4870), [anon_sym_LBRACE] = ACTIONS(4870), [anon_sym_DOT] = ACTIONS(4870), [anon_sym_AMP] = ACTIONS(4870), [anon_sym_DASH] = ACTIONS(4868), [anon_sym_DASH_DASH] = ACTIONS(4870), [anon_sym_PLUS] = ACTIONS(4868), [anon_sym_PLUS_PLUS] = ACTIONS(4870), [anon_sym_BANG] = ACTIONS(4870), [anon_sym_LPAREN] = ACTIONS(4870), [anon_sym_RPAREN] = ACTIONS(4870), [anon_sym_LBRACK] = ACTIONS(4870), [anon_sym_SEMI] = ACTIONS(4870), [anon_sym_DOLLAR] = ACTIONS(4870), [anon_sym_STAR] = ACTIONS(4870), [anon_sym_TILDE] = ACTIONS(4870), [anon_sym_AT] = ACTIONS(4870), [sym_bool] = ACTIONS(4868), [sym_byte] = ACTIONS(4868), [sym_ubyte] = ACTIONS(4868), [sym_char] = ACTIONS(4868), [sym_short] = ACTIONS(4868), [sym_ushort] = ACTIONS(4868), [sym_int] = ACTIONS(4868), [sym_uint] = ACTIONS(4868), [sym_long] = ACTIONS(4868), [sym_ulong] = ACTIONS(4868), [sym_cent] = ACTIONS(4868), [sym_ucent] = ACTIONS(4868), [sym_wchar] = ACTIONS(4868), [sym_dchar] = ACTIONS(4868), [sym_float] = ACTIONS(4868), [sym_double] = ACTIONS(4868), [sym_real] = ACTIONS(4868), [sym_ifloat] = ACTIONS(4868), [sym_idouble] = ACTIONS(4868), [sym_ireal] = ACTIONS(4868), [sym_cfloat] = ACTIONS(4868), [sym_cdouble] = ACTIONS(4868), [sym_creal] = ACTIONS(4868), [sym_size_t] = ACTIONS(4868), [sym_ptrdiff_t] = ACTIONS(4868), [sym_string] = ACTIONS(4868), [sym_cstring] = ACTIONS(4868), [sym_dstring] = ACTIONS(4868), [sym_wstring] = ACTIONS(4868), [sym_noreturn] = ACTIONS(4868), [sym_true] = ACTIONS(4868), [sym_false] = ACTIONS(4868), [sym_null] = ACTIONS(4868), [sym_super] = ACTIONS(4868), [sym_this] = ACTIONS(4868), [sym_abstract] = ACTIONS(4868), [sym_alias] = ACTIONS(4868), [sym_align] = ACTIONS(4868), [sym_asm] = ACTIONS(4868), [sym_assert] = ACTIONS(4868), [sym_auto] = ACTIONS(4868), [sym_break] = ACTIONS(4868), [sym_case] = ACTIONS(4868), [sym_cast] = ACTIONS(4868), [sym_catch] = ACTIONS(4868), [sym_class] = ACTIONS(4868), [sym_const] = ACTIONS(4868), [sym_continue] = ACTIONS(4868), [sym_debug] = ACTIONS(4868), [sym_default] = ACTIONS(4868), [sym_delegate] = ACTIONS(4868), [sym_delete] = ACTIONS(4868), [sym_deprecated] = ACTIONS(4868), [sym_do] = ACTIONS(4868), [sym_else] = ACTIONS(4868), [sym_enum] = ACTIONS(4868), [sym_export] = ACTIONS(4868), [sym_extern] = ACTIONS(4868), [sym_final] = ACTIONS(4868), [sym_finally] = ACTIONS(4868), [sym_for] = ACTIONS(4868), [sym_foreach] = ACTIONS(4868), [sym_foreach_reverse] = ACTIONS(4868), [sym_function] = ACTIONS(4868), [sym_goto] = ACTIONS(4868), [sym_if] = ACTIONS(4868), [sym_immutable] = ACTIONS(4868), [sym_import] = ACTIONS(4868), [sym_in] = ACTIONS(4868), [sym_inout] = ACTIONS(4868), [sym_interface] = ACTIONS(4868), [sym_invariant] = ACTIONS(4868), [sym_is] = ACTIONS(4868), [sym_mixin] = ACTIONS(4868), [sym_new] = ACTIONS(4868), [sym_nothrow] = ACTIONS(4868), [sym_out] = ACTIONS(4868), [sym_override] = ACTIONS(4868), [sym_package] = ACTIONS(4868), [sym_pragma] = ACTIONS(4868), [sym_private] = ACTIONS(4868), [sym_protected] = ACTIONS(4868), [sym_public] = ACTIONS(4868), [sym_pure] = ACTIONS(4868), [sym_ref] = ACTIONS(4868), [sym_return] = ACTIONS(4868), [sym_scope] = ACTIONS(4868), [sym_shared] = ACTIONS(4868), [sym_static] = ACTIONS(4868), [sym_struct] = ACTIONS(4868), [sym_switch] = ACTIONS(4868), [sym_synchronized] = ACTIONS(4868), [sym_template] = ACTIONS(4868), [sym_throw] = ACTIONS(4868), [sym_try] = ACTIONS(4868), [sym_typeid] = ACTIONS(4868), [sym_typeof] = ACTIONS(4868), [sym_union] = ACTIONS(4868), [sym_unittest] = ACTIONS(4868), [sym_version] = ACTIONS(4868), [sym_while] = ACTIONS(4868), [sym_with] = ACTIONS(4868), [sym_gshared] = ACTIONS(4868), [sym_traits] = ACTIONS(4868), [sym_vector] = ACTIONS(4868), [sym_void] = ACTIONS(4868), [anon_sym_BQUOTE] = ACTIONS(4870), [anon_sym_r_DQUOTE] = ACTIONS(4870), [anon_sym_x_DQUOTE] = ACTIONS(4870), [anon_sym_DQUOTE] = ACTIONS(4870), [anon_sym_i_BQUOTE] = ACTIONS(4870), [anon_sym_i_DQUOTE] = ACTIONS(4870), [anon_sym_iq_LBRACE] = ACTIONS(4870), [aux_sym_char_literal_token1] = ACTIONS(4870), [anon_sym_SQUOTE] = ACTIONS(4868), [anon_sym___DATE__] = ACTIONS(4868), [anon_sym___FILE__] = ACTIONS(4868), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4868), [anon_sym___FUNCTION__] = ACTIONS(4868), [anon_sym___LINE__] = ACTIONS(4868), [anon_sym___MODULE__] = ACTIONS(4868), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4868), [anon_sym___TIME__] = ACTIONS(4868), [anon_sym___TIMESTAMP__] = ACTIONS(4868), [anon_sym___VENDOR__] = ACTIONS(4868), [anon_sym___VERSION__] = ACTIONS(4868), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4870), [sym_float_literal] = ACTIONS(4870), [sym__string] = ACTIONS(4870), }, [1500] = { [sym_identifier] = ACTIONS(4872), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4874), [anon_sym_RBRACE] = ACTIONS(4874), [anon_sym_LBRACE] = ACTIONS(4874), [anon_sym_DOT] = ACTIONS(4874), [anon_sym_AMP] = ACTIONS(4874), [anon_sym_DASH] = ACTIONS(4872), [anon_sym_DASH_DASH] = ACTIONS(4874), [anon_sym_PLUS] = ACTIONS(4872), [anon_sym_PLUS_PLUS] = ACTIONS(4874), [anon_sym_BANG] = ACTIONS(4874), [anon_sym_LPAREN] = ACTIONS(4874), [anon_sym_RPAREN] = ACTIONS(4874), [anon_sym_LBRACK] = ACTIONS(4874), [anon_sym_SEMI] = ACTIONS(4874), [anon_sym_DOLLAR] = ACTIONS(4874), [anon_sym_STAR] = ACTIONS(4874), [anon_sym_TILDE] = ACTIONS(4874), [anon_sym_AT] = ACTIONS(4874), [sym_bool] = ACTIONS(4872), [sym_byte] = ACTIONS(4872), [sym_ubyte] = ACTIONS(4872), [sym_char] = ACTIONS(4872), [sym_short] = ACTIONS(4872), [sym_ushort] = ACTIONS(4872), [sym_int] = ACTIONS(4872), [sym_uint] = ACTIONS(4872), [sym_long] = ACTIONS(4872), [sym_ulong] = ACTIONS(4872), [sym_cent] = ACTIONS(4872), [sym_ucent] = ACTIONS(4872), [sym_wchar] = ACTIONS(4872), [sym_dchar] = ACTIONS(4872), [sym_float] = ACTIONS(4872), [sym_double] = ACTIONS(4872), [sym_real] = ACTIONS(4872), [sym_ifloat] = ACTIONS(4872), [sym_idouble] = ACTIONS(4872), [sym_ireal] = ACTIONS(4872), [sym_cfloat] = ACTIONS(4872), [sym_cdouble] = ACTIONS(4872), [sym_creal] = ACTIONS(4872), [sym_size_t] = ACTIONS(4872), [sym_ptrdiff_t] = ACTIONS(4872), [sym_string] = ACTIONS(4872), [sym_cstring] = ACTIONS(4872), [sym_dstring] = ACTIONS(4872), [sym_wstring] = ACTIONS(4872), [sym_noreturn] = ACTIONS(4872), [sym_true] = ACTIONS(4872), [sym_false] = ACTIONS(4872), [sym_null] = ACTIONS(4872), [sym_super] = ACTIONS(4872), [sym_this] = ACTIONS(4872), [sym_abstract] = ACTIONS(4872), [sym_alias] = ACTIONS(4872), [sym_align] = ACTIONS(4872), [sym_asm] = ACTIONS(4872), [sym_assert] = ACTIONS(4872), [sym_auto] = ACTIONS(4872), [sym_break] = ACTIONS(4872), [sym_case] = ACTIONS(4872), [sym_cast] = ACTIONS(4872), [sym_catch] = ACTIONS(4872), [sym_class] = ACTIONS(4872), [sym_const] = ACTIONS(4872), [sym_continue] = ACTIONS(4872), [sym_debug] = ACTIONS(4872), [sym_default] = ACTIONS(4872), [sym_delegate] = ACTIONS(4872), [sym_delete] = ACTIONS(4872), [sym_deprecated] = ACTIONS(4872), [sym_do] = ACTIONS(4872), [sym_else] = ACTIONS(4872), [sym_enum] = ACTIONS(4872), [sym_export] = ACTIONS(4872), [sym_extern] = ACTIONS(4872), [sym_final] = ACTIONS(4872), [sym_finally] = ACTIONS(4872), [sym_for] = ACTIONS(4872), [sym_foreach] = ACTIONS(4872), [sym_foreach_reverse] = ACTIONS(4872), [sym_function] = ACTIONS(4872), [sym_goto] = ACTIONS(4872), [sym_if] = ACTIONS(4872), [sym_immutable] = ACTIONS(4872), [sym_import] = ACTIONS(4872), [sym_in] = ACTIONS(4872), [sym_inout] = ACTIONS(4872), [sym_interface] = ACTIONS(4872), [sym_invariant] = ACTIONS(4872), [sym_is] = ACTIONS(4872), [sym_mixin] = ACTIONS(4872), [sym_new] = ACTIONS(4872), [sym_nothrow] = ACTIONS(4872), [sym_out] = ACTIONS(4872), [sym_override] = ACTIONS(4872), [sym_package] = ACTIONS(4872), [sym_pragma] = ACTIONS(4872), [sym_private] = ACTIONS(4872), [sym_protected] = ACTIONS(4872), [sym_public] = ACTIONS(4872), [sym_pure] = ACTIONS(4872), [sym_ref] = ACTIONS(4872), [sym_return] = ACTIONS(4872), [sym_scope] = ACTIONS(4872), [sym_shared] = ACTIONS(4872), [sym_static] = ACTIONS(4872), [sym_struct] = ACTIONS(4872), [sym_switch] = ACTIONS(4872), [sym_synchronized] = ACTIONS(4872), [sym_template] = ACTIONS(4872), [sym_throw] = ACTIONS(4872), [sym_try] = ACTIONS(4872), [sym_typeid] = ACTIONS(4872), [sym_typeof] = ACTIONS(4872), [sym_union] = ACTIONS(4872), [sym_unittest] = ACTIONS(4872), [sym_version] = ACTIONS(4872), [sym_while] = ACTIONS(4872), [sym_with] = ACTIONS(4872), [sym_gshared] = ACTIONS(4872), [sym_traits] = ACTIONS(4872), [sym_vector] = ACTIONS(4872), [sym_void] = ACTIONS(4872), [anon_sym_BQUOTE] = ACTIONS(4874), [anon_sym_r_DQUOTE] = ACTIONS(4874), [anon_sym_x_DQUOTE] = ACTIONS(4874), [anon_sym_DQUOTE] = ACTIONS(4874), [anon_sym_i_BQUOTE] = ACTIONS(4874), [anon_sym_i_DQUOTE] = ACTIONS(4874), [anon_sym_iq_LBRACE] = ACTIONS(4874), [aux_sym_char_literal_token1] = ACTIONS(4874), [anon_sym_SQUOTE] = ACTIONS(4872), [anon_sym___DATE__] = ACTIONS(4872), [anon_sym___FILE__] = ACTIONS(4872), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4872), [anon_sym___FUNCTION__] = ACTIONS(4872), [anon_sym___LINE__] = ACTIONS(4872), [anon_sym___MODULE__] = ACTIONS(4872), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4872), [anon_sym___TIME__] = ACTIONS(4872), [anon_sym___TIMESTAMP__] = ACTIONS(4872), [anon_sym___VENDOR__] = ACTIONS(4872), [anon_sym___VERSION__] = ACTIONS(4872), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4874), [sym_float_literal] = ACTIONS(4874), [sym__string] = ACTIONS(4874), }, [1501] = { [sym_identifier] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2810), [anon_sym_RBRACE] = ACTIONS(2810), [anon_sym_LBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(2810), [anon_sym_AMP] = ACTIONS(2810), [anon_sym_DASH] = ACTIONS(2812), [anon_sym_DASH_DASH] = ACTIONS(2810), [anon_sym_PLUS] = ACTIONS(2812), [anon_sym_PLUS_PLUS] = ACTIONS(2810), [anon_sym_BANG] = ACTIONS(2810), [anon_sym_LPAREN] = ACTIONS(2810), [anon_sym_RPAREN] = ACTIONS(2810), [anon_sym_LBRACK] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2810), [anon_sym_DOLLAR] = ACTIONS(2810), [anon_sym_STAR] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2810), [anon_sym_AT] = ACTIONS(2810), [sym_bool] = ACTIONS(2812), [sym_byte] = ACTIONS(2812), [sym_ubyte] = ACTIONS(2812), [sym_char] = ACTIONS(2812), [sym_short] = ACTIONS(2812), [sym_ushort] = ACTIONS(2812), [sym_int] = ACTIONS(2812), [sym_uint] = ACTIONS(2812), [sym_long] = ACTIONS(2812), [sym_ulong] = ACTIONS(2812), [sym_cent] = ACTIONS(2812), [sym_ucent] = ACTIONS(2812), [sym_wchar] = ACTIONS(2812), [sym_dchar] = ACTIONS(2812), [sym_float] = ACTIONS(2812), [sym_double] = ACTIONS(2812), [sym_real] = ACTIONS(2812), [sym_ifloat] = ACTIONS(2812), [sym_idouble] = ACTIONS(2812), [sym_ireal] = ACTIONS(2812), [sym_cfloat] = ACTIONS(2812), [sym_cdouble] = ACTIONS(2812), [sym_creal] = ACTIONS(2812), [sym_size_t] = ACTIONS(2812), [sym_ptrdiff_t] = ACTIONS(2812), [sym_string] = ACTIONS(2812), [sym_cstring] = ACTIONS(2812), [sym_dstring] = ACTIONS(2812), [sym_wstring] = ACTIONS(2812), [sym_noreturn] = ACTIONS(2812), [sym_true] = ACTIONS(2812), [sym_false] = ACTIONS(2812), [sym_null] = ACTIONS(2812), [sym_super] = ACTIONS(2812), [sym_this] = ACTIONS(2812), [sym_abstract] = ACTIONS(2812), [sym_alias] = ACTIONS(2812), [sym_align] = ACTIONS(2812), [sym_asm] = ACTIONS(2812), [sym_assert] = ACTIONS(2812), [sym_auto] = ACTIONS(2812), [sym_break] = ACTIONS(2812), [sym_case] = ACTIONS(2812), [sym_cast] = ACTIONS(2812), [sym_catch] = ACTIONS(2812), [sym_class] = ACTIONS(2812), [sym_const] = ACTIONS(2812), [sym_continue] = ACTIONS(2812), [sym_debug] = ACTIONS(2812), [sym_default] = ACTIONS(2812), [sym_delegate] = ACTIONS(2812), [sym_delete] = ACTIONS(2812), [sym_deprecated] = ACTIONS(2812), [sym_do] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(2812), [sym_export] = ACTIONS(2812), [sym_extern] = ACTIONS(2812), [sym_final] = ACTIONS(2812), [sym_finally] = ACTIONS(2812), [sym_for] = ACTIONS(2812), [sym_foreach] = ACTIONS(2812), [sym_foreach_reverse] = ACTIONS(2812), [sym_function] = ACTIONS(2812), [sym_goto] = ACTIONS(2812), [sym_if] = ACTIONS(2812), [sym_immutable] = ACTIONS(2812), [sym_import] = ACTIONS(2812), [sym_in] = ACTIONS(2812), [sym_inout] = ACTIONS(2812), [sym_interface] = ACTIONS(2812), [sym_invariant] = ACTIONS(2812), [sym_is] = ACTIONS(2812), [sym_mixin] = ACTIONS(2812), [sym_new] = ACTIONS(2812), [sym_nothrow] = ACTIONS(2812), [sym_out] = ACTIONS(2812), [sym_override] = ACTIONS(2812), [sym_package] = ACTIONS(2812), [sym_pragma] = ACTIONS(2812), [sym_private] = ACTIONS(2812), [sym_protected] = ACTIONS(2812), [sym_public] = ACTIONS(2812), [sym_pure] = ACTIONS(2812), [sym_ref] = ACTIONS(2812), [sym_return] = ACTIONS(2812), [sym_scope] = ACTIONS(2812), [sym_shared] = ACTIONS(2812), [sym_static] = ACTIONS(2812), [sym_struct] = ACTIONS(2812), [sym_switch] = ACTIONS(2812), [sym_synchronized] = ACTIONS(2812), [sym_template] = ACTIONS(2812), [sym_throw] = ACTIONS(2812), [sym_try] = ACTIONS(2812), [sym_typeid] = ACTIONS(2812), [sym_typeof] = ACTIONS(2812), [sym_union] = ACTIONS(2812), [sym_unittest] = ACTIONS(2812), [sym_version] = ACTIONS(2812), [sym_while] = ACTIONS(2812), [sym_with] = ACTIONS(2812), [sym_gshared] = ACTIONS(2812), [sym_traits] = ACTIONS(2812), [sym_vector] = ACTIONS(2812), [sym_void] = ACTIONS(2812), [anon_sym_BQUOTE] = ACTIONS(2810), [anon_sym_r_DQUOTE] = ACTIONS(2810), [anon_sym_x_DQUOTE] = ACTIONS(2810), [anon_sym_DQUOTE] = ACTIONS(2810), [anon_sym_i_BQUOTE] = ACTIONS(2810), [anon_sym_i_DQUOTE] = ACTIONS(2810), [anon_sym_iq_LBRACE] = ACTIONS(2810), [aux_sym_char_literal_token1] = ACTIONS(2810), [anon_sym_SQUOTE] = ACTIONS(2812), [anon_sym___DATE__] = ACTIONS(2812), [anon_sym___FILE__] = ACTIONS(2812), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2812), [anon_sym___FUNCTION__] = ACTIONS(2812), [anon_sym___LINE__] = ACTIONS(2812), [anon_sym___MODULE__] = ACTIONS(2812), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2812), [anon_sym___TIME__] = ACTIONS(2812), [anon_sym___TIMESTAMP__] = ACTIONS(2812), [anon_sym___VENDOR__] = ACTIONS(2812), [anon_sym___VERSION__] = ACTIONS(2812), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2810), [sym_float_literal] = ACTIONS(2810), [sym__string] = ACTIONS(2810), }, [1502] = { [sym_identifier] = ACTIONS(4876), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4878), [anon_sym_RBRACE] = ACTIONS(4878), [anon_sym_LBRACE] = ACTIONS(4878), [anon_sym_DOT] = ACTIONS(4878), [anon_sym_AMP] = ACTIONS(4878), [anon_sym_DASH] = ACTIONS(4876), [anon_sym_DASH_DASH] = ACTIONS(4878), [anon_sym_PLUS] = ACTIONS(4876), [anon_sym_PLUS_PLUS] = ACTIONS(4878), [anon_sym_BANG] = ACTIONS(4878), [anon_sym_LPAREN] = ACTIONS(4878), [anon_sym_RPAREN] = ACTIONS(4878), [anon_sym_LBRACK] = ACTIONS(4878), [anon_sym_SEMI] = ACTIONS(4878), [anon_sym_DOLLAR] = ACTIONS(4878), [anon_sym_STAR] = ACTIONS(4878), [anon_sym_TILDE] = ACTIONS(4878), [anon_sym_AT] = ACTIONS(4878), [sym_bool] = ACTIONS(4876), [sym_byte] = ACTIONS(4876), [sym_ubyte] = ACTIONS(4876), [sym_char] = ACTIONS(4876), [sym_short] = ACTIONS(4876), [sym_ushort] = ACTIONS(4876), [sym_int] = ACTIONS(4876), [sym_uint] = ACTIONS(4876), [sym_long] = ACTIONS(4876), [sym_ulong] = ACTIONS(4876), [sym_cent] = ACTIONS(4876), [sym_ucent] = ACTIONS(4876), [sym_wchar] = ACTIONS(4876), [sym_dchar] = ACTIONS(4876), [sym_float] = ACTIONS(4876), [sym_double] = ACTIONS(4876), [sym_real] = ACTIONS(4876), [sym_ifloat] = ACTIONS(4876), [sym_idouble] = ACTIONS(4876), [sym_ireal] = ACTIONS(4876), [sym_cfloat] = ACTIONS(4876), [sym_cdouble] = ACTIONS(4876), [sym_creal] = ACTIONS(4876), [sym_size_t] = ACTIONS(4876), [sym_ptrdiff_t] = ACTIONS(4876), [sym_string] = ACTIONS(4876), [sym_cstring] = ACTIONS(4876), [sym_dstring] = ACTIONS(4876), [sym_wstring] = ACTIONS(4876), [sym_noreturn] = ACTIONS(4876), [sym_true] = ACTIONS(4876), [sym_false] = ACTIONS(4876), [sym_null] = ACTIONS(4876), [sym_super] = ACTIONS(4876), [sym_this] = ACTIONS(4876), [sym_abstract] = ACTIONS(4876), [sym_alias] = ACTIONS(4876), [sym_align] = ACTIONS(4876), [sym_asm] = ACTIONS(4876), [sym_assert] = ACTIONS(4876), [sym_auto] = ACTIONS(4876), [sym_break] = ACTIONS(4876), [sym_case] = ACTIONS(4876), [sym_cast] = ACTIONS(4876), [sym_catch] = ACTIONS(4876), [sym_class] = ACTIONS(4876), [sym_const] = ACTIONS(4876), [sym_continue] = ACTIONS(4876), [sym_debug] = ACTIONS(4876), [sym_default] = ACTIONS(4876), [sym_delegate] = ACTIONS(4876), [sym_delete] = ACTIONS(4876), [sym_deprecated] = ACTIONS(4876), [sym_do] = ACTIONS(4876), [sym_else] = ACTIONS(4876), [sym_enum] = ACTIONS(4876), [sym_export] = ACTIONS(4876), [sym_extern] = ACTIONS(4876), [sym_final] = ACTIONS(4876), [sym_finally] = ACTIONS(4876), [sym_for] = ACTIONS(4876), [sym_foreach] = ACTIONS(4876), [sym_foreach_reverse] = ACTIONS(4876), [sym_function] = ACTIONS(4876), [sym_goto] = ACTIONS(4876), [sym_if] = ACTIONS(4876), [sym_immutable] = ACTIONS(4876), [sym_import] = ACTIONS(4876), [sym_in] = ACTIONS(4876), [sym_inout] = ACTIONS(4876), [sym_interface] = ACTIONS(4876), [sym_invariant] = ACTIONS(4876), [sym_is] = ACTIONS(4876), [sym_mixin] = ACTIONS(4876), [sym_new] = ACTIONS(4876), [sym_nothrow] = ACTIONS(4876), [sym_out] = ACTIONS(4876), [sym_override] = ACTIONS(4876), [sym_package] = ACTIONS(4876), [sym_pragma] = ACTIONS(4876), [sym_private] = ACTIONS(4876), [sym_protected] = ACTIONS(4876), [sym_public] = ACTIONS(4876), [sym_pure] = ACTIONS(4876), [sym_ref] = ACTIONS(4876), [sym_return] = ACTIONS(4876), [sym_scope] = ACTIONS(4876), [sym_shared] = ACTIONS(4876), [sym_static] = ACTIONS(4876), [sym_struct] = ACTIONS(4876), [sym_switch] = ACTIONS(4876), [sym_synchronized] = ACTIONS(4876), [sym_template] = ACTIONS(4876), [sym_throw] = ACTIONS(4876), [sym_try] = ACTIONS(4876), [sym_typeid] = ACTIONS(4876), [sym_typeof] = ACTIONS(4876), [sym_union] = ACTIONS(4876), [sym_unittest] = ACTIONS(4876), [sym_version] = ACTIONS(4876), [sym_while] = ACTIONS(4876), [sym_with] = ACTIONS(4876), [sym_gshared] = ACTIONS(4876), [sym_traits] = ACTIONS(4876), [sym_vector] = ACTIONS(4876), [sym_void] = ACTIONS(4876), [anon_sym_BQUOTE] = ACTIONS(4878), [anon_sym_r_DQUOTE] = ACTIONS(4878), [anon_sym_x_DQUOTE] = ACTIONS(4878), [anon_sym_DQUOTE] = ACTIONS(4878), [anon_sym_i_BQUOTE] = ACTIONS(4878), [anon_sym_i_DQUOTE] = ACTIONS(4878), [anon_sym_iq_LBRACE] = ACTIONS(4878), [aux_sym_char_literal_token1] = ACTIONS(4878), [anon_sym_SQUOTE] = ACTIONS(4876), [anon_sym___DATE__] = ACTIONS(4876), [anon_sym___FILE__] = ACTIONS(4876), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4876), [anon_sym___FUNCTION__] = ACTIONS(4876), [anon_sym___LINE__] = ACTIONS(4876), [anon_sym___MODULE__] = ACTIONS(4876), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4876), [anon_sym___TIME__] = ACTIONS(4876), [anon_sym___TIMESTAMP__] = ACTIONS(4876), [anon_sym___VENDOR__] = ACTIONS(4876), [anon_sym___VERSION__] = ACTIONS(4876), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4878), [sym_float_literal] = ACTIONS(4878), [sym__string] = ACTIONS(4878), }, [1503] = { [sym_identifier] = ACTIONS(4880), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4882), [anon_sym_RBRACE] = ACTIONS(4882), [anon_sym_LBRACE] = ACTIONS(4882), [anon_sym_DOT] = ACTIONS(4882), [anon_sym_AMP] = ACTIONS(4882), [anon_sym_DASH] = ACTIONS(4880), [anon_sym_DASH_DASH] = ACTIONS(4882), [anon_sym_PLUS] = ACTIONS(4880), [anon_sym_PLUS_PLUS] = ACTIONS(4882), [anon_sym_BANG] = ACTIONS(4882), [anon_sym_LPAREN] = ACTIONS(4882), [anon_sym_RPAREN] = ACTIONS(4882), [anon_sym_LBRACK] = ACTIONS(4882), [anon_sym_SEMI] = ACTIONS(4882), [anon_sym_DOLLAR] = ACTIONS(4882), [anon_sym_STAR] = ACTIONS(4882), [anon_sym_TILDE] = ACTIONS(4882), [anon_sym_AT] = ACTIONS(4882), [sym_bool] = ACTIONS(4880), [sym_byte] = ACTIONS(4880), [sym_ubyte] = ACTIONS(4880), [sym_char] = ACTIONS(4880), [sym_short] = ACTIONS(4880), [sym_ushort] = ACTIONS(4880), [sym_int] = ACTIONS(4880), [sym_uint] = ACTIONS(4880), [sym_long] = ACTIONS(4880), [sym_ulong] = ACTIONS(4880), [sym_cent] = ACTIONS(4880), [sym_ucent] = ACTIONS(4880), [sym_wchar] = ACTIONS(4880), [sym_dchar] = ACTIONS(4880), [sym_float] = ACTIONS(4880), [sym_double] = ACTIONS(4880), [sym_real] = ACTIONS(4880), [sym_ifloat] = ACTIONS(4880), [sym_idouble] = ACTIONS(4880), [sym_ireal] = ACTIONS(4880), [sym_cfloat] = ACTIONS(4880), [sym_cdouble] = ACTIONS(4880), [sym_creal] = ACTIONS(4880), [sym_size_t] = ACTIONS(4880), [sym_ptrdiff_t] = ACTIONS(4880), [sym_string] = ACTIONS(4880), [sym_cstring] = ACTIONS(4880), [sym_dstring] = ACTIONS(4880), [sym_wstring] = ACTIONS(4880), [sym_noreturn] = ACTIONS(4880), [sym_true] = ACTIONS(4880), [sym_false] = ACTIONS(4880), [sym_null] = ACTIONS(4880), [sym_super] = ACTIONS(4880), [sym_this] = ACTIONS(4880), [sym_abstract] = ACTIONS(4880), [sym_alias] = ACTIONS(4880), [sym_align] = ACTIONS(4880), [sym_asm] = ACTIONS(4880), [sym_assert] = ACTIONS(4880), [sym_auto] = ACTIONS(4880), [sym_break] = ACTIONS(4880), [sym_case] = ACTIONS(4880), [sym_cast] = ACTIONS(4880), [sym_catch] = ACTIONS(4880), [sym_class] = ACTIONS(4880), [sym_const] = ACTIONS(4880), [sym_continue] = ACTIONS(4880), [sym_debug] = ACTIONS(4880), [sym_default] = ACTIONS(4880), [sym_delegate] = ACTIONS(4880), [sym_delete] = ACTIONS(4880), [sym_deprecated] = ACTIONS(4880), [sym_do] = ACTIONS(4880), [sym_else] = ACTIONS(4880), [sym_enum] = ACTIONS(4880), [sym_export] = ACTIONS(4880), [sym_extern] = ACTIONS(4880), [sym_final] = ACTIONS(4880), [sym_finally] = ACTIONS(4880), [sym_for] = ACTIONS(4880), [sym_foreach] = ACTIONS(4880), [sym_foreach_reverse] = ACTIONS(4880), [sym_function] = ACTIONS(4880), [sym_goto] = ACTIONS(4880), [sym_if] = ACTIONS(4880), [sym_immutable] = ACTIONS(4880), [sym_import] = ACTIONS(4880), [sym_in] = ACTIONS(4880), [sym_inout] = ACTIONS(4880), [sym_interface] = ACTIONS(4880), [sym_invariant] = ACTIONS(4880), [sym_is] = ACTIONS(4880), [sym_mixin] = ACTIONS(4880), [sym_new] = ACTIONS(4880), [sym_nothrow] = ACTIONS(4880), [sym_out] = ACTIONS(4880), [sym_override] = ACTIONS(4880), [sym_package] = ACTIONS(4880), [sym_pragma] = ACTIONS(4880), [sym_private] = ACTIONS(4880), [sym_protected] = ACTIONS(4880), [sym_public] = ACTIONS(4880), [sym_pure] = ACTIONS(4880), [sym_ref] = ACTIONS(4880), [sym_return] = ACTIONS(4880), [sym_scope] = ACTIONS(4880), [sym_shared] = ACTIONS(4880), [sym_static] = ACTIONS(4880), [sym_struct] = ACTIONS(4880), [sym_switch] = ACTIONS(4880), [sym_synchronized] = ACTIONS(4880), [sym_template] = ACTIONS(4880), [sym_throw] = ACTIONS(4880), [sym_try] = ACTIONS(4880), [sym_typeid] = ACTIONS(4880), [sym_typeof] = ACTIONS(4880), [sym_union] = ACTIONS(4880), [sym_unittest] = ACTIONS(4880), [sym_version] = ACTIONS(4880), [sym_while] = ACTIONS(4880), [sym_with] = ACTIONS(4880), [sym_gshared] = ACTIONS(4880), [sym_traits] = ACTIONS(4880), [sym_vector] = ACTIONS(4880), [sym_void] = ACTIONS(4880), [anon_sym_BQUOTE] = ACTIONS(4882), [anon_sym_r_DQUOTE] = ACTIONS(4882), [anon_sym_x_DQUOTE] = ACTIONS(4882), [anon_sym_DQUOTE] = ACTIONS(4882), [anon_sym_i_BQUOTE] = ACTIONS(4882), [anon_sym_i_DQUOTE] = ACTIONS(4882), [anon_sym_iq_LBRACE] = ACTIONS(4882), [aux_sym_char_literal_token1] = ACTIONS(4882), [anon_sym_SQUOTE] = ACTIONS(4880), [anon_sym___DATE__] = ACTIONS(4880), [anon_sym___FILE__] = ACTIONS(4880), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4880), [anon_sym___FUNCTION__] = ACTIONS(4880), [anon_sym___LINE__] = ACTIONS(4880), [anon_sym___MODULE__] = ACTIONS(4880), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4880), [anon_sym___TIME__] = ACTIONS(4880), [anon_sym___TIMESTAMP__] = ACTIONS(4880), [anon_sym___VENDOR__] = ACTIONS(4880), [anon_sym___VERSION__] = ACTIONS(4880), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4882), [sym_float_literal] = ACTIONS(4882), [sym__string] = ACTIONS(4882), }, [1504] = { [sym_identifier] = ACTIONS(4884), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4886), [anon_sym_RBRACE] = ACTIONS(4886), [anon_sym_LBRACE] = ACTIONS(4886), [anon_sym_DOT] = ACTIONS(4886), [anon_sym_AMP] = ACTIONS(4886), [anon_sym_DASH] = ACTIONS(4884), [anon_sym_DASH_DASH] = ACTIONS(4886), [anon_sym_PLUS] = ACTIONS(4884), [anon_sym_PLUS_PLUS] = ACTIONS(4886), [anon_sym_BANG] = ACTIONS(4886), [anon_sym_LPAREN] = ACTIONS(4886), [anon_sym_RPAREN] = ACTIONS(4886), [anon_sym_LBRACK] = ACTIONS(4886), [anon_sym_SEMI] = ACTIONS(4886), [anon_sym_DOLLAR] = ACTIONS(4886), [anon_sym_STAR] = ACTIONS(4886), [anon_sym_TILDE] = ACTIONS(4886), [anon_sym_AT] = ACTIONS(4886), [sym_bool] = ACTIONS(4884), [sym_byte] = ACTIONS(4884), [sym_ubyte] = ACTIONS(4884), [sym_char] = ACTIONS(4884), [sym_short] = ACTIONS(4884), [sym_ushort] = ACTIONS(4884), [sym_int] = ACTIONS(4884), [sym_uint] = ACTIONS(4884), [sym_long] = ACTIONS(4884), [sym_ulong] = ACTIONS(4884), [sym_cent] = ACTIONS(4884), [sym_ucent] = ACTIONS(4884), [sym_wchar] = ACTIONS(4884), [sym_dchar] = ACTIONS(4884), [sym_float] = ACTIONS(4884), [sym_double] = ACTIONS(4884), [sym_real] = ACTIONS(4884), [sym_ifloat] = ACTIONS(4884), [sym_idouble] = ACTIONS(4884), [sym_ireal] = ACTIONS(4884), [sym_cfloat] = ACTIONS(4884), [sym_cdouble] = ACTIONS(4884), [sym_creal] = ACTIONS(4884), [sym_size_t] = ACTIONS(4884), [sym_ptrdiff_t] = ACTIONS(4884), [sym_string] = ACTIONS(4884), [sym_cstring] = ACTIONS(4884), [sym_dstring] = ACTIONS(4884), [sym_wstring] = ACTIONS(4884), [sym_noreturn] = ACTIONS(4884), [sym_true] = ACTIONS(4884), [sym_false] = ACTIONS(4884), [sym_null] = ACTIONS(4884), [sym_super] = ACTIONS(4884), [sym_this] = ACTIONS(4884), [sym_abstract] = ACTIONS(4884), [sym_alias] = ACTIONS(4884), [sym_align] = ACTIONS(4884), [sym_asm] = ACTIONS(4884), [sym_assert] = ACTIONS(4884), [sym_auto] = ACTIONS(4884), [sym_break] = ACTIONS(4884), [sym_case] = ACTIONS(4884), [sym_cast] = ACTIONS(4884), [sym_catch] = ACTIONS(4884), [sym_class] = ACTIONS(4884), [sym_const] = ACTIONS(4884), [sym_continue] = ACTIONS(4884), [sym_debug] = ACTIONS(4884), [sym_default] = ACTIONS(4884), [sym_delegate] = ACTIONS(4884), [sym_delete] = ACTIONS(4884), [sym_deprecated] = ACTIONS(4884), [sym_do] = ACTIONS(4884), [sym_else] = ACTIONS(4884), [sym_enum] = ACTIONS(4884), [sym_export] = ACTIONS(4884), [sym_extern] = ACTIONS(4884), [sym_final] = ACTIONS(4884), [sym_finally] = ACTIONS(4884), [sym_for] = ACTIONS(4884), [sym_foreach] = ACTIONS(4884), [sym_foreach_reverse] = ACTIONS(4884), [sym_function] = ACTIONS(4884), [sym_goto] = ACTIONS(4884), [sym_if] = ACTIONS(4884), [sym_immutable] = ACTIONS(4884), [sym_import] = ACTIONS(4884), [sym_in] = ACTIONS(4884), [sym_inout] = ACTIONS(4884), [sym_interface] = ACTIONS(4884), [sym_invariant] = ACTIONS(4884), [sym_is] = ACTIONS(4884), [sym_mixin] = ACTIONS(4884), [sym_new] = ACTIONS(4884), [sym_nothrow] = ACTIONS(4884), [sym_out] = ACTIONS(4884), [sym_override] = ACTIONS(4884), [sym_package] = ACTIONS(4884), [sym_pragma] = ACTIONS(4884), [sym_private] = ACTIONS(4884), [sym_protected] = ACTIONS(4884), [sym_public] = ACTIONS(4884), [sym_pure] = ACTIONS(4884), [sym_ref] = ACTIONS(4884), [sym_return] = ACTIONS(4884), [sym_scope] = ACTIONS(4884), [sym_shared] = ACTIONS(4884), [sym_static] = ACTIONS(4884), [sym_struct] = ACTIONS(4884), [sym_switch] = ACTIONS(4884), [sym_synchronized] = ACTIONS(4884), [sym_template] = ACTIONS(4884), [sym_throw] = ACTIONS(4884), [sym_try] = ACTIONS(4884), [sym_typeid] = ACTIONS(4884), [sym_typeof] = ACTIONS(4884), [sym_union] = ACTIONS(4884), [sym_unittest] = ACTIONS(4884), [sym_version] = ACTIONS(4884), [sym_while] = ACTIONS(4884), [sym_with] = ACTIONS(4884), [sym_gshared] = ACTIONS(4884), [sym_traits] = ACTIONS(4884), [sym_vector] = ACTIONS(4884), [sym_void] = ACTIONS(4884), [anon_sym_BQUOTE] = ACTIONS(4886), [anon_sym_r_DQUOTE] = ACTIONS(4886), [anon_sym_x_DQUOTE] = ACTIONS(4886), [anon_sym_DQUOTE] = ACTIONS(4886), [anon_sym_i_BQUOTE] = ACTIONS(4886), [anon_sym_i_DQUOTE] = ACTIONS(4886), [anon_sym_iq_LBRACE] = ACTIONS(4886), [aux_sym_char_literal_token1] = ACTIONS(4886), [anon_sym_SQUOTE] = ACTIONS(4884), [anon_sym___DATE__] = ACTIONS(4884), [anon_sym___FILE__] = ACTIONS(4884), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4884), [anon_sym___FUNCTION__] = ACTIONS(4884), [anon_sym___LINE__] = ACTIONS(4884), [anon_sym___MODULE__] = ACTIONS(4884), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4884), [anon_sym___TIME__] = ACTIONS(4884), [anon_sym___TIMESTAMP__] = ACTIONS(4884), [anon_sym___VENDOR__] = ACTIONS(4884), [anon_sym___VERSION__] = ACTIONS(4884), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4886), [sym_float_literal] = ACTIONS(4886), [sym__string] = ACTIONS(4886), }, [1505] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_RBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_BANG] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_RPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_asm] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_break] = ACTIONS(3070), [sym_case] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_catch] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_continue] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_default] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_finally] = ACTIONS(3070), [sym_for] = ACTIONS(3070), [sym_foreach] = ACTIONS(3070), [sym_foreach_reverse] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_goto] = ACTIONS(3070), [sym_if] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_switch] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_try] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_with] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), }, [1506] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3104), [anon_sym_RBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_AMP] = ACTIONS(3104), [anon_sym_DASH] = ACTIONS(3102), [anon_sym_DASH_DASH] = ACTIONS(3104), [anon_sym_PLUS] = ACTIONS(3102), [anon_sym_PLUS_PLUS] = ACTIONS(3104), [anon_sym_BANG] = ACTIONS(3104), [anon_sym_LPAREN] = ACTIONS(3104), [anon_sym_RPAREN] = ACTIONS(3104), [anon_sym_LBRACK] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_DOLLAR] = ACTIONS(3104), [anon_sym_STAR] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_true] = ACTIONS(3102), [sym_false] = ACTIONS(3102), [sym_null] = ACTIONS(3102), [sym_super] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_asm] = ACTIONS(3102), [sym_assert] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_break] = ACTIONS(3102), [sym_case] = ACTIONS(3102), [sym_cast] = ACTIONS(3102), [sym_catch] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_continue] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_default] = ACTIONS(3102), [sym_delegate] = ACTIONS(3102), [sym_delete] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_finally] = ACTIONS(3102), [sym_for] = ACTIONS(3102), [sym_foreach] = ACTIONS(3102), [sym_foreach_reverse] = ACTIONS(3102), [sym_function] = ACTIONS(3102), [sym_goto] = ACTIONS(3102), [sym_if] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_is] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_new] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_switch] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_throw] = ACTIONS(3102), [sym_try] = ACTIONS(3102), [sym_typeid] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_with] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [anon_sym_BQUOTE] = ACTIONS(3104), [anon_sym_r_DQUOTE] = ACTIONS(3104), [anon_sym_x_DQUOTE] = ACTIONS(3104), [anon_sym_DQUOTE] = ACTIONS(3104), [anon_sym_i_BQUOTE] = ACTIONS(3104), [anon_sym_i_DQUOTE] = ACTIONS(3104), [anon_sym_iq_LBRACE] = ACTIONS(3104), [aux_sym_char_literal_token1] = ACTIONS(3104), [anon_sym_SQUOTE] = ACTIONS(3102), [anon_sym___DATE__] = ACTIONS(3102), [anon_sym___FILE__] = ACTIONS(3102), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3102), [anon_sym___FUNCTION__] = ACTIONS(3102), [anon_sym___LINE__] = ACTIONS(3102), [anon_sym___MODULE__] = ACTIONS(3102), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3102), [anon_sym___TIME__] = ACTIONS(3102), [anon_sym___TIMESTAMP__] = ACTIONS(3102), [anon_sym___VENDOR__] = ACTIONS(3102), [anon_sym___VERSION__] = ACTIONS(3102), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3104), [sym_float_literal] = ACTIONS(3104), [sym__string] = ACTIONS(3104), }, [1507] = { [sym_identifier] = ACTIONS(4888), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4890), [anon_sym_RBRACE] = ACTIONS(4890), [anon_sym_LBRACE] = ACTIONS(4890), [anon_sym_DOT] = ACTIONS(4890), [anon_sym_AMP] = ACTIONS(4890), [anon_sym_DASH] = ACTIONS(4888), [anon_sym_DASH_DASH] = ACTIONS(4890), [anon_sym_PLUS] = ACTIONS(4888), [anon_sym_PLUS_PLUS] = ACTIONS(4890), [anon_sym_BANG] = ACTIONS(4890), [anon_sym_LPAREN] = ACTIONS(4890), [anon_sym_RPAREN] = ACTIONS(4890), [anon_sym_LBRACK] = ACTIONS(4890), [anon_sym_SEMI] = ACTIONS(4890), [anon_sym_DOLLAR] = ACTIONS(4890), [anon_sym_STAR] = ACTIONS(4890), [anon_sym_TILDE] = ACTIONS(4890), [anon_sym_AT] = ACTIONS(4890), [sym_bool] = ACTIONS(4888), [sym_byte] = ACTIONS(4888), [sym_ubyte] = ACTIONS(4888), [sym_char] = ACTIONS(4888), [sym_short] = ACTIONS(4888), [sym_ushort] = ACTIONS(4888), [sym_int] = ACTIONS(4888), [sym_uint] = ACTIONS(4888), [sym_long] = ACTIONS(4888), [sym_ulong] = ACTIONS(4888), [sym_cent] = ACTIONS(4888), [sym_ucent] = ACTIONS(4888), [sym_wchar] = ACTIONS(4888), [sym_dchar] = ACTIONS(4888), [sym_float] = ACTIONS(4888), [sym_double] = ACTIONS(4888), [sym_real] = ACTIONS(4888), [sym_ifloat] = ACTIONS(4888), [sym_idouble] = ACTIONS(4888), [sym_ireal] = ACTIONS(4888), [sym_cfloat] = ACTIONS(4888), [sym_cdouble] = ACTIONS(4888), [sym_creal] = ACTIONS(4888), [sym_size_t] = ACTIONS(4888), [sym_ptrdiff_t] = ACTIONS(4888), [sym_string] = ACTIONS(4888), [sym_cstring] = ACTIONS(4888), [sym_dstring] = ACTIONS(4888), [sym_wstring] = ACTIONS(4888), [sym_noreturn] = ACTIONS(4888), [sym_true] = ACTIONS(4888), [sym_false] = ACTIONS(4888), [sym_null] = ACTIONS(4888), [sym_super] = ACTIONS(4888), [sym_this] = ACTIONS(4888), [sym_abstract] = ACTIONS(4888), [sym_alias] = ACTIONS(4888), [sym_align] = ACTIONS(4888), [sym_asm] = ACTIONS(4888), [sym_assert] = ACTIONS(4888), [sym_auto] = ACTIONS(4888), [sym_break] = ACTIONS(4888), [sym_case] = ACTIONS(4888), [sym_cast] = ACTIONS(4888), [sym_catch] = ACTIONS(4888), [sym_class] = ACTIONS(4888), [sym_const] = ACTIONS(4888), [sym_continue] = ACTIONS(4888), [sym_debug] = ACTIONS(4888), [sym_default] = ACTIONS(4888), [sym_delegate] = ACTIONS(4888), [sym_delete] = ACTIONS(4888), [sym_deprecated] = ACTIONS(4888), [sym_do] = ACTIONS(4888), [sym_else] = ACTIONS(4888), [sym_enum] = ACTIONS(4888), [sym_export] = ACTIONS(4888), [sym_extern] = ACTIONS(4888), [sym_final] = ACTIONS(4888), [sym_finally] = ACTIONS(4888), [sym_for] = ACTIONS(4888), [sym_foreach] = ACTIONS(4888), [sym_foreach_reverse] = ACTIONS(4888), [sym_function] = ACTIONS(4888), [sym_goto] = ACTIONS(4888), [sym_if] = ACTIONS(4888), [sym_immutable] = ACTIONS(4888), [sym_import] = ACTIONS(4888), [sym_in] = ACTIONS(4888), [sym_inout] = ACTIONS(4888), [sym_interface] = ACTIONS(4888), [sym_invariant] = ACTIONS(4888), [sym_is] = ACTIONS(4888), [sym_mixin] = ACTIONS(4888), [sym_new] = ACTIONS(4888), [sym_nothrow] = ACTIONS(4888), [sym_out] = ACTIONS(4888), [sym_override] = ACTIONS(4888), [sym_package] = ACTIONS(4888), [sym_pragma] = ACTIONS(4888), [sym_private] = ACTIONS(4888), [sym_protected] = ACTIONS(4888), [sym_public] = ACTIONS(4888), [sym_pure] = ACTIONS(4888), [sym_ref] = ACTIONS(4888), [sym_return] = ACTIONS(4888), [sym_scope] = ACTIONS(4888), [sym_shared] = ACTIONS(4888), [sym_static] = ACTIONS(4888), [sym_struct] = ACTIONS(4888), [sym_switch] = ACTIONS(4888), [sym_synchronized] = ACTIONS(4888), [sym_template] = ACTIONS(4888), [sym_throw] = ACTIONS(4888), [sym_try] = ACTIONS(4888), [sym_typeid] = ACTIONS(4888), [sym_typeof] = ACTIONS(4888), [sym_union] = ACTIONS(4888), [sym_unittest] = ACTIONS(4888), [sym_version] = ACTIONS(4888), [sym_while] = ACTIONS(4888), [sym_with] = ACTIONS(4888), [sym_gshared] = ACTIONS(4888), [sym_traits] = ACTIONS(4888), [sym_vector] = ACTIONS(4888), [sym_void] = ACTIONS(4888), [anon_sym_BQUOTE] = ACTIONS(4890), [anon_sym_r_DQUOTE] = ACTIONS(4890), [anon_sym_x_DQUOTE] = ACTIONS(4890), [anon_sym_DQUOTE] = ACTIONS(4890), [anon_sym_i_BQUOTE] = ACTIONS(4890), [anon_sym_i_DQUOTE] = ACTIONS(4890), [anon_sym_iq_LBRACE] = ACTIONS(4890), [aux_sym_char_literal_token1] = ACTIONS(4890), [anon_sym_SQUOTE] = ACTIONS(4888), [anon_sym___DATE__] = ACTIONS(4888), [anon_sym___FILE__] = ACTIONS(4888), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4888), [anon_sym___FUNCTION__] = ACTIONS(4888), [anon_sym___LINE__] = ACTIONS(4888), [anon_sym___MODULE__] = ACTIONS(4888), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4888), [anon_sym___TIME__] = ACTIONS(4888), [anon_sym___TIMESTAMP__] = ACTIONS(4888), [anon_sym___VENDOR__] = ACTIONS(4888), [anon_sym___VERSION__] = ACTIONS(4888), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4890), [sym_float_literal] = ACTIONS(4890), [sym__string] = ACTIONS(4890), }, [1508] = { [sym_identifier] = ACTIONS(4892), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4894), [anon_sym_RBRACE] = ACTIONS(4894), [anon_sym_LBRACE] = ACTIONS(4894), [anon_sym_DOT] = ACTIONS(4894), [anon_sym_AMP] = ACTIONS(4894), [anon_sym_DASH] = ACTIONS(4892), [anon_sym_DASH_DASH] = ACTIONS(4894), [anon_sym_PLUS] = ACTIONS(4892), [anon_sym_PLUS_PLUS] = ACTIONS(4894), [anon_sym_BANG] = ACTIONS(4894), [anon_sym_LPAREN] = ACTIONS(4894), [anon_sym_RPAREN] = ACTIONS(4894), [anon_sym_LBRACK] = ACTIONS(4894), [anon_sym_SEMI] = ACTIONS(4894), [anon_sym_DOLLAR] = ACTIONS(4894), [anon_sym_STAR] = ACTIONS(4894), [anon_sym_TILDE] = ACTIONS(4894), [anon_sym_AT] = ACTIONS(4894), [sym_bool] = ACTIONS(4892), [sym_byte] = ACTIONS(4892), [sym_ubyte] = ACTIONS(4892), [sym_char] = ACTIONS(4892), [sym_short] = ACTIONS(4892), [sym_ushort] = ACTIONS(4892), [sym_int] = ACTIONS(4892), [sym_uint] = ACTIONS(4892), [sym_long] = ACTIONS(4892), [sym_ulong] = ACTIONS(4892), [sym_cent] = ACTIONS(4892), [sym_ucent] = ACTIONS(4892), [sym_wchar] = ACTIONS(4892), [sym_dchar] = ACTIONS(4892), [sym_float] = ACTIONS(4892), [sym_double] = ACTIONS(4892), [sym_real] = ACTIONS(4892), [sym_ifloat] = ACTIONS(4892), [sym_idouble] = ACTIONS(4892), [sym_ireal] = ACTIONS(4892), [sym_cfloat] = ACTIONS(4892), [sym_cdouble] = ACTIONS(4892), [sym_creal] = ACTIONS(4892), [sym_size_t] = ACTIONS(4892), [sym_ptrdiff_t] = ACTIONS(4892), [sym_string] = ACTIONS(4892), [sym_cstring] = ACTIONS(4892), [sym_dstring] = ACTIONS(4892), [sym_wstring] = ACTIONS(4892), [sym_noreturn] = ACTIONS(4892), [sym_true] = ACTIONS(4892), [sym_false] = ACTIONS(4892), [sym_null] = ACTIONS(4892), [sym_super] = ACTIONS(4892), [sym_this] = ACTIONS(4892), [sym_abstract] = ACTIONS(4892), [sym_alias] = ACTIONS(4892), [sym_align] = ACTIONS(4892), [sym_asm] = ACTIONS(4892), [sym_assert] = ACTIONS(4892), [sym_auto] = ACTIONS(4892), [sym_break] = ACTIONS(4892), [sym_case] = ACTIONS(4892), [sym_cast] = ACTIONS(4892), [sym_catch] = ACTIONS(4892), [sym_class] = ACTIONS(4892), [sym_const] = ACTIONS(4892), [sym_continue] = ACTIONS(4892), [sym_debug] = ACTIONS(4892), [sym_default] = ACTIONS(4892), [sym_delegate] = ACTIONS(4892), [sym_delete] = ACTIONS(4892), [sym_deprecated] = ACTIONS(4892), [sym_do] = ACTIONS(4892), [sym_else] = ACTIONS(4892), [sym_enum] = ACTIONS(4892), [sym_export] = ACTIONS(4892), [sym_extern] = ACTIONS(4892), [sym_final] = ACTIONS(4892), [sym_finally] = ACTIONS(4892), [sym_for] = ACTIONS(4892), [sym_foreach] = ACTIONS(4892), [sym_foreach_reverse] = ACTIONS(4892), [sym_function] = ACTIONS(4892), [sym_goto] = ACTIONS(4892), [sym_if] = ACTIONS(4892), [sym_immutable] = ACTIONS(4892), [sym_import] = ACTIONS(4892), [sym_in] = ACTIONS(4892), [sym_inout] = ACTIONS(4892), [sym_interface] = ACTIONS(4892), [sym_invariant] = ACTIONS(4892), [sym_is] = ACTIONS(4892), [sym_mixin] = ACTIONS(4892), [sym_new] = ACTIONS(4892), [sym_nothrow] = ACTIONS(4892), [sym_out] = ACTIONS(4892), [sym_override] = ACTIONS(4892), [sym_package] = ACTIONS(4892), [sym_pragma] = ACTIONS(4892), [sym_private] = ACTIONS(4892), [sym_protected] = ACTIONS(4892), [sym_public] = ACTIONS(4892), [sym_pure] = ACTIONS(4892), [sym_ref] = ACTIONS(4892), [sym_return] = ACTIONS(4892), [sym_scope] = ACTIONS(4892), [sym_shared] = ACTIONS(4892), [sym_static] = ACTIONS(4892), [sym_struct] = ACTIONS(4892), [sym_switch] = ACTIONS(4892), [sym_synchronized] = ACTIONS(4892), [sym_template] = ACTIONS(4892), [sym_throw] = ACTIONS(4892), [sym_try] = ACTIONS(4892), [sym_typeid] = ACTIONS(4892), [sym_typeof] = ACTIONS(4892), [sym_union] = ACTIONS(4892), [sym_unittest] = ACTIONS(4892), [sym_version] = ACTIONS(4892), [sym_while] = ACTIONS(4892), [sym_with] = ACTIONS(4892), [sym_gshared] = ACTIONS(4892), [sym_traits] = ACTIONS(4892), [sym_vector] = ACTIONS(4892), [sym_void] = ACTIONS(4892), [anon_sym_BQUOTE] = ACTIONS(4894), [anon_sym_r_DQUOTE] = ACTIONS(4894), [anon_sym_x_DQUOTE] = ACTIONS(4894), [anon_sym_DQUOTE] = ACTIONS(4894), [anon_sym_i_BQUOTE] = ACTIONS(4894), [anon_sym_i_DQUOTE] = ACTIONS(4894), [anon_sym_iq_LBRACE] = ACTIONS(4894), [aux_sym_char_literal_token1] = ACTIONS(4894), [anon_sym_SQUOTE] = ACTIONS(4892), [anon_sym___DATE__] = ACTIONS(4892), [anon_sym___FILE__] = ACTIONS(4892), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4892), [anon_sym___FUNCTION__] = ACTIONS(4892), [anon_sym___LINE__] = ACTIONS(4892), [anon_sym___MODULE__] = ACTIONS(4892), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4892), [anon_sym___TIME__] = ACTIONS(4892), [anon_sym___TIMESTAMP__] = ACTIONS(4892), [anon_sym___VENDOR__] = ACTIONS(4892), [anon_sym___VERSION__] = ACTIONS(4892), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4894), [sym_float_literal] = ACTIONS(4894), [sym__string] = ACTIONS(4894), }, [1509] = { [sym_identifier] = ACTIONS(4896), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4898), [anon_sym_RBRACE] = ACTIONS(4898), [anon_sym_LBRACE] = ACTIONS(4898), [anon_sym_DOT] = ACTIONS(4898), [anon_sym_AMP] = ACTIONS(4898), [anon_sym_DASH] = ACTIONS(4896), [anon_sym_DASH_DASH] = ACTIONS(4898), [anon_sym_PLUS] = ACTIONS(4896), [anon_sym_PLUS_PLUS] = ACTIONS(4898), [anon_sym_BANG] = ACTIONS(4898), [anon_sym_LPAREN] = ACTIONS(4898), [anon_sym_RPAREN] = ACTIONS(4898), [anon_sym_LBRACK] = ACTIONS(4898), [anon_sym_SEMI] = ACTIONS(4898), [anon_sym_DOLLAR] = ACTIONS(4898), [anon_sym_STAR] = ACTIONS(4898), [anon_sym_TILDE] = ACTIONS(4898), [anon_sym_AT] = ACTIONS(4898), [sym_bool] = ACTIONS(4896), [sym_byte] = ACTIONS(4896), [sym_ubyte] = ACTIONS(4896), [sym_char] = ACTIONS(4896), [sym_short] = ACTIONS(4896), [sym_ushort] = ACTIONS(4896), [sym_int] = ACTIONS(4896), [sym_uint] = ACTIONS(4896), [sym_long] = ACTIONS(4896), [sym_ulong] = ACTIONS(4896), [sym_cent] = ACTIONS(4896), [sym_ucent] = ACTIONS(4896), [sym_wchar] = ACTIONS(4896), [sym_dchar] = ACTIONS(4896), [sym_float] = ACTIONS(4896), [sym_double] = ACTIONS(4896), [sym_real] = ACTIONS(4896), [sym_ifloat] = ACTIONS(4896), [sym_idouble] = ACTIONS(4896), [sym_ireal] = ACTIONS(4896), [sym_cfloat] = ACTIONS(4896), [sym_cdouble] = ACTIONS(4896), [sym_creal] = ACTIONS(4896), [sym_size_t] = ACTIONS(4896), [sym_ptrdiff_t] = ACTIONS(4896), [sym_string] = ACTIONS(4896), [sym_cstring] = ACTIONS(4896), [sym_dstring] = ACTIONS(4896), [sym_wstring] = ACTIONS(4896), [sym_noreturn] = ACTIONS(4896), [sym_true] = ACTIONS(4896), [sym_false] = ACTIONS(4896), [sym_null] = ACTIONS(4896), [sym_super] = ACTIONS(4896), [sym_this] = ACTIONS(4896), [sym_abstract] = ACTIONS(4896), [sym_alias] = ACTIONS(4896), [sym_align] = ACTIONS(4896), [sym_asm] = ACTIONS(4896), [sym_assert] = ACTIONS(4896), [sym_auto] = ACTIONS(4896), [sym_break] = ACTIONS(4896), [sym_case] = ACTIONS(4896), [sym_cast] = ACTIONS(4896), [sym_catch] = ACTIONS(4896), [sym_class] = ACTIONS(4896), [sym_const] = ACTIONS(4896), [sym_continue] = ACTIONS(4896), [sym_debug] = ACTIONS(4896), [sym_default] = ACTIONS(4896), [sym_delegate] = ACTIONS(4896), [sym_delete] = ACTIONS(4896), [sym_deprecated] = ACTIONS(4896), [sym_do] = ACTIONS(4896), [sym_else] = ACTIONS(4896), [sym_enum] = ACTIONS(4896), [sym_export] = ACTIONS(4896), [sym_extern] = ACTIONS(4896), [sym_final] = ACTIONS(4896), [sym_finally] = ACTIONS(4896), [sym_for] = ACTIONS(4896), [sym_foreach] = ACTIONS(4896), [sym_foreach_reverse] = ACTIONS(4896), [sym_function] = ACTIONS(4896), [sym_goto] = ACTIONS(4896), [sym_if] = ACTIONS(4896), [sym_immutable] = ACTIONS(4896), [sym_import] = ACTIONS(4896), [sym_in] = ACTIONS(4896), [sym_inout] = ACTIONS(4896), [sym_interface] = ACTIONS(4896), [sym_invariant] = ACTIONS(4896), [sym_is] = ACTIONS(4896), [sym_mixin] = ACTIONS(4896), [sym_new] = ACTIONS(4896), [sym_nothrow] = ACTIONS(4896), [sym_out] = ACTIONS(4896), [sym_override] = ACTIONS(4896), [sym_package] = ACTIONS(4896), [sym_pragma] = ACTIONS(4896), [sym_private] = ACTIONS(4896), [sym_protected] = ACTIONS(4896), [sym_public] = ACTIONS(4896), [sym_pure] = ACTIONS(4896), [sym_ref] = ACTIONS(4896), [sym_return] = ACTIONS(4896), [sym_scope] = ACTIONS(4896), [sym_shared] = ACTIONS(4896), [sym_static] = ACTIONS(4896), [sym_struct] = ACTIONS(4896), [sym_switch] = ACTIONS(4896), [sym_synchronized] = ACTIONS(4896), [sym_template] = ACTIONS(4896), [sym_throw] = ACTIONS(4896), [sym_try] = ACTIONS(4896), [sym_typeid] = ACTIONS(4896), [sym_typeof] = ACTIONS(4896), [sym_union] = ACTIONS(4896), [sym_unittest] = ACTIONS(4896), [sym_version] = ACTIONS(4896), [sym_while] = ACTIONS(4896), [sym_with] = ACTIONS(4896), [sym_gshared] = ACTIONS(4896), [sym_traits] = ACTIONS(4896), [sym_vector] = ACTIONS(4896), [sym_void] = ACTIONS(4896), [anon_sym_BQUOTE] = ACTIONS(4898), [anon_sym_r_DQUOTE] = ACTIONS(4898), [anon_sym_x_DQUOTE] = ACTIONS(4898), [anon_sym_DQUOTE] = ACTIONS(4898), [anon_sym_i_BQUOTE] = ACTIONS(4898), [anon_sym_i_DQUOTE] = ACTIONS(4898), [anon_sym_iq_LBRACE] = ACTIONS(4898), [aux_sym_char_literal_token1] = ACTIONS(4898), [anon_sym_SQUOTE] = ACTIONS(4896), [anon_sym___DATE__] = ACTIONS(4896), [anon_sym___FILE__] = ACTIONS(4896), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4896), [anon_sym___FUNCTION__] = ACTIONS(4896), [anon_sym___LINE__] = ACTIONS(4896), [anon_sym___MODULE__] = ACTIONS(4896), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4896), [anon_sym___TIME__] = ACTIONS(4896), [anon_sym___TIMESTAMP__] = ACTIONS(4896), [anon_sym___VENDOR__] = ACTIONS(4896), [anon_sym___VERSION__] = ACTIONS(4896), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4898), [sym_float_literal] = ACTIONS(4898), [sym__string] = ACTIONS(4898), }, [1510] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3100), [anon_sym_RBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_AMP] = ACTIONS(3100), [anon_sym_DASH] = ACTIONS(3098), [anon_sym_DASH_DASH] = ACTIONS(3100), [anon_sym_PLUS] = ACTIONS(3098), [anon_sym_PLUS_PLUS] = ACTIONS(3100), [anon_sym_BANG] = ACTIONS(3100), [anon_sym_LPAREN] = ACTIONS(3100), [anon_sym_RPAREN] = ACTIONS(3100), [anon_sym_LBRACK] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_DOLLAR] = ACTIONS(3100), [anon_sym_STAR] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_true] = ACTIONS(3098), [sym_false] = ACTIONS(3098), [sym_null] = ACTIONS(3098), [sym_super] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_asm] = ACTIONS(3098), [sym_assert] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_break] = ACTIONS(3098), [sym_case] = ACTIONS(3098), [sym_cast] = ACTIONS(3098), [sym_catch] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_continue] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_default] = ACTIONS(3098), [sym_delegate] = ACTIONS(3098), [sym_delete] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_finally] = ACTIONS(3098), [sym_for] = ACTIONS(3098), [sym_foreach] = ACTIONS(3098), [sym_foreach_reverse] = ACTIONS(3098), [sym_function] = ACTIONS(3098), [sym_goto] = ACTIONS(3098), [sym_if] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_is] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_new] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_switch] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_throw] = ACTIONS(3098), [sym_try] = ACTIONS(3098), [sym_typeid] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_with] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [anon_sym_BQUOTE] = ACTIONS(3100), [anon_sym_r_DQUOTE] = ACTIONS(3100), [anon_sym_x_DQUOTE] = ACTIONS(3100), [anon_sym_DQUOTE] = ACTIONS(3100), [anon_sym_i_BQUOTE] = ACTIONS(3100), [anon_sym_i_DQUOTE] = ACTIONS(3100), [anon_sym_iq_LBRACE] = ACTIONS(3100), [aux_sym_char_literal_token1] = ACTIONS(3100), [anon_sym_SQUOTE] = ACTIONS(3098), [anon_sym___DATE__] = ACTIONS(3098), [anon_sym___FILE__] = ACTIONS(3098), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3098), [anon_sym___FUNCTION__] = ACTIONS(3098), [anon_sym___LINE__] = ACTIONS(3098), [anon_sym___MODULE__] = ACTIONS(3098), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3098), [anon_sym___TIME__] = ACTIONS(3098), [anon_sym___TIMESTAMP__] = ACTIONS(3098), [anon_sym___VENDOR__] = ACTIONS(3098), [anon_sym___VERSION__] = ACTIONS(3098), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3100), [sym_float_literal] = ACTIONS(3100), [sym__string] = ACTIONS(3100), }, [1511] = { [sym_identifier] = ACTIONS(4900), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4902), [anon_sym_RBRACE] = ACTIONS(4902), [anon_sym_LBRACE] = ACTIONS(4902), [anon_sym_DOT] = ACTIONS(4902), [anon_sym_AMP] = ACTIONS(4902), [anon_sym_DASH] = ACTIONS(4900), [anon_sym_DASH_DASH] = ACTIONS(4902), [anon_sym_PLUS] = ACTIONS(4900), [anon_sym_PLUS_PLUS] = ACTIONS(4902), [anon_sym_BANG] = ACTIONS(4902), [anon_sym_LPAREN] = ACTIONS(4902), [anon_sym_RPAREN] = ACTIONS(4902), [anon_sym_LBRACK] = ACTIONS(4902), [anon_sym_SEMI] = ACTIONS(4902), [anon_sym_DOLLAR] = ACTIONS(4902), [anon_sym_STAR] = ACTIONS(4902), [anon_sym_TILDE] = ACTIONS(4902), [anon_sym_AT] = ACTIONS(4902), [sym_bool] = ACTIONS(4900), [sym_byte] = ACTIONS(4900), [sym_ubyte] = ACTIONS(4900), [sym_char] = ACTIONS(4900), [sym_short] = ACTIONS(4900), [sym_ushort] = ACTIONS(4900), [sym_int] = ACTIONS(4900), [sym_uint] = ACTIONS(4900), [sym_long] = ACTIONS(4900), [sym_ulong] = ACTIONS(4900), [sym_cent] = ACTIONS(4900), [sym_ucent] = ACTIONS(4900), [sym_wchar] = ACTIONS(4900), [sym_dchar] = ACTIONS(4900), [sym_float] = ACTIONS(4900), [sym_double] = ACTIONS(4900), [sym_real] = ACTIONS(4900), [sym_ifloat] = ACTIONS(4900), [sym_idouble] = ACTIONS(4900), [sym_ireal] = ACTIONS(4900), [sym_cfloat] = ACTIONS(4900), [sym_cdouble] = ACTIONS(4900), [sym_creal] = ACTIONS(4900), [sym_size_t] = ACTIONS(4900), [sym_ptrdiff_t] = ACTIONS(4900), [sym_string] = ACTIONS(4900), [sym_cstring] = ACTIONS(4900), [sym_dstring] = ACTIONS(4900), [sym_wstring] = ACTIONS(4900), [sym_noreturn] = ACTIONS(4900), [sym_true] = ACTIONS(4900), [sym_false] = ACTIONS(4900), [sym_null] = ACTIONS(4900), [sym_super] = ACTIONS(4900), [sym_this] = ACTIONS(4900), [sym_abstract] = ACTIONS(4900), [sym_alias] = ACTIONS(4900), [sym_align] = ACTIONS(4900), [sym_asm] = ACTIONS(4900), [sym_assert] = ACTIONS(4900), [sym_auto] = ACTIONS(4900), [sym_break] = ACTIONS(4900), [sym_case] = ACTIONS(4900), [sym_cast] = ACTIONS(4900), [sym_catch] = ACTIONS(4900), [sym_class] = ACTIONS(4900), [sym_const] = ACTIONS(4900), [sym_continue] = ACTIONS(4900), [sym_debug] = ACTIONS(4900), [sym_default] = ACTIONS(4900), [sym_delegate] = ACTIONS(4900), [sym_delete] = ACTIONS(4900), [sym_deprecated] = ACTIONS(4900), [sym_do] = ACTIONS(4900), [sym_else] = ACTIONS(4900), [sym_enum] = ACTIONS(4900), [sym_export] = ACTIONS(4900), [sym_extern] = ACTIONS(4900), [sym_final] = ACTIONS(4900), [sym_finally] = ACTIONS(4900), [sym_for] = ACTIONS(4900), [sym_foreach] = ACTIONS(4900), [sym_foreach_reverse] = ACTIONS(4900), [sym_function] = ACTIONS(4900), [sym_goto] = ACTIONS(4900), [sym_if] = ACTIONS(4900), [sym_immutable] = ACTIONS(4900), [sym_import] = ACTIONS(4900), [sym_in] = ACTIONS(4900), [sym_inout] = ACTIONS(4900), [sym_interface] = ACTIONS(4900), [sym_invariant] = ACTIONS(4900), [sym_is] = ACTIONS(4900), [sym_mixin] = ACTIONS(4900), [sym_new] = ACTIONS(4900), [sym_nothrow] = ACTIONS(4900), [sym_out] = ACTIONS(4900), [sym_override] = ACTIONS(4900), [sym_package] = ACTIONS(4900), [sym_pragma] = ACTIONS(4900), [sym_private] = ACTIONS(4900), [sym_protected] = ACTIONS(4900), [sym_public] = ACTIONS(4900), [sym_pure] = ACTIONS(4900), [sym_ref] = ACTIONS(4900), [sym_return] = ACTIONS(4900), [sym_scope] = ACTIONS(4900), [sym_shared] = ACTIONS(4900), [sym_static] = ACTIONS(4900), [sym_struct] = ACTIONS(4900), [sym_switch] = ACTIONS(4900), [sym_synchronized] = ACTIONS(4900), [sym_template] = ACTIONS(4900), [sym_throw] = ACTIONS(4900), [sym_try] = ACTIONS(4900), [sym_typeid] = ACTIONS(4900), [sym_typeof] = ACTIONS(4900), [sym_union] = ACTIONS(4900), [sym_unittest] = ACTIONS(4900), [sym_version] = ACTIONS(4900), [sym_while] = ACTIONS(4900), [sym_with] = ACTIONS(4900), [sym_gshared] = ACTIONS(4900), [sym_traits] = ACTIONS(4900), [sym_vector] = ACTIONS(4900), [sym_void] = ACTIONS(4900), [anon_sym_BQUOTE] = ACTIONS(4902), [anon_sym_r_DQUOTE] = ACTIONS(4902), [anon_sym_x_DQUOTE] = ACTIONS(4902), [anon_sym_DQUOTE] = ACTIONS(4902), [anon_sym_i_BQUOTE] = ACTIONS(4902), [anon_sym_i_DQUOTE] = ACTIONS(4902), [anon_sym_iq_LBRACE] = ACTIONS(4902), [aux_sym_char_literal_token1] = ACTIONS(4902), [anon_sym_SQUOTE] = ACTIONS(4900), [anon_sym___DATE__] = ACTIONS(4900), [anon_sym___FILE__] = ACTIONS(4900), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4900), [anon_sym___FUNCTION__] = ACTIONS(4900), [anon_sym___LINE__] = ACTIONS(4900), [anon_sym___MODULE__] = ACTIONS(4900), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4900), [anon_sym___TIME__] = ACTIONS(4900), [anon_sym___TIMESTAMP__] = ACTIONS(4900), [anon_sym___VENDOR__] = ACTIONS(4900), [anon_sym___VERSION__] = ACTIONS(4900), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4902), [sym_float_literal] = ACTIONS(4902), [sym__string] = ACTIONS(4902), }, [1512] = { [sym_identifier] = ACTIONS(4904), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4906), [anon_sym_RBRACE] = ACTIONS(4906), [anon_sym_LBRACE] = ACTIONS(4906), [anon_sym_DOT] = ACTIONS(4906), [anon_sym_AMP] = ACTIONS(4906), [anon_sym_DASH] = ACTIONS(4904), [anon_sym_DASH_DASH] = ACTIONS(4906), [anon_sym_PLUS] = ACTIONS(4904), [anon_sym_PLUS_PLUS] = ACTIONS(4906), [anon_sym_BANG] = ACTIONS(4906), [anon_sym_LPAREN] = ACTIONS(4906), [anon_sym_RPAREN] = ACTIONS(4906), [anon_sym_LBRACK] = ACTIONS(4906), [anon_sym_SEMI] = ACTIONS(4906), [anon_sym_DOLLAR] = ACTIONS(4906), [anon_sym_STAR] = ACTIONS(4906), [anon_sym_TILDE] = ACTIONS(4906), [anon_sym_AT] = ACTIONS(4906), [sym_bool] = ACTIONS(4904), [sym_byte] = ACTIONS(4904), [sym_ubyte] = ACTIONS(4904), [sym_char] = ACTIONS(4904), [sym_short] = ACTIONS(4904), [sym_ushort] = ACTIONS(4904), [sym_int] = ACTIONS(4904), [sym_uint] = ACTIONS(4904), [sym_long] = ACTIONS(4904), [sym_ulong] = ACTIONS(4904), [sym_cent] = ACTIONS(4904), [sym_ucent] = ACTIONS(4904), [sym_wchar] = ACTIONS(4904), [sym_dchar] = ACTIONS(4904), [sym_float] = ACTIONS(4904), [sym_double] = ACTIONS(4904), [sym_real] = ACTIONS(4904), [sym_ifloat] = ACTIONS(4904), [sym_idouble] = ACTIONS(4904), [sym_ireal] = ACTIONS(4904), [sym_cfloat] = ACTIONS(4904), [sym_cdouble] = ACTIONS(4904), [sym_creal] = ACTIONS(4904), [sym_size_t] = ACTIONS(4904), [sym_ptrdiff_t] = ACTIONS(4904), [sym_string] = ACTIONS(4904), [sym_cstring] = ACTIONS(4904), [sym_dstring] = ACTIONS(4904), [sym_wstring] = ACTIONS(4904), [sym_noreturn] = ACTIONS(4904), [sym_true] = ACTIONS(4904), [sym_false] = ACTIONS(4904), [sym_null] = ACTIONS(4904), [sym_super] = ACTIONS(4904), [sym_this] = ACTIONS(4904), [sym_abstract] = ACTIONS(4904), [sym_alias] = ACTIONS(4904), [sym_align] = ACTIONS(4904), [sym_asm] = ACTIONS(4904), [sym_assert] = ACTIONS(4904), [sym_auto] = ACTIONS(4904), [sym_break] = ACTIONS(4904), [sym_case] = ACTIONS(4904), [sym_cast] = ACTIONS(4904), [sym_catch] = ACTIONS(4904), [sym_class] = ACTIONS(4904), [sym_const] = ACTIONS(4904), [sym_continue] = ACTIONS(4904), [sym_debug] = ACTIONS(4904), [sym_default] = ACTIONS(4904), [sym_delegate] = ACTIONS(4904), [sym_delete] = ACTIONS(4904), [sym_deprecated] = ACTIONS(4904), [sym_do] = ACTIONS(4904), [sym_else] = ACTIONS(4904), [sym_enum] = ACTIONS(4904), [sym_export] = ACTIONS(4904), [sym_extern] = ACTIONS(4904), [sym_final] = ACTIONS(4904), [sym_finally] = ACTIONS(4904), [sym_for] = ACTIONS(4904), [sym_foreach] = ACTIONS(4904), [sym_foreach_reverse] = ACTIONS(4904), [sym_function] = ACTIONS(4904), [sym_goto] = ACTIONS(4904), [sym_if] = ACTIONS(4904), [sym_immutable] = ACTIONS(4904), [sym_import] = ACTIONS(4904), [sym_in] = ACTIONS(4904), [sym_inout] = ACTIONS(4904), [sym_interface] = ACTIONS(4904), [sym_invariant] = ACTIONS(4904), [sym_is] = ACTIONS(4904), [sym_mixin] = ACTIONS(4904), [sym_new] = ACTIONS(4904), [sym_nothrow] = ACTIONS(4904), [sym_out] = ACTIONS(4904), [sym_override] = ACTIONS(4904), [sym_package] = ACTIONS(4904), [sym_pragma] = ACTIONS(4904), [sym_private] = ACTIONS(4904), [sym_protected] = ACTIONS(4904), [sym_public] = ACTIONS(4904), [sym_pure] = ACTIONS(4904), [sym_ref] = ACTIONS(4904), [sym_return] = ACTIONS(4904), [sym_scope] = ACTIONS(4904), [sym_shared] = ACTIONS(4904), [sym_static] = ACTIONS(4904), [sym_struct] = ACTIONS(4904), [sym_switch] = ACTIONS(4904), [sym_synchronized] = ACTIONS(4904), [sym_template] = ACTIONS(4904), [sym_throw] = ACTIONS(4904), [sym_try] = ACTIONS(4904), [sym_typeid] = ACTIONS(4904), [sym_typeof] = ACTIONS(4904), [sym_union] = ACTIONS(4904), [sym_unittest] = ACTIONS(4904), [sym_version] = ACTIONS(4904), [sym_while] = ACTIONS(4904), [sym_with] = ACTIONS(4904), [sym_gshared] = ACTIONS(4904), [sym_traits] = ACTIONS(4904), [sym_vector] = ACTIONS(4904), [sym_void] = ACTIONS(4904), [anon_sym_BQUOTE] = ACTIONS(4906), [anon_sym_r_DQUOTE] = ACTIONS(4906), [anon_sym_x_DQUOTE] = ACTIONS(4906), [anon_sym_DQUOTE] = ACTIONS(4906), [anon_sym_i_BQUOTE] = ACTIONS(4906), [anon_sym_i_DQUOTE] = ACTIONS(4906), [anon_sym_iq_LBRACE] = ACTIONS(4906), [aux_sym_char_literal_token1] = ACTIONS(4906), [anon_sym_SQUOTE] = ACTIONS(4904), [anon_sym___DATE__] = ACTIONS(4904), [anon_sym___FILE__] = ACTIONS(4904), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4904), [anon_sym___FUNCTION__] = ACTIONS(4904), [anon_sym___LINE__] = ACTIONS(4904), [anon_sym___MODULE__] = ACTIONS(4904), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4904), [anon_sym___TIME__] = ACTIONS(4904), [anon_sym___TIMESTAMP__] = ACTIONS(4904), [anon_sym___VENDOR__] = ACTIONS(4904), [anon_sym___VERSION__] = ACTIONS(4904), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4906), [sym_float_literal] = ACTIONS(4906), [sym__string] = ACTIONS(4906), }, [1513] = { [sym_identifier] = ACTIONS(4908), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4910), [anon_sym_RBRACE] = ACTIONS(4910), [anon_sym_LBRACE] = ACTIONS(4910), [anon_sym_DOT] = ACTIONS(4910), [anon_sym_AMP] = ACTIONS(4910), [anon_sym_DASH] = ACTIONS(4908), [anon_sym_DASH_DASH] = ACTIONS(4910), [anon_sym_PLUS] = ACTIONS(4908), [anon_sym_PLUS_PLUS] = ACTIONS(4910), [anon_sym_BANG] = ACTIONS(4910), [anon_sym_LPAREN] = ACTIONS(4910), [anon_sym_RPAREN] = ACTIONS(4910), [anon_sym_LBRACK] = ACTIONS(4910), [anon_sym_SEMI] = ACTIONS(4910), [anon_sym_DOLLAR] = ACTIONS(4910), [anon_sym_STAR] = ACTIONS(4910), [anon_sym_TILDE] = ACTIONS(4910), [anon_sym_AT] = ACTIONS(4910), [sym_bool] = ACTIONS(4908), [sym_byte] = ACTIONS(4908), [sym_ubyte] = ACTIONS(4908), [sym_char] = ACTIONS(4908), [sym_short] = ACTIONS(4908), [sym_ushort] = ACTIONS(4908), [sym_int] = ACTIONS(4908), [sym_uint] = ACTIONS(4908), [sym_long] = ACTIONS(4908), [sym_ulong] = ACTIONS(4908), [sym_cent] = ACTIONS(4908), [sym_ucent] = ACTIONS(4908), [sym_wchar] = ACTIONS(4908), [sym_dchar] = ACTIONS(4908), [sym_float] = ACTIONS(4908), [sym_double] = ACTIONS(4908), [sym_real] = ACTIONS(4908), [sym_ifloat] = ACTIONS(4908), [sym_idouble] = ACTIONS(4908), [sym_ireal] = ACTIONS(4908), [sym_cfloat] = ACTIONS(4908), [sym_cdouble] = ACTIONS(4908), [sym_creal] = ACTIONS(4908), [sym_size_t] = ACTIONS(4908), [sym_ptrdiff_t] = ACTIONS(4908), [sym_string] = ACTIONS(4908), [sym_cstring] = ACTIONS(4908), [sym_dstring] = ACTIONS(4908), [sym_wstring] = ACTIONS(4908), [sym_noreturn] = ACTIONS(4908), [sym_true] = ACTIONS(4908), [sym_false] = ACTIONS(4908), [sym_null] = ACTIONS(4908), [sym_super] = ACTIONS(4908), [sym_this] = ACTIONS(4908), [sym_abstract] = ACTIONS(4908), [sym_alias] = ACTIONS(4908), [sym_align] = ACTIONS(4908), [sym_asm] = ACTIONS(4908), [sym_assert] = ACTIONS(4908), [sym_auto] = ACTIONS(4908), [sym_break] = ACTIONS(4908), [sym_case] = ACTIONS(4908), [sym_cast] = ACTIONS(4908), [sym_catch] = ACTIONS(4908), [sym_class] = ACTIONS(4908), [sym_const] = ACTIONS(4908), [sym_continue] = ACTIONS(4908), [sym_debug] = ACTIONS(4908), [sym_default] = ACTIONS(4908), [sym_delegate] = ACTIONS(4908), [sym_delete] = ACTIONS(4908), [sym_deprecated] = ACTIONS(4908), [sym_do] = ACTIONS(4908), [sym_else] = ACTIONS(4908), [sym_enum] = ACTIONS(4908), [sym_export] = ACTIONS(4908), [sym_extern] = ACTIONS(4908), [sym_final] = ACTIONS(4908), [sym_finally] = ACTIONS(4908), [sym_for] = ACTIONS(4908), [sym_foreach] = ACTIONS(4908), [sym_foreach_reverse] = ACTIONS(4908), [sym_function] = ACTIONS(4908), [sym_goto] = ACTIONS(4908), [sym_if] = ACTIONS(4908), [sym_immutable] = ACTIONS(4908), [sym_import] = ACTIONS(4908), [sym_in] = ACTIONS(4908), [sym_inout] = ACTIONS(4908), [sym_interface] = ACTIONS(4908), [sym_invariant] = ACTIONS(4908), [sym_is] = ACTIONS(4908), [sym_mixin] = ACTIONS(4908), [sym_new] = ACTIONS(4908), [sym_nothrow] = ACTIONS(4908), [sym_out] = ACTIONS(4908), [sym_override] = ACTIONS(4908), [sym_package] = ACTIONS(4908), [sym_pragma] = ACTIONS(4908), [sym_private] = ACTIONS(4908), [sym_protected] = ACTIONS(4908), [sym_public] = ACTIONS(4908), [sym_pure] = ACTIONS(4908), [sym_ref] = ACTIONS(4908), [sym_return] = ACTIONS(4908), [sym_scope] = ACTIONS(4908), [sym_shared] = ACTIONS(4908), [sym_static] = ACTIONS(4908), [sym_struct] = ACTIONS(4908), [sym_switch] = ACTIONS(4908), [sym_synchronized] = ACTIONS(4908), [sym_template] = ACTIONS(4908), [sym_throw] = ACTIONS(4908), [sym_try] = ACTIONS(4908), [sym_typeid] = ACTIONS(4908), [sym_typeof] = ACTIONS(4908), [sym_union] = ACTIONS(4908), [sym_unittest] = ACTIONS(4908), [sym_version] = ACTIONS(4908), [sym_while] = ACTIONS(4908), [sym_with] = ACTIONS(4908), [sym_gshared] = ACTIONS(4908), [sym_traits] = ACTIONS(4908), [sym_vector] = ACTIONS(4908), [sym_void] = ACTIONS(4908), [anon_sym_BQUOTE] = ACTIONS(4910), [anon_sym_r_DQUOTE] = ACTIONS(4910), [anon_sym_x_DQUOTE] = ACTIONS(4910), [anon_sym_DQUOTE] = ACTIONS(4910), [anon_sym_i_BQUOTE] = ACTIONS(4910), [anon_sym_i_DQUOTE] = ACTIONS(4910), [anon_sym_iq_LBRACE] = ACTIONS(4910), [aux_sym_char_literal_token1] = ACTIONS(4910), [anon_sym_SQUOTE] = ACTIONS(4908), [anon_sym___DATE__] = ACTIONS(4908), [anon_sym___FILE__] = ACTIONS(4908), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4908), [anon_sym___FUNCTION__] = ACTIONS(4908), [anon_sym___LINE__] = ACTIONS(4908), [anon_sym___MODULE__] = ACTIONS(4908), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4908), [anon_sym___TIME__] = ACTIONS(4908), [anon_sym___TIMESTAMP__] = ACTIONS(4908), [anon_sym___VENDOR__] = ACTIONS(4908), [anon_sym___VERSION__] = ACTIONS(4908), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4910), [sym_float_literal] = ACTIONS(4910), [sym__string] = ACTIONS(4910), }, [1514] = { [sym_identifier] = ACTIONS(4912), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4914), [anon_sym_RBRACE] = ACTIONS(4914), [anon_sym_LBRACE] = ACTIONS(4914), [anon_sym_DOT] = ACTIONS(4914), [anon_sym_AMP] = ACTIONS(4914), [anon_sym_DASH] = ACTIONS(4912), [anon_sym_DASH_DASH] = ACTIONS(4914), [anon_sym_PLUS] = ACTIONS(4912), [anon_sym_PLUS_PLUS] = ACTIONS(4914), [anon_sym_BANG] = ACTIONS(4914), [anon_sym_LPAREN] = ACTIONS(4914), [anon_sym_RPAREN] = ACTIONS(4914), [anon_sym_LBRACK] = ACTIONS(4914), [anon_sym_SEMI] = ACTIONS(4914), [anon_sym_DOLLAR] = ACTIONS(4914), [anon_sym_STAR] = ACTIONS(4914), [anon_sym_TILDE] = ACTIONS(4914), [anon_sym_AT] = ACTIONS(4914), [sym_bool] = ACTIONS(4912), [sym_byte] = ACTIONS(4912), [sym_ubyte] = ACTIONS(4912), [sym_char] = ACTIONS(4912), [sym_short] = ACTIONS(4912), [sym_ushort] = ACTIONS(4912), [sym_int] = ACTIONS(4912), [sym_uint] = ACTIONS(4912), [sym_long] = ACTIONS(4912), [sym_ulong] = ACTIONS(4912), [sym_cent] = ACTIONS(4912), [sym_ucent] = ACTIONS(4912), [sym_wchar] = ACTIONS(4912), [sym_dchar] = ACTIONS(4912), [sym_float] = ACTIONS(4912), [sym_double] = ACTIONS(4912), [sym_real] = ACTIONS(4912), [sym_ifloat] = ACTIONS(4912), [sym_idouble] = ACTIONS(4912), [sym_ireal] = ACTIONS(4912), [sym_cfloat] = ACTIONS(4912), [sym_cdouble] = ACTIONS(4912), [sym_creal] = ACTIONS(4912), [sym_size_t] = ACTIONS(4912), [sym_ptrdiff_t] = ACTIONS(4912), [sym_string] = ACTIONS(4912), [sym_cstring] = ACTIONS(4912), [sym_dstring] = ACTIONS(4912), [sym_wstring] = ACTIONS(4912), [sym_noreturn] = ACTIONS(4912), [sym_true] = ACTIONS(4912), [sym_false] = ACTIONS(4912), [sym_null] = ACTIONS(4912), [sym_super] = ACTIONS(4912), [sym_this] = ACTIONS(4912), [sym_abstract] = ACTIONS(4912), [sym_alias] = ACTIONS(4912), [sym_align] = ACTIONS(4912), [sym_asm] = ACTIONS(4912), [sym_assert] = ACTIONS(4912), [sym_auto] = ACTIONS(4912), [sym_break] = ACTIONS(4912), [sym_case] = ACTIONS(4912), [sym_cast] = ACTIONS(4912), [sym_catch] = ACTIONS(4912), [sym_class] = ACTIONS(4912), [sym_const] = ACTIONS(4912), [sym_continue] = ACTIONS(4912), [sym_debug] = ACTIONS(4912), [sym_default] = ACTIONS(4912), [sym_delegate] = ACTIONS(4912), [sym_delete] = ACTIONS(4912), [sym_deprecated] = ACTIONS(4912), [sym_do] = ACTIONS(4912), [sym_else] = ACTIONS(4912), [sym_enum] = ACTIONS(4912), [sym_export] = ACTIONS(4912), [sym_extern] = ACTIONS(4912), [sym_final] = ACTIONS(4912), [sym_finally] = ACTIONS(4912), [sym_for] = ACTIONS(4912), [sym_foreach] = ACTIONS(4912), [sym_foreach_reverse] = ACTIONS(4912), [sym_function] = ACTIONS(4912), [sym_goto] = ACTIONS(4912), [sym_if] = ACTIONS(4912), [sym_immutable] = ACTIONS(4912), [sym_import] = ACTIONS(4912), [sym_in] = ACTIONS(4912), [sym_inout] = ACTIONS(4912), [sym_interface] = ACTIONS(4912), [sym_invariant] = ACTIONS(4912), [sym_is] = ACTIONS(4912), [sym_mixin] = ACTIONS(4912), [sym_new] = ACTIONS(4912), [sym_nothrow] = ACTIONS(4912), [sym_out] = ACTIONS(4912), [sym_override] = ACTIONS(4912), [sym_package] = ACTIONS(4912), [sym_pragma] = ACTIONS(4912), [sym_private] = ACTIONS(4912), [sym_protected] = ACTIONS(4912), [sym_public] = ACTIONS(4912), [sym_pure] = ACTIONS(4912), [sym_ref] = ACTIONS(4912), [sym_return] = ACTIONS(4912), [sym_scope] = ACTIONS(4912), [sym_shared] = ACTIONS(4912), [sym_static] = ACTIONS(4912), [sym_struct] = ACTIONS(4912), [sym_switch] = ACTIONS(4912), [sym_synchronized] = ACTIONS(4912), [sym_template] = ACTIONS(4912), [sym_throw] = ACTIONS(4912), [sym_try] = ACTIONS(4912), [sym_typeid] = ACTIONS(4912), [sym_typeof] = ACTIONS(4912), [sym_union] = ACTIONS(4912), [sym_unittest] = ACTIONS(4912), [sym_version] = ACTIONS(4912), [sym_while] = ACTIONS(4912), [sym_with] = ACTIONS(4912), [sym_gshared] = ACTIONS(4912), [sym_traits] = ACTIONS(4912), [sym_vector] = ACTIONS(4912), [sym_void] = ACTIONS(4912), [anon_sym_BQUOTE] = ACTIONS(4914), [anon_sym_r_DQUOTE] = ACTIONS(4914), [anon_sym_x_DQUOTE] = ACTIONS(4914), [anon_sym_DQUOTE] = ACTIONS(4914), [anon_sym_i_BQUOTE] = ACTIONS(4914), [anon_sym_i_DQUOTE] = ACTIONS(4914), [anon_sym_iq_LBRACE] = ACTIONS(4914), [aux_sym_char_literal_token1] = ACTIONS(4914), [anon_sym_SQUOTE] = ACTIONS(4912), [anon_sym___DATE__] = ACTIONS(4912), [anon_sym___FILE__] = ACTIONS(4912), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4912), [anon_sym___FUNCTION__] = ACTIONS(4912), [anon_sym___LINE__] = ACTIONS(4912), [anon_sym___MODULE__] = ACTIONS(4912), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4912), [anon_sym___TIME__] = ACTIONS(4912), [anon_sym___TIMESTAMP__] = ACTIONS(4912), [anon_sym___VENDOR__] = ACTIONS(4912), [anon_sym___VERSION__] = ACTIONS(4912), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4914), [sym_float_literal] = ACTIONS(4914), [sym__string] = ACTIONS(4914), }, [1515] = { [sym_identifier] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2782), [anon_sym_RBRACE] = ACTIONS(2782), [anon_sym_LBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_AMP] = ACTIONS(2782), [anon_sym_DASH] = ACTIONS(2784), [anon_sym_DASH_DASH] = ACTIONS(2782), [anon_sym_PLUS] = ACTIONS(2784), [anon_sym_PLUS_PLUS] = ACTIONS(2782), [anon_sym_BANG] = ACTIONS(2782), [anon_sym_LPAREN] = ACTIONS(2782), [anon_sym_RPAREN] = ACTIONS(2782), [anon_sym_LBRACK] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_DOLLAR] = ACTIONS(2782), [anon_sym_STAR] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [anon_sym_AT] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_true] = ACTIONS(2784), [sym_false] = ACTIONS(2784), [sym_null] = ACTIONS(2784), [sym_super] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_abstract] = ACTIONS(2784), [sym_alias] = ACTIONS(2784), [sym_align] = ACTIONS(2784), [sym_asm] = ACTIONS(2784), [sym_assert] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_break] = ACTIONS(2784), [sym_case] = ACTIONS(2784), [sym_cast] = ACTIONS(2784), [sym_catch] = ACTIONS(2784), [sym_class] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_continue] = ACTIONS(2784), [sym_debug] = ACTIONS(2784), [sym_default] = ACTIONS(2784), [sym_delegate] = ACTIONS(2784), [sym_delete] = ACTIONS(2784), [sym_deprecated] = ACTIONS(2784), [sym_do] = ACTIONS(2784), [sym_else] = ACTIONS(4916), [sym_enum] = ACTIONS(2784), [sym_export] = ACTIONS(2784), [sym_extern] = ACTIONS(2784), [sym_final] = ACTIONS(2784), [sym_finally] = ACTIONS(2784), [sym_for] = ACTIONS(2784), [sym_foreach] = ACTIONS(2784), [sym_foreach_reverse] = ACTIONS(2784), [sym_function] = ACTIONS(2784), [sym_goto] = ACTIONS(2784), [sym_if] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_in] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_interface] = ACTIONS(2784), [sym_invariant] = ACTIONS(2784), [sym_is] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_new] = ACTIONS(2784), [sym_nothrow] = ACTIONS(2784), [sym_out] = ACTIONS(2784), [sym_override] = ACTIONS(2784), [sym_package] = ACTIONS(2784), [sym_pragma] = ACTIONS(2784), [sym_private] = ACTIONS(2784), [sym_protected] = ACTIONS(2784), [sym_public] = ACTIONS(2784), [sym_pure] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_return] = ACTIONS(2784), [sym_scope] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_static] = ACTIONS(2784), [sym_struct] = ACTIONS(2784), [sym_switch] = ACTIONS(2784), [sym_synchronized] = ACTIONS(2784), [sym_template] = ACTIONS(2784), [sym_throw] = ACTIONS(2784), [sym_try] = ACTIONS(2784), [sym_typeid] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_union] = ACTIONS(2784), [sym_unittest] = ACTIONS(2784), [sym_version] = ACTIONS(2784), [sym_while] = ACTIONS(2784), [sym_with] = ACTIONS(2784), [sym_gshared] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [anon_sym_BQUOTE] = ACTIONS(2782), [anon_sym_r_DQUOTE] = ACTIONS(2782), [anon_sym_x_DQUOTE] = ACTIONS(2782), [anon_sym_DQUOTE] = ACTIONS(2782), [anon_sym_i_BQUOTE] = ACTIONS(2782), [anon_sym_i_DQUOTE] = ACTIONS(2782), [anon_sym_iq_LBRACE] = ACTIONS(2782), [aux_sym_char_literal_token1] = ACTIONS(2782), [anon_sym_SQUOTE] = ACTIONS(2784), [anon_sym___DATE__] = ACTIONS(2784), [anon_sym___FILE__] = ACTIONS(2784), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2784), [anon_sym___FUNCTION__] = ACTIONS(2784), [anon_sym___LINE__] = ACTIONS(2784), [anon_sym___MODULE__] = ACTIONS(2784), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2784), [anon_sym___TIME__] = ACTIONS(2784), [anon_sym___TIMESTAMP__] = ACTIONS(2784), [anon_sym___VENDOR__] = ACTIONS(2784), [anon_sym___VERSION__] = ACTIONS(2784), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2782), [sym_float_literal] = ACTIONS(2782), [sym__string] = ACTIONS(2782), }, [1516] = { [sym_identifier] = ACTIONS(4918), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4920), [anon_sym_RBRACE] = ACTIONS(4920), [anon_sym_LBRACE] = ACTIONS(4920), [anon_sym_DOT] = ACTIONS(4920), [anon_sym_AMP] = ACTIONS(4920), [anon_sym_DASH] = ACTIONS(4918), [anon_sym_DASH_DASH] = ACTIONS(4920), [anon_sym_PLUS] = ACTIONS(4918), [anon_sym_PLUS_PLUS] = ACTIONS(4920), [anon_sym_BANG] = ACTIONS(4920), [anon_sym_LPAREN] = ACTIONS(4920), [anon_sym_RPAREN] = ACTIONS(4920), [anon_sym_LBRACK] = ACTIONS(4920), [anon_sym_SEMI] = ACTIONS(4920), [anon_sym_DOLLAR] = ACTIONS(4920), [anon_sym_STAR] = ACTIONS(4920), [anon_sym_TILDE] = ACTIONS(4920), [anon_sym_AT] = ACTIONS(4920), [sym_bool] = ACTIONS(4918), [sym_byte] = ACTIONS(4918), [sym_ubyte] = ACTIONS(4918), [sym_char] = ACTIONS(4918), [sym_short] = ACTIONS(4918), [sym_ushort] = ACTIONS(4918), [sym_int] = ACTIONS(4918), [sym_uint] = ACTIONS(4918), [sym_long] = ACTIONS(4918), [sym_ulong] = ACTIONS(4918), [sym_cent] = ACTIONS(4918), [sym_ucent] = ACTIONS(4918), [sym_wchar] = ACTIONS(4918), [sym_dchar] = ACTIONS(4918), [sym_float] = ACTIONS(4918), [sym_double] = ACTIONS(4918), [sym_real] = ACTIONS(4918), [sym_ifloat] = ACTIONS(4918), [sym_idouble] = ACTIONS(4918), [sym_ireal] = ACTIONS(4918), [sym_cfloat] = ACTIONS(4918), [sym_cdouble] = ACTIONS(4918), [sym_creal] = ACTIONS(4918), [sym_size_t] = ACTIONS(4918), [sym_ptrdiff_t] = ACTIONS(4918), [sym_string] = ACTIONS(4918), [sym_cstring] = ACTIONS(4918), [sym_dstring] = ACTIONS(4918), [sym_wstring] = ACTIONS(4918), [sym_noreturn] = ACTIONS(4918), [sym_true] = ACTIONS(4918), [sym_false] = ACTIONS(4918), [sym_null] = ACTIONS(4918), [sym_super] = ACTIONS(4918), [sym_this] = ACTIONS(4918), [sym_abstract] = ACTIONS(4918), [sym_alias] = ACTIONS(4918), [sym_align] = ACTIONS(4918), [sym_asm] = ACTIONS(4918), [sym_assert] = ACTIONS(4918), [sym_auto] = ACTIONS(4918), [sym_break] = ACTIONS(4918), [sym_case] = ACTIONS(4918), [sym_cast] = ACTIONS(4918), [sym_catch] = ACTIONS(4918), [sym_class] = ACTIONS(4918), [sym_const] = ACTIONS(4918), [sym_continue] = ACTIONS(4918), [sym_debug] = ACTIONS(4918), [sym_default] = ACTIONS(4918), [sym_delegate] = ACTIONS(4918), [sym_delete] = ACTIONS(4918), [sym_deprecated] = ACTIONS(4918), [sym_do] = ACTIONS(4918), [sym_else] = ACTIONS(4918), [sym_enum] = ACTIONS(4918), [sym_export] = ACTIONS(4918), [sym_extern] = ACTIONS(4918), [sym_final] = ACTIONS(4918), [sym_finally] = ACTIONS(4918), [sym_for] = ACTIONS(4918), [sym_foreach] = ACTIONS(4918), [sym_foreach_reverse] = ACTIONS(4918), [sym_function] = ACTIONS(4918), [sym_goto] = ACTIONS(4918), [sym_if] = ACTIONS(4918), [sym_immutable] = ACTIONS(4918), [sym_import] = ACTIONS(4918), [sym_in] = ACTIONS(4918), [sym_inout] = ACTIONS(4918), [sym_interface] = ACTIONS(4918), [sym_invariant] = ACTIONS(4918), [sym_is] = ACTIONS(4918), [sym_mixin] = ACTIONS(4918), [sym_new] = ACTIONS(4918), [sym_nothrow] = ACTIONS(4918), [sym_out] = ACTIONS(4918), [sym_override] = ACTIONS(4918), [sym_package] = ACTIONS(4918), [sym_pragma] = ACTIONS(4918), [sym_private] = ACTIONS(4918), [sym_protected] = ACTIONS(4918), [sym_public] = ACTIONS(4918), [sym_pure] = ACTIONS(4918), [sym_ref] = ACTIONS(4918), [sym_return] = ACTIONS(4918), [sym_scope] = ACTIONS(4918), [sym_shared] = ACTIONS(4918), [sym_static] = ACTIONS(4918), [sym_struct] = ACTIONS(4918), [sym_switch] = ACTIONS(4918), [sym_synchronized] = ACTIONS(4918), [sym_template] = ACTIONS(4918), [sym_throw] = ACTIONS(4918), [sym_try] = ACTIONS(4918), [sym_typeid] = ACTIONS(4918), [sym_typeof] = ACTIONS(4918), [sym_union] = ACTIONS(4918), [sym_unittest] = ACTIONS(4918), [sym_version] = ACTIONS(4918), [sym_while] = ACTIONS(4918), [sym_with] = ACTIONS(4918), [sym_gshared] = ACTIONS(4918), [sym_traits] = ACTIONS(4918), [sym_vector] = ACTIONS(4918), [sym_void] = ACTIONS(4918), [anon_sym_BQUOTE] = ACTIONS(4920), [anon_sym_r_DQUOTE] = ACTIONS(4920), [anon_sym_x_DQUOTE] = ACTIONS(4920), [anon_sym_DQUOTE] = ACTIONS(4920), [anon_sym_i_BQUOTE] = ACTIONS(4920), [anon_sym_i_DQUOTE] = ACTIONS(4920), [anon_sym_iq_LBRACE] = ACTIONS(4920), [aux_sym_char_literal_token1] = ACTIONS(4920), [anon_sym_SQUOTE] = ACTIONS(4918), [anon_sym___DATE__] = ACTIONS(4918), [anon_sym___FILE__] = ACTIONS(4918), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4918), [anon_sym___FUNCTION__] = ACTIONS(4918), [anon_sym___LINE__] = ACTIONS(4918), [anon_sym___MODULE__] = ACTIONS(4918), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4918), [anon_sym___TIME__] = ACTIONS(4918), [anon_sym___TIMESTAMP__] = ACTIONS(4918), [anon_sym___VENDOR__] = ACTIONS(4918), [anon_sym___VERSION__] = ACTIONS(4918), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4920), [sym_float_literal] = ACTIONS(4920), [sym__string] = ACTIONS(4920), }, [1517] = { [sym_identifier] = ACTIONS(4922), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4924), [anon_sym_RBRACE] = ACTIONS(4924), [anon_sym_LBRACE] = ACTIONS(4924), [anon_sym_DOT] = ACTIONS(4924), [anon_sym_AMP] = ACTIONS(4924), [anon_sym_DASH] = ACTIONS(4922), [anon_sym_DASH_DASH] = ACTIONS(4924), [anon_sym_PLUS] = ACTIONS(4922), [anon_sym_PLUS_PLUS] = ACTIONS(4924), [anon_sym_BANG] = ACTIONS(4924), [anon_sym_LPAREN] = ACTIONS(4924), [anon_sym_RPAREN] = ACTIONS(4924), [anon_sym_LBRACK] = ACTIONS(4924), [anon_sym_SEMI] = ACTIONS(4924), [anon_sym_DOLLAR] = ACTIONS(4924), [anon_sym_STAR] = ACTIONS(4924), [anon_sym_TILDE] = ACTIONS(4924), [anon_sym_AT] = ACTIONS(4924), [sym_bool] = ACTIONS(4922), [sym_byte] = ACTIONS(4922), [sym_ubyte] = ACTIONS(4922), [sym_char] = ACTIONS(4922), [sym_short] = ACTIONS(4922), [sym_ushort] = ACTIONS(4922), [sym_int] = ACTIONS(4922), [sym_uint] = ACTIONS(4922), [sym_long] = ACTIONS(4922), [sym_ulong] = ACTIONS(4922), [sym_cent] = ACTIONS(4922), [sym_ucent] = ACTIONS(4922), [sym_wchar] = ACTIONS(4922), [sym_dchar] = ACTIONS(4922), [sym_float] = ACTIONS(4922), [sym_double] = ACTIONS(4922), [sym_real] = ACTIONS(4922), [sym_ifloat] = ACTIONS(4922), [sym_idouble] = ACTIONS(4922), [sym_ireal] = ACTIONS(4922), [sym_cfloat] = ACTIONS(4922), [sym_cdouble] = ACTIONS(4922), [sym_creal] = ACTIONS(4922), [sym_size_t] = ACTIONS(4922), [sym_ptrdiff_t] = ACTIONS(4922), [sym_string] = ACTIONS(4922), [sym_cstring] = ACTIONS(4922), [sym_dstring] = ACTIONS(4922), [sym_wstring] = ACTIONS(4922), [sym_noreturn] = ACTIONS(4922), [sym_true] = ACTIONS(4922), [sym_false] = ACTIONS(4922), [sym_null] = ACTIONS(4922), [sym_super] = ACTIONS(4922), [sym_this] = ACTIONS(4922), [sym_abstract] = ACTIONS(4922), [sym_alias] = ACTIONS(4922), [sym_align] = ACTIONS(4922), [sym_asm] = ACTIONS(4922), [sym_assert] = ACTIONS(4922), [sym_auto] = ACTIONS(4922), [sym_break] = ACTIONS(4922), [sym_case] = ACTIONS(4922), [sym_cast] = ACTIONS(4922), [sym_catch] = ACTIONS(4922), [sym_class] = ACTIONS(4922), [sym_const] = ACTIONS(4922), [sym_continue] = ACTIONS(4922), [sym_debug] = ACTIONS(4922), [sym_default] = ACTIONS(4922), [sym_delegate] = ACTIONS(4922), [sym_delete] = ACTIONS(4922), [sym_deprecated] = ACTIONS(4922), [sym_do] = ACTIONS(4922), [sym_else] = ACTIONS(4922), [sym_enum] = ACTIONS(4922), [sym_export] = ACTIONS(4922), [sym_extern] = ACTIONS(4922), [sym_final] = ACTIONS(4922), [sym_finally] = ACTIONS(4922), [sym_for] = ACTIONS(4922), [sym_foreach] = ACTIONS(4922), [sym_foreach_reverse] = ACTIONS(4922), [sym_function] = ACTIONS(4922), [sym_goto] = ACTIONS(4922), [sym_if] = ACTIONS(4922), [sym_immutable] = ACTIONS(4922), [sym_import] = ACTIONS(4922), [sym_in] = ACTIONS(4922), [sym_inout] = ACTIONS(4922), [sym_interface] = ACTIONS(4922), [sym_invariant] = ACTIONS(4922), [sym_is] = ACTIONS(4922), [sym_mixin] = ACTIONS(4922), [sym_new] = ACTIONS(4922), [sym_nothrow] = ACTIONS(4922), [sym_out] = ACTIONS(4922), [sym_override] = ACTIONS(4922), [sym_package] = ACTIONS(4922), [sym_pragma] = ACTIONS(4922), [sym_private] = ACTIONS(4922), [sym_protected] = ACTIONS(4922), [sym_public] = ACTIONS(4922), [sym_pure] = ACTIONS(4922), [sym_ref] = ACTIONS(4922), [sym_return] = ACTIONS(4922), [sym_scope] = ACTIONS(4922), [sym_shared] = ACTIONS(4922), [sym_static] = ACTIONS(4922), [sym_struct] = ACTIONS(4922), [sym_switch] = ACTIONS(4922), [sym_synchronized] = ACTIONS(4922), [sym_template] = ACTIONS(4922), [sym_throw] = ACTIONS(4922), [sym_try] = ACTIONS(4922), [sym_typeid] = ACTIONS(4922), [sym_typeof] = ACTIONS(4922), [sym_union] = ACTIONS(4922), [sym_unittest] = ACTIONS(4922), [sym_version] = ACTIONS(4922), [sym_while] = ACTIONS(4922), [sym_with] = ACTIONS(4922), [sym_gshared] = ACTIONS(4922), [sym_traits] = ACTIONS(4922), [sym_vector] = ACTIONS(4922), [sym_void] = ACTIONS(4922), [anon_sym_BQUOTE] = ACTIONS(4924), [anon_sym_r_DQUOTE] = ACTIONS(4924), [anon_sym_x_DQUOTE] = ACTIONS(4924), [anon_sym_DQUOTE] = ACTIONS(4924), [anon_sym_i_BQUOTE] = ACTIONS(4924), [anon_sym_i_DQUOTE] = ACTIONS(4924), [anon_sym_iq_LBRACE] = ACTIONS(4924), [aux_sym_char_literal_token1] = ACTIONS(4924), [anon_sym_SQUOTE] = ACTIONS(4922), [anon_sym___DATE__] = ACTIONS(4922), [anon_sym___FILE__] = ACTIONS(4922), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4922), [anon_sym___FUNCTION__] = ACTIONS(4922), [anon_sym___LINE__] = ACTIONS(4922), [anon_sym___MODULE__] = ACTIONS(4922), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4922), [anon_sym___TIME__] = ACTIONS(4922), [anon_sym___TIMESTAMP__] = ACTIONS(4922), [anon_sym___VENDOR__] = ACTIONS(4922), [anon_sym___VERSION__] = ACTIONS(4922), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4924), [sym_float_literal] = ACTIONS(4924), [sym__string] = ACTIONS(4924), }, [1518] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4618), [anon_sym_RBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(4926), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_AMP] = ACTIONS(4618), [anon_sym_DASH] = ACTIONS(4616), [anon_sym_DASH_DASH] = ACTIONS(4618), [anon_sym_PLUS] = ACTIONS(4616), [anon_sym_PLUS_PLUS] = ACTIONS(4618), [anon_sym_BANG] = ACTIONS(4618), [anon_sym_LPAREN] = ACTIONS(4618), [anon_sym_RPAREN] = ACTIONS(4618), [anon_sym_LBRACK] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4926), [anon_sym_DOLLAR] = ACTIONS(4618), [anon_sym_STAR] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_true] = ACTIONS(4616), [sym_false] = ACTIONS(4616), [sym_null] = ACTIONS(4616), [sym_super] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_asm] = ACTIONS(4616), [sym_assert] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_break] = ACTIONS(4616), [sym_case] = ACTIONS(4616), [sym_cast] = ACTIONS(4616), [sym_catch] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_continue] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_default] = ACTIONS(4616), [sym_delegate] = ACTIONS(4616), [sym_delete] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(4929), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_finally] = ACTIONS(4616), [sym_for] = ACTIONS(4616), [sym_foreach] = ACTIONS(4616), [sym_foreach_reverse] = ACTIONS(4616), [sym_function] = ACTIONS(4616), [sym_goto] = ACTIONS(4616), [sym_if] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(4929), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_is] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_new] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(4929), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_switch] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_throw] = ACTIONS(4616), [sym_try] = ACTIONS(4616), [sym_typeid] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_with] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [anon_sym_BQUOTE] = ACTIONS(4618), [anon_sym_r_DQUOTE] = ACTIONS(4618), [anon_sym_x_DQUOTE] = ACTIONS(4618), [anon_sym_DQUOTE] = ACTIONS(4618), [anon_sym_i_BQUOTE] = ACTIONS(4618), [anon_sym_i_DQUOTE] = ACTIONS(4618), [anon_sym_iq_LBRACE] = ACTIONS(4618), [aux_sym_char_literal_token1] = ACTIONS(4618), [anon_sym_SQUOTE] = ACTIONS(4616), [anon_sym___DATE__] = ACTIONS(4616), [anon_sym___FILE__] = ACTIONS(4616), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4616), [anon_sym___FUNCTION__] = ACTIONS(4616), [anon_sym___LINE__] = ACTIONS(4616), [anon_sym___MODULE__] = ACTIONS(4616), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4616), [anon_sym___TIME__] = ACTIONS(4616), [anon_sym___TIMESTAMP__] = ACTIONS(4616), [anon_sym___VENDOR__] = ACTIONS(4616), [anon_sym___VERSION__] = ACTIONS(4616), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4618), [sym_float_literal] = ACTIONS(4618), [sym__string] = ACTIONS(4618), }, [1519] = { [sym_identifier] = ACTIONS(4932), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4934), [anon_sym_RBRACE] = ACTIONS(4934), [anon_sym_LBRACE] = ACTIONS(4934), [anon_sym_DOT] = ACTIONS(4934), [anon_sym_AMP] = ACTIONS(4934), [anon_sym_DASH] = ACTIONS(4932), [anon_sym_DASH_DASH] = ACTIONS(4934), [anon_sym_PLUS] = ACTIONS(4932), [anon_sym_PLUS_PLUS] = ACTIONS(4934), [anon_sym_BANG] = ACTIONS(4934), [anon_sym_LPAREN] = ACTIONS(4934), [anon_sym_RPAREN] = ACTIONS(4934), [anon_sym_LBRACK] = ACTIONS(4934), [anon_sym_SEMI] = ACTIONS(4934), [anon_sym_DOLLAR] = ACTIONS(4934), [anon_sym_STAR] = ACTIONS(4934), [anon_sym_TILDE] = ACTIONS(4934), [anon_sym_AT] = ACTIONS(4934), [sym_bool] = ACTIONS(4932), [sym_byte] = ACTIONS(4932), [sym_ubyte] = ACTIONS(4932), [sym_char] = ACTIONS(4932), [sym_short] = ACTIONS(4932), [sym_ushort] = ACTIONS(4932), [sym_int] = ACTIONS(4932), [sym_uint] = ACTIONS(4932), [sym_long] = ACTIONS(4932), [sym_ulong] = ACTIONS(4932), [sym_cent] = ACTIONS(4932), [sym_ucent] = ACTIONS(4932), [sym_wchar] = ACTIONS(4932), [sym_dchar] = ACTIONS(4932), [sym_float] = ACTIONS(4932), [sym_double] = ACTIONS(4932), [sym_real] = ACTIONS(4932), [sym_ifloat] = ACTIONS(4932), [sym_idouble] = ACTIONS(4932), [sym_ireal] = ACTIONS(4932), [sym_cfloat] = ACTIONS(4932), [sym_cdouble] = ACTIONS(4932), [sym_creal] = ACTIONS(4932), [sym_size_t] = ACTIONS(4932), [sym_ptrdiff_t] = ACTIONS(4932), [sym_string] = ACTIONS(4932), [sym_cstring] = ACTIONS(4932), [sym_dstring] = ACTIONS(4932), [sym_wstring] = ACTIONS(4932), [sym_noreturn] = ACTIONS(4932), [sym_true] = ACTIONS(4932), [sym_false] = ACTIONS(4932), [sym_null] = ACTIONS(4932), [sym_super] = ACTIONS(4932), [sym_this] = ACTIONS(4932), [sym_abstract] = ACTIONS(4932), [sym_alias] = ACTIONS(4932), [sym_align] = ACTIONS(4932), [sym_asm] = ACTIONS(4932), [sym_assert] = ACTIONS(4932), [sym_auto] = ACTIONS(4932), [sym_break] = ACTIONS(4932), [sym_case] = ACTIONS(4932), [sym_cast] = ACTIONS(4932), [sym_catch] = ACTIONS(4932), [sym_class] = ACTIONS(4932), [sym_const] = ACTIONS(4932), [sym_continue] = ACTIONS(4932), [sym_debug] = ACTIONS(4932), [sym_default] = ACTIONS(4932), [sym_delegate] = ACTIONS(4932), [sym_delete] = ACTIONS(4932), [sym_deprecated] = ACTIONS(4932), [sym_do] = ACTIONS(4932), [sym_else] = ACTIONS(4932), [sym_enum] = ACTIONS(4932), [sym_export] = ACTIONS(4932), [sym_extern] = ACTIONS(4932), [sym_final] = ACTIONS(4932), [sym_finally] = ACTIONS(4932), [sym_for] = ACTIONS(4932), [sym_foreach] = ACTIONS(4932), [sym_foreach_reverse] = ACTIONS(4932), [sym_function] = ACTIONS(4932), [sym_goto] = ACTIONS(4932), [sym_if] = ACTIONS(4932), [sym_immutable] = ACTIONS(4932), [sym_import] = ACTIONS(4932), [sym_in] = ACTIONS(4932), [sym_inout] = ACTIONS(4932), [sym_interface] = ACTIONS(4932), [sym_invariant] = ACTIONS(4932), [sym_is] = ACTIONS(4932), [sym_mixin] = ACTIONS(4932), [sym_new] = ACTIONS(4932), [sym_nothrow] = ACTIONS(4932), [sym_out] = ACTIONS(4932), [sym_override] = ACTIONS(4932), [sym_package] = ACTIONS(4932), [sym_pragma] = ACTIONS(4932), [sym_private] = ACTIONS(4932), [sym_protected] = ACTIONS(4932), [sym_public] = ACTIONS(4932), [sym_pure] = ACTIONS(4932), [sym_ref] = ACTIONS(4932), [sym_return] = ACTIONS(4932), [sym_scope] = ACTIONS(4932), [sym_shared] = ACTIONS(4932), [sym_static] = ACTIONS(4932), [sym_struct] = ACTIONS(4932), [sym_switch] = ACTIONS(4932), [sym_synchronized] = ACTIONS(4932), [sym_template] = ACTIONS(4932), [sym_throw] = ACTIONS(4932), [sym_try] = ACTIONS(4932), [sym_typeid] = ACTIONS(4932), [sym_typeof] = ACTIONS(4932), [sym_union] = ACTIONS(4932), [sym_unittest] = ACTIONS(4932), [sym_version] = ACTIONS(4932), [sym_while] = ACTIONS(4932), [sym_with] = ACTIONS(4932), [sym_gshared] = ACTIONS(4932), [sym_traits] = ACTIONS(4932), [sym_vector] = ACTIONS(4932), [sym_void] = ACTIONS(4932), [anon_sym_BQUOTE] = ACTIONS(4934), [anon_sym_r_DQUOTE] = ACTIONS(4934), [anon_sym_x_DQUOTE] = ACTIONS(4934), [anon_sym_DQUOTE] = ACTIONS(4934), [anon_sym_i_BQUOTE] = ACTIONS(4934), [anon_sym_i_DQUOTE] = ACTIONS(4934), [anon_sym_iq_LBRACE] = ACTIONS(4934), [aux_sym_char_literal_token1] = ACTIONS(4934), [anon_sym_SQUOTE] = ACTIONS(4932), [anon_sym___DATE__] = ACTIONS(4932), [anon_sym___FILE__] = ACTIONS(4932), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4932), [anon_sym___FUNCTION__] = ACTIONS(4932), [anon_sym___LINE__] = ACTIONS(4932), [anon_sym___MODULE__] = ACTIONS(4932), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4932), [anon_sym___TIME__] = ACTIONS(4932), [anon_sym___TIMESTAMP__] = ACTIONS(4932), [anon_sym___VENDOR__] = ACTIONS(4932), [anon_sym___VERSION__] = ACTIONS(4932), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4934), [sym_float_literal] = ACTIONS(4934), [sym__string] = ACTIONS(4934), }, [1520] = { [sym_identifier] = ACTIONS(4936), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4938), [anon_sym_RBRACE] = ACTIONS(4938), [anon_sym_LBRACE] = ACTIONS(4938), [anon_sym_DOT] = ACTIONS(4938), [anon_sym_AMP] = ACTIONS(4938), [anon_sym_DASH] = ACTIONS(4936), [anon_sym_DASH_DASH] = ACTIONS(4938), [anon_sym_PLUS] = ACTIONS(4936), [anon_sym_PLUS_PLUS] = ACTIONS(4938), [anon_sym_BANG] = ACTIONS(4938), [anon_sym_LPAREN] = ACTIONS(4938), [anon_sym_RPAREN] = ACTIONS(4938), [anon_sym_LBRACK] = ACTIONS(4938), [anon_sym_SEMI] = ACTIONS(4938), [anon_sym_DOLLAR] = ACTIONS(4938), [anon_sym_STAR] = ACTIONS(4938), [anon_sym_TILDE] = ACTIONS(4938), [anon_sym_AT] = ACTIONS(4938), [sym_bool] = ACTIONS(4936), [sym_byte] = ACTIONS(4936), [sym_ubyte] = ACTIONS(4936), [sym_char] = ACTIONS(4936), [sym_short] = ACTIONS(4936), [sym_ushort] = ACTIONS(4936), [sym_int] = ACTIONS(4936), [sym_uint] = ACTIONS(4936), [sym_long] = ACTIONS(4936), [sym_ulong] = ACTIONS(4936), [sym_cent] = ACTIONS(4936), [sym_ucent] = ACTIONS(4936), [sym_wchar] = ACTIONS(4936), [sym_dchar] = ACTIONS(4936), [sym_float] = ACTIONS(4936), [sym_double] = ACTIONS(4936), [sym_real] = ACTIONS(4936), [sym_ifloat] = ACTIONS(4936), [sym_idouble] = ACTIONS(4936), [sym_ireal] = ACTIONS(4936), [sym_cfloat] = ACTIONS(4936), [sym_cdouble] = ACTIONS(4936), [sym_creal] = ACTIONS(4936), [sym_size_t] = ACTIONS(4936), [sym_ptrdiff_t] = ACTIONS(4936), [sym_string] = ACTIONS(4936), [sym_cstring] = ACTIONS(4936), [sym_dstring] = ACTIONS(4936), [sym_wstring] = ACTIONS(4936), [sym_noreturn] = ACTIONS(4936), [sym_true] = ACTIONS(4936), [sym_false] = ACTIONS(4936), [sym_null] = ACTIONS(4936), [sym_super] = ACTIONS(4936), [sym_this] = ACTIONS(4936), [sym_abstract] = ACTIONS(4936), [sym_alias] = ACTIONS(4936), [sym_align] = ACTIONS(4936), [sym_asm] = ACTIONS(4936), [sym_assert] = ACTIONS(4936), [sym_auto] = ACTIONS(4936), [sym_break] = ACTIONS(4936), [sym_case] = ACTIONS(4936), [sym_cast] = ACTIONS(4936), [sym_catch] = ACTIONS(4936), [sym_class] = ACTIONS(4936), [sym_const] = ACTIONS(4936), [sym_continue] = ACTIONS(4936), [sym_debug] = ACTIONS(4936), [sym_default] = ACTIONS(4936), [sym_delegate] = ACTIONS(4936), [sym_delete] = ACTIONS(4936), [sym_deprecated] = ACTIONS(4936), [sym_do] = ACTIONS(4936), [sym_else] = ACTIONS(4936), [sym_enum] = ACTIONS(4936), [sym_export] = ACTIONS(4936), [sym_extern] = ACTIONS(4936), [sym_final] = ACTIONS(4936), [sym_finally] = ACTIONS(4936), [sym_for] = ACTIONS(4936), [sym_foreach] = ACTIONS(4936), [sym_foreach_reverse] = ACTIONS(4936), [sym_function] = ACTIONS(4936), [sym_goto] = ACTIONS(4936), [sym_if] = ACTIONS(4936), [sym_immutable] = ACTIONS(4936), [sym_import] = ACTIONS(4936), [sym_in] = ACTIONS(4936), [sym_inout] = ACTIONS(4936), [sym_interface] = ACTIONS(4936), [sym_invariant] = ACTIONS(4936), [sym_is] = ACTIONS(4936), [sym_mixin] = ACTIONS(4936), [sym_new] = ACTIONS(4936), [sym_nothrow] = ACTIONS(4936), [sym_out] = ACTIONS(4936), [sym_override] = ACTIONS(4936), [sym_package] = ACTIONS(4936), [sym_pragma] = ACTIONS(4936), [sym_private] = ACTIONS(4936), [sym_protected] = ACTIONS(4936), [sym_public] = ACTIONS(4936), [sym_pure] = ACTIONS(4936), [sym_ref] = ACTIONS(4936), [sym_return] = ACTIONS(4936), [sym_scope] = ACTIONS(4936), [sym_shared] = ACTIONS(4936), [sym_static] = ACTIONS(4936), [sym_struct] = ACTIONS(4936), [sym_switch] = ACTIONS(4936), [sym_synchronized] = ACTIONS(4936), [sym_template] = ACTIONS(4936), [sym_throw] = ACTIONS(4936), [sym_try] = ACTIONS(4936), [sym_typeid] = ACTIONS(4936), [sym_typeof] = ACTIONS(4936), [sym_union] = ACTIONS(4936), [sym_unittest] = ACTIONS(4936), [sym_version] = ACTIONS(4936), [sym_while] = ACTIONS(4936), [sym_with] = ACTIONS(4936), [sym_gshared] = ACTIONS(4936), [sym_traits] = ACTIONS(4936), [sym_vector] = ACTIONS(4936), [sym_void] = ACTIONS(4936), [anon_sym_BQUOTE] = ACTIONS(4938), [anon_sym_r_DQUOTE] = ACTIONS(4938), [anon_sym_x_DQUOTE] = ACTIONS(4938), [anon_sym_DQUOTE] = ACTIONS(4938), [anon_sym_i_BQUOTE] = ACTIONS(4938), [anon_sym_i_DQUOTE] = ACTIONS(4938), [anon_sym_iq_LBRACE] = ACTIONS(4938), [aux_sym_char_literal_token1] = ACTIONS(4938), [anon_sym_SQUOTE] = ACTIONS(4936), [anon_sym___DATE__] = ACTIONS(4936), [anon_sym___FILE__] = ACTIONS(4936), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4936), [anon_sym___FUNCTION__] = ACTIONS(4936), [anon_sym___LINE__] = ACTIONS(4936), [anon_sym___MODULE__] = ACTIONS(4936), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4936), [anon_sym___TIME__] = ACTIONS(4936), [anon_sym___TIMESTAMP__] = ACTIONS(4936), [anon_sym___VENDOR__] = ACTIONS(4936), [anon_sym___VERSION__] = ACTIONS(4936), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4938), [sym_float_literal] = ACTIONS(4938), [sym__string] = ACTIONS(4938), }, [1521] = { [sym_identifier] = ACTIONS(4940), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4942), [anon_sym_RBRACE] = ACTIONS(4942), [anon_sym_LBRACE] = ACTIONS(4942), [anon_sym_DOT] = ACTIONS(4942), [anon_sym_AMP] = ACTIONS(4942), [anon_sym_DASH] = ACTIONS(4940), [anon_sym_DASH_DASH] = ACTIONS(4942), [anon_sym_PLUS] = ACTIONS(4940), [anon_sym_PLUS_PLUS] = ACTIONS(4942), [anon_sym_BANG] = ACTIONS(4942), [anon_sym_LPAREN] = ACTIONS(4942), [anon_sym_RPAREN] = ACTIONS(4942), [anon_sym_LBRACK] = ACTIONS(4942), [anon_sym_SEMI] = ACTIONS(4942), [anon_sym_DOLLAR] = ACTIONS(4942), [anon_sym_STAR] = ACTIONS(4942), [anon_sym_TILDE] = ACTIONS(4942), [anon_sym_AT] = ACTIONS(4942), [sym_bool] = ACTIONS(4940), [sym_byte] = ACTIONS(4940), [sym_ubyte] = ACTIONS(4940), [sym_char] = ACTIONS(4940), [sym_short] = ACTIONS(4940), [sym_ushort] = ACTIONS(4940), [sym_int] = ACTIONS(4940), [sym_uint] = ACTIONS(4940), [sym_long] = ACTIONS(4940), [sym_ulong] = ACTIONS(4940), [sym_cent] = ACTIONS(4940), [sym_ucent] = ACTIONS(4940), [sym_wchar] = ACTIONS(4940), [sym_dchar] = ACTIONS(4940), [sym_float] = ACTIONS(4940), [sym_double] = ACTIONS(4940), [sym_real] = ACTIONS(4940), [sym_ifloat] = ACTIONS(4940), [sym_idouble] = ACTIONS(4940), [sym_ireal] = ACTIONS(4940), [sym_cfloat] = ACTIONS(4940), [sym_cdouble] = ACTIONS(4940), [sym_creal] = ACTIONS(4940), [sym_size_t] = ACTIONS(4940), [sym_ptrdiff_t] = ACTIONS(4940), [sym_string] = ACTIONS(4940), [sym_cstring] = ACTIONS(4940), [sym_dstring] = ACTIONS(4940), [sym_wstring] = ACTIONS(4940), [sym_noreturn] = ACTIONS(4940), [sym_true] = ACTIONS(4940), [sym_false] = ACTIONS(4940), [sym_null] = ACTIONS(4940), [sym_super] = ACTIONS(4940), [sym_this] = ACTIONS(4940), [sym_abstract] = ACTIONS(4940), [sym_alias] = ACTIONS(4940), [sym_align] = ACTIONS(4940), [sym_asm] = ACTIONS(4940), [sym_assert] = ACTIONS(4940), [sym_auto] = ACTIONS(4940), [sym_break] = ACTIONS(4940), [sym_case] = ACTIONS(4940), [sym_cast] = ACTIONS(4940), [sym_catch] = ACTIONS(4940), [sym_class] = ACTIONS(4940), [sym_const] = ACTIONS(4940), [sym_continue] = ACTIONS(4940), [sym_debug] = ACTIONS(4940), [sym_default] = ACTIONS(4940), [sym_delegate] = ACTIONS(4940), [sym_delete] = ACTIONS(4940), [sym_deprecated] = ACTIONS(4940), [sym_do] = ACTIONS(4940), [sym_else] = ACTIONS(4940), [sym_enum] = ACTIONS(4940), [sym_export] = ACTIONS(4940), [sym_extern] = ACTIONS(4940), [sym_final] = ACTIONS(4940), [sym_finally] = ACTIONS(4940), [sym_for] = ACTIONS(4940), [sym_foreach] = ACTIONS(4940), [sym_foreach_reverse] = ACTIONS(4940), [sym_function] = ACTIONS(4940), [sym_goto] = ACTIONS(4940), [sym_if] = ACTIONS(4940), [sym_immutable] = ACTIONS(4940), [sym_import] = ACTIONS(4940), [sym_in] = ACTIONS(4940), [sym_inout] = ACTIONS(4940), [sym_interface] = ACTIONS(4940), [sym_invariant] = ACTIONS(4940), [sym_is] = ACTIONS(4940), [sym_mixin] = ACTIONS(4940), [sym_new] = ACTIONS(4940), [sym_nothrow] = ACTIONS(4940), [sym_out] = ACTIONS(4940), [sym_override] = ACTIONS(4940), [sym_package] = ACTIONS(4940), [sym_pragma] = ACTIONS(4940), [sym_private] = ACTIONS(4940), [sym_protected] = ACTIONS(4940), [sym_public] = ACTIONS(4940), [sym_pure] = ACTIONS(4940), [sym_ref] = ACTIONS(4940), [sym_return] = ACTIONS(4940), [sym_scope] = ACTIONS(4940), [sym_shared] = ACTIONS(4940), [sym_static] = ACTIONS(4940), [sym_struct] = ACTIONS(4940), [sym_switch] = ACTIONS(4940), [sym_synchronized] = ACTIONS(4940), [sym_template] = ACTIONS(4940), [sym_throw] = ACTIONS(4940), [sym_try] = ACTIONS(4940), [sym_typeid] = ACTIONS(4940), [sym_typeof] = ACTIONS(4940), [sym_union] = ACTIONS(4940), [sym_unittest] = ACTIONS(4940), [sym_version] = ACTIONS(4940), [sym_while] = ACTIONS(4940), [sym_with] = ACTIONS(4940), [sym_gshared] = ACTIONS(4940), [sym_traits] = ACTIONS(4940), [sym_vector] = ACTIONS(4940), [sym_void] = ACTIONS(4940), [anon_sym_BQUOTE] = ACTIONS(4942), [anon_sym_r_DQUOTE] = ACTIONS(4942), [anon_sym_x_DQUOTE] = ACTIONS(4942), [anon_sym_DQUOTE] = ACTIONS(4942), [anon_sym_i_BQUOTE] = ACTIONS(4942), [anon_sym_i_DQUOTE] = ACTIONS(4942), [anon_sym_iq_LBRACE] = ACTIONS(4942), [aux_sym_char_literal_token1] = ACTIONS(4942), [anon_sym_SQUOTE] = ACTIONS(4940), [anon_sym___DATE__] = ACTIONS(4940), [anon_sym___FILE__] = ACTIONS(4940), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4940), [anon_sym___FUNCTION__] = ACTIONS(4940), [anon_sym___LINE__] = ACTIONS(4940), [anon_sym___MODULE__] = ACTIONS(4940), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4940), [anon_sym___TIME__] = ACTIONS(4940), [anon_sym___TIMESTAMP__] = ACTIONS(4940), [anon_sym___VENDOR__] = ACTIONS(4940), [anon_sym___VERSION__] = ACTIONS(4940), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4942), [sym_float_literal] = ACTIONS(4942), [sym__string] = ACTIONS(4942), }, [1522] = { [sym_identifier] = ACTIONS(4944), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4946), [anon_sym_RBRACE] = ACTIONS(4946), [anon_sym_LBRACE] = ACTIONS(4946), [anon_sym_DOT] = ACTIONS(4946), [anon_sym_AMP] = ACTIONS(4946), [anon_sym_DASH] = ACTIONS(4944), [anon_sym_DASH_DASH] = ACTIONS(4946), [anon_sym_PLUS] = ACTIONS(4944), [anon_sym_PLUS_PLUS] = ACTIONS(4946), [anon_sym_BANG] = ACTIONS(4946), [anon_sym_LPAREN] = ACTIONS(4946), [anon_sym_RPAREN] = ACTIONS(4946), [anon_sym_LBRACK] = ACTIONS(4946), [anon_sym_SEMI] = ACTIONS(4946), [anon_sym_DOLLAR] = ACTIONS(4946), [anon_sym_STAR] = ACTIONS(4946), [anon_sym_TILDE] = ACTIONS(4946), [anon_sym_AT] = ACTIONS(4946), [sym_bool] = ACTIONS(4944), [sym_byte] = ACTIONS(4944), [sym_ubyte] = ACTIONS(4944), [sym_char] = ACTIONS(4944), [sym_short] = ACTIONS(4944), [sym_ushort] = ACTIONS(4944), [sym_int] = ACTIONS(4944), [sym_uint] = ACTIONS(4944), [sym_long] = ACTIONS(4944), [sym_ulong] = ACTIONS(4944), [sym_cent] = ACTIONS(4944), [sym_ucent] = ACTIONS(4944), [sym_wchar] = ACTIONS(4944), [sym_dchar] = ACTIONS(4944), [sym_float] = ACTIONS(4944), [sym_double] = ACTIONS(4944), [sym_real] = ACTIONS(4944), [sym_ifloat] = ACTIONS(4944), [sym_idouble] = ACTIONS(4944), [sym_ireal] = ACTIONS(4944), [sym_cfloat] = ACTIONS(4944), [sym_cdouble] = ACTIONS(4944), [sym_creal] = ACTIONS(4944), [sym_size_t] = ACTIONS(4944), [sym_ptrdiff_t] = ACTIONS(4944), [sym_string] = ACTIONS(4944), [sym_cstring] = ACTIONS(4944), [sym_dstring] = ACTIONS(4944), [sym_wstring] = ACTIONS(4944), [sym_noreturn] = ACTIONS(4944), [sym_true] = ACTIONS(4944), [sym_false] = ACTIONS(4944), [sym_null] = ACTIONS(4944), [sym_super] = ACTIONS(4944), [sym_this] = ACTIONS(4944), [sym_abstract] = ACTIONS(4944), [sym_alias] = ACTIONS(4944), [sym_align] = ACTIONS(4944), [sym_asm] = ACTIONS(4944), [sym_assert] = ACTIONS(4944), [sym_auto] = ACTIONS(4944), [sym_break] = ACTIONS(4944), [sym_case] = ACTIONS(4944), [sym_cast] = ACTIONS(4944), [sym_catch] = ACTIONS(4944), [sym_class] = ACTIONS(4944), [sym_const] = ACTIONS(4944), [sym_continue] = ACTIONS(4944), [sym_debug] = ACTIONS(4944), [sym_default] = ACTIONS(4944), [sym_delegate] = ACTIONS(4944), [sym_delete] = ACTIONS(4944), [sym_deprecated] = ACTIONS(4944), [sym_do] = ACTIONS(4944), [sym_else] = ACTIONS(4944), [sym_enum] = ACTIONS(4944), [sym_export] = ACTIONS(4944), [sym_extern] = ACTIONS(4944), [sym_final] = ACTIONS(4944), [sym_finally] = ACTIONS(4944), [sym_for] = ACTIONS(4944), [sym_foreach] = ACTIONS(4944), [sym_foreach_reverse] = ACTIONS(4944), [sym_function] = ACTIONS(4944), [sym_goto] = ACTIONS(4944), [sym_if] = ACTIONS(4944), [sym_immutable] = ACTIONS(4944), [sym_import] = ACTIONS(4944), [sym_in] = ACTIONS(4944), [sym_inout] = ACTIONS(4944), [sym_interface] = ACTIONS(4944), [sym_invariant] = ACTIONS(4944), [sym_is] = ACTIONS(4944), [sym_mixin] = ACTIONS(4944), [sym_new] = ACTIONS(4944), [sym_nothrow] = ACTIONS(4944), [sym_out] = ACTIONS(4944), [sym_override] = ACTIONS(4944), [sym_package] = ACTIONS(4944), [sym_pragma] = ACTIONS(4944), [sym_private] = ACTIONS(4944), [sym_protected] = ACTIONS(4944), [sym_public] = ACTIONS(4944), [sym_pure] = ACTIONS(4944), [sym_ref] = ACTIONS(4944), [sym_return] = ACTIONS(4944), [sym_scope] = ACTIONS(4944), [sym_shared] = ACTIONS(4944), [sym_static] = ACTIONS(4944), [sym_struct] = ACTIONS(4944), [sym_switch] = ACTIONS(4944), [sym_synchronized] = ACTIONS(4944), [sym_template] = ACTIONS(4944), [sym_throw] = ACTIONS(4944), [sym_try] = ACTIONS(4944), [sym_typeid] = ACTIONS(4944), [sym_typeof] = ACTIONS(4944), [sym_union] = ACTIONS(4944), [sym_unittest] = ACTIONS(4944), [sym_version] = ACTIONS(4944), [sym_while] = ACTIONS(4944), [sym_with] = ACTIONS(4944), [sym_gshared] = ACTIONS(4944), [sym_traits] = ACTIONS(4944), [sym_vector] = ACTIONS(4944), [sym_void] = ACTIONS(4944), [anon_sym_BQUOTE] = ACTIONS(4946), [anon_sym_r_DQUOTE] = ACTIONS(4946), [anon_sym_x_DQUOTE] = ACTIONS(4946), [anon_sym_DQUOTE] = ACTIONS(4946), [anon_sym_i_BQUOTE] = ACTIONS(4946), [anon_sym_i_DQUOTE] = ACTIONS(4946), [anon_sym_iq_LBRACE] = ACTIONS(4946), [aux_sym_char_literal_token1] = ACTIONS(4946), [anon_sym_SQUOTE] = ACTIONS(4944), [anon_sym___DATE__] = ACTIONS(4944), [anon_sym___FILE__] = ACTIONS(4944), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4944), [anon_sym___FUNCTION__] = ACTIONS(4944), [anon_sym___LINE__] = ACTIONS(4944), [anon_sym___MODULE__] = ACTIONS(4944), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4944), [anon_sym___TIME__] = ACTIONS(4944), [anon_sym___TIMESTAMP__] = ACTIONS(4944), [anon_sym___VENDOR__] = ACTIONS(4944), [anon_sym___VERSION__] = ACTIONS(4944), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4946), [sym_float_literal] = ACTIONS(4946), [sym__string] = ACTIONS(4946), }, [1523] = { [sym_identifier] = ACTIONS(4948), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4950), [anon_sym_RBRACE] = ACTIONS(4950), [anon_sym_LBRACE] = ACTIONS(4950), [anon_sym_DOT] = ACTIONS(4950), [anon_sym_AMP] = ACTIONS(4950), [anon_sym_DASH] = ACTIONS(4948), [anon_sym_DASH_DASH] = ACTIONS(4950), [anon_sym_PLUS] = ACTIONS(4948), [anon_sym_PLUS_PLUS] = ACTIONS(4950), [anon_sym_BANG] = ACTIONS(4950), [anon_sym_LPAREN] = ACTIONS(4950), [anon_sym_RPAREN] = ACTIONS(4950), [anon_sym_LBRACK] = ACTIONS(4950), [anon_sym_SEMI] = ACTIONS(4950), [anon_sym_DOLLAR] = ACTIONS(4950), [anon_sym_STAR] = ACTIONS(4950), [anon_sym_TILDE] = ACTIONS(4950), [anon_sym_AT] = ACTIONS(4950), [sym_bool] = ACTIONS(4948), [sym_byte] = ACTIONS(4948), [sym_ubyte] = ACTIONS(4948), [sym_char] = ACTIONS(4948), [sym_short] = ACTIONS(4948), [sym_ushort] = ACTIONS(4948), [sym_int] = ACTIONS(4948), [sym_uint] = ACTIONS(4948), [sym_long] = ACTIONS(4948), [sym_ulong] = ACTIONS(4948), [sym_cent] = ACTIONS(4948), [sym_ucent] = ACTIONS(4948), [sym_wchar] = ACTIONS(4948), [sym_dchar] = ACTIONS(4948), [sym_float] = ACTIONS(4948), [sym_double] = ACTIONS(4948), [sym_real] = ACTIONS(4948), [sym_ifloat] = ACTIONS(4948), [sym_idouble] = ACTIONS(4948), [sym_ireal] = ACTIONS(4948), [sym_cfloat] = ACTIONS(4948), [sym_cdouble] = ACTIONS(4948), [sym_creal] = ACTIONS(4948), [sym_size_t] = ACTIONS(4948), [sym_ptrdiff_t] = ACTIONS(4948), [sym_string] = ACTIONS(4948), [sym_cstring] = ACTIONS(4948), [sym_dstring] = ACTIONS(4948), [sym_wstring] = ACTIONS(4948), [sym_noreturn] = ACTIONS(4948), [sym_true] = ACTIONS(4948), [sym_false] = ACTIONS(4948), [sym_null] = ACTIONS(4948), [sym_super] = ACTIONS(4948), [sym_this] = ACTIONS(4948), [sym_abstract] = ACTIONS(4948), [sym_alias] = ACTIONS(4948), [sym_align] = ACTIONS(4948), [sym_asm] = ACTIONS(4948), [sym_assert] = ACTIONS(4948), [sym_auto] = ACTIONS(4948), [sym_break] = ACTIONS(4948), [sym_case] = ACTIONS(4948), [sym_cast] = ACTIONS(4948), [sym_catch] = ACTIONS(4948), [sym_class] = ACTIONS(4948), [sym_const] = ACTIONS(4948), [sym_continue] = ACTIONS(4948), [sym_debug] = ACTIONS(4948), [sym_default] = ACTIONS(4948), [sym_delegate] = ACTIONS(4948), [sym_delete] = ACTIONS(4948), [sym_deprecated] = ACTIONS(4948), [sym_do] = ACTIONS(4948), [sym_else] = ACTIONS(4948), [sym_enum] = ACTIONS(4948), [sym_export] = ACTIONS(4948), [sym_extern] = ACTIONS(4948), [sym_final] = ACTIONS(4948), [sym_finally] = ACTIONS(4948), [sym_for] = ACTIONS(4948), [sym_foreach] = ACTIONS(4948), [sym_foreach_reverse] = ACTIONS(4948), [sym_function] = ACTIONS(4948), [sym_goto] = ACTIONS(4948), [sym_if] = ACTIONS(4948), [sym_immutable] = ACTIONS(4948), [sym_import] = ACTIONS(4948), [sym_in] = ACTIONS(4948), [sym_inout] = ACTIONS(4948), [sym_interface] = ACTIONS(4948), [sym_invariant] = ACTIONS(4948), [sym_is] = ACTIONS(4948), [sym_mixin] = ACTIONS(4948), [sym_new] = ACTIONS(4948), [sym_nothrow] = ACTIONS(4948), [sym_out] = ACTIONS(4948), [sym_override] = ACTIONS(4948), [sym_package] = ACTIONS(4948), [sym_pragma] = ACTIONS(4948), [sym_private] = ACTIONS(4948), [sym_protected] = ACTIONS(4948), [sym_public] = ACTIONS(4948), [sym_pure] = ACTIONS(4948), [sym_ref] = ACTIONS(4948), [sym_return] = ACTIONS(4948), [sym_scope] = ACTIONS(4948), [sym_shared] = ACTIONS(4948), [sym_static] = ACTIONS(4948), [sym_struct] = ACTIONS(4948), [sym_switch] = ACTIONS(4948), [sym_synchronized] = ACTIONS(4948), [sym_template] = ACTIONS(4948), [sym_throw] = ACTIONS(4948), [sym_try] = ACTIONS(4948), [sym_typeid] = ACTIONS(4948), [sym_typeof] = ACTIONS(4948), [sym_union] = ACTIONS(4948), [sym_unittest] = ACTIONS(4948), [sym_version] = ACTIONS(4948), [sym_while] = ACTIONS(4948), [sym_with] = ACTIONS(4948), [sym_gshared] = ACTIONS(4948), [sym_traits] = ACTIONS(4948), [sym_vector] = ACTIONS(4948), [sym_void] = ACTIONS(4948), [anon_sym_BQUOTE] = ACTIONS(4950), [anon_sym_r_DQUOTE] = ACTIONS(4950), [anon_sym_x_DQUOTE] = ACTIONS(4950), [anon_sym_DQUOTE] = ACTIONS(4950), [anon_sym_i_BQUOTE] = ACTIONS(4950), [anon_sym_i_DQUOTE] = ACTIONS(4950), [anon_sym_iq_LBRACE] = ACTIONS(4950), [aux_sym_char_literal_token1] = ACTIONS(4950), [anon_sym_SQUOTE] = ACTIONS(4948), [anon_sym___DATE__] = ACTIONS(4948), [anon_sym___FILE__] = ACTIONS(4948), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4948), [anon_sym___FUNCTION__] = ACTIONS(4948), [anon_sym___LINE__] = ACTIONS(4948), [anon_sym___MODULE__] = ACTIONS(4948), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4948), [anon_sym___TIME__] = ACTIONS(4948), [anon_sym___TIMESTAMP__] = ACTIONS(4948), [anon_sym___VENDOR__] = ACTIONS(4948), [anon_sym___VERSION__] = ACTIONS(4948), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4950), [sym_float_literal] = ACTIONS(4950), [sym__string] = ACTIONS(4950), }, [1524] = { [sym_identifier] = ACTIONS(4952), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4954), [anon_sym_RBRACE] = ACTIONS(4954), [anon_sym_LBRACE] = ACTIONS(4954), [anon_sym_DOT] = ACTIONS(4954), [anon_sym_AMP] = ACTIONS(4954), [anon_sym_DASH] = ACTIONS(4952), [anon_sym_DASH_DASH] = ACTIONS(4954), [anon_sym_PLUS] = ACTIONS(4952), [anon_sym_PLUS_PLUS] = ACTIONS(4954), [anon_sym_BANG] = ACTIONS(4954), [anon_sym_LPAREN] = ACTIONS(4954), [anon_sym_RPAREN] = ACTIONS(4954), [anon_sym_LBRACK] = ACTIONS(4954), [anon_sym_SEMI] = ACTIONS(4954), [anon_sym_DOLLAR] = ACTIONS(4954), [anon_sym_STAR] = ACTIONS(4954), [anon_sym_TILDE] = ACTIONS(4954), [anon_sym_AT] = ACTIONS(4954), [sym_bool] = ACTIONS(4952), [sym_byte] = ACTIONS(4952), [sym_ubyte] = ACTIONS(4952), [sym_char] = ACTIONS(4952), [sym_short] = ACTIONS(4952), [sym_ushort] = ACTIONS(4952), [sym_int] = ACTIONS(4952), [sym_uint] = ACTIONS(4952), [sym_long] = ACTIONS(4952), [sym_ulong] = ACTIONS(4952), [sym_cent] = ACTIONS(4952), [sym_ucent] = ACTIONS(4952), [sym_wchar] = ACTIONS(4952), [sym_dchar] = ACTIONS(4952), [sym_float] = ACTIONS(4952), [sym_double] = ACTIONS(4952), [sym_real] = ACTIONS(4952), [sym_ifloat] = ACTIONS(4952), [sym_idouble] = ACTIONS(4952), [sym_ireal] = ACTIONS(4952), [sym_cfloat] = ACTIONS(4952), [sym_cdouble] = ACTIONS(4952), [sym_creal] = ACTIONS(4952), [sym_size_t] = ACTIONS(4952), [sym_ptrdiff_t] = ACTIONS(4952), [sym_string] = ACTIONS(4952), [sym_cstring] = ACTIONS(4952), [sym_dstring] = ACTIONS(4952), [sym_wstring] = ACTIONS(4952), [sym_noreturn] = ACTIONS(4952), [sym_true] = ACTIONS(4952), [sym_false] = ACTIONS(4952), [sym_null] = ACTIONS(4952), [sym_super] = ACTIONS(4952), [sym_this] = ACTIONS(4952), [sym_abstract] = ACTIONS(4952), [sym_alias] = ACTIONS(4952), [sym_align] = ACTIONS(4952), [sym_asm] = ACTIONS(4952), [sym_assert] = ACTIONS(4952), [sym_auto] = ACTIONS(4952), [sym_break] = ACTIONS(4952), [sym_case] = ACTIONS(4952), [sym_cast] = ACTIONS(4952), [sym_catch] = ACTIONS(4952), [sym_class] = ACTIONS(4952), [sym_const] = ACTIONS(4952), [sym_continue] = ACTIONS(4952), [sym_debug] = ACTIONS(4952), [sym_default] = ACTIONS(4952), [sym_delegate] = ACTIONS(4952), [sym_delete] = ACTIONS(4952), [sym_deprecated] = ACTIONS(4952), [sym_do] = ACTIONS(4952), [sym_else] = ACTIONS(4952), [sym_enum] = ACTIONS(4952), [sym_export] = ACTIONS(4952), [sym_extern] = ACTIONS(4952), [sym_final] = ACTIONS(4952), [sym_finally] = ACTIONS(4952), [sym_for] = ACTIONS(4952), [sym_foreach] = ACTIONS(4952), [sym_foreach_reverse] = ACTIONS(4952), [sym_function] = ACTIONS(4952), [sym_goto] = ACTIONS(4952), [sym_if] = ACTIONS(4952), [sym_immutable] = ACTIONS(4952), [sym_import] = ACTIONS(4952), [sym_in] = ACTIONS(4952), [sym_inout] = ACTIONS(4952), [sym_interface] = ACTIONS(4952), [sym_invariant] = ACTIONS(4952), [sym_is] = ACTIONS(4952), [sym_mixin] = ACTIONS(4952), [sym_new] = ACTIONS(4952), [sym_nothrow] = ACTIONS(4952), [sym_out] = ACTIONS(4952), [sym_override] = ACTIONS(4952), [sym_package] = ACTIONS(4952), [sym_pragma] = ACTIONS(4952), [sym_private] = ACTIONS(4952), [sym_protected] = ACTIONS(4952), [sym_public] = ACTIONS(4952), [sym_pure] = ACTIONS(4952), [sym_ref] = ACTIONS(4952), [sym_return] = ACTIONS(4952), [sym_scope] = ACTIONS(4952), [sym_shared] = ACTIONS(4952), [sym_static] = ACTIONS(4952), [sym_struct] = ACTIONS(4952), [sym_switch] = ACTIONS(4952), [sym_synchronized] = ACTIONS(4952), [sym_template] = ACTIONS(4952), [sym_throw] = ACTIONS(4952), [sym_try] = ACTIONS(4952), [sym_typeid] = ACTIONS(4952), [sym_typeof] = ACTIONS(4952), [sym_union] = ACTIONS(4952), [sym_unittest] = ACTIONS(4952), [sym_version] = ACTIONS(4952), [sym_while] = ACTIONS(4952), [sym_with] = ACTIONS(4952), [sym_gshared] = ACTIONS(4952), [sym_traits] = ACTIONS(4952), [sym_vector] = ACTIONS(4952), [sym_void] = ACTIONS(4952), [anon_sym_BQUOTE] = ACTIONS(4954), [anon_sym_r_DQUOTE] = ACTIONS(4954), [anon_sym_x_DQUOTE] = ACTIONS(4954), [anon_sym_DQUOTE] = ACTIONS(4954), [anon_sym_i_BQUOTE] = ACTIONS(4954), [anon_sym_i_DQUOTE] = ACTIONS(4954), [anon_sym_iq_LBRACE] = ACTIONS(4954), [aux_sym_char_literal_token1] = ACTIONS(4954), [anon_sym_SQUOTE] = ACTIONS(4952), [anon_sym___DATE__] = ACTIONS(4952), [anon_sym___FILE__] = ACTIONS(4952), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4952), [anon_sym___FUNCTION__] = ACTIONS(4952), [anon_sym___LINE__] = ACTIONS(4952), [anon_sym___MODULE__] = ACTIONS(4952), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4952), [anon_sym___TIME__] = ACTIONS(4952), [anon_sym___TIMESTAMP__] = ACTIONS(4952), [anon_sym___VENDOR__] = ACTIONS(4952), [anon_sym___VERSION__] = ACTIONS(4952), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4954), [sym_float_literal] = ACTIONS(4954), [sym__string] = ACTIONS(4954), }, [1525] = { [sym_identifier] = ACTIONS(4956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4958), [anon_sym_RBRACE] = ACTIONS(4958), [anon_sym_LBRACE] = ACTIONS(4958), [anon_sym_DOT] = ACTIONS(4958), [anon_sym_AMP] = ACTIONS(4958), [anon_sym_DASH] = ACTIONS(4956), [anon_sym_DASH_DASH] = ACTIONS(4958), [anon_sym_PLUS] = ACTIONS(4956), [anon_sym_PLUS_PLUS] = ACTIONS(4958), [anon_sym_BANG] = ACTIONS(4958), [anon_sym_LPAREN] = ACTIONS(4958), [anon_sym_RPAREN] = ACTIONS(4958), [anon_sym_LBRACK] = ACTIONS(4958), [anon_sym_SEMI] = ACTIONS(4958), [anon_sym_DOLLAR] = ACTIONS(4958), [anon_sym_STAR] = ACTIONS(4958), [anon_sym_TILDE] = ACTIONS(4958), [anon_sym_AT] = ACTIONS(4958), [sym_bool] = ACTIONS(4956), [sym_byte] = ACTIONS(4956), [sym_ubyte] = ACTIONS(4956), [sym_char] = ACTIONS(4956), [sym_short] = ACTIONS(4956), [sym_ushort] = ACTIONS(4956), [sym_int] = ACTIONS(4956), [sym_uint] = ACTIONS(4956), [sym_long] = ACTIONS(4956), [sym_ulong] = ACTIONS(4956), [sym_cent] = ACTIONS(4956), [sym_ucent] = ACTIONS(4956), [sym_wchar] = ACTIONS(4956), [sym_dchar] = ACTIONS(4956), [sym_float] = ACTIONS(4956), [sym_double] = ACTIONS(4956), [sym_real] = ACTIONS(4956), [sym_ifloat] = ACTIONS(4956), [sym_idouble] = ACTIONS(4956), [sym_ireal] = ACTIONS(4956), [sym_cfloat] = ACTIONS(4956), [sym_cdouble] = ACTIONS(4956), [sym_creal] = ACTIONS(4956), [sym_size_t] = ACTIONS(4956), [sym_ptrdiff_t] = ACTIONS(4956), [sym_string] = ACTIONS(4956), [sym_cstring] = ACTIONS(4956), [sym_dstring] = ACTIONS(4956), [sym_wstring] = ACTIONS(4956), [sym_noreturn] = ACTIONS(4956), [sym_true] = ACTIONS(4956), [sym_false] = ACTIONS(4956), [sym_null] = ACTIONS(4956), [sym_super] = ACTIONS(4956), [sym_this] = ACTIONS(4956), [sym_abstract] = ACTIONS(4956), [sym_alias] = ACTIONS(4956), [sym_align] = ACTIONS(4956), [sym_asm] = ACTIONS(4956), [sym_assert] = ACTIONS(4956), [sym_auto] = ACTIONS(4956), [sym_break] = ACTIONS(4956), [sym_case] = ACTIONS(4956), [sym_cast] = ACTIONS(4956), [sym_catch] = ACTIONS(4956), [sym_class] = ACTIONS(4956), [sym_const] = ACTIONS(4956), [sym_continue] = ACTIONS(4956), [sym_debug] = ACTIONS(4956), [sym_default] = ACTIONS(4956), [sym_delegate] = ACTIONS(4956), [sym_delete] = ACTIONS(4956), [sym_deprecated] = ACTIONS(4956), [sym_do] = ACTIONS(4956), [sym_else] = ACTIONS(4956), [sym_enum] = ACTIONS(4956), [sym_export] = ACTIONS(4956), [sym_extern] = ACTIONS(4956), [sym_final] = ACTIONS(4956), [sym_finally] = ACTIONS(4956), [sym_for] = ACTIONS(4956), [sym_foreach] = ACTIONS(4956), [sym_foreach_reverse] = ACTIONS(4956), [sym_function] = ACTIONS(4956), [sym_goto] = ACTIONS(4956), [sym_if] = ACTIONS(4956), [sym_immutable] = ACTIONS(4956), [sym_import] = ACTIONS(4956), [sym_in] = ACTIONS(4956), [sym_inout] = ACTIONS(4956), [sym_interface] = ACTIONS(4956), [sym_invariant] = ACTIONS(4956), [sym_is] = ACTIONS(4956), [sym_mixin] = ACTIONS(4956), [sym_new] = ACTIONS(4956), [sym_nothrow] = ACTIONS(4956), [sym_out] = ACTIONS(4956), [sym_override] = ACTIONS(4956), [sym_package] = ACTIONS(4956), [sym_pragma] = ACTIONS(4956), [sym_private] = ACTIONS(4956), [sym_protected] = ACTIONS(4956), [sym_public] = ACTIONS(4956), [sym_pure] = ACTIONS(4956), [sym_ref] = ACTIONS(4956), [sym_return] = ACTIONS(4956), [sym_scope] = ACTIONS(4956), [sym_shared] = ACTIONS(4956), [sym_static] = ACTIONS(4956), [sym_struct] = ACTIONS(4956), [sym_switch] = ACTIONS(4956), [sym_synchronized] = ACTIONS(4956), [sym_template] = ACTIONS(4956), [sym_throw] = ACTIONS(4956), [sym_try] = ACTIONS(4956), [sym_typeid] = ACTIONS(4956), [sym_typeof] = ACTIONS(4956), [sym_union] = ACTIONS(4956), [sym_unittest] = ACTIONS(4956), [sym_version] = ACTIONS(4956), [sym_while] = ACTIONS(4956), [sym_with] = ACTIONS(4956), [sym_gshared] = ACTIONS(4956), [sym_traits] = ACTIONS(4956), [sym_vector] = ACTIONS(4956), [sym_void] = ACTIONS(4956), [anon_sym_BQUOTE] = ACTIONS(4958), [anon_sym_r_DQUOTE] = ACTIONS(4958), [anon_sym_x_DQUOTE] = ACTIONS(4958), [anon_sym_DQUOTE] = ACTIONS(4958), [anon_sym_i_BQUOTE] = ACTIONS(4958), [anon_sym_i_DQUOTE] = ACTIONS(4958), [anon_sym_iq_LBRACE] = ACTIONS(4958), [aux_sym_char_literal_token1] = ACTIONS(4958), [anon_sym_SQUOTE] = ACTIONS(4956), [anon_sym___DATE__] = ACTIONS(4956), [anon_sym___FILE__] = ACTIONS(4956), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4956), [anon_sym___FUNCTION__] = ACTIONS(4956), [anon_sym___LINE__] = ACTIONS(4956), [anon_sym___MODULE__] = ACTIONS(4956), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4956), [anon_sym___TIME__] = ACTIONS(4956), [anon_sym___TIMESTAMP__] = ACTIONS(4956), [anon_sym___VENDOR__] = ACTIONS(4956), [anon_sym___VERSION__] = ACTIONS(4956), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4958), [sym_float_literal] = ACTIONS(4958), [sym__string] = ACTIONS(4958), }, [1526] = { [sym_identifier] = ACTIONS(4960), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4962), [anon_sym_RBRACE] = ACTIONS(4962), [anon_sym_LBRACE] = ACTIONS(4962), [anon_sym_DOT] = ACTIONS(4962), [anon_sym_AMP] = ACTIONS(4962), [anon_sym_DASH] = ACTIONS(4960), [anon_sym_DASH_DASH] = ACTIONS(4962), [anon_sym_PLUS] = ACTIONS(4960), [anon_sym_PLUS_PLUS] = ACTIONS(4962), [anon_sym_BANG] = ACTIONS(4962), [anon_sym_LPAREN] = ACTIONS(4962), [anon_sym_RPAREN] = ACTIONS(4962), [anon_sym_LBRACK] = ACTIONS(4962), [anon_sym_SEMI] = ACTIONS(4962), [anon_sym_DOLLAR] = ACTIONS(4962), [anon_sym_STAR] = ACTIONS(4962), [anon_sym_TILDE] = ACTIONS(4962), [anon_sym_AT] = ACTIONS(4962), [sym_bool] = ACTIONS(4960), [sym_byte] = ACTIONS(4960), [sym_ubyte] = ACTIONS(4960), [sym_char] = ACTIONS(4960), [sym_short] = ACTIONS(4960), [sym_ushort] = ACTIONS(4960), [sym_int] = ACTIONS(4960), [sym_uint] = ACTIONS(4960), [sym_long] = ACTIONS(4960), [sym_ulong] = ACTIONS(4960), [sym_cent] = ACTIONS(4960), [sym_ucent] = ACTIONS(4960), [sym_wchar] = ACTIONS(4960), [sym_dchar] = ACTIONS(4960), [sym_float] = ACTIONS(4960), [sym_double] = ACTIONS(4960), [sym_real] = ACTIONS(4960), [sym_ifloat] = ACTIONS(4960), [sym_idouble] = ACTIONS(4960), [sym_ireal] = ACTIONS(4960), [sym_cfloat] = ACTIONS(4960), [sym_cdouble] = ACTIONS(4960), [sym_creal] = ACTIONS(4960), [sym_size_t] = ACTIONS(4960), [sym_ptrdiff_t] = ACTIONS(4960), [sym_string] = ACTIONS(4960), [sym_cstring] = ACTIONS(4960), [sym_dstring] = ACTIONS(4960), [sym_wstring] = ACTIONS(4960), [sym_noreturn] = ACTIONS(4960), [sym_true] = ACTIONS(4960), [sym_false] = ACTIONS(4960), [sym_null] = ACTIONS(4960), [sym_super] = ACTIONS(4960), [sym_this] = ACTIONS(4960), [sym_abstract] = ACTIONS(4960), [sym_alias] = ACTIONS(4960), [sym_align] = ACTIONS(4960), [sym_asm] = ACTIONS(4960), [sym_assert] = ACTIONS(4960), [sym_auto] = ACTIONS(4960), [sym_break] = ACTIONS(4960), [sym_case] = ACTIONS(4960), [sym_cast] = ACTIONS(4960), [sym_catch] = ACTIONS(4960), [sym_class] = ACTIONS(4960), [sym_const] = ACTIONS(4960), [sym_continue] = ACTIONS(4960), [sym_debug] = ACTIONS(4960), [sym_default] = ACTIONS(4960), [sym_delegate] = ACTIONS(4960), [sym_delete] = ACTIONS(4960), [sym_deprecated] = ACTIONS(4960), [sym_do] = ACTIONS(4960), [sym_else] = ACTIONS(4960), [sym_enum] = ACTIONS(4960), [sym_export] = ACTIONS(4960), [sym_extern] = ACTIONS(4960), [sym_final] = ACTIONS(4960), [sym_finally] = ACTIONS(4960), [sym_for] = ACTIONS(4960), [sym_foreach] = ACTIONS(4960), [sym_foreach_reverse] = ACTIONS(4960), [sym_function] = ACTIONS(4960), [sym_goto] = ACTIONS(4960), [sym_if] = ACTIONS(4960), [sym_immutable] = ACTIONS(4960), [sym_import] = ACTIONS(4960), [sym_in] = ACTIONS(4960), [sym_inout] = ACTIONS(4960), [sym_interface] = ACTIONS(4960), [sym_invariant] = ACTIONS(4960), [sym_is] = ACTIONS(4960), [sym_mixin] = ACTIONS(4960), [sym_new] = ACTIONS(4960), [sym_nothrow] = ACTIONS(4960), [sym_out] = ACTIONS(4960), [sym_override] = ACTIONS(4960), [sym_package] = ACTIONS(4960), [sym_pragma] = ACTIONS(4960), [sym_private] = ACTIONS(4960), [sym_protected] = ACTIONS(4960), [sym_public] = ACTIONS(4960), [sym_pure] = ACTIONS(4960), [sym_ref] = ACTIONS(4960), [sym_return] = ACTIONS(4960), [sym_scope] = ACTIONS(4960), [sym_shared] = ACTIONS(4960), [sym_static] = ACTIONS(4960), [sym_struct] = ACTIONS(4960), [sym_switch] = ACTIONS(4960), [sym_synchronized] = ACTIONS(4960), [sym_template] = ACTIONS(4960), [sym_throw] = ACTIONS(4960), [sym_try] = ACTIONS(4960), [sym_typeid] = ACTIONS(4960), [sym_typeof] = ACTIONS(4960), [sym_union] = ACTIONS(4960), [sym_unittest] = ACTIONS(4960), [sym_version] = ACTIONS(4960), [sym_while] = ACTIONS(4960), [sym_with] = ACTIONS(4960), [sym_gshared] = ACTIONS(4960), [sym_traits] = ACTIONS(4960), [sym_vector] = ACTIONS(4960), [sym_void] = ACTIONS(4960), [anon_sym_BQUOTE] = ACTIONS(4962), [anon_sym_r_DQUOTE] = ACTIONS(4962), [anon_sym_x_DQUOTE] = ACTIONS(4962), [anon_sym_DQUOTE] = ACTIONS(4962), [anon_sym_i_BQUOTE] = ACTIONS(4962), [anon_sym_i_DQUOTE] = ACTIONS(4962), [anon_sym_iq_LBRACE] = ACTIONS(4962), [aux_sym_char_literal_token1] = ACTIONS(4962), [anon_sym_SQUOTE] = ACTIONS(4960), [anon_sym___DATE__] = ACTIONS(4960), [anon_sym___FILE__] = ACTIONS(4960), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4960), [anon_sym___FUNCTION__] = ACTIONS(4960), [anon_sym___LINE__] = ACTIONS(4960), [anon_sym___MODULE__] = ACTIONS(4960), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4960), [anon_sym___TIME__] = ACTIONS(4960), [anon_sym___TIMESTAMP__] = ACTIONS(4960), [anon_sym___VENDOR__] = ACTIONS(4960), [anon_sym___VERSION__] = ACTIONS(4960), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4962), [sym_float_literal] = ACTIONS(4962), [sym__string] = ACTIONS(4962), }, [1527] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_RBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [anon_sym_AT] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_abstract] = ACTIONS(4359), [sym_alias] = ACTIONS(4359), [sym_align] = ACTIONS(4359), [sym_asm] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_break] = ACTIONS(4359), [sym_case] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_catch] = ACTIONS(4359), [sym_class] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_continue] = ACTIONS(4359), [sym_debug] = ACTIONS(4359), [sym_default] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_deprecated] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(4964), [sym_enum] = ACTIONS(4359), [sym_export] = ACTIONS(4359), [sym_extern] = ACTIONS(4359), [sym_final] = ACTIONS(4359), [sym_finally] = ACTIONS(4359), [sym_for] = ACTIONS(4359), [sym_foreach] = ACTIONS(4359), [sym_foreach_reverse] = ACTIONS(4359), [sym_function] = ACTIONS(4359), [sym_goto] = ACTIONS(4359), [sym_if] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_interface] = ACTIONS(4359), [sym_invariant] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_nothrow] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_override] = ACTIONS(4359), [sym_package] = ACTIONS(4359), [sym_pragma] = ACTIONS(4359), [sym_private] = ACTIONS(4359), [sym_protected] = ACTIONS(4359), [sym_public] = ACTIONS(4359), [sym_pure] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_return] = ACTIONS(4359), [sym_scope] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_static] = ACTIONS(4359), [sym_struct] = ACTIONS(4359), [sym_switch] = ACTIONS(4359), [sym_synchronized] = ACTIONS(4359), [sym_template] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_try] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_union] = ACTIONS(4359), [sym_unittest] = ACTIONS(4359), [sym_version] = ACTIONS(4359), [sym_while] = ACTIONS(4359), [sym_with] = ACTIONS(4359), [sym_gshared] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [1528] = { [sym_identifier] = ACTIONS(4966), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4968), [anon_sym_RBRACE] = ACTIONS(4968), [anon_sym_LBRACE] = ACTIONS(4968), [anon_sym_DOT] = ACTIONS(4968), [anon_sym_AMP] = ACTIONS(4968), [anon_sym_DASH] = ACTIONS(4966), [anon_sym_DASH_DASH] = ACTIONS(4968), [anon_sym_PLUS] = ACTIONS(4966), [anon_sym_PLUS_PLUS] = ACTIONS(4968), [anon_sym_BANG] = ACTIONS(4968), [anon_sym_LPAREN] = ACTIONS(4968), [anon_sym_RPAREN] = ACTIONS(4968), [anon_sym_LBRACK] = ACTIONS(4968), [anon_sym_SEMI] = ACTIONS(4968), [anon_sym_DOLLAR] = ACTIONS(4968), [anon_sym_STAR] = ACTIONS(4968), [anon_sym_TILDE] = ACTIONS(4968), [anon_sym_AT] = ACTIONS(4968), [sym_bool] = ACTIONS(4966), [sym_byte] = ACTIONS(4966), [sym_ubyte] = ACTIONS(4966), [sym_char] = ACTIONS(4966), [sym_short] = ACTIONS(4966), [sym_ushort] = ACTIONS(4966), [sym_int] = ACTIONS(4966), [sym_uint] = ACTIONS(4966), [sym_long] = ACTIONS(4966), [sym_ulong] = ACTIONS(4966), [sym_cent] = ACTIONS(4966), [sym_ucent] = ACTIONS(4966), [sym_wchar] = ACTIONS(4966), [sym_dchar] = ACTIONS(4966), [sym_float] = ACTIONS(4966), [sym_double] = ACTIONS(4966), [sym_real] = ACTIONS(4966), [sym_ifloat] = ACTIONS(4966), [sym_idouble] = ACTIONS(4966), [sym_ireal] = ACTIONS(4966), [sym_cfloat] = ACTIONS(4966), [sym_cdouble] = ACTIONS(4966), [sym_creal] = ACTIONS(4966), [sym_size_t] = ACTIONS(4966), [sym_ptrdiff_t] = ACTIONS(4966), [sym_string] = ACTIONS(4966), [sym_cstring] = ACTIONS(4966), [sym_dstring] = ACTIONS(4966), [sym_wstring] = ACTIONS(4966), [sym_noreturn] = ACTIONS(4966), [sym_true] = ACTIONS(4966), [sym_false] = ACTIONS(4966), [sym_null] = ACTIONS(4966), [sym_super] = ACTIONS(4966), [sym_this] = ACTIONS(4966), [sym_abstract] = ACTIONS(4966), [sym_alias] = ACTIONS(4966), [sym_align] = ACTIONS(4966), [sym_asm] = ACTIONS(4966), [sym_assert] = ACTIONS(4966), [sym_auto] = ACTIONS(4966), [sym_break] = ACTIONS(4966), [sym_case] = ACTIONS(4966), [sym_cast] = ACTIONS(4966), [sym_catch] = ACTIONS(4966), [sym_class] = ACTIONS(4966), [sym_const] = ACTIONS(4966), [sym_continue] = ACTIONS(4966), [sym_debug] = ACTIONS(4966), [sym_default] = ACTIONS(4966), [sym_delegate] = ACTIONS(4966), [sym_delete] = ACTIONS(4966), [sym_deprecated] = ACTIONS(4966), [sym_do] = ACTIONS(4966), [sym_else] = ACTIONS(4966), [sym_enum] = ACTIONS(4966), [sym_export] = ACTIONS(4966), [sym_extern] = ACTIONS(4966), [sym_final] = ACTIONS(4966), [sym_finally] = ACTIONS(4966), [sym_for] = ACTIONS(4966), [sym_foreach] = ACTIONS(4966), [sym_foreach_reverse] = ACTIONS(4966), [sym_function] = ACTIONS(4966), [sym_goto] = ACTIONS(4966), [sym_if] = ACTIONS(4966), [sym_immutable] = ACTIONS(4966), [sym_import] = ACTIONS(4966), [sym_in] = ACTIONS(4966), [sym_inout] = ACTIONS(4966), [sym_interface] = ACTIONS(4966), [sym_invariant] = ACTIONS(4966), [sym_is] = ACTIONS(4966), [sym_mixin] = ACTIONS(4966), [sym_new] = ACTIONS(4966), [sym_nothrow] = ACTIONS(4966), [sym_out] = ACTIONS(4966), [sym_override] = ACTIONS(4966), [sym_package] = ACTIONS(4966), [sym_pragma] = ACTIONS(4966), [sym_private] = ACTIONS(4966), [sym_protected] = ACTIONS(4966), [sym_public] = ACTIONS(4966), [sym_pure] = ACTIONS(4966), [sym_ref] = ACTIONS(4966), [sym_return] = ACTIONS(4966), [sym_scope] = ACTIONS(4966), [sym_shared] = ACTIONS(4966), [sym_static] = ACTIONS(4966), [sym_struct] = ACTIONS(4966), [sym_switch] = ACTIONS(4966), [sym_synchronized] = ACTIONS(4966), [sym_template] = ACTIONS(4966), [sym_throw] = ACTIONS(4966), [sym_try] = ACTIONS(4966), [sym_typeid] = ACTIONS(4966), [sym_typeof] = ACTIONS(4966), [sym_union] = ACTIONS(4966), [sym_unittest] = ACTIONS(4966), [sym_version] = ACTIONS(4966), [sym_while] = ACTIONS(4966), [sym_with] = ACTIONS(4966), [sym_gshared] = ACTIONS(4966), [sym_traits] = ACTIONS(4966), [sym_vector] = ACTIONS(4966), [sym_void] = ACTIONS(4966), [anon_sym_BQUOTE] = ACTIONS(4968), [anon_sym_r_DQUOTE] = ACTIONS(4968), [anon_sym_x_DQUOTE] = ACTIONS(4968), [anon_sym_DQUOTE] = ACTIONS(4968), [anon_sym_i_BQUOTE] = ACTIONS(4968), [anon_sym_i_DQUOTE] = ACTIONS(4968), [anon_sym_iq_LBRACE] = ACTIONS(4968), [aux_sym_char_literal_token1] = ACTIONS(4968), [anon_sym_SQUOTE] = ACTIONS(4966), [anon_sym___DATE__] = ACTIONS(4966), [anon_sym___FILE__] = ACTIONS(4966), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4966), [anon_sym___FUNCTION__] = ACTIONS(4966), [anon_sym___LINE__] = ACTIONS(4966), [anon_sym___MODULE__] = ACTIONS(4966), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4966), [anon_sym___TIME__] = ACTIONS(4966), [anon_sym___TIMESTAMP__] = ACTIONS(4966), [anon_sym___VENDOR__] = ACTIONS(4966), [anon_sym___VERSION__] = ACTIONS(4966), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4968), [sym_float_literal] = ACTIONS(4968), [sym__string] = ACTIONS(4968), }, [1529] = { [sym_identifier] = ACTIONS(4970), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4972), [anon_sym_RBRACE] = ACTIONS(4972), [anon_sym_LBRACE] = ACTIONS(4972), [anon_sym_DOT] = ACTIONS(4972), [anon_sym_AMP] = ACTIONS(4972), [anon_sym_DASH] = ACTIONS(4970), [anon_sym_DASH_DASH] = ACTIONS(4972), [anon_sym_PLUS] = ACTIONS(4970), [anon_sym_PLUS_PLUS] = ACTIONS(4972), [anon_sym_BANG] = ACTIONS(4972), [anon_sym_LPAREN] = ACTIONS(4972), [anon_sym_RPAREN] = ACTIONS(4972), [anon_sym_LBRACK] = ACTIONS(4972), [anon_sym_SEMI] = ACTIONS(4972), [anon_sym_DOLLAR] = ACTIONS(4972), [anon_sym_STAR] = ACTIONS(4972), [anon_sym_TILDE] = ACTIONS(4972), [anon_sym_AT] = ACTIONS(4972), [sym_bool] = ACTIONS(4970), [sym_byte] = ACTIONS(4970), [sym_ubyte] = ACTIONS(4970), [sym_char] = ACTIONS(4970), [sym_short] = ACTIONS(4970), [sym_ushort] = ACTIONS(4970), [sym_int] = ACTIONS(4970), [sym_uint] = ACTIONS(4970), [sym_long] = ACTIONS(4970), [sym_ulong] = ACTIONS(4970), [sym_cent] = ACTIONS(4970), [sym_ucent] = ACTIONS(4970), [sym_wchar] = ACTIONS(4970), [sym_dchar] = ACTIONS(4970), [sym_float] = ACTIONS(4970), [sym_double] = ACTIONS(4970), [sym_real] = ACTIONS(4970), [sym_ifloat] = ACTIONS(4970), [sym_idouble] = ACTIONS(4970), [sym_ireal] = ACTIONS(4970), [sym_cfloat] = ACTIONS(4970), [sym_cdouble] = ACTIONS(4970), [sym_creal] = ACTIONS(4970), [sym_size_t] = ACTIONS(4970), [sym_ptrdiff_t] = ACTIONS(4970), [sym_string] = ACTIONS(4970), [sym_cstring] = ACTIONS(4970), [sym_dstring] = ACTIONS(4970), [sym_wstring] = ACTIONS(4970), [sym_noreturn] = ACTIONS(4970), [sym_true] = ACTIONS(4970), [sym_false] = ACTIONS(4970), [sym_null] = ACTIONS(4970), [sym_super] = ACTIONS(4970), [sym_this] = ACTIONS(4970), [sym_abstract] = ACTIONS(4970), [sym_alias] = ACTIONS(4970), [sym_align] = ACTIONS(4970), [sym_asm] = ACTIONS(4970), [sym_assert] = ACTIONS(4970), [sym_auto] = ACTIONS(4970), [sym_break] = ACTIONS(4970), [sym_case] = ACTIONS(4970), [sym_cast] = ACTIONS(4970), [sym_catch] = ACTIONS(4970), [sym_class] = ACTIONS(4970), [sym_const] = ACTIONS(4970), [sym_continue] = ACTIONS(4970), [sym_debug] = ACTIONS(4970), [sym_default] = ACTIONS(4970), [sym_delegate] = ACTIONS(4970), [sym_delete] = ACTIONS(4970), [sym_deprecated] = ACTIONS(4970), [sym_do] = ACTIONS(4970), [sym_else] = ACTIONS(4970), [sym_enum] = ACTIONS(4970), [sym_export] = ACTIONS(4970), [sym_extern] = ACTIONS(4970), [sym_final] = ACTIONS(4970), [sym_finally] = ACTIONS(4970), [sym_for] = ACTIONS(4970), [sym_foreach] = ACTIONS(4970), [sym_foreach_reverse] = ACTIONS(4970), [sym_function] = ACTIONS(4970), [sym_goto] = ACTIONS(4970), [sym_if] = ACTIONS(4970), [sym_immutable] = ACTIONS(4970), [sym_import] = ACTIONS(4970), [sym_in] = ACTIONS(4970), [sym_inout] = ACTIONS(4970), [sym_interface] = ACTIONS(4970), [sym_invariant] = ACTIONS(4970), [sym_is] = ACTIONS(4970), [sym_mixin] = ACTIONS(4970), [sym_new] = ACTIONS(4970), [sym_nothrow] = ACTIONS(4970), [sym_out] = ACTIONS(4970), [sym_override] = ACTIONS(4970), [sym_package] = ACTIONS(4970), [sym_pragma] = ACTIONS(4970), [sym_private] = ACTIONS(4970), [sym_protected] = ACTIONS(4970), [sym_public] = ACTIONS(4970), [sym_pure] = ACTIONS(4970), [sym_ref] = ACTIONS(4970), [sym_return] = ACTIONS(4970), [sym_scope] = ACTIONS(4970), [sym_shared] = ACTIONS(4970), [sym_static] = ACTIONS(4970), [sym_struct] = ACTIONS(4970), [sym_switch] = ACTIONS(4970), [sym_synchronized] = ACTIONS(4970), [sym_template] = ACTIONS(4970), [sym_throw] = ACTIONS(4970), [sym_try] = ACTIONS(4970), [sym_typeid] = ACTIONS(4970), [sym_typeof] = ACTIONS(4970), [sym_union] = ACTIONS(4970), [sym_unittest] = ACTIONS(4970), [sym_version] = ACTIONS(4970), [sym_while] = ACTIONS(4970), [sym_with] = ACTIONS(4970), [sym_gshared] = ACTIONS(4970), [sym_traits] = ACTIONS(4970), [sym_vector] = ACTIONS(4970), [sym_void] = ACTIONS(4970), [anon_sym_BQUOTE] = ACTIONS(4972), [anon_sym_r_DQUOTE] = ACTIONS(4972), [anon_sym_x_DQUOTE] = ACTIONS(4972), [anon_sym_DQUOTE] = ACTIONS(4972), [anon_sym_i_BQUOTE] = ACTIONS(4972), [anon_sym_i_DQUOTE] = ACTIONS(4972), [anon_sym_iq_LBRACE] = ACTIONS(4972), [aux_sym_char_literal_token1] = ACTIONS(4972), [anon_sym_SQUOTE] = ACTIONS(4970), [anon_sym___DATE__] = ACTIONS(4970), [anon_sym___FILE__] = ACTIONS(4970), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4970), [anon_sym___FUNCTION__] = ACTIONS(4970), [anon_sym___LINE__] = ACTIONS(4970), [anon_sym___MODULE__] = ACTIONS(4970), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4970), [anon_sym___TIME__] = ACTIONS(4970), [anon_sym___TIMESTAMP__] = ACTIONS(4970), [anon_sym___VENDOR__] = ACTIONS(4970), [anon_sym___VERSION__] = ACTIONS(4970), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4972), [sym_float_literal] = ACTIONS(4972), [sym__string] = ACTIONS(4972), }, [1530] = { [sym_identifier] = ACTIONS(4974), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4976), [anon_sym_RBRACE] = ACTIONS(4976), [anon_sym_LBRACE] = ACTIONS(4976), [anon_sym_DOT] = ACTIONS(4976), [anon_sym_AMP] = ACTIONS(4976), [anon_sym_DASH] = ACTIONS(4974), [anon_sym_DASH_DASH] = ACTIONS(4976), [anon_sym_PLUS] = ACTIONS(4974), [anon_sym_PLUS_PLUS] = ACTIONS(4976), [anon_sym_BANG] = ACTIONS(4976), [anon_sym_LPAREN] = ACTIONS(4976), [anon_sym_RPAREN] = ACTIONS(4976), [anon_sym_LBRACK] = ACTIONS(4976), [anon_sym_SEMI] = ACTIONS(4976), [anon_sym_DOLLAR] = ACTIONS(4976), [anon_sym_STAR] = ACTIONS(4976), [anon_sym_TILDE] = ACTIONS(4976), [anon_sym_AT] = ACTIONS(4976), [sym_bool] = ACTIONS(4974), [sym_byte] = ACTIONS(4974), [sym_ubyte] = ACTIONS(4974), [sym_char] = ACTIONS(4974), [sym_short] = ACTIONS(4974), [sym_ushort] = ACTIONS(4974), [sym_int] = ACTIONS(4974), [sym_uint] = ACTIONS(4974), [sym_long] = ACTIONS(4974), [sym_ulong] = ACTIONS(4974), [sym_cent] = ACTIONS(4974), [sym_ucent] = ACTIONS(4974), [sym_wchar] = ACTIONS(4974), [sym_dchar] = ACTIONS(4974), [sym_float] = ACTIONS(4974), [sym_double] = ACTIONS(4974), [sym_real] = ACTIONS(4974), [sym_ifloat] = ACTIONS(4974), [sym_idouble] = ACTIONS(4974), [sym_ireal] = ACTIONS(4974), [sym_cfloat] = ACTIONS(4974), [sym_cdouble] = ACTIONS(4974), [sym_creal] = ACTIONS(4974), [sym_size_t] = ACTIONS(4974), [sym_ptrdiff_t] = ACTIONS(4974), [sym_string] = ACTIONS(4974), [sym_cstring] = ACTIONS(4974), [sym_dstring] = ACTIONS(4974), [sym_wstring] = ACTIONS(4974), [sym_noreturn] = ACTIONS(4974), [sym_true] = ACTIONS(4974), [sym_false] = ACTIONS(4974), [sym_null] = ACTIONS(4974), [sym_super] = ACTIONS(4974), [sym_this] = ACTIONS(4974), [sym_abstract] = ACTIONS(4974), [sym_alias] = ACTIONS(4974), [sym_align] = ACTIONS(4974), [sym_asm] = ACTIONS(4974), [sym_assert] = ACTIONS(4974), [sym_auto] = ACTIONS(4974), [sym_break] = ACTIONS(4974), [sym_case] = ACTIONS(4974), [sym_cast] = ACTIONS(4974), [sym_catch] = ACTIONS(4974), [sym_class] = ACTIONS(4974), [sym_const] = ACTIONS(4974), [sym_continue] = ACTIONS(4974), [sym_debug] = ACTIONS(4974), [sym_default] = ACTIONS(4974), [sym_delegate] = ACTIONS(4974), [sym_delete] = ACTIONS(4974), [sym_deprecated] = ACTIONS(4974), [sym_do] = ACTIONS(4974), [sym_else] = ACTIONS(4974), [sym_enum] = ACTIONS(4974), [sym_export] = ACTIONS(4974), [sym_extern] = ACTIONS(4974), [sym_final] = ACTIONS(4974), [sym_finally] = ACTIONS(4974), [sym_for] = ACTIONS(4974), [sym_foreach] = ACTIONS(4974), [sym_foreach_reverse] = ACTIONS(4974), [sym_function] = ACTIONS(4974), [sym_goto] = ACTIONS(4974), [sym_if] = ACTIONS(4974), [sym_immutable] = ACTIONS(4974), [sym_import] = ACTIONS(4974), [sym_in] = ACTIONS(4974), [sym_inout] = ACTIONS(4974), [sym_interface] = ACTIONS(4974), [sym_invariant] = ACTIONS(4974), [sym_is] = ACTIONS(4974), [sym_mixin] = ACTIONS(4974), [sym_new] = ACTIONS(4974), [sym_nothrow] = ACTIONS(4974), [sym_out] = ACTIONS(4974), [sym_override] = ACTIONS(4974), [sym_package] = ACTIONS(4974), [sym_pragma] = ACTIONS(4974), [sym_private] = ACTIONS(4974), [sym_protected] = ACTIONS(4974), [sym_public] = ACTIONS(4974), [sym_pure] = ACTIONS(4974), [sym_ref] = ACTIONS(4974), [sym_return] = ACTIONS(4974), [sym_scope] = ACTIONS(4974), [sym_shared] = ACTIONS(4974), [sym_static] = ACTIONS(4974), [sym_struct] = ACTIONS(4974), [sym_switch] = ACTIONS(4974), [sym_synchronized] = ACTIONS(4974), [sym_template] = ACTIONS(4974), [sym_throw] = ACTIONS(4974), [sym_try] = ACTIONS(4974), [sym_typeid] = ACTIONS(4974), [sym_typeof] = ACTIONS(4974), [sym_union] = ACTIONS(4974), [sym_unittest] = ACTIONS(4974), [sym_version] = ACTIONS(4974), [sym_while] = ACTIONS(4974), [sym_with] = ACTIONS(4974), [sym_gshared] = ACTIONS(4974), [sym_traits] = ACTIONS(4974), [sym_vector] = ACTIONS(4974), [sym_void] = ACTIONS(4974), [anon_sym_BQUOTE] = ACTIONS(4976), [anon_sym_r_DQUOTE] = ACTIONS(4976), [anon_sym_x_DQUOTE] = ACTIONS(4976), [anon_sym_DQUOTE] = ACTIONS(4976), [anon_sym_i_BQUOTE] = ACTIONS(4976), [anon_sym_i_DQUOTE] = ACTIONS(4976), [anon_sym_iq_LBRACE] = ACTIONS(4976), [aux_sym_char_literal_token1] = ACTIONS(4976), [anon_sym_SQUOTE] = ACTIONS(4974), [anon_sym___DATE__] = ACTIONS(4974), [anon_sym___FILE__] = ACTIONS(4974), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4974), [anon_sym___FUNCTION__] = ACTIONS(4974), [anon_sym___LINE__] = ACTIONS(4974), [anon_sym___MODULE__] = ACTIONS(4974), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4974), [anon_sym___TIME__] = ACTIONS(4974), [anon_sym___TIMESTAMP__] = ACTIONS(4974), [anon_sym___VENDOR__] = ACTIONS(4974), [anon_sym___VERSION__] = ACTIONS(4974), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4976), [sym_float_literal] = ACTIONS(4976), [sym__string] = ACTIONS(4976), }, [1531] = { [sym_identifier] = ACTIONS(4978), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4980), [anon_sym_RBRACE] = ACTIONS(4980), [anon_sym_LBRACE] = ACTIONS(4980), [anon_sym_DOT] = ACTIONS(4980), [anon_sym_AMP] = ACTIONS(4980), [anon_sym_DASH] = ACTIONS(4978), [anon_sym_DASH_DASH] = ACTIONS(4980), [anon_sym_PLUS] = ACTIONS(4978), [anon_sym_PLUS_PLUS] = ACTIONS(4980), [anon_sym_BANG] = ACTIONS(4980), [anon_sym_LPAREN] = ACTIONS(4980), [anon_sym_RPAREN] = ACTIONS(4980), [anon_sym_LBRACK] = ACTIONS(4980), [anon_sym_SEMI] = ACTIONS(4980), [anon_sym_DOLLAR] = ACTIONS(4980), [anon_sym_STAR] = ACTIONS(4980), [anon_sym_TILDE] = ACTIONS(4980), [anon_sym_AT] = ACTIONS(4980), [sym_bool] = ACTIONS(4978), [sym_byte] = ACTIONS(4978), [sym_ubyte] = ACTIONS(4978), [sym_char] = ACTIONS(4978), [sym_short] = ACTIONS(4978), [sym_ushort] = ACTIONS(4978), [sym_int] = ACTIONS(4978), [sym_uint] = ACTIONS(4978), [sym_long] = ACTIONS(4978), [sym_ulong] = ACTIONS(4978), [sym_cent] = ACTIONS(4978), [sym_ucent] = ACTIONS(4978), [sym_wchar] = ACTIONS(4978), [sym_dchar] = ACTIONS(4978), [sym_float] = ACTIONS(4978), [sym_double] = ACTIONS(4978), [sym_real] = ACTIONS(4978), [sym_ifloat] = ACTIONS(4978), [sym_idouble] = ACTIONS(4978), [sym_ireal] = ACTIONS(4978), [sym_cfloat] = ACTIONS(4978), [sym_cdouble] = ACTIONS(4978), [sym_creal] = ACTIONS(4978), [sym_size_t] = ACTIONS(4978), [sym_ptrdiff_t] = ACTIONS(4978), [sym_string] = ACTIONS(4978), [sym_cstring] = ACTIONS(4978), [sym_dstring] = ACTIONS(4978), [sym_wstring] = ACTIONS(4978), [sym_noreturn] = ACTIONS(4978), [sym_true] = ACTIONS(4978), [sym_false] = ACTIONS(4978), [sym_null] = ACTIONS(4978), [sym_super] = ACTIONS(4978), [sym_this] = ACTIONS(4978), [sym_abstract] = ACTIONS(4978), [sym_alias] = ACTIONS(4978), [sym_align] = ACTIONS(4978), [sym_asm] = ACTIONS(4978), [sym_assert] = ACTIONS(4978), [sym_auto] = ACTIONS(4978), [sym_break] = ACTIONS(4978), [sym_case] = ACTIONS(4978), [sym_cast] = ACTIONS(4978), [sym_catch] = ACTIONS(4978), [sym_class] = ACTIONS(4978), [sym_const] = ACTIONS(4978), [sym_continue] = ACTIONS(4978), [sym_debug] = ACTIONS(4978), [sym_default] = ACTIONS(4978), [sym_delegate] = ACTIONS(4978), [sym_delete] = ACTIONS(4978), [sym_deprecated] = ACTIONS(4978), [sym_do] = ACTIONS(4978), [sym_else] = ACTIONS(4978), [sym_enum] = ACTIONS(4978), [sym_export] = ACTIONS(4978), [sym_extern] = ACTIONS(4978), [sym_final] = ACTIONS(4978), [sym_finally] = ACTIONS(4978), [sym_for] = ACTIONS(4978), [sym_foreach] = ACTIONS(4978), [sym_foreach_reverse] = ACTIONS(4978), [sym_function] = ACTIONS(4978), [sym_goto] = ACTIONS(4978), [sym_if] = ACTIONS(4978), [sym_immutable] = ACTIONS(4978), [sym_import] = ACTIONS(4978), [sym_in] = ACTIONS(4978), [sym_inout] = ACTIONS(4978), [sym_interface] = ACTIONS(4978), [sym_invariant] = ACTIONS(4978), [sym_is] = ACTIONS(4978), [sym_mixin] = ACTIONS(4978), [sym_new] = ACTIONS(4978), [sym_nothrow] = ACTIONS(4978), [sym_out] = ACTIONS(4978), [sym_override] = ACTIONS(4978), [sym_package] = ACTIONS(4978), [sym_pragma] = ACTIONS(4978), [sym_private] = ACTIONS(4978), [sym_protected] = ACTIONS(4978), [sym_public] = ACTIONS(4978), [sym_pure] = ACTIONS(4978), [sym_ref] = ACTIONS(4978), [sym_return] = ACTIONS(4978), [sym_scope] = ACTIONS(4978), [sym_shared] = ACTIONS(4978), [sym_static] = ACTIONS(4978), [sym_struct] = ACTIONS(4978), [sym_switch] = ACTIONS(4978), [sym_synchronized] = ACTIONS(4978), [sym_template] = ACTIONS(4978), [sym_throw] = ACTIONS(4978), [sym_try] = ACTIONS(4978), [sym_typeid] = ACTIONS(4978), [sym_typeof] = ACTIONS(4978), [sym_union] = ACTIONS(4978), [sym_unittest] = ACTIONS(4978), [sym_version] = ACTIONS(4978), [sym_while] = ACTIONS(4978), [sym_with] = ACTIONS(4978), [sym_gshared] = ACTIONS(4978), [sym_traits] = ACTIONS(4978), [sym_vector] = ACTIONS(4978), [sym_void] = ACTIONS(4978), [anon_sym_BQUOTE] = ACTIONS(4980), [anon_sym_r_DQUOTE] = ACTIONS(4980), [anon_sym_x_DQUOTE] = ACTIONS(4980), [anon_sym_DQUOTE] = ACTIONS(4980), [anon_sym_i_BQUOTE] = ACTIONS(4980), [anon_sym_i_DQUOTE] = ACTIONS(4980), [anon_sym_iq_LBRACE] = ACTIONS(4980), [aux_sym_char_literal_token1] = ACTIONS(4980), [anon_sym_SQUOTE] = ACTIONS(4978), [anon_sym___DATE__] = ACTIONS(4978), [anon_sym___FILE__] = ACTIONS(4978), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4978), [anon_sym___FUNCTION__] = ACTIONS(4978), [anon_sym___LINE__] = ACTIONS(4978), [anon_sym___MODULE__] = ACTIONS(4978), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4978), [anon_sym___TIME__] = ACTIONS(4978), [anon_sym___TIMESTAMP__] = ACTIONS(4978), [anon_sym___VENDOR__] = ACTIONS(4978), [anon_sym___VERSION__] = ACTIONS(4978), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4980), [sym_float_literal] = ACTIONS(4980), [sym__string] = ACTIONS(4980), }, [1532] = { [sym_identifier] = ACTIONS(4982), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4984), [anon_sym_RBRACE] = ACTIONS(4984), [anon_sym_LBRACE] = ACTIONS(4984), [anon_sym_DOT] = ACTIONS(4984), [anon_sym_AMP] = ACTIONS(4984), [anon_sym_DASH] = ACTIONS(4982), [anon_sym_DASH_DASH] = ACTIONS(4984), [anon_sym_PLUS] = ACTIONS(4982), [anon_sym_PLUS_PLUS] = ACTIONS(4984), [anon_sym_BANG] = ACTIONS(4984), [anon_sym_LPAREN] = ACTIONS(4984), [anon_sym_RPAREN] = ACTIONS(4984), [anon_sym_LBRACK] = ACTIONS(4984), [anon_sym_SEMI] = ACTIONS(4984), [anon_sym_DOLLAR] = ACTIONS(4984), [anon_sym_STAR] = ACTIONS(4984), [anon_sym_TILDE] = ACTIONS(4984), [anon_sym_AT] = ACTIONS(4984), [sym_bool] = ACTIONS(4982), [sym_byte] = ACTIONS(4982), [sym_ubyte] = ACTIONS(4982), [sym_char] = ACTIONS(4982), [sym_short] = ACTIONS(4982), [sym_ushort] = ACTIONS(4982), [sym_int] = ACTIONS(4982), [sym_uint] = ACTIONS(4982), [sym_long] = ACTIONS(4982), [sym_ulong] = ACTIONS(4982), [sym_cent] = ACTIONS(4982), [sym_ucent] = ACTIONS(4982), [sym_wchar] = ACTIONS(4982), [sym_dchar] = ACTIONS(4982), [sym_float] = ACTIONS(4982), [sym_double] = ACTIONS(4982), [sym_real] = ACTIONS(4982), [sym_ifloat] = ACTIONS(4982), [sym_idouble] = ACTIONS(4982), [sym_ireal] = ACTIONS(4982), [sym_cfloat] = ACTIONS(4982), [sym_cdouble] = ACTIONS(4982), [sym_creal] = ACTIONS(4982), [sym_size_t] = ACTIONS(4982), [sym_ptrdiff_t] = ACTIONS(4982), [sym_string] = ACTIONS(4982), [sym_cstring] = ACTIONS(4982), [sym_dstring] = ACTIONS(4982), [sym_wstring] = ACTIONS(4982), [sym_noreturn] = ACTIONS(4982), [sym_true] = ACTIONS(4982), [sym_false] = ACTIONS(4982), [sym_null] = ACTIONS(4982), [sym_super] = ACTIONS(4982), [sym_this] = ACTIONS(4982), [sym_abstract] = ACTIONS(4982), [sym_alias] = ACTIONS(4982), [sym_align] = ACTIONS(4982), [sym_asm] = ACTIONS(4982), [sym_assert] = ACTIONS(4982), [sym_auto] = ACTIONS(4982), [sym_break] = ACTIONS(4982), [sym_case] = ACTIONS(4982), [sym_cast] = ACTIONS(4982), [sym_catch] = ACTIONS(4982), [sym_class] = ACTIONS(4982), [sym_const] = ACTIONS(4982), [sym_continue] = ACTIONS(4982), [sym_debug] = ACTIONS(4982), [sym_default] = ACTIONS(4982), [sym_delegate] = ACTIONS(4982), [sym_delete] = ACTIONS(4982), [sym_deprecated] = ACTIONS(4982), [sym_do] = ACTIONS(4982), [sym_else] = ACTIONS(4982), [sym_enum] = ACTIONS(4982), [sym_export] = ACTIONS(4982), [sym_extern] = ACTIONS(4982), [sym_final] = ACTIONS(4982), [sym_finally] = ACTIONS(4982), [sym_for] = ACTIONS(4982), [sym_foreach] = ACTIONS(4982), [sym_foreach_reverse] = ACTIONS(4982), [sym_function] = ACTIONS(4982), [sym_goto] = ACTIONS(4982), [sym_if] = ACTIONS(4982), [sym_immutable] = ACTIONS(4982), [sym_import] = ACTIONS(4982), [sym_in] = ACTIONS(4982), [sym_inout] = ACTIONS(4982), [sym_interface] = ACTIONS(4982), [sym_invariant] = ACTIONS(4982), [sym_is] = ACTIONS(4982), [sym_mixin] = ACTIONS(4982), [sym_new] = ACTIONS(4982), [sym_nothrow] = ACTIONS(4982), [sym_out] = ACTIONS(4982), [sym_override] = ACTIONS(4982), [sym_package] = ACTIONS(4982), [sym_pragma] = ACTIONS(4982), [sym_private] = ACTIONS(4982), [sym_protected] = ACTIONS(4982), [sym_public] = ACTIONS(4982), [sym_pure] = ACTIONS(4982), [sym_ref] = ACTIONS(4982), [sym_return] = ACTIONS(4982), [sym_scope] = ACTIONS(4982), [sym_shared] = ACTIONS(4982), [sym_static] = ACTIONS(4982), [sym_struct] = ACTIONS(4982), [sym_switch] = ACTIONS(4982), [sym_synchronized] = ACTIONS(4982), [sym_template] = ACTIONS(4982), [sym_throw] = ACTIONS(4982), [sym_try] = ACTIONS(4982), [sym_typeid] = ACTIONS(4982), [sym_typeof] = ACTIONS(4982), [sym_union] = ACTIONS(4982), [sym_unittest] = ACTIONS(4982), [sym_version] = ACTIONS(4982), [sym_while] = ACTIONS(4982), [sym_with] = ACTIONS(4982), [sym_gshared] = ACTIONS(4982), [sym_traits] = ACTIONS(4982), [sym_vector] = ACTIONS(4982), [sym_void] = ACTIONS(4982), [anon_sym_BQUOTE] = ACTIONS(4984), [anon_sym_r_DQUOTE] = ACTIONS(4984), [anon_sym_x_DQUOTE] = ACTIONS(4984), [anon_sym_DQUOTE] = ACTIONS(4984), [anon_sym_i_BQUOTE] = ACTIONS(4984), [anon_sym_i_DQUOTE] = ACTIONS(4984), [anon_sym_iq_LBRACE] = ACTIONS(4984), [aux_sym_char_literal_token1] = ACTIONS(4984), [anon_sym_SQUOTE] = ACTIONS(4982), [anon_sym___DATE__] = ACTIONS(4982), [anon_sym___FILE__] = ACTIONS(4982), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4982), [anon_sym___FUNCTION__] = ACTIONS(4982), [anon_sym___LINE__] = ACTIONS(4982), [anon_sym___MODULE__] = ACTIONS(4982), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4982), [anon_sym___TIME__] = ACTIONS(4982), [anon_sym___TIMESTAMP__] = ACTIONS(4982), [anon_sym___VENDOR__] = ACTIONS(4982), [anon_sym___VERSION__] = ACTIONS(4982), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4984), [sym_float_literal] = ACTIONS(4984), [sym__string] = ACTIONS(4984), }, [1533] = { [sym_identifier] = ACTIONS(4986), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4988), [anon_sym_RBRACE] = ACTIONS(4988), [anon_sym_LBRACE] = ACTIONS(4988), [anon_sym_DOT] = ACTIONS(4988), [anon_sym_AMP] = ACTIONS(4988), [anon_sym_DASH] = ACTIONS(4986), [anon_sym_DASH_DASH] = ACTIONS(4988), [anon_sym_PLUS] = ACTIONS(4986), [anon_sym_PLUS_PLUS] = ACTIONS(4988), [anon_sym_BANG] = ACTIONS(4988), [anon_sym_LPAREN] = ACTIONS(4988), [anon_sym_RPAREN] = ACTIONS(4988), [anon_sym_LBRACK] = ACTIONS(4988), [anon_sym_SEMI] = ACTIONS(4988), [anon_sym_DOLLAR] = ACTIONS(4988), [anon_sym_STAR] = ACTIONS(4988), [anon_sym_TILDE] = ACTIONS(4988), [anon_sym_AT] = ACTIONS(4988), [sym_bool] = ACTIONS(4986), [sym_byte] = ACTIONS(4986), [sym_ubyte] = ACTIONS(4986), [sym_char] = ACTIONS(4986), [sym_short] = ACTIONS(4986), [sym_ushort] = ACTIONS(4986), [sym_int] = ACTIONS(4986), [sym_uint] = ACTIONS(4986), [sym_long] = ACTIONS(4986), [sym_ulong] = ACTIONS(4986), [sym_cent] = ACTIONS(4986), [sym_ucent] = ACTIONS(4986), [sym_wchar] = ACTIONS(4986), [sym_dchar] = ACTIONS(4986), [sym_float] = ACTIONS(4986), [sym_double] = ACTIONS(4986), [sym_real] = ACTIONS(4986), [sym_ifloat] = ACTIONS(4986), [sym_idouble] = ACTIONS(4986), [sym_ireal] = ACTIONS(4986), [sym_cfloat] = ACTIONS(4986), [sym_cdouble] = ACTIONS(4986), [sym_creal] = ACTIONS(4986), [sym_size_t] = ACTIONS(4986), [sym_ptrdiff_t] = ACTIONS(4986), [sym_string] = ACTIONS(4986), [sym_cstring] = ACTIONS(4986), [sym_dstring] = ACTIONS(4986), [sym_wstring] = ACTIONS(4986), [sym_noreturn] = ACTIONS(4986), [sym_true] = ACTIONS(4986), [sym_false] = ACTIONS(4986), [sym_null] = ACTIONS(4986), [sym_super] = ACTIONS(4986), [sym_this] = ACTIONS(4986), [sym_abstract] = ACTIONS(4986), [sym_alias] = ACTIONS(4986), [sym_align] = ACTIONS(4986), [sym_asm] = ACTIONS(4986), [sym_assert] = ACTIONS(4986), [sym_auto] = ACTIONS(4986), [sym_break] = ACTIONS(4986), [sym_case] = ACTIONS(4986), [sym_cast] = ACTIONS(4986), [sym_catch] = ACTIONS(4986), [sym_class] = ACTIONS(4986), [sym_const] = ACTIONS(4986), [sym_continue] = ACTIONS(4986), [sym_debug] = ACTIONS(4986), [sym_default] = ACTIONS(4986), [sym_delegate] = ACTIONS(4986), [sym_delete] = ACTIONS(4986), [sym_deprecated] = ACTIONS(4986), [sym_do] = ACTIONS(4986), [sym_else] = ACTIONS(4986), [sym_enum] = ACTIONS(4986), [sym_export] = ACTIONS(4986), [sym_extern] = ACTIONS(4986), [sym_final] = ACTIONS(4986), [sym_finally] = ACTIONS(4986), [sym_for] = ACTIONS(4986), [sym_foreach] = ACTIONS(4986), [sym_foreach_reverse] = ACTIONS(4986), [sym_function] = ACTIONS(4986), [sym_goto] = ACTIONS(4986), [sym_if] = ACTIONS(4986), [sym_immutable] = ACTIONS(4986), [sym_import] = ACTIONS(4986), [sym_in] = ACTIONS(4986), [sym_inout] = ACTIONS(4986), [sym_interface] = ACTIONS(4986), [sym_invariant] = ACTIONS(4986), [sym_is] = ACTIONS(4986), [sym_mixin] = ACTIONS(4986), [sym_new] = ACTIONS(4986), [sym_nothrow] = ACTIONS(4986), [sym_out] = ACTIONS(4986), [sym_override] = ACTIONS(4986), [sym_package] = ACTIONS(4986), [sym_pragma] = ACTIONS(4986), [sym_private] = ACTIONS(4986), [sym_protected] = ACTIONS(4986), [sym_public] = ACTIONS(4986), [sym_pure] = ACTIONS(4986), [sym_ref] = ACTIONS(4986), [sym_return] = ACTIONS(4986), [sym_scope] = ACTIONS(4986), [sym_shared] = ACTIONS(4986), [sym_static] = ACTIONS(4986), [sym_struct] = ACTIONS(4986), [sym_switch] = ACTIONS(4986), [sym_synchronized] = ACTIONS(4986), [sym_template] = ACTIONS(4986), [sym_throw] = ACTIONS(4986), [sym_try] = ACTIONS(4986), [sym_typeid] = ACTIONS(4986), [sym_typeof] = ACTIONS(4986), [sym_union] = ACTIONS(4986), [sym_unittest] = ACTIONS(4986), [sym_version] = ACTIONS(4986), [sym_while] = ACTIONS(4986), [sym_with] = ACTIONS(4986), [sym_gshared] = ACTIONS(4986), [sym_traits] = ACTIONS(4986), [sym_vector] = ACTIONS(4986), [sym_void] = ACTIONS(4986), [anon_sym_BQUOTE] = ACTIONS(4988), [anon_sym_r_DQUOTE] = ACTIONS(4988), [anon_sym_x_DQUOTE] = ACTIONS(4988), [anon_sym_DQUOTE] = ACTIONS(4988), [anon_sym_i_BQUOTE] = ACTIONS(4988), [anon_sym_i_DQUOTE] = ACTIONS(4988), [anon_sym_iq_LBRACE] = ACTIONS(4988), [aux_sym_char_literal_token1] = ACTIONS(4988), [anon_sym_SQUOTE] = ACTIONS(4986), [anon_sym___DATE__] = ACTIONS(4986), [anon_sym___FILE__] = ACTIONS(4986), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4986), [anon_sym___FUNCTION__] = ACTIONS(4986), [anon_sym___LINE__] = ACTIONS(4986), [anon_sym___MODULE__] = ACTIONS(4986), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4986), [anon_sym___TIME__] = ACTIONS(4986), [anon_sym___TIMESTAMP__] = ACTIONS(4986), [anon_sym___VENDOR__] = ACTIONS(4986), [anon_sym___VERSION__] = ACTIONS(4986), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4988), [sym_float_literal] = ACTIONS(4988), [sym__string] = ACTIONS(4988), }, [1534] = { [sym_identifier] = ACTIONS(4990), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4992), [anon_sym_RBRACE] = ACTIONS(4992), [anon_sym_LBRACE] = ACTIONS(4992), [anon_sym_DOT] = ACTIONS(4992), [anon_sym_AMP] = ACTIONS(4992), [anon_sym_DASH] = ACTIONS(4990), [anon_sym_DASH_DASH] = ACTIONS(4992), [anon_sym_PLUS] = ACTIONS(4990), [anon_sym_PLUS_PLUS] = ACTIONS(4992), [anon_sym_BANG] = ACTIONS(4992), [anon_sym_LPAREN] = ACTIONS(4992), [anon_sym_RPAREN] = ACTIONS(4992), [anon_sym_LBRACK] = ACTIONS(4992), [anon_sym_SEMI] = ACTIONS(4992), [anon_sym_DOLLAR] = ACTIONS(4992), [anon_sym_STAR] = ACTIONS(4992), [anon_sym_TILDE] = ACTIONS(4992), [anon_sym_AT] = ACTIONS(4992), [sym_bool] = ACTIONS(4990), [sym_byte] = ACTIONS(4990), [sym_ubyte] = ACTIONS(4990), [sym_char] = ACTIONS(4990), [sym_short] = ACTIONS(4990), [sym_ushort] = ACTIONS(4990), [sym_int] = ACTIONS(4990), [sym_uint] = ACTIONS(4990), [sym_long] = ACTIONS(4990), [sym_ulong] = ACTIONS(4990), [sym_cent] = ACTIONS(4990), [sym_ucent] = ACTIONS(4990), [sym_wchar] = ACTIONS(4990), [sym_dchar] = ACTIONS(4990), [sym_float] = ACTIONS(4990), [sym_double] = ACTIONS(4990), [sym_real] = ACTIONS(4990), [sym_ifloat] = ACTIONS(4990), [sym_idouble] = ACTIONS(4990), [sym_ireal] = ACTIONS(4990), [sym_cfloat] = ACTIONS(4990), [sym_cdouble] = ACTIONS(4990), [sym_creal] = ACTIONS(4990), [sym_size_t] = ACTIONS(4990), [sym_ptrdiff_t] = ACTIONS(4990), [sym_string] = ACTIONS(4990), [sym_cstring] = ACTIONS(4990), [sym_dstring] = ACTIONS(4990), [sym_wstring] = ACTIONS(4990), [sym_noreturn] = ACTIONS(4990), [sym_true] = ACTIONS(4990), [sym_false] = ACTIONS(4990), [sym_null] = ACTIONS(4990), [sym_super] = ACTIONS(4990), [sym_this] = ACTIONS(4990), [sym_abstract] = ACTIONS(4990), [sym_alias] = ACTIONS(4990), [sym_align] = ACTIONS(4990), [sym_asm] = ACTIONS(4990), [sym_assert] = ACTIONS(4990), [sym_auto] = ACTIONS(4990), [sym_break] = ACTIONS(4990), [sym_case] = ACTIONS(4990), [sym_cast] = ACTIONS(4990), [sym_catch] = ACTIONS(4990), [sym_class] = ACTIONS(4990), [sym_const] = ACTIONS(4990), [sym_continue] = ACTIONS(4990), [sym_debug] = ACTIONS(4990), [sym_default] = ACTIONS(4990), [sym_delegate] = ACTIONS(4990), [sym_delete] = ACTIONS(4990), [sym_deprecated] = ACTIONS(4990), [sym_do] = ACTIONS(4990), [sym_else] = ACTIONS(4990), [sym_enum] = ACTIONS(4990), [sym_export] = ACTIONS(4990), [sym_extern] = ACTIONS(4990), [sym_final] = ACTIONS(4990), [sym_finally] = ACTIONS(4990), [sym_for] = ACTIONS(4990), [sym_foreach] = ACTIONS(4990), [sym_foreach_reverse] = ACTIONS(4990), [sym_function] = ACTIONS(4990), [sym_goto] = ACTIONS(4990), [sym_if] = ACTIONS(4990), [sym_immutable] = ACTIONS(4990), [sym_import] = ACTIONS(4990), [sym_in] = ACTIONS(4990), [sym_inout] = ACTIONS(4990), [sym_interface] = ACTIONS(4990), [sym_invariant] = ACTIONS(4990), [sym_is] = ACTIONS(4990), [sym_mixin] = ACTIONS(4990), [sym_new] = ACTIONS(4990), [sym_nothrow] = ACTIONS(4990), [sym_out] = ACTIONS(4990), [sym_override] = ACTIONS(4990), [sym_package] = ACTIONS(4990), [sym_pragma] = ACTIONS(4990), [sym_private] = ACTIONS(4990), [sym_protected] = ACTIONS(4990), [sym_public] = ACTIONS(4990), [sym_pure] = ACTIONS(4990), [sym_ref] = ACTIONS(4990), [sym_return] = ACTIONS(4990), [sym_scope] = ACTIONS(4990), [sym_shared] = ACTIONS(4990), [sym_static] = ACTIONS(4990), [sym_struct] = ACTIONS(4990), [sym_switch] = ACTIONS(4990), [sym_synchronized] = ACTIONS(4990), [sym_template] = ACTIONS(4990), [sym_throw] = ACTIONS(4990), [sym_try] = ACTIONS(4990), [sym_typeid] = ACTIONS(4990), [sym_typeof] = ACTIONS(4990), [sym_union] = ACTIONS(4990), [sym_unittest] = ACTIONS(4990), [sym_version] = ACTIONS(4990), [sym_while] = ACTIONS(4990), [sym_with] = ACTIONS(4990), [sym_gshared] = ACTIONS(4990), [sym_traits] = ACTIONS(4990), [sym_vector] = ACTIONS(4990), [sym_void] = ACTIONS(4990), [anon_sym_BQUOTE] = ACTIONS(4992), [anon_sym_r_DQUOTE] = ACTIONS(4992), [anon_sym_x_DQUOTE] = ACTIONS(4992), [anon_sym_DQUOTE] = ACTIONS(4992), [anon_sym_i_BQUOTE] = ACTIONS(4992), [anon_sym_i_DQUOTE] = ACTIONS(4992), [anon_sym_iq_LBRACE] = ACTIONS(4992), [aux_sym_char_literal_token1] = ACTIONS(4992), [anon_sym_SQUOTE] = ACTIONS(4990), [anon_sym___DATE__] = ACTIONS(4990), [anon_sym___FILE__] = ACTIONS(4990), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4990), [anon_sym___FUNCTION__] = ACTIONS(4990), [anon_sym___LINE__] = ACTIONS(4990), [anon_sym___MODULE__] = ACTIONS(4990), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4990), [anon_sym___TIME__] = ACTIONS(4990), [anon_sym___TIMESTAMP__] = ACTIONS(4990), [anon_sym___VENDOR__] = ACTIONS(4990), [anon_sym___VERSION__] = ACTIONS(4990), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4992), [sym_float_literal] = ACTIONS(4992), [sym__string] = ACTIONS(4992), }, [1535] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_RBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [anon_sym_AT] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_abstract] = ACTIONS(4640), [sym_alias] = ACTIONS(4640), [sym_align] = ACTIONS(4640), [sym_asm] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_break] = ACTIONS(4640), [sym_case] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_catch] = ACTIONS(4640), [sym_class] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_continue] = ACTIONS(4640), [sym_debug] = ACTIONS(4640), [sym_default] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_deprecated] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(4994), [sym_enum] = ACTIONS(4640), [sym_export] = ACTIONS(4640), [sym_extern] = ACTIONS(4640), [sym_final] = ACTIONS(4640), [sym_finally] = ACTIONS(4640), [sym_for] = ACTIONS(4640), [sym_foreach] = ACTIONS(4640), [sym_foreach_reverse] = ACTIONS(4640), [sym_function] = ACTIONS(4640), [sym_goto] = ACTIONS(4640), [sym_if] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_interface] = ACTIONS(4640), [sym_invariant] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_nothrow] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_override] = ACTIONS(4640), [sym_package] = ACTIONS(4640), [sym_pragma] = ACTIONS(4640), [sym_private] = ACTIONS(4640), [sym_protected] = ACTIONS(4640), [sym_public] = ACTIONS(4640), [sym_pure] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_return] = ACTIONS(4640), [sym_scope] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_static] = ACTIONS(4640), [sym_struct] = ACTIONS(4640), [sym_switch] = ACTIONS(4640), [sym_synchronized] = ACTIONS(4640), [sym_template] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_try] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_union] = ACTIONS(4640), [sym_unittest] = ACTIONS(4640), [sym_version] = ACTIONS(4640), [sym_while] = ACTIONS(4640), [sym_with] = ACTIONS(4640), [sym_gshared] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [1536] = { [sym_identifier] = ACTIONS(4996), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4998), [anon_sym_RBRACE] = ACTIONS(4998), [anon_sym_LBRACE] = ACTIONS(4998), [anon_sym_DOT] = ACTIONS(4998), [anon_sym_AMP] = ACTIONS(4998), [anon_sym_DASH] = ACTIONS(4996), [anon_sym_DASH_DASH] = ACTIONS(4998), [anon_sym_PLUS] = ACTIONS(4996), [anon_sym_PLUS_PLUS] = ACTIONS(4998), [anon_sym_BANG] = ACTIONS(4998), [anon_sym_LPAREN] = ACTIONS(4998), [anon_sym_RPAREN] = ACTIONS(4998), [anon_sym_LBRACK] = ACTIONS(4998), [anon_sym_SEMI] = ACTIONS(4998), [anon_sym_DOLLAR] = ACTIONS(4998), [anon_sym_STAR] = ACTIONS(4998), [anon_sym_TILDE] = ACTIONS(4998), [anon_sym_AT] = ACTIONS(4998), [sym_bool] = ACTIONS(4996), [sym_byte] = ACTIONS(4996), [sym_ubyte] = ACTIONS(4996), [sym_char] = ACTIONS(4996), [sym_short] = ACTIONS(4996), [sym_ushort] = ACTIONS(4996), [sym_int] = ACTIONS(4996), [sym_uint] = ACTIONS(4996), [sym_long] = ACTIONS(4996), [sym_ulong] = ACTIONS(4996), [sym_cent] = ACTIONS(4996), [sym_ucent] = ACTIONS(4996), [sym_wchar] = ACTIONS(4996), [sym_dchar] = ACTIONS(4996), [sym_float] = ACTIONS(4996), [sym_double] = ACTIONS(4996), [sym_real] = ACTIONS(4996), [sym_ifloat] = ACTIONS(4996), [sym_idouble] = ACTIONS(4996), [sym_ireal] = ACTIONS(4996), [sym_cfloat] = ACTIONS(4996), [sym_cdouble] = ACTIONS(4996), [sym_creal] = ACTIONS(4996), [sym_size_t] = ACTIONS(4996), [sym_ptrdiff_t] = ACTIONS(4996), [sym_string] = ACTIONS(4996), [sym_cstring] = ACTIONS(4996), [sym_dstring] = ACTIONS(4996), [sym_wstring] = ACTIONS(4996), [sym_noreturn] = ACTIONS(4996), [sym_true] = ACTIONS(4996), [sym_false] = ACTIONS(4996), [sym_null] = ACTIONS(4996), [sym_super] = ACTIONS(4996), [sym_this] = ACTIONS(4996), [sym_abstract] = ACTIONS(4996), [sym_alias] = ACTIONS(4996), [sym_align] = ACTIONS(4996), [sym_asm] = ACTIONS(4996), [sym_assert] = ACTIONS(4996), [sym_auto] = ACTIONS(4996), [sym_break] = ACTIONS(4996), [sym_case] = ACTIONS(4996), [sym_cast] = ACTIONS(4996), [sym_catch] = ACTIONS(4996), [sym_class] = ACTIONS(4996), [sym_const] = ACTIONS(4996), [sym_continue] = ACTIONS(4996), [sym_debug] = ACTIONS(4996), [sym_default] = ACTIONS(4996), [sym_delegate] = ACTIONS(4996), [sym_delete] = ACTIONS(4996), [sym_deprecated] = ACTIONS(4996), [sym_do] = ACTIONS(4996), [sym_else] = ACTIONS(4996), [sym_enum] = ACTIONS(4996), [sym_export] = ACTIONS(4996), [sym_extern] = ACTIONS(4996), [sym_final] = ACTIONS(4996), [sym_finally] = ACTIONS(4996), [sym_for] = ACTIONS(4996), [sym_foreach] = ACTIONS(4996), [sym_foreach_reverse] = ACTIONS(4996), [sym_function] = ACTIONS(4996), [sym_goto] = ACTIONS(4996), [sym_if] = ACTIONS(4996), [sym_immutable] = ACTIONS(4996), [sym_import] = ACTIONS(4996), [sym_in] = ACTIONS(4996), [sym_inout] = ACTIONS(4996), [sym_interface] = ACTIONS(4996), [sym_invariant] = ACTIONS(4996), [sym_is] = ACTIONS(4996), [sym_mixin] = ACTIONS(4996), [sym_new] = ACTIONS(4996), [sym_nothrow] = ACTIONS(4996), [sym_out] = ACTIONS(4996), [sym_override] = ACTIONS(4996), [sym_package] = ACTIONS(4996), [sym_pragma] = ACTIONS(4996), [sym_private] = ACTIONS(4996), [sym_protected] = ACTIONS(4996), [sym_public] = ACTIONS(4996), [sym_pure] = ACTIONS(4996), [sym_ref] = ACTIONS(4996), [sym_return] = ACTIONS(4996), [sym_scope] = ACTIONS(4996), [sym_shared] = ACTIONS(4996), [sym_static] = ACTIONS(4996), [sym_struct] = ACTIONS(4996), [sym_switch] = ACTIONS(4996), [sym_synchronized] = ACTIONS(4996), [sym_template] = ACTIONS(4996), [sym_throw] = ACTIONS(4996), [sym_try] = ACTIONS(4996), [sym_typeid] = ACTIONS(4996), [sym_typeof] = ACTIONS(4996), [sym_union] = ACTIONS(4996), [sym_unittest] = ACTIONS(4996), [sym_version] = ACTIONS(4996), [sym_while] = ACTIONS(4996), [sym_with] = ACTIONS(4996), [sym_gshared] = ACTIONS(4996), [sym_traits] = ACTIONS(4996), [sym_vector] = ACTIONS(4996), [sym_void] = ACTIONS(4996), [anon_sym_BQUOTE] = ACTIONS(4998), [anon_sym_r_DQUOTE] = ACTIONS(4998), [anon_sym_x_DQUOTE] = ACTIONS(4998), [anon_sym_DQUOTE] = ACTIONS(4998), [anon_sym_i_BQUOTE] = ACTIONS(4998), [anon_sym_i_DQUOTE] = ACTIONS(4998), [anon_sym_iq_LBRACE] = ACTIONS(4998), [aux_sym_char_literal_token1] = ACTIONS(4998), [anon_sym_SQUOTE] = ACTIONS(4996), [anon_sym___DATE__] = ACTIONS(4996), [anon_sym___FILE__] = ACTIONS(4996), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4996), [anon_sym___FUNCTION__] = ACTIONS(4996), [anon_sym___LINE__] = ACTIONS(4996), [anon_sym___MODULE__] = ACTIONS(4996), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4996), [anon_sym___TIME__] = ACTIONS(4996), [anon_sym___TIMESTAMP__] = ACTIONS(4996), [anon_sym___VENDOR__] = ACTIONS(4996), [anon_sym___VERSION__] = ACTIONS(4996), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4998), [sym_float_literal] = ACTIONS(4998), [sym__string] = ACTIONS(4998), }, [1537] = { [sym_identifier] = ACTIONS(5000), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5002), [anon_sym_RBRACE] = ACTIONS(5002), [anon_sym_LBRACE] = ACTIONS(5002), [anon_sym_DOT] = ACTIONS(5002), [anon_sym_AMP] = ACTIONS(5002), [anon_sym_DASH] = ACTIONS(5000), [anon_sym_DASH_DASH] = ACTIONS(5002), [anon_sym_PLUS] = ACTIONS(5000), [anon_sym_PLUS_PLUS] = ACTIONS(5002), [anon_sym_BANG] = ACTIONS(5002), [anon_sym_LPAREN] = ACTIONS(5002), [anon_sym_RPAREN] = ACTIONS(5002), [anon_sym_LBRACK] = ACTIONS(5002), [anon_sym_SEMI] = ACTIONS(5002), [anon_sym_DOLLAR] = ACTIONS(5002), [anon_sym_STAR] = ACTIONS(5002), [anon_sym_TILDE] = ACTIONS(5002), [anon_sym_AT] = ACTIONS(5002), [sym_bool] = ACTIONS(5000), [sym_byte] = ACTIONS(5000), [sym_ubyte] = ACTIONS(5000), [sym_char] = ACTIONS(5000), [sym_short] = ACTIONS(5000), [sym_ushort] = ACTIONS(5000), [sym_int] = ACTIONS(5000), [sym_uint] = ACTIONS(5000), [sym_long] = ACTIONS(5000), [sym_ulong] = ACTIONS(5000), [sym_cent] = ACTIONS(5000), [sym_ucent] = ACTIONS(5000), [sym_wchar] = ACTIONS(5000), [sym_dchar] = ACTIONS(5000), [sym_float] = ACTIONS(5000), [sym_double] = ACTIONS(5000), [sym_real] = ACTIONS(5000), [sym_ifloat] = ACTIONS(5000), [sym_idouble] = ACTIONS(5000), [sym_ireal] = ACTIONS(5000), [sym_cfloat] = ACTIONS(5000), [sym_cdouble] = ACTIONS(5000), [sym_creal] = ACTIONS(5000), [sym_size_t] = ACTIONS(5000), [sym_ptrdiff_t] = ACTIONS(5000), [sym_string] = ACTIONS(5000), [sym_cstring] = ACTIONS(5000), [sym_dstring] = ACTIONS(5000), [sym_wstring] = ACTIONS(5000), [sym_noreturn] = ACTIONS(5000), [sym_true] = ACTIONS(5000), [sym_false] = ACTIONS(5000), [sym_null] = ACTIONS(5000), [sym_super] = ACTIONS(5000), [sym_this] = ACTIONS(5000), [sym_abstract] = ACTIONS(5000), [sym_alias] = ACTIONS(5000), [sym_align] = ACTIONS(5000), [sym_asm] = ACTIONS(5000), [sym_assert] = ACTIONS(5000), [sym_auto] = ACTIONS(5000), [sym_break] = ACTIONS(5000), [sym_case] = ACTIONS(5000), [sym_cast] = ACTIONS(5000), [sym_catch] = ACTIONS(5000), [sym_class] = ACTIONS(5000), [sym_const] = ACTIONS(5000), [sym_continue] = ACTIONS(5000), [sym_debug] = ACTIONS(5000), [sym_default] = ACTIONS(5000), [sym_delegate] = ACTIONS(5000), [sym_delete] = ACTIONS(5000), [sym_deprecated] = ACTIONS(5000), [sym_do] = ACTIONS(5000), [sym_else] = ACTIONS(5000), [sym_enum] = ACTIONS(5000), [sym_export] = ACTIONS(5000), [sym_extern] = ACTIONS(5000), [sym_final] = ACTIONS(5000), [sym_finally] = ACTIONS(5000), [sym_for] = ACTIONS(5000), [sym_foreach] = ACTIONS(5000), [sym_foreach_reverse] = ACTIONS(5000), [sym_function] = ACTIONS(5000), [sym_goto] = ACTIONS(5000), [sym_if] = ACTIONS(5000), [sym_immutable] = ACTIONS(5000), [sym_import] = ACTIONS(5000), [sym_in] = ACTIONS(5000), [sym_inout] = ACTIONS(5000), [sym_interface] = ACTIONS(5000), [sym_invariant] = ACTIONS(5000), [sym_is] = ACTIONS(5000), [sym_mixin] = ACTIONS(5000), [sym_new] = ACTIONS(5000), [sym_nothrow] = ACTIONS(5000), [sym_out] = ACTIONS(5000), [sym_override] = ACTIONS(5000), [sym_package] = ACTIONS(5000), [sym_pragma] = ACTIONS(5000), [sym_private] = ACTIONS(5000), [sym_protected] = ACTIONS(5000), [sym_public] = ACTIONS(5000), [sym_pure] = ACTIONS(5000), [sym_ref] = ACTIONS(5000), [sym_return] = ACTIONS(5000), [sym_scope] = ACTIONS(5000), [sym_shared] = ACTIONS(5000), [sym_static] = ACTIONS(5000), [sym_struct] = ACTIONS(5000), [sym_switch] = ACTIONS(5000), [sym_synchronized] = ACTIONS(5000), [sym_template] = ACTIONS(5000), [sym_throw] = ACTIONS(5000), [sym_try] = ACTIONS(5000), [sym_typeid] = ACTIONS(5000), [sym_typeof] = ACTIONS(5000), [sym_union] = ACTIONS(5000), [sym_unittest] = ACTIONS(5000), [sym_version] = ACTIONS(5000), [sym_while] = ACTIONS(5000), [sym_with] = ACTIONS(5000), [sym_gshared] = ACTIONS(5000), [sym_traits] = ACTIONS(5000), [sym_vector] = ACTIONS(5000), [sym_void] = ACTIONS(5000), [anon_sym_BQUOTE] = ACTIONS(5002), [anon_sym_r_DQUOTE] = ACTIONS(5002), [anon_sym_x_DQUOTE] = ACTIONS(5002), [anon_sym_DQUOTE] = ACTIONS(5002), [anon_sym_i_BQUOTE] = ACTIONS(5002), [anon_sym_i_DQUOTE] = ACTIONS(5002), [anon_sym_iq_LBRACE] = ACTIONS(5002), [aux_sym_char_literal_token1] = ACTIONS(5002), [anon_sym_SQUOTE] = ACTIONS(5000), [anon_sym___DATE__] = ACTIONS(5000), [anon_sym___FILE__] = ACTIONS(5000), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5000), [anon_sym___FUNCTION__] = ACTIONS(5000), [anon_sym___LINE__] = ACTIONS(5000), [anon_sym___MODULE__] = ACTIONS(5000), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5000), [anon_sym___TIME__] = ACTIONS(5000), [anon_sym___TIMESTAMP__] = ACTIONS(5000), [anon_sym___VENDOR__] = ACTIONS(5000), [anon_sym___VERSION__] = ACTIONS(5000), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5002), [sym_float_literal] = ACTIONS(5002), [sym__string] = ACTIONS(5002), }, [1538] = { [sym_identifier] = ACTIONS(5004), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5006), [anon_sym_RBRACE] = ACTIONS(5006), [anon_sym_LBRACE] = ACTIONS(5006), [anon_sym_DOT] = ACTIONS(5006), [anon_sym_AMP] = ACTIONS(5006), [anon_sym_DASH] = ACTIONS(5004), [anon_sym_DASH_DASH] = ACTIONS(5006), [anon_sym_PLUS] = ACTIONS(5004), [anon_sym_PLUS_PLUS] = ACTIONS(5006), [anon_sym_BANG] = ACTIONS(5006), [anon_sym_LPAREN] = ACTIONS(5006), [anon_sym_RPAREN] = ACTIONS(5006), [anon_sym_LBRACK] = ACTIONS(5006), [anon_sym_SEMI] = ACTIONS(5006), [anon_sym_DOLLAR] = ACTIONS(5006), [anon_sym_STAR] = ACTIONS(5006), [anon_sym_TILDE] = ACTIONS(5006), [anon_sym_AT] = ACTIONS(5006), [sym_bool] = ACTIONS(5004), [sym_byte] = ACTIONS(5004), [sym_ubyte] = ACTIONS(5004), [sym_char] = ACTIONS(5004), [sym_short] = ACTIONS(5004), [sym_ushort] = ACTIONS(5004), [sym_int] = ACTIONS(5004), [sym_uint] = ACTIONS(5004), [sym_long] = ACTIONS(5004), [sym_ulong] = ACTIONS(5004), [sym_cent] = ACTIONS(5004), [sym_ucent] = ACTIONS(5004), [sym_wchar] = ACTIONS(5004), [sym_dchar] = ACTIONS(5004), [sym_float] = ACTIONS(5004), [sym_double] = ACTIONS(5004), [sym_real] = ACTIONS(5004), [sym_ifloat] = ACTIONS(5004), [sym_idouble] = ACTIONS(5004), [sym_ireal] = ACTIONS(5004), [sym_cfloat] = ACTIONS(5004), [sym_cdouble] = ACTIONS(5004), [sym_creal] = ACTIONS(5004), [sym_size_t] = ACTIONS(5004), [sym_ptrdiff_t] = ACTIONS(5004), [sym_string] = ACTIONS(5004), [sym_cstring] = ACTIONS(5004), [sym_dstring] = ACTIONS(5004), [sym_wstring] = ACTIONS(5004), [sym_noreturn] = ACTIONS(5004), [sym_true] = ACTIONS(5004), [sym_false] = ACTIONS(5004), [sym_null] = ACTIONS(5004), [sym_super] = ACTIONS(5004), [sym_this] = ACTIONS(5004), [sym_abstract] = ACTIONS(5004), [sym_alias] = ACTIONS(5004), [sym_align] = ACTIONS(5004), [sym_asm] = ACTIONS(5004), [sym_assert] = ACTIONS(5004), [sym_auto] = ACTIONS(5004), [sym_break] = ACTIONS(5004), [sym_case] = ACTIONS(5004), [sym_cast] = ACTIONS(5004), [sym_catch] = ACTIONS(5004), [sym_class] = ACTIONS(5004), [sym_const] = ACTIONS(5004), [sym_continue] = ACTIONS(5004), [sym_debug] = ACTIONS(5004), [sym_default] = ACTIONS(5004), [sym_delegate] = ACTIONS(5004), [sym_delete] = ACTIONS(5004), [sym_deprecated] = ACTIONS(5004), [sym_do] = ACTIONS(5004), [sym_else] = ACTIONS(5004), [sym_enum] = ACTIONS(5004), [sym_export] = ACTIONS(5004), [sym_extern] = ACTIONS(5004), [sym_final] = ACTIONS(5004), [sym_finally] = ACTIONS(5004), [sym_for] = ACTIONS(5004), [sym_foreach] = ACTIONS(5004), [sym_foreach_reverse] = ACTIONS(5004), [sym_function] = ACTIONS(5004), [sym_goto] = ACTIONS(5004), [sym_if] = ACTIONS(5004), [sym_immutable] = ACTIONS(5004), [sym_import] = ACTIONS(5004), [sym_in] = ACTIONS(5004), [sym_inout] = ACTIONS(5004), [sym_interface] = ACTIONS(5004), [sym_invariant] = ACTIONS(5004), [sym_is] = ACTIONS(5004), [sym_mixin] = ACTIONS(5004), [sym_new] = ACTIONS(5004), [sym_nothrow] = ACTIONS(5004), [sym_out] = ACTIONS(5004), [sym_override] = ACTIONS(5004), [sym_package] = ACTIONS(5004), [sym_pragma] = ACTIONS(5004), [sym_private] = ACTIONS(5004), [sym_protected] = ACTIONS(5004), [sym_public] = ACTIONS(5004), [sym_pure] = ACTIONS(5004), [sym_ref] = ACTIONS(5004), [sym_return] = ACTIONS(5004), [sym_scope] = ACTIONS(5004), [sym_shared] = ACTIONS(5004), [sym_static] = ACTIONS(5004), [sym_struct] = ACTIONS(5004), [sym_switch] = ACTIONS(5004), [sym_synchronized] = ACTIONS(5004), [sym_template] = ACTIONS(5004), [sym_throw] = ACTIONS(5004), [sym_try] = ACTIONS(5004), [sym_typeid] = ACTIONS(5004), [sym_typeof] = ACTIONS(5004), [sym_union] = ACTIONS(5004), [sym_unittest] = ACTIONS(5004), [sym_version] = ACTIONS(5004), [sym_while] = ACTIONS(5004), [sym_with] = ACTIONS(5004), [sym_gshared] = ACTIONS(5004), [sym_traits] = ACTIONS(5004), [sym_vector] = ACTIONS(5004), [sym_void] = ACTIONS(5004), [anon_sym_BQUOTE] = ACTIONS(5006), [anon_sym_r_DQUOTE] = ACTIONS(5006), [anon_sym_x_DQUOTE] = ACTIONS(5006), [anon_sym_DQUOTE] = ACTIONS(5006), [anon_sym_i_BQUOTE] = ACTIONS(5006), [anon_sym_i_DQUOTE] = ACTIONS(5006), [anon_sym_iq_LBRACE] = ACTIONS(5006), [aux_sym_char_literal_token1] = ACTIONS(5006), [anon_sym_SQUOTE] = ACTIONS(5004), [anon_sym___DATE__] = ACTIONS(5004), [anon_sym___FILE__] = ACTIONS(5004), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5004), [anon_sym___FUNCTION__] = ACTIONS(5004), [anon_sym___LINE__] = ACTIONS(5004), [anon_sym___MODULE__] = ACTIONS(5004), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5004), [anon_sym___TIME__] = ACTIONS(5004), [anon_sym___TIMESTAMP__] = ACTIONS(5004), [anon_sym___VENDOR__] = ACTIONS(5004), [anon_sym___VERSION__] = ACTIONS(5004), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5006), [sym_float_literal] = ACTIONS(5006), [sym__string] = ACTIONS(5006), }, [1539] = { [sym_identifier] = ACTIONS(5008), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5010), [anon_sym_RBRACE] = ACTIONS(5010), [anon_sym_LBRACE] = ACTIONS(5010), [anon_sym_DOT] = ACTIONS(5010), [anon_sym_AMP] = ACTIONS(5010), [anon_sym_DASH] = ACTIONS(5008), [anon_sym_DASH_DASH] = ACTIONS(5010), [anon_sym_PLUS] = ACTIONS(5008), [anon_sym_PLUS_PLUS] = ACTIONS(5010), [anon_sym_BANG] = ACTIONS(5010), [anon_sym_LPAREN] = ACTIONS(5010), [anon_sym_RPAREN] = ACTIONS(5010), [anon_sym_LBRACK] = ACTIONS(5010), [anon_sym_SEMI] = ACTIONS(5010), [anon_sym_DOLLAR] = ACTIONS(5010), [anon_sym_STAR] = ACTIONS(5010), [anon_sym_TILDE] = ACTIONS(5010), [anon_sym_AT] = ACTIONS(5010), [sym_bool] = ACTIONS(5008), [sym_byte] = ACTIONS(5008), [sym_ubyte] = ACTIONS(5008), [sym_char] = ACTIONS(5008), [sym_short] = ACTIONS(5008), [sym_ushort] = ACTIONS(5008), [sym_int] = ACTIONS(5008), [sym_uint] = ACTIONS(5008), [sym_long] = ACTIONS(5008), [sym_ulong] = ACTIONS(5008), [sym_cent] = ACTIONS(5008), [sym_ucent] = ACTIONS(5008), [sym_wchar] = ACTIONS(5008), [sym_dchar] = ACTIONS(5008), [sym_float] = ACTIONS(5008), [sym_double] = ACTIONS(5008), [sym_real] = ACTIONS(5008), [sym_ifloat] = ACTIONS(5008), [sym_idouble] = ACTIONS(5008), [sym_ireal] = ACTIONS(5008), [sym_cfloat] = ACTIONS(5008), [sym_cdouble] = ACTIONS(5008), [sym_creal] = ACTIONS(5008), [sym_size_t] = ACTIONS(5008), [sym_ptrdiff_t] = ACTIONS(5008), [sym_string] = ACTIONS(5008), [sym_cstring] = ACTIONS(5008), [sym_dstring] = ACTIONS(5008), [sym_wstring] = ACTIONS(5008), [sym_noreturn] = ACTIONS(5008), [sym_true] = ACTIONS(5008), [sym_false] = ACTIONS(5008), [sym_null] = ACTIONS(5008), [sym_super] = ACTIONS(5008), [sym_this] = ACTIONS(5008), [sym_abstract] = ACTIONS(5008), [sym_alias] = ACTIONS(5008), [sym_align] = ACTIONS(5008), [sym_asm] = ACTIONS(5008), [sym_assert] = ACTIONS(5008), [sym_auto] = ACTIONS(5008), [sym_break] = ACTIONS(5008), [sym_case] = ACTIONS(5008), [sym_cast] = ACTIONS(5008), [sym_catch] = ACTIONS(5008), [sym_class] = ACTIONS(5008), [sym_const] = ACTIONS(5008), [sym_continue] = ACTIONS(5008), [sym_debug] = ACTIONS(5008), [sym_default] = ACTIONS(5008), [sym_delegate] = ACTIONS(5008), [sym_delete] = ACTIONS(5008), [sym_deprecated] = ACTIONS(5008), [sym_do] = ACTIONS(5008), [sym_else] = ACTIONS(5008), [sym_enum] = ACTIONS(5008), [sym_export] = ACTIONS(5008), [sym_extern] = ACTIONS(5008), [sym_final] = ACTIONS(5008), [sym_finally] = ACTIONS(5008), [sym_for] = ACTIONS(5008), [sym_foreach] = ACTIONS(5008), [sym_foreach_reverse] = ACTIONS(5008), [sym_function] = ACTIONS(5008), [sym_goto] = ACTIONS(5008), [sym_if] = ACTIONS(5008), [sym_immutable] = ACTIONS(5008), [sym_import] = ACTIONS(5008), [sym_in] = ACTIONS(5008), [sym_inout] = ACTIONS(5008), [sym_interface] = ACTIONS(5008), [sym_invariant] = ACTIONS(5008), [sym_is] = ACTIONS(5008), [sym_mixin] = ACTIONS(5008), [sym_new] = ACTIONS(5008), [sym_nothrow] = ACTIONS(5008), [sym_out] = ACTIONS(5008), [sym_override] = ACTIONS(5008), [sym_package] = ACTIONS(5008), [sym_pragma] = ACTIONS(5008), [sym_private] = ACTIONS(5008), [sym_protected] = ACTIONS(5008), [sym_public] = ACTIONS(5008), [sym_pure] = ACTIONS(5008), [sym_ref] = ACTIONS(5008), [sym_return] = ACTIONS(5008), [sym_scope] = ACTIONS(5008), [sym_shared] = ACTIONS(5008), [sym_static] = ACTIONS(5008), [sym_struct] = ACTIONS(5008), [sym_switch] = ACTIONS(5008), [sym_synchronized] = ACTIONS(5008), [sym_template] = ACTIONS(5008), [sym_throw] = ACTIONS(5008), [sym_try] = ACTIONS(5008), [sym_typeid] = ACTIONS(5008), [sym_typeof] = ACTIONS(5008), [sym_union] = ACTIONS(5008), [sym_unittest] = ACTIONS(5008), [sym_version] = ACTIONS(5008), [sym_while] = ACTIONS(5008), [sym_with] = ACTIONS(5008), [sym_gshared] = ACTIONS(5008), [sym_traits] = ACTIONS(5008), [sym_vector] = ACTIONS(5008), [sym_void] = ACTIONS(5008), [anon_sym_BQUOTE] = ACTIONS(5010), [anon_sym_r_DQUOTE] = ACTIONS(5010), [anon_sym_x_DQUOTE] = ACTIONS(5010), [anon_sym_DQUOTE] = ACTIONS(5010), [anon_sym_i_BQUOTE] = ACTIONS(5010), [anon_sym_i_DQUOTE] = ACTIONS(5010), [anon_sym_iq_LBRACE] = ACTIONS(5010), [aux_sym_char_literal_token1] = ACTIONS(5010), [anon_sym_SQUOTE] = ACTIONS(5008), [anon_sym___DATE__] = ACTIONS(5008), [anon_sym___FILE__] = ACTIONS(5008), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5008), [anon_sym___FUNCTION__] = ACTIONS(5008), [anon_sym___LINE__] = ACTIONS(5008), [anon_sym___MODULE__] = ACTIONS(5008), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5008), [anon_sym___TIME__] = ACTIONS(5008), [anon_sym___TIMESTAMP__] = ACTIONS(5008), [anon_sym___VENDOR__] = ACTIONS(5008), [anon_sym___VERSION__] = ACTIONS(5008), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5010), [sym_float_literal] = ACTIONS(5010), [sym__string] = ACTIONS(5010), }, [1540] = { [sym_identifier] = ACTIONS(5012), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5014), [anon_sym_RBRACE] = ACTIONS(5014), [anon_sym_LBRACE] = ACTIONS(5014), [anon_sym_DOT] = ACTIONS(5014), [anon_sym_AMP] = ACTIONS(5014), [anon_sym_DASH] = ACTIONS(5012), [anon_sym_DASH_DASH] = ACTIONS(5014), [anon_sym_PLUS] = ACTIONS(5012), [anon_sym_PLUS_PLUS] = ACTIONS(5014), [anon_sym_BANG] = ACTIONS(5014), [anon_sym_LPAREN] = ACTIONS(5014), [anon_sym_RPAREN] = ACTIONS(5014), [anon_sym_LBRACK] = ACTIONS(5014), [anon_sym_SEMI] = ACTIONS(5014), [anon_sym_DOLLAR] = ACTIONS(5014), [anon_sym_STAR] = ACTIONS(5014), [anon_sym_TILDE] = ACTIONS(5014), [anon_sym_AT] = ACTIONS(5014), [sym_bool] = ACTIONS(5012), [sym_byte] = ACTIONS(5012), [sym_ubyte] = ACTIONS(5012), [sym_char] = ACTIONS(5012), [sym_short] = ACTIONS(5012), [sym_ushort] = ACTIONS(5012), [sym_int] = ACTIONS(5012), [sym_uint] = ACTIONS(5012), [sym_long] = ACTIONS(5012), [sym_ulong] = ACTIONS(5012), [sym_cent] = ACTIONS(5012), [sym_ucent] = ACTIONS(5012), [sym_wchar] = ACTIONS(5012), [sym_dchar] = ACTIONS(5012), [sym_float] = ACTIONS(5012), [sym_double] = ACTIONS(5012), [sym_real] = ACTIONS(5012), [sym_ifloat] = ACTIONS(5012), [sym_idouble] = ACTIONS(5012), [sym_ireal] = ACTIONS(5012), [sym_cfloat] = ACTIONS(5012), [sym_cdouble] = ACTIONS(5012), [sym_creal] = ACTIONS(5012), [sym_size_t] = ACTIONS(5012), [sym_ptrdiff_t] = ACTIONS(5012), [sym_string] = ACTIONS(5012), [sym_cstring] = ACTIONS(5012), [sym_dstring] = ACTIONS(5012), [sym_wstring] = ACTIONS(5012), [sym_noreturn] = ACTIONS(5012), [sym_true] = ACTIONS(5012), [sym_false] = ACTIONS(5012), [sym_null] = ACTIONS(5012), [sym_super] = ACTIONS(5012), [sym_this] = ACTIONS(5012), [sym_abstract] = ACTIONS(5012), [sym_alias] = ACTIONS(5012), [sym_align] = ACTIONS(5012), [sym_asm] = ACTIONS(5012), [sym_assert] = ACTIONS(5012), [sym_auto] = ACTIONS(5012), [sym_break] = ACTIONS(5012), [sym_case] = ACTIONS(5012), [sym_cast] = ACTIONS(5012), [sym_catch] = ACTIONS(5012), [sym_class] = ACTIONS(5012), [sym_const] = ACTIONS(5012), [sym_continue] = ACTIONS(5012), [sym_debug] = ACTIONS(5012), [sym_default] = ACTIONS(5012), [sym_delegate] = ACTIONS(5012), [sym_delete] = ACTIONS(5012), [sym_deprecated] = ACTIONS(5012), [sym_do] = ACTIONS(5012), [sym_else] = ACTIONS(5012), [sym_enum] = ACTIONS(5012), [sym_export] = ACTIONS(5012), [sym_extern] = ACTIONS(5012), [sym_final] = ACTIONS(5012), [sym_finally] = ACTIONS(5012), [sym_for] = ACTIONS(5012), [sym_foreach] = ACTIONS(5012), [sym_foreach_reverse] = ACTIONS(5012), [sym_function] = ACTIONS(5012), [sym_goto] = ACTIONS(5012), [sym_if] = ACTIONS(5012), [sym_immutable] = ACTIONS(5012), [sym_import] = ACTIONS(5012), [sym_in] = ACTIONS(5012), [sym_inout] = ACTIONS(5012), [sym_interface] = ACTIONS(5012), [sym_invariant] = ACTIONS(5012), [sym_is] = ACTIONS(5012), [sym_mixin] = ACTIONS(5012), [sym_new] = ACTIONS(5012), [sym_nothrow] = ACTIONS(5012), [sym_out] = ACTIONS(5012), [sym_override] = ACTIONS(5012), [sym_package] = ACTIONS(5012), [sym_pragma] = ACTIONS(5012), [sym_private] = ACTIONS(5012), [sym_protected] = ACTIONS(5012), [sym_public] = ACTIONS(5012), [sym_pure] = ACTIONS(5012), [sym_ref] = ACTIONS(5012), [sym_return] = ACTIONS(5012), [sym_scope] = ACTIONS(5012), [sym_shared] = ACTIONS(5012), [sym_static] = ACTIONS(5012), [sym_struct] = ACTIONS(5012), [sym_switch] = ACTIONS(5012), [sym_synchronized] = ACTIONS(5012), [sym_template] = ACTIONS(5012), [sym_throw] = ACTIONS(5012), [sym_try] = ACTIONS(5012), [sym_typeid] = ACTIONS(5012), [sym_typeof] = ACTIONS(5012), [sym_union] = ACTIONS(5012), [sym_unittest] = ACTIONS(5012), [sym_version] = ACTIONS(5012), [sym_while] = ACTIONS(5012), [sym_with] = ACTIONS(5012), [sym_gshared] = ACTIONS(5012), [sym_traits] = ACTIONS(5012), [sym_vector] = ACTIONS(5012), [sym_void] = ACTIONS(5012), [anon_sym_BQUOTE] = ACTIONS(5014), [anon_sym_r_DQUOTE] = ACTIONS(5014), [anon_sym_x_DQUOTE] = ACTIONS(5014), [anon_sym_DQUOTE] = ACTIONS(5014), [anon_sym_i_BQUOTE] = ACTIONS(5014), [anon_sym_i_DQUOTE] = ACTIONS(5014), [anon_sym_iq_LBRACE] = ACTIONS(5014), [aux_sym_char_literal_token1] = ACTIONS(5014), [anon_sym_SQUOTE] = ACTIONS(5012), [anon_sym___DATE__] = ACTIONS(5012), [anon_sym___FILE__] = ACTIONS(5012), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5012), [anon_sym___FUNCTION__] = ACTIONS(5012), [anon_sym___LINE__] = ACTIONS(5012), [anon_sym___MODULE__] = ACTIONS(5012), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5012), [anon_sym___TIME__] = ACTIONS(5012), [anon_sym___TIMESTAMP__] = ACTIONS(5012), [anon_sym___VENDOR__] = ACTIONS(5012), [anon_sym___VERSION__] = ACTIONS(5012), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5014), [sym_float_literal] = ACTIONS(5014), [sym__string] = ACTIONS(5014), }, [1541] = { [sym_identifier] = ACTIONS(5016), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5018), [anon_sym_RBRACE] = ACTIONS(5018), [anon_sym_LBRACE] = ACTIONS(5018), [anon_sym_DOT] = ACTIONS(5018), [anon_sym_AMP] = ACTIONS(5018), [anon_sym_DASH] = ACTIONS(5016), [anon_sym_DASH_DASH] = ACTIONS(5018), [anon_sym_PLUS] = ACTIONS(5016), [anon_sym_PLUS_PLUS] = ACTIONS(5018), [anon_sym_BANG] = ACTIONS(5018), [anon_sym_LPAREN] = ACTIONS(5018), [anon_sym_RPAREN] = ACTIONS(5018), [anon_sym_LBRACK] = ACTIONS(5018), [anon_sym_SEMI] = ACTIONS(5018), [anon_sym_DOLLAR] = ACTIONS(5018), [anon_sym_STAR] = ACTIONS(5018), [anon_sym_TILDE] = ACTIONS(5018), [anon_sym_AT] = ACTIONS(5018), [sym_bool] = ACTIONS(5016), [sym_byte] = ACTIONS(5016), [sym_ubyte] = ACTIONS(5016), [sym_char] = ACTIONS(5016), [sym_short] = ACTIONS(5016), [sym_ushort] = ACTIONS(5016), [sym_int] = ACTIONS(5016), [sym_uint] = ACTIONS(5016), [sym_long] = ACTIONS(5016), [sym_ulong] = ACTIONS(5016), [sym_cent] = ACTIONS(5016), [sym_ucent] = ACTIONS(5016), [sym_wchar] = ACTIONS(5016), [sym_dchar] = ACTIONS(5016), [sym_float] = ACTIONS(5016), [sym_double] = ACTIONS(5016), [sym_real] = ACTIONS(5016), [sym_ifloat] = ACTIONS(5016), [sym_idouble] = ACTIONS(5016), [sym_ireal] = ACTIONS(5016), [sym_cfloat] = ACTIONS(5016), [sym_cdouble] = ACTIONS(5016), [sym_creal] = ACTIONS(5016), [sym_size_t] = ACTIONS(5016), [sym_ptrdiff_t] = ACTIONS(5016), [sym_string] = ACTIONS(5016), [sym_cstring] = ACTIONS(5016), [sym_dstring] = ACTIONS(5016), [sym_wstring] = ACTIONS(5016), [sym_noreturn] = ACTIONS(5016), [sym_true] = ACTIONS(5016), [sym_false] = ACTIONS(5016), [sym_null] = ACTIONS(5016), [sym_super] = ACTIONS(5016), [sym_this] = ACTIONS(5016), [sym_abstract] = ACTIONS(5016), [sym_alias] = ACTIONS(5016), [sym_align] = ACTIONS(5016), [sym_asm] = ACTIONS(5016), [sym_assert] = ACTIONS(5016), [sym_auto] = ACTIONS(5016), [sym_break] = ACTIONS(5016), [sym_case] = ACTIONS(5016), [sym_cast] = ACTIONS(5016), [sym_catch] = ACTIONS(5016), [sym_class] = ACTIONS(5016), [sym_const] = ACTIONS(5016), [sym_continue] = ACTIONS(5016), [sym_debug] = ACTIONS(5016), [sym_default] = ACTIONS(5016), [sym_delegate] = ACTIONS(5016), [sym_delete] = ACTIONS(5016), [sym_deprecated] = ACTIONS(5016), [sym_do] = ACTIONS(5016), [sym_else] = ACTIONS(5016), [sym_enum] = ACTIONS(5016), [sym_export] = ACTIONS(5016), [sym_extern] = ACTIONS(5016), [sym_final] = ACTIONS(5016), [sym_finally] = ACTIONS(5016), [sym_for] = ACTIONS(5016), [sym_foreach] = ACTIONS(5016), [sym_foreach_reverse] = ACTIONS(5016), [sym_function] = ACTIONS(5016), [sym_goto] = ACTIONS(5016), [sym_if] = ACTIONS(5016), [sym_immutable] = ACTIONS(5016), [sym_import] = ACTIONS(5016), [sym_in] = ACTIONS(5016), [sym_inout] = ACTIONS(5016), [sym_interface] = ACTIONS(5016), [sym_invariant] = ACTIONS(5016), [sym_is] = ACTIONS(5016), [sym_mixin] = ACTIONS(5016), [sym_new] = ACTIONS(5016), [sym_nothrow] = ACTIONS(5016), [sym_out] = ACTIONS(5016), [sym_override] = ACTIONS(5016), [sym_package] = ACTIONS(5016), [sym_pragma] = ACTIONS(5016), [sym_private] = ACTIONS(5016), [sym_protected] = ACTIONS(5016), [sym_public] = ACTIONS(5016), [sym_pure] = ACTIONS(5016), [sym_ref] = ACTIONS(5016), [sym_return] = ACTIONS(5016), [sym_scope] = ACTIONS(5016), [sym_shared] = ACTIONS(5016), [sym_static] = ACTIONS(5016), [sym_struct] = ACTIONS(5016), [sym_switch] = ACTIONS(5016), [sym_synchronized] = ACTIONS(5016), [sym_template] = ACTIONS(5016), [sym_throw] = ACTIONS(5016), [sym_try] = ACTIONS(5016), [sym_typeid] = ACTIONS(5016), [sym_typeof] = ACTIONS(5016), [sym_union] = ACTIONS(5016), [sym_unittest] = ACTIONS(5016), [sym_version] = ACTIONS(5016), [sym_while] = ACTIONS(5016), [sym_with] = ACTIONS(5016), [sym_gshared] = ACTIONS(5016), [sym_traits] = ACTIONS(5016), [sym_vector] = ACTIONS(5016), [sym_void] = ACTIONS(5016), [anon_sym_BQUOTE] = ACTIONS(5018), [anon_sym_r_DQUOTE] = ACTIONS(5018), [anon_sym_x_DQUOTE] = ACTIONS(5018), [anon_sym_DQUOTE] = ACTIONS(5018), [anon_sym_i_BQUOTE] = ACTIONS(5018), [anon_sym_i_DQUOTE] = ACTIONS(5018), [anon_sym_iq_LBRACE] = ACTIONS(5018), [aux_sym_char_literal_token1] = ACTIONS(5018), [anon_sym_SQUOTE] = ACTIONS(5016), [anon_sym___DATE__] = ACTIONS(5016), [anon_sym___FILE__] = ACTIONS(5016), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5016), [anon_sym___FUNCTION__] = ACTIONS(5016), [anon_sym___LINE__] = ACTIONS(5016), [anon_sym___MODULE__] = ACTIONS(5016), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5016), [anon_sym___TIME__] = ACTIONS(5016), [anon_sym___TIMESTAMP__] = ACTIONS(5016), [anon_sym___VENDOR__] = ACTIONS(5016), [anon_sym___VERSION__] = ACTIONS(5016), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5018), [sym_float_literal] = ACTIONS(5018), [sym__string] = ACTIONS(5018), }, [1542] = { [sym_identifier] = ACTIONS(5020), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5022), [anon_sym_RBRACE] = ACTIONS(5022), [anon_sym_LBRACE] = ACTIONS(5022), [anon_sym_DOT] = ACTIONS(5022), [anon_sym_AMP] = ACTIONS(5022), [anon_sym_DASH] = ACTIONS(5020), [anon_sym_DASH_DASH] = ACTIONS(5022), [anon_sym_PLUS] = ACTIONS(5020), [anon_sym_PLUS_PLUS] = ACTIONS(5022), [anon_sym_BANG] = ACTIONS(5022), [anon_sym_LPAREN] = ACTIONS(5022), [anon_sym_RPAREN] = ACTIONS(5022), [anon_sym_LBRACK] = ACTIONS(5022), [anon_sym_SEMI] = ACTIONS(5022), [anon_sym_DOLLAR] = ACTIONS(5022), [anon_sym_STAR] = ACTIONS(5022), [anon_sym_TILDE] = ACTIONS(5022), [anon_sym_AT] = ACTIONS(5022), [sym_bool] = ACTIONS(5020), [sym_byte] = ACTIONS(5020), [sym_ubyte] = ACTIONS(5020), [sym_char] = ACTIONS(5020), [sym_short] = ACTIONS(5020), [sym_ushort] = ACTIONS(5020), [sym_int] = ACTIONS(5020), [sym_uint] = ACTIONS(5020), [sym_long] = ACTIONS(5020), [sym_ulong] = ACTIONS(5020), [sym_cent] = ACTIONS(5020), [sym_ucent] = ACTIONS(5020), [sym_wchar] = ACTIONS(5020), [sym_dchar] = ACTIONS(5020), [sym_float] = ACTIONS(5020), [sym_double] = ACTIONS(5020), [sym_real] = ACTIONS(5020), [sym_ifloat] = ACTIONS(5020), [sym_idouble] = ACTIONS(5020), [sym_ireal] = ACTIONS(5020), [sym_cfloat] = ACTIONS(5020), [sym_cdouble] = ACTIONS(5020), [sym_creal] = ACTIONS(5020), [sym_size_t] = ACTIONS(5020), [sym_ptrdiff_t] = ACTIONS(5020), [sym_string] = ACTIONS(5020), [sym_cstring] = ACTIONS(5020), [sym_dstring] = ACTIONS(5020), [sym_wstring] = ACTIONS(5020), [sym_noreturn] = ACTIONS(5020), [sym_true] = ACTIONS(5020), [sym_false] = ACTIONS(5020), [sym_null] = ACTIONS(5020), [sym_super] = ACTIONS(5020), [sym_this] = ACTIONS(5020), [sym_abstract] = ACTIONS(5020), [sym_alias] = ACTIONS(5020), [sym_align] = ACTIONS(5020), [sym_asm] = ACTIONS(5020), [sym_assert] = ACTIONS(5020), [sym_auto] = ACTIONS(5020), [sym_break] = ACTIONS(5020), [sym_case] = ACTIONS(5020), [sym_cast] = ACTIONS(5020), [sym_catch] = ACTIONS(5020), [sym_class] = ACTIONS(5020), [sym_const] = ACTIONS(5020), [sym_continue] = ACTIONS(5020), [sym_debug] = ACTIONS(5020), [sym_default] = ACTIONS(5020), [sym_delegate] = ACTIONS(5020), [sym_delete] = ACTIONS(5020), [sym_deprecated] = ACTIONS(5020), [sym_do] = ACTIONS(5020), [sym_else] = ACTIONS(5020), [sym_enum] = ACTIONS(5020), [sym_export] = ACTIONS(5020), [sym_extern] = ACTIONS(5020), [sym_final] = ACTIONS(5020), [sym_finally] = ACTIONS(5020), [sym_for] = ACTIONS(5020), [sym_foreach] = ACTIONS(5020), [sym_foreach_reverse] = ACTIONS(5020), [sym_function] = ACTIONS(5020), [sym_goto] = ACTIONS(5020), [sym_if] = ACTIONS(5020), [sym_immutable] = ACTIONS(5020), [sym_import] = ACTIONS(5020), [sym_in] = ACTIONS(5020), [sym_inout] = ACTIONS(5020), [sym_interface] = ACTIONS(5020), [sym_invariant] = ACTIONS(5020), [sym_is] = ACTIONS(5020), [sym_mixin] = ACTIONS(5020), [sym_new] = ACTIONS(5020), [sym_nothrow] = ACTIONS(5020), [sym_out] = ACTIONS(5020), [sym_override] = ACTIONS(5020), [sym_package] = ACTIONS(5020), [sym_pragma] = ACTIONS(5020), [sym_private] = ACTIONS(5020), [sym_protected] = ACTIONS(5020), [sym_public] = ACTIONS(5020), [sym_pure] = ACTIONS(5020), [sym_ref] = ACTIONS(5020), [sym_return] = ACTIONS(5020), [sym_scope] = ACTIONS(5020), [sym_shared] = ACTIONS(5020), [sym_static] = ACTIONS(5020), [sym_struct] = ACTIONS(5020), [sym_switch] = ACTIONS(5020), [sym_synchronized] = ACTIONS(5020), [sym_template] = ACTIONS(5020), [sym_throw] = ACTIONS(5020), [sym_try] = ACTIONS(5020), [sym_typeid] = ACTIONS(5020), [sym_typeof] = ACTIONS(5020), [sym_union] = ACTIONS(5020), [sym_unittest] = ACTIONS(5020), [sym_version] = ACTIONS(5020), [sym_while] = ACTIONS(5020), [sym_with] = ACTIONS(5020), [sym_gshared] = ACTIONS(5020), [sym_traits] = ACTIONS(5020), [sym_vector] = ACTIONS(5020), [sym_void] = ACTIONS(5020), [anon_sym_BQUOTE] = ACTIONS(5022), [anon_sym_r_DQUOTE] = ACTIONS(5022), [anon_sym_x_DQUOTE] = ACTIONS(5022), [anon_sym_DQUOTE] = ACTIONS(5022), [anon_sym_i_BQUOTE] = ACTIONS(5022), [anon_sym_i_DQUOTE] = ACTIONS(5022), [anon_sym_iq_LBRACE] = ACTIONS(5022), [aux_sym_char_literal_token1] = ACTIONS(5022), [anon_sym_SQUOTE] = ACTIONS(5020), [anon_sym___DATE__] = ACTIONS(5020), [anon_sym___FILE__] = ACTIONS(5020), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5020), [anon_sym___FUNCTION__] = ACTIONS(5020), [anon_sym___LINE__] = ACTIONS(5020), [anon_sym___MODULE__] = ACTIONS(5020), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5020), [anon_sym___TIME__] = ACTIONS(5020), [anon_sym___TIMESTAMP__] = ACTIONS(5020), [anon_sym___VENDOR__] = ACTIONS(5020), [anon_sym___VERSION__] = ACTIONS(5020), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5022), [sym_float_literal] = ACTIONS(5022), [sym__string] = ACTIONS(5022), }, [1543] = { [sym_identifier] = ACTIONS(5024), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5026), [anon_sym_RBRACE] = ACTIONS(5026), [anon_sym_LBRACE] = ACTIONS(5026), [anon_sym_DOT] = ACTIONS(5026), [anon_sym_AMP] = ACTIONS(5026), [anon_sym_DASH] = ACTIONS(5024), [anon_sym_DASH_DASH] = ACTIONS(5026), [anon_sym_PLUS] = ACTIONS(5024), [anon_sym_PLUS_PLUS] = ACTIONS(5026), [anon_sym_BANG] = ACTIONS(5026), [anon_sym_LPAREN] = ACTIONS(5026), [anon_sym_RPAREN] = ACTIONS(5026), [anon_sym_LBRACK] = ACTIONS(5026), [anon_sym_SEMI] = ACTIONS(5026), [anon_sym_DOLLAR] = ACTIONS(5026), [anon_sym_STAR] = ACTIONS(5026), [anon_sym_TILDE] = ACTIONS(5026), [anon_sym_AT] = ACTIONS(5026), [sym_bool] = ACTIONS(5024), [sym_byte] = ACTIONS(5024), [sym_ubyte] = ACTIONS(5024), [sym_char] = ACTIONS(5024), [sym_short] = ACTIONS(5024), [sym_ushort] = ACTIONS(5024), [sym_int] = ACTIONS(5024), [sym_uint] = ACTIONS(5024), [sym_long] = ACTIONS(5024), [sym_ulong] = ACTIONS(5024), [sym_cent] = ACTIONS(5024), [sym_ucent] = ACTIONS(5024), [sym_wchar] = ACTIONS(5024), [sym_dchar] = ACTIONS(5024), [sym_float] = ACTIONS(5024), [sym_double] = ACTIONS(5024), [sym_real] = ACTIONS(5024), [sym_ifloat] = ACTIONS(5024), [sym_idouble] = ACTIONS(5024), [sym_ireal] = ACTIONS(5024), [sym_cfloat] = ACTIONS(5024), [sym_cdouble] = ACTIONS(5024), [sym_creal] = ACTIONS(5024), [sym_size_t] = ACTIONS(5024), [sym_ptrdiff_t] = ACTIONS(5024), [sym_string] = ACTIONS(5024), [sym_cstring] = ACTIONS(5024), [sym_dstring] = ACTIONS(5024), [sym_wstring] = ACTIONS(5024), [sym_noreturn] = ACTIONS(5024), [sym_true] = ACTIONS(5024), [sym_false] = ACTIONS(5024), [sym_null] = ACTIONS(5024), [sym_super] = ACTIONS(5024), [sym_this] = ACTIONS(5024), [sym_abstract] = ACTIONS(5024), [sym_alias] = ACTIONS(5024), [sym_align] = ACTIONS(5024), [sym_asm] = ACTIONS(5024), [sym_assert] = ACTIONS(5024), [sym_auto] = ACTIONS(5024), [sym_break] = ACTIONS(5024), [sym_case] = ACTIONS(5024), [sym_cast] = ACTIONS(5024), [sym_catch] = ACTIONS(5024), [sym_class] = ACTIONS(5024), [sym_const] = ACTIONS(5024), [sym_continue] = ACTIONS(5024), [sym_debug] = ACTIONS(5024), [sym_default] = ACTIONS(5024), [sym_delegate] = ACTIONS(5024), [sym_delete] = ACTIONS(5024), [sym_deprecated] = ACTIONS(5024), [sym_do] = ACTIONS(5024), [sym_else] = ACTIONS(5024), [sym_enum] = ACTIONS(5024), [sym_export] = ACTIONS(5024), [sym_extern] = ACTIONS(5024), [sym_final] = ACTIONS(5024), [sym_finally] = ACTIONS(5024), [sym_for] = ACTIONS(5024), [sym_foreach] = ACTIONS(5024), [sym_foreach_reverse] = ACTIONS(5024), [sym_function] = ACTIONS(5024), [sym_goto] = ACTIONS(5024), [sym_if] = ACTIONS(5024), [sym_immutable] = ACTIONS(5024), [sym_import] = ACTIONS(5024), [sym_in] = ACTIONS(5024), [sym_inout] = ACTIONS(5024), [sym_interface] = ACTIONS(5024), [sym_invariant] = ACTIONS(5024), [sym_is] = ACTIONS(5024), [sym_mixin] = ACTIONS(5024), [sym_new] = ACTIONS(5024), [sym_nothrow] = ACTIONS(5024), [sym_out] = ACTIONS(5024), [sym_override] = ACTIONS(5024), [sym_package] = ACTIONS(5024), [sym_pragma] = ACTIONS(5024), [sym_private] = ACTIONS(5024), [sym_protected] = ACTIONS(5024), [sym_public] = ACTIONS(5024), [sym_pure] = ACTIONS(5024), [sym_ref] = ACTIONS(5024), [sym_return] = ACTIONS(5024), [sym_scope] = ACTIONS(5024), [sym_shared] = ACTIONS(5024), [sym_static] = ACTIONS(5024), [sym_struct] = ACTIONS(5024), [sym_switch] = ACTIONS(5024), [sym_synchronized] = ACTIONS(5024), [sym_template] = ACTIONS(5024), [sym_throw] = ACTIONS(5024), [sym_try] = ACTIONS(5024), [sym_typeid] = ACTIONS(5024), [sym_typeof] = ACTIONS(5024), [sym_union] = ACTIONS(5024), [sym_unittest] = ACTIONS(5024), [sym_version] = ACTIONS(5024), [sym_while] = ACTIONS(5024), [sym_with] = ACTIONS(5024), [sym_gshared] = ACTIONS(5024), [sym_traits] = ACTIONS(5024), [sym_vector] = ACTIONS(5024), [sym_void] = ACTIONS(5024), [anon_sym_BQUOTE] = ACTIONS(5026), [anon_sym_r_DQUOTE] = ACTIONS(5026), [anon_sym_x_DQUOTE] = ACTIONS(5026), [anon_sym_DQUOTE] = ACTIONS(5026), [anon_sym_i_BQUOTE] = ACTIONS(5026), [anon_sym_i_DQUOTE] = ACTIONS(5026), [anon_sym_iq_LBRACE] = ACTIONS(5026), [aux_sym_char_literal_token1] = ACTIONS(5026), [anon_sym_SQUOTE] = ACTIONS(5024), [anon_sym___DATE__] = ACTIONS(5024), [anon_sym___FILE__] = ACTIONS(5024), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5024), [anon_sym___FUNCTION__] = ACTIONS(5024), [anon_sym___LINE__] = ACTIONS(5024), [anon_sym___MODULE__] = ACTIONS(5024), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5024), [anon_sym___TIME__] = ACTIONS(5024), [anon_sym___TIMESTAMP__] = ACTIONS(5024), [anon_sym___VENDOR__] = ACTIONS(5024), [anon_sym___VERSION__] = ACTIONS(5024), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5026), [sym_float_literal] = ACTIONS(5026), [sym__string] = ACTIONS(5026), }, [1544] = { [sym_identifier] = ACTIONS(5028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5030), [anon_sym_RBRACE] = ACTIONS(5030), [anon_sym_LBRACE] = ACTIONS(5030), [anon_sym_DOT] = ACTIONS(5030), [anon_sym_AMP] = ACTIONS(5030), [anon_sym_DASH] = ACTIONS(5028), [anon_sym_DASH_DASH] = ACTIONS(5030), [anon_sym_PLUS] = ACTIONS(5028), [anon_sym_PLUS_PLUS] = ACTIONS(5030), [anon_sym_BANG] = ACTIONS(5030), [anon_sym_LPAREN] = ACTIONS(5030), [anon_sym_RPAREN] = ACTIONS(5030), [anon_sym_LBRACK] = ACTIONS(5030), [anon_sym_SEMI] = ACTIONS(5030), [anon_sym_DOLLAR] = ACTIONS(5030), [anon_sym_STAR] = ACTIONS(5030), [anon_sym_TILDE] = ACTIONS(5030), [anon_sym_AT] = ACTIONS(5030), [sym_bool] = ACTIONS(5028), [sym_byte] = ACTIONS(5028), [sym_ubyte] = ACTIONS(5028), [sym_char] = ACTIONS(5028), [sym_short] = ACTIONS(5028), [sym_ushort] = ACTIONS(5028), [sym_int] = ACTIONS(5028), [sym_uint] = ACTIONS(5028), [sym_long] = ACTIONS(5028), [sym_ulong] = ACTIONS(5028), [sym_cent] = ACTIONS(5028), [sym_ucent] = ACTIONS(5028), [sym_wchar] = ACTIONS(5028), [sym_dchar] = ACTIONS(5028), [sym_float] = ACTIONS(5028), [sym_double] = ACTIONS(5028), [sym_real] = ACTIONS(5028), [sym_ifloat] = ACTIONS(5028), [sym_idouble] = ACTIONS(5028), [sym_ireal] = ACTIONS(5028), [sym_cfloat] = ACTIONS(5028), [sym_cdouble] = ACTIONS(5028), [sym_creal] = ACTIONS(5028), [sym_size_t] = ACTIONS(5028), [sym_ptrdiff_t] = ACTIONS(5028), [sym_string] = ACTIONS(5028), [sym_cstring] = ACTIONS(5028), [sym_dstring] = ACTIONS(5028), [sym_wstring] = ACTIONS(5028), [sym_noreturn] = ACTIONS(5028), [sym_true] = ACTIONS(5028), [sym_false] = ACTIONS(5028), [sym_null] = ACTIONS(5028), [sym_super] = ACTIONS(5028), [sym_this] = ACTIONS(5028), [sym_abstract] = ACTIONS(5028), [sym_alias] = ACTIONS(5028), [sym_align] = ACTIONS(5028), [sym_asm] = ACTIONS(5028), [sym_assert] = ACTIONS(5028), [sym_auto] = ACTIONS(5028), [sym_break] = ACTIONS(5028), [sym_case] = ACTIONS(5028), [sym_cast] = ACTIONS(5028), [sym_catch] = ACTIONS(5028), [sym_class] = ACTIONS(5028), [sym_const] = ACTIONS(5028), [sym_continue] = ACTIONS(5028), [sym_debug] = ACTIONS(5028), [sym_default] = ACTIONS(5028), [sym_delegate] = ACTIONS(5028), [sym_delete] = ACTIONS(5028), [sym_deprecated] = ACTIONS(5028), [sym_do] = ACTIONS(5028), [sym_else] = ACTIONS(5028), [sym_enum] = ACTIONS(5028), [sym_export] = ACTIONS(5028), [sym_extern] = ACTIONS(5028), [sym_final] = ACTIONS(5028), [sym_finally] = ACTIONS(5028), [sym_for] = ACTIONS(5028), [sym_foreach] = ACTIONS(5028), [sym_foreach_reverse] = ACTIONS(5028), [sym_function] = ACTIONS(5028), [sym_goto] = ACTIONS(5028), [sym_if] = ACTIONS(5028), [sym_immutable] = ACTIONS(5028), [sym_import] = ACTIONS(5028), [sym_in] = ACTIONS(5028), [sym_inout] = ACTIONS(5028), [sym_interface] = ACTIONS(5028), [sym_invariant] = ACTIONS(5028), [sym_is] = ACTIONS(5028), [sym_mixin] = ACTIONS(5028), [sym_new] = ACTIONS(5028), [sym_nothrow] = ACTIONS(5028), [sym_out] = ACTIONS(5028), [sym_override] = ACTIONS(5028), [sym_package] = ACTIONS(5028), [sym_pragma] = ACTIONS(5028), [sym_private] = ACTIONS(5028), [sym_protected] = ACTIONS(5028), [sym_public] = ACTIONS(5028), [sym_pure] = ACTIONS(5028), [sym_ref] = ACTIONS(5028), [sym_return] = ACTIONS(5028), [sym_scope] = ACTIONS(5028), [sym_shared] = ACTIONS(5028), [sym_static] = ACTIONS(5028), [sym_struct] = ACTIONS(5028), [sym_switch] = ACTIONS(5028), [sym_synchronized] = ACTIONS(5028), [sym_template] = ACTIONS(5028), [sym_throw] = ACTIONS(5028), [sym_try] = ACTIONS(5028), [sym_typeid] = ACTIONS(5028), [sym_typeof] = ACTIONS(5028), [sym_union] = ACTIONS(5028), [sym_unittest] = ACTIONS(5028), [sym_version] = ACTIONS(5028), [sym_while] = ACTIONS(5028), [sym_with] = ACTIONS(5028), [sym_gshared] = ACTIONS(5028), [sym_traits] = ACTIONS(5028), [sym_vector] = ACTIONS(5028), [sym_void] = ACTIONS(5028), [anon_sym_BQUOTE] = ACTIONS(5030), [anon_sym_r_DQUOTE] = ACTIONS(5030), [anon_sym_x_DQUOTE] = ACTIONS(5030), [anon_sym_DQUOTE] = ACTIONS(5030), [anon_sym_i_BQUOTE] = ACTIONS(5030), [anon_sym_i_DQUOTE] = ACTIONS(5030), [anon_sym_iq_LBRACE] = ACTIONS(5030), [aux_sym_char_literal_token1] = ACTIONS(5030), [anon_sym_SQUOTE] = ACTIONS(5028), [anon_sym___DATE__] = ACTIONS(5028), [anon_sym___FILE__] = ACTIONS(5028), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5028), [anon_sym___FUNCTION__] = ACTIONS(5028), [anon_sym___LINE__] = ACTIONS(5028), [anon_sym___MODULE__] = ACTIONS(5028), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5028), [anon_sym___TIME__] = ACTIONS(5028), [anon_sym___TIMESTAMP__] = ACTIONS(5028), [anon_sym___VENDOR__] = ACTIONS(5028), [anon_sym___VERSION__] = ACTIONS(5028), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5030), [sym_float_literal] = ACTIONS(5030), [sym__string] = ACTIONS(5030), }, [1545] = { [sym_identifier] = ACTIONS(5032), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5034), [anon_sym_RBRACE] = ACTIONS(5034), [anon_sym_LBRACE] = ACTIONS(5034), [anon_sym_DOT] = ACTIONS(5034), [anon_sym_AMP] = ACTIONS(5034), [anon_sym_DASH] = ACTIONS(5032), [anon_sym_DASH_DASH] = ACTIONS(5034), [anon_sym_PLUS] = ACTIONS(5032), [anon_sym_PLUS_PLUS] = ACTIONS(5034), [anon_sym_BANG] = ACTIONS(5034), [anon_sym_LPAREN] = ACTIONS(5034), [anon_sym_RPAREN] = ACTIONS(5034), [anon_sym_LBRACK] = ACTIONS(5034), [anon_sym_SEMI] = ACTIONS(5034), [anon_sym_DOLLAR] = ACTIONS(5034), [anon_sym_STAR] = ACTIONS(5034), [anon_sym_TILDE] = ACTIONS(5034), [anon_sym_AT] = ACTIONS(5034), [sym_bool] = ACTIONS(5032), [sym_byte] = ACTIONS(5032), [sym_ubyte] = ACTIONS(5032), [sym_char] = ACTIONS(5032), [sym_short] = ACTIONS(5032), [sym_ushort] = ACTIONS(5032), [sym_int] = ACTIONS(5032), [sym_uint] = ACTIONS(5032), [sym_long] = ACTIONS(5032), [sym_ulong] = ACTIONS(5032), [sym_cent] = ACTIONS(5032), [sym_ucent] = ACTIONS(5032), [sym_wchar] = ACTIONS(5032), [sym_dchar] = ACTIONS(5032), [sym_float] = ACTIONS(5032), [sym_double] = ACTIONS(5032), [sym_real] = ACTIONS(5032), [sym_ifloat] = ACTIONS(5032), [sym_idouble] = ACTIONS(5032), [sym_ireal] = ACTIONS(5032), [sym_cfloat] = ACTIONS(5032), [sym_cdouble] = ACTIONS(5032), [sym_creal] = ACTIONS(5032), [sym_size_t] = ACTIONS(5032), [sym_ptrdiff_t] = ACTIONS(5032), [sym_string] = ACTIONS(5032), [sym_cstring] = ACTIONS(5032), [sym_dstring] = ACTIONS(5032), [sym_wstring] = ACTIONS(5032), [sym_noreturn] = ACTIONS(5032), [sym_true] = ACTIONS(5032), [sym_false] = ACTIONS(5032), [sym_null] = ACTIONS(5032), [sym_super] = ACTIONS(5032), [sym_this] = ACTIONS(5032), [sym_abstract] = ACTIONS(5032), [sym_alias] = ACTIONS(5032), [sym_align] = ACTIONS(5032), [sym_asm] = ACTIONS(5032), [sym_assert] = ACTIONS(5032), [sym_auto] = ACTIONS(5032), [sym_break] = ACTIONS(5032), [sym_case] = ACTIONS(5032), [sym_cast] = ACTIONS(5032), [sym_catch] = ACTIONS(5032), [sym_class] = ACTIONS(5032), [sym_const] = ACTIONS(5032), [sym_continue] = ACTIONS(5032), [sym_debug] = ACTIONS(5032), [sym_default] = ACTIONS(5032), [sym_delegate] = ACTIONS(5032), [sym_delete] = ACTIONS(5032), [sym_deprecated] = ACTIONS(5032), [sym_do] = ACTIONS(5032), [sym_else] = ACTIONS(5032), [sym_enum] = ACTIONS(5032), [sym_export] = ACTIONS(5032), [sym_extern] = ACTIONS(5032), [sym_final] = ACTIONS(5032), [sym_finally] = ACTIONS(5032), [sym_for] = ACTIONS(5032), [sym_foreach] = ACTIONS(5032), [sym_foreach_reverse] = ACTIONS(5032), [sym_function] = ACTIONS(5032), [sym_goto] = ACTIONS(5032), [sym_if] = ACTIONS(5032), [sym_immutable] = ACTIONS(5032), [sym_import] = ACTIONS(5032), [sym_in] = ACTIONS(5032), [sym_inout] = ACTIONS(5032), [sym_interface] = ACTIONS(5032), [sym_invariant] = ACTIONS(5032), [sym_is] = ACTIONS(5032), [sym_mixin] = ACTIONS(5032), [sym_new] = ACTIONS(5032), [sym_nothrow] = ACTIONS(5032), [sym_out] = ACTIONS(5032), [sym_override] = ACTIONS(5032), [sym_package] = ACTIONS(5032), [sym_pragma] = ACTIONS(5032), [sym_private] = ACTIONS(5032), [sym_protected] = ACTIONS(5032), [sym_public] = ACTIONS(5032), [sym_pure] = ACTIONS(5032), [sym_ref] = ACTIONS(5032), [sym_return] = ACTIONS(5032), [sym_scope] = ACTIONS(5032), [sym_shared] = ACTIONS(5032), [sym_static] = ACTIONS(5032), [sym_struct] = ACTIONS(5032), [sym_switch] = ACTIONS(5032), [sym_synchronized] = ACTIONS(5032), [sym_template] = ACTIONS(5032), [sym_throw] = ACTIONS(5032), [sym_try] = ACTIONS(5032), [sym_typeid] = ACTIONS(5032), [sym_typeof] = ACTIONS(5032), [sym_union] = ACTIONS(5032), [sym_unittest] = ACTIONS(5032), [sym_version] = ACTIONS(5032), [sym_while] = ACTIONS(5032), [sym_with] = ACTIONS(5032), [sym_gshared] = ACTIONS(5032), [sym_traits] = ACTIONS(5032), [sym_vector] = ACTIONS(5032), [sym_void] = ACTIONS(5032), [anon_sym_BQUOTE] = ACTIONS(5034), [anon_sym_r_DQUOTE] = ACTIONS(5034), [anon_sym_x_DQUOTE] = ACTIONS(5034), [anon_sym_DQUOTE] = ACTIONS(5034), [anon_sym_i_BQUOTE] = ACTIONS(5034), [anon_sym_i_DQUOTE] = ACTIONS(5034), [anon_sym_iq_LBRACE] = ACTIONS(5034), [aux_sym_char_literal_token1] = ACTIONS(5034), [anon_sym_SQUOTE] = ACTIONS(5032), [anon_sym___DATE__] = ACTIONS(5032), [anon_sym___FILE__] = ACTIONS(5032), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5032), [anon_sym___FUNCTION__] = ACTIONS(5032), [anon_sym___LINE__] = ACTIONS(5032), [anon_sym___MODULE__] = ACTIONS(5032), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5032), [anon_sym___TIME__] = ACTIONS(5032), [anon_sym___TIMESTAMP__] = ACTIONS(5032), [anon_sym___VENDOR__] = ACTIONS(5032), [anon_sym___VERSION__] = ACTIONS(5032), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5034), [sym_float_literal] = ACTIONS(5034), [sym__string] = ACTIONS(5034), }, [1546] = { [sym_identifier] = ACTIONS(5036), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5038), [anon_sym_RBRACE] = ACTIONS(5038), [anon_sym_LBRACE] = ACTIONS(5038), [anon_sym_DOT] = ACTIONS(5038), [anon_sym_AMP] = ACTIONS(5038), [anon_sym_DASH] = ACTIONS(5036), [anon_sym_DASH_DASH] = ACTIONS(5038), [anon_sym_PLUS] = ACTIONS(5036), [anon_sym_PLUS_PLUS] = ACTIONS(5038), [anon_sym_BANG] = ACTIONS(5038), [anon_sym_LPAREN] = ACTIONS(5038), [anon_sym_RPAREN] = ACTIONS(5038), [anon_sym_LBRACK] = ACTIONS(5038), [anon_sym_SEMI] = ACTIONS(5038), [anon_sym_DOLLAR] = ACTIONS(5038), [anon_sym_STAR] = ACTIONS(5038), [anon_sym_TILDE] = ACTIONS(5038), [anon_sym_AT] = ACTIONS(5038), [sym_bool] = ACTIONS(5036), [sym_byte] = ACTIONS(5036), [sym_ubyte] = ACTIONS(5036), [sym_char] = ACTIONS(5036), [sym_short] = ACTIONS(5036), [sym_ushort] = ACTIONS(5036), [sym_int] = ACTIONS(5036), [sym_uint] = ACTIONS(5036), [sym_long] = ACTIONS(5036), [sym_ulong] = ACTIONS(5036), [sym_cent] = ACTIONS(5036), [sym_ucent] = ACTIONS(5036), [sym_wchar] = ACTIONS(5036), [sym_dchar] = ACTIONS(5036), [sym_float] = ACTIONS(5036), [sym_double] = ACTIONS(5036), [sym_real] = ACTIONS(5036), [sym_ifloat] = ACTIONS(5036), [sym_idouble] = ACTIONS(5036), [sym_ireal] = ACTIONS(5036), [sym_cfloat] = ACTIONS(5036), [sym_cdouble] = ACTIONS(5036), [sym_creal] = ACTIONS(5036), [sym_size_t] = ACTIONS(5036), [sym_ptrdiff_t] = ACTIONS(5036), [sym_string] = ACTIONS(5036), [sym_cstring] = ACTIONS(5036), [sym_dstring] = ACTIONS(5036), [sym_wstring] = ACTIONS(5036), [sym_noreturn] = ACTIONS(5036), [sym_true] = ACTIONS(5036), [sym_false] = ACTIONS(5036), [sym_null] = ACTIONS(5036), [sym_super] = ACTIONS(5036), [sym_this] = ACTIONS(5036), [sym_abstract] = ACTIONS(5036), [sym_alias] = ACTIONS(5036), [sym_align] = ACTIONS(5036), [sym_asm] = ACTIONS(5036), [sym_assert] = ACTIONS(5036), [sym_auto] = ACTIONS(5036), [sym_break] = ACTIONS(5036), [sym_case] = ACTIONS(5036), [sym_cast] = ACTIONS(5036), [sym_catch] = ACTIONS(5036), [sym_class] = ACTIONS(5036), [sym_const] = ACTIONS(5036), [sym_continue] = ACTIONS(5036), [sym_debug] = ACTIONS(5036), [sym_default] = ACTIONS(5036), [sym_delegate] = ACTIONS(5036), [sym_delete] = ACTIONS(5036), [sym_deprecated] = ACTIONS(5036), [sym_do] = ACTIONS(5036), [sym_else] = ACTIONS(5036), [sym_enum] = ACTIONS(5036), [sym_export] = ACTIONS(5036), [sym_extern] = ACTIONS(5036), [sym_final] = ACTIONS(5036), [sym_finally] = ACTIONS(5036), [sym_for] = ACTIONS(5036), [sym_foreach] = ACTIONS(5036), [sym_foreach_reverse] = ACTIONS(5036), [sym_function] = ACTIONS(5036), [sym_goto] = ACTIONS(5036), [sym_if] = ACTIONS(5036), [sym_immutable] = ACTIONS(5036), [sym_import] = ACTIONS(5036), [sym_in] = ACTIONS(5036), [sym_inout] = ACTIONS(5036), [sym_interface] = ACTIONS(5036), [sym_invariant] = ACTIONS(5036), [sym_is] = ACTIONS(5036), [sym_mixin] = ACTIONS(5036), [sym_new] = ACTIONS(5036), [sym_nothrow] = ACTIONS(5036), [sym_out] = ACTIONS(5036), [sym_override] = ACTIONS(5036), [sym_package] = ACTIONS(5036), [sym_pragma] = ACTIONS(5036), [sym_private] = ACTIONS(5036), [sym_protected] = ACTIONS(5036), [sym_public] = ACTIONS(5036), [sym_pure] = ACTIONS(5036), [sym_ref] = ACTIONS(5036), [sym_return] = ACTIONS(5036), [sym_scope] = ACTIONS(5036), [sym_shared] = ACTIONS(5036), [sym_static] = ACTIONS(5036), [sym_struct] = ACTIONS(5036), [sym_switch] = ACTIONS(5036), [sym_synchronized] = ACTIONS(5036), [sym_template] = ACTIONS(5036), [sym_throw] = ACTIONS(5036), [sym_try] = ACTIONS(5036), [sym_typeid] = ACTIONS(5036), [sym_typeof] = ACTIONS(5036), [sym_union] = ACTIONS(5036), [sym_unittest] = ACTIONS(5036), [sym_version] = ACTIONS(5036), [sym_while] = ACTIONS(5036), [sym_with] = ACTIONS(5036), [sym_gshared] = ACTIONS(5036), [sym_traits] = ACTIONS(5036), [sym_vector] = ACTIONS(5036), [sym_void] = ACTIONS(5036), [anon_sym_BQUOTE] = ACTIONS(5038), [anon_sym_r_DQUOTE] = ACTIONS(5038), [anon_sym_x_DQUOTE] = ACTIONS(5038), [anon_sym_DQUOTE] = ACTIONS(5038), [anon_sym_i_BQUOTE] = ACTIONS(5038), [anon_sym_i_DQUOTE] = ACTIONS(5038), [anon_sym_iq_LBRACE] = ACTIONS(5038), [aux_sym_char_literal_token1] = ACTIONS(5038), [anon_sym_SQUOTE] = ACTIONS(5036), [anon_sym___DATE__] = ACTIONS(5036), [anon_sym___FILE__] = ACTIONS(5036), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5036), [anon_sym___FUNCTION__] = ACTIONS(5036), [anon_sym___LINE__] = ACTIONS(5036), [anon_sym___MODULE__] = ACTIONS(5036), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5036), [anon_sym___TIME__] = ACTIONS(5036), [anon_sym___TIMESTAMP__] = ACTIONS(5036), [anon_sym___VENDOR__] = ACTIONS(5036), [anon_sym___VERSION__] = ACTIONS(5036), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5038), [sym_float_literal] = ACTIONS(5038), [sym__string] = ACTIONS(5038), }, [1547] = { [sym_identifier] = ACTIONS(5040), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5042), [anon_sym_RBRACE] = ACTIONS(5042), [anon_sym_LBRACE] = ACTIONS(5042), [anon_sym_DOT] = ACTIONS(5042), [anon_sym_AMP] = ACTIONS(5042), [anon_sym_DASH] = ACTIONS(5040), [anon_sym_DASH_DASH] = ACTIONS(5042), [anon_sym_PLUS] = ACTIONS(5040), [anon_sym_PLUS_PLUS] = ACTIONS(5042), [anon_sym_BANG] = ACTIONS(5042), [anon_sym_LPAREN] = ACTIONS(5042), [anon_sym_RPAREN] = ACTIONS(5042), [anon_sym_LBRACK] = ACTIONS(5042), [anon_sym_SEMI] = ACTIONS(5042), [anon_sym_DOLLAR] = ACTIONS(5042), [anon_sym_STAR] = ACTIONS(5042), [anon_sym_TILDE] = ACTIONS(5042), [anon_sym_AT] = ACTIONS(5042), [sym_bool] = ACTIONS(5040), [sym_byte] = ACTIONS(5040), [sym_ubyte] = ACTIONS(5040), [sym_char] = ACTIONS(5040), [sym_short] = ACTIONS(5040), [sym_ushort] = ACTIONS(5040), [sym_int] = ACTIONS(5040), [sym_uint] = ACTIONS(5040), [sym_long] = ACTIONS(5040), [sym_ulong] = ACTIONS(5040), [sym_cent] = ACTIONS(5040), [sym_ucent] = ACTIONS(5040), [sym_wchar] = ACTIONS(5040), [sym_dchar] = ACTIONS(5040), [sym_float] = ACTIONS(5040), [sym_double] = ACTIONS(5040), [sym_real] = ACTIONS(5040), [sym_ifloat] = ACTIONS(5040), [sym_idouble] = ACTIONS(5040), [sym_ireal] = ACTIONS(5040), [sym_cfloat] = ACTIONS(5040), [sym_cdouble] = ACTIONS(5040), [sym_creal] = ACTIONS(5040), [sym_size_t] = ACTIONS(5040), [sym_ptrdiff_t] = ACTIONS(5040), [sym_string] = ACTIONS(5040), [sym_cstring] = ACTIONS(5040), [sym_dstring] = ACTIONS(5040), [sym_wstring] = ACTIONS(5040), [sym_noreturn] = ACTIONS(5040), [sym_true] = ACTIONS(5040), [sym_false] = ACTIONS(5040), [sym_null] = ACTIONS(5040), [sym_super] = ACTIONS(5040), [sym_this] = ACTIONS(5040), [sym_abstract] = ACTIONS(5040), [sym_alias] = ACTIONS(5040), [sym_align] = ACTIONS(5040), [sym_asm] = ACTIONS(5040), [sym_assert] = ACTIONS(5040), [sym_auto] = ACTIONS(5040), [sym_break] = ACTIONS(5040), [sym_case] = ACTIONS(5040), [sym_cast] = ACTIONS(5040), [sym_catch] = ACTIONS(5040), [sym_class] = ACTIONS(5040), [sym_const] = ACTIONS(5040), [sym_continue] = ACTIONS(5040), [sym_debug] = ACTIONS(5040), [sym_default] = ACTIONS(5040), [sym_delegate] = ACTIONS(5040), [sym_delete] = ACTIONS(5040), [sym_deprecated] = ACTIONS(5040), [sym_do] = ACTIONS(5040), [sym_else] = ACTIONS(5040), [sym_enum] = ACTIONS(5040), [sym_export] = ACTIONS(5040), [sym_extern] = ACTIONS(5040), [sym_final] = ACTIONS(5040), [sym_finally] = ACTIONS(5040), [sym_for] = ACTIONS(5040), [sym_foreach] = ACTIONS(5040), [sym_foreach_reverse] = ACTIONS(5040), [sym_function] = ACTIONS(5040), [sym_goto] = ACTIONS(5040), [sym_if] = ACTIONS(5040), [sym_immutable] = ACTIONS(5040), [sym_import] = ACTIONS(5040), [sym_in] = ACTIONS(5040), [sym_inout] = ACTIONS(5040), [sym_interface] = ACTIONS(5040), [sym_invariant] = ACTIONS(5040), [sym_is] = ACTIONS(5040), [sym_mixin] = ACTIONS(5040), [sym_new] = ACTIONS(5040), [sym_nothrow] = ACTIONS(5040), [sym_out] = ACTIONS(5040), [sym_override] = ACTIONS(5040), [sym_package] = ACTIONS(5040), [sym_pragma] = ACTIONS(5040), [sym_private] = ACTIONS(5040), [sym_protected] = ACTIONS(5040), [sym_public] = ACTIONS(5040), [sym_pure] = ACTIONS(5040), [sym_ref] = ACTIONS(5040), [sym_return] = ACTIONS(5040), [sym_scope] = ACTIONS(5040), [sym_shared] = ACTIONS(5040), [sym_static] = ACTIONS(5040), [sym_struct] = ACTIONS(5040), [sym_switch] = ACTIONS(5040), [sym_synchronized] = ACTIONS(5040), [sym_template] = ACTIONS(5040), [sym_throw] = ACTIONS(5040), [sym_try] = ACTIONS(5040), [sym_typeid] = ACTIONS(5040), [sym_typeof] = ACTIONS(5040), [sym_union] = ACTIONS(5040), [sym_unittest] = ACTIONS(5040), [sym_version] = ACTIONS(5040), [sym_while] = ACTIONS(5040), [sym_with] = ACTIONS(5040), [sym_gshared] = ACTIONS(5040), [sym_traits] = ACTIONS(5040), [sym_vector] = ACTIONS(5040), [sym_void] = ACTIONS(5040), [anon_sym_BQUOTE] = ACTIONS(5042), [anon_sym_r_DQUOTE] = ACTIONS(5042), [anon_sym_x_DQUOTE] = ACTIONS(5042), [anon_sym_DQUOTE] = ACTIONS(5042), [anon_sym_i_BQUOTE] = ACTIONS(5042), [anon_sym_i_DQUOTE] = ACTIONS(5042), [anon_sym_iq_LBRACE] = ACTIONS(5042), [aux_sym_char_literal_token1] = ACTIONS(5042), [anon_sym_SQUOTE] = ACTIONS(5040), [anon_sym___DATE__] = ACTIONS(5040), [anon_sym___FILE__] = ACTIONS(5040), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5040), [anon_sym___FUNCTION__] = ACTIONS(5040), [anon_sym___LINE__] = ACTIONS(5040), [anon_sym___MODULE__] = ACTIONS(5040), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5040), [anon_sym___TIME__] = ACTIONS(5040), [anon_sym___TIMESTAMP__] = ACTIONS(5040), [anon_sym___VENDOR__] = ACTIONS(5040), [anon_sym___VERSION__] = ACTIONS(5040), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5042), [sym_float_literal] = ACTIONS(5042), [sym__string] = ACTIONS(5042), }, [1548] = { [sym_identifier] = ACTIONS(5044), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5046), [anon_sym_RBRACE] = ACTIONS(5046), [anon_sym_LBRACE] = ACTIONS(5046), [anon_sym_DOT] = ACTIONS(5046), [anon_sym_AMP] = ACTIONS(5046), [anon_sym_DASH] = ACTIONS(5044), [anon_sym_DASH_DASH] = ACTIONS(5046), [anon_sym_PLUS] = ACTIONS(5044), [anon_sym_PLUS_PLUS] = ACTIONS(5046), [anon_sym_BANG] = ACTIONS(5046), [anon_sym_LPAREN] = ACTIONS(5046), [anon_sym_RPAREN] = ACTIONS(5046), [anon_sym_LBRACK] = ACTIONS(5046), [anon_sym_SEMI] = ACTIONS(5046), [anon_sym_DOLLAR] = ACTIONS(5046), [anon_sym_STAR] = ACTIONS(5046), [anon_sym_TILDE] = ACTIONS(5046), [anon_sym_AT] = ACTIONS(5046), [sym_bool] = ACTIONS(5044), [sym_byte] = ACTIONS(5044), [sym_ubyte] = ACTIONS(5044), [sym_char] = ACTIONS(5044), [sym_short] = ACTIONS(5044), [sym_ushort] = ACTIONS(5044), [sym_int] = ACTIONS(5044), [sym_uint] = ACTIONS(5044), [sym_long] = ACTIONS(5044), [sym_ulong] = ACTIONS(5044), [sym_cent] = ACTIONS(5044), [sym_ucent] = ACTIONS(5044), [sym_wchar] = ACTIONS(5044), [sym_dchar] = ACTIONS(5044), [sym_float] = ACTIONS(5044), [sym_double] = ACTIONS(5044), [sym_real] = ACTIONS(5044), [sym_ifloat] = ACTIONS(5044), [sym_idouble] = ACTIONS(5044), [sym_ireal] = ACTIONS(5044), [sym_cfloat] = ACTIONS(5044), [sym_cdouble] = ACTIONS(5044), [sym_creal] = ACTIONS(5044), [sym_size_t] = ACTIONS(5044), [sym_ptrdiff_t] = ACTIONS(5044), [sym_string] = ACTIONS(5044), [sym_cstring] = ACTIONS(5044), [sym_dstring] = ACTIONS(5044), [sym_wstring] = ACTIONS(5044), [sym_noreturn] = ACTIONS(5044), [sym_true] = ACTIONS(5044), [sym_false] = ACTIONS(5044), [sym_null] = ACTIONS(5044), [sym_super] = ACTIONS(5044), [sym_this] = ACTIONS(5044), [sym_abstract] = ACTIONS(5044), [sym_alias] = ACTIONS(5044), [sym_align] = ACTIONS(5044), [sym_asm] = ACTIONS(5044), [sym_assert] = ACTIONS(5044), [sym_auto] = ACTIONS(5044), [sym_break] = ACTIONS(5044), [sym_case] = ACTIONS(5044), [sym_cast] = ACTIONS(5044), [sym_catch] = ACTIONS(5044), [sym_class] = ACTIONS(5044), [sym_const] = ACTIONS(5044), [sym_continue] = ACTIONS(5044), [sym_debug] = ACTIONS(5044), [sym_default] = ACTIONS(5044), [sym_delegate] = ACTIONS(5044), [sym_delete] = ACTIONS(5044), [sym_deprecated] = ACTIONS(5044), [sym_do] = ACTIONS(5044), [sym_else] = ACTIONS(5044), [sym_enum] = ACTIONS(5044), [sym_export] = ACTIONS(5044), [sym_extern] = ACTIONS(5044), [sym_final] = ACTIONS(5044), [sym_finally] = ACTIONS(5044), [sym_for] = ACTIONS(5044), [sym_foreach] = ACTIONS(5044), [sym_foreach_reverse] = ACTIONS(5044), [sym_function] = ACTIONS(5044), [sym_goto] = ACTIONS(5044), [sym_if] = ACTIONS(5044), [sym_immutable] = ACTIONS(5044), [sym_import] = ACTIONS(5044), [sym_in] = ACTIONS(5044), [sym_inout] = ACTIONS(5044), [sym_interface] = ACTIONS(5044), [sym_invariant] = ACTIONS(5044), [sym_is] = ACTIONS(5044), [sym_mixin] = ACTIONS(5044), [sym_new] = ACTIONS(5044), [sym_nothrow] = ACTIONS(5044), [sym_out] = ACTIONS(5044), [sym_override] = ACTIONS(5044), [sym_package] = ACTIONS(5044), [sym_pragma] = ACTIONS(5044), [sym_private] = ACTIONS(5044), [sym_protected] = ACTIONS(5044), [sym_public] = ACTIONS(5044), [sym_pure] = ACTIONS(5044), [sym_ref] = ACTIONS(5044), [sym_return] = ACTIONS(5044), [sym_scope] = ACTIONS(5044), [sym_shared] = ACTIONS(5044), [sym_static] = ACTIONS(5044), [sym_struct] = ACTIONS(5044), [sym_switch] = ACTIONS(5044), [sym_synchronized] = ACTIONS(5044), [sym_template] = ACTIONS(5044), [sym_throw] = ACTIONS(5044), [sym_try] = ACTIONS(5044), [sym_typeid] = ACTIONS(5044), [sym_typeof] = ACTIONS(5044), [sym_union] = ACTIONS(5044), [sym_unittest] = ACTIONS(5044), [sym_version] = ACTIONS(5044), [sym_while] = ACTIONS(5044), [sym_with] = ACTIONS(5044), [sym_gshared] = ACTIONS(5044), [sym_traits] = ACTIONS(5044), [sym_vector] = ACTIONS(5044), [sym_void] = ACTIONS(5044), [anon_sym_BQUOTE] = ACTIONS(5046), [anon_sym_r_DQUOTE] = ACTIONS(5046), [anon_sym_x_DQUOTE] = ACTIONS(5046), [anon_sym_DQUOTE] = ACTIONS(5046), [anon_sym_i_BQUOTE] = ACTIONS(5046), [anon_sym_i_DQUOTE] = ACTIONS(5046), [anon_sym_iq_LBRACE] = ACTIONS(5046), [aux_sym_char_literal_token1] = ACTIONS(5046), [anon_sym_SQUOTE] = ACTIONS(5044), [anon_sym___DATE__] = ACTIONS(5044), [anon_sym___FILE__] = ACTIONS(5044), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5044), [anon_sym___FUNCTION__] = ACTIONS(5044), [anon_sym___LINE__] = ACTIONS(5044), [anon_sym___MODULE__] = ACTIONS(5044), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5044), [anon_sym___TIME__] = ACTIONS(5044), [anon_sym___TIMESTAMP__] = ACTIONS(5044), [anon_sym___VENDOR__] = ACTIONS(5044), [anon_sym___VERSION__] = ACTIONS(5044), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5046), [sym_float_literal] = ACTIONS(5046), [sym__string] = ACTIONS(5046), }, [1549] = { [sym_identifier] = ACTIONS(5048), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5050), [anon_sym_RBRACE] = ACTIONS(5050), [anon_sym_LBRACE] = ACTIONS(5050), [anon_sym_DOT] = ACTIONS(5050), [anon_sym_AMP] = ACTIONS(5050), [anon_sym_DASH] = ACTIONS(5048), [anon_sym_DASH_DASH] = ACTIONS(5050), [anon_sym_PLUS] = ACTIONS(5048), [anon_sym_PLUS_PLUS] = ACTIONS(5050), [anon_sym_BANG] = ACTIONS(5050), [anon_sym_LPAREN] = ACTIONS(5050), [anon_sym_RPAREN] = ACTIONS(5050), [anon_sym_LBRACK] = ACTIONS(5050), [anon_sym_SEMI] = ACTIONS(5050), [anon_sym_DOLLAR] = ACTIONS(5050), [anon_sym_STAR] = ACTIONS(5050), [anon_sym_TILDE] = ACTIONS(5050), [anon_sym_AT] = ACTIONS(5050), [sym_bool] = ACTIONS(5048), [sym_byte] = ACTIONS(5048), [sym_ubyte] = ACTIONS(5048), [sym_char] = ACTIONS(5048), [sym_short] = ACTIONS(5048), [sym_ushort] = ACTIONS(5048), [sym_int] = ACTIONS(5048), [sym_uint] = ACTIONS(5048), [sym_long] = ACTIONS(5048), [sym_ulong] = ACTIONS(5048), [sym_cent] = ACTIONS(5048), [sym_ucent] = ACTIONS(5048), [sym_wchar] = ACTIONS(5048), [sym_dchar] = ACTIONS(5048), [sym_float] = ACTIONS(5048), [sym_double] = ACTIONS(5048), [sym_real] = ACTIONS(5048), [sym_ifloat] = ACTIONS(5048), [sym_idouble] = ACTIONS(5048), [sym_ireal] = ACTIONS(5048), [sym_cfloat] = ACTIONS(5048), [sym_cdouble] = ACTIONS(5048), [sym_creal] = ACTIONS(5048), [sym_size_t] = ACTIONS(5048), [sym_ptrdiff_t] = ACTIONS(5048), [sym_string] = ACTIONS(5048), [sym_cstring] = ACTIONS(5048), [sym_dstring] = ACTIONS(5048), [sym_wstring] = ACTIONS(5048), [sym_noreturn] = ACTIONS(5048), [sym_true] = ACTIONS(5048), [sym_false] = ACTIONS(5048), [sym_null] = ACTIONS(5048), [sym_super] = ACTIONS(5048), [sym_this] = ACTIONS(5048), [sym_abstract] = ACTIONS(5048), [sym_alias] = ACTIONS(5048), [sym_align] = ACTIONS(5048), [sym_asm] = ACTIONS(5048), [sym_assert] = ACTIONS(5048), [sym_auto] = ACTIONS(5048), [sym_break] = ACTIONS(5048), [sym_case] = ACTIONS(5048), [sym_cast] = ACTIONS(5048), [sym_catch] = ACTIONS(5048), [sym_class] = ACTIONS(5048), [sym_const] = ACTIONS(5048), [sym_continue] = ACTIONS(5048), [sym_debug] = ACTIONS(5048), [sym_default] = ACTIONS(5048), [sym_delegate] = ACTIONS(5048), [sym_delete] = ACTIONS(5048), [sym_deprecated] = ACTIONS(5048), [sym_do] = ACTIONS(5048), [sym_else] = ACTIONS(5048), [sym_enum] = ACTIONS(5048), [sym_export] = ACTIONS(5048), [sym_extern] = ACTIONS(5048), [sym_final] = ACTIONS(5048), [sym_finally] = ACTIONS(5048), [sym_for] = ACTIONS(5048), [sym_foreach] = ACTIONS(5048), [sym_foreach_reverse] = ACTIONS(5048), [sym_function] = ACTIONS(5048), [sym_goto] = ACTIONS(5048), [sym_if] = ACTIONS(5048), [sym_immutable] = ACTIONS(5048), [sym_import] = ACTIONS(5048), [sym_in] = ACTIONS(5048), [sym_inout] = ACTIONS(5048), [sym_interface] = ACTIONS(5048), [sym_invariant] = ACTIONS(5048), [sym_is] = ACTIONS(5048), [sym_mixin] = ACTIONS(5048), [sym_new] = ACTIONS(5048), [sym_nothrow] = ACTIONS(5048), [sym_out] = ACTIONS(5048), [sym_override] = ACTIONS(5048), [sym_package] = ACTIONS(5048), [sym_pragma] = ACTIONS(5048), [sym_private] = ACTIONS(5048), [sym_protected] = ACTIONS(5048), [sym_public] = ACTIONS(5048), [sym_pure] = ACTIONS(5048), [sym_ref] = ACTIONS(5048), [sym_return] = ACTIONS(5048), [sym_scope] = ACTIONS(5048), [sym_shared] = ACTIONS(5048), [sym_static] = ACTIONS(5048), [sym_struct] = ACTIONS(5048), [sym_switch] = ACTIONS(5048), [sym_synchronized] = ACTIONS(5048), [sym_template] = ACTIONS(5048), [sym_throw] = ACTIONS(5048), [sym_try] = ACTIONS(5048), [sym_typeid] = ACTIONS(5048), [sym_typeof] = ACTIONS(5048), [sym_union] = ACTIONS(5048), [sym_unittest] = ACTIONS(5048), [sym_version] = ACTIONS(5048), [sym_while] = ACTIONS(5048), [sym_with] = ACTIONS(5048), [sym_gshared] = ACTIONS(5048), [sym_traits] = ACTIONS(5048), [sym_vector] = ACTIONS(5048), [sym_void] = ACTIONS(5048), [anon_sym_BQUOTE] = ACTIONS(5050), [anon_sym_r_DQUOTE] = ACTIONS(5050), [anon_sym_x_DQUOTE] = ACTIONS(5050), [anon_sym_DQUOTE] = ACTIONS(5050), [anon_sym_i_BQUOTE] = ACTIONS(5050), [anon_sym_i_DQUOTE] = ACTIONS(5050), [anon_sym_iq_LBRACE] = ACTIONS(5050), [aux_sym_char_literal_token1] = ACTIONS(5050), [anon_sym_SQUOTE] = ACTIONS(5048), [anon_sym___DATE__] = ACTIONS(5048), [anon_sym___FILE__] = ACTIONS(5048), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5048), [anon_sym___FUNCTION__] = ACTIONS(5048), [anon_sym___LINE__] = ACTIONS(5048), [anon_sym___MODULE__] = ACTIONS(5048), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5048), [anon_sym___TIME__] = ACTIONS(5048), [anon_sym___TIMESTAMP__] = ACTIONS(5048), [anon_sym___VENDOR__] = ACTIONS(5048), [anon_sym___VERSION__] = ACTIONS(5048), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5050), [sym_float_literal] = ACTIONS(5050), [sym__string] = ACTIONS(5050), }, [1550] = { [sym_identifier] = ACTIONS(5052), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5054), [anon_sym_RBRACE] = ACTIONS(5054), [anon_sym_LBRACE] = ACTIONS(5054), [anon_sym_DOT] = ACTIONS(5054), [anon_sym_AMP] = ACTIONS(5054), [anon_sym_DASH] = ACTIONS(5052), [anon_sym_DASH_DASH] = ACTIONS(5054), [anon_sym_PLUS] = ACTIONS(5052), [anon_sym_PLUS_PLUS] = ACTIONS(5054), [anon_sym_BANG] = ACTIONS(5054), [anon_sym_LPAREN] = ACTIONS(5054), [anon_sym_RPAREN] = ACTIONS(5054), [anon_sym_LBRACK] = ACTIONS(5054), [anon_sym_SEMI] = ACTIONS(5054), [anon_sym_DOLLAR] = ACTIONS(5054), [anon_sym_STAR] = ACTIONS(5054), [anon_sym_TILDE] = ACTIONS(5054), [anon_sym_AT] = ACTIONS(5054), [sym_bool] = ACTIONS(5052), [sym_byte] = ACTIONS(5052), [sym_ubyte] = ACTIONS(5052), [sym_char] = ACTIONS(5052), [sym_short] = ACTIONS(5052), [sym_ushort] = ACTIONS(5052), [sym_int] = ACTIONS(5052), [sym_uint] = ACTIONS(5052), [sym_long] = ACTIONS(5052), [sym_ulong] = ACTIONS(5052), [sym_cent] = ACTIONS(5052), [sym_ucent] = ACTIONS(5052), [sym_wchar] = ACTIONS(5052), [sym_dchar] = ACTIONS(5052), [sym_float] = ACTIONS(5052), [sym_double] = ACTIONS(5052), [sym_real] = ACTIONS(5052), [sym_ifloat] = ACTIONS(5052), [sym_idouble] = ACTIONS(5052), [sym_ireal] = ACTIONS(5052), [sym_cfloat] = ACTIONS(5052), [sym_cdouble] = ACTIONS(5052), [sym_creal] = ACTIONS(5052), [sym_size_t] = ACTIONS(5052), [sym_ptrdiff_t] = ACTIONS(5052), [sym_string] = ACTIONS(5052), [sym_cstring] = ACTIONS(5052), [sym_dstring] = ACTIONS(5052), [sym_wstring] = ACTIONS(5052), [sym_noreturn] = ACTIONS(5052), [sym_true] = ACTIONS(5052), [sym_false] = ACTIONS(5052), [sym_null] = ACTIONS(5052), [sym_super] = ACTIONS(5052), [sym_this] = ACTIONS(5052), [sym_abstract] = ACTIONS(5052), [sym_alias] = ACTIONS(5052), [sym_align] = ACTIONS(5052), [sym_asm] = ACTIONS(5052), [sym_assert] = ACTIONS(5052), [sym_auto] = ACTIONS(5052), [sym_break] = ACTIONS(5052), [sym_case] = ACTIONS(5052), [sym_cast] = ACTIONS(5052), [sym_catch] = ACTIONS(5052), [sym_class] = ACTIONS(5052), [sym_const] = ACTIONS(5052), [sym_continue] = ACTIONS(5052), [sym_debug] = ACTIONS(5052), [sym_default] = ACTIONS(5052), [sym_delegate] = ACTIONS(5052), [sym_delete] = ACTIONS(5052), [sym_deprecated] = ACTIONS(5052), [sym_do] = ACTIONS(5052), [sym_else] = ACTIONS(5052), [sym_enum] = ACTIONS(5052), [sym_export] = ACTIONS(5052), [sym_extern] = ACTIONS(5052), [sym_final] = ACTIONS(5052), [sym_finally] = ACTIONS(5052), [sym_for] = ACTIONS(5052), [sym_foreach] = ACTIONS(5052), [sym_foreach_reverse] = ACTIONS(5052), [sym_function] = ACTIONS(5052), [sym_goto] = ACTIONS(5052), [sym_if] = ACTIONS(5052), [sym_immutable] = ACTIONS(5052), [sym_import] = ACTIONS(5052), [sym_in] = ACTIONS(5052), [sym_inout] = ACTIONS(5052), [sym_interface] = ACTIONS(5052), [sym_invariant] = ACTIONS(5052), [sym_is] = ACTIONS(5052), [sym_mixin] = ACTIONS(5052), [sym_new] = ACTIONS(5052), [sym_nothrow] = ACTIONS(5052), [sym_out] = ACTIONS(5052), [sym_override] = ACTIONS(5052), [sym_package] = ACTIONS(5052), [sym_pragma] = ACTIONS(5052), [sym_private] = ACTIONS(5052), [sym_protected] = ACTIONS(5052), [sym_public] = ACTIONS(5052), [sym_pure] = ACTIONS(5052), [sym_ref] = ACTIONS(5052), [sym_return] = ACTIONS(5052), [sym_scope] = ACTIONS(5052), [sym_shared] = ACTIONS(5052), [sym_static] = ACTIONS(5052), [sym_struct] = ACTIONS(5052), [sym_switch] = ACTIONS(5052), [sym_synchronized] = ACTIONS(5052), [sym_template] = ACTIONS(5052), [sym_throw] = ACTIONS(5052), [sym_try] = ACTIONS(5052), [sym_typeid] = ACTIONS(5052), [sym_typeof] = ACTIONS(5052), [sym_union] = ACTIONS(5052), [sym_unittest] = ACTIONS(5052), [sym_version] = ACTIONS(5052), [sym_while] = ACTIONS(5052), [sym_with] = ACTIONS(5052), [sym_gshared] = ACTIONS(5052), [sym_traits] = ACTIONS(5052), [sym_vector] = ACTIONS(5052), [sym_void] = ACTIONS(5052), [anon_sym_BQUOTE] = ACTIONS(5054), [anon_sym_r_DQUOTE] = ACTIONS(5054), [anon_sym_x_DQUOTE] = ACTIONS(5054), [anon_sym_DQUOTE] = ACTIONS(5054), [anon_sym_i_BQUOTE] = ACTIONS(5054), [anon_sym_i_DQUOTE] = ACTIONS(5054), [anon_sym_iq_LBRACE] = ACTIONS(5054), [aux_sym_char_literal_token1] = ACTIONS(5054), [anon_sym_SQUOTE] = ACTIONS(5052), [anon_sym___DATE__] = ACTIONS(5052), [anon_sym___FILE__] = ACTIONS(5052), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5052), [anon_sym___FUNCTION__] = ACTIONS(5052), [anon_sym___LINE__] = ACTIONS(5052), [anon_sym___MODULE__] = ACTIONS(5052), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5052), [anon_sym___TIME__] = ACTIONS(5052), [anon_sym___TIMESTAMP__] = ACTIONS(5052), [anon_sym___VENDOR__] = ACTIONS(5052), [anon_sym___VERSION__] = ACTIONS(5052), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5054), [sym_float_literal] = ACTIONS(5054), [sym__string] = ACTIONS(5054), }, [1551] = { [sym_identifier] = ACTIONS(5056), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5058), [anon_sym_RBRACE] = ACTIONS(5058), [anon_sym_LBRACE] = ACTIONS(5058), [anon_sym_DOT] = ACTIONS(5058), [anon_sym_AMP] = ACTIONS(5058), [anon_sym_DASH] = ACTIONS(5056), [anon_sym_DASH_DASH] = ACTIONS(5058), [anon_sym_PLUS] = ACTIONS(5056), [anon_sym_PLUS_PLUS] = ACTIONS(5058), [anon_sym_BANG] = ACTIONS(5058), [anon_sym_LPAREN] = ACTIONS(5058), [anon_sym_RPAREN] = ACTIONS(5058), [anon_sym_LBRACK] = ACTIONS(5058), [anon_sym_SEMI] = ACTIONS(5058), [anon_sym_DOLLAR] = ACTIONS(5058), [anon_sym_STAR] = ACTIONS(5058), [anon_sym_TILDE] = ACTIONS(5058), [anon_sym_AT] = ACTIONS(5058), [sym_bool] = ACTIONS(5056), [sym_byte] = ACTIONS(5056), [sym_ubyte] = ACTIONS(5056), [sym_char] = ACTIONS(5056), [sym_short] = ACTIONS(5056), [sym_ushort] = ACTIONS(5056), [sym_int] = ACTIONS(5056), [sym_uint] = ACTIONS(5056), [sym_long] = ACTIONS(5056), [sym_ulong] = ACTIONS(5056), [sym_cent] = ACTIONS(5056), [sym_ucent] = ACTIONS(5056), [sym_wchar] = ACTIONS(5056), [sym_dchar] = ACTIONS(5056), [sym_float] = ACTIONS(5056), [sym_double] = ACTIONS(5056), [sym_real] = ACTIONS(5056), [sym_ifloat] = ACTIONS(5056), [sym_idouble] = ACTIONS(5056), [sym_ireal] = ACTIONS(5056), [sym_cfloat] = ACTIONS(5056), [sym_cdouble] = ACTIONS(5056), [sym_creal] = ACTIONS(5056), [sym_size_t] = ACTIONS(5056), [sym_ptrdiff_t] = ACTIONS(5056), [sym_string] = ACTIONS(5056), [sym_cstring] = ACTIONS(5056), [sym_dstring] = ACTIONS(5056), [sym_wstring] = ACTIONS(5056), [sym_noreturn] = ACTIONS(5056), [sym_true] = ACTIONS(5056), [sym_false] = ACTIONS(5056), [sym_null] = ACTIONS(5056), [sym_super] = ACTIONS(5056), [sym_this] = ACTIONS(5056), [sym_abstract] = ACTIONS(5056), [sym_alias] = ACTIONS(5056), [sym_align] = ACTIONS(5056), [sym_asm] = ACTIONS(5056), [sym_assert] = ACTIONS(5056), [sym_auto] = ACTIONS(5056), [sym_break] = ACTIONS(5056), [sym_case] = ACTIONS(5056), [sym_cast] = ACTIONS(5056), [sym_catch] = ACTIONS(5056), [sym_class] = ACTIONS(5056), [sym_const] = ACTIONS(5056), [sym_continue] = ACTIONS(5056), [sym_debug] = ACTIONS(5056), [sym_default] = ACTIONS(5056), [sym_delegate] = ACTIONS(5056), [sym_delete] = ACTIONS(5056), [sym_deprecated] = ACTIONS(5056), [sym_do] = ACTIONS(5056), [sym_else] = ACTIONS(5056), [sym_enum] = ACTIONS(5056), [sym_export] = ACTIONS(5056), [sym_extern] = ACTIONS(5056), [sym_final] = ACTIONS(5056), [sym_finally] = ACTIONS(5056), [sym_for] = ACTIONS(5056), [sym_foreach] = ACTIONS(5056), [sym_foreach_reverse] = ACTIONS(5056), [sym_function] = ACTIONS(5056), [sym_goto] = ACTIONS(5056), [sym_if] = ACTIONS(5056), [sym_immutable] = ACTIONS(5056), [sym_import] = ACTIONS(5056), [sym_in] = ACTIONS(5056), [sym_inout] = ACTIONS(5056), [sym_interface] = ACTIONS(5056), [sym_invariant] = ACTIONS(5056), [sym_is] = ACTIONS(5056), [sym_mixin] = ACTIONS(5056), [sym_new] = ACTIONS(5056), [sym_nothrow] = ACTIONS(5056), [sym_out] = ACTIONS(5056), [sym_override] = ACTIONS(5056), [sym_package] = ACTIONS(5056), [sym_pragma] = ACTIONS(5056), [sym_private] = ACTIONS(5056), [sym_protected] = ACTIONS(5056), [sym_public] = ACTIONS(5056), [sym_pure] = ACTIONS(5056), [sym_ref] = ACTIONS(5056), [sym_return] = ACTIONS(5056), [sym_scope] = ACTIONS(5056), [sym_shared] = ACTIONS(5056), [sym_static] = ACTIONS(5056), [sym_struct] = ACTIONS(5056), [sym_switch] = ACTIONS(5056), [sym_synchronized] = ACTIONS(5056), [sym_template] = ACTIONS(5056), [sym_throw] = ACTIONS(5056), [sym_try] = ACTIONS(5056), [sym_typeid] = ACTIONS(5056), [sym_typeof] = ACTIONS(5056), [sym_union] = ACTIONS(5056), [sym_unittest] = ACTIONS(5056), [sym_version] = ACTIONS(5056), [sym_while] = ACTIONS(5056), [sym_with] = ACTIONS(5056), [sym_gshared] = ACTIONS(5056), [sym_traits] = ACTIONS(5056), [sym_vector] = ACTIONS(5056), [sym_void] = ACTIONS(5056), [anon_sym_BQUOTE] = ACTIONS(5058), [anon_sym_r_DQUOTE] = ACTIONS(5058), [anon_sym_x_DQUOTE] = ACTIONS(5058), [anon_sym_DQUOTE] = ACTIONS(5058), [anon_sym_i_BQUOTE] = ACTIONS(5058), [anon_sym_i_DQUOTE] = ACTIONS(5058), [anon_sym_iq_LBRACE] = ACTIONS(5058), [aux_sym_char_literal_token1] = ACTIONS(5058), [anon_sym_SQUOTE] = ACTIONS(5056), [anon_sym___DATE__] = ACTIONS(5056), [anon_sym___FILE__] = ACTIONS(5056), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5056), [anon_sym___FUNCTION__] = ACTIONS(5056), [anon_sym___LINE__] = ACTIONS(5056), [anon_sym___MODULE__] = ACTIONS(5056), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5056), [anon_sym___TIME__] = ACTIONS(5056), [anon_sym___TIMESTAMP__] = ACTIONS(5056), [anon_sym___VENDOR__] = ACTIONS(5056), [anon_sym___VERSION__] = ACTIONS(5056), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5058), [sym_float_literal] = ACTIONS(5058), [sym__string] = ACTIONS(5058), }, [1552] = { [sym_identifier] = ACTIONS(5060), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5062), [anon_sym_RBRACE] = ACTIONS(5062), [anon_sym_LBRACE] = ACTIONS(5062), [anon_sym_DOT] = ACTIONS(5062), [anon_sym_AMP] = ACTIONS(5062), [anon_sym_DASH] = ACTIONS(5060), [anon_sym_DASH_DASH] = ACTIONS(5062), [anon_sym_PLUS] = ACTIONS(5060), [anon_sym_PLUS_PLUS] = ACTIONS(5062), [anon_sym_BANG] = ACTIONS(5062), [anon_sym_LPAREN] = ACTIONS(5062), [anon_sym_RPAREN] = ACTIONS(5062), [anon_sym_LBRACK] = ACTIONS(5062), [anon_sym_SEMI] = ACTIONS(5062), [anon_sym_DOLLAR] = ACTIONS(5062), [anon_sym_STAR] = ACTIONS(5062), [anon_sym_TILDE] = ACTIONS(5062), [anon_sym_AT] = ACTIONS(5062), [sym_bool] = ACTIONS(5060), [sym_byte] = ACTIONS(5060), [sym_ubyte] = ACTIONS(5060), [sym_char] = ACTIONS(5060), [sym_short] = ACTIONS(5060), [sym_ushort] = ACTIONS(5060), [sym_int] = ACTIONS(5060), [sym_uint] = ACTIONS(5060), [sym_long] = ACTIONS(5060), [sym_ulong] = ACTIONS(5060), [sym_cent] = ACTIONS(5060), [sym_ucent] = ACTIONS(5060), [sym_wchar] = ACTIONS(5060), [sym_dchar] = ACTIONS(5060), [sym_float] = ACTIONS(5060), [sym_double] = ACTIONS(5060), [sym_real] = ACTIONS(5060), [sym_ifloat] = ACTIONS(5060), [sym_idouble] = ACTIONS(5060), [sym_ireal] = ACTIONS(5060), [sym_cfloat] = ACTIONS(5060), [sym_cdouble] = ACTIONS(5060), [sym_creal] = ACTIONS(5060), [sym_size_t] = ACTIONS(5060), [sym_ptrdiff_t] = ACTIONS(5060), [sym_string] = ACTIONS(5060), [sym_cstring] = ACTIONS(5060), [sym_dstring] = ACTIONS(5060), [sym_wstring] = ACTIONS(5060), [sym_noreturn] = ACTIONS(5060), [sym_true] = ACTIONS(5060), [sym_false] = ACTIONS(5060), [sym_null] = ACTIONS(5060), [sym_super] = ACTIONS(5060), [sym_this] = ACTIONS(5060), [sym_abstract] = ACTIONS(5060), [sym_alias] = ACTIONS(5060), [sym_align] = ACTIONS(5060), [sym_asm] = ACTIONS(5060), [sym_assert] = ACTIONS(5060), [sym_auto] = ACTIONS(5060), [sym_break] = ACTIONS(5060), [sym_case] = ACTIONS(5060), [sym_cast] = ACTIONS(5060), [sym_catch] = ACTIONS(5060), [sym_class] = ACTIONS(5060), [sym_const] = ACTIONS(5060), [sym_continue] = ACTIONS(5060), [sym_debug] = ACTIONS(5060), [sym_default] = ACTIONS(5060), [sym_delegate] = ACTIONS(5060), [sym_delete] = ACTIONS(5060), [sym_deprecated] = ACTIONS(5060), [sym_do] = ACTIONS(5060), [sym_else] = ACTIONS(5060), [sym_enum] = ACTIONS(5060), [sym_export] = ACTIONS(5060), [sym_extern] = ACTIONS(5060), [sym_final] = ACTIONS(5060), [sym_finally] = ACTIONS(5060), [sym_for] = ACTIONS(5060), [sym_foreach] = ACTIONS(5060), [sym_foreach_reverse] = ACTIONS(5060), [sym_function] = ACTIONS(5060), [sym_goto] = ACTIONS(5060), [sym_if] = ACTIONS(5060), [sym_immutable] = ACTIONS(5060), [sym_import] = ACTIONS(5060), [sym_in] = ACTIONS(5060), [sym_inout] = ACTIONS(5060), [sym_interface] = ACTIONS(5060), [sym_invariant] = ACTIONS(5060), [sym_is] = ACTIONS(5060), [sym_mixin] = ACTIONS(5060), [sym_new] = ACTIONS(5060), [sym_nothrow] = ACTIONS(5060), [sym_out] = ACTIONS(5060), [sym_override] = ACTIONS(5060), [sym_package] = ACTIONS(5060), [sym_pragma] = ACTIONS(5060), [sym_private] = ACTIONS(5060), [sym_protected] = ACTIONS(5060), [sym_public] = ACTIONS(5060), [sym_pure] = ACTIONS(5060), [sym_ref] = ACTIONS(5060), [sym_return] = ACTIONS(5060), [sym_scope] = ACTIONS(5060), [sym_shared] = ACTIONS(5060), [sym_static] = ACTIONS(5060), [sym_struct] = ACTIONS(5060), [sym_switch] = ACTIONS(5060), [sym_synchronized] = ACTIONS(5060), [sym_template] = ACTIONS(5060), [sym_throw] = ACTIONS(5060), [sym_try] = ACTIONS(5060), [sym_typeid] = ACTIONS(5060), [sym_typeof] = ACTIONS(5060), [sym_union] = ACTIONS(5060), [sym_unittest] = ACTIONS(5060), [sym_version] = ACTIONS(5060), [sym_while] = ACTIONS(5060), [sym_with] = ACTIONS(5060), [sym_gshared] = ACTIONS(5060), [sym_traits] = ACTIONS(5060), [sym_vector] = ACTIONS(5060), [sym_void] = ACTIONS(5060), [anon_sym_BQUOTE] = ACTIONS(5062), [anon_sym_r_DQUOTE] = ACTIONS(5062), [anon_sym_x_DQUOTE] = ACTIONS(5062), [anon_sym_DQUOTE] = ACTIONS(5062), [anon_sym_i_BQUOTE] = ACTIONS(5062), [anon_sym_i_DQUOTE] = ACTIONS(5062), [anon_sym_iq_LBRACE] = ACTIONS(5062), [aux_sym_char_literal_token1] = ACTIONS(5062), [anon_sym_SQUOTE] = ACTIONS(5060), [anon_sym___DATE__] = ACTIONS(5060), [anon_sym___FILE__] = ACTIONS(5060), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5060), [anon_sym___FUNCTION__] = ACTIONS(5060), [anon_sym___LINE__] = ACTIONS(5060), [anon_sym___MODULE__] = ACTIONS(5060), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5060), [anon_sym___TIME__] = ACTIONS(5060), [anon_sym___TIMESTAMP__] = ACTIONS(5060), [anon_sym___VENDOR__] = ACTIONS(5060), [anon_sym___VERSION__] = ACTIONS(5060), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5062), [sym_float_literal] = ACTIONS(5062), [sym__string] = ACTIONS(5062), }, [1553] = { [sym_identifier] = ACTIONS(5064), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5066), [anon_sym_RBRACE] = ACTIONS(5066), [anon_sym_LBRACE] = ACTIONS(5066), [anon_sym_DOT] = ACTIONS(5066), [anon_sym_AMP] = ACTIONS(5066), [anon_sym_DASH] = ACTIONS(5064), [anon_sym_DASH_DASH] = ACTIONS(5066), [anon_sym_PLUS] = ACTIONS(5064), [anon_sym_PLUS_PLUS] = ACTIONS(5066), [anon_sym_BANG] = ACTIONS(5066), [anon_sym_LPAREN] = ACTIONS(5066), [anon_sym_RPAREN] = ACTIONS(5066), [anon_sym_LBRACK] = ACTIONS(5066), [anon_sym_SEMI] = ACTIONS(5066), [anon_sym_DOLLAR] = ACTIONS(5066), [anon_sym_STAR] = ACTIONS(5066), [anon_sym_TILDE] = ACTIONS(5066), [anon_sym_AT] = ACTIONS(5066), [sym_bool] = ACTIONS(5064), [sym_byte] = ACTIONS(5064), [sym_ubyte] = ACTIONS(5064), [sym_char] = ACTIONS(5064), [sym_short] = ACTIONS(5064), [sym_ushort] = ACTIONS(5064), [sym_int] = ACTIONS(5064), [sym_uint] = ACTIONS(5064), [sym_long] = ACTIONS(5064), [sym_ulong] = ACTIONS(5064), [sym_cent] = ACTIONS(5064), [sym_ucent] = ACTIONS(5064), [sym_wchar] = ACTIONS(5064), [sym_dchar] = ACTIONS(5064), [sym_float] = ACTIONS(5064), [sym_double] = ACTIONS(5064), [sym_real] = ACTIONS(5064), [sym_ifloat] = ACTIONS(5064), [sym_idouble] = ACTIONS(5064), [sym_ireal] = ACTIONS(5064), [sym_cfloat] = ACTIONS(5064), [sym_cdouble] = ACTIONS(5064), [sym_creal] = ACTIONS(5064), [sym_size_t] = ACTIONS(5064), [sym_ptrdiff_t] = ACTIONS(5064), [sym_string] = ACTIONS(5064), [sym_cstring] = ACTIONS(5064), [sym_dstring] = ACTIONS(5064), [sym_wstring] = ACTIONS(5064), [sym_noreturn] = ACTIONS(5064), [sym_true] = ACTIONS(5064), [sym_false] = ACTIONS(5064), [sym_null] = ACTIONS(5064), [sym_super] = ACTIONS(5064), [sym_this] = ACTIONS(5064), [sym_abstract] = ACTIONS(5064), [sym_alias] = ACTIONS(5064), [sym_align] = ACTIONS(5064), [sym_asm] = ACTIONS(5064), [sym_assert] = ACTIONS(5064), [sym_auto] = ACTIONS(5064), [sym_break] = ACTIONS(5064), [sym_case] = ACTIONS(5064), [sym_cast] = ACTIONS(5064), [sym_catch] = ACTIONS(5064), [sym_class] = ACTIONS(5064), [sym_const] = ACTIONS(5064), [sym_continue] = ACTIONS(5064), [sym_debug] = ACTIONS(5064), [sym_default] = ACTIONS(5064), [sym_delegate] = ACTIONS(5064), [sym_delete] = ACTIONS(5064), [sym_deprecated] = ACTIONS(5064), [sym_do] = ACTIONS(5064), [sym_else] = ACTIONS(5064), [sym_enum] = ACTIONS(5064), [sym_export] = ACTIONS(5064), [sym_extern] = ACTIONS(5064), [sym_final] = ACTIONS(5064), [sym_finally] = ACTIONS(5064), [sym_for] = ACTIONS(5064), [sym_foreach] = ACTIONS(5064), [sym_foreach_reverse] = ACTIONS(5064), [sym_function] = ACTIONS(5064), [sym_goto] = ACTIONS(5064), [sym_if] = ACTIONS(5064), [sym_immutable] = ACTIONS(5064), [sym_import] = ACTIONS(5064), [sym_in] = ACTIONS(5064), [sym_inout] = ACTIONS(5064), [sym_interface] = ACTIONS(5064), [sym_invariant] = ACTIONS(5064), [sym_is] = ACTIONS(5064), [sym_mixin] = ACTIONS(5064), [sym_new] = ACTIONS(5064), [sym_nothrow] = ACTIONS(5064), [sym_out] = ACTIONS(5064), [sym_override] = ACTIONS(5064), [sym_package] = ACTIONS(5064), [sym_pragma] = ACTIONS(5064), [sym_private] = ACTIONS(5064), [sym_protected] = ACTIONS(5064), [sym_public] = ACTIONS(5064), [sym_pure] = ACTIONS(5064), [sym_ref] = ACTIONS(5064), [sym_return] = ACTIONS(5064), [sym_scope] = ACTIONS(5064), [sym_shared] = ACTIONS(5064), [sym_static] = ACTIONS(5064), [sym_struct] = ACTIONS(5064), [sym_switch] = ACTIONS(5064), [sym_synchronized] = ACTIONS(5064), [sym_template] = ACTIONS(5064), [sym_throw] = ACTIONS(5064), [sym_try] = ACTIONS(5064), [sym_typeid] = ACTIONS(5064), [sym_typeof] = ACTIONS(5064), [sym_union] = ACTIONS(5064), [sym_unittest] = ACTIONS(5064), [sym_version] = ACTIONS(5064), [sym_while] = ACTIONS(5064), [sym_with] = ACTIONS(5064), [sym_gshared] = ACTIONS(5064), [sym_traits] = ACTIONS(5064), [sym_vector] = ACTIONS(5064), [sym_void] = ACTIONS(5064), [anon_sym_BQUOTE] = ACTIONS(5066), [anon_sym_r_DQUOTE] = ACTIONS(5066), [anon_sym_x_DQUOTE] = ACTIONS(5066), [anon_sym_DQUOTE] = ACTIONS(5066), [anon_sym_i_BQUOTE] = ACTIONS(5066), [anon_sym_i_DQUOTE] = ACTIONS(5066), [anon_sym_iq_LBRACE] = ACTIONS(5066), [aux_sym_char_literal_token1] = ACTIONS(5066), [anon_sym_SQUOTE] = ACTIONS(5064), [anon_sym___DATE__] = ACTIONS(5064), [anon_sym___FILE__] = ACTIONS(5064), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5064), [anon_sym___FUNCTION__] = ACTIONS(5064), [anon_sym___LINE__] = ACTIONS(5064), [anon_sym___MODULE__] = ACTIONS(5064), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5064), [anon_sym___TIME__] = ACTIONS(5064), [anon_sym___TIMESTAMP__] = ACTIONS(5064), [anon_sym___VENDOR__] = ACTIONS(5064), [anon_sym___VERSION__] = ACTIONS(5064), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5066), [sym_float_literal] = ACTIONS(5066), [sym__string] = ACTIONS(5066), }, [1554] = { [sym_identifier] = ACTIONS(5068), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5070), [anon_sym_RBRACE] = ACTIONS(5070), [anon_sym_LBRACE] = ACTIONS(5070), [anon_sym_DOT] = ACTIONS(5070), [anon_sym_AMP] = ACTIONS(5070), [anon_sym_DASH] = ACTIONS(5068), [anon_sym_DASH_DASH] = ACTIONS(5070), [anon_sym_PLUS] = ACTIONS(5068), [anon_sym_PLUS_PLUS] = ACTIONS(5070), [anon_sym_BANG] = ACTIONS(5070), [anon_sym_LPAREN] = ACTIONS(5070), [anon_sym_RPAREN] = ACTIONS(5070), [anon_sym_LBRACK] = ACTIONS(5070), [anon_sym_SEMI] = ACTIONS(5070), [anon_sym_DOLLAR] = ACTIONS(5070), [anon_sym_STAR] = ACTIONS(5070), [anon_sym_TILDE] = ACTIONS(5070), [anon_sym_AT] = ACTIONS(5070), [sym_bool] = ACTIONS(5068), [sym_byte] = ACTIONS(5068), [sym_ubyte] = ACTIONS(5068), [sym_char] = ACTIONS(5068), [sym_short] = ACTIONS(5068), [sym_ushort] = ACTIONS(5068), [sym_int] = ACTIONS(5068), [sym_uint] = ACTIONS(5068), [sym_long] = ACTIONS(5068), [sym_ulong] = ACTIONS(5068), [sym_cent] = ACTIONS(5068), [sym_ucent] = ACTIONS(5068), [sym_wchar] = ACTIONS(5068), [sym_dchar] = ACTIONS(5068), [sym_float] = ACTIONS(5068), [sym_double] = ACTIONS(5068), [sym_real] = ACTIONS(5068), [sym_ifloat] = ACTIONS(5068), [sym_idouble] = ACTIONS(5068), [sym_ireal] = ACTIONS(5068), [sym_cfloat] = ACTIONS(5068), [sym_cdouble] = ACTIONS(5068), [sym_creal] = ACTIONS(5068), [sym_size_t] = ACTIONS(5068), [sym_ptrdiff_t] = ACTIONS(5068), [sym_string] = ACTIONS(5068), [sym_cstring] = ACTIONS(5068), [sym_dstring] = ACTIONS(5068), [sym_wstring] = ACTIONS(5068), [sym_noreturn] = ACTIONS(5068), [sym_true] = ACTIONS(5068), [sym_false] = ACTIONS(5068), [sym_null] = ACTIONS(5068), [sym_super] = ACTIONS(5068), [sym_this] = ACTIONS(5068), [sym_abstract] = ACTIONS(5068), [sym_alias] = ACTIONS(5068), [sym_align] = ACTIONS(5068), [sym_asm] = ACTIONS(5068), [sym_assert] = ACTIONS(5068), [sym_auto] = ACTIONS(5068), [sym_break] = ACTIONS(5068), [sym_case] = ACTIONS(5068), [sym_cast] = ACTIONS(5068), [sym_catch] = ACTIONS(5068), [sym_class] = ACTIONS(5068), [sym_const] = ACTIONS(5068), [sym_continue] = ACTIONS(5068), [sym_debug] = ACTIONS(5068), [sym_default] = ACTIONS(5068), [sym_delegate] = ACTIONS(5068), [sym_delete] = ACTIONS(5068), [sym_deprecated] = ACTIONS(5068), [sym_do] = ACTIONS(5068), [sym_else] = ACTIONS(5068), [sym_enum] = ACTIONS(5068), [sym_export] = ACTIONS(5068), [sym_extern] = ACTIONS(5068), [sym_final] = ACTIONS(5068), [sym_finally] = ACTIONS(5068), [sym_for] = ACTIONS(5068), [sym_foreach] = ACTIONS(5068), [sym_foreach_reverse] = ACTIONS(5068), [sym_function] = ACTIONS(5068), [sym_goto] = ACTIONS(5068), [sym_if] = ACTIONS(5068), [sym_immutable] = ACTIONS(5068), [sym_import] = ACTIONS(5068), [sym_in] = ACTIONS(5068), [sym_inout] = ACTIONS(5068), [sym_interface] = ACTIONS(5068), [sym_invariant] = ACTIONS(5068), [sym_is] = ACTIONS(5068), [sym_mixin] = ACTIONS(5068), [sym_new] = ACTIONS(5068), [sym_nothrow] = ACTIONS(5068), [sym_out] = ACTIONS(5068), [sym_override] = ACTIONS(5068), [sym_package] = ACTIONS(5068), [sym_pragma] = ACTIONS(5068), [sym_private] = ACTIONS(5068), [sym_protected] = ACTIONS(5068), [sym_public] = ACTIONS(5068), [sym_pure] = ACTIONS(5068), [sym_ref] = ACTIONS(5068), [sym_return] = ACTIONS(5068), [sym_scope] = ACTIONS(5068), [sym_shared] = ACTIONS(5068), [sym_static] = ACTIONS(5068), [sym_struct] = ACTIONS(5068), [sym_switch] = ACTIONS(5068), [sym_synchronized] = ACTIONS(5068), [sym_template] = ACTIONS(5068), [sym_throw] = ACTIONS(5068), [sym_try] = ACTIONS(5068), [sym_typeid] = ACTIONS(5068), [sym_typeof] = ACTIONS(5068), [sym_union] = ACTIONS(5068), [sym_unittest] = ACTIONS(5068), [sym_version] = ACTIONS(5068), [sym_while] = ACTIONS(5068), [sym_with] = ACTIONS(5068), [sym_gshared] = ACTIONS(5068), [sym_traits] = ACTIONS(5068), [sym_vector] = ACTIONS(5068), [sym_void] = ACTIONS(5068), [anon_sym_BQUOTE] = ACTIONS(5070), [anon_sym_r_DQUOTE] = ACTIONS(5070), [anon_sym_x_DQUOTE] = ACTIONS(5070), [anon_sym_DQUOTE] = ACTIONS(5070), [anon_sym_i_BQUOTE] = ACTIONS(5070), [anon_sym_i_DQUOTE] = ACTIONS(5070), [anon_sym_iq_LBRACE] = ACTIONS(5070), [aux_sym_char_literal_token1] = ACTIONS(5070), [anon_sym_SQUOTE] = ACTIONS(5068), [anon_sym___DATE__] = ACTIONS(5068), [anon_sym___FILE__] = ACTIONS(5068), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5068), [anon_sym___FUNCTION__] = ACTIONS(5068), [anon_sym___LINE__] = ACTIONS(5068), [anon_sym___MODULE__] = ACTIONS(5068), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5068), [anon_sym___TIME__] = ACTIONS(5068), [anon_sym___TIMESTAMP__] = ACTIONS(5068), [anon_sym___VENDOR__] = ACTIONS(5068), [anon_sym___VERSION__] = ACTIONS(5068), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5070), [sym_float_literal] = ACTIONS(5070), [sym__string] = ACTIONS(5070), }, [1555] = { [sym_identifier] = ACTIONS(5072), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5074), [anon_sym_RBRACE] = ACTIONS(5074), [anon_sym_LBRACE] = ACTIONS(5074), [anon_sym_DOT] = ACTIONS(5074), [anon_sym_AMP] = ACTIONS(5074), [anon_sym_DASH] = ACTIONS(5072), [anon_sym_DASH_DASH] = ACTIONS(5074), [anon_sym_PLUS] = ACTIONS(5072), [anon_sym_PLUS_PLUS] = ACTIONS(5074), [anon_sym_BANG] = ACTIONS(5074), [anon_sym_LPAREN] = ACTIONS(5074), [anon_sym_RPAREN] = ACTIONS(5074), [anon_sym_LBRACK] = ACTIONS(5074), [anon_sym_SEMI] = ACTIONS(5074), [anon_sym_DOLLAR] = ACTIONS(5074), [anon_sym_STAR] = ACTIONS(5074), [anon_sym_TILDE] = ACTIONS(5074), [anon_sym_AT] = ACTIONS(5074), [sym_bool] = ACTIONS(5072), [sym_byte] = ACTIONS(5072), [sym_ubyte] = ACTIONS(5072), [sym_char] = ACTIONS(5072), [sym_short] = ACTIONS(5072), [sym_ushort] = ACTIONS(5072), [sym_int] = ACTIONS(5072), [sym_uint] = ACTIONS(5072), [sym_long] = ACTIONS(5072), [sym_ulong] = ACTIONS(5072), [sym_cent] = ACTIONS(5072), [sym_ucent] = ACTIONS(5072), [sym_wchar] = ACTIONS(5072), [sym_dchar] = ACTIONS(5072), [sym_float] = ACTIONS(5072), [sym_double] = ACTIONS(5072), [sym_real] = ACTIONS(5072), [sym_ifloat] = ACTIONS(5072), [sym_idouble] = ACTIONS(5072), [sym_ireal] = ACTIONS(5072), [sym_cfloat] = ACTIONS(5072), [sym_cdouble] = ACTIONS(5072), [sym_creal] = ACTIONS(5072), [sym_size_t] = ACTIONS(5072), [sym_ptrdiff_t] = ACTIONS(5072), [sym_string] = ACTIONS(5072), [sym_cstring] = ACTIONS(5072), [sym_dstring] = ACTIONS(5072), [sym_wstring] = ACTIONS(5072), [sym_noreturn] = ACTIONS(5072), [sym_true] = ACTIONS(5072), [sym_false] = ACTIONS(5072), [sym_null] = ACTIONS(5072), [sym_super] = ACTIONS(5072), [sym_this] = ACTIONS(5072), [sym_abstract] = ACTIONS(5072), [sym_alias] = ACTIONS(5072), [sym_align] = ACTIONS(5072), [sym_asm] = ACTIONS(5072), [sym_assert] = ACTIONS(5072), [sym_auto] = ACTIONS(5072), [sym_break] = ACTIONS(5072), [sym_case] = ACTIONS(5072), [sym_cast] = ACTIONS(5072), [sym_catch] = ACTIONS(5072), [sym_class] = ACTIONS(5072), [sym_const] = ACTIONS(5072), [sym_continue] = ACTIONS(5072), [sym_debug] = ACTIONS(5072), [sym_default] = ACTIONS(5072), [sym_delegate] = ACTIONS(5072), [sym_delete] = ACTIONS(5072), [sym_deprecated] = ACTIONS(5072), [sym_do] = ACTIONS(5072), [sym_else] = ACTIONS(5072), [sym_enum] = ACTIONS(5072), [sym_export] = ACTIONS(5072), [sym_extern] = ACTIONS(5072), [sym_final] = ACTIONS(5072), [sym_finally] = ACTIONS(5072), [sym_for] = ACTIONS(5072), [sym_foreach] = ACTIONS(5072), [sym_foreach_reverse] = ACTIONS(5072), [sym_function] = ACTIONS(5072), [sym_goto] = ACTIONS(5072), [sym_if] = ACTIONS(5072), [sym_immutable] = ACTIONS(5072), [sym_import] = ACTIONS(5072), [sym_in] = ACTIONS(5072), [sym_inout] = ACTIONS(5072), [sym_interface] = ACTIONS(5072), [sym_invariant] = ACTIONS(5072), [sym_is] = ACTIONS(5072), [sym_mixin] = ACTIONS(5072), [sym_new] = ACTIONS(5072), [sym_nothrow] = ACTIONS(5072), [sym_out] = ACTIONS(5072), [sym_override] = ACTIONS(5072), [sym_package] = ACTIONS(5072), [sym_pragma] = ACTIONS(5072), [sym_private] = ACTIONS(5072), [sym_protected] = ACTIONS(5072), [sym_public] = ACTIONS(5072), [sym_pure] = ACTIONS(5072), [sym_ref] = ACTIONS(5072), [sym_return] = ACTIONS(5072), [sym_scope] = ACTIONS(5072), [sym_shared] = ACTIONS(5072), [sym_static] = ACTIONS(5072), [sym_struct] = ACTIONS(5072), [sym_switch] = ACTIONS(5072), [sym_synchronized] = ACTIONS(5072), [sym_template] = ACTIONS(5072), [sym_throw] = ACTIONS(5072), [sym_try] = ACTIONS(5072), [sym_typeid] = ACTIONS(5072), [sym_typeof] = ACTIONS(5072), [sym_union] = ACTIONS(5072), [sym_unittest] = ACTIONS(5072), [sym_version] = ACTIONS(5072), [sym_while] = ACTIONS(5072), [sym_with] = ACTIONS(5072), [sym_gshared] = ACTIONS(5072), [sym_traits] = ACTIONS(5072), [sym_vector] = ACTIONS(5072), [sym_void] = ACTIONS(5072), [anon_sym_BQUOTE] = ACTIONS(5074), [anon_sym_r_DQUOTE] = ACTIONS(5074), [anon_sym_x_DQUOTE] = ACTIONS(5074), [anon_sym_DQUOTE] = ACTIONS(5074), [anon_sym_i_BQUOTE] = ACTIONS(5074), [anon_sym_i_DQUOTE] = ACTIONS(5074), [anon_sym_iq_LBRACE] = ACTIONS(5074), [aux_sym_char_literal_token1] = ACTIONS(5074), [anon_sym_SQUOTE] = ACTIONS(5072), [anon_sym___DATE__] = ACTIONS(5072), [anon_sym___FILE__] = ACTIONS(5072), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5072), [anon_sym___FUNCTION__] = ACTIONS(5072), [anon_sym___LINE__] = ACTIONS(5072), [anon_sym___MODULE__] = ACTIONS(5072), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5072), [anon_sym___TIME__] = ACTIONS(5072), [anon_sym___TIMESTAMP__] = ACTIONS(5072), [anon_sym___VENDOR__] = ACTIONS(5072), [anon_sym___VERSION__] = ACTIONS(5072), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5074), [sym_float_literal] = ACTIONS(5074), [sym__string] = ACTIONS(5074), }, [1556] = { [sym_identifier] = ACTIONS(5076), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5078), [anon_sym_RBRACE] = ACTIONS(5078), [anon_sym_LBRACE] = ACTIONS(5078), [anon_sym_DOT] = ACTIONS(5078), [anon_sym_AMP] = ACTIONS(5078), [anon_sym_DASH] = ACTIONS(5076), [anon_sym_DASH_DASH] = ACTIONS(5078), [anon_sym_PLUS] = ACTIONS(5076), [anon_sym_PLUS_PLUS] = ACTIONS(5078), [anon_sym_BANG] = ACTIONS(5078), [anon_sym_LPAREN] = ACTIONS(5078), [anon_sym_RPAREN] = ACTIONS(5078), [anon_sym_LBRACK] = ACTIONS(5078), [anon_sym_SEMI] = ACTIONS(5078), [anon_sym_DOLLAR] = ACTIONS(5078), [anon_sym_STAR] = ACTIONS(5078), [anon_sym_TILDE] = ACTIONS(5078), [anon_sym_AT] = ACTIONS(5078), [sym_bool] = ACTIONS(5076), [sym_byte] = ACTIONS(5076), [sym_ubyte] = ACTIONS(5076), [sym_char] = ACTIONS(5076), [sym_short] = ACTIONS(5076), [sym_ushort] = ACTIONS(5076), [sym_int] = ACTIONS(5076), [sym_uint] = ACTIONS(5076), [sym_long] = ACTIONS(5076), [sym_ulong] = ACTIONS(5076), [sym_cent] = ACTIONS(5076), [sym_ucent] = ACTIONS(5076), [sym_wchar] = ACTIONS(5076), [sym_dchar] = ACTIONS(5076), [sym_float] = ACTIONS(5076), [sym_double] = ACTIONS(5076), [sym_real] = ACTIONS(5076), [sym_ifloat] = ACTIONS(5076), [sym_idouble] = ACTIONS(5076), [sym_ireal] = ACTIONS(5076), [sym_cfloat] = ACTIONS(5076), [sym_cdouble] = ACTIONS(5076), [sym_creal] = ACTIONS(5076), [sym_size_t] = ACTIONS(5076), [sym_ptrdiff_t] = ACTIONS(5076), [sym_string] = ACTIONS(5076), [sym_cstring] = ACTIONS(5076), [sym_dstring] = ACTIONS(5076), [sym_wstring] = ACTIONS(5076), [sym_noreturn] = ACTIONS(5076), [sym_true] = ACTIONS(5076), [sym_false] = ACTIONS(5076), [sym_null] = ACTIONS(5076), [sym_super] = ACTIONS(5076), [sym_this] = ACTIONS(5076), [sym_abstract] = ACTIONS(5076), [sym_alias] = ACTIONS(5076), [sym_align] = ACTIONS(5076), [sym_asm] = ACTIONS(5076), [sym_assert] = ACTIONS(5076), [sym_auto] = ACTIONS(5076), [sym_break] = ACTIONS(5076), [sym_case] = ACTIONS(5076), [sym_cast] = ACTIONS(5076), [sym_catch] = ACTIONS(5076), [sym_class] = ACTIONS(5076), [sym_const] = ACTIONS(5076), [sym_continue] = ACTIONS(5076), [sym_debug] = ACTIONS(5076), [sym_default] = ACTIONS(5076), [sym_delegate] = ACTIONS(5076), [sym_delete] = ACTIONS(5076), [sym_deprecated] = ACTIONS(5076), [sym_do] = ACTIONS(5076), [sym_else] = ACTIONS(5076), [sym_enum] = ACTIONS(5076), [sym_export] = ACTIONS(5076), [sym_extern] = ACTIONS(5076), [sym_final] = ACTIONS(5076), [sym_finally] = ACTIONS(5076), [sym_for] = ACTIONS(5076), [sym_foreach] = ACTIONS(5076), [sym_foreach_reverse] = ACTIONS(5076), [sym_function] = ACTIONS(5076), [sym_goto] = ACTIONS(5076), [sym_if] = ACTIONS(5076), [sym_immutable] = ACTIONS(5076), [sym_import] = ACTIONS(5076), [sym_in] = ACTIONS(5076), [sym_inout] = ACTIONS(5076), [sym_interface] = ACTIONS(5076), [sym_invariant] = ACTIONS(5076), [sym_is] = ACTIONS(5076), [sym_mixin] = ACTIONS(5076), [sym_new] = ACTIONS(5076), [sym_nothrow] = ACTIONS(5076), [sym_out] = ACTIONS(5076), [sym_override] = ACTIONS(5076), [sym_package] = ACTIONS(5076), [sym_pragma] = ACTIONS(5076), [sym_private] = ACTIONS(5076), [sym_protected] = ACTIONS(5076), [sym_public] = ACTIONS(5076), [sym_pure] = ACTIONS(5076), [sym_ref] = ACTIONS(5076), [sym_return] = ACTIONS(5076), [sym_scope] = ACTIONS(5076), [sym_shared] = ACTIONS(5076), [sym_static] = ACTIONS(5076), [sym_struct] = ACTIONS(5076), [sym_switch] = ACTIONS(5076), [sym_synchronized] = ACTIONS(5076), [sym_template] = ACTIONS(5076), [sym_throw] = ACTIONS(5076), [sym_try] = ACTIONS(5076), [sym_typeid] = ACTIONS(5076), [sym_typeof] = ACTIONS(5076), [sym_union] = ACTIONS(5076), [sym_unittest] = ACTIONS(5076), [sym_version] = ACTIONS(5076), [sym_while] = ACTIONS(5076), [sym_with] = ACTIONS(5076), [sym_gshared] = ACTIONS(5076), [sym_traits] = ACTIONS(5076), [sym_vector] = ACTIONS(5076), [sym_void] = ACTIONS(5076), [anon_sym_BQUOTE] = ACTIONS(5078), [anon_sym_r_DQUOTE] = ACTIONS(5078), [anon_sym_x_DQUOTE] = ACTIONS(5078), [anon_sym_DQUOTE] = ACTIONS(5078), [anon_sym_i_BQUOTE] = ACTIONS(5078), [anon_sym_i_DQUOTE] = ACTIONS(5078), [anon_sym_iq_LBRACE] = ACTIONS(5078), [aux_sym_char_literal_token1] = ACTIONS(5078), [anon_sym_SQUOTE] = ACTIONS(5076), [anon_sym___DATE__] = ACTIONS(5076), [anon_sym___FILE__] = ACTIONS(5076), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5076), [anon_sym___FUNCTION__] = ACTIONS(5076), [anon_sym___LINE__] = ACTIONS(5076), [anon_sym___MODULE__] = ACTIONS(5076), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5076), [anon_sym___TIME__] = ACTIONS(5076), [anon_sym___TIMESTAMP__] = ACTIONS(5076), [anon_sym___VENDOR__] = ACTIONS(5076), [anon_sym___VERSION__] = ACTIONS(5076), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5078), [sym_float_literal] = ACTIONS(5078), [sym__string] = ACTIONS(5078), }, [1557] = { [sym_identifier] = ACTIONS(5080), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5082), [anon_sym_RBRACE] = ACTIONS(5082), [anon_sym_LBRACE] = ACTIONS(5082), [anon_sym_DOT] = ACTIONS(5082), [anon_sym_AMP] = ACTIONS(5082), [anon_sym_DASH] = ACTIONS(5080), [anon_sym_DASH_DASH] = ACTIONS(5082), [anon_sym_PLUS] = ACTIONS(5080), [anon_sym_PLUS_PLUS] = ACTIONS(5082), [anon_sym_BANG] = ACTIONS(5082), [anon_sym_LPAREN] = ACTIONS(5082), [anon_sym_RPAREN] = ACTIONS(5082), [anon_sym_LBRACK] = ACTIONS(5082), [anon_sym_SEMI] = ACTIONS(5082), [anon_sym_DOLLAR] = ACTIONS(5082), [anon_sym_STAR] = ACTIONS(5082), [anon_sym_TILDE] = ACTIONS(5082), [anon_sym_AT] = ACTIONS(5082), [sym_bool] = ACTIONS(5080), [sym_byte] = ACTIONS(5080), [sym_ubyte] = ACTIONS(5080), [sym_char] = ACTIONS(5080), [sym_short] = ACTIONS(5080), [sym_ushort] = ACTIONS(5080), [sym_int] = ACTIONS(5080), [sym_uint] = ACTIONS(5080), [sym_long] = ACTIONS(5080), [sym_ulong] = ACTIONS(5080), [sym_cent] = ACTIONS(5080), [sym_ucent] = ACTIONS(5080), [sym_wchar] = ACTIONS(5080), [sym_dchar] = ACTIONS(5080), [sym_float] = ACTIONS(5080), [sym_double] = ACTIONS(5080), [sym_real] = ACTIONS(5080), [sym_ifloat] = ACTIONS(5080), [sym_idouble] = ACTIONS(5080), [sym_ireal] = ACTIONS(5080), [sym_cfloat] = ACTIONS(5080), [sym_cdouble] = ACTIONS(5080), [sym_creal] = ACTIONS(5080), [sym_size_t] = ACTIONS(5080), [sym_ptrdiff_t] = ACTIONS(5080), [sym_string] = ACTIONS(5080), [sym_cstring] = ACTIONS(5080), [sym_dstring] = ACTIONS(5080), [sym_wstring] = ACTIONS(5080), [sym_noreturn] = ACTIONS(5080), [sym_true] = ACTIONS(5080), [sym_false] = ACTIONS(5080), [sym_null] = ACTIONS(5080), [sym_super] = ACTIONS(5080), [sym_this] = ACTIONS(5080), [sym_abstract] = ACTIONS(5080), [sym_alias] = ACTIONS(5080), [sym_align] = ACTIONS(5080), [sym_asm] = ACTIONS(5080), [sym_assert] = ACTIONS(5080), [sym_auto] = ACTIONS(5080), [sym_break] = ACTIONS(5080), [sym_case] = ACTIONS(5080), [sym_cast] = ACTIONS(5080), [sym_catch] = ACTIONS(5080), [sym_class] = ACTIONS(5080), [sym_const] = ACTIONS(5080), [sym_continue] = ACTIONS(5080), [sym_debug] = ACTIONS(5080), [sym_default] = ACTIONS(5080), [sym_delegate] = ACTIONS(5080), [sym_delete] = ACTIONS(5080), [sym_deprecated] = ACTIONS(5080), [sym_do] = ACTIONS(5080), [sym_else] = ACTIONS(5080), [sym_enum] = ACTIONS(5080), [sym_export] = ACTIONS(5080), [sym_extern] = ACTIONS(5080), [sym_final] = ACTIONS(5080), [sym_finally] = ACTIONS(5080), [sym_for] = ACTIONS(5080), [sym_foreach] = ACTIONS(5080), [sym_foreach_reverse] = ACTIONS(5080), [sym_function] = ACTIONS(5080), [sym_goto] = ACTIONS(5080), [sym_if] = ACTIONS(5080), [sym_immutable] = ACTIONS(5080), [sym_import] = ACTIONS(5080), [sym_in] = ACTIONS(5080), [sym_inout] = ACTIONS(5080), [sym_interface] = ACTIONS(5080), [sym_invariant] = ACTIONS(5080), [sym_is] = ACTIONS(5080), [sym_mixin] = ACTIONS(5080), [sym_new] = ACTIONS(5080), [sym_nothrow] = ACTIONS(5080), [sym_out] = ACTIONS(5080), [sym_override] = ACTIONS(5080), [sym_package] = ACTIONS(5080), [sym_pragma] = ACTIONS(5080), [sym_private] = ACTIONS(5080), [sym_protected] = ACTIONS(5080), [sym_public] = ACTIONS(5080), [sym_pure] = ACTIONS(5080), [sym_ref] = ACTIONS(5080), [sym_return] = ACTIONS(5080), [sym_scope] = ACTIONS(5080), [sym_shared] = ACTIONS(5080), [sym_static] = ACTIONS(5080), [sym_struct] = ACTIONS(5080), [sym_switch] = ACTIONS(5080), [sym_synchronized] = ACTIONS(5080), [sym_template] = ACTIONS(5080), [sym_throw] = ACTIONS(5080), [sym_try] = ACTIONS(5080), [sym_typeid] = ACTIONS(5080), [sym_typeof] = ACTIONS(5080), [sym_union] = ACTIONS(5080), [sym_unittest] = ACTIONS(5080), [sym_version] = ACTIONS(5080), [sym_while] = ACTIONS(5080), [sym_with] = ACTIONS(5080), [sym_gshared] = ACTIONS(5080), [sym_traits] = ACTIONS(5080), [sym_vector] = ACTIONS(5080), [sym_void] = ACTIONS(5080), [anon_sym_BQUOTE] = ACTIONS(5082), [anon_sym_r_DQUOTE] = ACTIONS(5082), [anon_sym_x_DQUOTE] = ACTIONS(5082), [anon_sym_DQUOTE] = ACTIONS(5082), [anon_sym_i_BQUOTE] = ACTIONS(5082), [anon_sym_i_DQUOTE] = ACTIONS(5082), [anon_sym_iq_LBRACE] = ACTIONS(5082), [aux_sym_char_literal_token1] = ACTIONS(5082), [anon_sym_SQUOTE] = ACTIONS(5080), [anon_sym___DATE__] = ACTIONS(5080), [anon_sym___FILE__] = ACTIONS(5080), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5080), [anon_sym___FUNCTION__] = ACTIONS(5080), [anon_sym___LINE__] = ACTIONS(5080), [anon_sym___MODULE__] = ACTIONS(5080), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5080), [anon_sym___TIME__] = ACTIONS(5080), [anon_sym___TIMESTAMP__] = ACTIONS(5080), [anon_sym___VENDOR__] = ACTIONS(5080), [anon_sym___VERSION__] = ACTIONS(5080), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5082), [sym_float_literal] = ACTIONS(5082), [sym__string] = ACTIONS(5082), }, [1558] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4299), [anon_sym_RBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(5084), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_AMP] = ACTIONS(4299), [anon_sym_DASH] = ACTIONS(4297), [anon_sym_DASH_DASH] = ACTIONS(4299), [anon_sym_PLUS] = ACTIONS(4297), [anon_sym_PLUS_PLUS] = ACTIONS(4299), [anon_sym_BANG] = ACTIONS(4299), [anon_sym_LPAREN] = ACTIONS(4299), [anon_sym_RPAREN] = ACTIONS(4299), [anon_sym_LBRACK] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(5084), [anon_sym_DOLLAR] = ACTIONS(4299), [anon_sym_STAR] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_true] = ACTIONS(4297), [sym_false] = ACTIONS(4297), [sym_null] = ACTIONS(4297), [sym_super] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_asm] = ACTIONS(4297), [sym_assert] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_break] = ACTIONS(4297), [sym_case] = ACTIONS(4297), [sym_cast] = ACTIONS(4297), [sym_catch] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_continue] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_default] = ACTIONS(4297), [sym_delegate] = ACTIONS(4297), [sym_delete] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(5087), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_finally] = ACTIONS(4297), [sym_for] = ACTIONS(4297), [sym_foreach] = ACTIONS(4297), [sym_foreach_reverse] = ACTIONS(4297), [sym_function] = ACTIONS(4297), [sym_goto] = ACTIONS(4297), [sym_if] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(5087), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_is] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_new] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(5087), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_switch] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_throw] = ACTIONS(4297), [sym_try] = ACTIONS(4297), [sym_typeid] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_with] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [anon_sym_BQUOTE] = ACTIONS(4299), [anon_sym_r_DQUOTE] = ACTIONS(4299), [anon_sym_x_DQUOTE] = ACTIONS(4299), [anon_sym_DQUOTE] = ACTIONS(4299), [anon_sym_i_BQUOTE] = ACTIONS(4299), [anon_sym_i_DQUOTE] = ACTIONS(4299), [anon_sym_iq_LBRACE] = ACTIONS(4299), [aux_sym_char_literal_token1] = ACTIONS(4299), [anon_sym_SQUOTE] = ACTIONS(4297), [anon_sym___DATE__] = ACTIONS(4297), [anon_sym___FILE__] = ACTIONS(4297), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4297), [anon_sym___FUNCTION__] = ACTIONS(4297), [anon_sym___LINE__] = ACTIONS(4297), [anon_sym___MODULE__] = ACTIONS(4297), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4297), [anon_sym___TIME__] = ACTIONS(4297), [anon_sym___TIMESTAMP__] = ACTIONS(4297), [anon_sym___VENDOR__] = ACTIONS(4297), [anon_sym___VERSION__] = ACTIONS(4297), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4299), [sym_float_literal] = ACTIONS(4299), [sym__string] = ACTIONS(4299), }, [1559] = { [sym_identifier] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(2804), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2804), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2804), [anon_sym_AT] = ACTIONS(2804), [sym_bool] = ACTIONS(2806), [sym_byte] = ACTIONS(2806), [sym_ubyte] = ACTIONS(2806), [sym_char] = ACTIONS(2806), [sym_short] = ACTIONS(2806), [sym_ushort] = ACTIONS(2806), [sym_int] = ACTIONS(2806), [sym_uint] = ACTIONS(2806), [sym_long] = ACTIONS(2806), [sym_ulong] = ACTIONS(2806), [sym_cent] = ACTIONS(2806), [sym_ucent] = ACTIONS(2806), [sym_wchar] = ACTIONS(2806), [sym_dchar] = ACTIONS(2806), [sym_float] = ACTIONS(2806), [sym_double] = ACTIONS(2806), [sym_real] = ACTIONS(2806), [sym_ifloat] = ACTIONS(2806), [sym_idouble] = ACTIONS(2806), [sym_ireal] = ACTIONS(2806), [sym_cfloat] = ACTIONS(2806), [sym_cdouble] = ACTIONS(2806), [sym_creal] = ACTIONS(2806), [sym_size_t] = ACTIONS(2806), [sym_ptrdiff_t] = ACTIONS(2806), [sym_string] = ACTIONS(2806), [sym_cstring] = ACTIONS(2806), [sym_dstring] = ACTIONS(2806), [sym_wstring] = ACTIONS(2806), [sym_noreturn] = ACTIONS(2806), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2806), [sym_abstract] = ACTIONS(2806), [sym_alias] = ACTIONS(2806), [sym_align] = ACTIONS(2806), [sym_asm] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(2806), [sym_break] = ACTIONS(2806), [sym_case] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_class] = ACTIONS(2806), [sym_const] = ACTIONS(2806), [sym_continue] = ACTIONS(2806), [sym_debug] = ACTIONS(2806), [sym_default] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_deprecated] = ACTIONS(2806), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(2806), [sym_export] = ACTIONS(2806), [sym_extern] = ACTIONS(2806), [sym_final] = ACTIONS(2806), [sym_for] = ACTIONS(2806), [sym_foreach] = ACTIONS(2806), [sym_foreach_reverse] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_goto] = ACTIONS(2806), [sym_if] = ACTIONS(2806), [sym_immutable] = ACTIONS(2806), [sym_import] = ACTIONS(2806), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(2806), [sym_interface] = ACTIONS(2806), [sym_invariant] = ACTIONS(2806), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2806), [sym_new] = ACTIONS(2806), [sym_nothrow] = ACTIONS(2806), [sym_out] = ACTIONS(2806), [sym_override] = ACTIONS(2806), [sym_package] = ACTIONS(2806), [sym_pragma] = ACTIONS(2806), [sym_private] = ACTIONS(2806), [sym_protected] = ACTIONS(2806), [sym_public] = ACTIONS(2806), [sym_pure] = ACTIONS(2806), [sym_ref] = ACTIONS(2806), [sym_return] = ACTIONS(2806), [sym_scope] = ACTIONS(2806), [sym_shared] = ACTIONS(2806), [sym_static] = ACTIONS(2806), [sym_struct] = ACTIONS(2806), [sym_switch] = ACTIONS(2806), [sym_synchronized] = ACTIONS(2806), [sym_template] = ACTIONS(2806), [sym_throw] = ACTIONS(2806), [sym_try] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(2806), [sym_union] = ACTIONS(2806), [sym_unittest] = ACTIONS(2806), [sym_version] = ACTIONS(2806), [sym_while] = ACTIONS(2806), [sym_with] = ACTIONS(2806), [sym_gshared] = ACTIONS(2806), [sym_traits] = ACTIONS(2806), [sym_vector] = ACTIONS(2806), [sym_void] = ACTIONS(2806), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [1560] = { [sym_identifier] = ACTIONS(4966), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4968), [anon_sym_RBRACE] = ACTIONS(4968), [anon_sym_LBRACE] = ACTIONS(4968), [anon_sym_DOT] = ACTIONS(4968), [anon_sym_AMP] = ACTIONS(4968), [anon_sym_DASH] = ACTIONS(4966), [anon_sym_DASH_DASH] = ACTIONS(4968), [anon_sym_PLUS] = ACTIONS(4966), [anon_sym_PLUS_PLUS] = ACTIONS(4968), [anon_sym_BANG] = ACTIONS(4968), [anon_sym_LPAREN] = ACTIONS(4968), [anon_sym_RPAREN] = ACTIONS(4968), [anon_sym_LBRACK] = ACTIONS(4968), [anon_sym_SEMI] = ACTIONS(4968), [anon_sym_DOLLAR] = ACTIONS(4968), [anon_sym_STAR] = ACTIONS(4968), [anon_sym_TILDE] = ACTIONS(4968), [anon_sym_AT] = ACTIONS(4968), [sym_bool] = ACTIONS(4966), [sym_byte] = ACTIONS(4966), [sym_ubyte] = ACTIONS(4966), [sym_char] = ACTIONS(4966), [sym_short] = ACTIONS(4966), [sym_ushort] = ACTIONS(4966), [sym_int] = ACTIONS(4966), [sym_uint] = ACTIONS(4966), [sym_long] = ACTIONS(4966), [sym_ulong] = ACTIONS(4966), [sym_cent] = ACTIONS(4966), [sym_ucent] = ACTIONS(4966), [sym_wchar] = ACTIONS(4966), [sym_dchar] = ACTIONS(4966), [sym_float] = ACTIONS(4966), [sym_double] = ACTIONS(4966), [sym_real] = ACTIONS(4966), [sym_ifloat] = ACTIONS(4966), [sym_idouble] = ACTIONS(4966), [sym_ireal] = ACTIONS(4966), [sym_cfloat] = ACTIONS(4966), [sym_cdouble] = ACTIONS(4966), [sym_creal] = ACTIONS(4966), [sym_size_t] = ACTIONS(4966), [sym_ptrdiff_t] = ACTIONS(4966), [sym_string] = ACTIONS(4966), [sym_cstring] = ACTIONS(4966), [sym_dstring] = ACTIONS(4966), [sym_wstring] = ACTIONS(4966), [sym_noreturn] = ACTIONS(4966), [sym_true] = ACTIONS(4966), [sym_false] = ACTIONS(4966), [sym_null] = ACTIONS(4966), [sym_super] = ACTIONS(4966), [sym_this] = ACTIONS(4966), [sym_abstract] = ACTIONS(4966), [sym_alias] = ACTIONS(4966), [sym_align] = ACTIONS(4966), [sym_asm] = ACTIONS(4966), [sym_assert] = ACTIONS(4966), [sym_auto] = ACTIONS(4966), [sym_break] = ACTIONS(4966), [sym_case] = ACTIONS(4966), [sym_cast] = ACTIONS(4966), [sym_class] = ACTIONS(4966), [sym_const] = ACTIONS(4966), [sym_continue] = ACTIONS(4966), [sym_debug] = ACTIONS(4966), [sym_default] = ACTIONS(4966), [sym_delegate] = ACTIONS(4966), [sym_delete] = ACTIONS(4966), [sym_deprecated] = ACTIONS(4966), [sym_do] = ACTIONS(4966), [sym_else] = ACTIONS(4966), [sym_enum] = ACTIONS(4966), [sym_export] = ACTIONS(4966), [sym_extern] = ACTIONS(4966), [sym_final] = ACTIONS(4966), [sym_for] = ACTIONS(4966), [sym_foreach] = ACTIONS(4966), [sym_foreach_reverse] = ACTIONS(4966), [sym_function] = ACTIONS(4966), [sym_goto] = ACTIONS(4966), [sym_if] = ACTIONS(4966), [sym_immutable] = ACTIONS(4966), [sym_import] = ACTIONS(4966), [sym_in] = ACTIONS(4966), [sym_inout] = ACTIONS(4966), [sym_interface] = ACTIONS(4966), [sym_invariant] = ACTIONS(4966), [sym_is] = ACTIONS(4966), [sym_mixin] = ACTIONS(4966), [sym_new] = ACTIONS(4966), [sym_nothrow] = ACTIONS(4966), [sym_out] = ACTIONS(4966), [sym_override] = ACTIONS(4966), [sym_package] = ACTIONS(4966), [sym_pragma] = ACTIONS(4966), [sym_private] = ACTIONS(4966), [sym_protected] = ACTIONS(4966), [sym_public] = ACTIONS(4966), [sym_pure] = ACTIONS(4966), [sym_ref] = ACTIONS(4966), [sym_return] = ACTIONS(4966), [sym_scope] = ACTIONS(4966), [sym_shared] = ACTIONS(4966), [sym_static] = ACTIONS(4966), [sym_struct] = ACTIONS(4966), [sym_switch] = ACTIONS(4966), [sym_synchronized] = ACTIONS(4966), [sym_template] = ACTIONS(4966), [sym_throw] = ACTIONS(4966), [sym_try] = ACTIONS(4966), [sym_typeid] = ACTIONS(4966), [sym_typeof] = ACTIONS(4966), [sym_union] = ACTIONS(4966), [sym_unittest] = ACTIONS(4966), [sym_version] = ACTIONS(4966), [sym_while] = ACTIONS(4966), [sym_with] = ACTIONS(4966), [sym_gshared] = ACTIONS(4966), [sym_traits] = ACTIONS(4966), [sym_vector] = ACTIONS(4966), [sym_void] = ACTIONS(4966), [anon_sym_BQUOTE] = ACTIONS(4968), [anon_sym_r_DQUOTE] = ACTIONS(4968), [anon_sym_x_DQUOTE] = ACTIONS(4968), [anon_sym_DQUOTE] = ACTIONS(4968), [anon_sym_i_BQUOTE] = ACTIONS(4968), [anon_sym_i_DQUOTE] = ACTIONS(4968), [anon_sym_iq_LBRACE] = ACTIONS(4968), [aux_sym_char_literal_token1] = ACTIONS(4968), [anon_sym_SQUOTE] = ACTIONS(4966), [anon_sym___DATE__] = ACTIONS(4966), [anon_sym___FILE__] = ACTIONS(4966), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4966), [anon_sym___FUNCTION__] = ACTIONS(4966), [anon_sym___LINE__] = ACTIONS(4966), [anon_sym___MODULE__] = ACTIONS(4966), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4966), [anon_sym___TIME__] = ACTIONS(4966), [anon_sym___TIMESTAMP__] = ACTIONS(4966), [anon_sym___VENDOR__] = ACTIONS(4966), [anon_sym___VERSION__] = ACTIONS(4966), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4968), [sym_float_literal] = ACTIONS(4968), [sym__string] = ACTIONS(4968), }, [1561] = { [sym_identifier] = ACTIONS(4810), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4812), [anon_sym_RBRACE] = ACTIONS(4812), [anon_sym_LBRACE] = ACTIONS(4812), [anon_sym_DOT] = ACTIONS(4812), [anon_sym_AMP] = ACTIONS(4812), [anon_sym_DASH] = ACTIONS(4810), [anon_sym_DASH_DASH] = ACTIONS(4812), [anon_sym_PLUS] = ACTIONS(4810), [anon_sym_PLUS_PLUS] = ACTIONS(4812), [anon_sym_BANG] = ACTIONS(4812), [anon_sym_LPAREN] = ACTIONS(4812), [anon_sym_RPAREN] = ACTIONS(4812), [anon_sym_LBRACK] = ACTIONS(4812), [anon_sym_SEMI] = ACTIONS(4812), [anon_sym_DOLLAR] = ACTIONS(4812), [anon_sym_STAR] = ACTIONS(4812), [anon_sym_TILDE] = ACTIONS(4812), [anon_sym_AT] = ACTIONS(4812), [sym_bool] = ACTIONS(4810), [sym_byte] = ACTIONS(4810), [sym_ubyte] = ACTIONS(4810), [sym_char] = ACTIONS(4810), [sym_short] = ACTIONS(4810), [sym_ushort] = ACTIONS(4810), [sym_int] = ACTIONS(4810), [sym_uint] = ACTIONS(4810), [sym_long] = ACTIONS(4810), [sym_ulong] = ACTIONS(4810), [sym_cent] = ACTIONS(4810), [sym_ucent] = ACTIONS(4810), [sym_wchar] = ACTIONS(4810), [sym_dchar] = ACTIONS(4810), [sym_float] = ACTIONS(4810), [sym_double] = ACTIONS(4810), [sym_real] = ACTIONS(4810), [sym_ifloat] = ACTIONS(4810), [sym_idouble] = ACTIONS(4810), [sym_ireal] = ACTIONS(4810), [sym_cfloat] = ACTIONS(4810), [sym_cdouble] = ACTIONS(4810), [sym_creal] = ACTIONS(4810), [sym_size_t] = ACTIONS(4810), [sym_ptrdiff_t] = ACTIONS(4810), [sym_string] = ACTIONS(4810), [sym_cstring] = ACTIONS(4810), [sym_dstring] = ACTIONS(4810), [sym_wstring] = ACTIONS(4810), [sym_noreturn] = ACTIONS(4810), [sym_true] = ACTIONS(4810), [sym_false] = ACTIONS(4810), [sym_null] = ACTIONS(4810), [sym_super] = ACTIONS(4810), [sym_this] = ACTIONS(4810), [sym_abstract] = ACTIONS(4810), [sym_alias] = ACTIONS(4810), [sym_align] = ACTIONS(4810), [sym_asm] = ACTIONS(4810), [sym_assert] = ACTIONS(4810), [sym_auto] = ACTIONS(4810), [sym_break] = ACTIONS(4810), [sym_case] = ACTIONS(4810), [sym_cast] = ACTIONS(4810), [sym_class] = ACTIONS(4810), [sym_const] = ACTIONS(4810), [sym_continue] = ACTIONS(4810), [sym_debug] = ACTIONS(4810), [sym_default] = ACTIONS(4810), [sym_delegate] = ACTIONS(4810), [sym_delete] = ACTIONS(4810), [sym_deprecated] = ACTIONS(4810), [sym_do] = ACTIONS(4810), [sym_else] = ACTIONS(4810), [sym_enum] = ACTIONS(4810), [sym_export] = ACTIONS(4810), [sym_extern] = ACTIONS(4810), [sym_final] = ACTIONS(4810), [sym_for] = ACTIONS(4810), [sym_foreach] = ACTIONS(4810), [sym_foreach_reverse] = ACTIONS(4810), [sym_function] = ACTIONS(4810), [sym_goto] = ACTIONS(4810), [sym_if] = ACTIONS(4810), [sym_immutable] = ACTIONS(4810), [sym_import] = ACTIONS(4810), [sym_in] = ACTIONS(4810), [sym_inout] = ACTIONS(4810), [sym_interface] = ACTIONS(4810), [sym_invariant] = ACTIONS(4810), [sym_is] = ACTIONS(4810), [sym_mixin] = ACTIONS(4810), [sym_new] = ACTIONS(4810), [sym_nothrow] = ACTIONS(4810), [sym_out] = ACTIONS(4810), [sym_override] = ACTIONS(4810), [sym_package] = ACTIONS(4810), [sym_pragma] = ACTIONS(4810), [sym_private] = ACTIONS(4810), [sym_protected] = ACTIONS(4810), [sym_public] = ACTIONS(4810), [sym_pure] = ACTIONS(4810), [sym_ref] = ACTIONS(4810), [sym_return] = ACTIONS(4810), [sym_scope] = ACTIONS(4810), [sym_shared] = ACTIONS(4810), [sym_static] = ACTIONS(4810), [sym_struct] = ACTIONS(4810), [sym_switch] = ACTIONS(4810), [sym_synchronized] = ACTIONS(4810), [sym_template] = ACTIONS(4810), [sym_throw] = ACTIONS(4810), [sym_try] = ACTIONS(4810), [sym_typeid] = ACTIONS(4810), [sym_typeof] = ACTIONS(4810), [sym_union] = ACTIONS(4810), [sym_unittest] = ACTIONS(4810), [sym_version] = ACTIONS(4810), [sym_while] = ACTIONS(4810), [sym_with] = ACTIONS(4810), [sym_gshared] = ACTIONS(4810), [sym_traits] = ACTIONS(4810), [sym_vector] = ACTIONS(4810), [sym_void] = ACTIONS(4810), [anon_sym_BQUOTE] = ACTIONS(4812), [anon_sym_r_DQUOTE] = ACTIONS(4812), [anon_sym_x_DQUOTE] = ACTIONS(4812), [anon_sym_DQUOTE] = ACTIONS(4812), [anon_sym_i_BQUOTE] = ACTIONS(4812), [anon_sym_i_DQUOTE] = ACTIONS(4812), [anon_sym_iq_LBRACE] = ACTIONS(4812), [aux_sym_char_literal_token1] = ACTIONS(4812), [anon_sym_SQUOTE] = ACTIONS(4810), [anon_sym___DATE__] = ACTIONS(4810), [anon_sym___FILE__] = ACTIONS(4810), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4810), [anon_sym___FUNCTION__] = ACTIONS(4810), [anon_sym___LINE__] = ACTIONS(4810), [anon_sym___MODULE__] = ACTIONS(4810), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4810), [anon_sym___TIME__] = ACTIONS(4810), [anon_sym___TIMESTAMP__] = ACTIONS(4810), [anon_sym___VENDOR__] = ACTIONS(4810), [anon_sym___VERSION__] = ACTIONS(4810), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4812), [sym_float_literal] = ACTIONS(4812), [sym__string] = ACTIONS(4812), }, [1562] = { [sym_identifier] = ACTIONS(4666), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4668), [anon_sym_RBRACE] = ACTIONS(4668), [anon_sym_LBRACE] = ACTIONS(4668), [anon_sym_DOT] = ACTIONS(4668), [anon_sym_AMP] = ACTIONS(4668), [anon_sym_DASH] = ACTIONS(4666), [anon_sym_DASH_DASH] = ACTIONS(4668), [anon_sym_PLUS] = ACTIONS(4666), [anon_sym_PLUS_PLUS] = ACTIONS(4668), [anon_sym_BANG] = ACTIONS(4668), [anon_sym_LPAREN] = ACTIONS(4668), [anon_sym_RPAREN] = ACTIONS(4668), [anon_sym_LBRACK] = ACTIONS(4668), [anon_sym_SEMI] = ACTIONS(4668), [anon_sym_DOLLAR] = ACTIONS(4668), [anon_sym_STAR] = ACTIONS(4668), [anon_sym_TILDE] = ACTIONS(4668), [anon_sym_AT] = ACTIONS(4668), [sym_bool] = ACTIONS(4666), [sym_byte] = ACTIONS(4666), [sym_ubyte] = ACTIONS(4666), [sym_char] = ACTIONS(4666), [sym_short] = ACTIONS(4666), [sym_ushort] = ACTIONS(4666), [sym_int] = ACTIONS(4666), [sym_uint] = ACTIONS(4666), [sym_long] = ACTIONS(4666), [sym_ulong] = ACTIONS(4666), [sym_cent] = ACTIONS(4666), [sym_ucent] = ACTIONS(4666), [sym_wchar] = ACTIONS(4666), [sym_dchar] = ACTIONS(4666), [sym_float] = ACTIONS(4666), [sym_double] = ACTIONS(4666), [sym_real] = ACTIONS(4666), [sym_ifloat] = ACTIONS(4666), [sym_idouble] = ACTIONS(4666), [sym_ireal] = ACTIONS(4666), [sym_cfloat] = ACTIONS(4666), [sym_cdouble] = ACTIONS(4666), [sym_creal] = ACTIONS(4666), [sym_size_t] = ACTIONS(4666), [sym_ptrdiff_t] = ACTIONS(4666), [sym_string] = ACTIONS(4666), [sym_cstring] = ACTIONS(4666), [sym_dstring] = ACTIONS(4666), [sym_wstring] = ACTIONS(4666), [sym_noreturn] = ACTIONS(4666), [sym_true] = ACTIONS(4666), [sym_false] = ACTIONS(4666), [sym_null] = ACTIONS(4666), [sym_super] = ACTIONS(4666), [sym_this] = ACTIONS(4666), [sym_abstract] = ACTIONS(4666), [sym_alias] = ACTIONS(4666), [sym_align] = ACTIONS(4666), [sym_asm] = ACTIONS(4666), [sym_assert] = ACTIONS(4666), [sym_auto] = ACTIONS(4666), [sym_break] = ACTIONS(4666), [sym_case] = ACTIONS(4666), [sym_cast] = ACTIONS(4666), [sym_class] = ACTIONS(4666), [sym_const] = ACTIONS(4666), [sym_continue] = ACTIONS(4666), [sym_debug] = ACTIONS(4666), [sym_default] = ACTIONS(4666), [sym_delegate] = ACTIONS(4666), [sym_delete] = ACTIONS(4666), [sym_deprecated] = ACTIONS(4666), [sym_do] = ACTIONS(4666), [sym_else] = ACTIONS(4666), [sym_enum] = ACTIONS(4666), [sym_export] = ACTIONS(4666), [sym_extern] = ACTIONS(4666), [sym_final] = ACTIONS(4666), [sym_for] = ACTIONS(4666), [sym_foreach] = ACTIONS(4666), [sym_foreach_reverse] = ACTIONS(4666), [sym_function] = ACTIONS(4666), [sym_goto] = ACTIONS(4666), [sym_if] = ACTIONS(4666), [sym_immutable] = ACTIONS(4666), [sym_import] = ACTIONS(4666), [sym_in] = ACTIONS(4666), [sym_inout] = ACTIONS(4666), [sym_interface] = ACTIONS(4666), [sym_invariant] = ACTIONS(4666), [sym_is] = ACTIONS(4666), [sym_mixin] = ACTIONS(4666), [sym_new] = ACTIONS(4666), [sym_nothrow] = ACTIONS(4666), [sym_out] = ACTIONS(4666), [sym_override] = ACTIONS(4666), [sym_package] = ACTIONS(4666), [sym_pragma] = ACTIONS(4666), [sym_private] = ACTIONS(4666), [sym_protected] = ACTIONS(4666), [sym_public] = ACTIONS(4666), [sym_pure] = ACTIONS(4666), [sym_ref] = ACTIONS(4666), [sym_return] = ACTIONS(4666), [sym_scope] = ACTIONS(4666), [sym_shared] = ACTIONS(4666), [sym_static] = ACTIONS(4666), [sym_struct] = ACTIONS(4666), [sym_switch] = ACTIONS(4666), [sym_synchronized] = ACTIONS(4666), [sym_template] = ACTIONS(4666), [sym_throw] = ACTIONS(4666), [sym_try] = ACTIONS(4666), [sym_typeid] = ACTIONS(4666), [sym_typeof] = ACTIONS(4666), [sym_union] = ACTIONS(4666), [sym_unittest] = ACTIONS(4666), [sym_version] = ACTIONS(4666), [sym_while] = ACTIONS(4666), [sym_with] = ACTIONS(4666), [sym_gshared] = ACTIONS(4666), [sym_traits] = ACTIONS(4666), [sym_vector] = ACTIONS(4666), [sym_void] = ACTIONS(4666), [anon_sym_BQUOTE] = ACTIONS(4668), [anon_sym_r_DQUOTE] = ACTIONS(4668), [anon_sym_x_DQUOTE] = ACTIONS(4668), [anon_sym_DQUOTE] = ACTIONS(4668), [anon_sym_i_BQUOTE] = ACTIONS(4668), [anon_sym_i_DQUOTE] = ACTIONS(4668), [anon_sym_iq_LBRACE] = ACTIONS(4668), [aux_sym_char_literal_token1] = ACTIONS(4668), [anon_sym_SQUOTE] = ACTIONS(4666), [anon_sym___DATE__] = ACTIONS(4666), [anon_sym___FILE__] = ACTIONS(4666), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4666), [anon_sym___FUNCTION__] = ACTIONS(4666), [anon_sym___LINE__] = ACTIONS(4666), [anon_sym___MODULE__] = ACTIONS(4666), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4666), [anon_sym___TIME__] = ACTIONS(4666), [anon_sym___TIMESTAMP__] = ACTIONS(4666), [anon_sym___VENDOR__] = ACTIONS(4666), [anon_sym___VERSION__] = ACTIONS(4666), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4668), [sym_float_literal] = ACTIONS(4668), [sym__string] = ACTIONS(4668), }, [1563] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_RBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [anon_sym_AT] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_abstract] = ACTIONS(4365), [sym_alias] = ACTIONS(4365), [sym_align] = ACTIONS(4365), [sym_asm] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_break] = ACTIONS(4365), [sym_case] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_class] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_continue] = ACTIONS(4365), [sym_debug] = ACTIONS(4365), [sym_default] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_deprecated] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(5090), [sym_enum] = ACTIONS(4365), [sym_export] = ACTIONS(4365), [sym_extern] = ACTIONS(4365), [sym_final] = ACTIONS(4365), [sym_for] = ACTIONS(4365), [sym_foreach] = ACTIONS(4365), [sym_foreach_reverse] = ACTIONS(4365), [sym_function] = ACTIONS(4365), [sym_goto] = ACTIONS(4365), [sym_if] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_interface] = ACTIONS(4365), [sym_invariant] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_nothrow] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_override] = ACTIONS(4365), [sym_package] = ACTIONS(4365), [sym_pragma] = ACTIONS(4365), [sym_private] = ACTIONS(4365), [sym_protected] = ACTIONS(4365), [sym_public] = ACTIONS(4365), [sym_pure] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_return] = ACTIONS(4365), [sym_scope] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_static] = ACTIONS(4365), [sym_struct] = ACTIONS(4365), [sym_switch] = ACTIONS(4365), [sym_synchronized] = ACTIONS(4365), [sym_template] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_try] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_union] = ACTIONS(4365), [sym_unittest] = ACTIONS(4365), [sym_version] = ACTIONS(4365), [sym_while] = ACTIONS(4365), [sym_with] = ACTIONS(4365), [sym_gshared] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [1564] = { [sym_identifier] = ACTIONS(4892), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4894), [anon_sym_RBRACE] = ACTIONS(4894), [anon_sym_LBRACE] = ACTIONS(4894), [anon_sym_DOT] = ACTIONS(4894), [anon_sym_AMP] = ACTIONS(4894), [anon_sym_DASH] = ACTIONS(4892), [anon_sym_DASH_DASH] = ACTIONS(4894), [anon_sym_PLUS] = ACTIONS(4892), [anon_sym_PLUS_PLUS] = ACTIONS(4894), [anon_sym_BANG] = ACTIONS(4894), [anon_sym_LPAREN] = ACTIONS(4894), [anon_sym_RPAREN] = ACTIONS(4894), [anon_sym_LBRACK] = ACTIONS(4894), [anon_sym_SEMI] = ACTIONS(4894), [anon_sym_DOLLAR] = ACTIONS(4894), [anon_sym_STAR] = ACTIONS(4894), [anon_sym_TILDE] = ACTIONS(4894), [anon_sym_AT] = ACTIONS(4894), [sym_bool] = ACTIONS(4892), [sym_byte] = ACTIONS(4892), [sym_ubyte] = ACTIONS(4892), [sym_char] = ACTIONS(4892), [sym_short] = ACTIONS(4892), [sym_ushort] = ACTIONS(4892), [sym_int] = ACTIONS(4892), [sym_uint] = ACTIONS(4892), [sym_long] = ACTIONS(4892), [sym_ulong] = ACTIONS(4892), [sym_cent] = ACTIONS(4892), [sym_ucent] = ACTIONS(4892), [sym_wchar] = ACTIONS(4892), [sym_dchar] = ACTIONS(4892), [sym_float] = ACTIONS(4892), [sym_double] = ACTIONS(4892), [sym_real] = ACTIONS(4892), [sym_ifloat] = ACTIONS(4892), [sym_idouble] = ACTIONS(4892), [sym_ireal] = ACTIONS(4892), [sym_cfloat] = ACTIONS(4892), [sym_cdouble] = ACTIONS(4892), [sym_creal] = ACTIONS(4892), [sym_size_t] = ACTIONS(4892), [sym_ptrdiff_t] = ACTIONS(4892), [sym_string] = ACTIONS(4892), [sym_cstring] = ACTIONS(4892), [sym_dstring] = ACTIONS(4892), [sym_wstring] = ACTIONS(4892), [sym_noreturn] = ACTIONS(4892), [sym_true] = ACTIONS(4892), [sym_false] = ACTIONS(4892), [sym_null] = ACTIONS(4892), [sym_super] = ACTIONS(4892), [sym_this] = ACTIONS(4892), [sym_abstract] = ACTIONS(4892), [sym_alias] = ACTIONS(4892), [sym_align] = ACTIONS(4892), [sym_asm] = ACTIONS(4892), [sym_assert] = ACTIONS(4892), [sym_auto] = ACTIONS(4892), [sym_break] = ACTIONS(4892), [sym_case] = ACTIONS(4892), [sym_cast] = ACTIONS(4892), [sym_class] = ACTIONS(4892), [sym_const] = ACTIONS(4892), [sym_continue] = ACTIONS(4892), [sym_debug] = ACTIONS(4892), [sym_default] = ACTIONS(4892), [sym_delegate] = ACTIONS(4892), [sym_delete] = ACTIONS(4892), [sym_deprecated] = ACTIONS(4892), [sym_do] = ACTIONS(4892), [sym_else] = ACTIONS(4892), [sym_enum] = ACTIONS(4892), [sym_export] = ACTIONS(4892), [sym_extern] = ACTIONS(4892), [sym_final] = ACTIONS(4892), [sym_for] = ACTIONS(4892), [sym_foreach] = ACTIONS(4892), [sym_foreach_reverse] = ACTIONS(4892), [sym_function] = ACTIONS(4892), [sym_goto] = ACTIONS(4892), [sym_if] = ACTIONS(4892), [sym_immutable] = ACTIONS(4892), [sym_import] = ACTIONS(4892), [sym_in] = ACTIONS(4892), [sym_inout] = ACTIONS(4892), [sym_interface] = ACTIONS(4892), [sym_invariant] = ACTIONS(4892), [sym_is] = ACTIONS(4892), [sym_mixin] = ACTIONS(4892), [sym_new] = ACTIONS(4892), [sym_nothrow] = ACTIONS(4892), [sym_out] = ACTIONS(4892), [sym_override] = ACTIONS(4892), [sym_package] = ACTIONS(4892), [sym_pragma] = ACTIONS(4892), [sym_private] = ACTIONS(4892), [sym_protected] = ACTIONS(4892), [sym_public] = ACTIONS(4892), [sym_pure] = ACTIONS(4892), [sym_ref] = ACTIONS(4892), [sym_return] = ACTIONS(4892), [sym_scope] = ACTIONS(4892), [sym_shared] = ACTIONS(4892), [sym_static] = ACTIONS(4892), [sym_struct] = ACTIONS(4892), [sym_switch] = ACTIONS(4892), [sym_synchronized] = ACTIONS(4892), [sym_template] = ACTIONS(4892), [sym_throw] = ACTIONS(4892), [sym_try] = ACTIONS(4892), [sym_typeid] = ACTIONS(4892), [sym_typeof] = ACTIONS(4892), [sym_union] = ACTIONS(4892), [sym_unittest] = ACTIONS(4892), [sym_version] = ACTIONS(4892), [sym_while] = ACTIONS(4892), [sym_with] = ACTIONS(4892), [sym_gshared] = ACTIONS(4892), [sym_traits] = ACTIONS(4892), [sym_vector] = ACTIONS(4892), [sym_void] = ACTIONS(4892), [anon_sym_BQUOTE] = ACTIONS(4894), [anon_sym_r_DQUOTE] = ACTIONS(4894), [anon_sym_x_DQUOTE] = ACTIONS(4894), [anon_sym_DQUOTE] = ACTIONS(4894), [anon_sym_i_BQUOTE] = ACTIONS(4894), [anon_sym_i_DQUOTE] = ACTIONS(4894), [anon_sym_iq_LBRACE] = ACTIONS(4894), [aux_sym_char_literal_token1] = ACTIONS(4894), [anon_sym_SQUOTE] = ACTIONS(4892), [anon_sym___DATE__] = ACTIONS(4892), [anon_sym___FILE__] = ACTIONS(4892), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4892), [anon_sym___FUNCTION__] = ACTIONS(4892), [anon_sym___LINE__] = ACTIONS(4892), [anon_sym___MODULE__] = ACTIONS(4892), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4892), [anon_sym___TIME__] = ACTIONS(4892), [anon_sym___TIMESTAMP__] = ACTIONS(4892), [anon_sym___VENDOR__] = ACTIONS(4892), [anon_sym___VERSION__] = ACTIONS(4892), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4894), [sym_float_literal] = ACTIONS(4894), [sym__string] = ACTIONS(4894), }, [1565] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3100), [anon_sym_RBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_AMP] = ACTIONS(3100), [anon_sym_DASH] = ACTIONS(3098), [anon_sym_DASH_DASH] = ACTIONS(3100), [anon_sym_PLUS] = ACTIONS(3098), [anon_sym_PLUS_PLUS] = ACTIONS(3100), [anon_sym_BANG] = ACTIONS(3100), [anon_sym_LPAREN] = ACTIONS(3100), [anon_sym_RPAREN] = ACTIONS(3100), [anon_sym_LBRACK] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_DOLLAR] = ACTIONS(3100), [anon_sym_STAR] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_true] = ACTIONS(3098), [sym_false] = ACTIONS(3098), [sym_null] = ACTIONS(3098), [sym_super] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_asm] = ACTIONS(3098), [sym_assert] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_break] = ACTIONS(3098), [sym_case] = ACTIONS(3098), [sym_cast] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_continue] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_default] = ACTIONS(3098), [sym_delegate] = ACTIONS(3098), [sym_delete] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_for] = ACTIONS(3098), [sym_foreach] = ACTIONS(3098), [sym_foreach_reverse] = ACTIONS(3098), [sym_function] = ACTIONS(3098), [sym_goto] = ACTIONS(3098), [sym_if] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_is] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_new] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_switch] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_throw] = ACTIONS(3098), [sym_try] = ACTIONS(3098), [sym_typeid] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_with] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [anon_sym_BQUOTE] = ACTIONS(3100), [anon_sym_r_DQUOTE] = ACTIONS(3100), [anon_sym_x_DQUOTE] = ACTIONS(3100), [anon_sym_DQUOTE] = ACTIONS(3100), [anon_sym_i_BQUOTE] = ACTIONS(3100), [anon_sym_i_DQUOTE] = ACTIONS(3100), [anon_sym_iq_LBRACE] = ACTIONS(3100), [aux_sym_char_literal_token1] = ACTIONS(3100), [anon_sym_SQUOTE] = ACTIONS(3098), [anon_sym___DATE__] = ACTIONS(3098), [anon_sym___FILE__] = ACTIONS(3098), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3098), [anon_sym___FUNCTION__] = ACTIONS(3098), [anon_sym___LINE__] = ACTIONS(3098), [anon_sym___MODULE__] = ACTIONS(3098), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3098), [anon_sym___TIME__] = ACTIONS(3098), [anon_sym___TIMESTAMP__] = ACTIONS(3098), [anon_sym___VENDOR__] = ACTIONS(3098), [anon_sym___VERSION__] = ACTIONS(3098), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3100), [sym_float_literal] = ACTIONS(3100), [sym__string] = ACTIONS(3100), }, [1566] = { [sym_identifier] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4448), [anon_sym_RBRACE] = ACTIONS(4448), [anon_sym_LBRACE] = ACTIONS(4448), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_AMP] = ACTIONS(4448), [anon_sym_DASH] = ACTIONS(4446), [anon_sym_DASH_DASH] = ACTIONS(4448), [anon_sym_PLUS] = ACTIONS(4446), [anon_sym_PLUS_PLUS] = ACTIONS(4448), [anon_sym_BANG] = ACTIONS(4448), [anon_sym_LPAREN] = ACTIONS(4448), [anon_sym_RPAREN] = ACTIONS(4448), [anon_sym_LBRACK] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_DOLLAR] = ACTIONS(4448), [anon_sym_STAR] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [anon_sym_AT] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_true] = ACTIONS(4446), [sym_false] = ACTIONS(4446), [sym_null] = ACTIONS(4446), [sym_super] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_abstract] = ACTIONS(4446), [sym_alias] = ACTIONS(4446), [sym_align] = ACTIONS(4446), [sym_asm] = ACTIONS(4446), [sym_assert] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_break] = ACTIONS(4446), [sym_case] = ACTIONS(4446), [sym_cast] = ACTIONS(4446), [sym_class] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_continue] = ACTIONS(4446), [sym_debug] = ACTIONS(4446), [sym_default] = ACTIONS(4446), [sym_delegate] = ACTIONS(4446), [sym_delete] = ACTIONS(4446), [sym_deprecated] = ACTIONS(4446), [sym_do] = ACTIONS(4446), [sym_else] = ACTIONS(5094), [sym_enum] = ACTIONS(4446), [sym_export] = ACTIONS(4446), [sym_extern] = ACTIONS(4446), [sym_final] = ACTIONS(4446), [sym_for] = ACTIONS(4446), [sym_foreach] = ACTIONS(4446), [sym_foreach_reverse] = ACTIONS(4446), [sym_function] = ACTIONS(4446), [sym_goto] = ACTIONS(4446), [sym_if] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_in] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_interface] = ACTIONS(4446), [sym_invariant] = ACTIONS(4446), [sym_is] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_new] = ACTIONS(4446), [sym_nothrow] = ACTIONS(4446), [sym_out] = ACTIONS(4446), [sym_override] = ACTIONS(4446), [sym_package] = ACTIONS(4446), [sym_pragma] = ACTIONS(4446), [sym_private] = ACTIONS(4446), [sym_protected] = ACTIONS(4446), [sym_public] = ACTIONS(4446), [sym_pure] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_return] = ACTIONS(4446), [sym_scope] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_static] = ACTIONS(4446), [sym_struct] = ACTIONS(4446), [sym_switch] = ACTIONS(4446), [sym_synchronized] = ACTIONS(4446), [sym_template] = ACTIONS(4446), [sym_throw] = ACTIONS(4446), [sym_try] = ACTIONS(4446), [sym_typeid] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_union] = ACTIONS(4446), [sym_unittest] = ACTIONS(4446), [sym_version] = ACTIONS(4446), [sym_while] = ACTIONS(4446), [sym_with] = ACTIONS(4446), [sym_gshared] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [anon_sym_BQUOTE] = ACTIONS(4448), [anon_sym_r_DQUOTE] = ACTIONS(4448), [anon_sym_x_DQUOTE] = ACTIONS(4448), [anon_sym_DQUOTE] = ACTIONS(4448), [anon_sym_i_BQUOTE] = ACTIONS(4448), [anon_sym_i_DQUOTE] = ACTIONS(4448), [anon_sym_iq_LBRACE] = ACTIONS(4448), [aux_sym_char_literal_token1] = ACTIONS(4448), [anon_sym_SQUOTE] = ACTIONS(4446), [anon_sym___DATE__] = ACTIONS(4446), [anon_sym___FILE__] = ACTIONS(4446), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4446), [anon_sym___FUNCTION__] = ACTIONS(4446), [anon_sym___LINE__] = ACTIONS(4446), [anon_sym___MODULE__] = ACTIONS(4446), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4446), [anon_sym___TIME__] = ACTIONS(4446), [anon_sym___TIMESTAMP__] = ACTIONS(4446), [anon_sym___VENDOR__] = ACTIONS(4446), [anon_sym___VERSION__] = ACTIONS(4446), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4448), [sym_float_literal] = ACTIONS(4448), [sym__string] = ACTIONS(4448), }, [1567] = { [sym_identifier] = ACTIONS(4528), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4531), [anon_sym_RBRACE] = ACTIONS(4531), [anon_sym_LBRACE] = ACTIONS(4531), [anon_sym_DOT] = ACTIONS(4531), [anon_sym_AMP] = ACTIONS(4531), [anon_sym_DASH] = ACTIONS(4528), [anon_sym_DASH_DASH] = ACTIONS(4531), [anon_sym_PLUS] = ACTIONS(4528), [anon_sym_PLUS_PLUS] = ACTIONS(4531), [anon_sym_BANG] = ACTIONS(4531), [anon_sym_LPAREN] = ACTIONS(4531), [anon_sym_RPAREN] = ACTIONS(4531), [anon_sym_LBRACK] = ACTIONS(4531), [anon_sym_SEMI] = ACTIONS(4531), [anon_sym_DOLLAR] = ACTIONS(4531), [anon_sym_STAR] = ACTIONS(4531), [anon_sym_TILDE] = ACTIONS(4531), [anon_sym_AT] = ACTIONS(4531), [sym_bool] = ACTIONS(4528), [sym_byte] = ACTIONS(4528), [sym_ubyte] = ACTIONS(4528), [sym_char] = ACTIONS(4528), [sym_short] = ACTIONS(4528), [sym_ushort] = ACTIONS(4528), [sym_int] = ACTIONS(4528), [sym_uint] = ACTIONS(4528), [sym_long] = ACTIONS(4528), [sym_ulong] = ACTIONS(4528), [sym_cent] = ACTIONS(4528), [sym_ucent] = ACTIONS(4528), [sym_wchar] = ACTIONS(4528), [sym_dchar] = ACTIONS(4528), [sym_float] = ACTIONS(4528), [sym_double] = ACTIONS(4528), [sym_real] = ACTIONS(4528), [sym_ifloat] = ACTIONS(4528), [sym_idouble] = ACTIONS(4528), [sym_ireal] = ACTIONS(4528), [sym_cfloat] = ACTIONS(4528), [sym_cdouble] = ACTIONS(4528), [sym_creal] = ACTIONS(4528), [sym_size_t] = ACTIONS(4528), [sym_ptrdiff_t] = ACTIONS(4528), [sym_string] = ACTIONS(4528), [sym_cstring] = ACTIONS(4528), [sym_dstring] = ACTIONS(4528), [sym_wstring] = ACTIONS(4528), [sym_noreturn] = ACTIONS(4528), [sym_true] = ACTIONS(4528), [sym_false] = ACTIONS(4528), [sym_null] = ACTIONS(4528), [sym_super] = ACTIONS(4528), [sym_this] = ACTIONS(4528), [sym_abstract] = ACTIONS(4528), [sym_alias] = ACTIONS(4528), [sym_align] = ACTIONS(4528), [sym_asm] = ACTIONS(4528), [sym_assert] = ACTIONS(4528), [sym_auto] = ACTIONS(4528), [sym_break] = ACTIONS(4528), [sym_case] = ACTIONS(4528), [sym_cast] = ACTIONS(4528), [sym_class] = ACTIONS(4528), [sym_const] = ACTIONS(4528), [sym_continue] = ACTIONS(4528), [sym_debug] = ACTIONS(4528), [sym_default] = ACTIONS(4528), [sym_delegate] = ACTIONS(4528), [sym_delete] = ACTIONS(4528), [sym_deprecated] = ACTIONS(4528), [sym_do] = ACTIONS(4528), [sym_else] = ACTIONS(4528), [sym_enum] = ACTIONS(4528), [sym_export] = ACTIONS(4528), [sym_extern] = ACTIONS(4528), [sym_final] = ACTIONS(4528), [sym_for] = ACTIONS(4528), [sym_foreach] = ACTIONS(4528), [sym_foreach_reverse] = ACTIONS(4528), [sym_function] = ACTIONS(4528), [sym_goto] = ACTIONS(4528), [sym_if] = ACTIONS(4528), [sym_immutable] = ACTIONS(4528), [sym_import] = ACTIONS(4528), [sym_in] = ACTIONS(4528), [sym_inout] = ACTIONS(4528), [sym_interface] = ACTIONS(4528), [sym_invariant] = ACTIONS(4528), [sym_is] = ACTIONS(4528), [sym_mixin] = ACTIONS(4528), [sym_new] = ACTIONS(4528), [sym_nothrow] = ACTIONS(4528), [sym_out] = ACTIONS(4528), [sym_override] = ACTIONS(4528), [sym_package] = ACTIONS(4528), [sym_pragma] = ACTIONS(4528), [sym_private] = ACTIONS(4528), [sym_protected] = ACTIONS(4528), [sym_public] = ACTIONS(4528), [sym_pure] = ACTIONS(4528), [sym_ref] = ACTIONS(4528), [sym_return] = ACTIONS(4528), [sym_scope] = ACTIONS(4528), [sym_shared] = ACTIONS(4528), [sym_static] = ACTIONS(4528), [sym_struct] = ACTIONS(4528), [sym_switch] = ACTIONS(4528), [sym_synchronized] = ACTIONS(4528), [sym_template] = ACTIONS(4528), [sym_throw] = ACTIONS(4528), [sym_try] = ACTIONS(4528), [sym_typeid] = ACTIONS(4528), [sym_typeof] = ACTIONS(4528), [sym_union] = ACTIONS(4528), [sym_unittest] = ACTIONS(4528), [sym_version] = ACTIONS(4528), [sym_while] = ACTIONS(4528), [sym_with] = ACTIONS(4528), [sym_gshared] = ACTIONS(4528), [sym_traits] = ACTIONS(4528), [sym_vector] = ACTIONS(4528), [sym_void] = ACTIONS(4528), [anon_sym_BQUOTE] = ACTIONS(4531), [anon_sym_r_DQUOTE] = ACTIONS(4531), [anon_sym_x_DQUOTE] = ACTIONS(4531), [anon_sym_DQUOTE] = ACTIONS(4531), [anon_sym_i_BQUOTE] = ACTIONS(4531), [anon_sym_i_DQUOTE] = ACTIONS(4531), [anon_sym_iq_LBRACE] = ACTIONS(4531), [aux_sym_char_literal_token1] = ACTIONS(4531), [anon_sym_SQUOTE] = ACTIONS(4528), [anon_sym___DATE__] = ACTIONS(4528), [anon_sym___FILE__] = ACTIONS(4528), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4528), [anon_sym___FUNCTION__] = ACTIONS(4528), [anon_sym___LINE__] = ACTIONS(4528), [anon_sym___MODULE__] = ACTIONS(4528), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4528), [anon_sym___TIME__] = ACTIONS(4528), [anon_sym___TIMESTAMP__] = ACTIONS(4528), [anon_sym___VENDOR__] = ACTIONS(4528), [anon_sym___VERSION__] = ACTIONS(4528), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4531), [sym_float_literal] = ACTIONS(4531), [sym__string] = ACTIONS(4531), }, [1568] = { [sym_identifier] = ACTIONS(4758), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4760), [anon_sym_RBRACE] = ACTIONS(4760), [anon_sym_LBRACE] = ACTIONS(4760), [anon_sym_DOT] = ACTIONS(4760), [anon_sym_AMP] = ACTIONS(4760), [anon_sym_DASH] = ACTIONS(4758), [anon_sym_DASH_DASH] = ACTIONS(4760), [anon_sym_PLUS] = ACTIONS(4758), [anon_sym_PLUS_PLUS] = ACTIONS(4760), [anon_sym_BANG] = ACTIONS(4760), [anon_sym_LPAREN] = ACTIONS(4760), [anon_sym_RPAREN] = ACTIONS(4760), [anon_sym_LBRACK] = ACTIONS(4760), [anon_sym_SEMI] = ACTIONS(4760), [anon_sym_DOLLAR] = ACTIONS(4760), [anon_sym_STAR] = ACTIONS(4760), [anon_sym_TILDE] = ACTIONS(4760), [anon_sym_AT] = ACTIONS(4760), [sym_bool] = ACTIONS(4758), [sym_byte] = ACTIONS(4758), [sym_ubyte] = ACTIONS(4758), [sym_char] = ACTIONS(4758), [sym_short] = ACTIONS(4758), [sym_ushort] = ACTIONS(4758), [sym_int] = ACTIONS(4758), [sym_uint] = ACTIONS(4758), [sym_long] = ACTIONS(4758), [sym_ulong] = ACTIONS(4758), [sym_cent] = ACTIONS(4758), [sym_ucent] = ACTIONS(4758), [sym_wchar] = ACTIONS(4758), [sym_dchar] = ACTIONS(4758), [sym_float] = ACTIONS(4758), [sym_double] = ACTIONS(4758), [sym_real] = ACTIONS(4758), [sym_ifloat] = ACTIONS(4758), [sym_idouble] = ACTIONS(4758), [sym_ireal] = ACTIONS(4758), [sym_cfloat] = ACTIONS(4758), [sym_cdouble] = ACTIONS(4758), [sym_creal] = ACTIONS(4758), [sym_size_t] = ACTIONS(4758), [sym_ptrdiff_t] = ACTIONS(4758), [sym_string] = ACTIONS(4758), [sym_cstring] = ACTIONS(4758), [sym_dstring] = ACTIONS(4758), [sym_wstring] = ACTIONS(4758), [sym_noreturn] = ACTIONS(4758), [sym_true] = ACTIONS(4758), [sym_false] = ACTIONS(4758), [sym_null] = ACTIONS(4758), [sym_super] = ACTIONS(4758), [sym_this] = ACTIONS(4758), [sym_abstract] = ACTIONS(4758), [sym_alias] = ACTIONS(4758), [sym_align] = ACTIONS(4758), [sym_asm] = ACTIONS(4758), [sym_assert] = ACTIONS(4758), [sym_auto] = ACTIONS(4758), [sym_break] = ACTIONS(4758), [sym_case] = ACTIONS(4758), [sym_cast] = ACTIONS(4758), [sym_class] = ACTIONS(4758), [sym_const] = ACTIONS(4758), [sym_continue] = ACTIONS(4758), [sym_debug] = ACTIONS(4758), [sym_default] = ACTIONS(4758), [sym_delegate] = ACTIONS(4758), [sym_delete] = ACTIONS(4758), [sym_deprecated] = ACTIONS(4758), [sym_do] = ACTIONS(4758), [sym_else] = ACTIONS(4758), [sym_enum] = ACTIONS(4758), [sym_export] = ACTIONS(4758), [sym_extern] = ACTIONS(4758), [sym_final] = ACTIONS(4758), [sym_for] = ACTIONS(4758), [sym_foreach] = ACTIONS(4758), [sym_foreach_reverse] = ACTIONS(4758), [sym_function] = ACTIONS(4758), [sym_goto] = ACTIONS(4758), [sym_if] = ACTIONS(4758), [sym_immutable] = ACTIONS(4758), [sym_import] = ACTIONS(4758), [sym_in] = ACTIONS(4758), [sym_inout] = ACTIONS(4758), [sym_interface] = ACTIONS(4758), [sym_invariant] = ACTIONS(4758), [sym_is] = ACTIONS(4758), [sym_mixin] = ACTIONS(4758), [sym_new] = ACTIONS(4758), [sym_nothrow] = ACTIONS(4758), [sym_out] = ACTIONS(4758), [sym_override] = ACTIONS(4758), [sym_package] = ACTIONS(4758), [sym_pragma] = ACTIONS(4758), [sym_private] = ACTIONS(4758), [sym_protected] = ACTIONS(4758), [sym_public] = ACTIONS(4758), [sym_pure] = ACTIONS(4758), [sym_ref] = ACTIONS(4758), [sym_return] = ACTIONS(4758), [sym_scope] = ACTIONS(4758), [sym_shared] = ACTIONS(4758), [sym_static] = ACTIONS(4758), [sym_struct] = ACTIONS(4758), [sym_switch] = ACTIONS(4758), [sym_synchronized] = ACTIONS(4758), [sym_template] = ACTIONS(4758), [sym_throw] = ACTIONS(4758), [sym_try] = ACTIONS(4758), [sym_typeid] = ACTIONS(4758), [sym_typeof] = ACTIONS(4758), [sym_union] = ACTIONS(4758), [sym_unittest] = ACTIONS(4758), [sym_version] = ACTIONS(4758), [sym_while] = ACTIONS(4758), [sym_with] = ACTIONS(4758), [sym_gshared] = ACTIONS(4758), [sym_traits] = ACTIONS(4758), [sym_vector] = ACTIONS(4758), [sym_void] = ACTIONS(4758), [anon_sym_BQUOTE] = ACTIONS(4760), [anon_sym_r_DQUOTE] = ACTIONS(4760), [anon_sym_x_DQUOTE] = ACTIONS(4760), [anon_sym_DQUOTE] = ACTIONS(4760), [anon_sym_i_BQUOTE] = ACTIONS(4760), [anon_sym_i_DQUOTE] = ACTIONS(4760), [anon_sym_iq_LBRACE] = ACTIONS(4760), [aux_sym_char_literal_token1] = ACTIONS(4760), [anon_sym_SQUOTE] = ACTIONS(4758), [anon_sym___DATE__] = ACTIONS(4758), [anon_sym___FILE__] = ACTIONS(4758), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4758), [anon_sym___FUNCTION__] = ACTIONS(4758), [anon_sym___LINE__] = ACTIONS(4758), [anon_sym___MODULE__] = ACTIONS(4758), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4758), [anon_sym___TIME__] = ACTIONS(4758), [anon_sym___TIMESTAMP__] = ACTIONS(4758), [anon_sym___VENDOR__] = ACTIONS(4758), [anon_sym___VERSION__] = ACTIONS(4758), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4760), [sym_float_literal] = ACTIONS(4760), [sym__string] = ACTIONS(4760), }, [1569] = { [sym_identifier] = ACTIONS(4646), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4648), [anon_sym_RBRACE] = ACTIONS(4648), [anon_sym_LBRACE] = ACTIONS(4648), [anon_sym_DOT] = ACTIONS(4648), [anon_sym_AMP] = ACTIONS(4648), [anon_sym_DASH] = ACTIONS(4646), [anon_sym_DASH_DASH] = ACTIONS(4648), [anon_sym_PLUS] = ACTIONS(4646), [anon_sym_PLUS_PLUS] = ACTIONS(4648), [anon_sym_BANG] = ACTIONS(4648), [anon_sym_LPAREN] = ACTIONS(4648), [anon_sym_RPAREN] = ACTIONS(4648), [anon_sym_LBRACK] = ACTIONS(4648), [anon_sym_SEMI] = ACTIONS(4648), [anon_sym_DOLLAR] = ACTIONS(4648), [anon_sym_STAR] = ACTIONS(4648), [anon_sym_TILDE] = ACTIONS(4648), [anon_sym_AT] = ACTIONS(4648), [sym_bool] = ACTIONS(4646), [sym_byte] = ACTIONS(4646), [sym_ubyte] = ACTIONS(4646), [sym_char] = ACTIONS(4646), [sym_short] = ACTIONS(4646), [sym_ushort] = ACTIONS(4646), [sym_int] = ACTIONS(4646), [sym_uint] = ACTIONS(4646), [sym_long] = ACTIONS(4646), [sym_ulong] = ACTIONS(4646), [sym_cent] = ACTIONS(4646), [sym_ucent] = ACTIONS(4646), [sym_wchar] = ACTIONS(4646), [sym_dchar] = ACTIONS(4646), [sym_float] = ACTIONS(4646), [sym_double] = ACTIONS(4646), [sym_real] = ACTIONS(4646), [sym_ifloat] = ACTIONS(4646), [sym_idouble] = ACTIONS(4646), [sym_ireal] = ACTIONS(4646), [sym_cfloat] = ACTIONS(4646), [sym_cdouble] = ACTIONS(4646), [sym_creal] = ACTIONS(4646), [sym_size_t] = ACTIONS(4646), [sym_ptrdiff_t] = ACTIONS(4646), [sym_string] = ACTIONS(4646), [sym_cstring] = ACTIONS(4646), [sym_dstring] = ACTIONS(4646), [sym_wstring] = ACTIONS(4646), [sym_noreturn] = ACTIONS(4646), [sym_true] = ACTIONS(4646), [sym_false] = ACTIONS(4646), [sym_null] = ACTIONS(4646), [sym_super] = ACTIONS(4646), [sym_this] = ACTIONS(4646), [sym_abstract] = ACTIONS(4646), [sym_alias] = ACTIONS(4646), [sym_align] = ACTIONS(4646), [sym_asm] = ACTIONS(4646), [sym_assert] = ACTIONS(4646), [sym_auto] = ACTIONS(4646), [sym_break] = ACTIONS(4646), [sym_case] = ACTIONS(4646), [sym_cast] = ACTIONS(4646), [sym_class] = ACTIONS(4646), [sym_const] = ACTIONS(4646), [sym_continue] = ACTIONS(4646), [sym_debug] = ACTIONS(4646), [sym_default] = ACTIONS(4646), [sym_delegate] = ACTIONS(4646), [sym_delete] = ACTIONS(4646), [sym_deprecated] = ACTIONS(4646), [sym_do] = ACTIONS(4646), [sym_else] = ACTIONS(4646), [sym_enum] = ACTIONS(4646), [sym_export] = ACTIONS(4646), [sym_extern] = ACTIONS(4646), [sym_final] = ACTIONS(4646), [sym_for] = ACTIONS(4646), [sym_foreach] = ACTIONS(4646), [sym_foreach_reverse] = ACTIONS(4646), [sym_function] = ACTIONS(4646), [sym_goto] = ACTIONS(4646), [sym_if] = ACTIONS(4646), [sym_immutable] = ACTIONS(4646), [sym_import] = ACTIONS(4646), [sym_in] = ACTIONS(4646), [sym_inout] = ACTIONS(4646), [sym_interface] = ACTIONS(4646), [sym_invariant] = ACTIONS(4646), [sym_is] = ACTIONS(4646), [sym_mixin] = ACTIONS(4646), [sym_new] = ACTIONS(4646), [sym_nothrow] = ACTIONS(4646), [sym_out] = ACTIONS(4646), [sym_override] = ACTIONS(4646), [sym_package] = ACTIONS(4646), [sym_pragma] = ACTIONS(4646), [sym_private] = ACTIONS(4646), [sym_protected] = ACTIONS(4646), [sym_public] = ACTIONS(4646), [sym_pure] = ACTIONS(4646), [sym_ref] = ACTIONS(4646), [sym_return] = ACTIONS(4646), [sym_scope] = ACTIONS(4646), [sym_shared] = ACTIONS(4646), [sym_static] = ACTIONS(4646), [sym_struct] = ACTIONS(4646), [sym_switch] = ACTIONS(4646), [sym_synchronized] = ACTIONS(4646), [sym_template] = ACTIONS(4646), [sym_throw] = ACTIONS(4646), [sym_try] = ACTIONS(4646), [sym_typeid] = ACTIONS(4646), [sym_typeof] = ACTIONS(4646), [sym_union] = ACTIONS(4646), [sym_unittest] = ACTIONS(4646), [sym_version] = ACTIONS(4646), [sym_while] = ACTIONS(4646), [sym_with] = ACTIONS(4646), [sym_gshared] = ACTIONS(4646), [sym_traits] = ACTIONS(4646), [sym_vector] = ACTIONS(4646), [sym_void] = ACTIONS(4646), [anon_sym_BQUOTE] = ACTIONS(4648), [anon_sym_r_DQUOTE] = ACTIONS(4648), [anon_sym_x_DQUOTE] = ACTIONS(4648), [anon_sym_DQUOTE] = ACTIONS(4648), [anon_sym_i_BQUOTE] = ACTIONS(4648), [anon_sym_i_DQUOTE] = ACTIONS(4648), [anon_sym_iq_LBRACE] = ACTIONS(4648), [aux_sym_char_literal_token1] = ACTIONS(4648), [anon_sym_SQUOTE] = ACTIONS(4646), [anon_sym___DATE__] = ACTIONS(4646), [anon_sym___FILE__] = ACTIONS(4646), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4646), [anon_sym___FUNCTION__] = ACTIONS(4646), [anon_sym___LINE__] = ACTIONS(4646), [anon_sym___MODULE__] = ACTIONS(4646), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4646), [anon_sym___TIME__] = ACTIONS(4646), [anon_sym___TIMESTAMP__] = ACTIONS(4646), [anon_sym___VENDOR__] = ACTIONS(4646), [anon_sym___VERSION__] = ACTIONS(4646), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4648), [sym_float_literal] = ACTIONS(4648), [sym__string] = ACTIONS(4648), }, [1570] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_RBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [anon_sym_AT] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_abstract] = ACTIONS(4640), [sym_alias] = ACTIONS(4640), [sym_align] = ACTIONS(4640), [sym_asm] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_break] = ACTIONS(4640), [sym_case] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_class] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_continue] = ACTIONS(4640), [sym_debug] = ACTIONS(4640), [sym_default] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_deprecated] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(5096), [sym_enum] = ACTIONS(4640), [sym_export] = ACTIONS(4640), [sym_extern] = ACTIONS(4640), [sym_final] = ACTIONS(4640), [sym_for] = ACTIONS(4640), [sym_foreach] = ACTIONS(4640), [sym_foreach_reverse] = ACTIONS(4640), [sym_function] = ACTIONS(4640), [sym_goto] = ACTIONS(4640), [sym_if] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_interface] = ACTIONS(4640), [sym_invariant] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_nothrow] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_override] = ACTIONS(4640), [sym_package] = ACTIONS(4640), [sym_pragma] = ACTIONS(4640), [sym_private] = ACTIONS(4640), [sym_protected] = ACTIONS(4640), [sym_public] = ACTIONS(4640), [sym_pure] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_return] = ACTIONS(4640), [sym_scope] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_static] = ACTIONS(4640), [sym_struct] = ACTIONS(4640), [sym_switch] = ACTIONS(4640), [sym_synchronized] = ACTIONS(4640), [sym_template] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_try] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_union] = ACTIONS(4640), [sym_unittest] = ACTIONS(4640), [sym_version] = ACTIONS(4640), [sym_while] = ACTIONS(4640), [sym_with] = ACTIONS(4640), [sym_gshared] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [1571] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(5098), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [1572] = { [sym_identifier] = ACTIONS(4426), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4428), [anon_sym_RBRACE] = ACTIONS(4428), [anon_sym_LBRACE] = ACTIONS(4428), [anon_sym_DOT] = ACTIONS(4428), [anon_sym_AMP] = ACTIONS(4428), [anon_sym_DASH] = ACTIONS(4426), [anon_sym_DASH_DASH] = ACTIONS(4428), [anon_sym_PLUS] = ACTIONS(4426), [anon_sym_PLUS_PLUS] = ACTIONS(4428), [anon_sym_BANG] = ACTIONS(4428), [anon_sym_LPAREN] = ACTIONS(4428), [anon_sym_RPAREN] = ACTIONS(4428), [anon_sym_LBRACK] = ACTIONS(4428), [anon_sym_SEMI] = ACTIONS(4428), [anon_sym_DOLLAR] = ACTIONS(4428), [anon_sym_STAR] = ACTIONS(4428), [anon_sym_TILDE] = ACTIONS(4428), [anon_sym_AT] = ACTIONS(4428), [sym_bool] = ACTIONS(4426), [sym_byte] = ACTIONS(4426), [sym_ubyte] = ACTIONS(4426), [sym_char] = ACTIONS(4426), [sym_short] = ACTIONS(4426), [sym_ushort] = ACTIONS(4426), [sym_int] = ACTIONS(4426), [sym_uint] = ACTIONS(4426), [sym_long] = ACTIONS(4426), [sym_ulong] = ACTIONS(4426), [sym_cent] = ACTIONS(4426), [sym_ucent] = ACTIONS(4426), [sym_wchar] = ACTIONS(4426), [sym_dchar] = ACTIONS(4426), [sym_float] = ACTIONS(4426), [sym_double] = ACTIONS(4426), [sym_real] = ACTIONS(4426), [sym_ifloat] = ACTIONS(4426), [sym_idouble] = ACTIONS(4426), [sym_ireal] = ACTIONS(4426), [sym_cfloat] = ACTIONS(4426), [sym_cdouble] = ACTIONS(4426), [sym_creal] = ACTIONS(4426), [sym_size_t] = ACTIONS(4426), [sym_ptrdiff_t] = ACTIONS(4426), [sym_string] = ACTIONS(4426), [sym_cstring] = ACTIONS(4426), [sym_dstring] = ACTIONS(4426), [sym_wstring] = ACTIONS(4426), [sym_noreturn] = ACTIONS(4426), [sym_true] = ACTIONS(4426), [sym_false] = ACTIONS(4426), [sym_null] = ACTIONS(4426), [sym_super] = ACTIONS(4426), [sym_this] = ACTIONS(4426), [sym_abstract] = ACTIONS(4426), [sym_alias] = ACTIONS(4426), [sym_align] = ACTIONS(4426), [sym_asm] = ACTIONS(4426), [sym_assert] = ACTIONS(4426), [sym_auto] = ACTIONS(4426), [sym_break] = ACTIONS(4426), [sym_case] = ACTIONS(4426), [sym_cast] = ACTIONS(4426), [sym_class] = ACTIONS(4426), [sym_const] = ACTIONS(4426), [sym_continue] = ACTIONS(4426), [sym_debug] = ACTIONS(4426), [sym_default] = ACTIONS(4426), [sym_delegate] = ACTIONS(4426), [sym_delete] = ACTIONS(4426), [sym_deprecated] = ACTIONS(4426), [sym_do] = ACTIONS(4426), [sym_else] = ACTIONS(4426), [sym_enum] = ACTIONS(4426), [sym_export] = ACTIONS(4426), [sym_extern] = ACTIONS(4426), [sym_final] = ACTIONS(4426), [sym_for] = ACTIONS(4426), [sym_foreach] = ACTIONS(4426), [sym_foreach_reverse] = ACTIONS(4426), [sym_function] = ACTIONS(4426), [sym_goto] = ACTIONS(4426), [sym_if] = ACTIONS(4426), [sym_immutable] = ACTIONS(4426), [sym_import] = ACTIONS(4426), [sym_in] = ACTIONS(4426), [sym_inout] = ACTIONS(4426), [sym_interface] = ACTIONS(4426), [sym_invariant] = ACTIONS(4426), [sym_is] = ACTIONS(4426), [sym_mixin] = ACTIONS(4426), [sym_new] = ACTIONS(4426), [sym_nothrow] = ACTIONS(4426), [sym_out] = ACTIONS(4426), [sym_override] = ACTIONS(4426), [sym_package] = ACTIONS(4426), [sym_pragma] = ACTIONS(4426), [sym_private] = ACTIONS(4426), [sym_protected] = ACTIONS(4426), [sym_public] = ACTIONS(4426), [sym_pure] = ACTIONS(4426), [sym_ref] = ACTIONS(4426), [sym_return] = ACTIONS(4426), [sym_scope] = ACTIONS(4426), [sym_shared] = ACTIONS(4426), [sym_static] = ACTIONS(4426), [sym_struct] = ACTIONS(4426), [sym_switch] = ACTIONS(4426), [sym_synchronized] = ACTIONS(4426), [sym_template] = ACTIONS(4426), [sym_throw] = ACTIONS(4426), [sym_try] = ACTIONS(4426), [sym_typeid] = ACTIONS(4426), [sym_typeof] = ACTIONS(4426), [sym_union] = ACTIONS(4426), [sym_unittest] = ACTIONS(4426), [sym_version] = ACTIONS(4426), [sym_while] = ACTIONS(4426), [sym_with] = ACTIONS(4426), [sym_gshared] = ACTIONS(4426), [sym_traits] = ACTIONS(4426), [sym_vector] = ACTIONS(4426), [sym_void] = ACTIONS(4426), [anon_sym_BQUOTE] = ACTIONS(4428), [anon_sym_r_DQUOTE] = ACTIONS(4428), [anon_sym_x_DQUOTE] = ACTIONS(4428), [anon_sym_DQUOTE] = ACTIONS(4428), [anon_sym_i_BQUOTE] = ACTIONS(4428), [anon_sym_i_DQUOTE] = ACTIONS(4428), [anon_sym_iq_LBRACE] = ACTIONS(4428), [aux_sym_char_literal_token1] = ACTIONS(4428), [anon_sym_SQUOTE] = ACTIONS(4426), [anon_sym___DATE__] = ACTIONS(4426), [anon_sym___FILE__] = ACTIONS(4426), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4426), [anon_sym___FUNCTION__] = ACTIONS(4426), [anon_sym___LINE__] = ACTIONS(4426), [anon_sym___MODULE__] = ACTIONS(4426), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4426), [anon_sym___TIME__] = ACTIONS(4426), [anon_sym___TIMESTAMP__] = ACTIONS(4426), [anon_sym___VENDOR__] = ACTIONS(4426), [anon_sym___VERSION__] = ACTIONS(4426), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4428), [sym_float_literal] = ACTIONS(4428), [sym__string] = ACTIONS(4428), }, [1573] = { [sym_identifier] = ACTIONS(5068), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5070), [anon_sym_RBRACE] = ACTIONS(5070), [anon_sym_LBRACE] = ACTIONS(5070), [anon_sym_DOT] = ACTIONS(5070), [anon_sym_AMP] = ACTIONS(5070), [anon_sym_DASH] = ACTIONS(5068), [anon_sym_DASH_DASH] = ACTIONS(5070), [anon_sym_PLUS] = ACTIONS(5068), [anon_sym_PLUS_PLUS] = ACTIONS(5070), [anon_sym_BANG] = ACTIONS(5070), [anon_sym_LPAREN] = ACTIONS(5070), [anon_sym_RPAREN] = ACTIONS(5070), [anon_sym_LBRACK] = ACTIONS(5070), [anon_sym_SEMI] = ACTIONS(5070), [anon_sym_DOLLAR] = ACTIONS(5070), [anon_sym_STAR] = ACTIONS(5070), [anon_sym_TILDE] = ACTIONS(5070), [anon_sym_AT] = ACTIONS(5070), [sym_bool] = ACTIONS(5068), [sym_byte] = ACTIONS(5068), [sym_ubyte] = ACTIONS(5068), [sym_char] = ACTIONS(5068), [sym_short] = ACTIONS(5068), [sym_ushort] = ACTIONS(5068), [sym_int] = ACTIONS(5068), [sym_uint] = ACTIONS(5068), [sym_long] = ACTIONS(5068), [sym_ulong] = ACTIONS(5068), [sym_cent] = ACTIONS(5068), [sym_ucent] = ACTIONS(5068), [sym_wchar] = ACTIONS(5068), [sym_dchar] = ACTIONS(5068), [sym_float] = ACTIONS(5068), [sym_double] = ACTIONS(5068), [sym_real] = ACTIONS(5068), [sym_ifloat] = ACTIONS(5068), [sym_idouble] = ACTIONS(5068), [sym_ireal] = ACTIONS(5068), [sym_cfloat] = ACTIONS(5068), [sym_cdouble] = ACTIONS(5068), [sym_creal] = ACTIONS(5068), [sym_size_t] = ACTIONS(5068), [sym_ptrdiff_t] = ACTIONS(5068), [sym_string] = ACTIONS(5068), [sym_cstring] = ACTIONS(5068), [sym_dstring] = ACTIONS(5068), [sym_wstring] = ACTIONS(5068), [sym_noreturn] = ACTIONS(5068), [sym_true] = ACTIONS(5068), [sym_false] = ACTIONS(5068), [sym_null] = ACTIONS(5068), [sym_super] = ACTIONS(5068), [sym_this] = ACTIONS(5068), [sym_abstract] = ACTIONS(5068), [sym_alias] = ACTIONS(5068), [sym_align] = ACTIONS(5068), [sym_asm] = ACTIONS(5068), [sym_assert] = ACTIONS(5068), [sym_auto] = ACTIONS(5068), [sym_break] = ACTIONS(5068), [sym_case] = ACTIONS(5068), [sym_cast] = ACTIONS(5068), [sym_class] = ACTIONS(5068), [sym_const] = ACTIONS(5068), [sym_continue] = ACTIONS(5068), [sym_debug] = ACTIONS(5068), [sym_default] = ACTIONS(5068), [sym_delegate] = ACTIONS(5068), [sym_delete] = ACTIONS(5068), [sym_deprecated] = ACTIONS(5068), [sym_do] = ACTIONS(5068), [sym_else] = ACTIONS(5068), [sym_enum] = ACTIONS(5068), [sym_export] = ACTIONS(5068), [sym_extern] = ACTIONS(5068), [sym_final] = ACTIONS(5068), [sym_for] = ACTIONS(5068), [sym_foreach] = ACTIONS(5068), [sym_foreach_reverse] = ACTIONS(5068), [sym_function] = ACTIONS(5068), [sym_goto] = ACTIONS(5068), [sym_if] = ACTIONS(5068), [sym_immutable] = ACTIONS(5068), [sym_import] = ACTIONS(5068), [sym_in] = ACTIONS(5068), [sym_inout] = ACTIONS(5068), [sym_interface] = ACTIONS(5068), [sym_invariant] = ACTIONS(5068), [sym_is] = ACTIONS(5068), [sym_mixin] = ACTIONS(5068), [sym_new] = ACTIONS(5068), [sym_nothrow] = ACTIONS(5068), [sym_out] = ACTIONS(5068), [sym_override] = ACTIONS(5068), [sym_package] = ACTIONS(5068), [sym_pragma] = ACTIONS(5068), [sym_private] = ACTIONS(5068), [sym_protected] = ACTIONS(5068), [sym_public] = ACTIONS(5068), [sym_pure] = ACTIONS(5068), [sym_ref] = ACTIONS(5068), [sym_return] = ACTIONS(5068), [sym_scope] = ACTIONS(5068), [sym_shared] = ACTIONS(5068), [sym_static] = ACTIONS(5068), [sym_struct] = ACTIONS(5068), [sym_switch] = ACTIONS(5068), [sym_synchronized] = ACTIONS(5068), [sym_template] = ACTIONS(5068), [sym_throw] = ACTIONS(5068), [sym_try] = ACTIONS(5068), [sym_typeid] = ACTIONS(5068), [sym_typeof] = ACTIONS(5068), [sym_union] = ACTIONS(5068), [sym_unittest] = ACTIONS(5068), [sym_version] = ACTIONS(5068), [sym_while] = ACTIONS(5068), [sym_with] = ACTIONS(5068), [sym_gshared] = ACTIONS(5068), [sym_traits] = ACTIONS(5068), [sym_vector] = ACTIONS(5068), [sym_void] = ACTIONS(5068), [anon_sym_BQUOTE] = ACTIONS(5070), [anon_sym_r_DQUOTE] = ACTIONS(5070), [anon_sym_x_DQUOTE] = ACTIONS(5070), [anon_sym_DQUOTE] = ACTIONS(5070), [anon_sym_i_BQUOTE] = ACTIONS(5070), [anon_sym_i_DQUOTE] = ACTIONS(5070), [anon_sym_iq_LBRACE] = ACTIONS(5070), [aux_sym_char_literal_token1] = ACTIONS(5070), [anon_sym_SQUOTE] = ACTIONS(5068), [anon_sym___DATE__] = ACTIONS(5068), [anon_sym___FILE__] = ACTIONS(5068), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5068), [anon_sym___FUNCTION__] = ACTIONS(5068), [anon_sym___LINE__] = ACTIONS(5068), [anon_sym___MODULE__] = ACTIONS(5068), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5068), [anon_sym___TIME__] = ACTIONS(5068), [anon_sym___TIMESTAMP__] = ACTIONS(5068), [anon_sym___VENDOR__] = ACTIONS(5068), [anon_sym___VERSION__] = ACTIONS(5068), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5070), [sym_float_literal] = ACTIONS(5070), [sym__string] = ACTIONS(5070), }, [1574] = { [sym_identifier] = ACTIONS(5048), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5050), [anon_sym_RBRACE] = ACTIONS(5050), [anon_sym_LBRACE] = ACTIONS(5050), [anon_sym_DOT] = ACTIONS(5050), [anon_sym_AMP] = ACTIONS(5050), [anon_sym_DASH] = ACTIONS(5048), [anon_sym_DASH_DASH] = ACTIONS(5050), [anon_sym_PLUS] = ACTIONS(5048), [anon_sym_PLUS_PLUS] = ACTIONS(5050), [anon_sym_BANG] = ACTIONS(5050), [anon_sym_LPAREN] = ACTIONS(5050), [anon_sym_RPAREN] = ACTIONS(5050), [anon_sym_LBRACK] = ACTIONS(5050), [anon_sym_SEMI] = ACTIONS(5050), [anon_sym_DOLLAR] = ACTIONS(5050), [anon_sym_STAR] = ACTIONS(5050), [anon_sym_TILDE] = ACTIONS(5050), [anon_sym_AT] = ACTIONS(5050), [sym_bool] = ACTIONS(5048), [sym_byte] = ACTIONS(5048), [sym_ubyte] = ACTIONS(5048), [sym_char] = ACTIONS(5048), [sym_short] = ACTIONS(5048), [sym_ushort] = ACTIONS(5048), [sym_int] = ACTIONS(5048), [sym_uint] = ACTIONS(5048), [sym_long] = ACTIONS(5048), [sym_ulong] = ACTIONS(5048), [sym_cent] = ACTIONS(5048), [sym_ucent] = ACTIONS(5048), [sym_wchar] = ACTIONS(5048), [sym_dchar] = ACTIONS(5048), [sym_float] = ACTIONS(5048), [sym_double] = ACTIONS(5048), [sym_real] = ACTIONS(5048), [sym_ifloat] = ACTIONS(5048), [sym_idouble] = ACTIONS(5048), [sym_ireal] = ACTIONS(5048), [sym_cfloat] = ACTIONS(5048), [sym_cdouble] = ACTIONS(5048), [sym_creal] = ACTIONS(5048), [sym_size_t] = ACTIONS(5048), [sym_ptrdiff_t] = ACTIONS(5048), [sym_string] = ACTIONS(5048), [sym_cstring] = ACTIONS(5048), [sym_dstring] = ACTIONS(5048), [sym_wstring] = ACTIONS(5048), [sym_noreturn] = ACTIONS(5048), [sym_true] = ACTIONS(5048), [sym_false] = ACTIONS(5048), [sym_null] = ACTIONS(5048), [sym_super] = ACTIONS(5048), [sym_this] = ACTIONS(5048), [sym_abstract] = ACTIONS(5048), [sym_alias] = ACTIONS(5048), [sym_align] = ACTIONS(5048), [sym_asm] = ACTIONS(5048), [sym_assert] = ACTIONS(5048), [sym_auto] = ACTIONS(5048), [sym_break] = ACTIONS(5048), [sym_case] = ACTIONS(5048), [sym_cast] = ACTIONS(5048), [sym_class] = ACTIONS(5048), [sym_const] = ACTIONS(5048), [sym_continue] = ACTIONS(5048), [sym_debug] = ACTIONS(5048), [sym_default] = ACTIONS(5048), [sym_delegate] = ACTIONS(5048), [sym_delete] = ACTIONS(5048), [sym_deprecated] = ACTIONS(5048), [sym_do] = ACTIONS(5048), [sym_else] = ACTIONS(5048), [sym_enum] = ACTIONS(5048), [sym_export] = ACTIONS(5048), [sym_extern] = ACTIONS(5048), [sym_final] = ACTIONS(5048), [sym_for] = ACTIONS(5048), [sym_foreach] = ACTIONS(5048), [sym_foreach_reverse] = ACTIONS(5048), [sym_function] = ACTIONS(5048), [sym_goto] = ACTIONS(5048), [sym_if] = ACTIONS(5048), [sym_immutable] = ACTIONS(5048), [sym_import] = ACTIONS(5048), [sym_in] = ACTIONS(5048), [sym_inout] = ACTIONS(5048), [sym_interface] = ACTIONS(5048), [sym_invariant] = ACTIONS(5048), [sym_is] = ACTIONS(5048), [sym_mixin] = ACTIONS(5048), [sym_new] = ACTIONS(5048), [sym_nothrow] = ACTIONS(5048), [sym_out] = ACTIONS(5048), [sym_override] = ACTIONS(5048), [sym_package] = ACTIONS(5048), [sym_pragma] = ACTIONS(5048), [sym_private] = ACTIONS(5048), [sym_protected] = ACTIONS(5048), [sym_public] = ACTIONS(5048), [sym_pure] = ACTIONS(5048), [sym_ref] = ACTIONS(5048), [sym_return] = ACTIONS(5048), [sym_scope] = ACTIONS(5048), [sym_shared] = ACTIONS(5048), [sym_static] = ACTIONS(5048), [sym_struct] = ACTIONS(5048), [sym_switch] = ACTIONS(5048), [sym_synchronized] = ACTIONS(5048), [sym_template] = ACTIONS(5048), [sym_throw] = ACTIONS(5048), [sym_try] = ACTIONS(5048), [sym_typeid] = ACTIONS(5048), [sym_typeof] = ACTIONS(5048), [sym_union] = ACTIONS(5048), [sym_unittest] = ACTIONS(5048), [sym_version] = ACTIONS(5048), [sym_while] = ACTIONS(5048), [sym_with] = ACTIONS(5048), [sym_gshared] = ACTIONS(5048), [sym_traits] = ACTIONS(5048), [sym_vector] = ACTIONS(5048), [sym_void] = ACTIONS(5048), [anon_sym_BQUOTE] = ACTIONS(5050), [anon_sym_r_DQUOTE] = ACTIONS(5050), [anon_sym_x_DQUOTE] = ACTIONS(5050), [anon_sym_DQUOTE] = ACTIONS(5050), [anon_sym_i_BQUOTE] = ACTIONS(5050), [anon_sym_i_DQUOTE] = ACTIONS(5050), [anon_sym_iq_LBRACE] = ACTIONS(5050), [aux_sym_char_literal_token1] = ACTIONS(5050), [anon_sym_SQUOTE] = ACTIONS(5048), [anon_sym___DATE__] = ACTIONS(5048), [anon_sym___FILE__] = ACTIONS(5048), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5048), [anon_sym___FUNCTION__] = ACTIONS(5048), [anon_sym___LINE__] = ACTIONS(5048), [anon_sym___MODULE__] = ACTIONS(5048), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5048), [anon_sym___TIME__] = ACTIONS(5048), [anon_sym___TIMESTAMP__] = ACTIONS(5048), [anon_sym___VENDOR__] = ACTIONS(5048), [anon_sym___VERSION__] = ACTIONS(5048), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5050), [sym_float_literal] = ACTIONS(5050), [sym__string] = ACTIONS(5050), }, [1575] = { [sym_identifier] = ACTIONS(4750), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4752), [anon_sym_RBRACE] = ACTIONS(4752), [anon_sym_LBRACE] = ACTIONS(4752), [anon_sym_DOT] = ACTIONS(4752), [anon_sym_AMP] = ACTIONS(4752), [anon_sym_DASH] = ACTIONS(4750), [anon_sym_DASH_DASH] = ACTIONS(4752), [anon_sym_PLUS] = ACTIONS(4750), [anon_sym_PLUS_PLUS] = ACTIONS(4752), [anon_sym_BANG] = ACTIONS(4752), [anon_sym_LPAREN] = ACTIONS(4752), [anon_sym_RPAREN] = ACTIONS(4752), [anon_sym_LBRACK] = ACTIONS(4752), [anon_sym_SEMI] = ACTIONS(4752), [anon_sym_DOLLAR] = ACTIONS(4752), [anon_sym_STAR] = ACTIONS(4752), [anon_sym_TILDE] = ACTIONS(4752), [anon_sym_AT] = ACTIONS(4752), [sym_bool] = ACTIONS(4750), [sym_byte] = ACTIONS(4750), [sym_ubyte] = ACTIONS(4750), [sym_char] = ACTIONS(4750), [sym_short] = ACTIONS(4750), [sym_ushort] = ACTIONS(4750), [sym_int] = ACTIONS(4750), [sym_uint] = ACTIONS(4750), [sym_long] = ACTIONS(4750), [sym_ulong] = ACTIONS(4750), [sym_cent] = ACTIONS(4750), [sym_ucent] = ACTIONS(4750), [sym_wchar] = ACTIONS(4750), [sym_dchar] = ACTIONS(4750), [sym_float] = ACTIONS(4750), [sym_double] = ACTIONS(4750), [sym_real] = ACTIONS(4750), [sym_ifloat] = ACTIONS(4750), [sym_idouble] = ACTIONS(4750), [sym_ireal] = ACTIONS(4750), [sym_cfloat] = ACTIONS(4750), [sym_cdouble] = ACTIONS(4750), [sym_creal] = ACTIONS(4750), [sym_size_t] = ACTIONS(4750), [sym_ptrdiff_t] = ACTIONS(4750), [sym_string] = ACTIONS(4750), [sym_cstring] = ACTIONS(4750), [sym_dstring] = ACTIONS(4750), [sym_wstring] = ACTIONS(4750), [sym_noreturn] = ACTIONS(4750), [sym_true] = ACTIONS(4750), [sym_false] = ACTIONS(4750), [sym_null] = ACTIONS(4750), [sym_super] = ACTIONS(4750), [sym_this] = ACTIONS(4750), [sym_abstract] = ACTIONS(4750), [sym_alias] = ACTIONS(4750), [sym_align] = ACTIONS(4750), [sym_asm] = ACTIONS(4750), [sym_assert] = ACTIONS(4750), [sym_auto] = ACTIONS(4750), [sym_break] = ACTIONS(4750), [sym_case] = ACTIONS(4750), [sym_cast] = ACTIONS(4750), [sym_class] = ACTIONS(4750), [sym_const] = ACTIONS(4750), [sym_continue] = ACTIONS(4750), [sym_debug] = ACTIONS(4750), [sym_default] = ACTIONS(4750), [sym_delegate] = ACTIONS(4750), [sym_delete] = ACTIONS(4750), [sym_deprecated] = ACTIONS(4750), [sym_do] = ACTIONS(4750), [sym_else] = ACTIONS(4750), [sym_enum] = ACTIONS(4750), [sym_export] = ACTIONS(4750), [sym_extern] = ACTIONS(4750), [sym_final] = ACTIONS(4750), [sym_for] = ACTIONS(4750), [sym_foreach] = ACTIONS(4750), [sym_foreach_reverse] = ACTIONS(4750), [sym_function] = ACTIONS(4750), [sym_goto] = ACTIONS(4750), [sym_if] = ACTIONS(4750), [sym_immutable] = ACTIONS(4750), [sym_import] = ACTIONS(4750), [sym_in] = ACTIONS(4750), [sym_inout] = ACTIONS(4750), [sym_interface] = ACTIONS(4750), [sym_invariant] = ACTIONS(4750), [sym_is] = ACTIONS(4750), [sym_mixin] = ACTIONS(4750), [sym_new] = ACTIONS(4750), [sym_nothrow] = ACTIONS(4750), [sym_out] = ACTIONS(4750), [sym_override] = ACTIONS(4750), [sym_package] = ACTIONS(4750), [sym_pragma] = ACTIONS(4750), [sym_private] = ACTIONS(4750), [sym_protected] = ACTIONS(4750), [sym_public] = ACTIONS(4750), [sym_pure] = ACTIONS(4750), [sym_ref] = ACTIONS(4750), [sym_return] = ACTIONS(4750), [sym_scope] = ACTIONS(4750), [sym_shared] = ACTIONS(4750), [sym_static] = ACTIONS(4750), [sym_struct] = ACTIONS(4750), [sym_switch] = ACTIONS(4750), [sym_synchronized] = ACTIONS(4750), [sym_template] = ACTIONS(4750), [sym_throw] = ACTIONS(4750), [sym_try] = ACTIONS(4750), [sym_typeid] = ACTIONS(4750), [sym_typeof] = ACTIONS(4750), [sym_union] = ACTIONS(4750), [sym_unittest] = ACTIONS(4750), [sym_version] = ACTIONS(4750), [sym_while] = ACTIONS(4750), [sym_with] = ACTIONS(4750), [sym_gshared] = ACTIONS(4750), [sym_traits] = ACTIONS(4750), [sym_vector] = ACTIONS(4750), [sym_void] = ACTIONS(4750), [anon_sym_BQUOTE] = ACTIONS(4752), [anon_sym_r_DQUOTE] = ACTIONS(4752), [anon_sym_x_DQUOTE] = ACTIONS(4752), [anon_sym_DQUOTE] = ACTIONS(4752), [anon_sym_i_BQUOTE] = ACTIONS(4752), [anon_sym_i_DQUOTE] = ACTIONS(4752), [anon_sym_iq_LBRACE] = ACTIONS(4752), [aux_sym_char_literal_token1] = ACTIONS(4752), [anon_sym_SQUOTE] = ACTIONS(4750), [anon_sym___DATE__] = ACTIONS(4750), [anon_sym___FILE__] = ACTIONS(4750), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4750), [anon_sym___FUNCTION__] = ACTIONS(4750), [anon_sym___LINE__] = ACTIONS(4750), [anon_sym___MODULE__] = ACTIONS(4750), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4750), [anon_sym___TIME__] = ACTIONS(4750), [anon_sym___TIMESTAMP__] = ACTIONS(4750), [anon_sym___VENDOR__] = ACTIONS(4750), [anon_sym___VERSION__] = ACTIONS(4750), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4752), [sym_float_literal] = ACTIONS(4752), [sym__string] = ACTIONS(4752), }, [1576] = { [sym_identifier] = ACTIONS(4746), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4748), [anon_sym_RBRACE] = ACTIONS(4748), [anon_sym_LBRACE] = ACTIONS(4748), [anon_sym_DOT] = ACTIONS(4748), [anon_sym_AMP] = ACTIONS(4748), [anon_sym_DASH] = ACTIONS(4746), [anon_sym_DASH_DASH] = ACTIONS(4748), [anon_sym_PLUS] = ACTIONS(4746), [anon_sym_PLUS_PLUS] = ACTIONS(4748), [anon_sym_BANG] = ACTIONS(4748), [anon_sym_LPAREN] = ACTIONS(4748), [anon_sym_RPAREN] = ACTIONS(4748), [anon_sym_LBRACK] = ACTIONS(4748), [anon_sym_SEMI] = ACTIONS(4748), [anon_sym_DOLLAR] = ACTIONS(4748), [anon_sym_STAR] = ACTIONS(4748), [anon_sym_TILDE] = ACTIONS(4748), [anon_sym_AT] = ACTIONS(4748), [sym_bool] = ACTIONS(4746), [sym_byte] = ACTIONS(4746), [sym_ubyte] = ACTIONS(4746), [sym_char] = ACTIONS(4746), [sym_short] = ACTIONS(4746), [sym_ushort] = ACTIONS(4746), [sym_int] = ACTIONS(4746), [sym_uint] = ACTIONS(4746), [sym_long] = ACTIONS(4746), [sym_ulong] = ACTIONS(4746), [sym_cent] = ACTIONS(4746), [sym_ucent] = ACTIONS(4746), [sym_wchar] = ACTIONS(4746), [sym_dchar] = ACTIONS(4746), [sym_float] = ACTIONS(4746), [sym_double] = ACTIONS(4746), [sym_real] = ACTIONS(4746), [sym_ifloat] = ACTIONS(4746), [sym_idouble] = ACTIONS(4746), [sym_ireal] = ACTIONS(4746), [sym_cfloat] = ACTIONS(4746), [sym_cdouble] = ACTIONS(4746), [sym_creal] = ACTIONS(4746), [sym_size_t] = ACTIONS(4746), [sym_ptrdiff_t] = ACTIONS(4746), [sym_string] = ACTIONS(4746), [sym_cstring] = ACTIONS(4746), [sym_dstring] = ACTIONS(4746), [sym_wstring] = ACTIONS(4746), [sym_noreturn] = ACTIONS(4746), [sym_true] = ACTIONS(4746), [sym_false] = ACTIONS(4746), [sym_null] = ACTIONS(4746), [sym_super] = ACTIONS(4746), [sym_this] = ACTIONS(4746), [sym_abstract] = ACTIONS(4746), [sym_alias] = ACTIONS(4746), [sym_align] = ACTIONS(4746), [sym_asm] = ACTIONS(4746), [sym_assert] = ACTIONS(4746), [sym_auto] = ACTIONS(4746), [sym_break] = ACTIONS(4746), [sym_case] = ACTIONS(4746), [sym_cast] = ACTIONS(4746), [sym_class] = ACTIONS(4746), [sym_const] = ACTIONS(4746), [sym_continue] = ACTIONS(4746), [sym_debug] = ACTIONS(4746), [sym_default] = ACTIONS(4746), [sym_delegate] = ACTIONS(4746), [sym_delete] = ACTIONS(4746), [sym_deprecated] = ACTIONS(4746), [sym_do] = ACTIONS(4746), [sym_else] = ACTIONS(4746), [sym_enum] = ACTIONS(4746), [sym_export] = ACTIONS(4746), [sym_extern] = ACTIONS(4746), [sym_final] = ACTIONS(4746), [sym_for] = ACTIONS(4746), [sym_foreach] = ACTIONS(4746), [sym_foreach_reverse] = ACTIONS(4746), [sym_function] = ACTIONS(4746), [sym_goto] = ACTIONS(4746), [sym_if] = ACTIONS(4746), [sym_immutable] = ACTIONS(4746), [sym_import] = ACTIONS(4746), [sym_in] = ACTIONS(4746), [sym_inout] = ACTIONS(4746), [sym_interface] = ACTIONS(4746), [sym_invariant] = ACTIONS(4746), [sym_is] = ACTIONS(4746), [sym_mixin] = ACTIONS(4746), [sym_new] = ACTIONS(4746), [sym_nothrow] = ACTIONS(4746), [sym_out] = ACTIONS(4746), [sym_override] = ACTIONS(4746), [sym_package] = ACTIONS(4746), [sym_pragma] = ACTIONS(4746), [sym_private] = ACTIONS(4746), [sym_protected] = ACTIONS(4746), [sym_public] = ACTIONS(4746), [sym_pure] = ACTIONS(4746), [sym_ref] = ACTIONS(4746), [sym_return] = ACTIONS(4746), [sym_scope] = ACTIONS(4746), [sym_shared] = ACTIONS(4746), [sym_static] = ACTIONS(4746), [sym_struct] = ACTIONS(4746), [sym_switch] = ACTIONS(4746), [sym_synchronized] = ACTIONS(4746), [sym_template] = ACTIONS(4746), [sym_throw] = ACTIONS(4746), [sym_try] = ACTIONS(4746), [sym_typeid] = ACTIONS(4746), [sym_typeof] = ACTIONS(4746), [sym_union] = ACTIONS(4746), [sym_unittest] = ACTIONS(4746), [sym_version] = ACTIONS(4746), [sym_while] = ACTIONS(4746), [sym_with] = ACTIONS(4746), [sym_gshared] = ACTIONS(4746), [sym_traits] = ACTIONS(4746), [sym_vector] = ACTIONS(4746), [sym_void] = ACTIONS(4746), [anon_sym_BQUOTE] = ACTIONS(4748), [anon_sym_r_DQUOTE] = ACTIONS(4748), [anon_sym_x_DQUOTE] = ACTIONS(4748), [anon_sym_DQUOTE] = ACTIONS(4748), [anon_sym_i_BQUOTE] = ACTIONS(4748), [anon_sym_i_DQUOTE] = ACTIONS(4748), [anon_sym_iq_LBRACE] = ACTIONS(4748), [aux_sym_char_literal_token1] = ACTIONS(4748), [anon_sym_SQUOTE] = ACTIONS(4746), [anon_sym___DATE__] = ACTIONS(4746), [anon_sym___FILE__] = ACTIONS(4746), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4746), [anon_sym___FUNCTION__] = ACTIONS(4746), [anon_sym___LINE__] = ACTIONS(4746), [anon_sym___MODULE__] = ACTIONS(4746), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4746), [anon_sym___TIME__] = ACTIONS(4746), [anon_sym___TIMESTAMP__] = ACTIONS(4746), [anon_sym___VENDOR__] = ACTIONS(4746), [anon_sym___VERSION__] = ACTIONS(4746), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4748), [sym_float_literal] = ACTIONS(4748), [sym__string] = ACTIONS(4748), }, [1577] = { [sym_identifier] = ACTIONS(5032), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5034), [anon_sym_RBRACE] = ACTIONS(5034), [anon_sym_LBRACE] = ACTIONS(5034), [anon_sym_DOT] = ACTIONS(5034), [anon_sym_AMP] = ACTIONS(5034), [anon_sym_DASH] = ACTIONS(5032), [anon_sym_DASH_DASH] = ACTIONS(5034), [anon_sym_PLUS] = ACTIONS(5032), [anon_sym_PLUS_PLUS] = ACTIONS(5034), [anon_sym_BANG] = ACTIONS(5034), [anon_sym_LPAREN] = ACTIONS(5034), [anon_sym_RPAREN] = ACTIONS(5034), [anon_sym_LBRACK] = ACTIONS(5034), [anon_sym_SEMI] = ACTIONS(5034), [anon_sym_DOLLAR] = ACTIONS(5034), [anon_sym_STAR] = ACTIONS(5034), [anon_sym_TILDE] = ACTIONS(5034), [anon_sym_AT] = ACTIONS(5034), [sym_bool] = ACTIONS(5032), [sym_byte] = ACTIONS(5032), [sym_ubyte] = ACTIONS(5032), [sym_char] = ACTIONS(5032), [sym_short] = ACTIONS(5032), [sym_ushort] = ACTIONS(5032), [sym_int] = ACTIONS(5032), [sym_uint] = ACTIONS(5032), [sym_long] = ACTIONS(5032), [sym_ulong] = ACTIONS(5032), [sym_cent] = ACTIONS(5032), [sym_ucent] = ACTIONS(5032), [sym_wchar] = ACTIONS(5032), [sym_dchar] = ACTIONS(5032), [sym_float] = ACTIONS(5032), [sym_double] = ACTIONS(5032), [sym_real] = ACTIONS(5032), [sym_ifloat] = ACTIONS(5032), [sym_idouble] = ACTIONS(5032), [sym_ireal] = ACTIONS(5032), [sym_cfloat] = ACTIONS(5032), [sym_cdouble] = ACTIONS(5032), [sym_creal] = ACTIONS(5032), [sym_size_t] = ACTIONS(5032), [sym_ptrdiff_t] = ACTIONS(5032), [sym_string] = ACTIONS(5032), [sym_cstring] = ACTIONS(5032), [sym_dstring] = ACTIONS(5032), [sym_wstring] = ACTIONS(5032), [sym_noreturn] = ACTIONS(5032), [sym_true] = ACTIONS(5032), [sym_false] = ACTIONS(5032), [sym_null] = ACTIONS(5032), [sym_super] = ACTIONS(5032), [sym_this] = ACTIONS(5032), [sym_abstract] = ACTIONS(5032), [sym_alias] = ACTIONS(5032), [sym_align] = ACTIONS(5032), [sym_asm] = ACTIONS(5032), [sym_assert] = ACTIONS(5032), [sym_auto] = ACTIONS(5032), [sym_break] = ACTIONS(5032), [sym_case] = ACTIONS(5032), [sym_cast] = ACTIONS(5032), [sym_class] = ACTIONS(5032), [sym_const] = ACTIONS(5032), [sym_continue] = ACTIONS(5032), [sym_debug] = ACTIONS(5032), [sym_default] = ACTIONS(5032), [sym_delegate] = ACTIONS(5032), [sym_delete] = ACTIONS(5032), [sym_deprecated] = ACTIONS(5032), [sym_do] = ACTIONS(5032), [sym_else] = ACTIONS(5032), [sym_enum] = ACTIONS(5032), [sym_export] = ACTIONS(5032), [sym_extern] = ACTIONS(5032), [sym_final] = ACTIONS(5032), [sym_for] = ACTIONS(5032), [sym_foreach] = ACTIONS(5032), [sym_foreach_reverse] = ACTIONS(5032), [sym_function] = ACTIONS(5032), [sym_goto] = ACTIONS(5032), [sym_if] = ACTIONS(5032), [sym_immutable] = ACTIONS(5032), [sym_import] = ACTIONS(5032), [sym_in] = ACTIONS(5032), [sym_inout] = ACTIONS(5032), [sym_interface] = ACTIONS(5032), [sym_invariant] = ACTIONS(5032), [sym_is] = ACTIONS(5032), [sym_mixin] = ACTIONS(5032), [sym_new] = ACTIONS(5032), [sym_nothrow] = ACTIONS(5032), [sym_out] = ACTIONS(5032), [sym_override] = ACTIONS(5032), [sym_package] = ACTIONS(5032), [sym_pragma] = ACTIONS(5032), [sym_private] = ACTIONS(5032), [sym_protected] = ACTIONS(5032), [sym_public] = ACTIONS(5032), [sym_pure] = ACTIONS(5032), [sym_ref] = ACTIONS(5032), [sym_return] = ACTIONS(5032), [sym_scope] = ACTIONS(5032), [sym_shared] = ACTIONS(5032), [sym_static] = ACTIONS(5032), [sym_struct] = ACTIONS(5032), [sym_switch] = ACTIONS(5032), [sym_synchronized] = ACTIONS(5032), [sym_template] = ACTIONS(5032), [sym_throw] = ACTIONS(5032), [sym_try] = ACTIONS(5032), [sym_typeid] = ACTIONS(5032), [sym_typeof] = ACTIONS(5032), [sym_union] = ACTIONS(5032), [sym_unittest] = ACTIONS(5032), [sym_version] = ACTIONS(5032), [sym_while] = ACTIONS(5032), [sym_with] = ACTIONS(5032), [sym_gshared] = ACTIONS(5032), [sym_traits] = ACTIONS(5032), [sym_vector] = ACTIONS(5032), [sym_void] = ACTIONS(5032), [anon_sym_BQUOTE] = ACTIONS(5034), [anon_sym_r_DQUOTE] = ACTIONS(5034), [anon_sym_x_DQUOTE] = ACTIONS(5034), [anon_sym_DQUOTE] = ACTIONS(5034), [anon_sym_i_BQUOTE] = ACTIONS(5034), [anon_sym_i_DQUOTE] = ACTIONS(5034), [anon_sym_iq_LBRACE] = ACTIONS(5034), [aux_sym_char_literal_token1] = ACTIONS(5034), [anon_sym_SQUOTE] = ACTIONS(5032), [anon_sym___DATE__] = ACTIONS(5032), [anon_sym___FILE__] = ACTIONS(5032), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5032), [anon_sym___FUNCTION__] = ACTIONS(5032), [anon_sym___LINE__] = ACTIONS(5032), [anon_sym___MODULE__] = ACTIONS(5032), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5032), [anon_sym___TIME__] = ACTIONS(5032), [anon_sym___TIMESTAMP__] = ACTIONS(5032), [anon_sym___VENDOR__] = ACTIONS(5032), [anon_sym___VERSION__] = ACTIONS(5032), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5034), [sym_float_literal] = ACTIONS(5034), [sym__string] = ACTIONS(5034), }, [1578] = { [sym_identifier] = ACTIONS(4480), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4482), [anon_sym_RBRACE] = ACTIONS(4482), [anon_sym_LBRACE] = ACTIONS(4482), [anon_sym_DOT] = ACTIONS(4482), [anon_sym_AMP] = ACTIONS(4482), [anon_sym_DASH] = ACTIONS(4480), [anon_sym_DASH_DASH] = ACTIONS(4482), [anon_sym_PLUS] = ACTIONS(4480), [anon_sym_PLUS_PLUS] = ACTIONS(4482), [anon_sym_BANG] = ACTIONS(4482), [anon_sym_LPAREN] = ACTIONS(4482), [anon_sym_RPAREN] = ACTIONS(4482), [anon_sym_LBRACK] = ACTIONS(4482), [anon_sym_SEMI] = ACTIONS(4482), [anon_sym_DOLLAR] = ACTIONS(4482), [anon_sym_STAR] = ACTIONS(4482), [anon_sym_TILDE] = ACTIONS(4482), [anon_sym_AT] = ACTIONS(4482), [sym_bool] = ACTIONS(4480), [sym_byte] = ACTIONS(4480), [sym_ubyte] = ACTIONS(4480), [sym_char] = ACTIONS(4480), [sym_short] = ACTIONS(4480), [sym_ushort] = ACTIONS(4480), [sym_int] = ACTIONS(4480), [sym_uint] = ACTIONS(4480), [sym_long] = ACTIONS(4480), [sym_ulong] = ACTIONS(4480), [sym_cent] = ACTIONS(4480), [sym_ucent] = ACTIONS(4480), [sym_wchar] = ACTIONS(4480), [sym_dchar] = ACTIONS(4480), [sym_float] = ACTIONS(4480), [sym_double] = ACTIONS(4480), [sym_real] = ACTIONS(4480), [sym_ifloat] = ACTIONS(4480), [sym_idouble] = ACTIONS(4480), [sym_ireal] = ACTIONS(4480), [sym_cfloat] = ACTIONS(4480), [sym_cdouble] = ACTIONS(4480), [sym_creal] = ACTIONS(4480), [sym_size_t] = ACTIONS(4480), [sym_ptrdiff_t] = ACTIONS(4480), [sym_string] = ACTIONS(4480), [sym_cstring] = ACTIONS(4480), [sym_dstring] = ACTIONS(4480), [sym_wstring] = ACTIONS(4480), [sym_noreturn] = ACTIONS(4480), [sym_true] = ACTIONS(4480), [sym_false] = ACTIONS(4480), [sym_null] = ACTIONS(4480), [sym_super] = ACTIONS(4480), [sym_this] = ACTIONS(4480), [sym_abstract] = ACTIONS(4480), [sym_alias] = ACTIONS(4480), [sym_align] = ACTIONS(4480), [sym_asm] = ACTIONS(4480), [sym_assert] = ACTIONS(4480), [sym_auto] = ACTIONS(4480), [sym_break] = ACTIONS(4480), [sym_case] = ACTIONS(4480), [sym_cast] = ACTIONS(4480), [sym_class] = ACTIONS(4480), [sym_const] = ACTIONS(4480), [sym_continue] = ACTIONS(4480), [sym_debug] = ACTIONS(4480), [sym_default] = ACTIONS(4480), [sym_delegate] = ACTIONS(4480), [sym_delete] = ACTIONS(4480), [sym_deprecated] = ACTIONS(4480), [sym_do] = ACTIONS(4480), [sym_else] = ACTIONS(4480), [sym_enum] = ACTIONS(4480), [sym_export] = ACTIONS(4480), [sym_extern] = ACTIONS(4480), [sym_final] = ACTIONS(4480), [sym_for] = ACTIONS(4480), [sym_foreach] = ACTIONS(4480), [sym_foreach_reverse] = ACTIONS(4480), [sym_function] = ACTIONS(4480), [sym_goto] = ACTIONS(4480), [sym_if] = ACTIONS(4480), [sym_immutable] = ACTIONS(4480), [sym_import] = ACTIONS(4480), [sym_in] = ACTIONS(4480), [sym_inout] = ACTIONS(4480), [sym_interface] = ACTIONS(4480), [sym_invariant] = ACTIONS(4480), [sym_is] = ACTIONS(4480), [sym_mixin] = ACTIONS(4480), [sym_new] = ACTIONS(4480), [sym_nothrow] = ACTIONS(4480), [sym_out] = ACTIONS(4480), [sym_override] = ACTIONS(4480), [sym_package] = ACTIONS(4480), [sym_pragma] = ACTIONS(4480), [sym_private] = ACTIONS(4480), [sym_protected] = ACTIONS(4480), [sym_public] = ACTIONS(4480), [sym_pure] = ACTIONS(4480), [sym_ref] = ACTIONS(4480), [sym_return] = ACTIONS(4480), [sym_scope] = ACTIONS(4480), [sym_shared] = ACTIONS(4480), [sym_static] = ACTIONS(4480), [sym_struct] = ACTIONS(4480), [sym_switch] = ACTIONS(4480), [sym_synchronized] = ACTIONS(4480), [sym_template] = ACTIONS(4480), [sym_throw] = ACTIONS(4480), [sym_try] = ACTIONS(4480), [sym_typeid] = ACTIONS(4480), [sym_typeof] = ACTIONS(4480), [sym_union] = ACTIONS(4480), [sym_unittest] = ACTIONS(4480), [sym_version] = ACTIONS(4480), [sym_while] = ACTIONS(4480), [sym_with] = ACTIONS(4480), [sym_gshared] = ACTIONS(4480), [sym_traits] = ACTIONS(4480), [sym_vector] = ACTIONS(4480), [sym_void] = ACTIONS(4480), [anon_sym_BQUOTE] = ACTIONS(4482), [anon_sym_r_DQUOTE] = ACTIONS(4482), [anon_sym_x_DQUOTE] = ACTIONS(4482), [anon_sym_DQUOTE] = ACTIONS(4482), [anon_sym_i_BQUOTE] = ACTIONS(4482), [anon_sym_i_DQUOTE] = ACTIONS(4482), [anon_sym_iq_LBRACE] = ACTIONS(4482), [aux_sym_char_literal_token1] = ACTIONS(4482), [anon_sym_SQUOTE] = ACTIONS(4480), [anon_sym___DATE__] = ACTIONS(4480), [anon_sym___FILE__] = ACTIONS(4480), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4480), [anon_sym___FUNCTION__] = ACTIONS(4480), [anon_sym___LINE__] = ACTIONS(4480), [anon_sym___MODULE__] = ACTIONS(4480), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4480), [anon_sym___TIME__] = ACTIONS(4480), [anon_sym___TIMESTAMP__] = ACTIONS(4480), [anon_sym___VENDOR__] = ACTIONS(4480), [anon_sym___VERSION__] = ACTIONS(4480), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4482), [sym_float_literal] = ACTIONS(4482), [sym__string] = ACTIONS(4482), }, [1579] = { [sym_identifier] = ACTIONS(4602), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4604), [anon_sym_RBRACE] = ACTIONS(4604), [anon_sym_LBRACE] = ACTIONS(4604), [anon_sym_DOT] = ACTIONS(4604), [anon_sym_AMP] = ACTIONS(4604), [anon_sym_DASH] = ACTIONS(4602), [anon_sym_DASH_DASH] = ACTIONS(4604), [anon_sym_PLUS] = ACTIONS(4602), [anon_sym_PLUS_PLUS] = ACTIONS(4604), [anon_sym_BANG] = ACTIONS(4604), [anon_sym_LPAREN] = ACTIONS(4604), [anon_sym_RPAREN] = ACTIONS(4604), [anon_sym_LBRACK] = ACTIONS(4604), [anon_sym_SEMI] = ACTIONS(4604), [anon_sym_DOLLAR] = ACTIONS(4604), [anon_sym_STAR] = ACTIONS(4604), [anon_sym_TILDE] = ACTIONS(4604), [anon_sym_AT] = ACTIONS(4604), [sym_bool] = ACTIONS(4602), [sym_byte] = ACTIONS(4602), [sym_ubyte] = ACTIONS(4602), [sym_char] = ACTIONS(4602), [sym_short] = ACTIONS(4602), [sym_ushort] = ACTIONS(4602), [sym_int] = ACTIONS(4602), [sym_uint] = ACTIONS(4602), [sym_long] = ACTIONS(4602), [sym_ulong] = ACTIONS(4602), [sym_cent] = ACTIONS(4602), [sym_ucent] = ACTIONS(4602), [sym_wchar] = ACTIONS(4602), [sym_dchar] = ACTIONS(4602), [sym_float] = ACTIONS(4602), [sym_double] = ACTIONS(4602), [sym_real] = ACTIONS(4602), [sym_ifloat] = ACTIONS(4602), [sym_idouble] = ACTIONS(4602), [sym_ireal] = ACTIONS(4602), [sym_cfloat] = ACTIONS(4602), [sym_cdouble] = ACTIONS(4602), [sym_creal] = ACTIONS(4602), [sym_size_t] = ACTIONS(4602), [sym_ptrdiff_t] = ACTIONS(4602), [sym_string] = ACTIONS(4602), [sym_cstring] = ACTIONS(4602), [sym_dstring] = ACTIONS(4602), [sym_wstring] = ACTIONS(4602), [sym_noreturn] = ACTIONS(4602), [sym_true] = ACTIONS(4602), [sym_false] = ACTIONS(4602), [sym_null] = ACTIONS(4602), [sym_super] = ACTIONS(4602), [sym_this] = ACTIONS(4602), [sym_abstract] = ACTIONS(4602), [sym_alias] = ACTIONS(4602), [sym_align] = ACTIONS(4602), [sym_asm] = ACTIONS(4602), [sym_assert] = ACTIONS(4602), [sym_auto] = ACTIONS(4602), [sym_break] = ACTIONS(4602), [sym_case] = ACTIONS(4602), [sym_cast] = ACTIONS(4602), [sym_class] = ACTIONS(4602), [sym_const] = ACTIONS(4602), [sym_continue] = ACTIONS(4602), [sym_debug] = ACTIONS(4602), [sym_default] = ACTIONS(4602), [sym_delegate] = ACTIONS(4602), [sym_delete] = ACTIONS(4602), [sym_deprecated] = ACTIONS(4602), [sym_do] = ACTIONS(4602), [sym_else] = ACTIONS(4602), [sym_enum] = ACTIONS(4602), [sym_export] = ACTIONS(4602), [sym_extern] = ACTIONS(4602), [sym_final] = ACTIONS(4602), [sym_for] = ACTIONS(4602), [sym_foreach] = ACTIONS(4602), [sym_foreach_reverse] = ACTIONS(4602), [sym_function] = ACTIONS(4602), [sym_goto] = ACTIONS(4602), [sym_if] = ACTIONS(4602), [sym_immutable] = ACTIONS(4602), [sym_import] = ACTIONS(4602), [sym_in] = ACTIONS(4602), [sym_inout] = ACTIONS(4602), [sym_interface] = ACTIONS(4602), [sym_invariant] = ACTIONS(4602), [sym_is] = ACTIONS(4602), [sym_mixin] = ACTIONS(4602), [sym_new] = ACTIONS(4602), [sym_nothrow] = ACTIONS(4602), [sym_out] = ACTIONS(4602), [sym_override] = ACTIONS(4602), [sym_package] = ACTIONS(4602), [sym_pragma] = ACTIONS(4602), [sym_private] = ACTIONS(4602), [sym_protected] = ACTIONS(4602), [sym_public] = ACTIONS(4602), [sym_pure] = ACTIONS(4602), [sym_ref] = ACTIONS(4602), [sym_return] = ACTIONS(4602), [sym_scope] = ACTIONS(4602), [sym_shared] = ACTIONS(4602), [sym_static] = ACTIONS(4602), [sym_struct] = ACTIONS(4602), [sym_switch] = ACTIONS(4602), [sym_synchronized] = ACTIONS(4602), [sym_template] = ACTIONS(4602), [sym_throw] = ACTIONS(4602), [sym_try] = ACTIONS(4602), [sym_typeid] = ACTIONS(4602), [sym_typeof] = ACTIONS(4602), [sym_union] = ACTIONS(4602), [sym_unittest] = ACTIONS(4602), [sym_version] = ACTIONS(4602), [sym_while] = ACTIONS(4602), [sym_with] = ACTIONS(4602), [sym_gshared] = ACTIONS(4602), [sym_traits] = ACTIONS(4602), [sym_vector] = ACTIONS(4602), [sym_void] = ACTIONS(4602), [anon_sym_BQUOTE] = ACTIONS(4604), [anon_sym_r_DQUOTE] = ACTIONS(4604), [anon_sym_x_DQUOTE] = ACTIONS(4604), [anon_sym_DQUOTE] = ACTIONS(4604), [anon_sym_i_BQUOTE] = ACTIONS(4604), [anon_sym_i_DQUOTE] = ACTIONS(4604), [anon_sym_iq_LBRACE] = ACTIONS(4604), [aux_sym_char_literal_token1] = ACTIONS(4604), [anon_sym_SQUOTE] = ACTIONS(4602), [anon_sym___DATE__] = ACTIONS(4602), [anon_sym___FILE__] = ACTIONS(4602), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4602), [anon_sym___FUNCTION__] = ACTIONS(4602), [anon_sym___LINE__] = ACTIONS(4602), [anon_sym___MODULE__] = ACTIONS(4602), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4602), [anon_sym___TIME__] = ACTIONS(4602), [anon_sym___TIMESTAMP__] = ACTIONS(4602), [anon_sym___VENDOR__] = ACTIONS(4602), [anon_sym___VERSION__] = ACTIONS(4602), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4604), [sym_float_literal] = ACTIONS(4604), [sym__string] = ACTIONS(4604), }, [1580] = { [sym_identifier] = ACTIONS(4724), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4726), [anon_sym_RBRACE] = ACTIONS(4726), [anon_sym_LBRACE] = ACTIONS(4726), [anon_sym_DOT] = ACTIONS(4726), [anon_sym_AMP] = ACTIONS(4726), [anon_sym_DASH] = ACTIONS(4724), [anon_sym_DASH_DASH] = ACTIONS(4726), [anon_sym_PLUS] = ACTIONS(4724), [anon_sym_PLUS_PLUS] = ACTIONS(4726), [anon_sym_BANG] = ACTIONS(4726), [anon_sym_LPAREN] = ACTIONS(4726), [anon_sym_RPAREN] = ACTIONS(4726), [anon_sym_LBRACK] = ACTIONS(4726), [anon_sym_SEMI] = ACTIONS(4726), [anon_sym_DOLLAR] = ACTIONS(4726), [anon_sym_STAR] = ACTIONS(4726), [anon_sym_TILDE] = ACTIONS(4726), [anon_sym_AT] = ACTIONS(4726), [sym_bool] = ACTIONS(4724), [sym_byte] = ACTIONS(4724), [sym_ubyte] = ACTIONS(4724), [sym_char] = ACTIONS(4724), [sym_short] = ACTIONS(4724), [sym_ushort] = ACTIONS(4724), [sym_int] = ACTIONS(4724), [sym_uint] = ACTIONS(4724), [sym_long] = ACTIONS(4724), [sym_ulong] = ACTIONS(4724), [sym_cent] = ACTIONS(4724), [sym_ucent] = ACTIONS(4724), [sym_wchar] = ACTIONS(4724), [sym_dchar] = ACTIONS(4724), [sym_float] = ACTIONS(4724), [sym_double] = ACTIONS(4724), [sym_real] = ACTIONS(4724), [sym_ifloat] = ACTIONS(4724), [sym_idouble] = ACTIONS(4724), [sym_ireal] = ACTIONS(4724), [sym_cfloat] = ACTIONS(4724), [sym_cdouble] = ACTIONS(4724), [sym_creal] = ACTIONS(4724), [sym_size_t] = ACTIONS(4724), [sym_ptrdiff_t] = ACTIONS(4724), [sym_string] = ACTIONS(4724), [sym_cstring] = ACTIONS(4724), [sym_dstring] = ACTIONS(4724), [sym_wstring] = ACTIONS(4724), [sym_noreturn] = ACTIONS(4724), [sym_true] = ACTIONS(4724), [sym_false] = ACTIONS(4724), [sym_null] = ACTIONS(4724), [sym_super] = ACTIONS(4724), [sym_this] = ACTIONS(4724), [sym_abstract] = ACTIONS(4724), [sym_alias] = ACTIONS(4724), [sym_align] = ACTIONS(4724), [sym_asm] = ACTIONS(4724), [sym_assert] = ACTIONS(4724), [sym_auto] = ACTIONS(4724), [sym_break] = ACTIONS(4724), [sym_case] = ACTIONS(4724), [sym_cast] = ACTIONS(4724), [sym_class] = ACTIONS(4724), [sym_const] = ACTIONS(4724), [sym_continue] = ACTIONS(4724), [sym_debug] = ACTIONS(4724), [sym_default] = ACTIONS(4724), [sym_delegate] = ACTIONS(4724), [sym_delete] = ACTIONS(4724), [sym_deprecated] = ACTIONS(4724), [sym_do] = ACTIONS(4724), [sym_else] = ACTIONS(4724), [sym_enum] = ACTIONS(4724), [sym_export] = ACTIONS(4724), [sym_extern] = ACTIONS(4724), [sym_final] = ACTIONS(4724), [sym_for] = ACTIONS(4724), [sym_foreach] = ACTIONS(4724), [sym_foreach_reverse] = ACTIONS(4724), [sym_function] = ACTIONS(4724), [sym_goto] = ACTIONS(4724), [sym_if] = ACTIONS(4724), [sym_immutable] = ACTIONS(4724), [sym_import] = ACTIONS(4724), [sym_in] = ACTIONS(4724), [sym_inout] = ACTIONS(4724), [sym_interface] = ACTIONS(4724), [sym_invariant] = ACTIONS(4724), [sym_is] = ACTIONS(4724), [sym_mixin] = ACTIONS(4724), [sym_new] = ACTIONS(4724), [sym_nothrow] = ACTIONS(4724), [sym_out] = ACTIONS(4724), [sym_override] = ACTIONS(4724), [sym_package] = ACTIONS(4724), [sym_pragma] = ACTIONS(4724), [sym_private] = ACTIONS(4724), [sym_protected] = ACTIONS(4724), [sym_public] = ACTIONS(4724), [sym_pure] = ACTIONS(4724), [sym_ref] = ACTIONS(4724), [sym_return] = ACTIONS(4724), [sym_scope] = ACTIONS(4724), [sym_shared] = ACTIONS(4724), [sym_static] = ACTIONS(4724), [sym_struct] = ACTIONS(4724), [sym_switch] = ACTIONS(4724), [sym_synchronized] = ACTIONS(4724), [sym_template] = ACTIONS(4724), [sym_throw] = ACTIONS(4724), [sym_try] = ACTIONS(4724), [sym_typeid] = ACTIONS(4724), [sym_typeof] = ACTIONS(4724), [sym_union] = ACTIONS(4724), [sym_unittest] = ACTIONS(4724), [sym_version] = ACTIONS(4724), [sym_while] = ACTIONS(4724), [sym_with] = ACTIONS(4724), [sym_gshared] = ACTIONS(4724), [sym_traits] = ACTIONS(4724), [sym_vector] = ACTIONS(4724), [sym_void] = ACTIONS(4724), [anon_sym_BQUOTE] = ACTIONS(4726), [anon_sym_r_DQUOTE] = ACTIONS(4726), [anon_sym_x_DQUOTE] = ACTIONS(4726), [anon_sym_DQUOTE] = ACTIONS(4726), [anon_sym_i_BQUOTE] = ACTIONS(4726), [anon_sym_i_DQUOTE] = ACTIONS(4726), [anon_sym_iq_LBRACE] = ACTIONS(4726), [aux_sym_char_literal_token1] = ACTIONS(4726), [anon_sym_SQUOTE] = ACTIONS(4724), [anon_sym___DATE__] = ACTIONS(4724), [anon_sym___FILE__] = ACTIONS(4724), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4724), [anon_sym___FUNCTION__] = ACTIONS(4724), [anon_sym___LINE__] = ACTIONS(4724), [anon_sym___MODULE__] = ACTIONS(4724), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4724), [anon_sym___TIME__] = ACTIONS(4724), [anon_sym___TIMESTAMP__] = ACTIONS(4724), [anon_sym___VENDOR__] = ACTIONS(4724), [anon_sym___VERSION__] = ACTIONS(4724), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4726), [sym_float_literal] = ACTIONS(4726), [sym__string] = ACTIONS(4726), }, [1581] = { [sym_identifier] = ACTIONS(5020), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5022), [anon_sym_RBRACE] = ACTIONS(5022), [anon_sym_LBRACE] = ACTIONS(5022), [anon_sym_DOT] = ACTIONS(5022), [anon_sym_AMP] = ACTIONS(5022), [anon_sym_DASH] = ACTIONS(5020), [anon_sym_DASH_DASH] = ACTIONS(5022), [anon_sym_PLUS] = ACTIONS(5020), [anon_sym_PLUS_PLUS] = ACTIONS(5022), [anon_sym_BANG] = ACTIONS(5022), [anon_sym_LPAREN] = ACTIONS(5022), [anon_sym_RPAREN] = ACTIONS(5022), [anon_sym_LBRACK] = ACTIONS(5022), [anon_sym_SEMI] = ACTIONS(5022), [anon_sym_DOLLAR] = ACTIONS(5022), [anon_sym_STAR] = ACTIONS(5022), [anon_sym_TILDE] = ACTIONS(5022), [anon_sym_AT] = ACTIONS(5022), [sym_bool] = ACTIONS(5020), [sym_byte] = ACTIONS(5020), [sym_ubyte] = ACTIONS(5020), [sym_char] = ACTIONS(5020), [sym_short] = ACTIONS(5020), [sym_ushort] = ACTIONS(5020), [sym_int] = ACTIONS(5020), [sym_uint] = ACTIONS(5020), [sym_long] = ACTIONS(5020), [sym_ulong] = ACTIONS(5020), [sym_cent] = ACTIONS(5020), [sym_ucent] = ACTIONS(5020), [sym_wchar] = ACTIONS(5020), [sym_dchar] = ACTIONS(5020), [sym_float] = ACTIONS(5020), [sym_double] = ACTIONS(5020), [sym_real] = ACTIONS(5020), [sym_ifloat] = ACTIONS(5020), [sym_idouble] = ACTIONS(5020), [sym_ireal] = ACTIONS(5020), [sym_cfloat] = ACTIONS(5020), [sym_cdouble] = ACTIONS(5020), [sym_creal] = ACTIONS(5020), [sym_size_t] = ACTIONS(5020), [sym_ptrdiff_t] = ACTIONS(5020), [sym_string] = ACTIONS(5020), [sym_cstring] = ACTIONS(5020), [sym_dstring] = ACTIONS(5020), [sym_wstring] = ACTIONS(5020), [sym_noreturn] = ACTIONS(5020), [sym_true] = ACTIONS(5020), [sym_false] = ACTIONS(5020), [sym_null] = ACTIONS(5020), [sym_super] = ACTIONS(5020), [sym_this] = ACTIONS(5020), [sym_abstract] = ACTIONS(5020), [sym_alias] = ACTIONS(5020), [sym_align] = ACTIONS(5020), [sym_asm] = ACTIONS(5020), [sym_assert] = ACTIONS(5020), [sym_auto] = ACTIONS(5020), [sym_break] = ACTIONS(5020), [sym_case] = ACTIONS(5020), [sym_cast] = ACTIONS(5020), [sym_class] = ACTIONS(5020), [sym_const] = ACTIONS(5020), [sym_continue] = ACTIONS(5020), [sym_debug] = ACTIONS(5020), [sym_default] = ACTIONS(5020), [sym_delegate] = ACTIONS(5020), [sym_delete] = ACTIONS(5020), [sym_deprecated] = ACTIONS(5020), [sym_do] = ACTIONS(5020), [sym_else] = ACTIONS(5020), [sym_enum] = ACTIONS(5020), [sym_export] = ACTIONS(5020), [sym_extern] = ACTIONS(5020), [sym_final] = ACTIONS(5020), [sym_for] = ACTIONS(5020), [sym_foreach] = ACTIONS(5020), [sym_foreach_reverse] = ACTIONS(5020), [sym_function] = ACTIONS(5020), [sym_goto] = ACTIONS(5020), [sym_if] = ACTIONS(5020), [sym_immutable] = ACTIONS(5020), [sym_import] = ACTIONS(5020), [sym_in] = ACTIONS(5020), [sym_inout] = ACTIONS(5020), [sym_interface] = ACTIONS(5020), [sym_invariant] = ACTIONS(5020), [sym_is] = ACTIONS(5020), [sym_mixin] = ACTIONS(5020), [sym_new] = ACTIONS(5020), [sym_nothrow] = ACTIONS(5020), [sym_out] = ACTIONS(5020), [sym_override] = ACTIONS(5020), [sym_package] = ACTIONS(5020), [sym_pragma] = ACTIONS(5020), [sym_private] = ACTIONS(5020), [sym_protected] = ACTIONS(5020), [sym_public] = ACTIONS(5020), [sym_pure] = ACTIONS(5020), [sym_ref] = ACTIONS(5020), [sym_return] = ACTIONS(5020), [sym_scope] = ACTIONS(5020), [sym_shared] = ACTIONS(5020), [sym_static] = ACTIONS(5020), [sym_struct] = ACTIONS(5020), [sym_switch] = ACTIONS(5020), [sym_synchronized] = ACTIONS(5020), [sym_template] = ACTIONS(5020), [sym_throw] = ACTIONS(5020), [sym_try] = ACTIONS(5020), [sym_typeid] = ACTIONS(5020), [sym_typeof] = ACTIONS(5020), [sym_union] = ACTIONS(5020), [sym_unittest] = ACTIONS(5020), [sym_version] = ACTIONS(5020), [sym_while] = ACTIONS(5020), [sym_with] = ACTIONS(5020), [sym_gshared] = ACTIONS(5020), [sym_traits] = ACTIONS(5020), [sym_vector] = ACTIONS(5020), [sym_void] = ACTIONS(5020), [anon_sym_BQUOTE] = ACTIONS(5022), [anon_sym_r_DQUOTE] = ACTIONS(5022), [anon_sym_x_DQUOTE] = ACTIONS(5022), [anon_sym_DQUOTE] = ACTIONS(5022), [anon_sym_i_BQUOTE] = ACTIONS(5022), [anon_sym_i_DQUOTE] = ACTIONS(5022), [anon_sym_iq_LBRACE] = ACTIONS(5022), [aux_sym_char_literal_token1] = ACTIONS(5022), [anon_sym_SQUOTE] = ACTIONS(5020), [anon_sym___DATE__] = ACTIONS(5020), [anon_sym___FILE__] = ACTIONS(5020), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5020), [anon_sym___FUNCTION__] = ACTIONS(5020), [anon_sym___LINE__] = ACTIONS(5020), [anon_sym___MODULE__] = ACTIONS(5020), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5020), [anon_sym___TIME__] = ACTIONS(5020), [anon_sym___TIMESTAMP__] = ACTIONS(5020), [anon_sym___VENDOR__] = ACTIONS(5020), [anon_sym___VERSION__] = ACTIONS(5020), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5022), [sym_float_literal] = ACTIONS(5022), [sym__string] = ACTIONS(5022), }, [1582] = { [sym_identifier] = ACTIONS(5016), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5018), [anon_sym_RBRACE] = ACTIONS(5018), [anon_sym_LBRACE] = ACTIONS(5018), [anon_sym_DOT] = ACTIONS(5018), [anon_sym_AMP] = ACTIONS(5018), [anon_sym_DASH] = ACTIONS(5016), [anon_sym_DASH_DASH] = ACTIONS(5018), [anon_sym_PLUS] = ACTIONS(5016), [anon_sym_PLUS_PLUS] = ACTIONS(5018), [anon_sym_BANG] = ACTIONS(5018), [anon_sym_LPAREN] = ACTIONS(5018), [anon_sym_RPAREN] = ACTIONS(5018), [anon_sym_LBRACK] = ACTIONS(5018), [anon_sym_SEMI] = ACTIONS(5018), [anon_sym_DOLLAR] = ACTIONS(5018), [anon_sym_STAR] = ACTIONS(5018), [anon_sym_TILDE] = ACTIONS(5018), [anon_sym_AT] = ACTIONS(5018), [sym_bool] = ACTIONS(5016), [sym_byte] = ACTIONS(5016), [sym_ubyte] = ACTIONS(5016), [sym_char] = ACTIONS(5016), [sym_short] = ACTIONS(5016), [sym_ushort] = ACTIONS(5016), [sym_int] = ACTIONS(5016), [sym_uint] = ACTIONS(5016), [sym_long] = ACTIONS(5016), [sym_ulong] = ACTIONS(5016), [sym_cent] = ACTIONS(5016), [sym_ucent] = ACTIONS(5016), [sym_wchar] = ACTIONS(5016), [sym_dchar] = ACTIONS(5016), [sym_float] = ACTIONS(5016), [sym_double] = ACTIONS(5016), [sym_real] = ACTIONS(5016), [sym_ifloat] = ACTIONS(5016), [sym_idouble] = ACTIONS(5016), [sym_ireal] = ACTIONS(5016), [sym_cfloat] = ACTIONS(5016), [sym_cdouble] = ACTIONS(5016), [sym_creal] = ACTIONS(5016), [sym_size_t] = ACTIONS(5016), [sym_ptrdiff_t] = ACTIONS(5016), [sym_string] = ACTIONS(5016), [sym_cstring] = ACTIONS(5016), [sym_dstring] = ACTIONS(5016), [sym_wstring] = ACTIONS(5016), [sym_noreturn] = ACTIONS(5016), [sym_true] = ACTIONS(5016), [sym_false] = ACTIONS(5016), [sym_null] = ACTIONS(5016), [sym_super] = ACTIONS(5016), [sym_this] = ACTIONS(5016), [sym_abstract] = ACTIONS(5016), [sym_alias] = ACTIONS(5016), [sym_align] = ACTIONS(5016), [sym_asm] = ACTIONS(5016), [sym_assert] = ACTIONS(5016), [sym_auto] = ACTIONS(5016), [sym_break] = ACTIONS(5016), [sym_case] = ACTIONS(5016), [sym_cast] = ACTIONS(5016), [sym_class] = ACTIONS(5016), [sym_const] = ACTIONS(5016), [sym_continue] = ACTIONS(5016), [sym_debug] = ACTIONS(5016), [sym_default] = ACTIONS(5016), [sym_delegate] = ACTIONS(5016), [sym_delete] = ACTIONS(5016), [sym_deprecated] = ACTIONS(5016), [sym_do] = ACTIONS(5016), [sym_else] = ACTIONS(5016), [sym_enum] = ACTIONS(5016), [sym_export] = ACTIONS(5016), [sym_extern] = ACTIONS(5016), [sym_final] = ACTIONS(5016), [sym_for] = ACTIONS(5016), [sym_foreach] = ACTIONS(5016), [sym_foreach_reverse] = ACTIONS(5016), [sym_function] = ACTIONS(5016), [sym_goto] = ACTIONS(5016), [sym_if] = ACTIONS(5016), [sym_immutable] = ACTIONS(5016), [sym_import] = ACTIONS(5016), [sym_in] = ACTIONS(5016), [sym_inout] = ACTIONS(5016), [sym_interface] = ACTIONS(5016), [sym_invariant] = ACTIONS(5016), [sym_is] = ACTIONS(5016), [sym_mixin] = ACTIONS(5016), [sym_new] = ACTIONS(5016), [sym_nothrow] = ACTIONS(5016), [sym_out] = ACTIONS(5016), [sym_override] = ACTIONS(5016), [sym_package] = ACTIONS(5016), [sym_pragma] = ACTIONS(5016), [sym_private] = ACTIONS(5016), [sym_protected] = ACTIONS(5016), [sym_public] = ACTIONS(5016), [sym_pure] = ACTIONS(5016), [sym_ref] = ACTIONS(5016), [sym_return] = ACTIONS(5016), [sym_scope] = ACTIONS(5016), [sym_shared] = ACTIONS(5016), [sym_static] = ACTIONS(5016), [sym_struct] = ACTIONS(5016), [sym_switch] = ACTIONS(5016), [sym_synchronized] = ACTIONS(5016), [sym_template] = ACTIONS(5016), [sym_throw] = ACTIONS(5016), [sym_try] = ACTIONS(5016), [sym_typeid] = ACTIONS(5016), [sym_typeof] = ACTIONS(5016), [sym_union] = ACTIONS(5016), [sym_unittest] = ACTIONS(5016), [sym_version] = ACTIONS(5016), [sym_while] = ACTIONS(5016), [sym_with] = ACTIONS(5016), [sym_gshared] = ACTIONS(5016), [sym_traits] = ACTIONS(5016), [sym_vector] = ACTIONS(5016), [sym_void] = ACTIONS(5016), [anon_sym_BQUOTE] = ACTIONS(5018), [anon_sym_r_DQUOTE] = ACTIONS(5018), [anon_sym_x_DQUOTE] = ACTIONS(5018), [anon_sym_DQUOTE] = ACTIONS(5018), [anon_sym_i_BQUOTE] = ACTIONS(5018), [anon_sym_i_DQUOTE] = ACTIONS(5018), [anon_sym_iq_LBRACE] = ACTIONS(5018), [aux_sym_char_literal_token1] = ACTIONS(5018), [anon_sym_SQUOTE] = ACTIONS(5016), [anon_sym___DATE__] = ACTIONS(5016), [anon_sym___FILE__] = ACTIONS(5016), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5016), [anon_sym___FUNCTION__] = ACTIONS(5016), [anon_sym___LINE__] = ACTIONS(5016), [anon_sym___MODULE__] = ACTIONS(5016), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5016), [anon_sym___TIME__] = ACTIONS(5016), [anon_sym___TIMESTAMP__] = ACTIONS(5016), [anon_sym___VENDOR__] = ACTIONS(5016), [anon_sym___VERSION__] = ACTIONS(5016), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5018), [sym_float_literal] = ACTIONS(5018), [sym__string] = ACTIONS(5018), }, [1583] = { [sym_identifier] = ACTIONS(4806), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4808), [anon_sym_RBRACE] = ACTIONS(4808), [anon_sym_LBRACE] = ACTIONS(4808), [anon_sym_DOT] = ACTIONS(4808), [anon_sym_AMP] = ACTIONS(4808), [anon_sym_DASH] = ACTIONS(4806), [anon_sym_DASH_DASH] = ACTIONS(4808), [anon_sym_PLUS] = ACTIONS(4806), [anon_sym_PLUS_PLUS] = ACTIONS(4808), [anon_sym_BANG] = ACTIONS(4808), [anon_sym_LPAREN] = ACTIONS(4808), [anon_sym_RPAREN] = ACTIONS(4808), [anon_sym_LBRACK] = ACTIONS(4808), [anon_sym_SEMI] = ACTIONS(4808), [anon_sym_DOLLAR] = ACTIONS(4808), [anon_sym_STAR] = ACTIONS(4808), [anon_sym_TILDE] = ACTIONS(4808), [anon_sym_AT] = ACTIONS(4808), [sym_bool] = ACTIONS(4806), [sym_byte] = ACTIONS(4806), [sym_ubyte] = ACTIONS(4806), [sym_char] = ACTIONS(4806), [sym_short] = ACTIONS(4806), [sym_ushort] = ACTIONS(4806), [sym_int] = ACTIONS(4806), [sym_uint] = ACTIONS(4806), [sym_long] = ACTIONS(4806), [sym_ulong] = ACTIONS(4806), [sym_cent] = ACTIONS(4806), [sym_ucent] = ACTIONS(4806), [sym_wchar] = ACTIONS(4806), [sym_dchar] = ACTIONS(4806), [sym_float] = ACTIONS(4806), [sym_double] = ACTIONS(4806), [sym_real] = ACTIONS(4806), [sym_ifloat] = ACTIONS(4806), [sym_idouble] = ACTIONS(4806), [sym_ireal] = ACTIONS(4806), [sym_cfloat] = ACTIONS(4806), [sym_cdouble] = ACTIONS(4806), [sym_creal] = ACTIONS(4806), [sym_size_t] = ACTIONS(4806), [sym_ptrdiff_t] = ACTIONS(4806), [sym_string] = ACTIONS(4806), [sym_cstring] = ACTIONS(4806), [sym_dstring] = ACTIONS(4806), [sym_wstring] = ACTIONS(4806), [sym_noreturn] = ACTIONS(4806), [sym_true] = ACTIONS(4806), [sym_false] = ACTIONS(4806), [sym_null] = ACTIONS(4806), [sym_super] = ACTIONS(4806), [sym_this] = ACTIONS(4806), [sym_abstract] = ACTIONS(4806), [sym_alias] = ACTIONS(4806), [sym_align] = ACTIONS(4806), [sym_asm] = ACTIONS(4806), [sym_assert] = ACTIONS(4806), [sym_auto] = ACTIONS(4806), [sym_break] = ACTIONS(4806), [sym_case] = ACTIONS(4806), [sym_cast] = ACTIONS(4806), [sym_class] = ACTIONS(4806), [sym_const] = ACTIONS(4806), [sym_continue] = ACTIONS(4806), [sym_debug] = ACTIONS(4806), [sym_default] = ACTIONS(4806), [sym_delegate] = ACTIONS(4806), [sym_delete] = ACTIONS(4806), [sym_deprecated] = ACTIONS(4806), [sym_do] = ACTIONS(4806), [sym_else] = ACTIONS(4806), [sym_enum] = ACTIONS(4806), [sym_export] = ACTIONS(4806), [sym_extern] = ACTIONS(4806), [sym_final] = ACTIONS(4806), [sym_for] = ACTIONS(4806), [sym_foreach] = ACTIONS(4806), [sym_foreach_reverse] = ACTIONS(4806), [sym_function] = ACTIONS(4806), [sym_goto] = ACTIONS(4806), [sym_if] = ACTIONS(4806), [sym_immutable] = ACTIONS(4806), [sym_import] = ACTIONS(4806), [sym_in] = ACTIONS(4806), [sym_inout] = ACTIONS(4806), [sym_interface] = ACTIONS(4806), [sym_invariant] = ACTIONS(4806), [sym_is] = ACTIONS(4806), [sym_mixin] = ACTIONS(4806), [sym_new] = ACTIONS(4806), [sym_nothrow] = ACTIONS(4806), [sym_out] = ACTIONS(4806), [sym_override] = ACTIONS(4806), [sym_package] = ACTIONS(4806), [sym_pragma] = ACTIONS(4806), [sym_private] = ACTIONS(4806), [sym_protected] = ACTIONS(4806), [sym_public] = ACTIONS(4806), [sym_pure] = ACTIONS(4806), [sym_ref] = ACTIONS(4806), [sym_return] = ACTIONS(4806), [sym_scope] = ACTIONS(4806), [sym_shared] = ACTIONS(4806), [sym_static] = ACTIONS(4806), [sym_struct] = ACTIONS(4806), [sym_switch] = ACTIONS(4806), [sym_synchronized] = ACTIONS(4806), [sym_template] = ACTIONS(4806), [sym_throw] = ACTIONS(4806), [sym_try] = ACTIONS(4806), [sym_typeid] = ACTIONS(4806), [sym_typeof] = ACTIONS(4806), [sym_union] = ACTIONS(4806), [sym_unittest] = ACTIONS(4806), [sym_version] = ACTIONS(4806), [sym_while] = ACTIONS(4806), [sym_with] = ACTIONS(4806), [sym_gshared] = ACTIONS(4806), [sym_traits] = ACTIONS(4806), [sym_vector] = ACTIONS(4806), [sym_void] = ACTIONS(4806), [anon_sym_BQUOTE] = ACTIONS(4808), [anon_sym_r_DQUOTE] = ACTIONS(4808), [anon_sym_x_DQUOTE] = ACTIONS(4808), [anon_sym_DQUOTE] = ACTIONS(4808), [anon_sym_i_BQUOTE] = ACTIONS(4808), [anon_sym_i_DQUOTE] = ACTIONS(4808), [anon_sym_iq_LBRACE] = ACTIONS(4808), [aux_sym_char_literal_token1] = ACTIONS(4808), [anon_sym_SQUOTE] = ACTIONS(4806), [anon_sym___DATE__] = ACTIONS(4806), [anon_sym___FILE__] = ACTIONS(4806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4806), [anon_sym___FUNCTION__] = ACTIONS(4806), [anon_sym___LINE__] = ACTIONS(4806), [anon_sym___MODULE__] = ACTIONS(4806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4806), [anon_sym___TIME__] = ACTIONS(4806), [anon_sym___TIMESTAMP__] = ACTIONS(4806), [anon_sym___VENDOR__] = ACTIONS(4806), [anon_sym___VERSION__] = ACTIONS(4806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4808), [sym_float_literal] = ACTIONS(4808), [sym__string] = ACTIONS(4808), }, [1584] = { [sym_identifier] = ACTIONS(4802), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4804), [anon_sym_RBRACE] = ACTIONS(4804), [anon_sym_LBRACE] = ACTIONS(4804), [anon_sym_DOT] = ACTIONS(4804), [anon_sym_AMP] = ACTIONS(4804), [anon_sym_DASH] = ACTIONS(4802), [anon_sym_DASH_DASH] = ACTIONS(4804), [anon_sym_PLUS] = ACTIONS(4802), [anon_sym_PLUS_PLUS] = ACTIONS(4804), [anon_sym_BANG] = ACTIONS(4804), [anon_sym_LPAREN] = ACTIONS(4804), [anon_sym_RPAREN] = ACTIONS(4804), [anon_sym_LBRACK] = ACTIONS(4804), [anon_sym_SEMI] = ACTIONS(4804), [anon_sym_DOLLAR] = ACTIONS(4804), [anon_sym_STAR] = ACTIONS(4804), [anon_sym_TILDE] = ACTIONS(4804), [anon_sym_AT] = ACTIONS(4804), [sym_bool] = ACTIONS(4802), [sym_byte] = ACTIONS(4802), [sym_ubyte] = ACTIONS(4802), [sym_char] = ACTIONS(4802), [sym_short] = ACTIONS(4802), [sym_ushort] = ACTIONS(4802), [sym_int] = ACTIONS(4802), [sym_uint] = ACTIONS(4802), [sym_long] = ACTIONS(4802), [sym_ulong] = ACTIONS(4802), [sym_cent] = ACTIONS(4802), [sym_ucent] = ACTIONS(4802), [sym_wchar] = ACTIONS(4802), [sym_dchar] = ACTIONS(4802), [sym_float] = ACTIONS(4802), [sym_double] = ACTIONS(4802), [sym_real] = ACTIONS(4802), [sym_ifloat] = ACTIONS(4802), [sym_idouble] = ACTIONS(4802), [sym_ireal] = ACTIONS(4802), [sym_cfloat] = ACTIONS(4802), [sym_cdouble] = ACTIONS(4802), [sym_creal] = ACTIONS(4802), [sym_size_t] = ACTIONS(4802), [sym_ptrdiff_t] = ACTIONS(4802), [sym_string] = ACTIONS(4802), [sym_cstring] = ACTIONS(4802), [sym_dstring] = ACTIONS(4802), [sym_wstring] = ACTIONS(4802), [sym_noreturn] = ACTIONS(4802), [sym_true] = ACTIONS(4802), [sym_false] = ACTIONS(4802), [sym_null] = ACTIONS(4802), [sym_super] = ACTIONS(4802), [sym_this] = ACTIONS(4802), [sym_abstract] = ACTIONS(4802), [sym_alias] = ACTIONS(4802), [sym_align] = ACTIONS(4802), [sym_asm] = ACTIONS(4802), [sym_assert] = ACTIONS(4802), [sym_auto] = ACTIONS(4802), [sym_break] = ACTIONS(4802), [sym_case] = ACTIONS(4802), [sym_cast] = ACTIONS(4802), [sym_class] = ACTIONS(4802), [sym_const] = ACTIONS(4802), [sym_continue] = ACTIONS(4802), [sym_debug] = ACTIONS(4802), [sym_default] = ACTIONS(4802), [sym_delegate] = ACTIONS(4802), [sym_delete] = ACTIONS(4802), [sym_deprecated] = ACTIONS(4802), [sym_do] = ACTIONS(4802), [sym_else] = ACTIONS(4802), [sym_enum] = ACTIONS(4802), [sym_export] = ACTIONS(4802), [sym_extern] = ACTIONS(4802), [sym_final] = ACTIONS(4802), [sym_for] = ACTIONS(4802), [sym_foreach] = ACTIONS(4802), [sym_foreach_reverse] = ACTIONS(4802), [sym_function] = ACTIONS(4802), [sym_goto] = ACTIONS(4802), [sym_if] = ACTIONS(4802), [sym_immutable] = ACTIONS(4802), [sym_import] = ACTIONS(4802), [sym_in] = ACTIONS(4802), [sym_inout] = ACTIONS(4802), [sym_interface] = ACTIONS(4802), [sym_invariant] = ACTIONS(4802), [sym_is] = ACTIONS(4802), [sym_mixin] = ACTIONS(4802), [sym_new] = ACTIONS(4802), [sym_nothrow] = ACTIONS(4802), [sym_out] = ACTIONS(4802), [sym_override] = ACTIONS(4802), [sym_package] = ACTIONS(4802), [sym_pragma] = ACTIONS(4802), [sym_private] = ACTIONS(4802), [sym_protected] = ACTIONS(4802), [sym_public] = ACTIONS(4802), [sym_pure] = ACTIONS(4802), [sym_ref] = ACTIONS(4802), [sym_return] = ACTIONS(4802), [sym_scope] = ACTIONS(4802), [sym_shared] = ACTIONS(4802), [sym_static] = ACTIONS(4802), [sym_struct] = ACTIONS(4802), [sym_switch] = ACTIONS(4802), [sym_synchronized] = ACTIONS(4802), [sym_template] = ACTIONS(4802), [sym_throw] = ACTIONS(4802), [sym_try] = ACTIONS(4802), [sym_typeid] = ACTIONS(4802), [sym_typeof] = ACTIONS(4802), [sym_union] = ACTIONS(4802), [sym_unittest] = ACTIONS(4802), [sym_version] = ACTIONS(4802), [sym_while] = ACTIONS(4802), [sym_with] = ACTIONS(4802), [sym_gshared] = ACTIONS(4802), [sym_traits] = ACTIONS(4802), [sym_vector] = ACTIONS(4802), [sym_void] = ACTIONS(4802), [anon_sym_BQUOTE] = ACTIONS(4804), [anon_sym_r_DQUOTE] = ACTIONS(4804), [anon_sym_x_DQUOTE] = ACTIONS(4804), [anon_sym_DQUOTE] = ACTIONS(4804), [anon_sym_i_BQUOTE] = ACTIONS(4804), [anon_sym_i_DQUOTE] = ACTIONS(4804), [anon_sym_iq_LBRACE] = ACTIONS(4804), [aux_sym_char_literal_token1] = ACTIONS(4804), [anon_sym_SQUOTE] = ACTIONS(4802), [anon_sym___DATE__] = ACTIONS(4802), [anon_sym___FILE__] = ACTIONS(4802), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4802), [anon_sym___FUNCTION__] = ACTIONS(4802), [anon_sym___LINE__] = ACTIONS(4802), [anon_sym___MODULE__] = ACTIONS(4802), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4802), [anon_sym___TIME__] = ACTIONS(4802), [anon_sym___TIMESTAMP__] = ACTIONS(4802), [anon_sym___VENDOR__] = ACTIONS(4802), [anon_sym___VERSION__] = ACTIONS(4802), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4804), [sym_float_literal] = ACTIONS(4804), [sym__string] = ACTIONS(4804), }, [1585] = { [sym_identifier] = ACTIONS(4828), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4830), [anon_sym_RBRACE] = ACTIONS(4830), [anon_sym_LBRACE] = ACTIONS(4830), [anon_sym_DOT] = ACTIONS(4830), [anon_sym_AMP] = ACTIONS(4830), [anon_sym_DASH] = ACTIONS(4828), [anon_sym_DASH_DASH] = ACTIONS(4830), [anon_sym_PLUS] = ACTIONS(4828), [anon_sym_PLUS_PLUS] = ACTIONS(4830), [anon_sym_BANG] = ACTIONS(4830), [anon_sym_LPAREN] = ACTIONS(4830), [anon_sym_RPAREN] = ACTIONS(4830), [anon_sym_LBRACK] = ACTIONS(4830), [anon_sym_SEMI] = ACTIONS(4830), [anon_sym_DOLLAR] = ACTIONS(4830), [anon_sym_STAR] = ACTIONS(4830), [anon_sym_TILDE] = ACTIONS(4830), [anon_sym_AT] = ACTIONS(4830), [sym_bool] = ACTIONS(4828), [sym_byte] = ACTIONS(4828), [sym_ubyte] = ACTIONS(4828), [sym_char] = ACTIONS(4828), [sym_short] = ACTIONS(4828), [sym_ushort] = ACTIONS(4828), [sym_int] = ACTIONS(4828), [sym_uint] = ACTIONS(4828), [sym_long] = ACTIONS(4828), [sym_ulong] = ACTIONS(4828), [sym_cent] = ACTIONS(4828), [sym_ucent] = ACTIONS(4828), [sym_wchar] = ACTIONS(4828), [sym_dchar] = ACTIONS(4828), [sym_float] = ACTIONS(4828), [sym_double] = ACTIONS(4828), [sym_real] = ACTIONS(4828), [sym_ifloat] = ACTIONS(4828), [sym_idouble] = ACTIONS(4828), [sym_ireal] = ACTIONS(4828), [sym_cfloat] = ACTIONS(4828), [sym_cdouble] = ACTIONS(4828), [sym_creal] = ACTIONS(4828), [sym_size_t] = ACTIONS(4828), [sym_ptrdiff_t] = ACTIONS(4828), [sym_string] = ACTIONS(4828), [sym_cstring] = ACTIONS(4828), [sym_dstring] = ACTIONS(4828), [sym_wstring] = ACTIONS(4828), [sym_noreturn] = ACTIONS(4828), [sym_true] = ACTIONS(4828), [sym_false] = ACTIONS(4828), [sym_null] = ACTIONS(4828), [sym_super] = ACTIONS(4828), [sym_this] = ACTIONS(4828), [sym_abstract] = ACTIONS(4828), [sym_alias] = ACTIONS(4828), [sym_align] = ACTIONS(4828), [sym_asm] = ACTIONS(4828), [sym_assert] = ACTIONS(4828), [sym_auto] = ACTIONS(4828), [sym_break] = ACTIONS(4828), [sym_case] = ACTIONS(4828), [sym_cast] = ACTIONS(4828), [sym_class] = ACTIONS(4828), [sym_const] = ACTIONS(4828), [sym_continue] = ACTIONS(4828), [sym_debug] = ACTIONS(4828), [sym_default] = ACTIONS(4828), [sym_delegate] = ACTIONS(4828), [sym_delete] = ACTIONS(4828), [sym_deprecated] = ACTIONS(4828), [sym_do] = ACTIONS(4828), [sym_else] = ACTIONS(4828), [sym_enum] = ACTIONS(4828), [sym_export] = ACTIONS(4828), [sym_extern] = ACTIONS(4828), [sym_final] = ACTIONS(4828), [sym_for] = ACTIONS(4828), [sym_foreach] = ACTIONS(4828), [sym_foreach_reverse] = ACTIONS(4828), [sym_function] = ACTIONS(4828), [sym_goto] = ACTIONS(4828), [sym_if] = ACTIONS(4828), [sym_immutable] = ACTIONS(4828), [sym_import] = ACTIONS(4828), [sym_in] = ACTIONS(4828), [sym_inout] = ACTIONS(4828), [sym_interface] = ACTIONS(4828), [sym_invariant] = ACTIONS(4828), [sym_is] = ACTIONS(4828), [sym_mixin] = ACTIONS(4828), [sym_new] = ACTIONS(4828), [sym_nothrow] = ACTIONS(4828), [sym_out] = ACTIONS(4828), [sym_override] = ACTIONS(4828), [sym_package] = ACTIONS(4828), [sym_pragma] = ACTIONS(4828), [sym_private] = ACTIONS(4828), [sym_protected] = ACTIONS(4828), [sym_public] = ACTIONS(4828), [sym_pure] = ACTIONS(4828), [sym_ref] = ACTIONS(4828), [sym_return] = ACTIONS(4828), [sym_scope] = ACTIONS(4828), [sym_shared] = ACTIONS(4828), [sym_static] = ACTIONS(4828), [sym_struct] = ACTIONS(4828), [sym_switch] = ACTIONS(4828), [sym_synchronized] = ACTIONS(4828), [sym_template] = ACTIONS(4828), [sym_throw] = ACTIONS(4828), [sym_try] = ACTIONS(4828), [sym_typeid] = ACTIONS(4828), [sym_typeof] = ACTIONS(4828), [sym_union] = ACTIONS(4828), [sym_unittest] = ACTIONS(4828), [sym_version] = ACTIONS(4828), [sym_while] = ACTIONS(4828), [sym_with] = ACTIONS(4828), [sym_gshared] = ACTIONS(4828), [sym_traits] = ACTIONS(4828), [sym_vector] = ACTIONS(4828), [sym_void] = ACTIONS(4828), [anon_sym_BQUOTE] = ACTIONS(4830), [anon_sym_r_DQUOTE] = ACTIONS(4830), [anon_sym_x_DQUOTE] = ACTIONS(4830), [anon_sym_DQUOTE] = ACTIONS(4830), [anon_sym_i_BQUOTE] = ACTIONS(4830), [anon_sym_i_DQUOTE] = ACTIONS(4830), [anon_sym_iq_LBRACE] = ACTIONS(4830), [aux_sym_char_literal_token1] = ACTIONS(4830), [anon_sym_SQUOTE] = ACTIONS(4828), [anon_sym___DATE__] = ACTIONS(4828), [anon_sym___FILE__] = ACTIONS(4828), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4828), [anon_sym___FUNCTION__] = ACTIONS(4828), [anon_sym___LINE__] = ACTIONS(4828), [anon_sym___MODULE__] = ACTIONS(4828), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4828), [anon_sym___TIME__] = ACTIONS(4828), [anon_sym___TIMESTAMP__] = ACTIONS(4828), [anon_sym___VENDOR__] = ACTIONS(4828), [anon_sym___VERSION__] = ACTIONS(4828), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4830), [sym_float_literal] = ACTIONS(4830), [sym__string] = ACTIONS(4830), }, [1586] = { [sym_identifier] = ACTIONS(4990), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4992), [anon_sym_RBRACE] = ACTIONS(4992), [anon_sym_LBRACE] = ACTIONS(4992), [anon_sym_DOT] = ACTIONS(4992), [anon_sym_AMP] = ACTIONS(4992), [anon_sym_DASH] = ACTIONS(4990), [anon_sym_DASH_DASH] = ACTIONS(4992), [anon_sym_PLUS] = ACTIONS(4990), [anon_sym_PLUS_PLUS] = ACTIONS(4992), [anon_sym_BANG] = ACTIONS(4992), [anon_sym_LPAREN] = ACTIONS(4992), [anon_sym_RPAREN] = ACTIONS(4992), [anon_sym_LBRACK] = ACTIONS(4992), [anon_sym_SEMI] = ACTIONS(4992), [anon_sym_DOLLAR] = ACTIONS(4992), [anon_sym_STAR] = ACTIONS(4992), [anon_sym_TILDE] = ACTIONS(4992), [anon_sym_AT] = ACTIONS(4992), [sym_bool] = ACTIONS(4990), [sym_byte] = ACTIONS(4990), [sym_ubyte] = ACTIONS(4990), [sym_char] = ACTIONS(4990), [sym_short] = ACTIONS(4990), [sym_ushort] = ACTIONS(4990), [sym_int] = ACTIONS(4990), [sym_uint] = ACTIONS(4990), [sym_long] = ACTIONS(4990), [sym_ulong] = ACTIONS(4990), [sym_cent] = ACTIONS(4990), [sym_ucent] = ACTIONS(4990), [sym_wchar] = ACTIONS(4990), [sym_dchar] = ACTIONS(4990), [sym_float] = ACTIONS(4990), [sym_double] = ACTIONS(4990), [sym_real] = ACTIONS(4990), [sym_ifloat] = ACTIONS(4990), [sym_idouble] = ACTIONS(4990), [sym_ireal] = ACTIONS(4990), [sym_cfloat] = ACTIONS(4990), [sym_cdouble] = ACTIONS(4990), [sym_creal] = ACTIONS(4990), [sym_size_t] = ACTIONS(4990), [sym_ptrdiff_t] = ACTIONS(4990), [sym_string] = ACTIONS(4990), [sym_cstring] = ACTIONS(4990), [sym_dstring] = ACTIONS(4990), [sym_wstring] = ACTIONS(4990), [sym_noreturn] = ACTIONS(4990), [sym_true] = ACTIONS(4990), [sym_false] = ACTIONS(4990), [sym_null] = ACTIONS(4990), [sym_super] = ACTIONS(4990), [sym_this] = ACTIONS(4990), [sym_abstract] = ACTIONS(4990), [sym_alias] = ACTIONS(4990), [sym_align] = ACTIONS(4990), [sym_asm] = ACTIONS(4990), [sym_assert] = ACTIONS(4990), [sym_auto] = ACTIONS(4990), [sym_break] = ACTIONS(4990), [sym_case] = ACTIONS(4990), [sym_cast] = ACTIONS(4990), [sym_class] = ACTIONS(4990), [sym_const] = ACTIONS(4990), [sym_continue] = ACTIONS(4990), [sym_debug] = ACTIONS(4990), [sym_default] = ACTIONS(4990), [sym_delegate] = ACTIONS(4990), [sym_delete] = ACTIONS(4990), [sym_deprecated] = ACTIONS(4990), [sym_do] = ACTIONS(4990), [sym_else] = ACTIONS(4990), [sym_enum] = ACTIONS(4990), [sym_export] = ACTIONS(4990), [sym_extern] = ACTIONS(4990), [sym_final] = ACTIONS(4990), [sym_for] = ACTIONS(4990), [sym_foreach] = ACTIONS(4990), [sym_foreach_reverse] = ACTIONS(4990), [sym_function] = ACTIONS(4990), [sym_goto] = ACTIONS(4990), [sym_if] = ACTIONS(4990), [sym_immutable] = ACTIONS(4990), [sym_import] = ACTIONS(4990), [sym_in] = ACTIONS(4990), [sym_inout] = ACTIONS(4990), [sym_interface] = ACTIONS(4990), [sym_invariant] = ACTIONS(4990), [sym_is] = ACTIONS(4990), [sym_mixin] = ACTIONS(4990), [sym_new] = ACTIONS(4990), [sym_nothrow] = ACTIONS(4990), [sym_out] = ACTIONS(4990), [sym_override] = ACTIONS(4990), [sym_package] = ACTIONS(4990), [sym_pragma] = ACTIONS(4990), [sym_private] = ACTIONS(4990), [sym_protected] = ACTIONS(4990), [sym_public] = ACTIONS(4990), [sym_pure] = ACTIONS(4990), [sym_ref] = ACTIONS(4990), [sym_return] = ACTIONS(4990), [sym_scope] = ACTIONS(4990), [sym_shared] = ACTIONS(4990), [sym_static] = ACTIONS(4990), [sym_struct] = ACTIONS(4990), [sym_switch] = ACTIONS(4990), [sym_synchronized] = ACTIONS(4990), [sym_template] = ACTIONS(4990), [sym_throw] = ACTIONS(4990), [sym_try] = ACTIONS(4990), [sym_typeid] = ACTIONS(4990), [sym_typeof] = ACTIONS(4990), [sym_union] = ACTIONS(4990), [sym_unittest] = ACTIONS(4990), [sym_version] = ACTIONS(4990), [sym_while] = ACTIONS(4990), [sym_with] = ACTIONS(4990), [sym_gshared] = ACTIONS(4990), [sym_traits] = ACTIONS(4990), [sym_vector] = ACTIONS(4990), [sym_void] = ACTIONS(4990), [anon_sym_BQUOTE] = ACTIONS(4992), [anon_sym_r_DQUOTE] = ACTIONS(4992), [anon_sym_x_DQUOTE] = ACTIONS(4992), [anon_sym_DQUOTE] = ACTIONS(4992), [anon_sym_i_BQUOTE] = ACTIONS(4992), [anon_sym_i_DQUOTE] = ACTIONS(4992), [anon_sym_iq_LBRACE] = ACTIONS(4992), [aux_sym_char_literal_token1] = ACTIONS(4992), [anon_sym_SQUOTE] = ACTIONS(4990), [anon_sym___DATE__] = ACTIONS(4990), [anon_sym___FILE__] = ACTIONS(4990), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4990), [anon_sym___FUNCTION__] = ACTIONS(4990), [anon_sym___LINE__] = ACTIONS(4990), [anon_sym___MODULE__] = ACTIONS(4990), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4990), [anon_sym___TIME__] = ACTIONS(4990), [anon_sym___TIMESTAMP__] = ACTIONS(4990), [anon_sym___VENDOR__] = ACTIONS(4990), [anon_sym___VERSION__] = ACTIONS(4990), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4992), [sym_float_literal] = ACTIONS(4992), [sym__string] = ACTIONS(4992), }, [1587] = { [sym_identifier] = ACTIONS(4782), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4785), [anon_sym_RBRACE] = ACTIONS(4785), [anon_sym_LBRACE] = ACTIONS(4785), [anon_sym_DOT] = ACTIONS(4785), [anon_sym_AMP] = ACTIONS(4785), [anon_sym_DASH] = ACTIONS(4782), [anon_sym_DASH_DASH] = ACTIONS(4785), [anon_sym_PLUS] = ACTIONS(4782), [anon_sym_PLUS_PLUS] = ACTIONS(4785), [anon_sym_BANG] = ACTIONS(4785), [anon_sym_LPAREN] = ACTIONS(4785), [anon_sym_RPAREN] = ACTIONS(4785), [anon_sym_LBRACK] = ACTIONS(4785), [anon_sym_SEMI] = ACTIONS(4785), [anon_sym_DOLLAR] = ACTIONS(4785), [anon_sym_STAR] = ACTIONS(4785), [anon_sym_TILDE] = ACTIONS(4785), [anon_sym_AT] = ACTIONS(4785), [sym_bool] = ACTIONS(4782), [sym_byte] = ACTIONS(4782), [sym_ubyte] = ACTIONS(4782), [sym_char] = ACTIONS(4782), [sym_short] = ACTIONS(4782), [sym_ushort] = ACTIONS(4782), [sym_int] = ACTIONS(4782), [sym_uint] = ACTIONS(4782), [sym_long] = ACTIONS(4782), [sym_ulong] = ACTIONS(4782), [sym_cent] = ACTIONS(4782), [sym_ucent] = ACTIONS(4782), [sym_wchar] = ACTIONS(4782), [sym_dchar] = ACTIONS(4782), [sym_float] = ACTIONS(4782), [sym_double] = ACTIONS(4782), [sym_real] = ACTIONS(4782), [sym_ifloat] = ACTIONS(4782), [sym_idouble] = ACTIONS(4782), [sym_ireal] = ACTIONS(4782), [sym_cfloat] = ACTIONS(4782), [sym_cdouble] = ACTIONS(4782), [sym_creal] = ACTIONS(4782), [sym_size_t] = ACTIONS(4782), [sym_ptrdiff_t] = ACTIONS(4782), [sym_string] = ACTIONS(4782), [sym_cstring] = ACTIONS(4782), [sym_dstring] = ACTIONS(4782), [sym_wstring] = ACTIONS(4782), [sym_noreturn] = ACTIONS(4782), [sym_true] = ACTIONS(4782), [sym_false] = ACTIONS(4782), [sym_null] = ACTIONS(4782), [sym_super] = ACTIONS(4782), [sym_this] = ACTIONS(4782), [sym_abstract] = ACTIONS(4782), [sym_alias] = ACTIONS(4782), [sym_align] = ACTIONS(4782), [sym_asm] = ACTIONS(4782), [sym_assert] = ACTIONS(4782), [sym_auto] = ACTIONS(4782), [sym_break] = ACTIONS(4782), [sym_case] = ACTIONS(4782), [sym_cast] = ACTIONS(4782), [sym_class] = ACTIONS(4782), [sym_const] = ACTIONS(4782), [sym_continue] = ACTIONS(4782), [sym_debug] = ACTIONS(4782), [sym_default] = ACTIONS(4782), [sym_delegate] = ACTIONS(4782), [sym_delete] = ACTIONS(4782), [sym_deprecated] = ACTIONS(4782), [sym_do] = ACTIONS(4782), [sym_else] = ACTIONS(4782), [sym_enum] = ACTIONS(4782), [sym_export] = ACTIONS(4782), [sym_extern] = ACTIONS(4782), [sym_final] = ACTIONS(4782), [sym_for] = ACTIONS(4782), [sym_foreach] = ACTIONS(4782), [sym_foreach_reverse] = ACTIONS(4782), [sym_function] = ACTIONS(4782), [sym_goto] = ACTIONS(4782), [sym_if] = ACTIONS(4782), [sym_immutable] = ACTIONS(4782), [sym_import] = ACTIONS(4782), [sym_in] = ACTIONS(4782), [sym_inout] = ACTIONS(4782), [sym_interface] = ACTIONS(4782), [sym_invariant] = ACTIONS(4782), [sym_is] = ACTIONS(4782), [sym_mixin] = ACTIONS(4782), [sym_new] = ACTIONS(4782), [sym_nothrow] = ACTIONS(4782), [sym_out] = ACTIONS(4782), [sym_override] = ACTIONS(4782), [sym_package] = ACTIONS(4782), [sym_pragma] = ACTIONS(4782), [sym_private] = ACTIONS(4782), [sym_protected] = ACTIONS(4782), [sym_public] = ACTIONS(4782), [sym_pure] = ACTIONS(4782), [sym_ref] = ACTIONS(4782), [sym_return] = ACTIONS(4782), [sym_scope] = ACTIONS(4782), [sym_shared] = ACTIONS(4782), [sym_static] = ACTIONS(4782), [sym_struct] = ACTIONS(4782), [sym_switch] = ACTIONS(4782), [sym_synchronized] = ACTIONS(4782), [sym_template] = ACTIONS(4782), [sym_throw] = ACTIONS(4782), [sym_try] = ACTIONS(4782), [sym_typeid] = ACTIONS(4782), [sym_typeof] = ACTIONS(4782), [sym_union] = ACTIONS(4782), [sym_unittest] = ACTIONS(4782), [sym_version] = ACTIONS(4782), [sym_while] = ACTIONS(4782), [sym_with] = ACTIONS(4782), [sym_gshared] = ACTIONS(4782), [sym_traits] = ACTIONS(4782), [sym_vector] = ACTIONS(4782), [sym_void] = ACTIONS(4782), [anon_sym_BQUOTE] = ACTIONS(4785), [anon_sym_r_DQUOTE] = ACTIONS(4785), [anon_sym_x_DQUOTE] = ACTIONS(4785), [anon_sym_DQUOTE] = ACTIONS(4785), [anon_sym_i_BQUOTE] = ACTIONS(4785), [anon_sym_i_DQUOTE] = ACTIONS(4785), [anon_sym_iq_LBRACE] = ACTIONS(4785), [aux_sym_char_literal_token1] = ACTIONS(4785), [anon_sym_SQUOTE] = ACTIONS(4782), [anon_sym___DATE__] = ACTIONS(4782), [anon_sym___FILE__] = ACTIONS(4782), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4782), [anon_sym___FUNCTION__] = ACTIONS(4782), [anon_sym___LINE__] = ACTIONS(4782), [anon_sym___MODULE__] = ACTIONS(4782), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4782), [anon_sym___TIME__] = ACTIONS(4782), [anon_sym___TIMESTAMP__] = ACTIONS(4782), [anon_sym___VENDOR__] = ACTIONS(4782), [anon_sym___VERSION__] = ACTIONS(4782), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4785), [sym_float_literal] = ACTIONS(4785), [sym__string] = ACTIONS(4785), }, [1588] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_RBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [anon_sym_AT] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_abstract] = ACTIONS(4359), [sym_alias] = ACTIONS(4359), [sym_align] = ACTIONS(4359), [sym_asm] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_break] = ACTIONS(4359), [sym_case] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_class] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_continue] = ACTIONS(4359), [sym_debug] = ACTIONS(4359), [sym_default] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_deprecated] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(5100), [sym_enum] = ACTIONS(4359), [sym_export] = ACTIONS(4359), [sym_extern] = ACTIONS(4359), [sym_final] = ACTIONS(4359), [sym_for] = ACTIONS(4359), [sym_foreach] = ACTIONS(4359), [sym_foreach_reverse] = ACTIONS(4359), [sym_function] = ACTIONS(4359), [sym_goto] = ACTIONS(4359), [sym_if] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_interface] = ACTIONS(4359), [sym_invariant] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_nothrow] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_override] = ACTIONS(4359), [sym_package] = ACTIONS(4359), [sym_pragma] = ACTIONS(4359), [sym_private] = ACTIONS(4359), [sym_protected] = ACTIONS(4359), [sym_public] = ACTIONS(4359), [sym_pure] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_return] = ACTIONS(4359), [sym_scope] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_static] = ACTIONS(4359), [sym_struct] = ACTIONS(4359), [sym_switch] = ACTIONS(4359), [sym_synchronized] = ACTIONS(4359), [sym_template] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_try] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_union] = ACTIONS(4359), [sym_unittest] = ACTIONS(4359), [sym_version] = ACTIONS(4359), [sym_while] = ACTIONS(4359), [sym_with] = ACTIONS(4359), [sym_gshared] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [1589] = { [sym_identifier] = ACTIONS(4840), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4842), [anon_sym_RBRACE] = ACTIONS(4842), [anon_sym_LBRACE] = ACTIONS(4842), [anon_sym_DOT] = ACTIONS(4842), [anon_sym_AMP] = ACTIONS(4842), [anon_sym_DASH] = ACTIONS(4840), [anon_sym_DASH_DASH] = ACTIONS(4842), [anon_sym_PLUS] = ACTIONS(4840), [anon_sym_PLUS_PLUS] = ACTIONS(4842), [anon_sym_BANG] = ACTIONS(4842), [anon_sym_LPAREN] = ACTIONS(4842), [anon_sym_RPAREN] = ACTIONS(4842), [anon_sym_LBRACK] = ACTIONS(4842), [anon_sym_SEMI] = ACTIONS(4842), [anon_sym_DOLLAR] = ACTIONS(4842), [anon_sym_STAR] = ACTIONS(4842), [anon_sym_TILDE] = ACTIONS(4842), [anon_sym_AT] = ACTIONS(4842), [sym_bool] = ACTIONS(4840), [sym_byte] = ACTIONS(4840), [sym_ubyte] = ACTIONS(4840), [sym_char] = ACTIONS(4840), [sym_short] = ACTIONS(4840), [sym_ushort] = ACTIONS(4840), [sym_int] = ACTIONS(4840), [sym_uint] = ACTIONS(4840), [sym_long] = ACTIONS(4840), [sym_ulong] = ACTIONS(4840), [sym_cent] = ACTIONS(4840), [sym_ucent] = ACTIONS(4840), [sym_wchar] = ACTIONS(4840), [sym_dchar] = ACTIONS(4840), [sym_float] = ACTIONS(4840), [sym_double] = ACTIONS(4840), [sym_real] = ACTIONS(4840), [sym_ifloat] = ACTIONS(4840), [sym_idouble] = ACTIONS(4840), [sym_ireal] = ACTIONS(4840), [sym_cfloat] = ACTIONS(4840), [sym_cdouble] = ACTIONS(4840), [sym_creal] = ACTIONS(4840), [sym_size_t] = ACTIONS(4840), [sym_ptrdiff_t] = ACTIONS(4840), [sym_string] = ACTIONS(4840), [sym_cstring] = ACTIONS(4840), [sym_dstring] = ACTIONS(4840), [sym_wstring] = ACTIONS(4840), [sym_noreturn] = ACTIONS(4840), [sym_true] = ACTIONS(4840), [sym_false] = ACTIONS(4840), [sym_null] = ACTIONS(4840), [sym_super] = ACTIONS(4840), [sym_this] = ACTIONS(4840), [sym_abstract] = ACTIONS(4840), [sym_alias] = ACTIONS(4840), [sym_align] = ACTIONS(4840), [sym_asm] = ACTIONS(4840), [sym_assert] = ACTIONS(4840), [sym_auto] = ACTIONS(4840), [sym_break] = ACTIONS(4840), [sym_case] = ACTIONS(4840), [sym_cast] = ACTIONS(4840), [sym_class] = ACTIONS(4840), [sym_const] = ACTIONS(4840), [sym_continue] = ACTIONS(4840), [sym_debug] = ACTIONS(4840), [sym_default] = ACTIONS(4840), [sym_delegate] = ACTIONS(4840), [sym_delete] = ACTIONS(4840), [sym_deprecated] = ACTIONS(4840), [sym_do] = ACTIONS(4840), [sym_else] = ACTIONS(4840), [sym_enum] = ACTIONS(4840), [sym_export] = ACTIONS(4840), [sym_extern] = ACTIONS(4840), [sym_final] = ACTIONS(4840), [sym_for] = ACTIONS(4840), [sym_foreach] = ACTIONS(4840), [sym_foreach_reverse] = ACTIONS(4840), [sym_function] = ACTIONS(4840), [sym_goto] = ACTIONS(4840), [sym_if] = ACTIONS(4840), [sym_immutable] = ACTIONS(4840), [sym_import] = ACTIONS(4840), [sym_in] = ACTIONS(4840), [sym_inout] = ACTIONS(4840), [sym_interface] = ACTIONS(4840), [sym_invariant] = ACTIONS(4840), [sym_is] = ACTIONS(4840), [sym_mixin] = ACTIONS(4840), [sym_new] = ACTIONS(4840), [sym_nothrow] = ACTIONS(4840), [sym_out] = ACTIONS(4840), [sym_override] = ACTIONS(4840), [sym_package] = ACTIONS(4840), [sym_pragma] = ACTIONS(4840), [sym_private] = ACTIONS(4840), [sym_protected] = ACTIONS(4840), [sym_public] = ACTIONS(4840), [sym_pure] = ACTIONS(4840), [sym_ref] = ACTIONS(4840), [sym_return] = ACTIONS(4840), [sym_scope] = ACTIONS(4840), [sym_shared] = ACTIONS(4840), [sym_static] = ACTIONS(4840), [sym_struct] = ACTIONS(4840), [sym_switch] = ACTIONS(4840), [sym_synchronized] = ACTIONS(4840), [sym_template] = ACTIONS(4840), [sym_throw] = ACTIONS(4840), [sym_try] = ACTIONS(4840), [sym_typeid] = ACTIONS(4840), [sym_typeof] = ACTIONS(4840), [sym_union] = ACTIONS(4840), [sym_unittest] = ACTIONS(4840), [sym_version] = ACTIONS(4840), [sym_while] = ACTIONS(4840), [sym_with] = ACTIONS(4840), [sym_gshared] = ACTIONS(4840), [sym_traits] = ACTIONS(4840), [sym_vector] = ACTIONS(4840), [sym_void] = ACTIONS(4840), [anon_sym_BQUOTE] = ACTIONS(4842), [anon_sym_r_DQUOTE] = ACTIONS(4842), [anon_sym_x_DQUOTE] = ACTIONS(4842), [anon_sym_DQUOTE] = ACTIONS(4842), [anon_sym_i_BQUOTE] = ACTIONS(4842), [anon_sym_i_DQUOTE] = ACTIONS(4842), [anon_sym_iq_LBRACE] = ACTIONS(4842), [aux_sym_char_literal_token1] = ACTIONS(4842), [anon_sym_SQUOTE] = ACTIONS(4840), [anon_sym___DATE__] = ACTIONS(4840), [anon_sym___FILE__] = ACTIONS(4840), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4840), [anon_sym___FUNCTION__] = ACTIONS(4840), [anon_sym___LINE__] = ACTIONS(4840), [anon_sym___MODULE__] = ACTIONS(4840), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4840), [anon_sym___TIME__] = ACTIONS(4840), [anon_sym___TIMESTAMP__] = ACTIONS(4840), [anon_sym___VENDOR__] = ACTIONS(4840), [anon_sym___VERSION__] = ACTIONS(4840), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4842), [sym_float_literal] = ACTIONS(4842), [sym__string] = ACTIONS(4842), }, [1590] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_RBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [anon_sym_AT] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_abstract] = ACTIONS(4365), [sym_alias] = ACTIONS(4365), [sym_align] = ACTIONS(4365), [sym_asm] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_break] = ACTIONS(4365), [sym_case] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_class] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_continue] = ACTIONS(4365), [sym_debug] = ACTIONS(4365), [sym_default] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_deprecated] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(5102), [sym_enum] = ACTIONS(4365), [sym_export] = ACTIONS(4365), [sym_extern] = ACTIONS(4365), [sym_final] = ACTIONS(4365), [sym_for] = ACTIONS(4365), [sym_foreach] = ACTIONS(4365), [sym_foreach_reverse] = ACTIONS(4365), [sym_function] = ACTIONS(4365), [sym_goto] = ACTIONS(4365), [sym_if] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_interface] = ACTIONS(4365), [sym_invariant] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_nothrow] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_override] = ACTIONS(4365), [sym_package] = ACTIONS(4365), [sym_pragma] = ACTIONS(4365), [sym_private] = ACTIONS(4365), [sym_protected] = ACTIONS(4365), [sym_public] = ACTIONS(4365), [sym_pure] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_return] = ACTIONS(4365), [sym_scope] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_static] = ACTIONS(4365), [sym_struct] = ACTIONS(4365), [sym_switch] = ACTIONS(4365), [sym_synchronized] = ACTIONS(4365), [sym_template] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_try] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_union] = ACTIONS(4365), [sym_unittest] = ACTIONS(4365), [sym_version] = ACTIONS(4365), [sym_while] = ACTIONS(4365), [sym_with] = ACTIONS(4365), [sym_gshared] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [1591] = { [sym_identifier] = ACTIONS(4762), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4764), [anon_sym_RBRACE] = ACTIONS(4764), [anon_sym_LBRACE] = ACTIONS(4764), [anon_sym_DOT] = ACTIONS(4764), [anon_sym_AMP] = ACTIONS(4764), [anon_sym_DASH] = ACTIONS(4762), [anon_sym_DASH_DASH] = ACTIONS(4764), [anon_sym_PLUS] = ACTIONS(4762), [anon_sym_PLUS_PLUS] = ACTIONS(4764), [anon_sym_BANG] = ACTIONS(4764), [anon_sym_LPAREN] = ACTIONS(4764), [anon_sym_RPAREN] = ACTIONS(4764), [anon_sym_LBRACK] = ACTIONS(4764), [anon_sym_SEMI] = ACTIONS(4764), [anon_sym_DOLLAR] = ACTIONS(4764), [anon_sym_STAR] = ACTIONS(4764), [anon_sym_TILDE] = ACTIONS(4764), [anon_sym_AT] = ACTIONS(4764), [sym_bool] = ACTIONS(4762), [sym_byte] = ACTIONS(4762), [sym_ubyte] = ACTIONS(4762), [sym_char] = ACTIONS(4762), [sym_short] = ACTIONS(4762), [sym_ushort] = ACTIONS(4762), [sym_int] = ACTIONS(4762), [sym_uint] = ACTIONS(4762), [sym_long] = ACTIONS(4762), [sym_ulong] = ACTIONS(4762), [sym_cent] = ACTIONS(4762), [sym_ucent] = ACTIONS(4762), [sym_wchar] = ACTIONS(4762), [sym_dchar] = ACTIONS(4762), [sym_float] = ACTIONS(4762), [sym_double] = ACTIONS(4762), [sym_real] = ACTIONS(4762), [sym_ifloat] = ACTIONS(4762), [sym_idouble] = ACTIONS(4762), [sym_ireal] = ACTIONS(4762), [sym_cfloat] = ACTIONS(4762), [sym_cdouble] = ACTIONS(4762), [sym_creal] = ACTIONS(4762), [sym_size_t] = ACTIONS(4762), [sym_ptrdiff_t] = ACTIONS(4762), [sym_string] = ACTIONS(4762), [sym_cstring] = ACTIONS(4762), [sym_dstring] = ACTIONS(4762), [sym_wstring] = ACTIONS(4762), [sym_noreturn] = ACTIONS(4762), [sym_true] = ACTIONS(4762), [sym_false] = ACTIONS(4762), [sym_null] = ACTIONS(4762), [sym_super] = ACTIONS(4762), [sym_this] = ACTIONS(4762), [sym_abstract] = ACTIONS(4762), [sym_alias] = ACTIONS(4762), [sym_align] = ACTIONS(4762), [sym_asm] = ACTIONS(4762), [sym_assert] = ACTIONS(4762), [sym_auto] = ACTIONS(4762), [sym_break] = ACTIONS(4762), [sym_case] = ACTIONS(4762), [sym_cast] = ACTIONS(4762), [sym_class] = ACTIONS(4762), [sym_const] = ACTIONS(4762), [sym_continue] = ACTIONS(4762), [sym_debug] = ACTIONS(4762), [sym_default] = ACTIONS(4762), [sym_delegate] = ACTIONS(4762), [sym_delete] = ACTIONS(4762), [sym_deprecated] = ACTIONS(4762), [sym_do] = ACTIONS(4762), [sym_else] = ACTIONS(4762), [sym_enum] = ACTIONS(4762), [sym_export] = ACTIONS(4762), [sym_extern] = ACTIONS(4762), [sym_final] = ACTIONS(4762), [sym_for] = ACTIONS(4762), [sym_foreach] = ACTIONS(4762), [sym_foreach_reverse] = ACTIONS(4762), [sym_function] = ACTIONS(4762), [sym_goto] = ACTIONS(4762), [sym_if] = ACTIONS(4762), [sym_immutable] = ACTIONS(4762), [sym_import] = ACTIONS(4762), [sym_in] = ACTIONS(4762), [sym_inout] = ACTIONS(4762), [sym_interface] = ACTIONS(4762), [sym_invariant] = ACTIONS(4762), [sym_is] = ACTIONS(4762), [sym_mixin] = ACTIONS(4762), [sym_new] = ACTIONS(4762), [sym_nothrow] = ACTIONS(4762), [sym_out] = ACTIONS(4762), [sym_override] = ACTIONS(4762), [sym_package] = ACTIONS(4762), [sym_pragma] = ACTIONS(4762), [sym_private] = ACTIONS(4762), [sym_protected] = ACTIONS(4762), [sym_public] = ACTIONS(4762), [sym_pure] = ACTIONS(4762), [sym_ref] = ACTIONS(4762), [sym_return] = ACTIONS(4762), [sym_scope] = ACTIONS(4762), [sym_shared] = ACTIONS(4762), [sym_static] = ACTIONS(4762), [sym_struct] = ACTIONS(4762), [sym_switch] = ACTIONS(4762), [sym_synchronized] = ACTIONS(4762), [sym_template] = ACTIONS(4762), [sym_throw] = ACTIONS(4762), [sym_try] = ACTIONS(4762), [sym_typeid] = ACTIONS(4762), [sym_typeof] = ACTIONS(4762), [sym_union] = ACTIONS(4762), [sym_unittest] = ACTIONS(4762), [sym_version] = ACTIONS(4762), [sym_while] = ACTIONS(4762), [sym_with] = ACTIONS(4762), [sym_gshared] = ACTIONS(4762), [sym_traits] = ACTIONS(4762), [sym_vector] = ACTIONS(4762), [sym_void] = ACTIONS(4762), [anon_sym_BQUOTE] = ACTIONS(4764), [anon_sym_r_DQUOTE] = ACTIONS(4764), [anon_sym_x_DQUOTE] = ACTIONS(4764), [anon_sym_DQUOTE] = ACTIONS(4764), [anon_sym_i_BQUOTE] = ACTIONS(4764), [anon_sym_i_DQUOTE] = ACTIONS(4764), [anon_sym_iq_LBRACE] = ACTIONS(4764), [aux_sym_char_literal_token1] = ACTIONS(4764), [anon_sym_SQUOTE] = ACTIONS(4762), [anon_sym___DATE__] = ACTIONS(4762), [anon_sym___FILE__] = ACTIONS(4762), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4762), [anon_sym___FUNCTION__] = ACTIONS(4762), [anon_sym___LINE__] = ACTIONS(4762), [anon_sym___MODULE__] = ACTIONS(4762), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4762), [anon_sym___TIME__] = ACTIONS(4762), [anon_sym___TIMESTAMP__] = ACTIONS(4762), [anon_sym___VENDOR__] = ACTIONS(4762), [anon_sym___VERSION__] = ACTIONS(4762), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4764), [sym_float_literal] = ACTIONS(4764), [sym__string] = ACTIONS(4764), }, [1592] = { [sym_identifier] = ACTIONS(4986), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4988), [anon_sym_RBRACE] = ACTIONS(4988), [anon_sym_LBRACE] = ACTIONS(4988), [anon_sym_DOT] = ACTIONS(4988), [anon_sym_AMP] = ACTIONS(4988), [anon_sym_DASH] = ACTIONS(4986), [anon_sym_DASH_DASH] = ACTIONS(4988), [anon_sym_PLUS] = ACTIONS(4986), [anon_sym_PLUS_PLUS] = ACTIONS(4988), [anon_sym_BANG] = ACTIONS(4988), [anon_sym_LPAREN] = ACTIONS(4988), [anon_sym_RPAREN] = ACTIONS(4988), [anon_sym_LBRACK] = ACTIONS(4988), [anon_sym_SEMI] = ACTIONS(4988), [anon_sym_DOLLAR] = ACTIONS(4988), [anon_sym_STAR] = ACTIONS(4988), [anon_sym_TILDE] = ACTIONS(4988), [anon_sym_AT] = ACTIONS(4988), [sym_bool] = ACTIONS(4986), [sym_byte] = ACTIONS(4986), [sym_ubyte] = ACTIONS(4986), [sym_char] = ACTIONS(4986), [sym_short] = ACTIONS(4986), [sym_ushort] = ACTIONS(4986), [sym_int] = ACTIONS(4986), [sym_uint] = ACTIONS(4986), [sym_long] = ACTIONS(4986), [sym_ulong] = ACTIONS(4986), [sym_cent] = ACTIONS(4986), [sym_ucent] = ACTIONS(4986), [sym_wchar] = ACTIONS(4986), [sym_dchar] = ACTIONS(4986), [sym_float] = ACTIONS(4986), [sym_double] = ACTIONS(4986), [sym_real] = ACTIONS(4986), [sym_ifloat] = ACTIONS(4986), [sym_idouble] = ACTIONS(4986), [sym_ireal] = ACTIONS(4986), [sym_cfloat] = ACTIONS(4986), [sym_cdouble] = ACTIONS(4986), [sym_creal] = ACTIONS(4986), [sym_size_t] = ACTIONS(4986), [sym_ptrdiff_t] = ACTIONS(4986), [sym_string] = ACTIONS(4986), [sym_cstring] = ACTIONS(4986), [sym_dstring] = ACTIONS(4986), [sym_wstring] = ACTIONS(4986), [sym_noreturn] = ACTIONS(4986), [sym_true] = ACTIONS(4986), [sym_false] = ACTIONS(4986), [sym_null] = ACTIONS(4986), [sym_super] = ACTIONS(4986), [sym_this] = ACTIONS(4986), [sym_abstract] = ACTIONS(4986), [sym_alias] = ACTIONS(4986), [sym_align] = ACTIONS(4986), [sym_asm] = ACTIONS(4986), [sym_assert] = ACTIONS(4986), [sym_auto] = ACTIONS(4986), [sym_break] = ACTIONS(4986), [sym_case] = ACTIONS(4986), [sym_cast] = ACTIONS(4986), [sym_class] = ACTIONS(4986), [sym_const] = ACTIONS(4986), [sym_continue] = ACTIONS(4986), [sym_debug] = ACTIONS(4986), [sym_default] = ACTIONS(4986), [sym_delegate] = ACTIONS(4986), [sym_delete] = ACTIONS(4986), [sym_deprecated] = ACTIONS(4986), [sym_do] = ACTIONS(4986), [sym_else] = ACTIONS(4986), [sym_enum] = ACTIONS(4986), [sym_export] = ACTIONS(4986), [sym_extern] = ACTIONS(4986), [sym_final] = ACTIONS(4986), [sym_for] = ACTIONS(4986), [sym_foreach] = ACTIONS(4986), [sym_foreach_reverse] = ACTIONS(4986), [sym_function] = ACTIONS(4986), [sym_goto] = ACTIONS(4986), [sym_if] = ACTIONS(4986), [sym_immutable] = ACTIONS(4986), [sym_import] = ACTIONS(4986), [sym_in] = ACTIONS(4986), [sym_inout] = ACTIONS(4986), [sym_interface] = ACTIONS(4986), [sym_invariant] = ACTIONS(4986), [sym_is] = ACTIONS(4986), [sym_mixin] = ACTIONS(4986), [sym_new] = ACTIONS(4986), [sym_nothrow] = ACTIONS(4986), [sym_out] = ACTIONS(4986), [sym_override] = ACTIONS(4986), [sym_package] = ACTIONS(4986), [sym_pragma] = ACTIONS(4986), [sym_private] = ACTIONS(4986), [sym_protected] = ACTIONS(4986), [sym_public] = ACTIONS(4986), [sym_pure] = ACTIONS(4986), [sym_ref] = ACTIONS(4986), [sym_return] = ACTIONS(4986), [sym_scope] = ACTIONS(4986), [sym_shared] = ACTIONS(4986), [sym_static] = ACTIONS(4986), [sym_struct] = ACTIONS(4986), [sym_switch] = ACTIONS(4986), [sym_synchronized] = ACTIONS(4986), [sym_template] = ACTIONS(4986), [sym_throw] = ACTIONS(4986), [sym_try] = ACTIONS(4986), [sym_typeid] = ACTIONS(4986), [sym_typeof] = ACTIONS(4986), [sym_union] = ACTIONS(4986), [sym_unittest] = ACTIONS(4986), [sym_version] = ACTIONS(4986), [sym_while] = ACTIONS(4986), [sym_with] = ACTIONS(4986), [sym_gshared] = ACTIONS(4986), [sym_traits] = ACTIONS(4986), [sym_vector] = ACTIONS(4986), [sym_void] = ACTIONS(4986), [anon_sym_BQUOTE] = ACTIONS(4988), [anon_sym_r_DQUOTE] = ACTIONS(4988), [anon_sym_x_DQUOTE] = ACTIONS(4988), [anon_sym_DQUOTE] = ACTIONS(4988), [anon_sym_i_BQUOTE] = ACTIONS(4988), [anon_sym_i_DQUOTE] = ACTIONS(4988), [anon_sym_iq_LBRACE] = ACTIONS(4988), [aux_sym_char_literal_token1] = ACTIONS(4988), [anon_sym_SQUOTE] = ACTIONS(4986), [anon_sym___DATE__] = ACTIONS(4986), [anon_sym___FILE__] = ACTIONS(4986), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4986), [anon_sym___FUNCTION__] = ACTIONS(4986), [anon_sym___LINE__] = ACTIONS(4986), [anon_sym___MODULE__] = ACTIONS(4986), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4986), [anon_sym___TIME__] = ACTIONS(4986), [anon_sym___TIMESTAMP__] = ACTIONS(4986), [anon_sym___VENDOR__] = ACTIONS(4986), [anon_sym___VERSION__] = ACTIONS(4986), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4988), [sym_float_literal] = ACTIONS(4988), [sym__string] = ACTIONS(4988), }, [1593] = { [sym_identifier] = ACTIONS(4982), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4984), [anon_sym_RBRACE] = ACTIONS(4984), [anon_sym_LBRACE] = ACTIONS(4984), [anon_sym_DOT] = ACTIONS(4984), [anon_sym_AMP] = ACTIONS(4984), [anon_sym_DASH] = ACTIONS(4982), [anon_sym_DASH_DASH] = ACTIONS(4984), [anon_sym_PLUS] = ACTIONS(4982), [anon_sym_PLUS_PLUS] = ACTIONS(4984), [anon_sym_BANG] = ACTIONS(4984), [anon_sym_LPAREN] = ACTIONS(4984), [anon_sym_RPAREN] = ACTIONS(4984), [anon_sym_LBRACK] = ACTIONS(4984), [anon_sym_SEMI] = ACTIONS(4984), [anon_sym_DOLLAR] = ACTIONS(4984), [anon_sym_STAR] = ACTIONS(4984), [anon_sym_TILDE] = ACTIONS(4984), [anon_sym_AT] = ACTIONS(4984), [sym_bool] = ACTIONS(4982), [sym_byte] = ACTIONS(4982), [sym_ubyte] = ACTIONS(4982), [sym_char] = ACTIONS(4982), [sym_short] = ACTIONS(4982), [sym_ushort] = ACTIONS(4982), [sym_int] = ACTIONS(4982), [sym_uint] = ACTIONS(4982), [sym_long] = ACTIONS(4982), [sym_ulong] = ACTIONS(4982), [sym_cent] = ACTIONS(4982), [sym_ucent] = ACTIONS(4982), [sym_wchar] = ACTIONS(4982), [sym_dchar] = ACTIONS(4982), [sym_float] = ACTIONS(4982), [sym_double] = ACTIONS(4982), [sym_real] = ACTIONS(4982), [sym_ifloat] = ACTIONS(4982), [sym_idouble] = ACTIONS(4982), [sym_ireal] = ACTIONS(4982), [sym_cfloat] = ACTIONS(4982), [sym_cdouble] = ACTIONS(4982), [sym_creal] = ACTIONS(4982), [sym_size_t] = ACTIONS(4982), [sym_ptrdiff_t] = ACTIONS(4982), [sym_string] = ACTIONS(4982), [sym_cstring] = ACTIONS(4982), [sym_dstring] = ACTIONS(4982), [sym_wstring] = ACTIONS(4982), [sym_noreturn] = ACTIONS(4982), [sym_true] = ACTIONS(4982), [sym_false] = ACTIONS(4982), [sym_null] = ACTIONS(4982), [sym_super] = ACTIONS(4982), [sym_this] = ACTIONS(4982), [sym_abstract] = ACTIONS(4982), [sym_alias] = ACTIONS(4982), [sym_align] = ACTIONS(4982), [sym_asm] = ACTIONS(4982), [sym_assert] = ACTIONS(4982), [sym_auto] = ACTIONS(4982), [sym_break] = ACTIONS(4982), [sym_case] = ACTIONS(4982), [sym_cast] = ACTIONS(4982), [sym_class] = ACTIONS(4982), [sym_const] = ACTIONS(4982), [sym_continue] = ACTIONS(4982), [sym_debug] = ACTIONS(4982), [sym_default] = ACTIONS(4982), [sym_delegate] = ACTIONS(4982), [sym_delete] = ACTIONS(4982), [sym_deprecated] = ACTIONS(4982), [sym_do] = ACTIONS(4982), [sym_else] = ACTIONS(4982), [sym_enum] = ACTIONS(4982), [sym_export] = ACTIONS(4982), [sym_extern] = ACTIONS(4982), [sym_final] = ACTIONS(4982), [sym_for] = ACTIONS(4982), [sym_foreach] = ACTIONS(4982), [sym_foreach_reverse] = ACTIONS(4982), [sym_function] = ACTIONS(4982), [sym_goto] = ACTIONS(4982), [sym_if] = ACTIONS(4982), [sym_immutable] = ACTIONS(4982), [sym_import] = ACTIONS(4982), [sym_in] = ACTIONS(4982), [sym_inout] = ACTIONS(4982), [sym_interface] = ACTIONS(4982), [sym_invariant] = ACTIONS(4982), [sym_is] = ACTIONS(4982), [sym_mixin] = ACTIONS(4982), [sym_new] = ACTIONS(4982), [sym_nothrow] = ACTIONS(4982), [sym_out] = ACTIONS(4982), [sym_override] = ACTIONS(4982), [sym_package] = ACTIONS(4982), [sym_pragma] = ACTIONS(4982), [sym_private] = ACTIONS(4982), [sym_protected] = ACTIONS(4982), [sym_public] = ACTIONS(4982), [sym_pure] = ACTIONS(4982), [sym_ref] = ACTIONS(4982), [sym_return] = ACTIONS(4982), [sym_scope] = ACTIONS(4982), [sym_shared] = ACTIONS(4982), [sym_static] = ACTIONS(4982), [sym_struct] = ACTIONS(4982), [sym_switch] = ACTIONS(4982), [sym_synchronized] = ACTIONS(4982), [sym_template] = ACTIONS(4982), [sym_throw] = ACTIONS(4982), [sym_try] = ACTIONS(4982), [sym_typeid] = ACTIONS(4982), [sym_typeof] = ACTIONS(4982), [sym_union] = ACTIONS(4982), [sym_unittest] = ACTIONS(4982), [sym_version] = ACTIONS(4982), [sym_while] = ACTIONS(4982), [sym_with] = ACTIONS(4982), [sym_gshared] = ACTIONS(4982), [sym_traits] = ACTIONS(4982), [sym_vector] = ACTIONS(4982), [sym_void] = ACTIONS(4982), [anon_sym_BQUOTE] = ACTIONS(4984), [anon_sym_r_DQUOTE] = ACTIONS(4984), [anon_sym_x_DQUOTE] = ACTIONS(4984), [anon_sym_DQUOTE] = ACTIONS(4984), [anon_sym_i_BQUOTE] = ACTIONS(4984), [anon_sym_i_DQUOTE] = ACTIONS(4984), [anon_sym_iq_LBRACE] = ACTIONS(4984), [aux_sym_char_literal_token1] = ACTIONS(4984), [anon_sym_SQUOTE] = ACTIONS(4982), [anon_sym___DATE__] = ACTIONS(4982), [anon_sym___FILE__] = ACTIONS(4982), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4982), [anon_sym___FUNCTION__] = ACTIONS(4982), [anon_sym___LINE__] = ACTIONS(4982), [anon_sym___MODULE__] = ACTIONS(4982), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4982), [anon_sym___TIME__] = ACTIONS(4982), [anon_sym___TIMESTAMP__] = ACTIONS(4982), [anon_sym___VENDOR__] = ACTIONS(4982), [anon_sym___VERSION__] = ACTIONS(4982), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4984), [sym_float_literal] = ACTIONS(4984), [sym__string] = ACTIONS(4984), }, [1594] = { [sym_identifier] = ACTIONS(4978), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4980), [anon_sym_RBRACE] = ACTIONS(4980), [anon_sym_LBRACE] = ACTIONS(4980), [anon_sym_DOT] = ACTIONS(4980), [anon_sym_AMP] = ACTIONS(4980), [anon_sym_DASH] = ACTIONS(4978), [anon_sym_DASH_DASH] = ACTIONS(4980), [anon_sym_PLUS] = ACTIONS(4978), [anon_sym_PLUS_PLUS] = ACTIONS(4980), [anon_sym_BANG] = ACTIONS(4980), [anon_sym_LPAREN] = ACTIONS(4980), [anon_sym_RPAREN] = ACTIONS(4980), [anon_sym_LBRACK] = ACTIONS(4980), [anon_sym_SEMI] = ACTIONS(4980), [anon_sym_DOLLAR] = ACTIONS(4980), [anon_sym_STAR] = ACTIONS(4980), [anon_sym_TILDE] = ACTIONS(4980), [anon_sym_AT] = ACTIONS(4980), [sym_bool] = ACTIONS(4978), [sym_byte] = ACTIONS(4978), [sym_ubyte] = ACTIONS(4978), [sym_char] = ACTIONS(4978), [sym_short] = ACTIONS(4978), [sym_ushort] = ACTIONS(4978), [sym_int] = ACTIONS(4978), [sym_uint] = ACTIONS(4978), [sym_long] = ACTIONS(4978), [sym_ulong] = ACTIONS(4978), [sym_cent] = ACTIONS(4978), [sym_ucent] = ACTIONS(4978), [sym_wchar] = ACTIONS(4978), [sym_dchar] = ACTIONS(4978), [sym_float] = ACTIONS(4978), [sym_double] = ACTIONS(4978), [sym_real] = ACTIONS(4978), [sym_ifloat] = ACTIONS(4978), [sym_idouble] = ACTIONS(4978), [sym_ireal] = ACTIONS(4978), [sym_cfloat] = ACTIONS(4978), [sym_cdouble] = ACTIONS(4978), [sym_creal] = ACTIONS(4978), [sym_size_t] = ACTIONS(4978), [sym_ptrdiff_t] = ACTIONS(4978), [sym_string] = ACTIONS(4978), [sym_cstring] = ACTIONS(4978), [sym_dstring] = ACTIONS(4978), [sym_wstring] = ACTIONS(4978), [sym_noreturn] = ACTIONS(4978), [sym_true] = ACTIONS(4978), [sym_false] = ACTIONS(4978), [sym_null] = ACTIONS(4978), [sym_super] = ACTIONS(4978), [sym_this] = ACTIONS(4978), [sym_abstract] = ACTIONS(4978), [sym_alias] = ACTIONS(4978), [sym_align] = ACTIONS(4978), [sym_asm] = ACTIONS(4978), [sym_assert] = ACTIONS(4978), [sym_auto] = ACTIONS(4978), [sym_break] = ACTIONS(4978), [sym_case] = ACTIONS(4978), [sym_cast] = ACTIONS(4978), [sym_class] = ACTIONS(4978), [sym_const] = ACTIONS(4978), [sym_continue] = ACTIONS(4978), [sym_debug] = ACTIONS(4978), [sym_default] = ACTIONS(4978), [sym_delegate] = ACTIONS(4978), [sym_delete] = ACTIONS(4978), [sym_deprecated] = ACTIONS(4978), [sym_do] = ACTIONS(4978), [sym_else] = ACTIONS(4978), [sym_enum] = ACTIONS(4978), [sym_export] = ACTIONS(4978), [sym_extern] = ACTIONS(4978), [sym_final] = ACTIONS(4978), [sym_for] = ACTIONS(4978), [sym_foreach] = ACTIONS(4978), [sym_foreach_reverse] = ACTIONS(4978), [sym_function] = ACTIONS(4978), [sym_goto] = ACTIONS(4978), [sym_if] = ACTIONS(4978), [sym_immutable] = ACTIONS(4978), [sym_import] = ACTIONS(4978), [sym_in] = ACTIONS(4978), [sym_inout] = ACTIONS(4978), [sym_interface] = ACTIONS(4978), [sym_invariant] = ACTIONS(4978), [sym_is] = ACTIONS(4978), [sym_mixin] = ACTIONS(4978), [sym_new] = ACTIONS(4978), [sym_nothrow] = ACTIONS(4978), [sym_out] = ACTIONS(4978), [sym_override] = ACTIONS(4978), [sym_package] = ACTIONS(4978), [sym_pragma] = ACTIONS(4978), [sym_private] = ACTIONS(4978), [sym_protected] = ACTIONS(4978), [sym_public] = ACTIONS(4978), [sym_pure] = ACTIONS(4978), [sym_ref] = ACTIONS(4978), [sym_return] = ACTIONS(4978), [sym_scope] = ACTIONS(4978), [sym_shared] = ACTIONS(4978), [sym_static] = ACTIONS(4978), [sym_struct] = ACTIONS(4978), [sym_switch] = ACTIONS(4978), [sym_synchronized] = ACTIONS(4978), [sym_template] = ACTIONS(4978), [sym_throw] = ACTIONS(4978), [sym_try] = ACTIONS(4978), [sym_typeid] = ACTIONS(4978), [sym_typeof] = ACTIONS(4978), [sym_union] = ACTIONS(4978), [sym_unittest] = ACTIONS(4978), [sym_version] = ACTIONS(4978), [sym_while] = ACTIONS(4978), [sym_with] = ACTIONS(4978), [sym_gshared] = ACTIONS(4978), [sym_traits] = ACTIONS(4978), [sym_vector] = ACTIONS(4978), [sym_void] = ACTIONS(4978), [anon_sym_BQUOTE] = ACTIONS(4980), [anon_sym_r_DQUOTE] = ACTIONS(4980), [anon_sym_x_DQUOTE] = ACTIONS(4980), [anon_sym_DQUOTE] = ACTIONS(4980), [anon_sym_i_BQUOTE] = ACTIONS(4980), [anon_sym_i_DQUOTE] = ACTIONS(4980), [anon_sym_iq_LBRACE] = ACTIONS(4980), [aux_sym_char_literal_token1] = ACTIONS(4980), [anon_sym_SQUOTE] = ACTIONS(4978), [anon_sym___DATE__] = ACTIONS(4978), [anon_sym___FILE__] = ACTIONS(4978), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4978), [anon_sym___FUNCTION__] = ACTIONS(4978), [anon_sym___LINE__] = ACTIONS(4978), [anon_sym___MODULE__] = ACTIONS(4978), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4978), [anon_sym___TIME__] = ACTIONS(4978), [anon_sym___TIMESTAMP__] = ACTIONS(4978), [anon_sym___VENDOR__] = ACTIONS(4978), [anon_sym___VERSION__] = ACTIONS(4978), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4980), [sym_float_literal] = ACTIONS(4980), [sym__string] = ACTIONS(4980), }, [1595] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_asm] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_break] = ACTIONS(2665), [sym_case] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_continue] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_default] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_for] = ACTIONS(2665), [sym_foreach] = ACTIONS(2665), [sym_foreach_reverse] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_goto] = ACTIONS(2665), [sym_if] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_switch] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_try] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_with] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [1596] = { [sym_identifier] = ACTIONS(4594), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4596), [anon_sym_RBRACE] = ACTIONS(4596), [anon_sym_LBRACE] = ACTIONS(4596), [anon_sym_DOT] = ACTIONS(4596), [anon_sym_AMP] = ACTIONS(4596), [anon_sym_DASH] = ACTIONS(4594), [anon_sym_DASH_DASH] = ACTIONS(4596), [anon_sym_PLUS] = ACTIONS(4594), [anon_sym_PLUS_PLUS] = ACTIONS(4596), [anon_sym_BANG] = ACTIONS(4596), [anon_sym_LPAREN] = ACTIONS(4596), [anon_sym_RPAREN] = ACTIONS(4596), [anon_sym_LBRACK] = ACTIONS(4596), [anon_sym_SEMI] = ACTIONS(4596), [anon_sym_DOLLAR] = ACTIONS(4596), [anon_sym_STAR] = ACTIONS(4596), [anon_sym_TILDE] = ACTIONS(4596), [anon_sym_AT] = ACTIONS(4596), [sym_bool] = ACTIONS(4594), [sym_byte] = ACTIONS(4594), [sym_ubyte] = ACTIONS(4594), [sym_char] = ACTIONS(4594), [sym_short] = ACTIONS(4594), [sym_ushort] = ACTIONS(4594), [sym_int] = ACTIONS(4594), [sym_uint] = ACTIONS(4594), [sym_long] = ACTIONS(4594), [sym_ulong] = ACTIONS(4594), [sym_cent] = ACTIONS(4594), [sym_ucent] = ACTIONS(4594), [sym_wchar] = ACTIONS(4594), [sym_dchar] = ACTIONS(4594), [sym_float] = ACTIONS(4594), [sym_double] = ACTIONS(4594), [sym_real] = ACTIONS(4594), [sym_ifloat] = ACTIONS(4594), [sym_idouble] = ACTIONS(4594), [sym_ireal] = ACTIONS(4594), [sym_cfloat] = ACTIONS(4594), [sym_cdouble] = ACTIONS(4594), [sym_creal] = ACTIONS(4594), [sym_size_t] = ACTIONS(4594), [sym_ptrdiff_t] = ACTIONS(4594), [sym_string] = ACTIONS(4594), [sym_cstring] = ACTIONS(4594), [sym_dstring] = ACTIONS(4594), [sym_wstring] = ACTIONS(4594), [sym_noreturn] = ACTIONS(4594), [sym_true] = ACTIONS(4594), [sym_false] = ACTIONS(4594), [sym_null] = ACTIONS(4594), [sym_super] = ACTIONS(4594), [sym_this] = ACTIONS(4594), [sym_abstract] = ACTIONS(4594), [sym_alias] = ACTIONS(4594), [sym_align] = ACTIONS(4594), [sym_asm] = ACTIONS(4594), [sym_assert] = ACTIONS(4594), [sym_auto] = ACTIONS(4594), [sym_break] = ACTIONS(4594), [sym_case] = ACTIONS(4594), [sym_cast] = ACTIONS(4594), [sym_class] = ACTIONS(4594), [sym_const] = ACTIONS(4594), [sym_continue] = ACTIONS(4594), [sym_debug] = ACTIONS(4594), [sym_default] = ACTIONS(4594), [sym_delegate] = ACTIONS(4594), [sym_delete] = ACTIONS(4594), [sym_deprecated] = ACTIONS(4594), [sym_do] = ACTIONS(4594), [sym_else] = ACTIONS(4594), [sym_enum] = ACTIONS(4594), [sym_export] = ACTIONS(4594), [sym_extern] = ACTIONS(4594), [sym_final] = ACTIONS(4594), [sym_for] = ACTIONS(4594), [sym_foreach] = ACTIONS(4594), [sym_foreach_reverse] = ACTIONS(4594), [sym_function] = ACTIONS(4594), [sym_goto] = ACTIONS(4594), [sym_if] = ACTIONS(4594), [sym_immutable] = ACTIONS(4594), [sym_import] = ACTIONS(4594), [sym_in] = ACTIONS(4594), [sym_inout] = ACTIONS(4594), [sym_interface] = ACTIONS(4594), [sym_invariant] = ACTIONS(4594), [sym_is] = ACTIONS(4594), [sym_mixin] = ACTIONS(4594), [sym_new] = ACTIONS(4594), [sym_nothrow] = ACTIONS(4594), [sym_out] = ACTIONS(4594), [sym_override] = ACTIONS(4594), [sym_package] = ACTIONS(4594), [sym_pragma] = ACTIONS(4594), [sym_private] = ACTIONS(4594), [sym_protected] = ACTIONS(4594), [sym_public] = ACTIONS(4594), [sym_pure] = ACTIONS(4594), [sym_ref] = ACTIONS(4594), [sym_return] = ACTIONS(4594), [sym_scope] = ACTIONS(4594), [sym_shared] = ACTIONS(4594), [sym_static] = ACTIONS(4594), [sym_struct] = ACTIONS(4594), [sym_switch] = ACTIONS(4594), [sym_synchronized] = ACTIONS(4594), [sym_template] = ACTIONS(4594), [sym_throw] = ACTIONS(4594), [sym_try] = ACTIONS(4594), [sym_typeid] = ACTIONS(4594), [sym_typeof] = ACTIONS(4594), [sym_union] = ACTIONS(4594), [sym_unittest] = ACTIONS(4594), [sym_version] = ACTIONS(4594), [sym_while] = ACTIONS(4594), [sym_with] = ACTIONS(4594), [sym_gshared] = ACTIONS(4594), [sym_traits] = ACTIONS(4594), [sym_vector] = ACTIONS(4594), [sym_void] = ACTIONS(4594), [anon_sym_BQUOTE] = ACTIONS(4596), [anon_sym_r_DQUOTE] = ACTIONS(4596), [anon_sym_x_DQUOTE] = ACTIONS(4596), [anon_sym_DQUOTE] = ACTIONS(4596), [anon_sym_i_BQUOTE] = ACTIONS(4596), [anon_sym_i_DQUOTE] = ACTIONS(4596), [anon_sym_iq_LBRACE] = ACTIONS(4596), [aux_sym_char_literal_token1] = ACTIONS(4596), [anon_sym_SQUOTE] = ACTIONS(4594), [anon_sym___DATE__] = ACTIONS(4594), [anon_sym___FILE__] = ACTIONS(4594), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4594), [anon_sym___FUNCTION__] = ACTIONS(4594), [anon_sym___LINE__] = ACTIONS(4594), [anon_sym___MODULE__] = ACTIONS(4594), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4594), [anon_sym___TIME__] = ACTIONS(4594), [anon_sym___TIMESTAMP__] = ACTIONS(4594), [anon_sym___VENDOR__] = ACTIONS(4594), [anon_sym___VERSION__] = ACTIONS(4594), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4596), [sym_float_literal] = ACTIONS(4596), [sym__string] = ACTIONS(4596), }, [1597] = { [sym_identifier] = ACTIONS(4880), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4882), [anon_sym_RBRACE] = ACTIONS(4882), [anon_sym_LBRACE] = ACTIONS(4882), [anon_sym_DOT] = ACTIONS(4882), [anon_sym_AMP] = ACTIONS(4882), [anon_sym_DASH] = ACTIONS(4880), [anon_sym_DASH_DASH] = ACTIONS(4882), [anon_sym_PLUS] = ACTIONS(4880), [anon_sym_PLUS_PLUS] = ACTIONS(4882), [anon_sym_BANG] = ACTIONS(4882), [anon_sym_LPAREN] = ACTIONS(4882), [anon_sym_RPAREN] = ACTIONS(4882), [anon_sym_LBRACK] = ACTIONS(4882), [anon_sym_SEMI] = ACTIONS(4882), [anon_sym_DOLLAR] = ACTIONS(4882), [anon_sym_STAR] = ACTIONS(4882), [anon_sym_TILDE] = ACTIONS(4882), [anon_sym_AT] = ACTIONS(4882), [sym_bool] = ACTIONS(4880), [sym_byte] = ACTIONS(4880), [sym_ubyte] = ACTIONS(4880), [sym_char] = ACTIONS(4880), [sym_short] = ACTIONS(4880), [sym_ushort] = ACTIONS(4880), [sym_int] = ACTIONS(4880), [sym_uint] = ACTIONS(4880), [sym_long] = ACTIONS(4880), [sym_ulong] = ACTIONS(4880), [sym_cent] = ACTIONS(4880), [sym_ucent] = ACTIONS(4880), [sym_wchar] = ACTIONS(4880), [sym_dchar] = ACTIONS(4880), [sym_float] = ACTIONS(4880), [sym_double] = ACTIONS(4880), [sym_real] = ACTIONS(4880), [sym_ifloat] = ACTIONS(4880), [sym_idouble] = ACTIONS(4880), [sym_ireal] = ACTIONS(4880), [sym_cfloat] = ACTIONS(4880), [sym_cdouble] = ACTIONS(4880), [sym_creal] = ACTIONS(4880), [sym_size_t] = ACTIONS(4880), [sym_ptrdiff_t] = ACTIONS(4880), [sym_string] = ACTIONS(4880), [sym_cstring] = ACTIONS(4880), [sym_dstring] = ACTIONS(4880), [sym_wstring] = ACTIONS(4880), [sym_noreturn] = ACTIONS(4880), [sym_true] = ACTIONS(4880), [sym_false] = ACTIONS(4880), [sym_null] = ACTIONS(4880), [sym_super] = ACTIONS(4880), [sym_this] = ACTIONS(4880), [sym_abstract] = ACTIONS(4880), [sym_alias] = ACTIONS(4880), [sym_align] = ACTIONS(4880), [sym_asm] = ACTIONS(4880), [sym_assert] = ACTIONS(4880), [sym_auto] = ACTIONS(4880), [sym_break] = ACTIONS(4880), [sym_case] = ACTIONS(4880), [sym_cast] = ACTIONS(4880), [sym_class] = ACTIONS(4880), [sym_const] = ACTIONS(4880), [sym_continue] = ACTIONS(4880), [sym_debug] = ACTIONS(4880), [sym_default] = ACTIONS(4880), [sym_delegate] = ACTIONS(4880), [sym_delete] = ACTIONS(4880), [sym_deprecated] = ACTIONS(4880), [sym_do] = ACTIONS(4880), [sym_else] = ACTIONS(4880), [sym_enum] = ACTIONS(4880), [sym_export] = ACTIONS(4880), [sym_extern] = ACTIONS(4880), [sym_final] = ACTIONS(4880), [sym_for] = ACTIONS(4880), [sym_foreach] = ACTIONS(4880), [sym_foreach_reverse] = ACTIONS(4880), [sym_function] = ACTIONS(4880), [sym_goto] = ACTIONS(4880), [sym_if] = ACTIONS(4880), [sym_immutable] = ACTIONS(4880), [sym_import] = ACTIONS(4880), [sym_in] = ACTIONS(4880), [sym_inout] = ACTIONS(4880), [sym_interface] = ACTIONS(4880), [sym_invariant] = ACTIONS(4880), [sym_is] = ACTIONS(4880), [sym_mixin] = ACTIONS(4880), [sym_new] = ACTIONS(4880), [sym_nothrow] = ACTIONS(4880), [sym_out] = ACTIONS(4880), [sym_override] = ACTIONS(4880), [sym_package] = ACTIONS(4880), [sym_pragma] = ACTIONS(4880), [sym_private] = ACTIONS(4880), [sym_protected] = ACTIONS(4880), [sym_public] = ACTIONS(4880), [sym_pure] = ACTIONS(4880), [sym_ref] = ACTIONS(4880), [sym_return] = ACTIONS(4880), [sym_scope] = ACTIONS(4880), [sym_shared] = ACTIONS(4880), [sym_static] = ACTIONS(4880), [sym_struct] = ACTIONS(4880), [sym_switch] = ACTIONS(4880), [sym_synchronized] = ACTIONS(4880), [sym_template] = ACTIONS(4880), [sym_throw] = ACTIONS(4880), [sym_try] = ACTIONS(4880), [sym_typeid] = ACTIONS(4880), [sym_typeof] = ACTIONS(4880), [sym_union] = ACTIONS(4880), [sym_unittest] = ACTIONS(4880), [sym_version] = ACTIONS(4880), [sym_while] = ACTIONS(4880), [sym_with] = ACTIONS(4880), [sym_gshared] = ACTIONS(4880), [sym_traits] = ACTIONS(4880), [sym_vector] = ACTIONS(4880), [sym_void] = ACTIONS(4880), [anon_sym_BQUOTE] = ACTIONS(4882), [anon_sym_r_DQUOTE] = ACTIONS(4882), [anon_sym_x_DQUOTE] = ACTIONS(4882), [anon_sym_DQUOTE] = ACTIONS(4882), [anon_sym_i_BQUOTE] = ACTIONS(4882), [anon_sym_i_DQUOTE] = ACTIONS(4882), [anon_sym_iq_LBRACE] = ACTIONS(4882), [aux_sym_char_literal_token1] = ACTIONS(4882), [anon_sym_SQUOTE] = ACTIONS(4880), [anon_sym___DATE__] = ACTIONS(4880), [anon_sym___FILE__] = ACTIONS(4880), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4880), [anon_sym___FUNCTION__] = ACTIONS(4880), [anon_sym___LINE__] = ACTIONS(4880), [anon_sym___MODULE__] = ACTIONS(4880), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4880), [anon_sym___TIME__] = ACTIONS(4880), [anon_sym___TIMESTAMP__] = ACTIONS(4880), [anon_sym___VENDOR__] = ACTIONS(4880), [anon_sym___VERSION__] = ACTIONS(4880), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4882), [sym_float_literal] = ACTIONS(4882), [sym__string] = ACTIONS(4882), }, [1598] = { [sym_identifier] = ACTIONS(4884), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4886), [anon_sym_RBRACE] = ACTIONS(4886), [anon_sym_LBRACE] = ACTIONS(4886), [anon_sym_DOT] = ACTIONS(4886), [anon_sym_AMP] = ACTIONS(4886), [anon_sym_DASH] = ACTIONS(4884), [anon_sym_DASH_DASH] = ACTIONS(4886), [anon_sym_PLUS] = ACTIONS(4884), [anon_sym_PLUS_PLUS] = ACTIONS(4886), [anon_sym_BANG] = ACTIONS(4886), [anon_sym_LPAREN] = ACTIONS(4886), [anon_sym_RPAREN] = ACTIONS(4886), [anon_sym_LBRACK] = ACTIONS(4886), [anon_sym_SEMI] = ACTIONS(4886), [anon_sym_DOLLAR] = ACTIONS(4886), [anon_sym_STAR] = ACTIONS(4886), [anon_sym_TILDE] = ACTIONS(4886), [anon_sym_AT] = ACTIONS(4886), [sym_bool] = ACTIONS(4884), [sym_byte] = ACTIONS(4884), [sym_ubyte] = ACTIONS(4884), [sym_char] = ACTIONS(4884), [sym_short] = ACTIONS(4884), [sym_ushort] = ACTIONS(4884), [sym_int] = ACTIONS(4884), [sym_uint] = ACTIONS(4884), [sym_long] = ACTIONS(4884), [sym_ulong] = ACTIONS(4884), [sym_cent] = ACTIONS(4884), [sym_ucent] = ACTIONS(4884), [sym_wchar] = ACTIONS(4884), [sym_dchar] = ACTIONS(4884), [sym_float] = ACTIONS(4884), [sym_double] = ACTIONS(4884), [sym_real] = ACTIONS(4884), [sym_ifloat] = ACTIONS(4884), [sym_idouble] = ACTIONS(4884), [sym_ireal] = ACTIONS(4884), [sym_cfloat] = ACTIONS(4884), [sym_cdouble] = ACTIONS(4884), [sym_creal] = ACTIONS(4884), [sym_size_t] = ACTIONS(4884), [sym_ptrdiff_t] = ACTIONS(4884), [sym_string] = ACTIONS(4884), [sym_cstring] = ACTIONS(4884), [sym_dstring] = ACTIONS(4884), [sym_wstring] = ACTIONS(4884), [sym_noreturn] = ACTIONS(4884), [sym_true] = ACTIONS(4884), [sym_false] = ACTIONS(4884), [sym_null] = ACTIONS(4884), [sym_super] = ACTIONS(4884), [sym_this] = ACTIONS(4884), [sym_abstract] = ACTIONS(4884), [sym_alias] = ACTIONS(4884), [sym_align] = ACTIONS(4884), [sym_asm] = ACTIONS(4884), [sym_assert] = ACTIONS(4884), [sym_auto] = ACTIONS(4884), [sym_break] = ACTIONS(4884), [sym_case] = ACTIONS(4884), [sym_cast] = ACTIONS(4884), [sym_class] = ACTIONS(4884), [sym_const] = ACTIONS(4884), [sym_continue] = ACTIONS(4884), [sym_debug] = ACTIONS(4884), [sym_default] = ACTIONS(4884), [sym_delegate] = ACTIONS(4884), [sym_delete] = ACTIONS(4884), [sym_deprecated] = ACTIONS(4884), [sym_do] = ACTIONS(4884), [sym_else] = ACTIONS(4884), [sym_enum] = ACTIONS(4884), [sym_export] = ACTIONS(4884), [sym_extern] = ACTIONS(4884), [sym_final] = ACTIONS(4884), [sym_for] = ACTIONS(4884), [sym_foreach] = ACTIONS(4884), [sym_foreach_reverse] = ACTIONS(4884), [sym_function] = ACTIONS(4884), [sym_goto] = ACTIONS(4884), [sym_if] = ACTIONS(4884), [sym_immutable] = ACTIONS(4884), [sym_import] = ACTIONS(4884), [sym_in] = ACTIONS(4884), [sym_inout] = ACTIONS(4884), [sym_interface] = ACTIONS(4884), [sym_invariant] = ACTIONS(4884), [sym_is] = ACTIONS(4884), [sym_mixin] = ACTIONS(4884), [sym_new] = ACTIONS(4884), [sym_nothrow] = ACTIONS(4884), [sym_out] = ACTIONS(4884), [sym_override] = ACTIONS(4884), [sym_package] = ACTIONS(4884), [sym_pragma] = ACTIONS(4884), [sym_private] = ACTIONS(4884), [sym_protected] = ACTIONS(4884), [sym_public] = ACTIONS(4884), [sym_pure] = ACTIONS(4884), [sym_ref] = ACTIONS(4884), [sym_return] = ACTIONS(4884), [sym_scope] = ACTIONS(4884), [sym_shared] = ACTIONS(4884), [sym_static] = ACTIONS(4884), [sym_struct] = ACTIONS(4884), [sym_switch] = ACTIONS(4884), [sym_synchronized] = ACTIONS(4884), [sym_template] = ACTIONS(4884), [sym_throw] = ACTIONS(4884), [sym_try] = ACTIONS(4884), [sym_typeid] = ACTIONS(4884), [sym_typeof] = ACTIONS(4884), [sym_union] = ACTIONS(4884), [sym_unittest] = ACTIONS(4884), [sym_version] = ACTIONS(4884), [sym_while] = ACTIONS(4884), [sym_with] = ACTIONS(4884), [sym_gshared] = ACTIONS(4884), [sym_traits] = ACTIONS(4884), [sym_vector] = ACTIONS(4884), [sym_void] = ACTIONS(4884), [anon_sym_BQUOTE] = ACTIONS(4886), [anon_sym_r_DQUOTE] = ACTIONS(4886), [anon_sym_x_DQUOTE] = ACTIONS(4886), [anon_sym_DQUOTE] = ACTIONS(4886), [anon_sym_i_BQUOTE] = ACTIONS(4886), [anon_sym_i_DQUOTE] = ACTIONS(4886), [anon_sym_iq_LBRACE] = ACTIONS(4886), [aux_sym_char_literal_token1] = ACTIONS(4886), [anon_sym_SQUOTE] = ACTIONS(4884), [anon_sym___DATE__] = ACTIONS(4884), [anon_sym___FILE__] = ACTIONS(4884), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4884), [anon_sym___FUNCTION__] = ACTIONS(4884), [anon_sym___LINE__] = ACTIONS(4884), [anon_sym___MODULE__] = ACTIONS(4884), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4884), [anon_sym___TIME__] = ACTIONS(4884), [anon_sym___TIMESTAMP__] = ACTIONS(4884), [anon_sym___VENDOR__] = ACTIONS(4884), [anon_sym___VERSION__] = ACTIONS(4884), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4886), [sym_float_literal] = ACTIONS(4886), [sym__string] = ACTIONS(4886), }, [1599] = { [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_RBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [anon_sym_AT] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_abstract] = ACTIONS(4149), [sym_alias] = ACTIONS(4149), [sym_align] = ACTIONS(4149), [sym_asm] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_break] = ACTIONS(4149), [sym_case] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_class] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_continue] = ACTIONS(4149), [sym_debug] = ACTIONS(4149), [sym_default] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_deprecated] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_enum] = ACTIONS(4149), [sym_export] = ACTIONS(4149), [sym_extern] = ACTIONS(4149), [sym_final] = ACTIONS(4149), [sym_for] = ACTIONS(4149), [sym_foreach] = ACTIONS(4149), [sym_foreach_reverse] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_goto] = ACTIONS(4149), [sym_if] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_interface] = ACTIONS(4149), [sym_invariant] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_nothrow] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_override] = ACTIONS(4149), [sym_package] = ACTIONS(4149), [sym_pragma] = ACTIONS(4149), [sym_private] = ACTIONS(4149), [sym_protected] = ACTIONS(4149), [sym_public] = ACTIONS(4149), [sym_pure] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_return] = ACTIONS(4149), [sym_scope] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_static] = ACTIONS(4149), [sym_struct] = ACTIONS(4149), [sym_switch] = ACTIONS(4149), [sym_synchronized] = ACTIONS(4149), [sym_template] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_try] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_union] = ACTIONS(4149), [sym_unittest] = ACTIONS(4149), [sym_version] = ACTIONS(4149), [sym_while] = ACTIONS(4149), [sym_with] = ACTIONS(4149), [sym_gshared] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [1600] = { [sym_identifier] = ACTIONS(4918), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4920), [anon_sym_RBRACE] = ACTIONS(4920), [anon_sym_LBRACE] = ACTIONS(4920), [anon_sym_DOT] = ACTIONS(4920), [anon_sym_AMP] = ACTIONS(4920), [anon_sym_DASH] = ACTIONS(4918), [anon_sym_DASH_DASH] = ACTIONS(4920), [anon_sym_PLUS] = ACTIONS(4918), [anon_sym_PLUS_PLUS] = ACTIONS(4920), [anon_sym_BANG] = ACTIONS(4920), [anon_sym_LPAREN] = ACTIONS(4920), [anon_sym_RPAREN] = ACTIONS(4920), [anon_sym_LBRACK] = ACTIONS(4920), [anon_sym_SEMI] = ACTIONS(4920), [anon_sym_DOLLAR] = ACTIONS(4920), [anon_sym_STAR] = ACTIONS(4920), [anon_sym_TILDE] = ACTIONS(4920), [anon_sym_AT] = ACTIONS(4920), [sym_bool] = ACTIONS(4918), [sym_byte] = ACTIONS(4918), [sym_ubyte] = ACTIONS(4918), [sym_char] = ACTIONS(4918), [sym_short] = ACTIONS(4918), [sym_ushort] = ACTIONS(4918), [sym_int] = ACTIONS(4918), [sym_uint] = ACTIONS(4918), [sym_long] = ACTIONS(4918), [sym_ulong] = ACTIONS(4918), [sym_cent] = ACTIONS(4918), [sym_ucent] = ACTIONS(4918), [sym_wchar] = ACTIONS(4918), [sym_dchar] = ACTIONS(4918), [sym_float] = ACTIONS(4918), [sym_double] = ACTIONS(4918), [sym_real] = ACTIONS(4918), [sym_ifloat] = ACTIONS(4918), [sym_idouble] = ACTIONS(4918), [sym_ireal] = ACTIONS(4918), [sym_cfloat] = ACTIONS(4918), [sym_cdouble] = ACTIONS(4918), [sym_creal] = ACTIONS(4918), [sym_size_t] = ACTIONS(4918), [sym_ptrdiff_t] = ACTIONS(4918), [sym_string] = ACTIONS(4918), [sym_cstring] = ACTIONS(4918), [sym_dstring] = ACTIONS(4918), [sym_wstring] = ACTIONS(4918), [sym_noreturn] = ACTIONS(4918), [sym_true] = ACTIONS(4918), [sym_false] = ACTIONS(4918), [sym_null] = ACTIONS(4918), [sym_super] = ACTIONS(4918), [sym_this] = ACTIONS(4918), [sym_abstract] = ACTIONS(4918), [sym_alias] = ACTIONS(4918), [sym_align] = ACTIONS(4918), [sym_asm] = ACTIONS(4918), [sym_assert] = ACTIONS(4918), [sym_auto] = ACTIONS(4918), [sym_break] = ACTIONS(4918), [sym_case] = ACTIONS(4918), [sym_cast] = ACTIONS(4918), [sym_class] = ACTIONS(4918), [sym_const] = ACTIONS(4918), [sym_continue] = ACTIONS(4918), [sym_debug] = ACTIONS(4918), [sym_default] = ACTIONS(4918), [sym_delegate] = ACTIONS(4918), [sym_delete] = ACTIONS(4918), [sym_deprecated] = ACTIONS(4918), [sym_do] = ACTIONS(4918), [sym_else] = ACTIONS(4918), [sym_enum] = ACTIONS(4918), [sym_export] = ACTIONS(4918), [sym_extern] = ACTIONS(4918), [sym_final] = ACTIONS(4918), [sym_for] = ACTIONS(4918), [sym_foreach] = ACTIONS(4918), [sym_foreach_reverse] = ACTIONS(4918), [sym_function] = ACTIONS(4918), [sym_goto] = ACTIONS(4918), [sym_if] = ACTIONS(4918), [sym_immutable] = ACTIONS(4918), [sym_import] = ACTIONS(4918), [sym_in] = ACTIONS(4918), [sym_inout] = ACTIONS(4918), [sym_interface] = ACTIONS(4918), [sym_invariant] = ACTIONS(4918), [sym_is] = ACTIONS(4918), [sym_mixin] = ACTIONS(4918), [sym_new] = ACTIONS(4918), [sym_nothrow] = ACTIONS(4918), [sym_out] = ACTIONS(4918), [sym_override] = ACTIONS(4918), [sym_package] = ACTIONS(4918), [sym_pragma] = ACTIONS(4918), [sym_private] = ACTIONS(4918), [sym_protected] = ACTIONS(4918), [sym_public] = ACTIONS(4918), [sym_pure] = ACTIONS(4918), [sym_ref] = ACTIONS(4918), [sym_return] = ACTIONS(4918), [sym_scope] = ACTIONS(4918), [sym_shared] = ACTIONS(4918), [sym_static] = ACTIONS(4918), [sym_struct] = ACTIONS(4918), [sym_switch] = ACTIONS(4918), [sym_synchronized] = ACTIONS(4918), [sym_template] = ACTIONS(4918), [sym_throw] = ACTIONS(4918), [sym_try] = ACTIONS(4918), [sym_typeid] = ACTIONS(4918), [sym_typeof] = ACTIONS(4918), [sym_union] = ACTIONS(4918), [sym_unittest] = ACTIONS(4918), [sym_version] = ACTIONS(4918), [sym_while] = ACTIONS(4918), [sym_with] = ACTIONS(4918), [sym_gshared] = ACTIONS(4918), [sym_traits] = ACTIONS(4918), [sym_vector] = ACTIONS(4918), [sym_void] = ACTIONS(4918), [anon_sym_BQUOTE] = ACTIONS(4920), [anon_sym_r_DQUOTE] = ACTIONS(4920), [anon_sym_x_DQUOTE] = ACTIONS(4920), [anon_sym_DQUOTE] = ACTIONS(4920), [anon_sym_i_BQUOTE] = ACTIONS(4920), [anon_sym_i_DQUOTE] = ACTIONS(4920), [anon_sym_iq_LBRACE] = ACTIONS(4920), [aux_sym_char_literal_token1] = ACTIONS(4920), [anon_sym_SQUOTE] = ACTIONS(4918), [anon_sym___DATE__] = ACTIONS(4918), [anon_sym___FILE__] = ACTIONS(4918), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4918), [anon_sym___FUNCTION__] = ACTIONS(4918), [anon_sym___LINE__] = ACTIONS(4918), [anon_sym___MODULE__] = ACTIONS(4918), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4918), [anon_sym___TIME__] = ACTIONS(4918), [anon_sym___TIMESTAMP__] = ACTIONS(4918), [anon_sym___VENDOR__] = ACTIONS(4918), [anon_sym___VERSION__] = ACTIONS(4918), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4920), [sym_float_literal] = ACTIONS(4920), [sym__string] = ACTIONS(4920), }, [1601] = { [sym_identifier] = ACTIONS(4912), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4914), [anon_sym_RBRACE] = ACTIONS(4914), [anon_sym_LBRACE] = ACTIONS(4914), [anon_sym_DOT] = ACTIONS(4914), [anon_sym_AMP] = ACTIONS(4914), [anon_sym_DASH] = ACTIONS(4912), [anon_sym_DASH_DASH] = ACTIONS(4914), [anon_sym_PLUS] = ACTIONS(4912), [anon_sym_PLUS_PLUS] = ACTIONS(4914), [anon_sym_BANG] = ACTIONS(4914), [anon_sym_LPAREN] = ACTIONS(4914), [anon_sym_RPAREN] = ACTIONS(4914), [anon_sym_LBRACK] = ACTIONS(4914), [anon_sym_SEMI] = ACTIONS(4914), [anon_sym_DOLLAR] = ACTIONS(4914), [anon_sym_STAR] = ACTIONS(4914), [anon_sym_TILDE] = ACTIONS(4914), [anon_sym_AT] = ACTIONS(4914), [sym_bool] = ACTIONS(4912), [sym_byte] = ACTIONS(4912), [sym_ubyte] = ACTIONS(4912), [sym_char] = ACTIONS(4912), [sym_short] = ACTIONS(4912), [sym_ushort] = ACTIONS(4912), [sym_int] = ACTIONS(4912), [sym_uint] = ACTIONS(4912), [sym_long] = ACTIONS(4912), [sym_ulong] = ACTIONS(4912), [sym_cent] = ACTIONS(4912), [sym_ucent] = ACTIONS(4912), [sym_wchar] = ACTIONS(4912), [sym_dchar] = ACTIONS(4912), [sym_float] = ACTIONS(4912), [sym_double] = ACTIONS(4912), [sym_real] = ACTIONS(4912), [sym_ifloat] = ACTIONS(4912), [sym_idouble] = ACTIONS(4912), [sym_ireal] = ACTIONS(4912), [sym_cfloat] = ACTIONS(4912), [sym_cdouble] = ACTIONS(4912), [sym_creal] = ACTIONS(4912), [sym_size_t] = ACTIONS(4912), [sym_ptrdiff_t] = ACTIONS(4912), [sym_string] = ACTIONS(4912), [sym_cstring] = ACTIONS(4912), [sym_dstring] = ACTIONS(4912), [sym_wstring] = ACTIONS(4912), [sym_noreturn] = ACTIONS(4912), [sym_true] = ACTIONS(4912), [sym_false] = ACTIONS(4912), [sym_null] = ACTIONS(4912), [sym_super] = ACTIONS(4912), [sym_this] = ACTIONS(4912), [sym_abstract] = ACTIONS(4912), [sym_alias] = ACTIONS(4912), [sym_align] = ACTIONS(4912), [sym_asm] = ACTIONS(4912), [sym_assert] = ACTIONS(4912), [sym_auto] = ACTIONS(4912), [sym_break] = ACTIONS(4912), [sym_case] = ACTIONS(4912), [sym_cast] = ACTIONS(4912), [sym_class] = ACTIONS(4912), [sym_const] = ACTIONS(4912), [sym_continue] = ACTIONS(4912), [sym_debug] = ACTIONS(4912), [sym_default] = ACTIONS(4912), [sym_delegate] = ACTIONS(4912), [sym_delete] = ACTIONS(4912), [sym_deprecated] = ACTIONS(4912), [sym_do] = ACTIONS(4912), [sym_else] = ACTIONS(4912), [sym_enum] = ACTIONS(4912), [sym_export] = ACTIONS(4912), [sym_extern] = ACTIONS(4912), [sym_final] = ACTIONS(4912), [sym_for] = ACTIONS(4912), [sym_foreach] = ACTIONS(4912), [sym_foreach_reverse] = ACTIONS(4912), [sym_function] = ACTIONS(4912), [sym_goto] = ACTIONS(4912), [sym_if] = ACTIONS(4912), [sym_immutable] = ACTIONS(4912), [sym_import] = ACTIONS(4912), [sym_in] = ACTIONS(4912), [sym_inout] = ACTIONS(4912), [sym_interface] = ACTIONS(4912), [sym_invariant] = ACTIONS(4912), [sym_is] = ACTIONS(4912), [sym_mixin] = ACTIONS(4912), [sym_new] = ACTIONS(4912), [sym_nothrow] = ACTIONS(4912), [sym_out] = ACTIONS(4912), [sym_override] = ACTIONS(4912), [sym_package] = ACTIONS(4912), [sym_pragma] = ACTIONS(4912), [sym_private] = ACTIONS(4912), [sym_protected] = ACTIONS(4912), [sym_public] = ACTIONS(4912), [sym_pure] = ACTIONS(4912), [sym_ref] = ACTIONS(4912), [sym_return] = ACTIONS(4912), [sym_scope] = ACTIONS(4912), [sym_shared] = ACTIONS(4912), [sym_static] = ACTIONS(4912), [sym_struct] = ACTIONS(4912), [sym_switch] = ACTIONS(4912), [sym_synchronized] = ACTIONS(4912), [sym_template] = ACTIONS(4912), [sym_throw] = ACTIONS(4912), [sym_try] = ACTIONS(4912), [sym_typeid] = ACTIONS(4912), [sym_typeof] = ACTIONS(4912), [sym_union] = ACTIONS(4912), [sym_unittest] = ACTIONS(4912), [sym_version] = ACTIONS(4912), [sym_while] = ACTIONS(4912), [sym_with] = ACTIONS(4912), [sym_gshared] = ACTIONS(4912), [sym_traits] = ACTIONS(4912), [sym_vector] = ACTIONS(4912), [sym_void] = ACTIONS(4912), [anon_sym_BQUOTE] = ACTIONS(4914), [anon_sym_r_DQUOTE] = ACTIONS(4914), [anon_sym_x_DQUOTE] = ACTIONS(4914), [anon_sym_DQUOTE] = ACTIONS(4914), [anon_sym_i_BQUOTE] = ACTIONS(4914), [anon_sym_i_DQUOTE] = ACTIONS(4914), [anon_sym_iq_LBRACE] = ACTIONS(4914), [aux_sym_char_literal_token1] = ACTIONS(4914), [anon_sym_SQUOTE] = ACTIONS(4912), [anon_sym___DATE__] = ACTIONS(4912), [anon_sym___FILE__] = ACTIONS(4912), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4912), [anon_sym___FUNCTION__] = ACTIONS(4912), [anon_sym___LINE__] = ACTIONS(4912), [anon_sym___MODULE__] = ACTIONS(4912), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4912), [anon_sym___TIME__] = ACTIONS(4912), [anon_sym___TIMESTAMP__] = ACTIONS(4912), [anon_sym___VENDOR__] = ACTIONS(4912), [anon_sym___VERSION__] = ACTIONS(4912), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4914), [sym_float_literal] = ACTIONS(4914), [sym__string] = ACTIONS(4914), }, [1602] = { [sym_identifier] = ACTIONS(4374), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4376), [anon_sym_RBRACE] = ACTIONS(4376), [anon_sym_LBRACE] = ACTIONS(4376), [anon_sym_DOT] = ACTIONS(4376), [anon_sym_AMP] = ACTIONS(4376), [anon_sym_DASH] = ACTIONS(4374), [anon_sym_DASH_DASH] = ACTIONS(4376), [anon_sym_PLUS] = ACTIONS(4374), [anon_sym_PLUS_PLUS] = ACTIONS(4376), [anon_sym_BANG] = ACTIONS(4376), [anon_sym_LPAREN] = ACTIONS(4376), [anon_sym_RPAREN] = ACTIONS(4376), [anon_sym_LBRACK] = ACTIONS(4376), [anon_sym_SEMI] = ACTIONS(4376), [anon_sym_DOLLAR] = ACTIONS(4376), [anon_sym_STAR] = ACTIONS(4376), [anon_sym_TILDE] = ACTIONS(4376), [anon_sym_AT] = ACTIONS(4376), [sym_bool] = ACTIONS(4374), [sym_byte] = ACTIONS(4374), [sym_ubyte] = ACTIONS(4374), [sym_char] = ACTIONS(4374), [sym_short] = ACTIONS(4374), [sym_ushort] = ACTIONS(4374), [sym_int] = ACTIONS(4374), [sym_uint] = ACTIONS(4374), [sym_long] = ACTIONS(4374), [sym_ulong] = ACTIONS(4374), [sym_cent] = ACTIONS(4374), [sym_ucent] = ACTIONS(4374), [sym_wchar] = ACTIONS(4374), [sym_dchar] = ACTIONS(4374), [sym_float] = ACTIONS(4374), [sym_double] = ACTIONS(4374), [sym_real] = ACTIONS(4374), [sym_ifloat] = ACTIONS(4374), [sym_idouble] = ACTIONS(4374), [sym_ireal] = ACTIONS(4374), [sym_cfloat] = ACTIONS(4374), [sym_cdouble] = ACTIONS(4374), [sym_creal] = ACTIONS(4374), [sym_size_t] = ACTIONS(4374), [sym_ptrdiff_t] = ACTIONS(4374), [sym_string] = ACTIONS(4374), [sym_cstring] = ACTIONS(4374), [sym_dstring] = ACTIONS(4374), [sym_wstring] = ACTIONS(4374), [sym_noreturn] = ACTIONS(4374), [sym_true] = ACTIONS(4374), [sym_false] = ACTIONS(4374), [sym_null] = ACTIONS(4374), [sym_super] = ACTIONS(4374), [sym_this] = ACTIONS(4374), [sym_abstract] = ACTIONS(4374), [sym_alias] = ACTIONS(4374), [sym_align] = ACTIONS(4374), [sym_asm] = ACTIONS(4374), [sym_assert] = ACTIONS(4374), [sym_auto] = ACTIONS(4374), [sym_break] = ACTIONS(4374), [sym_case] = ACTIONS(4374), [sym_cast] = ACTIONS(4374), [sym_class] = ACTIONS(4374), [sym_const] = ACTIONS(4374), [sym_continue] = ACTIONS(4374), [sym_debug] = ACTIONS(4374), [sym_default] = ACTIONS(4374), [sym_delegate] = ACTIONS(4374), [sym_delete] = ACTIONS(4374), [sym_deprecated] = ACTIONS(4374), [sym_do] = ACTIONS(4374), [sym_else] = ACTIONS(4374), [sym_enum] = ACTIONS(4374), [sym_export] = ACTIONS(4374), [sym_extern] = ACTIONS(4374), [sym_final] = ACTIONS(4374), [sym_for] = ACTIONS(4374), [sym_foreach] = ACTIONS(4374), [sym_foreach_reverse] = ACTIONS(4374), [sym_function] = ACTIONS(4374), [sym_goto] = ACTIONS(4374), [sym_if] = ACTIONS(4374), [sym_immutable] = ACTIONS(4374), [sym_import] = ACTIONS(4374), [sym_in] = ACTIONS(4374), [sym_inout] = ACTIONS(4374), [sym_interface] = ACTIONS(4374), [sym_invariant] = ACTIONS(4374), [sym_is] = ACTIONS(4374), [sym_mixin] = ACTIONS(4374), [sym_new] = ACTIONS(4374), [sym_nothrow] = ACTIONS(4374), [sym_out] = ACTIONS(4374), [sym_override] = ACTIONS(4374), [sym_package] = ACTIONS(4374), [sym_pragma] = ACTIONS(4374), [sym_private] = ACTIONS(4374), [sym_protected] = ACTIONS(4374), [sym_public] = ACTIONS(4374), [sym_pure] = ACTIONS(4374), [sym_ref] = ACTIONS(4374), [sym_return] = ACTIONS(4374), [sym_scope] = ACTIONS(4374), [sym_shared] = ACTIONS(4374), [sym_static] = ACTIONS(4374), [sym_struct] = ACTIONS(4374), [sym_switch] = ACTIONS(4374), [sym_synchronized] = ACTIONS(4374), [sym_template] = ACTIONS(4374), [sym_throw] = ACTIONS(4374), [sym_try] = ACTIONS(4374), [sym_typeid] = ACTIONS(4374), [sym_typeof] = ACTIONS(4374), [sym_union] = ACTIONS(4374), [sym_unittest] = ACTIONS(4374), [sym_version] = ACTIONS(4374), [sym_while] = ACTIONS(4374), [sym_with] = ACTIONS(4374), [sym_gshared] = ACTIONS(4374), [sym_traits] = ACTIONS(4374), [sym_vector] = ACTIONS(4374), [sym_void] = ACTIONS(4374), [anon_sym_BQUOTE] = ACTIONS(4376), [anon_sym_r_DQUOTE] = ACTIONS(4376), [anon_sym_x_DQUOTE] = ACTIONS(4376), [anon_sym_DQUOTE] = ACTIONS(4376), [anon_sym_i_BQUOTE] = ACTIONS(4376), [anon_sym_i_DQUOTE] = ACTIONS(4376), [anon_sym_iq_LBRACE] = ACTIONS(4376), [aux_sym_char_literal_token1] = ACTIONS(4376), [anon_sym_SQUOTE] = ACTIONS(4374), [anon_sym___DATE__] = ACTIONS(4374), [anon_sym___FILE__] = ACTIONS(4374), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4374), [anon_sym___FUNCTION__] = ACTIONS(4374), [anon_sym___LINE__] = ACTIONS(4374), [anon_sym___MODULE__] = ACTIONS(4374), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4374), [anon_sym___TIME__] = ACTIONS(4374), [anon_sym___TIMESTAMP__] = ACTIONS(4374), [anon_sym___VENDOR__] = ACTIONS(4374), [anon_sym___VERSION__] = ACTIONS(4374), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4376), [sym_float_literal] = ACTIONS(4376), [sym__string] = ACTIONS(4376), }, [1603] = { [sym_identifier] = ACTIONS(4402), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4404), [anon_sym_RBRACE] = ACTIONS(4404), [anon_sym_LBRACE] = ACTIONS(4404), [anon_sym_DOT] = ACTIONS(4404), [anon_sym_AMP] = ACTIONS(4404), [anon_sym_DASH] = ACTIONS(4402), [anon_sym_DASH_DASH] = ACTIONS(4404), [anon_sym_PLUS] = ACTIONS(4402), [anon_sym_PLUS_PLUS] = ACTIONS(4404), [anon_sym_BANG] = ACTIONS(4404), [anon_sym_LPAREN] = ACTIONS(4404), [anon_sym_RPAREN] = ACTIONS(4404), [anon_sym_LBRACK] = ACTIONS(4404), [anon_sym_SEMI] = ACTIONS(4404), [anon_sym_DOLLAR] = ACTIONS(4404), [anon_sym_STAR] = ACTIONS(4404), [anon_sym_TILDE] = ACTIONS(4404), [anon_sym_AT] = ACTIONS(4404), [sym_bool] = ACTIONS(4402), [sym_byte] = ACTIONS(4402), [sym_ubyte] = ACTIONS(4402), [sym_char] = ACTIONS(4402), [sym_short] = ACTIONS(4402), [sym_ushort] = ACTIONS(4402), [sym_int] = ACTIONS(4402), [sym_uint] = ACTIONS(4402), [sym_long] = ACTIONS(4402), [sym_ulong] = ACTIONS(4402), [sym_cent] = ACTIONS(4402), [sym_ucent] = ACTIONS(4402), [sym_wchar] = ACTIONS(4402), [sym_dchar] = ACTIONS(4402), [sym_float] = ACTIONS(4402), [sym_double] = ACTIONS(4402), [sym_real] = ACTIONS(4402), [sym_ifloat] = ACTIONS(4402), [sym_idouble] = ACTIONS(4402), [sym_ireal] = ACTIONS(4402), [sym_cfloat] = ACTIONS(4402), [sym_cdouble] = ACTIONS(4402), [sym_creal] = ACTIONS(4402), [sym_size_t] = ACTIONS(4402), [sym_ptrdiff_t] = ACTIONS(4402), [sym_string] = ACTIONS(4402), [sym_cstring] = ACTIONS(4402), [sym_dstring] = ACTIONS(4402), [sym_wstring] = ACTIONS(4402), [sym_noreturn] = ACTIONS(4402), [sym_true] = ACTIONS(4402), [sym_false] = ACTIONS(4402), [sym_null] = ACTIONS(4402), [sym_super] = ACTIONS(4402), [sym_this] = ACTIONS(4402), [sym_abstract] = ACTIONS(4402), [sym_alias] = ACTIONS(4402), [sym_align] = ACTIONS(4402), [sym_asm] = ACTIONS(4402), [sym_assert] = ACTIONS(4402), [sym_auto] = ACTIONS(4402), [sym_break] = ACTIONS(4402), [sym_case] = ACTIONS(4402), [sym_cast] = ACTIONS(4402), [sym_class] = ACTIONS(4402), [sym_const] = ACTIONS(4402), [sym_continue] = ACTIONS(4402), [sym_debug] = ACTIONS(4402), [sym_default] = ACTIONS(4402), [sym_delegate] = ACTIONS(4402), [sym_delete] = ACTIONS(4402), [sym_deprecated] = ACTIONS(4402), [sym_do] = ACTIONS(4402), [sym_else] = ACTIONS(4402), [sym_enum] = ACTIONS(4402), [sym_export] = ACTIONS(4402), [sym_extern] = ACTIONS(4402), [sym_final] = ACTIONS(4402), [sym_for] = ACTIONS(4402), [sym_foreach] = ACTIONS(4402), [sym_foreach_reverse] = ACTIONS(4402), [sym_function] = ACTIONS(4402), [sym_goto] = ACTIONS(4402), [sym_if] = ACTIONS(4402), [sym_immutable] = ACTIONS(4402), [sym_import] = ACTIONS(4402), [sym_in] = ACTIONS(4402), [sym_inout] = ACTIONS(4402), [sym_interface] = ACTIONS(4402), [sym_invariant] = ACTIONS(4402), [sym_is] = ACTIONS(4402), [sym_mixin] = ACTIONS(4402), [sym_new] = ACTIONS(4402), [sym_nothrow] = ACTIONS(4402), [sym_out] = ACTIONS(4402), [sym_override] = ACTIONS(4402), [sym_package] = ACTIONS(4402), [sym_pragma] = ACTIONS(4402), [sym_private] = ACTIONS(4402), [sym_protected] = ACTIONS(4402), [sym_public] = ACTIONS(4402), [sym_pure] = ACTIONS(4402), [sym_ref] = ACTIONS(4402), [sym_return] = ACTIONS(4402), [sym_scope] = ACTIONS(4402), [sym_shared] = ACTIONS(4402), [sym_static] = ACTIONS(4402), [sym_struct] = ACTIONS(4402), [sym_switch] = ACTIONS(4402), [sym_synchronized] = ACTIONS(4402), [sym_template] = ACTIONS(4402), [sym_throw] = ACTIONS(4402), [sym_try] = ACTIONS(4402), [sym_typeid] = ACTIONS(4402), [sym_typeof] = ACTIONS(4402), [sym_union] = ACTIONS(4402), [sym_unittest] = ACTIONS(4402), [sym_version] = ACTIONS(4402), [sym_while] = ACTIONS(4402), [sym_with] = ACTIONS(4402), [sym_gshared] = ACTIONS(4402), [sym_traits] = ACTIONS(4402), [sym_vector] = ACTIONS(4402), [sym_void] = ACTIONS(4402), [anon_sym_BQUOTE] = ACTIONS(4404), [anon_sym_r_DQUOTE] = ACTIONS(4404), [anon_sym_x_DQUOTE] = ACTIONS(4404), [anon_sym_DQUOTE] = ACTIONS(4404), [anon_sym_i_BQUOTE] = ACTIONS(4404), [anon_sym_i_DQUOTE] = ACTIONS(4404), [anon_sym_iq_LBRACE] = ACTIONS(4404), [aux_sym_char_literal_token1] = ACTIONS(4404), [anon_sym_SQUOTE] = ACTIONS(4402), [anon_sym___DATE__] = ACTIONS(4402), [anon_sym___FILE__] = ACTIONS(4402), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4402), [anon_sym___FUNCTION__] = ACTIONS(4402), [anon_sym___LINE__] = ACTIONS(4402), [anon_sym___MODULE__] = ACTIONS(4402), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4402), [anon_sym___TIME__] = ACTIONS(4402), [anon_sym___TIMESTAMP__] = ACTIONS(4402), [anon_sym___VENDOR__] = ACTIONS(4402), [anon_sym___VERSION__] = ACTIONS(4402), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4404), [sym_float_literal] = ACTIONS(4404), [sym__string] = ACTIONS(4404), }, [1604] = { [sym_identifier] = ACTIONS(4740), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4743), [anon_sym_RBRACE] = ACTIONS(4743), [anon_sym_LBRACE] = ACTIONS(4743), [anon_sym_DOT] = ACTIONS(4743), [anon_sym_AMP] = ACTIONS(4743), [anon_sym_DASH] = ACTIONS(4740), [anon_sym_DASH_DASH] = ACTIONS(4743), [anon_sym_PLUS] = ACTIONS(4740), [anon_sym_PLUS_PLUS] = ACTIONS(4743), [anon_sym_BANG] = ACTIONS(4743), [anon_sym_LPAREN] = ACTIONS(4743), [anon_sym_RPAREN] = ACTIONS(4743), [anon_sym_LBRACK] = ACTIONS(4743), [anon_sym_SEMI] = ACTIONS(4743), [anon_sym_DOLLAR] = ACTIONS(4743), [anon_sym_STAR] = ACTIONS(4743), [anon_sym_TILDE] = ACTIONS(4743), [anon_sym_AT] = ACTIONS(4743), [sym_bool] = ACTIONS(4740), [sym_byte] = ACTIONS(4740), [sym_ubyte] = ACTIONS(4740), [sym_char] = ACTIONS(4740), [sym_short] = ACTIONS(4740), [sym_ushort] = ACTIONS(4740), [sym_int] = ACTIONS(4740), [sym_uint] = ACTIONS(4740), [sym_long] = ACTIONS(4740), [sym_ulong] = ACTIONS(4740), [sym_cent] = ACTIONS(4740), [sym_ucent] = ACTIONS(4740), [sym_wchar] = ACTIONS(4740), [sym_dchar] = ACTIONS(4740), [sym_float] = ACTIONS(4740), [sym_double] = ACTIONS(4740), [sym_real] = ACTIONS(4740), [sym_ifloat] = ACTIONS(4740), [sym_idouble] = ACTIONS(4740), [sym_ireal] = ACTIONS(4740), [sym_cfloat] = ACTIONS(4740), [sym_cdouble] = ACTIONS(4740), [sym_creal] = ACTIONS(4740), [sym_size_t] = ACTIONS(4740), [sym_ptrdiff_t] = ACTIONS(4740), [sym_string] = ACTIONS(4740), [sym_cstring] = ACTIONS(4740), [sym_dstring] = ACTIONS(4740), [sym_wstring] = ACTIONS(4740), [sym_noreturn] = ACTIONS(4740), [sym_true] = ACTIONS(4740), [sym_false] = ACTIONS(4740), [sym_null] = ACTIONS(4740), [sym_super] = ACTIONS(4740), [sym_this] = ACTIONS(4740), [sym_abstract] = ACTIONS(4740), [sym_alias] = ACTIONS(4740), [sym_align] = ACTIONS(4740), [sym_asm] = ACTIONS(4740), [sym_assert] = ACTIONS(4740), [sym_auto] = ACTIONS(4740), [sym_break] = ACTIONS(4740), [sym_case] = ACTIONS(4740), [sym_cast] = ACTIONS(4740), [sym_class] = ACTIONS(4740), [sym_const] = ACTIONS(4740), [sym_continue] = ACTIONS(4740), [sym_debug] = ACTIONS(4740), [sym_default] = ACTIONS(4740), [sym_delegate] = ACTIONS(4740), [sym_delete] = ACTIONS(4740), [sym_deprecated] = ACTIONS(4740), [sym_do] = ACTIONS(4740), [sym_else] = ACTIONS(4740), [sym_enum] = ACTIONS(4740), [sym_export] = ACTIONS(4740), [sym_extern] = ACTIONS(4740), [sym_final] = ACTIONS(4740), [sym_for] = ACTIONS(4740), [sym_foreach] = ACTIONS(4740), [sym_foreach_reverse] = ACTIONS(4740), [sym_function] = ACTIONS(4740), [sym_goto] = ACTIONS(4740), [sym_if] = ACTIONS(4740), [sym_immutable] = ACTIONS(4740), [sym_import] = ACTIONS(4740), [sym_in] = ACTIONS(4740), [sym_inout] = ACTIONS(4740), [sym_interface] = ACTIONS(4740), [sym_invariant] = ACTIONS(4740), [sym_is] = ACTIONS(4740), [sym_mixin] = ACTIONS(4740), [sym_new] = ACTIONS(4740), [sym_nothrow] = ACTIONS(4740), [sym_out] = ACTIONS(4740), [sym_override] = ACTIONS(4740), [sym_package] = ACTIONS(4740), [sym_pragma] = ACTIONS(4740), [sym_private] = ACTIONS(4740), [sym_protected] = ACTIONS(4740), [sym_public] = ACTIONS(4740), [sym_pure] = ACTIONS(4740), [sym_ref] = ACTIONS(4740), [sym_return] = ACTIONS(4740), [sym_scope] = ACTIONS(4740), [sym_shared] = ACTIONS(4740), [sym_static] = ACTIONS(4740), [sym_struct] = ACTIONS(4740), [sym_switch] = ACTIONS(4740), [sym_synchronized] = ACTIONS(4740), [sym_template] = ACTIONS(4740), [sym_throw] = ACTIONS(4740), [sym_try] = ACTIONS(4740), [sym_typeid] = ACTIONS(4740), [sym_typeof] = ACTIONS(4740), [sym_union] = ACTIONS(4740), [sym_unittest] = ACTIONS(4740), [sym_version] = ACTIONS(4740), [sym_while] = ACTIONS(4740), [sym_with] = ACTIONS(4740), [sym_gshared] = ACTIONS(4740), [sym_traits] = ACTIONS(4740), [sym_vector] = ACTIONS(4740), [sym_void] = ACTIONS(4740), [anon_sym_BQUOTE] = ACTIONS(4743), [anon_sym_r_DQUOTE] = ACTIONS(4743), [anon_sym_x_DQUOTE] = ACTIONS(4743), [anon_sym_DQUOTE] = ACTIONS(4743), [anon_sym_i_BQUOTE] = ACTIONS(4743), [anon_sym_i_DQUOTE] = ACTIONS(4743), [anon_sym_iq_LBRACE] = ACTIONS(4743), [aux_sym_char_literal_token1] = ACTIONS(4743), [anon_sym_SQUOTE] = ACTIONS(4740), [anon_sym___DATE__] = ACTIONS(4740), [anon_sym___FILE__] = ACTIONS(4740), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4740), [anon_sym___FUNCTION__] = ACTIONS(4740), [anon_sym___LINE__] = ACTIONS(4740), [anon_sym___MODULE__] = ACTIONS(4740), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4740), [anon_sym___TIME__] = ACTIONS(4740), [anon_sym___TIMESTAMP__] = ACTIONS(4740), [anon_sym___VENDOR__] = ACTIONS(4740), [anon_sym___VERSION__] = ACTIONS(4740), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4743), [sym_float_literal] = ACTIONS(4743), [sym__string] = ACTIONS(4743), }, [1605] = { [sym_identifier] = ACTIONS(4728), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4730), [anon_sym_RBRACE] = ACTIONS(4730), [anon_sym_LBRACE] = ACTIONS(4730), [anon_sym_DOT] = ACTIONS(4730), [anon_sym_AMP] = ACTIONS(4730), [anon_sym_DASH] = ACTIONS(4728), [anon_sym_DASH_DASH] = ACTIONS(4730), [anon_sym_PLUS] = ACTIONS(4728), [anon_sym_PLUS_PLUS] = ACTIONS(4730), [anon_sym_BANG] = ACTIONS(4730), [anon_sym_LPAREN] = ACTIONS(4730), [anon_sym_RPAREN] = ACTIONS(4730), [anon_sym_LBRACK] = ACTIONS(4730), [anon_sym_SEMI] = ACTIONS(4730), [anon_sym_DOLLAR] = ACTIONS(4730), [anon_sym_STAR] = ACTIONS(4730), [anon_sym_TILDE] = ACTIONS(4730), [anon_sym_AT] = ACTIONS(4730), [sym_bool] = ACTIONS(4728), [sym_byte] = ACTIONS(4728), [sym_ubyte] = ACTIONS(4728), [sym_char] = ACTIONS(4728), [sym_short] = ACTIONS(4728), [sym_ushort] = ACTIONS(4728), [sym_int] = ACTIONS(4728), [sym_uint] = ACTIONS(4728), [sym_long] = ACTIONS(4728), [sym_ulong] = ACTIONS(4728), [sym_cent] = ACTIONS(4728), [sym_ucent] = ACTIONS(4728), [sym_wchar] = ACTIONS(4728), [sym_dchar] = ACTIONS(4728), [sym_float] = ACTIONS(4728), [sym_double] = ACTIONS(4728), [sym_real] = ACTIONS(4728), [sym_ifloat] = ACTIONS(4728), [sym_idouble] = ACTIONS(4728), [sym_ireal] = ACTIONS(4728), [sym_cfloat] = ACTIONS(4728), [sym_cdouble] = ACTIONS(4728), [sym_creal] = ACTIONS(4728), [sym_size_t] = ACTIONS(4728), [sym_ptrdiff_t] = ACTIONS(4728), [sym_string] = ACTIONS(4728), [sym_cstring] = ACTIONS(4728), [sym_dstring] = ACTIONS(4728), [sym_wstring] = ACTIONS(4728), [sym_noreturn] = ACTIONS(4728), [sym_true] = ACTIONS(4728), [sym_false] = ACTIONS(4728), [sym_null] = ACTIONS(4728), [sym_super] = ACTIONS(4728), [sym_this] = ACTIONS(4728), [sym_abstract] = ACTIONS(4728), [sym_alias] = ACTIONS(4728), [sym_align] = ACTIONS(4728), [sym_asm] = ACTIONS(4728), [sym_assert] = ACTIONS(4728), [sym_auto] = ACTIONS(4728), [sym_break] = ACTIONS(4728), [sym_case] = ACTIONS(4728), [sym_cast] = ACTIONS(4728), [sym_class] = ACTIONS(4728), [sym_const] = ACTIONS(4728), [sym_continue] = ACTIONS(4728), [sym_debug] = ACTIONS(4728), [sym_default] = ACTIONS(4728), [sym_delegate] = ACTIONS(4728), [sym_delete] = ACTIONS(4728), [sym_deprecated] = ACTIONS(4728), [sym_do] = ACTIONS(4728), [sym_else] = ACTIONS(4728), [sym_enum] = ACTIONS(4728), [sym_export] = ACTIONS(4728), [sym_extern] = ACTIONS(4728), [sym_final] = ACTIONS(4728), [sym_for] = ACTIONS(4728), [sym_foreach] = ACTIONS(4728), [sym_foreach_reverse] = ACTIONS(4728), [sym_function] = ACTIONS(4728), [sym_goto] = ACTIONS(4728), [sym_if] = ACTIONS(4728), [sym_immutable] = ACTIONS(4728), [sym_import] = ACTIONS(4728), [sym_in] = ACTIONS(4728), [sym_inout] = ACTIONS(4728), [sym_interface] = ACTIONS(4728), [sym_invariant] = ACTIONS(4728), [sym_is] = ACTIONS(4728), [sym_mixin] = ACTIONS(4728), [sym_new] = ACTIONS(4728), [sym_nothrow] = ACTIONS(4728), [sym_out] = ACTIONS(4728), [sym_override] = ACTIONS(4728), [sym_package] = ACTIONS(4728), [sym_pragma] = ACTIONS(4728), [sym_private] = ACTIONS(4728), [sym_protected] = ACTIONS(4728), [sym_public] = ACTIONS(4728), [sym_pure] = ACTIONS(4728), [sym_ref] = ACTIONS(4728), [sym_return] = ACTIONS(4728), [sym_scope] = ACTIONS(4728), [sym_shared] = ACTIONS(4728), [sym_static] = ACTIONS(4728), [sym_struct] = ACTIONS(4728), [sym_switch] = ACTIONS(4728), [sym_synchronized] = ACTIONS(4728), [sym_template] = ACTIONS(4728), [sym_throw] = ACTIONS(4728), [sym_try] = ACTIONS(4728), [sym_typeid] = ACTIONS(4728), [sym_typeof] = ACTIONS(4728), [sym_union] = ACTIONS(4728), [sym_unittest] = ACTIONS(4728), [sym_version] = ACTIONS(4728), [sym_while] = ACTIONS(4728), [sym_with] = ACTIONS(4728), [sym_gshared] = ACTIONS(4728), [sym_traits] = ACTIONS(4728), [sym_vector] = ACTIONS(4728), [sym_void] = ACTIONS(4728), [anon_sym_BQUOTE] = ACTIONS(4730), [anon_sym_r_DQUOTE] = ACTIONS(4730), [anon_sym_x_DQUOTE] = ACTIONS(4730), [anon_sym_DQUOTE] = ACTIONS(4730), [anon_sym_i_BQUOTE] = ACTIONS(4730), [anon_sym_i_DQUOTE] = ACTIONS(4730), [anon_sym_iq_LBRACE] = ACTIONS(4730), [aux_sym_char_literal_token1] = ACTIONS(4730), [anon_sym_SQUOTE] = ACTIONS(4728), [anon_sym___DATE__] = ACTIONS(4728), [anon_sym___FILE__] = ACTIONS(4728), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4728), [anon_sym___FUNCTION__] = ACTIONS(4728), [anon_sym___LINE__] = ACTIONS(4728), [anon_sym___MODULE__] = ACTIONS(4728), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4728), [anon_sym___TIME__] = ACTIONS(4728), [anon_sym___TIMESTAMP__] = ACTIONS(4728), [anon_sym___VENDOR__] = ACTIONS(4728), [anon_sym___VERSION__] = ACTIONS(4728), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4730), [sym_float_literal] = ACTIONS(4730), [sym__string] = ACTIONS(4730), }, [1606] = { [sym_identifier] = ACTIONS(4904), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4906), [anon_sym_RBRACE] = ACTIONS(4906), [anon_sym_LBRACE] = ACTIONS(4906), [anon_sym_DOT] = ACTIONS(4906), [anon_sym_AMP] = ACTIONS(4906), [anon_sym_DASH] = ACTIONS(4904), [anon_sym_DASH_DASH] = ACTIONS(4906), [anon_sym_PLUS] = ACTIONS(4904), [anon_sym_PLUS_PLUS] = ACTIONS(4906), [anon_sym_BANG] = ACTIONS(4906), [anon_sym_LPAREN] = ACTIONS(4906), [anon_sym_RPAREN] = ACTIONS(4906), [anon_sym_LBRACK] = ACTIONS(4906), [anon_sym_SEMI] = ACTIONS(4906), [anon_sym_DOLLAR] = ACTIONS(4906), [anon_sym_STAR] = ACTIONS(4906), [anon_sym_TILDE] = ACTIONS(4906), [anon_sym_AT] = ACTIONS(4906), [sym_bool] = ACTIONS(4904), [sym_byte] = ACTIONS(4904), [sym_ubyte] = ACTIONS(4904), [sym_char] = ACTIONS(4904), [sym_short] = ACTIONS(4904), [sym_ushort] = ACTIONS(4904), [sym_int] = ACTIONS(4904), [sym_uint] = ACTIONS(4904), [sym_long] = ACTIONS(4904), [sym_ulong] = ACTIONS(4904), [sym_cent] = ACTIONS(4904), [sym_ucent] = ACTIONS(4904), [sym_wchar] = ACTIONS(4904), [sym_dchar] = ACTIONS(4904), [sym_float] = ACTIONS(4904), [sym_double] = ACTIONS(4904), [sym_real] = ACTIONS(4904), [sym_ifloat] = ACTIONS(4904), [sym_idouble] = ACTIONS(4904), [sym_ireal] = ACTIONS(4904), [sym_cfloat] = ACTIONS(4904), [sym_cdouble] = ACTIONS(4904), [sym_creal] = ACTIONS(4904), [sym_size_t] = ACTIONS(4904), [sym_ptrdiff_t] = ACTIONS(4904), [sym_string] = ACTIONS(4904), [sym_cstring] = ACTIONS(4904), [sym_dstring] = ACTIONS(4904), [sym_wstring] = ACTIONS(4904), [sym_noreturn] = ACTIONS(4904), [sym_true] = ACTIONS(4904), [sym_false] = ACTIONS(4904), [sym_null] = ACTIONS(4904), [sym_super] = ACTIONS(4904), [sym_this] = ACTIONS(4904), [sym_abstract] = ACTIONS(4904), [sym_alias] = ACTIONS(4904), [sym_align] = ACTIONS(4904), [sym_asm] = ACTIONS(4904), [sym_assert] = ACTIONS(4904), [sym_auto] = ACTIONS(4904), [sym_break] = ACTIONS(4904), [sym_case] = ACTIONS(4904), [sym_cast] = ACTIONS(4904), [sym_class] = ACTIONS(4904), [sym_const] = ACTIONS(4904), [sym_continue] = ACTIONS(4904), [sym_debug] = ACTIONS(4904), [sym_default] = ACTIONS(4904), [sym_delegate] = ACTIONS(4904), [sym_delete] = ACTIONS(4904), [sym_deprecated] = ACTIONS(4904), [sym_do] = ACTIONS(4904), [sym_else] = ACTIONS(4904), [sym_enum] = ACTIONS(4904), [sym_export] = ACTIONS(4904), [sym_extern] = ACTIONS(4904), [sym_final] = ACTIONS(4904), [sym_for] = ACTIONS(4904), [sym_foreach] = ACTIONS(4904), [sym_foreach_reverse] = ACTIONS(4904), [sym_function] = ACTIONS(4904), [sym_goto] = ACTIONS(4904), [sym_if] = ACTIONS(4904), [sym_immutable] = ACTIONS(4904), [sym_import] = ACTIONS(4904), [sym_in] = ACTIONS(4904), [sym_inout] = ACTIONS(4904), [sym_interface] = ACTIONS(4904), [sym_invariant] = ACTIONS(4904), [sym_is] = ACTIONS(4904), [sym_mixin] = ACTIONS(4904), [sym_new] = ACTIONS(4904), [sym_nothrow] = ACTIONS(4904), [sym_out] = ACTIONS(4904), [sym_override] = ACTIONS(4904), [sym_package] = ACTIONS(4904), [sym_pragma] = ACTIONS(4904), [sym_private] = ACTIONS(4904), [sym_protected] = ACTIONS(4904), [sym_public] = ACTIONS(4904), [sym_pure] = ACTIONS(4904), [sym_ref] = ACTIONS(4904), [sym_return] = ACTIONS(4904), [sym_scope] = ACTIONS(4904), [sym_shared] = ACTIONS(4904), [sym_static] = ACTIONS(4904), [sym_struct] = ACTIONS(4904), [sym_switch] = ACTIONS(4904), [sym_synchronized] = ACTIONS(4904), [sym_template] = ACTIONS(4904), [sym_throw] = ACTIONS(4904), [sym_try] = ACTIONS(4904), [sym_typeid] = ACTIONS(4904), [sym_typeof] = ACTIONS(4904), [sym_union] = ACTIONS(4904), [sym_unittest] = ACTIONS(4904), [sym_version] = ACTIONS(4904), [sym_while] = ACTIONS(4904), [sym_with] = ACTIONS(4904), [sym_gshared] = ACTIONS(4904), [sym_traits] = ACTIONS(4904), [sym_vector] = ACTIONS(4904), [sym_void] = ACTIONS(4904), [anon_sym_BQUOTE] = ACTIONS(4906), [anon_sym_r_DQUOTE] = ACTIONS(4906), [anon_sym_x_DQUOTE] = ACTIONS(4906), [anon_sym_DQUOTE] = ACTIONS(4906), [anon_sym_i_BQUOTE] = ACTIONS(4906), [anon_sym_i_DQUOTE] = ACTIONS(4906), [anon_sym_iq_LBRACE] = ACTIONS(4906), [aux_sym_char_literal_token1] = ACTIONS(4906), [anon_sym_SQUOTE] = ACTIONS(4904), [anon_sym___DATE__] = ACTIONS(4904), [anon_sym___FILE__] = ACTIONS(4904), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4904), [anon_sym___FUNCTION__] = ACTIONS(4904), [anon_sym___LINE__] = ACTIONS(4904), [anon_sym___MODULE__] = ACTIONS(4904), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4904), [anon_sym___TIME__] = ACTIONS(4904), [anon_sym___TIMESTAMP__] = ACTIONS(4904), [anon_sym___VENDOR__] = ACTIONS(4904), [anon_sym___VERSION__] = ACTIONS(4904), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4906), [sym_float_literal] = ACTIONS(4906), [sym__string] = ACTIONS(4906), }, [1607] = { [sym_identifier] = ACTIONS(4900), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4902), [anon_sym_RBRACE] = ACTIONS(4902), [anon_sym_LBRACE] = ACTIONS(4902), [anon_sym_DOT] = ACTIONS(4902), [anon_sym_AMP] = ACTIONS(4902), [anon_sym_DASH] = ACTIONS(4900), [anon_sym_DASH_DASH] = ACTIONS(4902), [anon_sym_PLUS] = ACTIONS(4900), [anon_sym_PLUS_PLUS] = ACTIONS(4902), [anon_sym_BANG] = ACTIONS(4902), [anon_sym_LPAREN] = ACTIONS(4902), [anon_sym_RPAREN] = ACTIONS(4902), [anon_sym_LBRACK] = ACTIONS(4902), [anon_sym_SEMI] = ACTIONS(4902), [anon_sym_DOLLAR] = ACTIONS(4902), [anon_sym_STAR] = ACTIONS(4902), [anon_sym_TILDE] = ACTIONS(4902), [anon_sym_AT] = ACTIONS(4902), [sym_bool] = ACTIONS(4900), [sym_byte] = ACTIONS(4900), [sym_ubyte] = ACTIONS(4900), [sym_char] = ACTIONS(4900), [sym_short] = ACTIONS(4900), [sym_ushort] = ACTIONS(4900), [sym_int] = ACTIONS(4900), [sym_uint] = ACTIONS(4900), [sym_long] = ACTIONS(4900), [sym_ulong] = ACTIONS(4900), [sym_cent] = ACTIONS(4900), [sym_ucent] = ACTIONS(4900), [sym_wchar] = ACTIONS(4900), [sym_dchar] = ACTIONS(4900), [sym_float] = ACTIONS(4900), [sym_double] = ACTIONS(4900), [sym_real] = ACTIONS(4900), [sym_ifloat] = ACTIONS(4900), [sym_idouble] = ACTIONS(4900), [sym_ireal] = ACTIONS(4900), [sym_cfloat] = ACTIONS(4900), [sym_cdouble] = ACTIONS(4900), [sym_creal] = ACTIONS(4900), [sym_size_t] = ACTIONS(4900), [sym_ptrdiff_t] = ACTIONS(4900), [sym_string] = ACTIONS(4900), [sym_cstring] = ACTIONS(4900), [sym_dstring] = ACTIONS(4900), [sym_wstring] = ACTIONS(4900), [sym_noreturn] = ACTIONS(4900), [sym_true] = ACTIONS(4900), [sym_false] = ACTIONS(4900), [sym_null] = ACTIONS(4900), [sym_super] = ACTIONS(4900), [sym_this] = ACTIONS(4900), [sym_abstract] = ACTIONS(4900), [sym_alias] = ACTIONS(4900), [sym_align] = ACTIONS(4900), [sym_asm] = ACTIONS(4900), [sym_assert] = ACTIONS(4900), [sym_auto] = ACTIONS(4900), [sym_break] = ACTIONS(4900), [sym_case] = ACTIONS(4900), [sym_cast] = ACTIONS(4900), [sym_class] = ACTIONS(4900), [sym_const] = ACTIONS(4900), [sym_continue] = ACTIONS(4900), [sym_debug] = ACTIONS(4900), [sym_default] = ACTIONS(4900), [sym_delegate] = ACTIONS(4900), [sym_delete] = ACTIONS(4900), [sym_deprecated] = ACTIONS(4900), [sym_do] = ACTIONS(4900), [sym_else] = ACTIONS(4900), [sym_enum] = ACTIONS(4900), [sym_export] = ACTIONS(4900), [sym_extern] = ACTIONS(4900), [sym_final] = ACTIONS(4900), [sym_for] = ACTIONS(4900), [sym_foreach] = ACTIONS(4900), [sym_foreach_reverse] = ACTIONS(4900), [sym_function] = ACTIONS(4900), [sym_goto] = ACTIONS(4900), [sym_if] = ACTIONS(4900), [sym_immutable] = ACTIONS(4900), [sym_import] = ACTIONS(4900), [sym_in] = ACTIONS(4900), [sym_inout] = ACTIONS(4900), [sym_interface] = ACTIONS(4900), [sym_invariant] = ACTIONS(4900), [sym_is] = ACTIONS(4900), [sym_mixin] = ACTIONS(4900), [sym_new] = ACTIONS(4900), [sym_nothrow] = ACTIONS(4900), [sym_out] = ACTIONS(4900), [sym_override] = ACTIONS(4900), [sym_package] = ACTIONS(4900), [sym_pragma] = ACTIONS(4900), [sym_private] = ACTIONS(4900), [sym_protected] = ACTIONS(4900), [sym_public] = ACTIONS(4900), [sym_pure] = ACTIONS(4900), [sym_ref] = ACTIONS(4900), [sym_return] = ACTIONS(4900), [sym_scope] = ACTIONS(4900), [sym_shared] = ACTIONS(4900), [sym_static] = ACTIONS(4900), [sym_struct] = ACTIONS(4900), [sym_switch] = ACTIONS(4900), [sym_synchronized] = ACTIONS(4900), [sym_template] = ACTIONS(4900), [sym_throw] = ACTIONS(4900), [sym_try] = ACTIONS(4900), [sym_typeid] = ACTIONS(4900), [sym_typeof] = ACTIONS(4900), [sym_union] = ACTIONS(4900), [sym_unittest] = ACTIONS(4900), [sym_version] = ACTIONS(4900), [sym_while] = ACTIONS(4900), [sym_with] = ACTIONS(4900), [sym_gshared] = ACTIONS(4900), [sym_traits] = ACTIONS(4900), [sym_vector] = ACTIONS(4900), [sym_void] = ACTIONS(4900), [anon_sym_BQUOTE] = ACTIONS(4902), [anon_sym_r_DQUOTE] = ACTIONS(4902), [anon_sym_x_DQUOTE] = ACTIONS(4902), [anon_sym_DQUOTE] = ACTIONS(4902), [anon_sym_i_BQUOTE] = ACTIONS(4902), [anon_sym_i_DQUOTE] = ACTIONS(4902), [anon_sym_iq_LBRACE] = ACTIONS(4902), [aux_sym_char_literal_token1] = ACTIONS(4902), [anon_sym_SQUOTE] = ACTIONS(4900), [anon_sym___DATE__] = ACTIONS(4900), [anon_sym___FILE__] = ACTIONS(4900), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4900), [anon_sym___FUNCTION__] = ACTIONS(4900), [anon_sym___LINE__] = ACTIONS(4900), [anon_sym___MODULE__] = ACTIONS(4900), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4900), [anon_sym___TIME__] = ACTIONS(4900), [anon_sym___TIMESTAMP__] = ACTIONS(4900), [anon_sym___VENDOR__] = ACTIONS(4900), [anon_sym___VERSION__] = ACTIONS(4900), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4902), [sym_float_literal] = ACTIONS(4902), [sym__string] = ACTIONS(4902), }, [1608] = { [sym_identifier] = ACTIONS(4822), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4824), [anon_sym_RBRACE] = ACTIONS(4824), [anon_sym_LBRACE] = ACTIONS(4824), [anon_sym_DOT] = ACTIONS(4824), [anon_sym_AMP] = ACTIONS(4824), [anon_sym_DASH] = ACTIONS(4822), [anon_sym_DASH_DASH] = ACTIONS(4824), [anon_sym_PLUS] = ACTIONS(4822), [anon_sym_PLUS_PLUS] = ACTIONS(4824), [anon_sym_BANG] = ACTIONS(4824), [anon_sym_LPAREN] = ACTIONS(4824), [anon_sym_RPAREN] = ACTIONS(4824), [anon_sym_LBRACK] = ACTIONS(4824), [anon_sym_SEMI] = ACTIONS(4824), [anon_sym_DOLLAR] = ACTIONS(4824), [anon_sym_STAR] = ACTIONS(4824), [anon_sym_TILDE] = ACTIONS(4824), [anon_sym_AT] = ACTIONS(4824), [sym_bool] = ACTIONS(4822), [sym_byte] = ACTIONS(4822), [sym_ubyte] = ACTIONS(4822), [sym_char] = ACTIONS(4822), [sym_short] = ACTIONS(4822), [sym_ushort] = ACTIONS(4822), [sym_int] = ACTIONS(4822), [sym_uint] = ACTIONS(4822), [sym_long] = ACTIONS(4822), [sym_ulong] = ACTIONS(4822), [sym_cent] = ACTIONS(4822), [sym_ucent] = ACTIONS(4822), [sym_wchar] = ACTIONS(4822), [sym_dchar] = ACTIONS(4822), [sym_float] = ACTIONS(4822), [sym_double] = ACTIONS(4822), [sym_real] = ACTIONS(4822), [sym_ifloat] = ACTIONS(4822), [sym_idouble] = ACTIONS(4822), [sym_ireal] = ACTIONS(4822), [sym_cfloat] = ACTIONS(4822), [sym_cdouble] = ACTIONS(4822), [sym_creal] = ACTIONS(4822), [sym_size_t] = ACTIONS(4822), [sym_ptrdiff_t] = ACTIONS(4822), [sym_string] = ACTIONS(4822), [sym_cstring] = ACTIONS(4822), [sym_dstring] = ACTIONS(4822), [sym_wstring] = ACTIONS(4822), [sym_noreturn] = ACTIONS(4822), [sym_true] = ACTIONS(4822), [sym_false] = ACTIONS(4822), [sym_null] = ACTIONS(4822), [sym_super] = ACTIONS(4822), [sym_this] = ACTIONS(4822), [sym_abstract] = ACTIONS(4822), [sym_alias] = ACTIONS(4822), [sym_align] = ACTIONS(4822), [sym_asm] = ACTIONS(4822), [sym_assert] = ACTIONS(4822), [sym_auto] = ACTIONS(4822), [sym_break] = ACTIONS(4822), [sym_case] = ACTIONS(4822), [sym_cast] = ACTIONS(4822), [sym_class] = ACTIONS(4822), [sym_const] = ACTIONS(4822), [sym_continue] = ACTIONS(4822), [sym_debug] = ACTIONS(4822), [sym_default] = ACTIONS(4822), [sym_delegate] = ACTIONS(4822), [sym_delete] = ACTIONS(4822), [sym_deprecated] = ACTIONS(4822), [sym_do] = ACTIONS(4822), [sym_else] = ACTIONS(4822), [sym_enum] = ACTIONS(4822), [sym_export] = ACTIONS(4822), [sym_extern] = ACTIONS(4822), [sym_final] = ACTIONS(4822), [sym_for] = ACTIONS(4822), [sym_foreach] = ACTIONS(4822), [sym_foreach_reverse] = ACTIONS(4822), [sym_function] = ACTIONS(4822), [sym_goto] = ACTIONS(4822), [sym_if] = ACTIONS(4822), [sym_immutable] = ACTIONS(4822), [sym_import] = ACTIONS(4822), [sym_in] = ACTIONS(4822), [sym_inout] = ACTIONS(4822), [sym_interface] = ACTIONS(4822), [sym_invariant] = ACTIONS(4822), [sym_is] = ACTIONS(4822), [sym_mixin] = ACTIONS(4822), [sym_new] = ACTIONS(4822), [sym_nothrow] = ACTIONS(4822), [sym_out] = ACTIONS(4822), [sym_override] = ACTIONS(4822), [sym_package] = ACTIONS(4822), [sym_pragma] = ACTIONS(4822), [sym_private] = ACTIONS(4822), [sym_protected] = ACTIONS(4822), [sym_public] = ACTIONS(4822), [sym_pure] = ACTIONS(4822), [sym_ref] = ACTIONS(4822), [sym_return] = ACTIONS(4822), [sym_scope] = ACTIONS(4822), [sym_shared] = ACTIONS(4822), [sym_static] = ACTIONS(4822), [sym_struct] = ACTIONS(4822), [sym_switch] = ACTIONS(4822), [sym_synchronized] = ACTIONS(4822), [sym_template] = ACTIONS(4822), [sym_throw] = ACTIONS(4822), [sym_try] = ACTIONS(4822), [sym_typeid] = ACTIONS(4822), [sym_typeof] = ACTIONS(4822), [sym_union] = ACTIONS(4822), [sym_unittest] = ACTIONS(4822), [sym_version] = ACTIONS(4822), [sym_while] = ACTIONS(4822), [sym_with] = ACTIONS(4822), [sym_gshared] = ACTIONS(4822), [sym_traits] = ACTIONS(4822), [sym_vector] = ACTIONS(4822), [sym_void] = ACTIONS(4822), [anon_sym_BQUOTE] = ACTIONS(4824), [anon_sym_r_DQUOTE] = ACTIONS(4824), [anon_sym_x_DQUOTE] = ACTIONS(4824), [anon_sym_DQUOTE] = ACTIONS(4824), [anon_sym_i_BQUOTE] = ACTIONS(4824), [anon_sym_i_DQUOTE] = ACTIONS(4824), [anon_sym_iq_LBRACE] = ACTIONS(4824), [aux_sym_char_literal_token1] = ACTIONS(4824), [anon_sym_SQUOTE] = ACTIONS(4822), [anon_sym___DATE__] = ACTIONS(4822), [anon_sym___FILE__] = ACTIONS(4822), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4822), [anon_sym___FUNCTION__] = ACTIONS(4822), [anon_sym___LINE__] = ACTIONS(4822), [anon_sym___MODULE__] = ACTIONS(4822), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4822), [anon_sym___TIME__] = ACTIONS(4822), [anon_sym___TIMESTAMP__] = ACTIONS(4822), [anon_sym___VENDOR__] = ACTIONS(4822), [anon_sym___VERSION__] = ACTIONS(4822), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4824), [sym_float_literal] = ACTIONS(4824), [sym__string] = ACTIONS(4824), }, [1609] = { [sym_identifier] = ACTIONS(4582), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4584), [anon_sym_RBRACE] = ACTIONS(4584), [anon_sym_LBRACE] = ACTIONS(4584), [anon_sym_DOT] = ACTIONS(4584), [anon_sym_AMP] = ACTIONS(4584), [anon_sym_DASH] = ACTIONS(4582), [anon_sym_DASH_DASH] = ACTIONS(4584), [anon_sym_PLUS] = ACTIONS(4582), [anon_sym_PLUS_PLUS] = ACTIONS(4584), [anon_sym_BANG] = ACTIONS(4584), [anon_sym_LPAREN] = ACTIONS(4584), [anon_sym_RPAREN] = ACTIONS(4584), [anon_sym_LBRACK] = ACTIONS(4584), [anon_sym_SEMI] = ACTIONS(4584), [anon_sym_DOLLAR] = ACTIONS(4584), [anon_sym_STAR] = ACTIONS(4584), [anon_sym_TILDE] = ACTIONS(4584), [anon_sym_AT] = ACTIONS(4584), [sym_bool] = ACTIONS(4582), [sym_byte] = ACTIONS(4582), [sym_ubyte] = ACTIONS(4582), [sym_char] = ACTIONS(4582), [sym_short] = ACTIONS(4582), [sym_ushort] = ACTIONS(4582), [sym_int] = ACTIONS(4582), [sym_uint] = ACTIONS(4582), [sym_long] = ACTIONS(4582), [sym_ulong] = ACTIONS(4582), [sym_cent] = ACTIONS(4582), [sym_ucent] = ACTIONS(4582), [sym_wchar] = ACTIONS(4582), [sym_dchar] = ACTIONS(4582), [sym_float] = ACTIONS(4582), [sym_double] = ACTIONS(4582), [sym_real] = ACTIONS(4582), [sym_ifloat] = ACTIONS(4582), [sym_idouble] = ACTIONS(4582), [sym_ireal] = ACTIONS(4582), [sym_cfloat] = ACTIONS(4582), [sym_cdouble] = ACTIONS(4582), [sym_creal] = ACTIONS(4582), [sym_size_t] = ACTIONS(4582), [sym_ptrdiff_t] = ACTIONS(4582), [sym_string] = ACTIONS(4582), [sym_cstring] = ACTIONS(4582), [sym_dstring] = ACTIONS(4582), [sym_wstring] = ACTIONS(4582), [sym_noreturn] = ACTIONS(4582), [sym_true] = ACTIONS(4582), [sym_false] = ACTIONS(4582), [sym_null] = ACTIONS(4582), [sym_super] = ACTIONS(4582), [sym_this] = ACTIONS(4582), [sym_abstract] = ACTIONS(4582), [sym_alias] = ACTIONS(4582), [sym_align] = ACTIONS(4582), [sym_asm] = ACTIONS(4582), [sym_assert] = ACTIONS(4582), [sym_auto] = ACTIONS(4582), [sym_break] = ACTIONS(4582), [sym_case] = ACTIONS(4582), [sym_cast] = ACTIONS(4582), [sym_class] = ACTIONS(4582), [sym_const] = ACTIONS(4582), [sym_continue] = ACTIONS(4582), [sym_debug] = ACTIONS(4582), [sym_default] = ACTIONS(4582), [sym_delegate] = ACTIONS(4582), [sym_delete] = ACTIONS(4582), [sym_deprecated] = ACTIONS(4582), [sym_do] = ACTIONS(4582), [sym_else] = ACTIONS(4582), [sym_enum] = ACTIONS(4582), [sym_export] = ACTIONS(4582), [sym_extern] = ACTIONS(4582), [sym_final] = ACTIONS(4582), [sym_for] = ACTIONS(4582), [sym_foreach] = ACTIONS(4582), [sym_foreach_reverse] = ACTIONS(4582), [sym_function] = ACTIONS(4582), [sym_goto] = ACTIONS(4582), [sym_if] = ACTIONS(4582), [sym_immutable] = ACTIONS(4582), [sym_import] = ACTIONS(4582), [sym_in] = ACTIONS(4582), [sym_inout] = ACTIONS(4582), [sym_interface] = ACTIONS(4582), [sym_invariant] = ACTIONS(4582), [sym_is] = ACTIONS(4582), [sym_mixin] = ACTIONS(4582), [sym_new] = ACTIONS(4582), [sym_nothrow] = ACTIONS(4582), [sym_out] = ACTIONS(4582), [sym_override] = ACTIONS(4582), [sym_package] = ACTIONS(4582), [sym_pragma] = ACTIONS(4582), [sym_private] = ACTIONS(4582), [sym_protected] = ACTIONS(4582), [sym_public] = ACTIONS(4582), [sym_pure] = ACTIONS(4582), [sym_ref] = ACTIONS(4582), [sym_return] = ACTIONS(4582), [sym_scope] = ACTIONS(4582), [sym_shared] = ACTIONS(4582), [sym_static] = ACTIONS(4582), [sym_struct] = ACTIONS(4582), [sym_switch] = ACTIONS(4582), [sym_synchronized] = ACTIONS(4582), [sym_template] = ACTIONS(4582), [sym_throw] = ACTIONS(4582), [sym_try] = ACTIONS(4582), [sym_typeid] = ACTIONS(4582), [sym_typeof] = ACTIONS(4582), [sym_union] = ACTIONS(4582), [sym_unittest] = ACTIONS(4582), [sym_version] = ACTIONS(4582), [sym_while] = ACTIONS(4582), [sym_with] = ACTIONS(4582), [sym_gshared] = ACTIONS(4582), [sym_traits] = ACTIONS(4582), [sym_vector] = ACTIONS(4582), [sym_void] = ACTIONS(4582), [anon_sym_BQUOTE] = ACTIONS(4584), [anon_sym_r_DQUOTE] = ACTIONS(4584), [anon_sym_x_DQUOTE] = ACTIONS(4584), [anon_sym_DQUOTE] = ACTIONS(4584), [anon_sym_i_BQUOTE] = ACTIONS(4584), [anon_sym_i_DQUOTE] = ACTIONS(4584), [anon_sym_iq_LBRACE] = ACTIONS(4584), [aux_sym_char_literal_token1] = ACTIONS(4584), [anon_sym_SQUOTE] = ACTIONS(4582), [anon_sym___DATE__] = ACTIONS(4582), [anon_sym___FILE__] = ACTIONS(4582), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4582), [anon_sym___FUNCTION__] = ACTIONS(4582), [anon_sym___LINE__] = ACTIONS(4582), [anon_sym___MODULE__] = ACTIONS(4582), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4582), [anon_sym___TIME__] = ACTIONS(4582), [anon_sym___TIMESTAMP__] = ACTIONS(4582), [anon_sym___VENDOR__] = ACTIONS(4582), [anon_sym___VERSION__] = ACTIONS(4582), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4584), [sym_float_literal] = ACTIONS(4584), [sym__string] = ACTIONS(4584), }, [1610] = { [sym_identifier] = ACTIONS(4896), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4898), [anon_sym_RBRACE] = ACTIONS(4898), [anon_sym_LBRACE] = ACTIONS(4898), [anon_sym_DOT] = ACTIONS(4898), [anon_sym_AMP] = ACTIONS(4898), [anon_sym_DASH] = ACTIONS(4896), [anon_sym_DASH_DASH] = ACTIONS(4898), [anon_sym_PLUS] = ACTIONS(4896), [anon_sym_PLUS_PLUS] = ACTIONS(4898), [anon_sym_BANG] = ACTIONS(4898), [anon_sym_LPAREN] = ACTIONS(4898), [anon_sym_RPAREN] = ACTIONS(4898), [anon_sym_LBRACK] = ACTIONS(4898), [anon_sym_SEMI] = ACTIONS(4898), [anon_sym_DOLLAR] = ACTIONS(4898), [anon_sym_STAR] = ACTIONS(4898), [anon_sym_TILDE] = ACTIONS(4898), [anon_sym_AT] = ACTIONS(4898), [sym_bool] = ACTIONS(4896), [sym_byte] = ACTIONS(4896), [sym_ubyte] = ACTIONS(4896), [sym_char] = ACTIONS(4896), [sym_short] = ACTIONS(4896), [sym_ushort] = ACTIONS(4896), [sym_int] = ACTIONS(4896), [sym_uint] = ACTIONS(4896), [sym_long] = ACTIONS(4896), [sym_ulong] = ACTIONS(4896), [sym_cent] = ACTIONS(4896), [sym_ucent] = ACTIONS(4896), [sym_wchar] = ACTIONS(4896), [sym_dchar] = ACTIONS(4896), [sym_float] = ACTIONS(4896), [sym_double] = ACTIONS(4896), [sym_real] = ACTIONS(4896), [sym_ifloat] = ACTIONS(4896), [sym_idouble] = ACTIONS(4896), [sym_ireal] = ACTIONS(4896), [sym_cfloat] = ACTIONS(4896), [sym_cdouble] = ACTIONS(4896), [sym_creal] = ACTIONS(4896), [sym_size_t] = ACTIONS(4896), [sym_ptrdiff_t] = ACTIONS(4896), [sym_string] = ACTIONS(4896), [sym_cstring] = ACTIONS(4896), [sym_dstring] = ACTIONS(4896), [sym_wstring] = ACTIONS(4896), [sym_noreturn] = ACTIONS(4896), [sym_true] = ACTIONS(4896), [sym_false] = ACTIONS(4896), [sym_null] = ACTIONS(4896), [sym_super] = ACTIONS(4896), [sym_this] = ACTIONS(4896), [sym_abstract] = ACTIONS(4896), [sym_alias] = ACTIONS(4896), [sym_align] = ACTIONS(4896), [sym_asm] = ACTIONS(4896), [sym_assert] = ACTIONS(4896), [sym_auto] = ACTIONS(4896), [sym_break] = ACTIONS(4896), [sym_case] = ACTIONS(4896), [sym_cast] = ACTIONS(4896), [sym_class] = ACTIONS(4896), [sym_const] = ACTIONS(4896), [sym_continue] = ACTIONS(4896), [sym_debug] = ACTIONS(4896), [sym_default] = ACTIONS(4896), [sym_delegate] = ACTIONS(4896), [sym_delete] = ACTIONS(4896), [sym_deprecated] = ACTIONS(4896), [sym_do] = ACTIONS(4896), [sym_else] = ACTIONS(4896), [sym_enum] = ACTIONS(4896), [sym_export] = ACTIONS(4896), [sym_extern] = ACTIONS(4896), [sym_final] = ACTIONS(4896), [sym_for] = ACTIONS(4896), [sym_foreach] = ACTIONS(4896), [sym_foreach_reverse] = ACTIONS(4896), [sym_function] = ACTIONS(4896), [sym_goto] = ACTIONS(4896), [sym_if] = ACTIONS(4896), [sym_immutable] = ACTIONS(4896), [sym_import] = ACTIONS(4896), [sym_in] = ACTIONS(4896), [sym_inout] = ACTIONS(4896), [sym_interface] = ACTIONS(4896), [sym_invariant] = ACTIONS(4896), [sym_is] = ACTIONS(4896), [sym_mixin] = ACTIONS(4896), [sym_new] = ACTIONS(4896), [sym_nothrow] = ACTIONS(4896), [sym_out] = ACTIONS(4896), [sym_override] = ACTIONS(4896), [sym_package] = ACTIONS(4896), [sym_pragma] = ACTIONS(4896), [sym_private] = ACTIONS(4896), [sym_protected] = ACTIONS(4896), [sym_public] = ACTIONS(4896), [sym_pure] = ACTIONS(4896), [sym_ref] = ACTIONS(4896), [sym_return] = ACTIONS(4896), [sym_scope] = ACTIONS(4896), [sym_shared] = ACTIONS(4896), [sym_static] = ACTIONS(4896), [sym_struct] = ACTIONS(4896), [sym_switch] = ACTIONS(4896), [sym_synchronized] = ACTIONS(4896), [sym_template] = ACTIONS(4896), [sym_throw] = ACTIONS(4896), [sym_try] = ACTIONS(4896), [sym_typeid] = ACTIONS(4896), [sym_typeof] = ACTIONS(4896), [sym_union] = ACTIONS(4896), [sym_unittest] = ACTIONS(4896), [sym_version] = ACTIONS(4896), [sym_while] = ACTIONS(4896), [sym_with] = ACTIONS(4896), [sym_gshared] = ACTIONS(4896), [sym_traits] = ACTIONS(4896), [sym_vector] = ACTIONS(4896), [sym_void] = ACTIONS(4896), [anon_sym_BQUOTE] = ACTIONS(4898), [anon_sym_r_DQUOTE] = ACTIONS(4898), [anon_sym_x_DQUOTE] = ACTIONS(4898), [anon_sym_DQUOTE] = ACTIONS(4898), [anon_sym_i_BQUOTE] = ACTIONS(4898), [anon_sym_i_DQUOTE] = ACTIONS(4898), [anon_sym_iq_LBRACE] = ACTIONS(4898), [aux_sym_char_literal_token1] = ACTIONS(4898), [anon_sym_SQUOTE] = ACTIONS(4896), [anon_sym___DATE__] = ACTIONS(4896), [anon_sym___FILE__] = ACTIONS(4896), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4896), [anon_sym___FUNCTION__] = ACTIONS(4896), [anon_sym___LINE__] = ACTIONS(4896), [anon_sym___MODULE__] = ACTIONS(4896), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4896), [anon_sym___TIME__] = ACTIONS(4896), [anon_sym___TIMESTAMP__] = ACTIONS(4896), [anon_sym___VENDOR__] = ACTIONS(4896), [anon_sym___VERSION__] = ACTIONS(4896), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4898), [sym_float_literal] = ACTIONS(4898), [sym__string] = ACTIONS(4898), }, [1611] = { [sym_identifier] = ACTIONS(4716), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4718), [anon_sym_RBRACE] = ACTIONS(4718), [anon_sym_LBRACE] = ACTIONS(4718), [anon_sym_DOT] = ACTIONS(4718), [anon_sym_AMP] = ACTIONS(4718), [anon_sym_DASH] = ACTIONS(4716), [anon_sym_DASH_DASH] = ACTIONS(4718), [anon_sym_PLUS] = ACTIONS(4716), [anon_sym_PLUS_PLUS] = ACTIONS(4718), [anon_sym_BANG] = ACTIONS(4718), [anon_sym_LPAREN] = ACTIONS(4718), [anon_sym_RPAREN] = ACTIONS(4718), [anon_sym_LBRACK] = ACTIONS(4718), [anon_sym_SEMI] = ACTIONS(4718), [anon_sym_DOLLAR] = ACTIONS(4718), [anon_sym_STAR] = ACTIONS(4718), [anon_sym_TILDE] = ACTIONS(4718), [anon_sym_AT] = ACTIONS(4718), [sym_bool] = ACTIONS(4716), [sym_byte] = ACTIONS(4716), [sym_ubyte] = ACTIONS(4716), [sym_char] = ACTIONS(4716), [sym_short] = ACTIONS(4716), [sym_ushort] = ACTIONS(4716), [sym_int] = ACTIONS(4716), [sym_uint] = ACTIONS(4716), [sym_long] = ACTIONS(4716), [sym_ulong] = ACTIONS(4716), [sym_cent] = ACTIONS(4716), [sym_ucent] = ACTIONS(4716), [sym_wchar] = ACTIONS(4716), [sym_dchar] = ACTIONS(4716), [sym_float] = ACTIONS(4716), [sym_double] = ACTIONS(4716), [sym_real] = ACTIONS(4716), [sym_ifloat] = ACTIONS(4716), [sym_idouble] = ACTIONS(4716), [sym_ireal] = ACTIONS(4716), [sym_cfloat] = ACTIONS(4716), [sym_cdouble] = ACTIONS(4716), [sym_creal] = ACTIONS(4716), [sym_size_t] = ACTIONS(4716), [sym_ptrdiff_t] = ACTIONS(4716), [sym_string] = ACTIONS(4716), [sym_cstring] = ACTIONS(4716), [sym_dstring] = ACTIONS(4716), [sym_wstring] = ACTIONS(4716), [sym_noreturn] = ACTIONS(4716), [sym_true] = ACTIONS(4716), [sym_false] = ACTIONS(4716), [sym_null] = ACTIONS(4716), [sym_super] = ACTIONS(4716), [sym_this] = ACTIONS(4716), [sym_abstract] = ACTIONS(4716), [sym_alias] = ACTIONS(4716), [sym_align] = ACTIONS(4716), [sym_asm] = ACTIONS(4716), [sym_assert] = ACTIONS(4716), [sym_auto] = ACTIONS(4716), [sym_break] = ACTIONS(4716), [sym_case] = ACTIONS(4716), [sym_cast] = ACTIONS(4716), [sym_class] = ACTIONS(4716), [sym_const] = ACTIONS(4716), [sym_continue] = ACTIONS(4716), [sym_debug] = ACTIONS(4716), [sym_default] = ACTIONS(4716), [sym_delegate] = ACTIONS(4716), [sym_delete] = ACTIONS(4716), [sym_deprecated] = ACTIONS(4716), [sym_do] = ACTIONS(4716), [sym_else] = ACTIONS(4716), [sym_enum] = ACTIONS(4716), [sym_export] = ACTIONS(4716), [sym_extern] = ACTIONS(4716), [sym_final] = ACTIONS(4716), [sym_for] = ACTIONS(4716), [sym_foreach] = ACTIONS(4716), [sym_foreach_reverse] = ACTIONS(4716), [sym_function] = ACTIONS(4716), [sym_goto] = ACTIONS(4716), [sym_if] = ACTIONS(4716), [sym_immutable] = ACTIONS(4716), [sym_import] = ACTIONS(4716), [sym_in] = ACTIONS(4716), [sym_inout] = ACTIONS(4716), [sym_interface] = ACTIONS(4716), [sym_invariant] = ACTIONS(4716), [sym_is] = ACTIONS(4716), [sym_mixin] = ACTIONS(4716), [sym_new] = ACTIONS(4716), [sym_nothrow] = ACTIONS(4716), [sym_out] = ACTIONS(4716), [sym_override] = ACTIONS(4716), [sym_package] = ACTIONS(4716), [sym_pragma] = ACTIONS(4716), [sym_private] = ACTIONS(4716), [sym_protected] = ACTIONS(4716), [sym_public] = ACTIONS(4716), [sym_pure] = ACTIONS(4716), [sym_ref] = ACTIONS(4716), [sym_return] = ACTIONS(4716), [sym_scope] = ACTIONS(4716), [sym_shared] = ACTIONS(4716), [sym_static] = ACTIONS(4716), [sym_struct] = ACTIONS(4716), [sym_switch] = ACTIONS(4716), [sym_synchronized] = ACTIONS(4716), [sym_template] = ACTIONS(4716), [sym_throw] = ACTIONS(4716), [sym_try] = ACTIONS(4716), [sym_typeid] = ACTIONS(4716), [sym_typeof] = ACTIONS(4716), [sym_union] = ACTIONS(4716), [sym_unittest] = ACTIONS(4716), [sym_version] = ACTIONS(4716), [sym_while] = ACTIONS(4716), [sym_with] = ACTIONS(4716), [sym_gshared] = ACTIONS(4716), [sym_traits] = ACTIONS(4716), [sym_vector] = ACTIONS(4716), [sym_void] = ACTIONS(4716), [anon_sym_BQUOTE] = ACTIONS(4718), [anon_sym_r_DQUOTE] = ACTIONS(4718), [anon_sym_x_DQUOTE] = ACTIONS(4718), [anon_sym_DQUOTE] = ACTIONS(4718), [anon_sym_i_BQUOTE] = ACTIONS(4718), [anon_sym_i_DQUOTE] = ACTIONS(4718), [anon_sym_iq_LBRACE] = ACTIONS(4718), [aux_sym_char_literal_token1] = ACTIONS(4718), [anon_sym_SQUOTE] = ACTIONS(4716), [anon_sym___DATE__] = ACTIONS(4716), [anon_sym___FILE__] = ACTIONS(4716), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4716), [anon_sym___FUNCTION__] = ACTIONS(4716), [anon_sym___LINE__] = ACTIONS(4716), [anon_sym___MODULE__] = ACTIONS(4716), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4716), [anon_sym___TIME__] = ACTIONS(4716), [anon_sym___TIMESTAMP__] = ACTIONS(4716), [anon_sym___VENDOR__] = ACTIONS(4716), [anon_sym___VERSION__] = ACTIONS(4716), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4718), [sym_float_literal] = ACTIONS(4718), [sym__string] = ACTIONS(4718), }, [1612] = { [sym_identifier] = ACTIONS(4698), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4701), [anon_sym_RBRACE] = ACTIONS(4701), [anon_sym_LBRACE] = ACTIONS(4701), [anon_sym_DOT] = ACTIONS(4701), [anon_sym_AMP] = ACTIONS(4701), [anon_sym_DASH] = ACTIONS(4698), [anon_sym_DASH_DASH] = ACTIONS(4701), [anon_sym_PLUS] = ACTIONS(4698), [anon_sym_PLUS_PLUS] = ACTIONS(4701), [anon_sym_BANG] = ACTIONS(4701), [anon_sym_LPAREN] = ACTIONS(4701), [anon_sym_RPAREN] = ACTIONS(4701), [anon_sym_LBRACK] = ACTIONS(4701), [anon_sym_SEMI] = ACTIONS(4701), [anon_sym_DOLLAR] = ACTIONS(4701), [anon_sym_STAR] = ACTIONS(4701), [anon_sym_TILDE] = ACTIONS(4701), [anon_sym_AT] = ACTIONS(4701), [sym_bool] = ACTIONS(4698), [sym_byte] = ACTIONS(4698), [sym_ubyte] = ACTIONS(4698), [sym_char] = ACTIONS(4698), [sym_short] = ACTIONS(4698), [sym_ushort] = ACTIONS(4698), [sym_int] = ACTIONS(4698), [sym_uint] = ACTIONS(4698), [sym_long] = ACTIONS(4698), [sym_ulong] = ACTIONS(4698), [sym_cent] = ACTIONS(4698), [sym_ucent] = ACTIONS(4698), [sym_wchar] = ACTIONS(4698), [sym_dchar] = ACTIONS(4698), [sym_float] = ACTIONS(4698), [sym_double] = ACTIONS(4698), [sym_real] = ACTIONS(4698), [sym_ifloat] = ACTIONS(4698), [sym_idouble] = ACTIONS(4698), [sym_ireal] = ACTIONS(4698), [sym_cfloat] = ACTIONS(4698), [sym_cdouble] = ACTIONS(4698), [sym_creal] = ACTIONS(4698), [sym_size_t] = ACTIONS(4698), [sym_ptrdiff_t] = ACTIONS(4698), [sym_string] = ACTIONS(4698), [sym_cstring] = ACTIONS(4698), [sym_dstring] = ACTIONS(4698), [sym_wstring] = ACTIONS(4698), [sym_noreturn] = ACTIONS(4698), [sym_true] = ACTIONS(4698), [sym_false] = ACTIONS(4698), [sym_null] = ACTIONS(4698), [sym_super] = ACTIONS(4698), [sym_this] = ACTIONS(4698), [sym_abstract] = ACTIONS(4698), [sym_alias] = ACTIONS(4698), [sym_align] = ACTIONS(4698), [sym_asm] = ACTIONS(4698), [sym_assert] = ACTIONS(4698), [sym_auto] = ACTIONS(4698), [sym_break] = ACTIONS(4698), [sym_case] = ACTIONS(4698), [sym_cast] = ACTIONS(4698), [sym_class] = ACTIONS(4698), [sym_const] = ACTIONS(4698), [sym_continue] = ACTIONS(4698), [sym_debug] = ACTIONS(4698), [sym_default] = ACTIONS(4698), [sym_delegate] = ACTIONS(4698), [sym_delete] = ACTIONS(4698), [sym_deprecated] = ACTIONS(4698), [sym_do] = ACTIONS(4698), [sym_else] = ACTIONS(4698), [sym_enum] = ACTIONS(4698), [sym_export] = ACTIONS(4698), [sym_extern] = ACTIONS(4698), [sym_final] = ACTIONS(4698), [sym_for] = ACTIONS(4698), [sym_foreach] = ACTIONS(4698), [sym_foreach_reverse] = ACTIONS(4698), [sym_function] = ACTIONS(4698), [sym_goto] = ACTIONS(4698), [sym_if] = ACTIONS(4698), [sym_immutable] = ACTIONS(4698), [sym_import] = ACTIONS(4698), [sym_in] = ACTIONS(4698), [sym_inout] = ACTIONS(4698), [sym_interface] = ACTIONS(4698), [sym_invariant] = ACTIONS(4698), [sym_is] = ACTIONS(4698), [sym_mixin] = ACTIONS(4698), [sym_new] = ACTIONS(4698), [sym_nothrow] = ACTIONS(4698), [sym_out] = ACTIONS(4698), [sym_override] = ACTIONS(4698), [sym_package] = ACTIONS(4698), [sym_pragma] = ACTIONS(4698), [sym_private] = ACTIONS(4698), [sym_protected] = ACTIONS(4698), [sym_public] = ACTIONS(4698), [sym_pure] = ACTIONS(4698), [sym_ref] = ACTIONS(4698), [sym_return] = ACTIONS(4698), [sym_scope] = ACTIONS(4698), [sym_shared] = ACTIONS(4698), [sym_static] = ACTIONS(4698), [sym_struct] = ACTIONS(4698), [sym_switch] = ACTIONS(4698), [sym_synchronized] = ACTIONS(4698), [sym_template] = ACTIONS(4698), [sym_throw] = ACTIONS(4698), [sym_try] = ACTIONS(4698), [sym_typeid] = ACTIONS(4698), [sym_typeof] = ACTIONS(4698), [sym_union] = ACTIONS(4698), [sym_unittest] = ACTIONS(4698), [sym_version] = ACTIONS(4698), [sym_while] = ACTIONS(4698), [sym_with] = ACTIONS(4698), [sym_gshared] = ACTIONS(4698), [sym_traits] = ACTIONS(4698), [sym_vector] = ACTIONS(4698), [sym_void] = ACTIONS(4698), [anon_sym_BQUOTE] = ACTIONS(4701), [anon_sym_r_DQUOTE] = ACTIONS(4701), [anon_sym_x_DQUOTE] = ACTIONS(4701), [anon_sym_DQUOTE] = ACTIONS(4701), [anon_sym_i_BQUOTE] = ACTIONS(4701), [anon_sym_i_DQUOTE] = ACTIONS(4701), [anon_sym_iq_LBRACE] = ACTIONS(4701), [aux_sym_char_literal_token1] = ACTIONS(4701), [anon_sym_SQUOTE] = ACTIONS(4698), [anon_sym___DATE__] = ACTIONS(4698), [anon_sym___FILE__] = ACTIONS(4698), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4698), [anon_sym___FUNCTION__] = ACTIONS(4698), [anon_sym___LINE__] = ACTIONS(4698), [anon_sym___MODULE__] = ACTIONS(4698), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4698), [anon_sym___TIME__] = ACTIONS(4698), [anon_sym___TIMESTAMP__] = ACTIONS(4698), [anon_sym___VENDOR__] = ACTIONS(4698), [anon_sym___VERSION__] = ACTIONS(4698), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4701), [sym_float_literal] = ACTIONS(4701), [sym__string] = ACTIONS(4701), }, [1613] = { [sym_identifier] = ACTIONS(4422), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4424), [anon_sym_RBRACE] = ACTIONS(4424), [anon_sym_LBRACE] = ACTIONS(4424), [anon_sym_DOT] = ACTIONS(4424), [anon_sym_AMP] = ACTIONS(4424), [anon_sym_DASH] = ACTIONS(4422), [anon_sym_DASH_DASH] = ACTIONS(4424), [anon_sym_PLUS] = ACTIONS(4422), [anon_sym_PLUS_PLUS] = ACTIONS(4424), [anon_sym_BANG] = ACTIONS(4424), [anon_sym_LPAREN] = ACTIONS(4424), [anon_sym_RPAREN] = ACTIONS(4424), [anon_sym_LBRACK] = ACTIONS(4424), [anon_sym_SEMI] = ACTIONS(4424), [anon_sym_DOLLAR] = ACTIONS(4424), [anon_sym_STAR] = ACTIONS(4424), [anon_sym_TILDE] = ACTIONS(4424), [anon_sym_AT] = ACTIONS(4424), [sym_bool] = ACTIONS(4422), [sym_byte] = ACTIONS(4422), [sym_ubyte] = ACTIONS(4422), [sym_char] = ACTIONS(4422), [sym_short] = ACTIONS(4422), [sym_ushort] = ACTIONS(4422), [sym_int] = ACTIONS(4422), [sym_uint] = ACTIONS(4422), [sym_long] = ACTIONS(4422), [sym_ulong] = ACTIONS(4422), [sym_cent] = ACTIONS(4422), [sym_ucent] = ACTIONS(4422), [sym_wchar] = ACTIONS(4422), [sym_dchar] = ACTIONS(4422), [sym_float] = ACTIONS(4422), [sym_double] = ACTIONS(4422), [sym_real] = ACTIONS(4422), [sym_ifloat] = ACTIONS(4422), [sym_idouble] = ACTIONS(4422), [sym_ireal] = ACTIONS(4422), [sym_cfloat] = ACTIONS(4422), [sym_cdouble] = ACTIONS(4422), [sym_creal] = ACTIONS(4422), [sym_size_t] = ACTIONS(4422), [sym_ptrdiff_t] = ACTIONS(4422), [sym_string] = ACTIONS(4422), [sym_cstring] = ACTIONS(4422), [sym_dstring] = ACTIONS(4422), [sym_wstring] = ACTIONS(4422), [sym_noreturn] = ACTIONS(4422), [sym_true] = ACTIONS(4422), [sym_false] = ACTIONS(4422), [sym_null] = ACTIONS(4422), [sym_super] = ACTIONS(4422), [sym_this] = ACTIONS(4422), [sym_abstract] = ACTIONS(4422), [sym_alias] = ACTIONS(4422), [sym_align] = ACTIONS(4422), [sym_asm] = ACTIONS(4422), [sym_assert] = ACTIONS(4422), [sym_auto] = ACTIONS(4422), [sym_break] = ACTIONS(4422), [sym_case] = ACTIONS(4422), [sym_cast] = ACTIONS(4422), [sym_class] = ACTIONS(4422), [sym_const] = ACTIONS(4422), [sym_continue] = ACTIONS(4422), [sym_debug] = ACTIONS(4422), [sym_default] = ACTIONS(4422), [sym_delegate] = ACTIONS(4422), [sym_delete] = ACTIONS(4422), [sym_deprecated] = ACTIONS(4422), [sym_do] = ACTIONS(4422), [sym_else] = ACTIONS(4422), [sym_enum] = ACTIONS(4422), [sym_export] = ACTIONS(4422), [sym_extern] = ACTIONS(4422), [sym_final] = ACTIONS(4422), [sym_for] = ACTIONS(4422), [sym_foreach] = ACTIONS(4422), [sym_foreach_reverse] = ACTIONS(4422), [sym_function] = ACTIONS(4422), [sym_goto] = ACTIONS(4422), [sym_if] = ACTIONS(4422), [sym_immutable] = ACTIONS(4422), [sym_import] = ACTIONS(4422), [sym_in] = ACTIONS(4422), [sym_inout] = ACTIONS(4422), [sym_interface] = ACTIONS(4422), [sym_invariant] = ACTIONS(4422), [sym_is] = ACTIONS(4422), [sym_mixin] = ACTIONS(4422), [sym_new] = ACTIONS(4422), [sym_nothrow] = ACTIONS(4422), [sym_out] = ACTIONS(4422), [sym_override] = ACTIONS(4422), [sym_package] = ACTIONS(4422), [sym_pragma] = ACTIONS(4422), [sym_private] = ACTIONS(4422), [sym_protected] = ACTIONS(4422), [sym_public] = ACTIONS(4422), [sym_pure] = ACTIONS(4422), [sym_ref] = ACTIONS(4422), [sym_return] = ACTIONS(4422), [sym_scope] = ACTIONS(4422), [sym_shared] = ACTIONS(4422), [sym_static] = ACTIONS(4422), [sym_struct] = ACTIONS(4422), [sym_switch] = ACTIONS(4422), [sym_synchronized] = ACTIONS(4422), [sym_template] = ACTIONS(4422), [sym_throw] = ACTIONS(4422), [sym_try] = ACTIONS(4422), [sym_typeid] = ACTIONS(4422), [sym_typeof] = ACTIONS(4422), [sym_union] = ACTIONS(4422), [sym_unittest] = ACTIONS(4422), [sym_version] = ACTIONS(4422), [sym_while] = ACTIONS(4422), [sym_with] = ACTIONS(4422), [sym_gshared] = ACTIONS(4422), [sym_traits] = ACTIONS(4422), [sym_vector] = ACTIONS(4422), [sym_void] = ACTIONS(4422), [anon_sym_BQUOTE] = ACTIONS(4424), [anon_sym_r_DQUOTE] = ACTIONS(4424), [anon_sym_x_DQUOTE] = ACTIONS(4424), [anon_sym_DQUOTE] = ACTIONS(4424), [anon_sym_i_BQUOTE] = ACTIONS(4424), [anon_sym_i_DQUOTE] = ACTIONS(4424), [anon_sym_iq_LBRACE] = ACTIONS(4424), [aux_sym_char_literal_token1] = ACTIONS(4424), [anon_sym_SQUOTE] = ACTIONS(4422), [anon_sym___DATE__] = ACTIONS(4422), [anon_sym___FILE__] = ACTIONS(4422), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4422), [anon_sym___FUNCTION__] = ACTIONS(4422), [anon_sym___LINE__] = ACTIONS(4422), [anon_sym___MODULE__] = ACTIONS(4422), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4422), [anon_sym___TIME__] = ACTIONS(4422), [anon_sym___TIMESTAMP__] = ACTIONS(4422), [anon_sym___VENDOR__] = ACTIONS(4422), [anon_sym___VERSION__] = ACTIONS(4422), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4424), [sym_float_literal] = ACTIONS(4424), [sym__string] = ACTIONS(4424), }, [1614] = { [sym_identifier] = ACTIONS(4888), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4890), [anon_sym_RBRACE] = ACTIONS(4890), [anon_sym_LBRACE] = ACTIONS(4890), [anon_sym_DOT] = ACTIONS(4890), [anon_sym_AMP] = ACTIONS(4890), [anon_sym_DASH] = ACTIONS(4888), [anon_sym_DASH_DASH] = ACTIONS(4890), [anon_sym_PLUS] = ACTIONS(4888), [anon_sym_PLUS_PLUS] = ACTIONS(4890), [anon_sym_BANG] = ACTIONS(4890), [anon_sym_LPAREN] = ACTIONS(4890), [anon_sym_RPAREN] = ACTIONS(4890), [anon_sym_LBRACK] = ACTIONS(4890), [anon_sym_SEMI] = ACTIONS(4890), [anon_sym_DOLLAR] = ACTIONS(4890), [anon_sym_STAR] = ACTIONS(4890), [anon_sym_TILDE] = ACTIONS(4890), [anon_sym_AT] = ACTIONS(4890), [sym_bool] = ACTIONS(4888), [sym_byte] = ACTIONS(4888), [sym_ubyte] = ACTIONS(4888), [sym_char] = ACTIONS(4888), [sym_short] = ACTIONS(4888), [sym_ushort] = ACTIONS(4888), [sym_int] = ACTIONS(4888), [sym_uint] = ACTIONS(4888), [sym_long] = ACTIONS(4888), [sym_ulong] = ACTIONS(4888), [sym_cent] = ACTIONS(4888), [sym_ucent] = ACTIONS(4888), [sym_wchar] = ACTIONS(4888), [sym_dchar] = ACTIONS(4888), [sym_float] = ACTIONS(4888), [sym_double] = ACTIONS(4888), [sym_real] = ACTIONS(4888), [sym_ifloat] = ACTIONS(4888), [sym_idouble] = ACTIONS(4888), [sym_ireal] = ACTIONS(4888), [sym_cfloat] = ACTIONS(4888), [sym_cdouble] = ACTIONS(4888), [sym_creal] = ACTIONS(4888), [sym_size_t] = ACTIONS(4888), [sym_ptrdiff_t] = ACTIONS(4888), [sym_string] = ACTIONS(4888), [sym_cstring] = ACTIONS(4888), [sym_dstring] = ACTIONS(4888), [sym_wstring] = ACTIONS(4888), [sym_noreturn] = ACTIONS(4888), [sym_true] = ACTIONS(4888), [sym_false] = ACTIONS(4888), [sym_null] = ACTIONS(4888), [sym_super] = ACTIONS(4888), [sym_this] = ACTIONS(4888), [sym_abstract] = ACTIONS(4888), [sym_alias] = ACTIONS(4888), [sym_align] = ACTIONS(4888), [sym_asm] = ACTIONS(4888), [sym_assert] = ACTIONS(4888), [sym_auto] = ACTIONS(4888), [sym_break] = ACTIONS(4888), [sym_case] = ACTIONS(4888), [sym_cast] = ACTIONS(4888), [sym_class] = ACTIONS(4888), [sym_const] = ACTIONS(4888), [sym_continue] = ACTIONS(4888), [sym_debug] = ACTIONS(4888), [sym_default] = ACTIONS(4888), [sym_delegate] = ACTIONS(4888), [sym_delete] = ACTIONS(4888), [sym_deprecated] = ACTIONS(4888), [sym_do] = ACTIONS(4888), [sym_else] = ACTIONS(4888), [sym_enum] = ACTIONS(4888), [sym_export] = ACTIONS(4888), [sym_extern] = ACTIONS(4888), [sym_final] = ACTIONS(4888), [sym_for] = ACTIONS(4888), [sym_foreach] = ACTIONS(4888), [sym_foreach_reverse] = ACTIONS(4888), [sym_function] = ACTIONS(4888), [sym_goto] = ACTIONS(4888), [sym_if] = ACTIONS(4888), [sym_immutable] = ACTIONS(4888), [sym_import] = ACTIONS(4888), [sym_in] = ACTIONS(4888), [sym_inout] = ACTIONS(4888), [sym_interface] = ACTIONS(4888), [sym_invariant] = ACTIONS(4888), [sym_is] = ACTIONS(4888), [sym_mixin] = ACTIONS(4888), [sym_new] = ACTIONS(4888), [sym_nothrow] = ACTIONS(4888), [sym_out] = ACTIONS(4888), [sym_override] = ACTIONS(4888), [sym_package] = ACTIONS(4888), [sym_pragma] = ACTIONS(4888), [sym_private] = ACTIONS(4888), [sym_protected] = ACTIONS(4888), [sym_public] = ACTIONS(4888), [sym_pure] = ACTIONS(4888), [sym_ref] = ACTIONS(4888), [sym_return] = ACTIONS(4888), [sym_scope] = ACTIONS(4888), [sym_shared] = ACTIONS(4888), [sym_static] = ACTIONS(4888), [sym_struct] = ACTIONS(4888), [sym_switch] = ACTIONS(4888), [sym_synchronized] = ACTIONS(4888), [sym_template] = ACTIONS(4888), [sym_throw] = ACTIONS(4888), [sym_try] = ACTIONS(4888), [sym_typeid] = ACTIONS(4888), [sym_typeof] = ACTIONS(4888), [sym_union] = ACTIONS(4888), [sym_unittest] = ACTIONS(4888), [sym_version] = ACTIONS(4888), [sym_while] = ACTIONS(4888), [sym_with] = ACTIONS(4888), [sym_gshared] = ACTIONS(4888), [sym_traits] = ACTIONS(4888), [sym_vector] = ACTIONS(4888), [sym_void] = ACTIONS(4888), [anon_sym_BQUOTE] = ACTIONS(4890), [anon_sym_r_DQUOTE] = ACTIONS(4890), [anon_sym_x_DQUOTE] = ACTIONS(4890), [anon_sym_DQUOTE] = ACTIONS(4890), [anon_sym_i_BQUOTE] = ACTIONS(4890), [anon_sym_i_DQUOTE] = ACTIONS(4890), [anon_sym_iq_LBRACE] = ACTIONS(4890), [aux_sym_char_literal_token1] = ACTIONS(4890), [anon_sym_SQUOTE] = ACTIONS(4888), [anon_sym___DATE__] = ACTIONS(4888), [anon_sym___FILE__] = ACTIONS(4888), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4888), [anon_sym___FUNCTION__] = ACTIONS(4888), [anon_sym___LINE__] = ACTIONS(4888), [anon_sym___MODULE__] = ACTIONS(4888), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4888), [anon_sym___TIME__] = ACTIONS(4888), [anon_sym___TIMESTAMP__] = ACTIONS(4888), [anon_sym___VENDOR__] = ACTIONS(4888), [anon_sym___VERSION__] = ACTIONS(4888), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4890), [sym_float_literal] = ACTIONS(4890), [sym__string] = ACTIONS(4890), }, [1615] = { [sym_identifier] = ACTIONS(4289), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4291), [anon_sym_RBRACE] = ACTIONS(4291), [anon_sym_LBRACE] = ACTIONS(4291), [anon_sym_DOT] = ACTIONS(4291), [anon_sym_AMP] = ACTIONS(4291), [anon_sym_DASH] = ACTIONS(4289), [anon_sym_DASH_DASH] = ACTIONS(4291), [anon_sym_PLUS] = ACTIONS(4289), [anon_sym_PLUS_PLUS] = ACTIONS(4291), [anon_sym_BANG] = ACTIONS(4291), [anon_sym_LPAREN] = ACTIONS(4291), [anon_sym_RPAREN] = ACTIONS(4291), [anon_sym_LBRACK] = ACTIONS(4291), [anon_sym_SEMI] = ACTIONS(4291), [anon_sym_DOLLAR] = ACTIONS(4291), [anon_sym_STAR] = ACTIONS(4291), [anon_sym_TILDE] = ACTIONS(4291), [anon_sym_AT] = ACTIONS(4291), [sym_bool] = ACTIONS(4289), [sym_byte] = ACTIONS(4289), [sym_ubyte] = ACTIONS(4289), [sym_char] = ACTIONS(4289), [sym_short] = ACTIONS(4289), [sym_ushort] = ACTIONS(4289), [sym_int] = ACTIONS(4289), [sym_uint] = ACTIONS(4289), [sym_long] = ACTIONS(4289), [sym_ulong] = ACTIONS(4289), [sym_cent] = ACTIONS(4289), [sym_ucent] = ACTIONS(4289), [sym_wchar] = ACTIONS(4289), [sym_dchar] = ACTIONS(4289), [sym_float] = ACTIONS(4289), [sym_double] = ACTIONS(4289), [sym_real] = ACTIONS(4289), [sym_ifloat] = ACTIONS(4289), [sym_idouble] = ACTIONS(4289), [sym_ireal] = ACTIONS(4289), [sym_cfloat] = ACTIONS(4289), [sym_cdouble] = ACTIONS(4289), [sym_creal] = ACTIONS(4289), [sym_size_t] = ACTIONS(4289), [sym_ptrdiff_t] = ACTIONS(4289), [sym_string] = ACTIONS(4289), [sym_cstring] = ACTIONS(4289), [sym_dstring] = ACTIONS(4289), [sym_wstring] = ACTIONS(4289), [sym_noreturn] = ACTIONS(4289), [sym_true] = ACTIONS(4289), [sym_false] = ACTIONS(4289), [sym_null] = ACTIONS(4289), [sym_super] = ACTIONS(4289), [sym_this] = ACTIONS(4289), [sym_abstract] = ACTIONS(4289), [sym_alias] = ACTIONS(4289), [sym_align] = ACTIONS(4289), [sym_asm] = ACTIONS(4289), [sym_assert] = ACTIONS(4289), [sym_auto] = ACTIONS(4289), [sym_break] = ACTIONS(4289), [sym_case] = ACTIONS(4289), [sym_cast] = ACTIONS(4289), [sym_class] = ACTIONS(4289), [sym_const] = ACTIONS(4289), [sym_continue] = ACTIONS(4289), [sym_debug] = ACTIONS(4289), [sym_default] = ACTIONS(4289), [sym_delegate] = ACTIONS(4289), [sym_delete] = ACTIONS(4289), [sym_deprecated] = ACTIONS(4289), [sym_do] = ACTIONS(4289), [sym_else] = ACTIONS(4289), [sym_enum] = ACTIONS(4289), [sym_export] = ACTIONS(4289), [sym_extern] = ACTIONS(4289), [sym_final] = ACTIONS(4289), [sym_for] = ACTIONS(4289), [sym_foreach] = ACTIONS(4289), [sym_foreach_reverse] = ACTIONS(4289), [sym_function] = ACTIONS(4289), [sym_goto] = ACTIONS(4289), [sym_if] = ACTIONS(4289), [sym_immutable] = ACTIONS(4289), [sym_import] = ACTIONS(4289), [sym_in] = ACTIONS(4289), [sym_inout] = ACTIONS(4289), [sym_interface] = ACTIONS(4289), [sym_invariant] = ACTIONS(4289), [sym_is] = ACTIONS(4289), [sym_mixin] = ACTIONS(4289), [sym_new] = ACTIONS(4289), [sym_nothrow] = ACTIONS(4289), [sym_out] = ACTIONS(4289), [sym_override] = ACTIONS(4289), [sym_package] = ACTIONS(4289), [sym_pragma] = ACTIONS(4289), [sym_private] = ACTIONS(4289), [sym_protected] = ACTIONS(4289), [sym_public] = ACTIONS(4289), [sym_pure] = ACTIONS(4289), [sym_ref] = ACTIONS(4289), [sym_return] = ACTIONS(4289), [sym_scope] = ACTIONS(4289), [sym_shared] = ACTIONS(4289), [sym_static] = ACTIONS(4289), [sym_struct] = ACTIONS(4289), [sym_switch] = ACTIONS(4289), [sym_synchronized] = ACTIONS(4289), [sym_template] = ACTIONS(4289), [sym_throw] = ACTIONS(4289), [sym_try] = ACTIONS(4289), [sym_typeid] = ACTIONS(4289), [sym_typeof] = ACTIONS(4289), [sym_union] = ACTIONS(4289), [sym_unittest] = ACTIONS(4289), [sym_version] = ACTIONS(4289), [sym_while] = ACTIONS(4289), [sym_with] = ACTIONS(4289), [sym_gshared] = ACTIONS(4289), [sym_traits] = ACTIONS(4289), [sym_vector] = ACTIONS(4289), [sym_void] = ACTIONS(4289), [anon_sym_BQUOTE] = ACTIONS(4291), [anon_sym_r_DQUOTE] = ACTIONS(4291), [anon_sym_x_DQUOTE] = ACTIONS(4291), [anon_sym_DQUOTE] = ACTIONS(4291), [anon_sym_i_BQUOTE] = ACTIONS(4291), [anon_sym_i_DQUOTE] = ACTIONS(4291), [anon_sym_iq_LBRACE] = ACTIONS(4291), [aux_sym_char_literal_token1] = ACTIONS(4291), [anon_sym_SQUOTE] = ACTIONS(4289), [anon_sym___DATE__] = ACTIONS(4289), [anon_sym___FILE__] = ACTIONS(4289), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4289), [anon_sym___FUNCTION__] = ACTIONS(4289), [anon_sym___LINE__] = ACTIONS(4289), [anon_sym___MODULE__] = ACTIONS(4289), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4289), [anon_sym___TIME__] = ACTIONS(4289), [anon_sym___TIMESTAMP__] = ACTIONS(4289), [anon_sym___VENDOR__] = ACTIONS(4289), [anon_sym___VERSION__] = ACTIONS(4289), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4291), [sym_float_literal] = ACTIONS(4291), [sym__string] = ACTIONS(4291), }, [1616] = { [sym_identifier] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2810), [anon_sym_RBRACE] = ACTIONS(2810), [anon_sym_LBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(2810), [anon_sym_AMP] = ACTIONS(2810), [anon_sym_DASH] = ACTIONS(2812), [anon_sym_DASH_DASH] = ACTIONS(2810), [anon_sym_PLUS] = ACTIONS(2812), [anon_sym_PLUS_PLUS] = ACTIONS(2810), [anon_sym_BANG] = ACTIONS(2810), [anon_sym_LPAREN] = ACTIONS(2810), [anon_sym_RPAREN] = ACTIONS(2810), [anon_sym_LBRACK] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2810), [anon_sym_DOLLAR] = ACTIONS(2810), [anon_sym_STAR] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2810), [anon_sym_AT] = ACTIONS(2810), [sym_bool] = ACTIONS(2812), [sym_byte] = ACTIONS(2812), [sym_ubyte] = ACTIONS(2812), [sym_char] = ACTIONS(2812), [sym_short] = ACTIONS(2812), [sym_ushort] = ACTIONS(2812), [sym_int] = ACTIONS(2812), [sym_uint] = ACTIONS(2812), [sym_long] = ACTIONS(2812), [sym_ulong] = ACTIONS(2812), [sym_cent] = ACTIONS(2812), [sym_ucent] = ACTIONS(2812), [sym_wchar] = ACTIONS(2812), [sym_dchar] = ACTIONS(2812), [sym_float] = ACTIONS(2812), [sym_double] = ACTIONS(2812), [sym_real] = ACTIONS(2812), [sym_ifloat] = ACTIONS(2812), [sym_idouble] = ACTIONS(2812), [sym_ireal] = ACTIONS(2812), [sym_cfloat] = ACTIONS(2812), [sym_cdouble] = ACTIONS(2812), [sym_creal] = ACTIONS(2812), [sym_size_t] = ACTIONS(2812), [sym_ptrdiff_t] = ACTIONS(2812), [sym_string] = ACTIONS(2812), [sym_cstring] = ACTIONS(2812), [sym_dstring] = ACTIONS(2812), [sym_wstring] = ACTIONS(2812), [sym_noreturn] = ACTIONS(2812), [sym_true] = ACTIONS(2812), [sym_false] = ACTIONS(2812), [sym_null] = ACTIONS(2812), [sym_super] = ACTIONS(2812), [sym_this] = ACTIONS(2812), [sym_abstract] = ACTIONS(2812), [sym_alias] = ACTIONS(2812), [sym_align] = ACTIONS(2812), [sym_asm] = ACTIONS(2812), [sym_assert] = ACTIONS(2812), [sym_auto] = ACTIONS(2812), [sym_break] = ACTIONS(2812), [sym_case] = ACTIONS(2812), [sym_cast] = ACTIONS(2812), [sym_class] = ACTIONS(2812), [sym_const] = ACTIONS(2812), [sym_continue] = ACTIONS(2812), [sym_debug] = ACTIONS(2812), [sym_default] = ACTIONS(2812), [sym_delegate] = ACTIONS(2812), [sym_delete] = ACTIONS(2812), [sym_deprecated] = ACTIONS(2812), [sym_do] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(2812), [sym_export] = ACTIONS(2812), [sym_extern] = ACTIONS(2812), [sym_final] = ACTIONS(2812), [sym_for] = ACTIONS(2812), [sym_foreach] = ACTIONS(2812), [sym_foreach_reverse] = ACTIONS(2812), [sym_function] = ACTIONS(2812), [sym_goto] = ACTIONS(2812), [sym_if] = ACTIONS(2812), [sym_immutable] = ACTIONS(2812), [sym_import] = ACTIONS(2812), [sym_in] = ACTIONS(2812), [sym_inout] = ACTIONS(2812), [sym_interface] = ACTIONS(2812), [sym_invariant] = ACTIONS(2812), [sym_is] = ACTIONS(2812), [sym_mixin] = ACTIONS(2812), [sym_new] = ACTIONS(2812), [sym_nothrow] = ACTIONS(2812), [sym_out] = ACTIONS(2812), [sym_override] = ACTIONS(2812), [sym_package] = ACTIONS(2812), [sym_pragma] = ACTIONS(2812), [sym_private] = ACTIONS(2812), [sym_protected] = ACTIONS(2812), [sym_public] = ACTIONS(2812), [sym_pure] = ACTIONS(2812), [sym_ref] = ACTIONS(2812), [sym_return] = ACTIONS(2812), [sym_scope] = ACTIONS(2812), [sym_shared] = ACTIONS(2812), [sym_static] = ACTIONS(2812), [sym_struct] = ACTIONS(2812), [sym_switch] = ACTIONS(2812), [sym_synchronized] = ACTIONS(2812), [sym_template] = ACTIONS(2812), [sym_throw] = ACTIONS(2812), [sym_try] = ACTIONS(2812), [sym_typeid] = ACTIONS(2812), [sym_typeof] = ACTIONS(2812), [sym_union] = ACTIONS(2812), [sym_unittest] = ACTIONS(2812), [sym_version] = ACTIONS(2812), [sym_while] = ACTIONS(2812), [sym_with] = ACTIONS(2812), [sym_gshared] = ACTIONS(2812), [sym_traits] = ACTIONS(2812), [sym_vector] = ACTIONS(2812), [sym_void] = ACTIONS(2812), [anon_sym_BQUOTE] = ACTIONS(2810), [anon_sym_r_DQUOTE] = ACTIONS(2810), [anon_sym_x_DQUOTE] = ACTIONS(2810), [anon_sym_DQUOTE] = ACTIONS(2810), [anon_sym_i_BQUOTE] = ACTIONS(2810), [anon_sym_i_DQUOTE] = ACTIONS(2810), [anon_sym_iq_LBRACE] = ACTIONS(2810), [aux_sym_char_literal_token1] = ACTIONS(2810), [anon_sym_SQUOTE] = ACTIONS(2812), [anon_sym___DATE__] = ACTIONS(2812), [anon_sym___FILE__] = ACTIONS(2812), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2812), [anon_sym___FUNCTION__] = ACTIONS(2812), [anon_sym___LINE__] = ACTIONS(2812), [anon_sym___MODULE__] = ACTIONS(2812), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2812), [anon_sym___TIME__] = ACTIONS(2812), [anon_sym___TIMESTAMP__] = ACTIONS(2812), [anon_sym___VENDOR__] = ACTIONS(2812), [anon_sym___VERSION__] = ACTIONS(2812), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2810), [sym_float_literal] = ACTIONS(2810), [sym__string] = ACTIONS(2810), }, [1617] = { [sym_identifier] = ACTIONS(4378), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4380), [anon_sym_RBRACE] = ACTIONS(4380), [anon_sym_LBRACE] = ACTIONS(4380), [anon_sym_DOT] = ACTIONS(4380), [anon_sym_AMP] = ACTIONS(4380), [anon_sym_DASH] = ACTIONS(4378), [anon_sym_DASH_DASH] = ACTIONS(4380), [anon_sym_PLUS] = ACTIONS(4378), [anon_sym_PLUS_PLUS] = ACTIONS(4380), [anon_sym_BANG] = ACTIONS(4380), [anon_sym_LPAREN] = ACTIONS(4380), [anon_sym_RPAREN] = ACTIONS(4380), [anon_sym_LBRACK] = ACTIONS(4380), [anon_sym_SEMI] = ACTIONS(4380), [anon_sym_DOLLAR] = ACTIONS(4380), [anon_sym_STAR] = ACTIONS(4380), [anon_sym_TILDE] = ACTIONS(4380), [anon_sym_AT] = ACTIONS(4380), [sym_bool] = ACTIONS(4378), [sym_byte] = ACTIONS(4378), [sym_ubyte] = ACTIONS(4378), [sym_char] = ACTIONS(4378), [sym_short] = ACTIONS(4378), [sym_ushort] = ACTIONS(4378), [sym_int] = ACTIONS(4378), [sym_uint] = ACTIONS(4378), [sym_long] = ACTIONS(4378), [sym_ulong] = ACTIONS(4378), [sym_cent] = ACTIONS(4378), [sym_ucent] = ACTIONS(4378), [sym_wchar] = ACTIONS(4378), [sym_dchar] = ACTIONS(4378), [sym_float] = ACTIONS(4378), [sym_double] = ACTIONS(4378), [sym_real] = ACTIONS(4378), [sym_ifloat] = ACTIONS(4378), [sym_idouble] = ACTIONS(4378), [sym_ireal] = ACTIONS(4378), [sym_cfloat] = ACTIONS(4378), [sym_cdouble] = ACTIONS(4378), [sym_creal] = ACTIONS(4378), [sym_size_t] = ACTIONS(4378), [sym_ptrdiff_t] = ACTIONS(4378), [sym_string] = ACTIONS(4378), [sym_cstring] = ACTIONS(4378), [sym_dstring] = ACTIONS(4378), [sym_wstring] = ACTIONS(4378), [sym_noreturn] = ACTIONS(4378), [sym_true] = ACTIONS(4378), [sym_false] = ACTIONS(4378), [sym_null] = ACTIONS(4378), [sym_super] = ACTIONS(4378), [sym_this] = ACTIONS(4378), [sym_abstract] = ACTIONS(4378), [sym_alias] = ACTIONS(4378), [sym_align] = ACTIONS(4378), [sym_asm] = ACTIONS(4378), [sym_assert] = ACTIONS(4378), [sym_auto] = ACTIONS(4378), [sym_break] = ACTIONS(4378), [sym_case] = ACTIONS(4378), [sym_cast] = ACTIONS(4378), [sym_class] = ACTIONS(4378), [sym_const] = ACTIONS(4378), [sym_continue] = ACTIONS(4378), [sym_debug] = ACTIONS(4378), [sym_default] = ACTIONS(4378), [sym_delegate] = ACTIONS(4378), [sym_delete] = ACTIONS(4378), [sym_deprecated] = ACTIONS(4378), [sym_do] = ACTIONS(4378), [sym_else] = ACTIONS(4378), [sym_enum] = ACTIONS(4378), [sym_export] = ACTIONS(4378), [sym_extern] = ACTIONS(4378), [sym_final] = ACTIONS(4378), [sym_for] = ACTIONS(4378), [sym_foreach] = ACTIONS(4378), [sym_foreach_reverse] = ACTIONS(4378), [sym_function] = ACTIONS(4378), [sym_goto] = ACTIONS(4378), [sym_if] = ACTIONS(4378), [sym_immutable] = ACTIONS(4378), [sym_import] = ACTIONS(4378), [sym_in] = ACTIONS(4378), [sym_inout] = ACTIONS(4378), [sym_interface] = ACTIONS(4378), [sym_invariant] = ACTIONS(4378), [sym_is] = ACTIONS(4378), [sym_mixin] = ACTIONS(4378), [sym_new] = ACTIONS(4378), [sym_nothrow] = ACTIONS(4378), [sym_out] = ACTIONS(4378), [sym_override] = ACTIONS(4378), [sym_package] = ACTIONS(4378), [sym_pragma] = ACTIONS(4378), [sym_private] = ACTIONS(4378), [sym_protected] = ACTIONS(4378), [sym_public] = ACTIONS(4378), [sym_pure] = ACTIONS(4378), [sym_ref] = ACTIONS(4378), [sym_return] = ACTIONS(4378), [sym_scope] = ACTIONS(4378), [sym_shared] = ACTIONS(4378), [sym_static] = ACTIONS(4378), [sym_struct] = ACTIONS(4378), [sym_switch] = ACTIONS(4378), [sym_synchronized] = ACTIONS(4378), [sym_template] = ACTIONS(4378), [sym_throw] = ACTIONS(4378), [sym_try] = ACTIONS(4378), [sym_typeid] = ACTIONS(4378), [sym_typeof] = ACTIONS(4378), [sym_union] = ACTIONS(4378), [sym_unittest] = ACTIONS(4378), [sym_version] = ACTIONS(4378), [sym_while] = ACTIONS(4378), [sym_with] = ACTIONS(4378), [sym_gshared] = ACTIONS(4378), [sym_traits] = ACTIONS(4378), [sym_vector] = ACTIONS(4378), [sym_void] = ACTIONS(4378), [anon_sym_BQUOTE] = ACTIONS(4380), [anon_sym_r_DQUOTE] = ACTIONS(4380), [anon_sym_x_DQUOTE] = ACTIONS(4380), [anon_sym_DQUOTE] = ACTIONS(4380), [anon_sym_i_BQUOTE] = ACTIONS(4380), [anon_sym_i_DQUOTE] = ACTIONS(4380), [anon_sym_iq_LBRACE] = ACTIONS(4380), [aux_sym_char_literal_token1] = ACTIONS(4380), [anon_sym_SQUOTE] = ACTIONS(4378), [anon_sym___DATE__] = ACTIONS(4378), [anon_sym___FILE__] = ACTIONS(4378), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4378), [anon_sym___FUNCTION__] = ACTIONS(4378), [anon_sym___LINE__] = ACTIONS(4378), [anon_sym___MODULE__] = ACTIONS(4378), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4378), [anon_sym___TIME__] = ACTIONS(4378), [anon_sym___TIMESTAMP__] = ACTIONS(4378), [anon_sym___VENDOR__] = ACTIONS(4378), [anon_sym___VERSION__] = ACTIONS(4378), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4380), [sym_float_literal] = ACTIONS(4380), [sym__string] = ACTIONS(4380), }, [1618] = { [sym_identifier] = ACTIONS(4868), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4870), [anon_sym_RBRACE] = ACTIONS(4870), [anon_sym_LBRACE] = ACTIONS(4870), [anon_sym_DOT] = ACTIONS(4870), [anon_sym_AMP] = ACTIONS(4870), [anon_sym_DASH] = ACTIONS(4868), [anon_sym_DASH_DASH] = ACTIONS(4870), [anon_sym_PLUS] = ACTIONS(4868), [anon_sym_PLUS_PLUS] = ACTIONS(4870), [anon_sym_BANG] = ACTIONS(4870), [anon_sym_LPAREN] = ACTIONS(4870), [anon_sym_RPAREN] = ACTIONS(4870), [anon_sym_LBRACK] = ACTIONS(4870), [anon_sym_SEMI] = ACTIONS(4870), [anon_sym_DOLLAR] = ACTIONS(4870), [anon_sym_STAR] = ACTIONS(4870), [anon_sym_TILDE] = ACTIONS(4870), [anon_sym_AT] = ACTIONS(4870), [sym_bool] = ACTIONS(4868), [sym_byte] = ACTIONS(4868), [sym_ubyte] = ACTIONS(4868), [sym_char] = ACTIONS(4868), [sym_short] = ACTIONS(4868), [sym_ushort] = ACTIONS(4868), [sym_int] = ACTIONS(4868), [sym_uint] = ACTIONS(4868), [sym_long] = ACTIONS(4868), [sym_ulong] = ACTIONS(4868), [sym_cent] = ACTIONS(4868), [sym_ucent] = ACTIONS(4868), [sym_wchar] = ACTIONS(4868), [sym_dchar] = ACTIONS(4868), [sym_float] = ACTIONS(4868), [sym_double] = ACTIONS(4868), [sym_real] = ACTIONS(4868), [sym_ifloat] = ACTIONS(4868), [sym_idouble] = ACTIONS(4868), [sym_ireal] = ACTIONS(4868), [sym_cfloat] = ACTIONS(4868), [sym_cdouble] = ACTIONS(4868), [sym_creal] = ACTIONS(4868), [sym_size_t] = ACTIONS(4868), [sym_ptrdiff_t] = ACTIONS(4868), [sym_string] = ACTIONS(4868), [sym_cstring] = ACTIONS(4868), [sym_dstring] = ACTIONS(4868), [sym_wstring] = ACTIONS(4868), [sym_noreturn] = ACTIONS(4868), [sym_true] = ACTIONS(4868), [sym_false] = ACTIONS(4868), [sym_null] = ACTIONS(4868), [sym_super] = ACTIONS(4868), [sym_this] = ACTIONS(4868), [sym_abstract] = ACTIONS(4868), [sym_alias] = ACTIONS(4868), [sym_align] = ACTIONS(4868), [sym_asm] = ACTIONS(4868), [sym_assert] = ACTIONS(4868), [sym_auto] = ACTIONS(4868), [sym_break] = ACTIONS(4868), [sym_case] = ACTIONS(4868), [sym_cast] = ACTIONS(4868), [sym_class] = ACTIONS(4868), [sym_const] = ACTIONS(4868), [sym_continue] = ACTIONS(4868), [sym_debug] = ACTIONS(4868), [sym_default] = ACTIONS(4868), [sym_delegate] = ACTIONS(4868), [sym_delete] = ACTIONS(4868), [sym_deprecated] = ACTIONS(4868), [sym_do] = ACTIONS(4868), [sym_else] = ACTIONS(4868), [sym_enum] = ACTIONS(4868), [sym_export] = ACTIONS(4868), [sym_extern] = ACTIONS(4868), [sym_final] = ACTIONS(4868), [sym_for] = ACTIONS(4868), [sym_foreach] = ACTIONS(4868), [sym_foreach_reverse] = ACTIONS(4868), [sym_function] = ACTIONS(4868), [sym_goto] = ACTIONS(4868), [sym_if] = ACTIONS(4868), [sym_immutable] = ACTIONS(4868), [sym_import] = ACTIONS(4868), [sym_in] = ACTIONS(4868), [sym_inout] = ACTIONS(4868), [sym_interface] = ACTIONS(4868), [sym_invariant] = ACTIONS(4868), [sym_is] = ACTIONS(4868), [sym_mixin] = ACTIONS(4868), [sym_new] = ACTIONS(4868), [sym_nothrow] = ACTIONS(4868), [sym_out] = ACTIONS(4868), [sym_override] = ACTIONS(4868), [sym_package] = ACTIONS(4868), [sym_pragma] = ACTIONS(4868), [sym_private] = ACTIONS(4868), [sym_protected] = ACTIONS(4868), [sym_public] = ACTIONS(4868), [sym_pure] = ACTIONS(4868), [sym_ref] = ACTIONS(4868), [sym_return] = ACTIONS(4868), [sym_scope] = ACTIONS(4868), [sym_shared] = ACTIONS(4868), [sym_static] = ACTIONS(4868), [sym_struct] = ACTIONS(4868), [sym_switch] = ACTIONS(4868), [sym_synchronized] = ACTIONS(4868), [sym_template] = ACTIONS(4868), [sym_throw] = ACTIONS(4868), [sym_try] = ACTIONS(4868), [sym_typeid] = ACTIONS(4868), [sym_typeof] = ACTIONS(4868), [sym_union] = ACTIONS(4868), [sym_unittest] = ACTIONS(4868), [sym_version] = ACTIONS(4868), [sym_while] = ACTIONS(4868), [sym_with] = ACTIONS(4868), [sym_gshared] = ACTIONS(4868), [sym_traits] = ACTIONS(4868), [sym_vector] = ACTIONS(4868), [sym_void] = ACTIONS(4868), [anon_sym_BQUOTE] = ACTIONS(4870), [anon_sym_r_DQUOTE] = ACTIONS(4870), [anon_sym_x_DQUOTE] = ACTIONS(4870), [anon_sym_DQUOTE] = ACTIONS(4870), [anon_sym_i_BQUOTE] = ACTIONS(4870), [anon_sym_i_DQUOTE] = ACTIONS(4870), [anon_sym_iq_LBRACE] = ACTIONS(4870), [aux_sym_char_literal_token1] = ACTIONS(4870), [anon_sym_SQUOTE] = ACTIONS(4868), [anon_sym___DATE__] = ACTIONS(4868), [anon_sym___FILE__] = ACTIONS(4868), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4868), [anon_sym___FUNCTION__] = ACTIONS(4868), [anon_sym___LINE__] = ACTIONS(4868), [anon_sym___MODULE__] = ACTIONS(4868), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4868), [anon_sym___TIME__] = ACTIONS(4868), [anon_sym___TIMESTAMP__] = ACTIONS(4868), [anon_sym___VENDOR__] = ACTIONS(4868), [anon_sym___VERSION__] = ACTIONS(4868), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4870), [sym_float_literal] = ACTIONS(4870), [sym__string] = ACTIONS(4870), }, [1619] = { [sym_identifier] = ACTIONS(4818), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4820), [anon_sym_RBRACE] = ACTIONS(4820), [anon_sym_LBRACE] = ACTIONS(4820), [anon_sym_DOT] = ACTIONS(4820), [anon_sym_AMP] = ACTIONS(4820), [anon_sym_DASH] = ACTIONS(4818), [anon_sym_DASH_DASH] = ACTIONS(4820), [anon_sym_PLUS] = ACTIONS(4818), [anon_sym_PLUS_PLUS] = ACTIONS(4820), [anon_sym_BANG] = ACTIONS(4820), [anon_sym_LPAREN] = ACTIONS(4820), [anon_sym_RPAREN] = ACTIONS(4820), [anon_sym_LBRACK] = ACTIONS(4820), [anon_sym_SEMI] = ACTIONS(4820), [anon_sym_DOLLAR] = ACTIONS(4820), [anon_sym_STAR] = ACTIONS(4820), [anon_sym_TILDE] = ACTIONS(4820), [anon_sym_AT] = ACTIONS(4820), [sym_bool] = ACTIONS(4818), [sym_byte] = ACTIONS(4818), [sym_ubyte] = ACTIONS(4818), [sym_char] = ACTIONS(4818), [sym_short] = ACTIONS(4818), [sym_ushort] = ACTIONS(4818), [sym_int] = ACTIONS(4818), [sym_uint] = ACTIONS(4818), [sym_long] = ACTIONS(4818), [sym_ulong] = ACTIONS(4818), [sym_cent] = ACTIONS(4818), [sym_ucent] = ACTIONS(4818), [sym_wchar] = ACTIONS(4818), [sym_dchar] = ACTIONS(4818), [sym_float] = ACTIONS(4818), [sym_double] = ACTIONS(4818), [sym_real] = ACTIONS(4818), [sym_ifloat] = ACTIONS(4818), [sym_idouble] = ACTIONS(4818), [sym_ireal] = ACTIONS(4818), [sym_cfloat] = ACTIONS(4818), [sym_cdouble] = ACTIONS(4818), [sym_creal] = ACTIONS(4818), [sym_size_t] = ACTIONS(4818), [sym_ptrdiff_t] = ACTIONS(4818), [sym_string] = ACTIONS(4818), [sym_cstring] = ACTIONS(4818), [sym_dstring] = ACTIONS(4818), [sym_wstring] = ACTIONS(4818), [sym_noreturn] = ACTIONS(4818), [sym_true] = ACTIONS(4818), [sym_false] = ACTIONS(4818), [sym_null] = ACTIONS(4818), [sym_super] = ACTIONS(4818), [sym_this] = ACTIONS(4818), [sym_abstract] = ACTIONS(4818), [sym_alias] = ACTIONS(4818), [sym_align] = ACTIONS(4818), [sym_asm] = ACTIONS(4818), [sym_assert] = ACTIONS(4818), [sym_auto] = ACTIONS(4818), [sym_break] = ACTIONS(4818), [sym_case] = ACTIONS(4818), [sym_cast] = ACTIONS(4818), [sym_class] = ACTIONS(4818), [sym_const] = ACTIONS(4818), [sym_continue] = ACTIONS(4818), [sym_debug] = ACTIONS(4818), [sym_default] = ACTIONS(4818), [sym_delegate] = ACTIONS(4818), [sym_delete] = ACTIONS(4818), [sym_deprecated] = ACTIONS(4818), [sym_do] = ACTIONS(4818), [sym_else] = ACTIONS(4818), [sym_enum] = ACTIONS(4818), [sym_export] = ACTIONS(4818), [sym_extern] = ACTIONS(4818), [sym_final] = ACTIONS(4818), [sym_for] = ACTIONS(4818), [sym_foreach] = ACTIONS(4818), [sym_foreach_reverse] = ACTIONS(4818), [sym_function] = ACTIONS(4818), [sym_goto] = ACTIONS(4818), [sym_if] = ACTIONS(4818), [sym_immutable] = ACTIONS(4818), [sym_import] = ACTIONS(4818), [sym_in] = ACTIONS(4818), [sym_inout] = ACTIONS(4818), [sym_interface] = ACTIONS(4818), [sym_invariant] = ACTIONS(4818), [sym_is] = ACTIONS(4818), [sym_mixin] = ACTIONS(4818), [sym_new] = ACTIONS(4818), [sym_nothrow] = ACTIONS(4818), [sym_out] = ACTIONS(4818), [sym_override] = ACTIONS(4818), [sym_package] = ACTIONS(4818), [sym_pragma] = ACTIONS(4818), [sym_private] = ACTIONS(4818), [sym_protected] = ACTIONS(4818), [sym_public] = ACTIONS(4818), [sym_pure] = ACTIONS(4818), [sym_ref] = ACTIONS(4818), [sym_return] = ACTIONS(4818), [sym_scope] = ACTIONS(4818), [sym_shared] = ACTIONS(4818), [sym_static] = ACTIONS(4818), [sym_struct] = ACTIONS(4818), [sym_switch] = ACTIONS(4818), [sym_synchronized] = ACTIONS(4818), [sym_template] = ACTIONS(4818), [sym_throw] = ACTIONS(4818), [sym_try] = ACTIONS(4818), [sym_typeid] = ACTIONS(4818), [sym_typeof] = ACTIONS(4818), [sym_union] = ACTIONS(4818), [sym_unittest] = ACTIONS(4818), [sym_version] = ACTIONS(4818), [sym_while] = ACTIONS(4818), [sym_with] = ACTIONS(4818), [sym_gshared] = ACTIONS(4818), [sym_traits] = ACTIONS(4818), [sym_vector] = ACTIONS(4818), [sym_void] = ACTIONS(4818), [anon_sym_BQUOTE] = ACTIONS(4820), [anon_sym_r_DQUOTE] = ACTIONS(4820), [anon_sym_x_DQUOTE] = ACTIONS(4820), [anon_sym_DQUOTE] = ACTIONS(4820), [anon_sym_i_BQUOTE] = ACTIONS(4820), [anon_sym_i_DQUOTE] = ACTIONS(4820), [anon_sym_iq_LBRACE] = ACTIONS(4820), [aux_sym_char_literal_token1] = ACTIONS(4820), [anon_sym_SQUOTE] = ACTIONS(4818), [anon_sym___DATE__] = ACTIONS(4818), [anon_sym___FILE__] = ACTIONS(4818), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4818), [anon_sym___FUNCTION__] = ACTIONS(4818), [anon_sym___LINE__] = ACTIONS(4818), [anon_sym___MODULE__] = ACTIONS(4818), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4818), [anon_sym___TIME__] = ACTIONS(4818), [anon_sym___TIMESTAMP__] = ACTIONS(4818), [anon_sym___VENDOR__] = ACTIONS(4818), [anon_sym___VERSION__] = ACTIONS(4818), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4820), [sym_float_literal] = ACTIONS(4820), [sym__string] = ACTIONS(4820), }, [1620] = { [sym_identifier] = ACTIONS(4864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4866), [anon_sym_RBRACE] = ACTIONS(4866), [anon_sym_LBRACE] = ACTIONS(4866), [anon_sym_DOT] = ACTIONS(4866), [anon_sym_AMP] = ACTIONS(4866), [anon_sym_DASH] = ACTIONS(4864), [anon_sym_DASH_DASH] = ACTIONS(4866), [anon_sym_PLUS] = ACTIONS(4864), [anon_sym_PLUS_PLUS] = ACTIONS(4866), [anon_sym_BANG] = ACTIONS(4866), [anon_sym_LPAREN] = ACTIONS(4866), [anon_sym_RPAREN] = ACTIONS(4866), [anon_sym_LBRACK] = ACTIONS(4866), [anon_sym_SEMI] = ACTIONS(4866), [anon_sym_DOLLAR] = ACTIONS(4866), [anon_sym_STAR] = ACTIONS(4866), [anon_sym_TILDE] = ACTIONS(4866), [anon_sym_AT] = ACTIONS(4866), [sym_bool] = ACTIONS(4864), [sym_byte] = ACTIONS(4864), [sym_ubyte] = ACTIONS(4864), [sym_char] = ACTIONS(4864), [sym_short] = ACTIONS(4864), [sym_ushort] = ACTIONS(4864), [sym_int] = ACTIONS(4864), [sym_uint] = ACTIONS(4864), [sym_long] = ACTIONS(4864), [sym_ulong] = ACTIONS(4864), [sym_cent] = ACTIONS(4864), [sym_ucent] = ACTIONS(4864), [sym_wchar] = ACTIONS(4864), [sym_dchar] = ACTIONS(4864), [sym_float] = ACTIONS(4864), [sym_double] = ACTIONS(4864), [sym_real] = ACTIONS(4864), [sym_ifloat] = ACTIONS(4864), [sym_idouble] = ACTIONS(4864), [sym_ireal] = ACTIONS(4864), [sym_cfloat] = ACTIONS(4864), [sym_cdouble] = ACTIONS(4864), [sym_creal] = ACTIONS(4864), [sym_size_t] = ACTIONS(4864), [sym_ptrdiff_t] = ACTIONS(4864), [sym_string] = ACTIONS(4864), [sym_cstring] = ACTIONS(4864), [sym_dstring] = ACTIONS(4864), [sym_wstring] = ACTIONS(4864), [sym_noreturn] = ACTIONS(4864), [sym_true] = ACTIONS(4864), [sym_false] = ACTIONS(4864), [sym_null] = ACTIONS(4864), [sym_super] = ACTIONS(4864), [sym_this] = ACTIONS(4864), [sym_abstract] = ACTIONS(4864), [sym_alias] = ACTIONS(4864), [sym_align] = ACTIONS(4864), [sym_asm] = ACTIONS(4864), [sym_assert] = ACTIONS(4864), [sym_auto] = ACTIONS(4864), [sym_break] = ACTIONS(4864), [sym_case] = ACTIONS(4864), [sym_cast] = ACTIONS(4864), [sym_class] = ACTIONS(4864), [sym_const] = ACTIONS(4864), [sym_continue] = ACTIONS(4864), [sym_debug] = ACTIONS(4864), [sym_default] = ACTIONS(4864), [sym_delegate] = ACTIONS(4864), [sym_delete] = ACTIONS(4864), [sym_deprecated] = ACTIONS(4864), [sym_do] = ACTIONS(4864), [sym_else] = ACTIONS(4864), [sym_enum] = ACTIONS(4864), [sym_export] = ACTIONS(4864), [sym_extern] = ACTIONS(4864), [sym_final] = ACTIONS(4864), [sym_for] = ACTIONS(4864), [sym_foreach] = ACTIONS(4864), [sym_foreach_reverse] = ACTIONS(4864), [sym_function] = ACTIONS(4864), [sym_goto] = ACTIONS(4864), [sym_if] = ACTIONS(4864), [sym_immutable] = ACTIONS(4864), [sym_import] = ACTIONS(4864), [sym_in] = ACTIONS(4864), [sym_inout] = ACTIONS(4864), [sym_interface] = ACTIONS(4864), [sym_invariant] = ACTIONS(4864), [sym_is] = ACTIONS(4864), [sym_mixin] = ACTIONS(4864), [sym_new] = ACTIONS(4864), [sym_nothrow] = ACTIONS(4864), [sym_out] = ACTIONS(4864), [sym_override] = ACTIONS(4864), [sym_package] = ACTIONS(4864), [sym_pragma] = ACTIONS(4864), [sym_private] = ACTIONS(4864), [sym_protected] = ACTIONS(4864), [sym_public] = ACTIONS(4864), [sym_pure] = ACTIONS(4864), [sym_ref] = ACTIONS(4864), [sym_return] = ACTIONS(4864), [sym_scope] = ACTIONS(4864), [sym_shared] = ACTIONS(4864), [sym_static] = ACTIONS(4864), [sym_struct] = ACTIONS(4864), [sym_switch] = ACTIONS(4864), [sym_synchronized] = ACTIONS(4864), [sym_template] = ACTIONS(4864), [sym_throw] = ACTIONS(4864), [sym_try] = ACTIONS(4864), [sym_typeid] = ACTIONS(4864), [sym_typeof] = ACTIONS(4864), [sym_union] = ACTIONS(4864), [sym_unittest] = ACTIONS(4864), [sym_version] = ACTIONS(4864), [sym_while] = ACTIONS(4864), [sym_with] = ACTIONS(4864), [sym_gshared] = ACTIONS(4864), [sym_traits] = ACTIONS(4864), [sym_vector] = ACTIONS(4864), [sym_void] = ACTIONS(4864), [anon_sym_BQUOTE] = ACTIONS(4866), [anon_sym_r_DQUOTE] = ACTIONS(4866), [anon_sym_x_DQUOTE] = ACTIONS(4866), [anon_sym_DQUOTE] = ACTIONS(4866), [anon_sym_i_BQUOTE] = ACTIONS(4866), [anon_sym_i_DQUOTE] = ACTIONS(4866), [anon_sym_iq_LBRACE] = ACTIONS(4866), [aux_sym_char_literal_token1] = ACTIONS(4866), [anon_sym_SQUOTE] = ACTIONS(4864), [anon_sym___DATE__] = ACTIONS(4864), [anon_sym___FILE__] = ACTIONS(4864), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4864), [anon_sym___FUNCTION__] = ACTIONS(4864), [anon_sym___LINE__] = ACTIONS(4864), [anon_sym___MODULE__] = ACTIONS(4864), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4864), [anon_sym___TIME__] = ACTIONS(4864), [anon_sym___TIMESTAMP__] = ACTIONS(4864), [anon_sym___VENDOR__] = ACTIONS(4864), [anon_sym___VERSION__] = ACTIONS(4864), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4866), [sym_float_literal] = ACTIONS(4866), [sym__string] = ACTIONS(4866), }, [1621] = { [sym_identifier] = ACTIONS(4814), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4816), [anon_sym_RBRACE] = ACTIONS(4816), [anon_sym_LBRACE] = ACTIONS(4816), [anon_sym_DOT] = ACTIONS(4816), [anon_sym_AMP] = ACTIONS(4816), [anon_sym_DASH] = ACTIONS(4814), [anon_sym_DASH_DASH] = ACTIONS(4816), [anon_sym_PLUS] = ACTIONS(4814), [anon_sym_PLUS_PLUS] = ACTIONS(4816), [anon_sym_BANG] = ACTIONS(4816), [anon_sym_LPAREN] = ACTIONS(4816), [anon_sym_RPAREN] = ACTIONS(4816), [anon_sym_LBRACK] = ACTIONS(4816), [anon_sym_SEMI] = ACTIONS(4816), [anon_sym_DOLLAR] = ACTIONS(4816), [anon_sym_STAR] = ACTIONS(4816), [anon_sym_TILDE] = ACTIONS(4816), [anon_sym_AT] = ACTIONS(4816), [sym_bool] = ACTIONS(4814), [sym_byte] = ACTIONS(4814), [sym_ubyte] = ACTIONS(4814), [sym_char] = ACTIONS(4814), [sym_short] = ACTIONS(4814), [sym_ushort] = ACTIONS(4814), [sym_int] = ACTIONS(4814), [sym_uint] = ACTIONS(4814), [sym_long] = ACTIONS(4814), [sym_ulong] = ACTIONS(4814), [sym_cent] = ACTIONS(4814), [sym_ucent] = ACTIONS(4814), [sym_wchar] = ACTIONS(4814), [sym_dchar] = ACTIONS(4814), [sym_float] = ACTIONS(4814), [sym_double] = ACTIONS(4814), [sym_real] = ACTIONS(4814), [sym_ifloat] = ACTIONS(4814), [sym_idouble] = ACTIONS(4814), [sym_ireal] = ACTIONS(4814), [sym_cfloat] = ACTIONS(4814), [sym_cdouble] = ACTIONS(4814), [sym_creal] = ACTIONS(4814), [sym_size_t] = ACTIONS(4814), [sym_ptrdiff_t] = ACTIONS(4814), [sym_string] = ACTIONS(4814), [sym_cstring] = ACTIONS(4814), [sym_dstring] = ACTIONS(4814), [sym_wstring] = ACTIONS(4814), [sym_noreturn] = ACTIONS(4814), [sym_true] = ACTIONS(4814), [sym_false] = ACTIONS(4814), [sym_null] = ACTIONS(4814), [sym_super] = ACTIONS(4814), [sym_this] = ACTIONS(4814), [sym_abstract] = ACTIONS(4814), [sym_alias] = ACTIONS(4814), [sym_align] = ACTIONS(4814), [sym_asm] = ACTIONS(4814), [sym_assert] = ACTIONS(4814), [sym_auto] = ACTIONS(4814), [sym_break] = ACTIONS(4814), [sym_case] = ACTIONS(4814), [sym_cast] = ACTIONS(4814), [sym_class] = ACTIONS(4814), [sym_const] = ACTIONS(4814), [sym_continue] = ACTIONS(4814), [sym_debug] = ACTIONS(4814), [sym_default] = ACTIONS(4814), [sym_delegate] = ACTIONS(4814), [sym_delete] = ACTIONS(4814), [sym_deprecated] = ACTIONS(4814), [sym_do] = ACTIONS(4814), [sym_else] = ACTIONS(4814), [sym_enum] = ACTIONS(4814), [sym_export] = ACTIONS(4814), [sym_extern] = ACTIONS(4814), [sym_final] = ACTIONS(4814), [sym_for] = ACTIONS(4814), [sym_foreach] = ACTIONS(4814), [sym_foreach_reverse] = ACTIONS(4814), [sym_function] = ACTIONS(4814), [sym_goto] = ACTIONS(4814), [sym_if] = ACTIONS(4814), [sym_immutable] = ACTIONS(4814), [sym_import] = ACTIONS(4814), [sym_in] = ACTIONS(4814), [sym_inout] = ACTIONS(4814), [sym_interface] = ACTIONS(4814), [sym_invariant] = ACTIONS(4814), [sym_is] = ACTIONS(4814), [sym_mixin] = ACTIONS(4814), [sym_new] = ACTIONS(4814), [sym_nothrow] = ACTIONS(4814), [sym_out] = ACTIONS(4814), [sym_override] = ACTIONS(4814), [sym_package] = ACTIONS(4814), [sym_pragma] = ACTIONS(4814), [sym_private] = ACTIONS(4814), [sym_protected] = ACTIONS(4814), [sym_public] = ACTIONS(4814), [sym_pure] = ACTIONS(4814), [sym_ref] = ACTIONS(4814), [sym_return] = ACTIONS(4814), [sym_scope] = ACTIONS(4814), [sym_shared] = ACTIONS(4814), [sym_static] = ACTIONS(4814), [sym_struct] = ACTIONS(4814), [sym_switch] = ACTIONS(4814), [sym_synchronized] = ACTIONS(4814), [sym_template] = ACTIONS(4814), [sym_throw] = ACTIONS(4814), [sym_try] = ACTIONS(4814), [sym_typeid] = ACTIONS(4814), [sym_typeof] = ACTIONS(4814), [sym_union] = ACTIONS(4814), [sym_unittest] = ACTIONS(4814), [sym_version] = ACTIONS(4814), [sym_while] = ACTIONS(4814), [sym_with] = ACTIONS(4814), [sym_gshared] = ACTIONS(4814), [sym_traits] = ACTIONS(4814), [sym_vector] = ACTIONS(4814), [sym_void] = ACTIONS(4814), [anon_sym_BQUOTE] = ACTIONS(4816), [anon_sym_r_DQUOTE] = ACTIONS(4816), [anon_sym_x_DQUOTE] = ACTIONS(4816), [anon_sym_DQUOTE] = ACTIONS(4816), [anon_sym_i_BQUOTE] = ACTIONS(4816), [anon_sym_i_DQUOTE] = ACTIONS(4816), [anon_sym_iq_LBRACE] = ACTIONS(4816), [aux_sym_char_literal_token1] = ACTIONS(4816), [anon_sym_SQUOTE] = ACTIONS(4814), [anon_sym___DATE__] = ACTIONS(4814), [anon_sym___FILE__] = ACTIONS(4814), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4814), [anon_sym___FUNCTION__] = ACTIONS(4814), [anon_sym___LINE__] = ACTIONS(4814), [anon_sym___MODULE__] = ACTIONS(4814), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4814), [anon_sym___TIME__] = ACTIONS(4814), [anon_sym___TIMESTAMP__] = ACTIONS(4814), [anon_sym___VENDOR__] = ACTIONS(4814), [anon_sym___VERSION__] = ACTIONS(4814), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4816), [sym_float_literal] = ACTIONS(4816), [sym__string] = ACTIONS(4816), }, [1622] = { [sym_identifier] = ACTIONS(4952), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4954), [anon_sym_RBRACE] = ACTIONS(4954), [anon_sym_LBRACE] = ACTIONS(4954), [anon_sym_DOT] = ACTIONS(4954), [anon_sym_AMP] = ACTIONS(4954), [anon_sym_DASH] = ACTIONS(4952), [anon_sym_DASH_DASH] = ACTIONS(4954), [anon_sym_PLUS] = ACTIONS(4952), [anon_sym_PLUS_PLUS] = ACTIONS(4954), [anon_sym_BANG] = ACTIONS(4954), [anon_sym_LPAREN] = ACTIONS(4954), [anon_sym_RPAREN] = ACTIONS(4954), [anon_sym_LBRACK] = ACTIONS(4954), [anon_sym_SEMI] = ACTIONS(4954), [anon_sym_DOLLAR] = ACTIONS(4954), [anon_sym_STAR] = ACTIONS(4954), [anon_sym_TILDE] = ACTIONS(4954), [anon_sym_AT] = ACTIONS(4954), [sym_bool] = ACTIONS(4952), [sym_byte] = ACTIONS(4952), [sym_ubyte] = ACTIONS(4952), [sym_char] = ACTIONS(4952), [sym_short] = ACTIONS(4952), [sym_ushort] = ACTIONS(4952), [sym_int] = ACTIONS(4952), [sym_uint] = ACTIONS(4952), [sym_long] = ACTIONS(4952), [sym_ulong] = ACTIONS(4952), [sym_cent] = ACTIONS(4952), [sym_ucent] = ACTIONS(4952), [sym_wchar] = ACTIONS(4952), [sym_dchar] = ACTIONS(4952), [sym_float] = ACTIONS(4952), [sym_double] = ACTIONS(4952), [sym_real] = ACTIONS(4952), [sym_ifloat] = ACTIONS(4952), [sym_idouble] = ACTIONS(4952), [sym_ireal] = ACTIONS(4952), [sym_cfloat] = ACTIONS(4952), [sym_cdouble] = ACTIONS(4952), [sym_creal] = ACTIONS(4952), [sym_size_t] = ACTIONS(4952), [sym_ptrdiff_t] = ACTIONS(4952), [sym_string] = ACTIONS(4952), [sym_cstring] = ACTIONS(4952), [sym_dstring] = ACTIONS(4952), [sym_wstring] = ACTIONS(4952), [sym_noreturn] = ACTIONS(4952), [sym_true] = ACTIONS(4952), [sym_false] = ACTIONS(4952), [sym_null] = ACTIONS(4952), [sym_super] = ACTIONS(4952), [sym_this] = ACTIONS(4952), [sym_abstract] = ACTIONS(4952), [sym_alias] = ACTIONS(4952), [sym_align] = ACTIONS(4952), [sym_asm] = ACTIONS(4952), [sym_assert] = ACTIONS(4952), [sym_auto] = ACTIONS(4952), [sym_break] = ACTIONS(4952), [sym_case] = ACTIONS(4952), [sym_cast] = ACTIONS(4952), [sym_class] = ACTIONS(4952), [sym_const] = ACTIONS(4952), [sym_continue] = ACTIONS(4952), [sym_debug] = ACTIONS(4952), [sym_default] = ACTIONS(4952), [sym_delegate] = ACTIONS(4952), [sym_delete] = ACTIONS(4952), [sym_deprecated] = ACTIONS(4952), [sym_do] = ACTIONS(4952), [sym_else] = ACTIONS(4952), [sym_enum] = ACTIONS(4952), [sym_export] = ACTIONS(4952), [sym_extern] = ACTIONS(4952), [sym_final] = ACTIONS(4952), [sym_for] = ACTIONS(4952), [sym_foreach] = ACTIONS(4952), [sym_foreach_reverse] = ACTIONS(4952), [sym_function] = ACTIONS(4952), [sym_goto] = ACTIONS(4952), [sym_if] = ACTIONS(4952), [sym_immutable] = ACTIONS(4952), [sym_import] = ACTIONS(4952), [sym_in] = ACTIONS(4952), [sym_inout] = ACTIONS(4952), [sym_interface] = ACTIONS(4952), [sym_invariant] = ACTIONS(4952), [sym_is] = ACTIONS(4952), [sym_mixin] = ACTIONS(4952), [sym_new] = ACTIONS(4952), [sym_nothrow] = ACTIONS(4952), [sym_out] = ACTIONS(4952), [sym_override] = ACTIONS(4952), [sym_package] = ACTIONS(4952), [sym_pragma] = ACTIONS(4952), [sym_private] = ACTIONS(4952), [sym_protected] = ACTIONS(4952), [sym_public] = ACTIONS(4952), [sym_pure] = ACTIONS(4952), [sym_ref] = ACTIONS(4952), [sym_return] = ACTIONS(4952), [sym_scope] = ACTIONS(4952), [sym_shared] = ACTIONS(4952), [sym_static] = ACTIONS(4952), [sym_struct] = ACTIONS(4952), [sym_switch] = ACTIONS(4952), [sym_synchronized] = ACTIONS(4952), [sym_template] = ACTIONS(4952), [sym_throw] = ACTIONS(4952), [sym_try] = ACTIONS(4952), [sym_typeid] = ACTIONS(4952), [sym_typeof] = ACTIONS(4952), [sym_union] = ACTIONS(4952), [sym_unittest] = ACTIONS(4952), [sym_version] = ACTIONS(4952), [sym_while] = ACTIONS(4952), [sym_with] = ACTIONS(4952), [sym_gshared] = ACTIONS(4952), [sym_traits] = ACTIONS(4952), [sym_vector] = ACTIONS(4952), [sym_void] = ACTIONS(4952), [anon_sym_BQUOTE] = ACTIONS(4954), [anon_sym_r_DQUOTE] = ACTIONS(4954), [anon_sym_x_DQUOTE] = ACTIONS(4954), [anon_sym_DQUOTE] = ACTIONS(4954), [anon_sym_i_BQUOTE] = ACTIONS(4954), [anon_sym_i_DQUOTE] = ACTIONS(4954), [anon_sym_iq_LBRACE] = ACTIONS(4954), [aux_sym_char_literal_token1] = ACTIONS(4954), [anon_sym_SQUOTE] = ACTIONS(4952), [anon_sym___DATE__] = ACTIONS(4952), [anon_sym___FILE__] = ACTIONS(4952), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4952), [anon_sym___FUNCTION__] = ACTIONS(4952), [anon_sym___LINE__] = ACTIONS(4952), [anon_sym___MODULE__] = ACTIONS(4952), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4952), [anon_sym___TIME__] = ACTIONS(4952), [anon_sym___TIMESTAMP__] = ACTIONS(4952), [anon_sym___VENDOR__] = ACTIONS(4952), [anon_sym___VERSION__] = ACTIONS(4952), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4954), [sym_float_literal] = ACTIONS(4954), [sym__string] = ACTIONS(4954), }, [1623] = { [sym_identifier] = ACTIONS(4944), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4946), [anon_sym_RBRACE] = ACTIONS(4946), [anon_sym_LBRACE] = ACTIONS(4946), [anon_sym_DOT] = ACTIONS(4946), [anon_sym_AMP] = ACTIONS(4946), [anon_sym_DASH] = ACTIONS(4944), [anon_sym_DASH_DASH] = ACTIONS(4946), [anon_sym_PLUS] = ACTIONS(4944), [anon_sym_PLUS_PLUS] = ACTIONS(4946), [anon_sym_BANG] = ACTIONS(4946), [anon_sym_LPAREN] = ACTIONS(4946), [anon_sym_RPAREN] = ACTIONS(4946), [anon_sym_LBRACK] = ACTIONS(4946), [anon_sym_SEMI] = ACTIONS(4946), [anon_sym_DOLLAR] = ACTIONS(4946), [anon_sym_STAR] = ACTIONS(4946), [anon_sym_TILDE] = ACTIONS(4946), [anon_sym_AT] = ACTIONS(4946), [sym_bool] = ACTIONS(4944), [sym_byte] = ACTIONS(4944), [sym_ubyte] = ACTIONS(4944), [sym_char] = ACTIONS(4944), [sym_short] = ACTIONS(4944), [sym_ushort] = ACTIONS(4944), [sym_int] = ACTIONS(4944), [sym_uint] = ACTIONS(4944), [sym_long] = ACTIONS(4944), [sym_ulong] = ACTIONS(4944), [sym_cent] = ACTIONS(4944), [sym_ucent] = ACTIONS(4944), [sym_wchar] = ACTIONS(4944), [sym_dchar] = ACTIONS(4944), [sym_float] = ACTIONS(4944), [sym_double] = ACTIONS(4944), [sym_real] = ACTIONS(4944), [sym_ifloat] = ACTIONS(4944), [sym_idouble] = ACTIONS(4944), [sym_ireal] = ACTIONS(4944), [sym_cfloat] = ACTIONS(4944), [sym_cdouble] = ACTIONS(4944), [sym_creal] = ACTIONS(4944), [sym_size_t] = ACTIONS(4944), [sym_ptrdiff_t] = ACTIONS(4944), [sym_string] = ACTIONS(4944), [sym_cstring] = ACTIONS(4944), [sym_dstring] = ACTIONS(4944), [sym_wstring] = ACTIONS(4944), [sym_noreturn] = ACTIONS(4944), [sym_true] = ACTIONS(4944), [sym_false] = ACTIONS(4944), [sym_null] = ACTIONS(4944), [sym_super] = ACTIONS(4944), [sym_this] = ACTIONS(4944), [sym_abstract] = ACTIONS(4944), [sym_alias] = ACTIONS(4944), [sym_align] = ACTIONS(4944), [sym_asm] = ACTIONS(4944), [sym_assert] = ACTIONS(4944), [sym_auto] = ACTIONS(4944), [sym_break] = ACTIONS(4944), [sym_case] = ACTIONS(4944), [sym_cast] = ACTIONS(4944), [sym_class] = ACTIONS(4944), [sym_const] = ACTIONS(4944), [sym_continue] = ACTIONS(4944), [sym_debug] = ACTIONS(4944), [sym_default] = ACTIONS(4944), [sym_delegate] = ACTIONS(4944), [sym_delete] = ACTIONS(4944), [sym_deprecated] = ACTIONS(4944), [sym_do] = ACTIONS(4944), [sym_else] = ACTIONS(4944), [sym_enum] = ACTIONS(4944), [sym_export] = ACTIONS(4944), [sym_extern] = ACTIONS(4944), [sym_final] = ACTIONS(4944), [sym_for] = ACTIONS(4944), [sym_foreach] = ACTIONS(4944), [sym_foreach_reverse] = ACTIONS(4944), [sym_function] = ACTIONS(4944), [sym_goto] = ACTIONS(4944), [sym_if] = ACTIONS(4944), [sym_immutable] = ACTIONS(4944), [sym_import] = ACTIONS(4944), [sym_in] = ACTIONS(4944), [sym_inout] = ACTIONS(4944), [sym_interface] = ACTIONS(4944), [sym_invariant] = ACTIONS(4944), [sym_is] = ACTIONS(4944), [sym_mixin] = ACTIONS(4944), [sym_new] = ACTIONS(4944), [sym_nothrow] = ACTIONS(4944), [sym_out] = ACTIONS(4944), [sym_override] = ACTIONS(4944), [sym_package] = ACTIONS(4944), [sym_pragma] = ACTIONS(4944), [sym_private] = ACTIONS(4944), [sym_protected] = ACTIONS(4944), [sym_public] = ACTIONS(4944), [sym_pure] = ACTIONS(4944), [sym_ref] = ACTIONS(4944), [sym_return] = ACTIONS(4944), [sym_scope] = ACTIONS(4944), [sym_shared] = ACTIONS(4944), [sym_static] = ACTIONS(4944), [sym_struct] = ACTIONS(4944), [sym_switch] = ACTIONS(4944), [sym_synchronized] = ACTIONS(4944), [sym_template] = ACTIONS(4944), [sym_throw] = ACTIONS(4944), [sym_try] = ACTIONS(4944), [sym_typeid] = ACTIONS(4944), [sym_typeof] = ACTIONS(4944), [sym_union] = ACTIONS(4944), [sym_unittest] = ACTIONS(4944), [sym_version] = ACTIONS(4944), [sym_while] = ACTIONS(4944), [sym_with] = ACTIONS(4944), [sym_gshared] = ACTIONS(4944), [sym_traits] = ACTIONS(4944), [sym_vector] = ACTIONS(4944), [sym_void] = ACTIONS(4944), [anon_sym_BQUOTE] = ACTIONS(4946), [anon_sym_r_DQUOTE] = ACTIONS(4946), [anon_sym_x_DQUOTE] = ACTIONS(4946), [anon_sym_DQUOTE] = ACTIONS(4946), [anon_sym_i_BQUOTE] = ACTIONS(4946), [anon_sym_i_DQUOTE] = ACTIONS(4946), [anon_sym_iq_LBRACE] = ACTIONS(4946), [aux_sym_char_literal_token1] = ACTIONS(4946), [anon_sym_SQUOTE] = ACTIONS(4944), [anon_sym___DATE__] = ACTIONS(4944), [anon_sym___FILE__] = ACTIONS(4944), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4944), [anon_sym___FUNCTION__] = ACTIONS(4944), [anon_sym___LINE__] = ACTIONS(4944), [anon_sym___MODULE__] = ACTIONS(4944), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4944), [anon_sym___TIME__] = ACTIONS(4944), [anon_sym___TIMESTAMP__] = ACTIONS(4944), [anon_sym___VENDOR__] = ACTIONS(4944), [anon_sym___VERSION__] = ACTIONS(4944), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4946), [sym_float_literal] = ACTIONS(4946), [sym__string] = ACTIONS(4946), }, [1624] = { [sym_identifier] = ACTIONS(5028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5030), [anon_sym_RBRACE] = ACTIONS(5030), [anon_sym_LBRACE] = ACTIONS(5030), [anon_sym_DOT] = ACTIONS(5030), [anon_sym_AMP] = ACTIONS(5030), [anon_sym_DASH] = ACTIONS(5028), [anon_sym_DASH_DASH] = ACTIONS(5030), [anon_sym_PLUS] = ACTIONS(5028), [anon_sym_PLUS_PLUS] = ACTIONS(5030), [anon_sym_BANG] = ACTIONS(5030), [anon_sym_LPAREN] = ACTIONS(5030), [anon_sym_RPAREN] = ACTIONS(5030), [anon_sym_LBRACK] = ACTIONS(5030), [anon_sym_SEMI] = ACTIONS(5030), [anon_sym_DOLLAR] = ACTIONS(5030), [anon_sym_STAR] = ACTIONS(5030), [anon_sym_TILDE] = ACTIONS(5030), [anon_sym_AT] = ACTIONS(5030), [sym_bool] = ACTIONS(5028), [sym_byte] = ACTIONS(5028), [sym_ubyte] = ACTIONS(5028), [sym_char] = ACTIONS(5028), [sym_short] = ACTIONS(5028), [sym_ushort] = ACTIONS(5028), [sym_int] = ACTIONS(5028), [sym_uint] = ACTIONS(5028), [sym_long] = ACTIONS(5028), [sym_ulong] = ACTIONS(5028), [sym_cent] = ACTIONS(5028), [sym_ucent] = ACTIONS(5028), [sym_wchar] = ACTIONS(5028), [sym_dchar] = ACTIONS(5028), [sym_float] = ACTIONS(5028), [sym_double] = ACTIONS(5028), [sym_real] = ACTIONS(5028), [sym_ifloat] = ACTIONS(5028), [sym_idouble] = ACTIONS(5028), [sym_ireal] = ACTIONS(5028), [sym_cfloat] = ACTIONS(5028), [sym_cdouble] = ACTIONS(5028), [sym_creal] = ACTIONS(5028), [sym_size_t] = ACTIONS(5028), [sym_ptrdiff_t] = ACTIONS(5028), [sym_string] = ACTIONS(5028), [sym_cstring] = ACTIONS(5028), [sym_dstring] = ACTIONS(5028), [sym_wstring] = ACTIONS(5028), [sym_noreturn] = ACTIONS(5028), [sym_true] = ACTIONS(5028), [sym_false] = ACTIONS(5028), [sym_null] = ACTIONS(5028), [sym_super] = ACTIONS(5028), [sym_this] = ACTIONS(5028), [sym_abstract] = ACTIONS(5028), [sym_alias] = ACTIONS(5028), [sym_align] = ACTIONS(5028), [sym_asm] = ACTIONS(5028), [sym_assert] = ACTIONS(5028), [sym_auto] = ACTIONS(5028), [sym_break] = ACTIONS(5028), [sym_case] = ACTIONS(5028), [sym_cast] = ACTIONS(5028), [sym_class] = ACTIONS(5028), [sym_const] = ACTIONS(5028), [sym_continue] = ACTIONS(5028), [sym_debug] = ACTIONS(5028), [sym_default] = ACTIONS(5028), [sym_delegate] = ACTIONS(5028), [sym_delete] = ACTIONS(5028), [sym_deprecated] = ACTIONS(5028), [sym_do] = ACTIONS(5028), [sym_else] = ACTIONS(5028), [sym_enum] = ACTIONS(5028), [sym_export] = ACTIONS(5028), [sym_extern] = ACTIONS(5028), [sym_final] = ACTIONS(5028), [sym_for] = ACTIONS(5028), [sym_foreach] = ACTIONS(5028), [sym_foreach_reverse] = ACTIONS(5028), [sym_function] = ACTIONS(5028), [sym_goto] = ACTIONS(5028), [sym_if] = ACTIONS(5028), [sym_immutable] = ACTIONS(5028), [sym_import] = ACTIONS(5028), [sym_in] = ACTIONS(5028), [sym_inout] = ACTIONS(5028), [sym_interface] = ACTIONS(5028), [sym_invariant] = ACTIONS(5028), [sym_is] = ACTIONS(5028), [sym_mixin] = ACTIONS(5028), [sym_new] = ACTIONS(5028), [sym_nothrow] = ACTIONS(5028), [sym_out] = ACTIONS(5028), [sym_override] = ACTIONS(5028), [sym_package] = ACTIONS(5028), [sym_pragma] = ACTIONS(5028), [sym_private] = ACTIONS(5028), [sym_protected] = ACTIONS(5028), [sym_public] = ACTIONS(5028), [sym_pure] = ACTIONS(5028), [sym_ref] = ACTIONS(5028), [sym_return] = ACTIONS(5028), [sym_scope] = ACTIONS(5028), [sym_shared] = ACTIONS(5028), [sym_static] = ACTIONS(5028), [sym_struct] = ACTIONS(5028), [sym_switch] = ACTIONS(5028), [sym_synchronized] = ACTIONS(5028), [sym_template] = ACTIONS(5028), [sym_throw] = ACTIONS(5028), [sym_try] = ACTIONS(5028), [sym_typeid] = ACTIONS(5028), [sym_typeof] = ACTIONS(5028), [sym_union] = ACTIONS(5028), [sym_unittest] = ACTIONS(5028), [sym_version] = ACTIONS(5028), [sym_while] = ACTIONS(5028), [sym_with] = ACTIONS(5028), [sym_gshared] = ACTIONS(5028), [sym_traits] = ACTIONS(5028), [sym_vector] = ACTIONS(5028), [sym_void] = ACTIONS(5028), [anon_sym_BQUOTE] = ACTIONS(5030), [anon_sym_r_DQUOTE] = ACTIONS(5030), [anon_sym_x_DQUOTE] = ACTIONS(5030), [anon_sym_DQUOTE] = ACTIONS(5030), [anon_sym_i_BQUOTE] = ACTIONS(5030), [anon_sym_i_DQUOTE] = ACTIONS(5030), [anon_sym_iq_LBRACE] = ACTIONS(5030), [aux_sym_char_literal_token1] = ACTIONS(5030), [anon_sym_SQUOTE] = ACTIONS(5028), [anon_sym___DATE__] = ACTIONS(5028), [anon_sym___FILE__] = ACTIONS(5028), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5028), [anon_sym___FUNCTION__] = ACTIONS(5028), [anon_sym___LINE__] = ACTIONS(5028), [anon_sym___MODULE__] = ACTIONS(5028), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5028), [anon_sym___TIME__] = ACTIONS(5028), [anon_sym___TIMESTAMP__] = ACTIONS(5028), [anon_sym___VENDOR__] = ACTIONS(5028), [anon_sym___VERSION__] = ACTIONS(5028), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5030), [sym_float_literal] = ACTIONS(5030), [sym__string] = ACTIONS(5030), }, [1625] = { [sym_identifier] = ACTIONS(4285), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4287), [anon_sym_RBRACE] = ACTIONS(4287), [anon_sym_LBRACE] = ACTIONS(4287), [anon_sym_DOT] = ACTIONS(4287), [anon_sym_AMP] = ACTIONS(4287), [anon_sym_DASH] = ACTIONS(4285), [anon_sym_DASH_DASH] = ACTIONS(4287), [anon_sym_PLUS] = ACTIONS(4285), [anon_sym_PLUS_PLUS] = ACTIONS(4287), [anon_sym_BANG] = ACTIONS(4287), [anon_sym_LPAREN] = ACTIONS(4287), [anon_sym_RPAREN] = ACTIONS(4287), [anon_sym_LBRACK] = ACTIONS(4287), [anon_sym_SEMI] = ACTIONS(4287), [anon_sym_DOLLAR] = ACTIONS(4287), [anon_sym_STAR] = ACTIONS(4287), [anon_sym_TILDE] = ACTIONS(4287), [anon_sym_AT] = ACTIONS(4287), [sym_bool] = ACTIONS(4285), [sym_byte] = ACTIONS(4285), [sym_ubyte] = ACTIONS(4285), [sym_char] = ACTIONS(4285), [sym_short] = ACTIONS(4285), [sym_ushort] = ACTIONS(4285), [sym_int] = ACTIONS(4285), [sym_uint] = ACTIONS(4285), [sym_long] = ACTIONS(4285), [sym_ulong] = ACTIONS(4285), [sym_cent] = ACTIONS(4285), [sym_ucent] = ACTIONS(4285), [sym_wchar] = ACTIONS(4285), [sym_dchar] = ACTIONS(4285), [sym_float] = ACTIONS(4285), [sym_double] = ACTIONS(4285), [sym_real] = ACTIONS(4285), [sym_ifloat] = ACTIONS(4285), [sym_idouble] = ACTIONS(4285), [sym_ireal] = ACTIONS(4285), [sym_cfloat] = ACTIONS(4285), [sym_cdouble] = ACTIONS(4285), [sym_creal] = ACTIONS(4285), [sym_size_t] = ACTIONS(4285), [sym_ptrdiff_t] = ACTIONS(4285), [sym_string] = ACTIONS(4285), [sym_cstring] = ACTIONS(4285), [sym_dstring] = ACTIONS(4285), [sym_wstring] = ACTIONS(4285), [sym_noreturn] = ACTIONS(4285), [sym_true] = ACTIONS(4285), [sym_false] = ACTIONS(4285), [sym_null] = ACTIONS(4285), [sym_super] = ACTIONS(4285), [sym_this] = ACTIONS(4285), [sym_abstract] = ACTIONS(4285), [sym_alias] = ACTIONS(4285), [sym_align] = ACTIONS(4285), [sym_asm] = ACTIONS(4285), [sym_assert] = ACTIONS(4285), [sym_auto] = ACTIONS(4285), [sym_break] = ACTIONS(4285), [sym_case] = ACTIONS(4285), [sym_cast] = ACTIONS(4285), [sym_class] = ACTIONS(4285), [sym_const] = ACTIONS(4285), [sym_continue] = ACTIONS(4285), [sym_debug] = ACTIONS(4285), [sym_default] = ACTIONS(4285), [sym_delegate] = ACTIONS(4285), [sym_delete] = ACTIONS(4285), [sym_deprecated] = ACTIONS(4285), [sym_do] = ACTIONS(4285), [sym_else] = ACTIONS(4285), [sym_enum] = ACTIONS(4285), [sym_export] = ACTIONS(4285), [sym_extern] = ACTIONS(4285), [sym_final] = ACTIONS(4285), [sym_for] = ACTIONS(4285), [sym_foreach] = ACTIONS(4285), [sym_foreach_reverse] = ACTIONS(4285), [sym_function] = ACTIONS(4285), [sym_goto] = ACTIONS(4285), [sym_if] = ACTIONS(4285), [sym_immutable] = ACTIONS(4285), [sym_import] = ACTIONS(4285), [sym_in] = ACTIONS(4285), [sym_inout] = ACTIONS(4285), [sym_interface] = ACTIONS(4285), [sym_invariant] = ACTIONS(4285), [sym_is] = ACTIONS(4285), [sym_mixin] = ACTIONS(4285), [sym_new] = ACTIONS(4285), [sym_nothrow] = ACTIONS(4285), [sym_out] = ACTIONS(4285), [sym_override] = ACTIONS(4285), [sym_package] = ACTIONS(4285), [sym_pragma] = ACTIONS(4285), [sym_private] = ACTIONS(4285), [sym_protected] = ACTIONS(4285), [sym_public] = ACTIONS(4285), [sym_pure] = ACTIONS(4285), [sym_ref] = ACTIONS(4285), [sym_return] = ACTIONS(4285), [sym_scope] = ACTIONS(4285), [sym_shared] = ACTIONS(4285), [sym_static] = ACTIONS(4285), [sym_struct] = ACTIONS(4285), [sym_switch] = ACTIONS(4285), [sym_synchronized] = ACTIONS(4285), [sym_template] = ACTIONS(4285), [sym_throw] = ACTIONS(4285), [sym_try] = ACTIONS(4285), [sym_typeid] = ACTIONS(4285), [sym_typeof] = ACTIONS(4285), [sym_union] = ACTIONS(4285), [sym_unittest] = ACTIONS(4285), [sym_version] = ACTIONS(4285), [sym_while] = ACTIONS(4285), [sym_with] = ACTIONS(4285), [sym_gshared] = ACTIONS(4285), [sym_traits] = ACTIONS(4285), [sym_vector] = ACTIONS(4285), [sym_void] = ACTIONS(4285), [anon_sym_BQUOTE] = ACTIONS(4287), [anon_sym_r_DQUOTE] = ACTIONS(4287), [anon_sym_x_DQUOTE] = ACTIONS(4287), [anon_sym_DQUOTE] = ACTIONS(4287), [anon_sym_i_BQUOTE] = ACTIONS(4287), [anon_sym_i_DQUOTE] = ACTIONS(4287), [anon_sym_iq_LBRACE] = ACTIONS(4287), [aux_sym_char_literal_token1] = ACTIONS(4287), [anon_sym_SQUOTE] = ACTIONS(4285), [anon_sym___DATE__] = ACTIONS(4285), [anon_sym___FILE__] = ACTIONS(4285), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4285), [anon_sym___FUNCTION__] = ACTIONS(4285), [anon_sym___LINE__] = ACTIONS(4285), [anon_sym___MODULE__] = ACTIONS(4285), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4285), [anon_sym___TIME__] = ACTIONS(4285), [anon_sym___TIMESTAMP__] = ACTIONS(4285), [anon_sym___VENDOR__] = ACTIONS(4285), [anon_sym___VERSION__] = ACTIONS(4285), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4287), [sym_float_literal] = ACTIONS(4287), [sym__string] = ACTIONS(4287), }, [1626] = { [sym_identifier] = ACTIONS(5004), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5006), [anon_sym_RBRACE] = ACTIONS(5006), [anon_sym_LBRACE] = ACTIONS(5006), [anon_sym_DOT] = ACTIONS(5006), [anon_sym_AMP] = ACTIONS(5006), [anon_sym_DASH] = ACTIONS(5004), [anon_sym_DASH_DASH] = ACTIONS(5006), [anon_sym_PLUS] = ACTIONS(5004), [anon_sym_PLUS_PLUS] = ACTIONS(5006), [anon_sym_BANG] = ACTIONS(5006), [anon_sym_LPAREN] = ACTIONS(5006), [anon_sym_RPAREN] = ACTIONS(5006), [anon_sym_LBRACK] = ACTIONS(5006), [anon_sym_SEMI] = ACTIONS(5006), [anon_sym_DOLLAR] = ACTIONS(5006), [anon_sym_STAR] = ACTIONS(5006), [anon_sym_TILDE] = ACTIONS(5006), [anon_sym_AT] = ACTIONS(5006), [sym_bool] = ACTIONS(5004), [sym_byte] = ACTIONS(5004), [sym_ubyte] = ACTIONS(5004), [sym_char] = ACTIONS(5004), [sym_short] = ACTIONS(5004), [sym_ushort] = ACTIONS(5004), [sym_int] = ACTIONS(5004), [sym_uint] = ACTIONS(5004), [sym_long] = ACTIONS(5004), [sym_ulong] = ACTIONS(5004), [sym_cent] = ACTIONS(5004), [sym_ucent] = ACTIONS(5004), [sym_wchar] = ACTIONS(5004), [sym_dchar] = ACTIONS(5004), [sym_float] = ACTIONS(5004), [sym_double] = ACTIONS(5004), [sym_real] = ACTIONS(5004), [sym_ifloat] = ACTIONS(5004), [sym_idouble] = ACTIONS(5004), [sym_ireal] = ACTIONS(5004), [sym_cfloat] = ACTIONS(5004), [sym_cdouble] = ACTIONS(5004), [sym_creal] = ACTIONS(5004), [sym_size_t] = ACTIONS(5004), [sym_ptrdiff_t] = ACTIONS(5004), [sym_string] = ACTIONS(5004), [sym_cstring] = ACTIONS(5004), [sym_dstring] = ACTIONS(5004), [sym_wstring] = ACTIONS(5004), [sym_noreturn] = ACTIONS(5004), [sym_true] = ACTIONS(5004), [sym_false] = ACTIONS(5004), [sym_null] = ACTIONS(5004), [sym_super] = ACTIONS(5004), [sym_this] = ACTIONS(5004), [sym_abstract] = ACTIONS(5004), [sym_alias] = ACTIONS(5004), [sym_align] = ACTIONS(5004), [sym_asm] = ACTIONS(5004), [sym_assert] = ACTIONS(5004), [sym_auto] = ACTIONS(5004), [sym_break] = ACTIONS(5004), [sym_case] = ACTIONS(5004), [sym_cast] = ACTIONS(5004), [sym_class] = ACTIONS(5004), [sym_const] = ACTIONS(5004), [sym_continue] = ACTIONS(5004), [sym_debug] = ACTIONS(5004), [sym_default] = ACTIONS(5004), [sym_delegate] = ACTIONS(5004), [sym_delete] = ACTIONS(5004), [sym_deprecated] = ACTIONS(5004), [sym_do] = ACTIONS(5004), [sym_else] = ACTIONS(5004), [sym_enum] = ACTIONS(5004), [sym_export] = ACTIONS(5004), [sym_extern] = ACTIONS(5004), [sym_final] = ACTIONS(5004), [sym_for] = ACTIONS(5004), [sym_foreach] = ACTIONS(5004), [sym_foreach_reverse] = ACTIONS(5004), [sym_function] = ACTIONS(5004), [sym_goto] = ACTIONS(5004), [sym_if] = ACTIONS(5004), [sym_immutable] = ACTIONS(5004), [sym_import] = ACTIONS(5004), [sym_in] = ACTIONS(5004), [sym_inout] = ACTIONS(5004), [sym_interface] = ACTIONS(5004), [sym_invariant] = ACTIONS(5004), [sym_is] = ACTIONS(5004), [sym_mixin] = ACTIONS(5004), [sym_new] = ACTIONS(5004), [sym_nothrow] = ACTIONS(5004), [sym_out] = ACTIONS(5004), [sym_override] = ACTIONS(5004), [sym_package] = ACTIONS(5004), [sym_pragma] = ACTIONS(5004), [sym_private] = ACTIONS(5004), [sym_protected] = ACTIONS(5004), [sym_public] = ACTIONS(5004), [sym_pure] = ACTIONS(5004), [sym_ref] = ACTIONS(5004), [sym_return] = ACTIONS(5004), [sym_scope] = ACTIONS(5004), [sym_shared] = ACTIONS(5004), [sym_static] = ACTIONS(5004), [sym_struct] = ACTIONS(5004), [sym_switch] = ACTIONS(5004), [sym_synchronized] = ACTIONS(5004), [sym_template] = ACTIONS(5004), [sym_throw] = ACTIONS(5004), [sym_try] = ACTIONS(5004), [sym_typeid] = ACTIONS(5004), [sym_typeof] = ACTIONS(5004), [sym_union] = ACTIONS(5004), [sym_unittest] = ACTIONS(5004), [sym_version] = ACTIONS(5004), [sym_while] = ACTIONS(5004), [sym_with] = ACTIONS(5004), [sym_gshared] = ACTIONS(5004), [sym_traits] = ACTIONS(5004), [sym_vector] = ACTIONS(5004), [sym_void] = ACTIONS(5004), [anon_sym_BQUOTE] = ACTIONS(5006), [anon_sym_r_DQUOTE] = ACTIONS(5006), [anon_sym_x_DQUOTE] = ACTIONS(5006), [anon_sym_DQUOTE] = ACTIONS(5006), [anon_sym_i_BQUOTE] = ACTIONS(5006), [anon_sym_i_DQUOTE] = ACTIONS(5006), [anon_sym_iq_LBRACE] = ACTIONS(5006), [aux_sym_char_literal_token1] = ACTIONS(5006), [anon_sym_SQUOTE] = ACTIONS(5004), [anon_sym___DATE__] = ACTIONS(5004), [anon_sym___FILE__] = ACTIONS(5004), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5004), [anon_sym___FUNCTION__] = ACTIONS(5004), [anon_sym___LINE__] = ACTIONS(5004), [anon_sym___MODULE__] = ACTIONS(5004), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5004), [anon_sym___TIME__] = ACTIONS(5004), [anon_sym___TIMESTAMP__] = ACTIONS(5004), [anon_sym___VENDOR__] = ACTIONS(5004), [anon_sym___VERSION__] = ACTIONS(5004), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5006), [sym_float_literal] = ACTIONS(5006), [sym__string] = ACTIONS(5006), }, [1627] = { [sym_identifier] = ACTIONS(5080), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5082), [anon_sym_RBRACE] = ACTIONS(5082), [anon_sym_LBRACE] = ACTIONS(5082), [anon_sym_DOT] = ACTIONS(5082), [anon_sym_AMP] = ACTIONS(5082), [anon_sym_DASH] = ACTIONS(5080), [anon_sym_DASH_DASH] = ACTIONS(5082), [anon_sym_PLUS] = ACTIONS(5080), [anon_sym_PLUS_PLUS] = ACTIONS(5082), [anon_sym_BANG] = ACTIONS(5082), [anon_sym_LPAREN] = ACTIONS(5082), [anon_sym_RPAREN] = ACTIONS(5082), [anon_sym_LBRACK] = ACTIONS(5082), [anon_sym_SEMI] = ACTIONS(5082), [anon_sym_DOLLAR] = ACTIONS(5082), [anon_sym_STAR] = ACTIONS(5082), [anon_sym_TILDE] = ACTIONS(5082), [anon_sym_AT] = ACTIONS(5082), [sym_bool] = ACTIONS(5080), [sym_byte] = ACTIONS(5080), [sym_ubyte] = ACTIONS(5080), [sym_char] = ACTIONS(5080), [sym_short] = ACTIONS(5080), [sym_ushort] = ACTIONS(5080), [sym_int] = ACTIONS(5080), [sym_uint] = ACTIONS(5080), [sym_long] = ACTIONS(5080), [sym_ulong] = ACTIONS(5080), [sym_cent] = ACTIONS(5080), [sym_ucent] = ACTIONS(5080), [sym_wchar] = ACTIONS(5080), [sym_dchar] = ACTIONS(5080), [sym_float] = ACTIONS(5080), [sym_double] = ACTIONS(5080), [sym_real] = ACTIONS(5080), [sym_ifloat] = ACTIONS(5080), [sym_idouble] = ACTIONS(5080), [sym_ireal] = ACTIONS(5080), [sym_cfloat] = ACTIONS(5080), [sym_cdouble] = ACTIONS(5080), [sym_creal] = ACTIONS(5080), [sym_size_t] = ACTIONS(5080), [sym_ptrdiff_t] = ACTIONS(5080), [sym_string] = ACTIONS(5080), [sym_cstring] = ACTIONS(5080), [sym_dstring] = ACTIONS(5080), [sym_wstring] = ACTIONS(5080), [sym_noreturn] = ACTIONS(5080), [sym_true] = ACTIONS(5080), [sym_false] = ACTIONS(5080), [sym_null] = ACTIONS(5080), [sym_super] = ACTIONS(5080), [sym_this] = ACTIONS(5080), [sym_abstract] = ACTIONS(5080), [sym_alias] = ACTIONS(5080), [sym_align] = ACTIONS(5080), [sym_asm] = ACTIONS(5080), [sym_assert] = ACTIONS(5080), [sym_auto] = ACTIONS(5080), [sym_break] = ACTIONS(5080), [sym_case] = ACTIONS(5080), [sym_cast] = ACTIONS(5080), [sym_class] = ACTIONS(5080), [sym_const] = ACTIONS(5080), [sym_continue] = ACTIONS(5080), [sym_debug] = ACTIONS(5080), [sym_default] = ACTIONS(5080), [sym_delegate] = ACTIONS(5080), [sym_delete] = ACTIONS(5080), [sym_deprecated] = ACTIONS(5080), [sym_do] = ACTIONS(5080), [sym_else] = ACTIONS(5080), [sym_enum] = ACTIONS(5080), [sym_export] = ACTIONS(5080), [sym_extern] = ACTIONS(5080), [sym_final] = ACTIONS(5080), [sym_for] = ACTIONS(5080), [sym_foreach] = ACTIONS(5080), [sym_foreach_reverse] = ACTIONS(5080), [sym_function] = ACTIONS(5080), [sym_goto] = ACTIONS(5080), [sym_if] = ACTIONS(5080), [sym_immutable] = ACTIONS(5080), [sym_import] = ACTIONS(5080), [sym_in] = ACTIONS(5080), [sym_inout] = ACTIONS(5080), [sym_interface] = ACTIONS(5080), [sym_invariant] = ACTIONS(5080), [sym_is] = ACTIONS(5080), [sym_mixin] = ACTIONS(5080), [sym_new] = ACTIONS(5080), [sym_nothrow] = ACTIONS(5080), [sym_out] = ACTIONS(5080), [sym_override] = ACTIONS(5080), [sym_package] = ACTIONS(5080), [sym_pragma] = ACTIONS(5080), [sym_private] = ACTIONS(5080), [sym_protected] = ACTIONS(5080), [sym_public] = ACTIONS(5080), [sym_pure] = ACTIONS(5080), [sym_ref] = ACTIONS(5080), [sym_return] = ACTIONS(5080), [sym_scope] = ACTIONS(5080), [sym_shared] = ACTIONS(5080), [sym_static] = ACTIONS(5080), [sym_struct] = ACTIONS(5080), [sym_switch] = ACTIONS(5080), [sym_synchronized] = ACTIONS(5080), [sym_template] = ACTIONS(5080), [sym_throw] = ACTIONS(5080), [sym_try] = ACTIONS(5080), [sym_typeid] = ACTIONS(5080), [sym_typeof] = ACTIONS(5080), [sym_union] = ACTIONS(5080), [sym_unittest] = ACTIONS(5080), [sym_version] = ACTIONS(5080), [sym_while] = ACTIONS(5080), [sym_with] = ACTIONS(5080), [sym_gshared] = ACTIONS(5080), [sym_traits] = ACTIONS(5080), [sym_vector] = ACTIONS(5080), [sym_void] = ACTIONS(5080), [anon_sym_BQUOTE] = ACTIONS(5082), [anon_sym_r_DQUOTE] = ACTIONS(5082), [anon_sym_x_DQUOTE] = ACTIONS(5082), [anon_sym_DQUOTE] = ACTIONS(5082), [anon_sym_i_BQUOTE] = ACTIONS(5082), [anon_sym_i_DQUOTE] = ACTIONS(5082), [anon_sym_iq_LBRACE] = ACTIONS(5082), [aux_sym_char_literal_token1] = ACTIONS(5082), [anon_sym_SQUOTE] = ACTIONS(5080), [anon_sym___DATE__] = ACTIONS(5080), [anon_sym___FILE__] = ACTIONS(5080), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5080), [anon_sym___FUNCTION__] = ACTIONS(5080), [anon_sym___LINE__] = ACTIONS(5080), [anon_sym___MODULE__] = ACTIONS(5080), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5080), [anon_sym___TIME__] = ACTIONS(5080), [anon_sym___TIMESTAMP__] = ACTIONS(5080), [anon_sym___VENDOR__] = ACTIONS(5080), [anon_sym___VERSION__] = ACTIONS(5080), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5082), [sym_float_literal] = ACTIONS(5082), [sym__string] = ACTIONS(5082), }, [1628] = { [sym_identifier] = ACTIONS(5076), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5078), [anon_sym_RBRACE] = ACTIONS(5078), [anon_sym_LBRACE] = ACTIONS(5078), [anon_sym_DOT] = ACTIONS(5078), [anon_sym_AMP] = ACTIONS(5078), [anon_sym_DASH] = ACTIONS(5076), [anon_sym_DASH_DASH] = ACTIONS(5078), [anon_sym_PLUS] = ACTIONS(5076), [anon_sym_PLUS_PLUS] = ACTIONS(5078), [anon_sym_BANG] = ACTIONS(5078), [anon_sym_LPAREN] = ACTIONS(5078), [anon_sym_RPAREN] = ACTIONS(5078), [anon_sym_LBRACK] = ACTIONS(5078), [anon_sym_SEMI] = ACTIONS(5078), [anon_sym_DOLLAR] = ACTIONS(5078), [anon_sym_STAR] = ACTIONS(5078), [anon_sym_TILDE] = ACTIONS(5078), [anon_sym_AT] = ACTIONS(5078), [sym_bool] = ACTIONS(5076), [sym_byte] = ACTIONS(5076), [sym_ubyte] = ACTIONS(5076), [sym_char] = ACTIONS(5076), [sym_short] = ACTIONS(5076), [sym_ushort] = ACTIONS(5076), [sym_int] = ACTIONS(5076), [sym_uint] = ACTIONS(5076), [sym_long] = ACTIONS(5076), [sym_ulong] = ACTIONS(5076), [sym_cent] = ACTIONS(5076), [sym_ucent] = ACTIONS(5076), [sym_wchar] = ACTIONS(5076), [sym_dchar] = ACTIONS(5076), [sym_float] = ACTIONS(5076), [sym_double] = ACTIONS(5076), [sym_real] = ACTIONS(5076), [sym_ifloat] = ACTIONS(5076), [sym_idouble] = ACTIONS(5076), [sym_ireal] = ACTIONS(5076), [sym_cfloat] = ACTIONS(5076), [sym_cdouble] = ACTIONS(5076), [sym_creal] = ACTIONS(5076), [sym_size_t] = ACTIONS(5076), [sym_ptrdiff_t] = ACTIONS(5076), [sym_string] = ACTIONS(5076), [sym_cstring] = ACTIONS(5076), [sym_dstring] = ACTIONS(5076), [sym_wstring] = ACTIONS(5076), [sym_noreturn] = ACTIONS(5076), [sym_true] = ACTIONS(5076), [sym_false] = ACTIONS(5076), [sym_null] = ACTIONS(5076), [sym_super] = ACTIONS(5076), [sym_this] = ACTIONS(5076), [sym_abstract] = ACTIONS(5076), [sym_alias] = ACTIONS(5076), [sym_align] = ACTIONS(5076), [sym_asm] = ACTIONS(5076), [sym_assert] = ACTIONS(5076), [sym_auto] = ACTIONS(5076), [sym_break] = ACTIONS(5076), [sym_case] = ACTIONS(5076), [sym_cast] = ACTIONS(5076), [sym_class] = ACTIONS(5076), [sym_const] = ACTIONS(5076), [sym_continue] = ACTIONS(5076), [sym_debug] = ACTIONS(5076), [sym_default] = ACTIONS(5076), [sym_delegate] = ACTIONS(5076), [sym_delete] = ACTIONS(5076), [sym_deprecated] = ACTIONS(5076), [sym_do] = ACTIONS(5076), [sym_else] = ACTIONS(5076), [sym_enum] = ACTIONS(5076), [sym_export] = ACTIONS(5076), [sym_extern] = ACTIONS(5076), [sym_final] = ACTIONS(5076), [sym_for] = ACTIONS(5076), [sym_foreach] = ACTIONS(5076), [sym_foreach_reverse] = ACTIONS(5076), [sym_function] = ACTIONS(5076), [sym_goto] = ACTIONS(5076), [sym_if] = ACTIONS(5076), [sym_immutable] = ACTIONS(5076), [sym_import] = ACTIONS(5076), [sym_in] = ACTIONS(5076), [sym_inout] = ACTIONS(5076), [sym_interface] = ACTIONS(5076), [sym_invariant] = ACTIONS(5076), [sym_is] = ACTIONS(5076), [sym_mixin] = ACTIONS(5076), [sym_new] = ACTIONS(5076), [sym_nothrow] = ACTIONS(5076), [sym_out] = ACTIONS(5076), [sym_override] = ACTIONS(5076), [sym_package] = ACTIONS(5076), [sym_pragma] = ACTIONS(5076), [sym_private] = ACTIONS(5076), [sym_protected] = ACTIONS(5076), [sym_public] = ACTIONS(5076), [sym_pure] = ACTIONS(5076), [sym_ref] = ACTIONS(5076), [sym_return] = ACTIONS(5076), [sym_scope] = ACTIONS(5076), [sym_shared] = ACTIONS(5076), [sym_static] = ACTIONS(5076), [sym_struct] = ACTIONS(5076), [sym_switch] = ACTIONS(5076), [sym_synchronized] = ACTIONS(5076), [sym_template] = ACTIONS(5076), [sym_throw] = ACTIONS(5076), [sym_try] = ACTIONS(5076), [sym_typeid] = ACTIONS(5076), [sym_typeof] = ACTIONS(5076), [sym_union] = ACTIONS(5076), [sym_unittest] = ACTIONS(5076), [sym_version] = ACTIONS(5076), [sym_while] = ACTIONS(5076), [sym_with] = ACTIONS(5076), [sym_gshared] = ACTIONS(5076), [sym_traits] = ACTIONS(5076), [sym_vector] = ACTIONS(5076), [sym_void] = ACTIONS(5076), [anon_sym_BQUOTE] = ACTIONS(5078), [anon_sym_r_DQUOTE] = ACTIONS(5078), [anon_sym_x_DQUOTE] = ACTIONS(5078), [anon_sym_DQUOTE] = ACTIONS(5078), [anon_sym_i_BQUOTE] = ACTIONS(5078), [anon_sym_i_DQUOTE] = ACTIONS(5078), [anon_sym_iq_LBRACE] = ACTIONS(5078), [aux_sym_char_literal_token1] = ACTIONS(5078), [anon_sym_SQUOTE] = ACTIONS(5076), [anon_sym___DATE__] = ACTIONS(5076), [anon_sym___FILE__] = ACTIONS(5076), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5076), [anon_sym___FUNCTION__] = ACTIONS(5076), [anon_sym___LINE__] = ACTIONS(5076), [anon_sym___MODULE__] = ACTIONS(5076), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5076), [anon_sym___TIME__] = ACTIONS(5076), [anon_sym___TIMESTAMP__] = ACTIONS(5076), [anon_sym___VENDOR__] = ACTIONS(5076), [anon_sym___VERSION__] = ACTIONS(5076), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5078), [sym_float_literal] = ACTIONS(5078), [sym__string] = ACTIONS(5078), }, [1629] = { [sym_identifier] = ACTIONS(4844), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4846), [anon_sym_RBRACE] = ACTIONS(4846), [anon_sym_LBRACE] = ACTIONS(4846), [anon_sym_DOT] = ACTIONS(4846), [anon_sym_AMP] = ACTIONS(4846), [anon_sym_DASH] = ACTIONS(4844), [anon_sym_DASH_DASH] = ACTIONS(4846), [anon_sym_PLUS] = ACTIONS(4844), [anon_sym_PLUS_PLUS] = ACTIONS(4846), [anon_sym_BANG] = ACTIONS(4846), [anon_sym_LPAREN] = ACTIONS(4846), [anon_sym_RPAREN] = ACTIONS(4846), [anon_sym_LBRACK] = ACTIONS(4846), [anon_sym_SEMI] = ACTIONS(4846), [anon_sym_DOLLAR] = ACTIONS(4846), [anon_sym_STAR] = ACTIONS(4846), [anon_sym_TILDE] = ACTIONS(4846), [anon_sym_AT] = ACTIONS(4846), [sym_bool] = ACTIONS(4844), [sym_byte] = ACTIONS(4844), [sym_ubyte] = ACTIONS(4844), [sym_char] = ACTIONS(4844), [sym_short] = ACTIONS(4844), [sym_ushort] = ACTIONS(4844), [sym_int] = ACTIONS(4844), [sym_uint] = ACTIONS(4844), [sym_long] = ACTIONS(4844), [sym_ulong] = ACTIONS(4844), [sym_cent] = ACTIONS(4844), [sym_ucent] = ACTIONS(4844), [sym_wchar] = ACTIONS(4844), [sym_dchar] = ACTIONS(4844), [sym_float] = ACTIONS(4844), [sym_double] = ACTIONS(4844), [sym_real] = ACTIONS(4844), [sym_ifloat] = ACTIONS(4844), [sym_idouble] = ACTIONS(4844), [sym_ireal] = ACTIONS(4844), [sym_cfloat] = ACTIONS(4844), [sym_cdouble] = ACTIONS(4844), [sym_creal] = ACTIONS(4844), [sym_size_t] = ACTIONS(4844), [sym_ptrdiff_t] = ACTIONS(4844), [sym_string] = ACTIONS(4844), [sym_cstring] = ACTIONS(4844), [sym_dstring] = ACTIONS(4844), [sym_wstring] = ACTIONS(4844), [sym_noreturn] = ACTIONS(4844), [sym_true] = ACTIONS(4844), [sym_false] = ACTIONS(4844), [sym_null] = ACTIONS(4844), [sym_super] = ACTIONS(4844), [sym_this] = ACTIONS(4844), [sym_abstract] = ACTIONS(4844), [sym_alias] = ACTIONS(4844), [sym_align] = ACTIONS(4844), [sym_asm] = ACTIONS(4844), [sym_assert] = ACTIONS(4844), [sym_auto] = ACTIONS(4844), [sym_break] = ACTIONS(4844), [sym_case] = ACTIONS(4844), [sym_cast] = ACTIONS(4844), [sym_class] = ACTIONS(4844), [sym_const] = ACTIONS(4844), [sym_continue] = ACTIONS(4844), [sym_debug] = ACTIONS(4844), [sym_default] = ACTIONS(4844), [sym_delegate] = ACTIONS(4844), [sym_delete] = ACTIONS(4844), [sym_deprecated] = ACTIONS(4844), [sym_do] = ACTIONS(4844), [sym_else] = ACTIONS(4844), [sym_enum] = ACTIONS(4844), [sym_export] = ACTIONS(4844), [sym_extern] = ACTIONS(4844), [sym_final] = ACTIONS(4844), [sym_for] = ACTIONS(4844), [sym_foreach] = ACTIONS(4844), [sym_foreach_reverse] = ACTIONS(4844), [sym_function] = ACTIONS(4844), [sym_goto] = ACTIONS(4844), [sym_if] = ACTIONS(4844), [sym_immutable] = ACTIONS(4844), [sym_import] = ACTIONS(4844), [sym_in] = ACTIONS(4844), [sym_inout] = ACTIONS(4844), [sym_interface] = ACTIONS(4844), [sym_invariant] = ACTIONS(4844), [sym_is] = ACTIONS(4844), [sym_mixin] = ACTIONS(4844), [sym_new] = ACTIONS(4844), [sym_nothrow] = ACTIONS(4844), [sym_out] = ACTIONS(4844), [sym_override] = ACTIONS(4844), [sym_package] = ACTIONS(4844), [sym_pragma] = ACTIONS(4844), [sym_private] = ACTIONS(4844), [sym_protected] = ACTIONS(4844), [sym_public] = ACTIONS(4844), [sym_pure] = ACTIONS(4844), [sym_ref] = ACTIONS(4844), [sym_return] = ACTIONS(4844), [sym_scope] = ACTIONS(4844), [sym_shared] = ACTIONS(4844), [sym_static] = ACTIONS(4844), [sym_struct] = ACTIONS(4844), [sym_switch] = ACTIONS(4844), [sym_synchronized] = ACTIONS(4844), [sym_template] = ACTIONS(4844), [sym_throw] = ACTIONS(4844), [sym_try] = ACTIONS(4844), [sym_typeid] = ACTIONS(4844), [sym_typeof] = ACTIONS(4844), [sym_union] = ACTIONS(4844), [sym_unittest] = ACTIONS(4844), [sym_version] = ACTIONS(4844), [sym_while] = ACTIONS(4844), [sym_with] = ACTIONS(4844), [sym_gshared] = ACTIONS(4844), [sym_traits] = ACTIONS(4844), [sym_vector] = ACTIONS(4844), [sym_void] = ACTIONS(4844), [anon_sym_BQUOTE] = ACTIONS(4846), [anon_sym_r_DQUOTE] = ACTIONS(4846), [anon_sym_x_DQUOTE] = ACTIONS(4846), [anon_sym_DQUOTE] = ACTIONS(4846), [anon_sym_i_BQUOTE] = ACTIONS(4846), [anon_sym_i_DQUOTE] = ACTIONS(4846), [anon_sym_iq_LBRACE] = ACTIONS(4846), [aux_sym_char_literal_token1] = ACTIONS(4846), [anon_sym_SQUOTE] = ACTIONS(4844), [anon_sym___DATE__] = ACTIONS(4844), [anon_sym___FILE__] = ACTIONS(4844), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4844), [anon_sym___FUNCTION__] = ACTIONS(4844), [anon_sym___LINE__] = ACTIONS(4844), [anon_sym___MODULE__] = ACTIONS(4844), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4844), [anon_sym___TIME__] = ACTIONS(4844), [anon_sym___TIMESTAMP__] = ACTIONS(4844), [anon_sym___VENDOR__] = ACTIONS(4844), [anon_sym___VERSION__] = ACTIONS(4844), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4846), [sym_float_literal] = ACTIONS(4846), [sym__string] = ACTIONS(4846), }, [1630] = { [sym_identifier] = ACTIONS(4836), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4838), [anon_sym_RBRACE] = ACTIONS(4838), [anon_sym_LBRACE] = ACTIONS(4838), [anon_sym_DOT] = ACTIONS(4838), [anon_sym_AMP] = ACTIONS(4838), [anon_sym_DASH] = ACTIONS(4836), [anon_sym_DASH_DASH] = ACTIONS(4838), [anon_sym_PLUS] = ACTIONS(4836), [anon_sym_PLUS_PLUS] = ACTIONS(4838), [anon_sym_BANG] = ACTIONS(4838), [anon_sym_LPAREN] = ACTIONS(4838), [anon_sym_RPAREN] = ACTIONS(4838), [anon_sym_LBRACK] = ACTIONS(4838), [anon_sym_SEMI] = ACTIONS(4838), [anon_sym_DOLLAR] = ACTIONS(4838), [anon_sym_STAR] = ACTIONS(4838), [anon_sym_TILDE] = ACTIONS(4838), [anon_sym_AT] = ACTIONS(4838), [sym_bool] = ACTIONS(4836), [sym_byte] = ACTIONS(4836), [sym_ubyte] = ACTIONS(4836), [sym_char] = ACTIONS(4836), [sym_short] = ACTIONS(4836), [sym_ushort] = ACTIONS(4836), [sym_int] = ACTIONS(4836), [sym_uint] = ACTIONS(4836), [sym_long] = ACTIONS(4836), [sym_ulong] = ACTIONS(4836), [sym_cent] = ACTIONS(4836), [sym_ucent] = ACTIONS(4836), [sym_wchar] = ACTIONS(4836), [sym_dchar] = ACTIONS(4836), [sym_float] = ACTIONS(4836), [sym_double] = ACTIONS(4836), [sym_real] = ACTIONS(4836), [sym_ifloat] = ACTIONS(4836), [sym_idouble] = ACTIONS(4836), [sym_ireal] = ACTIONS(4836), [sym_cfloat] = ACTIONS(4836), [sym_cdouble] = ACTIONS(4836), [sym_creal] = ACTIONS(4836), [sym_size_t] = ACTIONS(4836), [sym_ptrdiff_t] = ACTIONS(4836), [sym_string] = ACTIONS(4836), [sym_cstring] = ACTIONS(4836), [sym_dstring] = ACTIONS(4836), [sym_wstring] = ACTIONS(4836), [sym_noreturn] = ACTIONS(4836), [sym_true] = ACTIONS(4836), [sym_false] = ACTIONS(4836), [sym_null] = ACTIONS(4836), [sym_super] = ACTIONS(4836), [sym_this] = ACTIONS(4836), [sym_abstract] = ACTIONS(4836), [sym_alias] = ACTIONS(4836), [sym_align] = ACTIONS(4836), [sym_asm] = ACTIONS(4836), [sym_assert] = ACTIONS(4836), [sym_auto] = ACTIONS(4836), [sym_break] = ACTIONS(4836), [sym_case] = ACTIONS(4836), [sym_cast] = ACTIONS(4836), [sym_class] = ACTIONS(4836), [sym_const] = ACTIONS(4836), [sym_continue] = ACTIONS(4836), [sym_debug] = ACTIONS(4836), [sym_default] = ACTIONS(4836), [sym_delegate] = ACTIONS(4836), [sym_delete] = ACTIONS(4836), [sym_deprecated] = ACTIONS(4836), [sym_do] = ACTIONS(4836), [sym_else] = ACTIONS(4836), [sym_enum] = ACTIONS(4836), [sym_export] = ACTIONS(4836), [sym_extern] = ACTIONS(4836), [sym_final] = ACTIONS(4836), [sym_for] = ACTIONS(4836), [sym_foreach] = ACTIONS(4836), [sym_foreach_reverse] = ACTIONS(4836), [sym_function] = ACTIONS(4836), [sym_goto] = ACTIONS(4836), [sym_if] = ACTIONS(4836), [sym_immutable] = ACTIONS(4836), [sym_import] = ACTIONS(4836), [sym_in] = ACTIONS(4836), [sym_inout] = ACTIONS(4836), [sym_interface] = ACTIONS(4836), [sym_invariant] = ACTIONS(4836), [sym_is] = ACTIONS(4836), [sym_mixin] = ACTIONS(4836), [sym_new] = ACTIONS(4836), [sym_nothrow] = ACTIONS(4836), [sym_out] = ACTIONS(4836), [sym_override] = ACTIONS(4836), [sym_package] = ACTIONS(4836), [sym_pragma] = ACTIONS(4836), [sym_private] = ACTIONS(4836), [sym_protected] = ACTIONS(4836), [sym_public] = ACTIONS(4836), [sym_pure] = ACTIONS(4836), [sym_ref] = ACTIONS(4836), [sym_return] = ACTIONS(4836), [sym_scope] = ACTIONS(4836), [sym_shared] = ACTIONS(4836), [sym_static] = ACTIONS(4836), [sym_struct] = ACTIONS(4836), [sym_switch] = ACTIONS(4836), [sym_synchronized] = ACTIONS(4836), [sym_template] = ACTIONS(4836), [sym_throw] = ACTIONS(4836), [sym_try] = ACTIONS(4836), [sym_typeid] = ACTIONS(4836), [sym_typeof] = ACTIONS(4836), [sym_union] = ACTIONS(4836), [sym_unittest] = ACTIONS(4836), [sym_version] = ACTIONS(4836), [sym_while] = ACTIONS(4836), [sym_with] = ACTIONS(4836), [sym_gshared] = ACTIONS(4836), [sym_traits] = ACTIONS(4836), [sym_vector] = ACTIONS(4836), [sym_void] = ACTIONS(4836), [anon_sym_BQUOTE] = ACTIONS(4838), [anon_sym_r_DQUOTE] = ACTIONS(4838), [anon_sym_x_DQUOTE] = ACTIONS(4838), [anon_sym_DQUOTE] = ACTIONS(4838), [anon_sym_i_BQUOTE] = ACTIONS(4838), [anon_sym_i_DQUOTE] = ACTIONS(4838), [anon_sym_iq_LBRACE] = ACTIONS(4838), [aux_sym_char_literal_token1] = ACTIONS(4838), [anon_sym_SQUOTE] = ACTIONS(4836), [anon_sym___DATE__] = ACTIONS(4836), [anon_sym___FILE__] = ACTIONS(4836), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4836), [anon_sym___FUNCTION__] = ACTIONS(4836), [anon_sym___LINE__] = ACTIONS(4836), [anon_sym___MODULE__] = ACTIONS(4836), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4836), [anon_sym___TIME__] = ACTIONS(4836), [anon_sym___TIMESTAMP__] = ACTIONS(4836), [anon_sym___VENDOR__] = ACTIONS(4836), [anon_sym___VERSION__] = ACTIONS(4836), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4838), [sym_float_literal] = ACTIONS(4838), [sym__string] = ACTIONS(4838), }, [1631] = { [sym_identifier] = ACTIONS(4574), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4576), [anon_sym_RBRACE] = ACTIONS(4576), [anon_sym_LBRACE] = ACTIONS(4576), [anon_sym_DOT] = ACTIONS(4576), [anon_sym_AMP] = ACTIONS(4576), [anon_sym_DASH] = ACTIONS(4574), [anon_sym_DASH_DASH] = ACTIONS(4576), [anon_sym_PLUS] = ACTIONS(4574), [anon_sym_PLUS_PLUS] = ACTIONS(4576), [anon_sym_BANG] = ACTIONS(4576), [anon_sym_LPAREN] = ACTIONS(4576), [anon_sym_RPAREN] = ACTIONS(4576), [anon_sym_LBRACK] = ACTIONS(4576), [anon_sym_SEMI] = ACTIONS(4576), [anon_sym_DOLLAR] = ACTIONS(4576), [anon_sym_STAR] = ACTIONS(4576), [anon_sym_TILDE] = ACTIONS(4576), [anon_sym_AT] = ACTIONS(4576), [sym_bool] = ACTIONS(4574), [sym_byte] = ACTIONS(4574), [sym_ubyte] = ACTIONS(4574), [sym_char] = ACTIONS(4574), [sym_short] = ACTIONS(4574), [sym_ushort] = ACTIONS(4574), [sym_int] = ACTIONS(4574), [sym_uint] = ACTIONS(4574), [sym_long] = ACTIONS(4574), [sym_ulong] = ACTIONS(4574), [sym_cent] = ACTIONS(4574), [sym_ucent] = ACTIONS(4574), [sym_wchar] = ACTIONS(4574), [sym_dchar] = ACTIONS(4574), [sym_float] = ACTIONS(4574), [sym_double] = ACTIONS(4574), [sym_real] = ACTIONS(4574), [sym_ifloat] = ACTIONS(4574), [sym_idouble] = ACTIONS(4574), [sym_ireal] = ACTIONS(4574), [sym_cfloat] = ACTIONS(4574), [sym_cdouble] = ACTIONS(4574), [sym_creal] = ACTIONS(4574), [sym_size_t] = ACTIONS(4574), [sym_ptrdiff_t] = ACTIONS(4574), [sym_string] = ACTIONS(4574), [sym_cstring] = ACTIONS(4574), [sym_dstring] = ACTIONS(4574), [sym_wstring] = ACTIONS(4574), [sym_noreturn] = ACTIONS(4574), [sym_true] = ACTIONS(4574), [sym_false] = ACTIONS(4574), [sym_null] = ACTIONS(4574), [sym_super] = ACTIONS(4574), [sym_this] = ACTIONS(4574), [sym_abstract] = ACTIONS(4574), [sym_alias] = ACTIONS(4574), [sym_align] = ACTIONS(4574), [sym_asm] = ACTIONS(4574), [sym_assert] = ACTIONS(4574), [sym_auto] = ACTIONS(4574), [sym_break] = ACTIONS(4574), [sym_case] = ACTIONS(4574), [sym_cast] = ACTIONS(4574), [sym_class] = ACTIONS(4574), [sym_const] = ACTIONS(4574), [sym_continue] = ACTIONS(4574), [sym_debug] = ACTIONS(4574), [sym_default] = ACTIONS(4574), [sym_delegate] = ACTIONS(4574), [sym_delete] = ACTIONS(4574), [sym_deprecated] = ACTIONS(4574), [sym_do] = ACTIONS(4574), [sym_else] = ACTIONS(4574), [sym_enum] = ACTIONS(4574), [sym_export] = ACTIONS(4574), [sym_extern] = ACTIONS(4574), [sym_final] = ACTIONS(4574), [sym_for] = ACTIONS(4574), [sym_foreach] = ACTIONS(4574), [sym_foreach_reverse] = ACTIONS(4574), [sym_function] = ACTIONS(4574), [sym_goto] = ACTIONS(4574), [sym_if] = ACTIONS(4574), [sym_immutable] = ACTIONS(4574), [sym_import] = ACTIONS(4574), [sym_in] = ACTIONS(4574), [sym_inout] = ACTIONS(4574), [sym_interface] = ACTIONS(4574), [sym_invariant] = ACTIONS(4574), [sym_is] = ACTIONS(4574), [sym_mixin] = ACTIONS(4574), [sym_new] = ACTIONS(4574), [sym_nothrow] = ACTIONS(4574), [sym_out] = ACTIONS(4574), [sym_override] = ACTIONS(4574), [sym_package] = ACTIONS(4574), [sym_pragma] = ACTIONS(4574), [sym_private] = ACTIONS(4574), [sym_protected] = ACTIONS(4574), [sym_public] = ACTIONS(4574), [sym_pure] = ACTIONS(4574), [sym_ref] = ACTIONS(4574), [sym_return] = ACTIONS(4574), [sym_scope] = ACTIONS(4574), [sym_shared] = ACTIONS(4574), [sym_static] = ACTIONS(4574), [sym_struct] = ACTIONS(4574), [sym_switch] = ACTIONS(4574), [sym_synchronized] = ACTIONS(4574), [sym_template] = ACTIONS(4574), [sym_throw] = ACTIONS(4574), [sym_try] = ACTIONS(4574), [sym_typeid] = ACTIONS(4574), [sym_typeof] = ACTIONS(4574), [sym_union] = ACTIONS(4574), [sym_unittest] = ACTIONS(4574), [sym_version] = ACTIONS(4574), [sym_while] = ACTIONS(4574), [sym_with] = ACTIONS(4574), [sym_gshared] = ACTIONS(4574), [sym_traits] = ACTIONS(4574), [sym_vector] = ACTIONS(4574), [sym_void] = ACTIONS(4574), [anon_sym_BQUOTE] = ACTIONS(4576), [anon_sym_r_DQUOTE] = ACTIONS(4576), [anon_sym_x_DQUOTE] = ACTIONS(4576), [anon_sym_DQUOTE] = ACTIONS(4576), [anon_sym_i_BQUOTE] = ACTIONS(4576), [anon_sym_i_DQUOTE] = ACTIONS(4576), [anon_sym_iq_LBRACE] = ACTIONS(4576), [aux_sym_char_literal_token1] = ACTIONS(4576), [anon_sym_SQUOTE] = ACTIONS(4574), [anon_sym___DATE__] = ACTIONS(4574), [anon_sym___FILE__] = ACTIONS(4574), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4574), [anon_sym___FUNCTION__] = ACTIONS(4574), [anon_sym___LINE__] = ACTIONS(4574), [anon_sym___MODULE__] = ACTIONS(4574), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4574), [anon_sym___TIME__] = ACTIONS(4574), [anon_sym___TIMESTAMP__] = ACTIONS(4574), [anon_sym___VENDOR__] = ACTIONS(4574), [anon_sym___VERSION__] = ACTIONS(4574), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4576), [sym_float_literal] = ACTIONS(4576), [sym__string] = ACTIONS(4576), }, [1632] = { [sym_identifier] = ACTIONS(4832), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4834), [anon_sym_RBRACE] = ACTIONS(4834), [anon_sym_LBRACE] = ACTIONS(4834), [anon_sym_DOT] = ACTIONS(4834), [anon_sym_AMP] = ACTIONS(4834), [anon_sym_DASH] = ACTIONS(4832), [anon_sym_DASH_DASH] = ACTIONS(4834), [anon_sym_PLUS] = ACTIONS(4832), [anon_sym_PLUS_PLUS] = ACTIONS(4834), [anon_sym_BANG] = ACTIONS(4834), [anon_sym_LPAREN] = ACTIONS(4834), [anon_sym_RPAREN] = ACTIONS(4834), [anon_sym_LBRACK] = ACTIONS(4834), [anon_sym_SEMI] = ACTIONS(4834), [anon_sym_DOLLAR] = ACTIONS(4834), [anon_sym_STAR] = ACTIONS(4834), [anon_sym_TILDE] = ACTIONS(4834), [anon_sym_AT] = ACTIONS(4834), [sym_bool] = ACTIONS(4832), [sym_byte] = ACTIONS(4832), [sym_ubyte] = ACTIONS(4832), [sym_char] = ACTIONS(4832), [sym_short] = ACTIONS(4832), [sym_ushort] = ACTIONS(4832), [sym_int] = ACTIONS(4832), [sym_uint] = ACTIONS(4832), [sym_long] = ACTIONS(4832), [sym_ulong] = ACTIONS(4832), [sym_cent] = ACTIONS(4832), [sym_ucent] = ACTIONS(4832), [sym_wchar] = ACTIONS(4832), [sym_dchar] = ACTIONS(4832), [sym_float] = ACTIONS(4832), [sym_double] = ACTIONS(4832), [sym_real] = ACTIONS(4832), [sym_ifloat] = ACTIONS(4832), [sym_idouble] = ACTIONS(4832), [sym_ireal] = ACTIONS(4832), [sym_cfloat] = ACTIONS(4832), [sym_cdouble] = ACTIONS(4832), [sym_creal] = ACTIONS(4832), [sym_size_t] = ACTIONS(4832), [sym_ptrdiff_t] = ACTIONS(4832), [sym_string] = ACTIONS(4832), [sym_cstring] = ACTIONS(4832), [sym_dstring] = ACTIONS(4832), [sym_wstring] = ACTIONS(4832), [sym_noreturn] = ACTIONS(4832), [sym_true] = ACTIONS(4832), [sym_false] = ACTIONS(4832), [sym_null] = ACTIONS(4832), [sym_super] = ACTIONS(4832), [sym_this] = ACTIONS(4832), [sym_abstract] = ACTIONS(4832), [sym_alias] = ACTIONS(4832), [sym_align] = ACTIONS(4832), [sym_asm] = ACTIONS(4832), [sym_assert] = ACTIONS(4832), [sym_auto] = ACTIONS(4832), [sym_break] = ACTIONS(4832), [sym_case] = ACTIONS(4832), [sym_cast] = ACTIONS(4832), [sym_class] = ACTIONS(4832), [sym_const] = ACTIONS(4832), [sym_continue] = ACTIONS(4832), [sym_debug] = ACTIONS(4832), [sym_default] = ACTIONS(4832), [sym_delegate] = ACTIONS(4832), [sym_delete] = ACTIONS(4832), [sym_deprecated] = ACTIONS(4832), [sym_do] = ACTIONS(4832), [sym_else] = ACTIONS(4832), [sym_enum] = ACTIONS(4832), [sym_export] = ACTIONS(4832), [sym_extern] = ACTIONS(4832), [sym_final] = ACTIONS(4832), [sym_for] = ACTIONS(4832), [sym_foreach] = ACTIONS(4832), [sym_foreach_reverse] = ACTIONS(4832), [sym_function] = ACTIONS(4832), [sym_goto] = ACTIONS(4832), [sym_if] = ACTIONS(4832), [sym_immutable] = ACTIONS(4832), [sym_import] = ACTIONS(4832), [sym_in] = ACTIONS(4832), [sym_inout] = ACTIONS(4832), [sym_interface] = ACTIONS(4832), [sym_invariant] = ACTIONS(4832), [sym_is] = ACTIONS(4832), [sym_mixin] = ACTIONS(4832), [sym_new] = ACTIONS(4832), [sym_nothrow] = ACTIONS(4832), [sym_out] = ACTIONS(4832), [sym_override] = ACTIONS(4832), [sym_package] = ACTIONS(4832), [sym_pragma] = ACTIONS(4832), [sym_private] = ACTIONS(4832), [sym_protected] = ACTIONS(4832), [sym_public] = ACTIONS(4832), [sym_pure] = ACTIONS(4832), [sym_ref] = ACTIONS(4832), [sym_return] = ACTIONS(4832), [sym_scope] = ACTIONS(4832), [sym_shared] = ACTIONS(4832), [sym_static] = ACTIONS(4832), [sym_struct] = ACTIONS(4832), [sym_switch] = ACTIONS(4832), [sym_synchronized] = ACTIONS(4832), [sym_template] = ACTIONS(4832), [sym_throw] = ACTIONS(4832), [sym_try] = ACTIONS(4832), [sym_typeid] = ACTIONS(4832), [sym_typeof] = ACTIONS(4832), [sym_union] = ACTIONS(4832), [sym_unittest] = ACTIONS(4832), [sym_version] = ACTIONS(4832), [sym_while] = ACTIONS(4832), [sym_with] = ACTIONS(4832), [sym_gshared] = ACTIONS(4832), [sym_traits] = ACTIONS(4832), [sym_vector] = ACTIONS(4832), [sym_void] = ACTIONS(4832), [anon_sym_BQUOTE] = ACTIONS(4834), [anon_sym_r_DQUOTE] = ACTIONS(4834), [anon_sym_x_DQUOTE] = ACTIONS(4834), [anon_sym_DQUOTE] = ACTIONS(4834), [anon_sym_i_BQUOTE] = ACTIONS(4834), [anon_sym_i_DQUOTE] = ACTIONS(4834), [anon_sym_iq_LBRACE] = ACTIONS(4834), [aux_sym_char_literal_token1] = ACTIONS(4834), [anon_sym_SQUOTE] = ACTIONS(4832), [anon_sym___DATE__] = ACTIONS(4832), [anon_sym___FILE__] = ACTIONS(4832), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4832), [anon_sym___FUNCTION__] = ACTIONS(4832), [anon_sym___LINE__] = ACTIONS(4832), [anon_sym___MODULE__] = ACTIONS(4832), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4832), [anon_sym___TIME__] = ACTIONS(4832), [anon_sym___TIMESTAMP__] = ACTIONS(4832), [anon_sym___VENDOR__] = ACTIONS(4832), [anon_sym___VERSION__] = ACTIONS(4832), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4834), [sym_float_literal] = ACTIONS(4834), [sym__string] = ACTIONS(4834), }, [1633] = { [sym_identifier] = ACTIONS(4788), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4790), [anon_sym_RBRACE] = ACTIONS(4790), [anon_sym_LBRACE] = ACTIONS(4790), [anon_sym_DOT] = ACTIONS(4790), [anon_sym_AMP] = ACTIONS(4790), [anon_sym_DASH] = ACTIONS(4788), [anon_sym_DASH_DASH] = ACTIONS(4790), [anon_sym_PLUS] = ACTIONS(4788), [anon_sym_PLUS_PLUS] = ACTIONS(4790), [anon_sym_BANG] = ACTIONS(4790), [anon_sym_LPAREN] = ACTIONS(4790), [anon_sym_RPAREN] = ACTIONS(4790), [anon_sym_LBRACK] = ACTIONS(4790), [anon_sym_SEMI] = ACTIONS(4790), [anon_sym_DOLLAR] = ACTIONS(4790), [anon_sym_STAR] = ACTIONS(4790), [anon_sym_TILDE] = ACTIONS(4790), [anon_sym_AT] = ACTIONS(4790), [sym_bool] = ACTIONS(4788), [sym_byte] = ACTIONS(4788), [sym_ubyte] = ACTIONS(4788), [sym_char] = ACTIONS(4788), [sym_short] = ACTIONS(4788), [sym_ushort] = ACTIONS(4788), [sym_int] = ACTIONS(4788), [sym_uint] = ACTIONS(4788), [sym_long] = ACTIONS(4788), [sym_ulong] = ACTIONS(4788), [sym_cent] = ACTIONS(4788), [sym_ucent] = ACTIONS(4788), [sym_wchar] = ACTIONS(4788), [sym_dchar] = ACTIONS(4788), [sym_float] = ACTIONS(4788), [sym_double] = ACTIONS(4788), [sym_real] = ACTIONS(4788), [sym_ifloat] = ACTIONS(4788), [sym_idouble] = ACTIONS(4788), [sym_ireal] = ACTIONS(4788), [sym_cfloat] = ACTIONS(4788), [sym_cdouble] = ACTIONS(4788), [sym_creal] = ACTIONS(4788), [sym_size_t] = ACTIONS(4788), [sym_ptrdiff_t] = ACTIONS(4788), [sym_string] = ACTIONS(4788), [sym_cstring] = ACTIONS(4788), [sym_dstring] = ACTIONS(4788), [sym_wstring] = ACTIONS(4788), [sym_noreturn] = ACTIONS(4788), [sym_true] = ACTIONS(4788), [sym_false] = ACTIONS(4788), [sym_null] = ACTIONS(4788), [sym_super] = ACTIONS(4788), [sym_this] = ACTIONS(4788), [sym_abstract] = ACTIONS(4788), [sym_alias] = ACTIONS(4788), [sym_align] = ACTIONS(4788), [sym_asm] = ACTIONS(4788), [sym_assert] = ACTIONS(4788), [sym_auto] = ACTIONS(4788), [sym_break] = ACTIONS(4788), [sym_case] = ACTIONS(4788), [sym_cast] = ACTIONS(4788), [sym_class] = ACTIONS(4788), [sym_const] = ACTIONS(4788), [sym_continue] = ACTIONS(4788), [sym_debug] = ACTIONS(4788), [sym_default] = ACTIONS(4788), [sym_delegate] = ACTIONS(4788), [sym_delete] = ACTIONS(4788), [sym_deprecated] = ACTIONS(4788), [sym_do] = ACTIONS(4788), [sym_else] = ACTIONS(4788), [sym_enum] = ACTIONS(4788), [sym_export] = ACTIONS(4788), [sym_extern] = ACTIONS(4788), [sym_final] = ACTIONS(4788), [sym_for] = ACTIONS(4788), [sym_foreach] = ACTIONS(4788), [sym_foreach_reverse] = ACTIONS(4788), [sym_function] = ACTIONS(4788), [sym_goto] = ACTIONS(4788), [sym_if] = ACTIONS(4788), [sym_immutable] = ACTIONS(4788), [sym_import] = ACTIONS(4788), [sym_in] = ACTIONS(4788), [sym_inout] = ACTIONS(4788), [sym_interface] = ACTIONS(4788), [sym_invariant] = ACTIONS(4788), [sym_is] = ACTIONS(4788), [sym_mixin] = ACTIONS(4788), [sym_new] = ACTIONS(4788), [sym_nothrow] = ACTIONS(4788), [sym_out] = ACTIONS(4788), [sym_override] = ACTIONS(4788), [sym_package] = ACTIONS(4788), [sym_pragma] = ACTIONS(4788), [sym_private] = ACTIONS(4788), [sym_protected] = ACTIONS(4788), [sym_public] = ACTIONS(4788), [sym_pure] = ACTIONS(4788), [sym_ref] = ACTIONS(4788), [sym_return] = ACTIONS(4788), [sym_scope] = ACTIONS(4788), [sym_shared] = ACTIONS(4788), [sym_static] = ACTIONS(4788), [sym_struct] = ACTIONS(4788), [sym_switch] = ACTIONS(4788), [sym_synchronized] = ACTIONS(4788), [sym_template] = ACTIONS(4788), [sym_throw] = ACTIONS(4788), [sym_try] = ACTIONS(4788), [sym_typeid] = ACTIONS(4788), [sym_typeof] = ACTIONS(4788), [sym_union] = ACTIONS(4788), [sym_unittest] = ACTIONS(4788), [sym_version] = ACTIONS(4788), [sym_while] = ACTIONS(4788), [sym_with] = ACTIONS(4788), [sym_gshared] = ACTIONS(4788), [sym_traits] = ACTIONS(4788), [sym_vector] = ACTIONS(4788), [sym_void] = ACTIONS(4788), [anon_sym_BQUOTE] = ACTIONS(4790), [anon_sym_r_DQUOTE] = ACTIONS(4790), [anon_sym_x_DQUOTE] = ACTIONS(4790), [anon_sym_DQUOTE] = ACTIONS(4790), [anon_sym_i_BQUOTE] = ACTIONS(4790), [anon_sym_i_DQUOTE] = ACTIONS(4790), [anon_sym_iq_LBRACE] = ACTIONS(4790), [aux_sym_char_literal_token1] = ACTIONS(4790), [anon_sym_SQUOTE] = ACTIONS(4788), [anon_sym___DATE__] = ACTIONS(4788), [anon_sym___FILE__] = ACTIONS(4788), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4788), [anon_sym___FUNCTION__] = ACTIONS(4788), [anon_sym___LINE__] = ACTIONS(4788), [anon_sym___MODULE__] = ACTIONS(4788), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4788), [anon_sym___TIME__] = ACTIONS(4788), [anon_sym___TIMESTAMP__] = ACTIONS(4788), [anon_sym___VENDOR__] = ACTIONS(4788), [anon_sym___VERSION__] = ACTIONS(4788), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4790), [sym_float_literal] = ACTIONS(4790), [sym__string] = ACTIONS(4790), }, [1634] = { [sym_identifier] = ACTIONS(4774), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4776), [anon_sym_RBRACE] = ACTIONS(4776), [anon_sym_LBRACE] = ACTIONS(4776), [anon_sym_DOT] = ACTIONS(4776), [anon_sym_AMP] = ACTIONS(4776), [anon_sym_DASH] = ACTIONS(4774), [anon_sym_DASH_DASH] = ACTIONS(4776), [anon_sym_PLUS] = ACTIONS(4774), [anon_sym_PLUS_PLUS] = ACTIONS(4776), [anon_sym_BANG] = ACTIONS(4776), [anon_sym_LPAREN] = ACTIONS(4776), [anon_sym_RPAREN] = ACTIONS(4776), [anon_sym_LBRACK] = ACTIONS(4776), [anon_sym_SEMI] = ACTIONS(4776), [anon_sym_DOLLAR] = ACTIONS(4776), [anon_sym_STAR] = ACTIONS(4776), [anon_sym_TILDE] = ACTIONS(4776), [anon_sym_AT] = ACTIONS(4776), [sym_bool] = ACTIONS(4774), [sym_byte] = ACTIONS(4774), [sym_ubyte] = ACTIONS(4774), [sym_char] = ACTIONS(4774), [sym_short] = ACTIONS(4774), [sym_ushort] = ACTIONS(4774), [sym_int] = ACTIONS(4774), [sym_uint] = ACTIONS(4774), [sym_long] = ACTIONS(4774), [sym_ulong] = ACTIONS(4774), [sym_cent] = ACTIONS(4774), [sym_ucent] = ACTIONS(4774), [sym_wchar] = ACTIONS(4774), [sym_dchar] = ACTIONS(4774), [sym_float] = ACTIONS(4774), [sym_double] = ACTIONS(4774), [sym_real] = ACTIONS(4774), [sym_ifloat] = ACTIONS(4774), [sym_idouble] = ACTIONS(4774), [sym_ireal] = ACTIONS(4774), [sym_cfloat] = ACTIONS(4774), [sym_cdouble] = ACTIONS(4774), [sym_creal] = ACTIONS(4774), [sym_size_t] = ACTIONS(4774), [sym_ptrdiff_t] = ACTIONS(4774), [sym_string] = ACTIONS(4774), [sym_cstring] = ACTIONS(4774), [sym_dstring] = ACTIONS(4774), [sym_wstring] = ACTIONS(4774), [sym_noreturn] = ACTIONS(4774), [sym_true] = ACTIONS(4774), [sym_false] = ACTIONS(4774), [sym_null] = ACTIONS(4774), [sym_super] = ACTIONS(4774), [sym_this] = ACTIONS(4774), [sym_abstract] = ACTIONS(4774), [sym_alias] = ACTIONS(4774), [sym_align] = ACTIONS(4774), [sym_asm] = ACTIONS(4774), [sym_assert] = ACTIONS(4774), [sym_auto] = ACTIONS(4774), [sym_break] = ACTIONS(4774), [sym_case] = ACTIONS(4774), [sym_cast] = ACTIONS(4774), [sym_class] = ACTIONS(4774), [sym_const] = ACTIONS(4774), [sym_continue] = ACTIONS(4774), [sym_debug] = ACTIONS(4774), [sym_default] = ACTIONS(4774), [sym_delegate] = ACTIONS(4774), [sym_delete] = ACTIONS(4774), [sym_deprecated] = ACTIONS(4774), [sym_do] = ACTIONS(4774), [sym_else] = ACTIONS(4774), [sym_enum] = ACTIONS(4774), [sym_export] = ACTIONS(4774), [sym_extern] = ACTIONS(4774), [sym_final] = ACTIONS(4774), [sym_for] = ACTIONS(4774), [sym_foreach] = ACTIONS(4774), [sym_foreach_reverse] = ACTIONS(4774), [sym_function] = ACTIONS(4774), [sym_goto] = ACTIONS(4774), [sym_if] = ACTIONS(4774), [sym_immutable] = ACTIONS(4774), [sym_import] = ACTIONS(4774), [sym_in] = ACTIONS(4774), [sym_inout] = ACTIONS(4774), [sym_interface] = ACTIONS(4774), [sym_invariant] = ACTIONS(4774), [sym_is] = ACTIONS(4774), [sym_mixin] = ACTIONS(4774), [sym_new] = ACTIONS(4774), [sym_nothrow] = ACTIONS(4774), [sym_out] = ACTIONS(4774), [sym_override] = ACTIONS(4774), [sym_package] = ACTIONS(4774), [sym_pragma] = ACTIONS(4774), [sym_private] = ACTIONS(4774), [sym_protected] = ACTIONS(4774), [sym_public] = ACTIONS(4774), [sym_pure] = ACTIONS(4774), [sym_ref] = ACTIONS(4774), [sym_return] = ACTIONS(4774), [sym_scope] = ACTIONS(4774), [sym_shared] = ACTIONS(4774), [sym_static] = ACTIONS(4774), [sym_struct] = ACTIONS(4774), [sym_switch] = ACTIONS(4774), [sym_synchronized] = ACTIONS(4774), [sym_template] = ACTIONS(4774), [sym_throw] = ACTIONS(4774), [sym_try] = ACTIONS(4774), [sym_typeid] = ACTIONS(4774), [sym_typeof] = ACTIONS(4774), [sym_union] = ACTIONS(4774), [sym_unittest] = ACTIONS(4774), [sym_version] = ACTIONS(4774), [sym_while] = ACTIONS(4774), [sym_with] = ACTIONS(4774), [sym_gshared] = ACTIONS(4774), [sym_traits] = ACTIONS(4774), [sym_vector] = ACTIONS(4774), [sym_void] = ACTIONS(4774), [anon_sym_BQUOTE] = ACTIONS(4776), [anon_sym_r_DQUOTE] = ACTIONS(4776), [anon_sym_x_DQUOTE] = ACTIONS(4776), [anon_sym_DQUOTE] = ACTIONS(4776), [anon_sym_i_BQUOTE] = ACTIONS(4776), [anon_sym_i_DQUOTE] = ACTIONS(4776), [anon_sym_iq_LBRACE] = ACTIONS(4776), [aux_sym_char_literal_token1] = ACTIONS(4776), [anon_sym_SQUOTE] = ACTIONS(4774), [anon_sym___DATE__] = ACTIONS(4774), [anon_sym___FILE__] = ACTIONS(4774), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4774), [anon_sym___FUNCTION__] = ACTIONS(4774), [anon_sym___LINE__] = ACTIONS(4774), [anon_sym___MODULE__] = ACTIONS(4774), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4774), [anon_sym___TIME__] = ACTIONS(4774), [anon_sym___TIMESTAMP__] = ACTIONS(4774), [anon_sym___VENDOR__] = ACTIONS(4774), [anon_sym___VERSION__] = ACTIONS(4774), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4776), [sym_float_literal] = ACTIONS(4776), [sym__string] = ACTIONS(4776), }, [1635] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_RBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [anon_sym_AT] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_abstract] = ACTIONS(4640), [sym_alias] = ACTIONS(4640), [sym_align] = ACTIONS(4640), [sym_asm] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_break] = ACTIONS(4640), [sym_case] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_class] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_continue] = ACTIONS(4640), [sym_debug] = ACTIONS(4640), [sym_default] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_deprecated] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(5105), [sym_enum] = ACTIONS(4640), [sym_export] = ACTIONS(4640), [sym_extern] = ACTIONS(4640), [sym_final] = ACTIONS(4640), [sym_for] = ACTIONS(4640), [sym_foreach] = ACTIONS(4640), [sym_foreach_reverse] = ACTIONS(4640), [sym_function] = ACTIONS(4640), [sym_goto] = ACTIONS(4640), [sym_if] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_interface] = ACTIONS(4640), [sym_invariant] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_nothrow] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_override] = ACTIONS(4640), [sym_package] = ACTIONS(4640), [sym_pragma] = ACTIONS(4640), [sym_private] = ACTIONS(4640), [sym_protected] = ACTIONS(4640), [sym_public] = ACTIONS(4640), [sym_pure] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_return] = ACTIONS(4640), [sym_scope] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_static] = ACTIONS(4640), [sym_struct] = ACTIONS(4640), [sym_switch] = ACTIONS(4640), [sym_synchronized] = ACTIONS(4640), [sym_template] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_try] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_union] = ACTIONS(4640), [sym_unittest] = ACTIONS(4640), [sym_version] = ACTIONS(4640), [sym_while] = ACTIONS(4640), [sym_with] = ACTIONS(4640), [sym_gshared] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [1636] = { [sym_identifier] = ACTIONS(4566), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4568), [anon_sym_RBRACE] = ACTIONS(4568), [anon_sym_LBRACE] = ACTIONS(4568), [anon_sym_DOT] = ACTIONS(4568), [anon_sym_AMP] = ACTIONS(4568), [anon_sym_DASH] = ACTIONS(4566), [anon_sym_DASH_DASH] = ACTIONS(4568), [anon_sym_PLUS] = ACTIONS(4566), [anon_sym_PLUS_PLUS] = ACTIONS(4568), [anon_sym_BANG] = ACTIONS(4568), [anon_sym_LPAREN] = ACTIONS(4568), [anon_sym_RPAREN] = ACTIONS(4568), [anon_sym_LBRACK] = ACTIONS(4568), [anon_sym_SEMI] = ACTIONS(4568), [anon_sym_DOLLAR] = ACTIONS(4568), [anon_sym_STAR] = ACTIONS(4568), [anon_sym_TILDE] = ACTIONS(4568), [anon_sym_AT] = ACTIONS(4568), [sym_bool] = ACTIONS(4566), [sym_byte] = ACTIONS(4566), [sym_ubyte] = ACTIONS(4566), [sym_char] = ACTIONS(4566), [sym_short] = ACTIONS(4566), [sym_ushort] = ACTIONS(4566), [sym_int] = ACTIONS(4566), [sym_uint] = ACTIONS(4566), [sym_long] = ACTIONS(4566), [sym_ulong] = ACTIONS(4566), [sym_cent] = ACTIONS(4566), [sym_ucent] = ACTIONS(4566), [sym_wchar] = ACTIONS(4566), [sym_dchar] = ACTIONS(4566), [sym_float] = ACTIONS(4566), [sym_double] = ACTIONS(4566), [sym_real] = ACTIONS(4566), [sym_ifloat] = ACTIONS(4566), [sym_idouble] = ACTIONS(4566), [sym_ireal] = ACTIONS(4566), [sym_cfloat] = ACTIONS(4566), [sym_cdouble] = ACTIONS(4566), [sym_creal] = ACTIONS(4566), [sym_size_t] = ACTIONS(4566), [sym_ptrdiff_t] = ACTIONS(4566), [sym_string] = ACTIONS(4566), [sym_cstring] = ACTIONS(4566), [sym_dstring] = ACTIONS(4566), [sym_wstring] = ACTIONS(4566), [sym_noreturn] = ACTIONS(4566), [sym_true] = ACTIONS(4566), [sym_false] = ACTIONS(4566), [sym_null] = ACTIONS(4566), [sym_super] = ACTIONS(4566), [sym_this] = ACTIONS(4566), [sym_abstract] = ACTIONS(4566), [sym_alias] = ACTIONS(4566), [sym_align] = ACTIONS(4566), [sym_asm] = ACTIONS(4566), [sym_assert] = ACTIONS(4566), [sym_auto] = ACTIONS(4566), [sym_break] = ACTIONS(4566), [sym_case] = ACTIONS(4566), [sym_cast] = ACTIONS(4566), [sym_class] = ACTIONS(4566), [sym_const] = ACTIONS(4566), [sym_continue] = ACTIONS(4566), [sym_debug] = ACTIONS(4566), [sym_default] = ACTIONS(4566), [sym_delegate] = ACTIONS(4566), [sym_delete] = ACTIONS(4566), [sym_deprecated] = ACTIONS(4566), [sym_do] = ACTIONS(4566), [sym_else] = ACTIONS(4566), [sym_enum] = ACTIONS(4566), [sym_export] = ACTIONS(4566), [sym_extern] = ACTIONS(4566), [sym_final] = ACTIONS(4566), [sym_for] = ACTIONS(4566), [sym_foreach] = ACTIONS(4566), [sym_foreach_reverse] = ACTIONS(4566), [sym_function] = ACTIONS(4566), [sym_goto] = ACTIONS(4566), [sym_if] = ACTIONS(4566), [sym_immutable] = ACTIONS(4566), [sym_import] = ACTIONS(4566), [sym_in] = ACTIONS(4566), [sym_inout] = ACTIONS(4566), [sym_interface] = ACTIONS(4566), [sym_invariant] = ACTIONS(4566), [sym_is] = ACTIONS(4566), [sym_mixin] = ACTIONS(4566), [sym_new] = ACTIONS(4566), [sym_nothrow] = ACTIONS(4566), [sym_out] = ACTIONS(4566), [sym_override] = ACTIONS(4566), [sym_package] = ACTIONS(4566), [sym_pragma] = ACTIONS(4566), [sym_private] = ACTIONS(4566), [sym_protected] = ACTIONS(4566), [sym_public] = ACTIONS(4566), [sym_pure] = ACTIONS(4566), [sym_ref] = ACTIONS(4566), [sym_return] = ACTIONS(4566), [sym_scope] = ACTIONS(4566), [sym_shared] = ACTIONS(4566), [sym_static] = ACTIONS(4566), [sym_struct] = ACTIONS(4566), [sym_switch] = ACTIONS(4566), [sym_synchronized] = ACTIONS(4566), [sym_template] = ACTIONS(4566), [sym_throw] = ACTIONS(4566), [sym_try] = ACTIONS(4566), [sym_typeid] = ACTIONS(4566), [sym_typeof] = ACTIONS(4566), [sym_union] = ACTIONS(4566), [sym_unittest] = ACTIONS(4566), [sym_version] = ACTIONS(4566), [sym_while] = ACTIONS(4566), [sym_with] = ACTIONS(4566), [sym_gshared] = ACTIONS(4566), [sym_traits] = ACTIONS(4566), [sym_vector] = ACTIONS(4566), [sym_void] = ACTIONS(4566), [anon_sym_BQUOTE] = ACTIONS(4568), [anon_sym_r_DQUOTE] = ACTIONS(4568), [anon_sym_x_DQUOTE] = ACTIONS(4568), [anon_sym_DQUOTE] = ACTIONS(4568), [anon_sym_i_BQUOTE] = ACTIONS(4568), [anon_sym_i_DQUOTE] = ACTIONS(4568), [anon_sym_iq_LBRACE] = ACTIONS(4568), [aux_sym_char_literal_token1] = ACTIONS(4568), [anon_sym_SQUOTE] = ACTIONS(4566), [anon_sym___DATE__] = ACTIONS(4566), [anon_sym___FILE__] = ACTIONS(4566), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4566), [anon_sym___FUNCTION__] = ACTIONS(4566), [anon_sym___LINE__] = ACTIONS(4566), [anon_sym___MODULE__] = ACTIONS(4566), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4566), [anon_sym___TIME__] = ACTIONS(4566), [anon_sym___TIMESTAMP__] = ACTIONS(4566), [anon_sym___VENDOR__] = ACTIONS(4566), [anon_sym___VERSION__] = ACTIONS(4566), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4568), [sym_float_literal] = ACTIONS(4568), [sym__string] = ACTIONS(4568), }, [1637] = { [sym_identifier] = ACTIONS(4558), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4560), [anon_sym_RBRACE] = ACTIONS(4560), [anon_sym_LBRACE] = ACTIONS(4560), [anon_sym_DOT] = ACTIONS(4560), [anon_sym_AMP] = ACTIONS(4560), [anon_sym_DASH] = ACTIONS(4558), [anon_sym_DASH_DASH] = ACTIONS(4560), [anon_sym_PLUS] = ACTIONS(4558), [anon_sym_PLUS_PLUS] = ACTIONS(4560), [anon_sym_BANG] = ACTIONS(4560), [anon_sym_LPAREN] = ACTIONS(4560), [anon_sym_RPAREN] = ACTIONS(4560), [anon_sym_LBRACK] = ACTIONS(4560), [anon_sym_SEMI] = ACTIONS(4560), [anon_sym_DOLLAR] = ACTIONS(4560), [anon_sym_STAR] = ACTIONS(4560), [anon_sym_TILDE] = ACTIONS(4560), [anon_sym_AT] = ACTIONS(4560), [sym_bool] = ACTIONS(4558), [sym_byte] = ACTIONS(4558), [sym_ubyte] = ACTIONS(4558), [sym_char] = ACTIONS(4558), [sym_short] = ACTIONS(4558), [sym_ushort] = ACTIONS(4558), [sym_int] = ACTIONS(4558), [sym_uint] = ACTIONS(4558), [sym_long] = ACTIONS(4558), [sym_ulong] = ACTIONS(4558), [sym_cent] = ACTIONS(4558), [sym_ucent] = ACTIONS(4558), [sym_wchar] = ACTIONS(4558), [sym_dchar] = ACTIONS(4558), [sym_float] = ACTIONS(4558), [sym_double] = ACTIONS(4558), [sym_real] = ACTIONS(4558), [sym_ifloat] = ACTIONS(4558), [sym_idouble] = ACTIONS(4558), [sym_ireal] = ACTIONS(4558), [sym_cfloat] = ACTIONS(4558), [sym_cdouble] = ACTIONS(4558), [sym_creal] = ACTIONS(4558), [sym_size_t] = ACTIONS(4558), [sym_ptrdiff_t] = ACTIONS(4558), [sym_string] = ACTIONS(4558), [sym_cstring] = ACTIONS(4558), [sym_dstring] = ACTIONS(4558), [sym_wstring] = ACTIONS(4558), [sym_noreturn] = ACTIONS(4558), [sym_true] = ACTIONS(4558), [sym_false] = ACTIONS(4558), [sym_null] = ACTIONS(4558), [sym_super] = ACTIONS(4558), [sym_this] = ACTIONS(4558), [sym_abstract] = ACTIONS(4558), [sym_alias] = ACTIONS(4558), [sym_align] = ACTIONS(4558), [sym_asm] = ACTIONS(4558), [sym_assert] = ACTIONS(4558), [sym_auto] = ACTIONS(4558), [sym_break] = ACTIONS(4558), [sym_case] = ACTIONS(4558), [sym_cast] = ACTIONS(4558), [sym_class] = ACTIONS(4558), [sym_const] = ACTIONS(4558), [sym_continue] = ACTIONS(4558), [sym_debug] = ACTIONS(4558), [sym_default] = ACTIONS(4558), [sym_delegate] = ACTIONS(4558), [sym_delete] = ACTIONS(4558), [sym_deprecated] = ACTIONS(4558), [sym_do] = ACTIONS(4558), [sym_else] = ACTIONS(4558), [sym_enum] = ACTIONS(4558), [sym_export] = ACTIONS(4558), [sym_extern] = ACTIONS(4558), [sym_final] = ACTIONS(4558), [sym_for] = ACTIONS(4558), [sym_foreach] = ACTIONS(4558), [sym_foreach_reverse] = ACTIONS(4558), [sym_function] = ACTIONS(4558), [sym_goto] = ACTIONS(4558), [sym_if] = ACTIONS(4558), [sym_immutable] = ACTIONS(4558), [sym_import] = ACTIONS(4558), [sym_in] = ACTIONS(4558), [sym_inout] = ACTIONS(4558), [sym_interface] = ACTIONS(4558), [sym_invariant] = ACTIONS(4558), [sym_is] = ACTIONS(4558), [sym_mixin] = ACTIONS(4558), [sym_new] = ACTIONS(4558), [sym_nothrow] = ACTIONS(4558), [sym_out] = ACTIONS(4558), [sym_override] = ACTIONS(4558), [sym_package] = ACTIONS(4558), [sym_pragma] = ACTIONS(4558), [sym_private] = ACTIONS(4558), [sym_protected] = ACTIONS(4558), [sym_public] = ACTIONS(4558), [sym_pure] = ACTIONS(4558), [sym_ref] = ACTIONS(4558), [sym_return] = ACTIONS(4558), [sym_scope] = ACTIONS(4558), [sym_shared] = ACTIONS(4558), [sym_static] = ACTIONS(4558), [sym_struct] = ACTIONS(4558), [sym_switch] = ACTIONS(4558), [sym_synchronized] = ACTIONS(4558), [sym_template] = ACTIONS(4558), [sym_throw] = ACTIONS(4558), [sym_try] = ACTIONS(4558), [sym_typeid] = ACTIONS(4558), [sym_typeof] = ACTIONS(4558), [sym_union] = ACTIONS(4558), [sym_unittest] = ACTIONS(4558), [sym_version] = ACTIONS(4558), [sym_while] = ACTIONS(4558), [sym_with] = ACTIONS(4558), [sym_gshared] = ACTIONS(4558), [sym_traits] = ACTIONS(4558), [sym_vector] = ACTIONS(4558), [sym_void] = ACTIONS(4558), [anon_sym_BQUOTE] = ACTIONS(4560), [anon_sym_r_DQUOTE] = ACTIONS(4560), [anon_sym_x_DQUOTE] = ACTIONS(4560), [anon_sym_DQUOTE] = ACTIONS(4560), [anon_sym_i_BQUOTE] = ACTIONS(4560), [anon_sym_i_DQUOTE] = ACTIONS(4560), [anon_sym_iq_LBRACE] = ACTIONS(4560), [aux_sym_char_literal_token1] = ACTIONS(4560), [anon_sym_SQUOTE] = ACTIONS(4558), [anon_sym___DATE__] = ACTIONS(4558), [anon_sym___FILE__] = ACTIONS(4558), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4558), [anon_sym___FUNCTION__] = ACTIONS(4558), [anon_sym___LINE__] = ACTIONS(4558), [anon_sym___MODULE__] = ACTIONS(4558), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4558), [anon_sym___TIME__] = ACTIONS(4558), [anon_sym___TIMESTAMP__] = ACTIONS(4558), [anon_sym___VENDOR__] = ACTIONS(4558), [anon_sym___VERSION__] = ACTIONS(4558), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4560), [sym_float_literal] = ACTIONS(4560), [sym__string] = ACTIONS(4560), }, [1638] = { [sym_identifier] = ACTIONS(4554), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4556), [anon_sym_RBRACE] = ACTIONS(4556), [anon_sym_LBRACE] = ACTIONS(4556), [anon_sym_DOT] = ACTIONS(4556), [anon_sym_AMP] = ACTIONS(4556), [anon_sym_DASH] = ACTIONS(4554), [anon_sym_DASH_DASH] = ACTIONS(4556), [anon_sym_PLUS] = ACTIONS(4554), [anon_sym_PLUS_PLUS] = ACTIONS(4556), [anon_sym_BANG] = ACTIONS(4556), [anon_sym_LPAREN] = ACTIONS(4556), [anon_sym_RPAREN] = ACTIONS(4556), [anon_sym_LBRACK] = ACTIONS(4556), [anon_sym_SEMI] = ACTIONS(4556), [anon_sym_DOLLAR] = ACTIONS(4556), [anon_sym_STAR] = ACTIONS(4556), [anon_sym_TILDE] = ACTIONS(4556), [anon_sym_AT] = ACTIONS(4556), [sym_bool] = ACTIONS(4554), [sym_byte] = ACTIONS(4554), [sym_ubyte] = ACTIONS(4554), [sym_char] = ACTIONS(4554), [sym_short] = ACTIONS(4554), [sym_ushort] = ACTIONS(4554), [sym_int] = ACTIONS(4554), [sym_uint] = ACTIONS(4554), [sym_long] = ACTIONS(4554), [sym_ulong] = ACTIONS(4554), [sym_cent] = ACTIONS(4554), [sym_ucent] = ACTIONS(4554), [sym_wchar] = ACTIONS(4554), [sym_dchar] = ACTIONS(4554), [sym_float] = ACTIONS(4554), [sym_double] = ACTIONS(4554), [sym_real] = ACTIONS(4554), [sym_ifloat] = ACTIONS(4554), [sym_idouble] = ACTIONS(4554), [sym_ireal] = ACTIONS(4554), [sym_cfloat] = ACTIONS(4554), [sym_cdouble] = ACTIONS(4554), [sym_creal] = ACTIONS(4554), [sym_size_t] = ACTIONS(4554), [sym_ptrdiff_t] = ACTIONS(4554), [sym_string] = ACTIONS(4554), [sym_cstring] = ACTIONS(4554), [sym_dstring] = ACTIONS(4554), [sym_wstring] = ACTIONS(4554), [sym_noreturn] = ACTIONS(4554), [sym_true] = ACTIONS(4554), [sym_false] = ACTIONS(4554), [sym_null] = ACTIONS(4554), [sym_super] = ACTIONS(4554), [sym_this] = ACTIONS(4554), [sym_abstract] = ACTIONS(4554), [sym_alias] = ACTIONS(4554), [sym_align] = ACTIONS(4554), [sym_asm] = ACTIONS(4554), [sym_assert] = ACTIONS(4554), [sym_auto] = ACTIONS(4554), [sym_break] = ACTIONS(4554), [sym_case] = ACTIONS(4554), [sym_cast] = ACTIONS(4554), [sym_class] = ACTIONS(4554), [sym_const] = ACTIONS(4554), [sym_continue] = ACTIONS(4554), [sym_debug] = ACTIONS(4554), [sym_default] = ACTIONS(4554), [sym_delegate] = ACTIONS(4554), [sym_delete] = ACTIONS(4554), [sym_deprecated] = ACTIONS(4554), [sym_do] = ACTIONS(4554), [sym_else] = ACTIONS(4554), [sym_enum] = ACTIONS(4554), [sym_export] = ACTIONS(4554), [sym_extern] = ACTIONS(4554), [sym_final] = ACTIONS(4554), [sym_for] = ACTIONS(4554), [sym_foreach] = ACTIONS(4554), [sym_foreach_reverse] = ACTIONS(4554), [sym_function] = ACTIONS(4554), [sym_goto] = ACTIONS(4554), [sym_if] = ACTIONS(4554), [sym_immutable] = ACTIONS(4554), [sym_import] = ACTIONS(4554), [sym_in] = ACTIONS(4554), [sym_inout] = ACTIONS(4554), [sym_interface] = ACTIONS(4554), [sym_invariant] = ACTIONS(4554), [sym_is] = ACTIONS(4554), [sym_mixin] = ACTIONS(4554), [sym_new] = ACTIONS(4554), [sym_nothrow] = ACTIONS(4554), [sym_out] = ACTIONS(4554), [sym_override] = ACTIONS(4554), [sym_package] = ACTIONS(4554), [sym_pragma] = ACTIONS(4554), [sym_private] = ACTIONS(4554), [sym_protected] = ACTIONS(4554), [sym_public] = ACTIONS(4554), [sym_pure] = ACTIONS(4554), [sym_ref] = ACTIONS(4554), [sym_return] = ACTIONS(4554), [sym_scope] = ACTIONS(4554), [sym_shared] = ACTIONS(4554), [sym_static] = ACTIONS(4554), [sym_struct] = ACTIONS(4554), [sym_switch] = ACTIONS(4554), [sym_synchronized] = ACTIONS(4554), [sym_template] = ACTIONS(4554), [sym_throw] = ACTIONS(4554), [sym_try] = ACTIONS(4554), [sym_typeid] = ACTIONS(4554), [sym_typeof] = ACTIONS(4554), [sym_union] = ACTIONS(4554), [sym_unittest] = ACTIONS(4554), [sym_version] = ACTIONS(4554), [sym_while] = ACTIONS(4554), [sym_with] = ACTIONS(4554), [sym_gshared] = ACTIONS(4554), [sym_traits] = ACTIONS(4554), [sym_vector] = ACTIONS(4554), [sym_void] = ACTIONS(4554), [anon_sym_BQUOTE] = ACTIONS(4556), [anon_sym_r_DQUOTE] = ACTIONS(4556), [anon_sym_x_DQUOTE] = ACTIONS(4556), [anon_sym_DQUOTE] = ACTIONS(4556), [anon_sym_i_BQUOTE] = ACTIONS(4556), [anon_sym_i_DQUOTE] = ACTIONS(4556), [anon_sym_iq_LBRACE] = ACTIONS(4556), [aux_sym_char_literal_token1] = ACTIONS(4556), [anon_sym_SQUOTE] = ACTIONS(4554), [anon_sym___DATE__] = ACTIONS(4554), [anon_sym___FILE__] = ACTIONS(4554), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4554), [anon_sym___FUNCTION__] = ACTIONS(4554), [anon_sym___LINE__] = ACTIONS(4554), [anon_sym___MODULE__] = ACTIONS(4554), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4554), [anon_sym___TIME__] = ACTIONS(4554), [anon_sym___TIMESTAMP__] = ACTIONS(4554), [anon_sym___VENDOR__] = ACTIONS(4554), [anon_sym___VERSION__] = ACTIONS(4554), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4556), [sym_float_literal] = ACTIONS(4556), [sym__string] = ACTIONS(4556), }, [1639] = { [sym_identifier] = ACTIONS(4550), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4552), [anon_sym_RBRACE] = ACTIONS(4552), [anon_sym_LBRACE] = ACTIONS(4552), [anon_sym_DOT] = ACTIONS(4552), [anon_sym_AMP] = ACTIONS(4552), [anon_sym_DASH] = ACTIONS(4550), [anon_sym_DASH_DASH] = ACTIONS(4552), [anon_sym_PLUS] = ACTIONS(4550), [anon_sym_PLUS_PLUS] = ACTIONS(4552), [anon_sym_BANG] = ACTIONS(4552), [anon_sym_LPAREN] = ACTIONS(4552), [anon_sym_RPAREN] = ACTIONS(4552), [anon_sym_LBRACK] = ACTIONS(4552), [anon_sym_SEMI] = ACTIONS(4552), [anon_sym_DOLLAR] = ACTIONS(4552), [anon_sym_STAR] = ACTIONS(4552), [anon_sym_TILDE] = ACTIONS(4552), [anon_sym_AT] = ACTIONS(4552), [sym_bool] = ACTIONS(4550), [sym_byte] = ACTIONS(4550), [sym_ubyte] = ACTIONS(4550), [sym_char] = ACTIONS(4550), [sym_short] = ACTIONS(4550), [sym_ushort] = ACTIONS(4550), [sym_int] = ACTIONS(4550), [sym_uint] = ACTIONS(4550), [sym_long] = ACTIONS(4550), [sym_ulong] = ACTIONS(4550), [sym_cent] = ACTIONS(4550), [sym_ucent] = ACTIONS(4550), [sym_wchar] = ACTIONS(4550), [sym_dchar] = ACTIONS(4550), [sym_float] = ACTIONS(4550), [sym_double] = ACTIONS(4550), [sym_real] = ACTIONS(4550), [sym_ifloat] = ACTIONS(4550), [sym_idouble] = ACTIONS(4550), [sym_ireal] = ACTIONS(4550), [sym_cfloat] = ACTIONS(4550), [sym_cdouble] = ACTIONS(4550), [sym_creal] = ACTIONS(4550), [sym_size_t] = ACTIONS(4550), [sym_ptrdiff_t] = ACTIONS(4550), [sym_string] = ACTIONS(4550), [sym_cstring] = ACTIONS(4550), [sym_dstring] = ACTIONS(4550), [sym_wstring] = ACTIONS(4550), [sym_noreturn] = ACTIONS(4550), [sym_true] = ACTIONS(4550), [sym_false] = ACTIONS(4550), [sym_null] = ACTIONS(4550), [sym_super] = ACTIONS(4550), [sym_this] = ACTIONS(4550), [sym_abstract] = ACTIONS(4550), [sym_alias] = ACTIONS(4550), [sym_align] = ACTIONS(4550), [sym_asm] = ACTIONS(4550), [sym_assert] = ACTIONS(4550), [sym_auto] = ACTIONS(4550), [sym_break] = ACTIONS(4550), [sym_case] = ACTIONS(4550), [sym_cast] = ACTIONS(4550), [sym_class] = ACTIONS(4550), [sym_const] = ACTIONS(4550), [sym_continue] = ACTIONS(4550), [sym_debug] = ACTIONS(4550), [sym_default] = ACTIONS(4550), [sym_delegate] = ACTIONS(4550), [sym_delete] = ACTIONS(4550), [sym_deprecated] = ACTIONS(4550), [sym_do] = ACTIONS(4550), [sym_else] = ACTIONS(4550), [sym_enum] = ACTIONS(4550), [sym_export] = ACTIONS(4550), [sym_extern] = ACTIONS(4550), [sym_final] = ACTIONS(4550), [sym_for] = ACTIONS(4550), [sym_foreach] = ACTIONS(4550), [sym_foreach_reverse] = ACTIONS(4550), [sym_function] = ACTIONS(4550), [sym_goto] = ACTIONS(4550), [sym_if] = ACTIONS(4550), [sym_immutable] = ACTIONS(4550), [sym_import] = ACTIONS(4550), [sym_in] = ACTIONS(4550), [sym_inout] = ACTIONS(4550), [sym_interface] = ACTIONS(4550), [sym_invariant] = ACTIONS(4550), [sym_is] = ACTIONS(4550), [sym_mixin] = ACTIONS(4550), [sym_new] = ACTIONS(4550), [sym_nothrow] = ACTIONS(4550), [sym_out] = ACTIONS(4550), [sym_override] = ACTIONS(4550), [sym_package] = ACTIONS(4550), [sym_pragma] = ACTIONS(4550), [sym_private] = ACTIONS(4550), [sym_protected] = ACTIONS(4550), [sym_public] = ACTIONS(4550), [sym_pure] = ACTIONS(4550), [sym_ref] = ACTIONS(4550), [sym_return] = ACTIONS(4550), [sym_scope] = ACTIONS(4550), [sym_shared] = ACTIONS(4550), [sym_static] = ACTIONS(4550), [sym_struct] = ACTIONS(4550), [sym_switch] = ACTIONS(4550), [sym_synchronized] = ACTIONS(4550), [sym_template] = ACTIONS(4550), [sym_throw] = ACTIONS(4550), [sym_try] = ACTIONS(4550), [sym_typeid] = ACTIONS(4550), [sym_typeof] = ACTIONS(4550), [sym_union] = ACTIONS(4550), [sym_unittest] = ACTIONS(4550), [sym_version] = ACTIONS(4550), [sym_while] = ACTIONS(4550), [sym_with] = ACTIONS(4550), [sym_gshared] = ACTIONS(4550), [sym_traits] = ACTIONS(4550), [sym_vector] = ACTIONS(4550), [sym_void] = ACTIONS(4550), [anon_sym_BQUOTE] = ACTIONS(4552), [anon_sym_r_DQUOTE] = ACTIONS(4552), [anon_sym_x_DQUOTE] = ACTIONS(4552), [anon_sym_DQUOTE] = ACTIONS(4552), [anon_sym_i_BQUOTE] = ACTIONS(4552), [anon_sym_i_DQUOTE] = ACTIONS(4552), [anon_sym_iq_LBRACE] = ACTIONS(4552), [aux_sym_char_literal_token1] = ACTIONS(4552), [anon_sym_SQUOTE] = ACTIONS(4550), [anon_sym___DATE__] = ACTIONS(4550), [anon_sym___FILE__] = ACTIONS(4550), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4550), [anon_sym___FUNCTION__] = ACTIONS(4550), [anon_sym___LINE__] = ACTIONS(4550), [anon_sym___MODULE__] = ACTIONS(4550), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4550), [anon_sym___TIME__] = ACTIONS(4550), [anon_sym___TIMESTAMP__] = ACTIONS(4550), [anon_sym___VENDOR__] = ACTIONS(4550), [anon_sym___VERSION__] = ACTIONS(4550), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4552), [sym_float_literal] = ACTIONS(4552), [sym__string] = ACTIONS(4552), }, [1640] = { [sym_identifier] = ACTIONS(4542), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4544), [anon_sym_RBRACE] = ACTIONS(4544), [anon_sym_LBRACE] = ACTIONS(4544), [anon_sym_DOT] = ACTIONS(4544), [anon_sym_AMP] = ACTIONS(4544), [anon_sym_DASH] = ACTIONS(4542), [anon_sym_DASH_DASH] = ACTIONS(4544), [anon_sym_PLUS] = ACTIONS(4542), [anon_sym_PLUS_PLUS] = ACTIONS(4544), [anon_sym_BANG] = ACTIONS(4544), [anon_sym_LPAREN] = ACTIONS(4544), [anon_sym_RPAREN] = ACTIONS(4544), [anon_sym_LBRACK] = ACTIONS(4544), [anon_sym_SEMI] = ACTIONS(4544), [anon_sym_DOLLAR] = ACTIONS(4544), [anon_sym_STAR] = ACTIONS(4544), [anon_sym_TILDE] = ACTIONS(4544), [anon_sym_AT] = ACTIONS(4544), [sym_bool] = ACTIONS(4542), [sym_byte] = ACTIONS(4542), [sym_ubyte] = ACTIONS(4542), [sym_char] = ACTIONS(4542), [sym_short] = ACTIONS(4542), [sym_ushort] = ACTIONS(4542), [sym_int] = ACTIONS(4542), [sym_uint] = ACTIONS(4542), [sym_long] = ACTIONS(4542), [sym_ulong] = ACTIONS(4542), [sym_cent] = ACTIONS(4542), [sym_ucent] = ACTIONS(4542), [sym_wchar] = ACTIONS(4542), [sym_dchar] = ACTIONS(4542), [sym_float] = ACTIONS(4542), [sym_double] = ACTIONS(4542), [sym_real] = ACTIONS(4542), [sym_ifloat] = ACTIONS(4542), [sym_idouble] = ACTIONS(4542), [sym_ireal] = ACTIONS(4542), [sym_cfloat] = ACTIONS(4542), [sym_cdouble] = ACTIONS(4542), [sym_creal] = ACTIONS(4542), [sym_size_t] = ACTIONS(4542), [sym_ptrdiff_t] = ACTIONS(4542), [sym_string] = ACTIONS(4542), [sym_cstring] = ACTIONS(4542), [sym_dstring] = ACTIONS(4542), [sym_wstring] = ACTIONS(4542), [sym_noreturn] = ACTIONS(4542), [sym_true] = ACTIONS(4542), [sym_false] = ACTIONS(4542), [sym_null] = ACTIONS(4542), [sym_super] = ACTIONS(4542), [sym_this] = ACTIONS(4542), [sym_abstract] = ACTIONS(4542), [sym_alias] = ACTIONS(4542), [sym_align] = ACTIONS(4542), [sym_asm] = ACTIONS(4542), [sym_assert] = ACTIONS(4542), [sym_auto] = ACTIONS(4542), [sym_break] = ACTIONS(4542), [sym_case] = ACTIONS(4542), [sym_cast] = ACTIONS(4542), [sym_class] = ACTIONS(4542), [sym_const] = ACTIONS(4542), [sym_continue] = ACTIONS(4542), [sym_debug] = ACTIONS(4542), [sym_default] = ACTIONS(4542), [sym_delegate] = ACTIONS(4542), [sym_delete] = ACTIONS(4542), [sym_deprecated] = ACTIONS(4542), [sym_do] = ACTIONS(4542), [sym_else] = ACTIONS(4542), [sym_enum] = ACTIONS(4542), [sym_export] = ACTIONS(4542), [sym_extern] = ACTIONS(4542), [sym_final] = ACTIONS(4542), [sym_for] = ACTIONS(4542), [sym_foreach] = ACTIONS(4542), [sym_foreach_reverse] = ACTIONS(4542), [sym_function] = ACTIONS(4542), [sym_goto] = ACTIONS(4542), [sym_if] = ACTIONS(4542), [sym_immutable] = ACTIONS(4542), [sym_import] = ACTIONS(4542), [sym_in] = ACTIONS(4542), [sym_inout] = ACTIONS(4542), [sym_interface] = ACTIONS(4542), [sym_invariant] = ACTIONS(4542), [sym_is] = ACTIONS(4542), [sym_mixin] = ACTIONS(4542), [sym_new] = ACTIONS(4542), [sym_nothrow] = ACTIONS(4542), [sym_out] = ACTIONS(4542), [sym_override] = ACTIONS(4542), [sym_package] = ACTIONS(4542), [sym_pragma] = ACTIONS(4542), [sym_private] = ACTIONS(4542), [sym_protected] = ACTIONS(4542), [sym_public] = ACTIONS(4542), [sym_pure] = ACTIONS(4542), [sym_ref] = ACTIONS(4542), [sym_return] = ACTIONS(4542), [sym_scope] = ACTIONS(4542), [sym_shared] = ACTIONS(4542), [sym_static] = ACTIONS(4542), [sym_struct] = ACTIONS(4542), [sym_switch] = ACTIONS(4542), [sym_synchronized] = ACTIONS(4542), [sym_template] = ACTIONS(4542), [sym_throw] = ACTIONS(4542), [sym_try] = ACTIONS(4542), [sym_typeid] = ACTIONS(4542), [sym_typeof] = ACTIONS(4542), [sym_union] = ACTIONS(4542), [sym_unittest] = ACTIONS(4542), [sym_version] = ACTIONS(4542), [sym_while] = ACTIONS(4542), [sym_with] = ACTIONS(4542), [sym_gshared] = ACTIONS(4542), [sym_traits] = ACTIONS(4542), [sym_vector] = ACTIONS(4542), [sym_void] = ACTIONS(4542), [anon_sym_BQUOTE] = ACTIONS(4544), [anon_sym_r_DQUOTE] = ACTIONS(4544), [anon_sym_x_DQUOTE] = ACTIONS(4544), [anon_sym_DQUOTE] = ACTIONS(4544), [anon_sym_i_BQUOTE] = ACTIONS(4544), [anon_sym_i_DQUOTE] = ACTIONS(4544), [anon_sym_iq_LBRACE] = ACTIONS(4544), [aux_sym_char_literal_token1] = ACTIONS(4544), [anon_sym_SQUOTE] = ACTIONS(4542), [anon_sym___DATE__] = ACTIONS(4542), [anon_sym___FILE__] = ACTIONS(4542), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4542), [anon_sym___FUNCTION__] = ACTIONS(4542), [anon_sym___LINE__] = ACTIONS(4542), [anon_sym___MODULE__] = ACTIONS(4542), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4542), [anon_sym___TIME__] = ACTIONS(4542), [anon_sym___TIMESTAMP__] = ACTIONS(4542), [anon_sym___VENDOR__] = ACTIONS(4542), [anon_sym___VERSION__] = ACTIONS(4542), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4544), [sym_float_literal] = ACTIONS(4544), [sym__string] = ACTIONS(4544), }, [1641] = { [sym_identifier] = ACTIONS(4736), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4738), [anon_sym_RBRACE] = ACTIONS(4738), [anon_sym_LBRACE] = ACTIONS(4738), [anon_sym_DOT] = ACTIONS(4738), [anon_sym_AMP] = ACTIONS(4738), [anon_sym_DASH] = ACTIONS(4736), [anon_sym_DASH_DASH] = ACTIONS(4738), [anon_sym_PLUS] = ACTIONS(4736), [anon_sym_PLUS_PLUS] = ACTIONS(4738), [anon_sym_BANG] = ACTIONS(4738), [anon_sym_LPAREN] = ACTIONS(4738), [anon_sym_RPAREN] = ACTIONS(4738), [anon_sym_LBRACK] = ACTIONS(4738), [anon_sym_SEMI] = ACTIONS(4738), [anon_sym_DOLLAR] = ACTIONS(4738), [anon_sym_STAR] = ACTIONS(4738), [anon_sym_TILDE] = ACTIONS(4738), [anon_sym_AT] = ACTIONS(4738), [sym_bool] = ACTIONS(4736), [sym_byte] = ACTIONS(4736), [sym_ubyte] = ACTIONS(4736), [sym_char] = ACTIONS(4736), [sym_short] = ACTIONS(4736), [sym_ushort] = ACTIONS(4736), [sym_int] = ACTIONS(4736), [sym_uint] = ACTIONS(4736), [sym_long] = ACTIONS(4736), [sym_ulong] = ACTIONS(4736), [sym_cent] = ACTIONS(4736), [sym_ucent] = ACTIONS(4736), [sym_wchar] = ACTIONS(4736), [sym_dchar] = ACTIONS(4736), [sym_float] = ACTIONS(4736), [sym_double] = ACTIONS(4736), [sym_real] = ACTIONS(4736), [sym_ifloat] = ACTIONS(4736), [sym_idouble] = ACTIONS(4736), [sym_ireal] = ACTIONS(4736), [sym_cfloat] = ACTIONS(4736), [sym_cdouble] = ACTIONS(4736), [sym_creal] = ACTIONS(4736), [sym_size_t] = ACTIONS(4736), [sym_ptrdiff_t] = ACTIONS(4736), [sym_string] = ACTIONS(4736), [sym_cstring] = ACTIONS(4736), [sym_dstring] = ACTIONS(4736), [sym_wstring] = ACTIONS(4736), [sym_noreturn] = ACTIONS(4736), [sym_true] = ACTIONS(4736), [sym_false] = ACTIONS(4736), [sym_null] = ACTIONS(4736), [sym_super] = ACTIONS(4736), [sym_this] = ACTIONS(4736), [sym_abstract] = ACTIONS(4736), [sym_alias] = ACTIONS(4736), [sym_align] = ACTIONS(4736), [sym_asm] = ACTIONS(4736), [sym_assert] = ACTIONS(4736), [sym_auto] = ACTIONS(4736), [sym_break] = ACTIONS(4736), [sym_case] = ACTIONS(4736), [sym_cast] = ACTIONS(4736), [sym_class] = ACTIONS(4736), [sym_const] = ACTIONS(4736), [sym_continue] = ACTIONS(4736), [sym_debug] = ACTIONS(4736), [sym_default] = ACTIONS(4736), [sym_delegate] = ACTIONS(4736), [sym_delete] = ACTIONS(4736), [sym_deprecated] = ACTIONS(4736), [sym_do] = ACTIONS(4736), [sym_else] = ACTIONS(4736), [sym_enum] = ACTIONS(4736), [sym_export] = ACTIONS(4736), [sym_extern] = ACTIONS(4736), [sym_final] = ACTIONS(4736), [sym_for] = ACTIONS(4736), [sym_foreach] = ACTIONS(4736), [sym_foreach_reverse] = ACTIONS(4736), [sym_function] = ACTIONS(4736), [sym_goto] = ACTIONS(4736), [sym_if] = ACTIONS(4736), [sym_immutable] = ACTIONS(4736), [sym_import] = ACTIONS(4736), [sym_in] = ACTIONS(4736), [sym_inout] = ACTIONS(4736), [sym_interface] = ACTIONS(4736), [sym_invariant] = ACTIONS(4736), [sym_is] = ACTIONS(4736), [sym_mixin] = ACTIONS(4736), [sym_new] = ACTIONS(4736), [sym_nothrow] = ACTIONS(4736), [sym_out] = ACTIONS(4736), [sym_override] = ACTIONS(4736), [sym_package] = ACTIONS(4736), [sym_pragma] = ACTIONS(4736), [sym_private] = ACTIONS(4736), [sym_protected] = ACTIONS(4736), [sym_public] = ACTIONS(4736), [sym_pure] = ACTIONS(4736), [sym_ref] = ACTIONS(4736), [sym_return] = ACTIONS(4736), [sym_scope] = ACTIONS(4736), [sym_shared] = ACTIONS(4736), [sym_static] = ACTIONS(4736), [sym_struct] = ACTIONS(4736), [sym_switch] = ACTIONS(4736), [sym_synchronized] = ACTIONS(4736), [sym_template] = ACTIONS(4736), [sym_throw] = ACTIONS(4736), [sym_try] = ACTIONS(4736), [sym_typeid] = ACTIONS(4736), [sym_typeof] = ACTIONS(4736), [sym_union] = ACTIONS(4736), [sym_unittest] = ACTIONS(4736), [sym_version] = ACTIONS(4736), [sym_while] = ACTIONS(4736), [sym_with] = ACTIONS(4736), [sym_gshared] = ACTIONS(4736), [sym_traits] = ACTIONS(4736), [sym_vector] = ACTIONS(4736), [sym_void] = ACTIONS(4736), [anon_sym_BQUOTE] = ACTIONS(4738), [anon_sym_r_DQUOTE] = ACTIONS(4738), [anon_sym_x_DQUOTE] = ACTIONS(4738), [anon_sym_DQUOTE] = ACTIONS(4738), [anon_sym_i_BQUOTE] = ACTIONS(4738), [anon_sym_i_DQUOTE] = ACTIONS(4738), [anon_sym_iq_LBRACE] = ACTIONS(4738), [aux_sym_char_literal_token1] = ACTIONS(4738), [anon_sym_SQUOTE] = ACTIONS(4736), [anon_sym___DATE__] = ACTIONS(4736), [anon_sym___FILE__] = ACTIONS(4736), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4736), [anon_sym___FUNCTION__] = ACTIONS(4736), [anon_sym___LINE__] = ACTIONS(4736), [anon_sym___MODULE__] = ACTIONS(4736), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4736), [anon_sym___TIME__] = ACTIONS(4736), [anon_sym___TIMESTAMP__] = ACTIONS(4736), [anon_sym___VENDOR__] = ACTIONS(4736), [anon_sym___VERSION__] = ACTIONS(4736), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4738), [sym_float_literal] = ACTIONS(4738), [sym__string] = ACTIONS(4738), }, [1642] = { [sym_identifier] = ACTIONS(4732), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4734), [anon_sym_RBRACE] = ACTIONS(4734), [anon_sym_LBRACE] = ACTIONS(4734), [anon_sym_DOT] = ACTIONS(4734), [anon_sym_AMP] = ACTIONS(4734), [anon_sym_DASH] = ACTIONS(4732), [anon_sym_DASH_DASH] = ACTIONS(4734), [anon_sym_PLUS] = ACTIONS(4732), [anon_sym_PLUS_PLUS] = ACTIONS(4734), [anon_sym_BANG] = ACTIONS(4734), [anon_sym_LPAREN] = ACTIONS(4734), [anon_sym_RPAREN] = ACTIONS(4734), [anon_sym_LBRACK] = ACTIONS(4734), [anon_sym_SEMI] = ACTIONS(4734), [anon_sym_DOLLAR] = ACTIONS(4734), [anon_sym_STAR] = ACTIONS(4734), [anon_sym_TILDE] = ACTIONS(4734), [anon_sym_AT] = ACTIONS(4734), [sym_bool] = ACTIONS(4732), [sym_byte] = ACTIONS(4732), [sym_ubyte] = ACTIONS(4732), [sym_char] = ACTIONS(4732), [sym_short] = ACTIONS(4732), [sym_ushort] = ACTIONS(4732), [sym_int] = ACTIONS(4732), [sym_uint] = ACTIONS(4732), [sym_long] = ACTIONS(4732), [sym_ulong] = ACTIONS(4732), [sym_cent] = ACTIONS(4732), [sym_ucent] = ACTIONS(4732), [sym_wchar] = ACTIONS(4732), [sym_dchar] = ACTIONS(4732), [sym_float] = ACTIONS(4732), [sym_double] = ACTIONS(4732), [sym_real] = ACTIONS(4732), [sym_ifloat] = ACTIONS(4732), [sym_idouble] = ACTIONS(4732), [sym_ireal] = ACTIONS(4732), [sym_cfloat] = ACTIONS(4732), [sym_cdouble] = ACTIONS(4732), [sym_creal] = ACTIONS(4732), [sym_size_t] = ACTIONS(4732), [sym_ptrdiff_t] = ACTIONS(4732), [sym_string] = ACTIONS(4732), [sym_cstring] = ACTIONS(4732), [sym_dstring] = ACTIONS(4732), [sym_wstring] = ACTIONS(4732), [sym_noreturn] = ACTIONS(4732), [sym_true] = ACTIONS(4732), [sym_false] = ACTIONS(4732), [sym_null] = ACTIONS(4732), [sym_super] = ACTIONS(4732), [sym_this] = ACTIONS(4732), [sym_abstract] = ACTIONS(4732), [sym_alias] = ACTIONS(4732), [sym_align] = ACTIONS(4732), [sym_asm] = ACTIONS(4732), [sym_assert] = ACTIONS(4732), [sym_auto] = ACTIONS(4732), [sym_break] = ACTIONS(4732), [sym_case] = ACTIONS(4732), [sym_cast] = ACTIONS(4732), [sym_class] = ACTIONS(4732), [sym_const] = ACTIONS(4732), [sym_continue] = ACTIONS(4732), [sym_debug] = ACTIONS(4732), [sym_default] = ACTIONS(4732), [sym_delegate] = ACTIONS(4732), [sym_delete] = ACTIONS(4732), [sym_deprecated] = ACTIONS(4732), [sym_do] = ACTIONS(4732), [sym_else] = ACTIONS(4732), [sym_enum] = ACTIONS(4732), [sym_export] = ACTIONS(4732), [sym_extern] = ACTIONS(4732), [sym_final] = ACTIONS(4732), [sym_for] = ACTIONS(4732), [sym_foreach] = ACTIONS(4732), [sym_foreach_reverse] = ACTIONS(4732), [sym_function] = ACTIONS(4732), [sym_goto] = ACTIONS(4732), [sym_if] = ACTIONS(4732), [sym_immutable] = ACTIONS(4732), [sym_import] = ACTIONS(4732), [sym_in] = ACTIONS(4732), [sym_inout] = ACTIONS(4732), [sym_interface] = ACTIONS(4732), [sym_invariant] = ACTIONS(4732), [sym_is] = ACTIONS(4732), [sym_mixin] = ACTIONS(4732), [sym_new] = ACTIONS(4732), [sym_nothrow] = ACTIONS(4732), [sym_out] = ACTIONS(4732), [sym_override] = ACTIONS(4732), [sym_package] = ACTIONS(4732), [sym_pragma] = ACTIONS(4732), [sym_private] = ACTIONS(4732), [sym_protected] = ACTIONS(4732), [sym_public] = ACTIONS(4732), [sym_pure] = ACTIONS(4732), [sym_ref] = ACTIONS(4732), [sym_return] = ACTIONS(4732), [sym_scope] = ACTIONS(4732), [sym_shared] = ACTIONS(4732), [sym_static] = ACTIONS(4732), [sym_struct] = ACTIONS(4732), [sym_switch] = ACTIONS(4732), [sym_synchronized] = ACTIONS(4732), [sym_template] = ACTIONS(4732), [sym_throw] = ACTIONS(4732), [sym_try] = ACTIONS(4732), [sym_typeid] = ACTIONS(4732), [sym_typeof] = ACTIONS(4732), [sym_union] = ACTIONS(4732), [sym_unittest] = ACTIONS(4732), [sym_version] = ACTIONS(4732), [sym_while] = ACTIONS(4732), [sym_with] = ACTIONS(4732), [sym_gshared] = ACTIONS(4732), [sym_traits] = ACTIONS(4732), [sym_vector] = ACTIONS(4732), [sym_void] = ACTIONS(4732), [anon_sym_BQUOTE] = ACTIONS(4734), [anon_sym_r_DQUOTE] = ACTIONS(4734), [anon_sym_x_DQUOTE] = ACTIONS(4734), [anon_sym_DQUOTE] = ACTIONS(4734), [anon_sym_i_BQUOTE] = ACTIONS(4734), [anon_sym_i_DQUOTE] = ACTIONS(4734), [anon_sym_iq_LBRACE] = ACTIONS(4734), [aux_sym_char_literal_token1] = ACTIONS(4734), [anon_sym_SQUOTE] = ACTIONS(4732), [anon_sym___DATE__] = ACTIONS(4732), [anon_sym___FILE__] = ACTIONS(4732), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4732), [anon_sym___FUNCTION__] = ACTIONS(4732), [anon_sym___LINE__] = ACTIONS(4732), [anon_sym___MODULE__] = ACTIONS(4732), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4732), [anon_sym___TIME__] = ACTIONS(4732), [anon_sym___TIMESTAMP__] = ACTIONS(4732), [anon_sym___VENDOR__] = ACTIONS(4732), [anon_sym___VERSION__] = ACTIONS(4732), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4734), [sym_float_literal] = ACTIONS(4734), [sym__string] = ACTIONS(4734), }, [1643] = { [sym_identifier] = ACTIONS(4720), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4722), [anon_sym_RBRACE] = ACTIONS(4722), [anon_sym_LBRACE] = ACTIONS(4722), [anon_sym_DOT] = ACTIONS(4722), [anon_sym_AMP] = ACTIONS(4722), [anon_sym_DASH] = ACTIONS(4720), [anon_sym_DASH_DASH] = ACTIONS(4722), [anon_sym_PLUS] = ACTIONS(4720), [anon_sym_PLUS_PLUS] = ACTIONS(4722), [anon_sym_BANG] = ACTIONS(4722), [anon_sym_LPAREN] = ACTIONS(4722), [anon_sym_RPAREN] = ACTIONS(4722), [anon_sym_LBRACK] = ACTIONS(4722), [anon_sym_SEMI] = ACTIONS(4722), [anon_sym_DOLLAR] = ACTIONS(4722), [anon_sym_STAR] = ACTIONS(4722), [anon_sym_TILDE] = ACTIONS(4722), [anon_sym_AT] = ACTIONS(4722), [sym_bool] = ACTIONS(4720), [sym_byte] = ACTIONS(4720), [sym_ubyte] = ACTIONS(4720), [sym_char] = ACTIONS(4720), [sym_short] = ACTIONS(4720), [sym_ushort] = ACTIONS(4720), [sym_int] = ACTIONS(4720), [sym_uint] = ACTIONS(4720), [sym_long] = ACTIONS(4720), [sym_ulong] = ACTIONS(4720), [sym_cent] = ACTIONS(4720), [sym_ucent] = ACTIONS(4720), [sym_wchar] = ACTIONS(4720), [sym_dchar] = ACTIONS(4720), [sym_float] = ACTIONS(4720), [sym_double] = ACTIONS(4720), [sym_real] = ACTIONS(4720), [sym_ifloat] = ACTIONS(4720), [sym_idouble] = ACTIONS(4720), [sym_ireal] = ACTIONS(4720), [sym_cfloat] = ACTIONS(4720), [sym_cdouble] = ACTIONS(4720), [sym_creal] = ACTIONS(4720), [sym_size_t] = ACTIONS(4720), [sym_ptrdiff_t] = ACTIONS(4720), [sym_string] = ACTIONS(4720), [sym_cstring] = ACTIONS(4720), [sym_dstring] = ACTIONS(4720), [sym_wstring] = ACTIONS(4720), [sym_noreturn] = ACTIONS(4720), [sym_true] = ACTIONS(4720), [sym_false] = ACTIONS(4720), [sym_null] = ACTIONS(4720), [sym_super] = ACTIONS(4720), [sym_this] = ACTIONS(4720), [sym_abstract] = ACTIONS(4720), [sym_alias] = ACTIONS(4720), [sym_align] = ACTIONS(4720), [sym_asm] = ACTIONS(4720), [sym_assert] = ACTIONS(4720), [sym_auto] = ACTIONS(4720), [sym_break] = ACTIONS(4720), [sym_case] = ACTIONS(4720), [sym_cast] = ACTIONS(4720), [sym_class] = ACTIONS(4720), [sym_const] = ACTIONS(4720), [sym_continue] = ACTIONS(4720), [sym_debug] = ACTIONS(4720), [sym_default] = ACTIONS(4720), [sym_delegate] = ACTIONS(4720), [sym_delete] = ACTIONS(4720), [sym_deprecated] = ACTIONS(4720), [sym_do] = ACTIONS(4720), [sym_else] = ACTIONS(4720), [sym_enum] = ACTIONS(4720), [sym_export] = ACTIONS(4720), [sym_extern] = ACTIONS(4720), [sym_final] = ACTIONS(4720), [sym_for] = ACTIONS(4720), [sym_foreach] = ACTIONS(4720), [sym_foreach_reverse] = ACTIONS(4720), [sym_function] = ACTIONS(4720), [sym_goto] = ACTIONS(4720), [sym_if] = ACTIONS(4720), [sym_immutable] = ACTIONS(4720), [sym_import] = ACTIONS(4720), [sym_in] = ACTIONS(4720), [sym_inout] = ACTIONS(4720), [sym_interface] = ACTIONS(4720), [sym_invariant] = ACTIONS(4720), [sym_is] = ACTIONS(4720), [sym_mixin] = ACTIONS(4720), [sym_new] = ACTIONS(4720), [sym_nothrow] = ACTIONS(4720), [sym_out] = ACTIONS(4720), [sym_override] = ACTIONS(4720), [sym_package] = ACTIONS(4720), [sym_pragma] = ACTIONS(4720), [sym_private] = ACTIONS(4720), [sym_protected] = ACTIONS(4720), [sym_public] = ACTIONS(4720), [sym_pure] = ACTIONS(4720), [sym_ref] = ACTIONS(4720), [sym_return] = ACTIONS(4720), [sym_scope] = ACTIONS(4720), [sym_shared] = ACTIONS(4720), [sym_static] = ACTIONS(4720), [sym_struct] = ACTIONS(4720), [sym_switch] = ACTIONS(4720), [sym_synchronized] = ACTIONS(4720), [sym_template] = ACTIONS(4720), [sym_throw] = ACTIONS(4720), [sym_try] = ACTIONS(4720), [sym_typeid] = ACTIONS(4720), [sym_typeof] = ACTIONS(4720), [sym_union] = ACTIONS(4720), [sym_unittest] = ACTIONS(4720), [sym_version] = ACTIONS(4720), [sym_while] = ACTIONS(4720), [sym_with] = ACTIONS(4720), [sym_gshared] = ACTIONS(4720), [sym_traits] = ACTIONS(4720), [sym_vector] = ACTIONS(4720), [sym_void] = ACTIONS(4720), [anon_sym_BQUOTE] = ACTIONS(4722), [anon_sym_r_DQUOTE] = ACTIONS(4722), [anon_sym_x_DQUOTE] = ACTIONS(4722), [anon_sym_DQUOTE] = ACTIONS(4722), [anon_sym_i_BQUOTE] = ACTIONS(4722), [anon_sym_i_DQUOTE] = ACTIONS(4722), [anon_sym_iq_LBRACE] = ACTIONS(4722), [aux_sym_char_literal_token1] = ACTIONS(4722), [anon_sym_SQUOTE] = ACTIONS(4720), [anon_sym___DATE__] = ACTIONS(4720), [anon_sym___FILE__] = ACTIONS(4720), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4720), [anon_sym___FUNCTION__] = ACTIONS(4720), [anon_sym___LINE__] = ACTIONS(4720), [anon_sym___MODULE__] = ACTIONS(4720), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4720), [anon_sym___TIME__] = ACTIONS(4720), [anon_sym___TIMESTAMP__] = ACTIONS(4720), [anon_sym___VENDOR__] = ACTIONS(4720), [anon_sym___VERSION__] = ACTIONS(4720), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4722), [sym_float_literal] = ACTIONS(4722), [sym__string] = ACTIONS(4722), }, [1644] = { [sym_identifier] = ACTIONS(4516), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4518), [anon_sym_RBRACE] = ACTIONS(4518), [anon_sym_LBRACE] = ACTIONS(4518), [anon_sym_DOT] = ACTIONS(4518), [anon_sym_AMP] = ACTIONS(4518), [anon_sym_DASH] = ACTIONS(4516), [anon_sym_DASH_DASH] = ACTIONS(4518), [anon_sym_PLUS] = ACTIONS(4516), [anon_sym_PLUS_PLUS] = ACTIONS(4518), [anon_sym_BANG] = ACTIONS(4518), [anon_sym_LPAREN] = ACTIONS(4518), [anon_sym_RPAREN] = ACTIONS(4518), [anon_sym_LBRACK] = ACTIONS(4518), [anon_sym_SEMI] = ACTIONS(4518), [anon_sym_DOLLAR] = ACTIONS(4518), [anon_sym_STAR] = ACTIONS(4518), [anon_sym_TILDE] = ACTIONS(4518), [anon_sym_AT] = ACTIONS(4518), [sym_bool] = ACTIONS(4516), [sym_byte] = ACTIONS(4516), [sym_ubyte] = ACTIONS(4516), [sym_char] = ACTIONS(4516), [sym_short] = ACTIONS(4516), [sym_ushort] = ACTIONS(4516), [sym_int] = ACTIONS(4516), [sym_uint] = ACTIONS(4516), [sym_long] = ACTIONS(4516), [sym_ulong] = ACTIONS(4516), [sym_cent] = ACTIONS(4516), [sym_ucent] = ACTIONS(4516), [sym_wchar] = ACTIONS(4516), [sym_dchar] = ACTIONS(4516), [sym_float] = ACTIONS(4516), [sym_double] = ACTIONS(4516), [sym_real] = ACTIONS(4516), [sym_ifloat] = ACTIONS(4516), [sym_idouble] = ACTIONS(4516), [sym_ireal] = ACTIONS(4516), [sym_cfloat] = ACTIONS(4516), [sym_cdouble] = ACTIONS(4516), [sym_creal] = ACTIONS(4516), [sym_size_t] = ACTIONS(4516), [sym_ptrdiff_t] = ACTIONS(4516), [sym_string] = ACTIONS(4516), [sym_cstring] = ACTIONS(4516), [sym_dstring] = ACTIONS(4516), [sym_wstring] = ACTIONS(4516), [sym_noreturn] = ACTIONS(4516), [sym_true] = ACTIONS(4516), [sym_false] = ACTIONS(4516), [sym_null] = ACTIONS(4516), [sym_super] = ACTIONS(4516), [sym_this] = ACTIONS(4516), [sym_abstract] = ACTIONS(4516), [sym_alias] = ACTIONS(4516), [sym_align] = ACTIONS(4516), [sym_asm] = ACTIONS(4516), [sym_assert] = ACTIONS(4516), [sym_auto] = ACTIONS(4516), [sym_break] = ACTIONS(4516), [sym_case] = ACTIONS(4516), [sym_cast] = ACTIONS(4516), [sym_class] = ACTIONS(4516), [sym_const] = ACTIONS(4516), [sym_continue] = ACTIONS(4516), [sym_debug] = ACTIONS(4516), [sym_default] = ACTIONS(4516), [sym_delegate] = ACTIONS(4516), [sym_delete] = ACTIONS(4516), [sym_deprecated] = ACTIONS(4516), [sym_do] = ACTIONS(4516), [sym_else] = ACTIONS(4516), [sym_enum] = ACTIONS(4516), [sym_export] = ACTIONS(4516), [sym_extern] = ACTIONS(4516), [sym_final] = ACTIONS(4516), [sym_for] = ACTIONS(4516), [sym_foreach] = ACTIONS(4516), [sym_foreach_reverse] = ACTIONS(4516), [sym_function] = ACTIONS(4516), [sym_goto] = ACTIONS(4516), [sym_if] = ACTIONS(4516), [sym_immutable] = ACTIONS(4516), [sym_import] = ACTIONS(4516), [sym_in] = ACTIONS(4516), [sym_inout] = ACTIONS(4516), [sym_interface] = ACTIONS(4516), [sym_invariant] = ACTIONS(4516), [sym_is] = ACTIONS(4516), [sym_mixin] = ACTIONS(4516), [sym_new] = ACTIONS(4516), [sym_nothrow] = ACTIONS(4516), [sym_out] = ACTIONS(4516), [sym_override] = ACTIONS(4516), [sym_package] = ACTIONS(4516), [sym_pragma] = ACTIONS(4516), [sym_private] = ACTIONS(4516), [sym_protected] = ACTIONS(4516), [sym_public] = ACTIONS(4516), [sym_pure] = ACTIONS(4516), [sym_ref] = ACTIONS(4516), [sym_return] = ACTIONS(4516), [sym_scope] = ACTIONS(4516), [sym_shared] = ACTIONS(4516), [sym_static] = ACTIONS(4516), [sym_struct] = ACTIONS(4516), [sym_switch] = ACTIONS(4516), [sym_synchronized] = ACTIONS(4516), [sym_template] = ACTIONS(4516), [sym_throw] = ACTIONS(4516), [sym_try] = ACTIONS(4516), [sym_typeid] = ACTIONS(4516), [sym_typeof] = ACTIONS(4516), [sym_union] = ACTIONS(4516), [sym_unittest] = ACTIONS(4516), [sym_version] = ACTIONS(4516), [sym_while] = ACTIONS(4516), [sym_with] = ACTIONS(4516), [sym_gshared] = ACTIONS(4516), [sym_traits] = ACTIONS(4516), [sym_vector] = ACTIONS(4516), [sym_void] = ACTIONS(4516), [anon_sym_BQUOTE] = ACTIONS(4518), [anon_sym_r_DQUOTE] = ACTIONS(4518), [anon_sym_x_DQUOTE] = ACTIONS(4518), [anon_sym_DQUOTE] = ACTIONS(4518), [anon_sym_i_BQUOTE] = ACTIONS(4518), [anon_sym_i_DQUOTE] = ACTIONS(4518), [anon_sym_iq_LBRACE] = ACTIONS(4518), [aux_sym_char_literal_token1] = ACTIONS(4518), [anon_sym_SQUOTE] = ACTIONS(4516), [anon_sym___DATE__] = ACTIONS(4516), [anon_sym___FILE__] = ACTIONS(4516), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4516), [anon_sym___FUNCTION__] = ACTIONS(4516), [anon_sym___LINE__] = ACTIONS(4516), [anon_sym___MODULE__] = ACTIONS(4516), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4516), [anon_sym___TIME__] = ACTIONS(4516), [anon_sym___TIMESTAMP__] = ACTIONS(4516), [anon_sym___VENDOR__] = ACTIONS(4516), [anon_sym___VERSION__] = ACTIONS(4516), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4518), [sym_float_literal] = ACTIONS(4518), [sym__string] = ACTIONS(4518), }, [1645] = { [sym_identifier] = ACTIONS(4508), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4510), [anon_sym_RBRACE] = ACTIONS(4510), [anon_sym_LBRACE] = ACTIONS(4510), [anon_sym_DOT] = ACTIONS(4510), [anon_sym_AMP] = ACTIONS(4510), [anon_sym_DASH] = ACTIONS(4508), [anon_sym_DASH_DASH] = ACTIONS(4510), [anon_sym_PLUS] = ACTIONS(4508), [anon_sym_PLUS_PLUS] = ACTIONS(4510), [anon_sym_BANG] = ACTIONS(4510), [anon_sym_LPAREN] = ACTIONS(4510), [anon_sym_RPAREN] = ACTIONS(4510), [anon_sym_LBRACK] = ACTIONS(4510), [anon_sym_SEMI] = ACTIONS(4510), [anon_sym_DOLLAR] = ACTIONS(4510), [anon_sym_STAR] = ACTIONS(4510), [anon_sym_TILDE] = ACTIONS(4510), [anon_sym_AT] = ACTIONS(4510), [sym_bool] = ACTIONS(4508), [sym_byte] = ACTIONS(4508), [sym_ubyte] = ACTIONS(4508), [sym_char] = ACTIONS(4508), [sym_short] = ACTIONS(4508), [sym_ushort] = ACTIONS(4508), [sym_int] = ACTIONS(4508), [sym_uint] = ACTIONS(4508), [sym_long] = ACTIONS(4508), [sym_ulong] = ACTIONS(4508), [sym_cent] = ACTIONS(4508), [sym_ucent] = ACTIONS(4508), [sym_wchar] = ACTIONS(4508), [sym_dchar] = ACTIONS(4508), [sym_float] = ACTIONS(4508), [sym_double] = ACTIONS(4508), [sym_real] = ACTIONS(4508), [sym_ifloat] = ACTIONS(4508), [sym_idouble] = ACTIONS(4508), [sym_ireal] = ACTIONS(4508), [sym_cfloat] = ACTIONS(4508), [sym_cdouble] = ACTIONS(4508), [sym_creal] = ACTIONS(4508), [sym_size_t] = ACTIONS(4508), [sym_ptrdiff_t] = ACTIONS(4508), [sym_string] = ACTIONS(4508), [sym_cstring] = ACTIONS(4508), [sym_dstring] = ACTIONS(4508), [sym_wstring] = ACTIONS(4508), [sym_noreturn] = ACTIONS(4508), [sym_true] = ACTIONS(4508), [sym_false] = ACTIONS(4508), [sym_null] = ACTIONS(4508), [sym_super] = ACTIONS(4508), [sym_this] = ACTIONS(4508), [sym_abstract] = ACTIONS(4508), [sym_alias] = ACTIONS(4508), [sym_align] = ACTIONS(4508), [sym_asm] = ACTIONS(4508), [sym_assert] = ACTIONS(4508), [sym_auto] = ACTIONS(4508), [sym_break] = ACTIONS(4508), [sym_case] = ACTIONS(4508), [sym_cast] = ACTIONS(4508), [sym_class] = ACTIONS(4508), [sym_const] = ACTIONS(4508), [sym_continue] = ACTIONS(4508), [sym_debug] = ACTIONS(4508), [sym_default] = ACTIONS(4508), [sym_delegate] = ACTIONS(4508), [sym_delete] = ACTIONS(4508), [sym_deprecated] = ACTIONS(4508), [sym_do] = ACTIONS(4508), [sym_else] = ACTIONS(4508), [sym_enum] = ACTIONS(4508), [sym_export] = ACTIONS(4508), [sym_extern] = ACTIONS(4508), [sym_final] = ACTIONS(4508), [sym_for] = ACTIONS(4508), [sym_foreach] = ACTIONS(4508), [sym_foreach_reverse] = ACTIONS(4508), [sym_function] = ACTIONS(4508), [sym_goto] = ACTIONS(4508), [sym_if] = ACTIONS(4508), [sym_immutable] = ACTIONS(4508), [sym_import] = ACTIONS(4508), [sym_in] = ACTIONS(4508), [sym_inout] = ACTIONS(4508), [sym_interface] = ACTIONS(4508), [sym_invariant] = ACTIONS(4508), [sym_is] = ACTIONS(4508), [sym_mixin] = ACTIONS(4508), [sym_new] = ACTIONS(4508), [sym_nothrow] = ACTIONS(4508), [sym_out] = ACTIONS(4508), [sym_override] = ACTIONS(4508), [sym_package] = ACTIONS(4508), [sym_pragma] = ACTIONS(4508), [sym_private] = ACTIONS(4508), [sym_protected] = ACTIONS(4508), [sym_public] = ACTIONS(4508), [sym_pure] = ACTIONS(4508), [sym_ref] = ACTIONS(4508), [sym_return] = ACTIONS(4508), [sym_scope] = ACTIONS(4508), [sym_shared] = ACTIONS(4508), [sym_static] = ACTIONS(4508), [sym_struct] = ACTIONS(4508), [sym_switch] = ACTIONS(4508), [sym_synchronized] = ACTIONS(4508), [sym_template] = ACTIONS(4508), [sym_throw] = ACTIONS(4508), [sym_try] = ACTIONS(4508), [sym_typeid] = ACTIONS(4508), [sym_typeof] = ACTIONS(4508), [sym_union] = ACTIONS(4508), [sym_unittest] = ACTIONS(4508), [sym_version] = ACTIONS(4508), [sym_while] = ACTIONS(4508), [sym_with] = ACTIONS(4508), [sym_gshared] = ACTIONS(4508), [sym_traits] = ACTIONS(4508), [sym_vector] = ACTIONS(4508), [sym_void] = ACTIONS(4508), [anon_sym_BQUOTE] = ACTIONS(4510), [anon_sym_r_DQUOTE] = ACTIONS(4510), [anon_sym_x_DQUOTE] = ACTIONS(4510), [anon_sym_DQUOTE] = ACTIONS(4510), [anon_sym_i_BQUOTE] = ACTIONS(4510), [anon_sym_i_DQUOTE] = ACTIONS(4510), [anon_sym_iq_LBRACE] = ACTIONS(4510), [aux_sym_char_literal_token1] = ACTIONS(4510), [anon_sym_SQUOTE] = ACTIONS(4508), [anon_sym___DATE__] = ACTIONS(4508), [anon_sym___FILE__] = ACTIONS(4508), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4508), [anon_sym___FUNCTION__] = ACTIONS(4508), [anon_sym___LINE__] = ACTIONS(4508), [anon_sym___MODULE__] = ACTIONS(4508), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4508), [anon_sym___TIME__] = ACTIONS(4508), [anon_sym___TIMESTAMP__] = ACTIONS(4508), [anon_sym___VENDOR__] = ACTIONS(4508), [anon_sym___VERSION__] = ACTIONS(4508), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4510), [sym_float_literal] = ACTIONS(4510), [sym__string] = ACTIONS(4510), }, [1646] = { [sym_identifier] = ACTIONS(4712), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4714), [anon_sym_RBRACE] = ACTIONS(4714), [anon_sym_LBRACE] = ACTIONS(4714), [anon_sym_DOT] = ACTIONS(4714), [anon_sym_AMP] = ACTIONS(4714), [anon_sym_DASH] = ACTIONS(4712), [anon_sym_DASH_DASH] = ACTIONS(4714), [anon_sym_PLUS] = ACTIONS(4712), [anon_sym_PLUS_PLUS] = ACTIONS(4714), [anon_sym_BANG] = ACTIONS(4714), [anon_sym_LPAREN] = ACTIONS(4714), [anon_sym_RPAREN] = ACTIONS(4714), [anon_sym_LBRACK] = ACTIONS(4714), [anon_sym_SEMI] = ACTIONS(4714), [anon_sym_DOLLAR] = ACTIONS(4714), [anon_sym_STAR] = ACTIONS(4714), [anon_sym_TILDE] = ACTIONS(4714), [anon_sym_AT] = ACTIONS(4714), [sym_bool] = ACTIONS(4712), [sym_byte] = ACTIONS(4712), [sym_ubyte] = ACTIONS(4712), [sym_char] = ACTIONS(4712), [sym_short] = ACTIONS(4712), [sym_ushort] = ACTIONS(4712), [sym_int] = ACTIONS(4712), [sym_uint] = ACTIONS(4712), [sym_long] = ACTIONS(4712), [sym_ulong] = ACTIONS(4712), [sym_cent] = ACTIONS(4712), [sym_ucent] = ACTIONS(4712), [sym_wchar] = ACTIONS(4712), [sym_dchar] = ACTIONS(4712), [sym_float] = ACTIONS(4712), [sym_double] = ACTIONS(4712), [sym_real] = ACTIONS(4712), [sym_ifloat] = ACTIONS(4712), [sym_idouble] = ACTIONS(4712), [sym_ireal] = ACTIONS(4712), [sym_cfloat] = ACTIONS(4712), [sym_cdouble] = ACTIONS(4712), [sym_creal] = ACTIONS(4712), [sym_size_t] = ACTIONS(4712), [sym_ptrdiff_t] = ACTIONS(4712), [sym_string] = ACTIONS(4712), [sym_cstring] = ACTIONS(4712), [sym_dstring] = ACTIONS(4712), [sym_wstring] = ACTIONS(4712), [sym_noreturn] = ACTIONS(4712), [sym_true] = ACTIONS(4712), [sym_false] = ACTIONS(4712), [sym_null] = ACTIONS(4712), [sym_super] = ACTIONS(4712), [sym_this] = ACTIONS(4712), [sym_abstract] = ACTIONS(4712), [sym_alias] = ACTIONS(4712), [sym_align] = ACTIONS(4712), [sym_asm] = ACTIONS(4712), [sym_assert] = ACTIONS(4712), [sym_auto] = ACTIONS(4712), [sym_break] = ACTIONS(4712), [sym_case] = ACTIONS(4712), [sym_cast] = ACTIONS(4712), [sym_class] = ACTIONS(4712), [sym_const] = ACTIONS(4712), [sym_continue] = ACTIONS(4712), [sym_debug] = ACTIONS(4712), [sym_default] = ACTIONS(4712), [sym_delegate] = ACTIONS(4712), [sym_delete] = ACTIONS(4712), [sym_deprecated] = ACTIONS(4712), [sym_do] = ACTIONS(4712), [sym_else] = ACTIONS(4712), [sym_enum] = ACTIONS(4712), [sym_export] = ACTIONS(4712), [sym_extern] = ACTIONS(4712), [sym_final] = ACTIONS(4712), [sym_for] = ACTIONS(4712), [sym_foreach] = ACTIONS(4712), [sym_foreach_reverse] = ACTIONS(4712), [sym_function] = ACTIONS(4712), [sym_goto] = ACTIONS(4712), [sym_if] = ACTIONS(4712), [sym_immutable] = ACTIONS(4712), [sym_import] = ACTIONS(4712), [sym_in] = ACTIONS(4712), [sym_inout] = ACTIONS(4712), [sym_interface] = ACTIONS(4712), [sym_invariant] = ACTIONS(4712), [sym_is] = ACTIONS(4712), [sym_mixin] = ACTIONS(4712), [sym_new] = ACTIONS(4712), [sym_nothrow] = ACTIONS(4712), [sym_out] = ACTIONS(4712), [sym_override] = ACTIONS(4712), [sym_package] = ACTIONS(4712), [sym_pragma] = ACTIONS(4712), [sym_private] = ACTIONS(4712), [sym_protected] = ACTIONS(4712), [sym_public] = ACTIONS(4712), [sym_pure] = ACTIONS(4712), [sym_ref] = ACTIONS(4712), [sym_return] = ACTIONS(4712), [sym_scope] = ACTIONS(4712), [sym_shared] = ACTIONS(4712), [sym_static] = ACTIONS(4712), [sym_struct] = ACTIONS(4712), [sym_switch] = ACTIONS(4712), [sym_synchronized] = ACTIONS(4712), [sym_template] = ACTIONS(4712), [sym_throw] = ACTIONS(4712), [sym_try] = ACTIONS(4712), [sym_typeid] = ACTIONS(4712), [sym_typeof] = ACTIONS(4712), [sym_union] = ACTIONS(4712), [sym_unittest] = ACTIONS(4712), [sym_version] = ACTIONS(4712), [sym_while] = ACTIONS(4712), [sym_with] = ACTIONS(4712), [sym_gshared] = ACTIONS(4712), [sym_traits] = ACTIONS(4712), [sym_vector] = ACTIONS(4712), [sym_void] = ACTIONS(4712), [anon_sym_BQUOTE] = ACTIONS(4714), [anon_sym_r_DQUOTE] = ACTIONS(4714), [anon_sym_x_DQUOTE] = ACTIONS(4714), [anon_sym_DQUOTE] = ACTIONS(4714), [anon_sym_i_BQUOTE] = ACTIONS(4714), [anon_sym_i_DQUOTE] = ACTIONS(4714), [anon_sym_iq_LBRACE] = ACTIONS(4714), [aux_sym_char_literal_token1] = ACTIONS(4714), [anon_sym_SQUOTE] = ACTIONS(4712), [anon_sym___DATE__] = ACTIONS(4712), [anon_sym___FILE__] = ACTIONS(4712), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4712), [anon_sym___FUNCTION__] = ACTIONS(4712), [anon_sym___LINE__] = ACTIONS(4712), [anon_sym___MODULE__] = ACTIONS(4712), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4712), [anon_sym___TIME__] = ACTIONS(4712), [anon_sym___TIMESTAMP__] = ACTIONS(4712), [anon_sym___VENDOR__] = ACTIONS(4712), [anon_sym___VERSION__] = ACTIONS(4712), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4714), [sym_float_literal] = ACTIONS(4714), [sym__string] = ACTIONS(4714), }, [1647] = { [sym_identifier] = ACTIONS(4704), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4706), [anon_sym_RBRACE] = ACTIONS(4706), [anon_sym_LBRACE] = ACTIONS(4706), [anon_sym_DOT] = ACTIONS(4706), [anon_sym_AMP] = ACTIONS(4706), [anon_sym_DASH] = ACTIONS(4704), [anon_sym_DASH_DASH] = ACTIONS(4706), [anon_sym_PLUS] = ACTIONS(4704), [anon_sym_PLUS_PLUS] = ACTIONS(4706), [anon_sym_BANG] = ACTIONS(4706), [anon_sym_LPAREN] = ACTIONS(4706), [anon_sym_RPAREN] = ACTIONS(4706), [anon_sym_LBRACK] = ACTIONS(4706), [anon_sym_SEMI] = ACTIONS(4706), [anon_sym_DOLLAR] = ACTIONS(4706), [anon_sym_STAR] = ACTIONS(4706), [anon_sym_TILDE] = ACTIONS(4706), [anon_sym_AT] = ACTIONS(4706), [sym_bool] = ACTIONS(4704), [sym_byte] = ACTIONS(4704), [sym_ubyte] = ACTIONS(4704), [sym_char] = ACTIONS(4704), [sym_short] = ACTIONS(4704), [sym_ushort] = ACTIONS(4704), [sym_int] = ACTIONS(4704), [sym_uint] = ACTIONS(4704), [sym_long] = ACTIONS(4704), [sym_ulong] = ACTIONS(4704), [sym_cent] = ACTIONS(4704), [sym_ucent] = ACTIONS(4704), [sym_wchar] = ACTIONS(4704), [sym_dchar] = ACTIONS(4704), [sym_float] = ACTIONS(4704), [sym_double] = ACTIONS(4704), [sym_real] = ACTIONS(4704), [sym_ifloat] = ACTIONS(4704), [sym_idouble] = ACTIONS(4704), [sym_ireal] = ACTIONS(4704), [sym_cfloat] = ACTIONS(4704), [sym_cdouble] = ACTIONS(4704), [sym_creal] = ACTIONS(4704), [sym_size_t] = ACTIONS(4704), [sym_ptrdiff_t] = ACTIONS(4704), [sym_string] = ACTIONS(4704), [sym_cstring] = ACTIONS(4704), [sym_dstring] = ACTIONS(4704), [sym_wstring] = ACTIONS(4704), [sym_noreturn] = ACTIONS(4704), [sym_true] = ACTIONS(4704), [sym_false] = ACTIONS(4704), [sym_null] = ACTIONS(4704), [sym_super] = ACTIONS(4704), [sym_this] = ACTIONS(4704), [sym_abstract] = ACTIONS(4704), [sym_alias] = ACTIONS(4704), [sym_align] = ACTIONS(4704), [sym_asm] = ACTIONS(4704), [sym_assert] = ACTIONS(4704), [sym_auto] = ACTIONS(4704), [sym_break] = ACTIONS(4704), [sym_case] = ACTIONS(4704), [sym_cast] = ACTIONS(4704), [sym_class] = ACTIONS(4704), [sym_const] = ACTIONS(4704), [sym_continue] = ACTIONS(4704), [sym_debug] = ACTIONS(4704), [sym_default] = ACTIONS(4704), [sym_delegate] = ACTIONS(4704), [sym_delete] = ACTIONS(4704), [sym_deprecated] = ACTIONS(4704), [sym_do] = ACTIONS(4704), [sym_else] = ACTIONS(4704), [sym_enum] = ACTIONS(4704), [sym_export] = ACTIONS(4704), [sym_extern] = ACTIONS(4704), [sym_final] = ACTIONS(4704), [sym_for] = ACTIONS(4704), [sym_foreach] = ACTIONS(4704), [sym_foreach_reverse] = ACTIONS(4704), [sym_function] = ACTIONS(4704), [sym_goto] = ACTIONS(4704), [sym_if] = ACTIONS(4704), [sym_immutable] = ACTIONS(4704), [sym_import] = ACTIONS(4704), [sym_in] = ACTIONS(4704), [sym_inout] = ACTIONS(4704), [sym_interface] = ACTIONS(4704), [sym_invariant] = ACTIONS(4704), [sym_is] = ACTIONS(4704), [sym_mixin] = ACTIONS(4704), [sym_new] = ACTIONS(4704), [sym_nothrow] = ACTIONS(4704), [sym_out] = ACTIONS(4704), [sym_override] = ACTIONS(4704), [sym_package] = ACTIONS(4704), [sym_pragma] = ACTIONS(4704), [sym_private] = ACTIONS(4704), [sym_protected] = ACTIONS(4704), [sym_public] = ACTIONS(4704), [sym_pure] = ACTIONS(4704), [sym_ref] = ACTIONS(4704), [sym_return] = ACTIONS(4704), [sym_scope] = ACTIONS(4704), [sym_shared] = ACTIONS(4704), [sym_static] = ACTIONS(4704), [sym_struct] = ACTIONS(4704), [sym_switch] = ACTIONS(4704), [sym_synchronized] = ACTIONS(4704), [sym_template] = ACTIONS(4704), [sym_throw] = ACTIONS(4704), [sym_try] = ACTIONS(4704), [sym_typeid] = ACTIONS(4704), [sym_typeof] = ACTIONS(4704), [sym_union] = ACTIONS(4704), [sym_unittest] = ACTIONS(4704), [sym_version] = ACTIONS(4704), [sym_while] = ACTIONS(4704), [sym_with] = ACTIONS(4704), [sym_gshared] = ACTIONS(4704), [sym_traits] = ACTIONS(4704), [sym_vector] = ACTIONS(4704), [sym_void] = ACTIONS(4704), [anon_sym_BQUOTE] = ACTIONS(4706), [anon_sym_r_DQUOTE] = ACTIONS(4706), [anon_sym_x_DQUOTE] = ACTIONS(4706), [anon_sym_DQUOTE] = ACTIONS(4706), [anon_sym_i_BQUOTE] = ACTIONS(4706), [anon_sym_i_DQUOTE] = ACTIONS(4706), [anon_sym_iq_LBRACE] = ACTIONS(4706), [aux_sym_char_literal_token1] = ACTIONS(4706), [anon_sym_SQUOTE] = ACTIONS(4704), [anon_sym___DATE__] = ACTIONS(4704), [anon_sym___FILE__] = ACTIONS(4704), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4704), [anon_sym___FUNCTION__] = ACTIONS(4704), [anon_sym___LINE__] = ACTIONS(4704), [anon_sym___MODULE__] = ACTIONS(4704), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4704), [anon_sym___TIME__] = ACTIONS(4704), [anon_sym___TIMESTAMP__] = ACTIONS(4704), [anon_sym___VENDOR__] = ACTIONS(4704), [anon_sym___VERSION__] = ACTIONS(4704), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4706), [sym_float_literal] = ACTIONS(4706), [sym__string] = ACTIONS(4706), }, [1648] = { [sym_identifier] = ACTIONS(4562), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4564), [anon_sym_RBRACE] = ACTIONS(4564), [anon_sym_LBRACE] = ACTIONS(4564), [anon_sym_DOT] = ACTIONS(4564), [anon_sym_AMP] = ACTIONS(4564), [anon_sym_DASH] = ACTIONS(4562), [anon_sym_DASH_DASH] = ACTIONS(4564), [anon_sym_PLUS] = ACTIONS(4562), [anon_sym_PLUS_PLUS] = ACTIONS(4564), [anon_sym_BANG] = ACTIONS(4564), [anon_sym_LPAREN] = ACTIONS(4564), [anon_sym_RPAREN] = ACTIONS(4564), [anon_sym_LBRACK] = ACTIONS(4564), [anon_sym_SEMI] = ACTIONS(4564), [anon_sym_DOLLAR] = ACTIONS(4564), [anon_sym_STAR] = ACTIONS(4564), [anon_sym_TILDE] = ACTIONS(4564), [anon_sym_AT] = ACTIONS(4564), [sym_bool] = ACTIONS(4562), [sym_byte] = ACTIONS(4562), [sym_ubyte] = ACTIONS(4562), [sym_char] = ACTIONS(4562), [sym_short] = ACTIONS(4562), [sym_ushort] = ACTIONS(4562), [sym_int] = ACTIONS(4562), [sym_uint] = ACTIONS(4562), [sym_long] = ACTIONS(4562), [sym_ulong] = ACTIONS(4562), [sym_cent] = ACTIONS(4562), [sym_ucent] = ACTIONS(4562), [sym_wchar] = ACTIONS(4562), [sym_dchar] = ACTIONS(4562), [sym_float] = ACTIONS(4562), [sym_double] = ACTIONS(4562), [sym_real] = ACTIONS(4562), [sym_ifloat] = ACTIONS(4562), [sym_idouble] = ACTIONS(4562), [sym_ireal] = ACTIONS(4562), [sym_cfloat] = ACTIONS(4562), [sym_cdouble] = ACTIONS(4562), [sym_creal] = ACTIONS(4562), [sym_size_t] = ACTIONS(4562), [sym_ptrdiff_t] = ACTIONS(4562), [sym_string] = ACTIONS(4562), [sym_cstring] = ACTIONS(4562), [sym_dstring] = ACTIONS(4562), [sym_wstring] = ACTIONS(4562), [sym_noreturn] = ACTIONS(4562), [sym_true] = ACTIONS(4562), [sym_false] = ACTIONS(4562), [sym_null] = ACTIONS(4562), [sym_super] = ACTIONS(4562), [sym_this] = ACTIONS(4562), [sym_abstract] = ACTIONS(4562), [sym_alias] = ACTIONS(4562), [sym_align] = ACTIONS(4562), [sym_asm] = ACTIONS(4562), [sym_assert] = ACTIONS(4562), [sym_auto] = ACTIONS(4562), [sym_break] = ACTIONS(4562), [sym_case] = ACTIONS(4562), [sym_cast] = ACTIONS(4562), [sym_class] = ACTIONS(4562), [sym_const] = ACTIONS(4562), [sym_continue] = ACTIONS(4562), [sym_debug] = ACTIONS(4562), [sym_default] = ACTIONS(4562), [sym_delegate] = ACTIONS(4562), [sym_delete] = ACTIONS(4562), [sym_deprecated] = ACTIONS(4562), [sym_do] = ACTIONS(4562), [sym_else] = ACTIONS(4562), [sym_enum] = ACTIONS(4562), [sym_export] = ACTIONS(4562), [sym_extern] = ACTIONS(4562), [sym_final] = ACTIONS(4562), [sym_for] = ACTIONS(4562), [sym_foreach] = ACTIONS(4562), [sym_foreach_reverse] = ACTIONS(4562), [sym_function] = ACTIONS(4562), [sym_goto] = ACTIONS(4562), [sym_if] = ACTIONS(4562), [sym_immutable] = ACTIONS(4562), [sym_import] = ACTIONS(4562), [sym_in] = ACTIONS(4562), [sym_inout] = ACTIONS(4562), [sym_interface] = ACTIONS(4562), [sym_invariant] = ACTIONS(4562), [sym_is] = ACTIONS(4562), [sym_mixin] = ACTIONS(4562), [sym_new] = ACTIONS(4562), [sym_nothrow] = ACTIONS(4562), [sym_out] = ACTIONS(4562), [sym_override] = ACTIONS(4562), [sym_package] = ACTIONS(4562), [sym_pragma] = ACTIONS(4562), [sym_private] = ACTIONS(4562), [sym_protected] = ACTIONS(4562), [sym_public] = ACTIONS(4562), [sym_pure] = ACTIONS(4562), [sym_ref] = ACTIONS(4562), [sym_return] = ACTIONS(4562), [sym_scope] = ACTIONS(4562), [sym_shared] = ACTIONS(4562), [sym_static] = ACTIONS(4562), [sym_struct] = ACTIONS(4562), [sym_switch] = ACTIONS(4562), [sym_synchronized] = ACTIONS(4562), [sym_template] = ACTIONS(4562), [sym_throw] = ACTIONS(4562), [sym_try] = ACTIONS(4562), [sym_typeid] = ACTIONS(4562), [sym_typeof] = ACTIONS(4562), [sym_union] = ACTIONS(4562), [sym_unittest] = ACTIONS(4562), [sym_version] = ACTIONS(4562), [sym_while] = ACTIONS(4562), [sym_with] = ACTIONS(4562), [sym_gshared] = ACTIONS(4562), [sym_traits] = ACTIONS(4562), [sym_vector] = ACTIONS(4562), [sym_void] = ACTIONS(4562), [anon_sym_BQUOTE] = ACTIONS(4564), [anon_sym_r_DQUOTE] = ACTIONS(4564), [anon_sym_x_DQUOTE] = ACTIONS(4564), [anon_sym_DQUOTE] = ACTIONS(4564), [anon_sym_i_BQUOTE] = ACTIONS(4564), [anon_sym_i_DQUOTE] = ACTIONS(4564), [anon_sym_iq_LBRACE] = ACTIONS(4564), [aux_sym_char_literal_token1] = ACTIONS(4564), [anon_sym_SQUOTE] = ACTIONS(4562), [anon_sym___DATE__] = ACTIONS(4562), [anon_sym___FILE__] = ACTIONS(4562), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4562), [anon_sym___FUNCTION__] = ACTIONS(4562), [anon_sym___LINE__] = ACTIONS(4562), [anon_sym___MODULE__] = ACTIONS(4562), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4562), [anon_sym___TIME__] = ACTIONS(4562), [anon_sym___TIMESTAMP__] = ACTIONS(4562), [anon_sym___VENDOR__] = ACTIONS(4562), [anon_sym___VERSION__] = ACTIONS(4562), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4564), [sym_float_literal] = ACTIONS(4564), [sym__string] = ACTIONS(4564), }, [1649] = { [sym_identifier] = ACTIONS(4347), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4349), [anon_sym_RBRACE] = ACTIONS(4349), [anon_sym_LBRACE] = ACTIONS(4349), [anon_sym_DOT] = ACTIONS(4349), [anon_sym_AMP] = ACTIONS(4349), [anon_sym_DASH] = ACTIONS(4347), [anon_sym_DASH_DASH] = ACTIONS(4349), [anon_sym_PLUS] = ACTIONS(4347), [anon_sym_PLUS_PLUS] = ACTIONS(4349), [anon_sym_BANG] = ACTIONS(4349), [anon_sym_LPAREN] = ACTIONS(4349), [anon_sym_RPAREN] = ACTIONS(4349), [anon_sym_LBRACK] = ACTIONS(4349), [anon_sym_SEMI] = ACTIONS(4349), [anon_sym_DOLLAR] = ACTIONS(4349), [anon_sym_STAR] = ACTIONS(4349), [anon_sym_TILDE] = ACTIONS(4349), [anon_sym_AT] = ACTIONS(4349), [sym_bool] = ACTIONS(4347), [sym_byte] = ACTIONS(4347), [sym_ubyte] = ACTIONS(4347), [sym_char] = ACTIONS(4347), [sym_short] = ACTIONS(4347), [sym_ushort] = ACTIONS(4347), [sym_int] = ACTIONS(4347), [sym_uint] = ACTIONS(4347), [sym_long] = ACTIONS(4347), [sym_ulong] = ACTIONS(4347), [sym_cent] = ACTIONS(4347), [sym_ucent] = ACTIONS(4347), [sym_wchar] = ACTIONS(4347), [sym_dchar] = ACTIONS(4347), [sym_float] = ACTIONS(4347), [sym_double] = ACTIONS(4347), [sym_real] = ACTIONS(4347), [sym_ifloat] = ACTIONS(4347), [sym_idouble] = ACTIONS(4347), [sym_ireal] = ACTIONS(4347), [sym_cfloat] = ACTIONS(4347), [sym_cdouble] = ACTIONS(4347), [sym_creal] = ACTIONS(4347), [sym_size_t] = ACTIONS(4347), [sym_ptrdiff_t] = ACTIONS(4347), [sym_string] = ACTIONS(4347), [sym_cstring] = ACTIONS(4347), [sym_dstring] = ACTIONS(4347), [sym_wstring] = ACTIONS(4347), [sym_noreturn] = ACTIONS(4347), [sym_true] = ACTIONS(4347), [sym_false] = ACTIONS(4347), [sym_null] = ACTIONS(4347), [sym_super] = ACTIONS(4347), [sym_this] = ACTIONS(4347), [sym_abstract] = ACTIONS(4347), [sym_alias] = ACTIONS(4347), [sym_align] = ACTIONS(4347), [sym_asm] = ACTIONS(4347), [sym_assert] = ACTIONS(4347), [sym_auto] = ACTIONS(4347), [sym_break] = ACTIONS(4347), [sym_case] = ACTIONS(4347), [sym_cast] = ACTIONS(4347), [sym_class] = ACTIONS(4347), [sym_const] = ACTIONS(4347), [sym_continue] = ACTIONS(4347), [sym_debug] = ACTIONS(4347), [sym_default] = ACTIONS(4347), [sym_delegate] = ACTIONS(4347), [sym_delete] = ACTIONS(4347), [sym_deprecated] = ACTIONS(4347), [sym_do] = ACTIONS(4347), [sym_else] = ACTIONS(4347), [sym_enum] = ACTIONS(4347), [sym_export] = ACTIONS(4347), [sym_extern] = ACTIONS(4347), [sym_final] = ACTIONS(4347), [sym_for] = ACTIONS(4347), [sym_foreach] = ACTIONS(4347), [sym_foreach_reverse] = ACTIONS(4347), [sym_function] = ACTIONS(4347), [sym_goto] = ACTIONS(4347), [sym_if] = ACTIONS(4347), [sym_immutable] = ACTIONS(4347), [sym_import] = ACTIONS(4347), [sym_in] = ACTIONS(4347), [sym_inout] = ACTIONS(4347), [sym_interface] = ACTIONS(4347), [sym_invariant] = ACTIONS(4347), [sym_is] = ACTIONS(4347), [sym_mixin] = ACTIONS(4347), [sym_new] = ACTIONS(4347), [sym_nothrow] = ACTIONS(4347), [sym_out] = ACTIONS(4347), [sym_override] = ACTIONS(4347), [sym_package] = ACTIONS(4347), [sym_pragma] = ACTIONS(4347), [sym_private] = ACTIONS(4347), [sym_protected] = ACTIONS(4347), [sym_public] = ACTIONS(4347), [sym_pure] = ACTIONS(4347), [sym_ref] = ACTIONS(4347), [sym_return] = ACTIONS(4347), [sym_scope] = ACTIONS(4347), [sym_shared] = ACTIONS(4347), [sym_static] = ACTIONS(4347), [sym_struct] = ACTIONS(4347), [sym_switch] = ACTIONS(4347), [sym_synchronized] = ACTIONS(4347), [sym_template] = ACTIONS(4347), [sym_throw] = ACTIONS(4347), [sym_try] = ACTIONS(4347), [sym_typeid] = ACTIONS(4347), [sym_typeof] = ACTIONS(4347), [sym_union] = ACTIONS(4347), [sym_unittest] = ACTIONS(4347), [sym_version] = ACTIONS(4347), [sym_while] = ACTIONS(4347), [sym_with] = ACTIONS(4347), [sym_gshared] = ACTIONS(4347), [sym_traits] = ACTIONS(4347), [sym_vector] = ACTIONS(4347), [sym_void] = ACTIONS(4347), [anon_sym_BQUOTE] = ACTIONS(4349), [anon_sym_r_DQUOTE] = ACTIONS(4349), [anon_sym_x_DQUOTE] = ACTIONS(4349), [anon_sym_DQUOTE] = ACTIONS(4349), [anon_sym_i_BQUOTE] = ACTIONS(4349), [anon_sym_i_DQUOTE] = ACTIONS(4349), [anon_sym_iq_LBRACE] = ACTIONS(4349), [aux_sym_char_literal_token1] = ACTIONS(4349), [anon_sym_SQUOTE] = ACTIONS(4347), [anon_sym___DATE__] = ACTIONS(4347), [anon_sym___FILE__] = ACTIONS(4347), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4347), [anon_sym___FUNCTION__] = ACTIONS(4347), [anon_sym___LINE__] = ACTIONS(4347), [anon_sym___MODULE__] = ACTIONS(4347), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4347), [anon_sym___TIME__] = ACTIONS(4347), [anon_sym___TIMESTAMP__] = ACTIONS(4347), [anon_sym___VENDOR__] = ACTIONS(4347), [anon_sym___VERSION__] = ACTIONS(4347), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4349), [sym_float_literal] = ACTIONS(4349), [sym__string] = ACTIONS(4349), }, [1650] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3104), [anon_sym_RBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_AMP] = ACTIONS(3104), [anon_sym_DASH] = ACTIONS(3102), [anon_sym_DASH_DASH] = ACTIONS(3104), [anon_sym_PLUS] = ACTIONS(3102), [anon_sym_PLUS_PLUS] = ACTIONS(3104), [anon_sym_BANG] = ACTIONS(3104), [anon_sym_LPAREN] = ACTIONS(3104), [anon_sym_RPAREN] = ACTIONS(3104), [anon_sym_LBRACK] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_DOLLAR] = ACTIONS(3104), [anon_sym_STAR] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_true] = ACTIONS(3102), [sym_false] = ACTIONS(3102), [sym_null] = ACTIONS(3102), [sym_super] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_asm] = ACTIONS(3102), [sym_assert] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_break] = ACTIONS(3102), [sym_case] = ACTIONS(3102), [sym_cast] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_continue] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_default] = ACTIONS(3102), [sym_delegate] = ACTIONS(3102), [sym_delete] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_for] = ACTIONS(3102), [sym_foreach] = ACTIONS(3102), [sym_foreach_reverse] = ACTIONS(3102), [sym_function] = ACTIONS(3102), [sym_goto] = ACTIONS(3102), [sym_if] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_is] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_new] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_switch] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_throw] = ACTIONS(3102), [sym_try] = ACTIONS(3102), [sym_typeid] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_with] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [anon_sym_BQUOTE] = ACTIONS(3104), [anon_sym_r_DQUOTE] = ACTIONS(3104), [anon_sym_x_DQUOTE] = ACTIONS(3104), [anon_sym_DQUOTE] = ACTIONS(3104), [anon_sym_i_BQUOTE] = ACTIONS(3104), [anon_sym_i_DQUOTE] = ACTIONS(3104), [anon_sym_iq_LBRACE] = ACTIONS(3104), [aux_sym_char_literal_token1] = ACTIONS(3104), [anon_sym_SQUOTE] = ACTIONS(3102), [anon_sym___DATE__] = ACTIONS(3102), [anon_sym___FILE__] = ACTIONS(3102), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3102), [anon_sym___FUNCTION__] = ACTIONS(3102), [anon_sym___LINE__] = ACTIONS(3102), [anon_sym___MODULE__] = ACTIONS(3102), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3102), [anon_sym___TIME__] = ACTIONS(3102), [anon_sym___TIMESTAMP__] = ACTIONS(3102), [anon_sym___VENDOR__] = ACTIONS(3102), [anon_sym___VERSION__] = ACTIONS(3102), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3104), [sym_float_literal] = ACTIONS(3104), [sym__string] = ACTIONS(3104), }, [1651] = { [sym_identifier] = ACTIONS(4438), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4440), [anon_sym_RBRACE] = ACTIONS(4440), [anon_sym_LBRACE] = ACTIONS(4440), [anon_sym_DOT] = ACTIONS(4440), [anon_sym_AMP] = ACTIONS(4440), [anon_sym_DASH] = ACTIONS(4438), [anon_sym_DASH_DASH] = ACTIONS(4440), [anon_sym_PLUS] = ACTIONS(4438), [anon_sym_PLUS_PLUS] = ACTIONS(4440), [anon_sym_BANG] = ACTIONS(4440), [anon_sym_LPAREN] = ACTIONS(4440), [anon_sym_RPAREN] = ACTIONS(4440), [anon_sym_LBRACK] = ACTIONS(4440), [anon_sym_SEMI] = ACTIONS(4440), [anon_sym_DOLLAR] = ACTIONS(4440), [anon_sym_STAR] = ACTIONS(4440), [anon_sym_TILDE] = ACTIONS(4440), [anon_sym_AT] = ACTIONS(4440), [sym_bool] = ACTIONS(4438), [sym_byte] = ACTIONS(4438), [sym_ubyte] = ACTIONS(4438), [sym_char] = ACTIONS(4438), [sym_short] = ACTIONS(4438), [sym_ushort] = ACTIONS(4438), [sym_int] = ACTIONS(4438), [sym_uint] = ACTIONS(4438), [sym_long] = ACTIONS(4438), [sym_ulong] = ACTIONS(4438), [sym_cent] = ACTIONS(4438), [sym_ucent] = ACTIONS(4438), [sym_wchar] = ACTIONS(4438), [sym_dchar] = ACTIONS(4438), [sym_float] = ACTIONS(4438), [sym_double] = ACTIONS(4438), [sym_real] = ACTIONS(4438), [sym_ifloat] = ACTIONS(4438), [sym_idouble] = ACTIONS(4438), [sym_ireal] = ACTIONS(4438), [sym_cfloat] = ACTIONS(4438), [sym_cdouble] = ACTIONS(4438), [sym_creal] = ACTIONS(4438), [sym_size_t] = ACTIONS(4438), [sym_ptrdiff_t] = ACTIONS(4438), [sym_string] = ACTIONS(4438), [sym_cstring] = ACTIONS(4438), [sym_dstring] = ACTIONS(4438), [sym_wstring] = ACTIONS(4438), [sym_noreturn] = ACTIONS(4438), [sym_true] = ACTIONS(4438), [sym_false] = ACTIONS(4438), [sym_null] = ACTIONS(4438), [sym_super] = ACTIONS(4438), [sym_this] = ACTIONS(4438), [sym_abstract] = ACTIONS(4438), [sym_alias] = ACTIONS(4438), [sym_align] = ACTIONS(4438), [sym_asm] = ACTIONS(4438), [sym_assert] = ACTIONS(4438), [sym_auto] = ACTIONS(4438), [sym_break] = ACTIONS(4438), [sym_case] = ACTIONS(4438), [sym_cast] = ACTIONS(4438), [sym_class] = ACTIONS(4438), [sym_const] = ACTIONS(4438), [sym_continue] = ACTIONS(4438), [sym_debug] = ACTIONS(4438), [sym_default] = ACTIONS(4438), [sym_delegate] = ACTIONS(4438), [sym_delete] = ACTIONS(4438), [sym_deprecated] = ACTIONS(4438), [sym_do] = ACTIONS(4438), [sym_else] = ACTIONS(4438), [sym_enum] = ACTIONS(4438), [sym_export] = ACTIONS(4438), [sym_extern] = ACTIONS(4438), [sym_final] = ACTIONS(4438), [sym_for] = ACTIONS(4438), [sym_foreach] = ACTIONS(4438), [sym_foreach_reverse] = ACTIONS(4438), [sym_function] = ACTIONS(4438), [sym_goto] = ACTIONS(4438), [sym_if] = ACTIONS(4438), [sym_immutable] = ACTIONS(4438), [sym_import] = ACTIONS(4438), [sym_in] = ACTIONS(4438), [sym_inout] = ACTIONS(4438), [sym_interface] = ACTIONS(4438), [sym_invariant] = ACTIONS(4438), [sym_is] = ACTIONS(4438), [sym_mixin] = ACTIONS(4438), [sym_new] = ACTIONS(4438), [sym_nothrow] = ACTIONS(4438), [sym_out] = ACTIONS(4438), [sym_override] = ACTIONS(4438), [sym_package] = ACTIONS(4438), [sym_pragma] = ACTIONS(4438), [sym_private] = ACTIONS(4438), [sym_protected] = ACTIONS(4438), [sym_public] = ACTIONS(4438), [sym_pure] = ACTIONS(4438), [sym_ref] = ACTIONS(4438), [sym_return] = ACTIONS(4438), [sym_scope] = ACTIONS(4438), [sym_shared] = ACTIONS(4438), [sym_static] = ACTIONS(4438), [sym_struct] = ACTIONS(4438), [sym_switch] = ACTIONS(4438), [sym_synchronized] = ACTIONS(4438), [sym_template] = ACTIONS(4438), [sym_throw] = ACTIONS(4438), [sym_try] = ACTIONS(4438), [sym_typeid] = ACTIONS(4438), [sym_typeof] = ACTIONS(4438), [sym_union] = ACTIONS(4438), [sym_unittest] = ACTIONS(4438), [sym_version] = ACTIONS(4438), [sym_while] = ACTIONS(4438), [sym_with] = ACTIONS(4438), [sym_gshared] = ACTIONS(4438), [sym_traits] = ACTIONS(4438), [sym_vector] = ACTIONS(4438), [sym_void] = ACTIONS(4438), [anon_sym_BQUOTE] = ACTIONS(4440), [anon_sym_r_DQUOTE] = ACTIONS(4440), [anon_sym_x_DQUOTE] = ACTIONS(4440), [anon_sym_DQUOTE] = ACTIONS(4440), [anon_sym_i_BQUOTE] = ACTIONS(4440), [anon_sym_i_DQUOTE] = ACTIONS(4440), [anon_sym_iq_LBRACE] = ACTIONS(4440), [aux_sym_char_literal_token1] = ACTIONS(4440), [anon_sym_SQUOTE] = ACTIONS(4438), [anon_sym___DATE__] = ACTIONS(4438), [anon_sym___FILE__] = ACTIONS(4438), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4438), [anon_sym___FUNCTION__] = ACTIONS(4438), [anon_sym___LINE__] = ACTIONS(4438), [anon_sym___MODULE__] = ACTIONS(4438), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4438), [anon_sym___TIME__] = ACTIONS(4438), [anon_sym___TIMESTAMP__] = ACTIONS(4438), [anon_sym___VENDOR__] = ACTIONS(4438), [anon_sym___VERSION__] = ACTIONS(4438), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4440), [sym_float_literal] = ACTIONS(4440), [sym__string] = ACTIONS(4440), }, [1652] = { [sym_identifier] = ACTIONS(4686), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4688), [anon_sym_RBRACE] = ACTIONS(4688), [anon_sym_LBRACE] = ACTIONS(4688), [anon_sym_DOT] = ACTIONS(4688), [anon_sym_AMP] = ACTIONS(4688), [anon_sym_DASH] = ACTIONS(4686), [anon_sym_DASH_DASH] = ACTIONS(4688), [anon_sym_PLUS] = ACTIONS(4686), [anon_sym_PLUS_PLUS] = ACTIONS(4688), [anon_sym_BANG] = ACTIONS(4688), [anon_sym_LPAREN] = ACTIONS(4688), [anon_sym_RPAREN] = ACTIONS(4688), [anon_sym_LBRACK] = ACTIONS(4688), [anon_sym_SEMI] = ACTIONS(4688), [anon_sym_DOLLAR] = ACTIONS(4688), [anon_sym_STAR] = ACTIONS(4688), [anon_sym_TILDE] = ACTIONS(4688), [anon_sym_AT] = ACTIONS(4688), [sym_bool] = ACTIONS(4686), [sym_byte] = ACTIONS(4686), [sym_ubyte] = ACTIONS(4686), [sym_char] = ACTIONS(4686), [sym_short] = ACTIONS(4686), [sym_ushort] = ACTIONS(4686), [sym_int] = ACTIONS(4686), [sym_uint] = ACTIONS(4686), [sym_long] = ACTIONS(4686), [sym_ulong] = ACTIONS(4686), [sym_cent] = ACTIONS(4686), [sym_ucent] = ACTIONS(4686), [sym_wchar] = ACTIONS(4686), [sym_dchar] = ACTIONS(4686), [sym_float] = ACTIONS(4686), [sym_double] = ACTIONS(4686), [sym_real] = ACTIONS(4686), [sym_ifloat] = ACTIONS(4686), [sym_idouble] = ACTIONS(4686), [sym_ireal] = ACTIONS(4686), [sym_cfloat] = ACTIONS(4686), [sym_cdouble] = ACTIONS(4686), [sym_creal] = ACTIONS(4686), [sym_size_t] = ACTIONS(4686), [sym_ptrdiff_t] = ACTIONS(4686), [sym_string] = ACTIONS(4686), [sym_cstring] = ACTIONS(4686), [sym_dstring] = ACTIONS(4686), [sym_wstring] = ACTIONS(4686), [sym_noreturn] = ACTIONS(4686), [sym_true] = ACTIONS(4686), [sym_false] = ACTIONS(4686), [sym_null] = ACTIONS(4686), [sym_super] = ACTIONS(4686), [sym_this] = ACTIONS(4686), [sym_abstract] = ACTIONS(4686), [sym_alias] = ACTIONS(4686), [sym_align] = ACTIONS(4686), [sym_asm] = ACTIONS(4686), [sym_assert] = ACTIONS(4686), [sym_auto] = ACTIONS(4686), [sym_break] = ACTIONS(4686), [sym_case] = ACTIONS(4686), [sym_cast] = ACTIONS(4686), [sym_class] = ACTIONS(4686), [sym_const] = ACTIONS(4686), [sym_continue] = ACTIONS(4686), [sym_debug] = ACTIONS(4686), [sym_default] = ACTIONS(4686), [sym_delegate] = ACTIONS(4686), [sym_delete] = ACTIONS(4686), [sym_deprecated] = ACTIONS(4686), [sym_do] = ACTIONS(4686), [sym_else] = ACTIONS(4686), [sym_enum] = ACTIONS(4686), [sym_export] = ACTIONS(4686), [sym_extern] = ACTIONS(4686), [sym_final] = ACTIONS(4686), [sym_for] = ACTIONS(4686), [sym_foreach] = ACTIONS(4686), [sym_foreach_reverse] = ACTIONS(4686), [sym_function] = ACTIONS(4686), [sym_goto] = ACTIONS(4686), [sym_if] = ACTIONS(4686), [sym_immutable] = ACTIONS(4686), [sym_import] = ACTIONS(4686), [sym_in] = ACTIONS(4686), [sym_inout] = ACTIONS(4686), [sym_interface] = ACTIONS(4686), [sym_invariant] = ACTIONS(4686), [sym_is] = ACTIONS(4686), [sym_mixin] = ACTIONS(4686), [sym_new] = ACTIONS(4686), [sym_nothrow] = ACTIONS(4686), [sym_out] = ACTIONS(4686), [sym_override] = ACTIONS(4686), [sym_package] = ACTIONS(4686), [sym_pragma] = ACTIONS(4686), [sym_private] = ACTIONS(4686), [sym_protected] = ACTIONS(4686), [sym_public] = ACTIONS(4686), [sym_pure] = ACTIONS(4686), [sym_ref] = ACTIONS(4686), [sym_return] = ACTIONS(4686), [sym_scope] = ACTIONS(4686), [sym_shared] = ACTIONS(4686), [sym_static] = ACTIONS(4686), [sym_struct] = ACTIONS(4686), [sym_switch] = ACTIONS(4686), [sym_synchronized] = ACTIONS(4686), [sym_template] = ACTIONS(4686), [sym_throw] = ACTIONS(4686), [sym_try] = ACTIONS(4686), [sym_typeid] = ACTIONS(4686), [sym_typeof] = ACTIONS(4686), [sym_union] = ACTIONS(4686), [sym_unittest] = ACTIONS(4686), [sym_version] = ACTIONS(4686), [sym_while] = ACTIONS(4686), [sym_with] = ACTIONS(4686), [sym_gshared] = ACTIONS(4686), [sym_traits] = ACTIONS(4686), [sym_vector] = ACTIONS(4686), [sym_void] = ACTIONS(4686), [anon_sym_BQUOTE] = ACTIONS(4688), [anon_sym_r_DQUOTE] = ACTIONS(4688), [anon_sym_x_DQUOTE] = ACTIONS(4688), [anon_sym_DQUOTE] = ACTIONS(4688), [anon_sym_i_BQUOTE] = ACTIONS(4688), [anon_sym_i_DQUOTE] = ACTIONS(4688), [anon_sym_iq_LBRACE] = ACTIONS(4688), [aux_sym_char_literal_token1] = ACTIONS(4688), [anon_sym_SQUOTE] = ACTIONS(4686), [anon_sym___DATE__] = ACTIONS(4686), [anon_sym___FILE__] = ACTIONS(4686), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4686), [anon_sym___FUNCTION__] = ACTIONS(4686), [anon_sym___LINE__] = ACTIONS(4686), [anon_sym___MODULE__] = ACTIONS(4686), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4686), [anon_sym___TIME__] = ACTIONS(4686), [anon_sym___TIMESTAMP__] = ACTIONS(4686), [anon_sym___VENDOR__] = ACTIONS(4686), [anon_sym___VERSION__] = ACTIONS(4686), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4688), [sym_float_literal] = ACTIONS(4688), [sym__string] = ACTIONS(4688), }, [1653] = { [sym_identifier] = ACTIONS(4682), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4684), [anon_sym_RBRACE] = ACTIONS(4684), [anon_sym_LBRACE] = ACTIONS(4684), [anon_sym_DOT] = ACTIONS(4684), [anon_sym_AMP] = ACTIONS(4684), [anon_sym_DASH] = ACTIONS(4682), [anon_sym_DASH_DASH] = ACTIONS(4684), [anon_sym_PLUS] = ACTIONS(4682), [anon_sym_PLUS_PLUS] = ACTIONS(4684), [anon_sym_BANG] = ACTIONS(4684), [anon_sym_LPAREN] = ACTIONS(4684), [anon_sym_RPAREN] = ACTIONS(4684), [anon_sym_LBRACK] = ACTIONS(4684), [anon_sym_SEMI] = ACTIONS(4684), [anon_sym_DOLLAR] = ACTIONS(4684), [anon_sym_STAR] = ACTIONS(4684), [anon_sym_TILDE] = ACTIONS(4684), [anon_sym_AT] = ACTIONS(4684), [sym_bool] = ACTIONS(4682), [sym_byte] = ACTIONS(4682), [sym_ubyte] = ACTIONS(4682), [sym_char] = ACTIONS(4682), [sym_short] = ACTIONS(4682), [sym_ushort] = ACTIONS(4682), [sym_int] = ACTIONS(4682), [sym_uint] = ACTIONS(4682), [sym_long] = ACTIONS(4682), [sym_ulong] = ACTIONS(4682), [sym_cent] = ACTIONS(4682), [sym_ucent] = ACTIONS(4682), [sym_wchar] = ACTIONS(4682), [sym_dchar] = ACTIONS(4682), [sym_float] = ACTIONS(4682), [sym_double] = ACTIONS(4682), [sym_real] = ACTIONS(4682), [sym_ifloat] = ACTIONS(4682), [sym_idouble] = ACTIONS(4682), [sym_ireal] = ACTIONS(4682), [sym_cfloat] = ACTIONS(4682), [sym_cdouble] = ACTIONS(4682), [sym_creal] = ACTIONS(4682), [sym_size_t] = ACTIONS(4682), [sym_ptrdiff_t] = ACTIONS(4682), [sym_string] = ACTIONS(4682), [sym_cstring] = ACTIONS(4682), [sym_dstring] = ACTIONS(4682), [sym_wstring] = ACTIONS(4682), [sym_noreturn] = ACTIONS(4682), [sym_true] = ACTIONS(4682), [sym_false] = ACTIONS(4682), [sym_null] = ACTIONS(4682), [sym_super] = ACTIONS(4682), [sym_this] = ACTIONS(4682), [sym_abstract] = ACTIONS(4682), [sym_alias] = ACTIONS(4682), [sym_align] = ACTIONS(4682), [sym_asm] = ACTIONS(4682), [sym_assert] = ACTIONS(4682), [sym_auto] = ACTIONS(4682), [sym_break] = ACTIONS(4682), [sym_case] = ACTIONS(4682), [sym_cast] = ACTIONS(4682), [sym_class] = ACTIONS(4682), [sym_const] = ACTIONS(4682), [sym_continue] = ACTIONS(4682), [sym_debug] = ACTIONS(4682), [sym_default] = ACTIONS(4682), [sym_delegate] = ACTIONS(4682), [sym_delete] = ACTIONS(4682), [sym_deprecated] = ACTIONS(4682), [sym_do] = ACTIONS(4682), [sym_else] = ACTIONS(4682), [sym_enum] = ACTIONS(4682), [sym_export] = ACTIONS(4682), [sym_extern] = ACTIONS(4682), [sym_final] = ACTIONS(4682), [sym_for] = ACTIONS(4682), [sym_foreach] = ACTIONS(4682), [sym_foreach_reverse] = ACTIONS(4682), [sym_function] = ACTIONS(4682), [sym_goto] = ACTIONS(4682), [sym_if] = ACTIONS(4682), [sym_immutable] = ACTIONS(4682), [sym_import] = ACTIONS(4682), [sym_in] = ACTIONS(4682), [sym_inout] = ACTIONS(4682), [sym_interface] = ACTIONS(4682), [sym_invariant] = ACTIONS(4682), [sym_is] = ACTIONS(4682), [sym_mixin] = ACTIONS(4682), [sym_new] = ACTIONS(4682), [sym_nothrow] = ACTIONS(4682), [sym_out] = ACTIONS(4682), [sym_override] = ACTIONS(4682), [sym_package] = ACTIONS(4682), [sym_pragma] = ACTIONS(4682), [sym_private] = ACTIONS(4682), [sym_protected] = ACTIONS(4682), [sym_public] = ACTIONS(4682), [sym_pure] = ACTIONS(4682), [sym_ref] = ACTIONS(4682), [sym_return] = ACTIONS(4682), [sym_scope] = ACTIONS(4682), [sym_shared] = ACTIONS(4682), [sym_static] = ACTIONS(4682), [sym_struct] = ACTIONS(4682), [sym_switch] = ACTIONS(4682), [sym_synchronized] = ACTIONS(4682), [sym_template] = ACTIONS(4682), [sym_throw] = ACTIONS(4682), [sym_try] = ACTIONS(4682), [sym_typeid] = ACTIONS(4682), [sym_typeof] = ACTIONS(4682), [sym_union] = ACTIONS(4682), [sym_unittest] = ACTIONS(4682), [sym_version] = ACTIONS(4682), [sym_while] = ACTIONS(4682), [sym_with] = ACTIONS(4682), [sym_gshared] = ACTIONS(4682), [sym_traits] = ACTIONS(4682), [sym_vector] = ACTIONS(4682), [sym_void] = ACTIONS(4682), [anon_sym_BQUOTE] = ACTIONS(4684), [anon_sym_r_DQUOTE] = ACTIONS(4684), [anon_sym_x_DQUOTE] = ACTIONS(4684), [anon_sym_DQUOTE] = ACTIONS(4684), [anon_sym_i_BQUOTE] = ACTIONS(4684), [anon_sym_i_DQUOTE] = ACTIONS(4684), [anon_sym_iq_LBRACE] = ACTIONS(4684), [aux_sym_char_literal_token1] = ACTIONS(4684), [anon_sym_SQUOTE] = ACTIONS(4682), [anon_sym___DATE__] = ACTIONS(4682), [anon_sym___FILE__] = ACTIONS(4682), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4682), [anon_sym___FUNCTION__] = ACTIONS(4682), [anon_sym___LINE__] = ACTIONS(4682), [anon_sym___MODULE__] = ACTIONS(4682), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4682), [anon_sym___TIME__] = ACTIONS(4682), [anon_sym___TIMESTAMP__] = ACTIONS(4682), [anon_sym___VENDOR__] = ACTIONS(4682), [anon_sym___VERSION__] = ACTIONS(4682), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4684), [sym_float_literal] = ACTIONS(4684), [sym__string] = ACTIONS(4684), }, [1654] = { [sym_identifier] = ACTIONS(4674), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4676), [anon_sym_RBRACE] = ACTIONS(4676), [anon_sym_LBRACE] = ACTIONS(4676), [anon_sym_DOT] = ACTIONS(4676), [anon_sym_AMP] = ACTIONS(4676), [anon_sym_DASH] = ACTIONS(4674), [anon_sym_DASH_DASH] = ACTIONS(4676), [anon_sym_PLUS] = ACTIONS(4674), [anon_sym_PLUS_PLUS] = ACTIONS(4676), [anon_sym_BANG] = ACTIONS(4676), [anon_sym_LPAREN] = ACTIONS(4676), [anon_sym_RPAREN] = ACTIONS(4676), [anon_sym_LBRACK] = ACTIONS(4676), [anon_sym_SEMI] = ACTIONS(4676), [anon_sym_DOLLAR] = ACTIONS(4676), [anon_sym_STAR] = ACTIONS(4676), [anon_sym_TILDE] = ACTIONS(4676), [anon_sym_AT] = ACTIONS(4676), [sym_bool] = ACTIONS(4674), [sym_byte] = ACTIONS(4674), [sym_ubyte] = ACTIONS(4674), [sym_char] = ACTIONS(4674), [sym_short] = ACTIONS(4674), [sym_ushort] = ACTIONS(4674), [sym_int] = ACTIONS(4674), [sym_uint] = ACTIONS(4674), [sym_long] = ACTIONS(4674), [sym_ulong] = ACTIONS(4674), [sym_cent] = ACTIONS(4674), [sym_ucent] = ACTIONS(4674), [sym_wchar] = ACTIONS(4674), [sym_dchar] = ACTIONS(4674), [sym_float] = ACTIONS(4674), [sym_double] = ACTIONS(4674), [sym_real] = ACTIONS(4674), [sym_ifloat] = ACTIONS(4674), [sym_idouble] = ACTIONS(4674), [sym_ireal] = ACTIONS(4674), [sym_cfloat] = ACTIONS(4674), [sym_cdouble] = ACTIONS(4674), [sym_creal] = ACTIONS(4674), [sym_size_t] = ACTIONS(4674), [sym_ptrdiff_t] = ACTIONS(4674), [sym_string] = ACTIONS(4674), [sym_cstring] = ACTIONS(4674), [sym_dstring] = ACTIONS(4674), [sym_wstring] = ACTIONS(4674), [sym_noreturn] = ACTIONS(4674), [sym_true] = ACTIONS(4674), [sym_false] = ACTIONS(4674), [sym_null] = ACTIONS(4674), [sym_super] = ACTIONS(4674), [sym_this] = ACTIONS(4674), [sym_abstract] = ACTIONS(4674), [sym_alias] = ACTIONS(4674), [sym_align] = ACTIONS(4674), [sym_asm] = ACTIONS(4674), [sym_assert] = ACTIONS(4674), [sym_auto] = ACTIONS(4674), [sym_break] = ACTIONS(4674), [sym_case] = ACTIONS(4674), [sym_cast] = ACTIONS(4674), [sym_class] = ACTIONS(4674), [sym_const] = ACTIONS(4674), [sym_continue] = ACTIONS(4674), [sym_debug] = ACTIONS(4674), [sym_default] = ACTIONS(4674), [sym_delegate] = ACTIONS(4674), [sym_delete] = ACTIONS(4674), [sym_deprecated] = ACTIONS(4674), [sym_do] = ACTIONS(4674), [sym_else] = ACTIONS(4674), [sym_enum] = ACTIONS(4674), [sym_export] = ACTIONS(4674), [sym_extern] = ACTIONS(4674), [sym_final] = ACTIONS(4674), [sym_for] = ACTIONS(4674), [sym_foreach] = ACTIONS(4674), [sym_foreach_reverse] = ACTIONS(4674), [sym_function] = ACTIONS(4674), [sym_goto] = ACTIONS(4674), [sym_if] = ACTIONS(4674), [sym_immutable] = ACTIONS(4674), [sym_import] = ACTIONS(4674), [sym_in] = ACTIONS(4674), [sym_inout] = ACTIONS(4674), [sym_interface] = ACTIONS(4674), [sym_invariant] = ACTIONS(4674), [sym_is] = ACTIONS(4674), [sym_mixin] = ACTIONS(4674), [sym_new] = ACTIONS(4674), [sym_nothrow] = ACTIONS(4674), [sym_out] = ACTIONS(4674), [sym_override] = ACTIONS(4674), [sym_package] = ACTIONS(4674), [sym_pragma] = ACTIONS(4674), [sym_private] = ACTIONS(4674), [sym_protected] = ACTIONS(4674), [sym_public] = ACTIONS(4674), [sym_pure] = ACTIONS(4674), [sym_ref] = ACTIONS(4674), [sym_return] = ACTIONS(4674), [sym_scope] = ACTIONS(4674), [sym_shared] = ACTIONS(4674), [sym_static] = ACTIONS(4674), [sym_struct] = ACTIONS(4674), [sym_switch] = ACTIONS(4674), [sym_synchronized] = ACTIONS(4674), [sym_template] = ACTIONS(4674), [sym_throw] = ACTIONS(4674), [sym_try] = ACTIONS(4674), [sym_typeid] = ACTIONS(4674), [sym_typeof] = ACTIONS(4674), [sym_union] = ACTIONS(4674), [sym_unittest] = ACTIONS(4674), [sym_version] = ACTIONS(4674), [sym_while] = ACTIONS(4674), [sym_with] = ACTIONS(4674), [sym_gshared] = ACTIONS(4674), [sym_traits] = ACTIONS(4674), [sym_vector] = ACTIONS(4674), [sym_void] = ACTIONS(4674), [anon_sym_BQUOTE] = ACTIONS(4676), [anon_sym_r_DQUOTE] = ACTIONS(4676), [anon_sym_x_DQUOTE] = ACTIONS(4676), [anon_sym_DQUOTE] = ACTIONS(4676), [anon_sym_i_BQUOTE] = ACTIONS(4676), [anon_sym_i_DQUOTE] = ACTIONS(4676), [anon_sym_iq_LBRACE] = ACTIONS(4676), [aux_sym_char_literal_token1] = ACTIONS(4676), [anon_sym_SQUOTE] = ACTIONS(4674), [anon_sym___DATE__] = ACTIONS(4674), [anon_sym___FILE__] = ACTIONS(4674), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4674), [anon_sym___FUNCTION__] = ACTIONS(4674), [anon_sym___LINE__] = ACTIONS(4674), [anon_sym___MODULE__] = ACTIONS(4674), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4674), [anon_sym___TIME__] = ACTIONS(4674), [anon_sym___TIMESTAMP__] = ACTIONS(4674), [anon_sym___VENDOR__] = ACTIONS(4674), [anon_sym___VERSION__] = ACTIONS(4674), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4676), [sym_float_literal] = ACTIONS(4676), [sym__string] = ACTIONS(4676), }, [1655] = { [sym_identifier] = ACTIONS(4908), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4910), [anon_sym_RBRACE] = ACTIONS(4910), [anon_sym_LBRACE] = ACTIONS(4910), [anon_sym_DOT] = ACTIONS(4910), [anon_sym_AMP] = ACTIONS(4910), [anon_sym_DASH] = ACTIONS(4908), [anon_sym_DASH_DASH] = ACTIONS(4910), [anon_sym_PLUS] = ACTIONS(4908), [anon_sym_PLUS_PLUS] = ACTIONS(4910), [anon_sym_BANG] = ACTIONS(4910), [anon_sym_LPAREN] = ACTIONS(4910), [anon_sym_RPAREN] = ACTIONS(4910), [anon_sym_LBRACK] = ACTIONS(4910), [anon_sym_SEMI] = ACTIONS(4910), [anon_sym_DOLLAR] = ACTIONS(4910), [anon_sym_STAR] = ACTIONS(4910), [anon_sym_TILDE] = ACTIONS(4910), [anon_sym_AT] = ACTIONS(4910), [sym_bool] = ACTIONS(4908), [sym_byte] = ACTIONS(4908), [sym_ubyte] = ACTIONS(4908), [sym_char] = ACTIONS(4908), [sym_short] = ACTIONS(4908), [sym_ushort] = ACTIONS(4908), [sym_int] = ACTIONS(4908), [sym_uint] = ACTIONS(4908), [sym_long] = ACTIONS(4908), [sym_ulong] = ACTIONS(4908), [sym_cent] = ACTIONS(4908), [sym_ucent] = ACTIONS(4908), [sym_wchar] = ACTIONS(4908), [sym_dchar] = ACTIONS(4908), [sym_float] = ACTIONS(4908), [sym_double] = ACTIONS(4908), [sym_real] = ACTIONS(4908), [sym_ifloat] = ACTIONS(4908), [sym_idouble] = ACTIONS(4908), [sym_ireal] = ACTIONS(4908), [sym_cfloat] = ACTIONS(4908), [sym_cdouble] = ACTIONS(4908), [sym_creal] = ACTIONS(4908), [sym_size_t] = ACTIONS(4908), [sym_ptrdiff_t] = ACTIONS(4908), [sym_string] = ACTIONS(4908), [sym_cstring] = ACTIONS(4908), [sym_dstring] = ACTIONS(4908), [sym_wstring] = ACTIONS(4908), [sym_noreturn] = ACTIONS(4908), [sym_true] = ACTIONS(4908), [sym_false] = ACTIONS(4908), [sym_null] = ACTIONS(4908), [sym_super] = ACTIONS(4908), [sym_this] = ACTIONS(4908), [sym_abstract] = ACTIONS(4908), [sym_alias] = ACTIONS(4908), [sym_align] = ACTIONS(4908), [sym_asm] = ACTIONS(4908), [sym_assert] = ACTIONS(4908), [sym_auto] = ACTIONS(4908), [sym_break] = ACTIONS(4908), [sym_case] = ACTIONS(4908), [sym_cast] = ACTIONS(4908), [sym_class] = ACTIONS(4908), [sym_const] = ACTIONS(4908), [sym_continue] = ACTIONS(4908), [sym_debug] = ACTIONS(4908), [sym_default] = ACTIONS(4908), [sym_delegate] = ACTIONS(4908), [sym_delete] = ACTIONS(4908), [sym_deprecated] = ACTIONS(4908), [sym_do] = ACTIONS(4908), [sym_else] = ACTIONS(4908), [sym_enum] = ACTIONS(4908), [sym_export] = ACTIONS(4908), [sym_extern] = ACTIONS(4908), [sym_final] = ACTIONS(4908), [sym_for] = ACTIONS(4908), [sym_foreach] = ACTIONS(4908), [sym_foreach_reverse] = ACTIONS(4908), [sym_function] = ACTIONS(4908), [sym_goto] = ACTIONS(4908), [sym_if] = ACTIONS(4908), [sym_immutable] = ACTIONS(4908), [sym_import] = ACTIONS(4908), [sym_in] = ACTIONS(4908), [sym_inout] = ACTIONS(4908), [sym_interface] = ACTIONS(4908), [sym_invariant] = ACTIONS(4908), [sym_is] = ACTIONS(4908), [sym_mixin] = ACTIONS(4908), [sym_new] = ACTIONS(4908), [sym_nothrow] = ACTIONS(4908), [sym_out] = ACTIONS(4908), [sym_override] = ACTIONS(4908), [sym_package] = ACTIONS(4908), [sym_pragma] = ACTIONS(4908), [sym_private] = ACTIONS(4908), [sym_protected] = ACTIONS(4908), [sym_public] = ACTIONS(4908), [sym_pure] = ACTIONS(4908), [sym_ref] = ACTIONS(4908), [sym_return] = ACTIONS(4908), [sym_scope] = ACTIONS(4908), [sym_shared] = ACTIONS(4908), [sym_static] = ACTIONS(4908), [sym_struct] = ACTIONS(4908), [sym_switch] = ACTIONS(4908), [sym_synchronized] = ACTIONS(4908), [sym_template] = ACTIONS(4908), [sym_throw] = ACTIONS(4908), [sym_try] = ACTIONS(4908), [sym_typeid] = ACTIONS(4908), [sym_typeof] = ACTIONS(4908), [sym_union] = ACTIONS(4908), [sym_unittest] = ACTIONS(4908), [sym_version] = ACTIONS(4908), [sym_while] = ACTIONS(4908), [sym_with] = ACTIONS(4908), [sym_gshared] = ACTIONS(4908), [sym_traits] = ACTIONS(4908), [sym_vector] = ACTIONS(4908), [sym_void] = ACTIONS(4908), [anon_sym_BQUOTE] = ACTIONS(4910), [anon_sym_r_DQUOTE] = ACTIONS(4910), [anon_sym_x_DQUOTE] = ACTIONS(4910), [anon_sym_DQUOTE] = ACTIONS(4910), [anon_sym_i_BQUOTE] = ACTIONS(4910), [anon_sym_i_DQUOTE] = ACTIONS(4910), [anon_sym_iq_LBRACE] = ACTIONS(4910), [aux_sym_char_literal_token1] = ACTIONS(4910), [anon_sym_SQUOTE] = ACTIONS(4908), [anon_sym___DATE__] = ACTIONS(4908), [anon_sym___FILE__] = ACTIONS(4908), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4908), [anon_sym___FUNCTION__] = ACTIONS(4908), [anon_sym___LINE__] = ACTIONS(4908), [anon_sym___MODULE__] = ACTIONS(4908), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4908), [anon_sym___TIME__] = ACTIONS(4908), [anon_sym___TIMESTAMP__] = ACTIONS(4908), [anon_sym___VENDOR__] = ACTIONS(4908), [anon_sym___VERSION__] = ACTIONS(4908), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4910), [sym_float_literal] = ACTIONS(4910), [sym__string] = ACTIONS(4910), }, [1656] = { [sym_identifier] = ACTIONS(4670), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4672), [anon_sym_RBRACE] = ACTIONS(4672), [anon_sym_LBRACE] = ACTIONS(4672), [anon_sym_DOT] = ACTIONS(4672), [anon_sym_AMP] = ACTIONS(4672), [anon_sym_DASH] = ACTIONS(4670), [anon_sym_DASH_DASH] = ACTIONS(4672), [anon_sym_PLUS] = ACTIONS(4670), [anon_sym_PLUS_PLUS] = ACTIONS(4672), [anon_sym_BANG] = ACTIONS(4672), [anon_sym_LPAREN] = ACTIONS(4672), [anon_sym_RPAREN] = ACTIONS(4672), [anon_sym_LBRACK] = ACTIONS(4672), [anon_sym_SEMI] = ACTIONS(4672), [anon_sym_DOLLAR] = ACTIONS(4672), [anon_sym_STAR] = ACTIONS(4672), [anon_sym_TILDE] = ACTIONS(4672), [anon_sym_AT] = ACTIONS(4672), [sym_bool] = ACTIONS(4670), [sym_byte] = ACTIONS(4670), [sym_ubyte] = ACTIONS(4670), [sym_char] = ACTIONS(4670), [sym_short] = ACTIONS(4670), [sym_ushort] = ACTIONS(4670), [sym_int] = ACTIONS(4670), [sym_uint] = ACTIONS(4670), [sym_long] = ACTIONS(4670), [sym_ulong] = ACTIONS(4670), [sym_cent] = ACTIONS(4670), [sym_ucent] = ACTIONS(4670), [sym_wchar] = ACTIONS(4670), [sym_dchar] = ACTIONS(4670), [sym_float] = ACTIONS(4670), [sym_double] = ACTIONS(4670), [sym_real] = ACTIONS(4670), [sym_ifloat] = ACTIONS(4670), [sym_idouble] = ACTIONS(4670), [sym_ireal] = ACTIONS(4670), [sym_cfloat] = ACTIONS(4670), [sym_cdouble] = ACTIONS(4670), [sym_creal] = ACTIONS(4670), [sym_size_t] = ACTIONS(4670), [sym_ptrdiff_t] = ACTIONS(4670), [sym_string] = ACTIONS(4670), [sym_cstring] = ACTIONS(4670), [sym_dstring] = ACTIONS(4670), [sym_wstring] = ACTIONS(4670), [sym_noreturn] = ACTIONS(4670), [sym_true] = ACTIONS(4670), [sym_false] = ACTIONS(4670), [sym_null] = ACTIONS(4670), [sym_super] = ACTIONS(4670), [sym_this] = ACTIONS(4670), [sym_abstract] = ACTIONS(4670), [sym_alias] = ACTIONS(4670), [sym_align] = ACTIONS(4670), [sym_asm] = ACTIONS(4670), [sym_assert] = ACTIONS(4670), [sym_auto] = ACTIONS(4670), [sym_break] = ACTIONS(4670), [sym_case] = ACTIONS(4670), [sym_cast] = ACTIONS(4670), [sym_class] = ACTIONS(4670), [sym_const] = ACTIONS(4670), [sym_continue] = ACTIONS(4670), [sym_debug] = ACTIONS(4670), [sym_default] = ACTIONS(4670), [sym_delegate] = ACTIONS(4670), [sym_delete] = ACTIONS(4670), [sym_deprecated] = ACTIONS(4670), [sym_do] = ACTIONS(4670), [sym_else] = ACTIONS(4670), [sym_enum] = ACTIONS(4670), [sym_export] = ACTIONS(4670), [sym_extern] = ACTIONS(4670), [sym_final] = ACTIONS(4670), [sym_for] = ACTIONS(4670), [sym_foreach] = ACTIONS(4670), [sym_foreach_reverse] = ACTIONS(4670), [sym_function] = ACTIONS(4670), [sym_goto] = ACTIONS(4670), [sym_if] = ACTIONS(4670), [sym_immutable] = ACTIONS(4670), [sym_import] = ACTIONS(4670), [sym_in] = ACTIONS(4670), [sym_inout] = ACTIONS(4670), [sym_interface] = ACTIONS(4670), [sym_invariant] = ACTIONS(4670), [sym_is] = ACTIONS(4670), [sym_mixin] = ACTIONS(4670), [sym_new] = ACTIONS(4670), [sym_nothrow] = ACTIONS(4670), [sym_out] = ACTIONS(4670), [sym_override] = ACTIONS(4670), [sym_package] = ACTIONS(4670), [sym_pragma] = ACTIONS(4670), [sym_private] = ACTIONS(4670), [sym_protected] = ACTIONS(4670), [sym_public] = ACTIONS(4670), [sym_pure] = ACTIONS(4670), [sym_ref] = ACTIONS(4670), [sym_return] = ACTIONS(4670), [sym_scope] = ACTIONS(4670), [sym_shared] = ACTIONS(4670), [sym_static] = ACTIONS(4670), [sym_struct] = ACTIONS(4670), [sym_switch] = ACTIONS(4670), [sym_synchronized] = ACTIONS(4670), [sym_template] = ACTIONS(4670), [sym_throw] = ACTIONS(4670), [sym_try] = ACTIONS(4670), [sym_typeid] = ACTIONS(4670), [sym_typeof] = ACTIONS(4670), [sym_union] = ACTIONS(4670), [sym_unittest] = ACTIONS(4670), [sym_version] = ACTIONS(4670), [sym_while] = ACTIONS(4670), [sym_with] = ACTIONS(4670), [sym_gshared] = ACTIONS(4670), [sym_traits] = ACTIONS(4670), [sym_vector] = ACTIONS(4670), [sym_void] = ACTIONS(4670), [anon_sym_BQUOTE] = ACTIONS(4672), [anon_sym_r_DQUOTE] = ACTIONS(4672), [anon_sym_x_DQUOTE] = ACTIONS(4672), [anon_sym_DQUOTE] = ACTIONS(4672), [anon_sym_i_BQUOTE] = ACTIONS(4672), [anon_sym_i_DQUOTE] = ACTIONS(4672), [anon_sym_iq_LBRACE] = ACTIONS(4672), [aux_sym_char_literal_token1] = ACTIONS(4672), [anon_sym_SQUOTE] = ACTIONS(4670), [anon_sym___DATE__] = ACTIONS(4670), [anon_sym___FILE__] = ACTIONS(4670), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4670), [anon_sym___FUNCTION__] = ACTIONS(4670), [anon_sym___LINE__] = ACTIONS(4670), [anon_sym___MODULE__] = ACTIONS(4670), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4670), [anon_sym___TIME__] = ACTIONS(4670), [anon_sym___TIMESTAMP__] = ACTIONS(4670), [anon_sym___VENDOR__] = ACTIONS(4670), [anon_sym___VERSION__] = ACTIONS(4670), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4672), [sym_float_literal] = ACTIONS(4672), [sym__string] = ACTIONS(4672), }, [1657] = { [sym_identifier] = ACTIONS(4430), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4432), [anon_sym_RBRACE] = ACTIONS(4432), [anon_sym_LBRACE] = ACTIONS(4432), [anon_sym_DOT] = ACTIONS(4432), [anon_sym_AMP] = ACTIONS(4432), [anon_sym_DASH] = ACTIONS(4430), [anon_sym_DASH_DASH] = ACTIONS(4432), [anon_sym_PLUS] = ACTIONS(4430), [anon_sym_PLUS_PLUS] = ACTIONS(4432), [anon_sym_BANG] = ACTIONS(4432), [anon_sym_LPAREN] = ACTIONS(4432), [anon_sym_RPAREN] = ACTIONS(4432), [anon_sym_LBRACK] = ACTIONS(4432), [anon_sym_SEMI] = ACTIONS(4432), [anon_sym_DOLLAR] = ACTIONS(4432), [anon_sym_STAR] = ACTIONS(4432), [anon_sym_TILDE] = ACTIONS(4432), [anon_sym_AT] = ACTIONS(4432), [sym_bool] = ACTIONS(4430), [sym_byte] = ACTIONS(4430), [sym_ubyte] = ACTIONS(4430), [sym_char] = ACTIONS(4430), [sym_short] = ACTIONS(4430), [sym_ushort] = ACTIONS(4430), [sym_int] = ACTIONS(4430), [sym_uint] = ACTIONS(4430), [sym_long] = ACTIONS(4430), [sym_ulong] = ACTIONS(4430), [sym_cent] = ACTIONS(4430), [sym_ucent] = ACTIONS(4430), [sym_wchar] = ACTIONS(4430), [sym_dchar] = ACTIONS(4430), [sym_float] = ACTIONS(4430), [sym_double] = ACTIONS(4430), [sym_real] = ACTIONS(4430), [sym_ifloat] = ACTIONS(4430), [sym_idouble] = ACTIONS(4430), [sym_ireal] = ACTIONS(4430), [sym_cfloat] = ACTIONS(4430), [sym_cdouble] = ACTIONS(4430), [sym_creal] = ACTIONS(4430), [sym_size_t] = ACTIONS(4430), [sym_ptrdiff_t] = ACTIONS(4430), [sym_string] = ACTIONS(4430), [sym_cstring] = ACTIONS(4430), [sym_dstring] = ACTIONS(4430), [sym_wstring] = ACTIONS(4430), [sym_noreturn] = ACTIONS(4430), [sym_true] = ACTIONS(4430), [sym_false] = ACTIONS(4430), [sym_null] = ACTIONS(4430), [sym_super] = ACTIONS(4430), [sym_this] = ACTIONS(4430), [sym_abstract] = ACTIONS(4430), [sym_alias] = ACTIONS(4430), [sym_align] = ACTIONS(4430), [sym_asm] = ACTIONS(4430), [sym_assert] = ACTIONS(4430), [sym_auto] = ACTIONS(4430), [sym_break] = ACTIONS(4430), [sym_case] = ACTIONS(4430), [sym_cast] = ACTIONS(4430), [sym_class] = ACTIONS(4430), [sym_const] = ACTIONS(4430), [sym_continue] = ACTIONS(4430), [sym_debug] = ACTIONS(4430), [sym_default] = ACTIONS(4430), [sym_delegate] = ACTIONS(4430), [sym_delete] = ACTIONS(4430), [sym_deprecated] = ACTIONS(4430), [sym_do] = ACTIONS(4430), [sym_else] = ACTIONS(4430), [sym_enum] = ACTIONS(4430), [sym_export] = ACTIONS(4430), [sym_extern] = ACTIONS(4430), [sym_final] = ACTIONS(4430), [sym_for] = ACTIONS(4430), [sym_foreach] = ACTIONS(4430), [sym_foreach_reverse] = ACTIONS(4430), [sym_function] = ACTIONS(4430), [sym_goto] = ACTIONS(4430), [sym_if] = ACTIONS(4430), [sym_immutable] = ACTIONS(4430), [sym_import] = ACTIONS(4430), [sym_in] = ACTIONS(4430), [sym_inout] = ACTIONS(4430), [sym_interface] = ACTIONS(4430), [sym_invariant] = ACTIONS(4430), [sym_is] = ACTIONS(4430), [sym_mixin] = ACTIONS(4430), [sym_new] = ACTIONS(4430), [sym_nothrow] = ACTIONS(4430), [sym_out] = ACTIONS(4430), [sym_override] = ACTIONS(4430), [sym_package] = ACTIONS(4430), [sym_pragma] = ACTIONS(4430), [sym_private] = ACTIONS(4430), [sym_protected] = ACTIONS(4430), [sym_public] = ACTIONS(4430), [sym_pure] = ACTIONS(4430), [sym_ref] = ACTIONS(4430), [sym_return] = ACTIONS(4430), [sym_scope] = ACTIONS(4430), [sym_shared] = ACTIONS(4430), [sym_static] = ACTIONS(4430), [sym_struct] = ACTIONS(4430), [sym_switch] = ACTIONS(4430), [sym_synchronized] = ACTIONS(4430), [sym_template] = ACTIONS(4430), [sym_throw] = ACTIONS(4430), [sym_try] = ACTIONS(4430), [sym_typeid] = ACTIONS(4430), [sym_typeof] = ACTIONS(4430), [sym_union] = ACTIONS(4430), [sym_unittest] = ACTIONS(4430), [sym_version] = ACTIONS(4430), [sym_while] = ACTIONS(4430), [sym_with] = ACTIONS(4430), [sym_gshared] = ACTIONS(4430), [sym_traits] = ACTIONS(4430), [sym_vector] = ACTIONS(4430), [sym_void] = ACTIONS(4430), [anon_sym_BQUOTE] = ACTIONS(4432), [anon_sym_r_DQUOTE] = ACTIONS(4432), [anon_sym_x_DQUOTE] = ACTIONS(4432), [anon_sym_DQUOTE] = ACTIONS(4432), [anon_sym_i_BQUOTE] = ACTIONS(4432), [anon_sym_i_DQUOTE] = ACTIONS(4432), [anon_sym_iq_LBRACE] = ACTIONS(4432), [aux_sym_char_literal_token1] = ACTIONS(4432), [anon_sym_SQUOTE] = ACTIONS(4430), [anon_sym___DATE__] = ACTIONS(4430), [anon_sym___FILE__] = ACTIONS(4430), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4430), [anon_sym___FUNCTION__] = ACTIONS(4430), [anon_sym___LINE__] = ACTIONS(4430), [anon_sym___MODULE__] = ACTIONS(4430), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4430), [anon_sym___TIME__] = ACTIONS(4430), [anon_sym___TIMESTAMP__] = ACTIONS(4430), [anon_sym___VENDOR__] = ACTIONS(4430), [anon_sym___VERSION__] = ACTIONS(4430), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4432), [sym_float_literal] = ACTIONS(4432), [sym__string] = ACTIONS(4432), }, [1658] = { [sym_identifier] = ACTIONS(4546), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4548), [anon_sym_RBRACE] = ACTIONS(4548), [anon_sym_LBRACE] = ACTIONS(4548), [anon_sym_DOT] = ACTIONS(4548), [anon_sym_AMP] = ACTIONS(4548), [anon_sym_DASH] = ACTIONS(4546), [anon_sym_DASH_DASH] = ACTIONS(4548), [anon_sym_PLUS] = ACTIONS(4546), [anon_sym_PLUS_PLUS] = ACTIONS(4548), [anon_sym_BANG] = ACTIONS(4548), [anon_sym_LPAREN] = ACTIONS(4548), [anon_sym_RPAREN] = ACTIONS(4548), [anon_sym_LBRACK] = ACTIONS(4548), [anon_sym_SEMI] = ACTIONS(4548), [anon_sym_DOLLAR] = ACTIONS(4548), [anon_sym_STAR] = ACTIONS(4548), [anon_sym_TILDE] = ACTIONS(4548), [anon_sym_AT] = ACTIONS(4548), [sym_bool] = ACTIONS(4546), [sym_byte] = ACTIONS(4546), [sym_ubyte] = ACTIONS(4546), [sym_char] = ACTIONS(4546), [sym_short] = ACTIONS(4546), [sym_ushort] = ACTIONS(4546), [sym_int] = ACTIONS(4546), [sym_uint] = ACTIONS(4546), [sym_long] = ACTIONS(4546), [sym_ulong] = ACTIONS(4546), [sym_cent] = ACTIONS(4546), [sym_ucent] = ACTIONS(4546), [sym_wchar] = ACTIONS(4546), [sym_dchar] = ACTIONS(4546), [sym_float] = ACTIONS(4546), [sym_double] = ACTIONS(4546), [sym_real] = ACTIONS(4546), [sym_ifloat] = ACTIONS(4546), [sym_idouble] = ACTIONS(4546), [sym_ireal] = ACTIONS(4546), [sym_cfloat] = ACTIONS(4546), [sym_cdouble] = ACTIONS(4546), [sym_creal] = ACTIONS(4546), [sym_size_t] = ACTIONS(4546), [sym_ptrdiff_t] = ACTIONS(4546), [sym_string] = ACTIONS(4546), [sym_cstring] = ACTIONS(4546), [sym_dstring] = ACTIONS(4546), [sym_wstring] = ACTIONS(4546), [sym_noreturn] = ACTIONS(4546), [sym_true] = ACTIONS(4546), [sym_false] = ACTIONS(4546), [sym_null] = ACTIONS(4546), [sym_super] = ACTIONS(4546), [sym_this] = ACTIONS(4546), [sym_abstract] = ACTIONS(4546), [sym_alias] = ACTIONS(4546), [sym_align] = ACTIONS(4546), [sym_asm] = ACTIONS(4546), [sym_assert] = ACTIONS(4546), [sym_auto] = ACTIONS(4546), [sym_break] = ACTIONS(4546), [sym_case] = ACTIONS(4546), [sym_cast] = ACTIONS(4546), [sym_class] = ACTIONS(4546), [sym_const] = ACTIONS(4546), [sym_continue] = ACTIONS(4546), [sym_debug] = ACTIONS(4546), [sym_default] = ACTIONS(4546), [sym_delegate] = ACTIONS(4546), [sym_delete] = ACTIONS(4546), [sym_deprecated] = ACTIONS(4546), [sym_do] = ACTIONS(4546), [sym_else] = ACTIONS(4546), [sym_enum] = ACTIONS(4546), [sym_export] = ACTIONS(4546), [sym_extern] = ACTIONS(4546), [sym_final] = ACTIONS(4546), [sym_for] = ACTIONS(4546), [sym_foreach] = ACTIONS(4546), [sym_foreach_reverse] = ACTIONS(4546), [sym_function] = ACTIONS(4546), [sym_goto] = ACTIONS(4546), [sym_if] = ACTIONS(4546), [sym_immutable] = ACTIONS(4546), [sym_import] = ACTIONS(4546), [sym_in] = ACTIONS(4546), [sym_inout] = ACTIONS(4546), [sym_interface] = ACTIONS(4546), [sym_invariant] = ACTIONS(4546), [sym_is] = ACTIONS(4546), [sym_mixin] = ACTIONS(4546), [sym_new] = ACTIONS(4546), [sym_nothrow] = ACTIONS(4546), [sym_out] = ACTIONS(4546), [sym_override] = ACTIONS(4546), [sym_package] = ACTIONS(4546), [sym_pragma] = ACTIONS(4546), [sym_private] = ACTIONS(4546), [sym_protected] = ACTIONS(4546), [sym_public] = ACTIONS(4546), [sym_pure] = ACTIONS(4546), [sym_ref] = ACTIONS(4546), [sym_return] = ACTIONS(4546), [sym_scope] = ACTIONS(4546), [sym_shared] = ACTIONS(4546), [sym_static] = ACTIONS(4546), [sym_struct] = ACTIONS(4546), [sym_switch] = ACTIONS(4546), [sym_synchronized] = ACTIONS(4546), [sym_template] = ACTIONS(4546), [sym_throw] = ACTIONS(4546), [sym_try] = ACTIONS(4546), [sym_typeid] = ACTIONS(4546), [sym_typeof] = ACTIONS(4546), [sym_union] = ACTIONS(4546), [sym_unittest] = ACTIONS(4546), [sym_version] = ACTIONS(4546), [sym_while] = ACTIONS(4546), [sym_with] = ACTIONS(4546), [sym_gshared] = ACTIONS(4546), [sym_traits] = ACTIONS(4546), [sym_vector] = ACTIONS(4546), [sym_void] = ACTIONS(4546), [anon_sym_BQUOTE] = ACTIONS(4548), [anon_sym_r_DQUOTE] = ACTIONS(4548), [anon_sym_x_DQUOTE] = ACTIONS(4548), [anon_sym_DQUOTE] = ACTIONS(4548), [anon_sym_i_BQUOTE] = ACTIONS(4548), [anon_sym_i_DQUOTE] = ACTIONS(4548), [anon_sym_iq_LBRACE] = ACTIONS(4548), [aux_sym_char_literal_token1] = ACTIONS(4548), [anon_sym_SQUOTE] = ACTIONS(4546), [anon_sym___DATE__] = ACTIONS(4546), [anon_sym___FILE__] = ACTIONS(4546), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4546), [anon_sym___FUNCTION__] = ACTIONS(4546), [anon_sym___LINE__] = ACTIONS(4546), [anon_sym___MODULE__] = ACTIONS(4546), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4546), [anon_sym___TIME__] = ACTIONS(4546), [anon_sym___TIMESTAMP__] = ACTIONS(4546), [anon_sym___VENDOR__] = ACTIONS(4546), [anon_sym___VERSION__] = ACTIONS(4546), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4548), [sym_float_literal] = ACTIONS(4548), [sym__string] = ACTIONS(4548), }, [1659] = { [sym_identifier] = ACTIONS(4922), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4924), [anon_sym_RBRACE] = ACTIONS(4924), [anon_sym_LBRACE] = ACTIONS(4924), [anon_sym_DOT] = ACTIONS(4924), [anon_sym_AMP] = ACTIONS(4924), [anon_sym_DASH] = ACTIONS(4922), [anon_sym_DASH_DASH] = ACTIONS(4924), [anon_sym_PLUS] = ACTIONS(4922), [anon_sym_PLUS_PLUS] = ACTIONS(4924), [anon_sym_BANG] = ACTIONS(4924), [anon_sym_LPAREN] = ACTIONS(4924), [anon_sym_RPAREN] = ACTIONS(4924), [anon_sym_LBRACK] = ACTIONS(4924), [anon_sym_SEMI] = ACTIONS(4924), [anon_sym_DOLLAR] = ACTIONS(4924), [anon_sym_STAR] = ACTIONS(4924), [anon_sym_TILDE] = ACTIONS(4924), [anon_sym_AT] = ACTIONS(4924), [sym_bool] = ACTIONS(4922), [sym_byte] = ACTIONS(4922), [sym_ubyte] = ACTIONS(4922), [sym_char] = ACTIONS(4922), [sym_short] = ACTIONS(4922), [sym_ushort] = ACTIONS(4922), [sym_int] = ACTIONS(4922), [sym_uint] = ACTIONS(4922), [sym_long] = ACTIONS(4922), [sym_ulong] = ACTIONS(4922), [sym_cent] = ACTIONS(4922), [sym_ucent] = ACTIONS(4922), [sym_wchar] = ACTIONS(4922), [sym_dchar] = ACTIONS(4922), [sym_float] = ACTIONS(4922), [sym_double] = ACTIONS(4922), [sym_real] = ACTIONS(4922), [sym_ifloat] = ACTIONS(4922), [sym_idouble] = ACTIONS(4922), [sym_ireal] = ACTIONS(4922), [sym_cfloat] = ACTIONS(4922), [sym_cdouble] = ACTIONS(4922), [sym_creal] = ACTIONS(4922), [sym_size_t] = ACTIONS(4922), [sym_ptrdiff_t] = ACTIONS(4922), [sym_string] = ACTIONS(4922), [sym_cstring] = ACTIONS(4922), [sym_dstring] = ACTIONS(4922), [sym_wstring] = ACTIONS(4922), [sym_noreturn] = ACTIONS(4922), [sym_true] = ACTIONS(4922), [sym_false] = ACTIONS(4922), [sym_null] = ACTIONS(4922), [sym_super] = ACTIONS(4922), [sym_this] = ACTIONS(4922), [sym_abstract] = ACTIONS(4922), [sym_alias] = ACTIONS(4922), [sym_align] = ACTIONS(4922), [sym_asm] = ACTIONS(4922), [sym_assert] = ACTIONS(4922), [sym_auto] = ACTIONS(4922), [sym_break] = ACTIONS(4922), [sym_case] = ACTIONS(4922), [sym_cast] = ACTIONS(4922), [sym_class] = ACTIONS(4922), [sym_const] = ACTIONS(4922), [sym_continue] = ACTIONS(4922), [sym_debug] = ACTIONS(4922), [sym_default] = ACTIONS(4922), [sym_delegate] = ACTIONS(4922), [sym_delete] = ACTIONS(4922), [sym_deprecated] = ACTIONS(4922), [sym_do] = ACTIONS(4922), [sym_else] = ACTIONS(4922), [sym_enum] = ACTIONS(4922), [sym_export] = ACTIONS(4922), [sym_extern] = ACTIONS(4922), [sym_final] = ACTIONS(4922), [sym_for] = ACTIONS(4922), [sym_foreach] = ACTIONS(4922), [sym_foreach_reverse] = ACTIONS(4922), [sym_function] = ACTIONS(4922), [sym_goto] = ACTIONS(4922), [sym_if] = ACTIONS(4922), [sym_immutable] = ACTIONS(4922), [sym_import] = ACTIONS(4922), [sym_in] = ACTIONS(4922), [sym_inout] = ACTIONS(4922), [sym_interface] = ACTIONS(4922), [sym_invariant] = ACTIONS(4922), [sym_is] = ACTIONS(4922), [sym_mixin] = ACTIONS(4922), [sym_new] = ACTIONS(4922), [sym_nothrow] = ACTIONS(4922), [sym_out] = ACTIONS(4922), [sym_override] = ACTIONS(4922), [sym_package] = ACTIONS(4922), [sym_pragma] = ACTIONS(4922), [sym_private] = ACTIONS(4922), [sym_protected] = ACTIONS(4922), [sym_public] = ACTIONS(4922), [sym_pure] = ACTIONS(4922), [sym_ref] = ACTIONS(4922), [sym_return] = ACTIONS(4922), [sym_scope] = ACTIONS(4922), [sym_shared] = ACTIONS(4922), [sym_static] = ACTIONS(4922), [sym_struct] = ACTIONS(4922), [sym_switch] = ACTIONS(4922), [sym_synchronized] = ACTIONS(4922), [sym_template] = ACTIONS(4922), [sym_throw] = ACTIONS(4922), [sym_try] = ACTIONS(4922), [sym_typeid] = ACTIONS(4922), [sym_typeof] = ACTIONS(4922), [sym_union] = ACTIONS(4922), [sym_unittest] = ACTIONS(4922), [sym_version] = ACTIONS(4922), [sym_while] = ACTIONS(4922), [sym_with] = ACTIONS(4922), [sym_gshared] = ACTIONS(4922), [sym_traits] = ACTIONS(4922), [sym_vector] = ACTIONS(4922), [sym_void] = ACTIONS(4922), [anon_sym_BQUOTE] = ACTIONS(4924), [anon_sym_r_DQUOTE] = ACTIONS(4924), [anon_sym_x_DQUOTE] = ACTIONS(4924), [anon_sym_DQUOTE] = ACTIONS(4924), [anon_sym_i_BQUOTE] = ACTIONS(4924), [anon_sym_i_DQUOTE] = ACTIONS(4924), [anon_sym_iq_LBRACE] = ACTIONS(4924), [aux_sym_char_literal_token1] = ACTIONS(4924), [anon_sym_SQUOTE] = ACTIONS(4922), [anon_sym___DATE__] = ACTIONS(4922), [anon_sym___FILE__] = ACTIONS(4922), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4922), [anon_sym___FUNCTION__] = ACTIONS(4922), [anon_sym___LINE__] = ACTIONS(4922), [anon_sym___MODULE__] = ACTIONS(4922), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4922), [anon_sym___TIME__] = ACTIONS(4922), [anon_sym___TIMESTAMP__] = ACTIONS(4922), [anon_sym___VENDOR__] = ACTIONS(4922), [anon_sym___VERSION__] = ACTIONS(4922), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4924), [sym_float_literal] = ACTIONS(4924), [sym__string] = ACTIONS(4924), }, [1660] = { [sym_identifier] = ACTIONS(4662), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4664), [anon_sym_RBRACE] = ACTIONS(4664), [anon_sym_LBRACE] = ACTIONS(4664), [anon_sym_DOT] = ACTIONS(4664), [anon_sym_AMP] = ACTIONS(4664), [anon_sym_DASH] = ACTIONS(4662), [anon_sym_DASH_DASH] = ACTIONS(4664), [anon_sym_PLUS] = ACTIONS(4662), [anon_sym_PLUS_PLUS] = ACTIONS(4664), [anon_sym_BANG] = ACTIONS(4664), [anon_sym_LPAREN] = ACTIONS(4664), [anon_sym_RPAREN] = ACTIONS(4664), [anon_sym_LBRACK] = ACTIONS(4664), [anon_sym_SEMI] = ACTIONS(4664), [anon_sym_DOLLAR] = ACTIONS(4664), [anon_sym_STAR] = ACTIONS(4664), [anon_sym_TILDE] = ACTIONS(4664), [anon_sym_AT] = ACTIONS(4664), [sym_bool] = ACTIONS(4662), [sym_byte] = ACTIONS(4662), [sym_ubyte] = ACTIONS(4662), [sym_char] = ACTIONS(4662), [sym_short] = ACTIONS(4662), [sym_ushort] = ACTIONS(4662), [sym_int] = ACTIONS(4662), [sym_uint] = ACTIONS(4662), [sym_long] = ACTIONS(4662), [sym_ulong] = ACTIONS(4662), [sym_cent] = ACTIONS(4662), [sym_ucent] = ACTIONS(4662), [sym_wchar] = ACTIONS(4662), [sym_dchar] = ACTIONS(4662), [sym_float] = ACTIONS(4662), [sym_double] = ACTIONS(4662), [sym_real] = ACTIONS(4662), [sym_ifloat] = ACTIONS(4662), [sym_idouble] = ACTIONS(4662), [sym_ireal] = ACTIONS(4662), [sym_cfloat] = ACTIONS(4662), [sym_cdouble] = ACTIONS(4662), [sym_creal] = ACTIONS(4662), [sym_size_t] = ACTIONS(4662), [sym_ptrdiff_t] = ACTIONS(4662), [sym_string] = ACTIONS(4662), [sym_cstring] = ACTIONS(4662), [sym_dstring] = ACTIONS(4662), [sym_wstring] = ACTIONS(4662), [sym_noreturn] = ACTIONS(4662), [sym_true] = ACTIONS(4662), [sym_false] = ACTIONS(4662), [sym_null] = ACTIONS(4662), [sym_super] = ACTIONS(4662), [sym_this] = ACTIONS(4662), [sym_abstract] = ACTIONS(4662), [sym_alias] = ACTIONS(4662), [sym_align] = ACTIONS(4662), [sym_asm] = ACTIONS(4662), [sym_assert] = ACTIONS(4662), [sym_auto] = ACTIONS(4662), [sym_break] = ACTIONS(4662), [sym_case] = ACTIONS(4662), [sym_cast] = ACTIONS(4662), [sym_class] = ACTIONS(4662), [sym_const] = ACTIONS(4662), [sym_continue] = ACTIONS(4662), [sym_debug] = ACTIONS(4662), [sym_default] = ACTIONS(4662), [sym_delegate] = ACTIONS(4662), [sym_delete] = ACTIONS(4662), [sym_deprecated] = ACTIONS(4662), [sym_do] = ACTIONS(4662), [sym_else] = ACTIONS(4662), [sym_enum] = ACTIONS(4662), [sym_export] = ACTIONS(4662), [sym_extern] = ACTIONS(4662), [sym_final] = ACTIONS(4662), [sym_for] = ACTIONS(4662), [sym_foreach] = ACTIONS(4662), [sym_foreach_reverse] = ACTIONS(4662), [sym_function] = ACTIONS(4662), [sym_goto] = ACTIONS(4662), [sym_if] = ACTIONS(4662), [sym_immutable] = ACTIONS(4662), [sym_import] = ACTIONS(4662), [sym_in] = ACTIONS(4662), [sym_inout] = ACTIONS(4662), [sym_interface] = ACTIONS(4662), [sym_invariant] = ACTIONS(4662), [sym_is] = ACTIONS(4662), [sym_mixin] = ACTIONS(4662), [sym_new] = ACTIONS(4662), [sym_nothrow] = ACTIONS(4662), [sym_out] = ACTIONS(4662), [sym_override] = ACTIONS(4662), [sym_package] = ACTIONS(4662), [sym_pragma] = ACTIONS(4662), [sym_private] = ACTIONS(4662), [sym_protected] = ACTIONS(4662), [sym_public] = ACTIONS(4662), [sym_pure] = ACTIONS(4662), [sym_ref] = ACTIONS(4662), [sym_return] = ACTIONS(4662), [sym_scope] = ACTIONS(4662), [sym_shared] = ACTIONS(4662), [sym_static] = ACTIONS(4662), [sym_struct] = ACTIONS(4662), [sym_switch] = ACTIONS(4662), [sym_synchronized] = ACTIONS(4662), [sym_template] = ACTIONS(4662), [sym_throw] = ACTIONS(4662), [sym_try] = ACTIONS(4662), [sym_typeid] = ACTIONS(4662), [sym_typeof] = ACTIONS(4662), [sym_union] = ACTIONS(4662), [sym_unittest] = ACTIONS(4662), [sym_version] = ACTIONS(4662), [sym_while] = ACTIONS(4662), [sym_with] = ACTIONS(4662), [sym_gshared] = ACTIONS(4662), [sym_traits] = ACTIONS(4662), [sym_vector] = ACTIONS(4662), [sym_void] = ACTIONS(4662), [anon_sym_BQUOTE] = ACTIONS(4664), [anon_sym_r_DQUOTE] = ACTIONS(4664), [anon_sym_x_DQUOTE] = ACTIONS(4664), [anon_sym_DQUOTE] = ACTIONS(4664), [anon_sym_i_BQUOTE] = ACTIONS(4664), [anon_sym_i_DQUOTE] = ACTIONS(4664), [anon_sym_iq_LBRACE] = ACTIONS(4664), [aux_sym_char_literal_token1] = ACTIONS(4664), [anon_sym_SQUOTE] = ACTIONS(4662), [anon_sym___DATE__] = ACTIONS(4662), [anon_sym___FILE__] = ACTIONS(4662), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4662), [anon_sym___FUNCTION__] = ACTIONS(4662), [anon_sym___LINE__] = ACTIONS(4662), [anon_sym___MODULE__] = ACTIONS(4662), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4662), [anon_sym___TIME__] = ACTIONS(4662), [anon_sym___TIMESTAMP__] = ACTIONS(4662), [anon_sym___VENDOR__] = ACTIONS(4662), [anon_sym___VERSION__] = ACTIONS(4662), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4664), [sym_float_literal] = ACTIONS(4664), [sym__string] = ACTIONS(4664), }, [1661] = { [sym_identifier] = ACTIONS(4650), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4652), [anon_sym_RBRACE] = ACTIONS(4652), [anon_sym_LBRACE] = ACTIONS(4652), [anon_sym_DOT] = ACTIONS(4652), [anon_sym_AMP] = ACTIONS(4652), [anon_sym_DASH] = ACTIONS(4650), [anon_sym_DASH_DASH] = ACTIONS(4652), [anon_sym_PLUS] = ACTIONS(4650), [anon_sym_PLUS_PLUS] = ACTIONS(4652), [anon_sym_BANG] = ACTIONS(4652), [anon_sym_LPAREN] = ACTIONS(4652), [anon_sym_RPAREN] = ACTIONS(4652), [anon_sym_LBRACK] = ACTIONS(4652), [anon_sym_SEMI] = ACTIONS(4652), [anon_sym_DOLLAR] = ACTIONS(4652), [anon_sym_STAR] = ACTIONS(4652), [anon_sym_TILDE] = ACTIONS(4652), [anon_sym_AT] = ACTIONS(4652), [sym_bool] = ACTIONS(4650), [sym_byte] = ACTIONS(4650), [sym_ubyte] = ACTIONS(4650), [sym_char] = ACTIONS(4650), [sym_short] = ACTIONS(4650), [sym_ushort] = ACTIONS(4650), [sym_int] = ACTIONS(4650), [sym_uint] = ACTIONS(4650), [sym_long] = ACTIONS(4650), [sym_ulong] = ACTIONS(4650), [sym_cent] = ACTIONS(4650), [sym_ucent] = ACTIONS(4650), [sym_wchar] = ACTIONS(4650), [sym_dchar] = ACTIONS(4650), [sym_float] = ACTIONS(4650), [sym_double] = ACTIONS(4650), [sym_real] = ACTIONS(4650), [sym_ifloat] = ACTIONS(4650), [sym_idouble] = ACTIONS(4650), [sym_ireal] = ACTIONS(4650), [sym_cfloat] = ACTIONS(4650), [sym_cdouble] = ACTIONS(4650), [sym_creal] = ACTIONS(4650), [sym_size_t] = ACTIONS(4650), [sym_ptrdiff_t] = ACTIONS(4650), [sym_string] = ACTIONS(4650), [sym_cstring] = ACTIONS(4650), [sym_dstring] = ACTIONS(4650), [sym_wstring] = ACTIONS(4650), [sym_noreturn] = ACTIONS(4650), [sym_true] = ACTIONS(4650), [sym_false] = ACTIONS(4650), [sym_null] = ACTIONS(4650), [sym_super] = ACTIONS(4650), [sym_this] = ACTIONS(4650), [sym_abstract] = ACTIONS(4650), [sym_alias] = ACTIONS(4650), [sym_align] = ACTIONS(4650), [sym_asm] = ACTIONS(4650), [sym_assert] = ACTIONS(4650), [sym_auto] = ACTIONS(4650), [sym_break] = ACTIONS(4650), [sym_case] = ACTIONS(4650), [sym_cast] = ACTIONS(4650), [sym_class] = ACTIONS(4650), [sym_const] = ACTIONS(4650), [sym_continue] = ACTIONS(4650), [sym_debug] = ACTIONS(4650), [sym_default] = ACTIONS(4650), [sym_delegate] = ACTIONS(4650), [sym_delete] = ACTIONS(4650), [sym_deprecated] = ACTIONS(4650), [sym_do] = ACTIONS(4650), [sym_else] = ACTIONS(4650), [sym_enum] = ACTIONS(4650), [sym_export] = ACTIONS(4650), [sym_extern] = ACTIONS(4650), [sym_final] = ACTIONS(4650), [sym_for] = ACTIONS(4650), [sym_foreach] = ACTIONS(4650), [sym_foreach_reverse] = ACTIONS(4650), [sym_function] = ACTIONS(4650), [sym_goto] = ACTIONS(4650), [sym_if] = ACTIONS(4650), [sym_immutable] = ACTIONS(4650), [sym_import] = ACTIONS(4650), [sym_in] = ACTIONS(4650), [sym_inout] = ACTIONS(4650), [sym_interface] = ACTIONS(4650), [sym_invariant] = ACTIONS(4650), [sym_is] = ACTIONS(4650), [sym_mixin] = ACTIONS(4650), [sym_new] = ACTIONS(4650), [sym_nothrow] = ACTIONS(4650), [sym_out] = ACTIONS(4650), [sym_override] = ACTIONS(4650), [sym_package] = ACTIONS(4650), [sym_pragma] = ACTIONS(4650), [sym_private] = ACTIONS(4650), [sym_protected] = ACTIONS(4650), [sym_public] = ACTIONS(4650), [sym_pure] = ACTIONS(4650), [sym_ref] = ACTIONS(4650), [sym_return] = ACTIONS(4650), [sym_scope] = ACTIONS(4650), [sym_shared] = ACTIONS(4650), [sym_static] = ACTIONS(4650), [sym_struct] = ACTIONS(4650), [sym_switch] = ACTIONS(4650), [sym_synchronized] = ACTIONS(4650), [sym_template] = ACTIONS(4650), [sym_throw] = ACTIONS(4650), [sym_try] = ACTIONS(4650), [sym_typeid] = ACTIONS(4650), [sym_typeof] = ACTIONS(4650), [sym_union] = ACTIONS(4650), [sym_unittest] = ACTIONS(4650), [sym_version] = ACTIONS(4650), [sym_while] = ACTIONS(4650), [sym_with] = ACTIONS(4650), [sym_gshared] = ACTIONS(4650), [sym_traits] = ACTIONS(4650), [sym_vector] = ACTIONS(4650), [sym_void] = ACTIONS(4650), [anon_sym_BQUOTE] = ACTIONS(4652), [anon_sym_r_DQUOTE] = ACTIONS(4652), [anon_sym_x_DQUOTE] = ACTIONS(4652), [anon_sym_DQUOTE] = ACTIONS(4652), [anon_sym_i_BQUOTE] = ACTIONS(4652), [anon_sym_i_DQUOTE] = ACTIONS(4652), [anon_sym_iq_LBRACE] = ACTIONS(4652), [aux_sym_char_literal_token1] = ACTIONS(4652), [anon_sym_SQUOTE] = ACTIONS(4650), [anon_sym___DATE__] = ACTIONS(4650), [anon_sym___FILE__] = ACTIONS(4650), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4650), [anon_sym___FUNCTION__] = ACTIONS(4650), [anon_sym___LINE__] = ACTIONS(4650), [anon_sym___MODULE__] = ACTIONS(4650), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4650), [anon_sym___TIME__] = ACTIONS(4650), [anon_sym___TIMESTAMP__] = ACTIONS(4650), [anon_sym___VENDOR__] = ACTIONS(4650), [anon_sym___VERSION__] = ACTIONS(4650), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4652), [sym_float_literal] = ACTIONS(4652), [sym__string] = ACTIONS(4652), }, [1662] = { [sym_identifier] = ACTIONS(4940), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4942), [anon_sym_RBRACE] = ACTIONS(4942), [anon_sym_LBRACE] = ACTIONS(4942), [anon_sym_DOT] = ACTIONS(4942), [anon_sym_AMP] = ACTIONS(4942), [anon_sym_DASH] = ACTIONS(4940), [anon_sym_DASH_DASH] = ACTIONS(4942), [anon_sym_PLUS] = ACTIONS(4940), [anon_sym_PLUS_PLUS] = ACTIONS(4942), [anon_sym_BANG] = ACTIONS(4942), [anon_sym_LPAREN] = ACTIONS(4942), [anon_sym_RPAREN] = ACTIONS(4942), [anon_sym_LBRACK] = ACTIONS(4942), [anon_sym_SEMI] = ACTIONS(4942), [anon_sym_DOLLAR] = ACTIONS(4942), [anon_sym_STAR] = ACTIONS(4942), [anon_sym_TILDE] = ACTIONS(4942), [anon_sym_AT] = ACTIONS(4942), [sym_bool] = ACTIONS(4940), [sym_byte] = ACTIONS(4940), [sym_ubyte] = ACTIONS(4940), [sym_char] = ACTIONS(4940), [sym_short] = ACTIONS(4940), [sym_ushort] = ACTIONS(4940), [sym_int] = ACTIONS(4940), [sym_uint] = ACTIONS(4940), [sym_long] = ACTIONS(4940), [sym_ulong] = ACTIONS(4940), [sym_cent] = ACTIONS(4940), [sym_ucent] = ACTIONS(4940), [sym_wchar] = ACTIONS(4940), [sym_dchar] = ACTIONS(4940), [sym_float] = ACTIONS(4940), [sym_double] = ACTIONS(4940), [sym_real] = ACTIONS(4940), [sym_ifloat] = ACTIONS(4940), [sym_idouble] = ACTIONS(4940), [sym_ireal] = ACTIONS(4940), [sym_cfloat] = ACTIONS(4940), [sym_cdouble] = ACTIONS(4940), [sym_creal] = ACTIONS(4940), [sym_size_t] = ACTIONS(4940), [sym_ptrdiff_t] = ACTIONS(4940), [sym_string] = ACTIONS(4940), [sym_cstring] = ACTIONS(4940), [sym_dstring] = ACTIONS(4940), [sym_wstring] = ACTIONS(4940), [sym_noreturn] = ACTIONS(4940), [sym_true] = ACTIONS(4940), [sym_false] = ACTIONS(4940), [sym_null] = ACTIONS(4940), [sym_super] = ACTIONS(4940), [sym_this] = ACTIONS(4940), [sym_abstract] = ACTIONS(4940), [sym_alias] = ACTIONS(4940), [sym_align] = ACTIONS(4940), [sym_asm] = ACTIONS(4940), [sym_assert] = ACTIONS(4940), [sym_auto] = ACTIONS(4940), [sym_break] = ACTIONS(4940), [sym_case] = ACTIONS(4940), [sym_cast] = ACTIONS(4940), [sym_class] = ACTIONS(4940), [sym_const] = ACTIONS(4940), [sym_continue] = ACTIONS(4940), [sym_debug] = ACTIONS(4940), [sym_default] = ACTIONS(4940), [sym_delegate] = ACTIONS(4940), [sym_delete] = ACTIONS(4940), [sym_deprecated] = ACTIONS(4940), [sym_do] = ACTIONS(4940), [sym_else] = ACTIONS(4940), [sym_enum] = ACTIONS(4940), [sym_export] = ACTIONS(4940), [sym_extern] = ACTIONS(4940), [sym_final] = ACTIONS(4940), [sym_for] = ACTIONS(4940), [sym_foreach] = ACTIONS(4940), [sym_foreach_reverse] = ACTIONS(4940), [sym_function] = ACTIONS(4940), [sym_goto] = ACTIONS(4940), [sym_if] = ACTIONS(4940), [sym_immutable] = ACTIONS(4940), [sym_import] = ACTIONS(4940), [sym_in] = ACTIONS(4940), [sym_inout] = ACTIONS(4940), [sym_interface] = ACTIONS(4940), [sym_invariant] = ACTIONS(4940), [sym_is] = ACTIONS(4940), [sym_mixin] = ACTIONS(4940), [sym_new] = ACTIONS(4940), [sym_nothrow] = ACTIONS(4940), [sym_out] = ACTIONS(4940), [sym_override] = ACTIONS(4940), [sym_package] = ACTIONS(4940), [sym_pragma] = ACTIONS(4940), [sym_private] = ACTIONS(4940), [sym_protected] = ACTIONS(4940), [sym_public] = ACTIONS(4940), [sym_pure] = ACTIONS(4940), [sym_ref] = ACTIONS(4940), [sym_return] = ACTIONS(4940), [sym_scope] = ACTIONS(4940), [sym_shared] = ACTIONS(4940), [sym_static] = ACTIONS(4940), [sym_struct] = ACTIONS(4940), [sym_switch] = ACTIONS(4940), [sym_synchronized] = ACTIONS(4940), [sym_template] = ACTIONS(4940), [sym_throw] = ACTIONS(4940), [sym_try] = ACTIONS(4940), [sym_typeid] = ACTIONS(4940), [sym_typeof] = ACTIONS(4940), [sym_union] = ACTIONS(4940), [sym_unittest] = ACTIONS(4940), [sym_version] = ACTIONS(4940), [sym_while] = ACTIONS(4940), [sym_with] = ACTIONS(4940), [sym_gshared] = ACTIONS(4940), [sym_traits] = ACTIONS(4940), [sym_vector] = ACTIONS(4940), [sym_void] = ACTIONS(4940), [anon_sym_BQUOTE] = ACTIONS(4942), [anon_sym_r_DQUOTE] = ACTIONS(4942), [anon_sym_x_DQUOTE] = ACTIONS(4942), [anon_sym_DQUOTE] = ACTIONS(4942), [anon_sym_i_BQUOTE] = ACTIONS(4942), [anon_sym_i_DQUOTE] = ACTIONS(4942), [anon_sym_iq_LBRACE] = ACTIONS(4942), [aux_sym_char_literal_token1] = ACTIONS(4942), [anon_sym_SQUOTE] = ACTIONS(4940), [anon_sym___DATE__] = ACTIONS(4940), [anon_sym___FILE__] = ACTIONS(4940), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4940), [anon_sym___FUNCTION__] = ACTIONS(4940), [anon_sym___LINE__] = ACTIONS(4940), [anon_sym___MODULE__] = ACTIONS(4940), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4940), [anon_sym___TIME__] = ACTIONS(4940), [anon_sym___TIMESTAMP__] = ACTIONS(4940), [anon_sym___VENDOR__] = ACTIONS(4940), [anon_sym___VERSION__] = ACTIONS(4940), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4942), [sym_float_literal] = ACTIONS(4942), [sym__string] = ACTIONS(4942), }, [1663] = { [sym_identifier] = ACTIONS(4792), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4795), [anon_sym_RBRACE] = ACTIONS(4795), [anon_sym_LBRACE] = ACTIONS(4795), [anon_sym_DOT] = ACTIONS(4795), [anon_sym_AMP] = ACTIONS(4795), [anon_sym_DASH] = ACTIONS(4792), [anon_sym_DASH_DASH] = ACTIONS(4795), [anon_sym_PLUS] = ACTIONS(4792), [anon_sym_PLUS_PLUS] = ACTIONS(4795), [anon_sym_BANG] = ACTIONS(4795), [anon_sym_LPAREN] = ACTIONS(4795), [anon_sym_RPAREN] = ACTIONS(4795), [anon_sym_LBRACK] = ACTIONS(4795), [anon_sym_SEMI] = ACTIONS(4795), [anon_sym_DOLLAR] = ACTIONS(4795), [anon_sym_STAR] = ACTIONS(4795), [anon_sym_TILDE] = ACTIONS(4795), [anon_sym_AT] = ACTIONS(4795), [sym_bool] = ACTIONS(4792), [sym_byte] = ACTIONS(4792), [sym_ubyte] = ACTIONS(4792), [sym_char] = ACTIONS(4792), [sym_short] = ACTIONS(4792), [sym_ushort] = ACTIONS(4792), [sym_int] = ACTIONS(4792), [sym_uint] = ACTIONS(4792), [sym_long] = ACTIONS(4792), [sym_ulong] = ACTIONS(4792), [sym_cent] = ACTIONS(4792), [sym_ucent] = ACTIONS(4792), [sym_wchar] = ACTIONS(4792), [sym_dchar] = ACTIONS(4792), [sym_float] = ACTIONS(4792), [sym_double] = ACTIONS(4792), [sym_real] = ACTIONS(4792), [sym_ifloat] = ACTIONS(4792), [sym_idouble] = ACTIONS(4792), [sym_ireal] = ACTIONS(4792), [sym_cfloat] = ACTIONS(4792), [sym_cdouble] = ACTIONS(4792), [sym_creal] = ACTIONS(4792), [sym_size_t] = ACTIONS(4792), [sym_ptrdiff_t] = ACTIONS(4792), [sym_string] = ACTIONS(4792), [sym_cstring] = ACTIONS(4792), [sym_dstring] = ACTIONS(4792), [sym_wstring] = ACTIONS(4792), [sym_noreturn] = ACTIONS(4792), [sym_true] = ACTIONS(4792), [sym_false] = ACTIONS(4792), [sym_null] = ACTIONS(4792), [sym_super] = ACTIONS(4792), [sym_this] = ACTIONS(4792), [sym_abstract] = ACTIONS(4792), [sym_alias] = ACTIONS(4792), [sym_align] = ACTIONS(4792), [sym_asm] = ACTIONS(4792), [sym_assert] = ACTIONS(4792), [sym_auto] = ACTIONS(4792), [sym_break] = ACTIONS(4792), [sym_case] = ACTIONS(4792), [sym_cast] = ACTIONS(4792), [sym_class] = ACTIONS(4792), [sym_const] = ACTIONS(4792), [sym_continue] = ACTIONS(4792), [sym_debug] = ACTIONS(4792), [sym_default] = ACTIONS(4792), [sym_delegate] = ACTIONS(4792), [sym_delete] = ACTIONS(4792), [sym_deprecated] = ACTIONS(4792), [sym_do] = ACTIONS(4792), [sym_else] = ACTIONS(4792), [sym_enum] = ACTIONS(4792), [sym_export] = ACTIONS(4792), [sym_extern] = ACTIONS(4792), [sym_final] = ACTIONS(4792), [sym_for] = ACTIONS(4792), [sym_foreach] = ACTIONS(4792), [sym_foreach_reverse] = ACTIONS(4792), [sym_function] = ACTIONS(4792), [sym_goto] = ACTIONS(4792), [sym_if] = ACTIONS(4792), [sym_immutable] = ACTIONS(4792), [sym_import] = ACTIONS(4792), [sym_in] = ACTIONS(4792), [sym_inout] = ACTIONS(4792), [sym_interface] = ACTIONS(4792), [sym_invariant] = ACTIONS(4792), [sym_is] = ACTIONS(4792), [sym_mixin] = ACTIONS(4792), [sym_new] = ACTIONS(4792), [sym_nothrow] = ACTIONS(4792), [sym_out] = ACTIONS(4792), [sym_override] = ACTIONS(4792), [sym_package] = ACTIONS(4792), [sym_pragma] = ACTIONS(4792), [sym_private] = ACTIONS(4792), [sym_protected] = ACTIONS(4792), [sym_public] = ACTIONS(4792), [sym_pure] = ACTIONS(4792), [sym_ref] = ACTIONS(4792), [sym_return] = ACTIONS(4792), [sym_scope] = ACTIONS(4792), [sym_shared] = ACTIONS(4792), [sym_static] = ACTIONS(4792), [sym_struct] = ACTIONS(4792), [sym_switch] = ACTIONS(4792), [sym_synchronized] = ACTIONS(4792), [sym_template] = ACTIONS(4792), [sym_throw] = ACTIONS(4792), [sym_try] = ACTIONS(4792), [sym_typeid] = ACTIONS(4792), [sym_typeof] = ACTIONS(4792), [sym_union] = ACTIONS(4792), [sym_unittest] = ACTIONS(4792), [sym_version] = ACTIONS(4792), [sym_while] = ACTIONS(4792), [sym_with] = ACTIONS(4792), [sym_gshared] = ACTIONS(4792), [sym_traits] = ACTIONS(4792), [sym_vector] = ACTIONS(4792), [sym_void] = ACTIONS(4792), [anon_sym_BQUOTE] = ACTIONS(4795), [anon_sym_r_DQUOTE] = ACTIONS(4795), [anon_sym_x_DQUOTE] = ACTIONS(4795), [anon_sym_DQUOTE] = ACTIONS(4795), [anon_sym_i_BQUOTE] = ACTIONS(4795), [anon_sym_i_DQUOTE] = ACTIONS(4795), [anon_sym_iq_LBRACE] = ACTIONS(4795), [aux_sym_char_literal_token1] = ACTIONS(4795), [anon_sym_SQUOTE] = ACTIONS(4792), [anon_sym___DATE__] = ACTIONS(4792), [anon_sym___FILE__] = ACTIONS(4792), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4792), [anon_sym___FUNCTION__] = ACTIONS(4792), [anon_sym___LINE__] = ACTIONS(4792), [anon_sym___MODULE__] = ACTIONS(4792), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4792), [anon_sym___TIME__] = ACTIONS(4792), [anon_sym___TIMESTAMP__] = ACTIONS(4792), [anon_sym___VENDOR__] = ACTIONS(4792), [anon_sym___VERSION__] = ACTIONS(4792), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4795), [sym_float_literal] = ACTIONS(4795), [sym__string] = ACTIONS(4795), }, [1664] = { [sym_identifier] = ACTIONS(4524), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4526), [anon_sym_RBRACE] = ACTIONS(4526), [anon_sym_LBRACE] = ACTIONS(4526), [anon_sym_DOT] = ACTIONS(4526), [anon_sym_AMP] = ACTIONS(4526), [anon_sym_DASH] = ACTIONS(4524), [anon_sym_DASH_DASH] = ACTIONS(4526), [anon_sym_PLUS] = ACTIONS(4524), [anon_sym_PLUS_PLUS] = ACTIONS(4526), [anon_sym_BANG] = ACTIONS(4526), [anon_sym_LPAREN] = ACTIONS(4526), [anon_sym_RPAREN] = ACTIONS(4526), [anon_sym_LBRACK] = ACTIONS(4526), [anon_sym_SEMI] = ACTIONS(4526), [anon_sym_DOLLAR] = ACTIONS(4526), [anon_sym_STAR] = ACTIONS(4526), [anon_sym_TILDE] = ACTIONS(4526), [anon_sym_AT] = ACTIONS(4526), [sym_bool] = ACTIONS(4524), [sym_byte] = ACTIONS(4524), [sym_ubyte] = ACTIONS(4524), [sym_char] = ACTIONS(4524), [sym_short] = ACTIONS(4524), [sym_ushort] = ACTIONS(4524), [sym_int] = ACTIONS(4524), [sym_uint] = ACTIONS(4524), [sym_long] = ACTIONS(4524), [sym_ulong] = ACTIONS(4524), [sym_cent] = ACTIONS(4524), [sym_ucent] = ACTIONS(4524), [sym_wchar] = ACTIONS(4524), [sym_dchar] = ACTIONS(4524), [sym_float] = ACTIONS(4524), [sym_double] = ACTIONS(4524), [sym_real] = ACTIONS(4524), [sym_ifloat] = ACTIONS(4524), [sym_idouble] = ACTIONS(4524), [sym_ireal] = ACTIONS(4524), [sym_cfloat] = ACTIONS(4524), [sym_cdouble] = ACTIONS(4524), [sym_creal] = ACTIONS(4524), [sym_size_t] = ACTIONS(4524), [sym_ptrdiff_t] = ACTIONS(4524), [sym_string] = ACTIONS(4524), [sym_cstring] = ACTIONS(4524), [sym_dstring] = ACTIONS(4524), [sym_wstring] = ACTIONS(4524), [sym_noreturn] = ACTIONS(4524), [sym_true] = ACTIONS(4524), [sym_false] = ACTIONS(4524), [sym_null] = ACTIONS(4524), [sym_super] = ACTIONS(4524), [sym_this] = ACTIONS(4524), [sym_abstract] = ACTIONS(4524), [sym_alias] = ACTIONS(4524), [sym_align] = ACTIONS(4524), [sym_asm] = ACTIONS(4524), [sym_assert] = ACTIONS(4524), [sym_auto] = ACTIONS(4524), [sym_break] = ACTIONS(4524), [sym_case] = ACTIONS(4524), [sym_cast] = ACTIONS(4524), [sym_class] = ACTIONS(4524), [sym_const] = ACTIONS(4524), [sym_continue] = ACTIONS(4524), [sym_debug] = ACTIONS(4524), [sym_default] = ACTIONS(4524), [sym_delegate] = ACTIONS(4524), [sym_delete] = ACTIONS(4524), [sym_deprecated] = ACTIONS(4524), [sym_do] = ACTIONS(4524), [sym_else] = ACTIONS(4524), [sym_enum] = ACTIONS(4524), [sym_export] = ACTIONS(4524), [sym_extern] = ACTIONS(4524), [sym_final] = ACTIONS(4524), [sym_for] = ACTIONS(4524), [sym_foreach] = ACTIONS(4524), [sym_foreach_reverse] = ACTIONS(4524), [sym_function] = ACTIONS(4524), [sym_goto] = ACTIONS(4524), [sym_if] = ACTIONS(4524), [sym_immutable] = ACTIONS(4524), [sym_import] = ACTIONS(4524), [sym_in] = ACTIONS(4524), [sym_inout] = ACTIONS(4524), [sym_interface] = ACTIONS(4524), [sym_invariant] = ACTIONS(4524), [sym_is] = ACTIONS(4524), [sym_mixin] = ACTIONS(4524), [sym_new] = ACTIONS(4524), [sym_nothrow] = ACTIONS(4524), [sym_out] = ACTIONS(4524), [sym_override] = ACTIONS(4524), [sym_package] = ACTIONS(4524), [sym_pragma] = ACTIONS(4524), [sym_private] = ACTIONS(4524), [sym_protected] = ACTIONS(4524), [sym_public] = ACTIONS(4524), [sym_pure] = ACTIONS(4524), [sym_ref] = ACTIONS(4524), [sym_return] = ACTIONS(4524), [sym_scope] = ACTIONS(4524), [sym_shared] = ACTIONS(4524), [sym_static] = ACTIONS(4524), [sym_struct] = ACTIONS(4524), [sym_switch] = ACTIONS(4524), [sym_synchronized] = ACTIONS(4524), [sym_template] = ACTIONS(4524), [sym_throw] = ACTIONS(4524), [sym_try] = ACTIONS(4524), [sym_typeid] = ACTIONS(4524), [sym_typeof] = ACTIONS(4524), [sym_union] = ACTIONS(4524), [sym_unittest] = ACTIONS(4524), [sym_version] = ACTIONS(4524), [sym_while] = ACTIONS(4524), [sym_with] = ACTIONS(4524), [sym_gshared] = ACTIONS(4524), [sym_traits] = ACTIONS(4524), [sym_vector] = ACTIONS(4524), [sym_void] = ACTIONS(4524), [anon_sym_BQUOTE] = ACTIONS(4526), [anon_sym_r_DQUOTE] = ACTIONS(4526), [anon_sym_x_DQUOTE] = ACTIONS(4526), [anon_sym_DQUOTE] = ACTIONS(4526), [anon_sym_i_BQUOTE] = ACTIONS(4526), [anon_sym_i_DQUOTE] = ACTIONS(4526), [anon_sym_iq_LBRACE] = ACTIONS(4526), [aux_sym_char_literal_token1] = ACTIONS(4526), [anon_sym_SQUOTE] = ACTIONS(4524), [anon_sym___DATE__] = ACTIONS(4524), [anon_sym___FILE__] = ACTIONS(4524), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4524), [anon_sym___FUNCTION__] = ACTIONS(4524), [anon_sym___LINE__] = ACTIONS(4524), [anon_sym___MODULE__] = ACTIONS(4524), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4524), [anon_sym___TIME__] = ACTIONS(4524), [anon_sym___TIMESTAMP__] = ACTIONS(4524), [anon_sym___VENDOR__] = ACTIONS(4524), [anon_sym___VERSION__] = ACTIONS(4524), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4526), [sym_float_literal] = ACTIONS(4526), [sym__string] = ACTIONS(4526), }, [1665] = { [sym_identifier] = ACTIONS(4504), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4506), [anon_sym_RBRACE] = ACTIONS(4506), [anon_sym_LBRACE] = ACTIONS(4506), [anon_sym_DOT] = ACTIONS(4506), [anon_sym_AMP] = ACTIONS(4506), [anon_sym_DASH] = ACTIONS(4504), [anon_sym_DASH_DASH] = ACTIONS(4506), [anon_sym_PLUS] = ACTIONS(4504), [anon_sym_PLUS_PLUS] = ACTIONS(4506), [anon_sym_BANG] = ACTIONS(4506), [anon_sym_LPAREN] = ACTIONS(4506), [anon_sym_RPAREN] = ACTIONS(4506), [anon_sym_LBRACK] = ACTIONS(4506), [anon_sym_SEMI] = ACTIONS(4506), [anon_sym_DOLLAR] = ACTIONS(4506), [anon_sym_STAR] = ACTIONS(4506), [anon_sym_TILDE] = ACTIONS(4506), [anon_sym_AT] = ACTIONS(4506), [sym_bool] = ACTIONS(4504), [sym_byte] = ACTIONS(4504), [sym_ubyte] = ACTIONS(4504), [sym_char] = ACTIONS(4504), [sym_short] = ACTIONS(4504), [sym_ushort] = ACTIONS(4504), [sym_int] = ACTIONS(4504), [sym_uint] = ACTIONS(4504), [sym_long] = ACTIONS(4504), [sym_ulong] = ACTIONS(4504), [sym_cent] = ACTIONS(4504), [sym_ucent] = ACTIONS(4504), [sym_wchar] = ACTIONS(4504), [sym_dchar] = ACTIONS(4504), [sym_float] = ACTIONS(4504), [sym_double] = ACTIONS(4504), [sym_real] = ACTIONS(4504), [sym_ifloat] = ACTIONS(4504), [sym_idouble] = ACTIONS(4504), [sym_ireal] = ACTIONS(4504), [sym_cfloat] = ACTIONS(4504), [sym_cdouble] = ACTIONS(4504), [sym_creal] = ACTIONS(4504), [sym_size_t] = ACTIONS(4504), [sym_ptrdiff_t] = ACTIONS(4504), [sym_string] = ACTIONS(4504), [sym_cstring] = ACTIONS(4504), [sym_dstring] = ACTIONS(4504), [sym_wstring] = ACTIONS(4504), [sym_noreturn] = ACTIONS(4504), [sym_true] = ACTIONS(4504), [sym_false] = ACTIONS(4504), [sym_null] = ACTIONS(4504), [sym_super] = ACTIONS(4504), [sym_this] = ACTIONS(4504), [sym_abstract] = ACTIONS(4504), [sym_alias] = ACTIONS(4504), [sym_align] = ACTIONS(4504), [sym_asm] = ACTIONS(4504), [sym_assert] = ACTIONS(4504), [sym_auto] = ACTIONS(4504), [sym_break] = ACTIONS(4504), [sym_case] = ACTIONS(4504), [sym_cast] = ACTIONS(4504), [sym_class] = ACTIONS(4504), [sym_const] = ACTIONS(4504), [sym_continue] = ACTIONS(4504), [sym_debug] = ACTIONS(4504), [sym_default] = ACTIONS(4504), [sym_delegate] = ACTIONS(4504), [sym_delete] = ACTIONS(4504), [sym_deprecated] = ACTIONS(4504), [sym_do] = ACTIONS(4504), [sym_else] = ACTIONS(4504), [sym_enum] = ACTIONS(4504), [sym_export] = ACTIONS(4504), [sym_extern] = ACTIONS(4504), [sym_final] = ACTIONS(4504), [sym_for] = ACTIONS(4504), [sym_foreach] = ACTIONS(4504), [sym_foreach_reverse] = ACTIONS(4504), [sym_function] = ACTIONS(4504), [sym_goto] = ACTIONS(4504), [sym_if] = ACTIONS(4504), [sym_immutable] = ACTIONS(4504), [sym_import] = ACTIONS(4504), [sym_in] = ACTIONS(4504), [sym_inout] = ACTIONS(4504), [sym_interface] = ACTIONS(4504), [sym_invariant] = ACTIONS(4504), [sym_is] = ACTIONS(4504), [sym_mixin] = ACTIONS(4504), [sym_new] = ACTIONS(4504), [sym_nothrow] = ACTIONS(4504), [sym_out] = ACTIONS(4504), [sym_override] = ACTIONS(4504), [sym_package] = ACTIONS(4504), [sym_pragma] = ACTIONS(4504), [sym_private] = ACTIONS(4504), [sym_protected] = ACTIONS(4504), [sym_public] = ACTIONS(4504), [sym_pure] = ACTIONS(4504), [sym_ref] = ACTIONS(4504), [sym_return] = ACTIONS(4504), [sym_scope] = ACTIONS(4504), [sym_shared] = ACTIONS(4504), [sym_static] = ACTIONS(4504), [sym_struct] = ACTIONS(4504), [sym_switch] = ACTIONS(4504), [sym_synchronized] = ACTIONS(4504), [sym_template] = ACTIONS(4504), [sym_throw] = ACTIONS(4504), [sym_try] = ACTIONS(4504), [sym_typeid] = ACTIONS(4504), [sym_typeof] = ACTIONS(4504), [sym_union] = ACTIONS(4504), [sym_unittest] = ACTIONS(4504), [sym_version] = ACTIONS(4504), [sym_while] = ACTIONS(4504), [sym_with] = ACTIONS(4504), [sym_gshared] = ACTIONS(4504), [sym_traits] = ACTIONS(4504), [sym_vector] = ACTIONS(4504), [sym_void] = ACTIONS(4504), [anon_sym_BQUOTE] = ACTIONS(4506), [anon_sym_r_DQUOTE] = ACTIONS(4506), [anon_sym_x_DQUOTE] = ACTIONS(4506), [anon_sym_DQUOTE] = ACTIONS(4506), [anon_sym_i_BQUOTE] = ACTIONS(4506), [anon_sym_i_DQUOTE] = ACTIONS(4506), [anon_sym_iq_LBRACE] = ACTIONS(4506), [aux_sym_char_literal_token1] = ACTIONS(4506), [anon_sym_SQUOTE] = ACTIONS(4504), [anon_sym___DATE__] = ACTIONS(4504), [anon_sym___FILE__] = ACTIONS(4504), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4504), [anon_sym___FUNCTION__] = ACTIONS(4504), [anon_sym___LINE__] = ACTIONS(4504), [anon_sym___MODULE__] = ACTIONS(4504), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4504), [anon_sym___TIME__] = ACTIONS(4504), [anon_sym___TIMESTAMP__] = ACTIONS(4504), [anon_sym___VENDOR__] = ACTIONS(4504), [anon_sym___VERSION__] = ACTIONS(4504), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4506), [sym_float_literal] = ACTIONS(4506), [sym__string] = ACTIONS(4506), }, [1666] = { [sym_identifier] = ACTIONS(4492), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4494), [anon_sym_RBRACE] = ACTIONS(4494), [anon_sym_LBRACE] = ACTIONS(4494), [anon_sym_DOT] = ACTIONS(4494), [anon_sym_AMP] = ACTIONS(4494), [anon_sym_DASH] = ACTIONS(4492), [anon_sym_DASH_DASH] = ACTIONS(4494), [anon_sym_PLUS] = ACTIONS(4492), [anon_sym_PLUS_PLUS] = ACTIONS(4494), [anon_sym_BANG] = ACTIONS(4494), [anon_sym_LPAREN] = ACTIONS(4494), [anon_sym_RPAREN] = ACTIONS(4494), [anon_sym_LBRACK] = ACTIONS(4494), [anon_sym_SEMI] = ACTIONS(4494), [anon_sym_DOLLAR] = ACTIONS(4494), [anon_sym_STAR] = ACTIONS(4494), [anon_sym_TILDE] = ACTIONS(4494), [anon_sym_AT] = ACTIONS(4494), [sym_bool] = ACTIONS(4492), [sym_byte] = ACTIONS(4492), [sym_ubyte] = ACTIONS(4492), [sym_char] = ACTIONS(4492), [sym_short] = ACTIONS(4492), [sym_ushort] = ACTIONS(4492), [sym_int] = ACTIONS(4492), [sym_uint] = ACTIONS(4492), [sym_long] = ACTIONS(4492), [sym_ulong] = ACTIONS(4492), [sym_cent] = ACTIONS(4492), [sym_ucent] = ACTIONS(4492), [sym_wchar] = ACTIONS(4492), [sym_dchar] = ACTIONS(4492), [sym_float] = ACTIONS(4492), [sym_double] = ACTIONS(4492), [sym_real] = ACTIONS(4492), [sym_ifloat] = ACTIONS(4492), [sym_idouble] = ACTIONS(4492), [sym_ireal] = ACTIONS(4492), [sym_cfloat] = ACTIONS(4492), [sym_cdouble] = ACTIONS(4492), [sym_creal] = ACTIONS(4492), [sym_size_t] = ACTIONS(4492), [sym_ptrdiff_t] = ACTIONS(4492), [sym_string] = ACTIONS(4492), [sym_cstring] = ACTIONS(4492), [sym_dstring] = ACTIONS(4492), [sym_wstring] = ACTIONS(4492), [sym_noreturn] = ACTIONS(4492), [sym_true] = ACTIONS(4492), [sym_false] = ACTIONS(4492), [sym_null] = ACTIONS(4492), [sym_super] = ACTIONS(4492), [sym_this] = ACTIONS(4492), [sym_abstract] = ACTIONS(4492), [sym_alias] = ACTIONS(4492), [sym_align] = ACTIONS(4492), [sym_asm] = ACTIONS(4492), [sym_assert] = ACTIONS(4492), [sym_auto] = ACTIONS(4492), [sym_break] = ACTIONS(4492), [sym_case] = ACTIONS(4492), [sym_cast] = ACTIONS(4492), [sym_class] = ACTIONS(4492), [sym_const] = ACTIONS(4492), [sym_continue] = ACTIONS(4492), [sym_debug] = ACTIONS(4492), [sym_default] = ACTIONS(4492), [sym_delegate] = ACTIONS(4492), [sym_delete] = ACTIONS(4492), [sym_deprecated] = ACTIONS(4492), [sym_do] = ACTIONS(4492), [sym_else] = ACTIONS(4492), [sym_enum] = ACTIONS(4492), [sym_export] = ACTIONS(4492), [sym_extern] = ACTIONS(4492), [sym_final] = ACTIONS(4492), [sym_for] = ACTIONS(4492), [sym_foreach] = ACTIONS(4492), [sym_foreach_reverse] = ACTIONS(4492), [sym_function] = ACTIONS(4492), [sym_goto] = ACTIONS(4492), [sym_if] = ACTIONS(4492), [sym_immutable] = ACTIONS(4492), [sym_import] = ACTIONS(4492), [sym_in] = ACTIONS(4492), [sym_inout] = ACTIONS(4492), [sym_interface] = ACTIONS(4492), [sym_invariant] = ACTIONS(4492), [sym_is] = ACTIONS(4492), [sym_mixin] = ACTIONS(4492), [sym_new] = ACTIONS(4492), [sym_nothrow] = ACTIONS(4492), [sym_out] = ACTIONS(4492), [sym_override] = ACTIONS(4492), [sym_package] = ACTIONS(4492), [sym_pragma] = ACTIONS(4492), [sym_private] = ACTIONS(4492), [sym_protected] = ACTIONS(4492), [sym_public] = ACTIONS(4492), [sym_pure] = ACTIONS(4492), [sym_ref] = ACTIONS(4492), [sym_return] = ACTIONS(4492), [sym_scope] = ACTIONS(4492), [sym_shared] = ACTIONS(4492), [sym_static] = ACTIONS(4492), [sym_struct] = ACTIONS(4492), [sym_switch] = ACTIONS(4492), [sym_synchronized] = ACTIONS(4492), [sym_template] = ACTIONS(4492), [sym_throw] = ACTIONS(4492), [sym_try] = ACTIONS(4492), [sym_typeid] = ACTIONS(4492), [sym_typeof] = ACTIONS(4492), [sym_union] = ACTIONS(4492), [sym_unittest] = ACTIONS(4492), [sym_version] = ACTIONS(4492), [sym_while] = ACTIONS(4492), [sym_with] = ACTIONS(4492), [sym_gshared] = ACTIONS(4492), [sym_traits] = ACTIONS(4492), [sym_vector] = ACTIONS(4492), [sym_void] = ACTIONS(4492), [anon_sym_BQUOTE] = ACTIONS(4494), [anon_sym_r_DQUOTE] = ACTIONS(4494), [anon_sym_x_DQUOTE] = ACTIONS(4494), [anon_sym_DQUOTE] = ACTIONS(4494), [anon_sym_i_BQUOTE] = ACTIONS(4494), [anon_sym_i_DQUOTE] = ACTIONS(4494), [anon_sym_iq_LBRACE] = ACTIONS(4494), [aux_sym_char_literal_token1] = ACTIONS(4494), [anon_sym_SQUOTE] = ACTIONS(4492), [anon_sym___DATE__] = ACTIONS(4492), [anon_sym___FILE__] = ACTIONS(4492), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4492), [anon_sym___FUNCTION__] = ACTIONS(4492), [anon_sym___LINE__] = ACTIONS(4492), [anon_sym___MODULE__] = ACTIONS(4492), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4492), [anon_sym___TIME__] = ACTIONS(4492), [anon_sym___TIMESTAMP__] = ACTIONS(4492), [anon_sym___VENDOR__] = ACTIONS(4492), [anon_sym___VERSION__] = ACTIONS(4492), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4494), [sym_float_literal] = ACTIONS(4494), [sym__string] = ACTIONS(4494), }, [1667] = { [sym_identifier] = ACTIONS(4488), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4490), [anon_sym_RBRACE] = ACTIONS(4490), [anon_sym_LBRACE] = ACTIONS(4490), [anon_sym_DOT] = ACTIONS(4490), [anon_sym_AMP] = ACTIONS(4490), [anon_sym_DASH] = ACTIONS(4488), [anon_sym_DASH_DASH] = ACTIONS(4490), [anon_sym_PLUS] = ACTIONS(4488), [anon_sym_PLUS_PLUS] = ACTIONS(4490), [anon_sym_BANG] = ACTIONS(4490), [anon_sym_LPAREN] = ACTIONS(4490), [anon_sym_RPAREN] = ACTIONS(4490), [anon_sym_LBRACK] = ACTIONS(4490), [anon_sym_SEMI] = ACTIONS(4490), [anon_sym_DOLLAR] = ACTIONS(4490), [anon_sym_STAR] = ACTIONS(4490), [anon_sym_TILDE] = ACTIONS(4490), [anon_sym_AT] = ACTIONS(4490), [sym_bool] = ACTIONS(4488), [sym_byte] = ACTIONS(4488), [sym_ubyte] = ACTIONS(4488), [sym_char] = ACTIONS(4488), [sym_short] = ACTIONS(4488), [sym_ushort] = ACTIONS(4488), [sym_int] = ACTIONS(4488), [sym_uint] = ACTIONS(4488), [sym_long] = ACTIONS(4488), [sym_ulong] = ACTIONS(4488), [sym_cent] = ACTIONS(4488), [sym_ucent] = ACTIONS(4488), [sym_wchar] = ACTIONS(4488), [sym_dchar] = ACTIONS(4488), [sym_float] = ACTIONS(4488), [sym_double] = ACTIONS(4488), [sym_real] = ACTIONS(4488), [sym_ifloat] = ACTIONS(4488), [sym_idouble] = ACTIONS(4488), [sym_ireal] = ACTIONS(4488), [sym_cfloat] = ACTIONS(4488), [sym_cdouble] = ACTIONS(4488), [sym_creal] = ACTIONS(4488), [sym_size_t] = ACTIONS(4488), [sym_ptrdiff_t] = ACTIONS(4488), [sym_string] = ACTIONS(4488), [sym_cstring] = ACTIONS(4488), [sym_dstring] = ACTIONS(4488), [sym_wstring] = ACTIONS(4488), [sym_noreturn] = ACTIONS(4488), [sym_true] = ACTIONS(4488), [sym_false] = ACTIONS(4488), [sym_null] = ACTIONS(4488), [sym_super] = ACTIONS(4488), [sym_this] = ACTIONS(4488), [sym_abstract] = ACTIONS(4488), [sym_alias] = ACTIONS(4488), [sym_align] = ACTIONS(4488), [sym_asm] = ACTIONS(4488), [sym_assert] = ACTIONS(4488), [sym_auto] = ACTIONS(4488), [sym_break] = ACTIONS(4488), [sym_case] = ACTIONS(4488), [sym_cast] = ACTIONS(4488), [sym_class] = ACTIONS(4488), [sym_const] = ACTIONS(4488), [sym_continue] = ACTIONS(4488), [sym_debug] = ACTIONS(4488), [sym_default] = ACTIONS(4488), [sym_delegate] = ACTIONS(4488), [sym_delete] = ACTIONS(4488), [sym_deprecated] = ACTIONS(4488), [sym_do] = ACTIONS(4488), [sym_else] = ACTIONS(4488), [sym_enum] = ACTIONS(4488), [sym_export] = ACTIONS(4488), [sym_extern] = ACTIONS(4488), [sym_final] = ACTIONS(4488), [sym_for] = ACTIONS(4488), [sym_foreach] = ACTIONS(4488), [sym_foreach_reverse] = ACTIONS(4488), [sym_function] = ACTIONS(4488), [sym_goto] = ACTIONS(4488), [sym_if] = ACTIONS(4488), [sym_immutable] = ACTIONS(4488), [sym_import] = ACTIONS(4488), [sym_in] = ACTIONS(4488), [sym_inout] = ACTIONS(4488), [sym_interface] = ACTIONS(4488), [sym_invariant] = ACTIONS(4488), [sym_is] = ACTIONS(4488), [sym_mixin] = ACTIONS(4488), [sym_new] = ACTIONS(4488), [sym_nothrow] = ACTIONS(4488), [sym_out] = ACTIONS(4488), [sym_override] = ACTIONS(4488), [sym_package] = ACTIONS(4488), [sym_pragma] = ACTIONS(4488), [sym_private] = ACTIONS(4488), [sym_protected] = ACTIONS(4488), [sym_public] = ACTIONS(4488), [sym_pure] = ACTIONS(4488), [sym_ref] = ACTIONS(4488), [sym_return] = ACTIONS(4488), [sym_scope] = ACTIONS(4488), [sym_shared] = ACTIONS(4488), [sym_static] = ACTIONS(4488), [sym_struct] = ACTIONS(4488), [sym_switch] = ACTIONS(4488), [sym_synchronized] = ACTIONS(4488), [sym_template] = ACTIONS(4488), [sym_throw] = ACTIONS(4488), [sym_try] = ACTIONS(4488), [sym_typeid] = ACTIONS(4488), [sym_typeof] = ACTIONS(4488), [sym_union] = ACTIONS(4488), [sym_unittest] = ACTIONS(4488), [sym_version] = ACTIONS(4488), [sym_while] = ACTIONS(4488), [sym_with] = ACTIONS(4488), [sym_gshared] = ACTIONS(4488), [sym_traits] = ACTIONS(4488), [sym_vector] = ACTIONS(4488), [sym_void] = ACTIONS(4488), [anon_sym_BQUOTE] = ACTIONS(4490), [anon_sym_r_DQUOTE] = ACTIONS(4490), [anon_sym_x_DQUOTE] = ACTIONS(4490), [anon_sym_DQUOTE] = ACTIONS(4490), [anon_sym_i_BQUOTE] = ACTIONS(4490), [anon_sym_i_DQUOTE] = ACTIONS(4490), [anon_sym_iq_LBRACE] = ACTIONS(4490), [aux_sym_char_literal_token1] = ACTIONS(4490), [anon_sym_SQUOTE] = ACTIONS(4488), [anon_sym___DATE__] = ACTIONS(4488), [anon_sym___FILE__] = ACTIONS(4488), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4488), [anon_sym___FUNCTION__] = ACTIONS(4488), [anon_sym___LINE__] = ACTIONS(4488), [anon_sym___MODULE__] = ACTIONS(4488), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4488), [anon_sym___TIME__] = ACTIONS(4488), [anon_sym___TIMESTAMP__] = ACTIONS(4488), [anon_sym___VENDOR__] = ACTIONS(4488), [anon_sym___VERSION__] = ACTIONS(4488), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4490), [sym_float_literal] = ACTIONS(4490), [sym__string] = ACTIONS(4490), }, [1668] = { [sym_identifier] = ACTIONS(4948), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4950), [anon_sym_RBRACE] = ACTIONS(4950), [anon_sym_LBRACE] = ACTIONS(4950), [anon_sym_DOT] = ACTIONS(4950), [anon_sym_AMP] = ACTIONS(4950), [anon_sym_DASH] = ACTIONS(4948), [anon_sym_DASH_DASH] = ACTIONS(4950), [anon_sym_PLUS] = ACTIONS(4948), [anon_sym_PLUS_PLUS] = ACTIONS(4950), [anon_sym_BANG] = ACTIONS(4950), [anon_sym_LPAREN] = ACTIONS(4950), [anon_sym_RPAREN] = ACTIONS(4950), [anon_sym_LBRACK] = ACTIONS(4950), [anon_sym_SEMI] = ACTIONS(4950), [anon_sym_DOLLAR] = ACTIONS(4950), [anon_sym_STAR] = ACTIONS(4950), [anon_sym_TILDE] = ACTIONS(4950), [anon_sym_AT] = ACTIONS(4950), [sym_bool] = ACTIONS(4948), [sym_byte] = ACTIONS(4948), [sym_ubyte] = ACTIONS(4948), [sym_char] = ACTIONS(4948), [sym_short] = ACTIONS(4948), [sym_ushort] = ACTIONS(4948), [sym_int] = ACTIONS(4948), [sym_uint] = ACTIONS(4948), [sym_long] = ACTIONS(4948), [sym_ulong] = ACTIONS(4948), [sym_cent] = ACTIONS(4948), [sym_ucent] = ACTIONS(4948), [sym_wchar] = ACTIONS(4948), [sym_dchar] = ACTIONS(4948), [sym_float] = ACTIONS(4948), [sym_double] = ACTIONS(4948), [sym_real] = ACTIONS(4948), [sym_ifloat] = ACTIONS(4948), [sym_idouble] = ACTIONS(4948), [sym_ireal] = ACTIONS(4948), [sym_cfloat] = ACTIONS(4948), [sym_cdouble] = ACTIONS(4948), [sym_creal] = ACTIONS(4948), [sym_size_t] = ACTIONS(4948), [sym_ptrdiff_t] = ACTIONS(4948), [sym_string] = ACTIONS(4948), [sym_cstring] = ACTIONS(4948), [sym_dstring] = ACTIONS(4948), [sym_wstring] = ACTIONS(4948), [sym_noreturn] = ACTIONS(4948), [sym_true] = ACTIONS(4948), [sym_false] = ACTIONS(4948), [sym_null] = ACTIONS(4948), [sym_super] = ACTIONS(4948), [sym_this] = ACTIONS(4948), [sym_abstract] = ACTIONS(4948), [sym_alias] = ACTIONS(4948), [sym_align] = ACTIONS(4948), [sym_asm] = ACTIONS(4948), [sym_assert] = ACTIONS(4948), [sym_auto] = ACTIONS(4948), [sym_break] = ACTIONS(4948), [sym_case] = ACTIONS(4948), [sym_cast] = ACTIONS(4948), [sym_class] = ACTIONS(4948), [sym_const] = ACTIONS(4948), [sym_continue] = ACTIONS(4948), [sym_debug] = ACTIONS(4948), [sym_default] = ACTIONS(4948), [sym_delegate] = ACTIONS(4948), [sym_delete] = ACTIONS(4948), [sym_deprecated] = ACTIONS(4948), [sym_do] = ACTIONS(4948), [sym_else] = ACTIONS(4948), [sym_enum] = ACTIONS(4948), [sym_export] = ACTIONS(4948), [sym_extern] = ACTIONS(4948), [sym_final] = ACTIONS(4948), [sym_for] = ACTIONS(4948), [sym_foreach] = ACTIONS(4948), [sym_foreach_reverse] = ACTIONS(4948), [sym_function] = ACTIONS(4948), [sym_goto] = ACTIONS(4948), [sym_if] = ACTIONS(4948), [sym_immutable] = ACTIONS(4948), [sym_import] = ACTIONS(4948), [sym_in] = ACTIONS(4948), [sym_inout] = ACTIONS(4948), [sym_interface] = ACTIONS(4948), [sym_invariant] = ACTIONS(4948), [sym_is] = ACTIONS(4948), [sym_mixin] = ACTIONS(4948), [sym_new] = ACTIONS(4948), [sym_nothrow] = ACTIONS(4948), [sym_out] = ACTIONS(4948), [sym_override] = ACTIONS(4948), [sym_package] = ACTIONS(4948), [sym_pragma] = ACTIONS(4948), [sym_private] = ACTIONS(4948), [sym_protected] = ACTIONS(4948), [sym_public] = ACTIONS(4948), [sym_pure] = ACTIONS(4948), [sym_ref] = ACTIONS(4948), [sym_return] = ACTIONS(4948), [sym_scope] = ACTIONS(4948), [sym_shared] = ACTIONS(4948), [sym_static] = ACTIONS(4948), [sym_struct] = ACTIONS(4948), [sym_switch] = ACTIONS(4948), [sym_synchronized] = ACTIONS(4948), [sym_template] = ACTIONS(4948), [sym_throw] = ACTIONS(4948), [sym_try] = ACTIONS(4948), [sym_typeid] = ACTIONS(4948), [sym_typeof] = ACTIONS(4948), [sym_union] = ACTIONS(4948), [sym_unittest] = ACTIONS(4948), [sym_version] = ACTIONS(4948), [sym_while] = ACTIONS(4948), [sym_with] = ACTIONS(4948), [sym_gshared] = ACTIONS(4948), [sym_traits] = ACTIONS(4948), [sym_vector] = ACTIONS(4948), [sym_void] = ACTIONS(4948), [anon_sym_BQUOTE] = ACTIONS(4950), [anon_sym_r_DQUOTE] = ACTIONS(4950), [anon_sym_x_DQUOTE] = ACTIONS(4950), [anon_sym_DQUOTE] = ACTIONS(4950), [anon_sym_i_BQUOTE] = ACTIONS(4950), [anon_sym_i_DQUOTE] = ACTIONS(4950), [anon_sym_iq_LBRACE] = ACTIONS(4950), [aux_sym_char_literal_token1] = ACTIONS(4950), [anon_sym_SQUOTE] = ACTIONS(4948), [anon_sym___DATE__] = ACTIONS(4948), [anon_sym___FILE__] = ACTIONS(4948), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4948), [anon_sym___FUNCTION__] = ACTIONS(4948), [anon_sym___LINE__] = ACTIONS(4948), [anon_sym___MODULE__] = ACTIONS(4948), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4948), [anon_sym___TIME__] = ACTIONS(4948), [anon_sym___TIMESTAMP__] = ACTIONS(4948), [anon_sym___VENDOR__] = ACTIONS(4948), [anon_sym___VERSION__] = ACTIONS(4948), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4950), [sym_float_literal] = ACTIONS(4950), [sym__string] = ACTIONS(4950), }, [1669] = { [sym_identifier] = ACTIONS(4956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4958), [anon_sym_RBRACE] = ACTIONS(4958), [anon_sym_LBRACE] = ACTIONS(4958), [anon_sym_DOT] = ACTIONS(4958), [anon_sym_AMP] = ACTIONS(4958), [anon_sym_DASH] = ACTIONS(4956), [anon_sym_DASH_DASH] = ACTIONS(4958), [anon_sym_PLUS] = ACTIONS(4956), [anon_sym_PLUS_PLUS] = ACTIONS(4958), [anon_sym_BANG] = ACTIONS(4958), [anon_sym_LPAREN] = ACTIONS(4958), [anon_sym_RPAREN] = ACTIONS(4958), [anon_sym_LBRACK] = ACTIONS(4958), [anon_sym_SEMI] = ACTIONS(4958), [anon_sym_DOLLAR] = ACTIONS(4958), [anon_sym_STAR] = ACTIONS(4958), [anon_sym_TILDE] = ACTIONS(4958), [anon_sym_AT] = ACTIONS(4958), [sym_bool] = ACTIONS(4956), [sym_byte] = ACTIONS(4956), [sym_ubyte] = ACTIONS(4956), [sym_char] = ACTIONS(4956), [sym_short] = ACTIONS(4956), [sym_ushort] = ACTIONS(4956), [sym_int] = ACTIONS(4956), [sym_uint] = ACTIONS(4956), [sym_long] = ACTIONS(4956), [sym_ulong] = ACTIONS(4956), [sym_cent] = ACTIONS(4956), [sym_ucent] = ACTIONS(4956), [sym_wchar] = ACTIONS(4956), [sym_dchar] = ACTIONS(4956), [sym_float] = ACTIONS(4956), [sym_double] = ACTIONS(4956), [sym_real] = ACTIONS(4956), [sym_ifloat] = ACTIONS(4956), [sym_idouble] = ACTIONS(4956), [sym_ireal] = ACTIONS(4956), [sym_cfloat] = ACTIONS(4956), [sym_cdouble] = ACTIONS(4956), [sym_creal] = ACTIONS(4956), [sym_size_t] = ACTIONS(4956), [sym_ptrdiff_t] = ACTIONS(4956), [sym_string] = ACTIONS(4956), [sym_cstring] = ACTIONS(4956), [sym_dstring] = ACTIONS(4956), [sym_wstring] = ACTIONS(4956), [sym_noreturn] = ACTIONS(4956), [sym_true] = ACTIONS(4956), [sym_false] = ACTIONS(4956), [sym_null] = ACTIONS(4956), [sym_super] = ACTIONS(4956), [sym_this] = ACTIONS(4956), [sym_abstract] = ACTIONS(4956), [sym_alias] = ACTIONS(4956), [sym_align] = ACTIONS(4956), [sym_asm] = ACTIONS(4956), [sym_assert] = ACTIONS(4956), [sym_auto] = ACTIONS(4956), [sym_break] = ACTIONS(4956), [sym_case] = ACTIONS(4956), [sym_cast] = ACTIONS(4956), [sym_class] = ACTIONS(4956), [sym_const] = ACTIONS(4956), [sym_continue] = ACTIONS(4956), [sym_debug] = ACTIONS(4956), [sym_default] = ACTIONS(4956), [sym_delegate] = ACTIONS(4956), [sym_delete] = ACTIONS(4956), [sym_deprecated] = ACTIONS(4956), [sym_do] = ACTIONS(4956), [sym_else] = ACTIONS(4956), [sym_enum] = ACTIONS(4956), [sym_export] = ACTIONS(4956), [sym_extern] = ACTIONS(4956), [sym_final] = ACTIONS(4956), [sym_for] = ACTIONS(4956), [sym_foreach] = ACTIONS(4956), [sym_foreach_reverse] = ACTIONS(4956), [sym_function] = ACTIONS(4956), [sym_goto] = ACTIONS(4956), [sym_if] = ACTIONS(4956), [sym_immutable] = ACTIONS(4956), [sym_import] = ACTIONS(4956), [sym_in] = ACTIONS(4956), [sym_inout] = ACTIONS(4956), [sym_interface] = ACTIONS(4956), [sym_invariant] = ACTIONS(4956), [sym_is] = ACTIONS(4956), [sym_mixin] = ACTIONS(4956), [sym_new] = ACTIONS(4956), [sym_nothrow] = ACTIONS(4956), [sym_out] = ACTIONS(4956), [sym_override] = ACTIONS(4956), [sym_package] = ACTIONS(4956), [sym_pragma] = ACTIONS(4956), [sym_private] = ACTIONS(4956), [sym_protected] = ACTIONS(4956), [sym_public] = ACTIONS(4956), [sym_pure] = ACTIONS(4956), [sym_ref] = ACTIONS(4956), [sym_return] = ACTIONS(4956), [sym_scope] = ACTIONS(4956), [sym_shared] = ACTIONS(4956), [sym_static] = ACTIONS(4956), [sym_struct] = ACTIONS(4956), [sym_switch] = ACTIONS(4956), [sym_synchronized] = ACTIONS(4956), [sym_template] = ACTIONS(4956), [sym_throw] = ACTIONS(4956), [sym_try] = ACTIONS(4956), [sym_typeid] = ACTIONS(4956), [sym_typeof] = ACTIONS(4956), [sym_union] = ACTIONS(4956), [sym_unittest] = ACTIONS(4956), [sym_version] = ACTIONS(4956), [sym_while] = ACTIONS(4956), [sym_with] = ACTIONS(4956), [sym_gshared] = ACTIONS(4956), [sym_traits] = ACTIONS(4956), [sym_vector] = ACTIONS(4956), [sym_void] = ACTIONS(4956), [anon_sym_BQUOTE] = ACTIONS(4958), [anon_sym_r_DQUOTE] = ACTIONS(4958), [anon_sym_x_DQUOTE] = ACTIONS(4958), [anon_sym_DQUOTE] = ACTIONS(4958), [anon_sym_i_BQUOTE] = ACTIONS(4958), [anon_sym_i_DQUOTE] = ACTIONS(4958), [anon_sym_iq_LBRACE] = ACTIONS(4958), [aux_sym_char_literal_token1] = ACTIONS(4958), [anon_sym_SQUOTE] = ACTIONS(4956), [anon_sym___DATE__] = ACTIONS(4956), [anon_sym___FILE__] = ACTIONS(4956), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4956), [anon_sym___FUNCTION__] = ACTIONS(4956), [anon_sym___LINE__] = ACTIONS(4956), [anon_sym___MODULE__] = ACTIONS(4956), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4956), [anon_sym___TIME__] = ACTIONS(4956), [anon_sym___TIMESTAMP__] = ACTIONS(4956), [anon_sym___VENDOR__] = ACTIONS(4956), [anon_sym___VERSION__] = ACTIONS(4956), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4958), [sym_float_literal] = ACTIONS(4958), [sym__string] = ACTIONS(4958), }, [1670] = { [sym_identifier] = ACTIONS(4484), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4486), [anon_sym_RBRACE] = ACTIONS(4486), [anon_sym_LBRACE] = ACTIONS(4486), [anon_sym_DOT] = ACTIONS(4486), [anon_sym_AMP] = ACTIONS(4486), [anon_sym_DASH] = ACTIONS(4484), [anon_sym_DASH_DASH] = ACTIONS(4486), [anon_sym_PLUS] = ACTIONS(4484), [anon_sym_PLUS_PLUS] = ACTIONS(4486), [anon_sym_BANG] = ACTIONS(4486), [anon_sym_LPAREN] = ACTIONS(4486), [anon_sym_RPAREN] = ACTIONS(4486), [anon_sym_LBRACK] = ACTIONS(4486), [anon_sym_SEMI] = ACTIONS(4486), [anon_sym_DOLLAR] = ACTIONS(4486), [anon_sym_STAR] = ACTIONS(4486), [anon_sym_TILDE] = ACTIONS(4486), [anon_sym_AT] = ACTIONS(4486), [sym_bool] = ACTIONS(4484), [sym_byte] = ACTIONS(4484), [sym_ubyte] = ACTIONS(4484), [sym_char] = ACTIONS(4484), [sym_short] = ACTIONS(4484), [sym_ushort] = ACTIONS(4484), [sym_int] = ACTIONS(4484), [sym_uint] = ACTIONS(4484), [sym_long] = ACTIONS(4484), [sym_ulong] = ACTIONS(4484), [sym_cent] = ACTIONS(4484), [sym_ucent] = ACTIONS(4484), [sym_wchar] = ACTIONS(4484), [sym_dchar] = ACTIONS(4484), [sym_float] = ACTIONS(4484), [sym_double] = ACTIONS(4484), [sym_real] = ACTIONS(4484), [sym_ifloat] = ACTIONS(4484), [sym_idouble] = ACTIONS(4484), [sym_ireal] = ACTIONS(4484), [sym_cfloat] = ACTIONS(4484), [sym_cdouble] = ACTIONS(4484), [sym_creal] = ACTIONS(4484), [sym_size_t] = ACTIONS(4484), [sym_ptrdiff_t] = ACTIONS(4484), [sym_string] = ACTIONS(4484), [sym_cstring] = ACTIONS(4484), [sym_dstring] = ACTIONS(4484), [sym_wstring] = ACTIONS(4484), [sym_noreturn] = ACTIONS(4484), [sym_true] = ACTIONS(4484), [sym_false] = ACTIONS(4484), [sym_null] = ACTIONS(4484), [sym_super] = ACTIONS(4484), [sym_this] = ACTIONS(4484), [sym_abstract] = ACTIONS(4484), [sym_alias] = ACTIONS(4484), [sym_align] = ACTIONS(4484), [sym_asm] = ACTIONS(4484), [sym_assert] = ACTIONS(4484), [sym_auto] = ACTIONS(4484), [sym_break] = ACTIONS(4484), [sym_case] = ACTIONS(4484), [sym_cast] = ACTIONS(4484), [sym_class] = ACTIONS(4484), [sym_const] = ACTIONS(4484), [sym_continue] = ACTIONS(4484), [sym_debug] = ACTIONS(4484), [sym_default] = ACTIONS(4484), [sym_delegate] = ACTIONS(4484), [sym_delete] = ACTIONS(4484), [sym_deprecated] = ACTIONS(4484), [sym_do] = ACTIONS(4484), [sym_else] = ACTIONS(4484), [sym_enum] = ACTIONS(4484), [sym_export] = ACTIONS(4484), [sym_extern] = ACTIONS(4484), [sym_final] = ACTIONS(4484), [sym_for] = ACTIONS(4484), [sym_foreach] = ACTIONS(4484), [sym_foreach_reverse] = ACTIONS(4484), [sym_function] = ACTIONS(4484), [sym_goto] = ACTIONS(4484), [sym_if] = ACTIONS(4484), [sym_immutable] = ACTIONS(4484), [sym_import] = ACTIONS(4484), [sym_in] = ACTIONS(4484), [sym_inout] = ACTIONS(4484), [sym_interface] = ACTIONS(4484), [sym_invariant] = ACTIONS(4484), [sym_is] = ACTIONS(4484), [sym_mixin] = ACTIONS(4484), [sym_new] = ACTIONS(4484), [sym_nothrow] = ACTIONS(4484), [sym_out] = ACTIONS(4484), [sym_override] = ACTIONS(4484), [sym_package] = ACTIONS(4484), [sym_pragma] = ACTIONS(4484), [sym_private] = ACTIONS(4484), [sym_protected] = ACTIONS(4484), [sym_public] = ACTIONS(4484), [sym_pure] = ACTIONS(4484), [sym_ref] = ACTIONS(4484), [sym_return] = ACTIONS(4484), [sym_scope] = ACTIONS(4484), [sym_shared] = ACTIONS(4484), [sym_static] = ACTIONS(4484), [sym_struct] = ACTIONS(4484), [sym_switch] = ACTIONS(4484), [sym_synchronized] = ACTIONS(4484), [sym_template] = ACTIONS(4484), [sym_throw] = ACTIONS(4484), [sym_try] = ACTIONS(4484), [sym_typeid] = ACTIONS(4484), [sym_typeof] = ACTIONS(4484), [sym_union] = ACTIONS(4484), [sym_unittest] = ACTIONS(4484), [sym_version] = ACTIONS(4484), [sym_while] = ACTIONS(4484), [sym_with] = ACTIONS(4484), [sym_gshared] = ACTIONS(4484), [sym_traits] = ACTIONS(4484), [sym_vector] = ACTIONS(4484), [sym_void] = ACTIONS(4484), [anon_sym_BQUOTE] = ACTIONS(4486), [anon_sym_r_DQUOTE] = ACTIONS(4486), [anon_sym_x_DQUOTE] = ACTIONS(4486), [anon_sym_DQUOTE] = ACTIONS(4486), [anon_sym_i_BQUOTE] = ACTIONS(4486), [anon_sym_i_DQUOTE] = ACTIONS(4486), [anon_sym_iq_LBRACE] = ACTIONS(4486), [aux_sym_char_literal_token1] = ACTIONS(4486), [anon_sym_SQUOTE] = ACTIONS(4484), [anon_sym___DATE__] = ACTIONS(4484), [anon_sym___FILE__] = ACTIONS(4484), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4484), [anon_sym___FUNCTION__] = ACTIONS(4484), [anon_sym___LINE__] = ACTIONS(4484), [anon_sym___MODULE__] = ACTIONS(4484), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4484), [anon_sym___TIME__] = ACTIONS(4484), [anon_sym___TIMESTAMP__] = ACTIONS(4484), [anon_sym___VENDOR__] = ACTIONS(4484), [anon_sym___VERSION__] = ACTIONS(4484), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4486), [sym_float_literal] = ACTIONS(4486), [sym__string] = ACTIONS(4486), }, [1671] = { [sym_identifier] = ACTIONS(5072), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5074), [anon_sym_RBRACE] = ACTIONS(5074), [anon_sym_LBRACE] = ACTIONS(5074), [anon_sym_DOT] = ACTIONS(5074), [anon_sym_AMP] = ACTIONS(5074), [anon_sym_DASH] = ACTIONS(5072), [anon_sym_DASH_DASH] = ACTIONS(5074), [anon_sym_PLUS] = ACTIONS(5072), [anon_sym_PLUS_PLUS] = ACTIONS(5074), [anon_sym_BANG] = ACTIONS(5074), [anon_sym_LPAREN] = ACTIONS(5074), [anon_sym_RPAREN] = ACTIONS(5074), [anon_sym_LBRACK] = ACTIONS(5074), [anon_sym_SEMI] = ACTIONS(5074), [anon_sym_DOLLAR] = ACTIONS(5074), [anon_sym_STAR] = ACTIONS(5074), [anon_sym_TILDE] = ACTIONS(5074), [anon_sym_AT] = ACTIONS(5074), [sym_bool] = ACTIONS(5072), [sym_byte] = ACTIONS(5072), [sym_ubyte] = ACTIONS(5072), [sym_char] = ACTIONS(5072), [sym_short] = ACTIONS(5072), [sym_ushort] = ACTIONS(5072), [sym_int] = ACTIONS(5072), [sym_uint] = ACTIONS(5072), [sym_long] = ACTIONS(5072), [sym_ulong] = ACTIONS(5072), [sym_cent] = ACTIONS(5072), [sym_ucent] = ACTIONS(5072), [sym_wchar] = ACTIONS(5072), [sym_dchar] = ACTIONS(5072), [sym_float] = ACTIONS(5072), [sym_double] = ACTIONS(5072), [sym_real] = ACTIONS(5072), [sym_ifloat] = ACTIONS(5072), [sym_idouble] = ACTIONS(5072), [sym_ireal] = ACTIONS(5072), [sym_cfloat] = ACTIONS(5072), [sym_cdouble] = ACTIONS(5072), [sym_creal] = ACTIONS(5072), [sym_size_t] = ACTIONS(5072), [sym_ptrdiff_t] = ACTIONS(5072), [sym_string] = ACTIONS(5072), [sym_cstring] = ACTIONS(5072), [sym_dstring] = ACTIONS(5072), [sym_wstring] = ACTIONS(5072), [sym_noreturn] = ACTIONS(5072), [sym_true] = ACTIONS(5072), [sym_false] = ACTIONS(5072), [sym_null] = ACTIONS(5072), [sym_super] = ACTIONS(5072), [sym_this] = ACTIONS(5072), [sym_abstract] = ACTIONS(5072), [sym_alias] = ACTIONS(5072), [sym_align] = ACTIONS(5072), [sym_asm] = ACTIONS(5072), [sym_assert] = ACTIONS(5072), [sym_auto] = ACTIONS(5072), [sym_break] = ACTIONS(5072), [sym_case] = ACTIONS(5072), [sym_cast] = ACTIONS(5072), [sym_class] = ACTIONS(5072), [sym_const] = ACTIONS(5072), [sym_continue] = ACTIONS(5072), [sym_debug] = ACTIONS(5072), [sym_default] = ACTIONS(5072), [sym_delegate] = ACTIONS(5072), [sym_delete] = ACTIONS(5072), [sym_deprecated] = ACTIONS(5072), [sym_do] = ACTIONS(5072), [sym_else] = ACTIONS(5072), [sym_enum] = ACTIONS(5072), [sym_export] = ACTIONS(5072), [sym_extern] = ACTIONS(5072), [sym_final] = ACTIONS(5072), [sym_for] = ACTIONS(5072), [sym_foreach] = ACTIONS(5072), [sym_foreach_reverse] = ACTIONS(5072), [sym_function] = ACTIONS(5072), [sym_goto] = ACTIONS(5072), [sym_if] = ACTIONS(5072), [sym_immutable] = ACTIONS(5072), [sym_import] = ACTIONS(5072), [sym_in] = ACTIONS(5072), [sym_inout] = ACTIONS(5072), [sym_interface] = ACTIONS(5072), [sym_invariant] = ACTIONS(5072), [sym_is] = ACTIONS(5072), [sym_mixin] = ACTIONS(5072), [sym_new] = ACTIONS(5072), [sym_nothrow] = ACTIONS(5072), [sym_out] = ACTIONS(5072), [sym_override] = ACTIONS(5072), [sym_package] = ACTIONS(5072), [sym_pragma] = ACTIONS(5072), [sym_private] = ACTIONS(5072), [sym_protected] = ACTIONS(5072), [sym_public] = ACTIONS(5072), [sym_pure] = ACTIONS(5072), [sym_ref] = ACTIONS(5072), [sym_return] = ACTIONS(5072), [sym_scope] = ACTIONS(5072), [sym_shared] = ACTIONS(5072), [sym_static] = ACTIONS(5072), [sym_struct] = ACTIONS(5072), [sym_switch] = ACTIONS(5072), [sym_synchronized] = ACTIONS(5072), [sym_template] = ACTIONS(5072), [sym_throw] = ACTIONS(5072), [sym_try] = ACTIONS(5072), [sym_typeid] = ACTIONS(5072), [sym_typeof] = ACTIONS(5072), [sym_union] = ACTIONS(5072), [sym_unittest] = ACTIONS(5072), [sym_version] = ACTIONS(5072), [sym_while] = ACTIONS(5072), [sym_with] = ACTIONS(5072), [sym_gshared] = ACTIONS(5072), [sym_traits] = ACTIONS(5072), [sym_vector] = ACTIONS(5072), [sym_void] = ACTIONS(5072), [anon_sym_BQUOTE] = ACTIONS(5074), [anon_sym_r_DQUOTE] = ACTIONS(5074), [anon_sym_x_DQUOTE] = ACTIONS(5074), [anon_sym_DQUOTE] = ACTIONS(5074), [anon_sym_i_BQUOTE] = ACTIONS(5074), [anon_sym_i_DQUOTE] = ACTIONS(5074), [anon_sym_iq_LBRACE] = ACTIONS(5074), [aux_sym_char_literal_token1] = ACTIONS(5074), [anon_sym_SQUOTE] = ACTIONS(5072), [anon_sym___DATE__] = ACTIONS(5072), [anon_sym___FILE__] = ACTIONS(5072), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5072), [anon_sym___FUNCTION__] = ACTIONS(5072), [anon_sym___LINE__] = ACTIONS(5072), [anon_sym___MODULE__] = ACTIONS(5072), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5072), [anon_sym___TIME__] = ACTIONS(5072), [anon_sym___TIMESTAMP__] = ACTIONS(5072), [anon_sym___VENDOR__] = ACTIONS(5072), [anon_sym___VERSION__] = ACTIONS(5072), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5074), [sym_float_literal] = ACTIONS(5074), [sym__string] = ACTIONS(5074), }, [1672] = { [sym_identifier] = ACTIONS(4690), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4692), [anon_sym_RBRACE] = ACTIONS(4692), [anon_sym_LBRACE] = ACTIONS(4692), [anon_sym_DOT] = ACTIONS(4692), [anon_sym_AMP] = ACTIONS(4692), [anon_sym_DASH] = ACTIONS(4690), [anon_sym_DASH_DASH] = ACTIONS(4692), [anon_sym_PLUS] = ACTIONS(4690), [anon_sym_PLUS_PLUS] = ACTIONS(4692), [anon_sym_BANG] = ACTIONS(4692), [anon_sym_LPAREN] = ACTIONS(4692), [anon_sym_RPAREN] = ACTIONS(4692), [anon_sym_LBRACK] = ACTIONS(4692), [anon_sym_SEMI] = ACTIONS(4692), [anon_sym_DOLLAR] = ACTIONS(4692), [anon_sym_STAR] = ACTIONS(4692), [anon_sym_TILDE] = ACTIONS(4692), [anon_sym_AT] = ACTIONS(4692), [sym_bool] = ACTIONS(4690), [sym_byte] = ACTIONS(4690), [sym_ubyte] = ACTIONS(4690), [sym_char] = ACTIONS(4690), [sym_short] = ACTIONS(4690), [sym_ushort] = ACTIONS(4690), [sym_int] = ACTIONS(4690), [sym_uint] = ACTIONS(4690), [sym_long] = ACTIONS(4690), [sym_ulong] = ACTIONS(4690), [sym_cent] = ACTIONS(4690), [sym_ucent] = ACTIONS(4690), [sym_wchar] = ACTIONS(4690), [sym_dchar] = ACTIONS(4690), [sym_float] = ACTIONS(4690), [sym_double] = ACTIONS(4690), [sym_real] = ACTIONS(4690), [sym_ifloat] = ACTIONS(4690), [sym_idouble] = ACTIONS(4690), [sym_ireal] = ACTIONS(4690), [sym_cfloat] = ACTIONS(4690), [sym_cdouble] = ACTIONS(4690), [sym_creal] = ACTIONS(4690), [sym_size_t] = ACTIONS(4690), [sym_ptrdiff_t] = ACTIONS(4690), [sym_string] = ACTIONS(4690), [sym_cstring] = ACTIONS(4690), [sym_dstring] = ACTIONS(4690), [sym_wstring] = ACTIONS(4690), [sym_noreturn] = ACTIONS(4690), [sym_true] = ACTIONS(4690), [sym_false] = ACTIONS(4690), [sym_null] = ACTIONS(4690), [sym_super] = ACTIONS(4690), [sym_this] = ACTIONS(4690), [sym_abstract] = ACTIONS(4690), [sym_alias] = ACTIONS(4690), [sym_align] = ACTIONS(4690), [sym_asm] = ACTIONS(4690), [sym_assert] = ACTIONS(4690), [sym_auto] = ACTIONS(4690), [sym_break] = ACTIONS(4690), [sym_case] = ACTIONS(4690), [sym_cast] = ACTIONS(4690), [sym_class] = ACTIONS(4690), [sym_const] = ACTIONS(4690), [sym_continue] = ACTIONS(4690), [sym_debug] = ACTIONS(4690), [sym_default] = ACTIONS(4690), [sym_delegate] = ACTIONS(4690), [sym_delete] = ACTIONS(4690), [sym_deprecated] = ACTIONS(4690), [sym_do] = ACTIONS(4690), [sym_else] = ACTIONS(4690), [sym_enum] = ACTIONS(4690), [sym_export] = ACTIONS(4690), [sym_extern] = ACTIONS(4690), [sym_final] = ACTIONS(4690), [sym_for] = ACTIONS(4690), [sym_foreach] = ACTIONS(4690), [sym_foreach_reverse] = ACTIONS(4690), [sym_function] = ACTIONS(4690), [sym_goto] = ACTIONS(4690), [sym_if] = ACTIONS(4690), [sym_immutable] = ACTIONS(4690), [sym_import] = ACTIONS(4690), [sym_in] = ACTIONS(4690), [sym_inout] = ACTIONS(4690), [sym_interface] = ACTIONS(4690), [sym_invariant] = ACTIONS(4690), [sym_is] = ACTIONS(4690), [sym_mixin] = ACTIONS(4690), [sym_new] = ACTIONS(4690), [sym_nothrow] = ACTIONS(4690), [sym_out] = ACTIONS(4690), [sym_override] = ACTIONS(4690), [sym_package] = ACTIONS(4690), [sym_pragma] = ACTIONS(4690), [sym_private] = ACTIONS(4690), [sym_protected] = ACTIONS(4690), [sym_public] = ACTIONS(4690), [sym_pure] = ACTIONS(4690), [sym_ref] = ACTIONS(4690), [sym_return] = ACTIONS(4690), [sym_scope] = ACTIONS(4690), [sym_shared] = ACTIONS(4690), [sym_static] = ACTIONS(4690), [sym_struct] = ACTIONS(4690), [sym_switch] = ACTIONS(4690), [sym_synchronized] = ACTIONS(4690), [sym_template] = ACTIONS(4690), [sym_throw] = ACTIONS(4690), [sym_try] = ACTIONS(4690), [sym_typeid] = ACTIONS(4690), [sym_typeof] = ACTIONS(4690), [sym_union] = ACTIONS(4690), [sym_unittest] = ACTIONS(4690), [sym_version] = ACTIONS(4690), [sym_while] = ACTIONS(4690), [sym_with] = ACTIONS(4690), [sym_gshared] = ACTIONS(4690), [sym_traits] = ACTIONS(4690), [sym_vector] = ACTIONS(4690), [sym_void] = ACTIONS(4690), [anon_sym_BQUOTE] = ACTIONS(4692), [anon_sym_r_DQUOTE] = ACTIONS(4692), [anon_sym_x_DQUOTE] = ACTIONS(4692), [anon_sym_DQUOTE] = ACTIONS(4692), [anon_sym_i_BQUOTE] = ACTIONS(4692), [anon_sym_i_DQUOTE] = ACTIONS(4692), [anon_sym_iq_LBRACE] = ACTIONS(4692), [aux_sym_char_literal_token1] = ACTIONS(4692), [anon_sym_SQUOTE] = ACTIONS(4690), [anon_sym___DATE__] = ACTIONS(4690), [anon_sym___FILE__] = ACTIONS(4690), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4690), [anon_sym___FUNCTION__] = ACTIONS(4690), [anon_sym___LINE__] = ACTIONS(4690), [anon_sym___MODULE__] = ACTIONS(4690), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4690), [anon_sym___TIME__] = ACTIONS(4690), [anon_sym___TIMESTAMP__] = ACTIONS(4690), [anon_sym___VENDOR__] = ACTIONS(4690), [anon_sym___VERSION__] = ACTIONS(4690), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4692), [sym_float_literal] = ACTIONS(4692), [sym__string] = ACTIONS(4692), }, [1673] = { [sym_identifier] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(2643), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2643), [anon_sym_AT] = ACTIONS(2643), [sym_bool] = ACTIONS(2645), [sym_byte] = ACTIONS(2645), [sym_ubyte] = ACTIONS(2645), [sym_char] = ACTIONS(2645), [sym_short] = ACTIONS(2645), [sym_ushort] = ACTIONS(2645), [sym_int] = ACTIONS(2645), [sym_uint] = ACTIONS(2645), [sym_long] = ACTIONS(2645), [sym_ulong] = ACTIONS(2645), [sym_cent] = ACTIONS(2645), [sym_ucent] = ACTIONS(2645), [sym_wchar] = ACTIONS(2645), [sym_dchar] = ACTIONS(2645), [sym_float] = ACTIONS(2645), [sym_double] = ACTIONS(2645), [sym_real] = ACTIONS(2645), [sym_ifloat] = ACTIONS(2645), [sym_idouble] = ACTIONS(2645), [sym_ireal] = ACTIONS(2645), [sym_cfloat] = ACTIONS(2645), [sym_cdouble] = ACTIONS(2645), [sym_creal] = ACTIONS(2645), [sym_size_t] = ACTIONS(2645), [sym_ptrdiff_t] = ACTIONS(2645), [sym_string] = ACTIONS(2645), [sym_cstring] = ACTIONS(2645), [sym_dstring] = ACTIONS(2645), [sym_wstring] = ACTIONS(2645), [sym_noreturn] = ACTIONS(2645), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2645), [sym_abstract] = ACTIONS(2645), [sym_alias] = ACTIONS(2645), [sym_align] = ACTIONS(2645), [sym_asm] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(2645), [sym_break] = ACTIONS(2645), [sym_case] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_class] = ACTIONS(2645), [sym_const] = ACTIONS(2645), [sym_continue] = ACTIONS(2645), [sym_debug] = ACTIONS(2645), [sym_default] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_deprecated] = ACTIONS(2645), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(2645), [sym_export] = ACTIONS(2645), [sym_extern] = ACTIONS(2645), [sym_final] = ACTIONS(2645), [sym_for] = ACTIONS(2645), [sym_foreach] = ACTIONS(2645), [sym_foreach_reverse] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_goto] = ACTIONS(2645), [sym_if] = ACTIONS(2645), [sym_immutable] = ACTIONS(2645), [sym_import] = ACTIONS(2645), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(2645), [sym_interface] = ACTIONS(2645), [sym_invariant] = ACTIONS(2645), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2645), [sym_new] = ACTIONS(2645), [sym_nothrow] = ACTIONS(2645), [sym_out] = ACTIONS(2645), [sym_override] = ACTIONS(2645), [sym_package] = ACTIONS(2645), [sym_pragma] = ACTIONS(2645), [sym_private] = ACTIONS(2645), [sym_protected] = ACTIONS(2645), [sym_public] = ACTIONS(2645), [sym_pure] = ACTIONS(2645), [sym_ref] = ACTIONS(2645), [sym_return] = ACTIONS(2645), [sym_scope] = ACTIONS(2645), [sym_shared] = ACTIONS(2645), [sym_static] = ACTIONS(2645), [sym_struct] = ACTIONS(2645), [sym_switch] = ACTIONS(2645), [sym_synchronized] = ACTIONS(2645), [sym_template] = ACTIONS(2645), [sym_throw] = ACTIONS(2645), [sym_try] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(2645), [sym_union] = ACTIONS(2645), [sym_unittest] = ACTIONS(2645), [sym_version] = ACTIONS(2645), [sym_while] = ACTIONS(2645), [sym_with] = ACTIONS(2645), [sym_gshared] = ACTIONS(2645), [sym_traits] = ACTIONS(2645), [sym_vector] = ACTIONS(2645), [sym_void] = ACTIONS(2645), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [1674] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4299), [anon_sym_RBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(4299), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_AMP] = ACTIONS(4299), [anon_sym_DASH] = ACTIONS(4297), [anon_sym_DASH_DASH] = ACTIONS(4299), [anon_sym_PLUS] = ACTIONS(4297), [anon_sym_PLUS_PLUS] = ACTIONS(4299), [anon_sym_BANG] = ACTIONS(4299), [anon_sym_LPAREN] = ACTIONS(4299), [anon_sym_RPAREN] = ACTIONS(4299), [anon_sym_LBRACK] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(4299), [anon_sym_DOLLAR] = ACTIONS(4299), [anon_sym_STAR] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_true] = ACTIONS(4297), [sym_false] = ACTIONS(4297), [sym_null] = ACTIONS(4297), [sym_super] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_asm] = ACTIONS(4297), [sym_assert] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_break] = ACTIONS(4297), [sym_case] = ACTIONS(4297), [sym_cast] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_continue] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_default] = ACTIONS(4297), [sym_delegate] = ACTIONS(4297), [sym_delete] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(4297), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_for] = ACTIONS(4297), [sym_foreach] = ACTIONS(4297), [sym_foreach_reverse] = ACTIONS(4297), [sym_function] = ACTIONS(4297), [sym_goto] = ACTIONS(4297), [sym_if] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(4297), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_is] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_new] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(4297), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_switch] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_throw] = ACTIONS(4297), [sym_try] = ACTIONS(4297), [sym_typeid] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_with] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [anon_sym_BQUOTE] = ACTIONS(4299), [anon_sym_r_DQUOTE] = ACTIONS(4299), [anon_sym_x_DQUOTE] = ACTIONS(4299), [anon_sym_DQUOTE] = ACTIONS(4299), [anon_sym_i_BQUOTE] = ACTIONS(4299), [anon_sym_i_DQUOTE] = ACTIONS(4299), [anon_sym_iq_LBRACE] = ACTIONS(4299), [aux_sym_char_literal_token1] = ACTIONS(4299), [anon_sym_SQUOTE] = ACTIONS(4297), [anon_sym___DATE__] = ACTIONS(4297), [anon_sym___FILE__] = ACTIONS(4297), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4297), [anon_sym___FUNCTION__] = ACTIONS(4297), [anon_sym___LINE__] = ACTIONS(4297), [anon_sym___MODULE__] = ACTIONS(4297), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4297), [anon_sym___TIME__] = ACTIONS(4297), [anon_sym___TIMESTAMP__] = ACTIONS(4297), [anon_sym___VENDOR__] = ACTIONS(4297), [anon_sym___VERSION__] = ACTIONS(4297), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4299), [sym_float_literal] = ACTIONS(4299), [sym__string] = ACTIONS(4299), }, [1675] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_RBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [anon_sym_AT] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_abstract] = ACTIONS(4359), [sym_alias] = ACTIONS(4359), [sym_align] = ACTIONS(4359), [sym_asm] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_break] = ACTIONS(4359), [sym_case] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_class] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_continue] = ACTIONS(4359), [sym_debug] = ACTIONS(4359), [sym_default] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_deprecated] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(5107), [sym_enum] = ACTIONS(4359), [sym_export] = ACTIONS(4359), [sym_extern] = ACTIONS(4359), [sym_final] = ACTIONS(4359), [sym_for] = ACTIONS(4359), [sym_foreach] = ACTIONS(4359), [sym_foreach_reverse] = ACTIONS(4359), [sym_function] = ACTIONS(4359), [sym_goto] = ACTIONS(4359), [sym_if] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_interface] = ACTIONS(4359), [sym_invariant] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_nothrow] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_override] = ACTIONS(4359), [sym_package] = ACTIONS(4359), [sym_pragma] = ACTIONS(4359), [sym_private] = ACTIONS(4359), [sym_protected] = ACTIONS(4359), [sym_public] = ACTIONS(4359), [sym_pure] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_return] = ACTIONS(4359), [sym_scope] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_static] = ACTIONS(4359), [sym_struct] = ACTIONS(4359), [sym_switch] = ACTIONS(4359), [sym_synchronized] = ACTIONS(4359), [sym_template] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_try] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_union] = ACTIONS(4359), [sym_unittest] = ACTIONS(4359), [sym_version] = ACTIONS(4359), [sym_while] = ACTIONS(4359), [sym_with] = ACTIONS(4359), [sym_gshared] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [1676] = { [sym_identifier] = ACTIONS(4570), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4572), [anon_sym_RBRACE] = ACTIONS(4572), [anon_sym_LBRACE] = ACTIONS(4572), [anon_sym_DOT] = ACTIONS(4572), [anon_sym_AMP] = ACTIONS(4572), [anon_sym_DASH] = ACTIONS(4570), [anon_sym_DASH_DASH] = ACTIONS(4572), [anon_sym_PLUS] = ACTIONS(4570), [anon_sym_PLUS_PLUS] = ACTIONS(4572), [anon_sym_BANG] = ACTIONS(4572), [anon_sym_LPAREN] = ACTIONS(4572), [anon_sym_RPAREN] = ACTIONS(4572), [anon_sym_LBRACK] = ACTIONS(4572), [anon_sym_SEMI] = ACTIONS(4572), [anon_sym_DOLLAR] = ACTIONS(4572), [anon_sym_STAR] = ACTIONS(4572), [anon_sym_TILDE] = ACTIONS(4572), [anon_sym_AT] = ACTIONS(4572), [sym_bool] = ACTIONS(4570), [sym_byte] = ACTIONS(4570), [sym_ubyte] = ACTIONS(4570), [sym_char] = ACTIONS(4570), [sym_short] = ACTIONS(4570), [sym_ushort] = ACTIONS(4570), [sym_int] = ACTIONS(4570), [sym_uint] = ACTIONS(4570), [sym_long] = ACTIONS(4570), [sym_ulong] = ACTIONS(4570), [sym_cent] = ACTIONS(4570), [sym_ucent] = ACTIONS(4570), [sym_wchar] = ACTIONS(4570), [sym_dchar] = ACTIONS(4570), [sym_float] = ACTIONS(4570), [sym_double] = ACTIONS(4570), [sym_real] = ACTIONS(4570), [sym_ifloat] = ACTIONS(4570), [sym_idouble] = ACTIONS(4570), [sym_ireal] = ACTIONS(4570), [sym_cfloat] = ACTIONS(4570), [sym_cdouble] = ACTIONS(4570), [sym_creal] = ACTIONS(4570), [sym_size_t] = ACTIONS(4570), [sym_ptrdiff_t] = ACTIONS(4570), [sym_string] = ACTIONS(4570), [sym_cstring] = ACTIONS(4570), [sym_dstring] = ACTIONS(4570), [sym_wstring] = ACTIONS(4570), [sym_noreturn] = ACTIONS(4570), [sym_true] = ACTIONS(4570), [sym_false] = ACTIONS(4570), [sym_null] = ACTIONS(4570), [sym_super] = ACTIONS(4570), [sym_this] = ACTIONS(4570), [sym_abstract] = ACTIONS(4570), [sym_alias] = ACTIONS(4570), [sym_align] = ACTIONS(4570), [sym_asm] = ACTIONS(4570), [sym_assert] = ACTIONS(4570), [sym_auto] = ACTIONS(4570), [sym_break] = ACTIONS(4570), [sym_case] = ACTIONS(4570), [sym_cast] = ACTIONS(4570), [sym_class] = ACTIONS(4570), [sym_const] = ACTIONS(4570), [sym_continue] = ACTIONS(4570), [sym_debug] = ACTIONS(4570), [sym_default] = ACTIONS(4570), [sym_delegate] = ACTIONS(4570), [sym_delete] = ACTIONS(4570), [sym_deprecated] = ACTIONS(4570), [sym_do] = ACTIONS(4570), [sym_else] = ACTIONS(4570), [sym_enum] = ACTIONS(4570), [sym_export] = ACTIONS(4570), [sym_extern] = ACTIONS(4570), [sym_final] = ACTIONS(4570), [sym_for] = ACTIONS(4570), [sym_foreach] = ACTIONS(4570), [sym_foreach_reverse] = ACTIONS(4570), [sym_function] = ACTIONS(4570), [sym_goto] = ACTIONS(4570), [sym_if] = ACTIONS(4570), [sym_immutable] = ACTIONS(4570), [sym_import] = ACTIONS(4570), [sym_in] = ACTIONS(4570), [sym_inout] = ACTIONS(4570), [sym_interface] = ACTIONS(4570), [sym_invariant] = ACTIONS(4570), [sym_is] = ACTIONS(4570), [sym_mixin] = ACTIONS(4570), [sym_new] = ACTIONS(4570), [sym_nothrow] = ACTIONS(4570), [sym_out] = ACTIONS(4570), [sym_override] = ACTIONS(4570), [sym_package] = ACTIONS(4570), [sym_pragma] = ACTIONS(4570), [sym_private] = ACTIONS(4570), [sym_protected] = ACTIONS(4570), [sym_public] = ACTIONS(4570), [sym_pure] = ACTIONS(4570), [sym_ref] = ACTIONS(4570), [sym_return] = ACTIONS(4570), [sym_scope] = ACTIONS(4570), [sym_shared] = ACTIONS(4570), [sym_static] = ACTIONS(4570), [sym_struct] = ACTIONS(4570), [sym_switch] = ACTIONS(4570), [sym_synchronized] = ACTIONS(4570), [sym_template] = ACTIONS(4570), [sym_throw] = ACTIONS(4570), [sym_try] = ACTIONS(4570), [sym_typeid] = ACTIONS(4570), [sym_typeof] = ACTIONS(4570), [sym_union] = ACTIONS(4570), [sym_unittest] = ACTIONS(4570), [sym_version] = ACTIONS(4570), [sym_while] = ACTIONS(4570), [sym_with] = ACTIONS(4570), [sym_gshared] = ACTIONS(4570), [sym_traits] = ACTIONS(4570), [sym_vector] = ACTIONS(4570), [sym_void] = ACTIONS(4570), [anon_sym_BQUOTE] = ACTIONS(4572), [anon_sym_r_DQUOTE] = ACTIONS(4572), [anon_sym_x_DQUOTE] = ACTIONS(4572), [anon_sym_DQUOTE] = ACTIONS(4572), [anon_sym_i_BQUOTE] = ACTIONS(4572), [anon_sym_i_DQUOTE] = ACTIONS(4572), [anon_sym_iq_LBRACE] = ACTIONS(4572), [aux_sym_char_literal_token1] = ACTIONS(4572), [anon_sym_SQUOTE] = ACTIONS(4570), [anon_sym___DATE__] = ACTIONS(4570), [anon_sym___FILE__] = ACTIONS(4570), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4570), [anon_sym___FUNCTION__] = ACTIONS(4570), [anon_sym___LINE__] = ACTIONS(4570), [anon_sym___MODULE__] = ACTIONS(4570), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4570), [anon_sym___TIME__] = ACTIONS(4570), [anon_sym___TIMESTAMP__] = ACTIONS(4570), [anon_sym___VENDOR__] = ACTIONS(4570), [anon_sym___VERSION__] = ACTIONS(4570), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4572), [sym_float_literal] = ACTIONS(4572), [sym__string] = ACTIONS(4572), }, [1677] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4299), [anon_sym_RBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(5084), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_AMP] = ACTIONS(4299), [anon_sym_DASH] = ACTIONS(4297), [anon_sym_DASH_DASH] = ACTIONS(4299), [anon_sym_PLUS] = ACTIONS(4297), [anon_sym_PLUS_PLUS] = ACTIONS(4299), [anon_sym_BANG] = ACTIONS(4299), [anon_sym_LPAREN] = ACTIONS(4299), [anon_sym_RPAREN] = ACTIONS(4299), [anon_sym_LBRACK] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(5084), [anon_sym_DOLLAR] = ACTIONS(4299), [anon_sym_STAR] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_true] = ACTIONS(4297), [sym_false] = ACTIONS(4297), [sym_null] = ACTIONS(4297), [sym_super] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_asm] = ACTIONS(4297), [sym_assert] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_break] = ACTIONS(4297), [sym_case] = ACTIONS(4297), [sym_cast] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_continue] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_default] = ACTIONS(4297), [sym_delegate] = ACTIONS(4297), [sym_delete] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(5087), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_for] = ACTIONS(4297), [sym_foreach] = ACTIONS(4297), [sym_foreach_reverse] = ACTIONS(4297), [sym_function] = ACTIONS(4297), [sym_goto] = ACTIONS(4297), [sym_if] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(5087), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_is] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_new] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(5087), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_switch] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_throw] = ACTIONS(4297), [sym_try] = ACTIONS(4297), [sym_typeid] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_with] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [anon_sym_BQUOTE] = ACTIONS(4299), [anon_sym_r_DQUOTE] = ACTIONS(4299), [anon_sym_x_DQUOTE] = ACTIONS(4299), [anon_sym_DQUOTE] = ACTIONS(4299), [anon_sym_i_BQUOTE] = ACTIONS(4299), [anon_sym_i_DQUOTE] = ACTIONS(4299), [anon_sym_iq_LBRACE] = ACTIONS(4299), [aux_sym_char_literal_token1] = ACTIONS(4299), [anon_sym_SQUOTE] = ACTIONS(4297), [anon_sym___DATE__] = ACTIONS(4297), [anon_sym___FILE__] = ACTIONS(4297), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4297), [anon_sym___FUNCTION__] = ACTIONS(4297), [anon_sym___LINE__] = ACTIONS(4297), [anon_sym___MODULE__] = ACTIONS(4297), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4297), [anon_sym___TIME__] = ACTIONS(4297), [anon_sym___TIMESTAMP__] = ACTIONS(4297), [anon_sym___VENDOR__] = ACTIONS(4297), [anon_sym___VERSION__] = ACTIONS(4297), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4299), [sym_float_literal] = ACTIONS(4299), [sym__string] = ACTIONS(4299), }, [1678] = { [sym_identifier] = ACTIONS(4476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4478), [anon_sym_RBRACE] = ACTIONS(4478), [anon_sym_LBRACE] = ACTIONS(4478), [anon_sym_DOT] = ACTIONS(4478), [anon_sym_AMP] = ACTIONS(4478), [anon_sym_DASH] = ACTIONS(4476), [anon_sym_DASH_DASH] = ACTIONS(4478), [anon_sym_PLUS] = ACTIONS(4476), [anon_sym_PLUS_PLUS] = ACTIONS(4478), [anon_sym_BANG] = ACTIONS(4478), [anon_sym_LPAREN] = ACTIONS(4478), [anon_sym_RPAREN] = ACTIONS(4478), [anon_sym_LBRACK] = ACTIONS(4478), [anon_sym_SEMI] = ACTIONS(4478), [anon_sym_DOLLAR] = ACTIONS(4478), [anon_sym_STAR] = ACTIONS(4478), [anon_sym_TILDE] = ACTIONS(4478), [anon_sym_AT] = ACTIONS(4478), [sym_bool] = ACTIONS(4476), [sym_byte] = ACTIONS(4476), [sym_ubyte] = ACTIONS(4476), [sym_char] = ACTIONS(4476), [sym_short] = ACTIONS(4476), [sym_ushort] = ACTIONS(4476), [sym_int] = ACTIONS(4476), [sym_uint] = ACTIONS(4476), [sym_long] = ACTIONS(4476), [sym_ulong] = ACTIONS(4476), [sym_cent] = ACTIONS(4476), [sym_ucent] = ACTIONS(4476), [sym_wchar] = ACTIONS(4476), [sym_dchar] = ACTIONS(4476), [sym_float] = ACTIONS(4476), [sym_double] = ACTIONS(4476), [sym_real] = ACTIONS(4476), [sym_ifloat] = ACTIONS(4476), [sym_idouble] = ACTIONS(4476), [sym_ireal] = ACTIONS(4476), [sym_cfloat] = ACTIONS(4476), [sym_cdouble] = ACTIONS(4476), [sym_creal] = ACTIONS(4476), [sym_size_t] = ACTIONS(4476), [sym_ptrdiff_t] = ACTIONS(4476), [sym_string] = ACTIONS(4476), [sym_cstring] = ACTIONS(4476), [sym_dstring] = ACTIONS(4476), [sym_wstring] = ACTIONS(4476), [sym_noreturn] = ACTIONS(4476), [sym_true] = ACTIONS(4476), [sym_false] = ACTIONS(4476), [sym_null] = ACTIONS(4476), [sym_super] = ACTIONS(4476), [sym_this] = ACTIONS(4476), [sym_abstract] = ACTIONS(4476), [sym_alias] = ACTIONS(4476), [sym_align] = ACTIONS(4476), [sym_asm] = ACTIONS(4476), [sym_assert] = ACTIONS(4476), [sym_auto] = ACTIONS(4476), [sym_break] = ACTIONS(4476), [sym_case] = ACTIONS(4476), [sym_cast] = ACTIONS(4476), [sym_class] = ACTIONS(4476), [sym_const] = ACTIONS(4476), [sym_continue] = ACTIONS(4476), [sym_debug] = ACTIONS(4476), [sym_default] = ACTIONS(4476), [sym_delegate] = ACTIONS(4476), [sym_delete] = ACTIONS(4476), [sym_deprecated] = ACTIONS(4476), [sym_do] = ACTIONS(4476), [sym_else] = ACTIONS(4476), [sym_enum] = ACTIONS(4476), [sym_export] = ACTIONS(4476), [sym_extern] = ACTIONS(4476), [sym_final] = ACTIONS(4476), [sym_for] = ACTIONS(4476), [sym_foreach] = ACTIONS(4476), [sym_foreach_reverse] = ACTIONS(4476), [sym_function] = ACTIONS(4476), [sym_goto] = ACTIONS(4476), [sym_if] = ACTIONS(4476), [sym_immutable] = ACTIONS(4476), [sym_import] = ACTIONS(4476), [sym_in] = ACTIONS(4476), [sym_inout] = ACTIONS(4476), [sym_interface] = ACTIONS(4476), [sym_invariant] = ACTIONS(4476), [sym_is] = ACTIONS(4476), [sym_mixin] = ACTIONS(4476), [sym_new] = ACTIONS(4476), [sym_nothrow] = ACTIONS(4476), [sym_out] = ACTIONS(4476), [sym_override] = ACTIONS(4476), [sym_package] = ACTIONS(4476), [sym_pragma] = ACTIONS(4476), [sym_private] = ACTIONS(4476), [sym_protected] = ACTIONS(4476), [sym_public] = ACTIONS(4476), [sym_pure] = ACTIONS(4476), [sym_ref] = ACTIONS(4476), [sym_return] = ACTIONS(4476), [sym_scope] = ACTIONS(4476), [sym_shared] = ACTIONS(4476), [sym_static] = ACTIONS(4476), [sym_struct] = ACTIONS(4476), [sym_switch] = ACTIONS(4476), [sym_synchronized] = ACTIONS(4476), [sym_template] = ACTIONS(4476), [sym_throw] = ACTIONS(4476), [sym_try] = ACTIONS(4476), [sym_typeid] = ACTIONS(4476), [sym_typeof] = ACTIONS(4476), [sym_union] = ACTIONS(4476), [sym_unittest] = ACTIONS(4476), [sym_version] = ACTIONS(4476), [sym_while] = ACTIONS(4476), [sym_with] = ACTIONS(4476), [sym_gshared] = ACTIONS(4476), [sym_traits] = ACTIONS(4476), [sym_vector] = ACTIONS(4476), [sym_void] = ACTIONS(4476), [anon_sym_BQUOTE] = ACTIONS(4478), [anon_sym_r_DQUOTE] = ACTIONS(4478), [anon_sym_x_DQUOTE] = ACTIONS(4478), [anon_sym_DQUOTE] = ACTIONS(4478), [anon_sym_i_BQUOTE] = ACTIONS(4478), [anon_sym_i_DQUOTE] = ACTIONS(4478), [anon_sym_iq_LBRACE] = ACTIONS(4478), [aux_sym_char_literal_token1] = ACTIONS(4478), [anon_sym_SQUOTE] = ACTIONS(4476), [anon_sym___DATE__] = ACTIONS(4476), [anon_sym___FILE__] = ACTIONS(4476), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4476), [anon_sym___FUNCTION__] = ACTIONS(4476), [anon_sym___LINE__] = ACTIONS(4476), [anon_sym___MODULE__] = ACTIONS(4476), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4476), [anon_sym___TIME__] = ACTIONS(4476), [anon_sym___TIMESTAMP__] = ACTIONS(4476), [anon_sym___VENDOR__] = ACTIONS(4476), [anon_sym___VERSION__] = ACTIONS(4476), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4478), [sym_float_literal] = ACTIONS(4478), [sym__string] = ACTIONS(4478), }, [1679] = { [sym_identifier] = ACTIONS(4468), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4470), [anon_sym_RBRACE] = ACTIONS(4470), [anon_sym_LBRACE] = ACTIONS(4470), [anon_sym_DOT] = ACTIONS(4470), [anon_sym_AMP] = ACTIONS(4470), [anon_sym_DASH] = ACTIONS(4468), [anon_sym_DASH_DASH] = ACTIONS(4470), [anon_sym_PLUS] = ACTIONS(4468), [anon_sym_PLUS_PLUS] = ACTIONS(4470), [anon_sym_BANG] = ACTIONS(4470), [anon_sym_LPAREN] = ACTIONS(4470), [anon_sym_RPAREN] = ACTIONS(4470), [anon_sym_LBRACK] = ACTIONS(4470), [anon_sym_SEMI] = ACTIONS(4470), [anon_sym_DOLLAR] = ACTIONS(4470), [anon_sym_STAR] = ACTIONS(4470), [anon_sym_TILDE] = ACTIONS(4470), [anon_sym_AT] = ACTIONS(4470), [sym_bool] = ACTIONS(4468), [sym_byte] = ACTIONS(4468), [sym_ubyte] = ACTIONS(4468), [sym_char] = ACTIONS(4468), [sym_short] = ACTIONS(4468), [sym_ushort] = ACTIONS(4468), [sym_int] = ACTIONS(4468), [sym_uint] = ACTIONS(4468), [sym_long] = ACTIONS(4468), [sym_ulong] = ACTIONS(4468), [sym_cent] = ACTIONS(4468), [sym_ucent] = ACTIONS(4468), [sym_wchar] = ACTIONS(4468), [sym_dchar] = ACTIONS(4468), [sym_float] = ACTIONS(4468), [sym_double] = ACTIONS(4468), [sym_real] = ACTIONS(4468), [sym_ifloat] = ACTIONS(4468), [sym_idouble] = ACTIONS(4468), [sym_ireal] = ACTIONS(4468), [sym_cfloat] = ACTIONS(4468), [sym_cdouble] = ACTIONS(4468), [sym_creal] = ACTIONS(4468), [sym_size_t] = ACTIONS(4468), [sym_ptrdiff_t] = ACTIONS(4468), [sym_string] = ACTIONS(4468), [sym_cstring] = ACTIONS(4468), [sym_dstring] = ACTIONS(4468), [sym_wstring] = ACTIONS(4468), [sym_noreturn] = ACTIONS(4468), [sym_true] = ACTIONS(4468), [sym_false] = ACTIONS(4468), [sym_null] = ACTIONS(4468), [sym_super] = ACTIONS(4468), [sym_this] = ACTIONS(4468), [sym_abstract] = ACTIONS(4468), [sym_alias] = ACTIONS(4468), [sym_align] = ACTIONS(4468), [sym_asm] = ACTIONS(4468), [sym_assert] = ACTIONS(4468), [sym_auto] = ACTIONS(4468), [sym_break] = ACTIONS(4468), [sym_case] = ACTIONS(4468), [sym_cast] = ACTIONS(4468), [sym_class] = ACTIONS(4468), [sym_const] = ACTIONS(4468), [sym_continue] = ACTIONS(4468), [sym_debug] = ACTIONS(4468), [sym_default] = ACTIONS(4468), [sym_delegate] = ACTIONS(4468), [sym_delete] = ACTIONS(4468), [sym_deprecated] = ACTIONS(4468), [sym_do] = ACTIONS(4468), [sym_else] = ACTIONS(4468), [sym_enum] = ACTIONS(4468), [sym_export] = ACTIONS(4468), [sym_extern] = ACTIONS(4468), [sym_final] = ACTIONS(4468), [sym_for] = ACTIONS(4468), [sym_foreach] = ACTIONS(4468), [sym_foreach_reverse] = ACTIONS(4468), [sym_function] = ACTIONS(4468), [sym_goto] = ACTIONS(4468), [sym_if] = ACTIONS(4468), [sym_immutable] = ACTIONS(4468), [sym_import] = ACTIONS(4468), [sym_in] = ACTIONS(4468), [sym_inout] = ACTIONS(4468), [sym_interface] = ACTIONS(4468), [sym_invariant] = ACTIONS(4468), [sym_is] = ACTIONS(4468), [sym_mixin] = ACTIONS(4468), [sym_new] = ACTIONS(4468), [sym_nothrow] = ACTIONS(4468), [sym_out] = ACTIONS(4468), [sym_override] = ACTIONS(4468), [sym_package] = ACTIONS(4468), [sym_pragma] = ACTIONS(4468), [sym_private] = ACTIONS(4468), [sym_protected] = ACTIONS(4468), [sym_public] = ACTIONS(4468), [sym_pure] = ACTIONS(4468), [sym_ref] = ACTIONS(4468), [sym_return] = ACTIONS(4468), [sym_scope] = ACTIONS(4468), [sym_shared] = ACTIONS(4468), [sym_static] = ACTIONS(4468), [sym_struct] = ACTIONS(4468), [sym_switch] = ACTIONS(4468), [sym_synchronized] = ACTIONS(4468), [sym_template] = ACTIONS(4468), [sym_throw] = ACTIONS(4468), [sym_try] = ACTIONS(4468), [sym_typeid] = ACTIONS(4468), [sym_typeof] = ACTIONS(4468), [sym_union] = ACTIONS(4468), [sym_unittest] = ACTIONS(4468), [sym_version] = ACTIONS(4468), [sym_while] = ACTIONS(4468), [sym_with] = ACTIONS(4468), [sym_gshared] = ACTIONS(4468), [sym_traits] = ACTIONS(4468), [sym_vector] = ACTIONS(4468), [sym_void] = ACTIONS(4468), [anon_sym_BQUOTE] = ACTIONS(4470), [anon_sym_r_DQUOTE] = ACTIONS(4470), [anon_sym_x_DQUOTE] = ACTIONS(4470), [anon_sym_DQUOTE] = ACTIONS(4470), [anon_sym_i_BQUOTE] = ACTIONS(4470), [anon_sym_i_DQUOTE] = ACTIONS(4470), [anon_sym_iq_LBRACE] = ACTIONS(4470), [aux_sym_char_literal_token1] = ACTIONS(4470), [anon_sym_SQUOTE] = ACTIONS(4468), [anon_sym___DATE__] = ACTIONS(4468), [anon_sym___FILE__] = ACTIONS(4468), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4468), [anon_sym___FUNCTION__] = ACTIONS(4468), [anon_sym___LINE__] = ACTIONS(4468), [anon_sym___MODULE__] = ACTIONS(4468), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4468), [anon_sym___TIME__] = ACTIONS(4468), [anon_sym___TIMESTAMP__] = ACTIONS(4468), [anon_sym___VENDOR__] = ACTIONS(4468), [anon_sym___VERSION__] = ACTIONS(4468), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4470), [sym_float_literal] = ACTIONS(4470), [sym__string] = ACTIONS(4470), }, [1680] = { [sym_identifier] = ACTIONS(4766), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4768), [anon_sym_RBRACE] = ACTIONS(4768), [anon_sym_LBRACE] = ACTIONS(4768), [anon_sym_DOT] = ACTIONS(4768), [anon_sym_AMP] = ACTIONS(4768), [anon_sym_DASH] = ACTIONS(4766), [anon_sym_DASH_DASH] = ACTIONS(4768), [anon_sym_PLUS] = ACTIONS(4766), [anon_sym_PLUS_PLUS] = ACTIONS(4768), [anon_sym_BANG] = ACTIONS(4768), [anon_sym_LPAREN] = ACTIONS(4768), [anon_sym_RPAREN] = ACTIONS(4768), [anon_sym_LBRACK] = ACTIONS(4768), [anon_sym_SEMI] = ACTIONS(4768), [anon_sym_DOLLAR] = ACTIONS(4768), [anon_sym_STAR] = ACTIONS(4768), [anon_sym_TILDE] = ACTIONS(4768), [anon_sym_AT] = ACTIONS(4768), [sym_bool] = ACTIONS(4766), [sym_byte] = ACTIONS(4766), [sym_ubyte] = ACTIONS(4766), [sym_char] = ACTIONS(4766), [sym_short] = ACTIONS(4766), [sym_ushort] = ACTIONS(4766), [sym_int] = ACTIONS(4766), [sym_uint] = ACTIONS(4766), [sym_long] = ACTIONS(4766), [sym_ulong] = ACTIONS(4766), [sym_cent] = ACTIONS(4766), [sym_ucent] = ACTIONS(4766), [sym_wchar] = ACTIONS(4766), [sym_dchar] = ACTIONS(4766), [sym_float] = ACTIONS(4766), [sym_double] = ACTIONS(4766), [sym_real] = ACTIONS(4766), [sym_ifloat] = ACTIONS(4766), [sym_idouble] = ACTIONS(4766), [sym_ireal] = ACTIONS(4766), [sym_cfloat] = ACTIONS(4766), [sym_cdouble] = ACTIONS(4766), [sym_creal] = ACTIONS(4766), [sym_size_t] = ACTIONS(4766), [sym_ptrdiff_t] = ACTIONS(4766), [sym_string] = ACTIONS(4766), [sym_cstring] = ACTIONS(4766), [sym_dstring] = ACTIONS(4766), [sym_wstring] = ACTIONS(4766), [sym_noreturn] = ACTIONS(4766), [sym_true] = ACTIONS(4766), [sym_false] = ACTIONS(4766), [sym_null] = ACTIONS(4766), [sym_super] = ACTIONS(4766), [sym_this] = ACTIONS(4766), [sym_abstract] = ACTIONS(4766), [sym_alias] = ACTIONS(4766), [sym_align] = ACTIONS(4766), [sym_asm] = ACTIONS(4766), [sym_assert] = ACTIONS(4766), [sym_auto] = ACTIONS(4766), [sym_break] = ACTIONS(4766), [sym_case] = ACTIONS(4766), [sym_cast] = ACTIONS(4766), [sym_class] = ACTIONS(4766), [sym_const] = ACTIONS(4766), [sym_continue] = ACTIONS(4766), [sym_debug] = ACTIONS(4766), [sym_default] = ACTIONS(4766), [sym_delegate] = ACTIONS(4766), [sym_delete] = ACTIONS(4766), [sym_deprecated] = ACTIONS(4766), [sym_do] = ACTIONS(4766), [sym_else] = ACTIONS(4766), [sym_enum] = ACTIONS(4766), [sym_export] = ACTIONS(4766), [sym_extern] = ACTIONS(4766), [sym_final] = ACTIONS(4766), [sym_for] = ACTIONS(4766), [sym_foreach] = ACTIONS(4766), [sym_foreach_reverse] = ACTIONS(4766), [sym_function] = ACTIONS(4766), [sym_goto] = ACTIONS(4766), [sym_if] = ACTIONS(4766), [sym_immutable] = ACTIONS(4766), [sym_import] = ACTIONS(4766), [sym_in] = ACTIONS(4766), [sym_inout] = ACTIONS(4766), [sym_interface] = ACTIONS(4766), [sym_invariant] = ACTIONS(4766), [sym_is] = ACTIONS(4766), [sym_mixin] = ACTIONS(4766), [sym_new] = ACTIONS(4766), [sym_nothrow] = ACTIONS(4766), [sym_out] = ACTIONS(4766), [sym_override] = ACTIONS(4766), [sym_package] = ACTIONS(4766), [sym_pragma] = ACTIONS(4766), [sym_private] = ACTIONS(4766), [sym_protected] = ACTIONS(4766), [sym_public] = ACTIONS(4766), [sym_pure] = ACTIONS(4766), [sym_ref] = ACTIONS(4766), [sym_return] = ACTIONS(4766), [sym_scope] = ACTIONS(4766), [sym_shared] = ACTIONS(4766), [sym_static] = ACTIONS(4766), [sym_struct] = ACTIONS(4766), [sym_switch] = ACTIONS(4766), [sym_synchronized] = ACTIONS(4766), [sym_template] = ACTIONS(4766), [sym_throw] = ACTIONS(4766), [sym_try] = ACTIONS(4766), [sym_typeid] = ACTIONS(4766), [sym_typeof] = ACTIONS(4766), [sym_union] = ACTIONS(4766), [sym_unittest] = ACTIONS(4766), [sym_version] = ACTIONS(4766), [sym_while] = ACTIONS(4766), [sym_with] = ACTIONS(4766), [sym_gshared] = ACTIONS(4766), [sym_traits] = ACTIONS(4766), [sym_vector] = ACTIONS(4766), [sym_void] = ACTIONS(4766), [anon_sym_BQUOTE] = ACTIONS(4768), [anon_sym_r_DQUOTE] = ACTIONS(4768), [anon_sym_x_DQUOTE] = ACTIONS(4768), [anon_sym_DQUOTE] = ACTIONS(4768), [anon_sym_i_BQUOTE] = ACTIONS(4768), [anon_sym_i_DQUOTE] = ACTIONS(4768), [anon_sym_iq_LBRACE] = ACTIONS(4768), [aux_sym_char_literal_token1] = ACTIONS(4768), [anon_sym_SQUOTE] = ACTIONS(4766), [anon_sym___DATE__] = ACTIONS(4766), [anon_sym___FILE__] = ACTIONS(4766), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4766), [anon_sym___FUNCTION__] = ACTIONS(4766), [anon_sym___LINE__] = ACTIONS(4766), [anon_sym___MODULE__] = ACTIONS(4766), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4766), [anon_sym___TIME__] = ACTIONS(4766), [anon_sym___TIMESTAMP__] = ACTIONS(4766), [anon_sym___VENDOR__] = ACTIONS(4766), [anon_sym___VERSION__] = ACTIONS(4766), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4768), [sym_float_literal] = ACTIONS(4768), [sym__string] = ACTIONS(4768), }, [1681] = { [sym_identifier] = ACTIONS(4770), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4772), [anon_sym_RBRACE] = ACTIONS(4772), [anon_sym_LBRACE] = ACTIONS(4772), [anon_sym_DOT] = ACTIONS(4772), [anon_sym_AMP] = ACTIONS(4772), [anon_sym_DASH] = ACTIONS(4770), [anon_sym_DASH_DASH] = ACTIONS(4772), [anon_sym_PLUS] = ACTIONS(4770), [anon_sym_PLUS_PLUS] = ACTIONS(4772), [anon_sym_BANG] = ACTIONS(4772), [anon_sym_LPAREN] = ACTIONS(4772), [anon_sym_RPAREN] = ACTIONS(4772), [anon_sym_LBRACK] = ACTIONS(4772), [anon_sym_SEMI] = ACTIONS(4772), [anon_sym_DOLLAR] = ACTIONS(4772), [anon_sym_STAR] = ACTIONS(4772), [anon_sym_TILDE] = ACTIONS(4772), [anon_sym_AT] = ACTIONS(4772), [sym_bool] = ACTIONS(4770), [sym_byte] = ACTIONS(4770), [sym_ubyte] = ACTIONS(4770), [sym_char] = ACTIONS(4770), [sym_short] = ACTIONS(4770), [sym_ushort] = ACTIONS(4770), [sym_int] = ACTIONS(4770), [sym_uint] = ACTIONS(4770), [sym_long] = ACTIONS(4770), [sym_ulong] = ACTIONS(4770), [sym_cent] = ACTIONS(4770), [sym_ucent] = ACTIONS(4770), [sym_wchar] = ACTIONS(4770), [sym_dchar] = ACTIONS(4770), [sym_float] = ACTIONS(4770), [sym_double] = ACTIONS(4770), [sym_real] = ACTIONS(4770), [sym_ifloat] = ACTIONS(4770), [sym_idouble] = ACTIONS(4770), [sym_ireal] = ACTIONS(4770), [sym_cfloat] = ACTIONS(4770), [sym_cdouble] = ACTIONS(4770), [sym_creal] = ACTIONS(4770), [sym_size_t] = ACTIONS(4770), [sym_ptrdiff_t] = ACTIONS(4770), [sym_string] = ACTIONS(4770), [sym_cstring] = ACTIONS(4770), [sym_dstring] = ACTIONS(4770), [sym_wstring] = ACTIONS(4770), [sym_noreturn] = ACTIONS(4770), [sym_true] = ACTIONS(4770), [sym_false] = ACTIONS(4770), [sym_null] = ACTIONS(4770), [sym_super] = ACTIONS(4770), [sym_this] = ACTIONS(4770), [sym_abstract] = ACTIONS(4770), [sym_alias] = ACTIONS(4770), [sym_align] = ACTIONS(4770), [sym_asm] = ACTIONS(4770), [sym_assert] = ACTIONS(4770), [sym_auto] = ACTIONS(4770), [sym_break] = ACTIONS(4770), [sym_case] = ACTIONS(4770), [sym_cast] = ACTIONS(4770), [sym_class] = ACTIONS(4770), [sym_const] = ACTIONS(4770), [sym_continue] = ACTIONS(4770), [sym_debug] = ACTIONS(4770), [sym_default] = ACTIONS(4770), [sym_delegate] = ACTIONS(4770), [sym_delete] = ACTIONS(4770), [sym_deprecated] = ACTIONS(4770), [sym_do] = ACTIONS(4770), [sym_else] = ACTIONS(4770), [sym_enum] = ACTIONS(4770), [sym_export] = ACTIONS(4770), [sym_extern] = ACTIONS(4770), [sym_final] = ACTIONS(4770), [sym_for] = ACTIONS(4770), [sym_foreach] = ACTIONS(4770), [sym_foreach_reverse] = ACTIONS(4770), [sym_function] = ACTIONS(4770), [sym_goto] = ACTIONS(4770), [sym_if] = ACTIONS(4770), [sym_immutable] = ACTIONS(4770), [sym_import] = ACTIONS(4770), [sym_in] = ACTIONS(4770), [sym_inout] = ACTIONS(4770), [sym_interface] = ACTIONS(4770), [sym_invariant] = ACTIONS(4770), [sym_is] = ACTIONS(4770), [sym_mixin] = ACTIONS(4770), [sym_new] = ACTIONS(4770), [sym_nothrow] = ACTIONS(4770), [sym_out] = ACTIONS(4770), [sym_override] = ACTIONS(4770), [sym_package] = ACTIONS(4770), [sym_pragma] = ACTIONS(4770), [sym_private] = ACTIONS(4770), [sym_protected] = ACTIONS(4770), [sym_public] = ACTIONS(4770), [sym_pure] = ACTIONS(4770), [sym_ref] = ACTIONS(4770), [sym_return] = ACTIONS(4770), [sym_scope] = ACTIONS(4770), [sym_shared] = ACTIONS(4770), [sym_static] = ACTIONS(4770), [sym_struct] = ACTIONS(4770), [sym_switch] = ACTIONS(4770), [sym_synchronized] = ACTIONS(4770), [sym_template] = ACTIONS(4770), [sym_throw] = ACTIONS(4770), [sym_try] = ACTIONS(4770), [sym_typeid] = ACTIONS(4770), [sym_typeof] = ACTIONS(4770), [sym_union] = ACTIONS(4770), [sym_unittest] = ACTIONS(4770), [sym_version] = ACTIONS(4770), [sym_while] = ACTIONS(4770), [sym_with] = ACTIONS(4770), [sym_gshared] = ACTIONS(4770), [sym_traits] = ACTIONS(4770), [sym_vector] = ACTIONS(4770), [sym_void] = ACTIONS(4770), [anon_sym_BQUOTE] = ACTIONS(4772), [anon_sym_r_DQUOTE] = ACTIONS(4772), [anon_sym_x_DQUOTE] = ACTIONS(4772), [anon_sym_DQUOTE] = ACTIONS(4772), [anon_sym_i_BQUOTE] = ACTIONS(4772), [anon_sym_i_DQUOTE] = ACTIONS(4772), [anon_sym_iq_LBRACE] = ACTIONS(4772), [aux_sym_char_literal_token1] = ACTIONS(4772), [anon_sym_SQUOTE] = ACTIONS(4770), [anon_sym___DATE__] = ACTIONS(4770), [anon_sym___FILE__] = ACTIONS(4770), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4770), [anon_sym___FUNCTION__] = ACTIONS(4770), [anon_sym___LINE__] = ACTIONS(4770), [anon_sym___MODULE__] = ACTIONS(4770), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4770), [anon_sym___TIME__] = ACTIONS(4770), [anon_sym___TIMESTAMP__] = ACTIONS(4770), [anon_sym___VENDOR__] = ACTIONS(4770), [anon_sym___VERSION__] = ACTIONS(4770), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4772), [sym_float_literal] = ACTIONS(4772), [sym__string] = ACTIONS(4772), }, [1682] = { [sym_identifier] = ACTIONS(4778), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4780), [anon_sym_RBRACE] = ACTIONS(4780), [anon_sym_LBRACE] = ACTIONS(4780), [anon_sym_DOT] = ACTIONS(4780), [anon_sym_AMP] = ACTIONS(4780), [anon_sym_DASH] = ACTIONS(4778), [anon_sym_DASH_DASH] = ACTIONS(4780), [anon_sym_PLUS] = ACTIONS(4778), [anon_sym_PLUS_PLUS] = ACTIONS(4780), [anon_sym_BANG] = ACTIONS(4780), [anon_sym_LPAREN] = ACTIONS(4780), [anon_sym_RPAREN] = ACTIONS(4780), [anon_sym_LBRACK] = ACTIONS(4780), [anon_sym_SEMI] = ACTIONS(4780), [anon_sym_DOLLAR] = ACTIONS(4780), [anon_sym_STAR] = ACTIONS(4780), [anon_sym_TILDE] = ACTIONS(4780), [anon_sym_AT] = ACTIONS(4780), [sym_bool] = ACTIONS(4778), [sym_byte] = ACTIONS(4778), [sym_ubyte] = ACTIONS(4778), [sym_char] = ACTIONS(4778), [sym_short] = ACTIONS(4778), [sym_ushort] = ACTIONS(4778), [sym_int] = ACTIONS(4778), [sym_uint] = ACTIONS(4778), [sym_long] = ACTIONS(4778), [sym_ulong] = ACTIONS(4778), [sym_cent] = ACTIONS(4778), [sym_ucent] = ACTIONS(4778), [sym_wchar] = ACTIONS(4778), [sym_dchar] = ACTIONS(4778), [sym_float] = ACTIONS(4778), [sym_double] = ACTIONS(4778), [sym_real] = ACTIONS(4778), [sym_ifloat] = ACTIONS(4778), [sym_idouble] = ACTIONS(4778), [sym_ireal] = ACTIONS(4778), [sym_cfloat] = ACTIONS(4778), [sym_cdouble] = ACTIONS(4778), [sym_creal] = ACTIONS(4778), [sym_size_t] = ACTIONS(4778), [sym_ptrdiff_t] = ACTIONS(4778), [sym_string] = ACTIONS(4778), [sym_cstring] = ACTIONS(4778), [sym_dstring] = ACTIONS(4778), [sym_wstring] = ACTIONS(4778), [sym_noreturn] = ACTIONS(4778), [sym_true] = ACTIONS(4778), [sym_false] = ACTIONS(4778), [sym_null] = ACTIONS(4778), [sym_super] = ACTIONS(4778), [sym_this] = ACTIONS(4778), [sym_abstract] = ACTIONS(4778), [sym_alias] = ACTIONS(4778), [sym_align] = ACTIONS(4778), [sym_asm] = ACTIONS(4778), [sym_assert] = ACTIONS(4778), [sym_auto] = ACTIONS(4778), [sym_break] = ACTIONS(4778), [sym_case] = ACTIONS(4778), [sym_cast] = ACTIONS(4778), [sym_class] = ACTIONS(4778), [sym_const] = ACTIONS(4778), [sym_continue] = ACTIONS(4778), [sym_debug] = ACTIONS(4778), [sym_default] = ACTIONS(4778), [sym_delegate] = ACTIONS(4778), [sym_delete] = ACTIONS(4778), [sym_deprecated] = ACTIONS(4778), [sym_do] = ACTIONS(4778), [sym_else] = ACTIONS(4778), [sym_enum] = ACTIONS(4778), [sym_export] = ACTIONS(4778), [sym_extern] = ACTIONS(4778), [sym_final] = ACTIONS(4778), [sym_for] = ACTIONS(4778), [sym_foreach] = ACTIONS(4778), [sym_foreach_reverse] = ACTIONS(4778), [sym_function] = ACTIONS(4778), [sym_goto] = ACTIONS(4778), [sym_if] = ACTIONS(4778), [sym_immutable] = ACTIONS(4778), [sym_import] = ACTIONS(4778), [sym_in] = ACTIONS(4778), [sym_inout] = ACTIONS(4778), [sym_interface] = ACTIONS(4778), [sym_invariant] = ACTIONS(4778), [sym_is] = ACTIONS(4778), [sym_mixin] = ACTIONS(4778), [sym_new] = ACTIONS(4778), [sym_nothrow] = ACTIONS(4778), [sym_out] = ACTIONS(4778), [sym_override] = ACTIONS(4778), [sym_package] = ACTIONS(4778), [sym_pragma] = ACTIONS(4778), [sym_private] = ACTIONS(4778), [sym_protected] = ACTIONS(4778), [sym_public] = ACTIONS(4778), [sym_pure] = ACTIONS(4778), [sym_ref] = ACTIONS(4778), [sym_return] = ACTIONS(4778), [sym_scope] = ACTIONS(4778), [sym_shared] = ACTIONS(4778), [sym_static] = ACTIONS(4778), [sym_struct] = ACTIONS(4778), [sym_switch] = ACTIONS(4778), [sym_synchronized] = ACTIONS(4778), [sym_template] = ACTIONS(4778), [sym_throw] = ACTIONS(4778), [sym_try] = ACTIONS(4778), [sym_typeid] = ACTIONS(4778), [sym_typeof] = ACTIONS(4778), [sym_union] = ACTIONS(4778), [sym_unittest] = ACTIONS(4778), [sym_version] = ACTIONS(4778), [sym_while] = ACTIONS(4778), [sym_with] = ACTIONS(4778), [sym_gshared] = ACTIONS(4778), [sym_traits] = ACTIONS(4778), [sym_vector] = ACTIONS(4778), [sym_void] = ACTIONS(4778), [anon_sym_BQUOTE] = ACTIONS(4780), [anon_sym_r_DQUOTE] = ACTIONS(4780), [anon_sym_x_DQUOTE] = ACTIONS(4780), [anon_sym_DQUOTE] = ACTIONS(4780), [anon_sym_i_BQUOTE] = ACTIONS(4780), [anon_sym_i_DQUOTE] = ACTIONS(4780), [anon_sym_iq_LBRACE] = ACTIONS(4780), [aux_sym_char_literal_token1] = ACTIONS(4780), [anon_sym_SQUOTE] = ACTIONS(4778), [anon_sym___DATE__] = ACTIONS(4778), [anon_sym___FILE__] = ACTIONS(4778), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4778), [anon_sym___FUNCTION__] = ACTIONS(4778), [anon_sym___LINE__] = ACTIONS(4778), [anon_sym___MODULE__] = ACTIONS(4778), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4778), [anon_sym___TIME__] = ACTIONS(4778), [anon_sym___TIMESTAMP__] = ACTIONS(4778), [anon_sym___VENDOR__] = ACTIONS(4778), [anon_sym___VERSION__] = ACTIONS(4778), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4780), [sym_float_literal] = ACTIONS(4780), [sym__string] = ACTIONS(4780), }, [1683] = { [sym_identifier] = ACTIONS(4798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4800), [anon_sym_RBRACE] = ACTIONS(4800), [anon_sym_LBRACE] = ACTIONS(4800), [anon_sym_DOT] = ACTIONS(4800), [anon_sym_AMP] = ACTIONS(4800), [anon_sym_DASH] = ACTIONS(4798), [anon_sym_DASH_DASH] = ACTIONS(4800), [anon_sym_PLUS] = ACTIONS(4798), [anon_sym_PLUS_PLUS] = ACTIONS(4800), [anon_sym_BANG] = ACTIONS(4800), [anon_sym_LPAREN] = ACTIONS(4800), [anon_sym_RPAREN] = ACTIONS(4800), [anon_sym_LBRACK] = ACTIONS(4800), [anon_sym_SEMI] = ACTIONS(4800), [anon_sym_DOLLAR] = ACTIONS(4800), [anon_sym_STAR] = ACTIONS(4800), [anon_sym_TILDE] = ACTIONS(4800), [anon_sym_AT] = ACTIONS(4800), [sym_bool] = ACTIONS(4798), [sym_byte] = ACTIONS(4798), [sym_ubyte] = ACTIONS(4798), [sym_char] = ACTIONS(4798), [sym_short] = ACTIONS(4798), [sym_ushort] = ACTIONS(4798), [sym_int] = ACTIONS(4798), [sym_uint] = ACTIONS(4798), [sym_long] = ACTIONS(4798), [sym_ulong] = ACTIONS(4798), [sym_cent] = ACTIONS(4798), [sym_ucent] = ACTIONS(4798), [sym_wchar] = ACTIONS(4798), [sym_dchar] = ACTIONS(4798), [sym_float] = ACTIONS(4798), [sym_double] = ACTIONS(4798), [sym_real] = ACTIONS(4798), [sym_ifloat] = ACTIONS(4798), [sym_idouble] = ACTIONS(4798), [sym_ireal] = ACTIONS(4798), [sym_cfloat] = ACTIONS(4798), [sym_cdouble] = ACTIONS(4798), [sym_creal] = ACTIONS(4798), [sym_size_t] = ACTIONS(4798), [sym_ptrdiff_t] = ACTIONS(4798), [sym_string] = ACTIONS(4798), [sym_cstring] = ACTIONS(4798), [sym_dstring] = ACTIONS(4798), [sym_wstring] = ACTIONS(4798), [sym_noreturn] = ACTIONS(4798), [sym_true] = ACTIONS(4798), [sym_false] = ACTIONS(4798), [sym_null] = ACTIONS(4798), [sym_super] = ACTIONS(4798), [sym_this] = ACTIONS(4798), [sym_abstract] = ACTIONS(4798), [sym_alias] = ACTIONS(4798), [sym_align] = ACTIONS(4798), [sym_asm] = ACTIONS(4798), [sym_assert] = ACTIONS(4798), [sym_auto] = ACTIONS(4798), [sym_break] = ACTIONS(4798), [sym_case] = ACTIONS(4798), [sym_cast] = ACTIONS(4798), [sym_class] = ACTIONS(4798), [sym_const] = ACTIONS(4798), [sym_continue] = ACTIONS(4798), [sym_debug] = ACTIONS(4798), [sym_default] = ACTIONS(4798), [sym_delegate] = ACTIONS(4798), [sym_delete] = ACTIONS(4798), [sym_deprecated] = ACTIONS(4798), [sym_do] = ACTIONS(4798), [sym_else] = ACTIONS(4798), [sym_enum] = ACTIONS(4798), [sym_export] = ACTIONS(4798), [sym_extern] = ACTIONS(4798), [sym_final] = ACTIONS(4798), [sym_for] = ACTIONS(4798), [sym_foreach] = ACTIONS(4798), [sym_foreach_reverse] = ACTIONS(4798), [sym_function] = ACTIONS(4798), [sym_goto] = ACTIONS(4798), [sym_if] = ACTIONS(4798), [sym_immutable] = ACTIONS(4798), [sym_import] = ACTIONS(4798), [sym_in] = ACTIONS(4798), [sym_inout] = ACTIONS(4798), [sym_interface] = ACTIONS(4798), [sym_invariant] = ACTIONS(4798), [sym_is] = ACTIONS(4798), [sym_mixin] = ACTIONS(4798), [sym_new] = ACTIONS(4798), [sym_nothrow] = ACTIONS(4798), [sym_out] = ACTIONS(4798), [sym_override] = ACTIONS(4798), [sym_package] = ACTIONS(4798), [sym_pragma] = ACTIONS(4798), [sym_private] = ACTIONS(4798), [sym_protected] = ACTIONS(4798), [sym_public] = ACTIONS(4798), [sym_pure] = ACTIONS(4798), [sym_ref] = ACTIONS(4798), [sym_return] = ACTIONS(4798), [sym_scope] = ACTIONS(4798), [sym_shared] = ACTIONS(4798), [sym_static] = ACTIONS(4798), [sym_struct] = ACTIONS(4798), [sym_switch] = ACTIONS(4798), [sym_synchronized] = ACTIONS(4798), [sym_template] = ACTIONS(4798), [sym_throw] = ACTIONS(4798), [sym_try] = ACTIONS(4798), [sym_typeid] = ACTIONS(4798), [sym_typeof] = ACTIONS(4798), [sym_union] = ACTIONS(4798), [sym_unittest] = ACTIONS(4798), [sym_version] = ACTIONS(4798), [sym_while] = ACTIONS(4798), [sym_with] = ACTIONS(4798), [sym_gshared] = ACTIONS(4798), [sym_traits] = ACTIONS(4798), [sym_vector] = ACTIONS(4798), [sym_void] = ACTIONS(4798), [anon_sym_BQUOTE] = ACTIONS(4800), [anon_sym_r_DQUOTE] = ACTIONS(4800), [anon_sym_x_DQUOTE] = ACTIONS(4800), [anon_sym_DQUOTE] = ACTIONS(4800), [anon_sym_i_BQUOTE] = ACTIONS(4800), [anon_sym_i_DQUOTE] = ACTIONS(4800), [anon_sym_iq_LBRACE] = ACTIONS(4800), [aux_sym_char_literal_token1] = ACTIONS(4800), [anon_sym_SQUOTE] = ACTIONS(4798), [anon_sym___DATE__] = ACTIONS(4798), [anon_sym___FILE__] = ACTIONS(4798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4798), [anon_sym___FUNCTION__] = ACTIONS(4798), [anon_sym___LINE__] = ACTIONS(4798), [anon_sym___MODULE__] = ACTIONS(4798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4798), [anon_sym___TIME__] = ACTIONS(4798), [anon_sym___TIMESTAMP__] = ACTIONS(4798), [anon_sym___VENDOR__] = ACTIONS(4798), [anon_sym___VERSION__] = ACTIONS(4798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4800), [sym_float_literal] = ACTIONS(4800), [sym__string] = ACTIONS(4800), }, [1684] = { [sym_identifier] = ACTIONS(4852), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4854), [anon_sym_RBRACE] = ACTIONS(4854), [anon_sym_LBRACE] = ACTIONS(4854), [anon_sym_DOT] = ACTIONS(4854), [anon_sym_AMP] = ACTIONS(4854), [anon_sym_DASH] = ACTIONS(4852), [anon_sym_DASH_DASH] = ACTIONS(4854), [anon_sym_PLUS] = ACTIONS(4852), [anon_sym_PLUS_PLUS] = ACTIONS(4854), [anon_sym_BANG] = ACTIONS(4854), [anon_sym_LPAREN] = ACTIONS(4854), [anon_sym_RPAREN] = ACTIONS(4854), [anon_sym_LBRACK] = ACTIONS(4854), [anon_sym_SEMI] = ACTIONS(4854), [anon_sym_DOLLAR] = ACTIONS(4854), [anon_sym_STAR] = ACTIONS(4854), [anon_sym_TILDE] = ACTIONS(4854), [anon_sym_AT] = ACTIONS(4854), [sym_bool] = ACTIONS(4852), [sym_byte] = ACTIONS(4852), [sym_ubyte] = ACTIONS(4852), [sym_char] = ACTIONS(4852), [sym_short] = ACTIONS(4852), [sym_ushort] = ACTIONS(4852), [sym_int] = ACTIONS(4852), [sym_uint] = ACTIONS(4852), [sym_long] = ACTIONS(4852), [sym_ulong] = ACTIONS(4852), [sym_cent] = ACTIONS(4852), [sym_ucent] = ACTIONS(4852), [sym_wchar] = ACTIONS(4852), [sym_dchar] = ACTIONS(4852), [sym_float] = ACTIONS(4852), [sym_double] = ACTIONS(4852), [sym_real] = ACTIONS(4852), [sym_ifloat] = ACTIONS(4852), [sym_idouble] = ACTIONS(4852), [sym_ireal] = ACTIONS(4852), [sym_cfloat] = ACTIONS(4852), [sym_cdouble] = ACTIONS(4852), [sym_creal] = ACTIONS(4852), [sym_size_t] = ACTIONS(4852), [sym_ptrdiff_t] = ACTIONS(4852), [sym_string] = ACTIONS(4852), [sym_cstring] = ACTIONS(4852), [sym_dstring] = ACTIONS(4852), [sym_wstring] = ACTIONS(4852), [sym_noreturn] = ACTIONS(4852), [sym_true] = ACTIONS(4852), [sym_false] = ACTIONS(4852), [sym_null] = ACTIONS(4852), [sym_super] = ACTIONS(4852), [sym_this] = ACTIONS(4852), [sym_abstract] = ACTIONS(4852), [sym_alias] = ACTIONS(4852), [sym_align] = ACTIONS(4852), [sym_asm] = ACTIONS(4852), [sym_assert] = ACTIONS(4852), [sym_auto] = ACTIONS(4852), [sym_break] = ACTIONS(4852), [sym_case] = ACTIONS(4852), [sym_cast] = ACTIONS(4852), [sym_class] = ACTIONS(4852), [sym_const] = ACTIONS(4852), [sym_continue] = ACTIONS(4852), [sym_debug] = ACTIONS(4852), [sym_default] = ACTIONS(4852), [sym_delegate] = ACTIONS(4852), [sym_delete] = ACTIONS(4852), [sym_deprecated] = ACTIONS(4852), [sym_do] = ACTIONS(4852), [sym_else] = ACTIONS(4852), [sym_enum] = ACTIONS(4852), [sym_export] = ACTIONS(4852), [sym_extern] = ACTIONS(4852), [sym_final] = ACTIONS(4852), [sym_for] = ACTIONS(4852), [sym_foreach] = ACTIONS(4852), [sym_foreach_reverse] = ACTIONS(4852), [sym_function] = ACTIONS(4852), [sym_goto] = ACTIONS(4852), [sym_if] = ACTIONS(4852), [sym_immutable] = ACTIONS(4852), [sym_import] = ACTIONS(4852), [sym_in] = ACTIONS(4852), [sym_inout] = ACTIONS(4852), [sym_interface] = ACTIONS(4852), [sym_invariant] = ACTIONS(4852), [sym_is] = ACTIONS(4852), [sym_mixin] = ACTIONS(4852), [sym_new] = ACTIONS(4852), [sym_nothrow] = ACTIONS(4852), [sym_out] = ACTIONS(4852), [sym_override] = ACTIONS(4852), [sym_package] = ACTIONS(4852), [sym_pragma] = ACTIONS(4852), [sym_private] = ACTIONS(4852), [sym_protected] = ACTIONS(4852), [sym_public] = ACTIONS(4852), [sym_pure] = ACTIONS(4852), [sym_ref] = ACTIONS(4852), [sym_return] = ACTIONS(4852), [sym_scope] = ACTIONS(4852), [sym_shared] = ACTIONS(4852), [sym_static] = ACTIONS(4852), [sym_struct] = ACTIONS(4852), [sym_switch] = ACTIONS(4852), [sym_synchronized] = ACTIONS(4852), [sym_template] = ACTIONS(4852), [sym_throw] = ACTIONS(4852), [sym_try] = ACTIONS(4852), [sym_typeid] = ACTIONS(4852), [sym_typeof] = ACTIONS(4852), [sym_union] = ACTIONS(4852), [sym_unittest] = ACTIONS(4852), [sym_version] = ACTIONS(4852), [sym_while] = ACTIONS(4852), [sym_with] = ACTIONS(4852), [sym_gshared] = ACTIONS(4852), [sym_traits] = ACTIONS(4852), [sym_vector] = ACTIONS(4852), [sym_void] = ACTIONS(4852), [anon_sym_BQUOTE] = ACTIONS(4854), [anon_sym_r_DQUOTE] = ACTIONS(4854), [anon_sym_x_DQUOTE] = ACTIONS(4854), [anon_sym_DQUOTE] = ACTIONS(4854), [anon_sym_i_BQUOTE] = ACTIONS(4854), [anon_sym_i_DQUOTE] = ACTIONS(4854), [anon_sym_iq_LBRACE] = ACTIONS(4854), [aux_sym_char_literal_token1] = ACTIONS(4854), [anon_sym_SQUOTE] = ACTIONS(4852), [anon_sym___DATE__] = ACTIONS(4852), [anon_sym___FILE__] = ACTIONS(4852), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4852), [anon_sym___FUNCTION__] = ACTIONS(4852), [anon_sym___LINE__] = ACTIONS(4852), [anon_sym___MODULE__] = ACTIONS(4852), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4852), [anon_sym___TIME__] = ACTIONS(4852), [anon_sym___TIMESTAMP__] = ACTIONS(4852), [anon_sym___VENDOR__] = ACTIONS(4852), [anon_sym___VERSION__] = ACTIONS(4852), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4854), [sym_float_literal] = ACTIONS(4854), [sym__string] = ACTIONS(4854), }, [1685] = { [sym_identifier] = ACTIONS(4860), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4862), [anon_sym_RBRACE] = ACTIONS(4862), [anon_sym_LBRACE] = ACTIONS(4862), [anon_sym_DOT] = ACTIONS(4862), [anon_sym_AMP] = ACTIONS(4862), [anon_sym_DASH] = ACTIONS(4860), [anon_sym_DASH_DASH] = ACTIONS(4862), [anon_sym_PLUS] = ACTIONS(4860), [anon_sym_PLUS_PLUS] = ACTIONS(4862), [anon_sym_BANG] = ACTIONS(4862), [anon_sym_LPAREN] = ACTIONS(4862), [anon_sym_RPAREN] = ACTIONS(4862), [anon_sym_LBRACK] = ACTIONS(4862), [anon_sym_SEMI] = ACTIONS(4862), [anon_sym_DOLLAR] = ACTIONS(4862), [anon_sym_STAR] = ACTIONS(4862), [anon_sym_TILDE] = ACTIONS(4862), [anon_sym_AT] = ACTIONS(4862), [sym_bool] = ACTIONS(4860), [sym_byte] = ACTIONS(4860), [sym_ubyte] = ACTIONS(4860), [sym_char] = ACTIONS(4860), [sym_short] = ACTIONS(4860), [sym_ushort] = ACTIONS(4860), [sym_int] = ACTIONS(4860), [sym_uint] = ACTIONS(4860), [sym_long] = ACTIONS(4860), [sym_ulong] = ACTIONS(4860), [sym_cent] = ACTIONS(4860), [sym_ucent] = ACTIONS(4860), [sym_wchar] = ACTIONS(4860), [sym_dchar] = ACTIONS(4860), [sym_float] = ACTIONS(4860), [sym_double] = ACTIONS(4860), [sym_real] = ACTIONS(4860), [sym_ifloat] = ACTIONS(4860), [sym_idouble] = ACTIONS(4860), [sym_ireal] = ACTIONS(4860), [sym_cfloat] = ACTIONS(4860), [sym_cdouble] = ACTIONS(4860), [sym_creal] = ACTIONS(4860), [sym_size_t] = ACTIONS(4860), [sym_ptrdiff_t] = ACTIONS(4860), [sym_string] = ACTIONS(4860), [sym_cstring] = ACTIONS(4860), [sym_dstring] = ACTIONS(4860), [sym_wstring] = ACTIONS(4860), [sym_noreturn] = ACTIONS(4860), [sym_true] = ACTIONS(4860), [sym_false] = ACTIONS(4860), [sym_null] = ACTIONS(4860), [sym_super] = ACTIONS(4860), [sym_this] = ACTIONS(4860), [sym_abstract] = ACTIONS(4860), [sym_alias] = ACTIONS(4860), [sym_align] = ACTIONS(4860), [sym_asm] = ACTIONS(4860), [sym_assert] = ACTIONS(4860), [sym_auto] = ACTIONS(4860), [sym_break] = ACTIONS(4860), [sym_case] = ACTIONS(4860), [sym_cast] = ACTIONS(4860), [sym_class] = ACTIONS(4860), [sym_const] = ACTIONS(4860), [sym_continue] = ACTIONS(4860), [sym_debug] = ACTIONS(4860), [sym_default] = ACTIONS(4860), [sym_delegate] = ACTIONS(4860), [sym_delete] = ACTIONS(4860), [sym_deprecated] = ACTIONS(4860), [sym_do] = ACTIONS(4860), [sym_else] = ACTIONS(4860), [sym_enum] = ACTIONS(4860), [sym_export] = ACTIONS(4860), [sym_extern] = ACTIONS(4860), [sym_final] = ACTIONS(4860), [sym_for] = ACTIONS(4860), [sym_foreach] = ACTIONS(4860), [sym_foreach_reverse] = ACTIONS(4860), [sym_function] = ACTIONS(4860), [sym_goto] = ACTIONS(4860), [sym_if] = ACTIONS(4860), [sym_immutable] = ACTIONS(4860), [sym_import] = ACTIONS(4860), [sym_in] = ACTIONS(4860), [sym_inout] = ACTIONS(4860), [sym_interface] = ACTIONS(4860), [sym_invariant] = ACTIONS(4860), [sym_is] = ACTIONS(4860), [sym_mixin] = ACTIONS(4860), [sym_new] = ACTIONS(4860), [sym_nothrow] = ACTIONS(4860), [sym_out] = ACTIONS(4860), [sym_override] = ACTIONS(4860), [sym_package] = ACTIONS(4860), [sym_pragma] = ACTIONS(4860), [sym_private] = ACTIONS(4860), [sym_protected] = ACTIONS(4860), [sym_public] = ACTIONS(4860), [sym_pure] = ACTIONS(4860), [sym_ref] = ACTIONS(4860), [sym_return] = ACTIONS(4860), [sym_scope] = ACTIONS(4860), [sym_shared] = ACTIONS(4860), [sym_static] = ACTIONS(4860), [sym_struct] = ACTIONS(4860), [sym_switch] = ACTIONS(4860), [sym_synchronized] = ACTIONS(4860), [sym_template] = ACTIONS(4860), [sym_throw] = ACTIONS(4860), [sym_try] = ACTIONS(4860), [sym_typeid] = ACTIONS(4860), [sym_typeof] = ACTIONS(4860), [sym_union] = ACTIONS(4860), [sym_unittest] = ACTIONS(4860), [sym_version] = ACTIONS(4860), [sym_while] = ACTIONS(4860), [sym_with] = ACTIONS(4860), [sym_gshared] = ACTIONS(4860), [sym_traits] = ACTIONS(4860), [sym_vector] = ACTIONS(4860), [sym_void] = ACTIONS(4860), [anon_sym_BQUOTE] = ACTIONS(4862), [anon_sym_r_DQUOTE] = ACTIONS(4862), [anon_sym_x_DQUOTE] = ACTIONS(4862), [anon_sym_DQUOTE] = ACTIONS(4862), [anon_sym_i_BQUOTE] = ACTIONS(4862), [anon_sym_i_DQUOTE] = ACTIONS(4862), [anon_sym_iq_LBRACE] = ACTIONS(4862), [aux_sym_char_literal_token1] = ACTIONS(4862), [anon_sym_SQUOTE] = ACTIONS(4860), [anon_sym___DATE__] = ACTIONS(4860), [anon_sym___FILE__] = ACTIONS(4860), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4860), [anon_sym___FUNCTION__] = ACTIONS(4860), [anon_sym___LINE__] = ACTIONS(4860), [anon_sym___MODULE__] = ACTIONS(4860), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4860), [anon_sym___TIME__] = ACTIONS(4860), [anon_sym___TIMESTAMP__] = ACTIONS(4860), [anon_sym___VENDOR__] = ACTIONS(4860), [anon_sym___VERSION__] = ACTIONS(4860), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4862), [sym_float_literal] = ACTIONS(4862), [sym__string] = ACTIONS(4862), }, [1686] = { [sym_identifier] = ACTIONS(4960), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4962), [anon_sym_RBRACE] = ACTIONS(4962), [anon_sym_LBRACE] = ACTIONS(4962), [anon_sym_DOT] = ACTIONS(4962), [anon_sym_AMP] = ACTIONS(4962), [anon_sym_DASH] = ACTIONS(4960), [anon_sym_DASH_DASH] = ACTIONS(4962), [anon_sym_PLUS] = ACTIONS(4960), [anon_sym_PLUS_PLUS] = ACTIONS(4962), [anon_sym_BANG] = ACTIONS(4962), [anon_sym_LPAREN] = ACTIONS(4962), [anon_sym_RPAREN] = ACTIONS(4962), [anon_sym_LBRACK] = ACTIONS(4962), [anon_sym_SEMI] = ACTIONS(4962), [anon_sym_DOLLAR] = ACTIONS(4962), [anon_sym_STAR] = ACTIONS(4962), [anon_sym_TILDE] = ACTIONS(4962), [anon_sym_AT] = ACTIONS(4962), [sym_bool] = ACTIONS(4960), [sym_byte] = ACTIONS(4960), [sym_ubyte] = ACTIONS(4960), [sym_char] = ACTIONS(4960), [sym_short] = ACTIONS(4960), [sym_ushort] = ACTIONS(4960), [sym_int] = ACTIONS(4960), [sym_uint] = ACTIONS(4960), [sym_long] = ACTIONS(4960), [sym_ulong] = ACTIONS(4960), [sym_cent] = ACTIONS(4960), [sym_ucent] = ACTIONS(4960), [sym_wchar] = ACTIONS(4960), [sym_dchar] = ACTIONS(4960), [sym_float] = ACTIONS(4960), [sym_double] = ACTIONS(4960), [sym_real] = ACTIONS(4960), [sym_ifloat] = ACTIONS(4960), [sym_idouble] = ACTIONS(4960), [sym_ireal] = ACTIONS(4960), [sym_cfloat] = ACTIONS(4960), [sym_cdouble] = ACTIONS(4960), [sym_creal] = ACTIONS(4960), [sym_size_t] = ACTIONS(4960), [sym_ptrdiff_t] = ACTIONS(4960), [sym_string] = ACTIONS(4960), [sym_cstring] = ACTIONS(4960), [sym_dstring] = ACTIONS(4960), [sym_wstring] = ACTIONS(4960), [sym_noreturn] = ACTIONS(4960), [sym_true] = ACTIONS(4960), [sym_false] = ACTIONS(4960), [sym_null] = ACTIONS(4960), [sym_super] = ACTIONS(4960), [sym_this] = ACTIONS(4960), [sym_abstract] = ACTIONS(4960), [sym_alias] = ACTIONS(4960), [sym_align] = ACTIONS(4960), [sym_asm] = ACTIONS(4960), [sym_assert] = ACTIONS(4960), [sym_auto] = ACTIONS(4960), [sym_break] = ACTIONS(4960), [sym_case] = ACTIONS(4960), [sym_cast] = ACTIONS(4960), [sym_class] = ACTIONS(4960), [sym_const] = ACTIONS(4960), [sym_continue] = ACTIONS(4960), [sym_debug] = ACTIONS(4960), [sym_default] = ACTIONS(4960), [sym_delegate] = ACTIONS(4960), [sym_delete] = ACTIONS(4960), [sym_deprecated] = ACTIONS(4960), [sym_do] = ACTIONS(4960), [sym_else] = ACTIONS(4960), [sym_enum] = ACTIONS(4960), [sym_export] = ACTIONS(4960), [sym_extern] = ACTIONS(4960), [sym_final] = ACTIONS(4960), [sym_for] = ACTIONS(4960), [sym_foreach] = ACTIONS(4960), [sym_foreach_reverse] = ACTIONS(4960), [sym_function] = ACTIONS(4960), [sym_goto] = ACTIONS(4960), [sym_if] = ACTIONS(4960), [sym_immutable] = ACTIONS(4960), [sym_import] = ACTIONS(4960), [sym_in] = ACTIONS(4960), [sym_inout] = ACTIONS(4960), [sym_interface] = ACTIONS(4960), [sym_invariant] = ACTIONS(4960), [sym_is] = ACTIONS(4960), [sym_mixin] = ACTIONS(4960), [sym_new] = ACTIONS(4960), [sym_nothrow] = ACTIONS(4960), [sym_out] = ACTIONS(4960), [sym_override] = ACTIONS(4960), [sym_package] = ACTIONS(4960), [sym_pragma] = ACTIONS(4960), [sym_private] = ACTIONS(4960), [sym_protected] = ACTIONS(4960), [sym_public] = ACTIONS(4960), [sym_pure] = ACTIONS(4960), [sym_ref] = ACTIONS(4960), [sym_return] = ACTIONS(4960), [sym_scope] = ACTIONS(4960), [sym_shared] = ACTIONS(4960), [sym_static] = ACTIONS(4960), [sym_struct] = ACTIONS(4960), [sym_switch] = ACTIONS(4960), [sym_synchronized] = ACTIONS(4960), [sym_template] = ACTIONS(4960), [sym_throw] = ACTIONS(4960), [sym_try] = ACTIONS(4960), [sym_typeid] = ACTIONS(4960), [sym_typeof] = ACTIONS(4960), [sym_union] = ACTIONS(4960), [sym_unittest] = ACTIONS(4960), [sym_version] = ACTIONS(4960), [sym_while] = ACTIONS(4960), [sym_with] = ACTIONS(4960), [sym_gshared] = ACTIONS(4960), [sym_traits] = ACTIONS(4960), [sym_vector] = ACTIONS(4960), [sym_void] = ACTIONS(4960), [anon_sym_BQUOTE] = ACTIONS(4962), [anon_sym_r_DQUOTE] = ACTIONS(4962), [anon_sym_x_DQUOTE] = ACTIONS(4962), [anon_sym_DQUOTE] = ACTIONS(4962), [anon_sym_i_BQUOTE] = ACTIONS(4962), [anon_sym_i_DQUOTE] = ACTIONS(4962), [anon_sym_iq_LBRACE] = ACTIONS(4962), [aux_sym_char_literal_token1] = ACTIONS(4962), [anon_sym_SQUOTE] = ACTIONS(4960), [anon_sym___DATE__] = ACTIONS(4960), [anon_sym___FILE__] = ACTIONS(4960), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4960), [anon_sym___FUNCTION__] = ACTIONS(4960), [anon_sym___LINE__] = ACTIONS(4960), [anon_sym___MODULE__] = ACTIONS(4960), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4960), [anon_sym___TIME__] = ACTIONS(4960), [anon_sym___TIMESTAMP__] = ACTIONS(4960), [anon_sym___VENDOR__] = ACTIONS(4960), [anon_sym___VERSION__] = ACTIONS(4960), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4962), [sym_float_literal] = ACTIONS(4962), [sym__string] = ACTIONS(4962), }, [1687] = { [sym_identifier] = ACTIONS(4382), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4384), [anon_sym_RBRACE] = ACTIONS(4384), [anon_sym_LBRACE] = ACTIONS(4384), [anon_sym_DOT] = ACTIONS(4384), [anon_sym_AMP] = ACTIONS(4384), [anon_sym_DASH] = ACTIONS(4382), [anon_sym_DASH_DASH] = ACTIONS(4384), [anon_sym_PLUS] = ACTIONS(4382), [anon_sym_PLUS_PLUS] = ACTIONS(4384), [anon_sym_BANG] = ACTIONS(4384), [anon_sym_LPAREN] = ACTIONS(4384), [anon_sym_RPAREN] = ACTIONS(4384), [anon_sym_LBRACK] = ACTIONS(4384), [anon_sym_SEMI] = ACTIONS(4384), [anon_sym_DOLLAR] = ACTIONS(4384), [anon_sym_STAR] = ACTIONS(4384), [anon_sym_TILDE] = ACTIONS(4384), [anon_sym_AT] = ACTIONS(4384), [sym_bool] = ACTIONS(4382), [sym_byte] = ACTIONS(4382), [sym_ubyte] = ACTIONS(4382), [sym_char] = ACTIONS(4382), [sym_short] = ACTIONS(4382), [sym_ushort] = ACTIONS(4382), [sym_int] = ACTIONS(4382), [sym_uint] = ACTIONS(4382), [sym_long] = ACTIONS(4382), [sym_ulong] = ACTIONS(4382), [sym_cent] = ACTIONS(4382), [sym_ucent] = ACTIONS(4382), [sym_wchar] = ACTIONS(4382), [sym_dchar] = ACTIONS(4382), [sym_float] = ACTIONS(4382), [sym_double] = ACTIONS(4382), [sym_real] = ACTIONS(4382), [sym_ifloat] = ACTIONS(4382), [sym_idouble] = ACTIONS(4382), [sym_ireal] = ACTIONS(4382), [sym_cfloat] = ACTIONS(4382), [sym_cdouble] = ACTIONS(4382), [sym_creal] = ACTIONS(4382), [sym_size_t] = ACTIONS(4382), [sym_ptrdiff_t] = ACTIONS(4382), [sym_string] = ACTIONS(4382), [sym_cstring] = ACTIONS(4382), [sym_dstring] = ACTIONS(4382), [sym_wstring] = ACTIONS(4382), [sym_noreturn] = ACTIONS(4382), [sym_true] = ACTIONS(4382), [sym_false] = ACTIONS(4382), [sym_null] = ACTIONS(4382), [sym_super] = ACTIONS(4382), [sym_this] = ACTIONS(4382), [sym_abstract] = ACTIONS(4382), [sym_alias] = ACTIONS(4382), [sym_align] = ACTIONS(4382), [sym_asm] = ACTIONS(4382), [sym_assert] = ACTIONS(4382), [sym_auto] = ACTIONS(4382), [sym_break] = ACTIONS(4382), [sym_case] = ACTIONS(4382), [sym_cast] = ACTIONS(4382), [sym_class] = ACTIONS(4382), [sym_const] = ACTIONS(4382), [sym_continue] = ACTIONS(4382), [sym_debug] = ACTIONS(4382), [sym_default] = ACTIONS(4382), [sym_delegate] = ACTIONS(4382), [sym_delete] = ACTIONS(4382), [sym_deprecated] = ACTIONS(4382), [sym_do] = ACTIONS(4382), [sym_else] = ACTIONS(4382), [sym_enum] = ACTIONS(4382), [sym_export] = ACTIONS(4382), [sym_extern] = ACTIONS(4382), [sym_final] = ACTIONS(4382), [sym_for] = ACTIONS(4382), [sym_foreach] = ACTIONS(4382), [sym_foreach_reverse] = ACTIONS(4382), [sym_function] = ACTIONS(4382), [sym_goto] = ACTIONS(4382), [sym_if] = ACTIONS(4382), [sym_immutable] = ACTIONS(4382), [sym_import] = ACTIONS(4382), [sym_in] = ACTIONS(4382), [sym_inout] = ACTIONS(4382), [sym_interface] = ACTIONS(4382), [sym_invariant] = ACTIONS(4382), [sym_is] = ACTIONS(4382), [sym_mixin] = ACTIONS(4382), [sym_new] = ACTIONS(4382), [sym_nothrow] = ACTIONS(4382), [sym_out] = ACTIONS(4382), [sym_override] = ACTIONS(4382), [sym_package] = ACTIONS(4382), [sym_pragma] = ACTIONS(4382), [sym_private] = ACTIONS(4382), [sym_protected] = ACTIONS(4382), [sym_public] = ACTIONS(4382), [sym_pure] = ACTIONS(4382), [sym_ref] = ACTIONS(4382), [sym_return] = ACTIONS(4382), [sym_scope] = ACTIONS(4382), [sym_shared] = ACTIONS(4382), [sym_static] = ACTIONS(4382), [sym_struct] = ACTIONS(4382), [sym_switch] = ACTIONS(4382), [sym_synchronized] = ACTIONS(4382), [sym_template] = ACTIONS(4382), [sym_throw] = ACTIONS(4382), [sym_try] = ACTIONS(4382), [sym_typeid] = ACTIONS(4382), [sym_typeof] = ACTIONS(4382), [sym_union] = ACTIONS(4382), [sym_unittest] = ACTIONS(4382), [sym_version] = ACTIONS(4382), [sym_while] = ACTIONS(4382), [sym_with] = ACTIONS(4382), [sym_gshared] = ACTIONS(4382), [sym_traits] = ACTIONS(4382), [sym_vector] = ACTIONS(4382), [sym_void] = ACTIONS(4382), [anon_sym_BQUOTE] = ACTIONS(4384), [anon_sym_r_DQUOTE] = ACTIONS(4384), [anon_sym_x_DQUOTE] = ACTIONS(4384), [anon_sym_DQUOTE] = ACTIONS(4384), [anon_sym_i_BQUOTE] = ACTIONS(4384), [anon_sym_i_DQUOTE] = ACTIONS(4384), [anon_sym_iq_LBRACE] = ACTIONS(4384), [aux_sym_char_literal_token1] = ACTIONS(4384), [anon_sym_SQUOTE] = ACTIONS(4382), [anon_sym___DATE__] = ACTIONS(4382), [anon_sym___FILE__] = ACTIONS(4382), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4382), [anon_sym___FUNCTION__] = ACTIONS(4382), [anon_sym___LINE__] = ACTIONS(4382), [anon_sym___MODULE__] = ACTIONS(4382), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4382), [anon_sym___TIME__] = ACTIONS(4382), [anon_sym___TIMESTAMP__] = ACTIONS(4382), [anon_sym___VENDOR__] = ACTIONS(4382), [anon_sym___VERSION__] = ACTIONS(4382), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4384), [sym_float_literal] = ACTIONS(4384), [sym__string] = ACTIONS(4384), }, [1688] = { [sym_identifier] = ACTIONS(4390), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4394), [anon_sym_RBRACE] = ACTIONS(4394), [anon_sym_LBRACE] = ACTIONS(4394), [anon_sym_DOT] = ACTIONS(4394), [anon_sym_AMP] = ACTIONS(4394), [anon_sym_DASH] = ACTIONS(4390), [anon_sym_DASH_DASH] = ACTIONS(4394), [anon_sym_PLUS] = ACTIONS(4390), [anon_sym_PLUS_PLUS] = ACTIONS(4394), [anon_sym_BANG] = ACTIONS(4394), [anon_sym_LPAREN] = ACTIONS(4394), [anon_sym_RPAREN] = ACTIONS(4394), [anon_sym_LBRACK] = ACTIONS(4394), [anon_sym_SEMI] = ACTIONS(4394), [anon_sym_DOLLAR] = ACTIONS(4394), [anon_sym_STAR] = ACTIONS(4394), [anon_sym_TILDE] = ACTIONS(4394), [anon_sym_AT] = ACTIONS(4394), [sym_bool] = ACTIONS(4390), [sym_byte] = ACTIONS(4390), [sym_ubyte] = ACTIONS(4390), [sym_char] = ACTIONS(4390), [sym_short] = ACTIONS(4390), [sym_ushort] = ACTIONS(4390), [sym_int] = ACTIONS(4390), [sym_uint] = ACTIONS(4390), [sym_long] = ACTIONS(4390), [sym_ulong] = ACTIONS(4390), [sym_cent] = ACTIONS(4390), [sym_ucent] = ACTIONS(4390), [sym_wchar] = ACTIONS(4390), [sym_dchar] = ACTIONS(4390), [sym_float] = ACTIONS(4390), [sym_double] = ACTIONS(4390), [sym_real] = ACTIONS(4390), [sym_ifloat] = ACTIONS(4390), [sym_idouble] = ACTIONS(4390), [sym_ireal] = ACTIONS(4390), [sym_cfloat] = ACTIONS(4390), [sym_cdouble] = ACTIONS(4390), [sym_creal] = ACTIONS(4390), [sym_size_t] = ACTIONS(4390), [sym_ptrdiff_t] = ACTIONS(4390), [sym_string] = ACTIONS(4390), [sym_cstring] = ACTIONS(4390), [sym_dstring] = ACTIONS(4390), [sym_wstring] = ACTIONS(4390), [sym_noreturn] = ACTIONS(4390), [sym_true] = ACTIONS(4390), [sym_false] = ACTIONS(4390), [sym_null] = ACTIONS(4390), [sym_super] = ACTIONS(4390), [sym_this] = ACTIONS(4390), [sym_abstract] = ACTIONS(4390), [sym_alias] = ACTIONS(4390), [sym_align] = ACTIONS(4390), [sym_asm] = ACTIONS(4390), [sym_assert] = ACTIONS(4390), [sym_auto] = ACTIONS(4390), [sym_break] = ACTIONS(4390), [sym_case] = ACTIONS(4390), [sym_cast] = ACTIONS(4390), [sym_class] = ACTIONS(4390), [sym_const] = ACTIONS(4390), [sym_continue] = ACTIONS(4390), [sym_debug] = ACTIONS(4390), [sym_default] = ACTIONS(4390), [sym_delegate] = ACTIONS(4390), [sym_delete] = ACTIONS(4390), [sym_deprecated] = ACTIONS(4390), [sym_do] = ACTIONS(4390), [sym_else] = ACTIONS(4390), [sym_enum] = ACTIONS(4390), [sym_export] = ACTIONS(4390), [sym_extern] = ACTIONS(4390), [sym_final] = ACTIONS(4390), [sym_for] = ACTIONS(4390), [sym_foreach] = ACTIONS(4390), [sym_foreach_reverse] = ACTIONS(4390), [sym_function] = ACTIONS(4390), [sym_goto] = ACTIONS(4390), [sym_if] = ACTIONS(4390), [sym_immutable] = ACTIONS(4390), [sym_import] = ACTIONS(4390), [sym_in] = ACTIONS(4390), [sym_inout] = ACTIONS(4390), [sym_interface] = ACTIONS(4390), [sym_invariant] = ACTIONS(4390), [sym_is] = ACTIONS(4390), [sym_mixin] = ACTIONS(4390), [sym_new] = ACTIONS(4390), [sym_nothrow] = ACTIONS(4390), [sym_out] = ACTIONS(4390), [sym_override] = ACTIONS(4390), [sym_package] = ACTIONS(4390), [sym_pragma] = ACTIONS(4390), [sym_private] = ACTIONS(4390), [sym_protected] = ACTIONS(4390), [sym_public] = ACTIONS(4390), [sym_pure] = ACTIONS(4390), [sym_ref] = ACTIONS(4390), [sym_return] = ACTIONS(4390), [sym_scope] = ACTIONS(4390), [sym_shared] = ACTIONS(4390), [sym_static] = ACTIONS(4390), [sym_struct] = ACTIONS(4390), [sym_switch] = ACTIONS(4390), [sym_synchronized] = ACTIONS(4390), [sym_template] = ACTIONS(4390), [sym_throw] = ACTIONS(4390), [sym_try] = ACTIONS(4390), [sym_typeid] = ACTIONS(4390), [sym_typeof] = ACTIONS(4390), [sym_union] = ACTIONS(4390), [sym_unittest] = ACTIONS(4390), [sym_version] = ACTIONS(4390), [sym_while] = ACTIONS(4390), [sym_with] = ACTIONS(4390), [sym_gshared] = ACTIONS(4390), [sym_traits] = ACTIONS(4390), [sym_vector] = ACTIONS(4390), [sym_void] = ACTIONS(4390), [anon_sym_BQUOTE] = ACTIONS(4394), [anon_sym_r_DQUOTE] = ACTIONS(4394), [anon_sym_x_DQUOTE] = ACTIONS(4394), [anon_sym_DQUOTE] = ACTIONS(4394), [anon_sym_i_BQUOTE] = ACTIONS(4394), [anon_sym_i_DQUOTE] = ACTIONS(4394), [anon_sym_iq_LBRACE] = ACTIONS(4394), [aux_sym_char_literal_token1] = ACTIONS(4394), [anon_sym_SQUOTE] = ACTIONS(4390), [anon_sym___DATE__] = ACTIONS(4390), [anon_sym___FILE__] = ACTIONS(4390), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4390), [anon_sym___FUNCTION__] = ACTIONS(4390), [anon_sym___LINE__] = ACTIONS(4390), [anon_sym___MODULE__] = ACTIONS(4390), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4390), [anon_sym___TIME__] = ACTIONS(4390), [anon_sym___TIMESTAMP__] = ACTIONS(4390), [anon_sym___VENDOR__] = ACTIONS(4390), [anon_sym___VERSION__] = ACTIONS(4390), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4394), [sym_float_literal] = ACTIONS(4394), [sym__string] = ACTIONS(4394), }, [1689] = { [sym_identifier] = ACTIONS(4538), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4540), [anon_sym_RBRACE] = ACTIONS(4540), [anon_sym_LBRACE] = ACTIONS(4540), [anon_sym_DOT] = ACTIONS(4540), [anon_sym_AMP] = ACTIONS(4540), [anon_sym_DASH] = ACTIONS(4538), [anon_sym_DASH_DASH] = ACTIONS(4540), [anon_sym_PLUS] = ACTIONS(4538), [anon_sym_PLUS_PLUS] = ACTIONS(4540), [anon_sym_BANG] = ACTIONS(4540), [anon_sym_LPAREN] = ACTIONS(4540), [anon_sym_RPAREN] = ACTIONS(4540), [anon_sym_LBRACK] = ACTIONS(4540), [anon_sym_SEMI] = ACTIONS(4540), [anon_sym_DOLLAR] = ACTIONS(4540), [anon_sym_STAR] = ACTIONS(4540), [anon_sym_TILDE] = ACTIONS(4540), [anon_sym_AT] = ACTIONS(4540), [sym_bool] = ACTIONS(4538), [sym_byte] = ACTIONS(4538), [sym_ubyte] = ACTIONS(4538), [sym_char] = ACTIONS(4538), [sym_short] = ACTIONS(4538), [sym_ushort] = ACTIONS(4538), [sym_int] = ACTIONS(4538), [sym_uint] = ACTIONS(4538), [sym_long] = ACTIONS(4538), [sym_ulong] = ACTIONS(4538), [sym_cent] = ACTIONS(4538), [sym_ucent] = ACTIONS(4538), [sym_wchar] = ACTIONS(4538), [sym_dchar] = ACTIONS(4538), [sym_float] = ACTIONS(4538), [sym_double] = ACTIONS(4538), [sym_real] = ACTIONS(4538), [sym_ifloat] = ACTIONS(4538), [sym_idouble] = ACTIONS(4538), [sym_ireal] = ACTIONS(4538), [sym_cfloat] = ACTIONS(4538), [sym_cdouble] = ACTIONS(4538), [sym_creal] = ACTIONS(4538), [sym_size_t] = ACTIONS(4538), [sym_ptrdiff_t] = ACTIONS(4538), [sym_string] = ACTIONS(4538), [sym_cstring] = ACTIONS(4538), [sym_dstring] = ACTIONS(4538), [sym_wstring] = ACTIONS(4538), [sym_noreturn] = ACTIONS(4538), [sym_true] = ACTIONS(4538), [sym_false] = ACTIONS(4538), [sym_null] = ACTIONS(4538), [sym_super] = ACTIONS(4538), [sym_this] = ACTIONS(4538), [sym_abstract] = ACTIONS(4538), [sym_alias] = ACTIONS(4538), [sym_align] = ACTIONS(4538), [sym_asm] = ACTIONS(4538), [sym_assert] = ACTIONS(4538), [sym_auto] = ACTIONS(4538), [sym_break] = ACTIONS(4538), [sym_case] = ACTIONS(4538), [sym_cast] = ACTIONS(4538), [sym_class] = ACTIONS(4538), [sym_const] = ACTIONS(4538), [sym_continue] = ACTIONS(4538), [sym_debug] = ACTIONS(4538), [sym_default] = ACTIONS(4538), [sym_delegate] = ACTIONS(4538), [sym_delete] = ACTIONS(4538), [sym_deprecated] = ACTIONS(4538), [sym_do] = ACTIONS(4538), [sym_else] = ACTIONS(4538), [sym_enum] = ACTIONS(4538), [sym_export] = ACTIONS(4538), [sym_extern] = ACTIONS(4538), [sym_final] = ACTIONS(4538), [sym_for] = ACTIONS(4538), [sym_foreach] = ACTIONS(4538), [sym_foreach_reverse] = ACTIONS(4538), [sym_function] = ACTIONS(4538), [sym_goto] = ACTIONS(4538), [sym_if] = ACTIONS(4538), [sym_immutable] = ACTIONS(4538), [sym_import] = ACTIONS(4538), [sym_in] = ACTIONS(4538), [sym_inout] = ACTIONS(4538), [sym_interface] = ACTIONS(4538), [sym_invariant] = ACTIONS(4538), [sym_is] = ACTIONS(4538), [sym_mixin] = ACTIONS(4538), [sym_new] = ACTIONS(4538), [sym_nothrow] = ACTIONS(4538), [sym_out] = ACTIONS(4538), [sym_override] = ACTIONS(4538), [sym_package] = ACTIONS(4538), [sym_pragma] = ACTIONS(4538), [sym_private] = ACTIONS(4538), [sym_protected] = ACTIONS(4538), [sym_public] = ACTIONS(4538), [sym_pure] = ACTIONS(4538), [sym_ref] = ACTIONS(4538), [sym_return] = ACTIONS(4538), [sym_scope] = ACTIONS(4538), [sym_shared] = ACTIONS(4538), [sym_static] = ACTIONS(4538), [sym_struct] = ACTIONS(4538), [sym_switch] = ACTIONS(4538), [sym_synchronized] = ACTIONS(4538), [sym_template] = ACTIONS(4538), [sym_throw] = ACTIONS(4538), [sym_try] = ACTIONS(4538), [sym_typeid] = ACTIONS(4538), [sym_typeof] = ACTIONS(4538), [sym_union] = ACTIONS(4538), [sym_unittest] = ACTIONS(4538), [sym_version] = ACTIONS(4538), [sym_while] = ACTIONS(4538), [sym_with] = ACTIONS(4538), [sym_gshared] = ACTIONS(4538), [sym_traits] = ACTIONS(4538), [sym_vector] = ACTIONS(4538), [sym_void] = ACTIONS(4538), [anon_sym_BQUOTE] = ACTIONS(4540), [anon_sym_r_DQUOTE] = ACTIONS(4540), [anon_sym_x_DQUOTE] = ACTIONS(4540), [anon_sym_DQUOTE] = ACTIONS(4540), [anon_sym_i_BQUOTE] = ACTIONS(4540), [anon_sym_i_DQUOTE] = ACTIONS(4540), [anon_sym_iq_LBRACE] = ACTIONS(4540), [aux_sym_char_literal_token1] = ACTIONS(4540), [anon_sym_SQUOTE] = ACTIONS(4538), [anon_sym___DATE__] = ACTIONS(4538), [anon_sym___FILE__] = ACTIONS(4538), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4538), [anon_sym___FUNCTION__] = ACTIONS(4538), [anon_sym___LINE__] = ACTIONS(4538), [anon_sym___MODULE__] = ACTIONS(4538), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4538), [anon_sym___TIME__] = ACTIONS(4538), [anon_sym___TIMESTAMP__] = ACTIONS(4538), [anon_sym___VENDOR__] = ACTIONS(4538), [anon_sym___VERSION__] = ACTIONS(4538), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4540), [sym_float_literal] = ACTIONS(4540), [sym__string] = ACTIONS(4540), }, [1690] = { [sym_identifier] = ACTIONS(4460), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4462), [anon_sym_RBRACE] = ACTIONS(4462), [anon_sym_LBRACE] = ACTIONS(4462), [anon_sym_DOT] = ACTIONS(4462), [anon_sym_AMP] = ACTIONS(4462), [anon_sym_DASH] = ACTIONS(4460), [anon_sym_DASH_DASH] = ACTIONS(4462), [anon_sym_PLUS] = ACTIONS(4460), [anon_sym_PLUS_PLUS] = ACTIONS(4462), [anon_sym_BANG] = ACTIONS(4462), [anon_sym_LPAREN] = ACTIONS(4462), [anon_sym_RPAREN] = ACTIONS(4462), [anon_sym_LBRACK] = ACTIONS(4462), [anon_sym_SEMI] = ACTIONS(4462), [anon_sym_DOLLAR] = ACTIONS(4462), [anon_sym_STAR] = ACTIONS(4462), [anon_sym_TILDE] = ACTIONS(4462), [anon_sym_AT] = ACTIONS(4462), [sym_bool] = ACTIONS(4460), [sym_byte] = ACTIONS(4460), [sym_ubyte] = ACTIONS(4460), [sym_char] = ACTIONS(4460), [sym_short] = ACTIONS(4460), [sym_ushort] = ACTIONS(4460), [sym_int] = ACTIONS(4460), [sym_uint] = ACTIONS(4460), [sym_long] = ACTIONS(4460), [sym_ulong] = ACTIONS(4460), [sym_cent] = ACTIONS(4460), [sym_ucent] = ACTIONS(4460), [sym_wchar] = ACTIONS(4460), [sym_dchar] = ACTIONS(4460), [sym_float] = ACTIONS(4460), [sym_double] = ACTIONS(4460), [sym_real] = ACTIONS(4460), [sym_ifloat] = ACTIONS(4460), [sym_idouble] = ACTIONS(4460), [sym_ireal] = ACTIONS(4460), [sym_cfloat] = ACTIONS(4460), [sym_cdouble] = ACTIONS(4460), [sym_creal] = ACTIONS(4460), [sym_size_t] = ACTIONS(4460), [sym_ptrdiff_t] = ACTIONS(4460), [sym_string] = ACTIONS(4460), [sym_cstring] = ACTIONS(4460), [sym_dstring] = ACTIONS(4460), [sym_wstring] = ACTIONS(4460), [sym_noreturn] = ACTIONS(4460), [sym_true] = ACTIONS(4460), [sym_false] = ACTIONS(4460), [sym_null] = ACTIONS(4460), [sym_super] = ACTIONS(4460), [sym_this] = ACTIONS(4460), [sym_abstract] = ACTIONS(4460), [sym_alias] = ACTIONS(4460), [sym_align] = ACTIONS(4460), [sym_asm] = ACTIONS(4460), [sym_assert] = ACTIONS(4460), [sym_auto] = ACTIONS(4460), [sym_break] = ACTIONS(4460), [sym_case] = ACTIONS(4460), [sym_cast] = ACTIONS(4460), [sym_class] = ACTIONS(4460), [sym_const] = ACTIONS(4460), [sym_continue] = ACTIONS(4460), [sym_debug] = ACTIONS(4460), [sym_default] = ACTIONS(4460), [sym_delegate] = ACTIONS(4460), [sym_delete] = ACTIONS(4460), [sym_deprecated] = ACTIONS(4460), [sym_do] = ACTIONS(4460), [sym_else] = ACTIONS(4460), [sym_enum] = ACTIONS(4460), [sym_export] = ACTIONS(4460), [sym_extern] = ACTIONS(4460), [sym_final] = ACTIONS(4460), [sym_for] = ACTIONS(4460), [sym_foreach] = ACTIONS(4460), [sym_foreach_reverse] = ACTIONS(4460), [sym_function] = ACTIONS(4460), [sym_goto] = ACTIONS(4460), [sym_if] = ACTIONS(4460), [sym_immutable] = ACTIONS(4460), [sym_import] = ACTIONS(4460), [sym_in] = ACTIONS(4460), [sym_inout] = ACTIONS(4460), [sym_interface] = ACTIONS(4460), [sym_invariant] = ACTIONS(4460), [sym_is] = ACTIONS(4460), [sym_mixin] = ACTIONS(4460), [sym_new] = ACTIONS(4460), [sym_nothrow] = ACTIONS(4460), [sym_out] = ACTIONS(4460), [sym_override] = ACTIONS(4460), [sym_package] = ACTIONS(4460), [sym_pragma] = ACTIONS(4460), [sym_private] = ACTIONS(4460), [sym_protected] = ACTIONS(4460), [sym_public] = ACTIONS(4460), [sym_pure] = ACTIONS(4460), [sym_ref] = ACTIONS(4460), [sym_return] = ACTIONS(4460), [sym_scope] = ACTIONS(4460), [sym_shared] = ACTIONS(4460), [sym_static] = ACTIONS(4460), [sym_struct] = ACTIONS(4460), [sym_switch] = ACTIONS(4460), [sym_synchronized] = ACTIONS(4460), [sym_template] = ACTIONS(4460), [sym_throw] = ACTIONS(4460), [sym_try] = ACTIONS(4460), [sym_typeid] = ACTIONS(4460), [sym_typeof] = ACTIONS(4460), [sym_union] = ACTIONS(4460), [sym_unittest] = ACTIONS(4460), [sym_version] = ACTIONS(4460), [sym_while] = ACTIONS(4460), [sym_with] = ACTIONS(4460), [sym_gshared] = ACTIONS(4460), [sym_traits] = ACTIONS(4460), [sym_vector] = ACTIONS(4460), [sym_void] = ACTIONS(4460), [anon_sym_BQUOTE] = ACTIONS(4462), [anon_sym_r_DQUOTE] = ACTIONS(4462), [anon_sym_x_DQUOTE] = ACTIONS(4462), [anon_sym_DQUOTE] = ACTIONS(4462), [anon_sym_i_BQUOTE] = ACTIONS(4462), [anon_sym_i_DQUOTE] = ACTIONS(4462), [anon_sym_iq_LBRACE] = ACTIONS(4462), [aux_sym_char_literal_token1] = ACTIONS(4462), [anon_sym_SQUOTE] = ACTIONS(4460), [anon_sym___DATE__] = ACTIONS(4460), [anon_sym___FILE__] = ACTIONS(4460), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4460), [anon_sym___FUNCTION__] = ACTIONS(4460), [anon_sym___LINE__] = ACTIONS(4460), [anon_sym___MODULE__] = ACTIONS(4460), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4460), [anon_sym___TIME__] = ACTIONS(4460), [anon_sym___TIMESTAMP__] = ACTIONS(4460), [anon_sym___VENDOR__] = ACTIONS(4460), [anon_sym___VERSION__] = ACTIONS(4460), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4462), [sym_float_literal] = ACTIONS(4462), [sym__string] = ACTIONS(4462), }, [1691] = { [sym_identifier] = ACTIONS(4658), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4660), [anon_sym_RBRACE] = ACTIONS(4660), [anon_sym_LBRACE] = ACTIONS(4660), [anon_sym_DOT] = ACTIONS(4660), [anon_sym_AMP] = ACTIONS(4660), [anon_sym_DASH] = ACTIONS(4658), [anon_sym_DASH_DASH] = ACTIONS(4660), [anon_sym_PLUS] = ACTIONS(4658), [anon_sym_PLUS_PLUS] = ACTIONS(4660), [anon_sym_BANG] = ACTIONS(4660), [anon_sym_LPAREN] = ACTIONS(4660), [anon_sym_RPAREN] = ACTIONS(4660), [anon_sym_LBRACK] = ACTIONS(4660), [anon_sym_SEMI] = ACTIONS(4660), [anon_sym_DOLLAR] = ACTIONS(4660), [anon_sym_STAR] = ACTIONS(4660), [anon_sym_TILDE] = ACTIONS(4660), [anon_sym_AT] = ACTIONS(4660), [sym_bool] = ACTIONS(4658), [sym_byte] = ACTIONS(4658), [sym_ubyte] = ACTIONS(4658), [sym_char] = ACTIONS(4658), [sym_short] = ACTIONS(4658), [sym_ushort] = ACTIONS(4658), [sym_int] = ACTIONS(4658), [sym_uint] = ACTIONS(4658), [sym_long] = ACTIONS(4658), [sym_ulong] = ACTIONS(4658), [sym_cent] = ACTIONS(4658), [sym_ucent] = ACTIONS(4658), [sym_wchar] = ACTIONS(4658), [sym_dchar] = ACTIONS(4658), [sym_float] = ACTIONS(4658), [sym_double] = ACTIONS(4658), [sym_real] = ACTIONS(4658), [sym_ifloat] = ACTIONS(4658), [sym_idouble] = ACTIONS(4658), [sym_ireal] = ACTIONS(4658), [sym_cfloat] = ACTIONS(4658), [sym_cdouble] = ACTIONS(4658), [sym_creal] = ACTIONS(4658), [sym_size_t] = ACTIONS(4658), [sym_ptrdiff_t] = ACTIONS(4658), [sym_string] = ACTIONS(4658), [sym_cstring] = ACTIONS(4658), [sym_dstring] = ACTIONS(4658), [sym_wstring] = ACTIONS(4658), [sym_noreturn] = ACTIONS(4658), [sym_true] = ACTIONS(4658), [sym_false] = ACTIONS(4658), [sym_null] = ACTIONS(4658), [sym_super] = ACTIONS(4658), [sym_this] = ACTIONS(4658), [sym_abstract] = ACTIONS(4658), [sym_alias] = ACTIONS(4658), [sym_align] = ACTIONS(4658), [sym_asm] = ACTIONS(4658), [sym_assert] = ACTIONS(4658), [sym_auto] = ACTIONS(4658), [sym_break] = ACTIONS(4658), [sym_case] = ACTIONS(4658), [sym_cast] = ACTIONS(4658), [sym_class] = ACTIONS(4658), [sym_const] = ACTIONS(4658), [sym_continue] = ACTIONS(4658), [sym_debug] = ACTIONS(4658), [sym_default] = ACTIONS(4658), [sym_delegate] = ACTIONS(4658), [sym_delete] = ACTIONS(4658), [sym_deprecated] = ACTIONS(4658), [sym_do] = ACTIONS(4658), [sym_else] = ACTIONS(4658), [sym_enum] = ACTIONS(4658), [sym_export] = ACTIONS(4658), [sym_extern] = ACTIONS(4658), [sym_final] = ACTIONS(4658), [sym_for] = ACTIONS(4658), [sym_foreach] = ACTIONS(4658), [sym_foreach_reverse] = ACTIONS(4658), [sym_function] = ACTIONS(4658), [sym_goto] = ACTIONS(4658), [sym_if] = ACTIONS(4658), [sym_immutable] = ACTIONS(4658), [sym_import] = ACTIONS(4658), [sym_in] = ACTIONS(4658), [sym_inout] = ACTIONS(4658), [sym_interface] = ACTIONS(4658), [sym_invariant] = ACTIONS(4658), [sym_is] = ACTIONS(4658), [sym_mixin] = ACTIONS(4658), [sym_new] = ACTIONS(4658), [sym_nothrow] = ACTIONS(4658), [sym_out] = ACTIONS(4658), [sym_override] = ACTIONS(4658), [sym_package] = ACTIONS(4658), [sym_pragma] = ACTIONS(4658), [sym_private] = ACTIONS(4658), [sym_protected] = ACTIONS(4658), [sym_public] = ACTIONS(4658), [sym_pure] = ACTIONS(4658), [sym_ref] = ACTIONS(4658), [sym_return] = ACTIONS(4658), [sym_scope] = ACTIONS(4658), [sym_shared] = ACTIONS(4658), [sym_static] = ACTIONS(4658), [sym_struct] = ACTIONS(4658), [sym_switch] = ACTIONS(4658), [sym_synchronized] = ACTIONS(4658), [sym_template] = ACTIONS(4658), [sym_throw] = ACTIONS(4658), [sym_try] = ACTIONS(4658), [sym_typeid] = ACTIONS(4658), [sym_typeof] = ACTIONS(4658), [sym_union] = ACTIONS(4658), [sym_unittest] = ACTIONS(4658), [sym_version] = ACTIONS(4658), [sym_while] = ACTIONS(4658), [sym_with] = ACTIONS(4658), [sym_gshared] = ACTIONS(4658), [sym_traits] = ACTIONS(4658), [sym_vector] = ACTIONS(4658), [sym_void] = ACTIONS(4658), [anon_sym_BQUOTE] = ACTIONS(4660), [anon_sym_r_DQUOTE] = ACTIONS(4660), [anon_sym_x_DQUOTE] = ACTIONS(4660), [anon_sym_DQUOTE] = ACTIONS(4660), [anon_sym_i_BQUOTE] = ACTIONS(4660), [anon_sym_i_DQUOTE] = ACTIONS(4660), [anon_sym_iq_LBRACE] = ACTIONS(4660), [aux_sym_char_literal_token1] = ACTIONS(4660), [anon_sym_SQUOTE] = ACTIONS(4658), [anon_sym___DATE__] = ACTIONS(4658), [anon_sym___FILE__] = ACTIONS(4658), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4658), [anon_sym___FUNCTION__] = ACTIONS(4658), [anon_sym___LINE__] = ACTIONS(4658), [anon_sym___MODULE__] = ACTIONS(4658), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4658), [anon_sym___TIME__] = ACTIONS(4658), [anon_sym___TIMESTAMP__] = ACTIONS(4658), [anon_sym___VENDOR__] = ACTIONS(4658), [anon_sym___VERSION__] = ACTIONS(4658), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4660), [sym_float_literal] = ACTIONS(4660), [sym__string] = ACTIONS(4660), }, [1692] = { [sym_identifier] = ACTIONS(4654), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4656), [anon_sym_RBRACE] = ACTIONS(4656), [anon_sym_LBRACE] = ACTIONS(4656), [anon_sym_DOT] = ACTIONS(4656), [anon_sym_AMP] = ACTIONS(4656), [anon_sym_DASH] = ACTIONS(4654), [anon_sym_DASH_DASH] = ACTIONS(4656), [anon_sym_PLUS] = ACTIONS(4654), [anon_sym_PLUS_PLUS] = ACTIONS(4656), [anon_sym_BANG] = ACTIONS(4656), [anon_sym_LPAREN] = ACTIONS(4656), [anon_sym_RPAREN] = ACTIONS(4656), [anon_sym_LBRACK] = ACTIONS(4656), [anon_sym_SEMI] = ACTIONS(4656), [anon_sym_DOLLAR] = ACTIONS(4656), [anon_sym_STAR] = ACTIONS(4656), [anon_sym_TILDE] = ACTIONS(4656), [anon_sym_AT] = ACTIONS(4656), [sym_bool] = ACTIONS(4654), [sym_byte] = ACTIONS(4654), [sym_ubyte] = ACTIONS(4654), [sym_char] = ACTIONS(4654), [sym_short] = ACTIONS(4654), [sym_ushort] = ACTIONS(4654), [sym_int] = ACTIONS(4654), [sym_uint] = ACTIONS(4654), [sym_long] = ACTIONS(4654), [sym_ulong] = ACTIONS(4654), [sym_cent] = ACTIONS(4654), [sym_ucent] = ACTIONS(4654), [sym_wchar] = ACTIONS(4654), [sym_dchar] = ACTIONS(4654), [sym_float] = ACTIONS(4654), [sym_double] = ACTIONS(4654), [sym_real] = ACTIONS(4654), [sym_ifloat] = ACTIONS(4654), [sym_idouble] = ACTIONS(4654), [sym_ireal] = ACTIONS(4654), [sym_cfloat] = ACTIONS(4654), [sym_cdouble] = ACTIONS(4654), [sym_creal] = ACTIONS(4654), [sym_size_t] = ACTIONS(4654), [sym_ptrdiff_t] = ACTIONS(4654), [sym_string] = ACTIONS(4654), [sym_cstring] = ACTIONS(4654), [sym_dstring] = ACTIONS(4654), [sym_wstring] = ACTIONS(4654), [sym_noreturn] = ACTIONS(4654), [sym_true] = ACTIONS(4654), [sym_false] = ACTIONS(4654), [sym_null] = ACTIONS(4654), [sym_super] = ACTIONS(4654), [sym_this] = ACTIONS(4654), [sym_abstract] = ACTIONS(4654), [sym_alias] = ACTIONS(4654), [sym_align] = ACTIONS(4654), [sym_asm] = ACTIONS(4654), [sym_assert] = ACTIONS(4654), [sym_auto] = ACTIONS(4654), [sym_break] = ACTIONS(4654), [sym_case] = ACTIONS(4654), [sym_cast] = ACTIONS(4654), [sym_class] = ACTIONS(4654), [sym_const] = ACTIONS(4654), [sym_continue] = ACTIONS(4654), [sym_debug] = ACTIONS(4654), [sym_default] = ACTIONS(4654), [sym_delegate] = ACTIONS(4654), [sym_delete] = ACTIONS(4654), [sym_deprecated] = ACTIONS(4654), [sym_do] = ACTIONS(4654), [sym_else] = ACTIONS(4654), [sym_enum] = ACTIONS(4654), [sym_export] = ACTIONS(4654), [sym_extern] = ACTIONS(4654), [sym_final] = ACTIONS(4654), [sym_for] = ACTIONS(4654), [sym_foreach] = ACTIONS(4654), [sym_foreach_reverse] = ACTIONS(4654), [sym_function] = ACTIONS(4654), [sym_goto] = ACTIONS(4654), [sym_if] = ACTIONS(4654), [sym_immutable] = ACTIONS(4654), [sym_import] = ACTIONS(4654), [sym_in] = ACTIONS(4654), [sym_inout] = ACTIONS(4654), [sym_interface] = ACTIONS(4654), [sym_invariant] = ACTIONS(4654), [sym_is] = ACTIONS(4654), [sym_mixin] = ACTIONS(4654), [sym_new] = ACTIONS(4654), [sym_nothrow] = ACTIONS(4654), [sym_out] = ACTIONS(4654), [sym_override] = ACTIONS(4654), [sym_package] = ACTIONS(4654), [sym_pragma] = ACTIONS(4654), [sym_private] = ACTIONS(4654), [sym_protected] = ACTIONS(4654), [sym_public] = ACTIONS(4654), [sym_pure] = ACTIONS(4654), [sym_ref] = ACTIONS(4654), [sym_return] = ACTIONS(4654), [sym_scope] = ACTIONS(4654), [sym_shared] = ACTIONS(4654), [sym_static] = ACTIONS(4654), [sym_struct] = ACTIONS(4654), [sym_switch] = ACTIONS(4654), [sym_synchronized] = ACTIONS(4654), [sym_template] = ACTIONS(4654), [sym_throw] = ACTIONS(4654), [sym_try] = ACTIONS(4654), [sym_typeid] = ACTIONS(4654), [sym_typeof] = ACTIONS(4654), [sym_union] = ACTIONS(4654), [sym_unittest] = ACTIONS(4654), [sym_version] = ACTIONS(4654), [sym_while] = ACTIONS(4654), [sym_with] = ACTIONS(4654), [sym_gshared] = ACTIONS(4654), [sym_traits] = ACTIONS(4654), [sym_vector] = ACTIONS(4654), [sym_void] = ACTIONS(4654), [anon_sym_BQUOTE] = ACTIONS(4656), [anon_sym_r_DQUOTE] = ACTIONS(4656), [anon_sym_x_DQUOTE] = ACTIONS(4656), [anon_sym_DQUOTE] = ACTIONS(4656), [anon_sym_i_BQUOTE] = ACTIONS(4656), [anon_sym_i_DQUOTE] = ACTIONS(4656), [anon_sym_iq_LBRACE] = ACTIONS(4656), [aux_sym_char_literal_token1] = ACTIONS(4656), [anon_sym_SQUOTE] = ACTIONS(4654), [anon_sym___DATE__] = ACTIONS(4654), [anon_sym___FILE__] = ACTIONS(4654), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4654), [anon_sym___FUNCTION__] = ACTIONS(4654), [anon_sym___LINE__] = ACTIONS(4654), [anon_sym___MODULE__] = ACTIONS(4654), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4654), [anon_sym___TIME__] = ACTIONS(4654), [anon_sym___TIMESTAMP__] = ACTIONS(4654), [anon_sym___VENDOR__] = ACTIONS(4654), [anon_sym___VERSION__] = ACTIONS(4654), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4656), [sym_float_literal] = ACTIONS(4656), [sym__string] = ACTIONS(4656), }, [1693] = { [sym_identifier] = ACTIONS(4578), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4580), [anon_sym_RBRACE] = ACTIONS(4580), [anon_sym_LBRACE] = ACTIONS(4580), [anon_sym_DOT] = ACTIONS(4580), [anon_sym_AMP] = ACTIONS(4580), [anon_sym_DASH] = ACTIONS(4578), [anon_sym_DASH_DASH] = ACTIONS(4580), [anon_sym_PLUS] = ACTIONS(4578), [anon_sym_PLUS_PLUS] = ACTIONS(4580), [anon_sym_BANG] = ACTIONS(4580), [anon_sym_LPAREN] = ACTIONS(4580), [anon_sym_RPAREN] = ACTIONS(4580), [anon_sym_LBRACK] = ACTIONS(4580), [anon_sym_SEMI] = ACTIONS(4580), [anon_sym_DOLLAR] = ACTIONS(4580), [anon_sym_STAR] = ACTIONS(4580), [anon_sym_TILDE] = ACTIONS(4580), [anon_sym_AT] = ACTIONS(4580), [sym_bool] = ACTIONS(4578), [sym_byte] = ACTIONS(4578), [sym_ubyte] = ACTIONS(4578), [sym_char] = ACTIONS(4578), [sym_short] = ACTIONS(4578), [sym_ushort] = ACTIONS(4578), [sym_int] = ACTIONS(4578), [sym_uint] = ACTIONS(4578), [sym_long] = ACTIONS(4578), [sym_ulong] = ACTIONS(4578), [sym_cent] = ACTIONS(4578), [sym_ucent] = ACTIONS(4578), [sym_wchar] = ACTIONS(4578), [sym_dchar] = ACTIONS(4578), [sym_float] = ACTIONS(4578), [sym_double] = ACTIONS(4578), [sym_real] = ACTIONS(4578), [sym_ifloat] = ACTIONS(4578), [sym_idouble] = ACTIONS(4578), [sym_ireal] = ACTIONS(4578), [sym_cfloat] = ACTIONS(4578), [sym_cdouble] = ACTIONS(4578), [sym_creal] = ACTIONS(4578), [sym_size_t] = ACTIONS(4578), [sym_ptrdiff_t] = ACTIONS(4578), [sym_string] = ACTIONS(4578), [sym_cstring] = ACTIONS(4578), [sym_dstring] = ACTIONS(4578), [sym_wstring] = ACTIONS(4578), [sym_noreturn] = ACTIONS(4578), [sym_true] = ACTIONS(4578), [sym_false] = ACTIONS(4578), [sym_null] = ACTIONS(4578), [sym_super] = ACTIONS(4578), [sym_this] = ACTIONS(4578), [sym_abstract] = ACTIONS(4578), [sym_alias] = ACTIONS(4578), [sym_align] = ACTIONS(4578), [sym_asm] = ACTIONS(4578), [sym_assert] = ACTIONS(4578), [sym_auto] = ACTIONS(4578), [sym_break] = ACTIONS(4578), [sym_case] = ACTIONS(4578), [sym_cast] = ACTIONS(4578), [sym_class] = ACTIONS(4578), [sym_const] = ACTIONS(4578), [sym_continue] = ACTIONS(4578), [sym_debug] = ACTIONS(4578), [sym_default] = ACTIONS(4578), [sym_delegate] = ACTIONS(4578), [sym_delete] = ACTIONS(4578), [sym_deprecated] = ACTIONS(4578), [sym_do] = ACTIONS(4578), [sym_else] = ACTIONS(4578), [sym_enum] = ACTIONS(4578), [sym_export] = ACTIONS(4578), [sym_extern] = ACTIONS(4578), [sym_final] = ACTIONS(4578), [sym_for] = ACTIONS(4578), [sym_foreach] = ACTIONS(4578), [sym_foreach_reverse] = ACTIONS(4578), [sym_function] = ACTIONS(4578), [sym_goto] = ACTIONS(4578), [sym_if] = ACTIONS(4578), [sym_immutable] = ACTIONS(4578), [sym_import] = ACTIONS(4578), [sym_in] = ACTIONS(4578), [sym_inout] = ACTIONS(4578), [sym_interface] = ACTIONS(4578), [sym_invariant] = ACTIONS(4578), [sym_is] = ACTIONS(4578), [sym_mixin] = ACTIONS(4578), [sym_new] = ACTIONS(4578), [sym_nothrow] = ACTIONS(4578), [sym_out] = ACTIONS(4578), [sym_override] = ACTIONS(4578), [sym_package] = ACTIONS(4578), [sym_pragma] = ACTIONS(4578), [sym_private] = ACTIONS(4578), [sym_protected] = ACTIONS(4578), [sym_public] = ACTIONS(4578), [sym_pure] = ACTIONS(4578), [sym_ref] = ACTIONS(4578), [sym_return] = ACTIONS(4578), [sym_scope] = ACTIONS(4578), [sym_shared] = ACTIONS(4578), [sym_static] = ACTIONS(4578), [sym_struct] = ACTIONS(4578), [sym_switch] = ACTIONS(4578), [sym_synchronized] = ACTIONS(4578), [sym_template] = ACTIONS(4578), [sym_throw] = ACTIONS(4578), [sym_try] = ACTIONS(4578), [sym_typeid] = ACTIONS(4578), [sym_typeof] = ACTIONS(4578), [sym_union] = ACTIONS(4578), [sym_unittest] = ACTIONS(4578), [sym_version] = ACTIONS(4578), [sym_while] = ACTIONS(4578), [sym_with] = ACTIONS(4578), [sym_gshared] = ACTIONS(4578), [sym_traits] = ACTIONS(4578), [sym_vector] = ACTIONS(4578), [sym_void] = ACTIONS(4578), [anon_sym_BQUOTE] = ACTIONS(4580), [anon_sym_r_DQUOTE] = ACTIONS(4580), [anon_sym_x_DQUOTE] = ACTIONS(4580), [anon_sym_DQUOTE] = ACTIONS(4580), [anon_sym_i_BQUOTE] = ACTIONS(4580), [anon_sym_i_DQUOTE] = ACTIONS(4580), [anon_sym_iq_LBRACE] = ACTIONS(4580), [aux_sym_char_literal_token1] = ACTIONS(4580), [anon_sym_SQUOTE] = ACTIONS(4578), [anon_sym___DATE__] = ACTIONS(4578), [anon_sym___FILE__] = ACTIONS(4578), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4578), [anon_sym___FUNCTION__] = ACTIONS(4578), [anon_sym___LINE__] = ACTIONS(4578), [anon_sym___MODULE__] = ACTIONS(4578), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4578), [anon_sym___TIME__] = ACTIONS(4578), [anon_sym___TIMESTAMP__] = ACTIONS(4578), [anon_sym___VENDOR__] = ACTIONS(4578), [anon_sym___VERSION__] = ACTIONS(4578), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4580), [sym_float_literal] = ACTIONS(4580), [sym__string] = ACTIONS(4580), }, [1694] = { [sym_identifier] = ACTIONS(5056), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5058), [anon_sym_RBRACE] = ACTIONS(5058), [anon_sym_LBRACE] = ACTIONS(5058), [anon_sym_DOT] = ACTIONS(5058), [anon_sym_AMP] = ACTIONS(5058), [anon_sym_DASH] = ACTIONS(5056), [anon_sym_DASH_DASH] = ACTIONS(5058), [anon_sym_PLUS] = ACTIONS(5056), [anon_sym_PLUS_PLUS] = ACTIONS(5058), [anon_sym_BANG] = ACTIONS(5058), [anon_sym_LPAREN] = ACTIONS(5058), [anon_sym_RPAREN] = ACTIONS(5058), [anon_sym_LBRACK] = ACTIONS(5058), [anon_sym_SEMI] = ACTIONS(5058), [anon_sym_DOLLAR] = ACTIONS(5058), [anon_sym_STAR] = ACTIONS(5058), [anon_sym_TILDE] = ACTIONS(5058), [anon_sym_AT] = ACTIONS(5058), [sym_bool] = ACTIONS(5056), [sym_byte] = ACTIONS(5056), [sym_ubyte] = ACTIONS(5056), [sym_char] = ACTIONS(5056), [sym_short] = ACTIONS(5056), [sym_ushort] = ACTIONS(5056), [sym_int] = ACTIONS(5056), [sym_uint] = ACTIONS(5056), [sym_long] = ACTIONS(5056), [sym_ulong] = ACTIONS(5056), [sym_cent] = ACTIONS(5056), [sym_ucent] = ACTIONS(5056), [sym_wchar] = ACTIONS(5056), [sym_dchar] = ACTIONS(5056), [sym_float] = ACTIONS(5056), [sym_double] = ACTIONS(5056), [sym_real] = ACTIONS(5056), [sym_ifloat] = ACTIONS(5056), [sym_idouble] = ACTIONS(5056), [sym_ireal] = ACTIONS(5056), [sym_cfloat] = ACTIONS(5056), [sym_cdouble] = ACTIONS(5056), [sym_creal] = ACTIONS(5056), [sym_size_t] = ACTIONS(5056), [sym_ptrdiff_t] = ACTIONS(5056), [sym_string] = ACTIONS(5056), [sym_cstring] = ACTIONS(5056), [sym_dstring] = ACTIONS(5056), [sym_wstring] = ACTIONS(5056), [sym_noreturn] = ACTIONS(5056), [sym_true] = ACTIONS(5056), [sym_false] = ACTIONS(5056), [sym_null] = ACTIONS(5056), [sym_super] = ACTIONS(5056), [sym_this] = ACTIONS(5056), [sym_abstract] = ACTIONS(5056), [sym_alias] = ACTIONS(5056), [sym_align] = ACTIONS(5056), [sym_asm] = ACTIONS(5056), [sym_assert] = ACTIONS(5056), [sym_auto] = ACTIONS(5056), [sym_break] = ACTIONS(5056), [sym_case] = ACTIONS(5056), [sym_cast] = ACTIONS(5056), [sym_class] = ACTIONS(5056), [sym_const] = ACTIONS(5056), [sym_continue] = ACTIONS(5056), [sym_debug] = ACTIONS(5056), [sym_default] = ACTIONS(5056), [sym_delegate] = ACTIONS(5056), [sym_delete] = ACTIONS(5056), [sym_deprecated] = ACTIONS(5056), [sym_do] = ACTIONS(5056), [sym_else] = ACTIONS(5056), [sym_enum] = ACTIONS(5056), [sym_export] = ACTIONS(5056), [sym_extern] = ACTIONS(5056), [sym_final] = ACTIONS(5056), [sym_for] = ACTIONS(5056), [sym_foreach] = ACTIONS(5056), [sym_foreach_reverse] = ACTIONS(5056), [sym_function] = ACTIONS(5056), [sym_goto] = ACTIONS(5056), [sym_if] = ACTIONS(5056), [sym_immutable] = ACTIONS(5056), [sym_import] = ACTIONS(5056), [sym_in] = ACTIONS(5056), [sym_inout] = ACTIONS(5056), [sym_interface] = ACTIONS(5056), [sym_invariant] = ACTIONS(5056), [sym_is] = ACTIONS(5056), [sym_mixin] = ACTIONS(5056), [sym_new] = ACTIONS(5056), [sym_nothrow] = ACTIONS(5056), [sym_out] = ACTIONS(5056), [sym_override] = ACTIONS(5056), [sym_package] = ACTIONS(5056), [sym_pragma] = ACTIONS(5056), [sym_private] = ACTIONS(5056), [sym_protected] = ACTIONS(5056), [sym_public] = ACTIONS(5056), [sym_pure] = ACTIONS(5056), [sym_ref] = ACTIONS(5056), [sym_return] = ACTIONS(5056), [sym_scope] = ACTIONS(5056), [sym_shared] = ACTIONS(5056), [sym_static] = ACTIONS(5056), [sym_struct] = ACTIONS(5056), [sym_switch] = ACTIONS(5056), [sym_synchronized] = ACTIONS(5056), [sym_template] = ACTIONS(5056), [sym_throw] = ACTIONS(5056), [sym_try] = ACTIONS(5056), [sym_typeid] = ACTIONS(5056), [sym_typeof] = ACTIONS(5056), [sym_union] = ACTIONS(5056), [sym_unittest] = ACTIONS(5056), [sym_version] = ACTIONS(5056), [sym_while] = ACTIONS(5056), [sym_with] = ACTIONS(5056), [sym_gshared] = ACTIONS(5056), [sym_traits] = ACTIONS(5056), [sym_vector] = ACTIONS(5056), [sym_void] = ACTIONS(5056), [anon_sym_BQUOTE] = ACTIONS(5058), [anon_sym_r_DQUOTE] = ACTIONS(5058), [anon_sym_x_DQUOTE] = ACTIONS(5058), [anon_sym_DQUOTE] = ACTIONS(5058), [anon_sym_i_BQUOTE] = ACTIONS(5058), [anon_sym_i_DQUOTE] = ACTIONS(5058), [anon_sym_iq_LBRACE] = ACTIONS(5058), [aux_sym_char_literal_token1] = ACTIONS(5058), [anon_sym_SQUOTE] = ACTIONS(5056), [anon_sym___DATE__] = ACTIONS(5056), [anon_sym___FILE__] = ACTIONS(5056), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5056), [anon_sym___FUNCTION__] = ACTIONS(5056), [anon_sym___LINE__] = ACTIONS(5056), [anon_sym___MODULE__] = ACTIONS(5056), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5056), [anon_sym___TIME__] = ACTIONS(5056), [anon_sym___TIMESTAMP__] = ACTIONS(5056), [anon_sym___VENDOR__] = ACTIONS(5056), [anon_sym___VERSION__] = ACTIONS(5056), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5058), [sym_float_literal] = ACTIONS(5058), [sym__string] = ACTIONS(5058), }, [1695] = { [sym_identifier] = ACTIONS(5044), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5046), [anon_sym_RBRACE] = ACTIONS(5046), [anon_sym_LBRACE] = ACTIONS(5046), [anon_sym_DOT] = ACTIONS(5046), [anon_sym_AMP] = ACTIONS(5046), [anon_sym_DASH] = ACTIONS(5044), [anon_sym_DASH_DASH] = ACTIONS(5046), [anon_sym_PLUS] = ACTIONS(5044), [anon_sym_PLUS_PLUS] = ACTIONS(5046), [anon_sym_BANG] = ACTIONS(5046), [anon_sym_LPAREN] = ACTIONS(5046), [anon_sym_RPAREN] = ACTIONS(5046), [anon_sym_LBRACK] = ACTIONS(5046), [anon_sym_SEMI] = ACTIONS(5046), [anon_sym_DOLLAR] = ACTIONS(5046), [anon_sym_STAR] = ACTIONS(5046), [anon_sym_TILDE] = ACTIONS(5046), [anon_sym_AT] = ACTIONS(5046), [sym_bool] = ACTIONS(5044), [sym_byte] = ACTIONS(5044), [sym_ubyte] = ACTIONS(5044), [sym_char] = ACTIONS(5044), [sym_short] = ACTIONS(5044), [sym_ushort] = ACTIONS(5044), [sym_int] = ACTIONS(5044), [sym_uint] = ACTIONS(5044), [sym_long] = ACTIONS(5044), [sym_ulong] = ACTIONS(5044), [sym_cent] = ACTIONS(5044), [sym_ucent] = ACTIONS(5044), [sym_wchar] = ACTIONS(5044), [sym_dchar] = ACTIONS(5044), [sym_float] = ACTIONS(5044), [sym_double] = ACTIONS(5044), [sym_real] = ACTIONS(5044), [sym_ifloat] = ACTIONS(5044), [sym_idouble] = ACTIONS(5044), [sym_ireal] = ACTIONS(5044), [sym_cfloat] = ACTIONS(5044), [sym_cdouble] = ACTIONS(5044), [sym_creal] = ACTIONS(5044), [sym_size_t] = ACTIONS(5044), [sym_ptrdiff_t] = ACTIONS(5044), [sym_string] = ACTIONS(5044), [sym_cstring] = ACTIONS(5044), [sym_dstring] = ACTIONS(5044), [sym_wstring] = ACTIONS(5044), [sym_noreturn] = ACTIONS(5044), [sym_true] = ACTIONS(5044), [sym_false] = ACTIONS(5044), [sym_null] = ACTIONS(5044), [sym_super] = ACTIONS(5044), [sym_this] = ACTIONS(5044), [sym_abstract] = ACTIONS(5044), [sym_alias] = ACTIONS(5044), [sym_align] = ACTIONS(5044), [sym_asm] = ACTIONS(5044), [sym_assert] = ACTIONS(5044), [sym_auto] = ACTIONS(5044), [sym_break] = ACTIONS(5044), [sym_case] = ACTIONS(5044), [sym_cast] = ACTIONS(5044), [sym_class] = ACTIONS(5044), [sym_const] = ACTIONS(5044), [sym_continue] = ACTIONS(5044), [sym_debug] = ACTIONS(5044), [sym_default] = ACTIONS(5044), [sym_delegate] = ACTIONS(5044), [sym_delete] = ACTIONS(5044), [sym_deprecated] = ACTIONS(5044), [sym_do] = ACTIONS(5044), [sym_else] = ACTIONS(5044), [sym_enum] = ACTIONS(5044), [sym_export] = ACTIONS(5044), [sym_extern] = ACTIONS(5044), [sym_final] = ACTIONS(5044), [sym_for] = ACTIONS(5044), [sym_foreach] = ACTIONS(5044), [sym_foreach_reverse] = ACTIONS(5044), [sym_function] = ACTIONS(5044), [sym_goto] = ACTIONS(5044), [sym_if] = ACTIONS(5044), [sym_immutable] = ACTIONS(5044), [sym_import] = ACTIONS(5044), [sym_in] = ACTIONS(5044), [sym_inout] = ACTIONS(5044), [sym_interface] = ACTIONS(5044), [sym_invariant] = ACTIONS(5044), [sym_is] = ACTIONS(5044), [sym_mixin] = ACTIONS(5044), [sym_new] = ACTIONS(5044), [sym_nothrow] = ACTIONS(5044), [sym_out] = ACTIONS(5044), [sym_override] = ACTIONS(5044), [sym_package] = ACTIONS(5044), [sym_pragma] = ACTIONS(5044), [sym_private] = ACTIONS(5044), [sym_protected] = ACTIONS(5044), [sym_public] = ACTIONS(5044), [sym_pure] = ACTIONS(5044), [sym_ref] = ACTIONS(5044), [sym_return] = ACTIONS(5044), [sym_scope] = ACTIONS(5044), [sym_shared] = ACTIONS(5044), [sym_static] = ACTIONS(5044), [sym_struct] = ACTIONS(5044), [sym_switch] = ACTIONS(5044), [sym_synchronized] = ACTIONS(5044), [sym_template] = ACTIONS(5044), [sym_throw] = ACTIONS(5044), [sym_try] = ACTIONS(5044), [sym_typeid] = ACTIONS(5044), [sym_typeof] = ACTIONS(5044), [sym_union] = ACTIONS(5044), [sym_unittest] = ACTIONS(5044), [sym_version] = ACTIONS(5044), [sym_while] = ACTIONS(5044), [sym_with] = ACTIONS(5044), [sym_gshared] = ACTIONS(5044), [sym_traits] = ACTIONS(5044), [sym_vector] = ACTIONS(5044), [sym_void] = ACTIONS(5044), [anon_sym_BQUOTE] = ACTIONS(5046), [anon_sym_r_DQUOTE] = ACTIONS(5046), [anon_sym_x_DQUOTE] = ACTIONS(5046), [anon_sym_DQUOTE] = ACTIONS(5046), [anon_sym_i_BQUOTE] = ACTIONS(5046), [anon_sym_i_DQUOTE] = ACTIONS(5046), [anon_sym_iq_LBRACE] = ACTIONS(5046), [aux_sym_char_literal_token1] = ACTIONS(5046), [anon_sym_SQUOTE] = ACTIONS(5044), [anon_sym___DATE__] = ACTIONS(5044), [anon_sym___FILE__] = ACTIONS(5044), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5044), [anon_sym___FUNCTION__] = ACTIONS(5044), [anon_sym___LINE__] = ACTIONS(5044), [anon_sym___MODULE__] = ACTIONS(5044), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5044), [anon_sym___TIME__] = ACTIONS(5044), [anon_sym___TIMESTAMP__] = ACTIONS(5044), [anon_sym___VENDOR__] = ACTIONS(5044), [anon_sym___VERSION__] = ACTIONS(5044), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5046), [sym_float_literal] = ACTIONS(5046), [sym__string] = ACTIONS(5046), }, [1696] = { [sym_identifier] = ACTIONS(4598), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4600), [anon_sym_RBRACE] = ACTIONS(4600), [anon_sym_LBRACE] = ACTIONS(4600), [anon_sym_DOT] = ACTIONS(4600), [anon_sym_AMP] = ACTIONS(4600), [anon_sym_DASH] = ACTIONS(4598), [anon_sym_DASH_DASH] = ACTIONS(4600), [anon_sym_PLUS] = ACTIONS(4598), [anon_sym_PLUS_PLUS] = ACTIONS(4600), [anon_sym_BANG] = ACTIONS(4600), [anon_sym_LPAREN] = ACTIONS(4600), [anon_sym_RPAREN] = ACTIONS(4600), [anon_sym_LBRACK] = ACTIONS(4600), [anon_sym_SEMI] = ACTIONS(4600), [anon_sym_DOLLAR] = ACTIONS(4600), [anon_sym_STAR] = ACTIONS(4600), [anon_sym_TILDE] = ACTIONS(4600), [anon_sym_AT] = ACTIONS(4600), [sym_bool] = ACTIONS(4598), [sym_byte] = ACTIONS(4598), [sym_ubyte] = ACTIONS(4598), [sym_char] = ACTIONS(4598), [sym_short] = ACTIONS(4598), [sym_ushort] = ACTIONS(4598), [sym_int] = ACTIONS(4598), [sym_uint] = ACTIONS(4598), [sym_long] = ACTIONS(4598), [sym_ulong] = ACTIONS(4598), [sym_cent] = ACTIONS(4598), [sym_ucent] = ACTIONS(4598), [sym_wchar] = ACTIONS(4598), [sym_dchar] = ACTIONS(4598), [sym_float] = ACTIONS(4598), [sym_double] = ACTIONS(4598), [sym_real] = ACTIONS(4598), [sym_ifloat] = ACTIONS(4598), [sym_idouble] = ACTIONS(4598), [sym_ireal] = ACTIONS(4598), [sym_cfloat] = ACTIONS(4598), [sym_cdouble] = ACTIONS(4598), [sym_creal] = ACTIONS(4598), [sym_size_t] = ACTIONS(4598), [sym_ptrdiff_t] = ACTIONS(4598), [sym_string] = ACTIONS(4598), [sym_cstring] = ACTIONS(4598), [sym_dstring] = ACTIONS(4598), [sym_wstring] = ACTIONS(4598), [sym_noreturn] = ACTIONS(4598), [sym_true] = ACTIONS(4598), [sym_false] = ACTIONS(4598), [sym_null] = ACTIONS(4598), [sym_super] = ACTIONS(4598), [sym_this] = ACTIONS(4598), [sym_abstract] = ACTIONS(4598), [sym_alias] = ACTIONS(4598), [sym_align] = ACTIONS(4598), [sym_asm] = ACTIONS(4598), [sym_assert] = ACTIONS(4598), [sym_auto] = ACTIONS(4598), [sym_break] = ACTIONS(4598), [sym_case] = ACTIONS(4598), [sym_cast] = ACTIONS(4598), [sym_class] = ACTIONS(4598), [sym_const] = ACTIONS(4598), [sym_continue] = ACTIONS(4598), [sym_debug] = ACTIONS(4598), [sym_default] = ACTIONS(4598), [sym_delegate] = ACTIONS(4598), [sym_delete] = ACTIONS(4598), [sym_deprecated] = ACTIONS(4598), [sym_do] = ACTIONS(4598), [sym_else] = ACTIONS(4598), [sym_enum] = ACTIONS(4598), [sym_export] = ACTIONS(4598), [sym_extern] = ACTIONS(4598), [sym_final] = ACTIONS(4598), [sym_for] = ACTIONS(4598), [sym_foreach] = ACTIONS(4598), [sym_foreach_reverse] = ACTIONS(4598), [sym_function] = ACTIONS(4598), [sym_goto] = ACTIONS(4598), [sym_if] = ACTIONS(4598), [sym_immutable] = ACTIONS(4598), [sym_import] = ACTIONS(4598), [sym_in] = ACTIONS(4598), [sym_inout] = ACTIONS(4598), [sym_interface] = ACTIONS(4598), [sym_invariant] = ACTIONS(4598), [sym_is] = ACTIONS(4598), [sym_mixin] = ACTIONS(4598), [sym_new] = ACTIONS(4598), [sym_nothrow] = ACTIONS(4598), [sym_out] = ACTIONS(4598), [sym_override] = ACTIONS(4598), [sym_package] = ACTIONS(4598), [sym_pragma] = ACTIONS(4598), [sym_private] = ACTIONS(4598), [sym_protected] = ACTIONS(4598), [sym_public] = ACTIONS(4598), [sym_pure] = ACTIONS(4598), [sym_ref] = ACTIONS(4598), [sym_return] = ACTIONS(4598), [sym_scope] = ACTIONS(4598), [sym_shared] = ACTIONS(4598), [sym_static] = ACTIONS(4598), [sym_struct] = ACTIONS(4598), [sym_switch] = ACTIONS(4598), [sym_synchronized] = ACTIONS(4598), [sym_template] = ACTIONS(4598), [sym_throw] = ACTIONS(4598), [sym_try] = ACTIONS(4598), [sym_typeid] = ACTIONS(4598), [sym_typeof] = ACTIONS(4598), [sym_union] = ACTIONS(4598), [sym_unittest] = ACTIONS(4598), [sym_version] = ACTIONS(4598), [sym_while] = ACTIONS(4598), [sym_with] = ACTIONS(4598), [sym_gshared] = ACTIONS(4598), [sym_traits] = ACTIONS(4598), [sym_vector] = ACTIONS(4598), [sym_void] = ACTIONS(4598), [anon_sym_BQUOTE] = ACTIONS(4600), [anon_sym_r_DQUOTE] = ACTIONS(4600), [anon_sym_x_DQUOTE] = ACTIONS(4600), [anon_sym_DQUOTE] = ACTIONS(4600), [anon_sym_i_BQUOTE] = ACTIONS(4600), [anon_sym_i_DQUOTE] = ACTIONS(4600), [anon_sym_iq_LBRACE] = ACTIONS(4600), [aux_sym_char_literal_token1] = ACTIONS(4600), [anon_sym_SQUOTE] = ACTIONS(4598), [anon_sym___DATE__] = ACTIONS(4598), [anon_sym___FILE__] = ACTIONS(4598), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4598), [anon_sym___FUNCTION__] = ACTIONS(4598), [anon_sym___LINE__] = ACTIONS(4598), [anon_sym___MODULE__] = ACTIONS(4598), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4598), [anon_sym___TIME__] = ACTIONS(4598), [anon_sym___TIMESTAMP__] = ACTIONS(4598), [anon_sym___VENDOR__] = ACTIONS(4598), [anon_sym___VERSION__] = ACTIONS(4598), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4600), [sym_float_literal] = ACTIONS(4600), [sym__string] = ACTIONS(4600), }, [1697] = { [sym_identifier] = ACTIONS(5040), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5042), [anon_sym_RBRACE] = ACTIONS(5042), [anon_sym_LBRACE] = ACTIONS(5042), [anon_sym_DOT] = ACTIONS(5042), [anon_sym_AMP] = ACTIONS(5042), [anon_sym_DASH] = ACTIONS(5040), [anon_sym_DASH_DASH] = ACTIONS(5042), [anon_sym_PLUS] = ACTIONS(5040), [anon_sym_PLUS_PLUS] = ACTIONS(5042), [anon_sym_BANG] = ACTIONS(5042), [anon_sym_LPAREN] = ACTIONS(5042), [anon_sym_RPAREN] = ACTIONS(5042), [anon_sym_LBRACK] = ACTIONS(5042), [anon_sym_SEMI] = ACTIONS(5042), [anon_sym_DOLLAR] = ACTIONS(5042), [anon_sym_STAR] = ACTIONS(5042), [anon_sym_TILDE] = ACTIONS(5042), [anon_sym_AT] = ACTIONS(5042), [sym_bool] = ACTIONS(5040), [sym_byte] = ACTIONS(5040), [sym_ubyte] = ACTIONS(5040), [sym_char] = ACTIONS(5040), [sym_short] = ACTIONS(5040), [sym_ushort] = ACTIONS(5040), [sym_int] = ACTIONS(5040), [sym_uint] = ACTIONS(5040), [sym_long] = ACTIONS(5040), [sym_ulong] = ACTIONS(5040), [sym_cent] = ACTIONS(5040), [sym_ucent] = ACTIONS(5040), [sym_wchar] = ACTIONS(5040), [sym_dchar] = ACTIONS(5040), [sym_float] = ACTIONS(5040), [sym_double] = ACTIONS(5040), [sym_real] = ACTIONS(5040), [sym_ifloat] = ACTIONS(5040), [sym_idouble] = ACTIONS(5040), [sym_ireal] = ACTIONS(5040), [sym_cfloat] = ACTIONS(5040), [sym_cdouble] = ACTIONS(5040), [sym_creal] = ACTIONS(5040), [sym_size_t] = ACTIONS(5040), [sym_ptrdiff_t] = ACTIONS(5040), [sym_string] = ACTIONS(5040), [sym_cstring] = ACTIONS(5040), [sym_dstring] = ACTIONS(5040), [sym_wstring] = ACTIONS(5040), [sym_noreturn] = ACTIONS(5040), [sym_true] = ACTIONS(5040), [sym_false] = ACTIONS(5040), [sym_null] = ACTIONS(5040), [sym_super] = ACTIONS(5040), [sym_this] = ACTIONS(5040), [sym_abstract] = ACTIONS(5040), [sym_alias] = ACTIONS(5040), [sym_align] = ACTIONS(5040), [sym_asm] = ACTIONS(5040), [sym_assert] = ACTIONS(5040), [sym_auto] = ACTIONS(5040), [sym_break] = ACTIONS(5040), [sym_case] = ACTIONS(5040), [sym_cast] = ACTIONS(5040), [sym_class] = ACTIONS(5040), [sym_const] = ACTIONS(5040), [sym_continue] = ACTIONS(5040), [sym_debug] = ACTIONS(5040), [sym_default] = ACTIONS(5040), [sym_delegate] = ACTIONS(5040), [sym_delete] = ACTIONS(5040), [sym_deprecated] = ACTIONS(5040), [sym_do] = ACTIONS(5040), [sym_else] = ACTIONS(5040), [sym_enum] = ACTIONS(5040), [sym_export] = ACTIONS(5040), [sym_extern] = ACTIONS(5040), [sym_final] = ACTIONS(5040), [sym_for] = ACTIONS(5040), [sym_foreach] = ACTIONS(5040), [sym_foreach_reverse] = ACTIONS(5040), [sym_function] = ACTIONS(5040), [sym_goto] = ACTIONS(5040), [sym_if] = ACTIONS(5040), [sym_immutable] = ACTIONS(5040), [sym_import] = ACTIONS(5040), [sym_in] = ACTIONS(5040), [sym_inout] = ACTIONS(5040), [sym_interface] = ACTIONS(5040), [sym_invariant] = ACTIONS(5040), [sym_is] = ACTIONS(5040), [sym_mixin] = ACTIONS(5040), [sym_new] = ACTIONS(5040), [sym_nothrow] = ACTIONS(5040), [sym_out] = ACTIONS(5040), [sym_override] = ACTIONS(5040), [sym_package] = ACTIONS(5040), [sym_pragma] = ACTIONS(5040), [sym_private] = ACTIONS(5040), [sym_protected] = ACTIONS(5040), [sym_public] = ACTIONS(5040), [sym_pure] = ACTIONS(5040), [sym_ref] = ACTIONS(5040), [sym_return] = ACTIONS(5040), [sym_scope] = ACTIONS(5040), [sym_shared] = ACTIONS(5040), [sym_static] = ACTIONS(5040), [sym_struct] = ACTIONS(5040), [sym_switch] = ACTIONS(5040), [sym_synchronized] = ACTIONS(5040), [sym_template] = ACTIONS(5040), [sym_throw] = ACTIONS(5040), [sym_try] = ACTIONS(5040), [sym_typeid] = ACTIONS(5040), [sym_typeof] = ACTIONS(5040), [sym_union] = ACTIONS(5040), [sym_unittest] = ACTIONS(5040), [sym_version] = ACTIONS(5040), [sym_while] = ACTIONS(5040), [sym_with] = ACTIONS(5040), [sym_gshared] = ACTIONS(5040), [sym_traits] = ACTIONS(5040), [sym_vector] = ACTIONS(5040), [sym_void] = ACTIONS(5040), [anon_sym_BQUOTE] = ACTIONS(5042), [anon_sym_r_DQUOTE] = ACTIONS(5042), [anon_sym_x_DQUOTE] = ACTIONS(5042), [anon_sym_DQUOTE] = ACTIONS(5042), [anon_sym_i_BQUOTE] = ACTIONS(5042), [anon_sym_i_DQUOTE] = ACTIONS(5042), [anon_sym_iq_LBRACE] = ACTIONS(5042), [aux_sym_char_literal_token1] = ACTIONS(5042), [anon_sym_SQUOTE] = ACTIONS(5040), [anon_sym___DATE__] = ACTIONS(5040), [anon_sym___FILE__] = ACTIONS(5040), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5040), [anon_sym___FUNCTION__] = ACTIONS(5040), [anon_sym___LINE__] = ACTIONS(5040), [anon_sym___MODULE__] = ACTIONS(5040), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5040), [anon_sym___TIME__] = ACTIONS(5040), [anon_sym___TIMESTAMP__] = ACTIONS(5040), [anon_sym___VENDOR__] = ACTIONS(5040), [anon_sym___VERSION__] = ACTIONS(5040), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5042), [sym_float_literal] = ACTIONS(5042), [sym__string] = ACTIONS(5042), }, [1698] = { [sym_identifier] = ACTIONS(4636), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4638), [anon_sym_RBRACE] = ACTIONS(4638), [anon_sym_LBRACE] = ACTIONS(4638), [anon_sym_DOT] = ACTIONS(4638), [anon_sym_AMP] = ACTIONS(4638), [anon_sym_DASH] = ACTIONS(4636), [anon_sym_DASH_DASH] = ACTIONS(4638), [anon_sym_PLUS] = ACTIONS(4636), [anon_sym_PLUS_PLUS] = ACTIONS(4638), [anon_sym_BANG] = ACTIONS(4638), [anon_sym_LPAREN] = ACTIONS(4638), [anon_sym_RPAREN] = ACTIONS(4638), [anon_sym_LBRACK] = ACTIONS(4638), [anon_sym_SEMI] = ACTIONS(4638), [anon_sym_DOLLAR] = ACTIONS(4638), [anon_sym_STAR] = ACTIONS(4638), [anon_sym_TILDE] = ACTIONS(4638), [anon_sym_AT] = ACTIONS(4638), [sym_bool] = ACTIONS(4636), [sym_byte] = ACTIONS(4636), [sym_ubyte] = ACTIONS(4636), [sym_char] = ACTIONS(4636), [sym_short] = ACTIONS(4636), [sym_ushort] = ACTIONS(4636), [sym_int] = ACTIONS(4636), [sym_uint] = ACTIONS(4636), [sym_long] = ACTIONS(4636), [sym_ulong] = ACTIONS(4636), [sym_cent] = ACTIONS(4636), [sym_ucent] = ACTIONS(4636), [sym_wchar] = ACTIONS(4636), [sym_dchar] = ACTIONS(4636), [sym_float] = ACTIONS(4636), [sym_double] = ACTIONS(4636), [sym_real] = ACTIONS(4636), [sym_ifloat] = ACTIONS(4636), [sym_idouble] = ACTIONS(4636), [sym_ireal] = ACTIONS(4636), [sym_cfloat] = ACTIONS(4636), [sym_cdouble] = ACTIONS(4636), [sym_creal] = ACTIONS(4636), [sym_size_t] = ACTIONS(4636), [sym_ptrdiff_t] = ACTIONS(4636), [sym_string] = ACTIONS(4636), [sym_cstring] = ACTIONS(4636), [sym_dstring] = ACTIONS(4636), [sym_wstring] = ACTIONS(4636), [sym_noreturn] = ACTIONS(4636), [sym_true] = ACTIONS(4636), [sym_false] = ACTIONS(4636), [sym_null] = ACTIONS(4636), [sym_super] = ACTIONS(4636), [sym_this] = ACTIONS(4636), [sym_abstract] = ACTIONS(4636), [sym_alias] = ACTIONS(4636), [sym_align] = ACTIONS(4636), [sym_asm] = ACTIONS(4636), [sym_assert] = ACTIONS(4636), [sym_auto] = ACTIONS(4636), [sym_break] = ACTIONS(4636), [sym_case] = ACTIONS(4636), [sym_cast] = ACTIONS(4636), [sym_class] = ACTIONS(4636), [sym_const] = ACTIONS(4636), [sym_continue] = ACTIONS(4636), [sym_debug] = ACTIONS(4636), [sym_default] = ACTIONS(4636), [sym_delegate] = ACTIONS(4636), [sym_delete] = ACTIONS(4636), [sym_deprecated] = ACTIONS(4636), [sym_do] = ACTIONS(4636), [sym_else] = ACTIONS(4636), [sym_enum] = ACTIONS(4636), [sym_export] = ACTIONS(4636), [sym_extern] = ACTIONS(4636), [sym_final] = ACTIONS(4636), [sym_for] = ACTIONS(4636), [sym_foreach] = ACTIONS(4636), [sym_foreach_reverse] = ACTIONS(4636), [sym_function] = ACTIONS(4636), [sym_goto] = ACTIONS(4636), [sym_if] = ACTIONS(4636), [sym_immutable] = ACTIONS(4636), [sym_import] = ACTIONS(4636), [sym_in] = ACTIONS(4636), [sym_inout] = ACTIONS(4636), [sym_interface] = ACTIONS(4636), [sym_invariant] = ACTIONS(4636), [sym_is] = ACTIONS(4636), [sym_mixin] = ACTIONS(4636), [sym_new] = ACTIONS(4636), [sym_nothrow] = ACTIONS(4636), [sym_out] = ACTIONS(4636), [sym_override] = ACTIONS(4636), [sym_package] = ACTIONS(4636), [sym_pragma] = ACTIONS(4636), [sym_private] = ACTIONS(4636), [sym_protected] = ACTIONS(4636), [sym_public] = ACTIONS(4636), [sym_pure] = ACTIONS(4636), [sym_ref] = ACTIONS(4636), [sym_return] = ACTIONS(4636), [sym_scope] = ACTIONS(4636), [sym_shared] = ACTIONS(4636), [sym_static] = ACTIONS(4636), [sym_struct] = ACTIONS(4636), [sym_switch] = ACTIONS(4636), [sym_synchronized] = ACTIONS(4636), [sym_template] = ACTIONS(4636), [sym_throw] = ACTIONS(4636), [sym_try] = ACTIONS(4636), [sym_typeid] = ACTIONS(4636), [sym_typeof] = ACTIONS(4636), [sym_union] = ACTIONS(4636), [sym_unittest] = ACTIONS(4636), [sym_version] = ACTIONS(4636), [sym_while] = ACTIONS(4636), [sym_with] = ACTIONS(4636), [sym_gshared] = ACTIONS(4636), [sym_traits] = ACTIONS(4636), [sym_vector] = ACTIONS(4636), [sym_void] = ACTIONS(4636), [anon_sym_BQUOTE] = ACTIONS(4638), [anon_sym_r_DQUOTE] = ACTIONS(4638), [anon_sym_x_DQUOTE] = ACTIONS(4638), [anon_sym_DQUOTE] = ACTIONS(4638), [anon_sym_i_BQUOTE] = ACTIONS(4638), [anon_sym_i_DQUOTE] = ACTIONS(4638), [anon_sym_iq_LBRACE] = ACTIONS(4638), [aux_sym_char_literal_token1] = ACTIONS(4638), [anon_sym_SQUOTE] = ACTIONS(4636), [anon_sym___DATE__] = ACTIONS(4636), [anon_sym___FILE__] = ACTIONS(4636), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4636), [anon_sym___FUNCTION__] = ACTIONS(4636), [anon_sym___LINE__] = ACTIONS(4636), [anon_sym___MODULE__] = ACTIONS(4636), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4636), [anon_sym___TIME__] = ACTIONS(4636), [anon_sym___TIMESTAMP__] = ACTIONS(4636), [anon_sym___VENDOR__] = ACTIONS(4636), [anon_sym___VERSION__] = ACTIONS(4636), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4638), [sym_float_literal] = ACTIONS(4638), [sym__string] = ACTIONS(4638), }, [1699] = { [sym_identifier] = ACTIONS(4936), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4938), [anon_sym_RBRACE] = ACTIONS(4938), [anon_sym_LBRACE] = ACTIONS(4938), [anon_sym_DOT] = ACTIONS(4938), [anon_sym_AMP] = ACTIONS(4938), [anon_sym_DASH] = ACTIONS(4936), [anon_sym_DASH_DASH] = ACTIONS(4938), [anon_sym_PLUS] = ACTIONS(4936), [anon_sym_PLUS_PLUS] = ACTIONS(4938), [anon_sym_BANG] = ACTIONS(4938), [anon_sym_LPAREN] = ACTIONS(4938), [anon_sym_RPAREN] = ACTIONS(4938), [anon_sym_LBRACK] = ACTIONS(4938), [anon_sym_SEMI] = ACTIONS(4938), [anon_sym_DOLLAR] = ACTIONS(4938), [anon_sym_STAR] = ACTIONS(4938), [anon_sym_TILDE] = ACTIONS(4938), [anon_sym_AT] = ACTIONS(4938), [sym_bool] = ACTIONS(4936), [sym_byte] = ACTIONS(4936), [sym_ubyte] = ACTIONS(4936), [sym_char] = ACTIONS(4936), [sym_short] = ACTIONS(4936), [sym_ushort] = ACTIONS(4936), [sym_int] = ACTIONS(4936), [sym_uint] = ACTIONS(4936), [sym_long] = ACTIONS(4936), [sym_ulong] = ACTIONS(4936), [sym_cent] = ACTIONS(4936), [sym_ucent] = ACTIONS(4936), [sym_wchar] = ACTIONS(4936), [sym_dchar] = ACTIONS(4936), [sym_float] = ACTIONS(4936), [sym_double] = ACTIONS(4936), [sym_real] = ACTIONS(4936), [sym_ifloat] = ACTIONS(4936), [sym_idouble] = ACTIONS(4936), [sym_ireal] = ACTIONS(4936), [sym_cfloat] = ACTIONS(4936), [sym_cdouble] = ACTIONS(4936), [sym_creal] = ACTIONS(4936), [sym_size_t] = ACTIONS(4936), [sym_ptrdiff_t] = ACTIONS(4936), [sym_string] = ACTIONS(4936), [sym_cstring] = ACTIONS(4936), [sym_dstring] = ACTIONS(4936), [sym_wstring] = ACTIONS(4936), [sym_noreturn] = ACTIONS(4936), [sym_true] = ACTIONS(4936), [sym_false] = ACTIONS(4936), [sym_null] = ACTIONS(4936), [sym_super] = ACTIONS(4936), [sym_this] = ACTIONS(4936), [sym_abstract] = ACTIONS(4936), [sym_alias] = ACTIONS(4936), [sym_align] = ACTIONS(4936), [sym_asm] = ACTIONS(4936), [sym_assert] = ACTIONS(4936), [sym_auto] = ACTIONS(4936), [sym_break] = ACTIONS(4936), [sym_case] = ACTIONS(4936), [sym_cast] = ACTIONS(4936), [sym_class] = ACTIONS(4936), [sym_const] = ACTIONS(4936), [sym_continue] = ACTIONS(4936), [sym_debug] = ACTIONS(4936), [sym_default] = ACTIONS(4936), [sym_delegate] = ACTIONS(4936), [sym_delete] = ACTIONS(4936), [sym_deprecated] = ACTIONS(4936), [sym_do] = ACTIONS(4936), [sym_else] = ACTIONS(4936), [sym_enum] = ACTIONS(4936), [sym_export] = ACTIONS(4936), [sym_extern] = ACTIONS(4936), [sym_final] = ACTIONS(4936), [sym_for] = ACTIONS(4936), [sym_foreach] = ACTIONS(4936), [sym_foreach_reverse] = ACTIONS(4936), [sym_function] = ACTIONS(4936), [sym_goto] = ACTIONS(4936), [sym_if] = ACTIONS(4936), [sym_immutable] = ACTIONS(4936), [sym_import] = ACTIONS(4936), [sym_in] = ACTIONS(4936), [sym_inout] = ACTIONS(4936), [sym_interface] = ACTIONS(4936), [sym_invariant] = ACTIONS(4936), [sym_is] = ACTIONS(4936), [sym_mixin] = ACTIONS(4936), [sym_new] = ACTIONS(4936), [sym_nothrow] = ACTIONS(4936), [sym_out] = ACTIONS(4936), [sym_override] = ACTIONS(4936), [sym_package] = ACTIONS(4936), [sym_pragma] = ACTIONS(4936), [sym_private] = ACTIONS(4936), [sym_protected] = ACTIONS(4936), [sym_public] = ACTIONS(4936), [sym_pure] = ACTIONS(4936), [sym_ref] = ACTIONS(4936), [sym_return] = ACTIONS(4936), [sym_scope] = ACTIONS(4936), [sym_shared] = ACTIONS(4936), [sym_static] = ACTIONS(4936), [sym_struct] = ACTIONS(4936), [sym_switch] = ACTIONS(4936), [sym_synchronized] = ACTIONS(4936), [sym_template] = ACTIONS(4936), [sym_throw] = ACTIONS(4936), [sym_try] = ACTIONS(4936), [sym_typeid] = ACTIONS(4936), [sym_typeof] = ACTIONS(4936), [sym_union] = ACTIONS(4936), [sym_unittest] = ACTIONS(4936), [sym_version] = ACTIONS(4936), [sym_while] = ACTIONS(4936), [sym_with] = ACTIONS(4936), [sym_gshared] = ACTIONS(4936), [sym_traits] = ACTIONS(4936), [sym_vector] = ACTIONS(4936), [sym_void] = ACTIONS(4936), [anon_sym_BQUOTE] = ACTIONS(4938), [anon_sym_r_DQUOTE] = ACTIONS(4938), [anon_sym_x_DQUOTE] = ACTIONS(4938), [anon_sym_DQUOTE] = ACTIONS(4938), [anon_sym_i_BQUOTE] = ACTIONS(4938), [anon_sym_i_DQUOTE] = ACTIONS(4938), [anon_sym_iq_LBRACE] = ACTIONS(4938), [aux_sym_char_literal_token1] = ACTIONS(4938), [anon_sym_SQUOTE] = ACTIONS(4936), [anon_sym___DATE__] = ACTIONS(4936), [anon_sym___FILE__] = ACTIONS(4936), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4936), [anon_sym___FUNCTION__] = ACTIONS(4936), [anon_sym___LINE__] = ACTIONS(4936), [anon_sym___MODULE__] = ACTIONS(4936), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4936), [anon_sym___TIME__] = ACTIONS(4936), [anon_sym___TIMESTAMP__] = ACTIONS(4936), [anon_sym___VENDOR__] = ACTIONS(4936), [anon_sym___VERSION__] = ACTIONS(4936), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4938), [sym_float_literal] = ACTIONS(4938), [sym__string] = ACTIONS(4938), }, [1700] = { [sym_identifier] = ACTIONS(4452), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4454), [anon_sym_RBRACE] = ACTIONS(4454), [anon_sym_LBRACE] = ACTIONS(4454), [anon_sym_DOT] = ACTIONS(4454), [anon_sym_AMP] = ACTIONS(4454), [anon_sym_DASH] = ACTIONS(4452), [anon_sym_DASH_DASH] = ACTIONS(4454), [anon_sym_PLUS] = ACTIONS(4452), [anon_sym_PLUS_PLUS] = ACTIONS(4454), [anon_sym_BANG] = ACTIONS(4454), [anon_sym_LPAREN] = ACTIONS(4454), [anon_sym_RPAREN] = ACTIONS(4454), [anon_sym_LBRACK] = ACTIONS(4454), [anon_sym_SEMI] = ACTIONS(4454), [anon_sym_DOLLAR] = ACTIONS(4454), [anon_sym_STAR] = ACTIONS(4454), [anon_sym_TILDE] = ACTIONS(4454), [anon_sym_AT] = ACTIONS(4454), [sym_bool] = ACTIONS(4452), [sym_byte] = ACTIONS(4452), [sym_ubyte] = ACTIONS(4452), [sym_char] = ACTIONS(4452), [sym_short] = ACTIONS(4452), [sym_ushort] = ACTIONS(4452), [sym_int] = ACTIONS(4452), [sym_uint] = ACTIONS(4452), [sym_long] = ACTIONS(4452), [sym_ulong] = ACTIONS(4452), [sym_cent] = ACTIONS(4452), [sym_ucent] = ACTIONS(4452), [sym_wchar] = ACTIONS(4452), [sym_dchar] = ACTIONS(4452), [sym_float] = ACTIONS(4452), [sym_double] = ACTIONS(4452), [sym_real] = ACTIONS(4452), [sym_ifloat] = ACTIONS(4452), [sym_idouble] = ACTIONS(4452), [sym_ireal] = ACTIONS(4452), [sym_cfloat] = ACTIONS(4452), [sym_cdouble] = ACTIONS(4452), [sym_creal] = ACTIONS(4452), [sym_size_t] = ACTIONS(4452), [sym_ptrdiff_t] = ACTIONS(4452), [sym_string] = ACTIONS(4452), [sym_cstring] = ACTIONS(4452), [sym_dstring] = ACTIONS(4452), [sym_wstring] = ACTIONS(4452), [sym_noreturn] = ACTIONS(4452), [sym_true] = ACTIONS(4452), [sym_false] = ACTIONS(4452), [sym_null] = ACTIONS(4452), [sym_super] = ACTIONS(4452), [sym_this] = ACTIONS(4452), [sym_abstract] = ACTIONS(4452), [sym_alias] = ACTIONS(4452), [sym_align] = ACTIONS(4452), [sym_asm] = ACTIONS(4452), [sym_assert] = ACTIONS(4452), [sym_auto] = ACTIONS(4452), [sym_break] = ACTIONS(4452), [sym_case] = ACTIONS(4452), [sym_cast] = ACTIONS(4452), [sym_class] = ACTIONS(4452), [sym_const] = ACTIONS(4452), [sym_continue] = ACTIONS(4452), [sym_debug] = ACTIONS(4452), [sym_default] = ACTIONS(4452), [sym_delegate] = ACTIONS(4452), [sym_delete] = ACTIONS(4452), [sym_deprecated] = ACTIONS(4452), [sym_do] = ACTIONS(4452), [sym_else] = ACTIONS(4452), [sym_enum] = ACTIONS(4452), [sym_export] = ACTIONS(4452), [sym_extern] = ACTIONS(4452), [sym_final] = ACTIONS(4452), [sym_for] = ACTIONS(4452), [sym_foreach] = ACTIONS(4452), [sym_foreach_reverse] = ACTIONS(4452), [sym_function] = ACTIONS(4452), [sym_goto] = ACTIONS(4452), [sym_if] = ACTIONS(4452), [sym_immutable] = ACTIONS(4452), [sym_import] = ACTIONS(4452), [sym_in] = ACTIONS(4452), [sym_inout] = ACTIONS(4452), [sym_interface] = ACTIONS(4452), [sym_invariant] = ACTIONS(4452), [sym_is] = ACTIONS(4452), [sym_mixin] = ACTIONS(4452), [sym_new] = ACTIONS(4452), [sym_nothrow] = ACTIONS(4452), [sym_out] = ACTIONS(4452), [sym_override] = ACTIONS(4452), [sym_package] = ACTIONS(4452), [sym_pragma] = ACTIONS(4452), [sym_private] = ACTIONS(4452), [sym_protected] = ACTIONS(4452), [sym_public] = ACTIONS(4452), [sym_pure] = ACTIONS(4452), [sym_ref] = ACTIONS(4452), [sym_return] = ACTIONS(4452), [sym_scope] = ACTIONS(4452), [sym_shared] = ACTIONS(4452), [sym_static] = ACTIONS(4452), [sym_struct] = ACTIONS(4452), [sym_switch] = ACTIONS(4452), [sym_synchronized] = ACTIONS(4452), [sym_template] = ACTIONS(4452), [sym_throw] = ACTIONS(4452), [sym_try] = ACTIONS(4452), [sym_typeid] = ACTIONS(4452), [sym_typeof] = ACTIONS(4452), [sym_union] = ACTIONS(4452), [sym_unittest] = ACTIONS(4452), [sym_version] = ACTIONS(4452), [sym_while] = ACTIONS(4452), [sym_with] = ACTIONS(4452), [sym_gshared] = ACTIONS(4452), [sym_traits] = ACTIONS(4452), [sym_vector] = ACTIONS(4452), [sym_void] = ACTIONS(4452), [anon_sym_BQUOTE] = ACTIONS(4454), [anon_sym_r_DQUOTE] = ACTIONS(4454), [anon_sym_x_DQUOTE] = ACTIONS(4454), [anon_sym_DQUOTE] = ACTIONS(4454), [anon_sym_i_BQUOTE] = ACTIONS(4454), [anon_sym_i_DQUOTE] = ACTIONS(4454), [anon_sym_iq_LBRACE] = ACTIONS(4454), [aux_sym_char_literal_token1] = ACTIONS(4454), [anon_sym_SQUOTE] = ACTIONS(4452), [anon_sym___DATE__] = ACTIONS(4452), [anon_sym___FILE__] = ACTIONS(4452), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4452), [anon_sym___FUNCTION__] = ACTIONS(4452), [anon_sym___LINE__] = ACTIONS(4452), [anon_sym___MODULE__] = ACTIONS(4452), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4452), [anon_sym___TIME__] = ACTIONS(4452), [anon_sym___TIMESTAMP__] = ACTIONS(4452), [anon_sym___VENDOR__] = ACTIONS(4452), [anon_sym___VERSION__] = ACTIONS(4452), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4454), [sym_float_literal] = ACTIONS(4454), [sym__string] = ACTIONS(4454), }, [1701] = { [sym_identifier] = ACTIONS(4974), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4976), [anon_sym_RBRACE] = ACTIONS(4976), [anon_sym_LBRACE] = ACTIONS(4976), [anon_sym_DOT] = ACTIONS(4976), [anon_sym_AMP] = ACTIONS(4976), [anon_sym_DASH] = ACTIONS(4974), [anon_sym_DASH_DASH] = ACTIONS(4976), [anon_sym_PLUS] = ACTIONS(4974), [anon_sym_PLUS_PLUS] = ACTIONS(4976), [anon_sym_BANG] = ACTIONS(4976), [anon_sym_LPAREN] = ACTIONS(4976), [anon_sym_RPAREN] = ACTIONS(4976), [anon_sym_LBRACK] = ACTIONS(4976), [anon_sym_SEMI] = ACTIONS(4976), [anon_sym_DOLLAR] = ACTIONS(4976), [anon_sym_STAR] = ACTIONS(4976), [anon_sym_TILDE] = ACTIONS(4976), [anon_sym_AT] = ACTIONS(4976), [sym_bool] = ACTIONS(4974), [sym_byte] = ACTIONS(4974), [sym_ubyte] = ACTIONS(4974), [sym_char] = ACTIONS(4974), [sym_short] = ACTIONS(4974), [sym_ushort] = ACTIONS(4974), [sym_int] = ACTIONS(4974), [sym_uint] = ACTIONS(4974), [sym_long] = ACTIONS(4974), [sym_ulong] = ACTIONS(4974), [sym_cent] = ACTIONS(4974), [sym_ucent] = ACTIONS(4974), [sym_wchar] = ACTIONS(4974), [sym_dchar] = ACTIONS(4974), [sym_float] = ACTIONS(4974), [sym_double] = ACTIONS(4974), [sym_real] = ACTIONS(4974), [sym_ifloat] = ACTIONS(4974), [sym_idouble] = ACTIONS(4974), [sym_ireal] = ACTIONS(4974), [sym_cfloat] = ACTIONS(4974), [sym_cdouble] = ACTIONS(4974), [sym_creal] = ACTIONS(4974), [sym_size_t] = ACTIONS(4974), [sym_ptrdiff_t] = ACTIONS(4974), [sym_string] = ACTIONS(4974), [sym_cstring] = ACTIONS(4974), [sym_dstring] = ACTIONS(4974), [sym_wstring] = ACTIONS(4974), [sym_noreturn] = ACTIONS(4974), [sym_true] = ACTIONS(4974), [sym_false] = ACTIONS(4974), [sym_null] = ACTIONS(4974), [sym_super] = ACTIONS(4974), [sym_this] = ACTIONS(4974), [sym_abstract] = ACTIONS(4974), [sym_alias] = ACTIONS(4974), [sym_align] = ACTIONS(4974), [sym_asm] = ACTIONS(4974), [sym_assert] = ACTIONS(4974), [sym_auto] = ACTIONS(4974), [sym_break] = ACTIONS(4974), [sym_case] = ACTIONS(4974), [sym_cast] = ACTIONS(4974), [sym_class] = ACTIONS(4974), [sym_const] = ACTIONS(4974), [sym_continue] = ACTIONS(4974), [sym_debug] = ACTIONS(4974), [sym_default] = ACTIONS(4974), [sym_delegate] = ACTIONS(4974), [sym_delete] = ACTIONS(4974), [sym_deprecated] = ACTIONS(4974), [sym_do] = ACTIONS(4974), [sym_else] = ACTIONS(4974), [sym_enum] = ACTIONS(4974), [sym_export] = ACTIONS(4974), [sym_extern] = ACTIONS(4974), [sym_final] = ACTIONS(4974), [sym_for] = ACTIONS(4974), [sym_foreach] = ACTIONS(4974), [sym_foreach_reverse] = ACTIONS(4974), [sym_function] = ACTIONS(4974), [sym_goto] = ACTIONS(4974), [sym_if] = ACTIONS(4974), [sym_immutable] = ACTIONS(4974), [sym_import] = ACTIONS(4974), [sym_in] = ACTIONS(4974), [sym_inout] = ACTIONS(4974), [sym_interface] = ACTIONS(4974), [sym_invariant] = ACTIONS(4974), [sym_is] = ACTIONS(4974), [sym_mixin] = ACTIONS(4974), [sym_new] = ACTIONS(4974), [sym_nothrow] = ACTIONS(4974), [sym_out] = ACTIONS(4974), [sym_override] = ACTIONS(4974), [sym_package] = ACTIONS(4974), [sym_pragma] = ACTIONS(4974), [sym_private] = ACTIONS(4974), [sym_protected] = ACTIONS(4974), [sym_public] = ACTIONS(4974), [sym_pure] = ACTIONS(4974), [sym_ref] = ACTIONS(4974), [sym_return] = ACTIONS(4974), [sym_scope] = ACTIONS(4974), [sym_shared] = ACTIONS(4974), [sym_static] = ACTIONS(4974), [sym_struct] = ACTIONS(4974), [sym_switch] = ACTIONS(4974), [sym_synchronized] = ACTIONS(4974), [sym_template] = ACTIONS(4974), [sym_throw] = ACTIONS(4974), [sym_try] = ACTIONS(4974), [sym_typeid] = ACTIONS(4974), [sym_typeof] = ACTIONS(4974), [sym_union] = ACTIONS(4974), [sym_unittest] = ACTIONS(4974), [sym_version] = ACTIONS(4974), [sym_while] = ACTIONS(4974), [sym_with] = ACTIONS(4974), [sym_gshared] = ACTIONS(4974), [sym_traits] = ACTIONS(4974), [sym_vector] = ACTIONS(4974), [sym_void] = ACTIONS(4974), [anon_sym_BQUOTE] = ACTIONS(4976), [anon_sym_r_DQUOTE] = ACTIONS(4976), [anon_sym_x_DQUOTE] = ACTIONS(4976), [anon_sym_DQUOTE] = ACTIONS(4976), [anon_sym_i_BQUOTE] = ACTIONS(4976), [anon_sym_i_DQUOTE] = ACTIONS(4976), [anon_sym_iq_LBRACE] = ACTIONS(4976), [aux_sym_char_literal_token1] = ACTIONS(4976), [anon_sym_SQUOTE] = ACTIONS(4974), [anon_sym___DATE__] = ACTIONS(4974), [anon_sym___FILE__] = ACTIONS(4974), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4974), [anon_sym___FUNCTION__] = ACTIONS(4974), [anon_sym___LINE__] = ACTIONS(4974), [anon_sym___MODULE__] = ACTIONS(4974), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4974), [anon_sym___TIME__] = ACTIONS(4974), [anon_sym___TIMESTAMP__] = ACTIONS(4974), [anon_sym___VENDOR__] = ACTIONS(4974), [anon_sym___VERSION__] = ACTIONS(4974), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4976), [sym_float_literal] = ACTIONS(4976), [sym__string] = ACTIONS(4976), }, [1702] = { [sym_identifier] = ACTIONS(5036), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5038), [anon_sym_RBRACE] = ACTIONS(5038), [anon_sym_LBRACE] = ACTIONS(5038), [anon_sym_DOT] = ACTIONS(5038), [anon_sym_AMP] = ACTIONS(5038), [anon_sym_DASH] = ACTIONS(5036), [anon_sym_DASH_DASH] = ACTIONS(5038), [anon_sym_PLUS] = ACTIONS(5036), [anon_sym_PLUS_PLUS] = ACTIONS(5038), [anon_sym_BANG] = ACTIONS(5038), [anon_sym_LPAREN] = ACTIONS(5038), [anon_sym_RPAREN] = ACTIONS(5038), [anon_sym_LBRACK] = ACTIONS(5038), [anon_sym_SEMI] = ACTIONS(5038), [anon_sym_DOLLAR] = ACTIONS(5038), [anon_sym_STAR] = ACTIONS(5038), [anon_sym_TILDE] = ACTIONS(5038), [anon_sym_AT] = ACTIONS(5038), [sym_bool] = ACTIONS(5036), [sym_byte] = ACTIONS(5036), [sym_ubyte] = ACTIONS(5036), [sym_char] = ACTIONS(5036), [sym_short] = ACTIONS(5036), [sym_ushort] = ACTIONS(5036), [sym_int] = ACTIONS(5036), [sym_uint] = ACTIONS(5036), [sym_long] = ACTIONS(5036), [sym_ulong] = ACTIONS(5036), [sym_cent] = ACTIONS(5036), [sym_ucent] = ACTIONS(5036), [sym_wchar] = ACTIONS(5036), [sym_dchar] = ACTIONS(5036), [sym_float] = ACTIONS(5036), [sym_double] = ACTIONS(5036), [sym_real] = ACTIONS(5036), [sym_ifloat] = ACTIONS(5036), [sym_idouble] = ACTIONS(5036), [sym_ireal] = ACTIONS(5036), [sym_cfloat] = ACTIONS(5036), [sym_cdouble] = ACTIONS(5036), [sym_creal] = ACTIONS(5036), [sym_size_t] = ACTIONS(5036), [sym_ptrdiff_t] = ACTIONS(5036), [sym_string] = ACTIONS(5036), [sym_cstring] = ACTIONS(5036), [sym_dstring] = ACTIONS(5036), [sym_wstring] = ACTIONS(5036), [sym_noreturn] = ACTIONS(5036), [sym_true] = ACTIONS(5036), [sym_false] = ACTIONS(5036), [sym_null] = ACTIONS(5036), [sym_super] = ACTIONS(5036), [sym_this] = ACTIONS(5036), [sym_abstract] = ACTIONS(5036), [sym_alias] = ACTIONS(5036), [sym_align] = ACTIONS(5036), [sym_asm] = ACTIONS(5036), [sym_assert] = ACTIONS(5036), [sym_auto] = ACTIONS(5036), [sym_break] = ACTIONS(5036), [sym_case] = ACTIONS(5036), [sym_cast] = ACTIONS(5036), [sym_class] = ACTIONS(5036), [sym_const] = ACTIONS(5036), [sym_continue] = ACTIONS(5036), [sym_debug] = ACTIONS(5036), [sym_default] = ACTIONS(5036), [sym_delegate] = ACTIONS(5036), [sym_delete] = ACTIONS(5036), [sym_deprecated] = ACTIONS(5036), [sym_do] = ACTIONS(5036), [sym_else] = ACTIONS(5036), [sym_enum] = ACTIONS(5036), [sym_export] = ACTIONS(5036), [sym_extern] = ACTIONS(5036), [sym_final] = ACTIONS(5036), [sym_for] = ACTIONS(5036), [sym_foreach] = ACTIONS(5036), [sym_foreach_reverse] = ACTIONS(5036), [sym_function] = ACTIONS(5036), [sym_goto] = ACTIONS(5036), [sym_if] = ACTIONS(5036), [sym_immutable] = ACTIONS(5036), [sym_import] = ACTIONS(5036), [sym_in] = ACTIONS(5036), [sym_inout] = ACTIONS(5036), [sym_interface] = ACTIONS(5036), [sym_invariant] = ACTIONS(5036), [sym_is] = ACTIONS(5036), [sym_mixin] = ACTIONS(5036), [sym_new] = ACTIONS(5036), [sym_nothrow] = ACTIONS(5036), [sym_out] = ACTIONS(5036), [sym_override] = ACTIONS(5036), [sym_package] = ACTIONS(5036), [sym_pragma] = ACTIONS(5036), [sym_private] = ACTIONS(5036), [sym_protected] = ACTIONS(5036), [sym_public] = ACTIONS(5036), [sym_pure] = ACTIONS(5036), [sym_ref] = ACTIONS(5036), [sym_return] = ACTIONS(5036), [sym_scope] = ACTIONS(5036), [sym_shared] = ACTIONS(5036), [sym_static] = ACTIONS(5036), [sym_struct] = ACTIONS(5036), [sym_switch] = ACTIONS(5036), [sym_synchronized] = ACTIONS(5036), [sym_template] = ACTIONS(5036), [sym_throw] = ACTIONS(5036), [sym_try] = ACTIONS(5036), [sym_typeid] = ACTIONS(5036), [sym_typeof] = ACTIONS(5036), [sym_union] = ACTIONS(5036), [sym_unittest] = ACTIONS(5036), [sym_version] = ACTIONS(5036), [sym_while] = ACTIONS(5036), [sym_with] = ACTIONS(5036), [sym_gshared] = ACTIONS(5036), [sym_traits] = ACTIONS(5036), [sym_vector] = ACTIONS(5036), [sym_void] = ACTIONS(5036), [anon_sym_BQUOTE] = ACTIONS(5038), [anon_sym_r_DQUOTE] = ACTIONS(5038), [anon_sym_x_DQUOTE] = ACTIONS(5038), [anon_sym_DQUOTE] = ACTIONS(5038), [anon_sym_i_BQUOTE] = ACTIONS(5038), [anon_sym_i_DQUOTE] = ACTIONS(5038), [anon_sym_iq_LBRACE] = ACTIONS(5038), [aux_sym_char_literal_token1] = ACTIONS(5038), [anon_sym_SQUOTE] = ACTIONS(5036), [anon_sym___DATE__] = ACTIONS(5036), [anon_sym___FILE__] = ACTIONS(5036), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5036), [anon_sym___FUNCTION__] = ACTIONS(5036), [anon_sym___LINE__] = ACTIONS(5036), [anon_sym___MODULE__] = ACTIONS(5036), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5036), [anon_sym___TIME__] = ACTIONS(5036), [anon_sym___TIMESTAMP__] = ACTIONS(5036), [anon_sym___VENDOR__] = ACTIONS(5036), [anon_sym___VERSION__] = ACTIONS(5036), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5038), [sym_float_literal] = ACTIONS(5038), [sym__string] = ACTIONS(5038), }, [1703] = { [sym_identifier] = ACTIONS(4434), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4436), [anon_sym_RBRACE] = ACTIONS(4436), [anon_sym_LBRACE] = ACTIONS(4436), [anon_sym_DOT] = ACTIONS(4436), [anon_sym_AMP] = ACTIONS(4436), [anon_sym_DASH] = ACTIONS(4434), [anon_sym_DASH_DASH] = ACTIONS(4436), [anon_sym_PLUS] = ACTIONS(4434), [anon_sym_PLUS_PLUS] = ACTIONS(4436), [anon_sym_BANG] = ACTIONS(4436), [anon_sym_LPAREN] = ACTIONS(4436), [anon_sym_RPAREN] = ACTIONS(4436), [anon_sym_LBRACK] = ACTIONS(4436), [anon_sym_SEMI] = ACTIONS(4436), [anon_sym_DOLLAR] = ACTIONS(4436), [anon_sym_STAR] = ACTIONS(4436), [anon_sym_TILDE] = ACTIONS(4436), [anon_sym_AT] = ACTIONS(4436), [sym_bool] = ACTIONS(4434), [sym_byte] = ACTIONS(4434), [sym_ubyte] = ACTIONS(4434), [sym_char] = ACTIONS(4434), [sym_short] = ACTIONS(4434), [sym_ushort] = ACTIONS(4434), [sym_int] = ACTIONS(4434), [sym_uint] = ACTIONS(4434), [sym_long] = ACTIONS(4434), [sym_ulong] = ACTIONS(4434), [sym_cent] = ACTIONS(4434), [sym_ucent] = ACTIONS(4434), [sym_wchar] = ACTIONS(4434), [sym_dchar] = ACTIONS(4434), [sym_float] = ACTIONS(4434), [sym_double] = ACTIONS(4434), [sym_real] = ACTIONS(4434), [sym_ifloat] = ACTIONS(4434), [sym_idouble] = ACTIONS(4434), [sym_ireal] = ACTIONS(4434), [sym_cfloat] = ACTIONS(4434), [sym_cdouble] = ACTIONS(4434), [sym_creal] = ACTIONS(4434), [sym_size_t] = ACTIONS(4434), [sym_ptrdiff_t] = ACTIONS(4434), [sym_string] = ACTIONS(4434), [sym_cstring] = ACTIONS(4434), [sym_dstring] = ACTIONS(4434), [sym_wstring] = ACTIONS(4434), [sym_noreturn] = ACTIONS(4434), [sym_true] = ACTIONS(4434), [sym_false] = ACTIONS(4434), [sym_null] = ACTIONS(4434), [sym_super] = ACTIONS(4434), [sym_this] = ACTIONS(4434), [sym_abstract] = ACTIONS(4434), [sym_alias] = ACTIONS(4434), [sym_align] = ACTIONS(4434), [sym_asm] = ACTIONS(4434), [sym_assert] = ACTIONS(4434), [sym_auto] = ACTIONS(4434), [sym_break] = ACTIONS(4434), [sym_case] = ACTIONS(4434), [sym_cast] = ACTIONS(4434), [sym_class] = ACTIONS(4434), [sym_const] = ACTIONS(4434), [sym_continue] = ACTIONS(4434), [sym_debug] = ACTIONS(4434), [sym_default] = ACTIONS(4434), [sym_delegate] = ACTIONS(4434), [sym_delete] = ACTIONS(4434), [sym_deprecated] = ACTIONS(4434), [sym_do] = ACTIONS(4434), [sym_else] = ACTIONS(4434), [sym_enum] = ACTIONS(4434), [sym_export] = ACTIONS(4434), [sym_extern] = ACTIONS(4434), [sym_final] = ACTIONS(4434), [sym_for] = ACTIONS(4434), [sym_foreach] = ACTIONS(4434), [sym_foreach_reverse] = ACTIONS(4434), [sym_function] = ACTIONS(4434), [sym_goto] = ACTIONS(4434), [sym_if] = ACTIONS(4434), [sym_immutable] = ACTIONS(4434), [sym_import] = ACTIONS(4434), [sym_in] = ACTIONS(4434), [sym_inout] = ACTIONS(4434), [sym_interface] = ACTIONS(4434), [sym_invariant] = ACTIONS(4434), [sym_is] = ACTIONS(4434), [sym_mixin] = ACTIONS(4434), [sym_new] = ACTIONS(4434), [sym_nothrow] = ACTIONS(4434), [sym_out] = ACTIONS(4434), [sym_override] = ACTIONS(4434), [sym_package] = ACTIONS(4434), [sym_pragma] = ACTIONS(4434), [sym_private] = ACTIONS(4434), [sym_protected] = ACTIONS(4434), [sym_public] = ACTIONS(4434), [sym_pure] = ACTIONS(4434), [sym_ref] = ACTIONS(4434), [sym_return] = ACTIONS(4434), [sym_scope] = ACTIONS(4434), [sym_shared] = ACTIONS(4434), [sym_static] = ACTIONS(4434), [sym_struct] = ACTIONS(4434), [sym_switch] = ACTIONS(4434), [sym_synchronized] = ACTIONS(4434), [sym_template] = ACTIONS(4434), [sym_throw] = ACTIONS(4434), [sym_try] = ACTIONS(4434), [sym_typeid] = ACTIONS(4434), [sym_typeof] = ACTIONS(4434), [sym_union] = ACTIONS(4434), [sym_unittest] = ACTIONS(4434), [sym_version] = ACTIONS(4434), [sym_while] = ACTIONS(4434), [sym_with] = ACTIONS(4434), [sym_gshared] = ACTIONS(4434), [sym_traits] = ACTIONS(4434), [sym_vector] = ACTIONS(4434), [sym_void] = ACTIONS(4434), [anon_sym_BQUOTE] = ACTIONS(4436), [anon_sym_r_DQUOTE] = ACTIONS(4436), [anon_sym_x_DQUOTE] = ACTIONS(4436), [anon_sym_DQUOTE] = ACTIONS(4436), [anon_sym_i_BQUOTE] = ACTIONS(4436), [anon_sym_i_DQUOTE] = ACTIONS(4436), [anon_sym_iq_LBRACE] = ACTIONS(4436), [aux_sym_char_literal_token1] = ACTIONS(4436), [anon_sym_SQUOTE] = ACTIONS(4434), [anon_sym___DATE__] = ACTIONS(4434), [anon_sym___FILE__] = ACTIONS(4434), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4434), [anon_sym___FUNCTION__] = ACTIONS(4434), [anon_sym___LINE__] = ACTIONS(4434), [anon_sym___MODULE__] = ACTIONS(4434), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4434), [anon_sym___TIME__] = ACTIONS(4434), [anon_sym___TIMESTAMP__] = ACTIONS(4434), [anon_sym___VENDOR__] = ACTIONS(4434), [anon_sym___VERSION__] = ACTIONS(4434), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4436), [sym_float_literal] = ACTIONS(4436), [sym__string] = ACTIONS(4436), }, [1704] = { [sym_identifier] = ACTIONS(4406), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4408), [anon_sym_RBRACE] = ACTIONS(4408), [anon_sym_LBRACE] = ACTIONS(4408), [anon_sym_DOT] = ACTIONS(4408), [anon_sym_AMP] = ACTIONS(4408), [anon_sym_DASH] = ACTIONS(4406), [anon_sym_DASH_DASH] = ACTIONS(4408), [anon_sym_PLUS] = ACTIONS(4406), [anon_sym_PLUS_PLUS] = ACTIONS(4408), [anon_sym_BANG] = ACTIONS(4408), [anon_sym_LPAREN] = ACTIONS(4408), [anon_sym_RPAREN] = ACTIONS(4408), [anon_sym_LBRACK] = ACTIONS(4408), [anon_sym_SEMI] = ACTIONS(4408), [anon_sym_DOLLAR] = ACTIONS(4408), [anon_sym_STAR] = ACTIONS(4408), [anon_sym_TILDE] = ACTIONS(4408), [anon_sym_AT] = ACTIONS(4408), [sym_bool] = ACTIONS(4406), [sym_byte] = ACTIONS(4406), [sym_ubyte] = ACTIONS(4406), [sym_char] = ACTIONS(4406), [sym_short] = ACTIONS(4406), [sym_ushort] = ACTIONS(4406), [sym_int] = ACTIONS(4406), [sym_uint] = ACTIONS(4406), [sym_long] = ACTIONS(4406), [sym_ulong] = ACTIONS(4406), [sym_cent] = ACTIONS(4406), [sym_ucent] = ACTIONS(4406), [sym_wchar] = ACTIONS(4406), [sym_dchar] = ACTIONS(4406), [sym_float] = ACTIONS(4406), [sym_double] = ACTIONS(4406), [sym_real] = ACTIONS(4406), [sym_ifloat] = ACTIONS(4406), [sym_idouble] = ACTIONS(4406), [sym_ireal] = ACTIONS(4406), [sym_cfloat] = ACTIONS(4406), [sym_cdouble] = ACTIONS(4406), [sym_creal] = ACTIONS(4406), [sym_size_t] = ACTIONS(4406), [sym_ptrdiff_t] = ACTIONS(4406), [sym_string] = ACTIONS(4406), [sym_cstring] = ACTIONS(4406), [sym_dstring] = ACTIONS(4406), [sym_wstring] = ACTIONS(4406), [sym_noreturn] = ACTIONS(4406), [sym_true] = ACTIONS(4406), [sym_false] = ACTIONS(4406), [sym_null] = ACTIONS(4406), [sym_super] = ACTIONS(4406), [sym_this] = ACTIONS(4406), [sym_abstract] = ACTIONS(4406), [sym_alias] = ACTIONS(4406), [sym_align] = ACTIONS(4406), [sym_asm] = ACTIONS(4406), [sym_assert] = ACTIONS(4406), [sym_auto] = ACTIONS(4406), [sym_break] = ACTIONS(4406), [sym_case] = ACTIONS(4406), [sym_cast] = ACTIONS(4406), [sym_class] = ACTIONS(4406), [sym_const] = ACTIONS(4406), [sym_continue] = ACTIONS(4406), [sym_debug] = ACTIONS(4406), [sym_default] = ACTIONS(4406), [sym_delegate] = ACTIONS(4406), [sym_delete] = ACTIONS(4406), [sym_deprecated] = ACTIONS(4406), [sym_do] = ACTIONS(4406), [sym_else] = ACTIONS(4406), [sym_enum] = ACTIONS(4406), [sym_export] = ACTIONS(4406), [sym_extern] = ACTIONS(4406), [sym_final] = ACTIONS(4406), [sym_for] = ACTIONS(4406), [sym_foreach] = ACTIONS(4406), [sym_foreach_reverse] = ACTIONS(4406), [sym_function] = ACTIONS(4406), [sym_goto] = ACTIONS(4406), [sym_if] = ACTIONS(4406), [sym_immutable] = ACTIONS(4406), [sym_import] = ACTIONS(4406), [sym_in] = ACTIONS(4406), [sym_inout] = ACTIONS(4406), [sym_interface] = ACTIONS(4406), [sym_invariant] = ACTIONS(4406), [sym_is] = ACTIONS(4406), [sym_mixin] = ACTIONS(4406), [sym_new] = ACTIONS(4406), [sym_nothrow] = ACTIONS(4406), [sym_out] = ACTIONS(4406), [sym_override] = ACTIONS(4406), [sym_package] = ACTIONS(4406), [sym_pragma] = ACTIONS(4406), [sym_private] = ACTIONS(4406), [sym_protected] = ACTIONS(4406), [sym_public] = ACTIONS(4406), [sym_pure] = ACTIONS(4406), [sym_ref] = ACTIONS(4406), [sym_return] = ACTIONS(4406), [sym_scope] = ACTIONS(4406), [sym_shared] = ACTIONS(4406), [sym_static] = ACTIONS(4406), [sym_struct] = ACTIONS(4406), [sym_switch] = ACTIONS(4406), [sym_synchronized] = ACTIONS(4406), [sym_template] = ACTIONS(4406), [sym_throw] = ACTIONS(4406), [sym_try] = ACTIONS(4406), [sym_typeid] = ACTIONS(4406), [sym_typeof] = ACTIONS(4406), [sym_union] = ACTIONS(4406), [sym_unittest] = ACTIONS(4406), [sym_version] = ACTIONS(4406), [sym_while] = ACTIONS(4406), [sym_with] = ACTIONS(4406), [sym_gshared] = ACTIONS(4406), [sym_traits] = ACTIONS(4406), [sym_vector] = ACTIONS(4406), [sym_void] = ACTIONS(4406), [anon_sym_BQUOTE] = ACTIONS(4408), [anon_sym_r_DQUOTE] = ACTIONS(4408), [anon_sym_x_DQUOTE] = ACTIONS(4408), [anon_sym_DQUOTE] = ACTIONS(4408), [anon_sym_i_BQUOTE] = ACTIONS(4408), [anon_sym_i_DQUOTE] = ACTIONS(4408), [anon_sym_iq_LBRACE] = ACTIONS(4408), [aux_sym_char_literal_token1] = ACTIONS(4408), [anon_sym_SQUOTE] = ACTIONS(4406), [anon_sym___DATE__] = ACTIONS(4406), [anon_sym___FILE__] = ACTIONS(4406), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4406), [anon_sym___FUNCTION__] = ACTIONS(4406), [anon_sym___LINE__] = ACTIONS(4406), [anon_sym___MODULE__] = ACTIONS(4406), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4406), [anon_sym___TIME__] = ACTIONS(4406), [anon_sym___TIMESTAMP__] = ACTIONS(4406), [anon_sym___VENDOR__] = ACTIONS(4406), [anon_sym___VERSION__] = ACTIONS(4406), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4408), [sym_float_literal] = ACTIONS(4408), [sym__string] = ACTIONS(4408), }, [1705] = { [sym_identifier] = ACTIONS(4932), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4934), [anon_sym_RBRACE] = ACTIONS(4934), [anon_sym_LBRACE] = ACTIONS(4934), [anon_sym_DOT] = ACTIONS(4934), [anon_sym_AMP] = ACTIONS(4934), [anon_sym_DASH] = ACTIONS(4932), [anon_sym_DASH_DASH] = ACTIONS(4934), [anon_sym_PLUS] = ACTIONS(4932), [anon_sym_PLUS_PLUS] = ACTIONS(4934), [anon_sym_BANG] = ACTIONS(4934), [anon_sym_LPAREN] = ACTIONS(4934), [anon_sym_RPAREN] = ACTIONS(4934), [anon_sym_LBRACK] = ACTIONS(4934), [anon_sym_SEMI] = ACTIONS(4934), [anon_sym_DOLLAR] = ACTIONS(4934), [anon_sym_STAR] = ACTIONS(4934), [anon_sym_TILDE] = ACTIONS(4934), [anon_sym_AT] = ACTIONS(4934), [sym_bool] = ACTIONS(4932), [sym_byte] = ACTIONS(4932), [sym_ubyte] = ACTIONS(4932), [sym_char] = ACTIONS(4932), [sym_short] = ACTIONS(4932), [sym_ushort] = ACTIONS(4932), [sym_int] = ACTIONS(4932), [sym_uint] = ACTIONS(4932), [sym_long] = ACTIONS(4932), [sym_ulong] = ACTIONS(4932), [sym_cent] = ACTIONS(4932), [sym_ucent] = ACTIONS(4932), [sym_wchar] = ACTIONS(4932), [sym_dchar] = ACTIONS(4932), [sym_float] = ACTIONS(4932), [sym_double] = ACTIONS(4932), [sym_real] = ACTIONS(4932), [sym_ifloat] = ACTIONS(4932), [sym_idouble] = ACTIONS(4932), [sym_ireal] = ACTIONS(4932), [sym_cfloat] = ACTIONS(4932), [sym_cdouble] = ACTIONS(4932), [sym_creal] = ACTIONS(4932), [sym_size_t] = ACTIONS(4932), [sym_ptrdiff_t] = ACTIONS(4932), [sym_string] = ACTIONS(4932), [sym_cstring] = ACTIONS(4932), [sym_dstring] = ACTIONS(4932), [sym_wstring] = ACTIONS(4932), [sym_noreturn] = ACTIONS(4932), [sym_true] = ACTIONS(4932), [sym_false] = ACTIONS(4932), [sym_null] = ACTIONS(4932), [sym_super] = ACTIONS(4932), [sym_this] = ACTIONS(4932), [sym_abstract] = ACTIONS(4932), [sym_alias] = ACTIONS(4932), [sym_align] = ACTIONS(4932), [sym_asm] = ACTIONS(4932), [sym_assert] = ACTIONS(4932), [sym_auto] = ACTIONS(4932), [sym_break] = ACTIONS(4932), [sym_case] = ACTIONS(4932), [sym_cast] = ACTIONS(4932), [sym_class] = ACTIONS(4932), [sym_const] = ACTIONS(4932), [sym_continue] = ACTIONS(4932), [sym_debug] = ACTIONS(4932), [sym_default] = ACTIONS(4932), [sym_delegate] = ACTIONS(4932), [sym_delete] = ACTIONS(4932), [sym_deprecated] = ACTIONS(4932), [sym_do] = ACTIONS(4932), [sym_else] = ACTIONS(4932), [sym_enum] = ACTIONS(4932), [sym_export] = ACTIONS(4932), [sym_extern] = ACTIONS(4932), [sym_final] = ACTIONS(4932), [sym_for] = ACTIONS(4932), [sym_foreach] = ACTIONS(4932), [sym_foreach_reverse] = ACTIONS(4932), [sym_function] = ACTIONS(4932), [sym_goto] = ACTIONS(4932), [sym_if] = ACTIONS(4932), [sym_immutable] = ACTIONS(4932), [sym_import] = ACTIONS(4932), [sym_in] = ACTIONS(4932), [sym_inout] = ACTIONS(4932), [sym_interface] = ACTIONS(4932), [sym_invariant] = ACTIONS(4932), [sym_is] = ACTIONS(4932), [sym_mixin] = ACTIONS(4932), [sym_new] = ACTIONS(4932), [sym_nothrow] = ACTIONS(4932), [sym_out] = ACTIONS(4932), [sym_override] = ACTIONS(4932), [sym_package] = ACTIONS(4932), [sym_pragma] = ACTIONS(4932), [sym_private] = ACTIONS(4932), [sym_protected] = ACTIONS(4932), [sym_public] = ACTIONS(4932), [sym_pure] = ACTIONS(4932), [sym_ref] = ACTIONS(4932), [sym_return] = ACTIONS(4932), [sym_scope] = ACTIONS(4932), [sym_shared] = ACTIONS(4932), [sym_static] = ACTIONS(4932), [sym_struct] = ACTIONS(4932), [sym_switch] = ACTIONS(4932), [sym_synchronized] = ACTIONS(4932), [sym_template] = ACTIONS(4932), [sym_throw] = ACTIONS(4932), [sym_try] = ACTIONS(4932), [sym_typeid] = ACTIONS(4932), [sym_typeof] = ACTIONS(4932), [sym_union] = ACTIONS(4932), [sym_unittest] = ACTIONS(4932), [sym_version] = ACTIONS(4932), [sym_while] = ACTIONS(4932), [sym_with] = ACTIONS(4932), [sym_gshared] = ACTIONS(4932), [sym_traits] = ACTIONS(4932), [sym_vector] = ACTIONS(4932), [sym_void] = ACTIONS(4932), [anon_sym_BQUOTE] = ACTIONS(4934), [anon_sym_r_DQUOTE] = ACTIONS(4934), [anon_sym_x_DQUOTE] = ACTIONS(4934), [anon_sym_DQUOTE] = ACTIONS(4934), [anon_sym_i_BQUOTE] = ACTIONS(4934), [anon_sym_i_DQUOTE] = ACTIONS(4934), [anon_sym_iq_LBRACE] = ACTIONS(4934), [aux_sym_char_literal_token1] = ACTIONS(4934), [anon_sym_SQUOTE] = ACTIONS(4932), [anon_sym___DATE__] = ACTIONS(4932), [anon_sym___FILE__] = ACTIONS(4932), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4932), [anon_sym___FUNCTION__] = ACTIONS(4932), [anon_sym___LINE__] = ACTIONS(4932), [anon_sym___MODULE__] = ACTIONS(4932), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4932), [anon_sym___TIME__] = ACTIONS(4932), [anon_sym___TIMESTAMP__] = ACTIONS(4932), [anon_sym___VENDOR__] = ACTIONS(4932), [anon_sym___VERSION__] = ACTIONS(4932), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4934), [sym_float_literal] = ACTIONS(4934), [sym__string] = ACTIONS(4934), }, [1706] = { [sym_identifier] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2782), [anon_sym_RBRACE] = ACTIONS(2782), [anon_sym_LBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_AMP] = ACTIONS(2782), [anon_sym_DASH] = ACTIONS(2784), [anon_sym_DASH_DASH] = ACTIONS(2782), [anon_sym_PLUS] = ACTIONS(2784), [anon_sym_PLUS_PLUS] = ACTIONS(2782), [anon_sym_BANG] = ACTIONS(2782), [anon_sym_LPAREN] = ACTIONS(2782), [anon_sym_RPAREN] = ACTIONS(2782), [anon_sym_LBRACK] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_DOLLAR] = ACTIONS(2782), [anon_sym_STAR] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [anon_sym_AT] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_true] = ACTIONS(2784), [sym_false] = ACTIONS(2784), [sym_null] = ACTIONS(2784), [sym_super] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_abstract] = ACTIONS(2784), [sym_alias] = ACTIONS(2784), [sym_align] = ACTIONS(2784), [sym_asm] = ACTIONS(2784), [sym_assert] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_break] = ACTIONS(2784), [sym_case] = ACTIONS(2784), [sym_cast] = ACTIONS(2784), [sym_class] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_continue] = ACTIONS(2784), [sym_debug] = ACTIONS(2784), [sym_default] = ACTIONS(2784), [sym_delegate] = ACTIONS(2784), [sym_delete] = ACTIONS(2784), [sym_deprecated] = ACTIONS(2784), [sym_do] = ACTIONS(2784), [sym_else] = ACTIONS(5109), [sym_enum] = ACTIONS(2784), [sym_export] = ACTIONS(2784), [sym_extern] = ACTIONS(2784), [sym_final] = ACTIONS(2784), [sym_for] = ACTIONS(2784), [sym_foreach] = ACTIONS(2784), [sym_foreach_reverse] = ACTIONS(2784), [sym_function] = ACTIONS(2784), [sym_goto] = ACTIONS(2784), [sym_if] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_in] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_interface] = ACTIONS(2784), [sym_invariant] = ACTIONS(2784), [sym_is] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_new] = ACTIONS(2784), [sym_nothrow] = ACTIONS(2784), [sym_out] = ACTIONS(2784), [sym_override] = ACTIONS(2784), [sym_package] = ACTIONS(2784), [sym_pragma] = ACTIONS(2784), [sym_private] = ACTIONS(2784), [sym_protected] = ACTIONS(2784), [sym_public] = ACTIONS(2784), [sym_pure] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_return] = ACTIONS(2784), [sym_scope] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_static] = ACTIONS(2784), [sym_struct] = ACTIONS(2784), [sym_switch] = ACTIONS(2784), [sym_synchronized] = ACTIONS(2784), [sym_template] = ACTIONS(2784), [sym_throw] = ACTIONS(2784), [sym_try] = ACTIONS(2784), [sym_typeid] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_union] = ACTIONS(2784), [sym_unittest] = ACTIONS(2784), [sym_version] = ACTIONS(2784), [sym_while] = ACTIONS(2784), [sym_with] = ACTIONS(2784), [sym_gshared] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [anon_sym_BQUOTE] = ACTIONS(2782), [anon_sym_r_DQUOTE] = ACTIONS(2782), [anon_sym_x_DQUOTE] = ACTIONS(2782), [anon_sym_DQUOTE] = ACTIONS(2782), [anon_sym_i_BQUOTE] = ACTIONS(2782), [anon_sym_i_DQUOTE] = ACTIONS(2782), [anon_sym_iq_LBRACE] = ACTIONS(2782), [aux_sym_char_literal_token1] = ACTIONS(2782), [anon_sym_SQUOTE] = ACTIONS(2784), [anon_sym___DATE__] = ACTIONS(2784), [anon_sym___FILE__] = ACTIONS(2784), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2784), [anon_sym___FUNCTION__] = ACTIONS(2784), [anon_sym___LINE__] = ACTIONS(2784), [anon_sym___MODULE__] = ACTIONS(2784), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2784), [anon_sym___TIME__] = ACTIONS(2784), [anon_sym___TIMESTAMP__] = ACTIONS(2784), [anon_sym___VENDOR__] = ACTIONS(2784), [anon_sym___VERSION__] = ACTIONS(2784), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2782), [sym_float_literal] = ACTIONS(2782), [sym__string] = ACTIONS(2782), }, [1707] = { [sym_identifier] = ACTIONS(4410), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4412), [anon_sym_RBRACE] = ACTIONS(4412), [anon_sym_LBRACE] = ACTIONS(4412), [anon_sym_DOT] = ACTIONS(4412), [anon_sym_AMP] = ACTIONS(4412), [anon_sym_DASH] = ACTIONS(4410), [anon_sym_DASH_DASH] = ACTIONS(4412), [anon_sym_PLUS] = ACTIONS(4410), [anon_sym_PLUS_PLUS] = ACTIONS(4412), [anon_sym_BANG] = ACTIONS(4412), [anon_sym_LPAREN] = ACTIONS(4412), [anon_sym_RPAREN] = ACTIONS(4412), [anon_sym_LBRACK] = ACTIONS(4412), [anon_sym_SEMI] = ACTIONS(4412), [anon_sym_DOLLAR] = ACTIONS(4412), [anon_sym_STAR] = ACTIONS(4412), [anon_sym_TILDE] = ACTIONS(4412), [anon_sym_AT] = ACTIONS(4412), [sym_bool] = ACTIONS(4410), [sym_byte] = ACTIONS(4410), [sym_ubyte] = ACTIONS(4410), [sym_char] = ACTIONS(4410), [sym_short] = ACTIONS(4410), [sym_ushort] = ACTIONS(4410), [sym_int] = ACTIONS(4410), [sym_uint] = ACTIONS(4410), [sym_long] = ACTIONS(4410), [sym_ulong] = ACTIONS(4410), [sym_cent] = ACTIONS(4410), [sym_ucent] = ACTIONS(4410), [sym_wchar] = ACTIONS(4410), [sym_dchar] = ACTIONS(4410), [sym_float] = ACTIONS(4410), [sym_double] = ACTIONS(4410), [sym_real] = ACTIONS(4410), [sym_ifloat] = ACTIONS(4410), [sym_idouble] = ACTIONS(4410), [sym_ireal] = ACTIONS(4410), [sym_cfloat] = ACTIONS(4410), [sym_cdouble] = ACTIONS(4410), [sym_creal] = ACTIONS(4410), [sym_size_t] = ACTIONS(4410), [sym_ptrdiff_t] = ACTIONS(4410), [sym_string] = ACTIONS(4410), [sym_cstring] = ACTIONS(4410), [sym_dstring] = ACTIONS(4410), [sym_wstring] = ACTIONS(4410), [sym_noreturn] = ACTIONS(4410), [sym_true] = ACTIONS(4410), [sym_false] = ACTIONS(4410), [sym_null] = ACTIONS(4410), [sym_super] = ACTIONS(4410), [sym_this] = ACTIONS(4410), [sym_abstract] = ACTIONS(4410), [sym_alias] = ACTIONS(4410), [sym_align] = ACTIONS(4410), [sym_asm] = ACTIONS(4410), [sym_assert] = ACTIONS(4410), [sym_auto] = ACTIONS(4410), [sym_break] = ACTIONS(4410), [sym_case] = ACTIONS(4410), [sym_cast] = ACTIONS(4410), [sym_class] = ACTIONS(4410), [sym_const] = ACTIONS(4410), [sym_continue] = ACTIONS(4410), [sym_debug] = ACTIONS(4410), [sym_default] = ACTIONS(4410), [sym_delegate] = ACTIONS(4410), [sym_delete] = ACTIONS(4410), [sym_deprecated] = ACTIONS(4410), [sym_do] = ACTIONS(4410), [sym_else] = ACTIONS(4410), [sym_enum] = ACTIONS(4410), [sym_export] = ACTIONS(4410), [sym_extern] = ACTIONS(4410), [sym_final] = ACTIONS(4410), [sym_for] = ACTIONS(4410), [sym_foreach] = ACTIONS(4410), [sym_foreach_reverse] = ACTIONS(4410), [sym_function] = ACTIONS(4410), [sym_goto] = ACTIONS(4410), [sym_if] = ACTIONS(4410), [sym_immutable] = ACTIONS(4410), [sym_import] = ACTIONS(4410), [sym_in] = ACTIONS(4410), [sym_inout] = ACTIONS(4410), [sym_interface] = ACTIONS(4410), [sym_invariant] = ACTIONS(4410), [sym_is] = ACTIONS(4410), [sym_mixin] = ACTIONS(4410), [sym_new] = ACTIONS(4410), [sym_nothrow] = ACTIONS(4410), [sym_out] = ACTIONS(4410), [sym_override] = ACTIONS(4410), [sym_package] = ACTIONS(4410), [sym_pragma] = ACTIONS(4410), [sym_private] = ACTIONS(4410), [sym_protected] = ACTIONS(4410), [sym_public] = ACTIONS(4410), [sym_pure] = ACTIONS(4410), [sym_ref] = ACTIONS(4410), [sym_return] = ACTIONS(4410), [sym_scope] = ACTIONS(4410), [sym_shared] = ACTIONS(4410), [sym_static] = ACTIONS(4410), [sym_struct] = ACTIONS(4410), [sym_switch] = ACTIONS(4410), [sym_synchronized] = ACTIONS(4410), [sym_template] = ACTIONS(4410), [sym_throw] = ACTIONS(4410), [sym_try] = ACTIONS(4410), [sym_typeid] = ACTIONS(4410), [sym_typeof] = ACTIONS(4410), [sym_union] = ACTIONS(4410), [sym_unittest] = ACTIONS(4410), [sym_version] = ACTIONS(4410), [sym_while] = ACTIONS(4410), [sym_with] = ACTIONS(4410), [sym_gshared] = ACTIONS(4410), [sym_traits] = ACTIONS(4410), [sym_vector] = ACTIONS(4410), [sym_void] = ACTIONS(4410), [anon_sym_BQUOTE] = ACTIONS(4412), [anon_sym_r_DQUOTE] = ACTIONS(4412), [anon_sym_x_DQUOTE] = ACTIONS(4412), [anon_sym_DQUOTE] = ACTIONS(4412), [anon_sym_i_BQUOTE] = ACTIONS(4412), [anon_sym_i_DQUOTE] = ACTIONS(4412), [anon_sym_iq_LBRACE] = ACTIONS(4412), [aux_sym_char_literal_token1] = ACTIONS(4412), [anon_sym_SQUOTE] = ACTIONS(4410), [anon_sym___DATE__] = ACTIONS(4410), [anon_sym___FILE__] = ACTIONS(4410), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4410), [anon_sym___FUNCTION__] = ACTIONS(4410), [anon_sym___LINE__] = ACTIONS(4410), [anon_sym___MODULE__] = ACTIONS(4410), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4410), [anon_sym___TIME__] = ACTIONS(4410), [anon_sym___TIMESTAMP__] = ACTIONS(4410), [anon_sym___VENDOR__] = ACTIONS(4410), [anon_sym___VERSION__] = ACTIONS(4410), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4412), [sym_float_literal] = ACTIONS(4412), [sym__string] = ACTIONS(4412), }, [1708] = { [sym_identifier] = ACTIONS(4398), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4400), [anon_sym_RBRACE] = ACTIONS(4400), [anon_sym_LBRACE] = ACTIONS(4400), [anon_sym_DOT] = ACTIONS(4400), [anon_sym_AMP] = ACTIONS(4400), [anon_sym_DASH] = ACTIONS(4398), [anon_sym_DASH_DASH] = ACTIONS(4400), [anon_sym_PLUS] = ACTIONS(4398), [anon_sym_PLUS_PLUS] = ACTIONS(4400), [anon_sym_BANG] = ACTIONS(4400), [anon_sym_LPAREN] = ACTIONS(4400), [anon_sym_RPAREN] = ACTIONS(4400), [anon_sym_LBRACK] = ACTIONS(4400), [anon_sym_SEMI] = ACTIONS(4400), [anon_sym_DOLLAR] = ACTIONS(4400), [anon_sym_STAR] = ACTIONS(4400), [anon_sym_TILDE] = ACTIONS(4400), [anon_sym_AT] = ACTIONS(4400), [sym_bool] = ACTIONS(4398), [sym_byte] = ACTIONS(4398), [sym_ubyte] = ACTIONS(4398), [sym_char] = ACTIONS(4398), [sym_short] = ACTIONS(4398), [sym_ushort] = ACTIONS(4398), [sym_int] = ACTIONS(4398), [sym_uint] = ACTIONS(4398), [sym_long] = ACTIONS(4398), [sym_ulong] = ACTIONS(4398), [sym_cent] = ACTIONS(4398), [sym_ucent] = ACTIONS(4398), [sym_wchar] = ACTIONS(4398), [sym_dchar] = ACTIONS(4398), [sym_float] = ACTIONS(4398), [sym_double] = ACTIONS(4398), [sym_real] = ACTIONS(4398), [sym_ifloat] = ACTIONS(4398), [sym_idouble] = ACTIONS(4398), [sym_ireal] = ACTIONS(4398), [sym_cfloat] = ACTIONS(4398), [sym_cdouble] = ACTIONS(4398), [sym_creal] = ACTIONS(4398), [sym_size_t] = ACTIONS(4398), [sym_ptrdiff_t] = ACTIONS(4398), [sym_string] = ACTIONS(4398), [sym_cstring] = ACTIONS(4398), [sym_dstring] = ACTIONS(4398), [sym_wstring] = ACTIONS(4398), [sym_noreturn] = ACTIONS(4398), [sym_true] = ACTIONS(4398), [sym_false] = ACTIONS(4398), [sym_null] = ACTIONS(4398), [sym_super] = ACTIONS(4398), [sym_this] = ACTIONS(4398), [sym_abstract] = ACTIONS(4398), [sym_alias] = ACTIONS(4398), [sym_align] = ACTIONS(4398), [sym_asm] = ACTIONS(4398), [sym_assert] = ACTIONS(4398), [sym_auto] = ACTIONS(4398), [sym_break] = ACTIONS(4398), [sym_case] = ACTIONS(4398), [sym_cast] = ACTIONS(4398), [sym_class] = ACTIONS(4398), [sym_const] = ACTIONS(4398), [sym_continue] = ACTIONS(4398), [sym_debug] = ACTIONS(4398), [sym_default] = ACTIONS(4398), [sym_delegate] = ACTIONS(4398), [sym_delete] = ACTIONS(4398), [sym_deprecated] = ACTIONS(4398), [sym_do] = ACTIONS(4398), [sym_else] = ACTIONS(4398), [sym_enum] = ACTIONS(4398), [sym_export] = ACTIONS(4398), [sym_extern] = ACTIONS(4398), [sym_final] = ACTIONS(4398), [sym_for] = ACTIONS(4398), [sym_foreach] = ACTIONS(4398), [sym_foreach_reverse] = ACTIONS(4398), [sym_function] = ACTIONS(4398), [sym_goto] = ACTIONS(4398), [sym_if] = ACTIONS(4398), [sym_immutable] = ACTIONS(4398), [sym_import] = ACTIONS(4398), [sym_in] = ACTIONS(4398), [sym_inout] = ACTIONS(4398), [sym_interface] = ACTIONS(4398), [sym_invariant] = ACTIONS(4398), [sym_is] = ACTIONS(4398), [sym_mixin] = ACTIONS(4398), [sym_new] = ACTIONS(4398), [sym_nothrow] = ACTIONS(4398), [sym_out] = ACTIONS(4398), [sym_override] = ACTIONS(4398), [sym_package] = ACTIONS(4398), [sym_pragma] = ACTIONS(4398), [sym_private] = ACTIONS(4398), [sym_protected] = ACTIONS(4398), [sym_public] = ACTIONS(4398), [sym_pure] = ACTIONS(4398), [sym_ref] = ACTIONS(4398), [sym_return] = ACTIONS(4398), [sym_scope] = ACTIONS(4398), [sym_shared] = ACTIONS(4398), [sym_static] = ACTIONS(4398), [sym_struct] = ACTIONS(4398), [sym_switch] = ACTIONS(4398), [sym_synchronized] = ACTIONS(4398), [sym_template] = ACTIONS(4398), [sym_throw] = ACTIONS(4398), [sym_try] = ACTIONS(4398), [sym_typeid] = ACTIONS(4398), [sym_typeof] = ACTIONS(4398), [sym_union] = ACTIONS(4398), [sym_unittest] = ACTIONS(4398), [sym_version] = ACTIONS(4398), [sym_while] = ACTIONS(4398), [sym_with] = ACTIONS(4398), [sym_gshared] = ACTIONS(4398), [sym_traits] = ACTIONS(4398), [sym_vector] = ACTIONS(4398), [sym_void] = ACTIONS(4398), [anon_sym_BQUOTE] = ACTIONS(4400), [anon_sym_r_DQUOTE] = ACTIONS(4400), [anon_sym_x_DQUOTE] = ACTIONS(4400), [anon_sym_DQUOTE] = ACTIONS(4400), [anon_sym_i_BQUOTE] = ACTIONS(4400), [anon_sym_i_DQUOTE] = ACTIONS(4400), [anon_sym_iq_LBRACE] = ACTIONS(4400), [aux_sym_char_literal_token1] = ACTIONS(4400), [anon_sym_SQUOTE] = ACTIONS(4398), [anon_sym___DATE__] = ACTIONS(4398), [anon_sym___FILE__] = ACTIONS(4398), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4398), [anon_sym___FUNCTION__] = ACTIONS(4398), [anon_sym___LINE__] = ACTIONS(4398), [anon_sym___MODULE__] = ACTIONS(4398), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4398), [anon_sym___TIME__] = ACTIONS(4398), [anon_sym___TIMESTAMP__] = ACTIONS(4398), [anon_sym___VENDOR__] = ACTIONS(4398), [anon_sym___VERSION__] = ACTIONS(4398), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4400), [sym_float_literal] = ACTIONS(4400), [sym__string] = ACTIONS(4400), }, [1709] = { [sym_identifier] = ACTIONS(4876), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4878), [anon_sym_RBRACE] = ACTIONS(4878), [anon_sym_LBRACE] = ACTIONS(4878), [anon_sym_DOT] = ACTIONS(4878), [anon_sym_AMP] = ACTIONS(4878), [anon_sym_DASH] = ACTIONS(4876), [anon_sym_DASH_DASH] = ACTIONS(4878), [anon_sym_PLUS] = ACTIONS(4876), [anon_sym_PLUS_PLUS] = ACTIONS(4878), [anon_sym_BANG] = ACTIONS(4878), [anon_sym_LPAREN] = ACTIONS(4878), [anon_sym_RPAREN] = ACTIONS(4878), [anon_sym_LBRACK] = ACTIONS(4878), [anon_sym_SEMI] = ACTIONS(4878), [anon_sym_DOLLAR] = ACTIONS(4878), [anon_sym_STAR] = ACTIONS(4878), [anon_sym_TILDE] = ACTIONS(4878), [anon_sym_AT] = ACTIONS(4878), [sym_bool] = ACTIONS(4876), [sym_byte] = ACTIONS(4876), [sym_ubyte] = ACTIONS(4876), [sym_char] = ACTIONS(4876), [sym_short] = ACTIONS(4876), [sym_ushort] = ACTIONS(4876), [sym_int] = ACTIONS(4876), [sym_uint] = ACTIONS(4876), [sym_long] = ACTIONS(4876), [sym_ulong] = ACTIONS(4876), [sym_cent] = ACTIONS(4876), [sym_ucent] = ACTIONS(4876), [sym_wchar] = ACTIONS(4876), [sym_dchar] = ACTIONS(4876), [sym_float] = ACTIONS(4876), [sym_double] = ACTIONS(4876), [sym_real] = ACTIONS(4876), [sym_ifloat] = ACTIONS(4876), [sym_idouble] = ACTIONS(4876), [sym_ireal] = ACTIONS(4876), [sym_cfloat] = ACTIONS(4876), [sym_cdouble] = ACTIONS(4876), [sym_creal] = ACTIONS(4876), [sym_size_t] = ACTIONS(4876), [sym_ptrdiff_t] = ACTIONS(4876), [sym_string] = ACTIONS(4876), [sym_cstring] = ACTIONS(4876), [sym_dstring] = ACTIONS(4876), [sym_wstring] = ACTIONS(4876), [sym_noreturn] = ACTIONS(4876), [sym_true] = ACTIONS(4876), [sym_false] = ACTIONS(4876), [sym_null] = ACTIONS(4876), [sym_super] = ACTIONS(4876), [sym_this] = ACTIONS(4876), [sym_abstract] = ACTIONS(4876), [sym_alias] = ACTIONS(4876), [sym_align] = ACTIONS(4876), [sym_asm] = ACTIONS(4876), [sym_assert] = ACTIONS(4876), [sym_auto] = ACTIONS(4876), [sym_break] = ACTIONS(4876), [sym_case] = ACTIONS(4876), [sym_cast] = ACTIONS(4876), [sym_class] = ACTIONS(4876), [sym_const] = ACTIONS(4876), [sym_continue] = ACTIONS(4876), [sym_debug] = ACTIONS(4876), [sym_default] = ACTIONS(4876), [sym_delegate] = ACTIONS(4876), [sym_delete] = ACTIONS(4876), [sym_deprecated] = ACTIONS(4876), [sym_do] = ACTIONS(4876), [sym_else] = ACTIONS(4876), [sym_enum] = ACTIONS(4876), [sym_export] = ACTIONS(4876), [sym_extern] = ACTIONS(4876), [sym_final] = ACTIONS(4876), [sym_for] = ACTIONS(4876), [sym_foreach] = ACTIONS(4876), [sym_foreach_reverse] = ACTIONS(4876), [sym_function] = ACTIONS(4876), [sym_goto] = ACTIONS(4876), [sym_if] = ACTIONS(4876), [sym_immutable] = ACTIONS(4876), [sym_import] = ACTIONS(4876), [sym_in] = ACTIONS(4876), [sym_inout] = ACTIONS(4876), [sym_interface] = ACTIONS(4876), [sym_invariant] = ACTIONS(4876), [sym_is] = ACTIONS(4876), [sym_mixin] = ACTIONS(4876), [sym_new] = ACTIONS(4876), [sym_nothrow] = ACTIONS(4876), [sym_out] = ACTIONS(4876), [sym_override] = ACTIONS(4876), [sym_package] = ACTIONS(4876), [sym_pragma] = ACTIONS(4876), [sym_private] = ACTIONS(4876), [sym_protected] = ACTIONS(4876), [sym_public] = ACTIONS(4876), [sym_pure] = ACTIONS(4876), [sym_ref] = ACTIONS(4876), [sym_return] = ACTIONS(4876), [sym_scope] = ACTIONS(4876), [sym_shared] = ACTIONS(4876), [sym_static] = ACTIONS(4876), [sym_struct] = ACTIONS(4876), [sym_switch] = ACTIONS(4876), [sym_synchronized] = ACTIONS(4876), [sym_template] = ACTIONS(4876), [sym_throw] = ACTIONS(4876), [sym_try] = ACTIONS(4876), [sym_typeid] = ACTIONS(4876), [sym_typeof] = ACTIONS(4876), [sym_union] = ACTIONS(4876), [sym_unittest] = ACTIONS(4876), [sym_version] = ACTIONS(4876), [sym_while] = ACTIONS(4876), [sym_with] = ACTIONS(4876), [sym_gshared] = ACTIONS(4876), [sym_traits] = ACTIONS(4876), [sym_vector] = ACTIONS(4876), [sym_void] = ACTIONS(4876), [anon_sym_BQUOTE] = ACTIONS(4878), [anon_sym_r_DQUOTE] = ACTIONS(4878), [anon_sym_x_DQUOTE] = ACTIONS(4878), [anon_sym_DQUOTE] = ACTIONS(4878), [anon_sym_i_BQUOTE] = ACTIONS(4878), [anon_sym_i_DQUOTE] = ACTIONS(4878), [anon_sym_iq_LBRACE] = ACTIONS(4878), [aux_sym_char_literal_token1] = ACTIONS(4878), [anon_sym_SQUOTE] = ACTIONS(4876), [anon_sym___DATE__] = ACTIONS(4876), [anon_sym___FILE__] = ACTIONS(4876), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4876), [anon_sym___FUNCTION__] = ACTIONS(4876), [anon_sym___LINE__] = ACTIONS(4876), [anon_sym___MODULE__] = ACTIONS(4876), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4876), [anon_sym___TIME__] = ACTIONS(4876), [anon_sym___TIMESTAMP__] = ACTIONS(4876), [anon_sym___VENDOR__] = ACTIONS(4876), [anon_sym___VERSION__] = ACTIONS(4876), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4878), [sym_float_literal] = ACTIONS(4878), [sym__string] = ACTIONS(4878), }, [1710] = { [sym_identifier] = ACTIONS(4872), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4874), [anon_sym_RBRACE] = ACTIONS(4874), [anon_sym_LBRACE] = ACTIONS(4874), [anon_sym_DOT] = ACTIONS(4874), [anon_sym_AMP] = ACTIONS(4874), [anon_sym_DASH] = ACTIONS(4872), [anon_sym_DASH_DASH] = ACTIONS(4874), [anon_sym_PLUS] = ACTIONS(4872), [anon_sym_PLUS_PLUS] = ACTIONS(4874), [anon_sym_BANG] = ACTIONS(4874), [anon_sym_LPAREN] = ACTIONS(4874), [anon_sym_RPAREN] = ACTIONS(4874), [anon_sym_LBRACK] = ACTIONS(4874), [anon_sym_SEMI] = ACTIONS(4874), [anon_sym_DOLLAR] = ACTIONS(4874), [anon_sym_STAR] = ACTIONS(4874), [anon_sym_TILDE] = ACTIONS(4874), [anon_sym_AT] = ACTIONS(4874), [sym_bool] = ACTIONS(4872), [sym_byte] = ACTIONS(4872), [sym_ubyte] = ACTIONS(4872), [sym_char] = ACTIONS(4872), [sym_short] = ACTIONS(4872), [sym_ushort] = ACTIONS(4872), [sym_int] = ACTIONS(4872), [sym_uint] = ACTIONS(4872), [sym_long] = ACTIONS(4872), [sym_ulong] = ACTIONS(4872), [sym_cent] = ACTIONS(4872), [sym_ucent] = ACTIONS(4872), [sym_wchar] = ACTIONS(4872), [sym_dchar] = ACTIONS(4872), [sym_float] = ACTIONS(4872), [sym_double] = ACTIONS(4872), [sym_real] = ACTIONS(4872), [sym_ifloat] = ACTIONS(4872), [sym_idouble] = ACTIONS(4872), [sym_ireal] = ACTIONS(4872), [sym_cfloat] = ACTIONS(4872), [sym_cdouble] = ACTIONS(4872), [sym_creal] = ACTIONS(4872), [sym_size_t] = ACTIONS(4872), [sym_ptrdiff_t] = ACTIONS(4872), [sym_string] = ACTIONS(4872), [sym_cstring] = ACTIONS(4872), [sym_dstring] = ACTIONS(4872), [sym_wstring] = ACTIONS(4872), [sym_noreturn] = ACTIONS(4872), [sym_true] = ACTIONS(4872), [sym_false] = ACTIONS(4872), [sym_null] = ACTIONS(4872), [sym_super] = ACTIONS(4872), [sym_this] = ACTIONS(4872), [sym_abstract] = ACTIONS(4872), [sym_alias] = ACTIONS(4872), [sym_align] = ACTIONS(4872), [sym_asm] = ACTIONS(4872), [sym_assert] = ACTIONS(4872), [sym_auto] = ACTIONS(4872), [sym_break] = ACTIONS(4872), [sym_case] = ACTIONS(4872), [sym_cast] = ACTIONS(4872), [sym_class] = ACTIONS(4872), [sym_const] = ACTIONS(4872), [sym_continue] = ACTIONS(4872), [sym_debug] = ACTIONS(4872), [sym_default] = ACTIONS(4872), [sym_delegate] = ACTIONS(4872), [sym_delete] = ACTIONS(4872), [sym_deprecated] = ACTIONS(4872), [sym_do] = ACTIONS(4872), [sym_else] = ACTIONS(4872), [sym_enum] = ACTIONS(4872), [sym_export] = ACTIONS(4872), [sym_extern] = ACTIONS(4872), [sym_final] = ACTIONS(4872), [sym_for] = ACTIONS(4872), [sym_foreach] = ACTIONS(4872), [sym_foreach_reverse] = ACTIONS(4872), [sym_function] = ACTIONS(4872), [sym_goto] = ACTIONS(4872), [sym_if] = ACTIONS(4872), [sym_immutable] = ACTIONS(4872), [sym_import] = ACTIONS(4872), [sym_in] = ACTIONS(4872), [sym_inout] = ACTIONS(4872), [sym_interface] = ACTIONS(4872), [sym_invariant] = ACTIONS(4872), [sym_is] = ACTIONS(4872), [sym_mixin] = ACTIONS(4872), [sym_new] = ACTIONS(4872), [sym_nothrow] = ACTIONS(4872), [sym_out] = ACTIONS(4872), [sym_override] = ACTIONS(4872), [sym_package] = ACTIONS(4872), [sym_pragma] = ACTIONS(4872), [sym_private] = ACTIONS(4872), [sym_protected] = ACTIONS(4872), [sym_public] = ACTIONS(4872), [sym_pure] = ACTIONS(4872), [sym_ref] = ACTIONS(4872), [sym_return] = ACTIONS(4872), [sym_scope] = ACTIONS(4872), [sym_shared] = ACTIONS(4872), [sym_static] = ACTIONS(4872), [sym_struct] = ACTIONS(4872), [sym_switch] = ACTIONS(4872), [sym_synchronized] = ACTIONS(4872), [sym_template] = ACTIONS(4872), [sym_throw] = ACTIONS(4872), [sym_try] = ACTIONS(4872), [sym_typeid] = ACTIONS(4872), [sym_typeof] = ACTIONS(4872), [sym_union] = ACTIONS(4872), [sym_unittest] = ACTIONS(4872), [sym_version] = ACTIONS(4872), [sym_while] = ACTIONS(4872), [sym_with] = ACTIONS(4872), [sym_gshared] = ACTIONS(4872), [sym_traits] = ACTIONS(4872), [sym_vector] = ACTIONS(4872), [sym_void] = ACTIONS(4872), [anon_sym_BQUOTE] = ACTIONS(4874), [anon_sym_r_DQUOTE] = ACTIONS(4874), [anon_sym_x_DQUOTE] = ACTIONS(4874), [anon_sym_DQUOTE] = ACTIONS(4874), [anon_sym_i_BQUOTE] = ACTIONS(4874), [anon_sym_i_DQUOTE] = ACTIONS(4874), [anon_sym_iq_LBRACE] = ACTIONS(4874), [aux_sym_char_literal_token1] = ACTIONS(4874), [anon_sym_SQUOTE] = ACTIONS(4872), [anon_sym___DATE__] = ACTIONS(4872), [anon_sym___FILE__] = ACTIONS(4872), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4872), [anon_sym___FUNCTION__] = ACTIONS(4872), [anon_sym___LINE__] = ACTIONS(4872), [anon_sym___MODULE__] = ACTIONS(4872), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4872), [anon_sym___TIME__] = ACTIONS(4872), [anon_sym___TIMESTAMP__] = ACTIONS(4872), [anon_sym___VENDOR__] = ACTIONS(4872), [anon_sym___VERSION__] = ACTIONS(4872), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4874), [sym_float_literal] = ACTIONS(4874), [sym__string] = ACTIONS(4874), }, [1711] = { [sym_identifier] = ACTIONS(4856), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4858), [anon_sym_RBRACE] = ACTIONS(4858), [anon_sym_LBRACE] = ACTIONS(4858), [anon_sym_DOT] = ACTIONS(4858), [anon_sym_AMP] = ACTIONS(4858), [anon_sym_DASH] = ACTIONS(4856), [anon_sym_DASH_DASH] = ACTIONS(4858), [anon_sym_PLUS] = ACTIONS(4856), [anon_sym_PLUS_PLUS] = ACTIONS(4858), [anon_sym_BANG] = ACTIONS(4858), [anon_sym_LPAREN] = ACTIONS(4858), [anon_sym_RPAREN] = ACTIONS(4858), [anon_sym_LBRACK] = ACTIONS(4858), [anon_sym_SEMI] = ACTIONS(4858), [anon_sym_DOLLAR] = ACTIONS(4858), [anon_sym_STAR] = ACTIONS(4858), [anon_sym_TILDE] = ACTIONS(4858), [anon_sym_AT] = ACTIONS(4858), [sym_bool] = ACTIONS(4856), [sym_byte] = ACTIONS(4856), [sym_ubyte] = ACTIONS(4856), [sym_char] = ACTIONS(4856), [sym_short] = ACTIONS(4856), [sym_ushort] = ACTIONS(4856), [sym_int] = ACTIONS(4856), [sym_uint] = ACTIONS(4856), [sym_long] = ACTIONS(4856), [sym_ulong] = ACTIONS(4856), [sym_cent] = ACTIONS(4856), [sym_ucent] = ACTIONS(4856), [sym_wchar] = ACTIONS(4856), [sym_dchar] = ACTIONS(4856), [sym_float] = ACTIONS(4856), [sym_double] = ACTIONS(4856), [sym_real] = ACTIONS(4856), [sym_ifloat] = ACTIONS(4856), [sym_idouble] = ACTIONS(4856), [sym_ireal] = ACTIONS(4856), [sym_cfloat] = ACTIONS(4856), [sym_cdouble] = ACTIONS(4856), [sym_creal] = ACTIONS(4856), [sym_size_t] = ACTIONS(4856), [sym_ptrdiff_t] = ACTIONS(4856), [sym_string] = ACTIONS(4856), [sym_cstring] = ACTIONS(4856), [sym_dstring] = ACTIONS(4856), [sym_wstring] = ACTIONS(4856), [sym_noreturn] = ACTIONS(4856), [sym_true] = ACTIONS(4856), [sym_false] = ACTIONS(4856), [sym_null] = ACTIONS(4856), [sym_super] = ACTIONS(4856), [sym_this] = ACTIONS(4856), [sym_abstract] = ACTIONS(4856), [sym_alias] = ACTIONS(4856), [sym_align] = ACTIONS(4856), [sym_asm] = ACTIONS(4856), [sym_assert] = ACTIONS(4856), [sym_auto] = ACTIONS(4856), [sym_break] = ACTIONS(4856), [sym_case] = ACTIONS(4856), [sym_cast] = ACTIONS(4856), [sym_class] = ACTIONS(4856), [sym_const] = ACTIONS(4856), [sym_continue] = ACTIONS(4856), [sym_debug] = ACTIONS(4856), [sym_default] = ACTIONS(4856), [sym_delegate] = ACTIONS(4856), [sym_delete] = ACTIONS(4856), [sym_deprecated] = ACTIONS(4856), [sym_do] = ACTIONS(4856), [sym_else] = ACTIONS(4856), [sym_enum] = ACTIONS(4856), [sym_export] = ACTIONS(4856), [sym_extern] = ACTIONS(4856), [sym_final] = ACTIONS(4856), [sym_for] = ACTIONS(4856), [sym_foreach] = ACTIONS(4856), [sym_foreach_reverse] = ACTIONS(4856), [sym_function] = ACTIONS(4856), [sym_goto] = ACTIONS(4856), [sym_if] = ACTIONS(4856), [sym_immutable] = ACTIONS(4856), [sym_import] = ACTIONS(4856), [sym_in] = ACTIONS(4856), [sym_inout] = ACTIONS(4856), [sym_interface] = ACTIONS(4856), [sym_invariant] = ACTIONS(4856), [sym_is] = ACTIONS(4856), [sym_mixin] = ACTIONS(4856), [sym_new] = ACTIONS(4856), [sym_nothrow] = ACTIONS(4856), [sym_out] = ACTIONS(4856), [sym_override] = ACTIONS(4856), [sym_package] = ACTIONS(4856), [sym_pragma] = ACTIONS(4856), [sym_private] = ACTIONS(4856), [sym_protected] = ACTIONS(4856), [sym_public] = ACTIONS(4856), [sym_pure] = ACTIONS(4856), [sym_ref] = ACTIONS(4856), [sym_return] = ACTIONS(4856), [sym_scope] = ACTIONS(4856), [sym_shared] = ACTIONS(4856), [sym_static] = ACTIONS(4856), [sym_struct] = ACTIONS(4856), [sym_switch] = ACTIONS(4856), [sym_synchronized] = ACTIONS(4856), [sym_template] = ACTIONS(4856), [sym_throw] = ACTIONS(4856), [sym_try] = ACTIONS(4856), [sym_typeid] = ACTIONS(4856), [sym_typeof] = ACTIONS(4856), [sym_union] = ACTIONS(4856), [sym_unittest] = ACTIONS(4856), [sym_version] = ACTIONS(4856), [sym_while] = ACTIONS(4856), [sym_with] = ACTIONS(4856), [sym_gshared] = ACTIONS(4856), [sym_traits] = ACTIONS(4856), [sym_vector] = ACTIONS(4856), [sym_void] = ACTIONS(4856), [anon_sym_BQUOTE] = ACTIONS(4858), [anon_sym_r_DQUOTE] = ACTIONS(4858), [anon_sym_x_DQUOTE] = ACTIONS(4858), [anon_sym_DQUOTE] = ACTIONS(4858), [anon_sym_i_BQUOTE] = ACTIONS(4858), [anon_sym_i_DQUOTE] = ACTIONS(4858), [anon_sym_iq_LBRACE] = ACTIONS(4858), [aux_sym_char_literal_token1] = ACTIONS(4858), [anon_sym_SQUOTE] = ACTIONS(4856), [anon_sym___DATE__] = ACTIONS(4856), [anon_sym___FILE__] = ACTIONS(4856), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4856), [anon_sym___FUNCTION__] = ACTIONS(4856), [anon_sym___LINE__] = ACTIONS(4856), [anon_sym___MODULE__] = ACTIONS(4856), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4856), [anon_sym___TIME__] = ACTIONS(4856), [anon_sym___TIMESTAMP__] = ACTIONS(4856), [anon_sym___VENDOR__] = ACTIONS(4856), [anon_sym___VERSION__] = ACTIONS(4856), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4858), [sym_float_literal] = ACTIONS(4858), [sym__string] = ACTIONS(4858), }, [1712] = { [sym_identifier] = ACTIONS(4305), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4307), [anon_sym_RBRACE] = ACTIONS(4307), [anon_sym_LBRACE] = ACTIONS(4307), [anon_sym_DOT] = ACTIONS(4307), [anon_sym_AMP] = ACTIONS(4307), [anon_sym_DASH] = ACTIONS(4305), [anon_sym_DASH_DASH] = ACTIONS(4307), [anon_sym_PLUS] = ACTIONS(4305), [anon_sym_PLUS_PLUS] = ACTIONS(4307), [anon_sym_BANG] = ACTIONS(4307), [anon_sym_LPAREN] = ACTIONS(4307), [anon_sym_RPAREN] = ACTIONS(4307), [anon_sym_LBRACK] = ACTIONS(4307), [anon_sym_SEMI] = ACTIONS(4307), [anon_sym_DOLLAR] = ACTIONS(4307), [anon_sym_STAR] = ACTIONS(4307), [anon_sym_TILDE] = ACTIONS(4307), [anon_sym_AT] = ACTIONS(4307), [sym_bool] = ACTIONS(4305), [sym_byte] = ACTIONS(4305), [sym_ubyte] = ACTIONS(4305), [sym_char] = ACTIONS(4305), [sym_short] = ACTIONS(4305), [sym_ushort] = ACTIONS(4305), [sym_int] = ACTIONS(4305), [sym_uint] = ACTIONS(4305), [sym_long] = ACTIONS(4305), [sym_ulong] = ACTIONS(4305), [sym_cent] = ACTIONS(4305), [sym_ucent] = ACTIONS(4305), [sym_wchar] = ACTIONS(4305), [sym_dchar] = ACTIONS(4305), [sym_float] = ACTIONS(4305), [sym_double] = ACTIONS(4305), [sym_real] = ACTIONS(4305), [sym_ifloat] = ACTIONS(4305), [sym_idouble] = ACTIONS(4305), [sym_ireal] = ACTIONS(4305), [sym_cfloat] = ACTIONS(4305), [sym_cdouble] = ACTIONS(4305), [sym_creal] = ACTIONS(4305), [sym_size_t] = ACTIONS(4305), [sym_ptrdiff_t] = ACTIONS(4305), [sym_string] = ACTIONS(4305), [sym_cstring] = ACTIONS(4305), [sym_dstring] = ACTIONS(4305), [sym_wstring] = ACTIONS(4305), [sym_noreturn] = ACTIONS(4305), [sym_true] = ACTIONS(4305), [sym_false] = ACTIONS(4305), [sym_null] = ACTIONS(4305), [sym_super] = ACTIONS(4305), [sym_this] = ACTIONS(4305), [sym_abstract] = ACTIONS(4305), [sym_alias] = ACTIONS(4305), [sym_align] = ACTIONS(4305), [sym_asm] = ACTIONS(4305), [sym_assert] = ACTIONS(4305), [sym_auto] = ACTIONS(4305), [sym_break] = ACTIONS(4305), [sym_case] = ACTIONS(4305), [sym_cast] = ACTIONS(4305), [sym_class] = ACTIONS(4305), [sym_const] = ACTIONS(4305), [sym_continue] = ACTIONS(4305), [sym_debug] = ACTIONS(4305), [sym_default] = ACTIONS(4305), [sym_delegate] = ACTIONS(4305), [sym_delete] = ACTIONS(4305), [sym_deprecated] = ACTIONS(4305), [sym_do] = ACTIONS(4305), [sym_else] = ACTIONS(4305), [sym_enum] = ACTIONS(4305), [sym_export] = ACTIONS(4305), [sym_extern] = ACTIONS(4305), [sym_final] = ACTIONS(4305), [sym_for] = ACTIONS(4305), [sym_foreach] = ACTIONS(4305), [sym_foreach_reverse] = ACTIONS(4305), [sym_function] = ACTIONS(4305), [sym_goto] = ACTIONS(4305), [sym_if] = ACTIONS(4305), [sym_immutable] = ACTIONS(4305), [sym_import] = ACTIONS(4305), [sym_in] = ACTIONS(4305), [sym_inout] = ACTIONS(4305), [sym_interface] = ACTIONS(4305), [sym_invariant] = ACTIONS(4305), [sym_is] = ACTIONS(4305), [sym_mixin] = ACTIONS(4305), [sym_new] = ACTIONS(4305), [sym_nothrow] = ACTIONS(4305), [sym_out] = ACTIONS(4305), [sym_override] = ACTIONS(4305), [sym_package] = ACTIONS(4305), [sym_pragma] = ACTIONS(4305), [sym_private] = ACTIONS(4305), [sym_protected] = ACTIONS(4305), [sym_public] = ACTIONS(4305), [sym_pure] = ACTIONS(4305), [sym_ref] = ACTIONS(4305), [sym_return] = ACTIONS(4305), [sym_scope] = ACTIONS(4305), [sym_shared] = ACTIONS(4305), [sym_static] = ACTIONS(4305), [sym_struct] = ACTIONS(4305), [sym_switch] = ACTIONS(4305), [sym_synchronized] = ACTIONS(4305), [sym_template] = ACTIONS(4305), [sym_throw] = ACTIONS(4305), [sym_try] = ACTIONS(4305), [sym_typeid] = ACTIONS(4305), [sym_typeof] = ACTIONS(4305), [sym_union] = ACTIONS(4305), [sym_unittest] = ACTIONS(4305), [sym_version] = ACTIONS(4305), [sym_while] = ACTIONS(4305), [sym_with] = ACTIONS(4305), [sym_gshared] = ACTIONS(4305), [sym_traits] = ACTIONS(4305), [sym_vector] = ACTIONS(4305), [sym_void] = ACTIONS(4305), [anon_sym_BQUOTE] = ACTIONS(4307), [anon_sym_r_DQUOTE] = ACTIONS(4307), [anon_sym_x_DQUOTE] = ACTIONS(4307), [anon_sym_DQUOTE] = ACTIONS(4307), [anon_sym_i_BQUOTE] = ACTIONS(4307), [anon_sym_i_DQUOTE] = ACTIONS(4307), [anon_sym_iq_LBRACE] = ACTIONS(4307), [aux_sym_char_literal_token1] = ACTIONS(4307), [anon_sym_SQUOTE] = ACTIONS(4305), [anon_sym___DATE__] = ACTIONS(4305), [anon_sym___FILE__] = ACTIONS(4305), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4305), [anon_sym___FUNCTION__] = ACTIONS(4305), [anon_sym___LINE__] = ACTIONS(4305), [anon_sym___MODULE__] = ACTIONS(4305), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4305), [anon_sym___TIME__] = ACTIONS(4305), [anon_sym___TIMESTAMP__] = ACTIONS(4305), [anon_sym___VENDOR__] = ACTIONS(4305), [anon_sym___VERSION__] = ACTIONS(4305), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4307), [sym_float_literal] = ACTIONS(4307), [sym__string] = ACTIONS(4307), }, [1713] = { [sym_identifier] = ACTIONS(4309), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4311), [anon_sym_RBRACE] = ACTIONS(4311), [anon_sym_LBRACE] = ACTIONS(4311), [anon_sym_DOT] = ACTIONS(4311), [anon_sym_AMP] = ACTIONS(4311), [anon_sym_DASH] = ACTIONS(4309), [anon_sym_DASH_DASH] = ACTIONS(4311), [anon_sym_PLUS] = ACTIONS(4309), [anon_sym_PLUS_PLUS] = ACTIONS(4311), [anon_sym_BANG] = ACTIONS(4311), [anon_sym_LPAREN] = ACTIONS(4311), [anon_sym_RPAREN] = ACTIONS(4311), [anon_sym_LBRACK] = ACTIONS(4311), [anon_sym_SEMI] = ACTIONS(4311), [anon_sym_DOLLAR] = ACTIONS(4311), [anon_sym_STAR] = ACTIONS(4311), [anon_sym_TILDE] = ACTIONS(4311), [anon_sym_AT] = ACTIONS(4311), [sym_bool] = ACTIONS(4309), [sym_byte] = ACTIONS(4309), [sym_ubyte] = ACTIONS(4309), [sym_char] = ACTIONS(4309), [sym_short] = ACTIONS(4309), [sym_ushort] = ACTIONS(4309), [sym_int] = ACTIONS(4309), [sym_uint] = ACTIONS(4309), [sym_long] = ACTIONS(4309), [sym_ulong] = ACTIONS(4309), [sym_cent] = ACTIONS(4309), [sym_ucent] = ACTIONS(4309), [sym_wchar] = ACTIONS(4309), [sym_dchar] = ACTIONS(4309), [sym_float] = ACTIONS(4309), [sym_double] = ACTIONS(4309), [sym_real] = ACTIONS(4309), [sym_ifloat] = ACTIONS(4309), [sym_idouble] = ACTIONS(4309), [sym_ireal] = ACTIONS(4309), [sym_cfloat] = ACTIONS(4309), [sym_cdouble] = ACTIONS(4309), [sym_creal] = ACTIONS(4309), [sym_size_t] = ACTIONS(4309), [sym_ptrdiff_t] = ACTIONS(4309), [sym_string] = ACTIONS(4309), [sym_cstring] = ACTIONS(4309), [sym_dstring] = ACTIONS(4309), [sym_wstring] = ACTIONS(4309), [sym_noreturn] = ACTIONS(4309), [sym_true] = ACTIONS(4309), [sym_false] = ACTIONS(4309), [sym_null] = ACTIONS(4309), [sym_super] = ACTIONS(4309), [sym_this] = ACTIONS(4309), [sym_abstract] = ACTIONS(4309), [sym_alias] = ACTIONS(4309), [sym_align] = ACTIONS(4309), [sym_asm] = ACTIONS(4309), [sym_assert] = ACTIONS(4309), [sym_auto] = ACTIONS(4309), [sym_break] = ACTIONS(4309), [sym_case] = ACTIONS(4309), [sym_cast] = ACTIONS(4309), [sym_class] = ACTIONS(4309), [sym_const] = ACTIONS(4309), [sym_continue] = ACTIONS(4309), [sym_debug] = ACTIONS(4309), [sym_default] = ACTIONS(4309), [sym_delegate] = ACTIONS(4309), [sym_delete] = ACTIONS(4309), [sym_deprecated] = ACTIONS(4309), [sym_do] = ACTIONS(4309), [sym_else] = ACTIONS(4309), [sym_enum] = ACTIONS(4309), [sym_export] = ACTIONS(4309), [sym_extern] = ACTIONS(4309), [sym_final] = ACTIONS(4309), [sym_for] = ACTIONS(4309), [sym_foreach] = ACTIONS(4309), [sym_foreach_reverse] = ACTIONS(4309), [sym_function] = ACTIONS(4309), [sym_goto] = ACTIONS(4309), [sym_if] = ACTIONS(4309), [sym_immutable] = ACTIONS(4309), [sym_import] = ACTIONS(4309), [sym_in] = ACTIONS(4309), [sym_inout] = ACTIONS(4309), [sym_interface] = ACTIONS(4309), [sym_invariant] = ACTIONS(4309), [sym_is] = ACTIONS(4309), [sym_mixin] = ACTIONS(4309), [sym_new] = ACTIONS(4309), [sym_nothrow] = ACTIONS(4309), [sym_out] = ACTIONS(4309), [sym_override] = ACTIONS(4309), [sym_package] = ACTIONS(4309), [sym_pragma] = ACTIONS(4309), [sym_private] = ACTIONS(4309), [sym_protected] = ACTIONS(4309), [sym_public] = ACTIONS(4309), [sym_pure] = ACTIONS(4309), [sym_ref] = ACTIONS(4309), [sym_return] = ACTIONS(4309), [sym_scope] = ACTIONS(4309), [sym_shared] = ACTIONS(4309), [sym_static] = ACTIONS(4309), [sym_struct] = ACTIONS(4309), [sym_switch] = ACTIONS(4309), [sym_synchronized] = ACTIONS(4309), [sym_template] = ACTIONS(4309), [sym_throw] = ACTIONS(4309), [sym_try] = ACTIONS(4309), [sym_typeid] = ACTIONS(4309), [sym_typeof] = ACTIONS(4309), [sym_union] = ACTIONS(4309), [sym_unittest] = ACTIONS(4309), [sym_version] = ACTIONS(4309), [sym_while] = ACTIONS(4309), [sym_with] = ACTIONS(4309), [sym_gshared] = ACTIONS(4309), [sym_traits] = ACTIONS(4309), [sym_vector] = ACTIONS(4309), [sym_void] = ACTIONS(4309), [anon_sym_BQUOTE] = ACTIONS(4311), [anon_sym_r_DQUOTE] = ACTIONS(4311), [anon_sym_x_DQUOTE] = ACTIONS(4311), [anon_sym_DQUOTE] = ACTIONS(4311), [anon_sym_i_BQUOTE] = ACTIONS(4311), [anon_sym_i_DQUOTE] = ACTIONS(4311), [anon_sym_iq_LBRACE] = ACTIONS(4311), [aux_sym_char_literal_token1] = ACTIONS(4311), [anon_sym_SQUOTE] = ACTIONS(4309), [anon_sym___DATE__] = ACTIONS(4309), [anon_sym___FILE__] = ACTIONS(4309), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4309), [anon_sym___FUNCTION__] = ACTIONS(4309), [anon_sym___LINE__] = ACTIONS(4309), [anon_sym___MODULE__] = ACTIONS(4309), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4309), [anon_sym___TIME__] = ACTIONS(4309), [anon_sym___TIMESTAMP__] = ACTIONS(4309), [anon_sym___VENDOR__] = ACTIONS(4309), [anon_sym___VERSION__] = ACTIONS(4309), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4311), [sym_float_literal] = ACTIONS(4311), [sym__string] = ACTIONS(4311), }, [1714] = { [sym_identifier] = ACTIONS(4321), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4324), [anon_sym_RBRACE] = ACTIONS(4324), [anon_sym_LBRACE] = ACTIONS(4324), [anon_sym_DOT] = ACTIONS(4324), [anon_sym_AMP] = ACTIONS(4324), [anon_sym_DASH] = ACTIONS(4321), [anon_sym_DASH_DASH] = ACTIONS(4324), [anon_sym_PLUS] = ACTIONS(4321), [anon_sym_PLUS_PLUS] = ACTIONS(4324), [anon_sym_BANG] = ACTIONS(4324), [anon_sym_LPAREN] = ACTIONS(4324), [anon_sym_RPAREN] = ACTIONS(4324), [anon_sym_LBRACK] = ACTIONS(4324), [anon_sym_SEMI] = ACTIONS(4324), [anon_sym_DOLLAR] = ACTIONS(4324), [anon_sym_STAR] = ACTIONS(4324), [anon_sym_TILDE] = ACTIONS(4324), [anon_sym_AT] = ACTIONS(4324), [sym_bool] = ACTIONS(4321), [sym_byte] = ACTIONS(4321), [sym_ubyte] = ACTIONS(4321), [sym_char] = ACTIONS(4321), [sym_short] = ACTIONS(4321), [sym_ushort] = ACTIONS(4321), [sym_int] = ACTIONS(4321), [sym_uint] = ACTIONS(4321), [sym_long] = ACTIONS(4321), [sym_ulong] = ACTIONS(4321), [sym_cent] = ACTIONS(4321), [sym_ucent] = ACTIONS(4321), [sym_wchar] = ACTIONS(4321), [sym_dchar] = ACTIONS(4321), [sym_float] = ACTIONS(4321), [sym_double] = ACTIONS(4321), [sym_real] = ACTIONS(4321), [sym_ifloat] = ACTIONS(4321), [sym_idouble] = ACTIONS(4321), [sym_ireal] = ACTIONS(4321), [sym_cfloat] = ACTIONS(4321), [sym_cdouble] = ACTIONS(4321), [sym_creal] = ACTIONS(4321), [sym_size_t] = ACTIONS(4321), [sym_ptrdiff_t] = ACTIONS(4321), [sym_string] = ACTIONS(4321), [sym_cstring] = ACTIONS(4321), [sym_dstring] = ACTIONS(4321), [sym_wstring] = ACTIONS(4321), [sym_noreturn] = ACTIONS(4321), [sym_true] = ACTIONS(4321), [sym_false] = ACTIONS(4321), [sym_null] = ACTIONS(4321), [sym_super] = ACTIONS(4321), [sym_this] = ACTIONS(4321), [sym_abstract] = ACTIONS(4321), [sym_alias] = ACTIONS(4321), [sym_align] = ACTIONS(4321), [sym_asm] = ACTIONS(4321), [sym_assert] = ACTIONS(4321), [sym_auto] = ACTIONS(4321), [sym_break] = ACTIONS(4321), [sym_case] = ACTIONS(4321), [sym_cast] = ACTIONS(4321), [sym_class] = ACTIONS(4321), [sym_const] = ACTIONS(4321), [sym_continue] = ACTIONS(4321), [sym_debug] = ACTIONS(4321), [sym_default] = ACTIONS(4321), [sym_delegate] = ACTIONS(4321), [sym_delete] = ACTIONS(4321), [sym_deprecated] = ACTIONS(4321), [sym_do] = ACTIONS(4321), [sym_else] = ACTIONS(4321), [sym_enum] = ACTIONS(4321), [sym_export] = ACTIONS(4321), [sym_extern] = ACTIONS(4321), [sym_final] = ACTIONS(4321), [sym_for] = ACTIONS(4321), [sym_foreach] = ACTIONS(4321), [sym_foreach_reverse] = ACTIONS(4321), [sym_function] = ACTIONS(4321), [sym_goto] = ACTIONS(4321), [sym_if] = ACTIONS(4321), [sym_immutable] = ACTIONS(4321), [sym_import] = ACTIONS(4321), [sym_in] = ACTIONS(4321), [sym_inout] = ACTIONS(4321), [sym_interface] = ACTIONS(4321), [sym_invariant] = ACTIONS(4321), [sym_is] = ACTIONS(4321), [sym_mixin] = ACTIONS(4321), [sym_new] = ACTIONS(4321), [sym_nothrow] = ACTIONS(4321), [sym_out] = ACTIONS(4321), [sym_override] = ACTIONS(4321), [sym_package] = ACTIONS(4321), [sym_pragma] = ACTIONS(4321), [sym_private] = ACTIONS(4321), [sym_protected] = ACTIONS(4321), [sym_public] = ACTIONS(4321), [sym_pure] = ACTIONS(4321), [sym_ref] = ACTIONS(4321), [sym_return] = ACTIONS(4321), [sym_scope] = ACTIONS(4321), [sym_shared] = ACTIONS(4321), [sym_static] = ACTIONS(4321), [sym_struct] = ACTIONS(4321), [sym_switch] = ACTIONS(4321), [sym_synchronized] = ACTIONS(4321), [sym_template] = ACTIONS(4321), [sym_throw] = ACTIONS(4321), [sym_try] = ACTIONS(4321), [sym_typeid] = ACTIONS(4321), [sym_typeof] = ACTIONS(4321), [sym_union] = ACTIONS(4321), [sym_unittest] = ACTIONS(4321), [sym_version] = ACTIONS(4321), [sym_while] = ACTIONS(4321), [sym_with] = ACTIONS(4321), [sym_gshared] = ACTIONS(4321), [sym_traits] = ACTIONS(4321), [sym_vector] = ACTIONS(4321), [sym_void] = ACTIONS(4321), [anon_sym_BQUOTE] = ACTIONS(4324), [anon_sym_r_DQUOTE] = ACTIONS(4324), [anon_sym_x_DQUOTE] = ACTIONS(4324), [anon_sym_DQUOTE] = ACTIONS(4324), [anon_sym_i_BQUOTE] = ACTIONS(4324), [anon_sym_i_DQUOTE] = ACTIONS(4324), [anon_sym_iq_LBRACE] = ACTIONS(4324), [aux_sym_char_literal_token1] = ACTIONS(4324), [anon_sym_SQUOTE] = ACTIONS(4321), [anon_sym___DATE__] = ACTIONS(4321), [anon_sym___FILE__] = ACTIONS(4321), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4321), [anon_sym___FUNCTION__] = ACTIONS(4321), [anon_sym___LINE__] = ACTIONS(4321), [anon_sym___MODULE__] = ACTIONS(4321), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4321), [anon_sym___TIME__] = ACTIONS(4321), [anon_sym___TIMESTAMP__] = ACTIONS(4321), [anon_sym___VENDOR__] = ACTIONS(4321), [anon_sym___VERSION__] = ACTIONS(4321), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4324), [sym_float_literal] = ACTIONS(4324), [sym__string] = ACTIONS(4324), }, [1715] = { [sym_identifier] = ACTIONS(4335), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4337), [anon_sym_RBRACE] = ACTIONS(4337), [anon_sym_LBRACE] = ACTIONS(4337), [anon_sym_DOT] = ACTIONS(4337), [anon_sym_AMP] = ACTIONS(4337), [anon_sym_DASH] = ACTIONS(4335), [anon_sym_DASH_DASH] = ACTIONS(4337), [anon_sym_PLUS] = ACTIONS(4335), [anon_sym_PLUS_PLUS] = ACTIONS(4337), [anon_sym_BANG] = ACTIONS(4337), [anon_sym_LPAREN] = ACTIONS(4337), [anon_sym_RPAREN] = ACTIONS(4337), [anon_sym_LBRACK] = ACTIONS(4337), [anon_sym_SEMI] = ACTIONS(4337), [anon_sym_DOLLAR] = ACTIONS(4337), [anon_sym_STAR] = ACTIONS(4337), [anon_sym_TILDE] = ACTIONS(4337), [anon_sym_AT] = ACTIONS(4337), [sym_bool] = ACTIONS(4335), [sym_byte] = ACTIONS(4335), [sym_ubyte] = ACTIONS(4335), [sym_char] = ACTIONS(4335), [sym_short] = ACTIONS(4335), [sym_ushort] = ACTIONS(4335), [sym_int] = ACTIONS(4335), [sym_uint] = ACTIONS(4335), [sym_long] = ACTIONS(4335), [sym_ulong] = ACTIONS(4335), [sym_cent] = ACTIONS(4335), [sym_ucent] = ACTIONS(4335), [sym_wchar] = ACTIONS(4335), [sym_dchar] = ACTIONS(4335), [sym_float] = ACTIONS(4335), [sym_double] = ACTIONS(4335), [sym_real] = ACTIONS(4335), [sym_ifloat] = ACTIONS(4335), [sym_idouble] = ACTIONS(4335), [sym_ireal] = ACTIONS(4335), [sym_cfloat] = ACTIONS(4335), [sym_cdouble] = ACTIONS(4335), [sym_creal] = ACTIONS(4335), [sym_size_t] = ACTIONS(4335), [sym_ptrdiff_t] = ACTIONS(4335), [sym_string] = ACTIONS(4335), [sym_cstring] = ACTIONS(4335), [sym_dstring] = ACTIONS(4335), [sym_wstring] = ACTIONS(4335), [sym_noreturn] = ACTIONS(4335), [sym_true] = ACTIONS(4335), [sym_false] = ACTIONS(4335), [sym_null] = ACTIONS(4335), [sym_super] = ACTIONS(4335), [sym_this] = ACTIONS(4335), [sym_abstract] = ACTIONS(4335), [sym_alias] = ACTIONS(4335), [sym_align] = ACTIONS(4335), [sym_asm] = ACTIONS(4335), [sym_assert] = ACTIONS(4335), [sym_auto] = ACTIONS(4335), [sym_break] = ACTIONS(4335), [sym_case] = ACTIONS(4335), [sym_cast] = ACTIONS(4335), [sym_class] = ACTIONS(4335), [sym_const] = ACTIONS(4335), [sym_continue] = ACTIONS(4335), [sym_debug] = ACTIONS(4335), [sym_default] = ACTIONS(4335), [sym_delegate] = ACTIONS(4335), [sym_delete] = ACTIONS(4335), [sym_deprecated] = ACTIONS(4335), [sym_do] = ACTIONS(4335), [sym_else] = ACTIONS(4335), [sym_enum] = ACTIONS(4335), [sym_export] = ACTIONS(4335), [sym_extern] = ACTIONS(4335), [sym_final] = ACTIONS(4335), [sym_for] = ACTIONS(4335), [sym_foreach] = ACTIONS(4335), [sym_foreach_reverse] = ACTIONS(4335), [sym_function] = ACTIONS(4335), [sym_goto] = ACTIONS(4335), [sym_if] = ACTIONS(4335), [sym_immutable] = ACTIONS(4335), [sym_import] = ACTIONS(4335), [sym_in] = ACTIONS(4335), [sym_inout] = ACTIONS(4335), [sym_interface] = ACTIONS(4335), [sym_invariant] = ACTIONS(4335), [sym_is] = ACTIONS(4335), [sym_mixin] = ACTIONS(4335), [sym_new] = ACTIONS(4335), [sym_nothrow] = ACTIONS(4335), [sym_out] = ACTIONS(4335), [sym_override] = ACTIONS(4335), [sym_package] = ACTIONS(4335), [sym_pragma] = ACTIONS(4335), [sym_private] = ACTIONS(4335), [sym_protected] = ACTIONS(4335), [sym_public] = ACTIONS(4335), [sym_pure] = ACTIONS(4335), [sym_ref] = ACTIONS(4335), [sym_return] = ACTIONS(4335), [sym_scope] = ACTIONS(4335), [sym_shared] = ACTIONS(4335), [sym_static] = ACTIONS(4335), [sym_struct] = ACTIONS(4335), [sym_switch] = ACTIONS(4335), [sym_synchronized] = ACTIONS(4335), [sym_template] = ACTIONS(4335), [sym_throw] = ACTIONS(4335), [sym_try] = ACTIONS(4335), [sym_typeid] = ACTIONS(4335), [sym_typeof] = ACTIONS(4335), [sym_union] = ACTIONS(4335), [sym_unittest] = ACTIONS(4335), [sym_version] = ACTIONS(4335), [sym_while] = ACTIONS(4335), [sym_with] = ACTIONS(4335), [sym_gshared] = ACTIONS(4335), [sym_traits] = ACTIONS(4335), [sym_vector] = ACTIONS(4335), [sym_void] = ACTIONS(4335), [anon_sym_BQUOTE] = ACTIONS(4337), [anon_sym_r_DQUOTE] = ACTIONS(4337), [anon_sym_x_DQUOTE] = ACTIONS(4337), [anon_sym_DQUOTE] = ACTIONS(4337), [anon_sym_i_BQUOTE] = ACTIONS(4337), [anon_sym_i_DQUOTE] = ACTIONS(4337), [anon_sym_iq_LBRACE] = ACTIONS(4337), [aux_sym_char_literal_token1] = ACTIONS(4337), [anon_sym_SQUOTE] = ACTIONS(4335), [anon_sym___DATE__] = ACTIONS(4335), [anon_sym___FILE__] = ACTIONS(4335), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4335), [anon_sym___FUNCTION__] = ACTIONS(4335), [anon_sym___LINE__] = ACTIONS(4335), [anon_sym___MODULE__] = ACTIONS(4335), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4335), [anon_sym___TIME__] = ACTIONS(4335), [anon_sym___TIMESTAMP__] = ACTIONS(4335), [anon_sym___VENDOR__] = ACTIONS(4335), [anon_sym___VERSION__] = ACTIONS(4335), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4337), [sym_float_literal] = ACTIONS(4337), [sym__string] = ACTIONS(4337), }, [1716] = { [sym_identifier] = ACTIONS(4386), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4388), [anon_sym_RBRACE] = ACTIONS(4388), [anon_sym_LBRACE] = ACTIONS(4388), [anon_sym_DOT] = ACTIONS(4388), [anon_sym_AMP] = ACTIONS(4388), [anon_sym_DASH] = ACTIONS(4386), [anon_sym_DASH_DASH] = ACTIONS(4388), [anon_sym_PLUS] = ACTIONS(4386), [anon_sym_PLUS_PLUS] = ACTIONS(4388), [anon_sym_BANG] = ACTIONS(4388), [anon_sym_LPAREN] = ACTIONS(4388), [anon_sym_RPAREN] = ACTIONS(4388), [anon_sym_LBRACK] = ACTIONS(4388), [anon_sym_SEMI] = ACTIONS(4388), [anon_sym_DOLLAR] = ACTIONS(4388), [anon_sym_STAR] = ACTIONS(4388), [anon_sym_TILDE] = ACTIONS(4388), [anon_sym_AT] = ACTIONS(4388), [sym_bool] = ACTIONS(4386), [sym_byte] = ACTIONS(4386), [sym_ubyte] = ACTIONS(4386), [sym_char] = ACTIONS(4386), [sym_short] = ACTIONS(4386), [sym_ushort] = ACTIONS(4386), [sym_int] = ACTIONS(4386), [sym_uint] = ACTIONS(4386), [sym_long] = ACTIONS(4386), [sym_ulong] = ACTIONS(4386), [sym_cent] = ACTIONS(4386), [sym_ucent] = ACTIONS(4386), [sym_wchar] = ACTIONS(4386), [sym_dchar] = ACTIONS(4386), [sym_float] = ACTIONS(4386), [sym_double] = ACTIONS(4386), [sym_real] = ACTIONS(4386), [sym_ifloat] = ACTIONS(4386), [sym_idouble] = ACTIONS(4386), [sym_ireal] = ACTIONS(4386), [sym_cfloat] = ACTIONS(4386), [sym_cdouble] = ACTIONS(4386), [sym_creal] = ACTIONS(4386), [sym_size_t] = ACTIONS(4386), [sym_ptrdiff_t] = ACTIONS(4386), [sym_string] = ACTIONS(4386), [sym_cstring] = ACTIONS(4386), [sym_dstring] = ACTIONS(4386), [sym_wstring] = ACTIONS(4386), [sym_noreturn] = ACTIONS(4386), [sym_true] = ACTIONS(4386), [sym_false] = ACTIONS(4386), [sym_null] = ACTIONS(4386), [sym_super] = ACTIONS(4386), [sym_this] = ACTIONS(4386), [sym_abstract] = ACTIONS(4386), [sym_alias] = ACTIONS(4386), [sym_align] = ACTIONS(4386), [sym_asm] = ACTIONS(4386), [sym_assert] = ACTIONS(4386), [sym_auto] = ACTIONS(4386), [sym_break] = ACTIONS(4386), [sym_case] = ACTIONS(4386), [sym_cast] = ACTIONS(4386), [sym_class] = ACTIONS(4386), [sym_const] = ACTIONS(4386), [sym_continue] = ACTIONS(4386), [sym_debug] = ACTIONS(4386), [sym_default] = ACTIONS(4386), [sym_delegate] = ACTIONS(4386), [sym_delete] = ACTIONS(4386), [sym_deprecated] = ACTIONS(4386), [sym_do] = ACTIONS(4386), [sym_else] = ACTIONS(4386), [sym_enum] = ACTIONS(4386), [sym_export] = ACTIONS(4386), [sym_extern] = ACTIONS(4386), [sym_final] = ACTIONS(4386), [sym_for] = ACTIONS(4386), [sym_foreach] = ACTIONS(4386), [sym_foreach_reverse] = ACTIONS(4386), [sym_function] = ACTIONS(4386), [sym_goto] = ACTIONS(4386), [sym_if] = ACTIONS(4386), [sym_immutable] = ACTIONS(4386), [sym_import] = ACTIONS(4386), [sym_in] = ACTIONS(4386), [sym_inout] = ACTIONS(4386), [sym_interface] = ACTIONS(4386), [sym_invariant] = ACTIONS(4386), [sym_is] = ACTIONS(4386), [sym_mixin] = ACTIONS(4386), [sym_new] = ACTIONS(4386), [sym_nothrow] = ACTIONS(4386), [sym_out] = ACTIONS(4386), [sym_override] = ACTIONS(4386), [sym_package] = ACTIONS(4386), [sym_pragma] = ACTIONS(4386), [sym_private] = ACTIONS(4386), [sym_protected] = ACTIONS(4386), [sym_public] = ACTIONS(4386), [sym_pure] = ACTIONS(4386), [sym_ref] = ACTIONS(4386), [sym_return] = ACTIONS(4386), [sym_scope] = ACTIONS(4386), [sym_shared] = ACTIONS(4386), [sym_static] = ACTIONS(4386), [sym_struct] = ACTIONS(4386), [sym_switch] = ACTIONS(4386), [sym_synchronized] = ACTIONS(4386), [sym_template] = ACTIONS(4386), [sym_throw] = ACTIONS(4386), [sym_try] = ACTIONS(4386), [sym_typeid] = ACTIONS(4386), [sym_typeof] = ACTIONS(4386), [sym_union] = ACTIONS(4386), [sym_unittest] = ACTIONS(4386), [sym_version] = ACTIONS(4386), [sym_while] = ACTIONS(4386), [sym_with] = ACTIONS(4386), [sym_gshared] = ACTIONS(4386), [sym_traits] = ACTIONS(4386), [sym_vector] = ACTIONS(4386), [sym_void] = ACTIONS(4386), [anon_sym_BQUOTE] = ACTIONS(4388), [anon_sym_r_DQUOTE] = ACTIONS(4388), [anon_sym_x_DQUOTE] = ACTIONS(4388), [anon_sym_DQUOTE] = ACTIONS(4388), [anon_sym_i_BQUOTE] = ACTIONS(4388), [anon_sym_i_DQUOTE] = ACTIONS(4388), [anon_sym_iq_LBRACE] = ACTIONS(4388), [aux_sym_char_literal_token1] = ACTIONS(4388), [anon_sym_SQUOTE] = ACTIONS(4386), [anon_sym___DATE__] = ACTIONS(4386), [anon_sym___FILE__] = ACTIONS(4386), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4386), [anon_sym___FUNCTION__] = ACTIONS(4386), [anon_sym___LINE__] = ACTIONS(4386), [anon_sym___MODULE__] = ACTIONS(4386), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4386), [anon_sym___TIME__] = ACTIONS(4386), [anon_sym___TIMESTAMP__] = ACTIONS(4386), [anon_sym___VENDOR__] = ACTIONS(4386), [anon_sym___VERSION__] = ACTIONS(4386), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4388), [sym_float_literal] = ACTIONS(4388), [sym__string] = ACTIONS(4388), }, [1717] = { [sym_identifier] = ACTIONS(4355), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4357), [anon_sym_RBRACE] = ACTIONS(4357), [anon_sym_LBRACE] = ACTIONS(4357), [anon_sym_DOT] = ACTIONS(4357), [anon_sym_AMP] = ACTIONS(4357), [anon_sym_DASH] = ACTIONS(4355), [anon_sym_DASH_DASH] = ACTIONS(4357), [anon_sym_PLUS] = ACTIONS(4355), [anon_sym_PLUS_PLUS] = ACTIONS(4357), [anon_sym_BANG] = ACTIONS(4357), [anon_sym_LPAREN] = ACTIONS(4357), [anon_sym_RPAREN] = ACTIONS(4357), [anon_sym_LBRACK] = ACTIONS(4357), [anon_sym_SEMI] = ACTIONS(4357), [anon_sym_DOLLAR] = ACTIONS(4357), [anon_sym_STAR] = ACTIONS(4357), [anon_sym_TILDE] = ACTIONS(4357), [anon_sym_AT] = ACTIONS(4357), [sym_bool] = ACTIONS(4355), [sym_byte] = ACTIONS(4355), [sym_ubyte] = ACTIONS(4355), [sym_char] = ACTIONS(4355), [sym_short] = ACTIONS(4355), [sym_ushort] = ACTIONS(4355), [sym_int] = ACTIONS(4355), [sym_uint] = ACTIONS(4355), [sym_long] = ACTIONS(4355), [sym_ulong] = ACTIONS(4355), [sym_cent] = ACTIONS(4355), [sym_ucent] = ACTIONS(4355), [sym_wchar] = ACTIONS(4355), [sym_dchar] = ACTIONS(4355), [sym_float] = ACTIONS(4355), [sym_double] = ACTIONS(4355), [sym_real] = ACTIONS(4355), [sym_ifloat] = ACTIONS(4355), [sym_idouble] = ACTIONS(4355), [sym_ireal] = ACTIONS(4355), [sym_cfloat] = ACTIONS(4355), [sym_cdouble] = ACTIONS(4355), [sym_creal] = ACTIONS(4355), [sym_size_t] = ACTIONS(4355), [sym_ptrdiff_t] = ACTIONS(4355), [sym_string] = ACTIONS(4355), [sym_cstring] = ACTIONS(4355), [sym_dstring] = ACTIONS(4355), [sym_wstring] = ACTIONS(4355), [sym_noreturn] = ACTIONS(4355), [sym_true] = ACTIONS(4355), [sym_false] = ACTIONS(4355), [sym_null] = ACTIONS(4355), [sym_super] = ACTIONS(4355), [sym_this] = ACTIONS(4355), [sym_abstract] = ACTIONS(4355), [sym_alias] = ACTIONS(4355), [sym_align] = ACTIONS(4355), [sym_asm] = ACTIONS(4355), [sym_assert] = ACTIONS(4355), [sym_auto] = ACTIONS(4355), [sym_break] = ACTIONS(4355), [sym_case] = ACTIONS(4355), [sym_cast] = ACTIONS(4355), [sym_class] = ACTIONS(4355), [sym_const] = ACTIONS(4355), [sym_continue] = ACTIONS(4355), [sym_debug] = ACTIONS(4355), [sym_default] = ACTIONS(4355), [sym_delegate] = ACTIONS(4355), [sym_delete] = ACTIONS(4355), [sym_deprecated] = ACTIONS(4355), [sym_do] = ACTIONS(4355), [sym_else] = ACTIONS(4355), [sym_enum] = ACTIONS(4355), [sym_export] = ACTIONS(4355), [sym_extern] = ACTIONS(4355), [sym_final] = ACTIONS(4355), [sym_for] = ACTIONS(4355), [sym_foreach] = ACTIONS(4355), [sym_foreach_reverse] = ACTIONS(4355), [sym_function] = ACTIONS(4355), [sym_goto] = ACTIONS(4355), [sym_if] = ACTIONS(4355), [sym_immutable] = ACTIONS(4355), [sym_import] = ACTIONS(4355), [sym_in] = ACTIONS(4355), [sym_inout] = ACTIONS(4355), [sym_interface] = ACTIONS(4355), [sym_invariant] = ACTIONS(4355), [sym_is] = ACTIONS(4355), [sym_mixin] = ACTIONS(4355), [sym_new] = ACTIONS(4355), [sym_nothrow] = ACTIONS(4355), [sym_out] = ACTIONS(4355), [sym_override] = ACTIONS(4355), [sym_package] = ACTIONS(4355), [sym_pragma] = ACTIONS(4355), [sym_private] = ACTIONS(4355), [sym_protected] = ACTIONS(4355), [sym_public] = ACTIONS(4355), [sym_pure] = ACTIONS(4355), [sym_ref] = ACTIONS(4355), [sym_return] = ACTIONS(4355), [sym_scope] = ACTIONS(4355), [sym_shared] = ACTIONS(4355), [sym_static] = ACTIONS(4355), [sym_struct] = ACTIONS(4355), [sym_switch] = ACTIONS(4355), [sym_synchronized] = ACTIONS(4355), [sym_template] = ACTIONS(4355), [sym_throw] = ACTIONS(4355), [sym_try] = ACTIONS(4355), [sym_typeid] = ACTIONS(4355), [sym_typeof] = ACTIONS(4355), [sym_union] = ACTIONS(4355), [sym_unittest] = ACTIONS(4355), [sym_version] = ACTIONS(4355), [sym_while] = ACTIONS(4355), [sym_with] = ACTIONS(4355), [sym_gshared] = ACTIONS(4355), [sym_traits] = ACTIONS(4355), [sym_vector] = ACTIONS(4355), [sym_void] = ACTIONS(4355), [anon_sym_BQUOTE] = ACTIONS(4357), [anon_sym_r_DQUOTE] = ACTIONS(4357), [anon_sym_x_DQUOTE] = ACTIONS(4357), [anon_sym_DQUOTE] = ACTIONS(4357), [anon_sym_i_BQUOTE] = ACTIONS(4357), [anon_sym_i_DQUOTE] = ACTIONS(4357), [anon_sym_iq_LBRACE] = ACTIONS(4357), [aux_sym_char_literal_token1] = ACTIONS(4357), [anon_sym_SQUOTE] = ACTIONS(4355), [anon_sym___DATE__] = ACTIONS(4355), [anon_sym___FILE__] = ACTIONS(4355), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4355), [anon_sym___FUNCTION__] = ACTIONS(4355), [anon_sym___LINE__] = ACTIONS(4355), [anon_sym___MODULE__] = ACTIONS(4355), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4355), [anon_sym___TIME__] = ACTIONS(4355), [anon_sym___TIMESTAMP__] = ACTIONS(4355), [anon_sym___VENDOR__] = ACTIONS(4355), [anon_sym___VERSION__] = ACTIONS(4355), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4357), [sym_float_literal] = ACTIONS(4357), [sym__string] = ACTIONS(4357), }, [1718] = { [sym_identifier] = ACTIONS(4343), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4345), [anon_sym_RBRACE] = ACTIONS(4345), [anon_sym_LBRACE] = ACTIONS(4345), [anon_sym_DOT] = ACTIONS(4345), [anon_sym_AMP] = ACTIONS(4345), [anon_sym_DASH] = ACTIONS(4343), [anon_sym_DASH_DASH] = ACTIONS(4345), [anon_sym_PLUS] = ACTIONS(4343), [anon_sym_PLUS_PLUS] = ACTIONS(4345), [anon_sym_BANG] = ACTIONS(4345), [anon_sym_LPAREN] = ACTIONS(4345), [anon_sym_RPAREN] = ACTIONS(4345), [anon_sym_LBRACK] = ACTIONS(4345), [anon_sym_SEMI] = ACTIONS(4345), [anon_sym_DOLLAR] = ACTIONS(4345), [anon_sym_STAR] = ACTIONS(4345), [anon_sym_TILDE] = ACTIONS(4345), [anon_sym_AT] = ACTIONS(4345), [sym_bool] = ACTIONS(4343), [sym_byte] = ACTIONS(4343), [sym_ubyte] = ACTIONS(4343), [sym_char] = ACTIONS(4343), [sym_short] = ACTIONS(4343), [sym_ushort] = ACTIONS(4343), [sym_int] = ACTIONS(4343), [sym_uint] = ACTIONS(4343), [sym_long] = ACTIONS(4343), [sym_ulong] = ACTIONS(4343), [sym_cent] = ACTIONS(4343), [sym_ucent] = ACTIONS(4343), [sym_wchar] = ACTIONS(4343), [sym_dchar] = ACTIONS(4343), [sym_float] = ACTIONS(4343), [sym_double] = ACTIONS(4343), [sym_real] = ACTIONS(4343), [sym_ifloat] = ACTIONS(4343), [sym_idouble] = ACTIONS(4343), [sym_ireal] = ACTIONS(4343), [sym_cfloat] = ACTIONS(4343), [sym_cdouble] = ACTIONS(4343), [sym_creal] = ACTIONS(4343), [sym_size_t] = ACTIONS(4343), [sym_ptrdiff_t] = ACTIONS(4343), [sym_string] = ACTIONS(4343), [sym_cstring] = ACTIONS(4343), [sym_dstring] = ACTIONS(4343), [sym_wstring] = ACTIONS(4343), [sym_noreturn] = ACTIONS(4343), [sym_true] = ACTIONS(4343), [sym_false] = ACTIONS(4343), [sym_null] = ACTIONS(4343), [sym_super] = ACTIONS(4343), [sym_this] = ACTIONS(4343), [sym_abstract] = ACTIONS(4343), [sym_alias] = ACTIONS(4343), [sym_align] = ACTIONS(4343), [sym_asm] = ACTIONS(4343), [sym_assert] = ACTIONS(4343), [sym_auto] = ACTIONS(4343), [sym_break] = ACTIONS(4343), [sym_case] = ACTIONS(4343), [sym_cast] = ACTIONS(4343), [sym_class] = ACTIONS(4343), [sym_const] = ACTIONS(4343), [sym_continue] = ACTIONS(4343), [sym_debug] = ACTIONS(4343), [sym_default] = ACTIONS(4343), [sym_delegate] = ACTIONS(4343), [sym_delete] = ACTIONS(4343), [sym_deprecated] = ACTIONS(4343), [sym_do] = ACTIONS(4343), [sym_else] = ACTIONS(4343), [sym_enum] = ACTIONS(4343), [sym_export] = ACTIONS(4343), [sym_extern] = ACTIONS(4343), [sym_final] = ACTIONS(4343), [sym_for] = ACTIONS(4343), [sym_foreach] = ACTIONS(4343), [sym_foreach_reverse] = ACTIONS(4343), [sym_function] = ACTIONS(4343), [sym_goto] = ACTIONS(4343), [sym_if] = ACTIONS(4343), [sym_immutable] = ACTIONS(4343), [sym_import] = ACTIONS(4343), [sym_in] = ACTIONS(4343), [sym_inout] = ACTIONS(4343), [sym_interface] = ACTIONS(4343), [sym_invariant] = ACTIONS(4343), [sym_is] = ACTIONS(4343), [sym_mixin] = ACTIONS(4343), [sym_new] = ACTIONS(4343), [sym_nothrow] = ACTIONS(4343), [sym_out] = ACTIONS(4343), [sym_override] = ACTIONS(4343), [sym_package] = ACTIONS(4343), [sym_pragma] = ACTIONS(4343), [sym_private] = ACTIONS(4343), [sym_protected] = ACTIONS(4343), [sym_public] = ACTIONS(4343), [sym_pure] = ACTIONS(4343), [sym_ref] = ACTIONS(4343), [sym_return] = ACTIONS(4343), [sym_scope] = ACTIONS(4343), [sym_shared] = ACTIONS(4343), [sym_static] = ACTIONS(4343), [sym_struct] = ACTIONS(4343), [sym_switch] = ACTIONS(4343), [sym_synchronized] = ACTIONS(4343), [sym_template] = ACTIONS(4343), [sym_throw] = ACTIONS(4343), [sym_try] = ACTIONS(4343), [sym_typeid] = ACTIONS(4343), [sym_typeof] = ACTIONS(4343), [sym_union] = ACTIONS(4343), [sym_unittest] = ACTIONS(4343), [sym_version] = ACTIONS(4343), [sym_while] = ACTIONS(4343), [sym_with] = ACTIONS(4343), [sym_gshared] = ACTIONS(4343), [sym_traits] = ACTIONS(4343), [sym_vector] = ACTIONS(4343), [sym_void] = ACTIONS(4343), [anon_sym_BQUOTE] = ACTIONS(4345), [anon_sym_r_DQUOTE] = ACTIONS(4345), [anon_sym_x_DQUOTE] = ACTIONS(4345), [anon_sym_DQUOTE] = ACTIONS(4345), [anon_sym_i_BQUOTE] = ACTIONS(4345), [anon_sym_i_DQUOTE] = ACTIONS(4345), [anon_sym_iq_LBRACE] = ACTIONS(4345), [aux_sym_char_literal_token1] = ACTIONS(4345), [anon_sym_SQUOTE] = ACTIONS(4343), [anon_sym___DATE__] = ACTIONS(4343), [anon_sym___FILE__] = ACTIONS(4343), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4343), [anon_sym___FUNCTION__] = ACTIONS(4343), [anon_sym___LINE__] = ACTIONS(4343), [anon_sym___MODULE__] = ACTIONS(4343), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4343), [anon_sym___TIME__] = ACTIONS(4343), [anon_sym___TIMESTAMP__] = ACTIONS(4343), [anon_sym___VENDOR__] = ACTIONS(4343), [anon_sym___VERSION__] = ACTIONS(4343), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4345), [sym_float_literal] = ACTIONS(4345), [sym__string] = ACTIONS(4345), }, [1719] = { [sym_identifier] = ACTIONS(4331), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4333), [anon_sym_RBRACE] = ACTIONS(4333), [anon_sym_LBRACE] = ACTIONS(4333), [anon_sym_DOT] = ACTIONS(4333), [anon_sym_AMP] = ACTIONS(4333), [anon_sym_DASH] = ACTIONS(4331), [anon_sym_DASH_DASH] = ACTIONS(4333), [anon_sym_PLUS] = ACTIONS(4331), [anon_sym_PLUS_PLUS] = ACTIONS(4333), [anon_sym_BANG] = ACTIONS(4333), [anon_sym_LPAREN] = ACTIONS(4333), [anon_sym_RPAREN] = ACTIONS(4333), [anon_sym_LBRACK] = ACTIONS(4333), [anon_sym_SEMI] = ACTIONS(4333), [anon_sym_DOLLAR] = ACTIONS(4333), [anon_sym_STAR] = ACTIONS(4333), [anon_sym_TILDE] = ACTIONS(4333), [anon_sym_AT] = ACTIONS(4333), [sym_bool] = ACTIONS(4331), [sym_byte] = ACTIONS(4331), [sym_ubyte] = ACTIONS(4331), [sym_char] = ACTIONS(4331), [sym_short] = ACTIONS(4331), [sym_ushort] = ACTIONS(4331), [sym_int] = ACTIONS(4331), [sym_uint] = ACTIONS(4331), [sym_long] = ACTIONS(4331), [sym_ulong] = ACTIONS(4331), [sym_cent] = ACTIONS(4331), [sym_ucent] = ACTIONS(4331), [sym_wchar] = ACTIONS(4331), [sym_dchar] = ACTIONS(4331), [sym_float] = ACTIONS(4331), [sym_double] = ACTIONS(4331), [sym_real] = ACTIONS(4331), [sym_ifloat] = ACTIONS(4331), [sym_idouble] = ACTIONS(4331), [sym_ireal] = ACTIONS(4331), [sym_cfloat] = ACTIONS(4331), [sym_cdouble] = ACTIONS(4331), [sym_creal] = ACTIONS(4331), [sym_size_t] = ACTIONS(4331), [sym_ptrdiff_t] = ACTIONS(4331), [sym_string] = ACTIONS(4331), [sym_cstring] = ACTIONS(4331), [sym_dstring] = ACTIONS(4331), [sym_wstring] = ACTIONS(4331), [sym_noreturn] = ACTIONS(4331), [sym_true] = ACTIONS(4331), [sym_false] = ACTIONS(4331), [sym_null] = ACTIONS(4331), [sym_super] = ACTIONS(4331), [sym_this] = ACTIONS(4331), [sym_abstract] = ACTIONS(4331), [sym_alias] = ACTIONS(4331), [sym_align] = ACTIONS(4331), [sym_asm] = ACTIONS(4331), [sym_assert] = ACTIONS(4331), [sym_auto] = ACTIONS(4331), [sym_break] = ACTIONS(4331), [sym_case] = ACTIONS(4331), [sym_cast] = ACTIONS(4331), [sym_class] = ACTIONS(4331), [sym_const] = ACTIONS(4331), [sym_continue] = ACTIONS(4331), [sym_debug] = ACTIONS(4331), [sym_default] = ACTIONS(4331), [sym_delegate] = ACTIONS(4331), [sym_delete] = ACTIONS(4331), [sym_deprecated] = ACTIONS(4331), [sym_do] = ACTIONS(4331), [sym_else] = ACTIONS(4331), [sym_enum] = ACTIONS(4331), [sym_export] = ACTIONS(4331), [sym_extern] = ACTIONS(4331), [sym_final] = ACTIONS(4331), [sym_for] = ACTIONS(4331), [sym_foreach] = ACTIONS(4331), [sym_foreach_reverse] = ACTIONS(4331), [sym_function] = ACTIONS(4331), [sym_goto] = ACTIONS(4331), [sym_if] = ACTIONS(4331), [sym_immutable] = ACTIONS(4331), [sym_import] = ACTIONS(4331), [sym_in] = ACTIONS(4331), [sym_inout] = ACTIONS(4331), [sym_interface] = ACTIONS(4331), [sym_invariant] = ACTIONS(4331), [sym_is] = ACTIONS(4331), [sym_mixin] = ACTIONS(4331), [sym_new] = ACTIONS(4331), [sym_nothrow] = ACTIONS(4331), [sym_out] = ACTIONS(4331), [sym_override] = ACTIONS(4331), [sym_package] = ACTIONS(4331), [sym_pragma] = ACTIONS(4331), [sym_private] = ACTIONS(4331), [sym_protected] = ACTIONS(4331), [sym_public] = ACTIONS(4331), [sym_pure] = ACTIONS(4331), [sym_ref] = ACTIONS(4331), [sym_return] = ACTIONS(4331), [sym_scope] = ACTIONS(4331), [sym_shared] = ACTIONS(4331), [sym_static] = ACTIONS(4331), [sym_struct] = ACTIONS(4331), [sym_switch] = ACTIONS(4331), [sym_synchronized] = ACTIONS(4331), [sym_template] = ACTIONS(4331), [sym_throw] = ACTIONS(4331), [sym_try] = ACTIONS(4331), [sym_typeid] = ACTIONS(4331), [sym_typeof] = ACTIONS(4331), [sym_union] = ACTIONS(4331), [sym_unittest] = ACTIONS(4331), [sym_version] = ACTIONS(4331), [sym_while] = ACTIONS(4331), [sym_with] = ACTIONS(4331), [sym_gshared] = ACTIONS(4331), [sym_traits] = ACTIONS(4331), [sym_vector] = ACTIONS(4331), [sym_void] = ACTIONS(4331), [anon_sym_BQUOTE] = ACTIONS(4333), [anon_sym_r_DQUOTE] = ACTIONS(4333), [anon_sym_x_DQUOTE] = ACTIONS(4333), [anon_sym_DQUOTE] = ACTIONS(4333), [anon_sym_i_BQUOTE] = ACTIONS(4333), [anon_sym_i_DQUOTE] = ACTIONS(4333), [anon_sym_iq_LBRACE] = ACTIONS(4333), [aux_sym_char_literal_token1] = ACTIONS(4333), [anon_sym_SQUOTE] = ACTIONS(4331), [anon_sym___DATE__] = ACTIONS(4331), [anon_sym___FILE__] = ACTIONS(4331), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4331), [anon_sym___FUNCTION__] = ACTIONS(4331), [anon_sym___LINE__] = ACTIONS(4331), [anon_sym___MODULE__] = ACTIONS(4331), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4331), [anon_sym___TIME__] = ACTIONS(4331), [anon_sym___TIMESTAMP__] = ACTIONS(4331), [anon_sym___VENDOR__] = ACTIONS(4331), [anon_sym___VERSION__] = ACTIONS(4331), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4333), [sym_float_literal] = ACTIONS(4333), [sym__string] = ACTIONS(4333), }, [1720] = { [sym_identifier] = ACTIONS(4317), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4319), [anon_sym_RBRACE] = ACTIONS(4319), [anon_sym_LBRACE] = ACTIONS(4319), [anon_sym_DOT] = ACTIONS(4319), [anon_sym_AMP] = ACTIONS(4319), [anon_sym_DASH] = ACTIONS(4317), [anon_sym_DASH_DASH] = ACTIONS(4319), [anon_sym_PLUS] = ACTIONS(4317), [anon_sym_PLUS_PLUS] = ACTIONS(4319), [anon_sym_BANG] = ACTIONS(4319), [anon_sym_LPAREN] = ACTIONS(4319), [anon_sym_RPAREN] = ACTIONS(4319), [anon_sym_LBRACK] = ACTIONS(4319), [anon_sym_SEMI] = ACTIONS(4319), [anon_sym_DOLLAR] = ACTIONS(4319), [anon_sym_STAR] = ACTIONS(4319), [anon_sym_TILDE] = ACTIONS(4319), [anon_sym_AT] = ACTIONS(4319), [sym_bool] = ACTIONS(4317), [sym_byte] = ACTIONS(4317), [sym_ubyte] = ACTIONS(4317), [sym_char] = ACTIONS(4317), [sym_short] = ACTIONS(4317), [sym_ushort] = ACTIONS(4317), [sym_int] = ACTIONS(4317), [sym_uint] = ACTIONS(4317), [sym_long] = ACTIONS(4317), [sym_ulong] = ACTIONS(4317), [sym_cent] = ACTIONS(4317), [sym_ucent] = ACTIONS(4317), [sym_wchar] = ACTIONS(4317), [sym_dchar] = ACTIONS(4317), [sym_float] = ACTIONS(4317), [sym_double] = ACTIONS(4317), [sym_real] = ACTIONS(4317), [sym_ifloat] = ACTIONS(4317), [sym_idouble] = ACTIONS(4317), [sym_ireal] = ACTIONS(4317), [sym_cfloat] = ACTIONS(4317), [sym_cdouble] = ACTIONS(4317), [sym_creal] = ACTIONS(4317), [sym_size_t] = ACTIONS(4317), [sym_ptrdiff_t] = ACTIONS(4317), [sym_string] = ACTIONS(4317), [sym_cstring] = ACTIONS(4317), [sym_dstring] = ACTIONS(4317), [sym_wstring] = ACTIONS(4317), [sym_noreturn] = ACTIONS(4317), [sym_true] = ACTIONS(4317), [sym_false] = ACTIONS(4317), [sym_null] = ACTIONS(4317), [sym_super] = ACTIONS(4317), [sym_this] = ACTIONS(4317), [sym_abstract] = ACTIONS(4317), [sym_alias] = ACTIONS(4317), [sym_align] = ACTIONS(4317), [sym_asm] = ACTIONS(4317), [sym_assert] = ACTIONS(4317), [sym_auto] = ACTIONS(4317), [sym_break] = ACTIONS(4317), [sym_case] = ACTIONS(4317), [sym_cast] = ACTIONS(4317), [sym_class] = ACTIONS(4317), [sym_const] = ACTIONS(4317), [sym_continue] = ACTIONS(4317), [sym_debug] = ACTIONS(4317), [sym_default] = ACTIONS(4317), [sym_delegate] = ACTIONS(4317), [sym_delete] = ACTIONS(4317), [sym_deprecated] = ACTIONS(4317), [sym_do] = ACTIONS(4317), [sym_else] = ACTIONS(4317), [sym_enum] = ACTIONS(4317), [sym_export] = ACTIONS(4317), [sym_extern] = ACTIONS(4317), [sym_final] = ACTIONS(4317), [sym_for] = ACTIONS(4317), [sym_foreach] = ACTIONS(4317), [sym_foreach_reverse] = ACTIONS(4317), [sym_function] = ACTIONS(4317), [sym_goto] = ACTIONS(4317), [sym_if] = ACTIONS(4317), [sym_immutable] = ACTIONS(4317), [sym_import] = ACTIONS(4317), [sym_in] = ACTIONS(4317), [sym_inout] = ACTIONS(4317), [sym_interface] = ACTIONS(4317), [sym_invariant] = ACTIONS(4317), [sym_is] = ACTIONS(4317), [sym_mixin] = ACTIONS(4317), [sym_new] = ACTIONS(4317), [sym_nothrow] = ACTIONS(4317), [sym_out] = ACTIONS(4317), [sym_override] = ACTIONS(4317), [sym_package] = ACTIONS(4317), [sym_pragma] = ACTIONS(4317), [sym_private] = ACTIONS(4317), [sym_protected] = ACTIONS(4317), [sym_public] = ACTIONS(4317), [sym_pure] = ACTIONS(4317), [sym_ref] = ACTIONS(4317), [sym_return] = ACTIONS(4317), [sym_scope] = ACTIONS(4317), [sym_shared] = ACTIONS(4317), [sym_static] = ACTIONS(4317), [sym_struct] = ACTIONS(4317), [sym_switch] = ACTIONS(4317), [sym_synchronized] = ACTIONS(4317), [sym_template] = ACTIONS(4317), [sym_throw] = ACTIONS(4317), [sym_try] = ACTIONS(4317), [sym_typeid] = ACTIONS(4317), [sym_typeof] = ACTIONS(4317), [sym_union] = ACTIONS(4317), [sym_unittest] = ACTIONS(4317), [sym_version] = ACTIONS(4317), [sym_while] = ACTIONS(4317), [sym_with] = ACTIONS(4317), [sym_gshared] = ACTIONS(4317), [sym_traits] = ACTIONS(4317), [sym_vector] = ACTIONS(4317), [sym_void] = ACTIONS(4317), [anon_sym_BQUOTE] = ACTIONS(4319), [anon_sym_r_DQUOTE] = ACTIONS(4319), [anon_sym_x_DQUOTE] = ACTIONS(4319), [anon_sym_DQUOTE] = ACTIONS(4319), [anon_sym_i_BQUOTE] = ACTIONS(4319), [anon_sym_i_DQUOTE] = ACTIONS(4319), [anon_sym_iq_LBRACE] = ACTIONS(4319), [aux_sym_char_literal_token1] = ACTIONS(4319), [anon_sym_SQUOTE] = ACTIONS(4317), [anon_sym___DATE__] = ACTIONS(4317), [anon_sym___FILE__] = ACTIONS(4317), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4317), [anon_sym___FUNCTION__] = ACTIONS(4317), [anon_sym___LINE__] = ACTIONS(4317), [anon_sym___MODULE__] = ACTIONS(4317), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4317), [anon_sym___TIME__] = ACTIONS(4317), [anon_sym___TIMESTAMP__] = ACTIONS(4317), [anon_sym___VENDOR__] = ACTIONS(4317), [anon_sym___VERSION__] = ACTIONS(4317), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4319), [sym_float_literal] = ACTIONS(4319), [sym__string] = ACTIONS(4319), }, [1721] = { [sym_identifier] = ACTIONS(4301), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4303), [anon_sym_RBRACE] = ACTIONS(4303), [anon_sym_LBRACE] = ACTIONS(4303), [anon_sym_DOT] = ACTIONS(4303), [anon_sym_AMP] = ACTIONS(4303), [anon_sym_DASH] = ACTIONS(4301), [anon_sym_DASH_DASH] = ACTIONS(4303), [anon_sym_PLUS] = ACTIONS(4301), [anon_sym_PLUS_PLUS] = ACTIONS(4303), [anon_sym_BANG] = ACTIONS(4303), [anon_sym_LPAREN] = ACTIONS(4303), [anon_sym_RPAREN] = ACTIONS(4303), [anon_sym_LBRACK] = ACTIONS(4303), [anon_sym_SEMI] = ACTIONS(4303), [anon_sym_DOLLAR] = ACTIONS(4303), [anon_sym_STAR] = ACTIONS(4303), [anon_sym_TILDE] = ACTIONS(4303), [anon_sym_AT] = ACTIONS(4303), [sym_bool] = ACTIONS(4301), [sym_byte] = ACTIONS(4301), [sym_ubyte] = ACTIONS(4301), [sym_char] = ACTIONS(4301), [sym_short] = ACTIONS(4301), [sym_ushort] = ACTIONS(4301), [sym_int] = ACTIONS(4301), [sym_uint] = ACTIONS(4301), [sym_long] = ACTIONS(4301), [sym_ulong] = ACTIONS(4301), [sym_cent] = ACTIONS(4301), [sym_ucent] = ACTIONS(4301), [sym_wchar] = ACTIONS(4301), [sym_dchar] = ACTIONS(4301), [sym_float] = ACTIONS(4301), [sym_double] = ACTIONS(4301), [sym_real] = ACTIONS(4301), [sym_ifloat] = ACTIONS(4301), [sym_idouble] = ACTIONS(4301), [sym_ireal] = ACTIONS(4301), [sym_cfloat] = ACTIONS(4301), [sym_cdouble] = ACTIONS(4301), [sym_creal] = ACTIONS(4301), [sym_size_t] = ACTIONS(4301), [sym_ptrdiff_t] = ACTIONS(4301), [sym_string] = ACTIONS(4301), [sym_cstring] = ACTIONS(4301), [sym_dstring] = ACTIONS(4301), [sym_wstring] = ACTIONS(4301), [sym_noreturn] = ACTIONS(4301), [sym_true] = ACTIONS(4301), [sym_false] = ACTIONS(4301), [sym_null] = ACTIONS(4301), [sym_super] = ACTIONS(4301), [sym_this] = ACTIONS(4301), [sym_abstract] = ACTIONS(4301), [sym_alias] = ACTIONS(4301), [sym_align] = ACTIONS(4301), [sym_asm] = ACTIONS(4301), [sym_assert] = ACTIONS(4301), [sym_auto] = ACTIONS(4301), [sym_break] = ACTIONS(4301), [sym_case] = ACTIONS(4301), [sym_cast] = ACTIONS(4301), [sym_class] = ACTIONS(4301), [sym_const] = ACTIONS(4301), [sym_continue] = ACTIONS(4301), [sym_debug] = ACTIONS(4301), [sym_default] = ACTIONS(4301), [sym_delegate] = ACTIONS(4301), [sym_delete] = ACTIONS(4301), [sym_deprecated] = ACTIONS(4301), [sym_do] = ACTIONS(4301), [sym_else] = ACTIONS(4301), [sym_enum] = ACTIONS(4301), [sym_export] = ACTIONS(4301), [sym_extern] = ACTIONS(4301), [sym_final] = ACTIONS(4301), [sym_for] = ACTIONS(4301), [sym_foreach] = ACTIONS(4301), [sym_foreach_reverse] = ACTIONS(4301), [sym_function] = ACTIONS(4301), [sym_goto] = ACTIONS(4301), [sym_if] = ACTIONS(4301), [sym_immutable] = ACTIONS(4301), [sym_import] = ACTIONS(4301), [sym_in] = ACTIONS(4301), [sym_inout] = ACTIONS(4301), [sym_interface] = ACTIONS(4301), [sym_invariant] = ACTIONS(4301), [sym_is] = ACTIONS(4301), [sym_mixin] = ACTIONS(4301), [sym_new] = ACTIONS(4301), [sym_nothrow] = ACTIONS(4301), [sym_out] = ACTIONS(4301), [sym_override] = ACTIONS(4301), [sym_package] = ACTIONS(4301), [sym_pragma] = ACTIONS(4301), [sym_private] = ACTIONS(4301), [sym_protected] = ACTIONS(4301), [sym_public] = ACTIONS(4301), [sym_pure] = ACTIONS(4301), [sym_ref] = ACTIONS(4301), [sym_return] = ACTIONS(4301), [sym_scope] = ACTIONS(4301), [sym_shared] = ACTIONS(4301), [sym_static] = ACTIONS(4301), [sym_struct] = ACTIONS(4301), [sym_switch] = ACTIONS(4301), [sym_synchronized] = ACTIONS(4301), [sym_template] = ACTIONS(4301), [sym_throw] = ACTIONS(4301), [sym_try] = ACTIONS(4301), [sym_typeid] = ACTIONS(4301), [sym_typeof] = ACTIONS(4301), [sym_union] = ACTIONS(4301), [sym_unittest] = ACTIONS(4301), [sym_version] = ACTIONS(4301), [sym_while] = ACTIONS(4301), [sym_with] = ACTIONS(4301), [sym_gshared] = ACTIONS(4301), [sym_traits] = ACTIONS(4301), [sym_vector] = ACTIONS(4301), [sym_void] = ACTIONS(4301), [anon_sym_BQUOTE] = ACTIONS(4303), [anon_sym_r_DQUOTE] = ACTIONS(4303), [anon_sym_x_DQUOTE] = ACTIONS(4303), [anon_sym_DQUOTE] = ACTIONS(4303), [anon_sym_i_BQUOTE] = ACTIONS(4303), [anon_sym_i_DQUOTE] = ACTIONS(4303), [anon_sym_iq_LBRACE] = ACTIONS(4303), [aux_sym_char_literal_token1] = ACTIONS(4303), [anon_sym_SQUOTE] = ACTIONS(4301), [anon_sym___DATE__] = ACTIONS(4301), [anon_sym___FILE__] = ACTIONS(4301), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4301), [anon_sym___FUNCTION__] = ACTIONS(4301), [anon_sym___LINE__] = ACTIONS(4301), [anon_sym___MODULE__] = ACTIONS(4301), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4301), [anon_sym___TIME__] = ACTIONS(4301), [anon_sym___TIMESTAMP__] = ACTIONS(4301), [anon_sym___VENDOR__] = ACTIONS(4301), [anon_sym___VERSION__] = ACTIONS(4301), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4303), [sym_float_literal] = ACTIONS(4303), [sym__string] = ACTIONS(4303), }, [1722] = { [sym_identifier] = ACTIONS(4708), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4710), [anon_sym_RBRACE] = ACTIONS(4710), [anon_sym_LBRACE] = ACTIONS(4710), [anon_sym_DOT] = ACTIONS(4710), [anon_sym_AMP] = ACTIONS(4710), [anon_sym_DASH] = ACTIONS(4708), [anon_sym_DASH_DASH] = ACTIONS(4710), [anon_sym_PLUS] = ACTIONS(4708), [anon_sym_PLUS_PLUS] = ACTIONS(4710), [anon_sym_BANG] = ACTIONS(4710), [anon_sym_LPAREN] = ACTIONS(4710), [anon_sym_RPAREN] = ACTIONS(4710), [anon_sym_LBRACK] = ACTIONS(4710), [anon_sym_SEMI] = ACTIONS(4710), [anon_sym_DOLLAR] = ACTIONS(4710), [anon_sym_STAR] = ACTIONS(4710), [anon_sym_TILDE] = ACTIONS(4710), [anon_sym_AT] = ACTIONS(4710), [sym_bool] = ACTIONS(4708), [sym_byte] = ACTIONS(4708), [sym_ubyte] = ACTIONS(4708), [sym_char] = ACTIONS(4708), [sym_short] = ACTIONS(4708), [sym_ushort] = ACTIONS(4708), [sym_int] = ACTIONS(4708), [sym_uint] = ACTIONS(4708), [sym_long] = ACTIONS(4708), [sym_ulong] = ACTIONS(4708), [sym_cent] = ACTIONS(4708), [sym_ucent] = ACTIONS(4708), [sym_wchar] = ACTIONS(4708), [sym_dchar] = ACTIONS(4708), [sym_float] = ACTIONS(4708), [sym_double] = ACTIONS(4708), [sym_real] = ACTIONS(4708), [sym_ifloat] = ACTIONS(4708), [sym_idouble] = ACTIONS(4708), [sym_ireal] = ACTIONS(4708), [sym_cfloat] = ACTIONS(4708), [sym_cdouble] = ACTIONS(4708), [sym_creal] = ACTIONS(4708), [sym_size_t] = ACTIONS(4708), [sym_ptrdiff_t] = ACTIONS(4708), [sym_string] = ACTIONS(4708), [sym_cstring] = ACTIONS(4708), [sym_dstring] = ACTIONS(4708), [sym_wstring] = ACTIONS(4708), [sym_noreturn] = ACTIONS(4708), [sym_true] = ACTIONS(4708), [sym_false] = ACTIONS(4708), [sym_null] = ACTIONS(4708), [sym_super] = ACTIONS(4708), [sym_this] = ACTIONS(4708), [sym_abstract] = ACTIONS(4708), [sym_alias] = ACTIONS(4708), [sym_align] = ACTIONS(4708), [sym_asm] = ACTIONS(4708), [sym_assert] = ACTIONS(4708), [sym_auto] = ACTIONS(4708), [sym_break] = ACTIONS(4708), [sym_case] = ACTIONS(4708), [sym_cast] = ACTIONS(4708), [sym_class] = ACTIONS(4708), [sym_const] = ACTIONS(4708), [sym_continue] = ACTIONS(4708), [sym_debug] = ACTIONS(4708), [sym_default] = ACTIONS(4708), [sym_delegate] = ACTIONS(4708), [sym_delete] = ACTIONS(4708), [sym_deprecated] = ACTIONS(4708), [sym_do] = ACTIONS(4708), [sym_else] = ACTIONS(4708), [sym_enum] = ACTIONS(4708), [sym_export] = ACTIONS(4708), [sym_extern] = ACTIONS(4708), [sym_final] = ACTIONS(4708), [sym_for] = ACTIONS(4708), [sym_foreach] = ACTIONS(4708), [sym_foreach_reverse] = ACTIONS(4708), [sym_function] = ACTIONS(4708), [sym_goto] = ACTIONS(4708), [sym_if] = ACTIONS(4708), [sym_immutable] = ACTIONS(4708), [sym_import] = ACTIONS(4708), [sym_in] = ACTIONS(4708), [sym_inout] = ACTIONS(4708), [sym_interface] = ACTIONS(4708), [sym_invariant] = ACTIONS(4708), [sym_is] = ACTIONS(4708), [sym_mixin] = ACTIONS(4708), [sym_new] = ACTIONS(4708), [sym_nothrow] = ACTIONS(4708), [sym_out] = ACTIONS(4708), [sym_override] = ACTIONS(4708), [sym_package] = ACTIONS(4708), [sym_pragma] = ACTIONS(4708), [sym_private] = ACTIONS(4708), [sym_protected] = ACTIONS(4708), [sym_public] = ACTIONS(4708), [sym_pure] = ACTIONS(4708), [sym_ref] = ACTIONS(4708), [sym_return] = ACTIONS(4708), [sym_scope] = ACTIONS(4708), [sym_shared] = ACTIONS(4708), [sym_static] = ACTIONS(4708), [sym_struct] = ACTIONS(4708), [sym_switch] = ACTIONS(4708), [sym_synchronized] = ACTIONS(4708), [sym_template] = ACTIONS(4708), [sym_throw] = ACTIONS(4708), [sym_try] = ACTIONS(4708), [sym_typeid] = ACTIONS(4708), [sym_typeof] = ACTIONS(4708), [sym_union] = ACTIONS(4708), [sym_unittest] = ACTIONS(4708), [sym_version] = ACTIONS(4708), [sym_while] = ACTIONS(4708), [sym_with] = ACTIONS(4708), [sym_gshared] = ACTIONS(4708), [sym_traits] = ACTIONS(4708), [sym_vector] = ACTIONS(4708), [sym_void] = ACTIONS(4708), [anon_sym_BQUOTE] = ACTIONS(4710), [anon_sym_r_DQUOTE] = ACTIONS(4710), [anon_sym_x_DQUOTE] = ACTIONS(4710), [anon_sym_DQUOTE] = ACTIONS(4710), [anon_sym_i_BQUOTE] = ACTIONS(4710), [anon_sym_i_DQUOTE] = ACTIONS(4710), [anon_sym_iq_LBRACE] = ACTIONS(4710), [aux_sym_char_literal_token1] = ACTIONS(4710), [anon_sym_SQUOTE] = ACTIONS(4708), [anon_sym___DATE__] = ACTIONS(4708), [anon_sym___FILE__] = ACTIONS(4708), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4708), [anon_sym___FUNCTION__] = ACTIONS(4708), [anon_sym___LINE__] = ACTIONS(4708), [anon_sym___MODULE__] = ACTIONS(4708), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4708), [anon_sym___TIME__] = ACTIONS(4708), [anon_sym___TIMESTAMP__] = ACTIONS(4708), [anon_sym___VENDOR__] = ACTIONS(4708), [anon_sym___VERSION__] = ACTIONS(4708), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4710), [sym_float_literal] = ACTIONS(4710), [sym__string] = ACTIONS(4710), }, [1723] = { [sym_identifier] = ACTIONS(4586), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4588), [anon_sym_RBRACE] = ACTIONS(4588), [anon_sym_LBRACE] = ACTIONS(4588), [anon_sym_DOT] = ACTIONS(4588), [anon_sym_AMP] = ACTIONS(4588), [anon_sym_DASH] = ACTIONS(4586), [anon_sym_DASH_DASH] = ACTIONS(4588), [anon_sym_PLUS] = ACTIONS(4586), [anon_sym_PLUS_PLUS] = ACTIONS(4588), [anon_sym_BANG] = ACTIONS(4588), [anon_sym_LPAREN] = ACTIONS(4588), [anon_sym_RPAREN] = ACTIONS(4588), [anon_sym_LBRACK] = ACTIONS(4588), [anon_sym_SEMI] = ACTIONS(4588), [anon_sym_DOLLAR] = ACTIONS(4588), [anon_sym_STAR] = ACTIONS(4588), [anon_sym_TILDE] = ACTIONS(4588), [anon_sym_AT] = ACTIONS(4588), [sym_bool] = ACTIONS(4586), [sym_byte] = ACTIONS(4586), [sym_ubyte] = ACTIONS(4586), [sym_char] = ACTIONS(4586), [sym_short] = ACTIONS(4586), [sym_ushort] = ACTIONS(4586), [sym_int] = ACTIONS(4586), [sym_uint] = ACTIONS(4586), [sym_long] = ACTIONS(4586), [sym_ulong] = ACTIONS(4586), [sym_cent] = ACTIONS(4586), [sym_ucent] = ACTIONS(4586), [sym_wchar] = ACTIONS(4586), [sym_dchar] = ACTIONS(4586), [sym_float] = ACTIONS(4586), [sym_double] = ACTIONS(4586), [sym_real] = ACTIONS(4586), [sym_ifloat] = ACTIONS(4586), [sym_idouble] = ACTIONS(4586), [sym_ireal] = ACTIONS(4586), [sym_cfloat] = ACTIONS(4586), [sym_cdouble] = ACTIONS(4586), [sym_creal] = ACTIONS(4586), [sym_size_t] = ACTIONS(4586), [sym_ptrdiff_t] = ACTIONS(4586), [sym_string] = ACTIONS(4586), [sym_cstring] = ACTIONS(4586), [sym_dstring] = ACTIONS(4586), [sym_wstring] = ACTIONS(4586), [sym_noreturn] = ACTIONS(4586), [sym_true] = ACTIONS(4586), [sym_false] = ACTIONS(4586), [sym_null] = ACTIONS(4586), [sym_super] = ACTIONS(4586), [sym_this] = ACTIONS(4586), [sym_abstract] = ACTIONS(4586), [sym_alias] = ACTIONS(4586), [sym_align] = ACTIONS(4586), [sym_asm] = ACTIONS(4586), [sym_assert] = ACTIONS(4586), [sym_auto] = ACTIONS(4586), [sym_break] = ACTIONS(4586), [sym_case] = ACTIONS(4586), [sym_cast] = ACTIONS(4586), [sym_class] = ACTIONS(4586), [sym_const] = ACTIONS(4586), [sym_continue] = ACTIONS(4586), [sym_debug] = ACTIONS(4586), [sym_default] = ACTIONS(4586), [sym_delegate] = ACTIONS(4586), [sym_delete] = ACTIONS(4586), [sym_deprecated] = ACTIONS(4586), [sym_do] = ACTIONS(4586), [sym_else] = ACTIONS(4586), [sym_enum] = ACTIONS(4586), [sym_export] = ACTIONS(4586), [sym_extern] = ACTIONS(4586), [sym_final] = ACTIONS(4586), [sym_for] = ACTIONS(4586), [sym_foreach] = ACTIONS(4586), [sym_foreach_reverse] = ACTIONS(4586), [sym_function] = ACTIONS(4586), [sym_goto] = ACTIONS(4586), [sym_if] = ACTIONS(4586), [sym_immutable] = ACTIONS(4586), [sym_import] = ACTIONS(4586), [sym_in] = ACTIONS(4586), [sym_inout] = ACTIONS(4586), [sym_interface] = ACTIONS(4586), [sym_invariant] = ACTIONS(4586), [sym_is] = ACTIONS(4586), [sym_mixin] = ACTIONS(4586), [sym_new] = ACTIONS(4586), [sym_nothrow] = ACTIONS(4586), [sym_out] = ACTIONS(4586), [sym_override] = ACTIONS(4586), [sym_package] = ACTIONS(4586), [sym_pragma] = ACTIONS(4586), [sym_private] = ACTIONS(4586), [sym_protected] = ACTIONS(4586), [sym_public] = ACTIONS(4586), [sym_pure] = ACTIONS(4586), [sym_ref] = ACTIONS(4586), [sym_return] = ACTIONS(4586), [sym_scope] = ACTIONS(4586), [sym_shared] = ACTIONS(4586), [sym_static] = ACTIONS(4586), [sym_struct] = ACTIONS(4586), [sym_switch] = ACTIONS(4586), [sym_synchronized] = ACTIONS(4586), [sym_template] = ACTIONS(4586), [sym_throw] = ACTIONS(4586), [sym_try] = ACTIONS(4586), [sym_typeid] = ACTIONS(4586), [sym_typeof] = ACTIONS(4586), [sym_union] = ACTIONS(4586), [sym_unittest] = ACTIONS(4586), [sym_version] = ACTIONS(4586), [sym_while] = ACTIONS(4586), [sym_with] = ACTIONS(4586), [sym_gshared] = ACTIONS(4586), [sym_traits] = ACTIONS(4586), [sym_vector] = ACTIONS(4586), [sym_void] = ACTIONS(4586), [anon_sym_BQUOTE] = ACTIONS(4588), [anon_sym_r_DQUOTE] = ACTIONS(4588), [anon_sym_x_DQUOTE] = ACTIONS(4588), [anon_sym_DQUOTE] = ACTIONS(4588), [anon_sym_i_BQUOTE] = ACTIONS(4588), [anon_sym_i_DQUOTE] = ACTIONS(4588), [anon_sym_iq_LBRACE] = ACTIONS(4588), [aux_sym_char_literal_token1] = ACTIONS(4588), [anon_sym_SQUOTE] = ACTIONS(4586), [anon_sym___DATE__] = ACTIONS(4586), [anon_sym___FILE__] = ACTIONS(4586), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4586), [anon_sym___FUNCTION__] = ACTIONS(4586), [anon_sym___LINE__] = ACTIONS(4586), [anon_sym___MODULE__] = ACTIONS(4586), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4586), [anon_sym___TIME__] = ACTIONS(4586), [anon_sym___TIMESTAMP__] = ACTIONS(4586), [anon_sym___VENDOR__] = ACTIONS(4586), [anon_sym___VERSION__] = ACTIONS(4586), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4588), [sym_float_literal] = ACTIONS(4588), [sym__string] = ACTIONS(4588), }, [1724] = { [sym_identifier] = ACTIONS(4590), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4592), [anon_sym_RBRACE] = ACTIONS(4592), [anon_sym_LBRACE] = ACTIONS(4592), [anon_sym_DOT] = ACTIONS(4592), [anon_sym_AMP] = ACTIONS(4592), [anon_sym_DASH] = ACTIONS(4590), [anon_sym_DASH_DASH] = ACTIONS(4592), [anon_sym_PLUS] = ACTIONS(4590), [anon_sym_PLUS_PLUS] = ACTIONS(4592), [anon_sym_BANG] = ACTIONS(4592), [anon_sym_LPAREN] = ACTIONS(4592), [anon_sym_RPAREN] = ACTIONS(4592), [anon_sym_LBRACK] = ACTIONS(4592), [anon_sym_SEMI] = ACTIONS(4592), [anon_sym_DOLLAR] = ACTIONS(4592), [anon_sym_STAR] = ACTIONS(4592), [anon_sym_TILDE] = ACTIONS(4592), [anon_sym_AT] = ACTIONS(4592), [sym_bool] = ACTIONS(4590), [sym_byte] = ACTIONS(4590), [sym_ubyte] = ACTIONS(4590), [sym_char] = ACTIONS(4590), [sym_short] = ACTIONS(4590), [sym_ushort] = ACTIONS(4590), [sym_int] = ACTIONS(4590), [sym_uint] = ACTIONS(4590), [sym_long] = ACTIONS(4590), [sym_ulong] = ACTIONS(4590), [sym_cent] = ACTIONS(4590), [sym_ucent] = ACTIONS(4590), [sym_wchar] = ACTIONS(4590), [sym_dchar] = ACTIONS(4590), [sym_float] = ACTIONS(4590), [sym_double] = ACTIONS(4590), [sym_real] = ACTIONS(4590), [sym_ifloat] = ACTIONS(4590), [sym_idouble] = ACTIONS(4590), [sym_ireal] = ACTIONS(4590), [sym_cfloat] = ACTIONS(4590), [sym_cdouble] = ACTIONS(4590), [sym_creal] = ACTIONS(4590), [sym_size_t] = ACTIONS(4590), [sym_ptrdiff_t] = ACTIONS(4590), [sym_string] = ACTIONS(4590), [sym_cstring] = ACTIONS(4590), [sym_dstring] = ACTIONS(4590), [sym_wstring] = ACTIONS(4590), [sym_noreturn] = ACTIONS(4590), [sym_true] = ACTIONS(4590), [sym_false] = ACTIONS(4590), [sym_null] = ACTIONS(4590), [sym_super] = ACTIONS(4590), [sym_this] = ACTIONS(4590), [sym_abstract] = ACTIONS(4590), [sym_alias] = ACTIONS(4590), [sym_align] = ACTIONS(4590), [sym_asm] = ACTIONS(4590), [sym_assert] = ACTIONS(4590), [sym_auto] = ACTIONS(4590), [sym_break] = ACTIONS(4590), [sym_case] = ACTIONS(4590), [sym_cast] = ACTIONS(4590), [sym_class] = ACTIONS(4590), [sym_const] = ACTIONS(4590), [sym_continue] = ACTIONS(4590), [sym_debug] = ACTIONS(4590), [sym_default] = ACTIONS(4590), [sym_delegate] = ACTIONS(4590), [sym_delete] = ACTIONS(4590), [sym_deprecated] = ACTIONS(4590), [sym_do] = ACTIONS(4590), [sym_else] = ACTIONS(4590), [sym_enum] = ACTIONS(4590), [sym_export] = ACTIONS(4590), [sym_extern] = ACTIONS(4590), [sym_final] = ACTIONS(4590), [sym_for] = ACTIONS(4590), [sym_foreach] = ACTIONS(4590), [sym_foreach_reverse] = ACTIONS(4590), [sym_function] = ACTIONS(4590), [sym_goto] = ACTIONS(4590), [sym_if] = ACTIONS(4590), [sym_immutable] = ACTIONS(4590), [sym_import] = ACTIONS(4590), [sym_in] = ACTIONS(4590), [sym_inout] = ACTIONS(4590), [sym_interface] = ACTIONS(4590), [sym_invariant] = ACTIONS(4590), [sym_is] = ACTIONS(4590), [sym_mixin] = ACTIONS(4590), [sym_new] = ACTIONS(4590), [sym_nothrow] = ACTIONS(4590), [sym_out] = ACTIONS(4590), [sym_override] = ACTIONS(4590), [sym_package] = ACTIONS(4590), [sym_pragma] = ACTIONS(4590), [sym_private] = ACTIONS(4590), [sym_protected] = ACTIONS(4590), [sym_public] = ACTIONS(4590), [sym_pure] = ACTIONS(4590), [sym_ref] = ACTIONS(4590), [sym_return] = ACTIONS(4590), [sym_scope] = ACTIONS(4590), [sym_shared] = ACTIONS(4590), [sym_static] = ACTIONS(4590), [sym_struct] = ACTIONS(4590), [sym_switch] = ACTIONS(4590), [sym_synchronized] = ACTIONS(4590), [sym_template] = ACTIONS(4590), [sym_throw] = ACTIONS(4590), [sym_try] = ACTIONS(4590), [sym_typeid] = ACTIONS(4590), [sym_typeof] = ACTIONS(4590), [sym_union] = ACTIONS(4590), [sym_unittest] = ACTIONS(4590), [sym_version] = ACTIONS(4590), [sym_while] = ACTIONS(4590), [sym_with] = ACTIONS(4590), [sym_gshared] = ACTIONS(4590), [sym_traits] = ACTIONS(4590), [sym_vector] = ACTIONS(4590), [sym_void] = ACTIONS(4590), [anon_sym_BQUOTE] = ACTIONS(4592), [anon_sym_r_DQUOTE] = ACTIONS(4592), [anon_sym_x_DQUOTE] = ACTIONS(4592), [anon_sym_DQUOTE] = ACTIONS(4592), [anon_sym_i_BQUOTE] = ACTIONS(4592), [anon_sym_i_DQUOTE] = ACTIONS(4592), [anon_sym_iq_LBRACE] = ACTIONS(4592), [aux_sym_char_literal_token1] = ACTIONS(4592), [anon_sym_SQUOTE] = ACTIONS(4590), [anon_sym___DATE__] = ACTIONS(4590), [anon_sym___FILE__] = ACTIONS(4590), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4590), [anon_sym___FUNCTION__] = ACTIONS(4590), [anon_sym___LINE__] = ACTIONS(4590), [anon_sym___MODULE__] = ACTIONS(4590), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4590), [anon_sym___TIME__] = ACTIONS(4590), [anon_sym___TIMESTAMP__] = ACTIONS(4590), [anon_sym___VENDOR__] = ACTIONS(4590), [anon_sym___VERSION__] = ACTIONS(4590), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4592), [sym_float_literal] = ACTIONS(4592), [sym__string] = ACTIONS(4592), }, [1725] = { [sym_identifier] = ACTIONS(4632), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4634), [anon_sym_RBRACE] = ACTIONS(4634), [anon_sym_LBRACE] = ACTIONS(4634), [anon_sym_DOT] = ACTIONS(4634), [anon_sym_AMP] = ACTIONS(4634), [anon_sym_DASH] = ACTIONS(4632), [anon_sym_DASH_DASH] = ACTIONS(4634), [anon_sym_PLUS] = ACTIONS(4632), [anon_sym_PLUS_PLUS] = ACTIONS(4634), [anon_sym_BANG] = ACTIONS(4634), [anon_sym_LPAREN] = ACTIONS(4634), [anon_sym_RPAREN] = ACTIONS(4634), [anon_sym_LBRACK] = ACTIONS(4634), [anon_sym_SEMI] = ACTIONS(4634), [anon_sym_DOLLAR] = ACTIONS(4634), [anon_sym_STAR] = ACTIONS(4634), [anon_sym_TILDE] = ACTIONS(4634), [anon_sym_AT] = ACTIONS(4634), [sym_bool] = ACTIONS(4632), [sym_byte] = ACTIONS(4632), [sym_ubyte] = ACTIONS(4632), [sym_char] = ACTIONS(4632), [sym_short] = ACTIONS(4632), [sym_ushort] = ACTIONS(4632), [sym_int] = ACTIONS(4632), [sym_uint] = ACTIONS(4632), [sym_long] = ACTIONS(4632), [sym_ulong] = ACTIONS(4632), [sym_cent] = ACTIONS(4632), [sym_ucent] = ACTIONS(4632), [sym_wchar] = ACTIONS(4632), [sym_dchar] = ACTIONS(4632), [sym_float] = ACTIONS(4632), [sym_double] = ACTIONS(4632), [sym_real] = ACTIONS(4632), [sym_ifloat] = ACTIONS(4632), [sym_idouble] = ACTIONS(4632), [sym_ireal] = ACTIONS(4632), [sym_cfloat] = ACTIONS(4632), [sym_cdouble] = ACTIONS(4632), [sym_creal] = ACTIONS(4632), [sym_size_t] = ACTIONS(4632), [sym_ptrdiff_t] = ACTIONS(4632), [sym_string] = ACTIONS(4632), [sym_cstring] = ACTIONS(4632), [sym_dstring] = ACTIONS(4632), [sym_wstring] = ACTIONS(4632), [sym_noreturn] = ACTIONS(4632), [sym_true] = ACTIONS(4632), [sym_false] = ACTIONS(4632), [sym_null] = ACTIONS(4632), [sym_super] = ACTIONS(4632), [sym_this] = ACTIONS(4632), [sym_abstract] = ACTIONS(4632), [sym_alias] = ACTIONS(4632), [sym_align] = ACTIONS(4632), [sym_asm] = ACTIONS(4632), [sym_assert] = ACTIONS(4632), [sym_auto] = ACTIONS(4632), [sym_break] = ACTIONS(4632), [sym_case] = ACTIONS(4632), [sym_cast] = ACTIONS(4632), [sym_class] = ACTIONS(4632), [sym_const] = ACTIONS(4632), [sym_continue] = ACTIONS(4632), [sym_debug] = ACTIONS(4632), [sym_default] = ACTIONS(4632), [sym_delegate] = ACTIONS(4632), [sym_delete] = ACTIONS(4632), [sym_deprecated] = ACTIONS(4632), [sym_do] = ACTIONS(4632), [sym_else] = ACTIONS(4632), [sym_enum] = ACTIONS(4632), [sym_export] = ACTIONS(4632), [sym_extern] = ACTIONS(4632), [sym_final] = ACTIONS(4632), [sym_for] = ACTIONS(4632), [sym_foreach] = ACTIONS(4632), [sym_foreach_reverse] = ACTIONS(4632), [sym_function] = ACTIONS(4632), [sym_goto] = ACTIONS(4632), [sym_if] = ACTIONS(4632), [sym_immutable] = ACTIONS(4632), [sym_import] = ACTIONS(4632), [sym_in] = ACTIONS(4632), [sym_inout] = ACTIONS(4632), [sym_interface] = ACTIONS(4632), [sym_invariant] = ACTIONS(4632), [sym_is] = ACTIONS(4632), [sym_mixin] = ACTIONS(4632), [sym_new] = ACTIONS(4632), [sym_nothrow] = ACTIONS(4632), [sym_out] = ACTIONS(4632), [sym_override] = ACTIONS(4632), [sym_package] = ACTIONS(4632), [sym_pragma] = ACTIONS(4632), [sym_private] = ACTIONS(4632), [sym_protected] = ACTIONS(4632), [sym_public] = ACTIONS(4632), [sym_pure] = ACTIONS(4632), [sym_ref] = ACTIONS(4632), [sym_return] = ACTIONS(4632), [sym_scope] = ACTIONS(4632), [sym_shared] = ACTIONS(4632), [sym_static] = ACTIONS(4632), [sym_struct] = ACTIONS(4632), [sym_switch] = ACTIONS(4632), [sym_synchronized] = ACTIONS(4632), [sym_template] = ACTIONS(4632), [sym_throw] = ACTIONS(4632), [sym_try] = ACTIONS(4632), [sym_typeid] = ACTIONS(4632), [sym_typeof] = ACTIONS(4632), [sym_union] = ACTIONS(4632), [sym_unittest] = ACTIONS(4632), [sym_version] = ACTIONS(4632), [sym_while] = ACTIONS(4632), [sym_with] = ACTIONS(4632), [sym_gshared] = ACTIONS(4632), [sym_traits] = ACTIONS(4632), [sym_vector] = ACTIONS(4632), [sym_void] = ACTIONS(4632), [anon_sym_BQUOTE] = ACTIONS(4634), [anon_sym_r_DQUOTE] = ACTIONS(4634), [anon_sym_x_DQUOTE] = ACTIONS(4634), [anon_sym_DQUOTE] = ACTIONS(4634), [anon_sym_i_BQUOTE] = ACTIONS(4634), [anon_sym_i_DQUOTE] = ACTIONS(4634), [anon_sym_iq_LBRACE] = ACTIONS(4634), [aux_sym_char_literal_token1] = ACTIONS(4634), [anon_sym_SQUOTE] = ACTIONS(4632), [anon_sym___DATE__] = ACTIONS(4632), [anon_sym___FILE__] = ACTIONS(4632), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4632), [anon_sym___FUNCTION__] = ACTIONS(4632), [anon_sym___LINE__] = ACTIONS(4632), [anon_sym___MODULE__] = ACTIONS(4632), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4632), [anon_sym___TIME__] = ACTIONS(4632), [anon_sym___TIMESTAMP__] = ACTIONS(4632), [anon_sym___VENDOR__] = ACTIONS(4632), [anon_sym___VERSION__] = ACTIONS(4632), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4634), [sym_float_literal] = ACTIONS(4634), [sym__string] = ACTIONS(4634), }, [1726] = { [sym_identifier] = ACTIONS(5064), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5066), [anon_sym_RBRACE] = ACTIONS(5066), [anon_sym_LBRACE] = ACTIONS(5066), [anon_sym_DOT] = ACTIONS(5066), [anon_sym_AMP] = ACTIONS(5066), [anon_sym_DASH] = ACTIONS(5064), [anon_sym_DASH_DASH] = ACTIONS(5066), [anon_sym_PLUS] = ACTIONS(5064), [anon_sym_PLUS_PLUS] = ACTIONS(5066), [anon_sym_BANG] = ACTIONS(5066), [anon_sym_LPAREN] = ACTIONS(5066), [anon_sym_RPAREN] = ACTIONS(5066), [anon_sym_LBRACK] = ACTIONS(5066), [anon_sym_SEMI] = ACTIONS(5066), [anon_sym_DOLLAR] = ACTIONS(5066), [anon_sym_STAR] = ACTIONS(5066), [anon_sym_TILDE] = ACTIONS(5066), [anon_sym_AT] = ACTIONS(5066), [sym_bool] = ACTIONS(5064), [sym_byte] = ACTIONS(5064), [sym_ubyte] = ACTIONS(5064), [sym_char] = ACTIONS(5064), [sym_short] = ACTIONS(5064), [sym_ushort] = ACTIONS(5064), [sym_int] = ACTIONS(5064), [sym_uint] = ACTIONS(5064), [sym_long] = ACTIONS(5064), [sym_ulong] = ACTIONS(5064), [sym_cent] = ACTIONS(5064), [sym_ucent] = ACTIONS(5064), [sym_wchar] = ACTIONS(5064), [sym_dchar] = ACTIONS(5064), [sym_float] = ACTIONS(5064), [sym_double] = ACTIONS(5064), [sym_real] = ACTIONS(5064), [sym_ifloat] = ACTIONS(5064), [sym_idouble] = ACTIONS(5064), [sym_ireal] = ACTIONS(5064), [sym_cfloat] = ACTIONS(5064), [sym_cdouble] = ACTIONS(5064), [sym_creal] = ACTIONS(5064), [sym_size_t] = ACTIONS(5064), [sym_ptrdiff_t] = ACTIONS(5064), [sym_string] = ACTIONS(5064), [sym_cstring] = ACTIONS(5064), [sym_dstring] = ACTIONS(5064), [sym_wstring] = ACTIONS(5064), [sym_noreturn] = ACTIONS(5064), [sym_true] = ACTIONS(5064), [sym_false] = ACTIONS(5064), [sym_null] = ACTIONS(5064), [sym_super] = ACTIONS(5064), [sym_this] = ACTIONS(5064), [sym_abstract] = ACTIONS(5064), [sym_alias] = ACTIONS(5064), [sym_align] = ACTIONS(5064), [sym_asm] = ACTIONS(5064), [sym_assert] = ACTIONS(5064), [sym_auto] = ACTIONS(5064), [sym_break] = ACTIONS(5064), [sym_case] = ACTIONS(5064), [sym_cast] = ACTIONS(5064), [sym_class] = ACTIONS(5064), [sym_const] = ACTIONS(5064), [sym_continue] = ACTIONS(5064), [sym_debug] = ACTIONS(5064), [sym_default] = ACTIONS(5064), [sym_delegate] = ACTIONS(5064), [sym_delete] = ACTIONS(5064), [sym_deprecated] = ACTIONS(5064), [sym_do] = ACTIONS(5064), [sym_else] = ACTIONS(5064), [sym_enum] = ACTIONS(5064), [sym_export] = ACTIONS(5064), [sym_extern] = ACTIONS(5064), [sym_final] = ACTIONS(5064), [sym_for] = ACTIONS(5064), [sym_foreach] = ACTIONS(5064), [sym_foreach_reverse] = ACTIONS(5064), [sym_function] = ACTIONS(5064), [sym_goto] = ACTIONS(5064), [sym_if] = ACTIONS(5064), [sym_immutable] = ACTIONS(5064), [sym_import] = ACTIONS(5064), [sym_in] = ACTIONS(5064), [sym_inout] = ACTIONS(5064), [sym_interface] = ACTIONS(5064), [sym_invariant] = ACTIONS(5064), [sym_is] = ACTIONS(5064), [sym_mixin] = ACTIONS(5064), [sym_new] = ACTIONS(5064), [sym_nothrow] = ACTIONS(5064), [sym_out] = ACTIONS(5064), [sym_override] = ACTIONS(5064), [sym_package] = ACTIONS(5064), [sym_pragma] = ACTIONS(5064), [sym_private] = ACTIONS(5064), [sym_protected] = ACTIONS(5064), [sym_public] = ACTIONS(5064), [sym_pure] = ACTIONS(5064), [sym_ref] = ACTIONS(5064), [sym_return] = ACTIONS(5064), [sym_scope] = ACTIONS(5064), [sym_shared] = ACTIONS(5064), [sym_static] = ACTIONS(5064), [sym_struct] = ACTIONS(5064), [sym_switch] = ACTIONS(5064), [sym_synchronized] = ACTIONS(5064), [sym_template] = ACTIONS(5064), [sym_throw] = ACTIONS(5064), [sym_try] = ACTIONS(5064), [sym_typeid] = ACTIONS(5064), [sym_typeof] = ACTIONS(5064), [sym_union] = ACTIONS(5064), [sym_unittest] = ACTIONS(5064), [sym_version] = ACTIONS(5064), [sym_while] = ACTIONS(5064), [sym_with] = ACTIONS(5064), [sym_gshared] = ACTIONS(5064), [sym_traits] = ACTIONS(5064), [sym_vector] = ACTIONS(5064), [sym_void] = ACTIONS(5064), [anon_sym_BQUOTE] = ACTIONS(5066), [anon_sym_r_DQUOTE] = ACTIONS(5066), [anon_sym_x_DQUOTE] = ACTIONS(5066), [anon_sym_DQUOTE] = ACTIONS(5066), [anon_sym_i_BQUOTE] = ACTIONS(5066), [anon_sym_i_DQUOTE] = ACTIONS(5066), [anon_sym_iq_LBRACE] = ACTIONS(5066), [aux_sym_char_literal_token1] = ACTIONS(5066), [anon_sym_SQUOTE] = ACTIONS(5064), [anon_sym___DATE__] = ACTIONS(5064), [anon_sym___FILE__] = ACTIONS(5064), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5064), [anon_sym___FUNCTION__] = ACTIONS(5064), [anon_sym___LINE__] = ACTIONS(5064), [anon_sym___MODULE__] = ACTIONS(5064), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5064), [anon_sym___TIME__] = ACTIONS(5064), [anon_sym___TIMESTAMP__] = ACTIONS(5064), [anon_sym___VENDOR__] = ACTIONS(5064), [anon_sym___VERSION__] = ACTIONS(5064), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5066), [sym_float_literal] = ACTIONS(5066), [sym__string] = ACTIONS(5066), }, [1727] = { [sym_identifier] = ACTIONS(4628), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4630), [anon_sym_RBRACE] = ACTIONS(4630), [anon_sym_LBRACE] = ACTIONS(4630), [anon_sym_DOT] = ACTIONS(4630), [anon_sym_AMP] = ACTIONS(4630), [anon_sym_DASH] = ACTIONS(4628), [anon_sym_DASH_DASH] = ACTIONS(4630), [anon_sym_PLUS] = ACTIONS(4628), [anon_sym_PLUS_PLUS] = ACTIONS(4630), [anon_sym_BANG] = ACTIONS(4630), [anon_sym_LPAREN] = ACTIONS(4630), [anon_sym_RPAREN] = ACTIONS(4630), [anon_sym_LBRACK] = ACTIONS(4630), [anon_sym_SEMI] = ACTIONS(4630), [anon_sym_DOLLAR] = ACTIONS(4630), [anon_sym_STAR] = ACTIONS(4630), [anon_sym_TILDE] = ACTIONS(4630), [anon_sym_AT] = ACTIONS(4630), [sym_bool] = ACTIONS(4628), [sym_byte] = ACTIONS(4628), [sym_ubyte] = ACTIONS(4628), [sym_char] = ACTIONS(4628), [sym_short] = ACTIONS(4628), [sym_ushort] = ACTIONS(4628), [sym_int] = ACTIONS(4628), [sym_uint] = ACTIONS(4628), [sym_long] = ACTIONS(4628), [sym_ulong] = ACTIONS(4628), [sym_cent] = ACTIONS(4628), [sym_ucent] = ACTIONS(4628), [sym_wchar] = ACTIONS(4628), [sym_dchar] = ACTIONS(4628), [sym_float] = ACTIONS(4628), [sym_double] = ACTIONS(4628), [sym_real] = ACTIONS(4628), [sym_ifloat] = ACTIONS(4628), [sym_idouble] = ACTIONS(4628), [sym_ireal] = ACTIONS(4628), [sym_cfloat] = ACTIONS(4628), [sym_cdouble] = ACTIONS(4628), [sym_creal] = ACTIONS(4628), [sym_size_t] = ACTIONS(4628), [sym_ptrdiff_t] = ACTIONS(4628), [sym_string] = ACTIONS(4628), [sym_cstring] = ACTIONS(4628), [sym_dstring] = ACTIONS(4628), [sym_wstring] = ACTIONS(4628), [sym_noreturn] = ACTIONS(4628), [sym_true] = ACTIONS(4628), [sym_false] = ACTIONS(4628), [sym_null] = ACTIONS(4628), [sym_super] = ACTIONS(4628), [sym_this] = ACTIONS(4628), [sym_abstract] = ACTIONS(4628), [sym_alias] = ACTIONS(4628), [sym_align] = ACTIONS(4628), [sym_asm] = ACTIONS(4628), [sym_assert] = ACTIONS(4628), [sym_auto] = ACTIONS(4628), [sym_break] = ACTIONS(4628), [sym_case] = ACTIONS(4628), [sym_cast] = ACTIONS(4628), [sym_class] = ACTIONS(4628), [sym_const] = ACTIONS(4628), [sym_continue] = ACTIONS(4628), [sym_debug] = ACTIONS(4628), [sym_default] = ACTIONS(4628), [sym_delegate] = ACTIONS(4628), [sym_delete] = ACTIONS(4628), [sym_deprecated] = ACTIONS(4628), [sym_do] = ACTIONS(4628), [sym_else] = ACTIONS(4628), [sym_enum] = ACTIONS(4628), [sym_export] = ACTIONS(4628), [sym_extern] = ACTIONS(4628), [sym_final] = ACTIONS(4628), [sym_for] = ACTIONS(4628), [sym_foreach] = ACTIONS(4628), [sym_foreach_reverse] = ACTIONS(4628), [sym_function] = ACTIONS(4628), [sym_goto] = ACTIONS(4628), [sym_if] = ACTIONS(4628), [sym_immutable] = ACTIONS(4628), [sym_import] = ACTIONS(4628), [sym_in] = ACTIONS(4628), [sym_inout] = ACTIONS(4628), [sym_interface] = ACTIONS(4628), [sym_invariant] = ACTIONS(4628), [sym_is] = ACTIONS(4628), [sym_mixin] = ACTIONS(4628), [sym_new] = ACTIONS(4628), [sym_nothrow] = ACTIONS(4628), [sym_out] = ACTIONS(4628), [sym_override] = ACTIONS(4628), [sym_package] = ACTIONS(4628), [sym_pragma] = ACTIONS(4628), [sym_private] = ACTIONS(4628), [sym_protected] = ACTIONS(4628), [sym_public] = ACTIONS(4628), [sym_pure] = ACTIONS(4628), [sym_ref] = ACTIONS(4628), [sym_return] = ACTIONS(4628), [sym_scope] = ACTIONS(4628), [sym_shared] = ACTIONS(4628), [sym_static] = ACTIONS(4628), [sym_struct] = ACTIONS(4628), [sym_switch] = ACTIONS(4628), [sym_synchronized] = ACTIONS(4628), [sym_template] = ACTIONS(4628), [sym_throw] = ACTIONS(4628), [sym_try] = ACTIONS(4628), [sym_typeid] = ACTIONS(4628), [sym_typeof] = ACTIONS(4628), [sym_union] = ACTIONS(4628), [sym_unittest] = ACTIONS(4628), [sym_version] = ACTIONS(4628), [sym_while] = ACTIONS(4628), [sym_with] = ACTIONS(4628), [sym_gshared] = ACTIONS(4628), [sym_traits] = ACTIONS(4628), [sym_vector] = ACTIONS(4628), [sym_void] = ACTIONS(4628), [anon_sym_BQUOTE] = ACTIONS(4630), [anon_sym_r_DQUOTE] = ACTIONS(4630), [anon_sym_x_DQUOTE] = ACTIONS(4630), [anon_sym_DQUOTE] = ACTIONS(4630), [anon_sym_i_BQUOTE] = ACTIONS(4630), [anon_sym_i_DQUOTE] = ACTIONS(4630), [anon_sym_iq_LBRACE] = ACTIONS(4630), [aux_sym_char_literal_token1] = ACTIONS(4630), [anon_sym_SQUOTE] = ACTIONS(4628), [anon_sym___DATE__] = ACTIONS(4628), [anon_sym___FILE__] = ACTIONS(4628), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4628), [anon_sym___FUNCTION__] = ACTIONS(4628), [anon_sym___LINE__] = ACTIONS(4628), [anon_sym___MODULE__] = ACTIONS(4628), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4628), [anon_sym___TIME__] = ACTIONS(4628), [anon_sym___TIMESTAMP__] = ACTIONS(4628), [anon_sym___VENDOR__] = ACTIONS(4628), [anon_sym___VERSION__] = ACTIONS(4628), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4630), [sym_float_literal] = ACTIONS(4630), [sym__string] = ACTIONS(4630), }, [1728] = { [sym_identifier] = ACTIONS(4624), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4626), [anon_sym_RBRACE] = ACTIONS(4626), [anon_sym_LBRACE] = ACTIONS(4626), [anon_sym_DOT] = ACTIONS(4626), [anon_sym_AMP] = ACTIONS(4626), [anon_sym_DASH] = ACTIONS(4624), [anon_sym_DASH_DASH] = ACTIONS(4626), [anon_sym_PLUS] = ACTIONS(4624), [anon_sym_PLUS_PLUS] = ACTIONS(4626), [anon_sym_BANG] = ACTIONS(4626), [anon_sym_LPAREN] = ACTIONS(4626), [anon_sym_RPAREN] = ACTIONS(4626), [anon_sym_LBRACK] = ACTIONS(4626), [anon_sym_SEMI] = ACTIONS(4626), [anon_sym_DOLLAR] = ACTIONS(4626), [anon_sym_STAR] = ACTIONS(4626), [anon_sym_TILDE] = ACTIONS(4626), [anon_sym_AT] = ACTIONS(4626), [sym_bool] = ACTIONS(4624), [sym_byte] = ACTIONS(4624), [sym_ubyte] = ACTIONS(4624), [sym_char] = ACTIONS(4624), [sym_short] = ACTIONS(4624), [sym_ushort] = ACTIONS(4624), [sym_int] = ACTIONS(4624), [sym_uint] = ACTIONS(4624), [sym_long] = ACTIONS(4624), [sym_ulong] = ACTIONS(4624), [sym_cent] = ACTIONS(4624), [sym_ucent] = ACTIONS(4624), [sym_wchar] = ACTIONS(4624), [sym_dchar] = ACTIONS(4624), [sym_float] = ACTIONS(4624), [sym_double] = ACTIONS(4624), [sym_real] = ACTIONS(4624), [sym_ifloat] = ACTIONS(4624), [sym_idouble] = ACTIONS(4624), [sym_ireal] = ACTIONS(4624), [sym_cfloat] = ACTIONS(4624), [sym_cdouble] = ACTIONS(4624), [sym_creal] = ACTIONS(4624), [sym_size_t] = ACTIONS(4624), [sym_ptrdiff_t] = ACTIONS(4624), [sym_string] = ACTIONS(4624), [sym_cstring] = ACTIONS(4624), [sym_dstring] = ACTIONS(4624), [sym_wstring] = ACTIONS(4624), [sym_noreturn] = ACTIONS(4624), [sym_true] = ACTIONS(4624), [sym_false] = ACTIONS(4624), [sym_null] = ACTIONS(4624), [sym_super] = ACTIONS(4624), [sym_this] = ACTIONS(4624), [sym_abstract] = ACTIONS(4624), [sym_alias] = ACTIONS(4624), [sym_align] = ACTIONS(4624), [sym_asm] = ACTIONS(4624), [sym_assert] = ACTIONS(4624), [sym_auto] = ACTIONS(4624), [sym_break] = ACTIONS(4624), [sym_case] = ACTIONS(4624), [sym_cast] = ACTIONS(4624), [sym_class] = ACTIONS(4624), [sym_const] = ACTIONS(4624), [sym_continue] = ACTIONS(4624), [sym_debug] = ACTIONS(4624), [sym_default] = ACTIONS(4624), [sym_delegate] = ACTIONS(4624), [sym_delete] = ACTIONS(4624), [sym_deprecated] = ACTIONS(4624), [sym_do] = ACTIONS(4624), [sym_else] = ACTIONS(4624), [sym_enum] = ACTIONS(4624), [sym_export] = ACTIONS(4624), [sym_extern] = ACTIONS(4624), [sym_final] = ACTIONS(4624), [sym_for] = ACTIONS(4624), [sym_foreach] = ACTIONS(4624), [sym_foreach_reverse] = ACTIONS(4624), [sym_function] = ACTIONS(4624), [sym_goto] = ACTIONS(4624), [sym_if] = ACTIONS(4624), [sym_immutable] = ACTIONS(4624), [sym_import] = ACTIONS(4624), [sym_in] = ACTIONS(4624), [sym_inout] = ACTIONS(4624), [sym_interface] = ACTIONS(4624), [sym_invariant] = ACTIONS(4624), [sym_is] = ACTIONS(4624), [sym_mixin] = ACTIONS(4624), [sym_new] = ACTIONS(4624), [sym_nothrow] = ACTIONS(4624), [sym_out] = ACTIONS(4624), [sym_override] = ACTIONS(4624), [sym_package] = ACTIONS(4624), [sym_pragma] = ACTIONS(4624), [sym_private] = ACTIONS(4624), [sym_protected] = ACTIONS(4624), [sym_public] = ACTIONS(4624), [sym_pure] = ACTIONS(4624), [sym_ref] = ACTIONS(4624), [sym_return] = ACTIONS(4624), [sym_scope] = ACTIONS(4624), [sym_shared] = ACTIONS(4624), [sym_static] = ACTIONS(4624), [sym_struct] = ACTIONS(4624), [sym_switch] = ACTIONS(4624), [sym_synchronized] = ACTIONS(4624), [sym_template] = ACTIONS(4624), [sym_throw] = ACTIONS(4624), [sym_try] = ACTIONS(4624), [sym_typeid] = ACTIONS(4624), [sym_typeof] = ACTIONS(4624), [sym_union] = ACTIONS(4624), [sym_unittest] = ACTIONS(4624), [sym_version] = ACTIONS(4624), [sym_while] = ACTIONS(4624), [sym_with] = ACTIONS(4624), [sym_gshared] = ACTIONS(4624), [sym_traits] = ACTIONS(4624), [sym_vector] = ACTIONS(4624), [sym_void] = ACTIONS(4624), [anon_sym_BQUOTE] = ACTIONS(4626), [anon_sym_r_DQUOTE] = ACTIONS(4626), [anon_sym_x_DQUOTE] = ACTIONS(4626), [anon_sym_DQUOTE] = ACTIONS(4626), [anon_sym_i_BQUOTE] = ACTIONS(4626), [anon_sym_i_DQUOTE] = ACTIONS(4626), [anon_sym_iq_LBRACE] = ACTIONS(4626), [aux_sym_char_literal_token1] = ACTIONS(4626), [anon_sym_SQUOTE] = ACTIONS(4624), [anon_sym___DATE__] = ACTIONS(4624), [anon_sym___FILE__] = ACTIONS(4624), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4624), [anon_sym___FUNCTION__] = ACTIONS(4624), [anon_sym___LINE__] = ACTIONS(4624), [anon_sym___MODULE__] = ACTIONS(4624), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4624), [anon_sym___TIME__] = ACTIONS(4624), [anon_sym___TIMESTAMP__] = ACTIONS(4624), [anon_sym___VENDOR__] = ACTIONS(4624), [anon_sym___VERSION__] = ACTIONS(4624), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4626), [sym_float_literal] = ACTIONS(4626), [sym__string] = ACTIONS(4626), }, [1729] = { [sym_identifier] = ACTIONS(4996), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4998), [anon_sym_RBRACE] = ACTIONS(4998), [anon_sym_LBRACE] = ACTIONS(4998), [anon_sym_DOT] = ACTIONS(4998), [anon_sym_AMP] = ACTIONS(4998), [anon_sym_DASH] = ACTIONS(4996), [anon_sym_DASH_DASH] = ACTIONS(4998), [anon_sym_PLUS] = ACTIONS(4996), [anon_sym_PLUS_PLUS] = ACTIONS(4998), [anon_sym_BANG] = ACTIONS(4998), [anon_sym_LPAREN] = ACTIONS(4998), [anon_sym_RPAREN] = ACTIONS(4998), [anon_sym_LBRACK] = ACTIONS(4998), [anon_sym_SEMI] = ACTIONS(4998), [anon_sym_DOLLAR] = ACTIONS(4998), [anon_sym_STAR] = ACTIONS(4998), [anon_sym_TILDE] = ACTIONS(4998), [anon_sym_AT] = ACTIONS(4998), [sym_bool] = ACTIONS(4996), [sym_byte] = ACTIONS(4996), [sym_ubyte] = ACTIONS(4996), [sym_char] = ACTIONS(4996), [sym_short] = ACTIONS(4996), [sym_ushort] = ACTIONS(4996), [sym_int] = ACTIONS(4996), [sym_uint] = ACTIONS(4996), [sym_long] = ACTIONS(4996), [sym_ulong] = ACTIONS(4996), [sym_cent] = ACTIONS(4996), [sym_ucent] = ACTIONS(4996), [sym_wchar] = ACTIONS(4996), [sym_dchar] = ACTIONS(4996), [sym_float] = ACTIONS(4996), [sym_double] = ACTIONS(4996), [sym_real] = ACTIONS(4996), [sym_ifloat] = ACTIONS(4996), [sym_idouble] = ACTIONS(4996), [sym_ireal] = ACTIONS(4996), [sym_cfloat] = ACTIONS(4996), [sym_cdouble] = ACTIONS(4996), [sym_creal] = ACTIONS(4996), [sym_size_t] = ACTIONS(4996), [sym_ptrdiff_t] = ACTIONS(4996), [sym_string] = ACTIONS(4996), [sym_cstring] = ACTIONS(4996), [sym_dstring] = ACTIONS(4996), [sym_wstring] = ACTIONS(4996), [sym_noreturn] = ACTIONS(4996), [sym_true] = ACTIONS(4996), [sym_false] = ACTIONS(4996), [sym_null] = ACTIONS(4996), [sym_super] = ACTIONS(4996), [sym_this] = ACTIONS(4996), [sym_abstract] = ACTIONS(4996), [sym_alias] = ACTIONS(4996), [sym_align] = ACTIONS(4996), [sym_asm] = ACTIONS(4996), [sym_assert] = ACTIONS(4996), [sym_auto] = ACTIONS(4996), [sym_break] = ACTIONS(4996), [sym_case] = ACTIONS(4996), [sym_cast] = ACTIONS(4996), [sym_class] = ACTIONS(4996), [sym_const] = ACTIONS(4996), [sym_continue] = ACTIONS(4996), [sym_debug] = ACTIONS(4996), [sym_default] = ACTIONS(4996), [sym_delegate] = ACTIONS(4996), [sym_delete] = ACTIONS(4996), [sym_deprecated] = ACTIONS(4996), [sym_do] = ACTIONS(4996), [sym_else] = ACTIONS(4996), [sym_enum] = ACTIONS(4996), [sym_export] = ACTIONS(4996), [sym_extern] = ACTIONS(4996), [sym_final] = ACTIONS(4996), [sym_for] = ACTIONS(4996), [sym_foreach] = ACTIONS(4996), [sym_foreach_reverse] = ACTIONS(4996), [sym_function] = ACTIONS(4996), [sym_goto] = ACTIONS(4996), [sym_if] = ACTIONS(4996), [sym_immutable] = ACTIONS(4996), [sym_import] = ACTIONS(4996), [sym_in] = ACTIONS(4996), [sym_inout] = ACTIONS(4996), [sym_interface] = ACTIONS(4996), [sym_invariant] = ACTIONS(4996), [sym_is] = ACTIONS(4996), [sym_mixin] = ACTIONS(4996), [sym_new] = ACTIONS(4996), [sym_nothrow] = ACTIONS(4996), [sym_out] = ACTIONS(4996), [sym_override] = ACTIONS(4996), [sym_package] = ACTIONS(4996), [sym_pragma] = ACTIONS(4996), [sym_private] = ACTIONS(4996), [sym_protected] = ACTIONS(4996), [sym_public] = ACTIONS(4996), [sym_pure] = ACTIONS(4996), [sym_ref] = ACTIONS(4996), [sym_return] = ACTIONS(4996), [sym_scope] = ACTIONS(4996), [sym_shared] = ACTIONS(4996), [sym_static] = ACTIONS(4996), [sym_struct] = ACTIONS(4996), [sym_switch] = ACTIONS(4996), [sym_synchronized] = ACTIONS(4996), [sym_template] = ACTIONS(4996), [sym_throw] = ACTIONS(4996), [sym_try] = ACTIONS(4996), [sym_typeid] = ACTIONS(4996), [sym_typeof] = ACTIONS(4996), [sym_union] = ACTIONS(4996), [sym_unittest] = ACTIONS(4996), [sym_version] = ACTIONS(4996), [sym_while] = ACTIONS(4996), [sym_with] = ACTIONS(4996), [sym_gshared] = ACTIONS(4996), [sym_traits] = ACTIONS(4996), [sym_vector] = ACTIONS(4996), [sym_void] = ACTIONS(4996), [anon_sym_BQUOTE] = ACTIONS(4998), [anon_sym_r_DQUOTE] = ACTIONS(4998), [anon_sym_x_DQUOTE] = ACTIONS(4998), [anon_sym_DQUOTE] = ACTIONS(4998), [anon_sym_i_BQUOTE] = ACTIONS(4998), [anon_sym_i_DQUOTE] = ACTIONS(4998), [anon_sym_iq_LBRACE] = ACTIONS(4998), [aux_sym_char_literal_token1] = ACTIONS(4998), [anon_sym_SQUOTE] = ACTIONS(4996), [anon_sym___DATE__] = ACTIONS(4996), [anon_sym___FILE__] = ACTIONS(4996), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4996), [anon_sym___FUNCTION__] = ACTIONS(4996), [anon_sym___LINE__] = ACTIONS(4996), [anon_sym___MODULE__] = ACTIONS(4996), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4996), [anon_sym___TIME__] = ACTIONS(4996), [anon_sym___TIMESTAMP__] = ACTIONS(4996), [anon_sym___VENDOR__] = ACTIONS(4996), [anon_sym___VERSION__] = ACTIONS(4996), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4998), [sym_float_literal] = ACTIONS(4998), [sym__string] = ACTIONS(4998), }, [1730] = { [sym_identifier] = ACTIONS(5000), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5002), [anon_sym_RBRACE] = ACTIONS(5002), [anon_sym_LBRACE] = ACTIONS(5002), [anon_sym_DOT] = ACTIONS(5002), [anon_sym_AMP] = ACTIONS(5002), [anon_sym_DASH] = ACTIONS(5000), [anon_sym_DASH_DASH] = ACTIONS(5002), [anon_sym_PLUS] = ACTIONS(5000), [anon_sym_PLUS_PLUS] = ACTIONS(5002), [anon_sym_BANG] = ACTIONS(5002), [anon_sym_LPAREN] = ACTIONS(5002), [anon_sym_RPAREN] = ACTIONS(5002), [anon_sym_LBRACK] = ACTIONS(5002), [anon_sym_SEMI] = ACTIONS(5002), [anon_sym_DOLLAR] = ACTIONS(5002), [anon_sym_STAR] = ACTIONS(5002), [anon_sym_TILDE] = ACTIONS(5002), [anon_sym_AT] = ACTIONS(5002), [sym_bool] = ACTIONS(5000), [sym_byte] = ACTIONS(5000), [sym_ubyte] = ACTIONS(5000), [sym_char] = ACTIONS(5000), [sym_short] = ACTIONS(5000), [sym_ushort] = ACTIONS(5000), [sym_int] = ACTIONS(5000), [sym_uint] = ACTIONS(5000), [sym_long] = ACTIONS(5000), [sym_ulong] = ACTIONS(5000), [sym_cent] = ACTIONS(5000), [sym_ucent] = ACTIONS(5000), [sym_wchar] = ACTIONS(5000), [sym_dchar] = ACTIONS(5000), [sym_float] = ACTIONS(5000), [sym_double] = ACTIONS(5000), [sym_real] = ACTIONS(5000), [sym_ifloat] = ACTIONS(5000), [sym_idouble] = ACTIONS(5000), [sym_ireal] = ACTIONS(5000), [sym_cfloat] = ACTIONS(5000), [sym_cdouble] = ACTIONS(5000), [sym_creal] = ACTIONS(5000), [sym_size_t] = ACTIONS(5000), [sym_ptrdiff_t] = ACTIONS(5000), [sym_string] = ACTIONS(5000), [sym_cstring] = ACTIONS(5000), [sym_dstring] = ACTIONS(5000), [sym_wstring] = ACTIONS(5000), [sym_noreturn] = ACTIONS(5000), [sym_true] = ACTIONS(5000), [sym_false] = ACTIONS(5000), [sym_null] = ACTIONS(5000), [sym_super] = ACTIONS(5000), [sym_this] = ACTIONS(5000), [sym_abstract] = ACTIONS(5000), [sym_alias] = ACTIONS(5000), [sym_align] = ACTIONS(5000), [sym_asm] = ACTIONS(5000), [sym_assert] = ACTIONS(5000), [sym_auto] = ACTIONS(5000), [sym_break] = ACTIONS(5000), [sym_case] = ACTIONS(5000), [sym_cast] = ACTIONS(5000), [sym_class] = ACTIONS(5000), [sym_const] = ACTIONS(5000), [sym_continue] = ACTIONS(5000), [sym_debug] = ACTIONS(5000), [sym_default] = ACTIONS(5000), [sym_delegate] = ACTIONS(5000), [sym_delete] = ACTIONS(5000), [sym_deprecated] = ACTIONS(5000), [sym_do] = ACTIONS(5000), [sym_else] = ACTIONS(5000), [sym_enum] = ACTIONS(5000), [sym_export] = ACTIONS(5000), [sym_extern] = ACTIONS(5000), [sym_final] = ACTIONS(5000), [sym_for] = ACTIONS(5000), [sym_foreach] = ACTIONS(5000), [sym_foreach_reverse] = ACTIONS(5000), [sym_function] = ACTIONS(5000), [sym_goto] = ACTIONS(5000), [sym_if] = ACTIONS(5000), [sym_immutable] = ACTIONS(5000), [sym_import] = ACTIONS(5000), [sym_in] = ACTIONS(5000), [sym_inout] = ACTIONS(5000), [sym_interface] = ACTIONS(5000), [sym_invariant] = ACTIONS(5000), [sym_is] = ACTIONS(5000), [sym_mixin] = ACTIONS(5000), [sym_new] = ACTIONS(5000), [sym_nothrow] = ACTIONS(5000), [sym_out] = ACTIONS(5000), [sym_override] = ACTIONS(5000), [sym_package] = ACTIONS(5000), [sym_pragma] = ACTIONS(5000), [sym_private] = ACTIONS(5000), [sym_protected] = ACTIONS(5000), [sym_public] = ACTIONS(5000), [sym_pure] = ACTIONS(5000), [sym_ref] = ACTIONS(5000), [sym_return] = ACTIONS(5000), [sym_scope] = ACTIONS(5000), [sym_shared] = ACTIONS(5000), [sym_static] = ACTIONS(5000), [sym_struct] = ACTIONS(5000), [sym_switch] = ACTIONS(5000), [sym_synchronized] = ACTIONS(5000), [sym_template] = ACTIONS(5000), [sym_throw] = ACTIONS(5000), [sym_try] = ACTIONS(5000), [sym_typeid] = ACTIONS(5000), [sym_typeof] = ACTIONS(5000), [sym_union] = ACTIONS(5000), [sym_unittest] = ACTIONS(5000), [sym_version] = ACTIONS(5000), [sym_while] = ACTIONS(5000), [sym_with] = ACTIONS(5000), [sym_gshared] = ACTIONS(5000), [sym_traits] = ACTIONS(5000), [sym_vector] = ACTIONS(5000), [sym_void] = ACTIONS(5000), [anon_sym_BQUOTE] = ACTIONS(5002), [anon_sym_r_DQUOTE] = ACTIONS(5002), [anon_sym_x_DQUOTE] = ACTIONS(5002), [anon_sym_DQUOTE] = ACTIONS(5002), [anon_sym_i_BQUOTE] = ACTIONS(5002), [anon_sym_i_DQUOTE] = ACTIONS(5002), [anon_sym_iq_LBRACE] = ACTIONS(5002), [aux_sym_char_literal_token1] = ACTIONS(5002), [anon_sym_SQUOTE] = ACTIONS(5000), [anon_sym___DATE__] = ACTIONS(5000), [anon_sym___FILE__] = ACTIONS(5000), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5000), [anon_sym___FUNCTION__] = ACTIONS(5000), [anon_sym___LINE__] = ACTIONS(5000), [anon_sym___MODULE__] = ACTIONS(5000), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5000), [anon_sym___TIME__] = ACTIONS(5000), [anon_sym___TIMESTAMP__] = ACTIONS(5000), [anon_sym___VENDOR__] = ACTIONS(5000), [anon_sym___VERSION__] = ACTIONS(5000), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5002), [sym_float_literal] = ACTIONS(5002), [sym__string] = ACTIONS(5002), }, [1731] = { [sym_identifier] = ACTIONS(5060), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5062), [anon_sym_RBRACE] = ACTIONS(5062), [anon_sym_LBRACE] = ACTIONS(5062), [anon_sym_DOT] = ACTIONS(5062), [anon_sym_AMP] = ACTIONS(5062), [anon_sym_DASH] = ACTIONS(5060), [anon_sym_DASH_DASH] = ACTIONS(5062), [anon_sym_PLUS] = ACTIONS(5060), [anon_sym_PLUS_PLUS] = ACTIONS(5062), [anon_sym_BANG] = ACTIONS(5062), [anon_sym_LPAREN] = ACTIONS(5062), [anon_sym_RPAREN] = ACTIONS(5062), [anon_sym_LBRACK] = ACTIONS(5062), [anon_sym_SEMI] = ACTIONS(5062), [anon_sym_DOLLAR] = ACTIONS(5062), [anon_sym_STAR] = ACTIONS(5062), [anon_sym_TILDE] = ACTIONS(5062), [anon_sym_AT] = ACTIONS(5062), [sym_bool] = ACTIONS(5060), [sym_byte] = ACTIONS(5060), [sym_ubyte] = ACTIONS(5060), [sym_char] = ACTIONS(5060), [sym_short] = ACTIONS(5060), [sym_ushort] = ACTIONS(5060), [sym_int] = ACTIONS(5060), [sym_uint] = ACTIONS(5060), [sym_long] = ACTIONS(5060), [sym_ulong] = ACTIONS(5060), [sym_cent] = ACTIONS(5060), [sym_ucent] = ACTIONS(5060), [sym_wchar] = ACTIONS(5060), [sym_dchar] = ACTIONS(5060), [sym_float] = ACTIONS(5060), [sym_double] = ACTIONS(5060), [sym_real] = ACTIONS(5060), [sym_ifloat] = ACTIONS(5060), [sym_idouble] = ACTIONS(5060), [sym_ireal] = ACTIONS(5060), [sym_cfloat] = ACTIONS(5060), [sym_cdouble] = ACTIONS(5060), [sym_creal] = ACTIONS(5060), [sym_size_t] = ACTIONS(5060), [sym_ptrdiff_t] = ACTIONS(5060), [sym_string] = ACTIONS(5060), [sym_cstring] = ACTIONS(5060), [sym_dstring] = ACTIONS(5060), [sym_wstring] = ACTIONS(5060), [sym_noreturn] = ACTIONS(5060), [sym_true] = ACTIONS(5060), [sym_false] = ACTIONS(5060), [sym_null] = ACTIONS(5060), [sym_super] = ACTIONS(5060), [sym_this] = ACTIONS(5060), [sym_abstract] = ACTIONS(5060), [sym_alias] = ACTIONS(5060), [sym_align] = ACTIONS(5060), [sym_asm] = ACTIONS(5060), [sym_assert] = ACTIONS(5060), [sym_auto] = ACTIONS(5060), [sym_break] = ACTIONS(5060), [sym_case] = ACTIONS(5060), [sym_cast] = ACTIONS(5060), [sym_class] = ACTIONS(5060), [sym_const] = ACTIONS(5060), [sym_continue] = ACTIONS(5060), [sym_debug] = ACTIONS(5060), [sym_default] = ACTIONS(5060), [sym_delegate] = ACTIONS(5060), [sym_delete] = ACTIONS(5060), [sym_deprecated] = ACTIONS(5060), [sym_do] = ACTIONS(5060), [sym_else] = ACTIONS(5060), [sym_enum] = ACTIONS(5060), [sym_export] = ACTIONS(5060), [sym_extern] = ACTIONS(5060), [sym_final] = ACTIONS(5060), [sym_for] = ACTIONS(5060), [sym_foreach] = ACTIONS(5060), [sym_foreach_reverse] = ACTIONS(5060), [sym_function] = ACTIONS(5060), [sym_goto] = ACTIONS(5060), [sym_if] = ACTIONS(5060), [sym_immutable] = ACTIONS(5060), [sym_import] = ACTIONS(5060), [sym_in] = ACTIONS(5060), [sym_inout] = ACTIONS(5060), [sym_interface] = ACTIONS(5060), [sym_invariant] = ACTIONS(5060), [sym_is] = ACTIONS(5060), [sym_mixin] = ACTIONS(5060), [sym_new] = ACTIONS(5060), [sym_nothrow] = ACTIONS(5060), [sym_out] = ACTIONS(5060), [sym_override] = ACTIONS(5060), [sym_package] = ACTIONS(5060), [sym_pragma] = ACTIONS(5060), [sym_private] = ACTIONS(5060), [sym_protected] = ACTIONS(5060), [sym_public] = ACTIONS(5060), [sym_pure] = ACTIONS(5060), [sym_ref] = ACTIONS(5060), [sym_return] = ACTIONS(5060), [sym_scope] = ACTIONS(5060), [sym_shared] = ACTIONS(5060), [sym_static] = ACTIONS(5060), [sym_struct] = ACTIONS(5060), [sym_switch] = ACTIONS(5060), [sym_synchronized] = ACTIONS(5060), [sym_template] = ACTIONS(5060), [sym_throw] = ACTIONS(5060), [sym_try] = ACTIONS(5060), [sym_typeid] = ACTIONS(5060), [sym_typeof] = ACTIONS(5060), [sym_union] = ACTIONS(5060), [sym_unittest] = ACTIONS(5060), [sym_version] = ACTIONS(5060), [sym_while] = ACTIONS(5060), [sym_with] = ACTIONS(5060), [sym_gshared] = ACTIONS(5060), [sym_traits] = ACTIONS(5060), [sym_vector] = ACTIONS(5060), [sym_void] = ACTIONS(5060), [anon_sym_BQUOTE] = ACTIONS(5062), [anon_sym_r_DQUOTE] = ACTIONS(5062), [anon_sym_x_DQUOTE] = ACTIONS(5062), [anon_sym_DQUOTE] = ACTIONS(5062), [anon_sym_i_BQUOTE] = ACTIONS(5062), [anon_sym_i_DQUOTE] = ACTIONS(5062), [anon_sym_iq_LBRACE] = ACTIONS(5062), [aux_sym_char_literal_token1] = ACTIONS(5062), [anon_sym_SQUOTE] = ACTIONS(5060), [anon_sym___DATE__] = ACTIONS(5060), [anon_sym___FILE__] = ACTIONS(5060), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5060), [anon_sym___FUNCTION__] = ACTIONS(5060), [anon_sym___LINE__] = ACTIONS(5060), [anon_sym___MODULE__] = ACTIONS(5060), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5060), [anon_sym___TIME__] = ACTIONS(5060), [anon_sym___TIMESTAMP__] = ACTIONS(5060), [anon_sym___VENDOR__] = ACTIONS(5060), [anon_sym___VERSION__] = ACTIONS(5060), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5062), [sym_float_literal] = ACTIONS(5062), [sym__string] = ACTIONS(5062), }, [1732] = { [sym_identifier] = ACTIONS(5008), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5010), [anon_sym_RBRACE] = ACTIONS(5010), [anon_sym_LBRACE] = ACTIONS(5010), [anon_sym_DOT] = ACTIONS(5010), [anon_sym_AMP] = ACTIONS(5010), [anon_sym_DASH] = ACTIONS(5008), [anon_sym_DASH_DASH] = ACTIONS(5010), [anon_sym_PLUS] = ACTIONS(5008), [anon_sym_PLUS_PLUS] = ACTIONS(5010), [anon_sym_BANG] = ACTIONS(5010), [anon_sym_LPAREN] = ACTIONS(5010), [anon_sym_RPAREN] = ACTIONS(5010), [anon_sym_LBRACK] = ACTIONS(5010), [anon_sym_SEMI] = ACTIONS(5010), [anon_sym_DOLLAR] = ACTIONS(5010), [anon_sym_STAR] = ACTIONS(5010), [anon_sym_TILDE] = ACTIONS(5010), [anon_sym_AT] = ACTIONS(5010), [sym_bool] = ACTIONS(5008), [sym_byte] = ACTIONS(5008), [sym_ubyte] = ACTIONS(5008), [sym_char] = ACTIONS(5008), [sym_short] = ACTIONS(5008), [sym_ushort] = ACTIONS(5008), [sym_int] = ACTIONS(5008), [sym_uint] = ACTIONS(5008), [sym_long] = ACTIONS(5008), [sym_ulong] = ACTIONS(5008), [sym_cent] = ACTIONS(5008), [sym_ucent] = ACTIONS(5008), [sym_wchar] = ACTIONS(5008), [sym_dchar] = ACTIONS(5008), [sym_float] = ACTIONS(5008), [sym_double] = ACTIONS(5008), [sym_real] = ACTIONS(5008), [sym_ifloat] = ACTIONS(5008), [sym_idouble] = ACTIONS(5008), [sym_ireal] = ACTIONS(5008), [sym_cfloat] = ACTIONS(5008), [sym_cdouble] = ACTIONS(5008), [sym_creal] = ACTIONS(5008), [sym_size_t] = ACTIONS(5008), [sym_ptrdiff_t] = ACTIONS(5008), [sym_string] = ACTIONS(5008), [sym_cstring] = ACTIONS(5008), [sym_dstring] = ACTIONS(5008), [sym_wstring] = ACTIONS(5008), [sym_noreturn] = ACTIONS(5008), [sym_true] = ACTIONS(5008), [sym_false] = ACTIONS(5008), [sym_null] = ACTIONS(5008), [sym_super] = ACTIONS(5008), [sym_this] = ACTIONS(5008), [sym_abstract] = ACTIONS(5008), [sym_alias] = ACTIONS(5008), [sym_align] = ACTIONS(5008), [sym_asm] = ACTIONS(5008), [sym_assert] = ACTIONS(5008), [sym_auto] = ACTIONS(5008), [sym_break] = ACTIONS(5008), [sym_case] = ACTIONS(5008), [sym_cast] = ACTIONS(5008), [sym_class] = ACTIONS(5008), [sym_const] = ACTIONS(5008), [sym_continue] = ACTIONS(5008), [sym_debug] = ACTIONS(5008), [sym_default] = ACTIONS(5008), [sym_delegate] = ACTIONS(5008), [sym_delete] = ACTIONS(5008), [sym_deprecated] = ACTIONS(5008), [sym_do] = ACTIONS(5008), [sym_else] = ACTIONS(5008), [sym_enum] = ACTIONS(5008), [sym_export] = ACTIONS(5008), [sym_extern] = ACTIONS(5008), [sym_final] = ACTIONS(5008), [sym_for] = ACTIONS(5008), [sym_foreach] = ACTIONS(5008), [sym_foreach_reverse] = ACTIONS(5008), [sym_function] = ACTIONS(5008), [sym_goto] = ACTIONS(5008), [sym_if] = ACTIONS(5008), [sym_immutable] = ACTIONS(5008), [sym_import] = ACTIONS(5008), [sym_in] = ACTIONS(5008), [sym_inout] = ACTIONS(5008), [sym_interface] = ACTIONS(5008), [sym_invariant] = ACTIONS(5008), [sym_is] = ACTIONS(5008), [sym_mixin] = ACTIONS(5008), [sym_new] = ACTIONS(5008), [sym_nothrow] = ACTIONS(5008), [sym_out] = ACTIONS(5008), [sym_override] = ACTIONS(5008), [sym_package] = ACTIONS(5008), [sym_pragma] = ACTIONS(5008), [sym_private] = ACTIONS(5008), [sym_protected] = ACTIONS(5008), [sym_public] = ACTIONS(5008), [sym_pure] = ACTIONS(5008), [sym_ref] = ACTIONS(5008), [sym_return] = ACTIONS(5008), [sym_scope] = ACTIONS(5008), [sym_shared] = ACTIONS(5008), [sym_static] = ACTIONS(5008), [sym_struct] = ACTIONS(5008), [sym_switch] = ACTIONS(5008), [sym_synchronized] = ACTIONS(5008), [sym_template] = ACTIONS(5008), [sym_throw] = ACTIONS(5008), [sym_try] = ACTIONS(5008), [sym_typeid] = ACTIONS(5008), [sym_typeof] = ACTIONS(5008), [sym_union] = ACTIONS(5008), [sym_unittest] = ACTIONS(5008), [sym_version] = ACTIONS(5008), [sym_while] = ACTIONS(5008), [sym_with] = ACTIONS(5008), [sym_gshared] = ACTIONS(5008), [sym_traits] = ACTIONS(5008), [sym_vector] = ACTIONS(5008), [sym_void] = ACTIONS(5008), [anon_sym_BQUOTE] = ACTIONS(5010), [anon_sym_r_DQUOTE] = ACTIONS(5010), [anon_sym_x_DQUOTE] = ACTIONS(5010), [anon_sym_DQUOTE] = ACTIONS(5010), [anon_sym_i_BQUOTE] = ACTIONS(5010), [anon_sym_i_DQUOTE] = ACTIONS(5010), [anon_sym_iq_LBRACE] = ACTIONS(5010), [aux_sym_char_literal_token1] = ACTIONS(5010), [anon_sym_SQUOTE] = ACTIONS(5008), [anon_sym___DATE__] = ACTIONS(5008), [anon_sym___FILE__] = ACTIONS(5008), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5008), [anon_sym___FUNCTION__] = ACTIONS(5008), [anon_sym___LINE__] = ACTIONS(5008), [anon_sym___MODULE__] = ACTIONS(5008), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5008), [anon_sym___TIME__] = ACTIONS(5008), [anon_sym___TIMESTAMP__] = ACTIONS(5008), [anon_sym___VENDOR__] = ACTIONS(5008), [anon_sym___VERSION__] = ACTIONS(5008), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5010), [sym_float_literal] = ACTIONS(5010), [sym__string] = ACTIONS(5010), }, [1733] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_RBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_BANG] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_RPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_asm] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_break] = ACTIONS(3070), [sym_case] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_continue] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_default] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_for] = ACTIONS(3070), [sym_foreach] = ACTIONS(3070), [sym_foreach_reverse] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_goto] = ACTIONS(3070), [sym_if] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_switch] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_try] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_with] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), }, [1734] = { [sym_identifier] = ACTIONS(4606), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4608), [anon_sym_RBRACE] = ACTIONS(4608), [anon_sym_LBRACE] = ACTIONS(4608), [anon_sym_DOT] = ACTIONS(4608), [anon_sym_AMP] = ACTIONS(4608), [anon_sym_DASH] = ACTIONS(4606), [anon_sym_DASH_DASH] = ACTIONS(4608), [anon_sym_PLUS] = ACTIONS(4606), [anon_sym_PLUS_PLUS] = ACTIONS(4608), [anon_sym_BANG] = ACTIONS(4608), [anon_sym_LPAREN] = ACTIONS(4608), [anon_sym_RPAREN] = ACTIONS(4608), [anon_sym_LBRACK] = ACTIONS(4608), [anon_sym_SEMI] = ACTIONS(4608), [anon_sym_DOLLAR] = ACTIONS(4608), [anon_sym_STAR] = ACTIONS(4608), [anon_sym_TILDE] = ACTIONS(4608), [anon_sym_AT] = ACTIONS(4608), [sym_bool] = ACTIONS(4606), [sym_byte] = ACTIONS(4606), [sym_ubyte] = ACTIONS(4606), [sym_char] = ACTIONS(4606), [sym_short] = ACTIONS(4606), [sym_ushort] = ACTIONS(4606), [sym_int] = ACTIONS(4606), [sym_uint] = ACTIONS(4606), [sym_long] = ACTIONS(4606), [sym_ulong] = ACTIONS(4606), [sym_cent] = ACTIONS(4606), [sym_ucent] = ACTIONS(4606), [sym_wchar] = ACTIONS(4606), [sym_dchar] = ACTIONS(4606), [sym_float] = ACTIONS(4606), [sym_double] = ACTIONS(4606), [sym_real] = ACTIONS(4606), [sym_ifloat] = ACTIONS(4606), [sym_idouble] = ACTIONS(4606), [sym_ireal] = ACTIONS(4606), [sym_cfloat] = ACTIONS(4606), [sym_cdouble] = ACTIONS(4606), [sym_creal] = ACTIONS(4606), [sym_size_t] = ACTIONS(4606), [sym_ptrdiff_t] = ACTIONS(4606), [sym_string] = ACTIONS(4606), [sym_cstring] = ACTIONS(4606), [sym_dstring] = ACTIONS(4606), [sym_wstring] = ACTIONS(4606), [sym_noreturn] = ACTIONS(4606), [sym_true] = ACTIONS(4606), [sym_false] = ACTIONS(4606), [sym_null] = ACTIONS(4606), [sym_super] = ACTIONS(4606), [sym_this] = ACTIONS(4606), [sym_abstract] = ACTIONS(4606), [sym_alias] = ACTIONS(4606), [sym_align] = ACTIONS(4606), [sym_asm] = ACTIONS(4606), [sym_assert] = ACTIONS(4606), [sym_auto] = ACTIONS(4606), [sym_break] = ACTIONS(4606), [sym_case] = ACTIONS(4606), [sym_cast] = ACTIONS(4606), [sym_class] = ACTIONS(4606), [sym_const] = ACTIONS(4606), [sym_continue] = ACTIONS(4606), [sym_debug] = ACTIONS(4606), [sym_default] = ACTIONS(4606), [sym_delegate] = ACTIONS(4606), [sym_delete] = ACTIONS(4606), [sym_deprecated] = ACTIONS(4606), [sym_do] = ACTIONS(4606), [sym_else] = ACTIONS(4606), [sym_enum] = ACTIONS(4606), [sym_export] = ACTIONS(4606), [sym_extern] = ACTIONS(4606), [sym_final] = ACTIONS(4606), [sym_for] = ACTIONS(4606), [sym_foreach] = ACTIONS(4606), [sym_foreach_reverse] = ACTIONS(4606), [sym_function] = ACTIONS(4606), [sym_goto] = ACTIONS(4606), [sym_if] = ACTIONS(4606), [sym_immutable] = ACTIONS(4606), [sym_import] = ACTIONS(4606), [sym_in] = ACTIONS(4606), [sym_inout] = ACTIONS(4606), [sym_interface] = ACTIONS(4606), [sym_invariant] = ACTIONS(4606), [sym_is] = ACTIONS(4606), [sym_mixin] = ACTIONS(4606), [sym_new] = ACTIONS(4606), [sym_nothrow] = ACTIONS(4606), [sym_out] = ACTIONS(4606), [sym_override] = ACTIONS(4606), [sym_package] = ACTIONS(4606), [sym_pragma] = ACTIONS(4606), [sym_private] = ACTIONS(4606), [sym_protected] = ACTIONS(4606), [sym_public] = ACTIONS(4606), [sym_pure] = ACTIONS(4606), [sym_ref] = ACTIONS(4606), [sym_return] = ACTIONS(4606), [sym_scope] = ACTIONS(4606), [sym_shared] = ACTIONS(4606), [sym_static] = ACTIONS(4606), [sym_struct] = ACTIONS(4606), [sym_switch] = ACTIONS(4606), [sym_synchronized] = ACTIONS(4606), [sym_template] = ACTIONS(4606), [sym_throw] = ACTIONS(4606), [sym_try] = ACTIONS(4606), [sym_typeid] = ACTIONS(4606), [sym_typeof] = ACTIONS(4606), [sym_union] = ACTIONS(4606), [sym_unittest] = ACTIONS(4606), [sym_version] = ACTIONS(4606), [sym_while] = ACTIONS(4606), [sym_with] = ACTIONS(4606), [sym_gshared] = ACTIONS(4606), [sym_traits] = ACTIONS(4606), [sym_vector] = ACTIONS(4606), [sym_void] = ACTIONS(4606), [anon_sym_BQUOTE] = ACTIONS(4608), [anon_sym_r_DQUOTE] = ACTIONS(4608), [anon_sym_x_DQUOTE] = ACTIONS(4608), [anon_sym_DQUOTE] = ACTIONS(4608), [anon_sym_i_BQUOTE] = ACTIONS(4608), [anon_sym_i_DQUOTE] = ACTIONS(4608), [anon_sym_iq_LBRACE] = ACTIONS(4608), [aux_sym_char_literal_token1] = ACTIONS(4608), [anon_sym_SQUOTE] = ACTIONS(4606), [anon_sym___DATE__] = ACTIONS(4606), [anon_sym___FILE__] = ACTIONS(4606), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4606), [anon_sym___FUNCTION__] = ACTIONS(4606), [anon_sym___LINE__] = ACTIONS(4606), [anon_sym___MODULE__] = ACTIONS(4606), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4606), [anon_sym___TIME__] = ACTIONS(4606), [anon_sym___TIMESTAMP__] = ACTIONS(4606), [anon_sym___VENDOR__] = ACTIONS(4606), [anon_sym___VERSION__] = ACTIONS(4606), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4608), [sym_float_literal] = ACTIONS(4608), [sym__string] = ACTIONS(4608), }, [1735] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(5111), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [1736] = { [sym_identifier] = ACTIONS(4694), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4696), [anon_sym_RBRACE] = ACTIONS(4696), [anon_sym_LBRACE] = ACTIONS(4696), [anon_sym_DOT] = ACTIONS(4696), [anon_sym_AMP] = ACTIONS(4696), [anon_sym_DASH] = ACTIONS(4694), [anon_sym_DASH_DASH] = ACTIONS(4696), [anon_sym_PLUS] = ACTIONS(4694), [anon_sym_PLUS_PLUS] = ACTIONS(4696), [anon_sym_BANG] = ACTIONS(4696), [anon_sym_LPAREN] = ACTIONS(4696), [anon_sym_RPAREN] = ACTIONS(4696), [anon_sym_LBRACK] = ACTIONS(4696), [anon_sym_SEMI] = ACTIONS(4696), [anon_sym_DOLLAR] = ACTIONS(4696), [anon_sym_STAR] = ACTIONS(4696), [anon_sym_TILDE] = ACTIONS(4696), [anon_sym_AT] = ACTIONS(4696), [sym_bool] = ACTIONS(4694), [sym_byte] = ACTIONS(4694), [sym_ubyte] = ACTIONS(4694), [sym_char] = ACTIONS(4694), [sym_short] = ACTIONS(4694), [sym_ushort] = ACTIONS(4694), [sym_int] = ACTIONS(4694), [sym_uint] = ACTIONS(4694), [sym_long] = ACTIONS(4694), [sym_ulong] = ACTIONS(4694), [sym_cent] = ACTIONS(4694), [sym_ucent] = ACTIONS(4694), [sym_wchar] = ACTIONS(4694), [sym_dchar] = ACTIONS(4694), [sym_float] = ACTIONS(4694), [sym_double] = ACTIONS(4694), [sym_real] = ACTIONS(4694), [sym_ifloat] = ACTIONS(4694), [sym_idouble] = ACTIONS(4694), [sym_ireal] = ACTIONS(4694), [sym_cfloat] = ACTIONS(4694), [sym_cdouble] = ACTIONS(4694), [sym_creal] = ACTIONS(4694), [sym_size_t] = ACTIONS(4694), [sym_ptrdiff_t] = ACTIONS(4694), [sym_string] = ACTIONS(4694), [sym_cstring] = ACTIONS(4694), [sym_dstring] = ACTIONS(4694), [sym_wstring] = ACTIONS(4694), [sym_noreturn] = ACTIONS(4694), [sym_true] = ACTIONS(4694), [sym_false] = ACTIONS(4694), [sym_null] = ACTIONS(4694), [sym_super] = ACTIONS(4694), [sym_this] = ACTIONS(4694), [sym_abstract] = ACTIONS(4694), [sym_alias] = ACTIONS(4694), [sym_align] = ACTIONS(4694), [sym_asm] = ACTIONS(4694), [sym_assert] = ACTIONS(4694), [sym_auto] = ACTIONS(4694), [sym_break] = ACTIONS(4694), [sym_case] = ACTIONS(4694), [sym_cast] = ACTIONS(4694), [sym_class] = ACTIONS(4694), [sym_const] = ACTIONS(4694), [sym_continue] = ACTIONS(4694), [sym_debug] = ACTIONS(4694), [sym_default] = ACTIONS(4694), [sym_delegate] = ACTIONS(4694), [sym_delete] = ACTIONS(4694), [sym_deprecated] = ACTIONS(4694), [sym_do] = ACTIONS(4694), [sym_else] = ACTIONS(4694), [sym_enum] = ACTIONS(4694), [sym_export] = ACTIONS(4694), [sym_extern] = ACTIONS(4694), [sym_final] = ACTIONS(4694), [sym_for] = ACTIONS(4694), [sym_foreach] = ACTIONS(4694), [sym_foreach_reverse] = ACTIONS(4694), [sym_function] = ACTIONS(4694), [sym_goto] = ACTIONS(4694), [sym_if] = ACTIONS(4694), [sym_immutable] = ACTIONS(4694), [sym_import] = ACTIONS(4694), [sym_in] = ACTIONS(4694), [sym_inout] = ACTIONS(4694), [sym_interface] = ACTIONS(4694), [sym_invariant] = ACTIONS(4694), [sym_is] = ACTIONS(4694), [sym_mixin] = ACTIONS(4694), [sym_new] = ACTIONS(4694), [sym_nothrow] = ACTIONS(4694), [sym_out] = ACTIONS(4694), [sym_override] = ACTIONS(4694), [sym_package] = ACTIONS(4694), [sym_pragma] = ACTIONS(4694), [sym_private] = ACTIONS(4694), [sym_protected] = ACTIONS(4694), [sym_public] = ACTIONS(4694), [sym_pure] = ACTIONS(4694), [sym_ref] = ACTIONS(4694), [sym_return] = ACTIONS(4694), [sym_scope] = ACTIONS(4694), [sym_shared] = ACTIONS(4694), [sym_static] = ACTIONS(4694), [sym_struct] = ACTIONS(4694), [sym_switch] = ACTIONS(4694), [sym_synchronized] = ACTIONS(4694), [sym_template] = ACTIONS(4694), [sym_throw] = ACTIONS(4694), [sym_try] = ACTIONS(4694), [sym_typeid] = ACTIONS(4694), [sym_typeof] = ACTIONS(4694), [sym_union] = ACTIONS(4694), [sym_unittest] = ACTIONS(4694), [sym_version] = ACTIONS(4694), [sym_while] = ACTIONS(4694), [sym_with] = ACTIONS(4694), [sym_gshared] = ACTIONS(4694), [sym_traits] = ACTIONS(4694), [sym_vector] = ACTIONS(4694), [sym_void] = ACTIONS(4694), [anon_sym_BQUOTE] = ACTIONS(4696), [anon_sym_r_DQUOTE] = ACTIONS(4696), [anon_sym_x_DQUOTE] = ACTIONS(4696), [anon_sym_DQUOTE] = ACTIONS(4696), [anon_sym_i_BQUOTE] = ACTIONS(4696), [anon_sym_i_DQUOTE] = ACTIONS(4696), [anon_sym_iq_LBRACE] = ACTIONS(4696), [aux_sym_char_literal_token1] = ACTIONS(4696), [anon_sym_SQUOTE] = ACTIONS(4694), [anon_sym___DATE__] = ACTIONS(4694), [anon_sym___FILE__] = ACTIONS(4694), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4694), [anon_sym___FUNCTION__] = ACTIONS(4694), [anon_sym___LINE__] = ACTIONS(4694), [anon_sym___MODULE__] = ACTIONS(4694), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4694), [anon_sym___TIME__] = ACTIONS(4694), [anon_sym___TIMESTAMP__] = ACTIONS(4694), [anon_sym___VENDOR__] = ACTIONS(4694), [anon_sym___VERSION__] = ACTIONS(4694), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4696), [sym_float_literal] = ACTIONS(4696), [sym__string] = ACTIONS(4696), }, [1737] = { [sym_identifier] = ACTIONS(4534), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4536), [anon_sym_RBRACE] = ACTIONS(4536), [anon_sym_LBRACE] = ACTIONS(4536), [anon_sym_DOT] = ACTIONS(4536), [anon_sym_AMP] = ACTIONS(4536), [anon_sym_DASH] = ACTIONS(4534), [anon_sym_DASH_DASH] = ACTIONS(4536), [anon_sym_PLUS] = ACTIONS(4534), [anon_sym_PLUS_PLUS] = ACTIONS(4536), [anon_sym_BANG] = ACTIONS(4536), [anon_sym_LPAREN] = ACTIONS(4536), [anon_sym_RPAREN] = ACTIONS(4536), [anon_sym_LBRACK] = ACTIONS(4536), [anon_sym_SEMI] = ACTIONS(4536), [anon_sym_DOLLAR] = ACTIONS(4536), [anon_sym_STAR] = ACTIONS(4536), [anon_sym_TILDE] = ACTIONS(4536), [anon_sym_AT] = ACTIONS(4536), [sym_bool] = ACTIONS(4534), [sym_byte] = ACTIONS(4534), [sym_ubyte] = ACTIONS(4534), [sym_char] = ACTIONS(4534), [sym_short] = ACTIONS(4534), [sym_ushort] = ACTIONS(4534), [sym_int] = ACTIONS(4534), [sym_uint] = ACTIONS(4534), [sym_long] = ACTIONS(4534), [sym_ulong] = ACTIONS(4534), [sym_cent] = ACTIONS(4534), [sym_ucent] = ACTIONS(4534), [sym_wchar] = ACTIONS(4534), [sym_dchar] = ACTIONS(4534), [sym_float] = ACTIONS(4534), [sym_double] = ACTIONS(4534), [sym_real] = ACTIONS(4534), [sym_ifloat] = ACTIONS(4534), [sym_idouble] = ACTIONS(4534), [sym_ireal] = ACTIONS(4534), [sym_cfloat] = ACTIONS(4534), [sym_cdouble] = ACTIONS(4534), [sym_creal] = ACTIONS(4534), [sym_size_t] = ACTIONS(4534), [sym_ptrdiff_t] = ACTIONS(4534), [sym_string] = ACTIONS(4534), [sym_cstring] = ACTIONS(4534), [sym_dstring] = ACTIONS(4534), [sym_wstring] = ACTIONS(4534), [sym_noreturn] = ACTIONS(4534), [sym_true] = ACTIONS(4534), [sym_false] = ACTIONS(4534), [sym_null] = ACTIONS(4534), [sym_super] = ACTIONS(4534), [sym_this] = ACTIONS(4534), [sym_abstract] = ACTIONS(4534), [sym_alias] = ACTIONS(4534), [sym_align] = ACTIONS(4534), [sym_asm] = ACTIONS(4534), [sym_assert] = ACTIONS(4534), [sym_auto] = ACTIONS(4534), [sym_break] = ACTIONS(4534), [sym_case] = ACTIONS(4534), [sym_cast] = ACTIONS(4534), [sym_class] = ACTIONS(4534), [sym_const] = ACTIONS(4534), [sym_continue] = ACTIONS(4534), [sym_debug] = ACTIONS(4534), [sym_default] = ACTIONS(4534), [sym_delegate] = ACTIONS(4534), [sym_delete] = ACTIONS(4534), [sym_deprecated] = ACTIONS(4534), [sym_do] = ACTIONS(4534), [sym_else] = ACTIONS(4534), [sym_enum] = ACTIONS(4534), [sym_export] = ACTIONS(4534), [sym_extern] = ACTIONS(4534), [sym_final] = ACTIONS(4534), [sym_for] = ACTIONS(4534), [sym_foreach] = ACTIONS(4534), [sym_foreach_reverse] = ACTIONS(4534), [sym_function] = ACTIONS(4534), [sym_goto] = ACTIONS(4534), [sym_if] = ACTIONS(4534), [sym_immutable] = ACTIONS(4534), [sym_import] = ACTIONS(4534), [sym_in] = ACTIONS(4534), [sym_inout] = ACTIONS(4534), [sym_interface] = ACTIONS(4534), [sym_invariant] = ACTIONS(4534), [sym_is] = ACTIONS(4534), [sym_mixin] = ACTIONS(4534), [sym_new] = ACTIONS(4534), [sym_nothrow] = ACTIONS(4534), [sym_out] = ACTIONS(4534), [sym_override] = ACTIONS(4534), [sym_package] = ACTIONS(4534), [sym_pragma] = ACTIONS(4534), [sym_private] = ACTIONS(4534), [sym_protected] = ACTIONS(4534), [sym_public] = ACTIONS(4534), [sym_pure] = ACTIONS(4534), [sym_ref] = ACTIONS(4534), [sym_return] = ACTIONS(4534), [sym_scope] = ACTIONS(4534), [sym_shared] = ACTIONS(4534), [sym_static] = ACTIONS(4534), [sym_struct] = ACTIONS(4534), [sym_switch] = ACTIONS(4534), [sym_synchronized] = ACTIONS(4534), [sym_template] = ACTIONS(4534), [sym_throw] = ACTIONS(4534), [sym_try] = ACTIONS(4534), [sym_typeid] = ACTIONS(4534), [sym_typeof] = ACTIONS(4534), [sym_union] = ACTIONS(4534), [sym_unittest] = ACTIONS(4534), [sym_version] = ACTIONS(4534), [sym_while] = ACTIONS(4534), [sym_with] = ACTIONS(4534), [sym_gshared] = ACTIONS(4534), [sym_traits] = ACTIONS(4534), [sym_vector] = ACTIONS(4534), [sym_void] = ACTIONS(4534), [anon_sym_BQUOTE] = ACTIONS(4536), [anon_sym_r_DQUOTE] = ACTIONS(4536), [anon_sym_x_DQUOTE] = ACTIONS(4536), [anon_sym_DQUOTE] = ACTIONS(4536), [anon_sym_i_BQUOTE] = ACTIONS(4536), [anon_sym_i_DQUOTE] = ACTIONS(4536), [anon_sym_iq_LBRACE] = ACTIONS(4536), [aux_sym_char_literal_token1] = ACTIONS(4536), [anon_sym_SQUOTE] = ACTIONS(4534), [anon_sym___DATE__] = ACTIONS(4534), [anon_sym___FILE__] = ACTIONS(4534), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4534), [anon_sym___FUNCTION__] = ACTIONS(4534), [anon_sym___LINE__] = ACTIONS(4534), [anon_sym___MODULE__] = ACTIONS(4534), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4534), [anon_sym___TIME__] = ACTIONS(4534), [anon_sym___TIMESTAMP__] = ACTIONS(4534), [anon_sym___VENDOR__] = ACTIONS(4534), [anon_sym___VERSION__] = ACTIONS(4534), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4536), [sym_float_literal] = ACTIONS(4536), [sym__string] = ACTIONS(4536), }, [1738] = { [sym_identifier] = ACTIONS(4754), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4756), [anon_sym_RBRACE] = ACTIONS(4756), [anon_sym_LBRACE] = ACTIONS(4756), [anon_sym_DOT] = ACTIONS(4756), [anon_sym_AMP] = ACTIONS(4756), [anon_sym_DASH] = ACTIONS(4754), [anon_sym_DASH_DASH] = ACTIONS(4756), [anon_sym_PLUS] = ACTIONS(4754), [anon_sym_PLUS_PLUS] = ACTIONS(4756), [anon_sym_BANG] = ACTIONS(4756), [anon_sym_LPAREN] = ACTIONS(4756), [anon_sym_RPAREN] = ACTIONS(4756), [anon_sym_LBRACK] = ACTIONS(4756), [anon_sym_SEMI] = ACTIONS(4756), [anon_sym_DOLLAR] = ACTIONS(4756), [anon_sym_STAR] = ACTIONS(4756), [anon_sym_TILDE] = ACTIONS(4756), [anon_sym_AT] = ACTIONS(4756), [sym_bool] = ACTIONS(4754), [sym_byte] = ACTIONS(4754), [sym_ubyte] = ACTIONS(4754), [sym_char] = ACTIONS(4754), [sym_short] = ACTIONS(4754), [sym_ushort] = ACTIONS(4754), [sym_int] = ACTIONS(4754), [sym_uint] = ACTIONS(4754), [sym_long] = ACTIONS(4754), [sym_ulong] = ACTIONS(4754), [sym_cent] = ACTIONS(4754), [sym_ucent] = ACTIONS(4754), [sym_wchar] = ACTIONS(4754), [sym_dchar] = ACTIONS(4754), [sym_float] = ACTIONS(4754), [sym_double] = ACTIONS(4754), [sym_real] = ACTIONS(4754), [sym_ifloat] = ACTIONS(4754), [sym_idouble] = ACTIONS(4754), [sym_ireal] = ACTIONS(4754), [sym_cfloat] = ACTIONS(4754), [sym_cdouble] = ACTIONS(4754), [sym_creal] = ACTIONS(4754), [sym_size_t] = ACTIONS(4754), [sym_ptrdiff_t] = ACTIONS(4754), [sym_string] = ACTIONS(4754), [sym_cstring] = ACTIONS(4754), [sym_dstring] = ACTIONS(4754), [sym_wstring] = ACTIONS(4754), [sym_noreturn] = ACTIONS(4754), [sym_true] = ACTIONS(4754), [sym_false] = ACTIONS(4754), [sym_null] = ACTIONS(4754), [sym_super] = ACTIONS(4754), [sym_this] = ACTIONS(4754), [sym_abstract] = ACTIONS(4754), [sym_alias] = ACTIONS(4754), [sym_align] = ACTIONS(4754), [sym_asm] = ACTIONS(4754), [sym_assert] = ACTIONS(4754), [sym_auto] = ACTIONS(4754), [sym_break] = ACTIONS(4754), [sym_case] = ACTIONS(4754), [sym_cast] = ACTIONS(4754), [sym_class] = ACTIONS(4754), [sym_const] = ACTIONS(4754), [sym_continue] = ACTIONS(4754), [sym_debug] = ACTIONS(4754), [sym_default] = ACTIONS(4754), [sym_delegate] = ACTIONS(4754), [sym_delete] = ACTIONS(4754), [sym_deprecated] = ACTIONS(4754), [sym_do] = ACTIONS(4754), [sym_else] = ACTIONS(4754), [sym_enum] = ACTIONS(4754), [sym_export] = ACTIONS(4754), [sym_extern] = ACTIONS(4754), [sym_final] = ACTIONS(4754), [sym_for] = ACTIONS(4754), [sym_foreach] = ACTIONS(4754), [sym_foreach_reverse] = ACTIONS(4754), [sym_function] = ACTIONS(4754), [sym_goto] = ACTIONS(4754), [sym_if] = ACTIONS(4754), [sym_immutable] = ACTIONS(4754), [sym_import] = ACTIONS(4754), [sym_in] = ACTIONS(4754), [sym_inout] = ACTIONS(4754), [sym_interface] = ACTIONS(4754), [sym_invariant] = ACTIONS(4754), [sym_is] = ACTIONS(4754), [sym_mixin] = ACTIONS(4754), [sym_new] = ACTIONS(4754), [sym_nothrow] = ACTIONS(4754), [sym_out] = ACTIONS(4754), [sym_override] = ACTIONS(4754), [sym_package] = ACTIONS(4754), [sym_pragma] = ACTIONS(4754), [sym_private] = ACTIONS(4754), [sym_protected] = ACTIONS(4754), [sym_public] = ACTIONS(4754), [sym_pure] = ACTIONS(4754), [sym_ref] = ACTIONS(4754), [sym_return] = ACTIONS(4754), [sym_scope] = ACTIONS(4754), [sym_shared] = ACTIONS(4754), [sym_static] = ACTIONS(4754), [sym_struct] = ACTIONS(4754), [sym_switch] = ACTIONS(4754), [sym_synchronized] = ACTIONS(4754), [sym_template] = ACTIONS(4754), [sym_throw] = ACTIONS(4754), [sym_try] = ACTIONS(4754), [sym_typeid] = ACTIONS(4754), [sym_typeof] = ACTIONS(4754), [sym_union] = ACTIONS(4754), [sym_unittest] = ACTIONS(4754), [sym_version] = ACTIONS(4754), [sym_while] = ACTIONS(4754), [sym_with] = ACTIONS(4754), [sym_gshared] = ACTIONS(4754), [sym_traits] = ACTIONS(4754), [sym_vector] = ACTIONS(4754), [sym_void] = ACTIONS(4754), [anon_sym_BQUOTE] = ACTIONS(4756), [anon_sym_r_DQUOTE] = ACTIONS(4756), [anon_sym_x_DQUOTE] = ACTIONS(4756), [anon_sym_DQUOTE] = ACTIONS(4756), [anon_sym_i_BQUOTE] = ACTIONS(4756), [anon_sym_i_DQUOTE] = ACTIONS(4756), [anon_sym_iq_LBRACE] = ACTIONS(4756), [aux_sym_char_literal_token1] = ACTIONS(4756), [anon_sym_SQUOTE] = ACTIONS(4754), [anon_sym___DATE__] = ACTIONS(4754), [anon_sym___FILE__] = ACTIONS(4754), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4754), [anon_sym___FUNCTION__] = ACTIONS(4754), [anon_sym___LINE__] = ACTIONS(4754), [anon_sym___MODULE__] = ACTIONS(4754), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4754), [anon_sym___TIME__] = ACTIONS(4754), [anon_sym___TIMESTAMP__] = ACTIONS(4754), [anon_sym___VENDOR__] = ACTIONS(4754), [anon_sym___VERSION__] = ACTIONS(4754), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4756), [sym_float_literal] = ACTIONS(4756), [sym__string] = ACTIONS(4756), }, [1739] = { [sym_identifier] = ACTIONS(4848), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4850), [anon_sym_RBRACE] = ACTIONS(4850), [anon_sym_LBRACE] = ACTIONS(4850), [anon_sym_DOT] = ACTIONS(4850), [anon_sym_AMP] = ACTIONS(4850), [anon_sym_DASH] = ACTIONS(4848), [anon_sym_DASH_DASH] = ACTIONS(4850), [anon_sym_PLUS] = ACTIONS(4848), [anon_sym_PLUS_PLUS] = ACTIONS(4850), [anon_sym_BANG] = ACTIONS(4850), [anon_sym_LPAREN] = ACTIONS(4850), [anon_sym_RPAREN] = ACTIONS(4850), [anon_sym_LBRACK] = ACTIONS(4850), [anon_sym_SEMI] = ACTIONS(4850), [anon_sym_DOLLAR] = ACTIONS(4850), [anon_sym_STAR] = ACTIONS(4850), [anon_sym_TILDE] = ACTIONS(4850), [anon_sym_AT] = ACTIONS(4850), [sym_bool] = ACTIONS(4848), [sym_byte] = ACTIONS(4848), [sym_ubyte] = ACTIONS(4848), [sym_char] = ACTIONS(4848), [sym_short] = ACTIONS(4848), [sym_ushort] = ACTIONS(4848), [sym_int] = ACTIONS(4848), [sym_uint] = ACTIONS(4848), [sym_long] = ACTIONS(4848), [sym_ulong] = ACTIONS(4848), [sym_cent] = ACTIONS(4848), [sym_ucent] = ACTIONS(4848), [sym_wchar] = ACTIONS(4848), [sym_dchar] = ACTIONS(4848), [sym_float] = ACTIONS(4848), [sym_double] = ACTIONS(4848), [sym_real] = ACTIONS(4848), [sym_ifloat] = ACTIONS(4848), [sym_idouble] = ACTIONS(4848), [sym_ireal] = ACTIONS(4848), [sym_cfloat] = ACTIONS(4848), [sym_cdouble] = ACTIONS(4848), [sym_creal] = ACTIONS(4848), [sym_size_t] = ACTIONS(4848), [sym_ptrdiff_t] = ACTIONS(4848), [sym_string] = ACTIONS(4848), [sym_cstring] = ACTIONS(4848), [sym_dstring] = ACTIONS(4848), [sym_wstring] = ACTIONS(4848), [sym_noreturn] = ACTIONS(4848), [sym_true] = ACTIONS(4848), [sym_false] = ACTIONS(4848), [sym_null] = ACTIONS(4848), [sym_super] = ACTIONS(4848), [sym_this] = ACTIONS(4848), [sym_abstract] = ACTIONS(4848), [sym_alias] = ACTIONS(4848), [sym_align] = ACTIONS(4848), [sym_asm] = ACTIONS(4848), [sym_assert] = ACTIONS(4848), [sym_auto] = ACTIONS(4848), [sym_break] = ACTIONS(4848), [sym_case] = ACTIONS(4848), [sym_cast] = ACTIONS(4848), [sym_class] = ACTIONS(4848), [sym_const] = ACTIONS(4848), [sym_continue] = ACTIONS(4848), [sym_debug] = ACTIONS(4848), [sym_default] = ACTIONS(4848), [sym_delegate] = ACTIONS(4848), [sym_delete] = ACTIONS(4848), [sym_deprecated] = ACTIONS(4848), [sym_do] = ACTIONS(4848), [sym_else] = ACTIONS(4848), [sym_enum] = ACTIONS(4848), [sym_export] = ACTIONS(4848), [sym_extern] = ACTIONS(4848), [sym_final] = ACTIONS(4848), [sym_for] = ACTIONS(4848), [sym_foreach] = ACTIONS(4848), [sym_foreach_reverse] = ACTIONS(4848), [sym_function] = ACTIONS(4848), [sym_goto] = ACTIONS(4848), [sym_if] = ACTIONS(4848), [sym_immutable] = ACTIONS(4848), [sym_import] = ACTIONS(4848), [sym_in] = ACTIONS(4848), [sym_inout] = ACTIONS(4848), [sym_interface] = ACTIONS(4848), [sym_invariant] = ACTIONS(4848), [sym_is] = ACTIONS(4848), [sym_mixin] = ACTIONS(4848), [sym_new] = ACTIONS(4848), [sym_nothrow] = ACTIONS(4848), [sym_out] = ACTIONS(4848), [sym_override] = ACTIONS(4848), [sym_package] = ACTIONS(4848), [sym_pragma] = ACTIONS(4848), [sym_private] = ACTIONS(4848), [sym_protected] = ACTIONS(4848), [sym_public] = ACTIONS(4848), [sym_pure] = ACTIONS(4848), [sym_ref] = ACTIONS(4848), [sym_return] = ACTIONS(4848), [sym_scope] = ACTIONS(4848), [sym_shared] = ACTIONS(4848), [sym_static] = ACTIONS(4848), [sym_struct] = ACTIONS(4848), [sym_switch] = ACTIONS(4848), [sym_synchronized] = ACTIONS(4848), [sym_template] = ACTIONS(4848), [sym_throw] = ACTIONS(4848), [sym_try] = ACTIONS(4848), [sym_typeid] = ACTIONS(4848), [sym_typeof] = ACTIONS(4848), [sym_union] = ACTIONS(4848), [sym_unittest] = ACTIONS(4848), [sym_version] = ACTIONS(4848), [sym_while] = ACTIONS(4848), [sym_with] = ACTIONS(4848), [sym_gshared] = ACTIONS(4848), [sym_traits] = ACTIONS(4848), [sym_vector] = ACTIONS(4848), [sym_void] = ACTIONS(4848), [anon_sym_BQUOTE] = ACTIONS(4850), [anon_sym_r_DQUOTE] = ACTIONS(4850), [anon_sym_x_DQUOTE] = ACTIONS(4850), [anon_sym_DQUOTE] = ACTIONS(4850), [anon_sym_i_BQUOTE] = ACTIONS(4850), [anon_sym_i_DQUOTE] = ACTIONS(4850), [anon_sym_iq_LBRACE] = ACTIONS(4850), [aux_sym_char_literal_token1] = ACTIONS(4850), [anon_sym_SQUOTE] = ACTIONS(4848), [anon_sym___DATE__] = ACTIONS(4848), [anon_sym___FILE__] = ACTIONS(4848), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4848), [anon_sym___FUNCTION__] = ACTIONS(4848), [anon_sym___LINE__] = ACTIONS(4848), [anon_sym___MODULE__] = ACTIONS(4848), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4848), [anon_sym___TIME__] = ACTIONS(4848), [anon_sym___TIMESTAMP__] = ACTIONS(4848), [anon_sym___VENDOR__] = ACTIONS(4848), [anon_sym___VERSION__] = ACTIONS(4848), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4850), [sym_float_literal] = ACTIONS(4850), [sym__string] = ACTIONS(4850), }, [1740] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_asm] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_break] = ACTIONS(2798), [sym_case] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_continue] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_default] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_for] = ACTIONS(2798), [sym_foreach] = ACTIONS(2798), [sym_foreach_reverse] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_goto] = ACTIONS(2798), [sym_if] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_switch] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_try] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_with] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [1741] = { [sym_identifier] = ACTIONS(4442), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4444), [anon_sym_RBRACE] = ACTIONS(4444), [anon_sym_LBRACE] = ACTIONS(4444), [anon_sym_DOT] = ACTIONS(4444), [anon_sym_AMP] = ACTIONS(4444), [anon_sym_DASH] = ACTIONS(4442), [anon_sym_DASH_DASH] = ACTIONS(4444), [anon_sym_PLUS] = ACTIONS(4442), [anon_sym_PLUS_PLUS] = ACTIONS(4444), [anon_sym_BANG] = ACTIONS(4444), [anon_sym_LPAREN] = ACTIONS(4444), [anon_sym_RPAREN] = ACTIONS(4444), [anon_sym_LBRACK] = ACTIONS(4444), [anon_sym_SEMI] = ACTIONS(4444), [anon_sym_DOLLAR] = ACTIONS(4444), [anon_sym_STAR] = ACTIONS(4444), [anon_sym_TILDE] = ACTIONS(4444), [anon_sym_AT] = ACTIONS(4444), [sym_bool] = ACTIONS(4442), [sym_byte] = ACTIONS(4442), [sym_ubyte] = ACTIONS(4442), [sym_char] = ACTIONS(4442), [sym_short] = ACTIONS(4442), [sym_ushort] = ACTIONS(4442), [sym_int] = ACTIONS(4442), [sym_uint] = ACTIONS(4442), [sym_long] = ACTIONS(4442), [sym_ulong] = ACTIONS(4442), [sym_cent] = ACTIONS(4442), [sym_ucent] = ACTIONS(4442), [sym_wchar] = ACTIONS(4442), [sym_dchar] = ACTIONS(4442), [sym_float] = ACTIONS(4442), [sym_double] = ACTIONS(4442), [sym_real] = ACTIONS(4442), [sym_ifloat] = ACTIONS(4442), [sym_idouble] = ACTIONS(4442), [sym_ireal] = ACTIONS(4442), [sym_cfloat] = ACTIONS(4442), [sym_cdouble] = ACTIONS(4442), [sym_creal] = ACTIONS(4442), [sym_size_t] = ACTIONS(4442), [sym_ptrdiff_t] = ACTIONS(4442), [sym_string] = ACTIONS(4442), [sym_cstring] = ACTIONS(4442), [sym_dstring] = ACTIONS(4442), [sym_wstring] = ACTIONS(4442), [sym_noreturn] = ACTIONS(4442), [sym_true] = ACTIONS(4442), [sym_false] = ACTIONS(4442), [sym_null] = ACTIONS(4442), [sym_super] = ACTIONS(4442), [sym_this] = ACTIONS(4442), [sym_abstract] = ACTIONS(4442), [sym_alias] = ACTIONS(4442), [sym_align] = ACTIONS(4442), [sym_asm] = ACTIONS(4442), [sym_assert] = ACTIONS(4442), [sym_auto] = ACTIONS(4442), [sym_break] = ACTIONS(4442), [sym_case] = ACTIONS(4442), [sym_cast] = ACTIONS(4442), [sym_class] = ACTIONS(4442), [sym_const] = ACTIONS(4442), [sym_continue] = ACTIONS(4442), [sym_debug] = ACTIONS(4442), [sym_default] = ACTIONS(4442), [sym_delegate] = ACTIONS(4442), [sym_delete] = ACTIONS(4442), [sym_deprecated] = ACTIONS(4442), [sym_do] = ACTIONS(4442), [sym_else] = ACTIONS(4442), [sym_enum] = ACTIONS(4442), [sym_export] = ACTIONS(4442), [sym_extern] = ACTIONS(4442), [sym_final] = ACTIONS(4442), [sym_for] = ACTIONS(4442), [sym_foreach] = ACTIONS(4442), [sym_foreach_reverse] = ACTIONS(4442), [sym_function] = ACTIONS(4442), [sym_goto] = ACTIONS(4442), [sym_if] = ACTIONS(4442), [sym_immutable] = ACTIONS(4442), [sym_import] = ACTIONS(4442), [sym_in] = ACTIONS(4442), [sym_inout] = ACTIONS(4442), [sym_interface] = ACTIONS(4442), [sym_invariant] = ACTIONS(4442), [sym_is] = ACTIONS(4442), [sym_mixin] = ACTIONS(4442), [sym_new] = ACTIONS(4442), [sym_nothrow] = ACTIONS(4442), [sym_out] = ACTIONS(4442), [sym_override] = ACTIONS(4442), [sym_package] = ACTIONS(4442), [sym_pragma] = ACTIONS(4442), [sym_private] = ACTIONS(4442), [sym_protected] = ACTIONS(4442), [sym_public] = ACTIONS(4442), [sym_pure] = ACTIONS(4442), [sym_ref] = ACTIONS(4442), [sym_return] = ACTIONS(4442), [sym_scope] = ACTIONS(4442), [sym_shared] = ACTIONS(4442), [sym_static] = ACTIONS(4442), [sym_struct] = ACTIONS(4442), [sym_switch] = ACTIONS(4442), [sym_synchronized] = ACTIONS(4442), [sym_template] = ACTIONS(4442), [sym_throw] = ACTIONS(4442), [sym_try] = ACTIONS(4442), [sym_typeid] = ACTIONS(4442), [sym_typeof] = ACTIONS(4442), [sym_union] = ACTIONS(4442), [sym_unittest] = ACTIONS(4442), [sym_version] = ACTIONS(4442), [sym_while] = ACTIONS(4442), [sym_with] = ACTIONS(4442), [sym_gshared] = ACTIONS(4442), [sym_traits] = ACTIONS(4442), [sym_vector] = ACTIONS(4442), [sym_void] = ACTIONS(4442), [anon_sym_BQUOTE] = ACTIONS(4444), [anon_sym_r_DQUOTE] = ACTIONS(4444), [anon_sym_x_DQUOTE] = ACTIONS(4444), [anon_sym_DQUOTE] = ACTIONS(4444), [anon_sym_i_BQUOTE] = ACTIONS(4444), [anon_sym_i_DQUOTE] = ACTIONS(4444), [anon_sym_iq_LBRACE] = ACTIONS(4444), [aux_sym_char_literal_token1] = ACTIONS(4444), [anon_sym_SQUOTE] = ACTIONS(4442), [anon_sym___DATE__] = ACTIONS(4442), [anon_sym___FILE__] = ACTIONS(4442), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4442), [anon_sym___FUNCTION__] = ACTIONS(4442), [anon_sym___LINE__] = ACTIONS(4442), [anon_sym___MODULE__] = ACTIONS(4442), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4442), [anon_sym___TIME__] = ACTIONS(4442), [anon_sym___TIMESTAMP__] = ACTIONS(4442), [anon_sym___VENDOR__] = ACTIONS(4442), [anon_sym___VERSION__] = ACTIONS(4442), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4444), [sym_float_literal] = ACTIONS(4444), [sym__string] = ACTIONS(4444), }, [1742] = { [sym_identifier] = ACTIONS(4293), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4295), [anon_sym_RBRACE] = ACTIONS(4295), [anon_sym_LBRACE] = ACTIONS(4295), [anon_sym_DOT] = ACTIONS(4295), [anon_sym_AMP] = ACTIONS(4295), [anon_sym_DASH] = ACTIONS(4293), [anon_sym_DASH_DASH] = ACTIONS(4295), [anon_sym_PLUS] = ACTIONS(4293), [anon_sym_PLUS_PLUS] = ACTIONS(4295), [anon_sym_BANG] = ACTIONS(4295), [anon_sym_LPAREN] = ACTIONS(4295), [anon_sym_RPAREN] = ACTIONS(4295), [anon_sym_LBRACK] = ACTIONS(4295), [anon_sym_SEMI] = ACTIONS(4295), [anon_sym_DOLLAR] = ACTIONS(4295), [anon_sym_STAR] = ACTIONS(4295), [anon_sym_TILDE] = ACTIONS(4295), [anon_sym_AT] = ACTIONS(4295), [sym_bool] = ACTIONS(4293), [sym_byte] = ACTIONS(4293), [sym_ubyte] = ACTIONS(4293), [sym_char] = ACTIONS(4293), [sym_short] = ACTIONS(4293), [sym_ushort] = ACTIONS(4293), [sym_int] = ACTIONS(4293), [sym_uint] = ACTIONS(4293), [sym_long] = ACTIONS(4293), [sym_ulong] = ACTIONS(4293), [sym_cent] = ACTIONS(4293), [sym_ucent] = ACTIONS(4293), [sym_wchar] = ACTIONS(4293), [sym_dchar] = ACTIONS(4293), [sym_float] = ACTIONS(4293), [sym_double] = ACTIONS(4293), [sym_real] = ACTIONS(4293), [sym_ifloat] = ACTIONS(4293), [sym_idouble] = ACTIONS(4293), [sym_ireal] = ACTIONS(4293), [sym_cfloat] = ACTIONS(4293), [sym_cdouble] = ACTIONS(4293), [sym_creal] = ACTIONS(4293), [sym_size_t] = ACTIONS(4293), [sym_ptrdiff_t] = ACTIONS(4293), [sym_string] = ACTIONS(4293), [sym_cstring] = ACTIONS(4293), [sym_dstring] = ACTIONS(4293), [sym_wstring] = ACTIONS(4293), [sym_noreturn] = ACTIONS(4293), [sym_true] = ACTIONS(4293), [sym_false] = ACTIONS(4293), [sym_null] = ACTIONS(4293), [sym_super] = ACTIONS(4293), [sym_this] = ACTIONS(4293), [sym_abstract] = ACTIONS(4293), [sym_alias] = ACTIONS(4293), [sym_align] = ACTIONS(4293), [sym_asm] = ACTIONS(4293), [sym_assert] = ACTIONS(4293), [sym_auto] = ACTIONS(4293), [sym_break] = ACTIONS(4293), [sym_case] = ACTIONS(4293), [sym_cast] = ACTIONS(4293), [sym_class] = ACTIONS(4293), [sym_const] = ACTIONS(4293), [sym_continue] = ACTIONS(4293), [sym_debug] = ACTIONS(4293), [sym_default] = ACTIONS(4293), [sym_delegate] = ACTIONS(4293), [sym_delete] = ACTIONS(4293), [sym_deprecated] = ACTIONS(4293), [sym_do] = ACTIONS(4293), [sym_else] = ACTIONS(4293), [sym_enum] = ACTIONS(4293), [sym_export] = ACTIONS(4293), [sym_extern] = ACTIONS(4293), [sym_final] = ACTIONS(4293), [sym_for] = ACTIONS(4293), [sym_foreach] = ACTIONS(4293), [sym_foreach_reverse] = ACTIONS(4293), [sym_function] = ACTIONS(4293), [sym_goto] = ACTIONS(4293), [sym_if] = ACTIONS(4293), [sym_immutable] = ACTIONS(4293), [sym_import] = ACTIONS(4293), [sym_in] = ACTIONS(4293), [sym_inout] = ACTIONS(4293), [sym_interface] = ACTIONS(4293), [sym_invariant] = ACTIONS(4293), [sym_is] = ACTIONS(4293), [sym_mixin] = ACTIONS(4293), [sym_new] = ACTIONS(4293), [sym_nothrow] = ACTIONS(4293), [sym_out] = ACTIONS(4293), [sym_override] = ACTIONS(4293), [sym_package] = ACTIONS(4293), [sym_pragma] = ACTIONS(4293), [sym_private] = ACTIONS(4293), [sym_protected] = ACTIONS(4293), [sym_public] = ACTIONS(4293), [sym_pure] = ACTIONS(4293), [sym_ref] = ACTIONS(4293), [sym_return] = ACTIONS(4293), [sym_scope] = ACTIONS(4293), [sym_shared] = ACTIONS(4293), [sym_static] = ACTIONS(4293), [sym_struct] = ACTIONS(4293), [sym_switch] = ACTIONS(4293), [sym_synchronized] = ACTIONS(4293), [sym_template] = ACTIONS(4293), [sym_throw] = ACTIONS(4293), [sym_try] = ACTIONS(4293), [sym_typeid] = ACTIONS(4293), [sym_typeof] = ACTIONS(4293), [sym_union] = ACTIONS(4293), [sym_unittest] = ACTIONS(4293), [sym_version] = ACTIONS(4293), [sym_while] = ACTIONS(4293), [sym_with] = ACTIONS(4293), [sym_gshared] = ACTIONS(4293), [sym_traits] = ACTIONS(4293), [sym_vector] = ACTIONS(4293), [sym_void] = ACTIONS(4293), [anon_sym_BQUOTE] = ACTIONS(4295), [anon_sym_r_DQUOTE] = ACTIONS(4295), [anon_sym_x_DQUOTE] = ACTIONS(4295), [anon_sym_DQUOTE] = ACTIONS(4295), [anon_sym_i_BQUOTE] = ACTIONS(4295), [anon_sym_i_DQUOTE] = ACTIONS(4295), [anon_sym_iq_LBRACE] = ACTIONS(4295), [aux_sym_char_literal_token1] = ACTIONS(4295), [anon_sym_SQUOTE] = ACTIONS(4293), [anon_sym___DATE__] = ACTIONS(4293), [anon_sym___FILE__] = ACTIONS(4293), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4293), [anon_sym___FUNCTION__] = ACTIONS(4293), [anon_sym___LINE__] = ACTIONS(4293), [anon_sym___MODULE__] = ACTIONS(4293), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4293), [anon_sym___TIME__] = ACTIONS(4293), [anon_sym___TIMESTAMP__] = ACTIONS(4293), [anon_sym___VENDOR__] = ACTIONS(4293), [anon_sym___VERSION__] = ACTIONS(4293), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4295), [sym_float_literal] = ACTIONS(4295), [sym__string] = ACTIONS(4295), }, [1743] = { [sym_identifier] = ACTIONS(4313), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4315), [anon_sym_RBRACE] = ACTIONS(4315), [anon_sym_LBRACE] = ACTIONS(4315), [anon_sym_DOT] = ACTIONS(4315), [anon_sym_AMP] = ACTIONS(4315), [anon_sym_DASH] = ACTIONS(4313), [anon_sym_DASH_DASH] = ACTIONS(4315), [anon_sym_PLUS] = ACTIONS(4313), [anon_sym_PLUS_PLUS] = ACTIONS(4315), [anon_sym_BANG] = ACTIONS(4315), [anon_sym_LPAREN] = ACTIONS(4315), [anon_sym_RPAREN] = ACTIONS(4315), [anon_sym_LBRACK] = ACTIONS(4315), [anon_sym_SEMI] = ACTIONS(4315), [anon_sym_DOLLAR] = ACTIONS(4315), [anon_sym_STAR] = ACTIONS(4315), [anon_sym_TILDE] = ACTIONS(4315), [anon_sym_AT] = ACTIONS(4315), [sym_bool] = ACTIONS(4313), [sym_byte] = ACTIONS(4313), [sym_ubyte] = ACTIONS(4313), [sym_char] = ACTIONS(4313), [sym_short] = ACTIONS(4313), [sym_ushort] = ACTIONS(4313), [sym_int] = ACTIONS(4313), [sym_uint] = ACTIONS(4313), [sym_long] = ACTIONS(4313), [sym_ulong] = ACTIONS(4313), [sym_cent] = ACTIONS(4313), [sym_ucent] = ACTIONS(4313), [sym_wchar] = ACTIONS(4313), [sym_dchar] = ACTIONS(4313), [sym_float] = ACTIONS(4313), [sym_double] = ACTIONS(4313), [sym_real] = ACTIONS(4313), [sym_ifloat] = ACTIONS(4313), [sym_idouble] = ACTIONS(4313), [sym_ireal] = ACTIONS(4313), [sym_cfloat] = ACTIONS(4313), [sym_cdouble] = ACTIONS(4313), [sym_creal] = ACTIONS(4313), [sym_size_t] = ACTIONS(4313), [sym_ptrdiff_t] = ACTIONS(4313), [sym_string] = ACTIONS(4313), [sym_cstring] = ACTIONS(4313), [sym_dstring] = ACTIONS(4313), [sym_wstring] = ACTIONS(4313), [sym_noreturn] = ACTIONS(4313), [sym_true] = ACTIONS(4313), [sym_false] = ACTIONS(4313), [sym_null] = ACTIONS(4313), [sym_super] = ACTIONS(4313), [sym_this] = ACTIONS(4313), [sym_abstract] = ACTIONS(4313), [sym_alias] = ACTIONS(4313), [sym_align] = ACTIONS(4313), [sym_asm] = ACTIONS(4313), [sym_assert] = ACTIONS(4313), [sym_auto] = ACTIONS(4313), [sym_break] = ACTIONS(4313), [sym_case] = ACTIONS(4313), [sym_cast] = ACTIONS(4313), [sym_class] = ACTIONS(4313), [sym_const] = ACTIONS(4313), [sym_continue] = ACTIONS(4313), [sym_debug] = ACTIONS(4313), [sym_default] = ACTIONS(4313), [sym_delegate] = ACTIONS(4313), [sym_delete] = ACTIONS(4313), [sym_deprecated] = ACTIONS(4313), [sym_do] = ACTIONS(4313), [sym_else] = ACTIONS(4313), [sym_enum] = ACTIONS(4313), [sym_export] = ACTIONS(4313), [sym_extern] = ACTIONS(4313), [sym_final] = ACTIONS(4313), [sym_for] = ACTIONS(4313), [sym_foreach] = ACTIONS(4313), [sym_foreach_reverse] = ACTIONS(4313), [sym_function] = ACTIONS(4313), [sym_goto] = ACTIONS(4313), [sym_if] = ACTIONS(4313), [sym_immutable] = ACTIONS(4313), [sym_import] = ACTIONS(4313), [sym_in] = ACTIONS(4313), [sym_inout] = ACTIONS(4313), [sym_interface] = ACTIONS(4313), [sym_invariant] = ACTIONS(4313), [sym_is] = ACTIONS(4313), [sym_mixin] = ACTIONS(4313), [sym_new] = ACTIONS(4313), [sym_nothrow] = ACTIONS(4313), [sym_out] = ACTIONS(4313), [sym_override] = ACTIONS(4313), [sym_package] = ACTIONS(4313), [sym_pragma] = ACTIONS(4313), [sym_private] = ACTIONS(4313), [sym_protected] = ACTIONS(4313), [sym_public] = ACTIONS(4313), [sym_pure] = ACTIONS(4313), [sym_ref] = ACTIONS(4313), [sym_return] = ACTIONS(4313), [sym_scope] = ACTIONS(4313), [sym_shared] = ACTIONS(4313), [sym_static] = ACTIONS(4313), [sym_struct] = ACTIONS(4313), [sym_switch] = ACTIONS(4313), [sym_synchronized] = ACTIONS(4313), [sym_template] = ACTIONS(4313), [sym_throw] = ACTIONS(4313), [sym_try] = ACTIONS(4313), [sym_typeid] = ACTIONS(4313), [sym_typeof] = ACTIONS(4313), [sym_union] = ACTIONS(4313), [sym_unittest] = ACTIONS(4313), [sym_version] = ACTIONS(4313), [sym_while] = ACTIONS(4313), [sym_with] = ACTIONS(4313), [sym_gshared] = ACTIONS(4313), [sym_traits] = ACTIONS(4313), [sym_vector] = ACTIONS(4313), [sym_void] = ACTIONS(4313), [anon_sym_BQUOTE] = ACTIONS(4315), [anon_sym_r_DQUOTE] = ACTIONS(4315), [anon_sym_x_DQUOTE] = ACTIONS(4315), [anon_sym_DQUOTE] = ACTIONS(4315), [anon_sym_i_BQUOTE] = ACTIONS(4315), [anon_sym_i_DQUOTE] = ACTIONS(4315), [anon_sym_iq_LBRACE] = ACTIONS(4315), [aux_sym_char_literal_token1] = ACTIONS(4315), [anon_sym_SQUOTE] = ACTIONS(4313), [anon_sym___DATE__] = ACTIONS(4313), [anon_sym___FILE__] = ACTIONS(4313), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4313), [anon_sym___FUNCTION__] = ACTIONS(4313), [anon_sym___LINE__] = ACTIONS(4313), [anon_sym___MODULE__] = ACTIONS(4313), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4313), [anon_sym___TIME__] = ACTIONS(4313), [anon_sym___TIMESTAMP__] = ACTIONS(4313), [anon_sym___VENDOR__] = ACTIONS(4313), [anon_sym___VERSION__] = ACTIONS(4313), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4315), [sym_float_literal] = ACTIONS(4315), [sym__string] = ACTIONS(4315), }, [1744] = { [sym_identifier] = ACTIONS(4327), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4329), [anon_sym_RBRACE] = ACTIONS(4329), [anon_sym_LBRACE] = ACTIONS(4329), [anon_sym_DOT] = ACTIONS(4329), [anon_sym_AMP] = ACTIONS(4329), [anon_sym_DASH] = ACTIONS(4327), [anon_sym_DASH_DASH] = ACTIONS(4329), [anon_sym_PLUS] = ACTIONS(4327), [anon_sym_PLUS_PLUS] = ACTIONS(4329), [anon_sym_BANG] = ACTIONS(4329), [anon_sym_LPAREN] = ACTIONS(4329), [anon_sym_RPAREN] = ACTIONS(4329), [anon_sym_LBRACK] = ACTIONS(4329), [anon_sym_SEMI] = ACTIONS(4329), [anon_sym_DOLLAR] = ACTIONS(4329), [anon_sym_STAR] = ACTIONS(4329), [anon_sym_TILDE] = ACTIONS(4329), [anon_sym_AT] = ACTIONS(4329), [sym_bool] = ACTIONS(4327), [sym_byte] = ACTIONS(4327), [sym_ubyte] = ACTIONS(4327), [sym_char] = ACTIONS(4327), [sym_short] = ACTIONS(4327), [sym_ushort] = ACTIONS(4327), [sym_int] = ACTIONS(4327), [sym_uint] = ACTIONS(4327), [sym_long] = ACTIONS(4327), [sym_ulong] = ACTIONS(4327), [sym_cent] = ACTIONS(4327), [sym_ucent] = ACTIONS(4327), [sym_wchar] = ACTIONS(4327), [sym_dchar] = ACTIONS(4327), [sym_float] = ACTIONS(4327), [sym_double] = ACTIONS(4327), [sym_real] = ACTIONS(4327), [sym_ifloat] = ACTIONS(4327), [sym_idouble] = ACTIONS(4327), [sym_ireal] = ACTIONS(4327), [sym_cfloat] = ACTIONS(4327), [sym_cdouble] = ACTIONS(4327), [sym_creal] = ACTIONS(4327), [sym_size_t] = ACTIONS(4327), [sym_ptrdiff_t] = ACTIONS(4327), [sym_string] = ACTIONS(4327), [sym_cstring] = ACTIONS(4327), [sym_dstring] = ACTIONS(4327), [sym_wstring] = ACTIONS(4327), [sym_noreturn] = ACTIONS(4327), [sym_true] = ACTIONS(4327), [sym_false] = ACTIONS(4327), [sym_null] = ACTIONS(4327), [sym_super] = ACTIONS(4327), [sym_this] = ACTIONS(4327), [sym_abstract] = ACTIONS(4327), [sym_alias] = ACTIONS(4327), [sym_align] = ACTIONS(4327), [sym_asm] = ACTIONS(4327), [sym_assert] = ACTIONS(4327), [sym_auto] = ACTIONS(4327), [sym_break] = ACTIONS(4327), [sym_case] = ACTIONS(4327), [sym_cast] = ACTIONS(4327), [sym_class] = ACTIONS(4327), [sym_const] = ACTIONS(4327), [sym_continue] = ACTIONS(4327), [sym_debug] = ACTIONS(4327), [sym_default] = ACTIONS(4327), [sym_delegate] = ACTIONS(4327), [sym_delete] = ACTIONS(4327), [sym_deprecated] = ACTIONS(4327), [sym_do] = ACTIONS(4327), [sym_else] = ACTIONS(4327), [sym_enum] = ACTIONS(4327), [sym_export] = ACTIONS(4327), [sym_extern] = ACTIONS(4327), [sym_final] = ACTIONS(4327), [sym_for] = ACTIONS(4327), [sym_foreach] = ACTIONS(4327), [sym_foreach_reverse] = ACTIONS(4327), [sym_function] = ACTIONS(4327), [sym_goto] = ACTIONS(4327), [sym_if] = ACTIONS(4327), [sym_immutable] = ACTIONS(4327), [sym_import] = ACTIONS(4327), [sym_in] = ACTIONS(4327), [sym_inout] = ACTIONS(4327), [sym_interface] = ACTIONS(4327), [sym_invariant] = ACTIONS(4327), [sym_is] = ACTIONS(4327), [sym_mixin] = ACTIONS(4327), [sym_new] = ACTIONS(4327), [sym_nothrow] = ACTIONS(4327), [sym_out] = ACTIONS(4327), [sym_override] = ACTIONS(4327), [sym_package] = ACTIONS(4327), [sym_pragma] = ACTIONS(4327), [sym_private] = ACTIONS(4327), [sym_protected] = ACTIONS(4327), [sym_public] = ACTIONS(4327), [sym_pure] = ACTIONS(4327), [sym_ref] = ACTIONS(4327), [sym_return] = ACTIONS(4327), [sym_scope] = ACTIONS(4327), [sym_shared] = ACTIONS(4327), [sym_static] = ACTIONS(4327), [sym_struct] = ACTIONS(4327), [sym_switch] = ACTIONS(4327), [sym_synchronized] = ACTIONS(4327), [sym_template] = ACTIONS(4327), [sym_throw] = ACTIONS(4327), [sym_try] = ACTIONS(4327), [sym_typeid] = ACTIONS(4327), [sym_typeof] = ACTIONS(4327), [sym_union] = ACTIONS(4327), [sym_unittest] = ACTIONS(4327), [sym_version] = ACTIONS(4327), [sym_while] = ACTIONS(4327), [sym_with] = ACTIONS(4327), [sym_gshared] = ACTIONS(4327), [sym_traits] = ACTIONS(4327), [sym_vector] = ACTIONS(4327), [sym_void] = ACTIONS(4327), [anon_sym_BQUOTE] = ACTIONS(4329), [anon_sym_r_DQUOTE] = ACTIONS(4329), [anon_sym_x_DQUOTE] = ACTIONS(4329), [anon_sym_DQUOTE] = ACTIONS(4329), [anon_sym_i_BQUOTE] = ACTIONS(4329), [anon_sym_i_DQUOTE] = ACTIONS(4329), [anon_sym_iq_LBRACE] = ACTIONS(4329), [aux_sym_char_literal_token1] = ACTIONS(4329), [anon_sym_SQUOTE] = ACTIONS(4327), [anon_sym___DATE__] = ACTIONS(4327), [anon_sym___FILE__] = ACTIONS(4327), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4327), [anon_sym___FUNCTION__] = ACTIONS(4327), [anon_sym___LINE__] = ACTIONS(4327), [anon_sym___MODULE__] = ACTIONS(4327), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4327), [anon_sym___TIME__] = ACTIONS(4327), [anon_sym___TIMESTAMP__] = ACTIONS(4327), [anon_sym___VENDOR__] = ACTIONS(4327), [anon_sym___VERSION__] = ACTIONS(4327), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4329), [sym_float_literal] = ACTIONS(4329), [sym__string] = ACTIONS(4329), }, [1745] = { [sym_identifier] = ACTIONS(4339), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4341), [anon_sym_RBRACE] = ACTIONS(4341), [anon_sym_LBRACE] = ACTIONS(4341), [anon_sym_DOT] = ACTIONS(4341), [anon_sym_AMP] = ACTIONS(4341), [anon_sym_DASH] = ACTIONS(4339), [anon_sym_DASH_DASH] = ACTIONS(4341), [anon_sym_PLUS] = ACTIONS(4339), [anon_sym_PLUS_PLUS] = ACTIONS(4341), [anon_sym_BANG] = ACTIONS(4341), [anon_sym_LPAREN] = ACTIONS(4341), [anon_sym_RPAREN] = ACTIONS(4341), [anon_sym_LBRACK] = ACTIONS(4341), [anon_sym_SEMI] = ACTIONS(4341), [anon_sym_DOLLAR] = ACTIONS(4341), [anon_sym_STAR] = ACTIONS(4341), [anon_sym_TILDE] = ACTIONS(4341), [anon_sym_AT] = ACTIONS(4341), [sym_bool] = ACTIONS(4339), [sym_byte] = ACTIONS(4339), [sym_ubyte] = ACTIONS(4339), [sym_char] = ACTIONS(4339), [sym_short] = ACTIONS(4339), [sym_ushort] = ACTIONS(4339), [sym_int] = ACTIONS(4339), [sym_uint] = ACTIONS(4339), [sym_long] = ACTIONS(4339), [sym_ulong] = ACTIONS(4339), [sym_cent] = ACTIONS(4339), [sym_ucent] = ACTIONS(4339), [sym_wchar] = ACTIONS(4339), [sym_dchar] = ACTIONS(4339), [sym_float] = ACTIONS(4339), [sym_double] = ACTIONS(4339), [sym_real] = ACTIONS(4339), [sym_ifloat] = ACTIONS(4339), [sym_idouble] = ACTIONS(4339), [sym_ireal] = ACTIONS(4339), [sym_cfloat] = ACTIONS(4339), [sym_cdouble] = ACTIONS(4339), [sym_creal] = ACTIONS(4339), [sym_size_t] = ACTIONS(4339), [sym_ptrdiff_t] = ACTIONS(4339), [sym_string] = ACTIONS(4339), [sym_cstring] = ACTIONS(4339), [sym_dstring] = ACTIONS(4339), [sym_wstring] = ACTIONS(4339), [sym_noreturn] = ACTIONS(4339), [sym_true] = ACTIONS(4339), [sym_false] = ACTIONS(4339), [sym_null] = ACTIONS(4339), [sym_super] = ACTIONS(4339), [sym_this] = ACTIONS(4339), [sym_abstract] = ACTIONS(4339), [sym_alias] = ACTIONS(4339), [sym_align] = ACTIONS(4339), [sym_asm] = ACTIONS(4339), [sym_assert] = ACTIONS(4339), [sym_auto] = ACTIONS(4339), [sym_break] = ACTIONS(4339), [sym_case] = ACTIONS(4339), [sym_cast] = ACTIONS(4339), [sym_class] = ACTIONS(4339), [sym_const] = ACTIONS(4339), [sym_continue] = ACTIONS(4339), [sym_debug] = ACTIONS(4339), [sym_default] = ACTIONS(4339), [sym_delegate] = ACTIONS(4339), [sym_delete] = ACTIONS(4339), [sym_deprecated] = ACTIONS(4339), [sym_do] = ACTIONS(4339), [sym_else] = ACTIONS(4339), [sym_enum] = ACTIONS(4339), [sym_export] = ACTIONS(4339), [sym_extern] = ACTIONS(4339), [sym_final] = ACTIONS(4339), [sym_for] = ACTIONS(4339), [sym_foreach] = ACTIONS(4339), [sym_foreach_reverse] = ACTIONS(4339), [sym_function] = ACTIONS(4339), [sym_goto] = ACTIONS(4339), [sym_if] = ACTIONS(4339), [sym_immutable] = ACTIONS(4339), [sym_import] = ACTIONS(4339), [sym_in] = ACTIONS(4339), [sym_inout] = ACTIONS(4339), [sym_interface] = ACTIONS(4339), [sym_invariant] = ACTIONS(4339), [sym_is] = ACTIONS(4339), [sym_mixin] = ACTIONS(4339), [sym_new] = ACTIONS(4339), [sym_nothrow] = ACTIONS(4339), [sym_out] = ACTIONS(4339), [sym_override] = ACTIONS(4339), [sym_package] = ACTIONS(4339), [sym_pragma] = ACTIONS(4339), [sym_private] = ACTIONS(4339), [sym_protected] = ACTIONS(4339), [sym_public] = ACTIONS(4339), [sym_pure] = ACTIONS(4339), [sym_ref] = ACTIONS(4339), [sym_return] = ACTIONS(4339), [sym_scope] = ACTIONS(4339), [sym_shared] = ACTIONS(4339), [sym_static] = ACTIONS(4339), [sym_struct] = ACTIONS(4339), [sym_switch] = ACTIONS(4339), [sym_synchronized] = ACTIONS(4339), [sym_template] = ACTIONS(4339), [sym_throw] = ACTIONS(4339), [sym_try] = ACTIONS(4339), [sym_typeid] = ACTIONS(4339), [sym_typeof] = ACTIONS(4339), [sym_union] = ACTIONS(4339), [sym_unittest] = ACTIONS(4339), [sym_version] = ACTIONS(4339), [sym_while] = ACTIONS(4339), [sym_with] = ACTIONS(4339), [sym_gshared] = ACTIONS(4339), [sym_traits] = ACTIONS(4339), [sym_vector] = ACTIONS(4339), [sym_void] = ACTIONS(4339), [anon_sym_BQUOTE] = ACTIONS(4341), [anon_sym_r_DQUOTE] = ACTIONS(4341), [anon_sym_x_DQUOTE] = ACTIONS(4341), [anon_sym_DQUOTE] = ACTIONS(4341), [anon_sym_i_BQUOTE] = ACTIONS(4341), [anon_sym_i_DQUOTE] = ACTIONS(4341), [anon_sym_iq_LBRACE] = ACTIONS(4341), [aux_sym_char_literal_token1] = ACTIONS(4341), [anon_sym_SQUOTE] = ACTIONS(4339), [anon_sym___DATE__] = ACTIONS(4339), [anon_sym___FILE__] = ACTIONS(4339), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4339), [anon_sym___FUNCTION__] = ACTIONS(4339), [anon_sym___LINE__] = ACTIONS(4339), [anon_sym___MODULE__] = ACTIONS(4339), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4339), [anon_sym___TIME__] = ACTIONS(4339), [anon_sym___TIMESTAMP__] = ACTIONS(4339), [anon_sym___VENDOR__] = ACTIONS(4339), [anon_sym___VERSION__] = ACTIONS(4339), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4341), [sym_float_literal] = ACTIONS(4341), [sym__string] = ACTIONS(4341), }, [1746] = { [sym_identifier] = ACTIONS(4520), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4522), [anon_sym_RBRACE] = ACTIONS(4522), [anon_sym_LBRACE] = ACTIONS(4522), [anon_sym_DOT] = ACTIONS(4522), [anon_sym_AMP] = ACTIONS(4522), [anon_sym_DASH] = ACTIONS(4520), [anon_sym_DASH_DASH] = ACTIONS(4522), [anon_sym_PLUS] = ACTIONS(4520), [anon_sym_PLUS_PLUS] = ACTIONS(4522), [anon_sym_BANG] = ACTIONS(4522), [anon_sym_LPAREN] = ACTIONS(4522), [anon_sym_RPAREN] = ACTIONS(4522), [anon_sym_LBRACK] = ACTIONS(4522), [anon_sym_SEMI] = ACTIONS(4522), [anon_sym_DOLLAR] = ACTIONS(4522), [anon_sym_STAR] = ACTIONS(4522), [anon_sym_TILDE] = ACTIONS(4522), [anon_sym_AT] = ACTIONS(4522), [sym_bool] = ACTIONS(4520), [sym_byte] = ACTIONS(4520), [sym_ubyte] = ACTIONS(4520), [sym_char] = ACTIONS(4520), [sym_short] = ACTIONS(4520), [sym_ushort] = ACTIONS(4520), [sym_int] = ACTIONS(4520), [sym_uint] = ACTIONS(4520), [sym_long] = ACTIONS(4520), [sym_ulong] = ACTIONS(4520), [sym_cent] = ACTIONS(4520), [sym_ucent] = ACTIONS(4520), [sym_wchar] = ACTIONS(4520), [sym_dchar] = ACTIONS(4520), [sym_float] = ACTIONS(4520), [sym_double] = ACTIONS(4520), [sym_real] = ACTIONS(4520), [sym_ifloat] = ACTIONS(4520), [sym_idouble] = ACTIONS(4520), [sym_ireal] = ACTIONS(4520), [sym_cfloat] = ACTIONS(4520), [sym_cdouble] = ACTIONS(4520), [sym_creal] = ACTIONS(4520), [sym_size_t] = ACTIONS(4520), [sym_ptrdiff_t] = ACTIONS(4520), [sym_string] = ACTIONS(4520), [sym_cstring] = ACTIONS(4520), [sym_dstring] = ACTIONS(4520), [sym_wstring] = ACTIONS(4520), [sym_noreturn] = ACTIONS(4520), [sym_true] = ACTIONS(4520), [sym_false] = ACTIONS(4520), [sym_null] = ACTIONS(4520), [sym_super] = ACTIONS(4520), [sym_this] = ACTIONS(4520), [sym_abstract] = ACTIONS(4520), [sym_alias] = ACTIONS(4520), [sym_align] = ACTIONS(4520), [sym_asm] = ACTIONS(4520), [sym_assert] = ACTIONS(4520), [sym_auto] = ACTIONS(4520), [sym_break] = ACTIONS(4520), [sym_case] = ACTIONS(4520), [sym_cast] = ACTIONS(4520), [sym_class] = ACTIONS(4520), [sym_const] = ACTIONS(4520), [sym_continue] = ACTIONS(4520), [sym_debug] = ACTIONS(4520), [sym_default] = ACTIONS(4520), [sym_delegate] = ACTIONS(4520), [sym_delete] = ACTIONS(4520), [sym_deprecated] = ACTIONS(4520), [sym_do] = ACTIONS(4520), [sym_else] = ACTIONS(4520), [sym_enum] = ACTIONS(4520), [sym_export] = ACTIONS(4520), [sym_extern] = ACTIONS(4520), [sym_final] = ACTIONS(4520), [sym_for] = ACTIONS(4520), [sym_foreach] = ACTIONS(4520), [sym_foreach_reverse] = ACTIONS(4520), [sym_function] = ACTIONS(4520), [sym_goto] = ACTIONS(4520), [sym_if] = ACTIONS(4520), [sym_immutable] = ACTIONS(4520), [sym_import] = ACTIONS(4520), [sym_in] = ACTIONS(4520), [sym_inout] = ACTIONS(4520), [sym_interface] = ACTIONS(4520), [sym_invariant] = ACTIONS(4520), [sym_is] = ACTIONS(4520), [sym_mixin] = ACTIONS(4520), [sym_new] = ACTIONS(4520), [sym_nothrow] = ACTIONS(4520), [sym_out] = ACTIONS(4520), [sym_override] = ACTIONS(4520), [sym_package] = ACTIONS(4520), [sym_pragma] = ACTIONS(4520), [sym_private] = ACTIONS(4520), [sym_protected] = ACTIONS(4520), [sym_public] = ACTIONS(4520), [sym_pure] = ACTIONS(4520), [sym_ref] = ACTIONS(4520), [sym_return] = ACTIONS(4520), [sym_scope] = ACTIONS(4520), [sym_shared] = ACTIONS(4520), [sym_static] = ACTIONS(4520), [sym_struct] = ACTIONS(4520), [sym_switch] = ACTIONS(4520), [sym_synchronized] = ACTIONS(4520), [sym_template] = ACTIONS(4520), [sym_throw] = ACTIONS(4520), [sym_try] = ACTIONS(4520), [sym_typeid] = ACTIONS(4520), [sym_typeof] = ACTIONS(4520), [sym_union] = ACTIONS(4520), [sym_unittest] = ACTIONS(4520), [sym_version] = ACTIONS(4520), [sym_while] = ACTIONS(4520), [sym_with] = ACTIONS(4520), [sym_gshared] = ACTIONS(4520), [sym_traits] = ACTIONS(4520), [sym_vector] = ACTIONS(4520), [sym_void] = ACTIONS(4520), [anon_sym_BQUOTE] = ACTIONS(4522), [anon_sym_r_DQUOTE] = ACTIONS(4522), [anon_sym_x_DQUOTE] = ACTIONS(4522), [anon_sym_DQUOTE] = ACTIONS(4522), [anon_sym_i_BQUOTE] = ACTIONS(4522), [anon_sym_i_DQUOTE] = ACTIONS(4522), [anon_sym_iq_LBRACE] = ACTIONS(4522), [aux_sym_char_literal_token1] = ACTIONS(4522), [anon_sym_SQUOTE] = ACTIONS(4520), [anon_sym___DATE__] = ACTIONS(4520), [anon_sym___FILE__] = ACTIONS(4520), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4520), [anon_sym___FUNCTION__] = ACTIONS(4520), [anon_sym___LINE__] = ACTIONS(4520), [anon_sym___MODULE__] = ACTIONS(4520), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4520), [anon_sym___TIME__] = ACTIONS(4520), [anon_sym___TIMESTAMP__] = ACTIONS(4520), [anon_sym___VENDOR__] = ACTIONS(4520), [anon_sym___VERSION__] = ACTIONS(4520), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4522), [sym_float_literal] = ACTIONS(4522), [sym__string] = ACTIONS(4522), }, [1747] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4618), [anon_sym_RBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(4926), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_AMP] = ACTIONS(4618), [anon_sym_DASH] = ACTIONS(4616), [anon_sym_DASH_DASH] = ACTIONS(4618), [anon_sym_PLUS] = ACTIONS(4616), [anon_sym_PLUS_PLUS] = ACTIONS(4618), [anon_sym_BANG] = ACTIONS(4618), [anon_sym_LPAREN] = ACTIONS(4618), [anon_sym_RPAREN] = ACTIONS(4618), [anon_sym_LBRACK] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4926), [anon_sym_DOLLAR] = ACTIONS(4618), [anon_sym_STAR] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_true] = ACTIONS(4616), [sym_false] = ACTIONS(4616), [sym_null] = ACTIONS(4616), [sym_super] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_asm] = ACTIONS(4616), [sym_assert] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_break] = ACTIONS(4616), [sym_case] = ACTIONS(4616), [sym_cast] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_continue] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_default] = ACTIONS(4616), [sym_delegate] = ACTIONS(4616), [sym_delete] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(4929), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_for] = ACTIONS(4616), [sym_foreach] = ACTIONS(4616), [sym_foreach_reverse] = ACTIONS(4616), [sym_function] = ACTIONS(4616), [sym_goto] = ACTIONS(4616), [sym_if] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(4929), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_is] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_new] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(4929), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_switch] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_throw] = ACTIONS(4616), [sym_try] = ACTIONS(4616), [sym_typeid] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_with] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [anon_sym_BQUOTE] = ACTIONS(4618), [anon_sym_r_DQUOTE] = ACTIONS(4618), [anon_sym_x_DQUOTE] = ACTIONS(4618), [anon_sym_DQUOTE] = ACTIONS(4618), [anon_sym_i_BQUOTE] = ACTIONS(4618), [anon_sym_i_DQUOTE] = ACTIONS(4618), [anon_sym_iq_LBRACE] = ACTIONS(4618), [aux_sym_char_literal_token1] = ACTIONS(4618), [anon_sym_SQUOTE] = ACTIONS(4616), [anon_sym___DATE__] = ACTIONS(4616), [anon_sym___FILE__] = ACTIONS(4616), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4616), [anon_sym___FUNCTION__] = ACTIONS(4616), [anon_sym___LINE__] = ACTIONS(4616), [anon_sym___MODULE__] = ACTIONS(4616), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4616), [anon_sym___TIME__] = ACTIONS(4616), [anon_sym___TIMESTAMP__] = ACTIONS(4616), [anon_sym___VENDOR__] = ACTIONS(4616), [anon_sym___VERSION__] = ACTIONS(4616), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4618), [sym_float_literal] = ACTIONS(4618), [sym__string] = ACTIONS(4618), }, [1748] = { [sym_identifier] = ACTIONS(4512), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4514), [anon_sym_RBRACE] = ACTIONS(4514), [anon_sym_LBRACE] = ACTIONS(4514), [anon_sym_DOT] = ACTIONS(4514), [anon_sym_AMP] = ACTIONS(4514), [anon_sym_DASH] = ACTIONS(4512), [anon_sym_DASH_DASH] = ACTIONS(4514), [anon_sym_PLUS] = ACTIONS(4512), [anon_sym_PLUS_PLUS] = ACTIONS(4514), [anon_sym_BANG] = ACTIONS(4514), [anon_sym_LPAREN] = ACTIONS(4514), [anon_sym_RPAREN] = ACTIONS(4514), [anon_sym_LBRACK] = ACTIONS(4514), [anon_sym_SEMI] = ACTIONS(4514), [anon_sym_DOLLAR] = ACTIONS(4514), [anon_sym_STAR] = ACTIONS(4514), [anon_sym_TILDE] = ACTIONS(4514), [anon_sym_AT] = ACTIONS(4514), [sym_bool] = ACTIONS(4512), [sym_byte] = ACTIONS(4512), [sym_ubyte] = ACTIONS(4512), [sym_char] = ACTIONS(4512), [sym_short] = ACTIONS(4512), [sym_ushort] = ACTIONS(4512), [sym_int] = ACTIONS(4512), [sym_uint] = ACTIONS(4512), [sym_long] = ACTIONS(4512), [sym_ulong] = ACTIONS(4512), [sym_cent] = ACTIONS(4512), [sym_ucent] = ACTIONS(4512), [sym_wchar] = ACTIONS(4512), [sym_dchar] = ACTIONS(4512), [sym_float] = ACTIONS(4512), [sym_double] = ACTIONS(4512), [sym_real] = ACTIONS(4512), [sym_ifloat] = ACTIONS(4512), [sym_idouble] = ACTIONS(4512), [sym_ireal] = ACTIONS(4512), [sym_cfloat] = ACTIONS(4512), [sym_cdouble] = ACTIONS(4512), [sym_creal] = ACTIONS(4512), [sym_size_t] = ACTIONS(4512), [sym_ptrdiff_t] = ACTIONS(4512), [sym_string] = ACTIONS(4512), [sym_cstring] = ACTIONS(4512), [sym_dstring] = ACTIONS(4512), [sym_wstring] = ACTIONS(4512), [sym_noreturn] = ACTIONS(4512), [sym_true] = ACTIONS(4512), [sym_false] = ACTIONS(4512), [sym_null] = ACTIONS(4512), [sym_super] = ACTIONS(4512), [sym_this] = ACTIONS(4512), [sym_abstract] = ACTIONS(4512), [sym_alias] = ACTIONS(4512), [sym_align] = ACTIONS(4512), [sym_asm] = ACTIONS(4512), [sym_assert] = ACTIONS(4512), [sym_auto] = ACTIONS(4512), [sym_break] = ACTIONS(4512), [sym_case] = ACTIONS(4512), [sym_cast] = ACTIONS(4512), [sym_class] = ACTIONS(4512), [sym_const] = ACTIONS(4512), [sym_continue] = ACTIONS(4512), [sym_debug] = ACTIONS(4512), [sym_default] = ACTIONS(4512), [sym_delegate] = ACTIONS(4512), [sym_delete] = ACTIONS(4512), [sym_deprecated] = ACTIONS(4512), [sym_do] = ACTIONS(4512), [sym_else] = ACTIONS(4512), [sym_enum] = ACTIONS(4512), [sym_export] = ACTIONS(4512), [sym_extern] = ACTIONS(4512), [sym_final] = ACTIONS(4512), [sym_for] = ACTIONS(4512), [sym_foreach] = ACTIONS(4512), [sym_foreach_reverse] = ACTIONS(4512), [sym_function] = ACTIONS(4512), [sym_goto] = ACTIONS(4512), [sym_if] = ACTIONS(4512), [sym_immutable] = ACTIONS(4512), [sym_import] = ACTIONS(4512), [sym_in] = ACTIONS(4512), [sym_inout] = ACTIONS(4512), [sym_interface] = ACTIONS(4512), [sym_invariant] = ACTIONS(4512), [sym_is] = ACTIONS(4512), [sym_mixin] = ACTIONS(4512), [sym_new] = ACTIONS(4512), [sym_nothrow] = ACTIONS(4512), [sym_out] = ACTIONS(4512), [sym_override] = ACTIONS(4512), [sym_package] = ACTIONS(4512), [sym_pragma] = ACTIONS(4512), [sym_private] = ACTIONS(4512), [sym_protected] = ACTIONS(4512), [sym_public] = ACTIONS(4512), [sym_pure] = ACTIONS(4512), [sym_ref] = ACTIONS(4512), [sym_return] = ACTIONS(4512), [sym_scope] = ACTIONS(4512), [sym_shared] = ACTIONS(4512), [sym_static] = ACTIONS(4512), [sym_struct] = ACTIONS(4512), [sym_switch] = ACTIONS(4512), [sym_synchronized] = ACTIONS(4512), [sym_template] = ACTIONS(4512), [sym_throw] = ACTIONS(4512), [sym_try] = ACTIONS(4512), [sym_typeid] = ACTIONS(4512), [sym_typeof] = ACTIONS(4512), [sym_union] = ACTIONS(4512), [sym_unittest] = ACTIONS(4512), [sym_version] = ACTIONS(4512), [sym_while] = ACTIONS(4512), [sym_with] = ACTIONS(4512), [sym_gshared] = ACTIONS(4512), [sym_traits] = ACTIONS(4512), [sym_vector] = ACTIONS(4512), [sym_void] = ACTIONS(4512), [anon_sym_BQUOTE] = ACTIONS(4514), [anon_sym_r_DQUOTE] = ACTIONS(4514), [anon_sym_x_DQUOTE] = ACTIONS(4514), [anon_sym_DQUOTE] = ACTIONS(4514), [anon_sym_i_BQUOTE] = ACTIONS(4514), [anon_sym_i_DQUOTE] = ACTIONS(4514), [anon_sym_iq_LBRACE] = ACTIONS(4514), [aux_sym_char_literal_token1] = ACTIONS(4514), [anon_sym_SQUOTE] = ACTIONS(4512), [anon_sym___DATE__] = ACTIONS(4512), [anon_sym___FILE__] = ACTIONS(4512), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4512), [anon_sym___FUNCTION__] = ACTIONS(4512), [anon_sym___LINE__] = ACTIONS(4512), [anon_sym___MODULE__] = ACTIONS(4512), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4512), [anon_sym___TIME__] = ACTIONS(4512), [anon_sym___TIMESTAMP__] = ACTIONS(4512), [anon_sym___VENDOR__] = ACTIONS(4512), [anon_sym___VERSION__] = ACTIONS(4512), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4514), [sym_float_literal] = ACTIONS(4514), [sym__string] = ACTIONS(4514), }, [1749] = { [sym_identifier] = ACTIONS(4620), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4622), [anon_sym_RBRACE] = ACTIONS(4622), [anon_sym_LBRACE] = ACTIONS(4622), [anon_sym_DOT] = ACTIONS(4622), [anon_sym_AMP] = ACTIONS(4622), [anon_sym_DASH] = ACTIONS(4620), [anon_sym_DASH_DASH] = ACTIONS(4622), [anon_sym_PLUS] = ACTIONS(4620), [anon_sym_PLUS_PLUS] = ACTIONS(4622), [anon_sym_BANG] = ACTIONS(4622), [anon_sym_LPAREN] = ACTIONS(4622), [anon_sym_RPAREN] = ACTIONS(4622), [anon_sym_LBRACK] = ACTIONS(4622), [anon_sym_SEMI] = ACTIONS(4622), [anon_sym_DOLLAR] = ACTIONS(4622), [anon_sym_STAR] = ACTIONS(4622), [anon_sym_TILDE] = ACTIONS(4622), [anon_sym_AT] = ACTIONS(4622), [sym_bool] = ACTIONS(4620), [sym_byte] = ACTIONS(4620), [sym_ubyte] = ACTIONS(4620), [sym_char] = ACTIONS(4620), [sym_short] = ACTIONS(4620), [sym_ushort] = ACTIONS(4620), [sym_int] = ACTIONS(4620), [sym_uint] = ACTIONS(4620), [sym_long] = ACTIONS(4620), [sym_ulong] = ACTIONS(4620), [sym_cent] = ACTIONS(4620), [sym_ucent] = ACTIONS(4620), [sym_wchar] = ACTIONS(4620), [sym_dchar] = ACTIONS(4620), [sym_float] = ACTIONS(4620), [sym_double] = ACTIONS(4620), [sym_real] = ACTIONS(4620), [sym_ifloat] = ACTIONS(4620), [sym_idouble] = ACTIONS(4620), [sym_ireal] = ACTIONS(4620), [sym_cfloat] = ACTIONS(4620), [sym_cdouble] = ACTIONS(4620), [sym_creal] = ACTIONS(4620), [sym_size_t] = ACTIONS(4620), [sym_ptrdiff_t] = ACTIONS(4620), [sym_string] = ACTIONS(4620), [sym_cstring] = ACTIONS(4620), [sym_dstring] = ACTIONS(4620), [sym_wstring] = ACTIONS(4620), [sym_noreturn] = ACTIONS(4620), [sym_true] = ACTIONS(4620), [sym_false] = ACTIONS(4620), [sym_null] = ACTIONS(4620), [sym_super] = ACTIONS(4620), [sym_this] = ACTIONS(4620), [sym_abstract] = ACTIONS(4620), [sym_alias] = ACTIONS(4620), [sym_align] = ACTIONS(4620), [sym_asm] = ACTIONS(4620), [sym_assert] = ACTIONS(4620), [sym_auto] = ACTIONS(4620), [sym_break] = ACTIONS(4620), [sym_case] = ACTIONS(4620), [sym_cast] = ACTIONS(4620), [sym_class] = ACTIONS(4620), [sym_const] = ACTIONS(4620), [sym_continue] = ACTIONS(4620), [sym_debug] = ACTIONS(4620), [sym_default] = ACTIONS(4620), [sym_delegate] = ACTIONS(4620), [sym_delete] = ACTIONS(4620), [sym_deprecated] = ACTIONS(4620), [sym_do] = ACTIONS(4620), [sym_else] = ACTIONS(4620), [sym_enum] = ACTIONS(4620), [sym_export] = ACTIONS(4620), [sym_extern] = ACTIONS(4620), [sym_final] = ACTIONS(4620), [sym_for] = ACTIONS(4620), [sym_foreach] = ACTIONS(4620), [sym_foreach_reverse] = ACTIONS(4620), [sym_function] = ACTIONS(4620), [sym_goto] = ACTIONS(4620), [sym_if] = ACTIONS(4620), [sym_immutable] = ACTIONS(4620), [sym_import] = ACTIONS(4620), [sym_in] = ACTIONS(4620), [sym_inout] = ACTIONS(4620), [sym_interface] = ACTIONS(4620), [sym_invariant] = ACTIONS(4620), [sym_is] = ACTIONS(4620), [sym_mixin] = ACTIONS(4620), [sym_new] = ACTIONS(4620), [sym_nothrow] = ACTIONS(4620), [sym_out] = ACTIONS(4620), [sym_override] = ACTIONS(4620), [sym_package] = ACTIONS(4620), [sym_pragma] = ACTIONS(4620), [sym_private] = ACTIONS(4620), [sym_protected] = ACTIONS(4620), [sym_public] = ACTIONS(4620), [sym_pure] = ACTIONS(4620), [sym_ref] = ACTIONS(4620), [sym_return] = ACTIONS(4620), [sym_scope] = ACTIONS(4620), [sym_shared] = ACTIONS(4620), [sym_static] = ACTIONS(4620), [sym_struct] = ACTIONS(4620), [sym_switch] = ACTIONS(4620), [sym_synchronized] = ACTIONS(4620), [sym_template] = ACTIONS(4620), [sym_throw] = ACTIONS(4620), [sym_try] = ACTIONS(4620), [sym_typeid] = ACTIONS(4620), [sym_typeof] = ACTIONS(4620), [sym_union] = ACTIONS(4620), [sym_unittest] = ACTIONS(4620), [sym_version] = ACTIONS(4620), [sym_while] = ACTIONS(4620), [sym_with] = ACTIONS(4620), [sym_gshared] = ACTIONS(4620), [sym_traits] = ACTIONS(4620), [sym_vector] = ACTIONS(4620), [sym_void] = ACTIONS(4620), [anon_sym_BQUOTE] = ACTIONS(4622), [anon_sym_r_DQUOTE] = ACTIONS(4622), [anon_sym_x_DQUOTE] = ACTIONS(4622), [anon_sym_DQUOTE] = ACTIONS(4622), [anon_sym_i_BQUOTE] = ACTIONS(4622), [anon_sym_i_DQUOTE] = ACTIONS(4622), [anon_sym_iq_LBRACE] = ACTIONS(4622), [aux_sym_char_literal_token1] = ACTIONS(4622), [anon_sym_SQUOTE] = ACTIONS(4620), [anon_sym___DATE__] = ACTIONS(4620), [anon_sym___FILE__] = ACTIONS(4620), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4620), [anon_sym___FUNCTION__] = ACTIONS(4620), [anon_sym___LINE__] = ACTIONS(4620), [anon_sym___MODULE__] = ACTIONS(4620), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4620), [anon_sym___TIME__] = ACTIONS(4620), [anon_sym___TIMESTAMP__] = ACTIONS(4620), [anon_sym___VENDOR__] = ACTIONS(4620), [anon_sym___VERSION__] = ACTIONS(4620), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4622), [sym_float_literal] = ACTIONS(4622), [sym__string] = ACTIONS(4622), }, [1750] = { [sym_identifier] = ACTIONS(4414), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4416), [anon_sym_RBRACE] = ACTIONS(4416), [anon_sym_LBRACE] = ACTIONS(4416), [anon_sym_DOT] = ACTIONS(4416), [anon_sym_AMP] = ACTIONS(4416), [anon_sym_DASH] = ACTIONS(4414), [anon_sym_DASH_DASH] = ACTIONS(4416), [anon_sym_PLUS] = ACTIONS(4414), [anon_sym_PLUS_PLUS] = ACTIONS(4416), [anon_sym_BANG] = ACTIONS(4416), [anon_sym_LPAREN] = ACTIONS(4416), [anon_sym_RPAREN] = ACTIONS(4416), [anon_sym_LBRACK] = ACTIONS(4416), [anon_sym_SEMI] = ACTIONS(4416), [anon_sym_DOLLAR] = ACTIONS(4416), [anon_sym_STAR] = ACTIONS(4416), [anon_sym_TILDE] = ACTIONS(4416), [anon_sym_AT] = ACTIONS(4416), [sym_bool] = ACTIONS(4414), [sym_byte] = ACTIONS(4414), [sym_ubyte] = ACTIONS(4414), [sym_char] = ACTIONS(4414), [sym_short] = ACTIONS(4414), [sym_ushort] = ACTIONS(4414), [sym_int] = ACTIONS(4414), [sym_uint] = ACTIONS(4414), [sym_long] = ACTIONS(4414), [sym_ulong] = ACTIONS(4414), [sym_cent] = ACTIONS(4414), [sym_ucent] = ACTIONS(4414), [sym_wchar] = ACTIONS(4414), [sym_dchar] = ACTIONS(4414), [sym_float] = ACTIONS(4414), [sym_double] = ACTIONS(4414), [sym_real] = ACTIONS(4414), [sym_ifloat] = ACTIONS(4414), [sym_idouble] = ACTIONS(4414), [sym_ireal] = ACTIONS(4414), [sym_cfloat] = ACTIONS(4414), [sym_cdouble] = ACTIONS(4414), [sym_creal] = ACTIONS(4414), [sym_size_t] = ACTIONS(4414), [sym_ptrdiff_t] = ACTIONS(4414), [sym_string] = ACTIONS(4414), [sym_cstring] = ACTIONS(4414), [sym_dstring] = ACTIONS(4414), [sym_wstring] = ACTIONS(4414), [sym_noreturn] = ACTIONS(4414), [sym_true] = ACTIONS(4414), [sym_false] = ACTIONS(4414), [sym_null] = ACTIONS(4414), [sym_super] = ACTIONS(4414), [sym_this] = ACTIONS(4414), [sym_abstract] = ACTIONS(4414), [sym_alias] = ACTIONS(4414), [sym_align] = ACTIONS(4414), [sym_asm] = ACTIONS(4414), [sym_assert] = ACTIONS(4414), [sym_auto] = ACTIONS(4414), [sym_break] = ACTIONS(4414), [sym_case] = ACTIONS(4414), [sym_cast] = ACTIONS(4414), [sym_class] = ACTIONS(4414), [sym_const] = ACTIONS(4414), [sym_continue] = ACTIONS(4414), [sym_debug] = ACTIONS(4414), [sym_default] = ACTIONS(4414), [sym_delegate] = ACTIONS(4414), [sym_delete] = ACTIONS(4414), [sym_deprecated] = ACTIONS(4414), [sym_do] = ACTIONS(4414), [sym_else] = ACTIONS(4414), [sym_enum] = ACTIONS(4414), [sym_export] = ACTIONS(4414), [sym_extern] = ACTIONS(4414), [sym_final] = ACTIONS(4414), [sym_for] = ACTIONS(4414), [sym_foreach] = ACTIONS(4414), [sym_foreach_reverse] = ACTIONS(4414), [sym_function] = ACTIONS(4414), [sym_goto] = ACTIONS(4414), [sym_if] = ACTIONS(4414), [sym_immutable] = ACTIONS(4414), [sym_import] = ACTIONS(4414), [sym_in] = ACTIONS(4414), [sym_inout] = ACTIONS(4414), [sym_interface] = ACTIONS(4414), [sym_invariant] = ACTIONS(4414), [sym_is] = ACTIONS(4414), [sym_mixin] = ACTIONS(4414), [sym_new] = ACTIONS(4414), [sym_nothrow] = ACTIONS(4414), [sym_out] = ACTIONS(4414), [sym_override] = ACTIONS(4414), [sym_package] = ACTIONS(4414), [sym_pragma] = ACTIONS(4414), [sym_private] = ACTIONS(4414), [sym_protected] = ACTIONS(4414), [sym_public] = ACTIONS(4414), [sym_pure] = ACTIONS(4414), [sym_ref] = ACTIONS(4414), [sym_return] = ACTIONS(4414), [sym_scope] = ACTIONS(4414), [sym_shared] = ACTIONS(4414), [sym_static] = ACTIONS(4414), [sym_struct] = ACTIONS(4414), [sym_switch] = ACTIONS(4414), [sym_synchronized] = ACTIONS(4414), [sym_template] = ACTIONS(4414), [sym_throw] = ACTIONS(4414), [sym_try] = ACTIONS(4414), [sym_typeid] = ACTIONS(4414), [sym_typeof] = ACTIONS(4414), [sym_union] = ACTIONS(4414), [sym_unittest] = ACTIONS(4414), [sym_version] = ACTIONS(4414), [sym_while] = ACTIONS(4414), [sym_with] = ACTIONS(4414), [sym_gshared] = ACTIONS(4414), [sym_traits] = ACTIONS(4414), [sym_vector] = ACTIONS(4414), [sym_void] = ACTIONS(4414), [anon_sym_BQUOTE] = ACTIONS(4416), [anon_sym_r_DQUOTE] = ACTIONS(4416), [anon_sym_x_DQUOTE] = ACTIONS(4416), [anon_sym_DQUOTE] = ACTIONS(4416), [anon_sym_i_BQUOTE] = ACTIONS(4416), [anon_sym_i_DQUOTE] = ACTIONS(4416), [anon_sym_iq_LBRACE] = ACTIONS(4416), [aux_sym_char_literal_token1] = ACTIONS(4416), [anon_sym_SQUOTE] = ACTIONS(4414), [anon_sym___DATE__] = ACTIONS(4414), [anon_sym___FILE__] = ACTIONS(4414), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4414), [anon_sym___FUNCTION__] = ACTIONS(4414), [anon_sym___LINE__] = ACTIONS(4414), [anon_sym___MODULE__] = ACTIONS(4414), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4414), [anon_sym___TIME__] = ACTIONS(4414), [anon_sym___TIMESTAMP__] = ACTIONS(4414), [anon_sym___VENDOR__] = ACTIONS(4414), [anon_sym___VERSION__] = ACTIONS(4414), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4416), [sym_float_literal] = ACTIONS(4416), [sym__string] = ACTIONS(4416), }, [1751] = { [sym_identifier] = ACTIONS(4418), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4420), [anon_sym_RBRACE] = ACTIONS(4420), [anon_sym_LBRACE] = ACTIONS(4420), [anon_sym_DOT] = ACTIONS(4420), [anon_sym_AMP] = ACTIONS(4420), [anon_sym_DASH] = ACTIONS(4418), [anon_sym_DASH_DASH] = ACTIONS(4420), [anon_sym_PLUS] = ACTIONS(4418), [anon_sym_PLUS_PLUS] = ACTIONS(4420), [anon_sym_BANG] = ACTIONS(4420), [anon_sym_LPAREN] = ACTIONS(4420), [anon_sym_RPAREN] = ACTIONS(4420), [anon_sym_LBRACK] = ACTIONS(4420), [anon_sym_SEMI] = ACTIONS(4420), [anon_sym_DOLLAR] = ACTIONS(4420), [anon_sym_STAR] = ACTIONS(4420), [anon_sym_TILDE] = ACTIONS(4420), [anon_sym_AT] = ACTIONS(4420), [sym_bool] = ACTIONS(4418), [sym_byte] = ACTIONS(4418), [sym_ubyte] = ACTIONS(4418), [sym_char] = ACTIONS(4418), [sym_short] = ACTIONS(4418), [sym_ushort] = ACTIONS(4418), [sym_int] = ACTIONS(4418), [sym_uint] = ACTIONS(4418), [sym_long] = ACTIONS(4418), [sym_ulong] = ACTIONS(4418), [sym_cent] = ACTIONS(4418), [sym_ucent] = ACTIONS(4418), [sym_wchar] = ACTIONS(4418), [sym_dchar] = ACTIONS(4418), [sym_float] = ACTIONS(4418), [sym_double] = ACTIONS(4418), [sym_real] = ACTIONS(4418), [sym_ifloat] = ACTIONS(4418), [sym_idouble] = ACTIONS(4418), [sym_ireal] = ACTIONS(4418), [sym_cfloat] = ACTIONS(4418), [sym_cdouble] = ACTIONS(4418), [sym_creal] = ACTIONS(4418), [sym_size_t] = ACTIONS(4418), [sym_ptrdiff_t] = ACTIONS(4418), [sym_string] = ACTIONS(4418), [sym_cstring] = ACTIONS(4418), [sym_dstring] = ACTIONS(4418), [sym_wstring] = ACTIONS(4418), [sym_noreturn] = ACTIONS(4418), [sym_true] = ACTIONS(4418), [sym_false] = ACTIONS(4418), [sym_null] = ACTIONS(4418), [sym_super] = ACTIONS(4418), [sym_this] = ACTIONS(4418), [sym_abstract] = ACTIONS(4418), [sym_alias] = ACTIONS(4418), [sym_align] = ACTIONS(4418), [sym_asm] = ACTIONS(4418), [sym_assert] = ACTIONS(4418), [sym_auto] = ACTIONS(4418), [sym_break] = ACTIONS(4418), [sym_case] = ACTIONS(4418), [sym_cast] = ACTIONS(4418), [sym_class] = ACTIONS(4418), [sym_const] = ACTIONS(4418), [sym_continue] = ACTIONS(4418), [sym_debug] = ACTIONS(4418), [sym_default] = ACTIONS(4418), [sym_delegate] = ACTIONS(4418), [sym_delete] = ACTIONS(4418), [sym_deprecated] = ACTIONS(4418), [sym_do] = ACTIONS(4418), [sym_else] = ACTIONS(4418), [sym_enum] = ACTIONS(4418), [sym_export] = ACTIONS(4418), [sym_extern] = ACTIONS(4418), [sym_final] = ACTIONS(4418), [sym_for] = ACTIONS(4418), [sym_foreach] = ACTIONS(4418), [sym_foreach_reverse] = ACTIONS(4418), [sym_function] = ACTIONS(4418), [sym_goto] = ACTIONS(4418), [sym_if] = ACTIONS(4418), [sym_immutable] = ACTIONS(4418), [sym_import] = ACTIONS(4418), [sym_in] = ACTIONS(4418), [sym_inout] = ACTIONS(4418), [sym_interface] = ACTIONS(4418), [sym_invariant] = ACTIONS(4418), [sym_is] = ACTIONS(4418), [sym_mixin] = ACTIONS(4418), [sym_new] = ACTIONS(4418), [sym_nothrow] = ACTIONS(4418), [sym_out] = ACTIONS(4418), [sym_override] = ACTIONS(4418), [sym_package] = ACTIONS(4418), [sym_pragma] = ACTIONS(4418), [sym_private] = ACTIONS(4418), [sym_protected] = ACTIONS(4418), [sym_public] = ACTIONS(4418), [sym_pure] = ACTIONS(4418), [sym_ref] = ACTIONS(4418), [sym_return] = ACTIONS(4418), [sym_scope] = ACTIONS(4418), [sym_shared] = ACTIONS(4418), [sym_static] = ACTIONS(4418), [sym_struct] = ACTIONS(4418), [sym_switch] = ACTIONS(4418), [sym_synchronized] = ACTIONS(4418), [sym_template] = ACTIONS(4418), [sym_throw] = ACTIONS(4418), [sym_try] = ACTIONS(4418), [sym_typeid] = ACTIONS(4418), [sym_typeof] = ACTIONS(4418), [sym_union] = ACTIONS(4418), [sym_unittest] = ACTIONS(4418), [sym_version] = ACTIONS(4418), [sym_while] = ACTIONS(4418), [sym_with] = ACTIONS(4418), [sym_gshared] = ACTIONS(4418), [sym_traits] = ACTIONS(4418), [sym_vector] = ACTIONS(4418), [sym_void] = ACTIONS(4418), [anon_sym_BQUOTE] = ACTIONS(4420), [anon_sym_r_DQUOTE] = ACTIONS(4420), [anon_sym_x_DQUOTE] = ACTIONS(4420), [anon_sym_DQUOTE] = ACTIONS(4420), [anon_sym_i_BQUOTE] = ACTIONS(4420), [anon_sym_i_DQUOTE] = ACTIONS(4420), [anon_sym_iq_LBRACE] = ACTIONS(4420), [aux_sym_char_literal_token1] = ACTIONS(4420), [anon_sym_SQUOTE] = ACTIONS(4418), [anon_sym___DATE__] = ACTIONS(4418), [anon_sym___FILE__] = ACTIONS(4418), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4418), [anon_sym___FUNCTION__] = ACTIONS(4418), [anon_sym___LINE__] = ACTIONS(4418), [anon_sym___MODULE__] = ACTIONS(4418), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4418), [anon_sym___TIME__] = ACTIONS(4418), [anon_sym___TIMESTAMP__] = ACTIONS(4418), [anon_sym___VENDOR__] = ACTIONS(4418), [anon_sym___VERSION__] = ACTIONS(4418), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4420), [sym_float_literal] = ACTIONS(4420), [sym__string] = ACTIONS(4420), }, [1752] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4618), [anon_sym_RBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(4618), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_AMP] = ACTIONS(4618), [anon_sym_DASH] = ACTIONS(4616), [anon_sym_DASH_DASH] = ACTIONS(4618), [anon_sym_PLUS] = ACTIONS(4616), [anon_sym_PLUS_PLUS] = ACTIONS(4618), [anon_sym_BANG] = ACTIONS(4618), [anon_sym_LPAREN] = ACTIONS(4618), [anon_sym_RPAREN] = ACTIONS(4618), [anon_sym_LBRACK] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4618), [anon_sym_DOLLAR] = ACTIONS(4618), [anon_sym_STAR] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_true] = ACTIONS(4616), [sym_false] = ACTIONS(4616), [sym_null] = ACTIONS(4616), [sym_super] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_asm] = ACTIONS(4616), [sym_assert] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_break] = ACTIONS(4616), [sym_case] = ACTIONS(4616), [sym_cast] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_continue] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_default] = ACTIONS(4616), [sym_delegate] = ACTIONS(4616), [sym_delete] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(4616), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_for] = ACTIONS(4616), [sym_foreach] = ACTIONS(4616), [sym_foreach_reverse] = ACTIONS(4616), [sym_function] = ACTIONS(4616), [sym_goto] = ACTIONS(4616), [sym_if] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(4616), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_is] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_new] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(4616), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_switch] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_throw] = ACTIONS(4616), [sym_try] = ACTIONS(4616), [sym_typeid] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_with] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [anon_sym_BQUOTE] = ACTIONS(4618), [anon_sym_r_DQUOTE] = ACTIONS(4618), [anon_sym_x_DQUOTE] = ACTIONS(4618), [anon_sym_DQUOTE] = ACTIONS(4618), [anon_sym_i_BQUOTE] = ACTIONS(4618), [anon_sym_i_DQUOTE] = ACTIONS(4618), [anon_sym_iq_LBRACE] = ACTIONS(4618), [aux_sym_char_literal_token1] = ACTIONS(4618), [anon_sym_SQUOTE] = ACTIONS(4616), [anon_sym___DATE__] = ACTIONS(4616), [anon_sym___FILE__] = ACTIONS(4616), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4616), [anon_sym___FUNCTION__] = ACTIONS(4616), [anon_sym___LINE__] = ACTIONS(4616), [anon_sym___MODULE__] = ACTIONS(4616), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4616), [anon_sym___TIME__] = ACTIONS(4616), [anon_sym___TIMESTAMP__] = ACTIONS(4616), [anon_sym___VENDOR__] = ACTIONS(4616), [anon_sym___VERSION__] = ACTIONS(4616), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4618), [sym_float_literal] = ACTIONS(4618), [sym__string] = ACTIONS(4618), }, [1753] = { [sym_identifier] = ACTIONS(5024), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5026), [anon_sym_RBRACE] = ACTIONS(5026), [anon_sym_LBRACE] = ACTIONS(5026), [anon_sym_DOT] = ACTIONS(5026), [anon_sym_AMP] = ACTIONS(5026), [anon_sym_DASH] = ACTIONS(5024), [anon_sym_DASH_DASH] = ACTIONS(5026), [anon_sym_PLUS] = ACTIONS(5024), [anon_sym_PLUS_PLUS] = ACTIONS(5026), [anon_sym_BANG] = ACTIONS(5026), [anon_sym_LPAREN] = ACTIONS(5026), [anon_sym_RPAREN] = ACTIONS(5026), [anon_sym_LBRACK] = ACTIONS(5026), [anon_sym_SEMI] = ACTIONS(5026), [anon_sym_DOLLAR] = ACTIONS(5026), [anon_sym_STAR] = ACTIONS(5026), [anon_sym_TILDE] = ACTIONS(5026), [anon_sym_AT] = ACTIONS(5026), [sym_bool] = ACTIONS(5024), [sym_byte] = ACTIONS(5024), [sym_ubyte] = ACTIONS(5024), [sym_char] = ACTIONS(5024), [sym_short] = ACTIONS(5024), [sym_ushort] = ACTIONS(5024), [sym_int] = ACTIONS(5024), [sym_uint] = ACTIONS(5024), [sym_long] = ACTIONS(5024), [sym_ulong] = ACTIONS(5024), [sym_cent] = ACTIONS(5024), [sym_ucent] = ACTIONS(5024), [sym_wchar] = ACTIONS(5024), [sym_dchar] = ACTIONS(5024), [sym_float] = ACTIONS(5024), [sym_double] = ACTIONS(5024), [sym_real] = ACTIONS(5024), [sym_ifloat] = ACTIONS(5024), [sym_idouble] = ACTIONS(5024), [sym_ireal] = ACTIONS(5024), [sym_cfloat] = ACTIONS(5024), [sym_cdouble] = ACTIONS(5024), [sym_creal] = ACTIONS(5024), [sym_size_t] = ACTIONS(5024), [sym_ptrdiff_t] = ACTIONS(5024), [sym_string] = ACTIONS(5024), [sym_cstring] = ACTIONS(5024), [sym_dstring] = ACTIONS(5024), [sym_wstring] = ACTIONS(5024), [sym_noreturn] = ACTIONS(5024), [sym_true] = ACTIONS(5024), [sym_false] = ACTIONS(5024), [sym_null] = ACTIONS(5024), [sym_super] = ACTIONS(5024), [sym_this] = ACTIONS(5024), [sym_abstract] = ACTIONS(5024), [sym_alias] = ACTIONS(5024), [sym_align] = ACTIONS(5024), [sym_asm] = ACTIONS(5024), [sym_assert] = ACTIONS(5024), [sym_auto] = ACTIONS(5024), [sym_break] = ACTIONS(5024), [sym_case] = ACTIONS(5024), [sym_cast] = ACTIONS(5024), [sym_class] = ACTIONS(5024), [sym_const] = ACTIONS(5024), [sym_continue] = ACTIONS(5024), [sym_debug] = ACTIONS(5024), [sym_default] = ACTIONS(5024), [sym_delegate] = ACTIONS(5024), [sym_delete] = ACTIONS(5024), [sym_deprecated] = ACTIONS(5024), [sym_do] = ACTIONS(5024), [sym_else] = ACTIONS(5024), [sym_enum] = ACTIONS(5024), [sym_export] = ACTIONS(5024), [sym_extern] = ACTIONS(5024), [sym_final] = ACTIONS(5024), [sym_for] = ACTIONS(5024), [sym_foreach] = ACTIONS(5024), [sym_foreach_reverse] = ACTIONS(5024), [sym_function] = ACTIONS(5024), [sym_goto] = ACTIONS(5024), [sym_if] = ACTIONS(5024), [sym_immutable] = ACTIONS(5024), [sym_import] = ACTIONS(5024), [sym_in] = ACTIONS(5024), [sym_inout] = ACTIONS(5024), [sym_interface] = ACTIONS(5024), [sym_invariant] = ACTIONS(5024), [sym_is] = ACTIONS(5024), [sym_mixin] = ACTIONS(5024), [sym_new] = ACTIONS(5024), [sym_nothrow] = ACTIONS(5024), [sym_out] = ACTIONS(5024), [sym_override] = ACTIONS(5024), [sym_package] = ACTIONS(5024), [sym_pragma] = ACTIONS(5024), [sym_private] = ACTIONS(5024), [sym_protected] = ACTIONS(5024), [sym_public] = ACTIONS(5024), [sym_pure] = ACTIONS(5024), [sym_ref] = ACTIONS(5024), [sym_return] = ACTIONS(5024), [sym_scope] = ACTIONS(5024), [sym_shared] = ACTIONS(5024), [sym_static] = ACTIONS(5024), [sym_struct] = ACTIONS(5024), [sym_switch] = ACTIONS(5024), [sym_synchronized] = ACTIONS(5024), [sym_template] = ACTIONS(5024), [sym_throw] = ACTIONS(5024), [sym_try] = ACTIONS(5024), [sym_typeid] = ACTIONS(5024), [sym_typeof] = ACTIONS(5024), [sym_union] = ACTIONS(5024), [sym_unittest] = ACTIONS(5024), [sym_version] = ACTIONS(5024), [sym_while] = ACTIONS(5024), [sym_with] = ACTIONS(5024), [sym_gshared] = ACTIONS(5024), [sym_traits] = ACTIONS(5024), [sym_vector] = ACTIONS(5024), [sym_void] = ACTIONS(5024), [anon_sym_BQUOTE] = ACTIONS(5026), [anon_sym_r_DQUOTE] = ACTIONS(5026), [anon_sym_x_DQUOTE] = ACTIONS(5026), [anon_sym_DQUOTE] = ACTIONS(5026), [anon_sym_i_BQUOTE] = ACTIONS(5026), [anon_sym_i_DQUOTE] = ACTIONS(5026), [anon_sym_iq_LBRACE] = ACTIONS(5026), [aux_sym_char_literal_token1] = ACTIONS(5026), [anon_sym_SQUOTE] = ACTIONS(5024), [anon_sym___DATE__] = ACTIONS(5024), [anon_sym___FILE__] = ACTIONS(5024), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5024), [anon_sym___FUNCTION__] = ACTIONS(5024), [anon_sym___LINE__] = ACTIONS(5024), [anon_sym___MODULE__] = ACTIONS(5024), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5024), [anon_sym___TIME__] = ACTIONS(5024), [anon_sym___TIMESTAMP__] = ACTIONS(5024), [anon_sym___VENDOR__] = ACTIONS(5024), [anon_sym___VERSION__] = ACTIONS(5024), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5026), [sym_float_literal] = ACTIONS(5026), [sym__string] = ACTIONS(5026), }, [1754] = { [sym_identifier] = ACTIONS(4456), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4458), [anon_sym_RBRACE] = ACTIONS(4458), [anon_sym_LBRACE] = ACTIONS(4458), [anon_sym_DOT] = ACTIONS(4458), [anon_sym_AMP] = ACTIONS(4458), [anon_sym_DASH] = ACTIONS(4456), [anon_sym_DASH_DASH] = ACTIONS(4458), [anon_sym_PLUS] = ACTIONS(4456), [anon_sym_PLUS_PLUS] = ACTIONS(4458), [anon_sym_BANG] = ACTIONS(4458), [anon_sym_LPAREN] = ACTIONS(4458), [anon_sym_RPAREN] = ACTIONS(4458), [anon_sym_LBRACK] = ACTIONS(4458), [anon_sym_SEMI] = ACTIONS(4458), [anon_sym_DOLLAR] = ACTIONS(4458), [anon_sym_STAR] = ACTIONS(4458), [anon_sym_TILDE] = ACTIONS(4458), [anon_sym_AT] = ACTIONS(4458), [sym_bool] = ACTIONS(4456), [sym_byte] = ACTIONS(4456), [sym_ubyte] = ACTIONS(4456), [sym_char] = ACTIONS(4456), [sym_short] = ACTIONS(4456), [sym_ushort] = ACTIONS(4456), [sym_int] = ACTIONS(4456), [sym_uint] = ACTIONS(4456), [sym_long] = ACTIONS(4456), [sym_ulong] = ACTIONS(4456), [sym_cent] = ACTIONS(4456), [sym_ucent] = ACTIONS(4456), [sym_wchar] = ACTIONS(4456), [sym_dchar] = ACTIONS(4456), [sym_float] = ACTIONS(4456), [sym_double] = ACTIONS(4456), [sym_real] = ACTIONS(4456), [sym_ifloat] = ACTIONS(4456), [sym_idouble] = ACTIONS(4456), [sym_ireal] = ACTIONS(4456), [sym_cfloat] = ACTIONS(4456), [sym_cdouble] = ACTIONS(4456), [sym_creal] = ACTIONS(4456), [sym_size_t] = ACTIONS(4456), [sym_ptrdiff_t] = ACTIONS(4456), [sym_string] = ACTIONS(4456), [sym_cstring] = ACTIONS(4456), [sym_dstring] = ACTIONS(4456), [sym_wstring] = ACTIONS(4456), [sym_noreturn] = ACTIONS(4456), [sym_true] = ACTIONS(4456), [sym_false] = ACTIONS(4456), [sym_null] = ACTIONS(4456), [sym_super] = ACTIONS(4456), [sym_this] = ACTIONS(4456), [sym_abstract] = ACTIONS(4456), [sym_alias] = ACTIONS(4456), [sym_align] = ACTIONS(4456), [sym_asm] = ACTIONS(4456), [sym_assert] = ACTIONS(4456), [sym_auto] = ACTIONS(4456), [sym_break] = ACTIONS(4456), [sym_case] = ACTIONS(4456), [sym_cast] = ACTIONS(4456), [sym_class] = ACTIONS(4456), [sym_const] = ACTIONS(4456), [sym_continue] = ACTIONS(4456), [sym_debug] = ACTIONS(4456), [sym_default] = ACTIONS(4456), [sym_delegate] = ACTIONS(4456), [sym_delete] = ACTIONS(4456), [sym_deprecated] = ACTIONS(4456), [sym_do] = ACTIONS(4456), [sym_else] = ACTIONS(4456), [sym_enum] = ACTIONS(4456), [sym_export] = ACTIONS(4456), [sym_extern] = ACTIONS(4456), [sym_final] = ACTIONS(4456), [sym_for] = ACTIONS(4456), [sym_foreach] = ACTIONS(4456), [sym_foreach_reverse] = ACTIONS(4456), [sym_function] = ACTIONS(4456), [sym_goto] = ACTIONS(4456), [sym_if] = ACTIONS(4456), [sym_immutable] = ACTIONS(4456), [sym_import] = ACTIONS(4456), [sym_in] = ACTIONS(4456), [sym_inout] = ACTIONS(4456), [sym_interface] = ACTIONS(4456), [sym_invariant] = ACTIONS(4456), [sym_is] = ACTIONS(4456), [sym_mixin] = ACTIONS(4456), [sym_new] = ACTIONS(4456), [sym_nothrow] = ACTIONS(4456), [sym_out] = ACTIONS(4456), [sym_override] = ACTIONS(4456), [sym_package] = ACTIONS(4456), [sym_pragma] = ACTIONS(4456), [sym_private] = ACTIONS(4456), [sym_protected] = ACTIONS(4456), [sym_public] = ACTIONS(4456), [sym_pure] = ACTIONS(4456), [sym_ref] = ACTIONS(4456), [sym_return] = ACTIONS(4456), [sym_scope] = ACTIONS(4456), [sym_shared] = ACTIONS(4456), [sym_static] = ACTIONS(4456), [sym_struct] = ACTIONS(4456), [sym_switch] = ACTIONS(4456), [sym_synchronized] = ACTIONS(4456), [sym_template] = ACTIONS(4456), [sym_throw] = ACTIONS(4456), [sym_try] = ACTIONS(4456), [sym_typeid] = ACTIONS(4456), [sym_typeof] = ACTIONS(4456), [sym_union] = ACTIONS(4456), [sym_unittest] = ACTIONS(4456), [sym_version] = ACTIONS(4456), [sym_while] = ACTIONS(4456), [sym_with] = ACTIONS(4456), [sym_gshared] = ACTIONS(4456), [sym_traits] = ACTIONS(4456), [sym_vector] = ACTIONS(4456), [sym_void] = ACTIONS(4456), [anon_sym_BQUOTE] = ACTIONS(4458), [anon_sym_r_DQUOTE] = ACTIONS(4458), [anon_sym_x_DQUOTE] = ACTIONS(4458), [anon_sym_DQUOTE] = ACTIONS(4458), [anon_sym_i_BQUOTE] = ACTIONS(4458), [anon_sym_i_DQUOTE] = ACTIONS(4458), [anon_sym_iq_LBRACE] = ACTIONS(4458), [aux_sym_char_literal_token1] = ACTIONS(4458), [anon_sym_SQUOTE] = ACTIONS(4456), [anon_sym___DATE__] = ACTIONS(4456), [anon_sym___FILE__] = ACTIONS(4456), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4456), [anon_sym___FUNCTION__] = ACTIONS(4456), [anon_sym___LINE__] = ACTIONS(4456), [anon_sym___MODULE__] = ACTIONS(4456), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4456), [anon_sym___TIME__] = ACTIONS(4456), [anon_sym___TIMESTAMP__] = ACTIONS(4456), [anon_sym___VENDOR__] = ACTIONS(4456), [anon_sym___VERSION__] = ACTIONS(4456), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4458), [sym_float_literal] = ACTIONS(4458), [sym__string] = ACTIONS(4458), }, [1755] = { [sym_identifier] = ACTIONS(4464), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4466), [anon_sym_RBRACE] = ACTIONS(4466), [anon_sym_LBRACE] = ACTIONS(4466), [anon_sym_DOT] = ACTIONS(4466), [anon_sym_AMP] = ACTIONS(4466), [anon_sym_DASH] = ACTIONS(4464), [anon_sym_DASH_DASH] = ACTIONS(4466), [anon_sym_PLUS] = ACTIONS(4464), [anon_sym_PLUS_PLUS] = ACTIONS(4466), [anon_sym_BANG] = ACTIONS(4466), [anon_sym_LPAREN] = ACTIONS(4466), [anon_sym_RPAREN] = ACTIONS(4466), [anon_sym_LBRACK] = ACTIONS(4466), [anon_sym_SEMI] = ACTIONS(4466), [anon_sym_DOLLAR] = ACTIONS(4466), [anon_sym_STAR] = ACTIONS(4466), [anon_sym_TILDE] = ACTIONS(4466), [anon_sym_AT] = ACTIONS(4466), [sym_bool] = ACTIONS(4464), [sym_byte] = ACTIONS(4464), [sym_ubyte] = ACTIONS(4464), [sym_char] = ACTIONS(4464), [sym_short] = ACTIONS(4464), [sym_ushort] = ACTIONS(4464), [sym_int] = ACTIONS(4464), [sym_uint] = ACTIONS(4464), [sym_long] = ACTIONS(4464), [sym_ulong] = ACTIONS(4464), [sym_cent] = ACTIONS(4464), [sym_ucent] = ACTIONS(4464), [sym_wchar] = ACTIONS(4464), [sym_dchar] = ACTIONS(4464), [sym_float] = ACTIONS(4464), [sym_double] = ACTIONS(4464), [sym_real] = ACTIONS(4464), [sym_ifloat] = ACTIONS(4464), [sym_idouble] = ACTIONS(4464), [sym_ireal] = ACTIONS(4464), [sym_cfloat] = ACTIONS(4464), [sym_cdouble] = ACTIONS(4464), [sym_creal] = ACTIONS(4464), [sym_size_t] = ACTIONS(4464), [sym_ptrdiff_t] = ACTIONS(4464), [sym_string] = ACTIONS(4464), [sym_cstring] = ACTIONS(4464), [sym_dstring] = ACTIONS(4464), [sym_wstring] = ACTIONS(4464), [sym_noreturn] = ACTIONS(4464), [sym_true] = ACTIONS(4464), [sym_false] = ACTIONS(4464), [sym_null] = ACTIONS(4464), [sym_super] = ACTIONS(4464), [sym_this] = ACTIONS(4464), [sym_abstract] = ACTIONS(4464), [sym_alias] = ACTIONS(4464), [sym_align] = ACTIONS(4464), [sym_asm] = ACTIONS(4464), [sym_assert] = ACTIONS(4464), [sym_auto] = ACTIONS(4464), [sym_break] = ACTIONS(4464), [sym_case] = ACTIONS(4464), [sym_cast] = ACTIONS(4464), [sym_class] = ACTIONS(4464), [sym_const] = ACTIONS(4464), [sym_continue] = ACTIONS(4464), [sym_debug] = ACTIONS(4464), [sym_default] = ACTIONS(4464), [sym_delegate] = ACTIONS(4464), [sym_delete] = ACTIONS(4464), [sym_deprecated] = ACTIONS(4464), [sym_do] = ACTIONS(4464), [sym_else] = ACTIONS(4464), [sym_enum] = ACTIONS(4464), [sym_export] = ACTIONS(4464), [sym_extern] = ACTIONS(4464), [sym_final] = ACTIONS(4464), [sym_for] = ACTIONS(4464), [sym_foreach] = ACTIONS(4464), [sym_foreach_reverse] = ACTIONS(4464), [sym_function] = ACTIONS(4464), [sym_goto] = ACTIONS(4464), [sym_if] = ACTIONS(4464), [sym_immutable] = ACTIONS(4464), [sym_import] = ACTIONS(4464), [sym_in] = ACTIONS(4464), [sym_inout] = ACTIONS(4464), [sym_interface] = ACTIONS(4464), [sym_invariant] = ACTIONS(4464), [sym_is] = ACTIONS(4464), [sym_mixin] = ACTIONS(4464), [sym_new] = ACTIONS(4464), [sym_nothrow] = ACTIONS(4464), [sym_out] = ACTIONS(4464), [sym_override] = ACTIONS(4464), [sym_package] = ACTIONS(4464), [sym_pragma] = ACTIONS(4464), [sym_private] = ACTIONS(4464), [sym_protected] = ACTIONS(4464), [sym_public] = ACTIONS(4464), [sym_pure] = ACTIONS(4464), [sym_ref] = ACTIONS(4464), [sym_return] = ACTIONS(4464), [sym_scope] = ACTIONS(4464), [sym_shared] = ACTIONS(4464), [sym_static] = ACTIONS(4464), [sym_struct] = ACTIONS(4464), [sym_switch] = ACTIONS(4464), [sym_synchronized] = ACTIONS(4464), [sym_template] = ACTIONS(4464), [sym_throw] = ACTIONS(4464), [sym_try] = ACTIONS(4464), [sym_typeid] = ACTIONS(4464), [sym_typeof] = ACTIONS(4464), [sym_union] = ACTIONS(4464), [sym_unittest] = ACTIONS(4464), [sym_version] = ACTIONS(4464), [sym_while] = ACTIONS(4464), [sym_with] = ACTIONS(4464), [sym_gshared] = ACTIONS(4464), [sym_traits] = ACTIONS(4464), [sym_vector] = ACTIONS(4464), [sym_void] = ACTIONS(4464), [anon_sym_BQUOTE] = ACTIONS(4466), [anon_sym_r_DQUOTE] = ACTIONS(4466), [anon_sym_x_DQUOTE] = ACTIONS(4466), [anon_sym_DQUOTE] = ACTIONS(4466), [anon_sym_i_BQUOTE] = ACTIONS(4466), [anon_sym_i_DQUOTE] = ACTIONS(4466), [anon_sym_iq_LBRACE] = ACTIONS(4466), [aux_sym_char_literal_token1] = ACTIONS(4466), [anon_sym_SQUOTE] = ACTIONS(4464), [anon_sym___DATE__] = ACTIONS(4464), [anon_sym___FILE__] = ACTIONS(4464), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4464), [anon_sym___FUNCTION__] = ACTIONS(4464), [anon_sym___LINE__] = ACTIONS(4464), [anon_sym___MODULE__] = ACTIONS(4464), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4464), [anon_sym___TIME__] = ACTIONS(4464), [anon_sym___TIMESTAMP__] = ACTIONS(4464), [anon_sym___VENDOR__] = ACTIONS(4464), [anon_sym___VERSION__] = ACTIONS(4464), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4466), [sym_float_literal] = ACTIONS(4466), [sym__string] = ACTIONS(4466), }, [1756] = { [sym_identifier] = ACTIONS(4472), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4474), [anon_sym_RBRACE] = ACTIONS(4474), [anon_sym_LBRACE] = ACTIONS(4474), [anon_sym_DOT] = ACTIONS(4474), [anon_sym_AMP] = ACTIONS(4474), [anon_sym_DASH] = ACTIONS(4472), [anon_sym_DASH_DASH] = ACTIONS(4474), [anon_sym_PLUS] = ACTIONS(4472), [anon_sym_PLUS_PLUS] = ACTIONS(4474), [anon_sym_BANG] = ACTIONS(4474), [anon_sym_LPAREN] = ACTIONS(4474), [anon_sym_RPAREN] = ACTIONS(4474), [anon_sym_LBRACK] = ACTIONS(4474), [anon_sym_SEMI] = ACTIONS(4474), [anon_sym_DOLLAR] = ACTIONS(4474), [anon_sym_STAR] = ACTIONS(4474), [anon_sym_TILDE] = ACTIONS(4474), [anon_sym_AT] = ACTIONS(4474), [sym_bool] = ACTIONS(4472), [sym_byte] = ACTIONS(4472), [sym_ubyte] = ACTIONS(4472), [sym_char] = ACTIONS(4472), [sym_short] = ACTIONS(4472), [sym_ushort] = ACTIONS(4472), [sym_int] = ACTIONS(4472), [sym_uint] = ACTIONS(4472), [sym_long] = ACTIONS(4472), [sym_ulong] = ACTIONS(4472), [sym_cent] = ACTIONS(4472), [sym_ucent] = ACTIONS(4472), [sym_wchar] = ACTIONS(4472), [sym_dchar] = ACTIONS(4472), [sym_float] = ACTIONS(4472), [sym_double] = ACTIONS(4472), [sym_real] = ACTIONS(4472), [sym_ifloat] = ACTIONS(4472), [sym_idouble] = ACTIONS(4472), [sym_ireal] = ACTIONS(4472), [sym_cfloat] = ACTIONS(4472), [sym_cdouble] = ACTIONS(4472), [sym_creal] = ACTIONS(4472), [sym_size_t] = ACTIONS(4472), [sym_ptrdiff_t] = ACTIONS(4472), [sym_string] = ACTIONS(4472), [sym_cstring] = ACTIONS(4472), [sym_dstring] = ACTIONS(4472), [sym_wstring] = ACTIONS(4472), [sym_noreturn] = ACTIONS(4472), [sym_true] = ACTIONS(4472), [sym_false] = ACTIONS(4472), [sym_null] = ACTIONS(4472), [sym_super] = ACTIONS(4472), [sym_this] = ACTIONS(4472), [sym_abstract] = ACTIONS(4472), [sym_alias] = ACTIONS(4472), [sym_align] = ACTIONS(4472), [sym_asm] = ACTIONS(4472), [sym_assert] = ACTIONS(4472), [sym_auto] = ACTIONS(4472), [sym_break] = ACTIONS(4472), [sym_case] = ACTIONS(4472), [sym_cast] = ACTIONS(4472), [sym_class] = ACTIONS(4472), [sym_const] = ACTIONS(4472), [sym_continue] = ACTIONS(4472), [sym_debug] = ACTIONS(4472), [sym_default] = ACTIONS(4472), [sym_delegate] = ACTIONS(4472), [sym_delete] = ACTIONS(4472), [sym_deprecated] = ACTIONS(4472), [sym_do] = ACTIONS(4472), [sym_else] = ACTIONS(4472), [sym_enum] = ACTIONS(4472), [sym_export] = ACTIONS(4472), [sym_extern] = ACTIONS(4472), [sym_final] = ACTIONS(4472), [sym_for] = ACTIONS(4472), [sym_foreach] = ACTIONS(4472), [sym_foreach_reverse] = ACTIONS(4472), [sym_function] = ACTIONS(4472), [sym_goto] = ACTIONS(4472), [sym_if] = ACTIONS(4472), [sym_immutable] = ACTIONS(4472), [sym_import] = ACTIONS(4472), [sym_in] = ACTIONS(4472), [sym_inout] = ACTIONS(4472), [sym_interface] = ACTIONS(4472), [sym_invariant] = ACTIONS(4472), [sym_is] = ACTIONS(4472), [sym_mixin] = ACTIONS(4472), [sym_new] = ACTIONS(4472), [sym_nothrow] = ACTIONS(4472), [sym_out] = ACTIONS(4472), [sym_override] = ACTIONS(4472), [sym_package] = ACTIONS(4472), [sym_pragma] = ACTIONS(4472), [sym_private] = ACTIONS(4472), [sym_protected] = ACTIONS(4472), [sym_public] = ACTIONS(4472), [sym_pure] = ACTIONS(4472), [sym_ref] = ACTIONS(4472), [sym_return] = ACTIONS(4472), [sym_scope] = ACTIONS(4472), [sym_shared] = ACTIONS(4472), [sym_static] = ACTIONS(4472), [sym_struct] = ACTIONS(4472), [sym_switch] = ACTIONS(4472), [sym_synchronized] = ACTIONS(4472), [sym_template] = ACTIONS(4472), [sym_throw] = ACTIONS(4472), [sym_try] = ACTIONS(4472), [sym_typeid] = ACTIONS(4472), [sym_typeof] = ACTIONS(4472), [sym_union] = ACTIONS(4472), [sym_unittest] = ACTIONS(4472), [sym_version] = ACTIONS(4472), [sym_while] = ACTIONS(4472), [sym_with] = ACTIONS(4472), [sym_gshared] = ACTIONS(4472), [sym_traits] = ACTIONS(4472), [sym_vector] = ACTIONS(4472), [sym_void] = ACTIONS(4472), [anon_sym_BQUOTE] = ACTIONS(4474), [anon_sym_r_DQUOTE] = ACTIONS(4474), [anon_sym_x_DQUOTE] = ACTIONS(4474), [anon_sym_DQUOTE] = ACTIONS(4474), [anon_sym_i_BQUOTE] = ACTIONS(4474), [anon_sym_i_DQUOTE] = ACTIONS(4474), [anon_sym_iq_LBRACE] = ACTIONS(4474), [aux_sym_char_literal_token1] = ACTIONS(4474), [anon_sym_SQUOTE] = ACTIONS(4472), [anon_sym___DATE__] = ACTIONS(4472), [anon_sym___FILE__] = ACTIONS(4472), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4472), [anon_sym___FUNCTION__] = ACTIONS(4472), [anon_sym___LINE__] = ACTIONS(4472), [anon_sym___MODULE__] = ACTIONS(4472), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4472), [anon_sym___TIME__] = ACTIONS(4472), [anon_sym___TIMESTAMP__] = ACTIONS(4472), [anon_sym___VENDOR__] = ACTIONS(4472), [anon_sym___VERSION__] = ACTIONS(4472), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4474), [sym_float_literal] = ACTIONS(4474), [sym__string] = ACTIONS(4474), }, [1757] = { [sym_identifier] = ACTIONS(4496), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4498), [anon_sym_RBRACE] = ACTIONS(4498), [anon_sym_LBRACE] = ACTIONS(4498), [anon_sym_DOT] = ACTIONS(4498), [anon_sym_AMP] = ACTIONS(4498), [anon_sym_DASH] = ACTIONS(4496), [anon_sym_DASH_DASH] = ACTIONS(4498), [anon_sym_PLUS] = ACTIONS(4496), [anon_sym_PLUS_PLUS] = ACTIONS(4498), [anon_sym_BANG] = ACTIONS(4498), [anon_sym_LPAREN] = ACTIONS(4498), [anon_sym_RPAREN] = ACTIONS(4498), [anon_sym_LBRACK] = ACTIONS(4498), [anon_sym_SEMI] = ACTIONS(4498), [anon_sym_DOLLAR] = ACTIONS(4498), [anon_sym_STAR] = ACTIONS(4498), [anon_sym_TILDE] = ACTIONS(4498), [anon_sym_AT] = ACTIONS(4498), [sym_bool] = ACTIONS(4496), [sym_byte] = ACTIONS(4496), [sym_ubyte] = ACTIONS(4496), [sym_char] = ACTIONS(4496), [sym_short] = ACTIONS(4496), [sym_ushort] = ACTIONS(4496), [sym_int] = ACTIONS(4496), [sym_uint] = ACTIONS(4496), [sym_long] = ACTIONS(4496), [sym_ulong] = ACTIONS(4496), [sym_cent] = ACTIONS(4496), [sym_ucent] = ACTIONS(4496), [sym_wchar] = ACTIONS(4496), [sym_dchar] = ACTIONS(4496), [sym_float] = ACTIONS(4496), [sym_double] = ACTIONS(4496), [sym_real] = ACTIONS(4496), [sym_ifloat] = ACTIONS(4496), [sym_idouble] = ACTIONS(4496), [sym_ireal] = ACTIONS(4496), [sym_cfloat] = ACTIONS(4496), [sym_cdouble] = ACTIONS(4496), [sym_creal] = ACTIONS(4496), [sym_size_t] = ACTIONS(4496), [sym_ptrdiff_t] = ACTIONS(4496), [sym_string] = ACTIONS(4496), [sym_cstring] = ACTIONS(4496), [sym_dstring] = ACTIONS(4496), [sym_wstring] = ACTIONS(4496), [sym_noreturn] = ACTIONS(4496), [sym_true] = ACTIONS(4496), [sym_false] = ACTIONS(4496), [sym_null] = ACTIONS(4496), [sym_super] = ACTIONS(4496), [sym_this] = ACTIONS(4496), [sym_abstract] = ACTIONS(4496), [sym_alias] = ACTIONS(4496), [sym_align] = ACTIONS(4496), [sym_asm] = ACTIONS(4496), [sym_assert] = ACTIONS(4496), [sym_auto] = ACTIONS(4496), [sym_break] = ACTIONS(4496), [sym_case] = ACTIONS(4496), [sym_cast] = ACTIONS(4496), [sym_class] = ACTIONS(4496), [sym_const] = ACTIONS(4496), [sym_continue] = ACTIONS(4496), [sym_debug] = ACTIONS(4496), [sym_default] = ACTIONS(4496), [sym_delegate] = ACTIONS(4496), [sym_delete] = ACTIONS(4496), [sym_deprecated] = ACTIONS(4496), [sym_do] = ACTIONS(4496), [sym_else] = ACTIONS(4496), [sym_enum] = ACTIONS(4496), [sym_export] = ACTIONS(4496), [sym_extern] = ACTIONS(4496), [sym_final] = ACTIONS(4496), [sym_for] = ACTIONS(4496), [sym_foreach] = ACTIONS(4496), [sym_foreach_reverse] = ACTIONS(4496), [sym_function] = ACTIONS(4496), [sym_goto] = ACTIONS(4496), [sym_if] = ACTIONS(4496), [sym_immutable] = ACTIONS(4496), [sym_import] = ACTIONS(4496), [sym_in] = ACTIONS(4496), [sym_inout] = ACTIONS(4496), [sym_interface] = ACTIONS(4496), [sym_invariant] = ACTIONS(4496), [sym_is] = ACTIONS(4496), [sym_mixin] = ACTIONS(4496), [sym_new] = ACTIONS(4496), [sym_nothrow] = ACTIONS(4496), [sym_out] = ACTIONS(4496), [sym_override] = ACTIONS(4496), [sym_package] = ACTIONS(4496), [sym_pragma] = ACTIONS(4496), [sym_private] = ACTIONS(4496), [sym_protected] = ACTIONS(4496), [sym_public] = ACTIONS(4496), [sym_pure] = ACTIONS(4496), [sym_ref] = ACTIONS(4496), [sym_return] = ACTIONS(4496), [sym_scope] = ACTIONS(4496), [sym_shared] = ACTIONS(4496), [sym_static] = ACTIONS(4496), [sym_struct] = ACTIONS(4496), [sym_switch] = ACTIONS(4496), [sym_synchronized] = ACTIONS(4496), [sym_template] = ACTIONS(4496), [sym_throw] = ACTIONS(4496), [sym_try] = ACTIONS(4496), [sym_typeid] = ACTIONS(4496), [sym_typeof] = ACTIONS(4496), [sym_union] = ACTIONS(4496), [sym_unittest] = ACTIONS(4496), [sym_version] = ACTIONS(4496), [sym_while] = ACTIONS(4496), [sym_with] = ACTIONS(4496), [sym_gshared] = ACTIONS(4496), [sym_traits] = ACTIONS(4496), [sym_vector] = ACTIONS(4496), [sym_void] = ACTIONS(4496), [anon_sym_BQUOTE] = ACTIONS(4498), [anon_sym_r_DQUOTE] = ACTIONS(4498), [anon_sym_x_DQUOTE] = ACTIONS(4498), [anon_sym_DQUOTE] = ACTIONS(4498), [anon_sym_i_BQUOTE] = ACTIONS(4498), [anon_sym_i_DQUOTE] = ACTIONS(4498), [anon_sym_iq_LBRACE] = ACTIONS(4498), [aux_sym_char_literal_token1] = ACTIONS(4498), [anon_sym_SQUOTE] = ACTIONS(4496), [anon_sym___DATE__] = ACTIONS(4496), [anon_sym___FILE__] = ACTIONS(4496), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4496), [anon_sym___FUNCTION__] = ACTIONS(4496), [anon_sym___LINE__] = ACTIONS(4496), [anon_sym___MODULE__] = ACTIONS(4496), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4496), [anon_sym___TIME__] = ACTIONS(4496), [anon_sym___TIMESTAMP__] = ACTIONS(4496), [anon_sym___VENDOR__] = ACTIONS(4496), [anon_sym___VERSION__] = ACTIONS(4496), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4498), [sym_float_literal] = ACTIONS(4498), [sym__string] = ACTIONS(4498), }, [1758] = { [sym_identifier] = ACTIONS(4610), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4612), [anon_sym_RBRACE] = ACTIONS(4612), [anon_sym_LBRACE] = ACTIONS(4612), [anon_sym_DOT] = ACTIONS(4612), [anon_sym_AMP] = ACTIONS(4612), [anon_sym_DASH] = ACTIONS(4610), [anon_sym_DASH_DASH] = ACTIONS(4612), [anon_sym_PLUS] = ACTIONS(4610), [anon_sym_PLUS_PLUS] = ACTIONS(4612), [anon_sym_BANG] = ACTIONS(4612), [anon_sym_LPAREN] = ACTIONS(4612), [anon_sym_RPAREN] = ACTIONS(4612), [anon_sym_LBRACK] = ACTIONS(4612), [anon_sym_SEMI] = ACTIONS(4612), [anon_sym_DOLLAR] = ACTIONS(4612), [anon_sym_STAR] = ACTIONS(4612), [anon_sym_TILDE] = ACTIONS(4612), [anon_sym_AT] = ACTIONS(4612), [sym_bool] = ACTIONS(4610), [sym_byte] = ACTIONS(4610), [sym_ubyte] = ACTIONS(4610), [sym_char] = ACTIONS(4610), [sym_short] = ACTIONS(4610), [sym_ushort] = ACTIONS(4610), [sym_int] = ACTIONS(4610), [sym_uint] = ACTIONS(4610), [sym_long] = ACTIONS(4610), [sym_ulong] = ACTIONS(4610), [sym_cent] = ACTIONS(4610), [sym_ucent] = ACTIONS(4610), [sym_wchar] = ACTIONS(4610), [sym_dchar] = ACTIONS(4610), [sym_float] = ACTIONS(4610), [sym_double] = ACTIONS(4610), [sym_real] = ACTIONS(4610), [sym_ifloat] = ACTIONS(4610), [sym_idouble] = ACTIONS(4610), [sym_ireal] = ACTIONS(4610), [sym_cfloat] = ACTIONS(4610), [sym_cdouble] = ACTIONS(4610), [sym_creal] = ACTIONS(4610), [sym_size_t] = ACTIONS(4610), [sym_ptrdiff_t] = ACTIONS(4610), [sym_string] = ACTIONS(4610), [sym_cstring] = ACTIONS(4610), [sym_dstring] = ACTIONS(4610), [sym_wstring] = ACTIONS(4610), [sym_noreturn] = ACTIONS(4610), [sym_true] = ACTIONS(4610), [sym_false] = ACTIONS(4610), [sym_null] = ACTIONS(4610), [sym_super] = ACTIONS(4610), [sym_this] = ACTIONS(4610), [sym_abstract] = ACTIONS(4610), [sym_alias] = ACTIONS(4610), [sym_align] = ACTIONS(4610), [sym_asm] = ACTIONS(4610), [sym_assert] = ACTIONS(4610), [sym_auto] = ACTIONS(4610), [sym_break] = ACTIONS(4610), [sym_case] = ACTIONS(4610), [sym_cast] = ACTIONS(4610), [sym_class] = ACTIONS(4610), [sym_const] = ACTIONS(4610), [sym_continue] = ACTIONS(4610), [sym_debug] = ACTIONS(4610), [sym_default] = ACTIONS(4610), [sym_delegate] = ACTIONS(4610), [sym_delete] = ACTIONS(4610), [sym_deprecated] = ACTIONS(4610), [sym_do] = ACTIONS(4610), [sym_else] = ACTIONS(4610), [sym_enum] = ACTIONS(4610), [sym_export] = ACTIONS(4610), [sym_extern] = ACTIONS(4610), [sym_final] = ACTIONS(4610), [sym_for] = ACTIONS(4610), [sym_foreach] = ACTIONS(4610), [sym_foreach_reverse] = ACTIONS(4610), [sym_function] = ACTIONS(4610), [sym_goto] = ACTIONS(4610), [sym_if] = ACTIONS(4610), [sym_immutable] = ACTIONS(4610), [sym_import] = ACTIONS(4610), [sym_in] = ACTIONS(4610), [sym_inout] = ACTIONS(4610), [sym_interface] = ACTIONS(4610), [sym_invariant] = ACTIONS(4610), [sym_is] = ACTIONS(4610), [sym_mixin] = ACTIONS(4610), [sym_new] = ACTIONS(4610), [sym_nothrow] = ACTIONS(4610), [sym_out] = ACTIONS(4610), [sym_override] = ACTIONS(4610), [sym_package] = ACTIONS(4610), [sym_pragma] = ACTIONS(4610), [sym_private] = ACTIONS(4610), [sym_protected] = ACTIONS(4610), [sym_public] = ACTIONS(4610), [sym_pure] = ACTIONS(4610), [sym_ref] = ACTIONS(4610), [sym_return] = ACTIONS(4610), [sym_scope] = ACTIONS(4610), [sym_shared] = ACTIONS(4610), [sym_static] = ACTIONS(4610), [sym_struct] = ACTIONS(4610), [sym_switch] = ACTIONS(4610), [sym_synchronized] = ACTIONS(4610), [sym_template] = ACTIONS(4610), [sym_throw] = ACTIONS(4610), [sym_try] = ACTIONS(4610), [sym_typeid] = ACTIONS(4610), [sym_typeof] = ACTIONS(4610), [sym_union] = ACTIONS(4610), [sym_unittest] = ACTIONS(4610), [sym_version] = ACTIONS(4610), [sym_while] = ACTIONS(4610), [sym_with] = ACTIONS(4610), [sym_gshared] = ACTIONS(4610), [sym_traits] = ACTIONS(4610), [sym_vector] = ACTIONS(4610), [sym_void] = ACTIONS(4610), [anon_sym_BQUOTE] = ACTIONS(4612), [anon_sym_r_DQUOTE] = ACTIONS(4612), [anon_sym_x_DQUOTE] = ACTIONS(4612), [anon_sym_DQUOTE] = ACTIONS(4612), [anon_sym_i_BQUOTE] = ACTIONS(4612), [anon_sym_i_DQUOTE] = ACTIONS(4612), [anon_sym_iq_LBRACE] = ACTIONS(4612), [aux_sym_char_literal_token1] = ACTIONS(4612), [anon_sym_SQUOTE] = ACTIONS(4610), [anon_sym___DATE__] = ACTIONS(4610), [anon_sym___FILE__] = ACTIONS(4610), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4610), [anon_sym___FUNCTION__] = ACTIONS(4610), [anon_sym___LINE__] = ACTIONS(4610), [anon_sym___MODULE__] = ACTIONS(4610), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4610), [anon_sym___TIME__] = ACTIONS(4610), [anon_sym___TIMESTAMP__] = ACTIONS(4610), [anon_sym___VENDOR__] = ACTIONS(4610), [anon_sym___VERSION__] = ACTIONS(4610), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4612), [sym_float_literal] = ACTIONS(4612), [sym__string] = ACTIONS(4612), }, [1759] = { [sym_identifier] = ACTIONS(5012), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5014), [anon_sym_RBRACE] = ACTIONS(5014), [anon_sym_LBRACE] = ACTIONS(5014), [anon_sym_DOT] = ACTIONS(5014), [anon_sym_AMP] = ACTIONS(5014), [anon_sym_DASH] = ACTIONS(5012), [anon_sym_DASH_DASH] = ACTIONS(5014), [anon_sym_PLUS] = ACTIONS(5012), [anon_sym_PLUS_PLUS] = ACTIONS(5014), [anon_sym_BANG] = ACTIONS(5014), [anon_sym_LPAREN] = ACTIONS(5014), [anon_sym_RPAREN] = ACTIONS(5014), [anon_sym_LBRACK] = ACTIONS(5014), [anon_sym_SEMI] = ACTIONS(5014), [anon_sym_DOLLAR] = ACTIONS(5014), [anon_sym_STAR] = ACTIONS(5014), [anon_sym_TILDE] = ACTIONS(5014), [anon_sym_AT] = ACTIONS(5014), [sym_bool] = ACTIONS(5012), [sym_byte] = ACTIONS(5012), [sym_ubyte] = ACTIONS(5012), [sym_char] = ACTIONS(5012), [sym_short] = ACTIONS(5012), [sym_ushort] = ACTIONS(5012), [sym_int] = ACTIONS(5012), [sym_uint] = ACTIONS(5012), [sym_long] = ACTIONS(5012), [sym_ulong] = ACTIONS(5012), [sym_cent] = ACTIONS(5012), [sym_ucent] = ACTIONS(5012), [sym_wchar] = ACTIONS(5012), [sym_dchar] = ACTIONS(5012), [sym_float] = ACTIONS(5012), [sym_double] = ACTIONS(5012), [sym_real] = ACTIONS(5012), [sym_ifloat] = ACTIONS(5012), [sym_idouble] = ACTIONS(5012), [sym_ireal] = ACTIONS(5012), [sym_cfloat] = ACTIONS(5012), [sym_cdouble] = ACTIONS(5012), [sym_creal] = ACTIONS(5012), [sym_size_t] = ACTIONS(5012), [sym_ptrdiff_t] = ACTIONS(5012), [sym_string] = ACTIONS(5012), [sym_cstring] = ACTIONS(5012), [sym_dstring] = ACTIONS(5012), [sym_wstring] = ACTIONS(5012), [sym_noreturn] = ACTIONS(5012), [sym_true] = ACTIONS(5012), [sym_false] = ACTIONS(5012), [sym_null] = ACTIONS(5012), [sym_super] = ACTIONS(5012), [sym_this] = ACTIONS(5012), [sym_abstract] = ACTIONS(5012), [sym_alias] = ACTIONS(5012), [sym_align] = ACTIONS(5012), [sym_asm] = ACTIONS(5012), [sym_assert] = ACTIONS(5012), [sym_auto] = ACTIONS(5012), [sym_break] = ACTIONS(5012), [sym_case] = ACTIONS(5012), [sym_cast] = ACTIONS(5012), [sym_class] = ACTIONS(5012), [sym_const] = ACTIONS(5012), [sym_continue] = ACTIONS(5012), [sym_debug] = ACTIONS(5012), [sym_default] = ACTIONS(5012), [sym_delegate] = ACTIONS(5012), [sym_delete] = ACTIONS(5012), [sym_deprecated] = ACTIONS(5012), [sym_do] = ACTIONS(5012), [sym_else] = ACTIONS(5012), [sym_enum] = ACTIONS(5012), [sym_export] = ACTIONS(5012), [sym_extern] = ACTIONS(5012), [sym_final] = ACTIONS(5012), [sym_for] = ACTIONS(5012), [sym_foreach] = ACTIONS(5012), [sym_foreach_reverse] = ACTIONS(5012), [sym_function] = ACTIONS(5012), [sym_goto] = ACTIONS(5012), [sym_if] = ACTIONS(5012), [sym_immutable] = ACTIONS(5012), [sym_import] = ACTIONS(5012), [sym_in] = ACTIONS(5012), [sym_inout] = ACTIONS(5012), [sym_interface] = ACTIONS(5012), [sym_invariant] = ACTIONS(5012), [sym_is] = ACTIONS(5012), [sym_mixin] = ACTIONS(5012), [sym_new] = ACTIONS(5012), [sym_nothrow] = ACTIONS(5012), [sym_out] = ACTIONS(5012), [sym_override] = ACTIONS(5012), [sym_package] = ACTIONS(5012), [sym_pragma] = ACTIONS(5012), [sym_private] = ACTIONS(5012), [sym_protected] = ACTIONS(5012), [sym_public] = ACTIONS(5012), [sym_pure] = ACTIONS(5012), [sym_ref] = ACTIONS(5012), [sym_return] = ACTIONS(5012), [sym_scope] = ACTIONS(5012), [sym_shared] = ACTIONS(5012), [sym_static] = ACTIONS(5012), [sym_struct] = ACTIONS(5012), [sym_switch] = ACTIONS(5012), [sym_synchronized] = ACTIONS(5012), [sym_template] = ACTIONS(5012), [sym_throw] = ACTIONS(5012), [sym_try] = ACTIONS(5012), [sym_typeid] = ACTIONS(5012), [sym_typeof] = ACTIONS(5012), [sym_union] = ACTIONS(5012), [sym_unittest] = ACTIONS(5012), [sym_version] = ACTIONS(5012), [sym_while] = ACTIONS(5012), [sym_with] = ACTIONS(5012), [sym_gshared] = ACTIONS(5012), [sym_traits] = ACTIONS(5012), [sym_vector] = ACTIONS(5012), [sym_void] = ACTIONS(5012), [anon_sym_BQUOTE] = ACTIONS(5014), [anon_sym_r_DQUOTE] = ACTIONS(5014), [anon_sym_x_DQUOTE] = ACTIONS(5014), [anon_sym_DQUOTE] = ACTIONS(5014), [anon_sym_i_BQUOTE] = ACTIONS(5014), [anon_sym_i_DQUOTE] = ACTIONS(5014), [anon_sym_iq_LBRACE] = ACTIONS(5014), [aux_sym_char_literal_token1] = ACTIONS(5014), [anon_sym_SQUOTE] = ACTIONS(5012), [anon_sym___DATE__] = ACTIONS(5012), [anon_sym___FILE__] = ACTIONS(5012), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5012), [anon_sym___FUNCTION__] = ACTIONS(5012), [anon_sym___LINE__] = ACTIONS(5012), [anon_sym___MODULE__] = ACTIONS(5012), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5012), [anon_sym___TIME__] = ACTIONS(5012), [anon_sym___TIMESTAMP__] = ACTIONS(5012), [anon_sym___VENDOR__] = ACTIONS(5012), [anon_sym___VERSION__] = ACTIONS(5012), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5014), [sym_float_literal] = ACTIONS(5014), [sym__string] = ACTIONS(5014), }, [1760] = { [sym_identifier] = ACTIONS(4500), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4502), [anon_sym_RBRACE] = ACTIONS(4502), [anon_sym_LBRACE] = ACTIONS(4502), [anon_sym_DOT] = ACTIONS(4502), [anon_sym_AMP] = ACTIONS(4502), [anon_sym_DASH] = ACTIONS(4500), [anon_sym_DASH_DASH] = ACTIONS(4502), [anon_sym_PLUS] = ACTIONS(4500), [anon_sym_PLUS_PLUS] = ACTIONS(4502), [anon_sym_BANG] = ACTIONS(4502), [anon_sym_LPAREN] = ACTIONS(4502), [anon_sym_RPAREN] = ACTIONS(4502), [anon_sym_LBRACK] = ACTIONS(4502), [anon_sym_SEMI] = ACTIONS(4502), [anon_sym_DOLLAR] = ACTIONS(4502), [anon_sym_STAR] = ACTIONS(4502), [anon_sym_TILDE] = ACTIONS(4502), [anon_sym_AT] = ACTIONS(4502), [sym_bool] = ACTIONS(4500), [sym_byte] = ACTIONS(4500), [sym_ubyte] = ACTIONS(4500), [sym_char] = ACTIONS(4500), [sym_short] = ACTIONS(4500), [sym_ushort] = ACTIONS(4500), [sym_int] = ACTIONS(4500), [sym_uint] = ACTIONS(4500), [sym_long] = ACTIONS(4500), [sym_ulong] = ACTIONS(4500), [sym_cent] = ACTIONS(4500), [sym_ucent] = ACTIONS(4500), [sym_wchar] = ACTIONS(4500), [sym_dchar] = ACTIONS(4500), [sym_float] = ACTIONS(4500), [sym_double] = ACTIONS(4500), [sym_real] = ACTIONS(4500), [sym_ifloat] = ACTIONS(4500), [sym_idouble] = ACTIONS(4500), [sym_ireal] = ACTIONS(4500), [sym_cfloat] = ACTIONS(4500), [sym_cdouble] = ACTIONS(4500), [sym_creal] = ACTIONS(4500), [sym_size_t] = ACTIONS(4500), [sym_ptrdiff_t] = ACTIONS(4500), [sym_string] = ACTIONS(4500), [sym_cstring] = ACTIONS(4500), [sym_dstring] = ACTIONS(4500), [sym_wstring] = ACTIONS(4500), [sym_noreturn] = ACTIONS(4500), [sym_true] = ACTIONS(4500), [sym_false] = ACTIONS(4500), [sym_null] = ACTIONS(4500), [sym_super] = ACTIONS(4500), [sym_this] = ACTIONS(4500), [sym_abstract] = ACTIONS(4500), [sym_alias] = ACTIONS(4500), [sym_align] = ACTIONS(4500), [sym_asm] = ACTIONS(4500), [sym_assert] = ACTIONS(4500), [sym_auto] = ACTIONS(4500), [sym_break] = ACTIONS(4500), [sym_case] = ACTIONS(4500), [sym_cast] = ACTIONS(4500), [sym_class] = ACTIONS(4500), [sym_const] = ACTIONS(4500), [sym_continue] = ACTIONS(4500), [sym_debug] = ACTIONS(4500), [sym_default] = ACTIONS(4500), [sym_delegate] = ACTIONS(4500), [sym_delete] = ACTIONS(4500), [sym_deprecated] = ACTIONS(4500), [sym_do] = ACTIONS(4500), [sym_else] = ACTIONS(4500), [sym_enum] = ACTIONS(4500), [sym_export] = ACTIONS(4500), [sym_extern] = ACTIONS(4500), [sym_final] = ACTIONS(4500), [sym_for] = ACTIONS(4500), [sym_foreach] = ACTIONS(4500), [sym_foreach_reverse] = ACTIONS(4500), [sym_function] = ACTIONS(4500), [sym_goto] = ACTIONS(4500), [sym_if] = ACTIONS(4500), [sym_immutable] = ACTIONS(4500), [sym_import] = ACTIONS(4500), [sym_in] = ACTIONS(4500), [sym_inout] = ACTIONS(4500), [sym_interface] = ACTIONS(4500), [sym_invariant] = ACTIONS(4500), [sym_is] = ACTIONS(4500), [sym_mixin] = ACTIONS(4500), [sym_new] = ACTIONS(4500), [sym_nothrow] = ACTIONS(4500), [sym_out] = ACTIONS(4500), [sym_override] = ACTIONS(4500), [sym_package] = ACTIONS(4500), [sym_pragma] = ACTIONS(4500), [sym_private] = ACTIONS(4500), [sym_protected] = ACTIONS(4500), [sym_public] = ACTIONS(4500), [sym_pure] = ACTIONS(4500), [sym_ref] = ACTIONS(4500), [sym_return] = ACTIONS(4500), [sym_scope] = ACTIONS(4500), [sym_shared] = ACTIONS(4500), [sym_static] = ACTIONS(4500), [sym_struct] = ACTIONS(4500), [sym_switch] = ACTIONS(4500), [sym_synchronized] = ACTIONS(4500), [sym_template] = ACTIONS(4500), [sym_throw] = ACTIONS(4500), [sym_try] = ACTIONS(4500), [sym_typeid] = ACTIONS(4500), [sym_typeof] = ACTIONS(4500), [sym_union] = ACTIONS(4500), [sym_unittest] = ACTIONS(4500), [sym_version] = ACTIONS(4500), [sym_while] = ACTIONS(4500), [sym_with] = ACTIONS(4500), [sym_gshared] = ACTIONS(4500), [sym_traits] = ACTIONS(4500), [sym_vector] = ACTIONS(4500), [sym_void] = ACTIONS(4500), [anon_sym_BQUOTE] = ACTIONS(4502), [anon_sym_r_DQUOTE] = ACTIONS(4502), [anon_sym_x_DQUOTE] = ACTIONS(4502), [anon_sym_DQUOTE] = ACTIONS(4502), [anon_sym_i_BQUOTE] = ACTIONS(4502), [anon_sym_i_DQUOTE] = ACTIONS(4502), [anon_sym_iq_LBRACE] = ACTIONS(4502), [aux_sym_char_literal_token1] = ACTIONS(4502), [anon_sym_SQUOTE] = ACTIONS(4500), [anon_sym___DATE__] = ACTIONS(4500), [anon_sym___FILE__] = ACTIONS(4500), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4500), [anon_sym___FUNCTION__] = ACTIONS(4500), [anon_sym___LINE__] = ACTIONS(4500), [anon_sym___MODULE__] = ACTIONS(4500), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4500), [anon_sym___TIME__] = ACTIONS(4500), [anon_sym___TIMESTAMP__] = ACTIONS(4500), [anon_sym___VENDOR__] = ACTIONS(4500), [anon_sym___VERSION__] = ACTIONS(4500), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4502), [sym_float_literal] = ACTIONS(4502), [sym__string] = ACTIONS(4502), }, [1761] = { [sym_identifier] = ACTIONS(4970), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4972), [anon_sym_RBRACE] = ACTIONS(4972), [anon_sym_LBRACE] = ACTIONS(4972), [anon_sym_DOT] = ACTIONS(4972), [anon_sym_AMP] = ACTIONS(4972), [anon_sym_DASH] = ACTIONS(4970), [anon_sym_DASH_DASH] = ACTIONS(4972), [anon_sym_PLUS] = ACTIONS(4970), [anon_sym_PLUS_PLUS] = ACTIONS(4972), [anon_sym_BANG] = ACTIONS(4972), [anon_sym_LPAREN] = ACTIONS(4972), [anon_sym_RPAREN] = ACTIONS(4972), [anon_sym_LBRACK] = ACTIONS(4972), [anon_sym_SEMI] = ACTIONS(4972), [anon_sym_DOLLAR] = ACTIONS(4972), [anon_sym_STAR] = ACTIONS(4972), [anon_sym_TILDE] = ACTIONS(4972), [anon_sym_AT] = ACTIONS(4972), [sym_bool] = ACTIONS(4970), [sym_byte] = ACTIONS(4970), [sym_ubyte] = ACTIONS(4970), [sym_char] = ACTIONS(4970), [sym_short] = ACTIONS(4970), [sym_ushort] = ACTIONS(4970), [sym_int] = ACTIONS(4970), [sym_uint] = ACTIONS(4970), [sym_long] = ACTIONS(4970), [sym_ulong] = ACTIONS(4970), [sym_cent] = ACTIONS(4970), [sym_ucent] = ACTIONS(4970), [sym_wchar] = ACTIONS(4970), [sym_dchar] = ACTIONS(4970), [sym_float] = ACTIONS(4970), [sym_double] = ACTIONS(4970), [sym_real] = ACTIONS(4970), [sym_ifloat] = ACTIONS(4970), [sym_idouble] = ACTIONS(4970), [sym_ireal] = ACTIONS(4970), [sym_cfloat] = ACTIONS(4970), [sym_cdouble] = ACTIONS(4970), [sym_creal] = ACTIONS(4970), [sym_size_t] = ACTIONS(4970), [sym_ptrdiff_t] = ACTIONS(4970), [sym_string] = ACTIONS(4970), [sym_cstring] = ACTIONS(4970), [sym_dstring] = ACTIONS(4970), [sym_wstring] = ACTIONS(4970), [sym_noreturn] = ACTIONS(4970), [sym_true] = ACTIONS(4970), [sym_false] = ACTIONS(4970), [sym_null] = ACTIONS(4970), [sym_super] = ACTIONS(4970), [sym_this] = ACTIONS(4970), [sym_abstract] = ACTIONS(4970), [sym_alias] = ACTIONS(4970), [sym_align] = ACTIONS(4970), [sym_asm] = ACTIONS(4970), [sym_assert] = ACTIONS(4970), [sym_auto] = ACTIONS(4970), [sym_break] = ACTIONS(4970), [sym_case] = ACTIONS(4970), [sym_cast] = ACTIONS(4970), [sym_class] = ACTIONS(4970), [sym_const] = ACTIONS(4970), [sym_continue] = ACTIONS(4970), [sym_debug] = ACTIONS(4970), [sym_default] = ACTIONS(4970), [sym_delegate] = ACTIONS(4970), [sym_delete] = ACTIONS(4970), [sym_deprecated] = ACTIONS(4970), [sym_do] = ACTIONS(4970), [sym_else] = ACTIONS(4970), [sym_enum] = ACTIONS(4970), [sym_export] = ACTIONS(4970), [sym_extern] = ACTIONS(4970), [sym_final] = ACTIONS(4970), [sym_for] = ACTIONS(4970), [sym_foreach] = ACTIONS(4970), [sym_foreach_reverse] = ACTIONS(4970), [sym_function] = ACTIONS(4970), [sym_goto] = ACTIONS(4970), [sym_if] = ACTIONS(4970), [sym_immutable] = ACTIONS(4970), [sym_import] = ACTIONS(4970), [sym_in] = ACTIONS(4970), [sym_inout] = ACTIONS(4970), [sym_interface] = ACTIONS(4970), [sym_invariant] = ACTIONS(4970), [sym_is] = ACTIONS(4970), [sym_mixin] = ACTIONS(4970), [sym_new] = ACTIONS(4970), [sym_nothrow] = ACTIONS(4970), [sym_out] = ACTIONS(4970), [sym_override] = ACTIONS(4970), [sym_package] = ACTIONS(4970), [sym_pragma] = ACTIONS(4970), [sym_private] = ACTIONS(4970), [sym_protected] = ACTIONS(4970), [sym_public] = ACTIONS(4970), [sym_pure] = ACTIONS(4970), [sym_ref] = ACTIONS(4970), [sym_return] = ACTIONS(4970), [sym_scope] = ACTIONS(4970), [sym_shared] = ACTIONS(4970), [sym_static] = ACTIONS(4970), [sym_struct] = ACTIONS(4970), [sym_switch] = ACTIONS(4970), [sym_synchronized] = ACTIONS(4970), [sym_template] = ACTIONS(4970), [sym_throw] = ACTIONS(4970), [sym_try] = ACTIONS(4970), [sym_typeid] = ACTIONS(4970), [sym_typeof] = ACTIONS(4970), [sym_union] = ACTIONS(4970), [sym_unittest] = ACTIONS(4970), [sym_version] = ACTIONS(4970), [sym_while] = ACTIONS(4970), [sym_with] = ACTIONS(4970), [sym_gshared] = ACTIONS(4970), [sym_traits] = ACTIONS(4970), [sym_vector] = ACTIONS(4970), [sym_void] = ACTIONS(4970), [anon_sym_BQUOTE] = ACTIONS(4972), [anon_sym_r_DQUOTE] = ACTIONS(4972), [anon_sym_x_DQUOTE] = ACTIONS(4972), [anon_sym_DQUOTE] = ACTIONS(4972), [anon_sym_i_BQUOTE] = ACTIONS(4972), [anon_sym_i_DQUOTE] = ACTIONS(4972), [anon_sym_iq_LBRACE] = ACTIONS(4972), [aux_sym_char_literal_token1] = ACTIONS(4972), [anon_sym_SQUOTE] = ACTIONS(4970), [anon_sym___DATE__] = ACTIONS(4970), [anon_sym___FILE__] = ACTIONS(4970), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4970), [anon_sym___FUNCTION__] = ACTIONS(4970), [anon_sym___LINE__] = ACTIONS(4970), [anon_sym___MODULE__] = ACTIONS(4970), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4970), [anon_sym___TIME__] = ACTIONS(4970), [anon_sym___TIMESTAMP__] = ACTIONS(4970), [anon_sym___VENDOR__] = ACTIONS(4970), [anon_sym___VERSION__] = ACTIONS(4970), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4972), [sym_float_literal] = ACTIONS(4972), [sym__string] = ACTIONS(4972), }, [1762] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5115), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_AMP] = ACTIONS(5115), [anon_sym_DASH] = ACTIONS(5113), [anon_sym_DASH_DASH] = ACTIONS(5115), [anon_sym_PLUS] = ACTIONS(5113), [anon_sym_PLUS_PLUS] = ACTIONS(5115), [anon_sym_BANG] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(5117), [anon_sym_LBRACK] = ACTIONS(5115), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_DOLLAR] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5119), [anon_sym_STAR] = ACTIONS(5115), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_true] = ACTIONS(5113), [sym_false] = ACTIONS(5113), [sym_null] = ACTIONS(5113), [sym_super] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_asm] = ACTIONS(5113), [sym_assert] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_break] = ACTIONS(5113), [sym_case] = ACTIONS(5113), [sym_cast] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_continue] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_default] = ACTIONS(5113), [sym_delegate] = ACTIONS(5113), [sym_delete] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_do] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_for] = ACTIONS(5113), [sym_foreach] = ACTIONS(5113), [sym_foreach_reverse] = ACTIONS(5113), [sym_function] = ACTIONS(5113), [sym_goto] = ACTIONS(5113), [sym_if] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_in] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_is] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_new] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_out] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_switch] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_throw] = ACTIONS(5113), [sym_try] = ACTIONS(5113), [sym_typeid] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_while] = ACTIONS(5113), [sym_with] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [anon_sym_BQUOTE] = ACTIONS(5115), [anon_sym_r_DQUOTE] = ACTIONS(5115), [anon_sym_x_DQUOTE] = ACTIONS(5115), [anon_sym_DQUOTE] = ACTIONS(5115), [anon_sym_i_BQUOTE] = ACTIONS(5115), [anon_sym_i_DQUOTE] = ACTIONS(5115), [anon_sym_iq_LBRACE] = ACTIONS(5115), [aux_sym_char_literal_token1] = ACTIONS(5115), [anon_sym_SQUOTE] = ACTIONS(5113), [anon_sym___DATE__] = ACTIONS(5113), [anon_sym___FILE__] = ACTIONS(5113), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5113), [anon_sym___FUNCTION__] = ACTIONS(5113), [anon_sym___LINE__] = ACTIONS(5113), [anon_sym___MODULE__] = ACTIONS(5113), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5113), [anon_sym___TIME__] = ACTIONS(5113), [anon_sym___TIMESTAMP__] = ACTIONS(5113), [anon_sym___VENDOR__] = ACTIONS(5113), [anon_sym___VERSION__] = ACTIONS(5113), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5115), [sym_float_literal] = ACTIONS(5115), [sym__string] = ACTIONS(5115), }, [1763] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5115), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_AMP] = ACTIONS(5115), [anon_sym_DASH] = ACTIONS(5113), [anon_sym_DASH_DASH] = ACTIONS(5115), [anon_sym_PLUS] = ACTIONS(5113), [anon_sym_PLUS_PLUS] = ACTIONS(5115), [anon_sym_BANG] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(5117), [anon_sym_LBRACK] = ACTIONS(5115), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_DOLLAR] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5121), [anon_sym_STAR] = ACTIONS(5115), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_true] = ACTIONS(5113), [sym_false] = ACTIONS(5113), [sym_null] = ACTIONS(5113), [sym_super] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_asm] = ACTIONS(5113), [sym_assert] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_break] = ACTIONS(5113), [sym_case] = ACTIONS(5113), [sym_cast] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_continue] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_default] = ACTIONS(5113), [sym_delegate] = ACTIONS(5113), [sym_delete] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_do] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_for] = ACTIONS(5113), [sym_foreach] = ACTIONS(5113), [sym_foreach_reverse] = ACTIONS(5113), [sym_function] = ACTIONS(5113), [sym_goto] = ACTIONS(5113), [sym_if] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_in] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_is] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_new] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_out] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_switch] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_throw] = ACTIONS(5113), [sym_try] = ACTIONS(5113), [sym_typeid] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_while] = ACTIONS(5113), [sym_with] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [anon_sym_BQUOTE] = ACTIONS(5115), [anon_sym_r_DQUOTE] = ACTIONS(5115), [anon_sym_x_DQUOTE] = ACTIONS(5115), [anon_sym_DQUOTE] = ACTIONS(5115), [anon_sym_i_BQUOTE] = ACTIONS(5115), [anon_sym_i_DQUOTE] = ACTIONS(5115), [anon_sym_iq_LBRACE] = ACTIONS(5115), [aux_sym_char_literal_token1] = ACTIONS(5115), [anon_sym_SQUOTE] = ACTIONS(5113), [anon_sym___DATE__] = ACTIONS(5113), [anon_sym___FILE__] = ACTIONS(5113), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5113), [anon_sym___FUNCTION__] = ACTIONS(5113), [anon_sym___LINE__] = ACTIONS(5113), [anon_sym___MODULE__] = ACTIONS(5113), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5113), [anon_sym___TIME__] = ACTIONS(5113), [anon_sym___TIMESTAMP__] = ACTIONS(5113), [anon_sym___VENDOR__] = ACTIONS(5113), [anon_sym___VERSION__] = ACTIONS(5113), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5115), [sym_float_literal] = ACTIONS(5115), [sym__string] = ACTIONS(5115), }, [1764] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5115), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_AMP] = ACTIONS(5115), [anon_sym_DASH] = ACTIONS(5113), [anon_sym_DASH_DASH] = ACTIONS(5115), [anon_sym_PLUS] = ACTIONS(5113), [anon_sym_PLUS_PLUS] = ACTIONS(5115), [anon_sym_BANG] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(5117), [anon_sym_LBRACK] = ACTIONS(5115), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_DOLLAR] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5123), [anon_sym_STAR] = ACTIONS(5115), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_true] = ACTIONS(5113), [sym_false] = ACTIONS(5113), [sym_null] = ACTIONS(5113), [sym_super] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_asm] = ACTIONS(5113), [sym_assert] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_break] = ACTIONS(5113), [sym_case] = ACTIONS(5113), [sym_cast] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_continue] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_default] = ACTIONS(5113), [sym_delegate] = ACTIONS(5113), [sym_delete] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_do] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_for] = ACTIONS(5113), [sym_foreach] = ACTIONS(5113), [sym_foreach_reverse] = ACTIONS(5113), [sym_function] = ACTIONS(5113), [sym_goto] = ACTIONS(5113), [sym_if] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_in] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_is] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_new] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_out] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_switch] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_throw] = ACTIONS(5113), [sym_try] = ACTIONS(5113), [sym_typeid] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_while] = ACTIONS(5113), [sym_with] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [anon_sym_BQUOTE] = ACTIONS(5115), [anon_sym_r_DQUOTE] = ACTIONS(5115), [anon_sym_x_DQUOTE] = ACTIONS(5115), [anon_sym_DQUOTE] = ACTIONS(5115), [anon_sym_i_BQUOTE] = ACTIONS(5115), [anon_sym_i_DQUOTE] = ACTIONS(5115), [anon_sym_iq_LBRACE] = ACTIONS(5115), [aux_sym_char_literal_token1] = ACTIONS(5115), [anon_sym_SQUOTE] = ACTIONS(5113), [anon_sym___DATE__] = ACTIONS(5113), [anon_sym___FILE__] = ACTIONS(5113), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5113), [anon_sym___FUNCTION__] = ACTIONS(5113), [anon_sym___LINE__] = ACTIONS(5113), [anon_sym___MODULE__] = ACTIONS(5113), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5113), [anon_sym___TIME__] = ACTIONS(5113), [anon_sym___TIMESTAMP__] = ACTIONS(5113), [anon_sym___VENDOR__] = ACTIONS(5113), [anon_sym___VERSION__] = ACTIONS(5113), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5115), [sym_float_literal] = ACTIONS(5115), [sym__string] = ACTIONS(5115), }, [1765] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5115), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_AMP] = ACTIONS(5115), [anon_sym_DASH] = ACTIONS(5113), [anon_sym_DASH_DASH] = ACTIONS(5115), [anon_sym_PLUS] = ACTIONS(5113), [anon_sym_PLUS_PLUS] = ACTIONS(5115), [anon_sym_BANG] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(5117), [anon_sym_LBRACK] = ACTIONS(5115), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_DOLLAR] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5125), [anon_sym_STAR] = ACTIONS(5115), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_true] = ACTIONS(5113), [sym_false] = ACTIONS(5113), [sym_null] = ACTIONS(5113), [sym_super] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_asm] = ACTIONS(5113), [sym_assert] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_break] = ACTIONS(5113), [sym_case] = ACTIONS(5113), [sym_cast] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_continue] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_default] = ACTIONS(5113), [sym_delegate] = ACTIONS(5113), [sym_delete] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_do] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_for] = ACTIONS(5113), [sym_foreach] = ACTIONS(5113), [sym_foreach_reverse] = ACTIONS(5113), [sym_function] = ACTIONS(5113), [sym_goto] = ACTIONS(5113), [sym_if] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_in] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_is] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_new] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_out] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_switch] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_throw] = ACTIONS(5113), [sym_try] = ACTIONS(5113), [sym_typeid] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_while] = ACTIONS(5113), [sym_with] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [anon_sym_BQUOTE] = ACTIONS(5115), [anon_sym_r_DQUOTE] = ACTIONS(5115), [anon_sym_x_DQUOTE] = ACTIONS(5115), [anon_sym_DQUOTE] = ACTIONS(5115), [anon_sym_i_BQUOTE] = ACTIONS(5115), [anon_sym_i_DQUOTE] = ACTIONS(5115), [anon_sym_iq_LBRACE] = ACTIONS(5115), [aux_sym_char_literal_token1] = ACTIONS(5115), [anon_sym_SQUOTE] = ACTIONS(5113), [anon_sym___DATE__] = ACTIONS(5113), [anon_sym___FILE__] = ACTIONS(5113), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5113), [anon_sym___FUNCTION__] = ACTIONS(5113), [anon_sym___LINE__] = ACTIONS(5113), [anon_sym___MODULE__] = ACTIONS(5113), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5113), [anon_sym___TIME__] = ACTIONS(5113), [anon_sym___TIMESTAMP__] = ACTIONS(5113), [anon_sym___VENDOR__] = ACTIONS(5113), [anon_sym___VERSION__] = ACTIONS(5113), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5115), [sym_float_literal] = ACTIONS(5115), [sym__string] = ACTIONS(5115), }, [1766] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5115), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_AMP] = ACTIONS(5115), [anon_sym_DASH] = ACTIONS(5113), [anon_sym_DASH_DASH] = ACTIONS(5115), [anon_sym_PLUS] = ACTIONS(5113), [anon_sym_PLUS_PLUS] = ACTIONS(5115), [anon_sym_BANG] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(5117), [anon_sym_LBRACK] = ACTIONS(5115), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_DOLLAR] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5127), [anon_sym_STAR] = ACTIONS(5115), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_true] = ACTIONS(5113), [sym_false] = ACTIONS(5113), [sym_null] = ACTIONS(5113), [sym_super] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_asm] = ACTIONS(5113), [sym_assert] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_break] = ACTIONS(5113), [sym_case] = ACTIONS(5113), [sym_cast] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_continue] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_default] = ACTIONS(5113), [sym_delegate] = ACTIONS(5113), [sym_delete] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_do] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_for] = ACTIONS(5113), [sym_foreach] = ACTIONS(5113), [sym_foreach_reverse] = ACTIONS(5113), [sym_function] = ACTIONS(5113), [sym_goto] = ACTIONS(5113), [sym_if] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_in] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_is] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_new] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_out] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_switch] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_throw] = ACTIONS(5113), [sym_try] = ACTIONS(5113), [sym_typeid] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_while] = ACTIONS(5113), [sym_with] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [anon_sym_BQUOTE] = ACTIONS(5115), [anon_sym_r_DQUOTE] = ACTIONS(5115), [anon_sym_x_DQUOTE] = ACTIONS(5115), [anon_sym_DQUOTE] = ACTIONS(5115), [anon_sym_i_BQUOTE] = ACTIONS(5115), [anon_sym_i_DQUOTE] = ACTIONS(5115), [anon_sym_iq_LBRACE] = ACTIONS(5115), [aux_sym_char_literal_token1] = ACTIONS(5115), [anon_sym_SQUOTE] = ACTIONS(5113), [anon_sym___DATE__] = ACTIONS(5113), [anon_sym___FILE__] = ACTIONS(5113), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5113), [anon_sym___FUNCTION__] = ACTIONS(5113), [anon_sym___LINE__] = ACTIONS(5113), [anon_sym___MODULE__] = ACTIONS(5113), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5113), [anon_sym___TIME__] = ACTIONS(5113), [anon_sym___TIMESTAMP__] = ACTIONS(5113), [anon_sym___VENDOR__] = ACTIONS(5113), [anon_sym___VERSION__] = ACTIONS(5113), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5115), [sym_float_literal] = ACTIONS(5115), [sym__string] = ACTIONS(5115), }, [1767] = { [sym_identifier] = ACTIONS(2137), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2108), [anon_sym_RBRACE] = ACTIONS(2108), [anon_sym_LBRACE] = ACTIONS(2108), [anon_sym_DOT] = ACTIONS(2108), [anon_sym_AMP] = ACTIONS(2108), [anon_sym_DASH] = ACTIONS(2137), [anon_sym_DASH_DASH] = ACTIONS(2108), [anon_sym_PLUS] = ACTIONS(2137), [anon_sym_PLUS_PLUS] = ACTIONS(2108), [anon_sym_BANG] = ACTIONS(2108), [anon_sym_LPAREN] = ACTIONS(2108), [anon_sym_LBRACK] = ACTIONS(2108), [anon_sym_SEMI] = ACTIONS(2108), [anon_sym_DOLLAR] = ACTIONS(2108), [anon_sym_STAR] = ACTIONS(2108), [anon_sym_TILDE] = ACTIONS(2108), [anon_sym_AT] = ACTIONS(2108), [sym_bool] = ACTIONS(2137), [sym_byte] = ACTIONS(2137), [sym_ubyte] = ACTIONS(2137), [sym_char] = ACTIONS(2137), [sym_short] = ACTIONS(2137), [sym_ushort] = ACTIONS(2137), [sym_int] = ACTIONS(2137), [sym_uint] = ACTIONS(2137), [sym_long] = ACTIONS(2137), [sym_ulong] = ACTIONS(2137), [sym_cent] = ACTIONS(2137), [sym_ucent] = ACTIONS(2137), [sym_wchar] = ACTIONS(2137), [sym_dchar] = ACTIONS(2137), [sym_float] = ACTIONS(2137), [sym_double] = ACTIONS(2137), [sym_real] = ACTIONS(2137), [sym_ifloat] = ACTIONS(2137), [sym_idouble] = ACTIONS(2137), [sym_ireal] = ACTIONS(2137), [sym_cfloat] = ACTIONS(2137), [sym_cdouble] = ACTIONS(2137), [sym_creal] = ACTIONS(2137), [sym_size_t] = ACTIONS(2137), [sym_ptrdiff_t] = ACTIONS(2137), [sym_string] = ACTIONS(2137), [sym_cstring] = ACTIONS(2137), [sym_dstring] = ACTIONS(2137), [sym_wstring] = ACTIONS(2137), [sym_noreturn] = ACTIONS(2137), [sym_true] = ACTIONS(2137), [sym_false] = ACTIONS(2137), [sym_null] = ACTIONS(2137), [sym_super] = ACTIONS(2137), [sym_this] = ACTIONS(2137), [sym_abstract] = ACTIONS(2137), [sym_alias] = ACTIONS(2137), [sym_align] = ACTIONS(2137), [sym_asm] = ACTIONS(2137), [sym_assert] = ACTIONS(2137), [sym_auto] = ACTIONS(2137), [sym_break] = ACTIONS(2137), [sym_case] = ACTIONS(2137), [sym_cast] = ACTIONS(2137), [sym_class] = ACTIONS(2137), [sym_const] = ACTIONS(2137), [sym_continue] = ACTIONS(2137), [sym_debug] = ACTIONS(2137), [sym_default] = ACTIONS(2137), [sym_delegate] = ACTIONS(2137), [sym_delete] = ACTIONS(2137), [sym_deprecated] = ACTIONS(2137), [sym_do] = ACTIONS(2137), [sym_enum] = ACTIONS(2137), [sym_export] = ACTIONS(2137), [sym_extern] = ACTIONS(2137), [sym_final] = ACTIONS(2137), [sym_for] = ACTIONS(2137), [sym_foreach] = ACTIONS(2137), [sym_foreach_reverse] = ACTIONS(2137), [sym_function] = ACTIONS(2137), [sym_goto] = ACTIONS(2137), [sym_if] = ACTIONS(2137), [sym_immutable] = ACTIONS(2137), [sym_import] = ACTIONS(2137), [sym_in] = ACTIONS(2137), [sym_inout] = ACTIONS(2137), [sym_interface] = ACTIONS(2137), [sym_invariant] = ACTIONS(2137), [sym_is] = ACTIONS(2137), [sym_mixin] = ACTIONS(2137), [sym_new] = ACTIONS(2137), [sym_nothrow] = ACTIONS(2137), [sym_out] = ACTIONS(2137), [sym_override] = ACTIONS(2137), [sym_package] = ACTIONS(2137), [sym_pragma] = ACTIONS(2137), [sym_private] = ACTIONS(2137), [sym_protected] = ACTIONS(2137), [sym_public] = ACTIONS(2137), [sym_pure] = ACTIONS(2137), [sym_ref] = ACTIONS(2137), [sym_return] = ACTIONS(2137), [sym_scope] = ACTIONS(2137), [sym_shared] = ACTIONS(2137), [sym_static] = ACTIONS(2137), [sym_struct] = ACTIONS(2137), [sym_switch] = ACTIONS(2137), [sym_synchronized] = ACTIONS(2137), [sym_template] = ACTIONS(2137), [sym_throw] = ACTIONS(2137), [sym_try] = ACTIONS(2137), [sym_typeid] = ACTIONS(2137), [sym_typeof] = ACTIONS(2137), [sym_union] = ACTIONS(2137), [sym_unittest] = ACTIONS(2137), [sym_version] = ACTIONS(2137), [sym_while] = ACTIONS(2137), [sym_with] = ACTIONS(2137), [sym_gshared] = ACTIONS(2137), [sym_traits] = ACTIONS(2137), [sym_vector] = ACTIONS(2137), [sym_void] = ACTIONS(2137), [anon_sym_BQUOTE] = ACTIONS(2108), [anon_sym_r_DQUOTE] = ACTIONS(2108), [anon_sym_x_DQUOTE] = ACTIONS(2108), [anon_sym_DQUOTE] = ACTIONS(2108), [anon_sym_i_BQUOTE] = ACTIONS(2108), [anon_sym_i_DQUOTE] = ACTIONS(2108), [anon_sym_iq_LBRACE] = ACTIONS(2108), [aux_sym_char_literal_token1] = ACTIONS(2108), [anon_sym_SQUOTE] = ACTIONS(2137), [anon_sym___DATE__] = ACTIONS(2137), [anon_sym___FILE__] = ACTIONS(2137), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2137), [anon_sym___FUNCTION__] = ACTIONS(2137), [anon_sym___LINE__] = ACTIONS(2137), [anon_sym___MODULE__] = ACTIONS(2137), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2137), [anon_sym___TIME__] = ACTIONS(2137), [anon_sym___TIMESTAMP__] = ACTIONS(2137), [anon_sym___VENDOR__] = ACTIONS(2137), [anon_sym___VERSION__] = ACTIONS(2137), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2108), [sym_float_literal] = ACTIONS(2108), [sym__string] = ACTIONS(2108), }, [1768] = { [sym_identifier] = ACTIONS(5129), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5132), [anon_sym_RBRACE] = ACTIONS(5134), [anon_sym_LBRACE] = ACTIONS(5132), [anon_sym_DOT] = ACTIONS(5134), [anon_sym_AMP] = ACTIONS(5132), [anon_sym_DASH] = ACTIONS(5137), [anon_sym_DASH_DASH] = ACTIONS(5132), [anon_sym_PLUS] = ACTIONS(5137), [anon_sym_PLUS_PLUS] = ACTIONS(5132), [anon_sym_BANG] = ACTIONS(5132), [anon_sym_LPAREN] = ACTIONS(5132), [anon_sym_LBRACK] = ACTIONS(5132), [anon_sym_SEMI] = ACTIONS(5134), [anon_sym_DOLLAR] = ACTIONS(5132), [anon_sym_STAR] = ACTIONS(5132), [anon_sym_TILDE] = ACTIONS(5134), [anon_sym_AT] = ACTIONS(5134), [sym_bool] = ACTIONS(5129), [sym_byte] = ACTIONS(5129), [sym_ubyte] = ACTIONS(5129), [sym_char] = ACTIONS(5129), [sym_short] = ACTIONS(5129), [sym_ushort] = ACTIONS(5129), [sym_int] = ACTIONS(5129), [sym_uint] = ACTIONS(5129), [sym_long] = ACTIONS(5129), [sym_ulong] = ACTIONS(5129), [sym_cent] = ACTIONS(5129), [sym_ucent] = ACTIONS(5129), [sym_wchar] = ACTIONS(5129), [sym_dchar] = ACTIONS(5129), [sym_float] = ACTIONS(5129), [sym_double] = ACTIONS(5129), [sym_real] = ACTIONS(5129), [sym_ifloat] = ACTIONS(5129), [sym_idouble] = ACTIONS(5129), [sym_ireal] = ACTIONS(5129), [sym_cfloat] = ACTIONS(5129), [sym_cdouble] = ACTIONS(5129), [sym_creal] = ACTIONS(5129), [sym_size_t] = ACTIONS(5129), [sym_ptrdiff_t] = ACTIONS(5129), [sym_string] = ACTIONS(5129), [sym_cstring] = ACTIONS(5129), [sym_dstring] = ACTIONS(5129), [sym_wstring] = ACTIONS(5129), [sym_noreturn] = ACTIONS(5129), [sym_true] = ACTIONS(5137), [sym_false] = ACTIONS(5137), [sym_null] = ACTIONS(5137), [sym_super] = ACTIONS(5137), [sym_this] = ACTIONS(5129), [sym_abstract] = ACTIONS(5129), [sym_alias] = ACTIONS(5129), [sym_align] = ACTIONS(5129), [sym_asm] = ACTIONS(5137), [sym_assert] = ACTIONS(5137), [sym_auto] = ACTIONS(5129), [sym_break] = ACTIONS(5137), [sym_case] = ACTIONS(5137), [sym_cast] = ACTIONS(5137), [sym_class] = ACTIONS(5129), [sym_const] = ACTIONS(5129), [sym_continue] = ACTIONS(5137), [sym_debug] = ACTIONS(5129), [sym_default] = ACTIONS(5137), [sym_delegate] = ACTIONS(5137), [sym_delete] = ACTIONS(5137), [sym_deprecated] = ACTIONS(5129), [sym_do] = ACTIONS(5137), [sym_enum] = ACTIONS(5129), [sym_export] = ACTIONS(5129), [sym_extern] = ACTIONS(5129), [sym_final] = ACTIONS(5129), [sym_for] = ACTIONS(5137), [sym_foreach] = ACTIONS(5137), [sym_foreach_reverse] = ACTIONS(5137), [sym_function] = ACTIONS(5137), [sym_goto] = ACTIONS(5137), [sym_if] = ACTIONS(5137), [sym_immutable] = ACTIONS(5129), [sym_import] = ACTIONS(5129), [sym_in] = ACTIONS(5137), [sym_inout] = ACTIONS(5129), [sym_interface] = ACTIONS(5129), [sym_invariant] = ACTIONS(5129), [sym_is] = ACTIONS(5137), [sym_mixin] = ACTIONS(5129), [sym_new] = ACTIONS(5137), [sym_nothrow] = ACTIONS(5129), [sym_out] = ACTIONS(5137), [sym_override] = ACTIONS(5129), [sym_package] = ACTIONS(5129), [sym_pragma] = ACTIONS(5129), [sym_private] = ACTIONS(5129), [sym_protected] = ACTIONS(5129), [sym_public] = ACTIONS(5129), [sym_pure] = ACTIONS(5129), [sym_ref] = ACTIONS(5129), [sym_return] = ACTIONS(5129), [sym_scope] = ACTIONS(5129), [sym_shared] = ACTIONS(5129), [sym_static] = ACTIONS(5129), [sym_struct] = ACTIONS(5129), [sym_switch] = ACTIONS(5137), [sym_synchronized] = ACTIONS(5129), [sym_template] = ACTIONS(5129), [sym_throw] = ACTIONS(5137), [sym_try] = ACTIONS(5137), [sym_typeid] = ACTIONS(5137), [sym_typeof] = ACTIONS(5129), [sym_union] = ACTIONS(5129), [sym_unittest] = ACTIONS(5129), [sym_version] = ACTIONS(5129), [sym_while] = ACTIONS(5137), [sym_with] = ACTIONS(5137), [sym_gshared] = ACTIONS(5129), [sym_traits] = ACTIONS(5129), [sym_vector] = ACTIONS(5129), [sym_void] = ACTIONS(5129), [anon_sym_BQUOTE] = ACTIONS(5132), [anon_sym_r_DQUOTE] = ACTIONS(5132), [anon_sym_x_DQUOTE] = ACTIONS(5132), [anon_sym_DQUOTE] = ACTIONS(5132), [anon_sym_i_BQUOTE] = ACTIONS(5132), [anon_sym_i_DQUOTE] = ACTIONS(5132), [anon_sym_iq_LBRACE] = ACTIONS(5132), [aux_sym_char_literal_token1] = ACTIONS(5132), [anon_sym_SQUOTE] = ACTIONS(5137), [anon_sym___DATE__] = ACTIONS(5137), [anon_sym___FILE__] = ACTIONS(5137), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5137), [anon_sym___FUNCTION__] = ACTIONS(5137), [anon_sym___LINE__] = ACTIONS(5137), [anon_sym___MODULE__] = ACTIONS(5137), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5137), [anon_sym___TIME__] = ACTIONS(5137), [anon_sym___TIMESTAMP__] = ACTIONS(5137), [anon_sym___VENDOR__] = ACTIONS(5137), [anon_sym___VERSION__] = ACTIONS(5137), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5132), [sym_float_literal] = ACTIONS(5132), [sym__string] = ACTIONS(5132), }, [1769] = { [sym_identifier] = ACTIONS(5139), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5141), [anon_sym_LBRACE] = ACTIONS(5141), [anon_sym_DOT] = ACTIONS(5141), [anon_sym_AMP] = ACTIONS(5141), [anon_sym_DASH] = ACTIONS(5139), [anon_sym_DASH_DASH] = ACTIONS(5141), [anon_sym_PLUS] = ACTIONS(5139), [anon_sym_PLUS_PLUS] = ACTIONS(5141), [anon_sym_BANG] = ACTIONS(5141), [anon_sym_LPAREN] = ACTIONS(5141), [anon_sym_LBRACK] = ACTIONS(5141), [anon_sym_SEMI] = ACTIONS(5141), [anon_sym_COLON] = ACTIONS(5141), [anon_sym_DOLLAR] = ACTIONS(5141), [anon_sym_STAR] = ACTIONS(5141), [anon_sym_TILDE] = ACTIONS(5141), [anon_sym_AT] = ACTIONS(5141), [sym_bool] = ACTIONS(5139), [sym_byte] = ACTIONS(5139), [sym_ubyte] = ACTIONS(5139), [sym_char] = ACTIONS(5139), [sym_short] = ACTIONS(5139), [sym_ushort] = ACTIONS(5139), [sym_int] = ACTIONS(5139), [sym_uint] = ACTIONS(5139), [sym_long] = ACTIONS(5139), [sym_ulong] = ACTIONS(5139), [sym_cent] = ACTIONS(5139), [sym_ucent] = ACTIONS(5139), [sym_wchar] = ACTIONS(5139), [sym_dchar] = ACTIONS(5139), [sym_float] = ACTIONS(5139), [sym_double] = ACTIONS(5139), [sym_real] = ACTIONS(5139), [sym_ifloat] = ACTIONS(5139), [sym_idouble] = ACTIONS(5139), [sym_ireal] = ACTIONS(5139), [sym_cfloat] = ACTIONS(5139), [sym_cdouble] = ACTIONS(5139), [sym_creal] = ACTIONS(5139), [sym_size_t] = ACTIONS(5139), [sym_ptrdiff_t] = ACTIONS(5139), [sym_string] = ACTIONS(5139), [sym_cstring] = ACTIONS(5139), [sym_dstring] = ACTIONS(5139), [sym_wstring] = ACTIONS(5139), [sym_noreturn] = ACTIONS(5139), [sym_true] = ACTIONS(5139), [sym_false] = ACTIONS(5139), [sym_null] = ACTIONS(5139), [sym_super] = ACTIONS(5139), [sym_this] = ACTIONS(5139), [sym_abstract] = ACTIONS(5139), [sym_alias] = ACTIONS(5139), [sym_align] = ACTIONS(5139), [sym_asm] = ACTIONS(5139), [sym_assert] = ACTIONS(5139), [sym_auto] = ACTIONS(5139), [sym_break] = ACTIONS(5139), [sym_case] = ACTIONS(5139), [sym_cast] = ACTIONS(5139), [sym_class] = ACTIONS(5139), [sym_const] = ACTIONS(5139), [sym_continue] = ACTIONS(5139), [sym_debug] = ACTIONS(5139), [sym_default] = ACTIONS(5139), [sym_delegate] = ACTIONS(5139), [sym_delete] = ACTIONS(5139), [sym_deprecated] = ACTIONS(5139), [sym_do] = ACTIONS(5139), [sym_enum] = ACTIONS(5139), [sym_export] = ACTIONS(5139), [sym_extern] = ACTIONS(5139), [sym_final] = ACTIONS(5139), [sym_for] = ACTIONS(5139), [sym_foreach] = ACTIONS(5139), [sym_foreach_reverse] = ACTIONS(5139), [sym_function] = ACTIONS(5139), [sym_goto] = ACTIONS(5139), [sym_if] = ACTIONS(5139), [sym_immutable] = ACTIONS(5139), [sym_import] = ACTIONS(5139), [sym_in] = ACTIONS(5139), [sym_inout] = ACTIONS(5139), [sym_interface] = ACTIONS(5139), [sym_invariant] = ACTIONS(5139), [sym_is] = ACTIONS(5139), [sym_mixin] = ACTIONS(5139), [sym_new] = ACTIONS(5139), [sym_nothrow] = ACTIONS(5139), [sym_out] = ACTIONS(5139), [sym_override] = ACTIONS(5139), [sym_package] = ACTIONS(5139), [sym_pragma] = ACTIONS(5139), [sym_private] = ACTIONS(5139), [sym_protected] = ACTIONS(5139), [sym_public] = ACTIONS(5139), [sym_pure] = ACTIONS(5139), [sym_ref] = ACTIONS(5139), [sym_return] = ACTIONS(5139), [sym_scope] = ACTIONS(5139), [sym_shared] = ACTIONS(5139), [sym_static] = ACTIONS(5139), [sym_struct] = ACTIONS(5139), [sym_switch] = ACTIONS(5139), [sym_synchronized] = ACTIONS(5139), [sym_template] = ACTIONS(5139), [sym_throw] = ACTIONS(5139), [sym_try] = ACTIONS(5139), [sym_typeid] = ACTIONS(5139), [sym_typeof] = ACTIONS(5139), [sym_union] = ACTIONS(5139), [sym_unittest] = ACTIONS(5139), [sym_version] = ACTIONS(5139), [sym_while] = ACTIONS(5139), [sym_with] = ACTIONS(5139), [sym_gshared] = ACTIONS(5139), [sym_traits] = ACTIONS(5139), [sym_vector] = ACTIONS(5139), [sym_void] = ACTIONS(5139), [anon_sym_BQUOTE] = ACTIONS(5141), [anon_sym_r_DQUOTE] = ACTIONS(5141), [anon_sym_x_DQUOTE] = ACTIONS(5141), [anon_sym_DQUOTE] = ACTIONS(5141), [anon_sym_i_BQUOTE] = ACTIONS(5141), [anon_sym_i_DQUOTE] = ACTIONS(5141), [anon_sym_iq_LBRACE] = ACTIONS(5141), [aux_sym_char_literal_token1] = ACTIONS(5141), [anon_sym_SQUOTE] = ACTIONS(5139), [anon_sym___DATE__] = ACTIONS(5139), [anon_sym___FILE__] = ACTIONS(5139), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5139), [anon_sym___FUNCTION__] = ACTIONS(5139), [anon_sym___LINE__] = ACTIONS(5139), [anon_sym___MODULE__] = ACTIONS(5139), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5139), [anon_sym___TIME__] = ACTIONS(5139), [anon_sym___TIMESTAMP__] = ACTIONS(5139), [anon_sym___VENDOR__] = ACTIONS(5139), [anon_sym___VERSION__] = ACTIONS(5139), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5141), [sym_float_literal] = ACTIONS(5141), [sym__string] = ACTIONS(5141), }, [1770] = { [sym_identifier] = ACTIONS(5143), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5145), [anon_sym_LBRACE] = ACTIONS(5145), [anon_sym_DOT] = ACTIONS(5145), [anon_sym_AMP] = ACTIONS(5145), [anon_sym_DASH] = ACTIONS(5143), [anon_sym_DASH_DASH] = ACTIONS(5145), [anon_sym_PLUS] = ACTIONS(5143), [anon_sym_PLUS_PLUS] = ACTIONS(5145), [anon_sym_BANG] = ACTIONS(5145), [anon_sym_LPAREN] = ACTIONS(5145), [anon_sym_LBRACK] = ACTIONS(5145), [anon_sym_SEMI] = ACTIONS(5145), [anon_sym_COLON] = ACTIONS(5145), [anon_sym_DOLLAR] = ACTIONS(5145), [anon_sym_STAR] = ACTIONS(5145), [anon_sym_TILDE] = ACTIONS(5145), [anon_sym_AT] = ACTIONS(5145), [sym_bool] = ACTIONS(5143), [sym_byte] = ACTIONS(5143), [sym_ubyte] = ACTIONS(5143), [sym_char] = ACTIONS(5143), [sym_short] = ACTIONS(5143), [sym_ushort] = ACTIONS(5143), [sym_int] = ACTIONS(5143), [sym_uint] = ACTIONS(5143), [sym_long] = ACTIONS(5143), [sym_ulong] = ACTIONS(5143), [sym_cent] = ACTIONS(5143), [sym_ucent] = ACTIONS(5143), [sym_wchar] = ACTIONS(5143), [sym_dchar] = ACTIONS(5143), [sym_float] = ACTIONS(5143), [sym_double] = ACTIONS(5143), [sym_real] = ACTIONS(5143), [sym_ifloat] = ACTIONS(5143), [sym_idouble] = ACTIONS(5143), [sym_ireal] = ACTIONS(5143), [sym_cfloat] = ACTIONS(5143), [sym_cdouble] = ACTIONS(5143), [sym_creal] = ACTIONS(5143), [sym_size_t] = ACTIONS(5143), [sym_ptrdiff_t] = ACTIONS(5143), [sym_string] = ACTIONS(5143), [sym_cstring] = ACTIONS(5143), [sym_dstring] = ACTIONS(5143), [sym_wstring] = ACTIONS(5143), [sym_noreturn] = ACTIONS(5143), [sym_true] = ACTIONS(5143), [sym_false] = ACTIONS(5143), [sym_null] = ACTIONS(5143), [sym_super] = ACTIONS(5143), [sym_this] = ACTIONS(5143), [sym_abstract] = ACTIONS(5143), [sym_alias] = ACTIONS(5143), [sym_align] = ACTIONS(5143), [sym_asm] = ACTIONS(5143), [sym_assert] = ACTIONS(5143), [sym_auto] = ACTIONS(5143), [sym_break] = ACTIONS(5143), [sym_case] = ACTIONS(5143), [sym_cast] = ACTIONS(5143), [sym_class] = ACTIONS(5143), [sym_const] = ACTIONS(5143), [sym_continue] = ACTIONS(5143), [sym_debug] = ACTIONS(5143), [sym_default] = ACTIONS(5143), [sym_delegate] = ACTIONS(5143), [sym_delete] = ACTIONS(5143), [sym_deprecated] = ACTIONS(5143), [sym_do] = ACTIONS(5143), [sym_enum] = ACTIONS(5143), [sym_export] = ACTIONS(5143), [sym_extern] = ACTIONS(5143), [sym_final] = ACTIONS(5143), [sym_for] = ACTIONS(5143), [sym_foreach] = ACTIONS(5143), [sym_foreach_reverse] = ACTIONS(5143), [sym_function] = ACTIONS(5143), [sym_goto] = ACTIONS(5143), [sym_if] = ACTIONS(5143), [sym_immutable] = ACTIONS(5143), [sym_import] = ACTIONS(5143), [sym_in] = ACTIONS(5143), [sym_inout] = ACTIONS(5143), [sym_interface] = ACTIONS(5143), [sym_invariant] = ACTIONS(5143), [sym_is] = ACTIONS(5143), [sym_mixin] = ACTIONS(5143), [sym_new] = ACTIONS(5143), [sym_nothrow] = ACTIONS(5143), [sym_out] = ACTIONS(5143), [sym_override] = ACTIONS(5143), [sym_package] = ACTIONS(5143), [sym_pragma] = ACTIONS(5143), [sym_private] = ACTIONS(5143), [sym_protected] = ACTIONS(5143), [sym_public] = ACTIONS(5143), [sym_pure] = ACTIONS(5143), [sym_ref] = ACTIONS(5143), [sym_return] = ACTIONS(5143), [sym_scope] = ACTIONS(5143), [sym_shared] = ACTIONS(5143), [sym_static] = ACTIONS(5143), [sym_struct] = ACTIONS(5143), [sym_switch] = ACTIONS(5143), [sym_synchronized] = ACTIONS(5143), [sym_template] = ACTIONS(5143), [sym_throw] = ACTIONS(5143), [sym_try] = ACTIONS(5143), [sym_typeid] = ACTIONS(5143), [sym_typeof] = ACTIONS(5143), [sym_union] = ACTIONS(5143), [sym_unittest] = ACTIONS(5143), [sym_version] = ACTIONS(5143), [sym_while] = ACTIONS(5143), [sym_with] = ACTIONS(5143), [sym_gshared] = ACTIONS(5143), [sym_traits] = ACTIONS(5143), [sym_vector] = ACTIONS(5143), [sym_void] = ACTIONS(5143), [anon_sym_BQUOTE] = ACTIONS(5145), [anon_sym_r_DQUOTE] = ACTIONS(5145), [anon_sym_x_DQUOTE] = ACTIONS(5145), [anon_sym_DQUOTE] = ACTIONS(5145), [anon_sym_i_BQUOTE] = ACTIONS(5145), [anon_sym_i_DQUOTE] = ACTIONS(5145), [anon_sym_iq_LBRACE] = ACTIONS(5145), [aux_sym_char_literal_token1] = ACTIONS(5145), [anon_sym_SQUOTE] = ACTIONS(5143), [anon_sym___DATE__] = ACTIONS(5143), [anon_sym___FILE__] = ACTIONS(5143), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5143), [anon_sym___FUNCTION__] = ACTIONS(5143), [anon_sym___LINE__] = ACTIONS(5143), [anon_sym___MODULE__] = ACTIONS(5143), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5143), [anon_sym___TIME__] = ACTIONS(5143), [anon_sym___TIMESTAMP__] = ACTIONS(5143), [anon_sym___VENDOR__] = ACTIONS(5143), [anon_sym___VERSION__] = ACTIONS(5143), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5145), [sym_float_literal] = ACTIONS(5145), [sym__string] = ACTIONS(5145), }, [1771] = { [sym_identifier] = ACTIONS(5147), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5149), [anon_sym_LBRACE] = ACTIONS(5149), [anon_sym_DOT] = ACTIONS(5149), [anon_sym_AMP] = ACTIONS(5149), [anon_sym_DASH] = ACTIONS(5147), [anon_sym_DASH_DASH] = ACTIONS(5149), [anon_sym_PLUS] = ACTIONS(5147), [anon_sym_PLUS_PLUS] = ACTIONS(5149), [anon_sym_BANG] = ACTIONS(5149), [anon_sym_LPAREN] = ACTIONS(5149), [anon_sym_LBRACK] = ACTIONS(5149), [anon_sym_SEMI] = ACTIONS(5149), [anon_sym_COLON] = ACTIONS(5149), [anon_sym_DOLLAR] = ACTIONS(5149), [anon_sym_STAR] = ACTIONS(5149), [anon_sym_TILDE] = ACTIONS(5149), [anon_sym_AT] = ACTIONS(5149), [sym_bool] = ACTIONS(5147), [sym_byte] = ACTIONS(5147), [sym_ubyte] = ACTIONS(5147), [sym_char] = ACTIONS(5147), [sym_short] = ACTIONS(5147), [sym_ushort] = ACTIONS(5147), [sym_int] = ACTIONS(5147), [sym_uint] = ACTIONS(5147), [sym_long] = ACTIONS(5147), [sym_ulong] = ACTIONS(5147), [sym_cent] = ACTIONS(5147), [sym_ucent] = ACTIONS(5147), [sym_wchar] = ACTIONS(5147), [sym_dchar] = ACTIONS(5147), [sym_float] = ACTIONS(5147), [sym_double] = ACTIONS(5147), [sym_real] = ACTIONS(5147), [sym_ifloat] = ACTIONS(5147), [sym_idouble] = ACTIONS(5147), [sym_ireal] = ACTIONS(5147), [sym_cfloat] = ACTIONS(5147), [sym_cdouble] = ACTIONS(5147), [sym_creal] = ACTIONS(5147), [sym_size_t] = ACTIONS(5147), [sym_ptrdiff_t] = ACTIONS(5147), [sym_string] = ACTIONS(5147), [sym_cstring] = ACTIONS(5147), [sym_dstring] = ACTIONS(5147), [sym_wstring] = ACTIONS(5147), [sym_noreturn] = ACTIONS(5147), [sym_true] = ACTIONS(5147), [sym_false] = ACTIONS(5147), [sym_null] = ACTIONS(5147), [sym_super] = ACTIONS(5147), [sym_this] = ACTIONS(5147), [sym_abstract] = ACTIONS(5147), [sym_alias] = ACTIONS(5147), [sym_align] = ACTIONS(5147), [sym_asm] = ACTIONS(5147), [sym_assert] = ACTIONS(5147), [sym_auto] = ACTIONS(5147), [sym_break] = ACTIONS(5147), [sym_case] = ACTIONS(5147), [sym_cast] = ACTIONS(5147), [sym_class] = ACTIONS(5147), [sym_const] = ACTIONS(5147), [sym_continue] = ACTIONS(5147), [sym_debug] = ACTIONS(5147), [sym_default] = ACTIONS(5147), [sym_delegate] = ACTIONS(5147), [sym_delete] = ACTIONS(5147), [sym_deprecated] = ACTIONS(5147), [sym_do] = ACTIONS(5147), [sym_enum] = ACTIONS(5147), [sym_export] = ACTIONS(5147), [sym_extern] = ACTIONS(5147), [sym_final] = ACTIONS(5147), [sym_for] = ACTIONS(5147), [sym_foreach] = ACTIONS(5147), [sym_foreach_reverse] = ACTIONS(5147), [sym_function] = ACTIONS(5147), [sym_goto] = ACTIONS(5147), [sym_if] = ACTIONS(5147), [sym_immutable] = ACTIONS(5147), [sym_import] = ACTIONS(5147), [sym_in] = ACTIONS(5147), [sym_inout] = ACTIONS(5147), [sym_interface] = ACTIONS(5147), [sym_invariant] = ACTIONS(5147), [sym_is] = ACTIONS(5147), [sym_mixin] = ACTIONS(5147), [sym_new] = ACTIONS(5147), [sym_nothrow] = ACTIONS(5147), [sym_out] = ACTIONS(5147), [sym_override] = ACTIONS(5147), [sym_package] = ACTIONS(5147), [sym_pragma] = ACTIONS(5147), [sym_private] = ACTIONS(5147), [sym_protected] = ACTIONS(5147), [sym_public] = ACTIONS(5147), [sym_pure] = ACTIONS(5147), [sym_ref] = ACTIONS(5147), [sym_return] = ACTIONS(5147), [sym_scope] = ACTIONS(5147), [sym_shared] = ACTIONS(5147), [sym_static] = ACTIONS(5147), [sym_struct] = ACTIONS(5147), [sym_switch] = ACTIONS(5147), [sym_synchronized] = ACTIONS(5147), [sym_template] = ACTIONS(5147), [sym_throw] = ACTIONS(5147), [sym_try] = ACTIONS(5147), [sym_typeid] = ACTIONS(5147), [sym_typeof] = ACTIONS(5147), [sym_union] = ACTIONS(5147), [sym_unittest] = ACTIONS(5147), [sym_version] = ACTIONS(5147), [sym_while] = ACTIONS(5147), [sym_with] = ACTIONS(5147), [sym_gshared] = ACTIONS(5147), [sym_traits] = ACTIONS(5147), [sym_vector] = ACTIONS(5147), [sym_void] = ACTIONS(5147), [anon_sym_BQUOTE] = ACTIONS(5149), [anon_sym_r_DQUOTE] = ACTIONS(5149), [anon_sym_x_DQUOTE] = ACTIONS(5149), [anon_sym_DQUOTE] = ACTIONS(5149), [anon_sym_i_BQUOTE] = ACTIONS(5149), [anon_sym_i_DQUOTE] = ACTIONS(5149), [anon_sym_iq_LBRACE] = ACTIONS(5149), [aux_sym_char_literal_token1] = ACTIONS(5149), [anon_sym_SQUOTE] = ACTIONS(5147), [anon_sym___DATE__] = ACTIONS(5147), [anon_sym___FILE__] = ACTIONS(5147), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5147), [anon_sym___FUNCTION__] = ACTIONS(5147), [anon_sym___LINE__] = ACTIONS(5147), [anon_sym___MODULE__] = ACTIONS(5147), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5147), [anon_sym___TIME__] = ACTIONS(5147), [anon_sym___TIMESTAMP__] = ACTIONS(5147), [anon_sym___VENDOR__] = ACTIONS(5147), [anon_sym___VERSION__] = ACTIONS(5147), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5149), [sym_float_literal] = ACTIONS(5149), [sym__string] = ACTIONS(5149), }, [1772] = { [sym_identifier] = ACTIONS(5151), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5153), [anon_sym_LBRACE] = ACTIONS(5153), [anon_sym_DOT] = ACTIONS(5153), [anon_sym_AMP] = ACTIONS(5153), [anon_sym_DASH] = ACTIONS(5151), [anon_sym_DASH_DASH] = ACTIONS(5153), [anon_sym_PLUS] = ACTIONS(5151), [anon_sym_PLUS_PLUS] = ACTIONS(5153), [anon_sym_BANG] = ACTIONS(5153), [anon_sym_LPAREN] = ACTIONS(5153), [anon_sym_LBRACK] = ACTIONS(5153), [anon_sym_SEMI] = ACTIONS(5153), [anon_sym_COLON] = ACTIONS(5153), [anon_sym_DOLLAR] = ACTIONS(5153), [anon_sym_STAR] = ACTIONS(5153), [anon_sym_TILDE] = ACTIONS(5153), [anon_sym_AT] = ACTIONS(5153), [sym_bool] = ACTIONS(5151), [sym_byte] = ACTIONS(5151), [sym_ubyte] = ACTIONS(5151), [sym_char] = ACTIONS(5151), [sym_short] = ACTIONS(5151), [sym_ushort] = ACTIONS(5151), [sym_int] = ACTIONS(5151), [sym_uint] = ACTIONS(5151), [sym_long] = ACTIONS(5151), [sym_ulong] = ACTIONS(5151), [sym_cent] = ACTIONS(5151), [sym_ucent] = ACTIONS(5151), [sym_wchar] = ACTIONS(5151), [sym_dchar] = ACTIONS(5151), [sym_float] = ACTIONS(5151), [sym_double] = ACTIONS(5151), [sym_real] = ACTIONS(5151), [sym_ifloat] = ACTIONS(5151), [sym_idouble] = ACTIONS(5151), [sym_ireal] = ACTIONS(5151), [sym_cfloat] = ACTIONS(5151), [sym_cdouble] = ACTIONS(5151), [sym_creal] = ACTIONS(5151), [sym_size_t] = ACTIONS(5151), [sym_ptrdiff_t] = ACTIONS(5151), [sym_string] = ACTIONS(5151), [sym_cstring] = ACTIONS(5151), [sym_dstring] = ACTIONS(5151), [sym_wstring] = ACTIONS(5151), [sym_noreturn] = ACTIONS(5151), [sym_true] = ACTIONS(5151), [sym_false] = ACTIONS(5151), [sym_null] = ACTIONS(5151), [sym_super] = ACTIONS(5151), [sym_this] = ACTIONS(5151), [sym_abstract] = ACTIONS(5151), [sym_alias] = ACTIONS(5151), [sym_align] = ACTIONS(5151), [sym_asm] = ACTIONS(5151), [sym_assert] = ACTIONS(5151), [sym_auto] = ACTIONS(5151), [sym_break] = ACTIONS(5151), [sym_case] = ACTIONS(5151), [sym_cast] = ACTIONS(5151), [sym_class] = ACTIONS(5151), [sym_const] = ACTIONS(5151), [sym_continue] = ACTIONS(5151), [sym_debug] = ACTIONS(5151), [sym_default] = ACTIONS(5151), [sym_delegate] = ACTIONS(5151), [sym_delete] = ACTIONS(5151), [sym_deprecated] = ACTIONS(5151), [sym_do] = ACTIONS(5151), [sym_enum] = ACTIONS(5151), [sym_export] = ACTIONS(5151), [sym_extern] = ACTIONS(5151), [sym_final] = ACTIONS(5151), [sym_for] = ACTIONS(5151), [sym_foreach] = ACTIONS(5151), [sym_foreach_reverse] = ACTIONS(5151), [sym_function] = ACTIONS(5151), [sym_goto] = ACTIONS(5151), [sym_if] = ACTIONS(5151), [sym_immutable] = ACTIONS(5151), [sym_import] = ACTIONS(5151), [sym_in] = ACTIONS(5151), [sym_inout] = ACTIONS(5151), [sym_interface] = ACTIONS(5151), [sym_invariant] = ACTIONS(5151), [sym_is] = ACTIONS(5151), [sym_mixin] = ACTIONS(5151), [sym_new] = ACTIONS(5151), [sym_nothrow] = ACTIONS(5151), [sym_out] = ACTIONS(5151), [sym_override] = ACTIONS(5151), [sym_package] = ACTIONS(5151), [sym_pragma] = ACTIONS(5151), [sym_private] = ACTIONS(5151), [sym_protected] = ACTIONS(5151), [sym_public] = ACTIONS(5151), [sym_pure] = ACTIONS(5151), [sym_ref] = ACTIONS(5151), [sym_return] = ACTIONS(5151), [sym_scope] = ACTIONS(5151), [sym_shared] = ACTIONS(5151), [sym_static] = ACTIONS(5151), [sym_struct] = ACTIONS(5151), [sym_switch] = ACTIONS(5151), [sym_synchronized] = ACTIONS(5151), [sym_template] = ACTIONS(5151), [sym_throw] = ACTIONS(5151), [sym_try] = ACTIONS(5151), [sym_typeid] = ACTIONS(5151), [sym_typeof] = ACTIONS(5151), [sym_union] = ACTIONS(5151), [sym_unittest] = ACTIONS(5151), [sym_version] = ACTIONS(5151), [sym_while] = ACTIONS(5151), [sym_with] = ACTIONS(5151), [sym_gshared] = ACTIONS(5151), [sym_traits] = ACTIONS(5151), [sym_vector] = ACTIONS(5151), [sym_void] = ACTIONS(5151), [anon_sym_BQUOTE] = ACTIONS(5153), [anon_sym_r_DQUOTE] = ACTIONS(5153), [anon_sym_x_DQUOTE] = ACTIONS(5153), [anon_sym_DQUOTE] = ACTIONS(5153), [anon_sym_i_BQUOTE] = ACTIONS(5153), [anon_sym_i_DQUOTE] = ACTIONS(5153), [anon_sym_iq_LBRACE] = ACTIONS(5153), [aux_sym_char_literal_token1] = ACTIONS(5153), [anon_sym_SQUOTE] = ACTIONS(5151), [anon_sym___DATE__] = ACTIONS(5151), [anon_sym___FILE__] = ACTIONS(5151), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5151), [anon_sym___FUNCTION__] = ACTIONS(5151), [anon_sym___LINE__] = ACTIONS(5151), [anon_sym___MODULE__] = ACTIONS(5151), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5151), [anon_sym___TIME__] = ACTIONS(5151), [anon_sym___TIMESTAMP__] = ACTIONS(5151), [anon_sym___VENDOR__] = ACTIONS(5151), [anon_sym___VERSION__] = ACTIONS(5151), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5153), [sym_float_literal] = ACTIONS(5153), [sym__string] = ACTIONS(5153), }, [1773] = { [sym_identifier] = ACTIONS(5155), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5157), [anon_sym_LBRACE] = ACTIONS(5157), [anon_sym_DOT] = ACTIONS(5157), [anon_sym_AMP] = ACTIONS(5157), [anon_sym_DASH] = ACTIONS(5155), [anon_sym_DASH_DASH] = ACTIONS(5157), [anon_sym_PLUS] = ACTIONS(5155), [anon_sym_PLUS_PLUS] = ACTIONS(5157), [anon_sym_BANG] = ACTIONS(5157), [anon_sym_LPAREN] = ACTIONS(5157), [anon_sym_LBRACK] = ACTIONS(5157), [anon_sym_SEMI] = ACTIONS(5157), [anon_sym_COLON] = ACTIONS(5157), [anon_sym_DOLLAR] = ACTIONS(5157), [anon_sym_STAR] = ACTIONS(5157), [anon_sym_TILDE] = ACTIONS(5157), [anon_sym_AT] = ACTIONS(5157), [sym_bool] = ACTIONS(5155), [sym_byte] = ACTIONS(5155), [sym_ubyte] = ACTIONS(5155), [sym_char] = ACTIONS(5155), [sym_short] = ACTIONS(5155), [sym_ushort] = ACTIONS(5155), [sym_int] = ACTIONS(5155), [sym_uint] = ACTIONS(5155), [sym_long] = ACTIONS(5155), [sym_ulong] = ACTIONS(5155), [sym_cent] = ACTIONS(5155), [sym_ucent] = ACTIONS(5155), [sym_wchar] = ACTIONS(5155), [sym_dchar] = ACTIONS(5155), [sym_float] = ACTIONS(5155), [sym_double] = ACTIONS(5155), [sym_real] = ACTIONS(5155), [sym_ifloat] = ACTIONS(5155), [sym_idouble] = ACTIONS(5155), [sym_ireal] = ACTIONS(5155), [sym_cfloat] = ACTIONS(5155), [sym_cdouble] = ACTIONS(5155), [sym_creal] = ACTIONS(5155), [sym_size_t] = ACTIONS(5155), [sym_ptrdiff_t] = ACTIONS(5155), [sym_string] = ACTIONS(5155), [sym_cstring] = ACTIONS(5155), [sym_dstring] = ACTIONS(5155), [sym_wstring] = ACTIONS(5155), [sym_noreturn] = ACTIONS(5155), [sym_true] = ACTIONS(5155), [sym_false] = ACTIONS(5155), [sym_null] = ACTIONS(5155), [sym_super] = ACTIONS(5155), [sym_this] = ACTIONS(5155), [sym_abstract] = ACTIONS(5155), [sym_alias] = ACTIONS(5155), [sym_align] = ACTIONS(5155), [sym_asm] = ACTIONS(5155), [sym_assert] = ACTIONS(5155), [sym_auto] = ACTIONS(5155), [sym_break] = ACTIONS(5155), [sym_case] = ACTIONS(5155), [sym_cast] = ACTIONS(5155), [sym_class] = ACTIONS(5155), [sym_const] = ACTIONS(5155), [sym_continue] = ACTIONS(5155), [sym_debug] = ACTIONS(5155), [sym_default] = ACTIONS(5155), [sym_delegate] = ACTIONS(5155), [sym_delete] = ACTIONS(5155), [sym_deprecated] = ACTIONS(5155), [sym_do] = ACTIONS(5155), [sym_enum] = ACTIONS(5155), [sym_export] = ACTIONS(5155), [sym_extern] = ACTIONS(5155), [sym_final] = ACTIONS(5155), [sym_for] = ACTIONS(5155), [sym_foreach] = ACTIONS(5155), [sym_foreach_reverse] = ACTIONS(5155), [sym_function] = ACTIONS(5155), [sym_goto] = ACTIONS(5155), [sym_if] = ACTIONS(5155), [sym_immutable] = ACTIONS(5155), [sym_import] = ACTIONS(5155), [sym_in] = ACTIONS(5155), [sym_inout] = ACTIONS(5155), [sym_interface] = ACTIONS(5155), [sym_invariant] = ACTIONS(5155), [sym_is] = ACTIONS(5155), [sym_mixin] = ACTIONS(5155), [sym_new] = ACTIONS(5155), [sym_nothrow] = ACTIONS(5155), [sym_out] = ACTIONS(5155), [sym_override] = ACTIONS(5155), [sym_package] = ACTIONS(5155), [sym_pragma] = ACTIONS(5155), [sym_private] = ACTIONS(5155), [sym_protected] = ACTIONS(5155), [sym_public] = ACTIONS(5155), [sym_pure] = ACTIONS(5155), [sym_ref] = ACTIONS(5155), [sym_return] = ACTIONS(5155), [sym_scope] = ACTIONS(5155), [sym_shared] = ACTIONS(5155), [sym_static] = ACTIONS(5155), [sym_struct] = ACTIONS(5155), [sym_switch] = ACTIONS(5155), [sym_synchronized] = ACTIONS(5155), [sym_template] = ACTIONS(5155), [sym_throw] = ACTIONS(5155), [sym_try] = ACTIONS(5155), [sym_typeid] = ACTIONS(5155), [sym_typeof] = ACTIONS(5155), [sym_union] = ACTIONS(5155), [sym_unittest] = ACTIONS(5155), [sym_version] = ACTIONS(5155), [sym_while] = ACTIONS(5155), [sym_with] = ACTIONS(5155), [sym_gshared] = ACTIONS(5155), [sym_traits] = ACTIONS(5155), [sym_vector] = ACTIONS(5155), [sym_void] = ACTIONS(5155), [anon_sym_BQUOTE] = ACTIONS(5157), [anon_sym_r_DQUOTE] = ACTIONS(5157), [anon_sym_x_DQUOTE] = ACTIONS(5157), [anon_sym_DQUOTE] = ACTIONS(5157), [anon_sym_i_BQUOTE] = ACTIONS(5157), [anon_sym_i_DQUOTE] = ACTIONS(5157), [anon_sym_iq_LBRACE] = ACTIONS(5157), [aux_sym_char_literal_token1] = ACTIONS(5157), [anon_sym_SQUOTE] = ACTIONS(5155), [anon_sym___DATE__] = ACTIONS(5155), [anon_sym___FILE__] = ACTIONS(5155), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5155), [anon_sym___FUNCTION__] = ACTIONS(5155), [anon_sym___LINE__] = ACTIONS(5155), [anon_sym___MODULE__] = ACTIONS(5155), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5155), [anon_sym___TIME__] = ACTIONS(5155), [anon_sym___TIMESTAMP__] = ACTIONS(5155), [anon_sym___VENDOR__] = ACTIONS(5155), [anon_sym___VERSION__] = ACTIONS(5155), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5157), [sym_float_literal] = ACTIONS(5157), [sym__string] = ACTIONS(5157), }, [1774] = { [sym_identifier] = ACTIONS(5159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5161), [anon_sym_LBRACE] = ACTIONS(5161), [anon_sym_DOT] = ACTIONS(5161), [anon_sym_AMP] = ACTIONS(5161), [anon_sym_DASH] = ACTIONS(5159), [anon_sym_DASH_DASH] = ACTIONS(5161), [anon_sym_PLUS] = ACTIONS(5159), [anon_sym_PLUS_PLUS] = ACTIONS(5161), [anon_sym_BANG] = ACTIONS(5161), [anon_sym_LPAREN] = ACTIONS(5161), [anon_sym_LBRACK] = ACTIONS(5161), [anon_sym_SEMI] = ACTIONS(5161), [anon_sym_COLON] = ACTIONS(5161), [anon_sym_DOLLAR] = ACTIONS(5161), [anon_sym_STAR] = ACTIONS(5161), [anon_sym_TILDE] = ACTIONS(5161), [anon_sym_AT] = ACTIONS(5161), [sym_bool] = ACTIONS(5159), [sym_byte] = ACTIONS(5159), [sym_ubyte] = ACTIONS(5159), [sym_char] = ACTIONS(5159), [sym_short] = ACTIONS(5159), [sym_ushort] = ACTIONS(5159), [sym_int] = ACTIONS(5159), [sym_uint] = ACTIONS(5159), [sym_long] = ACTIONS(5159), [sym_ulong] = ACTIONS(5159), [sym_cent] = ACTIONS(5159), [sym_ucent] = ACTIONS(5159), [sym_wchar] = ACTIONS(5159), [sym_dchar] = ACTIONS(5159), [sym_float] = ACTIONS(5159), [sym_double] = ACTIONS(5159), [sym_real] = ACTIONS(5159), [sym_ifloat] = ACTIONS(5159), [sym_idouble] = ACTIONS(5159), [sym_ireal] = ACTIONS(5159), [sym_cfloat] = ACTIONS(5159), [sym_cdouble] = ACTIONS(5159), [sym_creal] = ACTIONS(5159), [sym_size_t] = ACTIONS(5159), [sym_ptrdiff_t] = ACTIONS(5159), [sym_string] = ACTIONS(5159), [sym_cstring] = ACTIONS(5159), [sym_dstring] = ACTIONS(5159), [sym_wstring] = ACTIONS(5159), [sym_noreturn] = ACTIONS(5159), [sym_true] = ACTIONS(5159), [sym_false] = ACTIONS(5159), [sym_null] = ACTIONS(5159), [sym_super] = ACTIONS(5159), [sym_this] = ACTIONS(5159), [sym_abstract] = ACTIONS(5159), [sym_alias] = ACTIONS(5159), [sym_align] = ACTIONS(5159), [sym_asm] = ACTIONS(5159), [sym_assert] = ACTIONS(5159), [sym_auto] = ACTIONS(5159), [sym_break] = ACTIONS(5159), [sym_case] = ACTIONS(5159), [sym_cast] = ACTIONS(5159), [sym_class] = ACTIONS(5159), [sym_const] = ACTIONS(5159), [sym_continue] = ACTIONS(5159), [sym_debug] = ACTIONS(5159), [sym_default] = ACTIONS(5159), [sym_delegate] = ACTIONS(5159), [sym_delete] = ACTIONS(5159), [sym_deprecated] = ACTIONS(5159), [sym_do] = ACTIONS(5159), [sym_enum] = ACTIONS(5159), [sym_export] = ACTIONS(5159), [sym_extern] = ACTIONS(5159), [sym_final] = ACTIONS(5159), [sym_for] = ACTIONS(5159), [sym_foreach] = ACTIONS(5159), [sym_foreach_reverse] = ACTIONS(5159), [sym_function] = ACTIONS(5159), [sym_goto] = ACTIONS(5159), [sym_if] = ACTIONS(5159), [sym_immutable] = ACTIONS(5159), [sym_import] = ACTIONS(5159), [sym_in] = ACTIONS(5159), [sym_inout] = ACTIONS(5159), [sym_interface] = ACTIONS(5159), [sym_invariant] = ACTIONS(5159), [sym_is] = ACTIONS(5159), [sym_mixin] = ACTIONS(5159), [sym_new] = ACTIONS(5159), [sym_nothrow] = ACTIONS(5159), [sym_out] = ACTIONS(5159), [sym_override] = ACTIONS(5159), [sym_package] = ACTIONS(5159), [sym_pragma] = ACTIONS(5159), [sym_private] = ACTIONS(5159), [sym_protected] = ACTIONS(5159), [sym_public] = ACTIONS(5159), [sym_pure] = ACTIONS(5159), [sym_ref] = ACTIONS(5159), [sym_return] = ACTIONS(5159), [sym_scope] = ACTIONS(5159), [sym_shared] = ACTIONS(5159), [sym_static] = ACTIONS(5159), [sym_struct] = ACTIONS(5159), [sym_switch] = ACTIONS(5159), [sym_synchronized] = ACTIONS(5159), [sym_template] = ACTIONS(5159), [sym_throw] = ACTIONS(5159), [sym_try] = ACTIONS(5159), [sym_typeid] = ACTIONS(5159), [sym_typeof] = ACTIONS(5159), [sym_union] = ACTIONS(5159), [sym_unittest] = ACTIONS(5159), [sym_version] = ACTIONS(5159), [sym_while] = ACTIONS(5159), [sym_with] = ACTIONS(5159), [sym_gshared] = ACTIONS(5159), [sym_traits] = ACTIONS(5159), [sym_vector] = ACTIONS(5159), [sym_void] = ACTIONS(5159), [anon_sym_BQUOTE] = ACTIONS(5161), [anon_sym_r_DQUOTE] = ACTIONS(5161), [anon_sym_x_DQUOTE] = ACTIONS(5161), [anon_sym_DQUOTE] = ACTIONS(5161), [anon_sym_i_BQUOTE] = ACTIONS(5161), [anon_sym_i_DQUOTE] = ACTIONS(5161), [anon_sym_iq_LBRACE] = ACTIONS(5161), [aux_sym_char_literal_token1] = ACTIONS(5161), [anon_sym_SQUOTE] = ACTIONS(5159), [anon_sym___DATE__] = ACTIONS(5159), [anon_sym___FILE__] = ACTIONS(5159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5159), [anon_sym___FUNCTION__] = ACTIONS(5159), [anon_sym___LINE__] = ACTIONS(5159), [anon_sym___MODULE__] = ACTIONS(5159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5159), [anon_sym___TIME__] = ACTIONS(5159), [anon_sym___TIMESTAMP__] = ACTIONS(5159), [anon_sym___VENDOR__] = ACTIONS(5159), [anon_sym___VERSION__] = ACTIONS(5159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5161), [sym_float_literal] = ACTIONS(5161), [sym__string] = ACTIONS(5161), }, [1775] = { [sym_identifier] = ACTIONS(5163), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5165), [anon_sym_LBRACE] = ACTIONS(5165), [anon_sym_DOT] = ACTIONS(5165), [anon_sym_AMP] = ACTIONS(5165), [anon_sym_DASH] = ACTIONS(5163), [anon_sym_DASH_DASH] = ACTIONS(5165), [anon_sym_PLUS] = ACTIONS(5163), [anon_sym_PLUS_PLUS] = ACTIONS(5165), [anon_sym_BANG] = ACTIONS(5165), [anon_sym_LPAREN] = ACTIONS(5165), [anon_sym_LBRACK] = ACTIONS(5165), [anon_sym_SEMI] = ACTIONS(5165), [anon_sym_DOLLAR] = ACTIONS(5165), [anon_sym_STAR] = ACTIONS(5165), [anon_sym_TILDE] = ACTIONS(5165), [anon_sym_AT] = ACTIONS(5165), [sym_bool] = ACTIONS(5163), [sym_byte] = ACTIONS(5163), [sym_ubyte] = ACTIONS(5163), [sym_char] = ACTIONS(5163), [sym_short] = ACTIONS(5163), [sym_ushort] = ACTIONS(5163), [sym_int] = ACTIONS(5163), [sym_uint] = ACTIONS(5163), [sym_long] = ACTIONS(5163), [sym_ulong] = ACTIONS(5163), [sym_cent] = ACTIONS(5163), [sym_ucent] = ACTIONS(5163), [sym_wchar] = ACTIONS(5163), [sym_dchar] = ACTIONS(5163), [sym_float] = ACTIONS(5163), [sym_double] = ACTIONS(5163), [sym_real] = ACTIONS(5163), [sym_ifloat] = ACTIONS(5163), [sym_idouble] = ACTIONS(5163), [sym_ireal] = ACTIONS(5163), [sym_cfloat] = ACTIONS(5163), [sym_cdouble] = ACTIONS(5163), [sym_creal] = ACTIONS(5163), [sym_size_t] = ACTIONS(5163), [sym_ptrdiff_t] = ACTIONS(5163), [sym_string] = ACTIONS(5163), [sym_cstring] = ACTIONS(5163), [sym_dstring] = ACTIONS(5163), [sym_wstring] = ACTIONS(5163), [sym_noreturn] = ACTIONS(5163), [sym_true] = ACTIONS(5163), [sym_false] = ACTIONS(5163), [sym_null] = ACTIONS(5163), [sym_super] = ACTIONS(5163), [sym_this] = ACTIONS(5163), [sym_abstract] = ACTIONS(5163), [sym_alias] = ACTIONS(5163), [sym_align] = ACTIONS(5163), [sym_asm] = ACTIONS(5163), [sym_assert] = ACTIONS(5163), [sym_auto] = ACTIONS(5163), [sym_break] = ACTIONS(5163), [sym_case] = ACTIONS(5163), [sym_cast] = ACTIONS(5163), [sym_class] = ACTIONS(5163), [sym_const] = ACTIONS(5163), [sym_continue] = ACTIONS(5163), [sym_debug] = ACTIONS(5163), [sym_default] = ACTIONS(5163), [sym_delegate] = ACTIONS(5163), [sym_delete] = ACTIONS(5163), [sym_deprecated] = ACTIONS(5163), [sym_do] = ACTIONS(5163), [sym_enum] = ACTIONS(5163), [sym_export] = ACTIONS(5163), [sym_extern] = ACTIONS(5163), [sym_final] = ACTIONS(5163), [sym_for] = ACTIONS(5163), [sym_foreach] = ACTIONS(5163), [sym_foreach_reverse] = ACTIONS(5163), [sym_function] = ACTIONS(5163), [sym_goto] = ACTIONS(5163), [sym_if] = ACTIONS(5163), [sym_immutable] = ACTIONS(5163), [sym_import] = ACTIONS(5163), [sym_in] = ACTIONS(5163), [sym_inout] = ACTIONS(5163), [sym_interface] = ACTIONS(5163), [sym_invariant] = ACTIONS(5163), [sym_is] = ACTIONS(5163), [sym_mixin] = ACTIONS(5163), [sym_new] = ACTIONS(5163), [sym_nothrow] = ACTIONS(5163), [sym_out] = ACTIONS(5163), [sym_override] = ACTIONS(5163), [sym_package] = ACTIONS(5163), [sym_pragma] = ACTIONS(5163), [sym_private] = ACTIONS(5163), [sym_protected] = ACTIONS(5163), [sym_public] = ACTIONS(5163), [sym_pure] = ACTIONS(5163), [sym_ref] = ACTIONS(5163), [sym_return] = ACTIONS(5163), [sym_scope] = ACTIONS(5163), [sym_shared] = ACTIONS(5163), [sym_static] = ACTIONS(5163), [sym_struct] = ACTIONS(5163), [sym_switch] = ACTIONS(5163), [sym_synchronized] = ACTIONS(5163), [sym_template] = ACTIONS(5163), [sym_throw] = ACTIONS(5163), [sym_try] = ACTIONS(5163), [sym_typeid] = ACTIONS(5163), [sym_typeof] = ACTIONS(5163), [sym_union] = ACTIONS(5163), [sym_unittest] = ACTIONS(5163), [sym_version] = ACTIONS(5163), [sym_while] = ACTIONS(5163), [sym_with] = ACTIONS(5163), [sym_gshared] = ACTIONS(5163), [sym_traits] = ACTIONS(5163), [sym_vector] = ACTIONS(5163), [sym_void] = ACTIONS(5163), [anon_sym_BQUOTE] = ACTIONS(5165), [anon_sym_r_DQUOTE] = ACTIONS(5165), [anon_sym_x_DQUOTE] = ACTIONS(5165), [anon_sym_DQUOTE] = ACTIONS(5165), [anon_sym_i_BQUOTE] = ACTIONS(5165), [anon_sym_i_DQUOTE] = ACTIONS(5165), [anon_sym_iq_LBRACE] = ACTIONS(5165), [aux_sym_char_literal_token1] = ACTIONS(5165), [anon_sym_SQUOTE] = ACTIONS(5163), [anon_sym___DATE__] = ACTIONS(5163), [anon_sym___FILE__] = ACTIONS(5163), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5163), [anon_sym___FUNCTION__] = ACTIONS(5163), [anon_sym___LINE__] = ACTIONS(5163), [anon_sym___MODULE__] = ACTIONS(5163), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5163), [anon_sym___TIME__] = ACTIONS(5163), [anon_sym___TIMESTAMP__] = ACTIONS(5163), [anon_sym___VENDOR__] = ACTIONS(5163), [anon_sym___VERSION__] = ACTIONS(5163), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5165), [sym_float_literal] = ACTIONS(5165), [sym__string] = ACTIONS(5165), }, [1776] = { [sym_identifier] = ACTIONS(5167), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5169), [anon_sym_LBRACE] = ACTIONS(5169), [anon_sym_DOT] = ACTIONS(5169), [anon_sym_AMP] = ACTIONS(5169), [anon_sym_DASH] = ACTIONS(5167), [anon_sym_DASH_DASH] = ACTIONS(5169), [anon_sym_PLUS] = ACTIONS(5167), [anon_sym_PLUS_PLUS] = ACTIONS(5169), [anon_sym_BANG] = ACTIONS(5169), [anon_sym_LPAREN] = ACTIONS(5169), [anon_sym_LBRACK] = ACTIONS(5169), [anon_sym_SEMI] = ACTIONS(5169), [anon_sym_DOLLAR] = ACTIONS(5169), [anon_sym_STAR] = ACTIONS(5169), [anon_sym_TILDE] = ACTIONS(5169), [anon_sym_AT] = ACTIONS(5169), [sym_bool] = ACTIONS(5167), [sym_byte] = ACTIONS(5167), [sym_ubyte] = ACTIONS(5167), [sym_char] = ACTIONS(5167), [sym_short] = ACTIONS(5167), [sym_ushort] = ACTIONS(5167), [sym_int] = ACTIONS(5167), [sym_uint] = ACTIONS(5167), [sym_long] = ACTIONS(5167), [sym_ulong] = ACTIONS(5167), [sym_cent] = ACTIONS(5167), [sym_ucent] = ACTIONS(5167), [sym_wchar] = ACTIONS(5167), [sym_dchar] = ACTIONS(5167), [sym_float] = ACTIONS(5167), [sym_double] = ACTIONS(5167), [sym_real] = ACTIONS(5167), [sym_ifloat] = ACTIONS(5167), [sym_idouble] = ACTIONS(5167), [sym_ireal] = ACTIONS(5167), [sym_cfloat] = ACTIONS(5167), [sym_cdouble] = ACTIONS(5167), [sym_creal] = ACTIONS(5167), [sym_size_t] = ACTIONS(5167), [sym_ptrdiff_t] = ACTIONS(5167), [sym_string] = ACTIONS(5167), [sym_cstring] = ACTIONS(5167), [sym_dstring] = ACTIONS(5167), [sym_wstring] = ACTIONS(5167), [sym_noreturn] = ACTIONS(5167), [sym_true] = ACTIONS(5167), [sym_false] = ACTIONS(5167), [sym_null] = ACTIONS(5167), [sym_super] = ACTIONS(5167), [sym_this] = ACTIONS(5167), [sym_abstract] = ACTIONS(5167), [sym_alias] = ACTIONS(5167), [sym_align] = ACTIONS(5167), [sym_asm] = ACTIONS(5167), [sym_assert] = ACTIONS(5167), [sym_auto] = ACTIONS(5167), [sym_break] = ACTIONS(5167), [sym_case] = ACTIONS(5167), [sym_cast] = ACTIONS(5167), [sym_class] = ACTIONS(5167), [sym_const] = ACTIONS(5167), [sym_continue] = ACTIONS(5167), [sym_debug] = ACTIONS(5167), [sym_default] = ACTIONS(5167), [sym_delegate] = ACTIONS(5167), [sym_delete] = ACTIONS(5167), [sym_deprecated] = ACTIONS(5167), [sym_do] = ACTIONS(5167), [sym_enum] = ACTIONS(5167), [sym_export] = ACTIONS(5167), [sym_extern] = ACTIONS(5167), [sym_final] = ACTIONS(5167), [sym_for] = ACTIONS(5167), [sym_foreach] = ACTIONS(5167), [sym_foreach_reverse] = ACTIONS(5167), [sym_function] = ACTIONS(5167), [sym_goto] = ACTIONS(5167), [sym_if] = ACTIONS(5167), [sym_immutable] = ACTIONS(5167), [sym_import] = ACTIONS(5167), [sym_in] = ACTIONS(5167), [sym_inout] = ACTIONS(5167), [sym_interface] = ACTIONS(5167), [sym_invariant] = ACTIONS(5167), [sym_is] = ACTIONS(5167), [sym_mixin] = ACTIONS(5167), [sym_new] = ACTIONS(5167), [sym_nothrow] = ACTIONS(5167), [sym_out] = ACTIONS(5167), [sym_override] = ACTIONS(5167), [sym_package] = ACTIONS(5167), [sym_pragma] = ACTIONS(5167), [sym_private] = ACTIONS(5167), [sym_protected] = ACTIONS(5167), [sym_public] = ACTIONS(5167), [sym_pure] = ACTIONS(5167), [sym_ref] = ACTIONS(5167), [sym_return] = ACTIONS(5167), [sym_scope] = ACTIONS(5167), [sym_shared] = ACTIONS(5167), [sym_static] = ACTIONS(5167), [sym_struct] = ACTIONS(5167), [sym_switch] = ACTIONS(5167), [sym_synchronized] = ACTIONS(5167), [sym_template] = ACTIONS(5167), [sym_throw] = ACTIONS(5167), [sym_try] = ACTIONS(5167), [sym_typeid] = ACTIONS(5167), [sym_typeof] = ACTIONS(5167), [sym_union] = ACTIONS(5167), [sym_unittest] = ACTIONS(5167), [sym_version] = ACTIONS(5167), [sym_while] = ACTIONS(5167), [sym_with] = ACTIONS(5167), [sym_gshared] = ACTIONS(5167), [sym_traits] = ACTIONS(5167), [sym_vector] = ACTIONS(5167), [sym_void] = ACTIONS(5167), [anon_sym_BQUOTE] = ACTIONS(5169), [anon_sym_r_DQUOTE] = ACTIONS(5169), [anon_sym_x_DQUOTE] = ACTIONS(5169), [anon_sym_DQUOTE] = ACTIONS(5169), [anon_sym_i_BQUOTE] = ACTIONS(5169), [anon_sym_i_DQUOTE] = ACTIONS(5169), [anon_sym_iq_LBRACE] = ACTIONS(5169), [aux_sym_char_literal_token1] = ACTIONS(5169), [anon_sym_SQUOTE] = ACTIONS(5167), [anon_sym___DATE__] = ACTIONS(5167), [anon_sym___FILE__] = ACTIONS(5167), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5167), [anon_sym___FUNCTION__] = ACTIONS(5167), [anon_sym___LINE__] = ACTIONS(5167), [anon_sym___MODULE__] = ACTIONS(5167), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5167), [anon_sym___TIME__] = ACTIONS(5167), [anon_sym___TIMESTAMP__] = ACTIONS(5167), [anon_sym___VENDOR__] = ACTIONS(5167), [anon_sym___VERSION__] = ACTIONS(5167), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5169), [sym_float_literal] = ACTIONS(5169), [sym__string] = ACTIONS(5169), }, [1777] = { [sym_module_def] = STATE(6672), [sym_module_declaration] = STATE(1812), [sym_import_declaration] = STATE(1813), [sym_mixin_declaration] = STATE(1813), [sym__declaration] = STATE(1813), [sym__declaration2] = STATE(1813), [sym_variable_declaration] = STATE(1813), [sym_manifest_constant] = STATE(1813), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1813), [sym_alias_declaration] = STATE(1813), [sym_alias_reassign] = STATE(1813), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1813), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2518), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2920), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1813), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1813), [sym_union_declaration] = STATE(1813), [sym_postblit] = STATE(1813), [sym_invariant_declaration] = STATE(1813), [sym_class_declaration] = STATE(1813), [sym_constructor] = STATE(1813), [sym_destructor] = STATE(1813), [sym_alias_this] = STATE(1813), [sym_interface_declaration] = STATE(1813), [sym_enum_declaration] = STATE(1813), [sym_anonymous_enum_declaration] = STATE(1813), [sym_function_declaration] = STATE(1813), [sym_template_declaration] = STATE(1813), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1813), [sym_template_mixin] = STATE(1813), [sym_conditional_declaration] = STATE(1813), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1813), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1813), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1813), [sym_static_assert] = STATE(1813), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1813), [aux_sym_source_file_repeat1] = STATE(1813), [aux_sym_module_declaration_repeat1] = STATE(5343), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(5171), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(5173), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5175), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_module] = ACTIONS(53), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1778] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5179), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2812), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2812), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1779] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5179), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2806), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2806), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1780] = { [sym_import_declaration] = STATE(1788), [sym_mixin_declaration] = STATE(1788), [sym__declaration] = STATE(1788), [sym__declaration2] = STATE(1788), [sym_variable_declaration] = STATE(1788), [sym_manifest_constant] = STATE(1788), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1788), [sym_alias_declaration] = STATE(1788), [sym_alias_reassign] = STATE(1788), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1788), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1788), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1788), [sym_union_declaration] = STATE(1788), [sym_postblit] = STATE(1788), [sym_invariant_declaration] = STATE(1788), [sym_class_declaration] = STATE(1788), [sym_constructor] = STATE(1788), [sym_destructor] = STATE(1788), [sym_alias_this] = STATE(1788), [sym_interface_declaration] = STATE(1788), [sym_enum_declaration] = STATE(1788), [sym_anonymous_enum_declaration] = STATE(1788), [sym_function_declaration] = STATE(1788), [sym_template_declaration] = STATE(1788), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1788), [sym_template_mixin] = STATE(1788), [sym_conditional_declaration] = STATE(1788), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1788), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1788), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1788), [sym_static_assert] = STATE(1788), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1788), [aux_sym_source_file_repeat1] = STATE(1788), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5203), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2665), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1781] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5205), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2674), [anon_sym_SEMI] = ACTIONS(5208), [anon_sym_TILDE] = ACTIONS(5211), [anon_sym_AT] = ACTIONS(2685), [sym_bool] = ACTIONS(2688), [sym_byte] = ACTIONS(2688), [sym_ubyte] = ACTIONS(2688), [sym_char] = ACTIONS(2688), [sym_short] = ACTIONS(2688), [sym_ushort] = ACTIONS(2688), [sym_int] = ACTIONS(2688), [sym_uint] = ACTIONS(2688), [sym_long] = ACTIONS(2688), [sym_ulong] = ACTIONS(2688), [sym_cent] = ACTIONS(2688), [sym_ucent] = ACTIONS(2688), [sym_wchar] = ACTIONS(2688), [sym_dchar] = ACTIONS(2688), [sym_float] = ACTIONS(2688), [sym_double] = ACTIONS(2688), [sym_real] = ACTIONS(2688), [sym_ifloat] = ACTIONS(2688), [sym_idouble] = ACTIONS(2688), [sym_ireal] = ACTIONS(2688), [sym_cfloat] = ACTIONS(2688), [sym_cdouble] = ACTIONS(2688), [sym_creal] = ACTIONS(2688), [sym_size_t] = ACTIONS(2688), [sym_ptrdiff_t] = ACTIONS(2688), [sym_string] = ACTIONS(2688), [sym_cstring] = ACTIONS(2688), [sym_dstring] = ACTIONS(2688), [sym_wstring] = ACTIONS(2688), [sym_noreturn] = ACTIONS(2688), [sym_this] = ACTIONS(5214), [sym_abstract] = ACTIONS(2694), [sym_alias] = ACTIONS(5217), [sym_align] = ACTIONS(2700), [sym_auto] = ACTIONS(2694), [sym_catch] = ACTIONS(2677), [sym_class] = ACTIONS(5220), [sym_const] = ACTIONS(2706), [sym_debug] = ACTIONS(5223), [sym_deprecated] = ACTIONS(2712), [sym_else] = ACTIONS(2677), [sym_enum] = ACTIONS(5226), [sym_export] = ACTIONS(5229), [sym_extern] = ACTIONS(2721), [sym_final] = ACTIONS(2694), [sym_finally] = ACTIONS(2677), [sym_immutable] = ACTIONS(2706), [sym_import] = ACTIONS(5232), [sym_inout] = ACTIONS(2706), [sym_interface] = ACTIONS(5235), [sym_invariant] = ACTIONS(5238), [sym_mixin] = ACTIONS(5241), [sym_nothrow] = ACTIONS(2694), [sym_override] = ACTIONS(2694), [sym_package] = ACTIONS(2736), [sym_pragma] = ACTIONS(2739), [sym_private] = ACTIONS(5229), [sym_protected] = ACTIONS(5229), [sym_public] = ACTIONS(5229), [sym_pure] = ACTIONS(2694), [sym_ref] = ACTIONS(2694), [sym_return] = ACTIONS(5229), [sym_scope] = ACTIONS(2694), [sym_shared] = ACTIONS(5244), [sym_static] = ACTIONS(5247), [sym_struct] = ACTIONS(5250), [sym_synchronized] = ACTIONS(2694), [sym_template] = ACTIONS(5253), [sym_typeof] = ACTIONS(2754), [sym_union] = ACTIONS(5256), [sym_unittest] = ACTIONS(5259), [sym_version] = ACTIONS(5262), [sym_while] = ACTIONS(2677), [sym_gshared] = ACTIONS(2694), [sym_traits] = ACTIONS(2766), [sym_vector] = ACTIONS(2769), [sym_void] = ACTIONS(2688), [sym_directive] = ACTIONS(3), }, [1782] = { [sym_import_declaration] = STATE(1785), [sym_mixin_declaration] = STATE(1785), [sym__declaration] = STATE(1785), [sym__declaration2] = STATE(1785), [sym_variable_declaration] = STATE(1785), [sym_manifest_constant] = STATE(1785), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1785), [sym_alias_declaration] = STATE(1785), [sym_alias_reassign] = STATE(1785), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1785), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1785), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1785), [sym_union_declaration] = STATE(1785), [sym_postblit] = STATE(1785), [sym_invariant_declaration] = STATE(1785), [sym_class_declaration] = STATE(1785), [sym_constructor] = STATE(1785), [sym_destructor] = STATE(1785), [sym_alias_this] = STATE(1785), [sym_interface_declaration] = STATE(1785), [sym_enum_declaration] = STATE(1785), [sym_anonymous_enum_declaration] = STATE(1785), [sym_function_declaration] = STATE(1785), [sym_template_declaration] = STATE(1785), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1785), [sym_template_mixin] = STATE(1785), [sym_conditional_declaration] = STATE(1785), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1785), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1785), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1785), [sym_static_assert] = STATE(1785), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1785), [aux_sym_source_file_repeat1] = STATE(1785), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5265), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2798), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1783] = { [sym_import_declaration] = STATE(1779), [sym_mixin_declaration] = STATE(1779), [sym__declaration] = STATE(1779), [sym__declaration2] = STATE(1779), [sym_variable_declaration] = STATE(1779), [sym_manifest_constant] = STATE(1779), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1779), [sym_alias_declaration] = STATE(1779), [sym_alias_reassign] = STATE(1779), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1779), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1779), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1779), [sym_union_declaration] = STATE(1779), [sym_postblit] = STATE(1779), [sym_invariant_declaration] = STATE(1779), [sym_class_declaration] = STATE(1779), [sym_constructor] = STATE(1779), [sym_destructor] = STATE(1779), [sym_alias_this] = STATE(1779), [sym_interface_declaration] = STATE(1779), [sym_enum_declaration] = STATE(1779), [sym_anonymous_enum_declaration] = STATE(1779), [sym_function_declaration] = STATE(1779), [sym_template_declaration] = STATE(1779), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1779), [sym_template_mixin] = STATE(1779), [sym_conditional_declaration] = STATE(1779), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1779), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1779), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1779), [sym_static_assert] = STATE(1779), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1779), [aux_sym_source_file_repeat1] = STATE(1779), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5267), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2645), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2645), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1784] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5179), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2665), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1785] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5179), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2645), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2645), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1786] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5179), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2784), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2784), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2784), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2784), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1787] = { [sym_import_declaration] = STATE(1778), [sym_mixin_declaration] = STATE(1778), [sym__declaration] = STATE(1778), [sym__declaration2] = STATE(1778), [sym_variable_declaration] = STATE(1778), [sym_manifest_constant] = STATE(1778), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1778), [sym_alias_declaration] = STATE(1778), [sym_alias_reassign] = STATE(1778), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1778), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1778), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1778), [sym_union_declaration] = STATE(1778), [sym_postblit] = STATE(1778), [sym_invariant_declaration] = STATE(1778), [sym_class_declaration] = STATE(1778), [sym_constructor] = STATE(1778), [sym_destructor] = STATE(1778), [sym_alias_this] = STATE(1778), [sym_interface_declaration] = STATE(1778), [sym_enum_declaration] = STATE(1778), [sym_anonymous_enum_declaration] = STATE(1778), [sym_function_declaration] = STATE(1778), [sym_template_declaration] = STATE(1778), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1778), [sym_template_mixin] = STATE(1778), [sym_conditional_declaration] = STATE(1778), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1778), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1778), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1778), [sym_static_assert] = STATE(1778), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1778), [aux_sym_source_file_repeat1] = STATE(1778), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5269), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2806), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2806), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1788] = { [sym_import_declaration] = STATE(1781), [sym_mixin_declaration] = STATE(1781), [sym__declaration] = STATE(1781), [sym__declaration2] = STATE(1781), [sym_variable_declaration] = STATE(1781), [sym_manifest_constant] = STATE(1781), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1781), [sym_alias_declaration] = STATE(1781), [sym_alias_reassign] = STATE(1781), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1781), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1781), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1781), [sym_union_declaration] = STATE(1781), [sym_postblit] = STATE(1781), [sym_invariant_declaration] = STATE(1781), [sym_class_declaration] = STATE(1781), [sym_constructor] = STATE(1781), [sym_destructor] = STATE(1781), [sym_alias_this] = STATE(1781), [sym_interface_declaration] = STATE(1781), [sym_enum_declaration] = STATE(1781), [sym_anonymous_enum_declaration] = STATE(1781), [sym_function_declaration] = STATE(1781), [sym_template_declaration] = STATE(1781), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1781), [sym_template_mixin] = STATE(1781), [sym_conditional_declaration] = STATE(1781), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1781), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1781), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1781), [sym_static_assert] = STATE(1781), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1781), [aux_sym_source_file_repeat1] = STATE(1781), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5179), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_finally] = ACTIONS(2798), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1789] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1790] = { [sym_import_declaration] = STATE(1809), [sym_mixin_declaration] = STATE(1809), [sym__declaration] = STATE(1809), [sym__declaration2] = STATE(1809), [sym_variable_declaration] = STATE(1809), [sym_manifest_constant] = STATE(1809), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1809), [sym_alias_declaration] = STATE(1809), [sym_alias_reassign] = STATE(1809), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1809), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1809), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1809), [sym_union_declaration] = STATE(1809), [sym_postblit] = STATE(1809), [sym_invariant_declaration] = STATE(1809), [sym_class_declaration] = STATE(1809), [sym_constructor] = STATE(1809), [sym_destructor] = STATE(1809), [sym_alias_this] = STATE(1809), [sym_interface_declaration] = STATE(1809), [sym_enum_declaration] = STATE(1809), [sym_anonymous_enum_declaration] = STATE(1809), [sym_function_declaration] = STATE(1809), [sym_template_declaration] = STATE(1809), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1809), [sym_template_mixin] = STATE(1809), [sym_conditional_declaration] = STATE(1809), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1809), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1809), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1809), [sym_static_assert] = STATE(1809), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1809), [aux_sym_source_file_repeat1] = STATE(1809), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2796), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5311), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1791] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2782), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2784), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1792] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2663), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1793] = { [sym_import_declaration] = STATE(1807), [sym_mixin_declaration] = STATE(1807), [sym__declaration] = STATE(1807), [sym__declaration2] = STATE(1807), [sym_variable_declaration] = STATE(1807), [sym_manifest_constant] = STATE(1807), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1807), [sym_alias_declaration] = STATE(1807), [sym_alias_reassign] = STATE(1807), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1807), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1807), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1807), [sym_union_declaration] = STATE(1807), [sym_postblit] = STATE(1807), [sym_invariant_declaration] = STATE(1807), [sym_class_declaration] = STATE(1807), [sym_constructor] = STATE(1807), [sym_destructor] = STATE(1807), [sym_alias_this] = STATE(1807), [sym_interface_declaration] = STATE(1807), [sym_enum_declaration] = STATE(1807), [sym_anonymous_enum_declaration] = STATE(1807), [sym_function_declaration] = STATE(1807), [sym_template_declaration] = STATE(1807), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1807), [sym_template_mixin] = STATE(1807), [sym_conditional_declaration] = STATE(1807), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1807), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1807), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1807), [sym_static_assert] = STATE(1807), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1807), [aux_sym_source_file_repeat1] = STATE(1807), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5315), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1794] = { [sym_import_declaration] = STATE(1789), [sym_mixin_declaration] = STATE(1789), [sym__declaration] = STATE(1789), [sym__declaration2] = STATE(1789), [sym_variable_declaration] = STATE(1789), [sym_manifest_constant] = STATE(1789), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1789), [sym_alias_declaration] = STATE(1789), [sym_alias_reassign] = STATE(1789), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1789), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1789), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1789), [sym_union_declaration] = STATE(1789), [sym_postblit] = STATE(1789), [sym_invariant_declaration] = STATE(1789), [sym_class_declaration] = STATE(1789), [sym_constructor] = STATE(1789), [sym_destructor] = STATE(1789), [sym_alias_this] = STATE(1789), [sym_interface_declaration] = STATE(1789), [sym_enum_declaration] = STATE(1789), [sym_anonymous_enum_declaration] = STATE(1789), [sym_function_declaration] = STATE(1789), [sym_template_declaration] = STATE(1789), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1789), [sym_template_mixin] = STATE(1789), [sym_conditional_declaration] = STATE(1789), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1789), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1789), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1789), [sym_static_assert] = STATE(1789), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1789), [aux_sym_source_file_repeat1] = STATE(1789), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5317), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1795] = { [sym_import_declaration] = STATE(1806), [sym_mixin_declaration] = STATE(1806), [sym__declaration] = STATE(1806), [sym__declaration2] = STATE(1806), [sym_variable_declaration] = STATE(1806), [sym_manifest_constant] = STATE(1806), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1806), [sym_alias_declaration] = STATE(1806), [sym_alias_reassign] = STATE(1806), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1806), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1806), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1806), [sym_union_declaration] = STATE(1806), [sym_postblit] = STATE(1806), [sym_invariant_declaration] = STATE(1806), [sym_class_declaration] = STATE(1806), [sym_constructor] = STATE(1806), [sym_destructor] = STATE(1806), [sym_alias_this] = STATE(1806), [sym_interface_declaration] = STATE(1806), [sym_enum_declaration] = STATE(1806), [sym_anonymous_enum_declaration] = STATE(1806), [sym_function_declaration] = STATE(1806), [sym_template_declaration] = STATE(1806), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1806), [sym_template_mixin] = STATE(1806), [sym_conditional_declaration] = STATE(1806), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1806), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1806), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1806), [sym_static_assert] = STATE(1806), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1806), [aux_sym_source_file_repeat1] = STATE(1806), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2663), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5319), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1796] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2812), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1797] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1798] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1799] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5321), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2672), [anon_sym_DOT] = ACTIONS(2674), [anon_sym_SEMI] = ACTIONS(5324), [anon_sym_TILDE] = ACTIONS(5327), [anon_sym_AT] = ACTIONS(2685), [sym_bool] = ACTIONS(2688), [sym_byte] = ACTIONS(2688), [sym_ubyte] = ACTIONS(2688), [sym_char] = ACTIONS(2688), [sym_short] = ACTIONS(2688), [sym_ushort] = ACTIONS(2688), [sym_int] = ACTIONS(2688), [sym_uint] = ACTIONS(2688), [sym_long] = ACTIONS(2688), [sym_ulong] = ACTIONS(2688), [sym_cent] = ACTIONS(2688), [sym_ucent] = ACTIONS(2688), [sym_wchar] = ACTIONS(2688), [sym_dchar] = ACTIONS(2688), [sym_float] = ACTIONS(2688), [sym_double] = ACTIONS(2688), [sym_real] = ACTIONS(2688), [sym_ifloat] = ACTIONS(2688), [sym_idouble] = ACTIONS(2688), [sym_ireal] = ACTIONS(2688), [sym_cfloat] = ACTIONS(2688), [sym_cdouble] = ACTIONS(2688), [sym_creal] = ACTIONS(2688), [sym_size_t] = ACTIONS(2688), [sym_ptrdiff_t] = ACTIONS(2688), [sym_string] = ACTIONS(2688), [sym_cstring] = ACTIONS(2688), [sym_dstring] = ACTIONS(2688), [sym_wstring] = ACTIONS(2688), [sym_noreturn] = ACTIONS(2688), [sym_this] = ACTIONS(5330), [sym_abstract] = ACTIONS(2694), [sym_alias] = ACTIONS(5333), [sym_align] = ACTIONS(2700), [sym_auto] = ACTIONS(2694), [sym_class] = ACTIONS(5336), [sym_const] = ACTIONS(2706), [sym_debug] = ACTIONS(5339), [sym_deprecated] = ACTIONS(2712), [sym_else] = ACTIONS(2677), [sym_enum] = ACTIONS(5342), [sym_export] = ACTIONS(5345), [sym_extern] = ACTIONS(2721), [sym_final] = ACTIONS(2694), [sym_immutable] = ACTIONS(2706), [sym_import] = ACTIONS(5348), [sym_inout] = ACTIONS(2706), [sym_interface] = ACTIONS(5351), [sym_invariant] = ACTIONS(5354), [sym_mixin] = ACTIONS(5357), [sym_nothrow] = ACTIONS(2694), [sym_override] = ACTIONS(2694), [sym_package] = ACTIONS(2736), [sym_pragma] = ACTIONS(2739), [sym_private] = ACTIONS(5345), [sym_protected] = ACTIONS(5345), [sym_public] = ACTIONS(5345), [sym_pure] = ACTIONS(2694), [sym_ref] = ACTIONS(2694), [sym_return] = ACTIONS(5345), [sym_scope] = ACTIONS(2694), [sym_shared] = ACTIONS(5360), [sym_static] = ACTIONS(5363), [sym_struct] = ACTIONS(5366), [sym_synchronized] = ACTIONS(2694), [sym_template] = ACTIONS(5369), [sym_typeof] = ACTIONS(2754), [sym_union] = ACTIONS(5372), [sym_unittest] = ACTIONS(5375), [sym_version] = ACTIONS(5378), [sym_while] = ACTIONS(2677), [sym_gshared] = ACTIONS(2694), [sym_traits] = ACTIONS(2766), [sym_vector] = ACTIONS(2769), [sym_void] = ACTIONS(2688), [sym_directive] = ACTIONS(3), }, [1800] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2672), [sym_identifier] = ACTIONS(5381), [sym_end_file] = ACTIONS(2677), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2674), [anon_sym_SEMI] = ACTIONS(5384), [anon_sym_TILDE] = ACTIONS(5387), [anon_sym_AT] = ACTIONS(2685), [sym_bool] = ACTIONS(2688), [sym_byte] = ACTIONS(2688), [sym_ubyte] = ACTIONS(2688), [sym_char] = ACTIONS(2688), [sym_short] = ACTIONS(2688), [sym_ushort] = ACTIONS(2688), [sym_int] = ACTIONS(2688), [sym_uint] = ACTIONS(2688), [sym_long] = ACTIONS(2688), [sym_ulong] = ACTIONS(2688), [sym_cent] = ACTIONS(2688), [sym_ucent] = ACTIONS(2688), [sym_wchar] = ACTIONS(2688), [sym_dchar] = ACTIONS(2688), [sym_float] = ACTIONS(2688), [sym_double] = ACTIONS(2688), [sym_real] = ACTIONS(2688), [sym_ifloat] = ACTIONS(2688), [sym_idouble] = ACTIONS(2688), [sym_ireal] = ACTIONS(2688), [sym_cfloat] = ACTIONS(2688), [sym_cdouble] = ACTIONS(2688), [sym_creal] = ACTIONS(2688), [sym_size_t] = ACTIONS(2688), [sym_ptrdiff_t] = ACTIONS(2688), [sym_string] = ACTIONS(2688), [sym_cstring] = ACTIONS(2688), [sym_dstring] = ACTIONS(2688), [sym_wstring] = ACTIONS(2688), [sym_noreturn] = ACTIONS(2688), [sym_this] = ACTIONS(5390), [sym_abstract] = ACTIONS(2694), [sym_alias] = ACTIONS(5393), [sym_align] = ACTIONS(2700), [sym_auto] = ACTIONS(2694), [sym_class] = ACTIONS(5396), [sym_const] = ACTIONS(2706), [sym_debug] = ACTIONS(5399), [sym_deprecated] = ACTIONS(2712), [sym_else] = ACTIONS(2677), [sym_enum] = ACTIONS(5402), [sym_export] = ACTIONS(5405), [sym_extern] = ACTIONS(2721), [sym_final] = ACTIONS(2694), [sym_immutable] = ACTIONS(2706), [sym_import] = ACTIONS(5408), [sym_inout] = ACTIONS(2706), [sym_interface] = ACTIONS(5411), [sym_invariant] = ACTIONS(5414), [sym_mixin] = ACTIONS(5417), [sym_nothrow] = ACTIONS(2694), [sym_override] = ACTIONS(2694), [sym_package] = ACTIONS(2736), [sym_pragma] = ACTIONS(2739), [sym_private] = ACTIONS(5405), [sym_protected] = ACTIONS(5405), [sym_public] = ACTIONS(5405), [sym_pure] = ACTIONS(2694), [sym_ref] = ACTIONS(2694), [sym_return] = ACTIONS(5405), [sym_scope] = ACTIONS(2694), [sym_shared] = ACTIONS(5420), [sym_static] = ACTIONS(5423), [sym_struct] = ACTIONS(5426), [sym_synchronized] = ACTIONS(2694), [sym_template] = ACTIONS(5429), [sym_typeof] = ACTIONS(2754), [sym_union] = ACTIONS(5432), [sym_unittest] = ACTIONS(5435), [sym_version] = ACTIONS(5438), [sym_gshared] = ACTIONS(2694), [sym_traits] = ACTIONS(2766), [sym_vector] = ACTIONS(2769), [sym_void] = ACTIONS(2688), [sym_directive] = ACTIONS(3), }, [1801] = { [sym_import_declaration] = STATE(1805), [sym_mixin_declaration] = STATE(1805), [sym__declaration] = STATE(1805), [sym__declaration2] = STATE(1805), [sym_variable_declaration] = STATE(1805), [sym_manifest_constant] = STATE(1805), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1805), [sym_alias_declaration] = STATE(1805), [sym_alias_reassign] = STATE(1805), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1805), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1805), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1805), [sym_union_declaration] = STATE(1805), [sym_postblit] = STATE(1805), [sym_invariant_declaration] = STATE(1805), [sym_class_declaration] = STATE(1805), [sym_constructor] = STATE(1805), [sym_destructor] = STATE(1805), [sym_alias_this] = STATE(1805), [sym_interface_declaration] = STATE(1805), [sym_enum_declaration] = STATE(1805), [sym_anonymous_enum_declaration] = STATE(1805), [sym_function_declaration] = STATE(1805), [sym_template_declaration] = STATE(1805), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1805), [sym_template_mixin] = STATE(1805), [sym_conditional_declaration] = STATE(1805), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1805), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1805), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1805), [sym_static_assert] = STATE(1805), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1805), [aux_sym_source_file_repeat1] = STATE(1805), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2643), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5441), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1802] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2784), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2784), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1803] = { [sym_import_declaration] = STATE(1808), [sym_mixin_declaration] = STATE(1808), [sym__declaration] = STATE(1808), [sym__declaration2] = STATE(1808), [sym_variable_declaration] = STATE(1808), [sym_manifest_constant] = STATE(1808), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1808), [sym_alias_declaration] = STATE(1808), [sym_alias_reassign] = STATE(1808), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1808), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1808), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1808), [sym_union_declaration] = STATE(1808), [sym_postblit] = STATE(1808), [sym_invariant_declaration] = STATE(1808), [sym_class_declaration] = STATE(1808), [sym_constructor] = STATE(1808), [sym_destructor] = STATE(1808), [sym_alias_this] = STATE(1808), [sym_interface_declaration] = STATE(1808), [sym_enum_declaration] = STATE(1808), [sym_anonymous_enum_declaration] = STATE(1808), [sym_function_declaration] = STATE(1808), [sym_template_declaration] = STATE(1808), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1808), [sym_template_mixin] = STATE(1808), [sym_conditional_declaration] = STATE(1808), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1808), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1808), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1808), [sym_static_assert] = STATE(1808), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1808), [aux_sym_source_file_repeat1] = STATE(1808), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2804), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5443), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1804] = { [sym_import_declaration] = STATE(1798), [sym_mixin_declaration] = STATE(1798), [sym__declaration] = STATE(1798), [sym__declaration2] = STATE(1798), [sym_variable_declaration] = STATE(1798), [sym_manifest_constant] = STATE(1798), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1798), [sym_alias_declaration] = STATE(1798), [sym_alias_reassign] = STATE(1798), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1798), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1798), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1798), [sym_union_declaration] = STATE(1798), [sym_postblit] = STATE(1798), [sym_invariant_declaration] = STATE(1798), [sym_class_declaration] = STATE(1798), [sym_constructor] = STATE(1798), [sym_destructor] = STATE(1798), [sym_alias_this] = STATE(1798), [sym_interface_declaration] = STATE(1798), [sym_enum_declaration] = STATE(1798), [sym_anonymous_enum_declaration] = STATE(1798), [sym_function_declaration] = STATE(1798), [sym_template_declaration] = STATE(1798), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1798), [sym_template_mixin] = STATE(1798), [sym_conditional_declaration] = STATE(1798), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1798), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1798), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1798), [sym_static_assert] = STATE(1798), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1798), [aux_sym_source_file_repeat1] = STATE(1798), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5445), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1805] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2804), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1806] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2796), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1807] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1808] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2810), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1809] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(2643), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1810] = { [sym_import_declaration] = STATE(1796), [sym_mixin_declaration] = STATE(1796), [sym__declaration] = STATE(1796), [sym__declaration2] = STATE(1796), [sym_variable_declaration] = STATE(1796), [sym_manifest_constant] = STATE(1796), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1796), [sym_alias_declaration] = STATE(1796), [sym_alias_reassign] = STATE(1796), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1796), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1796), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1796), [sym_union_declaration] = STATE(1796), [sym_postblit] = STATE(1796), [sym_invariant_declaration] = STATE(1796), [sym_class_declaration] = STATE(1796), [sym_constructor] = STATE(1796), [sym_destructor] = STATE(1796), [sym_alias_this] = STATE(1796), [sym_interface_declaration] = STATE(1796), [sym_enum_declaration] = STATE(1796), [sym_anonymous_enum_declaration] = STATE(1796), [sym_function_declaration] = STATE(1796), [sym_template_declaration] = STATE(1796), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1796), [sym_template_mixin] = STATE(1796), [sym_conditional_declaration] = STATE(1796), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1796), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1796), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1796), [sym_static_assert] = STATE(1796), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1796), [aux_sym_source_file_repeat1] = STATE(1796), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5447), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1811] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(5171), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(5173), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1812] = { [sym_import_declaration] = STATE(1814), [sym_mixin_declaration] = STATE(1814), [sym__declaration] = STATE(1814), [sym__declaration2] = STATE(1814), [sym_variable_declaration] = STATE(1814), [sym_manifest_constant] = STATE(1814), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1814), [sym_alias_declaration] = STATE(1814), [sym_alias_reassign] = STATE(1814), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1814), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1814), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1814), [sym_union_declaration] = STATE(1814), [sym_postblit] = STATE(1814), [sym_invariant_declaration] = STATE(1814), [sym_class_declaration] = STATE(1814), [sym_constructor] = STATE(1814), [sym_destructor] = STATE(1814), [sym_alias_this] = STATE(1814), [sym_interface_declaration] = STATE(1814), [sym_enum_declaration] = STATE(1814), [sym_anonymous_enum_declaration] = STATE(1814), [sym_function_declaration] = STATE(1814), [sym_template_declaration] = STATE(1814), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1814), [sym_template_mixin] = STATE(1814), [sym_conditional_declaration] = STATE(1814), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1814), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1814), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1814), [sym_static_assert] = STATE(1814), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1814), [aux_sym_source_file_repeat1] = STATE(1814), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(5449), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(5451), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5453), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1813] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(5455), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(5457), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1814] = { [sym_import_declaration] = STATE(1800), [sym_mixin_declaration] = STATE(1800), [sym__declaration] = STATE(1800), [sym__declaration2] = STATE(1800), [sym_variable_declaration] = STATE(1800), [sym_manifest_constant] = STATE(1800), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1800), [sym_alias_declaration] = STATE(1800), [sym_alias_reassign] = STATE(1800), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1800), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1800), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1800), [sym_union_declaration] = STATE(1800), [sym_postblit] = STATE(1800), [sym_invariant_declaration] = STATE(1800), [sym_class_declaration] = STATE(1800), [sym_constructor] = STATE(1800), [sym_destructor] = STATE(1800), [sym_alias_this] = STATE(1800), [sym_interface_declaration] = STATE(1800), [sym_enum_declaration] = STATE(1800), [sym_anonymous_enum_declaration] = STATE(1800), [sym_function_declaration] = STATE(1800), [sym_template_declaration] = STATE(1800), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1800), [sym_template_mixin] = STATE(1800), [sym_conditional_declaration] = STATE(1800), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1800), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1800), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1800), [sym_static_assert] = STATE(1800), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1800), [aux_sym_source_file_repeat1] = STATE(1800), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [ts_builtin_sym_end] = ACTIONS(5459), [sym_identifier] = ACTIONS(7), [sym_end_file] = ACTIONS(5461), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5313), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1815] = { [sym_import_declaration] = STATE(2014), [sym_mixin_declaration] = STATE(2014), [sym__declaration] = STATE(2014), [sym__declaration2] = STATE(2014), [sym_variable_declaration] = STATE(2014), [sym_manifest_constant] = STATE(2014), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2014), [sym_alias_declaration] = STATE(2014), [sym_alias_reassign] = STATE(2014), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2014), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2014), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2014), [sym_union_declaration] = STATE(2014), [sym_postblit] = STATE(2014), [sym_invariant_declaration] = STATE(2014), [sym_class_declaration] = STATE(2014), [sym_constructor] = STATE(2014), [sym_destructor] = STATE(2014), [sym_alias_this] = STATE(2014), [sym_interface_declaration] = STATE(2014), [sym_enum_declaration] = STATE(2014), [sym_anonymous_enum_declaration] = STATE(2014), [sym_function_declaration] = STATE(2014), [sym_template_declaration] = STATE(2014), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2014), [sym_template_mixin] = STATE(2014), [sym_conditional_declaration] = STATE(2014), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2014), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2014), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2014), [sym_static_assert] = STATE(2014), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2014), [aux_sym_source_file_repeat1] = STATE(2014), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5463), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5465), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1816] = { [sym_import_declaration] = STATE(1829), [sym_mixin_declaration] = STATE(1829), [sym__declaration] = STATE(1829), [sym__declaration2] = STATE(1829), [sym_variable_declaration] = STATE(1829), [sym_manifest_constant] = STATE(1829), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1829), [sym_alias_declaration] = STATE(1829), [sym_alias_reassign] = STATE(1829), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1829), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1829), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1829), [sym_union_declaration] = STATE(1829), [sym_postblit] = STATE(1829), [sym_invariant_declaration] = STATE(1829), [sym_class_declaration] = STATE(1829), [sym_constructor] = STATE(1829), [sym_destructor] = STATE(1829), [sym_alias_this] = STATE(1829), [sym_interface_declaration] = STATE(1829), [sym_enum_declaration] = STATE(1829), [sym_anonymous_enum_declaration] = STATE(1829), [sym_function_declaration] = STATE(1829), [sym_template_declaration] = STATE(1829), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1829), [sym_template_mixin] = STATE(1829), [sym_conditional_declaration] = STATE(1829), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1829), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1829), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1829), [sym_static_assert] = STATE(1829), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1829), [aux_sym_source_file_repeat1] = STATE(1829), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5467), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5469), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1817] = { [sym_import_declaration] = STATE(1888), [sym_mixin_declaration] = STATE(1888), [sym__declaration] = STATE(1888), [sym__declaration2] = STATE(1888), [sym_variable_declaration] = STATE(1888), [sym_manifest_constant] = STATE(1888), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1888), [sym_alias_declaration] = STATE(1888), [sym_alias_reassign] = STATE(1888), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1888), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1888), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1888), [sym_union_declaration] = STATE(1888), [sym_postblit] = STATE(1888), [sym_invariant_declaration] = STATE(1888), [sym_class_declaration] = STATE(1888), [sym_constructor] = STATE(1888), [sym_destructor] = STATE(1888), [sym_alias_this] = STATE(1888), [sym_interface_declaration] = STATE(1888), [sym_enum_declaration] = STATE(1888), [sym_anonymous_enum_declaration] = STATE(1888), [sym_function_declaration] = STATE(1888), [sym_template_declaration] = STATE(1888), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1888), [sym_template_mixin] = STATE(1888), [sym_conditional_declaration] = STATE(1888), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1888), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1888), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1888), [sym_static_assert] = STATE(1888), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1888), [aux_sym_source_file_repeat1] = STATE(1888), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5471), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5473), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1818] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5475), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1819] = { [sym_import_declaration] = STATE(2622), [sym_mixin_declaration] = STATE(2622), [sym__declaration] = STATE(2622), [sym__declaration2] = STATE(2622), [sym_variable_declaration] = STATE(2622), [sym_manifest_constant] = STATE(2622), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2622), [sym_alias_declaration] = STATE(2622), [sym_alias_reassign] = STATE(2622), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2622), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2622), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2622), [sym_union_declaration] = STATE(2622), [sym_postblit] = STATE(2622), [sym_invariant_declaration] = STATE(2622), [sym_class_declaration] = STATE(2622), [sym_constructor] = STATE(2622), [sym_destructor] = STATE(2622), [sym_alias_this] = STATE(2622), [sym_interface_declaration] = STATE(2622), [sym_enum_declaration] = STATE(2622), [sym_anonymous_enum_declaration] = STATE(2622), [sym_function_declaration] = STATE(2622), [sym_template_declaration] = STATE(2622), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2622), [sym_template_mixin] = STATE(2622), [sym_conditional_declaration] = STATE(2622), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2622), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2622), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2622), [sym_static_assert] = STATE(2622), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2622), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5477), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5479), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1820] = { [sym_import_declaration] = STATE(1882), [sym_mixin_declaration] = STATE(1882), [sym__declaration] = STATE(1882), [sym__declaration2] = STATE(1882), [sym_variable_declaration] = STATE(1882), [sym_manifest_constant] = STATE(1882), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1882), [sym_alias_declaration] = STATE(1882), [sym_alias_reassign] = STATE(1882), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1882), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1882), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1882), [sym_union_declaration] = STATE(1882), [sym_postblit] = STATE(1882), [sym_invariant_declaration] = STATE(1882), [sym_class_declaration] = STATE(1882), [sym_constructor] = STATE(1882), [sym_destructor] = STATE(1882), [sym_alias_this] = STATE(1882), [sym_interface_declaration] = STATE(1882), [sym_enum_declaration] = STATE(1882), [sym_anonymous_enum_declaration] = STATE(1882), [sym_function_declaration] = STATE(1882), [sym_template_declaration] = STATE(1882), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1882), [sym_template_mixin] = STATE(1882), [sym_conditional_declaration] = STATE(1882), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1882), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1882), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1882), [sym_static_assert] = STATE(1882), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1882), [aux_sym_source_file_repeat1] = STATE(1882), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5481), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5483), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1821] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5485), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1822] = { [sym_import_declaration] = STATE(1740), [sym_mixin_declaration] = STATE(1740), [sym__declaration] = STATE(1740), [sym__declaration2] = STATE(1740), [sym_variable_declaration] = STATE(1740), [sym_manifest_constant] = STATE(1740), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1740), [sym_alias_declaration] = STATE(1740), [sym_alias_reassign] = STATE(1740), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1740), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1740), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1740), [sym_union_declaration] = STATE(1740), [sym_postblit] = STATE(1740), [sym_invariant_declaration] = STATE(1740), [sym_class_declaration] = STATE(1740), [sym_constructor] = STATE(1740), [sym_destructor] = STATE(1740), [sym_alias_this] = STATE(1740), [sym_interface_declaration] = STATE(1740), [sym_enum_declaration] = STATE(1740), [sym_anonymous_enum_declaration] = STATE(1740), [sym_function_declaration] = STATE(1740), [sym_template_declaration] = STATE(1740), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1740), [sym_template_mixin] = STATE(1740), [sym_conditional_declaration] = STATE(1740), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1740), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1740), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1740), [sym_static_assert] = STATE(1740), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1740), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5487), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5489), [anon_sym_COLON] = ACTIONS(5491), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1823] = { [sym_import_declaration] = STATE(1921), [sym_mixin_declaration] = STATE(1921), [sym__declaration] = STATE(1921), [sym__declaration2] = STATE(1921), [sym_variable_declaration] = STATE(1921), [sym_manifest_constant] = STATE(1921), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1921), [sym_alias_declaration] = STATE(1921), [sym_alias_reassign] = STATE(1921), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1921), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1921), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1921), [sym_union_declaration] = STATE(1921), [sym_postblit] = STATE(1921), [sym_invariant_declaration] = STATE(1921), [sym_class_declaration] = STATE(1921), [sym_constructor] = STATE(1921), [sym_destructor] = STATE(1921), [sym_alias_this] = STATE(1921), [sym_interface_declaration] = STATE(1921), [sym_enum_declaration] = STATE(1921), [sym_anonymous_enum_declaration] = STATE(1921), [sym_function_declaration] = STATE(1921), [sym_template_declaration] = STATE(1921), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1921), [sym_template_mixin] = STATE(1921), [sym_conditional_declaration] = STATE(1921), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1921), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1921), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1921), [sym_static_assert] = STATE(1921), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1921), [aux_sym_source_file_repeat1] = STATE(1921), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5493), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5495), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1824] = { [sym_import_declaration] = STATE(1955), [sym_mixin_declaration] = STATE(1955), [sym__declaration] = STATE(1955), [sym__declaration2] = STATE(1955), [sym_variable_declaration] = STATE(1955), [sym_manifest_constant] = STATE(1955), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1955), [sym_alias_declaration] = STATE(1955), [sym_alias_reassign] = STATE(1955), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1955), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1955), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1955), [sym_union_declaration] = STATE(1955), [sym_postblit] = STATE(1955), [sym_invariant_declaration] = STATE(1955), [sym_class_declaration] = STATE(1955), [sym_constructor] = STATE(1955), [sym_destructor] = STATE(1955), [sym_alias_this] = STATE(1955), [sym_interface_declaration] = STATE(1955), [sym_enum_declaration] = STATE(1955), [sym_anonymous_enum_declaration] = STATE(1955), [sym_function_declaration] = STATE(1955), [sym_template_declaration] = STATE(1955), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1955), [sym_template_mixin] = STATE(1955), [sym_conditional_declaration] = STATE(1955), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1955), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1955), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1955), [sym_static_assert] = STATE(1955), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1955), [aux_sym_source_file_repeat1] = STATE(1955), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5497), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5499), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1825] = { [sym_import_declaration] = STATE(2818), [sym_mixin_declaration] = STATE(2818), [sym__declaration] = STATE(2818), [sym__declaration2] = STATE(2818), [sym_variable_declaration] = STATE(2818), [sym_manifest_constant] = STATE(2818), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2818), [sym_alias_declaration] = STATE(2818), [sym_alias_reassign] = STATE(2818), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2818), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2818), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2818), [sym_union_declaration] = STATE(2818), [sym_postblit] = STATE(2818), [sym_invariant_declaration] = STATE(2818), [sym_class_declaration] = STATE(2818), [sym_constructor] = STATE(2818), [sym_destructor] = STATE(2818), [sym_alias_this] = STATE(2818), [sym_interface_declaration] = STATE(2818), [sym_enum_declaration] = STATE(2818), [sym_anonymous_enum_declaration] = STATE(2818), [sym_function_declaration] = STATE(2818), [sym_template_declaration] = STATE(2818), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2818), [sym_template_mixin] = STATE(2818), [sym_conditional_declaration] = STATE(2818), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2818), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2818), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2818), [sym_static_assert] = STATE(2818), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2818), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5501), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5503), [anon_sym_COLON] = ACTIONS(5505), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1826] = { [sym_import_declaration] = STATE(2059), [sym_mixin_declaration] = STATE(2059), [sym__declaration] = STATE(2059), [sym__declaration2] = STATE(2059), [sym_variable_declaration] = STATE(2059), [sym_manifest_constant] = STATE(2059), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2059), [sym_alias_declaration] = STATE(2059), [sym_alias_reassign] = STATE(2059), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2059), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2059), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2059), [sym_union_declaration] = STATE(2059), [sym_postblit] = STATE(2059), [sym_invariant_declaration] = STATE(2059), [sym_class_declaration] = STATE(2059), [sym_constructor] = STATE(2059), [sym_destructor] = STATE(2059), [sym_alias_this] = STATE(2059), [sym_interface_declaration] = STATE(2059), [sym_enum_declaration] = STATE(2059), [sym_anonymous_enum_declaration] = STATE(2059), [sym_function_declaration] = STATE(2059), [sym_template_declaration] = STATE(2059), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2059), [sym_template_mixin] = STATE(2059), [sym_conditional_declaration] = STATE(2059), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2059), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2059), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2059), [sym_static_assert] = STATE(2059), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2059), [aux_sym_source_file_repeat1] = STATE(2059), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5507), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5509), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1827] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5481), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1828] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5511), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1829] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5513), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1830] = { [sym_import_declaration] = STATE(2244), [sym_mixin_declaration] = STATE(2244), [sym__declaration] = STATE(2244), [sym__declaration2] = STATE(2244), [sym_variable_declaration] = STATE(2244), [sym_manifest_constant] = STATE(2244), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2244), [sym_alias_declaration] = STATE(2244), [sym_alias_reassign] = STATE(2244), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2244), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2244), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2244), [sym_union_declaration] = STATE(2244), [sym_postblit] = STATE(2244), [sym_invariant_declaration] = STATE(2244), [sym_class_declaration] = STATE(2244), [sym_constructor] = STATE(2244), [sym_destructor] = STATE(2244), [sym_alias_this] = STATE(2244), [sym_interface_declaration] = STATE(2244), [sym_enum_declaration] = STATE(2244), [sym_anonymous_enum_declaration] = STATE(2244), [sym_function_declaration] = STATE(2244), [sym_template_declaration] = STATE(2244), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2244), [sym_template_mixin] = STATE(2244), [sym_conditional_declaration] = STATE(2244), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2244), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2244), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2244), [sym_static_assert] = STATE(2244), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2244), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5517), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5519), [anon_sym_COLON] = ACTIONS(5521), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1831] = { [sym_import_declaration] = STATE(2779), [sym_mixin_declaration] = STATE(2779), [sym__declaration] = STATE(2779), [sym__declaration2] = STATE(2779), [sym_variable_declaration] = STATE(2779), [sym_manifest_constant] = STATE(2779), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2779), [sym_alias_declaration] = STATE(2779), [sym_alias_reassign] = STATE(2779), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2779), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2779), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2779), [sym_union_declaration] = STATE(2779), [sym_postblit] = STATE(2779), [sym_invariant_declaration] = STATE(2779), [sym_class_declaration] = STATE(2779), [sym_constructor] = STATE(2779), [sym_destructor] = STATE(2779), [sym_alias_this] = STATE(2779), [sym_interface_declaration] = STATE(2779), [sym_enum_declaration] = STATE(2779), [sym_anonymous_enum_declaration] = STATE(2779), [sym_function_declaration] = STATE(2779), [sym_template_declaration] = STATE(2779), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2779), [sym_template_mixin] = STATE(2779), [sym_conditional_declaration] = STATE(2779), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2779), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2779), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2779), [sym_static_assert] = STATE(2779), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2779), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5537), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5539), [anon_sym_COLON] = ACTIONS(5541), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1832] = { [sym_import_declaration] = STATE(1931), [sym_mixin_declaration] = STATE(1931), [sym__declaration] = STATE(1931), [sym__declaration2] = STATE(1931), [sym_variable_declaration] = STATE(1931), [sym_manifest_constant] = STATE(1931), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1931), [sym_alias_declaration] = STATE(1931), [sym_alias_reassign] = STATE(1931), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1931), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1931), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1931), [sym_union_declaration] = STATE(1931), [sym_postblit] = STATE(1931), [sym_invariant_declaration] = STATE(1931), [sym_class_declaration] = STATE(1931), [sym_constructor] = STATE(1931), [sym_destructor] = STATE(1931), [sym_alias_this] = STATE(1931), [sym_interface_declaration] = STATE(1931), [sym_enum_declaration] = STATE(1931), [sym_anonymous_enum_declaration] = STATE(1931), [sym_function_declaration] = STATE(1931), [sym_template_declaration] = STATE(1931), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1931), [sym_template_mixin] = STATE(1931), [sym_conditional_declaration] = STATE(1931), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1931), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1931), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1931), [sym_static_assert] = STATE(1931), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1931), [aux_sym_source_file_repeat1] = STATE(1931), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5543), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5545), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1833] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5547), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1834] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5549), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1835] = { [sym_import_declaration] = STATE(2377), [sym_mixin_declaration] = STATE(2377), [sym__declaration] = STATE(2377), [sym__declaration2] = STATE(2377), [sym_variable_declaration] = STATE(2377), [sym_manifest_constant] = STATE(2377), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2377), [sym_alias_declaration] = STATE(2377), [sym_alias_reassign] = STATE(2377), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2377), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2377), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2377), [sym_union_declaration] = STATE(2377), [sym_postblit] = STATE(2377), [sym_invariant_declaration] = STATE(2377), [sym_class_declaration] = STATE(2377), [sym_constructor] = STATE(2377), [sym_destructor] = STATE(2377), [sym_alias_this] = STATE(2377), [sym_interface_declaration] = STATE(2377), [sym_enum_declaration] = STATE(2377), [sym_anonymous_enum_declaration] = STATE(2377), [sym_function_declaration] = STATE(2377), [sym_template_declaration] = STATE(2377), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2377), [sym_template_mixin] = STATE(2377), [sym_conditional_declaration] = STATE(2377), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2377), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2377), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2377), [sym_static_assert] = STATE(2377), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2377), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5551), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5553), [anon_sym_COLON] = ACTIONS(830), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1836] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5555), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1837] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5557), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1838] = { [sym_import_declaration] = STATE(1705), [sym_mixin_declaration] = STATE(1705), [sym__declaration] = STATE(1705), [sym__declaration2] = STATE(1705), [sym_variable_declaration] = STATE(1705), [sym_manifest_constant] = STATE(1705), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1705), [sym_alias_declaration] = STATE(1705), [sym_alias_reassign] = STATE(1705), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1705), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1705), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1705), [sym_union_declaration] = STATE(1705), [sym_postblit] = STATE(1705), [sym_invariant_declaration] = STATE(1705), [sym_class_declaration] = STATE(1705), [sym_constructor] = STATE(1705), [sym_destructor] = STATE(1705), [sym_alias_this] = STATE(1705), [sym_interface_declaration] = STATE(1705), [sym_enum_declaration] = STATE(1705), [sym_anonymous_enum_declaration] = STATE(1705), [sym_function_declaration] = STATE(1705), [sym_template_declaration] = STATE(1705), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1705), [sym_template_mixin] = STATE(1705), [sym_conditional_declaration] = STATE(1705), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1705), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1705), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1705), [sym_static_assert] = STATE(1705), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1705), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5559), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5561), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1839] = { [sym_import_declaration] = STATE(2645), [sym_mixin_declaration] = STATE(2645), [sym__declaration] = STATE(2645), [sym__declaration2] = STATE(2645), [sym_variable_declaration] = STATE(2645), [sym_manifest_constant] = STATE(2645), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2645), [sym_alias_declaration] = STATE(2645), [sym_alias_reassign] = STATE(2645), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2645), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2645), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2645), [sym_union_declaration] = STATE(2645), [sym_postblit] = STATE(2645), [sym_invariant_declaration] = STATE(2645), [sym_class_declaration] = STATE(2645), [sym_constructor] = STATE(2645), [sym_destructor] = STATE(2645), [sym_alias_this] = STATE(2645), [sym_interface_declaration] = STATE(2645), [sym_enum_declaration] = STATE(2645), [sym_anonymous_enum_declaration] = STATE(2645), [sym_function_declaration] = STATE(2645), [sym_template_declaration] = STATE(2645), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2645), [sym_template_mixin] = STATE(2645), [sym_conditional_declaration] = STATE(2645), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2645), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2645), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2645), [sym_static_assert] = STATE(2645), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2645), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5563), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5565), [anon_sym_COLON] = ACTIONS(5567), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1840] = { [sym_import_declaration] = STATE(1945), [sym_mixin_declaration] = STATE(1945), [sym__declaration] = STATE(1945), [sym__declaration2] = STATE(1945), [sym_variable_declaration] = STATE(1945), [sym_manifest_constant] = STATE(1945), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1945), [sym_alias_declaration] = STATE(1945), [sym_alias_reassign] = STATE(1945), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1945), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1945), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1945), [sym_union_declaration] = STATE(1945), [sym_postblit] = STATE(1945), [sym_invariant_declaration] = STATE(1945), [sym_class_declaration] = STATE(1945), [sym_constructor] = STATE(1945), [sym_destructor] = STATE(1945), [sym_alias_this] = STATE(1945), [sym_interface_declaration] = STATE(1945), [sym_enum_declaration] = STATE(1945), [sym_anonymous_enum_declaration] = STATE(1945), [sym_function_declaration] = STATE(1945), [sym_template_declaration] = STATE(1945), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1945), [sym_template_mixin] = STATE(1945), [sym_conditional_declaration] = STATE(1945), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1945), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1945), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1945), [sym_static_assert] = STATE(1945), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1945), [aux_sym_source_file_repeat1] = STATE(1945), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5575), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5577), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1841] = { [sym_import_declaration] = STATE(2043), [sym_mixin_declaration] = STATE(2043), [sym__declaration] = STATE(2043), [sym__declaration2] = STATE(2043), [sym_variable_declaration] = STATE(2043), [sym_manifest_constant] = STATE(2043), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2043), [sym_alias_declaration] = STATE(2043), [sym_alias_reassign] = STATE(2043), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2043), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2043), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2043), [sym_union_declaration] = STATE(2043), [sym_postblit] = STATE(2043), [sym_invariant_declaration] = STATE(2043), [sym_class_declaration] = STATE(2043), [sym_constructor] = STATE(2043), [sym_destructor] = STATE(2043), [sym_alias_this] = STATE(2043), [sym_interface_declaration] = STATE(2043), [sym_enum_declaration] = STATE(2043), [sym_anonymous_enum_declaration] = STATE(2043), [sym_function_declaration] = STATE(2043), [sym_template_declaration] = STATE(2043), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2043), [sym_template_mixin] = STATE(2043), [sym_conditional_declaration] = STATE(2043), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2043), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2043), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2043), [sym_static_assert] = STATE(2043), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2043), [aux_sym_source_file_repeat1] = STATE(2043), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5489), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5579), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1842] = { [sym_import_declaration] = STATE(2739), [sym_mixin_declaration] = STATE(2739), [sym__declaration] = STATE(2739), [sym__declaration2] = STATE(2739), [sym_variable_declaration] = STATE(2739), [sym_manifest_constant] = STATE(2739), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2739), [sym_alias_declaration] = STATE(2739), [sym_alias_reassign] = STATE(2739), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2739), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2739), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2739), [sym_union_declaration] = STATE(2739), [sym_postblit] = STATE(2739), [sym_invariant_declaration] = STATE(2739), [sym_class_declaration] = STATE(2739), [sym_constructor] = STATE(2739), [sym_destructor] = STATE(2739), [sym_alias_this] = STATE(2739), [sym_interface_declaration] = STATE(2739), [sym_enum_declaration] = STATE(2739), [sym_anonymous_enum_declaration] = STATE(2739), [sym_function_declaration] = STATE(2739), [sym_template_declaration] = STATE(2739), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2739), [sym_template_mixin] = STATE(2739), [sym_conditional_declaration] = STATE(2739), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2739), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2739), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2739), [sym_static_assert] = STATE(2739), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2739), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5581), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5583), [anon_sym_COLON] = ACTIONS(5585), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1843] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5593), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1844] = { [sym_import_declaration] = STATE(6447), [sym_mixin_declaration] = STATE(6447), [sym__declaration] = STATE(6447), [sym__declaration2] = STATE(6447), [sym_variable_declaration] = STATE(6447), [sym_manifest_constant] = STATE(6447), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(6447), [sym_alias_declaration] = STATE(6447), [sym_alias_reassign] = STATE(6447), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(6447), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(6447), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(6447), [sym_union_declaration] = STATE(6447), [sym_postblit] = STATE(6447), [sym_invariant_declaration] = STATE(6447), [sym_class_declaration] = STATE(6447), [sym_constructor] = STATE(6447), [sym_destructor] = STATE(6447), [sym_alias_this] = STATE(6447), [sym_interface_declaration] = STATE(6447), [sym_enum_declaration] = STATE(6447), [sym_anonymous_enum_declaration] = STATE(6447), [sym_function_declaration] = STATE(6447), [sym_template_declaration] = STATE(6447), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(6447), [sym_template_mixin] = STATE(6447), [sym_conditional_declaration] = STATE(6447), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(6447), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(6447), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(6447), [sym_static_assert] = STATE(6447), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(6447), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5595), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5597), [anon_sym_COLON] = ACTIONS(5599), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1845] = { [sym_import_declaration] = STATE(1993), [sym_mixin_declaration] = STATE(1993), [sym__declaration] = STATE(1993), [sym__declaration2] = STATE(1993), [sym_variable_declaration] = STATE(1993), [sym_manifest_constant] = STATE(1993), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1993), [sym_alias_declaration] = STATE(1993), [sym_alias_reassign] = STATE(1993), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1993), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1993), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1993), [sym_union_declaration] = STATE(1993), [sym_postblit] = STATE(1993), [sym_invariant_declaration] = STATE(1993), [sym_class_declaration] = STATE(1993), [sym_constructor] = STATE(1993), [sym_destructor] = STATE(1993), [sym_alias_this] = STATE(1993), [sym_interface_declaration] = STATE(1993), [sym_enum_declaration] = STATE(1993), [sym_anonymous_enum_declaration] = STATE(1993), [sym_function_declaration] = STATE(1993), [sym_template_declaration] = STATE(1993), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1993), [sym_template_mixin] = STATE(1993), [sym_conditional_declaration] = STATE(1993), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1993), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1993), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1993), [sym_static_assert] = STATE(1993), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1993), [aux_sym_source_file_repeat1] = STATE(1993), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5601), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5603), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1846] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5605), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1847] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5607), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1848] = { [sym_import_declaration] = STATE(1974), [sym_mixin_declaration] = STATE(1974), [sym__declaration] = STATE(1974), [sym__declaration2] = STATE(1974), [sym_variable_declaration] = STATE(1974), [sym_manifest_constant] = STATE(1974), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1974), [sym_alias_declaration] = STATE(1974), [sym_alias_reassign] = STATE(1974), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1974), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1974), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1974), [sym_union_declaration] = STATE(1974), [sym_postblit] = STATE(1974), [sym_invariant_declaration] = STATE(1974), [sym_class_declaration] = STATE(1974), [sym_constructor] = STATE(1974), [sym_destructor] = STATE(1974), [sym_alias_this] = STATE(1974), [sym_interface_declaration] = STATE(1974), [sym_enum_declaration] = STATE(1974), [sym_anonymous_enum_declaration] = STATE(1974), [sym_function_declaration] = STATE(1974), [sym_template_declaration] = STATE(1974), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1974), [sym_template_mixin] = STATE(1974), [sym_conditional_declaration] = STATE(1974), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1974), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1974), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1974), [sym_static_assert] = STATE(1974), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1974), [aux_sym_source_file_repeat1] = STATE(1974), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5609), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5611), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1849] = { [sym_import_declaration] = STATE(1827), [sym_mixin_declaration] = STATE(1827), [sym__declaration] = STATE(1827), [sym__declaration2] = STATE(1827), [sym_variable_declaration] = STATE(1827), [sym_manifest_constant] = STATE(1827), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1827), [sym_alias_declaration] = STATE(1827), [sym_alias_reassign] = STATE(1827), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1827), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1827), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1827), [sym_union_declaration] = STATE(1827), [sym_postblit] = STATE(1827), [sym_invariant_declaration] = STATE(1827), [sym_class_declaration] = STATE(1827), [sym_constructor] = STATE(1827), [sym_destructor] = STATE(1827), [sym_alias_this] = STATE(1827), [sym_interface_declaration] = STATE(1827), [sym_enum_declaration] = STATE(1827), [sym_anonymous_enum_declaration] = STATE(1827), [sym_function_declaration] = STATE(1827), [sym_template_declaration] = STATE(1827), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1827), [sym_template_mixin] = STATE(1827), [sym_conditional_declaration] = STATE(1827), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1827), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1827), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1827), [sym_static_assert] = STATE(1827), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1827), [aux_sym_source_file_repeat1] = STATE(1827), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5615), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1850] = { [sym_import_declaration] = STATE(1953), [sym_mixin_declaration] = STATE(1953), [sym__declaration] = STATE(1953), [sym__declaration2] = STATE(1953), [sym_variable_declaration] = STATE(1953), [sym_manifest_constant] = STATE(1953), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1953), [sym_alias_declaration] = STATE(1953), [sym_alias_reassign] = STATE(1953), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1953), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1953), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1953), [sym_union_declaration] = STATE(1953), [sym_postblit] = STATE(1953), [sym_invariant_declaration] = STATE(1953), [sym_class_declaration] = STATE(1953), [sym_constructor] = STATE(1953), [sym_destructor] = STATE(1953), [sym_alias_this] = STATE(1953), [sym_interface_declaration] = STATE(1953), [sym_enum_declaration] = STATE(1953), [sym_anonymous_enum_declaration] = STATE(1953), [sym_function_declaration] = STATE(1953), [sym_template_declaration] = STATE(1953), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1953), [sym_template_mixin] = STATE(1953), [sym_conditional_declaration] = STATE(1953), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1953), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1953), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1953), [sym_static_assert] = STATE(1953), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1953), [aux_sym_source_file_repeat1] = STATE(1953), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5617), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5619), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1851] = { [sym_import_declaration] = STATE(1948), [sym_mixin_declaration] = STATE(1948), [sym__declaration] = STATE(1948), [sym__declaration2] = STATE(1948), [sym_variable_declaration] = STATE(1948), [sym_manifest_constant] = STATE(1948), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1948), [sym_alias_declaration] = STATE(1948), [sym_alias_reassign] = STATE(1948), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1948), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1948), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1948), [sym_union_declaration] = STATE(1948), [sym_postblit] = STATE(1948), [sym_invariant_declaration] = STATE(1948), [sym_class_declaration] = STATE(1948), [sym_constructor] = STATE(1948), [sym_destructor] = STATE(1948), [sym_alias_this] = STATE(1948), [sym_interface_declaration] = STATE(1948), [sym_enum_declaration] = STATE(1948), [sym_anonymous_enum_declaration] = STATE(1948), [sym_function_declaration] = STATE(1948), [sym_template_declaration] = STATE(1948), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1948), [sym_template_mixin] = STATE(1948), [sym_conditional_declaration] = STATE(1948), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1948), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1948), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1948), [sym_static_assert] = STATE(1948), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1948), [aux_sym_source_file_repeat1] = STATE(1948), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5621), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5623), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1852] = { [sym_import_declaration] = STATE(1497), [sym_mixin_declaration] = STATE(1497), [sym__declaration] = STATE(1497), [sym__declaration2] = STATE(1497), [sym_variable_declaration] = STATE(1497), [sym_manifest_constant] = STATE(1497), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1497), [sym_alias_declaration] = STATE(1497), [sym_alias_reassign] = STATE(1497), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1497), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1497), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1497), [sym_union_declaration] = STATE(1497), [sym_postblit] = STATE(1497), [sym_invariant_declaration] = STATE(1497), [sym_class_declaration] = STATE(1497), [sym_constructor] = STATE(1497), [sym_destructor] = STATE(1497), [sym_alias_this] = STATE(1497), [sym_interface_declaration] = STATE(1497), [sym_enum_declaration] = STATE(1497), [sym_anonymous_enum_declaration] = STATE(1497), [sym_function_declaration] = STATE(1497), [sym_template_declaration] = STATE(1497), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1497), [sym_template_mixin] = STATE(1497), [sym_conditional_declaration] = STATE(1497), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1497), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1497), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1497), [sym_static_assert] = STATE(1497), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1497), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5625), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5627), [anon_sym_COLON] = ACTIONS(5629), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1853] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5631), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1854] = { [sym_import_declaration] = STATE(2724), [sym_mixin_declaration] = STATE(2724), [sym__declaration] = STATE(2724), [sym__declaration2] = STATE(2724), [sym_variable_declaration] = STATE(2724), [sym_manifest_constant] = STATE(2724), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2724), [sym_alias_declaration] = STATE(2724), [sym_alias_reassign] = STATE(2724), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2724), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2724), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2724), [sym_union_declaration] = STATE(2724), [sym_postblit] = STATE(2724), [sym_invariant_declaration] = STATE(2724), [sym_class_declaration] = STATE(2724), [sym_constructor] = STATE(2724), [sym_destructor] = STATE(2724), [sym_alias_this] = STATE(2724), [sym_interface_declaration] = STATE(2724), [sym_enum_declaration] = STATE(2724), [sym_anonymous_enum_declaration] = STATE(2724), [sym_function_declaration] = STATE(2724), [sym_template_declaration] = STATE(2724), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2724), [sym_template_mixin] = STATE(2724), [sym_conditional_declaration] = STATE(2724), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2724), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2724), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2724), [sym_static_assert] = STATE(2724), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2724), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5633), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5635), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1855] = { [sym_import_declaration] = STATE(2829), [sym_mixin_declaration] = STATE(2829), [sym__declaration] = STATE(2829), [sym__declaration2] = STATE(2829), [sym_variable_declaration] = STATE(2829), [sym_manifest_constant] = STATE(2829), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2829), [sym_alias_declaration] = STATE(2829), [sym_alias_reassign] = STATE(2829), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2829), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2829), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2829), [sym_union_declaration] = STATE(2829), [sym_postblit] = STATE(2829), [sym_invariant_declaration] = STATE(2829), [sym_class_declaration] = STATE(2829), [sym_constructor] = STATE(2829), [sym_destructor] = STATE(2829), [sym_alias_this] = STATE(2829), [sym_interface_declaration] = STATE(2829), [sym_enum_declaration] = STATE(2829), [sym_anonymous_enum_declaration] = STATE(2829), [sym_function_declaration] = STATE(2829), [sym_template_declaration] = STATE(2829), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2829), [sym_template_mixin] = STATE(2829), [sym_conditional_declaration] = STATE(2829), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2829), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2829), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2829), [sym_static_assert] = STATE(2829), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2829), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5637), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5471), [anon_sym_COLON] = ACTIONS(5599), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1856] = { [sym_import_declaration] = STATE(2070), [sym_mixin_declaration] = STATE(2070), [sym__declaration] = STATE(2070), [sym__declaration2] = STATE(2070), [sym_variable_declaration] = STATE(2070), [sym_manifest_constant] = STATE(2070), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2070), [sym_alias_declaration] = STATE(2070), [sym_alias_reassign] = STATE(2070), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2070), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2070), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2070), [sym_union_declaration] = STATE(2070), [sym_postblit] = STATE(2070), [sym_invariant_declaration] = STATE(2070), [sym_class_declaration] = STATE(2070), [sym_constructor] = STATE(2070), [sym_destructor] = STATE(2070), [sym_alias_this] = STATE(2070), [sym_interface_declaration] = STATE(2070), [sym_enum_declaration] = STATE(2070), [sym_anonymous_enum_declaration] = STATE(2070), [sym_function_declaration] = STATE(2070), [sym_template_declaration] = STATE(2070), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2070), [sym_template_mixin] = STATE(2070), [sym_conditional_declaration] = STATE(2070), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2070), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2070), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2070), [sym_static_assert] = STATE(2070), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2070), [aux_sym_source_file_repeat1] = STATE(2070), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5593), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5639), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1857] = { [sym_import_declaration] = STATE(2369), [sym_mixin_declaration] = STATE(2369), [sym__declaration] = STATE(2369), [sym__declaration2] = STATE(2369), [sym_variable_declaration] = STATE(2369), [sym_manifest_constant] = STATE(2369), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2369), [sym_alias_declaration] = STATE(2369), [sym_alias_reassign] = STATE(2369), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2369), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2369), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2369), [sym_union_declaration] = STATE(2369), [sym_postblit] = STATE(2369), [sym_invariant_declaration] = STATE(2369), [sym_class_declaration] = STATE(2369), [sym_constructor] = STATE(2369), [sym_destructor] = STATE(2369), [sym_alias_this] = STATE(2369), [sym_interface_declaration] = STATE(2369), [sym_enum_declaration] = STATE(2369), [sym_anonymous_enum_declaration] = STATE(2369), [sym_function_declaration] = STATE(2369), [sym_template_declaration] = STATE(2369), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2369), [sym_template_mixin] = STATE(2369), [sym_conditional_declaration] = STATE(2369), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2369), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2369), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2369), [sym_static_assert] = STATE(2369), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2369), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5641), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5643), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1858] = { [sym_import_declaration] = STATE(1879), [sym_mixin_declaration] = STATE(1879), [sym__declaration] = STATE(1879), [sym__declaration2] = STATE(1879), [sym_variable_declaration] = STATE(1879), [sym_manifest_constant] = STATE(1879), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1879), [sym_alias_declaration] = STATE(1879), [sym_alias_reassign] = STATE(1879), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1879), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1879), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1879), [sym_union_declaration] = STATE(1879), [sym_postblit] = STATE(1879), [sym_invariant_declaration] = STATE(1879), [sym_class_declaration] = STATE(1879), [sym_constructor] = STATE(1879), [sym_destructor] = STATE(1879), [sym_alias_this] = STATE(1879), [sym_interface_declaration] = STATE(1879), [sym_enum_declaration] = STATE(1879), [sym_anonymous_enum_declaration] = STATE(1879), [sym_function_declaration] = STATE(1879), [sym_template_declaration] = STATE(1879), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1879), [sym_template_mixin] = STATE(1879), [sym_conditional_declaration] = STATE(1879), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1879), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1879), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1879), [sym_static_assert] = STATE(1879), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1879), [aux_sym_source_file_repeat1] = STATE(1879), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5645), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5647), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1859] = { [sym_import_declaration] = STATE(1873), [sym_mixin_declaration] = STATE(1873), [sym__declaration] = STATE(1873), [sym__declaration2] = STATE(1873), [sym_variable_declaration] = STATE(1873), [sym_manifest_constant] = STATE(1873), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1873), [sym_alias_declaration] = STATE(1873), [sym_alias_reassign] = STATE(1873), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1873), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1873), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1873), [sym_union_declaration] = STATE(1873), [sym_postblit] = STATE(1873), [sym_invariant_declaration] = STATE(1873), [sym_class_declaration] = STATE(1873), [sym_constructor] = STATE(1873), [sym_destructor] = STATE(1873), [sym_alias_this] = STATE(1873), [sym_interface_declaration] = STATE(1873), [sym_enum_declaration] = STATE(1873), [sym_anonymous_enum_declaration] = STATE(1873), [sym_function_declaration] = STATE(1873), [sym_template_declaration] = STATE(1873), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1873), [sym_template_mixin] = STATE(1873), [sym_conditional_declaration] = STATE(1873), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1873), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1873), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1873), [sym_static_assert] = STATE(1873), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1873), [aux_sym_source_file_repeat1] = STATE(1873), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5649), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5651), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1860] = { [sym_import_declaration] = STATE(1872), [sym_mixin_declaration] = STATE(1872), [sym__declaration] = STATE(1872), [sym__declaration2] = STATE(1872), [sym_variable_declaration] = STATE(1872), [sym_manifest_constant] = STATE(1872), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1872), [sym_alias_declaration] = STATE(1872), [sym_alias_reassign] = STATE(1872), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1872), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1872), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1872), [sym_union_declaration] = STATE(1872), [sym_postblit] = STATE(1872), [sym_invariant_declaration] = STATE(1872), [sym_class_declaration] = STATE(1872), [sym_constructor] = STATE(1872), [sym_destructor] = STATE(1872), [sym_alias_this] = STATE(1872), [sym_interface_declaration] = STATE(1872), [sym_enum_declaration] = STATE(1872), [sym_anonymous_enum_declaration] = STATE(1872), [sym_function_declaration] = STATE(1872), [sym_template_declaration] = STATE(1872), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1872), [sym_template_mixin] = STATE(1872), [sym_conditional_declaration] = STATE(1872), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1872), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1872), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1872), [sym_static_assert] = STATE(1872), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1872), [aux_sym_source_file_repeat1] = STATE(1872), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5653), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5655), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1861] = { [sym_import_declaration] = STATE(2007), [sym_mixin_declaration] = STATE(2007), [sym__declaration] = STATE(2007), [sym__declaration2] = STATE(2007), [sym_variable_declaration] = STATE(2007), [sym_manifest_constant] = STATE(2007), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2007), [sym_alias_declaration] = STATE(2007), [sym_alias_reassign] = STATE(2007), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2007), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2007), [sym_union_declaration] = STATE(2007), [sym_postblit] = STATE(2007), [sym_invariant_declaration] = STATE(2007), [sym_class_declaration] = STATE(2007), [sym_constructor] = STATE(2007), [sym_destructor] = STATE(2007), [sym_alias_this] = STATE(2007), [sym_interface_declaration] = STATE(2007), [sym_enum_declaration] = STATE(2007), [sym_anonymous_enum_declaration] = STATE(2007), [sym_function_declaration] = STATE(2007), [sym_template_declaration] = STATE(2007), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2007), [sym_template_mixin] = STATE(2007), [sym_conditional_declaration] = STATE(2007), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2007), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2007), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2007), [sym_static_assert] = STATE(2007), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2007), [aux_sym_source_file_repeat1] = STATE(2007), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5657), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5659), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1862] = { [sym_import_declaration] = STATE(1821), [sym_mixin_declaration] = STATE(1821), [sym__declaration] = STATE(1821), [sym__declaration2] = STATE(1821), [sym_variable_declaration] = STATE(1821), [sym_manifest_constant] = STATE(1821), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1821), [sym_alias_declaration] = STATE(1821), [sym_alias_reassign] = STATE(1821), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1821), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1821), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1821), [sym_union_declaration] = STATE(1821), [sym_postblit] = STATE(1821), [sym_invariant_declaration] = STATE(1821), [sym_class_declaration] = STATE(1821), [sym_constructor] = STATE(1821), [sym_destructor] = STATE(1821), [sym_alias_this] = STATE(1821), [sym_interface_declaration] = STATE(1821), [sym_enum_declaration] = STATE(1821), [sym_anonymous_enum_declaration] = STATE(1821), [sym_function_declaration] = STATE(1821), [sym_template_declaration] = STATE(1821), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1821), [sym_template_mixin] = STATE(1821), [sym_conditional_declaration] = STATE(1821), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1821), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1821), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1821), [sym_static_assert] = STATE(1821), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1821), [aux_sym_source_file_repeat1] = STATE(1821), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5661), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5663), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1863] = { [sym_import_declaration] = STATE(1834), [sym_mixin_declaration] = STATE(1834), [sym__declaration] = STATE(1834), [sym__declaration2] = STATE(1834), [sym_variable_declaration] = STATE(1834), [sym_manifest_constant] = STATE(1834), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1834), [sym_alias_declaration] = STATE(1834), [sym_alias_reassign] = STATE(1834), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1834), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1834), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1834), [sym_union_declaration] = STATE(1834), [sym_postblit] = STATE(1834), [sym_invariant_declaration] = STATE(1834), [sym_class_declaration] = STATE(1834), [sym_constructor] = STATE(1834), [sym_destructor] = STATE(1834), [sym_alias_this] = STATE(1834), [sym_interface_declaration] = STATE(1834), [sym_enum_declaration] = STATE(1834), [sym_anonymous_enum_declaration] = STATE(1834), [sym_function_declaration] = STATE(1834), [sym_template_declaration] = STATE(1834), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1834), [sym_template_mixin] = STATE(1834), [sym_conditional_declaration] = STATE(1834), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1834), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1834), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1834), [sym_static_assert] = STATE(1834), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1834), [aux_sym_source_file_repeat1] = STATE(1834), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5665), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5667), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1864] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5669), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1865] = { [sym_import_declaration] = STATE(2609), [sym_mixin_declaration] = STATE(2609), [sym__declaration] = STATE(2609), [sym__declaration2] = STATE(2609), [sym_variable_declaration] = STATE(2609), [sym_manifest_constant] = STATE(2609), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2609), [sym_alias_declaration] = STATE(2609), [sym_alias_reassign] = STATE(2609), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2609), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2609), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2609), [sym_union_declaration] = STATE(2609), [sym_postblit] = STATE(2609), [sym_invariant_declaration] = STATE(2609), [sym_class_declaration] = STATE(2609), [sym_constructor] = STATE(2609), [sym_destructor] = STATE(2609), [sym_alias_this] = STATE(2609), [sym_interface_declaration] = STATE(2609), [sym_enum_declaration] = STATE(2609), [sym_anonymous_enum_declaration] = STATE(2609), [sym_function_declaration] = STATE(2609), [sym_template_declaration] = STATE(2609), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2609), [sym_template_mixin] = STATE(2609), [sym_conditional_declaration] = STATE(2609), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2609), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2609), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2609), [sym_static_assert] = STATE(2609), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2609), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5671), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5673), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1866] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5675), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1867] = { [sym_import_declaration] = STATE(1644), [sym_mixin_declaration] = STATE(1644), [sym__declaration] = STATE(1644), [sym__declaration2] = STATE(1644), [sym_variable_declaration] = STATE(1644), [sym_manifest_constant] = STATE(1644), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1644), [sym_alias_declaration] = STATE(1644), [sym_alias_reassign] = STATE(1644), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1644), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1644), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1644), [sym_union_declaration] = STATE(1644), [sym_postblit] = STATE(1644), [sym_invariant_declaration] = STATE(1644), [sym_class_declaration] = STATE(1644), [sym_constructor] = STATE(1644), [sym_destructor] = STATE(1644), [sym_alias_this] = STATE(1644), [sym_interface_declaration] = STATE(1644), [sym_enum_declaration] = STATE(1644), [sym_anonymous_enum_declaration] = STATE(1644), [sym_function_declaration] = STATE(1644), [sym_template_declaration] = STATE(1644), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1644), [sym_template_mixin] = STATE(1644), [sym_conditional_declaration] = STATE(1644), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1644), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1644), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1644), [sym_static_assert] = STATE(1644), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1644), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5677), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5679), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1868] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5681), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1869] = { [sym_import_declaration] = STATE(2480), [sym_mixin_declaration] = STATE(2480), [sym__declaration] = STATE(2480), [sym__declaration2] = STATE(2480), [sym_variable_declaration] = STATE(2480), [sym_manifest_constant] = STATE(2480), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2480), [sym_alias_declaration] = STATE(2480), [sym_alias_reassign] = STATE(2480), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2480), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2480), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2480), [sym_union_declaration] = STATE(2480), [sym_postblit] = STATE(2480), [sym_invariant_declaration] = STATE(2480), [sym_class_declaration] = STATE(2480), [sym_constructor] = STATE(2480), [sym_destructor] = STATE(2480), [sym_alias_this] = STATE(2480), [sym_interface_declaration] = STATE(2480), [sym_enum_declaration] = STATE(2480), [sym_anonymous_enum_declaration] = STATE(2480), [sym_function_declaration] = STATE(2480), [sym_template_declaration] = STATE(2480), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2480), [sym_template_mixin] = STATE(2480), [sym_conditional_declaration] = STATE(2480), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2480), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2480), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2480), [sym_static_assert] = STATE(2480), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2480), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5683), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5685), [anon_sym_COLON] = ACTIONS(5505), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1870] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5687), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1871] = { [sym_import_declaration] = STATE(2495), [sym_mixin_declaration] = STATE(2495), [sym__declaration] = STATE(2495), [sym__declaration2] = STATE(2495), [sym_variable_declaration] = STATE(2495), [sym_manifest_constant] = STATE(2495), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2495), [sym_alias_declaration] = STATE(2495), [sym_alias_reassign] = STATE(2495), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2495), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2495), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2495), [sym_union_declaration] = STATE(2495), [sym_postblit] = STATE(2495), [sym_invariant_declaration] = STATE(2495), [sym_class_declaration] = STATE(2495), [sym_constructor] = STATE(2495), [sym_destructor] = STATE(2495), [sym_alias_this] = STATE(2495), [sym_interface_declaration] = STATE(2495), [sym_enum_declaration] = STATE(2495), [sym_anonymous_enum_declaration] = STATE(2495), [sym_function_declaration] = STATE(2495), [sym_template_declaration] = STATE(2495), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2495), [sym_template_mixin] = STATE(2495), [sym_conditional_declaration] = STATE(2495), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2495), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2495), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2495), [sym_static_assert] = STATE(2495), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2495), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5689), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5691), [anon_sym_COLON] = ACTIONS(5693), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1872] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5695), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1873] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5697), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1874] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5699), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1875] = { [sym_import_declaration] = STATE(1926), [sym_mixin_declaration] = STATE(1926), [sym__declaration] = STATE(1926), [sym__declaration2] = STATE(1926), [sym_variable_declaration] = STATE(1926), [sym_manifest_constant] = STATE(1926), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1926), [sym_alias_declaration] = STATE(1926), [sym_alias_reassign] = STATE(1926), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1926), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1926), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1926), [sym_union_declaration] = STATE(1926), [sym_postblit] = STATE(1926), [sym_invariant_declaration] = STATE(1926), [sym_class_declaration] = STATE(1926), [sym_constructor] = STATE(1926), [sym_destructor] = STATE(1926), [sym_alias_this] = STATE(1926), [sym_interface_declaration] = STATE(1926), [sym_enum_declaration] = STATE(1926), [sym_anonymous_enum_declaration] = STATE(1926), [sym_function_declaration] = STATE(1926), [sym_template_declaration] = STATE(1926), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1926), [sym_template_mixin] = STATE(1926), [sym_conditional_declaration] = STATE(1926), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1926), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1926), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1926), [sym_static_assert] = STATE(1926), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1926), [aux_sym_source_file_repeat1] = STATE(1926), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5701), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5703), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1876] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1877] = { [sym_import_declaration] = STATE(1991), [sym_mixin_declaration] = STATE(1991), [sym__declaration] = STATE(1991), [sym__declaration2] = STATE(1991), [sym_variable_declaration] = STATE(1991), [sym_manifest_constant] = STATE(1991), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1991), [sym_alias_declaration] = STATE(1991), [sym_alias_reassign] = STATE(1991), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1991), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1991), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1991), [sym_union_declaration] = STATE(1991), [sym_postblit] = STATE(1991), [sym_invariant_declaration] = STATE(1991), [sym_class_declaration] = STATE(1991), [sym_constructor] = STATE(1991), [sym_destructor] = STATE(1991), [sym_alias_this] = STATE(1991), [sym_interface_declaration] = STATE(1991), [sym_enum_declaration] = STATE(1991), [sym_anonymous_enum_declaration] = STATE(1991), [sym_function_declaration] = STATE(1991), [sym_template_declaration] = STATE(1991), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1991), [sym_template_mixin] = STATE(1991), [sym_conditional_declaration] = STATE(1991), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1991), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1991), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1991), [sym_static_assert] = STATE(1991), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1991), [aux_sym_source_file_repeat1] = STATE(1991), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5681), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5705), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1878] = { [sym_import_declaration] = STATE(1409), [sym_mixin_declaration] = STATE(1409), [sym__declaration] = STATE(1409), [sym__declaration2] = STATE(1409), [sym_variable_declaration] = STATE(1409), [sym_manifest_constant] = STATE(1409), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1409), [sym_alias_declaration] = STATE(1409), [sym_alias_reassign] = STATE(1409), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1409), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1409), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1409), [sym_union_declaration] = STATE(1409), [sym_postblit] = STATE(1409), [sym_invariant_declaration] = STATE(1409), [sym_class_declaration] = STATE(1409), [sym_constructor] = STATE(1409), [sym_destructor] = STATE(1409), [sym_alias_this] = STATE(1409), [sym_interface_declaration] = STATE(1409), [sym_enum_declaration] = STATE(1409), [sym_anonymous_enum_declaration] = STATE(1409), [sym_function_declaration] = STATE(1409), [sym_template_declaration] = STATE(1409), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1409), [sym_template_mixin] = STATE(1409), [sym_conditional_declaration] = STATE(1409), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1409), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1409), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1409), [sym_static_assert] = STATE(1409), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1409), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5707), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5709), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1879] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5711), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1880] = { [sym_import_declaration] = STATE(1465), [sym_mixin_declaration] = STATE(1465), [sym__declaration] = STATE(1465), [sym__declaration2] = STATE(1465), [sym_variable_declaration] = STATE(1465), [sym_manifest_constant] = STATE(1465), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1465), [sym_alias_declaration] = STATE(1465), [sym_alias_reassign] = STATE(1465), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1465), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1465), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1465), [sym_union_declaration] = STATE(1465), [sym_postblit] = STATE(1465), [sym_invariant_declaration] = STATE(1465), [sym_class_declaration] = STATE(1465), [sym_constructor] = STATE(1465), [sym_destructor] = STATE(1465), [sym_alias_this] = STATE(1465), [sym_interface_declaration] = STATE(1465), [sym_enum_declaration] = STATE(1465), [sym_anonymous_enum_declaration] = STATE(1465), [sym_function_declaration] = STATE(1465), [sym_template_declaration] = STATE(1465), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1465), [sym_template_mixin] = STATE(1465), [sym_conditional_declaration] = STATE(1465), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1465), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1465), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1465), [sym_static_assert] = STATE(1465), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1465), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5713), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5715), [anon_sym_COLON] = ACTIONS(5717), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1881] = { [sym_import_declaration] = STATE(2278), [sym_mixin_declaration] = STATE(2278), [sym__declaration] = STATE(2278), [sym__declaration2] = STATE(2278), [sym_variable_declaration] = STATE(2278), [sym_manifest_constant] = STATE(2278), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2278), [sym_alias_declaration] = STATE(2278), [sym_alias_reassign] = STATE(2278), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2278), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2278), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2278), [sym_union_declaration] = STATE(2278), [sym_postblit] = STATE(2278), [sym_invariant_declaration] = STATE(2278), [sym_class_declaration] = STATE(2278), [sym_constructor] = STATE(2278), [sym_destructor] = STATE(2278), [sym_alias_this] = STATE(2278), [sym_interface_declaration] = STATE(2278), [sym_enum_declaration] = STATE(2278), [sym_anonymous_enum_declaration] = STATE(2278), [sym_function_declaration] = STATE(2278), [sym_template_declaration] = STATE(2278), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2278), [sym_template_mixin] = STATE(2278), [sym_conditional_declaration] = STATE(2278), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2278), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2278), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2278), [sym_static_assert] = STATE(2278), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2278), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5719), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5721), [anon_sym_COLON] = ACTIONS(5717), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1882] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5725), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1883] = { [sym_import_declaration] = STATE(2024), [sym_mixin_declaration] = STATE(2024), [sym__declaration] = STATE(2024), [sym__declaration2] = STATE(2024), [sym_variable_declaration] = STATE(2024), [sym_manifest_constant] = STATE(2024), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2024), [sym_alias_declaration] = STATE(2024), [sym_alias_reassign] = STATE(2024), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2024), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2024), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2024), [sym_union_declaration] = STATE(2024), [sym_postblit] = STATE(2024), [sym_invariant_declaration] = STATE(2024), [sym_class_declaration] = STATE(2024), [sym_constructor] = STATE(2024), [sym_destructor] = STATE(2024), [sym_alias_this] = STATE(2024), [sym_interface_declaration] = STATE(2024), [sym_enum_declaration] = STATE(2024), [sym_anonymous_enum_declaration] = STATE(2024), [sym_function_declaration] = STATE(2024), [sym_template_declaration] = STATE(2024), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2024), [sym_template_mixin] = STATE(2024), [sym_conditional_declaration] = STATE(2024), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2024), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2024), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2024), [sym_static_assert] = STATE(2024), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2024), [aux_sym_source_file_repeat1] = STATE(2024), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5695), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5727), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1884] = { [sym_import_declaration] = STATE(2044), [sym_mixin_declaration] = STATE(2044), [sym__declaration] = STATE(2044), [sym__declaration2] = STATE(2044), [sym_variable_declaration] = STATE(2044), [sym_manifest_constant] = STATE(2044), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2044), [sym_alias_declaration] = STATE(2044), [sym_alias_reassign] = STATE(2044), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2044), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2044), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2044), [sym_union_declaration] = STATE(2044), [sym_postblit] = STATE(2044), [sym_invariant_declaration] = STATE(2044), [sym_class_declaration] = STATE(2044), [sym_constructor] = STATE(2044), [sym_destructor] = STATE(2044), [sym_alias_this] = STATE(2044), [sym_interface_declaration] = STATE(2044), [sym_enum_declaration] = STATE(2044), [sym_anonymous_enum_declaration] = STATE(2044), [sym_function_declaration] = STATE(2044), [sym_template_declaration] = STATE(2044), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2044), [sym_template_mixin] = STATE(2044), [sym_conditional_declaration] = STATE(2044), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2044), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2044), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2044), [sym_static_assert] = STATE(2044), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2044), [aux_sym_source_file_repeat1] = STATE(2044), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5697), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5729), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1885] = { [sym_import_declaration] = STATE(2066), [sym_mixin_declaration] = STATE(2066), [sym__declaration] = STATE(2066), [sym__declaration2] = STATE(2066), [sym_variable_declaration] = STATE(2066), [sym_manifest_constant] = STATE(2066), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2066), [sym_alias_declaration] = STATE(2066), [sym_alias_reassign] = STATE(2066), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2066), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2066), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2066), [sym_union_declaration] = STATE(2066), [sym_postblit] = STATE(2066), [sym_invariant_declaration] = STATE(2066), [sym_class_declaration] = STATE(2066), [sym_constructor] = STATE(2066), [sym_destructor] = STATE(2066), [sym_alias_this] = STATE(2066), [sym_interface_declaration] = STATE(2066), [sym_enum_declaration] = STATE(2066), [sym_anonymous_enum_declaration] = STATE(2066), [sym_function_declaration] = STATE(2066), [sym_template_declaration] = STATE(2066), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2066), [sym_template_mixin] = STATE(2066), [sym_conditional_declaration] = STATE(2066), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2066), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2066), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2066), [sym_static_assert] = STATE(2066), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2066), [aux_sym_source_file_repeat1] = STATE(2066), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5675), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5731), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1886] = { [sym_import_declaration] = STATE(1968), [sym_mixin_declaration] = STATE(1968), [sym__declaration] = STATE(1968), [sym__declaration2] = STATE(1968), [sym_variable_declaration] = STATE(1968), [sym_manifest_constant] = STATE(1968), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1968), [sym_alias_declaration] = STATE(1968), [sym_alias_reassign] = STATE(1968), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1968), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1968), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1968), [sym_union_declaration] = STATE(1968), [sym_postblit] = STATE(1968), [sym_invariant_declaration] = STATE(1968), [sym_class_declaration] = STATE(1968), [sym_constructor] = STATE(1968), [sym_destructor] = STATE(1968), [sym_alias_this] = STATE(1968), [sym_interface_declaration] = STATE(1968), [sym_enum_declaration] = STATE(1968), [sym_anonymous_enum_declaration] = STATE(1968), [sym_function_declaration] = STATE(1968), [sym_template_declaration] = STATE(1968), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1968), [sym_template_mixin] = STATE(1968), [sym_conditional_declaration] = STATE(1968), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1968), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1968), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1968), [sym_static_assert] = STATE(1968), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1968), [aux_sym_source_file_repeat1] = STATE(1968), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5475), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5733), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1887] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5735), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1888] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5737), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1889] = { [sym_import_declaration] = STATE(1887), [sym_mixin_declaration] = STATE(1887), [sym__declaration] = STATE(1887), [sym__declaration2] = STATE(1887), [sym_variable_declaration] = STATE(1887), [sym_manifest_constant] = STATE(1887), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1887), [sym_alias_declaration] = STATE(1887), [sym_alias_reassign] = STATE(1887), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1887), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1887), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1887), [sym_union_declaration] = STATE(1887), [sym_postblit] = STATE(1887), [sym_invariant_declaration] = STATE(1887), [sym_class_declaration] = STATE(1887), [sym_constructor] = STATE(1887), [sym_destructor] = STATE(1887), [sym_alias_this] = STATE(1887), [sym_interface_declaration] = STATE(1887), [sym_enum_declaration] = STATE(1887), [sym_anonymous_enum_declaration] = STATE(1887), [sym_function_declaration] = STATE(1887), [sym_template_declaration] = STATE(1887), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1887), [sym_template_mixin] = STATE(1887), [sym_conditional_declaration] = STATE(1887), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1887), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1887), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1887), [sym_static_assert] = STATE(1887), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1887), [aux_sym_source_file_repeat1] = STATE(1887), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5739), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5741), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1890] = { [sym_import_declaration] = STATE(2022), [sym_mixin_declaration] = STATE(2022), [sym__declaration] = STATE(2022), [sym__declaration2] = STATE(2022), [sym_variable_declaration] = STATE(2022), [sym_manifest_constant] = STATE(2022), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2022), [sym_alias_declaration] = STATE(2022), [sym_alias_reassign] = STATE(2022), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2022), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2022), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2022), [sym_union_declaration] = STATE(2022), [sym_postblit] = STATE(2022), [sym_invariant_declaration] = STATE(2022), [sym_class_declaration] = STATE(2022), [sym_constructor] = STATE(2022), [sym_destructor] = STATE(2022), [sym_alias_this] = STATE(2022), [sym_interface_declaration] = STATE(2022), [sym_enum_declaration] = STATE(2022), [sym_anonymous_enum_declaration] = STATE(2022), [sym_function_declaration] = STATE(2022), [sym_template_declaration] = STATE(2022), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2022), [sym_template_mixin] = STATE(2022), [sym_conditional_declaration] = STATE(2022), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2022), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2022), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2022), [sym_static_assert] = STATE(2022), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2022), [aux_sym_source_file_repeat1] = STATE(2022), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5743), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5745), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1891] = { [sym_import_declaration] = STATE(1391), [sym_mixin_declaration] = STATE(1391), [sym__declaration] = STATE(1391), [sym__declaration2] = STATE(1391), [sym_variable_declaration] = STATE(1391), [sym_manifest_constant] = STATE(1391), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1391), [sym_alias_declaration] = STATE(1391), [sym_alias_reassign] = STATE(1391), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1391), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1391), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1391), [sym_union_declaration] = STATE(1391), [sym_postblit] = STATE(1391), [sym_invariant_declaration] = STATE(1391), [sym_class_declaration] = STATE(1391), [sym_constructor] = STATE(1391), [sym_destructor] = STATE(1391), [sym_alias_this] = STATE(1391), [sym_interface_declaration] = STATE(1391), [sym_enum_declaration] = STATE(1391), [sym_anonymous_enum_declaration] = STATE(1391), [sym_function_declaration] = STATE(1391), [sym_template_declaration] = STATE(1391), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1391), [sym_template_mixin] = STATE(1391), [sym_conditional_declaration] = STATE(1391), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1391), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1391), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1391), [sym_static_assert] = STATE(1391), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1391), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5747), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5749), [anon_sym_COLON] = ACTIONS(1024), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1892] = { [sym_import_declaration] = STATE(1399), [sym_mixin_declaration] = STATE(1399), [sym__declaration] = STATE(1399), [sym__declaration2] = STATE(1399), [sym_variable_declaration] = STATE(1399), [sym_manifest_constant] = STATE(1399), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1399), [sym_alias_declaration] = STATE(1399), [sym_alias_reassign] = STATE(1399), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1399), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1399), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1399), [sym_union_declaration] = STATE(1399), [sym_postblit] = STATE(1399), [sym_invariant_declaration] = STATE(1399), [sym_class_declaration] = STATE(1399), [sym_constructor] = STATE(1399), [sym_destructor] = STATE(1399), [sym_alias_this] = STATE(1399), [sym_interface_declaration] = STATE(1399), [sym_enum_declaration] = STATE(1399), [sym_anonymous_enum_declaration] = STATE(1399), [sym_function_declaration] = STATE(1399), [sym_template_declaration] = STATE(1399), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1399), [sym_template_mixin] = STATE(1399), [sym_conditional_declaration] = STATE(1399), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1399), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1399), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1399), [sym_static_assert] = STATE(1399), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1399), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5751), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5753), [anon_sym_COLON] = ACTIONS(5755), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1893] = { [sym_import_declaration] = STATE(2371), [sym_mixin_declaration] = STATE(2371), [sym__declaration] = STATE(2371), [sym__declaration2] = STATE(2371), [sym_variable_declaration] = STATE(2371), [sym_manifest_constant] = STATE(2371), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2371), [sym_alias_declaration] = STATE(2371), [sym_alias_reassign] = STATE(2371), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2371), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2371), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2371), [sym_union_declaration] = STATE(2371), [sym_postblit] = STATE(2371), [sym_invariant_declaration] = STATE(2371), [sym_class_declaration] = STATE(2371), [sym_constructor] = STATE(2371), [sym_destructor] = STATE(2371), [sym_alias_this] = STATE(2371), [sym_interface_declaration] = STATE(2371), [sym_enum_declaration] = STATE(2371), [sym_anonymous_enum_declaration] = STATE(2371), [sym_function_declaration] = STATE(2371), [sym_template_declaration] = STATE(2371), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2371), [sym_template_mixin] = STATE(2371), [sym_conditional_declaration] = STATE(2371), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2371), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2371), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2371), [sym_static_assert] = STATE(2371), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2371), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5757), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5759), [anon_sym_COLON] = ACTIONS(5761), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1894] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5661), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1895] = { [sym_import_declaration] = STATE(2064), [sym_mixin_declaration] = STATE(2064), [sym__declaration] = STATE(2064), [sym__declaration2] = STATE(2064), [sym_variable_declaration] = STATE(2064), [sym_manifest_constant] = STATE(2064), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2064), [sym_alias_declaration] = STATE(2064), [sym_alias_reassign] = STATE(2064), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2064), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2064), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2064), [sym_union_declaration] = STATE(2064), [sym_postblit] = STATE(2064), [sym_invariant_declaration] = STATE(2064), [sym_class_declaration] = STATE(2064), [sym_constructor] = STATE(2064), [sym_destructor] = STATE(2064), [sym_alias_this] = STATE(2064), [sym_interface_declaration] = STATE(2064), [sym_enum_declaration] = STATE(2064), [sym_anonymous_enum_declaration] = STATE(2064), [sym_function_declaration] = STATE(2064), [sym_template_declaration] = STATE(2064), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2064), [sym_template_mixin] = STATE(2064), [sym_conditional_declaration] = STATE(2064), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2064), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2064), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2064), [sym_static_assert] = STATE(2064), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2064), [aux_sym_source_file_repeat1] = STATE(2064), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5539), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5763), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1896] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5539), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1897] = { [sym_import_declaration] = STATE(2244), [sym_mixin_declaration] = STATE(2244), [sym__declaration] = STATE(2244), [sym__declaration2] = STATE(2244), [sym_variable_declaration] = STATE(2244), [sym_manifest_constant] = STATE(2244), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2244), [sym_alias_declaration] = STATE(2244), [sym_alias_reassign] = STATE(2244), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2244), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2244), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2244), [sym_union_declaration] = STATE(2244), [sym_postblit] = STATE(2244), [sym_invariant_declaration] = STATE(2244), [sym_class_declaration] = STATE(2244), [sym_constructor] = STATE(2244), [sym_destructor] = STATE(2244), [sym_alias_this] = STATE(2244), [sym_interface_declaration] = STATE(2244), [sym_enum_declaration] = STATE(2244), [sym_anonymous_enum_declaration] = STATE(2244), [sym_function_declaration] = STATE(2244), [sym_template_declaration] = STATE(2244), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2244), [sym_template_mixin] = STATE(2244), [sym_conditional_declaration] = STATE(2244), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2244), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2244), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2244), [sym_static_assert] = STATE(2244), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2244), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5517), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5519), [anon_sym_COLON] = ACTIONS(5755), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1898] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5765), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1899] = { [sym_import_declaration] = STATE(5730), [sym_mixin_declaration] = STATE(5730), [sym__declaration] = STATE(5730), [sym__declaration2] = STATE(5730), [sym_variable_declaration] = STATE(5730), [sym_manifest_constant] = STATE(5730), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5730), [sym_alias_declaration] = STATE(5730), [sym_alias_reassign] = STATE(5730), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(5730), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5730), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(5730), [sym_union_declaration] = STATE(5730), [sym_postblit] = STATE(5730), [sym_invariant_declaration] = STATE(5730), [sym_class_declaration] = STATE(5730), [sym_constructor] = STATE(5730), [sym_destructor] = STATE(5730), [sym_alias_this] = STATE(5730), [sym_interface_declaration] = STATE(5730), [sym_enum_declaration] = STATE(5730), [sym_anonymous_enum_declaration] = STATE(5730), [sym_function_declaration] = STATE(5730), [sym_template_declaration] = STATE(5730), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(5730), [sym_template_mixin] = STATE(5730), [sym_conditional_declaration] = STATE(5730), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(5730), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(5730), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(5730), [sym_static_assert] = STATE(5730), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(5730), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5767), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5769), [anon_sym_COLON] = ACTIONS(5771), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1900] = { [sym_import_declaration] = STATE(2036), [sym_mixin_declaration] = STATE(2036), [sym__declaration] = STATE(2036), [sym__declaration2] = STATE(2036), [sym_variable_declaration] = STATE(2036), [sym_manifest_constant] = STATE(2036), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2036), [sym_alias_declaration] = STATE(2036), [sym_alias_reassign] = STATE(2036), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2036), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2036), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2036), [sym_union_declaration] = STATE(2036), [sym_postblit] = STATE(2036), [sym_invariant_declaration] = STATE(2036), [sym_class_declaration] = STATE(2036), [sym_constructor] = STATE(2036), [sym_destructor] = STATE(2036), [sym_alias_this] = STATE(2036), [sym_interface_declaration] = STATE(2036), [sym_enum_declaration] = STATE(2036), [sym_anonymous_enum_declaration] = STATE(2036), [sym_function_declaration] = STATE(2036), [sym_template_declaration] = STATE(2036), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2036), [sym_template_mixin] = STATE(2036), [sym_conditional_declaration] = STATE(2036), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2036), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2036), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2036), [sym_static_assert] = STATE(2036), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2036), [aux_sym_source_file_repeat1] = STATE(2036), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5773), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5775), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1901] = { [sym_import_declaration] = STATE(2012), [sym_mixin_declaration] = STATE(2012), [sym__declaration] = STATE(2012), [sym__declaration2] = STATE(2012), [sym_variable_declaration] = STATE(2012), [sym_manifest_constant] = STATE(2012), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2012), [sym_alias_declaration] = STATE(2012), [sym_alias_reassign] = STATE(2012), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2012), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2012), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2012), [sym_union_declaration] = STATE(2012), [sym_postblit] = STATE(2012), [sym_invariant_declaration] = STATE(2012), [sym_class_declaration] = STATE(2012), [sym_constructor] = STATE(2012), [sym_destructor] = STATE(2012), [sym_alias_this] = STATE(2012), [sym_interface_declaration] = STATE(2012), [sym_enum_declaration] = STATE(2012), [sym_anonymous_enum_declaration] = STATE(2012), [sym_function_declaration] = STATE(2012), [sym_template_declaration] = STATE(2012), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2012), [sym_template_mixin] = STATE(2012), [sym_conditional_declaration] = STATE(2012), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2012), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2012), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2012), [sym_static_assert] = STATE(2012), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2012), [aux_sym_source_file_repeat1] = STATE(2012), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5777), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5779), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1902] = { [sym_import_declaration] = STATE(2049), [sym_mixin_declaration] = STATE(2049), [sym__declaration] = STATE(2049), [sym__declaration2] = STATE(2049), [sym_variable_declaration] = STATE(2049), [sym_manifest_constant] = STATE(2049), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2049), [sym_alias_declaration] = STATE(2049), [sym_alias_reassign] = STATE(2049), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2049), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2049), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2049), [sym_union_declaration] = STATE(2049), [sym_postblit] = STATE(2049), [sym_invariant_declaration] = STATE(2049), [sym_class_declaration] = STATE(2049), [sym_constructor] = STATE(2049), [sym_destructor] = STATE(2049), [sym_alias_this] = STATE(2049), [sym_interface_declaration] = STATE(2049), [sym_enum_declaration] = STATE(2049), [sym_anonymous_enum_declaration] = STATE(2049), [sym_function_declaration] = STATE(2049), [sym_template_declaration] = STATE(2049), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2049), [sym_template_mixin] = STATE(2049), [sym_conditional_declaration] = STATE(2049), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2049), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2049), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2049), [sym_static_assert] = STATE(2049), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2049), [aux_sym_source_file_repeat1] = STATE(2049), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5781), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5783), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1903] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5785), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1904] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5787), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1905] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5789), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1906] = { [sym_import_declaration] = STATE(1914), [sym_mixin_declaration] = STATE(1914), [sym__declaration] = STATE(1914), [sym__declaration2] = STATE(1914), [sym_variable_declaration] = STATE(1914), [sym_manifest_constant] = STATE(1914), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1914), [sym_alias_declaration] = STATE(1914), [sym_alias_reassign] = STATE(1914), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1914), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1914), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1914), [sym_union_declaration] = STATE(1914), [sym_postblit] = STATE(1914), [sym_invariant_declaration] = STATE(1914), [sym_class_declaration] = STATE(1914), [sym_constructor] = STATE(1914), [sym_destructor] = STATE(1914), [sym_alias_this] = STATE(1914), [sym_interface_declaration] = STATE(1914), [sym_enum_declaration] = STATE(1914), [sym_anonymous_enum_declaration] = STATE(1914), [sym_function_declaration] = STATE(1914), [sym_template_declaration] = STATE(1914), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1914), [sym_template_mixin] = STATE(1914), [sym_conditional_declaration] = STATE(1914), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1914), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1914), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1914), [sym_static_assert] = STATE(1914), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1914), [aux_sym_source_file_repeat1] = STATE(1914), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5691), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5791), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1907] = { [sym_import_declaration] = STATE(2028), [sym_mixin_declaration] = STATE(2028), [sym__declaration] = STATE(2028), [sym__declaration2] = STATE(2028), [sym_variable_declaration] = STATE(2028), [sym_manifest_constant] = STATE(2028), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2028), [sym_alias_declaration] = STATE(2028), [sym_alias_reassign] = STATE(2028), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2028), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2028), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2028), [sym_union_declaration] = STATE(2028), [sym_postblit] = STATE(2028), [sym_invariant_declaration] = STATE(2028), [sym_class_declaration] = STATE(2028), [sym_constructor] = STATE(2028), [sym_destructor] = STATE(2028), [sym_alias_this] = STATE(2028), [sym_interface_declaration] = STATE(2028), [sym_enum_declaration] = STATE(2028), [sym_anonymous_enum_declaration] = STATE(2028), [sym_function_declaration] = STATE(2028), [sym_template_declaration] = STATE(2028), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2028), [sym_template_mixin] = STATE(2028), [sym_conditional_declaration] = STATE(2028), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2028), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2028), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2028), [sym_static_assert] = STATE(2028), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2028), [aux_sym_source_file_repeat1] = STATE(2028), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5765), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5793), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1908] = { [sym_import_declaration] = STATE(1566), [sym_mixin_declaration] = STATE(1566), [sym__declaration] = STATE(1566), [sym__declaration2] = STATE(1566), [sym_variable_declaration] = STATE(1566), [sym_manifest_constant] = STATE(1566), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1566), [sym_alias_declaration] = STATE(1566), [sym_alias_reassign] = STATE(1566), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1566), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1566), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1566), [sym_union_declaration] = STATE(1566), [sym_postblit] = STATE(1566), [sym_invariant_declaration] = STATE(1566), [sym_class_declaration] = STATE(1566), [sym_constructor] = STATE(1566), [sym_destructor] = STATE(1566), [sym_alias_this] = STATE(1566), [sym_interface_declaration] = STATE(1566), [sym_enum_declaration] = STATE(1566), [sym_anonymous_enum_declaration] = STATE(1566), [sym_function_declaration] = STATE(1566), [sym_template_declaration] = STATE(1566), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1566), [sym_template_mixin] = STATE(1566), [sym_conditional_declaration] = STATE(1566), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1566), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1566), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1566), [sym_static_assert] = STATE(1566), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1566), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5795), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5797), [anon_sym_COLON] = ACTIONS(830), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1909] = { [sym_import_declaration] = STATE(2589), [sym_mixin_declaration] = STATE(2589), [sym__declaration] = STATE(2589), [sym__declaration2] = STATE(2589), [sym_variable_declaration] = STATE(2589), [sym_manifest_constant] = STATE(2589), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2589), [sym_alias_declaration] = STATE(2589), [sym_alias_reassign] = STATE(2589), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2589), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2589), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2589), [sym_union_declaration] = STATE(2589), [sym_postblit] = STATE(2589), [sym_invariant_declaration] = STATE(2589), [sym_class_declaration] = STATE(2589), [sym_constructor] = STATE(2589), [sym_destructor] = STATE(2589), [sym_alias_this] = STATE(2589), [sym_interface_declaration] = STATE(2589), [sym_enum_declaration] = STATE(2589), [sym_anonymous_enum_declaration] = STATE(2589), [sym_function_declaration] = STATE(2589), [sym_template_declaration] = STATE(2589), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2589), [sym_template_mixin] = STATE(2589), [sym_conditional_declaration] = STATE(2589), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2589), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2589), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2589), [sym_static_assert] = STATE(2589), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2589), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5799), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5801), [anon_sym_COLON] = ACTIONS(5803), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1910] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5691), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1911] = { [sym_import_declaration] = STATE(1519), [sym_mixin_declaration] = STATE(1519), [sym__declaration] = STATE(1519), [sym__declaration2] = STATE(1519), [sym_variable_declaration] = STATE(1519), [sym_manifest_constant] = STATE(1519), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1519), [sym_alias_declaration] = STATE(1519), [sym_alias_reassign] = STATE(1519), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1519), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1519), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1519), [sym_union_declaration] = STATE(1519), [sym_postblit] = STATE(1519), [sym_invariant_declaration] = STATE(1519), [sym_class_declaration] = STATE(1519), [sym_constructor] = STATE(1519), [sym_destructor] = STATE(1519), [sym_alias_this] = STATE(1519), [sym_interface_declaration] = STATE(1519), [sym_enum_declaration] = STATE(1519), [sym_anonymous_enum_declaration] = STATE(1519), [sym_function_declaration] = STATE(1519), [sym_template_declaration] = STATE(1519), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1519), [sym_template_mixin] = STATE(1519), [sym_conditional_declaration] = STATE(1519), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1519), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1519), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1519), [sym_static_assert] = STATE(1519), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1519), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5805), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5807), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1912] = { [sym_import_declaration] = STATE(2069), [sym_mixin_declaration] = STATE(2069), [sym__declaration] = STATE(2069), [sym__declaration2] = STATE(2069), [sym_variable_declaration] = STATE(2069), [sym_manifest_constant] = STATE(2069), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2069), [sym_alias_declaration] = STATE(2069), [sym_alias_reassign] = STATE(2069), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2069), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2069), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2069), [sym_union_declaration] = STATE(2069), [sym_postblit] = STATE(2069), [sym_invariant_declaration] = STATE(2069), [sym_class_declaration] = STATE(2069), [sym_constructor] = STATE(2069), [sym_destructor] = STATE(2069), [sym_alias_this] = STATE(2069), [sym_interface_declaration] = STATE(2069), [sym_enum_declaration] = STATE(2069), [sym_anonymous_enum_declaration] = STATE(2069), [sym_function_declaration] = STATE(2069), [sym_template_declaration] = STATE(2069), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2069), [sym_template_mixin] = STATE(2069), [sym_conditional_declaration] = STATE(2069), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2069), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2069), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2069), [sym_static_assert] = STATE(2069), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2069), [aux_sym_source_file_repeat1] = STATE(2069), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5669), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5809), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1913] = { [sym_import_declaration] = STATE(1966), [sym_mixin_declaration] = STATE(1966), [sym__declaration] = STATE(1966), [sym__declaration2] = STATE(1966), [sym_variable_declaration] = STATE(1966), [sym_manifest_constant] = STATE(1966), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1966), [sym_alias_declaration] = STATE(1966), [sym_alias_reassign] = STATE(1966), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1966), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1966), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1966), [sym_union_declaration] = STATE(1966), [sym_postblit] = STATE(1966), [sym_invariant_declaration] = STATE(1966), [sym_class_declaration] = STATE(1966), [sym_constructor] = STATE(1966), [sym_destructor] = STATE(1966), [sym_alias_this] = STATE(1966), [sym_interface_declaration] = STATE(1966), [sym_enum_declaration] = STATE(1966), [sym_anonymous_enum_declaration] = STATE(1966), [sym_function_declaration] = STATE(1966), [sym_template_declaration] = STATE(1966), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1966), [sym_template_mixin] = STATE(1966), [sym_conditional_declaration] = STATE(1966), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1966), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1966), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1966), [sym_static_assert] = STATE(1966), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1966), [aux_sym_source_file_repeat1] = STATE(1966), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5715), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5811), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1914] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5813), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1915] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5815), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1916] = { [sym_import_declaration] = STATE(1876), [sym_mixin_declaration] = STATE(1876), [sym__declaration] = STATE(1876), [sym__declaration2] = STATE(1876), [sym_variable_declaration] = STATE(1876), [sym_manifest_constant] = STATE(1876), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1876), [sym_alias_declaration] = STATE(1876), [sym_alias_reassign] = STATE(1876), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1876), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1876), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1876), [sym_union_declaration] = STATE(1876), [sym_postblit] = STATE(1876), [sym_invariant_declaration] = STATE(1876), [sym_class_declaration] = STATE(1876), [sym_constructor] = STATE(1876), [sym_destructor] = STATE(1876), [sym_alias_this] = STATE(1876), [sym_interface_declaration] = STATE(1876), [sym_enum_declaration] = STATE(1876), [sym_anonymous_enum_declaration] = STATE(1876), [sym_function_declaration] = STATE(1876), [sym_template_declaration] = STATE(1876), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1876), [sym_template_mixin] = STATE(1876), [sym_conditional_declaration] = STATE(1876), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1876), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1876), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1876), [sym_static_assert] = STATE(1876), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1876), [aux_sym_source_file_repeat1] = STATE(1876), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5817), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5819), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1917] = { [sym_import_declaration] = STATE(5620), [sym_mixin_declaration] = STATE(5620), [sym__declaration] = STATE(5620), [sym__declaration2] = STATE(5620), [sym_variable_declaration] = STATE(5620), [sym_manifest_constant] = STATE(5620), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(5620), [sym_alias_declaration] = STATE(5620), [sym_alias_reassign] = STATE(5620), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(5620), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(5620), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(5620), [sym_union_declaration] = STATE(5620), [sym_postblit] = STATE(5620), [sym_invariant_declaration] = STATE(5620), [sym_class_declaration] = STATE(5620), [sym_constructor] = STATE(5620), [sym_destructor] = STATE(5620), [sym_alias_this] = STATE(5620), [sym_interface_declaration] = STATE(5620), [sym_enum_declaration] = STATE(5620), [sym_anonymous_enum_declaration] = STATE(5620), [sym_function_declaration] = STATE(5620), [sym_template_declaration] = STATE(5620), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(5620), [sym_template_mixin] = STATE(5620), [sym_conditional_declaration] = STATE(5620), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(5620), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(5620), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(5620), [sym_static_assert] = STATE(5620), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(5620), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5821), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5823), [anon_sym_COLON] = ACTIONS(1168), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1918] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5825), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1919] = { [sym_import_declaration] = STATE(1924), [sym_mixin_declaration] = STATE(1924), [sym__declaration] = STATE(1924), [sym__declaration2] = STATE(1924), [sym_variable_declaration] = STATE(1924), [sym_manifest_constant] = STATE(1924), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1924), [sym_alias_declaration] = STATE(1924), [sym_alias_reassign] = STATE(1924), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1924), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1924), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1924), [sym_union_declaration] = STATE(1924), [sym_postblit] = STATE(1924), [sym_invariant_declaration] = STATE(1924), [sym_class_declaration] = STATE(1924), [sym_constructor] = STATE(1924), [sym_destructor] = STATE(1924), [sym_alias_this] = STATE(1924), [sym_interface_declaration] = STATE(1924), [sym_enum_declaration] = STATE(1924), [sym_anonymous_enum_declaration] = STATE(1924), [sym_function_declaration] = STATE(1924), [sym_template_declaration] = STATE(1924), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1924), [sym_template_mixin] = STATE(1924), [sym_conditional_declaration] = STATE(1924), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1924), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1924), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1924), [sym_static_assert] = STATE(1924), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1924), [aux_sym_source_file_repeat1] = STATE(1924), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5825), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5827), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1920] = { [sym_import_declaration] = STATE(2645), [sym_mixin_declaration] = STATE(2645), [sym__declaration] = STATE(2645), [sym__declaration2] = STATE(2645), [sym_variable_declaration] = STATE(2645), [sym_manifest_constant] = STATE(2645), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2645), [sym_alias_declaration] = STATE(2645), [sym_alias_reassign] = STATE(2645), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2645), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2645), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2645), [sym_union_declaration] = STATE(2645), [sym_postblit] = STATE(2645), [sym_invariant_declaration] = STATE(2645), [sym_class_declaration] = STATE(2645), [sym_constructor] = STATE(2645), [sym_destructor] = STATE(2645), [sym_alias_this] = STATE(2645), [sym_interface_declaration] = STATE(2645), [sym_enum_declaration] = STATE(2645), [sym_anonymous_enum_declaration] = STATE(2645), [sym_function_declaration] = STATE(2645), [sym_template_declaration] = STATE(2645), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2645), [sym_template_mixin] = STATE(2645), [sym_conditional_declaration] = STATE(2645), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2645), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2645), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2645), [sym_static_assert] = STATE(2645), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2645), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5563), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5565), [anon_sym_COLON] = ACTIONS(5567), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1921] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5829), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1922] = { [sym_import_declaration] = STATE(1673), [sym_mixin_declaration] = STATE(1673), [sym__declaration] = STATE(1673), [sym__declaration2] = STATE(1673), [sym_variable_declaration] = STATE(1673), [sym_manifest_constant] = STATE(1673), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1673), [sym_alias_declaration] = STATE(1673), [sym_alias_reassign] = STATE(1673), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1673), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1673), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1673), [sym_union_declaration] = STATE(1673), [sym_postblit] = STATE(1673), [sym_invariant_declaration] = STATE(1673), [sym_class_declaration] = STATE(1673), [sym_constructor] = STATE(1673), [sym_destructor] = STATE(1673), [sym_alias_this] = STATE(1673), [sym_interface_declaration] = STATE(1673), [sym_enum_declaration] = STATE(1673), [sym_anonymous_enum_declaration] = STATE(1673), [sym_function_declaration] = STATE(1673), [sym_template_declaration] = STATE(1673), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1673), [sym_template_mixin] = STATE(1673), [sym_conditional_declaration] = STATE(1673), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1673), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1673), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1673), [sym_static_assert] = STATE(1673), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1673), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5831), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5833), [anon_sym_COLON] = ACTIONS(5521), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1923] = { [sym_import_declaration] = STATE(2071), [sym_mixin_declaration] = STATE(2071), [sym__declaration] = STATE(2071), [sym__declaration2] = STATE(2071), [sym_variable_declaration] = STATE(2071), [sym_manifest_constant] = STATE(2071), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2071), [sym_alias_declaration] = STATE(2071), [sym_alias_reassign] = STATE(2071), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2071), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2071), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2071), [sym_union_declaration] = STATE(2071), [sym_postblit] = STATE(2071), [sym_invariant_declaration] = STATE(2071), [sym_class_declaration] = STATE(2071), [sym_constructor] = STATE(2071), [sym_destructor] = STATE(2071), [sym_alias_this] = STATE(2071), [sym_interface_declaration] = STATE(2071), [sym_enum_declaration] = STATE(2071), [sym_anonymous_enum_declaration] = STATE(2071), [sym_function_declaration] = STATE(2071), [sym_template_declaration] = STATE(2071), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2071), [sym_template_mixin] = STATE(2071), [sym_conditional_declaration] = STATE(2071), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2071), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2071), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2071), [sym_static_assert] = STATE(2071), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2071), [aux_sym_source_file_repeat1] = STATE(2071), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5737), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5835), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1924] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5701), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1925] = { [sym_import_declaration] = STATE(2339), [sym_mixin_declaration] = STATE(2339), [sym__declaration] = STATE(2339), [sym__declaration2] = STATE(2339), [sym_variable_declaration] = STATE(2339), [sym_manifest_constant] = STATE(2339), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2339), [sym_alias_declaration] = STATE(2339), [sym_alias_reassign] = STATE(2339), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2339), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2339), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2339), [sym_union_declaration] = STATE(2339), [sym_postblit] = STATE(2339), [sym_invariant_declaration] = STATE(2339), [sym_class_declaration] = STATE(2339), [sym_constructor] = STATE(2339), [sym_destructor] = STATE(2339), [sym_alias_this] = STATE(2339), [sym_interface_declaration] = STATE(2339), [sym_enum_declaration] = STATE(2339), [sym_anonymous_enum_declaration] = STATE(2339), [sym_function_declaration] = STATE(2339), [sym_template_declaration] = STATE(2339), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2339), [sym_template_mixin] = STATE(2339), [sym_conditional_declaration] = STATE(2339), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2339), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2339), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2339), [sym_static_assert] = STATE(2339), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2339), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5837), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5839), [anon_sym_COLON] = ACTIONS(1024), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1926] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5841), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1927] = { [sym_import_declaration] = STATE(1515), [sym_mixin_declaration] = STATE(1515), [sym__declaration] = STATE(1515), [sym__declaration2] = STATE(1515), [sym_variable_declaration] = STATE(1515), [sym_manifest_constant] = STATE(1515), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1515), [sym_alias_declaration] = STATE(1515), [sym_alias_reassign] = STATE(1515), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1515), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1515), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1515), [sym_union_declaration] = STATE(1515), [sym_postblit] = STATE(1515), [sym_invariant_declaration] = STATE(1515), [sym_class_declaration] = STATE(1515), [sym_constructor] = STATE(1515), [sym_destructor] = STATE(1515), [sym_alias_this] = STATE(1515), [sym_interface_declaration] = STATE(1515), [sym_enum_declaration] = STATE(1515), [sym_anonymous_enum_declaration] = STATE(1515), [sym_function_declaration] = STATE(1515), [sym_template_declaration] = STATE(1515), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1515), [sym_template_mixin] = STATE(1515), [sym_conditional_declaration] = STATE(1515), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1515), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1515), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1515), [sym_static_assert] = STATE(1515), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1515), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5843), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5649), [anon_sym_COLON] = ACTIONS(5845), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1928] = { [sym_import_declaration] = STATE(2346), [sym_mixin_declaration] = STATE(2346), [sym__declaration] = STATE(2346), [sym__declaration2] = STATE(2346), [sym_variable_declaration] = STATE(2346), [sym_manifest_constant] = STATE(2346), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2346), [sym_alias_declaration] = STATE(2346), [sym_alias_reassign] = STATE(2346), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2346), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2346), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2346), [sym_union_declaration] = STATE(2346), [sym_postblit] = STATE(2346), [sym_invariant_declaration] = STATE(2346), [sym_class_declaration] = STATE(2346), [sym_constructor] = STATE(2346), [sym_destructor] = STATE(2346), [sym_alias_this] = STATE(2346), [sym_interface_declaration] = STATE(2346), [sym_enum_declaration] = STATE(2346), [sym_anonymous_enum_declaration] = STATE(2346), [sym_function_declaration] = STATE(2346), [sym_template_declaration] = STATE(2346), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2346), [sym_template_mixin] = STATE(2346), [sym_conditional_declaration] = STATE(2346), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2346), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2346), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2346), [sym_static_assert] = STATE(2346), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2346), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5847), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5849), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1929] = { [sym_import_declaration] = STATE(2061), [sym_mixin_declaration] = STATE(2061), [sym__declaration] = STATE(2061), [sym__declaration2] = STATE(2061), [sym_variable_declaration] = STATE(2061), [sym_manifest_constant] = STATE(2061), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2061), [sym_alias_declaration] = STATE(2061), [sym_alias_reassign] = STATE(2061), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2061), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2061), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2061), [sym_union_declaration] = STATE(2061), [sym_postblit] = STATE(2061), [sym_invariant_declaration] = STATE(2061), [sym_class_declaration] = STATE(2061), [sym_constructor] = STATE(2061), [sym_destructor] = STATE(2061), [sym_alias_this] = STATE(2061), [sym_interface_declaration] = STATE(2061), [sym_enum_declaration] = STATE(2061), [sym_anonymous_enum_declaration] = STATE(2061), [sym_function_declaration] = STATE(2061), [sym_template_declaration] = STATE(2061), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2061), [sym_template_mixin] = STATE(2061), [sym_conditional_declaration] = STATE(2061), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2061), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2061), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2061), [sym_static_assert] = STATE(2061), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2061), [aux_sym_source_file_repeat1] = STATE(2061), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5813), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5851), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1930] = { [sym_import_declaration] = STATE(2038), [sym_mixin_declaration] = STATE(2038), [sym__declaration] = STATE(2038), [sym__declaration2] = STATE(2038), [sym_variable_declaration] = STATE(2038), [sym_manifest_constant] = STATE(2038), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2038), [sym_alias_declaration] = STATE(2038), [sym_alias_reassign] = STATE(2038), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2038), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2038), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2038), [sym_union_declaration] = STATE(2038), [sym_postblit] = STATE(2038), [sym_invariant_declaration] = STATE(2038), [sym_class_declaration] = STATE(2038), [sym_constructor] = STATE(2038), [sym_destructor] = STATE(2038), [sym_alias_this] = STATE(2038), [sym_interface_declaration] = STATE(2038), [sym_enum_declaration] = STATE(2038), [sym_anonymous_enum_declaration] = STATE(2038), [sym_function_declaration] = STATE(2038), [sym_template_declaration] = STATE(2038), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2038), [sym_template_mixin] = STATE(2038), [sym_conditional_declaration] = STATE(2038), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2038), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2038), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2038), [sym_static_assert] = STATE(2038), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2038), [aux_sym_source_file_repeat1] = STATE(2038), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5853), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5855), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1931] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5857), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1932] = { [sym_import_declaration] = STATE(1944), [sym_mixin_declaration] = STATE(1944), [sym__declaration] = STATE(1944), [sym__declaration2] = STATE(1944), [sym_variable_declaration] = STATE(1944), [sym_manifest_constant] = STATE(1944), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1944), [sym_alias_declaration] = STATE(1944), [sym_alias_reassign] = STATE(1944), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1944), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1944), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1944), [sym_union_declaration] = STATE(1944), [sym_postblit] = STATE(1944), [sym_invariant_declaration] = STATE(1944), [sym_class_declaration] = STATE(1944), [sym_constructor] = STATE(1944), [sym_destructor] = STATE(1944), [sym_alias_this] = STATE(1944), [sym_interface_declaration] = STATE(1944), [sym_enum_declaration] = STATE(1944), [sym_anonymous_enum_declaration] = STATE(1944), [sym_function_declaration] = STATE(1944), [sym_template_declaration] = STATE(1944), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1944), [sym_template_mixin] = STATE(1944), [sym_conditional_declaration] = STATE(1944), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1944), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1944), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1944), [sym_static_assert] = STATE(1944), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1944), [aux_sym_source_file_repeat1] = STATE(1944), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5597), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5859), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1933] = { [sym_import_declaration] = STATE(1903), [sym_mixin_declaration] = STATE(1903), [sym__declaration] = STATE(1903), [sym__declaration2] = STATE(1903), [sym_variable_declaration] = STATE(1903), [sym_manifest_constant] = STATE(1903), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1903), [sym_alias_declaration] = STATE(1903), [sym_alias_reassign] = STATE(1903), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1903), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1903), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1903), [sym_union_declaration] = STATE(1903), [sym_postblit] = STATE(1903), [sym_invariant_declaration] = STATE(1903), [sym_class_declaration] = STATE(1903), [sym_constructor] = STATE(1903), [sym_destructor] = STATE(1903), [sym_alias_this] = STATE(1903), [sym_interface_declaration] = STATE(1903), [sym_enum_declaration] = STATE(1903), [sym_anonymous_enum_declaration] = STATE(1903), [sym_function_declaration] = STATE(1903), [sym_template_declaration] = STATE(1903), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1903), [sym_template_mixin] = STATE(1903), [sym_conditional_declaration] = STATE(1903), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1903), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1903), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1903), [sym_static_assert] = STATE(1903), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1903), [aux_sym_source_file_repeat1] = STATE(1903), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5861), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5863), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1934] = { [sym_import_declaration] = STATE(2589), [sym_mixin_declaration] = STATE(2589), [sym__declaration] = STATE(2589), [sym__declaration2] = STATE(2589), [sym_variable_declaration] = STATE(2589), [sym_manifest_constant] = STATE(2589), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2589), [sym_alias_declaration] = STATE(2589), [sym_alias_reassign] = STATE(2589), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2589), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2589), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2589), [sym_union_declaration] = STATE(2589), [sym_postblit] = STATE(2589), [sym_invariant_declaration] = STATE(2589), [sym_class_declaration] = STATE(2589), [sym_constructor] = STATE(2589), [sym_destructor] = STATE(2589), [sym_alias_this] = STATE(2589), [sym_interface_declaration] = STATE(2589), [sym_enum_declaration] = STATE(2589), [sym_anonymous_enum_declaration] = STATE(2589), [sym_function_declaration] = STATE(2589), [sym_template_declaration] = STATE(2589), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2589), [sym_template_mixin] = STATE(2589), [sym_conditional_declaration] = STATE(2589), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2589), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2589), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2589), [sym_static_assert] = STATE(2589), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2589), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5799), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5801), [anon_sym_COLON] = ACTIONS(5803), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1935] = { [sym_import_declaration] = STATE(2186), [sym_mixin_declaration] = STATE(2186), [sym__declaration] = STATE(2186), [sym__declaration2] = STATE(2186), [sym_variable_declaration] = STATE(2186), [sym_manifest_constant] = STATE(2186), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2186), [sym_alias_declaration] = STATE(2186), [sym_alias_reassign] = STATE(2186), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2186), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2186), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2186), [sym_union_declaration] = STATE(2186), [sym_postblit] = STATE(2186), [sym_invariant_declaration] = STATE(2186), [sym_class_declaration] = STATE(2186), [sym_constructor] = STATE(2186), [sym_destructor] = STATE(2186), [sym_alias_this] = STATE(2186), [sym_interface_declaration] = STATE(2186), [sym_enum_declaration] = STATE(2186), [sym_anonymous_enum_declaration] = STATE(2186), [sym_function_declaration] = STATE(2186), [sym_template_declaration] = STATE(2186), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2186), [sym_template_mixin] = STATE(2186), [sym_conditional_declaration] = STATE(2186), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2186), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2186), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2186), [sym_static_assert] = STATE(2186), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2186), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5865), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5463), [anon_sym_COLON] = ACTIONS(5629), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1936] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5867), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1937] = { [sym_import_declaration] = STATE(1985), [sym_mixin_declaration] = STATE(1985), [sym__declaration] = STATE(1985), [sym__declaration2] = STATE(1985), [sym_variable_declaration] = STATE(1985), [sym_manifest_constant] = STATE(1985), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1985), [sym_alias_declaration] = STATE(1985), [sym_alias_reassign] = STATE(1985), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1985), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1985), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1985), [sym_union_declaration] = STATE(1985), [sym_postblit] = STATE(1985), [sym_invariant_declaration] = STATE(1985), [sym_class_declaration] = STATE(1985), [sym_constructor] = STATE(1985), [sym_destructor] = STATE(1985), [sym_alias_this] = STATE(1985), [sym_interface_declaration] = STATE(1985), [sym_enum_declaration] = STATE(1985), [sym_anonymous_enum_declaration] = STATE(1985), [sym_function_declaration] = STATE(1985), [sym_template_declaration] = STATE(1985), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1985), [sym_template_mixin] = STATE(1985), [sym_conditional_declaration] = STATE(1985), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1985), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1985), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1985), [sym_static_assert] = STATE(1985), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1985), [aux_sym_source_file_repeat1] = STATE(1985), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5759), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5869), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1938] = { [sym_import_declaration] = STATE(1987), [sym_mixin_declaration] = STATE(1987), [sym__declaration] = STATE(1987), [sym__declaration2] = STATE(1987), [sym_variable_declaration] = STATE(1987), [sym_manifest_constant] = STATE(1987), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1987), [sym_alias_declaration] = STATE(1987), [sym_alias_reassign] = STATE(1987), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1987), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1987), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1987), [sym_union_declaration] = STATE(1987), [sym_postblit] = STATE(1987), [sym_invariant_declaration] = STATE(1987), [sym_class_declaration] = STATE(1987), [sym_constructor] = STATE(1987), [sym_destructor] = STATE(1987), [sym_alias_this] = STATE(1987), [sym_interface_declaration] = STATE(1987), [sym_enum_declaration] = STATE(1987), [sym_anonymous_enum_declaration] = STATE(1987), [sym_function_declaration] = STATE(1987), [sym_template_declaration] = STATE(1987), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1987), [sym_template_mixin] = STATE(1987), [sym_conditional_declaration] = STATE(1987), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1987), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1987), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1987), [sym_static_assert] = STATE(1987), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1987), [aux_sym_source_file_repeat1] = STATE(1987), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5871), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5873), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1939] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5875), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1940] = { [sym_import_declaration] = STATE(2060), [sym_mixin_declaration] = STATE(2060), [sym__declaration] = STATE(2060), [sym__declaration2] = STATE(2060), [sym_variable_declaration] = STATE(2060), [sym_manifest_constant] = STATE(2060), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2060), [sym_alias_declaration] = STATE(2060), [sym_alias_reassign] = STATE(2060), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2060), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2060), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2060), [sym_union_declaration] = STATE(2060), [sym_postblit] = STATE(2060), [sym_invariant_declaration] = STATE(2060), [sym_class_declaration] = STATE(2060), [sym_constructor] = STATE(2060), [sym_destructor] = STATE(2060), [sym_alias_this] = STATE(2060), [sym_interface_declaration] = STATE(2060), [sym_enum_declaration] = STATE(2060), [sym_anonymous_enum_declaration] = STATE(2060), [sym_function_declaration] = STATE(2060), [sym_template_declaration] = STATE(2060), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2060), [sym_template_mixin] = STATE(2060), [sym_conditional_declaration] = STATE(2060), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2060), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2060), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2060), [sym_static_assert] = STATE(2060), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2060), [aux_sym_source_file_repeat1] = STATE(2060), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5877), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5879), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1941] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5739), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1942] = { [sym_import_declaration] = STATE(1837), [sym_mixin_declaration] = STATE(1837), [sym__declaration] = STATE(1837), [sym__declaration2] = STATE(1837), [sym_variable_declaration] = STATE(1837), [sym_manifest_constant] = STATE(1837), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1837), [sym_alias_declaration] = STATE(1837), [sym_alias_reassign] = STATE(1837), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1837), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1837), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1837), [sym_union_declaration] = STATE(1837), [sym_postblit] = STATE(1837), [sym_invariant_declaration] = STATE(1837), [sym_class_declaration] = STATE(1837), [sym_constructor] = STATE(1837), [sym_destructor] = STATE(1837), [sym_alias_this] = STATE(1837), [sym_interface_declaration] = STATE(1837), [sym_enum_declaration] = STATE(1837), [sym_anonymous_enum_declaration] = STATE(1837), [sym_function_declaration] = STATE(1837), [sym_template_declaration] = STATE(1837), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1837), [sym_template_mixin] = STATE(1837), [sym_conditional_declaration] = STATE(1837), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1837), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1837), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1837), [sym_static_assert] = STATE(1837), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1837), [aux_sym_source_file_repeat1] = STATE(1837), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5881), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5883), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1943] = { [sym_import_declaration] = STATE(1936), [sym_mixin_declaration] = STATE(1936), [sym__declaration] = STATE(1936), [sym__declaration2] = STATE(1936), [sym_variable_declaration] = STATE(1936), [sym_manifest_constant] = STATE(1936), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1936), [sym_alias_declaration] = STATE(1936), [sym_alias_reassign] = STATE(1936), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1936), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1936), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1936), [sym_union_declaration] = STATE(1936), [sym_postblit] = STATE(1936), [sym_invariant_declaration] = STATE(1936), [sym_class_declaration] = STATE(1936), [sym_constructor] = STATE(1936), [sym_destructor] = STATE(1936), [sym_alias_this] = STATE(1936), [sym_interface_declaration] = STATE(1936), [sym_enum_declaration] = STATE(1936), [sym_anonymous_enum_declaration] = STATE(1936), [sym_function_declaration] = STATE(1936), [sym_template_declaration] = STATE(1936), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1936), [sym_template_mixin] = STATE(1936), [sym_conditional_declaration] = STATE(1936), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1936), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1936), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1936), [sym_static_assert] = STATE(1936), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1936), [aux_sym_source_file_repeat1] = STATE(1936), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5875), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5885), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1944] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5887), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1945] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5889), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1946] = { [sym_import_declaration] = STATE(2606), [sym_mixin_declaration] = STATE(2606), [sym__declaration] = STATE(2606), [sym__declaration2] = STATE(2606), [sym_variable_declaration] = STATE(2606), [sym_manifest_constant] = STATE(2606), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2606), [sym_alias_declaration] = STATE(2606), [sym_alias_reassign] = STATE(2606), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2606), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2606), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2606), [sym_union_declaration] = STATE(2606), [sym_postblit] = STATE(2606), [sym_invariant_declaration] = STATE(2606), [sym_class_declaration] = STATE(2606), [sym_constructor] = STATE(2606), [sym_destructor] = STATE(2606), [sym_alias_this] = STATE(2606), [sym_interface_declaration] = STATE(2606), [sym_enum_declaration] = STATE(2606), [sym_anonymous_enum_declaration] = STATE(2606), [sym_function_declaration] = STATE(2606), [sym_template_declaration] = STATE(2606), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2606), [sym_template_mixin] = STATE(2606), [sym_conditional_declaration] = STATE(2606), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2606), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2606), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2606), [sym_static_assert] = STATE(2606), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2606), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5891), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5893), [anon_sym_COLON] = ACTIONS(1168), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1947] = { [sym_import_declaration] = STATE(2230), [sym_mixin_declaration] = STATE(2230), [sym__declaration] = STATE(2230), [sym__declaration2] = STATE(2230), [sym_variable_declaration] = STATE(2230), [sym_manifest_constant] = STATE(2230), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2230), [sym_alias_declaration] = STATE(2230), [sym_alias_reassign] = STATE(2230), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2230), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2230), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2230), [sym_union_declaration] = STATE(2230), [sym_postblit] = STATE(2230), [sym_invariant_declaration] = STATE(2230), [sym_class_declaration] = STATE(2230), [sym_constructor] = STATE(2230), [sym_destructor] = STATE(2230), [sym_alias_this] = STATE(2230), [sym_interface_declaration] = STATE(2230), [sym_enum_declaration] = STATE(2230), [sym_anonymous_enum_declaration] = STATE(2230), [sym_function_declaration] = STATE(2230), [sym_template_declaration] = STATE(2230), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2230), [sym_template_mixin] = STATE(2230), [sym_conditional_declaration] = STATE(2230), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2230), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2230), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2230), [sym_static_assert] = STATE(2230), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2230), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5895), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5897), [anon_sym_COLON] = ACTIONS(5899), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1948] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5901), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1949] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5903), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1950] = { [sym_import_declaration] = STATE(2622), [sym_mixin_declaration] = STATE(2622), [sym__declaration] = STATE(2622), [sym__declaration2] = STATE(2622), [sym_variable_declaration] = STATE(2622), [sym_manifest_constant] = STATE(2622), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2622), [sym_alias_declaration] = STATE(2622), [sym_alias_reassign] = STATE(2622), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2622), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2622), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2622), [sym_union_declaration] = STATE(2622), [sym_postblit] = STATE(2622), [sym_invariant_declaration] = STATE(2622), [sym_class_declaration] = STATE(2622), [sym_constructor] = STATE(2622), [sym_destructor] = STATE(2622), [sym_alias_this] = STATE(2622), [sym_interface_declaration] = STATE(2622), [sym_enum_declaration] = STATE(2622), [sym_anonymous_enum_declaration] = STATE(2622), [sym_function_declaration] = STATE(2622), [sym_template_declaration] = STATE(2622), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2622), [sym_template_mixin] = STATE(2622), [sym_conditional_declaration] = STATE(2622), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2622), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2622), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2622), [sym_static_assert] = STATE(2622), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2622), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5477), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5479), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1951] = { [sym_import_declaration] = STATE(2496), [sym_mixin_declaration] = STATE(2496), [sym__declaration] = STATE(2496), [sym__declaration2] = STATE(2496), [sym_variable_declaration] = STATE(2496), [sym_manifest_constant] = STATE(2496), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2496), [sym_alias_declaration] = STATE(2496), [sym_alias_reassign] = STATE(2496), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2496), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2496), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2496), [sym_union_declaration] = STATE(2496), [sym_postblit] = STATE(2496), [sym_invariant_declaration] = STATE(2496), [sym_class_declaration] = STATE(2496), [sym_constructor] = STATE(2496), [sym_destructor] = STATE(2496), [sym_alias_this] = STATE(2496), [sym_interface_declaration] = STATE(2496), [sym_enum_declaration] = STATE(2496), [sym_anonymous_enum_declaration] = STATE(2496), [sym_function_declaration] = STATE(2496), [sym_template_declaration] = STATE(2496), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2496), [sym_template_mixin] = STATE(2496), [sym_conditional_declaration] = STATE(2496), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2496), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2496), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2496), [sym_static_assert] = STATE(2496), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2496), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5905), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5907), [anon_sym_COLON] = ACTIONS(5909), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1952] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5911), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1953] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5913), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1954] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5871), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1955] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5621), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1956] = { [sym_import_declaration] = STATE(2511), [sym_mixin_declaration] = STATE(2511), [sym__declaration] = STATE(2511), [sym__declaration2] = STATE(2511), [sym_variable_declaration] = STATE(2511), [sym_manifest_constant] = STATE(2511), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2511), [sym_alias_declaration] = STATE(2511), [sym_alias_reassign] = STATE(2511), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2511), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2511), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2511), [sym_union_declaration] = STATE(2511), [sym_postblit] = STATE(2511), [sym_invariant_declaration] = STATE(2511), [sym_class_declaration] = STATE(2511), [sym_constructor] = STATE(2511), [sym_destructor] = STATE(2511), [sym_alias_this] = STATE(2511), [sym_interface_declaration] = STATE(2511), [sym_enum_declaration] = STATE(2511), [sym_anonymous_enum_declaration] = STATE(2511), [sym_function_declaration] = STATE(2511), [sym_template_declaration] = STATE(2511), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2511), [sym_template_mixin] = STATE(2511), [sym_conditional_declaration] = STATE(2511), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2511), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2511), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2511), [sym_static_assert] = STATE(2511), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2511), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5915), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5917), [anon_sym_COLON] = ACTIONS(5919), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1957] = { [sym_import_declaration] = STATE(2736), [sym_mixin_declaration] = STATE(2736), [sym__declaration] = STATE(2736), [sym__declaration2] = STATE(2736), [sym_variable_declaration] = STATE(2736), [sym_manifest_constant] = STATE(2736), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2736), [sym_alias_declaration] = STATE(2736), [sym_alias_reassign] = STATE(2736), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2736), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2736), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2736), [sym_union_declaration] = STATE(2736), [sym_postblit] = STATE(2736), [sym_invariant_declaration] = STATE(2736), [sym_class_declaration] = STATE(2736), [sym_constructor] = STATE(2736), [sym_destructor] = STATE(2736), [sym_alias_this] = STATE(2736), [sym_interface_declaration] = STATE(2736), [sym_enum_declaration] = STATE(2736), [sym_anonymous_enum_declaration] = STATE(2736), [sym_function_declaration] = STATE(2736), [sym_template_declaration] = STATE(2736), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2736), [sym_template_mixin] = STATE(2736), [sym_conditional_declaration] = STATE(2736), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2736), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2736), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2736), [sym_static_assert] = STATE(2736), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2736), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5921), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5777), [anon_sym_COLON] = ACTIONS(5771), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1958] = { [sym_import_declaration] = STATE(1915), [sym_mixin_declaration] = STATE(1915), [sym__declaration] = STATE(1915), [sym__declaration2] = STATE(1915), [sym_variable_declaration] = STATE(1915), [sym_manifest_constant] = STATE(1915), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1915), [sym_alias_declaration] = STATE(1915), [sym_alias_reassign] = STATE(1915), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1915), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1915), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1915), [sym_union_declaration] = STATE(1915), [sym_postblit] = STATE(1915), [sym_invariant_declaration] = STATE(1915), [sym_class_declaration] = STATE(1915), [sym_constructor] = STATE(1915), [sym_destructor] = STATE(1915), [sym_alias_this] = STATE(1915), [sym_interface_declaration] = STATE(1915), [sym_enum_declaration] = STATE(1915), [sym_anonymous_enum_declaration] = STATE(1915), [sym_function_declaration] = STATE(1915), [sym_template_declaration] = STATE(1915), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1915), [sym_template_mixin] = STATE(1915), [sym_conditional_declaration] = STATE(1915), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1915), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1915), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1915), [sym_static_assert] = STATE(1915), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1915), [aux_sym_source_file_repeat1] = STATE(1915), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5923), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5925), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1959] = { [sym_import_declaration] = STATE(1836), [sym_mixin_declaration] = STATE(1836), [sym__declaration] = STATE(1836), [sym__declaration2] = STATE(1836), [sym_variable_declaration] = STATE(1836), [sym_manifest_constant] = STATE(1836), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1836), [sym_alias_declaration] = STATE(1836), [sym_alias_reassign] = STATE(1836), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1836), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1836), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1836), [sym_union_declaration] = STATE(1836), [sym_postblit] = STATE(1836), [sym_invariant_declaration] = STATE(1836), [sym_class_declaration] = STATE(1836), [sym_constructor] = STATE(1836), [sym_destructor] = STATE(1836), [sym_alias_this] = STATE(1836), [sym_interface_declaration] = STATE(1836), [sym_enum_declaration] = STATE(1836), [sym_anonymous_enum_declaration] = STATE(1836), [sym_function_declaration] = STATE(1836), [sym_template_declaration] = STATE(1836), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1836), [sym_template_mixin] = STATE(1836), [sym_conditional_declaration] = STATE(1836), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1836), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1836), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1836), [sym_static_assert] = STATE(1836), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1836), [aux_sym_source_file_repeat1] = STATE(1836), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5927), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5929), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1960] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5931), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1961] = { [sym_import_declaration] = STATE(2086), [sym_mixin_declaration] = STATE(2086), [sym__declaration] = STATE(2086), [sym__declaration2] = STATE(2086), [sym_variable_declaration] = STATE(2086), [sym_manifest_constant] = STATE(2086), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2086), [sym_alias_declaration] = STATE(2086), [sym_alias_reassign] = STATE(2086), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2086), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2086), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2086), [sym_union_declaration] = STATE(2086), [sym_postblit] = STATE(2086), [sym_invariant_declaration] = STATE(2086), [sym_class_declaration] = STATE(2086), [sym_constructor] = STATE(2086), [sym_destructor] = STATE(2086), [sym_alias_this] = STATE(2086), [sym_interface_declaration] = STATE(2086), [sym_enum_declaration] = STATE(2086), [sym_anonymous_enum_declaration] = STATE(2086), [sym_function_declaration] = STATE(2086), [sym_template_declaration] = STATE(2086), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2086), [sym_template_mixin] = STATE(2086), [sym_conditional_declaration] = STATE(2086), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2086), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2086), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2086), [sym_static_assert] = STATE(2086), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2086), [aux_sym_source_file_repeat1] = STATE(2086), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5913), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5933), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1962] = { [sym_import_declaration] = STATE(1595), [sym_mixin_declaration] = STATE(1595), [sym__declaration] = STATE(1595), [sym__declaration2] = STATE(1595), [sym_variable_declaration] = STATE(1595), [sym_manifest_constant] = STATE(1595), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1595), [sym_alias_declaration] = STATE(1595), [sym_alias_reassign] = STATE(1595), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1595), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1595), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1595), [sym_union_declaration] = STATE(1595), [sym_postblit] = STATE(1595), [sym_invariant_declaration] = STATE(1595), [sym_class_declaration] = STATE(1595), [sym_constructor] = STATE(1595), [sym_destructor] = STATE(1595), [sym_alias_this] = STATE(1595), [sym_interface_declaration] = STATE(1595), [sym_enum_declaration] = STATE(1595), [sym_anonymous_enum_declaration] = STATE(1595), [sym_function_declaration] = STATE(1595), [sym_template_declaration] = STATE(1595), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1595), [sym_template_mixin] = STATE(1595), [sym_conditional_declaration] = STATE(1595), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1595), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1595), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1595), [sym_static_assert] = STATE(1595), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1595), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5935), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5937), [anon_sym_COLON] = ACTIONS(5899), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1963] = { [sym_import_declaration] = STATE(2495), [sym_mixin_declaration] = STATE(2495), [sym__declaration] = STATE(2495), [sym__declaration2] = STATE(2495), [sym_variable_declaration] = STATE(2495), [sym_manifest_constant] = STATE(2495), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2495), [sym_alias_declaration] = STATE(2495), [sym_alias_reassign] = STATE(2495), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2495), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2495), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2495), [sym_union_declaration] = STATE(2495), [sym_postblit] = STATE(2495), [sym_invariant_declaration] = STATE(2495), [sym_class_declaration] = STATE(2495), [sym_constructor] = STATE(2495), [sym_destructor] = STATE(2495), [sym_alias_this] = STATE(2495), [sym_interface_declaration] = STATE(2495), [sym_enum_declaration] = STATE(2495), [sym_anonymous_enum_declaration] = STATE(2495), [sym_function_declaration] = STATE(2495), [sym_template_declaration] = STATE(2495), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2495), [sym_template_mixin] = STATE(2495), [sym_conditional_declaration] = STATE(2495), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2495), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2495), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2495), [sym_static_assert] = STATE(2495), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2495), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5689), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5691), [anon_sym_COLON] = ACTIONS(5939), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1964] = { [sym_import_declaration] = STATE(2569), [sym_mixin_declaration] = STATE(2569), [sym__declaration] = STATE(2569), [sym__declaration2] = STATE(2569), [sym_variable_declaration] = STATE(2569), [sym_manifest_constant] = STATE(2569), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2569), [sym_alias_declaration] = STATE(2569), [sym_alias_reassign] = STATE(2569), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2569), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2569), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2569), [sym_union_declaration] = STATE(2569), [sym_postblit] = STATE(2569), [sym_invariant_declaration] = STATE(2569), [sym_class_declaration] = STATE(2569), [sym_constructor] = STATE(2569), [sym_destructor] = STATE(2569), [sym_alias_this] = STATE(2569), [sym_interface_declaration] = STATE(2569), [sym_enum_declaration] = STATE(2569), [sym_anonymous_enum_declaration] = STATE(2569), [sym_function_declaration] = STATE(2569), [sym_template_declaration] = STATE(2569), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2569), [sym_template_mixin] = STATE(2569), [sym_conditional_declaration] = STATE(2569), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2569), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2569), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2569), [sym_static_assert] = STATE(2569), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2569), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5941), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5943), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1965] = { [sym_import_declaration] = STATE(1870), [sym_mixin_declaration] = STATE(1870), [sym__declaration] = STATE(1870), [sym__declaration2] = STATE(1870), [sym_variable_declaration] = STATE(1870), [sym_manifest_constant] = STATE(1870), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1870), [sym_alias_declaration] = STATE(1870), [sym_alias_reassign] = STATE(1870), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1870), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1870), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1870), [sym_union_declaration] = STATE(1870), [sym_postblit] = STATE(1870), [sym_invariant_declaration] = STATE(1870), [sym_class_declaration] = STATE(1870), [sym_constructor] = STATE(1870), [sym_destructor] = STATE(1870), [sym_alias_this] = STATE(1870), [sym_interface_declaration] = STATE(1870), [sym_enum_declaration] = STATE(1870), [sym_anonymous_enum_declaration] = STATE(1870), [sym_function_declaration] = STATE(1870), [sym_template_declaration] = STATE(1870), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1870), [sym_template_mixin] = STATE(1870), [sym_conditional_declaration] = STATE(1870), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1870), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1870), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1870), [sym_static_assert] = STATE(1870), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1870), [aux_sym_source_file_repeat1] = STATE(1870), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5631), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5945), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1966] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5923), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1967] = { [sym_import_declaration] = STATE(2230), [sym_mixin_declaration] = STATE(2230), [sym__declaration] = STATE(2230), [sym__declaration2] = STATE(2230), [sym_variable_declaration] = STATE(2230), [sym_manifest_constant] = STATE(2230), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2230), [sym_alias_declaration] = STATE(2230), [sym_alias_reassign] = STATE(2230), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2230), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2230), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2230), [sym_union_declaration] = STATE(2230), [sym_postblit] = STATE(2230), [sym_invariant_declaration] = STATE(2230), [sym_class_declaration] = STATE(2230), [sym_constructor] = STATE(2230), [sym_destructor] = STATE(2230), [sym_alias_this] = STATE(2230), [sym_interface_declaration] = STATE(2230), [sym_enum_declaration] = STATE(2230), [sym_anonymous_enum_declaration] = STATE(2230), [sym_function_declaration] = STATE(2230), [sym_template_declaration] = STATE(2230), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2230), [sym_template_mixin] = STATE(2230), [sym_conditional_declaration] = STATE(2230), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2230), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2230), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2230), [sym_static_assert] = STATE(2230), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2230), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5895), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5897), [anon_sym_COLON] = ACTIONS(5947), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1968] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5949), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1969] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5951), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1970] = { [sym_import_declaration] = STATE(2480), [sym_mixin_declaration] = STATE(2480), [sym__declaration] = STATE(2480), [sym__declaration2] = STATE(2480), [sym_variable_declaration] = STATE(2480), [sym_manifest_constant] = STATE(2480), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2480), [sym_alias_declaration] = STATE(2480), [sym_alias_reassign] = STATE(2480), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2480), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2480), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2480), [sym_union_declaration] = STATE(2480), [sym_postblit] = STATE(2480), [sym_invariant_declaration] = STATE(2480), [sym_class_declaration] = STATE(2480), [sym_constructor] = STATE(2480), [sym_destructor] = STATE(2480), [sym_alias_this] = STATE(2480), [sym_interface_declaration] = STATE(2480), [sym_enum_declaration] = STATE(2480), [sym_anonymous_enum_declaration] = STATE(2480), [sym_function_declaration] = STATE(2480), [sym_template_declaration] = STATE(2480), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2480), [sym_template_mixin] = STATE(2480), [sym_conditional_declaration] = STATE(2480), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2480), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2480), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2480), [sym_static_assert] = STATE(2480), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2480), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5683), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5685), [anon_sym_COLON] = ACTIONS(5953), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1971] = { [sym_import_declaration] = STATE(1939), [sym_mixin_declaration] = STATE(1939), [sym__declaration] = STATE(1939), [sym__declaration2] = STATE(1939), [sym_variable_declaration] = STATE(1939), [sym_manifest_constant] = STATE(1939), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1939), [sym_alias_declaration] = STATE(1939), [sym_alias_reassign] = STATE(1939), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1939), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1939), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1939), [sym_union_declaration] = STATE(1939), [sym_postblit] = STATE(1939), [sym_invariant_declaration] = STATE(1939), [sym_class_declaration] = STATE(1939), [sym_constructor] = STATE(1939), [sym_destructor] = STATE(1939), [sym_alias_this] = STATE(1939), [sym_interface_declaration] = STATE(1939), [sym_enum_declaration] = STATE(1939), [sym_anonymous_enum_declaration] = STATE(1939), [sym_function_declaration] = STATE(1939), [sym_template_declaration] = STATE(1939), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1939), [sym_template_mixin] = STATE(1939), [sym_conditional_declaration] = STATE(1939), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1939), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1939), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1939), [sym_static_assert] = STATE(1939), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1939), [aux_sym_source_file_repeat1] = STATE(1939), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5911), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5955), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1972] = { [sym_import_declaration] = STATE(1853), [sym_mixin_declaration] = STATE(1853), [sym__declaration] = STATE(1853), [sym__declaration2] = STATE(1853), [sym_variable_declaration] = STATE(1853), [sym_manifest_constant] = STATE(1853), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1853), [sym_alias_declaration] = STATE(1853), [sym_alias_reassign] = STATE(1853), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1853), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1853), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1853), [sym_union_declaration] = STATE(1853), [sym_postblit] = STATE(1853), [sym_invariant_declaration] = STATE(1853), [sym_class_declaration] = STATE(1853), [sym_constructor] = STATE(1853), [sym_destructor] = STATE(1853), [sym_alias_this] = STATE(1853), [sym_interface_declaration] = STATE(1853), [sym_enum_declaration] = STATE(1853), [sym_anonymous_enum_declaration] = STATE(1853), [sym_function_declaration] = STATE(1853), [sym_template_declaration] = STATE(1853), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1853), [sym_template_mixin] = STATE(1853), [sym_conditional_declaration] = STATE(1853), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1853), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1853), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1853), [sym_static_assert] = STATE(1853), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1853), [aux_sym_source_file_repeat1] = STATE(1853), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5511), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5957), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1973] = { [sym_import_declaration] = STATE(1960), [sym_mixin_declaration] = STATE(1960), [sym__declaration] = STATE(1960), [sym__declaration2] = STATE(1960), [sym_variable_declaration] = STATE(1960), [sym_manifest_constant] = STATE(1960), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1960), [sym_alias_declaration] = STATE(1960), [sym_alias_reassign] = STATE(1960), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1960), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1960), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1960), [sym_union_declaration] = STATE(1960), [sym_postblit] = STATE(1960), [sym_invariant_declaration] = STATE(1960), [sym_class_declaration] = STATE(1960), [sym_constructor] = STATE(1960), [sym_destructor] = STATE(1960), [sym_alias_this] = STATE(1960), [sym_interface_declaration] = STATE(1960), [sym_enum_declaration] = STATE(1960), [sym_anonymous_enum_declaration] = STATE(1960), [sym_function_declaration] = STATE(1960), [sym_template_declaration] = STATE(1960), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1960), [sym_template_mixin] = STATE(1960), [sym_conditional_declaration] = STATE(1960), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1960), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1960), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1960), [sym_static_assert] = STATE(1960), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1960), [aux_sym_source_file_repeat1] = STATE(1960), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5959), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5961), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1974] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5497), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1975] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5963), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1976] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5965), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1977] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5967), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1978] = { [sym_import_declaration] = STATE(2340), [sym_mixin_declaration] = STATE(2340), [sym__declaration] = STATE(2340), [sym__declaration2] = STATE(2340), [sym_variable_declaration] = STATE(2340), [sym_manifest_constant] = STATE(2340), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2340), [sym_alias_declaration] = STATE(2340), [sym_alias_reassign] = STATE(2340), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2340), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2340), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2340), [sym_union_declaration] = STATE(2340), [sym_postblit] = STATE(2340), [sym_invariant_declaration] = STATE(2340), [sym_class_declaration] = STATE(2340), [sym_constructor] = STATE(2340), [sym_destructor] = STATE(2340), [sym_alias_this] = STATE(2340), [sym_interface_declaration] = STATE(2340), [sym_enum_declaration] = STATE(2340), [sym_anonymous_enum_declaration] = STATE(2340), [sym_function_declaration] = STATE(2340), [sym_template_declaration] = STATE(2340), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2340), [sym_template_mixin] = STATE(2340), [sym_conditional_declaration] = STATE(2340), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2340), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2340), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2340), [sym_static_assert] = STATE(2340), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2340), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5969), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5971), [anon_sym_COLON] = ACTIONS(5845), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1979] = { [sym_import_declaration] = STATE(1918), [sym_mixin_declaration] = STATE(1918), [sym__declaration] = STATE(1918), [sym__declaration2] = STATE(1918), [sym_variable_declaration] = STATE(1918), [sym_manifest_constant] = STATE(1918), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1918), [sym_alias_declaration] = STATE(1918), [sym_alias_reassign] = STATE(1918), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1918), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1918), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1918), [sym_union_declaration] = STATE(1918), [sym_postblit] = STATE(1918), [sym_invariant_declaration] = STATE(1918), [sym_class_declaration] = STATE(1918), [sym_constructor] = STATE(1918), [sym_destructor] = STATE(1918), [sym_alias_this] = STATE(1918), [sym_interface_declaration] = STATE(1918), [sym_enum_declaration] = STATE(1918), [sym_anonymous_enum_declaration] = STATE(1918), [sym_function_declaration] = STATE(1918), [sym_template_declaration] = STATE(1918), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1918), [sym_template_mixin] = STATE(1918), [sym_conditional_declaration] = STATE(1918), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1918), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1918), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1918), [sym_static_assert] = STATE(1918), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1918), [aux_sym_source_file_repeat1] = STATE(1918), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5973), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5975), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1980] = { [sym_import_declaration] = STATE(1910), [sym_mixin_declaration] = STATE(1910), [sym__declaration] = STATE(1910), [sym__declaration2] = STATE(1910), [sym_variable_declaration] = STATE(1910), [sym_manifest_constant] = STATE(1910), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1910), [sym_alias_declaration] = STATE(1910), [sym_alias_reassign] = STATE(1910), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1910), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1910), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1910), [sym_union_declaration] = STATE(1910), [sym_postblit] = STATE(1910), [sym_invariant_declaration] = STATE(1910), [sym_class_declaration] = STATE(1910), [sym_constructor] = STATE(1910), [sym_destructor] = STATE(1910), [sym_alias_this] = STATE(1910), [sym_interface_declaration] = STATE(1910), [sym_enum_declaration] = STATE(1910), [sym_anonymous_enum_declaration] = STATE(1910), [sym_function_declaration] = STATE(1910), [sym_template_declaration] = STATE(1910), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1910), [sym_template_mixin] = STATE(1910), [sym_conditional_declaration] = STATE(1910), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1910), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1910), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1910), [sym_static_assert] = STATE(1910), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1910), [aux_sym_source_file_repeat1] = STATE(1910), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5977), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5979), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1981] = { [sym_import_declaration] = STATE(1706), [sym_mixin_declaration] = STATE(1706), [sym__declaration] = STATE(1706), [sym__declaration2] = STATE(1706), [sym_variable_declaration] = STATE(1706), [sym_manifest_constant] = STATE(1706), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1706), [sym_alias_declaration] = STATE(1706), [sym_alias_reassign] = STATE(1706), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1706), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1706), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1706), [sym_union_declaration] = STATE(1706), [sym_postblit] = STATE(1706), [sym_invariant_declaration] = STATE(1706), [sym_class_declaration] = STATE(1706), [sym_constructor] = STATE(1706), [sym_destructor] = STATE(1706), [sym_alias_this] = STATE(1706), [sym_interface_declaration] = STATE(1706), [sym_enum_declaration] = STATE(1706), [sym_anonymous_enum_declaration] = STATE(1706), [sym_function_declaration] = STATE(1706), [sym_template_declaration] = STATE(1706), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1706), [sym_template_mixin] = STATE(1706), [sym_conditional_declaration] = STATE(1706), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1706), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1706), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1706), [sym_static_assert] = STATE(1706), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1706), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5981), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5983), [anon_sym_COLON] = ACTIONS(5761), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1982] = { [sym_import_declaration] = STATE(1952), [sym_mixin_declaration] = STATE(1952), [sym__declaration] = STATE(1952), [sym__declaration2] = STATE(1952), [sym_variable_declaration] = STATE(1952), [sym_manifest_constant] = STATE(1952), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1952), [sym_alias_declaration] = STATE(1952), [sym_alias_reassign] = STATE(1952), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1952), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1952), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1952), [sym_union_declaration] = STATE(1952), [sym_postblit] = STATE(1952), [sym_invariant_declaration] = STATE(1952), [sym_class_declaration] = STATE(1952), [sym_constructor] = STATE(1952), [sym_destructor] = STATE(1952), [sym_alias_this] = STATE(1952), [sym_interface_declaration] = STATE(1952), [sym_enum_declaration] = STATE(1952), [sym_anonymous_enum_declaration] = STATE(1952), [sym_function_declaration] = STATE(1952), [sym_template_declaration] = STATE(1952), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1952), [sym_template_mixin] = STATE(1952), [sym_conditional_declaration] = STATE(1952), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1952), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1952), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1952), [sym_static_assert] = STATE(1952), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1952), [aux_sym_source_file_repeat1] = STATE(1952), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5985), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5987), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1983] = { [sym_import_declaration] = STATE(1975), [sym_mixin_declaration] = STATE(1975), [sym__declaration] = STATE(1975), [sym__declaration2] = STATE(1975), [sym_variable_declaration] = STATE(1975), [sym_manifest_constant] = STATE(1975), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1975), [sym_alias_declaration] = STATE(1975), [sym_alias_reassign] = STATE(1975), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1975), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1975), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1975), [sym_union_declaration] = STATE(1975), [sym_postblit] = STATE(1975), [sym_invariant_declaration] = STATE(1975), [sym_class_declaration] = STATE(1975), [sym_constructor] = STATE(1975), [sym_destructor] = STATE(1975), [sym_alias_this] = STATE(1975), [sym_interface_declaration] = STATE(1975), [sym_enum_declaration] = STATE(1975), [sym_anonymous_enum_declaration] = STATE(1975), [sym_function_declaration] = STATE(1975), [sym_template_declaration] = STATE(1975), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1975), [sym_template_mixin] = STATE(1975), [sym_conditional_declaration] = STATE(1975), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1975), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1975), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1975), [sym_static_assert] = STATE(1975), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1975), [aux_sym_source_file_repeat1] = STATE(1975), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5989), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5991), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1984] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5715), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1985] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5993), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1986] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5995), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1987] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5959), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1988] = { [sym_import_declaration] = STATE(2496), [sym_mixin_declaration] = STATE(2496), [sym__declaration] = STATE(2496), [sym__declaration2] = STATE(2496), [sym_variable_declaration] = STATE(2496), [sym_manifest_constant] = STATE(2496), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2496), [sym_alias_declaration] = STATE(2496), [sym_alias_reassign] = STATE(2496), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2496), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2496), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2496), [sym_union_declaration] = STATE(2496), [sym_postblit] = STATE(2496), [sym_invariant_declaration] = STATE(2496), [sym_class_declaration] = STATE(2496), [sym_constructor] = STATE(2496), [sym_destructor] = STATE(2496), [sym_alias_this] = STATE(2496), [sym_interface_declaration] = STATE(2496), [sym_enum_declaration] = STATE(2496), [sym_anonymous_enum_declaration] = STATE(2496), [sym_function_declaration] = STATE(2496), [sym_template_declaration] = STATE(2496), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2496), [sym_template_mixin] = STATE(2496), [sym_conditional_declaration] = STATE(2496), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2496), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2496), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2496), [sym_static_assert] = STATE(2496), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2496), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5905), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5907), [anon_sym_COLON] = ACTIONS(5909), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1989] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5997), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1990] = { [sym_import_declaration] = STATE(1864), [sym_mixin_declaration] = STATE(1864), [sym__declaration] = STATE(1864), [sym__declaration2] = STATE(1864), [sym_variable_declaration] = STATE(1864), [sym_manifest_constant] = STATE(1864), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1864), [sym_alias_declaration] = STATE(1864), [sym_alias_reassign] = STATE(1864), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1864), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1864), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1864), [sym_union_declaration] = STATE(1864), [sym_postblit] = STATE(1864), [sym_invariant_declaration] = STATE(1864), [sym_class_declaration] = STATE(1864), [sym_constructor] = STATE(1864), [sym_destructor] = STATE(1864), [sym_alias_this] = STATE(1864), [sym_interface_declaration] = STATE(1864), [sym_enum_declaration] = STATE(1864), [sym_anonymous_enum_declaration] = STATE(1864), [sym_function_declaration] = STATE(1864), [sym_template_declaration] = STATE(1864), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1864), [sym_template_mixin] = STATE(1864), [sym_conditional_declaration] = STATE(1864), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1864), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1864), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1864), [sym_static_assert] = STATE(1864), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1864), [aux_sym_source_file_repeat1] = STATE(1864), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5999), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6001), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1991] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5927), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1992] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5989), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1993] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6003), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1994] = { [sym_import_declaration] = STATE(1828), [sym_mixin_declaration] = STATE(1828), [sym__declaration] = STATE(1828), [sym__declaration2] = STATE(1828), [sym_variable_declaration] = STATE(1828), [sym_manifest_constant] = STATE(1828), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1828), [sym_alias_declaration] = STATE(1828), [sym_alias_reassign] = STATE(1828), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1828), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1828), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1828), [sym_union_declaration] = STATE(1828), [sym_postblit] = STATE(1828), [sym_invariant_declaration] = STATE(1828), [sym_class_declaration] = STATE(1828), [sym_constructor] = STATE(1828), [sym_destructor] = STATE(1828), [sym_alias_this] = STATE(1828), [sym_interface_declaration] = STATE(1828), [sym_enum_declaration] = STATE(1828), [sym_anonymous_enum_declaration] = STATE(1828), [sym_function_declaration] = STATE(1828), [sym_template_declaration] = STATE(1828), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1828), [sym_template_mixin] = STATE(1828), [sym_conditional_declaration] = STATE(1828), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1828), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1828), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1828), [sym_static_assert] = STATE(1828), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1828), [aux_sym_source_file_repeat1] = STATE(1828), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6005), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6007), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1995] = { [sym_import_declaration] = STATE(2040), [sym_mixin_declaration] = STATE(2040), [sym__declaration] = STATE(2040), [sym__declaration2] = STATE(2040), [sym_variable_declaration] = STATE(2040), [sym_manifest_constant] = STATE(2040), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2040), [sym_alias_declaration] = STATE(2040), [sym_alias_reassign] = STATE(2040), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2040), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2040), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2040), [sym_union_declaration] = STATE(2040), [sym_postblit] = STATE(2040), [sym_invariant_declaration] = STATE(2040), [sym_class_declaration] = STATE(2040), [sym_constructor] = STATE(2040), [sym_destructor] = STATE(2040), [sym_alias_this] = STATE(2040), [sym_interface_declaration] = STATE(2040), [sym_enum_declaration] = STATE(2040), [sym_anonymous_enum_declaration] = STATE(2040), [sym_function_declaration] = STATE(2040), [sym_template_declaration] = STATE(2040), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2040), [sym_template_mixin] = STATE(2040), [sym_conditional_declaration] = STATE(2040), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2040), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2040), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2040), [sym_static_assert] = STATE(2040), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2040), [aux_sym_source_file_repeat1] = STATE(2040), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5769), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6009), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1996] = { [sym_import_declaration] = STATE(1818), [sym_mixin_declaration] = STATE(1818), [sym__declaration] = STATE(1818), [sym__declaration2] = STATE(1818), [sym_variable_declaration] = STATE(1818), [sym_manifest_constant] = STATE(1818), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1818), [sym_alias_declaration] = STATE(1818), [sym_alias_reassign] = STATE(1818), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1818), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1818), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1818), [sym_union_declaration] = STATE(1818), [sym_postblit] = STATE(1818), [sym_invariant_declaration] = STATE(1818), [sym_class_declaration] = STATE(1818), [sym_constructor] = STATE(1818), [sym_destructor] = STATE(1818), [sym_alias_this] = STATE(1818), [sym_interface_declaration] = STATE(1818), [sym_enum_declaration] = STATE(1818), [sym_anonymous_enum_declaration] = STATE(1818), [sym_function_declaration] = STATE(1818), [sym_template_declaration] = STATE(1818), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1818), [sym_template_mixin] = STATE(1818), [sym_conditional_declaration] = STATE(1818), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1818), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1818), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1818), [sym_static_assert] = STATE(1818), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1818), [aux_sym_source_file_repeat1] = STATE(1818), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6003), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6011), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1997] = { [sym_import_declaration] = STATE(2844), [sym_mixin_declaration] = STATE(2844), [sym__declaration] = STATE(2844), [sym__declaration2] = STATE(2844), [sym_variable_declaration] = STATE(2844), [sym_manifest_constant] = STATE(2844), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2844), [sym_alias_declaration] = STATE(2844), [sym_alias_reassign] = STATE(2844), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2844), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2844), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2844), [sym_union_declaration] = STATE(2844), [sym_postblit] = STATE(2844), [sym_invariant_declaration] = STATE(2844), [sym_class_declaration] = STATE(2844), [sym_constructor] = STATE(2844), [sym_destructor] = STATE(2844), [sym_alias_this] = STATE(2844), [sym_interface_declaration] = STATE(2844), [sym_enum_declaration] = STATE(2844), [sym_anonymous_enum_declaration] = STATE(2844), [sym_function_declaration] = STATE(2844), [sym_template_declaration] = STATE(2844), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2844), [sym_template_mixin] = STATE(2844), [sym_conditional_declaration] = STATE(2844), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2844), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2844), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2844), [sym_static_assert] = STATE(2844), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2844), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6013), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6015), [anon_sym_COLON] = ACTIONS(5585), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1998] = { [sym_import_declaration] = STATE(1846), [sym_mixin_declaration] = STATE(1846), [sym__declaration] = STATE(1846), [sym__declaration2] = STATE(1846), [sym_variable_declaration] = STATE(1846), [sym_manifest_constant] = STATE(1846), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1846), [sym_alias_declaration] = STATE(1846), [sym_alias_reassign] = STATE(1846), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1846), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1846), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1846), [sym_union_declaration] = STATE(1846), [sym_postblit] = STATE(1846), [sym_invariant_declaration] = STATE(1846), [sym_class_declaration] = STATE(1846), [sym_constructor] = STATE(1846), [sym_destructor] = STATE(1846), [sym_alias_this] = STATE(1846), [sym_interface_declaration] = STATE(1846), [sym_enum_declaration] = STATE(1846), [sym_anonymous_enum_declaration] = STATE(1846), [sym_function_declaration] = STATE(1846), [sym_template_declaration] = STATE(1846), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1846), [sym_template_mixin] = STATE(1846), [sym_conditional_declaration] = STATE(1846), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1846), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1846), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1846), [sym_static_assert] = STATE(1846), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1846), [aux_sym_source_file_repeat1] = STATE(1846), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5983), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6017), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [1999] = { [sym_import_declaration] = STATE(1954), [sym_mixin_declaration] = STATE(1954), [sym__declaration] = STATE(1954), [sym__declaration2] = STATE(1954), [sym_variable_declaration] = STATE(1954), [sym_manifest_constant] = STATE(1954), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1954), [sym_alias_declaration] = STATE(1954), [sym_alias_reassign] = STATE(1954), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1954), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1954), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1954), [sym_union_declaration] = STATE(1954), [sym_postblit] = STATE(1954), [sym_invariant_declaration] = STATE(1954), [sym_class_declaration] = STATE(1954), [sym_constructor] = STATE(1954), [sym_destructor] = STATE(1954), [sym_alias_this] = STATE(1954), [sym_interface_declaration] = STATE(1954), [sym_enum_declaration] = STATE(1954), [sym_anonymous_enum_declaration] = STATE(1954), [sym_function_declaration] = STATE(1954), [sym_template_declaration] = STATE(1954), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1954), [sym_template_mixin] = STATE(1954), [sym_conditional_declaration] = STATE(1954), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1954), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1954), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1954), [sym_static_assert] = STATE(1954), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1954), [aux_sym_source_file_repeat1] = STATE(1954), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6019), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6021), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2000] = { [sym_import_declaration] = STATE(2569), [sym_mixin_declaration] = STATE(2569), [sym__declaration] = STATE(2569), [sym__declaration2] = STATE(2569), [sym_variable_declaration] = STATE(2569), [sym_manifest_constant] = STATE(2569), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2569), [sym_alias_declaration] = STATE(2569), [sym_alias_reassign] = STATE(2569), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2569), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2569), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2569), [sym_union_declaration] = STATE(2569), [sym_postblit] = STATE(2569), [sym_invariant_declaration] = STATE(2569), [sym_class_declaration] = STATE(2569), [sym_constructor] = STATE(2569), [sym_destructor] = STATE(2569), [sym_alias_this] = STATE(2569), [sym_interface_declaration] = STATE(2569), [sym_enum_declaration] = STATE(2569), [sym_anonymous_enum_declaration] = STATE(2569), [sym_function_declaration] = STATE(2569), [sym_template_declaration] = STATE(2569), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2569), [sym_template_mixin] = STATE(2569), [sym_conditional_declaration] = STATE(2569), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2569), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2569), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2569), [sym_static_assert] = STATE(2569), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2569), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5941), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5943), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2001] = { [sym_import_declaration] = STATE(1559), [sym_mixin_declaration] = STATE(1559), [sym__declaration] = STATE(1559), [sym__declaration2] = STATE(1559), [sym_variable_declaration] = STATE(1559), [sym_manifest_constant] = STATE(1559), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1559), [sym_alias_declaration] = STATE(1559), [sym_alias_reassign] = STATE(1559), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1559), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1559), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1559), [sym_union_declaration] = STATE(1559), [sym_postblit] = STATE(1559), [sym_invariant_declaration] = STATE(1559), [sym_class_declaration] = STATE(1559), [sym_constructor] = STATE(1559), [sym_destructor] = STATE(1559), [sym_alias_this] = STATE(1559), [sym_interface_declaration] = STATE(1559), [sym_enum_declaration] = STATE(1559), [sym_anonymous_enum_declaration] = STATE(1559), [sym_function_declaration] = STATE(1559), [sym_template_declaration] = STATE(1559), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1559), [sym_template_mixin] = STATE(1559), [sym_conditional_declaration] = STATE(1559), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1559), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1559), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1559), [sym_static_assert] = STATE(1559), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1559), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6023), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5681), [anon_sym_COLON] = ACTIONS(6025), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2002] = { [sym_import_declaration] = STATE(1904), [sym_mixin_declaration] = STATE(1904), [sym__declaration] = STATE(1904), [sym__declaration2] = STATE(1904), [sym_variable_declaration] = STATE(1904), [sym_manifest_constant] = STATE(1904), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1904), [sym_alias_declaration] = STATE(1904), [sym_alias_reassign] = STATE(1904), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1904), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1904), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1904), [sym_union_declaration] = STATE(1904), [sym_postblit] = STATE(1904), [sym_invariant_declaration] = STATE(1904), [sym_class_declaration] = STATE(1904), [sym_constructor] = STATE(1904), [sym_destructor] = STATE(1904), [sym_alias_this] = STATE(1904), [sym_interface_declaration] = STATE(1904), [sym_enum_declaration] = STATE(1904), [sym_anonymous_enum_declaration] = STATE(1904), [sym_function_declaration] = STATE(1904), [sym_template_declaration] = STATE(1904), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1904), [sym_template_mixin] = STATE(1904), [sym_conditional_declaration] = STATE(1904), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1904), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1904), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1904), [sym_static_assert] = STATE(1904), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1904), [aux_sym_source_file_repeat1] = STATE(1904), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6027), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6029), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2003] = { [sym_import_declaration] = STATE(1486), [sym_mixin_declaration] = STATE(1486), [sym__declaration] = STATE(1486), [sym__declaration2] = STATE(1486), [sym_variable_declaration] = STATE(1486), [sym_manifest_constant] = STATE(1486), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1486), [sym_alias_declaration] = STATE(1486), [sym_alias_reassign] = STATE(1486), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1486), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1486), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1486), [sym_union_declaration] = STATE(1486), [sym_postblit] = STATE(1486), [sym_invariant_declaration] = STATE(1486), [sym_class_declaration] = STATE(1486), [sym_constructor] = STATE(1486), [sym_destructor] = STATE(1486), [sym_alias_this] = STATE(1486), [sym_interface_declaration] = STATE(1486), [sym_enum_declaration] = STATE(1486), [sym_anonymous_enum_declaration] = STATE(1486), [sym_function_declaration] = STATE(1486), [sym_template_declaration] = STATE(1486), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1486), [sym_template_mixin] = STATE(1486), [sym_conditional_declaration] = STATE(1486), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1486), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1486), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1486), [sym_static_assert] = STATE(1486), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1486), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6031), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6033), [anon_sym_COLON] = ACTIONS(5947), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2004] = { [sym_import_declaration] = STATE(2085), [sym_mixin_declaration] = STATE(2085), [sym__declaration] = STATE(2085), [sym__declaration2] = STATE(2085), [sym_variable_declaration] = STATE(2085), [sym_manifest_constant] = STATE(2085), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2085), [sym_alias_declaration] = STATE(2085), [sym_alias_reassign] = STATE(2085), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2085), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2085), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2085), [sym_union_declaration] = STATE(2085), [sym_postblit] = STATE(2085), [sym_invariant_declaration] = STATE(2085), [sym_class_declaration] = STATE(2085), [sym_constructor] = STATE(2085), [sym_destructor] = STATE(2085), [sym_alias_this] = STATE(2085), [sym_interface_declaration] = STATE(2085), [sym_enum_declaration] = STATE(2085), [sym_anonymous_enum_declaration] = STATE(2085), [sym_function_declaration] = STATE(2085), [sym_template_declaration] = STATE(2085), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2085), [sym_template_mixin] = STATE(2085), [sym_conditional_declaration] = STATE(2085), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2085), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2085), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2085), [sym_static_assert] = STATE(2085), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2085), [aux_sym_source_file_repeat1] = STATE(2085), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5627), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6035), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2005] = { [sym_import_declaration] = STATE(2690), [sym_mixin_declaration] = STATE(2690), [sym__declaration] = STATE(2690), [sym__declaration2] = STATE(2690), [sym_variable_declaration] = STATE(2690), [sym_manifest_constant] = STATE(2690), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2690), [sym_alias_declaration] = STATE(2690), [sym_alias_reassign] = STATE(2690), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2690), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2690), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2690), [sym_union_declaration] = STATE(2690), [sym_postblit] = STATE(2690), [sym_invariant_declaration] = STATE(2690), [sym_class_declaration] = STATE(2690), [sym_constructor] = STATE(2690), [sym_destructor] = STATE(2690), [sym_alias_this] = STATE(2690), [sym_interface_declaration] = STATE(2690), [sym_enum_declaration] = STATE(2690), [sym_anonymous_enum_declaration] = STATE(2690), [sym_function_declaration] = STATE(2690), [sym_template_declaration] = STATE(2690), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2690), [sym_template_mixin] = STATE(2690), [sym_conditional_declaration] = STATE(2690), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2690), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2690), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2690), [sym_static_assert] = STATE(2690), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2690), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6037), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5977), [anon_sym_COLON] = ACTIONS(6039), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2006] = { [sym_import_declaration] = STATE(1989), [sym_mixin_declaration] = STATE(1989), [sym__declaration] = STATE(1989), [sym__declaration2] = STATE(1989), [sym_variable_declaration] = STATE(1989), [sym_manifest_constant] = STATE(1989), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1989), [sym_alias_declaration] = STATE(1989), [sym_alias_reassign] = STATE(1989), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1989), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1989), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1989), [sym_union_declaration] = STATE(1989), [sym_postblit] = STATE(1989), [sym_invariant_declaration] = STATE(1989), [sym_class_declaration] = STATE(1989), [sym_constructor] = STATE(1989), [sym_destructor] = STATE(1989), [sym_alias_this] = STATE(1989), [sym_interface_declaration] = STATE(1989), [sym_enum_declaration] = STATE(1989), [sym_anonymous_enum_declaration] = STATE(1989), [sym_function_declaration] = STATE(1989), [sym_template_declaration] = STATE(1989), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1989), [sym_template_mixin] = STATE(1989), [sym_conditional_declaration] = STATE(1989), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1989), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1989), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1989), [sym_static_assert] = STATE(1989), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1989), [aux_sym_source_file_repeat1] = STATE(1989), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6041), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6043), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2007] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6045), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2008] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5977), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2009] = { [sym_import_declaration] = STATE(2031), [sym_mixin_declaration] = STATE(2031), [sym__declaration] = STATE(2031), [sym__declaration2] = STATE(2031), [sym_variable_declaration] = STATE(2031), [sym_manifest_constant] = STATE(2031), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2031), [sym_alias_declaration] = STATE(2031), [sym_alias_reassign] = STATE(2031), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2031), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2031), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2031), [sym_union_declaration] = STATE(2031), [sym_postblit] = STATE(2031), [sym_invariant_declaration] = STATE(2031), [sym_class_declaration] = STATE(2031), [sym_constructor] = STATE(2031), [sym_destructor] = STATE(2031), [sym_alias_this] = STATE(2031), [sym_interface_declaration] = STATE(2031), [sym_enum_declaration] = STATE(2031), [sym_anonymous_enum_declaration] = STATE(2031), [sym_function_declaration] = STATE(2031), [sym_template_declaration] = STATE(2031), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2031), [sym_template_mixin] = STATE(2031), [sym_conditional_declaration] = STATE(2031), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2031), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2031), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2031), [sym_static_assert] = STATE(2031), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2031), [aux_sym_source_file_repeat1] = STATE(2031), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6045), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6047), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2010] = { [sym_import_declaration] = STATE(2035), [sym_mixin_declaration] = STATE(2035), [sym__declaration] = STATE(2035), [sym__declaration2] = STATE(2035), [sym_variable_declaration] = STATE(2035), [sym_manifest_constant] = STATE(2035), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2035), [sym_alias_declaration] = STATE(2035), [sym_alias_reassign] = STATE(2035), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2035), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2035), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2035), [sym_union_declaration] = STATE(2035), [sym_postblit] = STATE(2035), [sym_invariant_declaration] = STATE(2035), [sym_class_declaration] = STATE(2035), [sym_constructor] = STATE(2035), [sym_destructor] = STATE(2035), [sym_alias_this] = STATE(2035), [sym_interface_declaration] = STATE(2035), [sym_enum_declaration] = STATE(2035), [sym_anonymous_enum_declaration] = STATE(2035), [sym_function_declaration] = STATE(2035), [sym_template_declaration] = STATE(2035), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2035), [sym_template_mixin] = STATE(2035), [sym_conditional_declaration] = STATE(2035), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2035), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2035), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2035), [sym_static_assert] = STATE(2035), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2035), [aux_sym_source_file_repeat1] = STATE(2035), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5519), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6049), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2011] = { [sym_import_declaration] = STATE(1949), [sym_mixin_declaration] = STATE(1949), [sym__declaration] = STATE(1949), [sym__declaration2] = STATE(1949), [sym_variable_declaration] = STATE(1949), [sym_manifest_constant] = STATE(1949), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1949), [sym_alias_declaration] = STATE(1949), [sym_alias_reassign] = STATE(1949), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1949), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1949), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1949), [sym_union_declaration] = STATE(1949), [sym_postblit] = STATE(1949), [sym_invariant_declaration] = STATE(1949), [sym_class_declaration] = STATE(1949), [sym_constructor] = STATE(1949), [sym_destructor] = STATE(1949), [sym_alias_this] = STATE(1949), [sym_interface_declaration] = STATE(1949), [sym_enum_declaration] = STATE(1949), [sym_anonymous_enum_declaration] = STATE(1949), [sym_function_declaration] = STATE(1949), [sym_template_declaration] = STATE(1949), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1949), [sym_template_mixin] = STATE(1949), [sym_conditional_declaration] = STATE(1949), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1949), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1949), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1949), [sym_static_assert] = STATE(1949), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1949), [aux_sym_source_file_repeat1] = STATE(1949), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6051), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6053), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2012] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6055), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2013] = { [sym_import_declaration] = STATE(2609), [sym_mixin_declaration] = STATE(2609), [sym__declaration] = STATE(2609), [sym__declaration2] = STATE(2609), [sym_variable_declaration] = STATE(2609), [sym_manifest_constant] = STATE(2609), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2609), [sym_alias_declaration] = STATE(2609), [sym_alias_reassign] = STATE(2609), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2609), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2609), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2609), [sym_union_declaration] = STATE(2609), [sym_postblit] = STATE(2609), [sym_invariant_declaration] = STATE(2609), [sym_class_declaration] = STATE(2609), [sym_constructor] = STATE(2609), [sym_destructor] = STATE(2609), [sym_alias_this] = STATE(2609), [sym_interface_declaration] = STATE(2609), [sym_enum_declaration] = STATE(2609), [sym_anonymous_enum_declaration] = STATE(2609), [sym_function_declaration] = STATE(2609), [sym_template_declaration] = STATE(2609), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2609), [sym_template_mixin] = STATE(2609), [sym_conditional_declaration] = STATE(2609), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2609), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2609), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2609), [sym_static_assert] = STATE(2609), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2609), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5671), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5673), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2014] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5519), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2015] = { [sym_import_declaration] = STATE(2073), [sym_mixin_declaration] = STATE(2073), [sym__declaration] = STATE(2073), [sym__declaration2] = STATE(2073), [sym_variable_declaration] = STATE(2073), [sym_manifest_constant] = STATE(2073), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2073), [sym_alias_declaration] = STATE(2073), [sym_alias_reassign] = STATE(2073), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2073), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2073), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2073), [sym_union_declaration] = STATE(2073), [sym_postblit] = STATE(2073), [sym_invariant_declaration] = STATE(2073), [sym_class_declaration] = STATE(2073), [sym_constructor] = STATE(2073), [sym_destructor] = STATE(2073), [sym_alias_this] = STATE(2073), [sym_interface_declaration] = STATE(2073), [sym_enum_declaration] = STATE(2073), [sym_anonymous_enum_declaration] = STATE(2073), [sym_function_declaration] = STATE(2073), [sym_template_declaration] = STATE(2073), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2073), [sym_template_mixin] = STATE(2073), [sym_conditional_declaration] = STATE(2073), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2073), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2073), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2073), [sym_static_assert] = STATE(2073), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2073), [aux_sym_source_file_repeat1] = STATE(2073), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5887), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6057), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2016] = { [sym_import_declaration] = STATE(2021), [sym_mixin_declaration] = STATE(2021), [sym__declaration] = STATE(2021), [sym__declaration2] = STATE(2021), [sym_variable_declaration] = STATE(2021), [sym_manifest_constant] = STATE(2021), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2021), [sym_alias_declaration] = STATE(2021), [sym_alias_reassign] = STATE(2021), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2021), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2021), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2021), [sym_union_declaration] = STATE(2021), [sym_postblit] = STATE(2021), [sym_invariant_declaration] = STATE(2021), [sym_class_declaration] = STATE(2021), [sym_constructor] = STATE(2021), [sym_destructor] = STATE(2021), [sym_alias_this] = STATE(2021), [sym_interface_declaration] = STATE(2021), [sym_enum_declaration] = STATE(2021), [sym_anonymous_enum_declaration] = STATE(2021), [sym_function_declaration] = STATE(2021), [sym_template_declaration] = STATE(2021), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2021), [sym_template_mixin] = STATE(2021), [sym_conditional_declaration] = STATE(2021), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2021), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2021), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2021), [sym_static_assert] = STATE(2021), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2021), [aux_sym_source_file_repeat1] = STATE(2021), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6059), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6061), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2017] = { [sym_import_declaration] = STATE(1986), [sym_mixin_declaration] = STATE(1986), [sym__declaration] = STATE(1986), [sym__declaration2] = STATE(1986), [sym_variable_declaration] = STATE(1986), [sym_manifest_constant] = STATE(1986), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1986), [sym_alias_declaration] = STATE(1986), [sym_alias_reassign] = STATE(1986), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1986), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1986), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1986), [sym_union_declaration] = STATE(1986), [sym_postblit] = STATE(1986), [sym_invariant_declaration] = STATE(1986), [sym_class_declaration] = STATE(1986), [sym_constructor] = STATE(1986), [sym_destructor] = STATE(1986), [sym_alias_this] = STATE(1986), [sym_interface_declaration] = STATE(1986), [sym_enum_declaration] = STATE(1986), [sym_anonymous_enum_declaration] = STATE(1986), [sym_function_declaration] = STATE(1986), [sym_template_declaration] = STATE(1986), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1986), [sym_template_mixin] = STATE(1986), [sym_conditional_declaration] = STATE(1986), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1986), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1986), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1986), [sym_static_assert] = STATE(1986), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1986), [aux_sym_source_file_repeat1] = STATE(1986), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6063), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6065), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2018] = { [sym_import_declaration] = STATE(1976), [sym_mixin_declaration] = STATE(1976), [sym__declaration] = STATE(1976), [sym__declaration2] = STATE(1976), [sym_variable_declaration] = STATE(1976), [sym_manifest_constant] = STATE(1976), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1976), [sym_alias_declaration] = STATE(1976), [sym_alias_reassign] = STATE(1976), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1976), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1976), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1976), [sym_union_declaration] = STATE(1976), [sym_postblit] = STATE(1976), [sym_invariant_declaration] = STATE(1976), [sym_class_declaration] = STATE(1976), [sym_constructor] = STATE(1976), [sym_destructor] = STATE(1976), [sym_alias_this] = STATE(1976), [sym_interface_declaration] = STATE(1976), [sym_enum_declaration] = STATE(1976), [sym_anonymous_enum_declaration] = STATE(1976), [sym_function_declaration] = STATE(1976), [sym_template_declaration] = STATE(1976), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1976), [sym_template_mixin] = STATE(1976), [sym_conditional_declaration] = STATE(1976), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1976), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1976), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1976), [sym_static_assert] = STATE(1976), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1976), [aux_sym_source_file_repeat1] = STATE(1976), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5993), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6067), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2019] = { [sym_import_declaration] = STATE(2096), [sym_mixin_declaration] = STATE(2096), [sym__declaration] = STATE(2096), [sym__declaration2] = STATE(2096), [sym_variable_declaration] = STATE(2096), [sym_manifest_constant] = STATE(2096), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2096), [sym_alias_declaration] = STATE(2096), [sym_alias_reassign] = STATE(2096), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2096), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2096), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2096), [sym_union_declaration] = STATE(2096), [sym_postblit] = STATE(2096), [sym_invariant_declaration] = STATE(2096), [sym_class_declaration] = STATE(2096), [sym_constructor] = STATE(2096), [sym_destructor] = STATE(2096), [sym_alias_this] = STATE(2096), [sym_interface_declaration] = STATE(2096), [sym_enum_declaration] = STATE(2096), [sym_anonymous_enum_declaration] = STATE(2096), [sym_function_declaration] = STATE(2096), [sym_template_declaration] = STATE(2096), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2096), [sym_template_mixin] = STATE(2096), [sym_conditional_declaration] = STATE(2096), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2096), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2096), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2096), [sym_static_assert] = STATE(2096), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2096), [aux_sym_source_file_repeat1] = STATE(2096), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6069), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6071), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2020] = { [sym_import_declaration] = STATE(2815), [sym_mixin_declaration] = STATE(2815), [sym__declaration] = STATE(2815), [sym__declaration2] = STATE(2815), [sym_variable_declaration] = STATE(2815), [sym_manifest_constant] = STATE(2815), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2815), [sym_alias_declaration] = STATE(2815), [sym_alias_reassign] = STATE(2815), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2815), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2815), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2815), [sym_union_declaration] = STATE(2815), [sym_postblit] = STATE(2815), [sym_invariant_declaration] = STATE(2815), [sym_class_declaration] = STATE(2815), [sym_constructor] = STATE(2815), [sym_destructor] = STATE(2815), [sym_alias_this] = STATE(2815), [sym_interface_declaration] = STATE(2815), [sym_enum_declaration] = STATE(2815), [sym_anonymous_enum_declaration] = STATE(2815), [sym_function_declaration] = STATE(2815), [sym_template_declaration] = STATE(2815), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2815), [sym_template_mixin] = STATE(2815), [sym_conditional_declaration] = STATE(2815), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2815), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2815), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2815), [sym_static_assert] = STATE(2815), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2815), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6073), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6051), [anon_sym_COLON] = ACTIONS(6075), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2021] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6077), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2022] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6079), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2023] = { [sym_import_declaration] = STATE(1992), [sym_mixin_declaration] = STATE(1992), [sym__declaration] = STATE(1992), [sym__declaration2] = STATE(1992), [sym_variable_declaration] = STATE(1992), [sym_manifest_constant] = STATE(1992), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1992), [sym_alias_declaration] = STATE(1992), [sym_alias_reassign] = STATE(1992), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1992), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1992), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1992), [sym_union_declaration] = STATE(1992), [sym_postblit] = STATE(1992), [sym_invariant_declaration] = STATE(1992), [sym_class_declaration] = STATE(1992), [sym_constructor] = STATE(1992), [sym_destructor] = STATE(1992), [sym_alias_this] = STATE(1992), [sym_interface_declaration] = STATE(1992), [sym_enum_declaration] = STATE(1992), [sym_anonymous_enum_declaration] = STATE(1992), [sym_function_declaration] = STATE(1992), [sym_template_declaration] = STATE(1992), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1992), [sym_template_mixin] = STATE(1992), [sym_conditional_declaration] = STATE(1992), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1992), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1992), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1992), [sym_static_assert] = STATE(1992), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1992), [aux_sym_source_file_repeat1] = STATE(1992), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5565), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6081), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2024] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6083), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2025] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6085), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2026] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6087), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2027] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5565), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2028] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6041), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2029] = { [sym_import_declaration] = STATE(2724), [sym_mixin_declaration] = STATE(2724), [sym__declaration] = STATE(2724), [sym__declaration2] = STATE(2724), [sym_variable_declaration] = STATE(2724), [sym_manifest_constant] = STATE(2724), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2724), [sym_alias_declaration] = STATE(2724), [sym_alias_reassign] = STATE(2724), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2724), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2724), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2724), [sym_union_declaration] = STATE(2724), [sym_postblit] = STATE(2724), [sym_invariant_declaration] = STATE(2724), [sym_class_declaration] = STATE(2724), [sym_constructor] = STATE(2724), [sym_destructor] = STATE(2724), [sym_alias_this] = STATE(2724), [sym_interface_declaration] = STATE(2724), [sym_enum_declaration] = STATE(2724), [sym_anonymous_enum_declaration] = STATE(2724), [sym_function_declaration] = STATE(2724), [sym_template_declaration] = STATE(2724), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2724), [sym_template_mixin] = STATE(2724), [sym_conditional_declaration] = STATE(2724), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2724), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2724), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2724), [sym_static_assert] = STATE(2724), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2724), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5633), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5635), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2030] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6063), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2031] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6089), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2032] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6091), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2033] = { [sym_import_declaration] = STATE(1868), [sym_mixin_declaration] = STATE(1868), [sym__declaration] = STATE(1868), [sym__declaration2] = STATE(1868), [sym_variable_declaration] = STATE(1868), [sym_manifest_constant] = STATE(1868), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1868), [sym_alias_declaration] = STATE(1868), [sym_alias_reassign] = STATE(1868), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1868), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1868), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1868), [sym_union_declaration] = STATE(1868), [sym_postblit] = STATE(1868), [sym_invariant_declaration] = STATE(1868), [sym_class_declaration] = STATE(1868), [sym_constructor] = STATE(1868), [sym_destructor] = STATE(1868), [sym_alias_this] = STATE(1868), [sym_interface_declaration] = STATE(1868), [sym_enum_declaration] = STATE(1868), [sym_anonymous_enum_declaration] = STATE(1868), [sym_function_declaration] = STATE(1868), [sym_template_declaration] = STATE(1868), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1868), [sym_template_mixin] = STATE(1868), [sym_conditional_declaration] = STATE(1868), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1868), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1868), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1868), [sym_static_assert] = STATE(1868), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1868), [aux_sym_source_file_repeat1] = STATE(1868), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5833), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6093), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2034] = { [sym_import_declaration] = STATE(1905), [sym_mixin_declaration] = STATE(1905), [sym__declaration] = STATE(1905), [sym__declaration2] = STATE(1905), [sym_variable_declaration] = STATE(1905), [sym_manifest_constant] = STATE(1905), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1905), [sym_alias_declaration] = STATE(1905), [sym_alias_reassign] = STATE(1905), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1905), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1905), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1905), [sym_union_declaration] = STATE(1905), [sym_postblit] = STATE(1905), [sym_invariant_declaration] = STATE(1905), [sym_class_declaration] = STATE(1905), [sym_constructor] = STATE(1905), [sym_destructor] = STATE(1905), [sym_alias_this] = STATE(1905), [sym_interface_declaration] = STATE(1905), [sym_enum_declaration] = STATE(1905), [sym_anonymous_enum_declaration] = STATE(1905), [sym_function_declaration] = STATE(1905), [sym_template_declaration] = STATE(1905), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1905), [sym_template_mixin] = STATE(1905), [sym_conditional_declaration] = STATE(1905), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1905), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1905), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1905), [sym_static_assert] = STATE(1905), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1905), [aux_sym_source_file_repeat1] = STATE(1905), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5903), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6095), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2035] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5721), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2036] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6097), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2037] = { [sym_import_declaration] = STATE(1941), [sym_mixin_declaration] = STATE(1941), [sym__declaration] = STATE(1941), [sym__declaration2] = STATE(1941), [sym_variable_declaration] = STATE(1941), [sym_manifest_constant] = STATE(1941), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1941), [sym_alias_declaration] = STATE(1941), [sym_alias_reassign] = STATE(1941), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1941), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1941), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1941), [sym_union_declaration] = STATE(1941), [sym_postblit] = STATE(1941), [sym_invariant_declaration] = STATE(1941), [sym_class_declaration] = STATE(1941), [sym_constructor] = STATE(1941), [sym_destructor] = STATE(1941), [sym_alias_this] = STATE(1941), [sym_interface_declaration] = STATE(1941), [sym_enum_declaration] = STATE(1941), [sym_anonymous_enum_declaration] = STATE(1941), [sym_function_declaration] = STATE(1941), [sym_template_declaration] = STATE(1941), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1941), [sym_template_mixin] = STATE(1941), [sym_conditional_declaration] = STATE(1941), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1941), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1941), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1941), [sym_static_assert] = STATE(1941), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1941), [aux_sym_source_file_repeat1] = STATE(1941), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5721), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6099), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2038] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6101), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2039] = { [sym_import_declaration] = STATE(2690), [sym_mixin_declaration] = STATE(2690), [sym__declaration] = STATE(2690), [sym__declaration2] = STATE(2690), [sym_variable_declaration] = STATE(2690), [sym_manifest_constant] = STATE(2690), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2690), [sym_alias_declaration] = STATE(2690), [sym_alias_reassign] = STATE(2690), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2690), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2690), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2690), [sym_union_declaration] = STATE(2690), [sym_postblit] = STATE(2690), [sym_invariant_declaration] = STATE(2690), [sym_class_declaration] = STATE(2690), [sym_constructor] = STATE(2690), [sym_destructor] = STATE(2690), [sym_alias_this] = STATE(2690), [sym_interface_declaration] = STATE(2690), [sym_enum_declaration] = STATE(2690), [sym_anonymous_enum_declaration] = STATE(2690), [sym_function_declaration] = STATE(2690), [sym_template_declaration] = STATE(2690), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2690), [sym_template_mixin] = STATE(2690), [sym_conditional_declaration] = STATE(2690), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2690), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2690), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2690), [sym_static_assert] = STATE(2690), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2690), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6037), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5977), [anon_sym_COLON] = ACTIONS(5541), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2040] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6103), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2041] = { [sym_import_declaration] = STATE(1833), [sym_mixin_declaration] = STATE(1833), [sym__declaration] = STATE(1833), [sym__declaration2] = STATE(1833), [sym_variable_declaration] = STATE(1833), [sym_manifest_constant] = STATE(1833), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1833), [sym_alias_declaration] = STATE(1833), [sym_alias_reassign] = STATE(1833), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1833), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1833), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1833), [sym_union_declaration] = STATE(1833), [sym_postblit] = STATE(1833), [sym_invariant_declaration] = STATE(1833), [sym_class_declaration] = STATE(1833), [sym_constructor] = STATE(1833), [sym_destructor] = STATE(1833), [sym_alias_this] = STATE(1833), [sym_interface_declaration] = STATE(1833), [sym_enum_declaration] = STATE(1833), [sym_anonymous_enum_declaration] = STATE(1833), [sym_function_declaration] = STATE(1833), [sym_template_declaration] = STATE(1833), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1833), [sym_template_mixin] = STATE(1833), [sym_conditional_declaration] = STATE(1833), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1833), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1833), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1833), [sym_static_assert] = STATE(1833), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1833), [aux_sym_source_file_repeat1] = STATE(1833), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5513), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6105), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2042] = { [sym_import_declaration] = STATE(2863), [sym_mixin_declaration] = STATE(2863), [sym__declaration] = STATE(2863), [sym__declaration2] = STATE(2863), [sym_variable_declaration] = STATE(2863), [sym_manifest_constant] = STATE(2863), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2863), [sym_alias_declaration] = STATE(2863), [sym_alias_reassign] = STATE(2863), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2863), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2863), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2863), [sym_union_declaration] = STATE(2863), [sym_postblit] = STATE(2863), [sym_invariant_declaration] = STATE(2863), [sym_class_declaration] = STATE(2863), [sym_constructor] = STATE(2863), [sym_destructor] = STATE(2863), [sym_alias_this] = STATE(2863), [sym_interface_declaration] = STATE(2863), [sym_enum_declaration] = STATE(2863), [sym_anonymous_enum_declaration] = STATE(2863), [sym_function_declaration] = STATE(2863), [sym_template_declaration] = STATE(2863), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2863), [sym_template_mixin] = STATE(2863), [sym_conditional_declaration] = STATE(2863), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2863), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2863), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2863), [sym_static_assert] = STATE(2863), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2863), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6107), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6109), [anon_sym_COLON] = ACTIONS(6111), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2043] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5833), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2044] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6113), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2045] = { [sym_import_declaration] = STATE(2278), [sym_mixin_declaration] = STATE(2278), [sym__declaration] = STATE(2278), [sym__declaration2] = STATE(2278), [sym_variable_declaration] = STATE(2278), [sym_manifest_constant] = STATE(2278), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2278), [sym_alias_declaration] = STATE(2278), [sym_alias_reassign] = STATE(2278), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2278), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2278), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2278), [sym_union_declaration] = STATE(2278), [sym_postblit] = STATE(2278), [sym_invariant_declaration] = STATE(2278), [sym_class_declaration] = STATE(2278), [sym_constructor] = STATE(2278), [sym_destructor] = STATE(2278), [sym_alias_this] = STATE(2278), [sym_interface_declaration] = STATE(2278), [sym_enum_declaration] = STATE(2278), [sym_anonymous_enum_declaration] = STATE(2278), [sym_function_declaration] = STATE(2278), [sym_template_declaration] = STATE(2278), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2278), [sym_template_mixin] = STATE(2278), [sym_conditional_declaration] = STATE(2278), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2278), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2278), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2278), [sym_static_assert] = STATE(2278), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2278), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5719), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5721), [anon_sym_COLON] = ACTIONS(6025), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2046] = { [sym_import_declaration] = STATE(1843), [sym_mixin_declaration] = STATE(1843), [sym__declaration] = STATE(1843), [sym__declaration2] = STATE(1843), [sym_variable_declaration] = STATE(1843), [sym_manifest_constant] = STATE(1843), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1843), [sym_alias_declaration] = STATE(1843), [sym_alias_reassign] = STATE(1843), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1843), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1843), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1843), [sym_union_declaration] = STATE(1843), [sym_postblit] = STATE(1843), [sym_invariant_declaration] = STATE(1843), [sym_class_declaration] = STATE(1843), [sym_constructor] = STATE(1843), [sym_destructor] = STATE(1843), [sym_alias_this] = STATE(1843), [sym_interface_declaration] = STATE(1843), [sym_enum_declaration] = STATE(1843), [sym_anonymous_enum_declaration] = STATE(1843), [sym_function_declaration] = STATE(1843), [sym_template_declaration] = STATE(1843), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1843), [sym_template_mixin] = STATE(1843), [sym_conditional_declaration] = STATE(1843), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1843), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1843), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1843), [sym_static_assert] = STATE(1843), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1843), [aux_sym_source_file_repeat1] = STATE(1843), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6115), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6117), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2047] = { [sym_import_declaration] = STATE(2082), [sym_mixin_declaration] = STATE(2082), [sym__declaration] = STATE(2082), [sym__declaration2] = STATE(2082), [sym_variable_declaration] = STATE(2082), [sym_manifest_constant] = STATE(2082), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2082), [sym_alias_declaration] = STATE(2082), [sym_alias_reassign] = STATE(2082), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2082), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2082), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2082), [sym_union_declaration] = STATE(2082), [sym_postblit] = STATE(2082), [sym_invariant_declaration] = STATE(2082), [sym_class_declaration] = STATE(2082), [sym_constructor] = STATE(2082), [sym_destructor] = STATE(2082), [sym_alias_this] = STATE(2082), [sym_interface_declaration] = STATE(2082), [sym_enum_declaration] = STATE(2082), [sym_anonymous_enum_declaration] = STATE(2082), [sym_function_declaration] = STATE(2082), [sym_template_declaration] = STATE(2082), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2082), [sym_template_mixin] = STATE(2082), [sym_conditional_declaration] = STATE(2082), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2082), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2082), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2082), [sym_static_assert] = STATE(2082), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2082), [aux_sym_source_file_repeat1] = STATE(2082), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6119), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6121), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2048] = { [sym_import_declaration] = STATE(1969), [sym_mixin_declaration] = STATE(1969), [sym__declaration] = STATE(1969), [sym__declaration2] = STATE(1969), [sym_variable_declaration] = STATE(1969), [sym_manifest_constant] = STATE(1969), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1969), [sym_alias_declaration] = STATE(1969), [sym_alias_reassign] = STATE(1969), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1969), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1969), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1969), [sym_union_declaration] = STATE(1969), [sym_postblit] = STATE(1969), [sym_invariant_declaration] = STATE(1969), [sym_class_declaration] = STATE(1969), [sym_constructor] = STATE(1969), [sym_destructor] = STATE(1969), [sym_alias_this] = STATE(1969), [sym_interface_declaration] = STATE(1969), [sym_enum_declaration] = STATE(1969), [sym_anonymous_enum_declaration] = STATE(1969), [sym_function_declaration] = STATE(1969), [sym_template_declaration] = STATE(1969), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1969), [sym_template_mixin] = STATE(1969), [sym_conditional_declaration] = STATE(1969), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1969), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1969), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1969), [sym_static_assert] = STATE(1969), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1969), [aux_sym_source_file_repeat1] = STATE(1969), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6101), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6123), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2049] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6125), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2050] = { [sym_import_declaration] = STATE(1866), [sym_mixin_declaration] = STATE(1866), [sym__declaration] = STATE(1866), [sym__declaration2] = STATE(1866), [sym_variable_declaration] = STATE(1866), [sym_manifest_constant] = STATE(1866), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1866), [sym_alias_declaration] = STATE(1866), [sym_alias_reassign] = STATE(1866), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1866), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1866), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1866), [sym_union_declaration] = STATE(1866), [sym_postblit] = STATE(1866), [sym_invariant_declaration] = STATE(1866), [sym_class_declaration] = STATE(1866), [sym_constructor] = STATE(1866), [sym_destructor] = STATE(1866), [sym_alias_this] = STATE(1866), [sym_interface_declaration] = STATE(1866), [sym_enum_declaration] = STATE(1866), [sym_anonymous_enum_declaration] = STATE(1866), [sym_function_declaration] = STATE(1866), [sym_template_declaration] = STATE(1866), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1866), [sym_template_mixin] = STATE(1866), [sym_conditional_declaration] = STATE(1866), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1866), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1866), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1866), [sym_static_assert] = STATE(1866), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1866), [aux_sym_source_file_repeat1] = STATE(1866), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6127), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6129), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2051] = { [sym_import_declaration] = STATE(2026), [sym_mixin_declaration] = STATE(2026), [sym__declaration] = STATE(2026), [sym__declaration2] = STATE(2026), [sym_variable_declaration] = STATE(2026), [sym_manifest_constant] = STATE(2026), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2026), [sym_alias_declaration] = STATE(2026), [sym_alias_reassign] = STATE(2026), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2026), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2026), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2026), [sym_union_declaration] = STATE(2026), [sym_postblit] = STATE(2026), [sym_invariant_declaration] = STATE(2026), [sym_class_declaration] = STATE(2026), [sym_constructor] = STATE(2026), [sym_destructor] = STATE(2026), [sym_alias_this] = STATE(2026), [sym_interface_declaration] = STATE(2026), [sym_enum_declaration] = STATE(2026), [sym_anonymous_enum_declaration] = STATE(2026), [sym_function_declaration] = STATE(2026), [sym_template_declaration] = STATE(2026), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2026), [sym_template_mixin] = STATE(2026), [sym_conditional_declaration] = STATE(2026), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2026), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2026), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2026), [sym_static_assert] = STATE(2026), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2026), [aux_sym_source_file_repeat1] = STATE(2026), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6131), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6133), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2052] = { [sym_import_declaration] = STATE(1874), [sym_mixin_declaration] = STATE(1874), [sym__declaration] = STATE(1874), [sym__declaration2] = STATE(1874), [sym_variable_declaration] = STATE(1874), [sym_manifest_constant] = STATE(1874), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1874), [sym_alias_declaration] = STATE(1874), [sym_alias_reassign] = STATE(1874), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1874), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1874), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1874), [sym_union_declaration] = STATE(1874), [sym_postblit] = STATE(1874), [sym_invariant_declaration] = STATE(1874), [sym_class_declaration] = STATE(1874), [sym_constructor] = STATE(1874), [sym_destructor] = STATE(1874), [sym_alias_this] = STATE(1874), [sym_interface_declaration] = STATE(1874), [sym_enum_declaration] = STATE(1874), [sym_anonymous_enum_declaration] = STATE(1874), [sym_function_declaration] = STATE(1874), [sym_template_declaration] = STATE(1874), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1874), [sym_template_mixin] = STATE(1874), [sym_conditional_declaration] = STATE(1874), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1874), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1874), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1874), [sym_static_assert] = STATE(1874), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1874), [aux_sym_source_file_repeat1] = STATE(1874), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6089), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6135), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2053] = { [sym_import_declaration] = STATE(2078), [sym_mixin_declaration] = STATE(2078), [sym__declaration] = STATE(2078), [sym__declaration2] = STATE(2078), [sym_variable_declaration] = STATE(2078), [sym_manifest_constant] = STATE(2078), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2078), [sym_alias_declaration] = STATE(2078), [sym_alias_reassign] = STATE(2078), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2078), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2078), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2078), [sym_union_declaration] = STATE(2078), [sym_postblit] = STATE(2078), [sym_invariant_declaration] = STATE(2078), [sym_class_declaration] = STATE(2078), [sym_constructor] = STATE(2078), [sym_destructor] = STATE(2078), [sym_alias_this] = STATE(2078), [sym_interface_declaration] = STATE(2078), [sym_enum_declaration] = STATE(2078), [sym_anonymous_enum_declaration] = STATE(2078), [sym_function_declaration] = STATE(2078), [sym_template_declaration] = STATE(2078), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2078), [sym_template_mixin] = STATE(2078), [sym_conditional_declaration] = STATE(2078), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2078), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2078), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2078), [sym_static_assert] = STATE(2078), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2078), [aux_sym_source_file_repeat1] = STATE(2078), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6097), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6137), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2054] = { [sym_import_declaration] = STATE(2032), [sym_mixin_declaration] = STATE(2032), [sym__declaration] = STATE(2032), [sym__declaration2] = STATE(2032), [sym_variable_declaration] = STATE(2032), [sym_manifest_constant] = STATE(2032), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2032), [sym_alias_declaration] = STATE(2032), [sym_alias_reassign] = STATE(2032), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2032), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2032), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2032), [sym_union_declaration] = STATE(2032), [sym_postblit] = STATE(2032), [sym_invariant_declaration] = STATE(2032), [sym_class_declaration] = STATE(2032), [sym_constructor] = STATE(2032), [sym_destructor] = STATE(2032), [sym_alias_this] = STATE(2032), [sym_interface_declaration] = STATE(2032), [sym_enum_declaration] = STATE(2032), [sym_anonymous_enum_declaration] = STATE(2032), [sym_function_declaration] = STATE(2032), [sym_template_declaration] = STATE(2032), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2032), [sym_template_mixin] = STATE(2032), [sym_conditional_declaration] = STATE(2032), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2032), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2032), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2032), [sym_static_assert] = STATE(2032), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2032), [aux_sym_source_file_repeat1] = STATE(2032), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6103), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6139), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2055] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6131), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2056] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6141), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2057] = { [sym_import_declaration] = STATE(2025), [sym_mixin_declaration] = STATE(2025), [sym__declaration] = STATE(2025), [sym__declaration2] = STATE(2025), [sym_variable_declaration] = STATE(2025), [sym_manifest_constant] = STATE(2025), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2025), [sym_alias_declaration] = STATE(2025), [sym_alias_reassign] = STATE(2025), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2025), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2025), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2025), [sym_union_declaration] = STATE(2025), [sym_postblit] = STATE(2025), [sym_invariant_declaration] = STATE(2025), [sym_class_declaration] = STATE(2025), [sym_constructor] = STATE(2025), [sym_destructor] = STATE(2025), [sym_alias_this] = STATE(2025), [sym_interface_declaration] = STATE(2025), [sym_enum_declaration] = STATE(2025), [sym_anonymous_enum_declaration] = STATE(2025), [sym_function_declaration] = STATE(2025), [sym_template_declaration] = STATE(2025), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2025), [sym_template_mixin] = STATE(2025), [sym_conditional_declaration] = STATE(2025), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2025), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2025), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2025), [sym_static_assert] = STATE(2025), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2025), [aux_sym_source_file_repeat1] = STATE(2025), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6143), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6145), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2058] = { [sym_import_declaration] = STATE(1896), [sym_mixin_declaration] = STATE(1896), [sym__declaration] = STATE(1896), [sym__declaration2] = STATE(1896), [sym_variable_declaration] = STATE(1896), [sym_manifest_constant] = STATE(1896), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1896), [sym_alias_declaration] = STATE(1896), [sym_alias_reassign] = STATE(1896), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1896), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1896), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1896), [sym_union_declaration] = STATE(1896), [sym_postblit] = STATE(1896), [sym_invariant_declaration] = STATE(1896), [sym_class_declaration] = STATE(1896), [sym_constructor] = STATE(1896), [sym_destructor] = STATE(1896), [sym_alias_this] = STATE(1896), [sym_interface_declaration] = STATE(1896), [sym_enum_declaration] = STATE(1896), [sym_anonymous_enum_declaration] = STATE(1896), [sym_function_declaration] = STATE(1896), [sym_template_declaration] = STATE(1896), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1896), [sym_template_mixin] = STATE(1896), [sym_conditional_declaration] = STATE(1896), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1896), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1896), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1896), [sym_static_assert] = STATE(1896), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1896), [aux_sym_source_file_repeat1] = STATE(1896), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6015), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6147), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2059] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6149), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2060] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6151), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2061] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6153), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2062] = { [sym_import_declaration] = STATE(1984), [sym_mixin_declaration] = STATE(1984), [sym__declaration] = STATE(1984), [sym__declaration2] = STATE(1984), [sym_variable_declaration] = STATE(1984), [sym_manifest_constant] = STATE(1984), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1984), [sym_alias_declaration] = STATE(1984), [sym_alias_reassign] = STATE(1984), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1984), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1984), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1984), [sym_union_declaration] = STATE(1984), [sym_postblit] = STATE(1984), [sym_invariant_declaration] = STATE(1984), [sym_class_declaration] = STATE(1984), [sym_constructor] = STATE(1984), [sym_destructor] = STATE(1984), [sym_alias_this] = STATE(1984), [sym_interface_declaration] = STATE(1984), [sym_enum_declaration] = STATE(1984), [sym_anonymous_enum_declaration] = STATE(1984), [sym_function_declaration] = STATE(1984), [sym_template_declaration] = STATE(1984), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1984), [sym_template_mixin] = STATE(1984), [sym_conditional_declaration] = STATE(1984), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1984), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1984), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1984), [sym_static_assert] = STATE(1984), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1984), [aux_sym_source_file_repeat1] = STATE(1984), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5753), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6155), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2063] = { [sym_import_declaration] = STATE(2030), [sym_mixin_declaration] = STATE(2030), [sym__declaration] = STATE(2030), [sym__declaration2] = STATE(2030), [sym_variable_declaration] = STATE(2030), [sym_manifest_constant] = STATE(2030), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2030), [sym_alias_declaration] = STATE(2030), [sym_alias_reassign] = STATE(2030), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2030), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2030), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2030), [sym_union_declaration] = STATE(2030), [sym_postblit] = STATE(2030), [sym_invariant_declaration] = STATE(2030), [sym_class_declaration] = STATE(2030), [sym_constructor] = STATE(2030), [sym_destructor] = STATE(2030), [sym_alias_this] = STATE(2030), [sym_interface_declaration] = STATE(2030), [sym_enum_declaration] = STATE(2030), [sym_anonymous_enum_declaration] = STATE(2030), [sym_function_declaration] = STATE(2030), [sym_template_declaration] = STATE(2030), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2030), [sym_template_mixin] = STATE(2030), [sym_conditional_declaration] = STATE(2030), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2030), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2030), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2030), [sym_static_assert] = STATE(2030), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2030), [aux_sym_source_file_repeat1] = STATE(2030), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6157), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6159), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2064] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6157), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2065] = { [sym_import_declaration] = STATE(2828), [sym_mixin_declaration] = STATE(2828), [sym__declaration] = STATE(2828), [sym__declaration2] = STATE(2828), [sym_variable_declaration] = STATE(2828), [sym_manifest_constant] = STATE(2828), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2828), [sym_alias_declaration] = STATE(2828), [sym_alias_reassign] = STATE(2828), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2828), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2828), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2828), [sym_union_declaration] = STATE(2828), [sym_postblit] = STATE(2828), [sym_invariant_declaration] = STATE(2828), [sym_class_declaration] = STATE(2828), [sym_constructor] = STATE(2828), [sym_destructor] = STATE(2828), [sym_alias_this] = STATE(2828), [sym_interface_declaration] = STATE(2828), [sym_enum_declaration] = STATE(2828), [sym_anonymous_enum_declaration] = STATE(2828), [sym_function_declaration] = STATE(2828), [sym_template_declaration] = STATE(2828), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2828), [sym_template_mixin] = STATE(2828), [sym_conditional_declaration] = STATE(2828), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2828), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2828), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2828), [sym_static_assert] = STATE(2828), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2828), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6161), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6163), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2066] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6143), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2067] = { [sym_import_declaration] = STATE(2186), [sym_mixin_declaration] = STATE(2186), [sym__declaration] = STATE(2186), [sym__declaration2] = STATE(2186), [sym_variable_declaration] = STATE(2186), [sym_manifest_constant] = STATE(2186), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2186), [sym_alias_declaration] = STATE(2186), [sym_alias_reassign] = STATE(2186), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2186), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2186), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2186), [sym_union_declaration] = STATE(2186), [sym_postblit] = STATE(2186), [sym_invariant_declaration] = STATE(2186), [sym_class_declaration] = STATE(2186), [sym_constructor] = STATE(2186), [sym_destructor] = STATE(2186), [sym_alias_this] = STATE(2186), [sym_interface_declaration] = STATE(2186), [sym_enum_declaration] = STATE(2186), [sym_anonymous_enum_declaration] = STATE(2186), [sym_function_declaration] = STATE(2186), [sym_template_declaration] = STATE(2186), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2186), [sym_template_mixin] = STATE(2186), [sym_conditional_declaration] = STATE(2186), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2186), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2186), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2186), [sym_static_assert] = STATE(2186), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2186), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5865), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5463), [anon_sym_COLON] = ACTIONS(5491), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2068] = { [sym_import_declaration] = STATE(2896), [sym_mixin_declaration] = STATE(2896), [sym__declaration] = STATE(2896), [sym__declaration2] = STATE(2896), [sym_variable_declaration] = STATE(2896), [sym_manifest_constant] = STATE(2896), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2896), [sym_alias_declaration] = STATE(2896), [sym_alias_reassign] = STATE(2896), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2896), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2896), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2896), [sym_union_declaration] = STATE(2896), [sym_postblit] = STATE(2896), [sym_invariant_declaration] = STATE(2896), [sym_class_declaration] = STATE(2896), [sym_constructor] = STATE(2896), [sym_destructor] = STATE(2896), [sym_alias_this] = STATE(2896), [sym_interface_declaration] = STATE(2896), [sym_enum_declaration] = STATE(2896), [sym_anonymous_enum_declaration] = STATE(2896), [sym_function_declaration] = STATE(2896), [sym_template_declaration] = STATE(2896), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2896), [sym_template_mixin] = STATE(2896), [sym_conditional_declaration] = STATE(2896), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2896), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2896), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2896), [sym_static_assert] = STATE(2896), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2896), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6165), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6167), [anon_sym_COLON] = ACTIONS(1739), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2069] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6169), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2070] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6119), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2071] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6171), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2072] = { [sym_import_declaration] = STATE(2346), [sym_mixin_declaration] = STATE(2346), [sym__declaration] = STATE(2346), [sym__declaration2] = STATE(2346), [sym_variable_declaration] = STATE(2346), [sym_manifest_constant] = STATE(2346), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2346), [sym_alias_declaration] = STATE(2346), [sym_alias_reassign] = STATE(2346), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2346), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2346), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2346), [sym_union_declaration] = STATE(2346), [sym_postblit] = STATE(2346), [sym_invariant_declaration] = STATE(2346), [sym_class_declaration] = STATE(2346), [sym_constructor] = STATE(2346), [sym_destructor] = STATE(2346), [sym_alias_this] = STATE(2346), [sym_interface_declaration] = STATE(2346), [sym_enum_declaration] = STATE(2346), [sym_anonymous_enum_declaration] = STATE(2346), [sym_function_declaration] = STATE(2346), [sym_template_declaration] = STATE(2346), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2346), [sym_template_mixin] = STATE(2346), [sym_conditional_declaration] = STATE(2346), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2346), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2346), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2346), [sym_static_assert] = STATE(2346), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2346), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5847), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5849), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2073] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6173), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2074] = { [sym_import_declaration] = STATE(2511), [sym_mixin_declaration] = STATE(2511), [sym__declaration] = STATE(2511), [sym__declaration2] = STATE(2511), [sym_variable_declaration] = STATE(2511), [sym_manifest_constant] = STATE(2511), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2511), [sym_alias_declaration] = STATE(2511), [sym_alias_reassign] = STATE(2511), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2511), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2511), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2511), [sym_union_declaration] = STATE(2511), [sym_postblit] = STATE(2511), [sym_invariant_declaration] = STATE(2511), [sym_class_declaration] = STATE(2511), [sym_constructor] = STATE(2511), [sym_destructor] = STATE(2511), [sym_alias_this] = STATE(2511), [sym_interface_declaration] = STATE(2511), [sym_enum_declaration] = STATE(2511), [sym_anonymous_enum_declaration] = STATE(2511), [sym_function_declaration] = STATE(2511), [sym_template_declaration] = STATE(2511), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2511), [sym_template_mixin] = STATE(2511), [sym_conditional_declaration] = STATE(2511), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2511), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2511), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2511), [sym_static_assert] = STATE(2511), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2511), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5915), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5917), [anon_sym_COLON] = ACTIONS(5919), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2075] = { [sym_import_declaration] = STATE(2055), [sym_mixin_declaration] = STATE(2055), [sym__declaration] = STATE(2055), [sym__declaration2] = STATE(2055), [sym_variable_declaration] = STATE(2055), [sym_manifest_constant] = STATE(2055), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2055), [sym_alias_declaration] = STATE(2055), [sym_alias_reassign] = STATE(2055), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2055), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2055), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2055), [sym_union_declaration] = STATE(2055), [sym_postblit] = STATE(2055), [sym_invariant_declaration] = STATE(2055), [sym_class_declaration] = STATE(2055), [sym_constructor] = STATE(2055), [sym_destructor] = STATE(2055), [sym_alias_this] = STATE(2055), [sym_interface_declaration] = STATE(2055), [sym_enum_declaration] = STATE(2055), [sym_anonymous_enum_declaration] = STATE(2055), [sym_function_declaration] = STATE(2055), [sym_template_declaration] = STATE(2055), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2055), [sym_template_mixin] = STATE(2055), [sym_conditional_declaration] = STATE(2055), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2055), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2055), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2055), [sym_static_assert] = STATE(2055), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2055), [aux_sym_source_file_repeat1] = STATE(2055), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5971), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6175), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2076] = { [sym_import_declaration] = STATE(1894), [sym_mixin_declaration] = STATE(1894), [sym__declaration] = STATE(1894), [sym__declaration2] = STATE(1894), [sym_variable_declaration] = STATE(1894), [sym_manifest_constant] = STATE(1894), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1894), [sym_alias_declaration] = STATE(1894), [sym_alias_reassign] = STATE(1894), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1894), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1894), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1894), [sym_union_declaration] = STATE(1894), [sym_postblit] = STATE(1894), [sym_invariant_declaration] = STATE(1894), [sym_class_declaration] = STATE(1894), [sym_constructor] = STATE(1894), [sym_destructor] = STATE(1894), [sym_alias_this] = STATE(1894), [sym_interface_declaration] = STATE(1894), [sym_enum_declaration] = STATE(1894), [sym_anonymous_enum_declaration] = STATE(1894), [sym_function_declaration] = STATE(1894), [sym_template_declaration] = STATE(1894), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1894), [sym_template_mixin] = STATE(1894), [sym_conditional_declaration] = STATE(1894), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1894), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1894), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1894), [sym_static_assert] = STATE(1894), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1894), [aux_sym_source_file_repeat1] = STATE(1894), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6177), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6179), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2077] = { [sym_import_declaration] = STATE(1977), [sym_mixin_declaration] = STATE(1977), [sym__declaration] = STATE(1977), [sym__declaration2] = STATE(1977), [sym_variable_declaration] = STATE(1977), [sym_manifest_constant] = STATE(1977), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1977), [sym_alias_declaration] = STATE(1977), [sym_alias_reassign] = STATE(1977), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1977), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1977), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1977), [sym_union_declaration] = STATE(1977), [sym_postblit] = STATE(1977), [sym_invariant_declaration] = STATE(1977), [sym_class_declaration] = STATE(1977), [sym_constructor] = STATE(1977), [sym_destructor] = STATE(1977), [sym_alias_this] = STATE(1977), [sym_interface_declaration] = STATE(1977), [sym_enum_declaration] = STATE(1977), [sym_anonymous_enum_declaration] = STATE(1977), [sym_function_declaration] = STATE(1977), [sym_template_declaration] = STATE(1977), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1977), [sym_template_mixin] = STATE(1977), [sym_conditional_declaration] = STATE(1977), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1977), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1977), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1977), [sym_static_assert] = STATE(1977), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1977), [aux_sym_source_file_repeat1] = STATE(1977), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6181), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6183), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2078] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6185), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2079] = { [sym_import_declaration] = STATE(2008), [sym_mixin_declaration] = STATE(2008), [sym__declaration] = STATE(2008), [sym__declaration2] = STATE(2008), [sym_variable_declaration] = STATE(2008), [sym_manifest_constant] = STATE(2008), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2008), [sym_alias_declaration] = STATE(2008), [sym_alias_reassign] = STATE(2008), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2008), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2008), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2008), [sym_union_declaration] = STATE(2008), [sym_postblit] = STATE(2008), [sym_invariant_declaration] = STATE(2008), [sym_class_declaration] = STATE(2008), [sym_constructor] = STATE(2008), [sym_destructor] = STATE(2008), [sym_alias_this] = STATE(2008), [sym_interface_declaration] = STATE(2008), [sym_enum_declaration] = STATE(2008), [sym_anonymous_enum_declaration] = STATE(2008), [sym_function_declaration] = STATE(2008), [sym_template_declaration] = STATE(2008), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2008), [sym_template_mixin] = STATE(2008), [sym_conditional_declaration] = STATE(2008), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2008), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2008), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2008), [sym_static_assert] = STATE(2008), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2008), [aux_sym_source_file_repeat1] = STATE(2008), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5583), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6187), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2080] = { [sym_import_declaration] = STATE(2773), [sym_mixin_declaration] = STATE(2773), [sym__declaration] = STATE(2773), [sym__declaration2] = STATE(2773), [sym_variable_declaration] = STATE(2773), [sym_manifest_constant] = STATE(2773), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2773), [sym_alias_declaration] = STATE(2773), [sym_alias_reassign] = STATE(2773), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2773), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2773), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2773), [sym_union_declaration] = STATE(2773), [sym_postblit] = STATE(2773), [sym_invariant_declaration] = STATE(2773), [sym_class_declaration] = STATE(2773), [sym_constructor] = STATE(2773), [sym_destructor] = STATE(2773), [sym_alias_this] = STATE(2773), [sym_interface_declaration] = STATE(2773), [sym_enum_declaration] = STATE(2773), [sym_anonymous_enum_declaration] = STATE(2773), [sym_function_declaration] = STATE(2773), [sym_template_declaration] = STATE(2773), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2773), [sym_template_mixin] = STATE(2773), [sym_conditional_declaration] = STATE(2773), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2773), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2773), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2773), [sym_static_assert] = STATE(2773), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2773), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6189), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6191), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2081] = { [sym_import_declaration] = STATE(2739), [sym_mixin_declaration] = STATE(2739), [sym__declaration] = STATE(2739), [sym__declaration2] = STATE(2739), [sym_variable_declaration] = STATE(2739), [sym_manifest_constant] = STATE(2739), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2739), [sym_alias_declaration] = STATE(2739), [sym_alias_reassign] = STATE(2739), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2739), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2739), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2739), [sym_union_declaration] = STATE(2739), [sym_postblit] = STATE(2739), [sym_invariant_declaration] = STATE(2739), [sym_class_declaration] = STATE(2739), [sym_constructor] = STATE(2739), [sym_destructor] = STATE(2739), [sym_alias_this] = STATE(2739), [sym_interface_declaration] = STATE(2739), [sym_enum_declaration] = STATE(2739), [sym_anonymous_enum_declaration] = STATE(2739), [sym_function_declaration] = STATE(2739), [sym_template_declaration] = STATE(2739), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2739), [sym_template_mixin] = STATE(2739), [sym_conditional_declaration] = STATE(2739), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2739), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2739), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2739), [sym_static_assert] = STATE(2739), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2739), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5581), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5583), [anon_sym_COLON] = ACTIONS(6193), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2082] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6195), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2083] = { [sym_import_declaration] = STATE(6424), [sym_mixin_declaration] = STATE(6424), [sym__declaration] = STATE(6424), [sym__declaration2] = STATE(6424), [sym_variable_declaration] = STATE(6424), [sym_manifest_constant] = STATE(6424), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(6424), [sym_alias_declaration] = STATE(6424), [sym_alias_reassign] = STATE(6424), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(6424), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(6424), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(6424), [sym_union_declaration] = STATE(6424), [sym_postblit] = STATE(6424), [sym_invariant_declaration] = STATE(6424), [sym_class_declaration] = STATE(6424), [sym_constructor] = STATE(6424), [sym_destructor] = STATE(6424), [sym_alias_this] = STATE(6424), [sym_interface_declaration] = STATE(6424), [sym_enum_declaration] = STATE(6424), [sym_anonymous_enum_declaration] = STATE(6424), [sym_function_declaration] = STATE(6424), [sym_template_declaration] = STATE(6424), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(6424), [sym_template_mixin] = STATE(6424), [sym_conditional_declaration] = STATE(6424), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(6424), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(6424), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(6424), [sym_static_assert] = STATE(6424), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(6424), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6197), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6199), [anon_sym_COLON] = ACTIONS(1739), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2084] = { [sym_import_declaration] = STATE(2056), [sym_mixin_declaration] = STATE(2056), [sym__declaration] = STATE(2056), [sym__declaration2] = STATE(2056), [sym_variable_declaration] = STATE(2056), [sym_manifest_constant] = STATE(2056), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2056), [sym_alias_declaration] = STATE(2056), [sym_alias_reassign] = STATE(2056), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2056), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2056), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2056), [sym_union_declaration] = STATE(2056), [sym_postblit] = STATE(2056), [sym_invariant_declaration] = STATE(2056), [sym_class_declaration] = STATE(2056), [sym_constructor] = STATE(2056), [sym_destructor] = STATE(2056), [sym_alias_this] = STATE(2056), [sym_interface_declaration] = STATE(2056), [sym_enum_declaration] = STATE(2056), [sym_anonymous_enum_declaration] = STATE(2056), [sym_function_declaration] = STATE(2056), [sym_template_declaration] = STATE(2056), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2056), [sym_template_mixin] = STATE(2056), [sym_conditional_declaration] = STATE(2056), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2056), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2056), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2056), [sym_static_assert] = STATE(2056), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2056), [aux_sym_source_file_repeat1] = STATE(2056), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6201), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6203), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2085] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5753), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2086] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6069), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2087] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5801), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2088] = { [sym_import_declaration] = STATE(2369), [sym_mixin_declaration] = STATE(2369), [sym__declaration] = STATE(2369), [sym__declaration2] = STATE(2369), [sym_variable_declaration] = STATE(2369), [sym_manifest_constant] = STATE(2369), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2369), [sym_alias_declaration] = STATE(2369), [sym_alias_reassign] = STATE(2369), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2369), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2369), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2369), [sym_union_declaration] = STATE(2369), [sym_postblit] = STATE(2369), [sym_invariant_declaration] = STATE(2369), [sym_class_declaration] = STATE(2369), [sym_constructor] = STATE(2369), [sym_destructor] = STATE(2369), [sym_alias_this] = STATE(2369), [sym_interface_declaration] = STATE(2369), [sym_enum_declaration] = STATE(2369), [sym_anonymous_enum_declaration] = STATE(2369), [sym_function_declaration] = STATE(2369), [sym_template_declaration] = STATE(2369), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2369), [sym_template_mixin] = STATE(2369), [sym_conditional_declaration] = STATE(2369), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2369), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2369), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2369), [sym_static_assert] = STATE(2369), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2369), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5641), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5643), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2089] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6205), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2090] = { [sym_import_declaration] = STATE(2787), [sym_mixin_declaration] = STATE(2787), [sym__declaration] = STATE(2787), [sym__declaration2] = STATE(2787), [sym_variable_declaration] = STATE(2787), [sym_manifest_constant] = STATE(2787), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2787), [sym_alias_declaration] = STATE(2787), [sym_alias_reassign] = STATE(2787), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2787), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2787), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2787), [sym_union_declaration] = STATE(2787), [sym_postblit] = STATE(2787), [sym_invariant_declaration] = STATE(2787), [sym_class_declaration] = STATE(2787), [sym_constructor] = STATE(2787), [sym_destructor] = STATE(2787), [sym_alias_this] = STATE(2787), [sym_interface_declaration] = STATE(2787), [sym_enum_declaration] = STATE(2787), [sym_anonymous_enum_declaration] = STATE(2787), [sym_function_declaration] = STATE(2787), [sym_template_declaration] = STATE(2787), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2787), [sym_template_mixin] = STATE(2787), [sym_conditional_declaration] = STATE(2787), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2787), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2787), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2787), [sym_static_assert] = STATE(2787), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2787), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6207), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6157), [anon_sym_COLON] = ACTIONS(5939), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2091] = { [sym_import_declaration] = STATE(1898), [sym_mixin_declaration] = STATE(1898), [sym__declaration] = STATE(1898), [sym__declaration2] = STATE(1898), [sym_variable_declaration] = STATE(1898), [sym_manifest_constant] = STATE(1898), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1898), [sym_alias_declaration] = STATE(1898), [sym_alias_reassign] = STATE(1898), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1898), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1898), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1898), [sym_union_declaration] = STATE(1898), [sym_postblit] = STATE(1898), [sym_invariant_declaration] = STATE(1898), [sym_class_declaration] = STATE(1898), [sym_constructor] = STATE(1898), [sym_destructor] = STATE(1898), [sym_alias_this] = STATE(1898), [sym_interface_declaration] = STATE(1898), [sym_enum_declaration] = STATE(1898), [sym_anonymous_enum_declaration] = STATE(1898), [sym_function_declaration] = STATE(1898), [sym_template_declaration] = STATE(1898), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1898), [sym_template_mixin] = STATE(1898), [sym_conditional_declaration] = STATE(1898), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1898), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1898), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1898), [sym_static_assert] = STATE(1898), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1898), [aux_sym_source_file_repeat1] = STATE(1898), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6209), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6211), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2092] = { [sym_import_declaration] = STATE(2087), [sym_mixin_declaration] = STATE(2087), [sym__declaration] = STATE(2087), [sym__declaration2] = STATE(2087), [sym_variable_declaration] = STATE(2087), [sym_manifest_constant] = STATE(2087), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2087), [sym_alias_declaration] = STATE(2087), [sym_alias_reassign] = STATE(2087), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2087), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2087), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2087), [sym_union_declaration] = STATE(2087), [sym_postblit] = STATE(2087), [sym_invariant_declaration] = STATE(2087), [sym_class_declaration] = STATE(2087), [sym_constructor] = STATE(2087), [sym_destructor] = STATE(2087), [sym_alias_this] = STATE(2087), [sym_interface_declaration] = STATE(2087), [sym_enum_declaration] = STATE(2087), [sym_anonymous_enum_declaration] = STATE(2087), [sym_function_declaration] = STATE(2087), [sym_template_declaration] = STATE(2087), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2087), [sym_template_mixin] = STATE(2087), [sym_conditional_declaration] = STATE(2087), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2087), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2087), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2087), [sym_static_assert] = STATE(2087), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2087), [aux_sym_source_file_repeat1] = STATE(2087), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5907), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6213), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2093] = { [sym_import_declaration] = STATE(2089), [sym_mixin_declaration] = STATE(2089), [sym__declaration] = STATE(2089), [sym__declaration2] = STATE(2089), [sym_variable_declaration] = STATE(2089), [sym_manifest_constant] = STATE(2089), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2089), [sym_alias_declaration] = STATE(2089), [sym_alias_reassign] = STATE(2089), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2089), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2089), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2089), [sym_union_declaration] = STATE(2089), [sym_postblit] = STATE(2089), [sym_invariant_declaration] = STATE(2089), [sym_class_declaration] = STATE(2089), [sym_constructor] = STATE(2089), [sym_destructor] = STATE(2089), [sym_alias_this] = STATE(2089), [sym_interface_declaration] = STATE(2089), [sym_enum_declaration] = STATE(2089), [sym_anonymous_enum_declaration] = STATE(2089), [sym_function_declaration] = STATE(2089), [sym_template_declaration] = STATE(2089), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2089), [sym_template_mixin] = STATE(2089), [sym_conditional_declaration] = STATE(2089), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2089), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2089), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2089), [sym_static_assert] = STATE(2089), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2089), [aux_sym_source_file_repeat1] = STATE(2089), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6055), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6215), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2094] = { [sym_import_declaration] = STATE(1847), [sym_mixin_declaration] = STATE(1847), [sym__declaration] = STATE(1847), [sym__declaration2] = STATE(1847), [sym_variable_declaration] = STATE(1847), [sym_manifest_constant] = STATE(1847), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1847), [sym_alias_declaration] = STATE(1847), [sym_alias_reassign] = STATE(1847), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1847), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1847), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1847), [sym_union_declaration] = STATE(1847), [sym_postblit] = STATE(1847), [sym_invariant_declaration] = STATE(1847), [sym_class_declaration] = STATE(1847), [sym_constructor] = STATE(1847), [sym_destructor] = STATE(1847), [sym_alias_this] = STATE(1847), [sym_interface_declaration] = STATE(1847), [sym_enum_declaration] = STATE(1847), [sym_anonymous_enum_declaration] = STATE(1847), [sym_function_declaration] = STATE(1847), [sym_template_declaration] = STATE(1847), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1847), [sym_template_mixin] = STATE(1847), [sym_conditional_declaration] = STATE(1847), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1847), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1847), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1847), [sym_static_assert] = STATE(1847), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1847), [aux_sym_source_file_repeat1] = STATE(1847), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5605), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6217), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2095] = { [sym_import_declaration] = STATE(2027), [sym_mixin_declaration] = STATE(2027), [sym__declaration] = STATE(2027), [sym__declaration2] = STATE(2027), [sym_variable_declaration] = STATE(2027), [sym_manifest_constant] = STATE(2027), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2027), [sym_alias_declaration] = STATE(2027), [sym_alias_reassign] = STATE(2027), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2027), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2027), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2027), [sym_union_declaration] = STATE(2027), [sym_postblit] = STATE(2027), [sym_invariant_declaration] = STATE(2027), [sym_class_declaration] = STATE(2027), [sym_constructor] = STATE(2027), [sym_destructor] = STATE(2027), [sym_alias_this] = STATE(2027), [sym_interface_declaration] = STATE(2027), [sym_enum_declaration] = STATE(2027), [sym_anonymous_enum_declaration] = STATE(2027), [sym_function_declaration] = STATE(2027), [sym_template_declaration] = STATE(2027), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2027), [sym_template_mixin] = STATE(2027), [sym_conditional_declaration] = STATE(2027), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2027), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2027), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2027), [sym_static_assert] = STATE(2027), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2027), [aux_sym_source_file_repeat1] = STATE(2027), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5801), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6219), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2096] = { [sym_import_declaration] = STATE(1799), [sym_mixin_declaration] = STATE(1799), [sym__declaration] = STATE(1799), [sym__declaration2] = STATE(1799), [sym_variable_declaration] = STATE(1799), [sym_manifest_constant] = STATE(1799), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1799), [sym_alias_declaration] = STATE(1799), [sym_alias_reassign] = STATE(1799), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1799), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1799), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1799), [sym_union_declaration] = STATE(1799), [sym_postblit] = STATE(1799), [sym_invariant_declaration] = STATE(1799), [sym_class_declaration] = STATE(1799), [sym_constructor] = STATE(1799), [sym_destructor] = STATE(1799), [sym_alias_this] = STATE(1799), [sym_interface_declaration] = STATE(1799), [sym_enum_declaration] = STATE(1799), [sym_anonymous_enum_declaration] = STATE(1799), [sym_function_declaration] = STATE(1799), [sym_template_declaration] = STATE(1799), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1799), [sym_template_mixin] = STATE(1799), [sym_conditional_declaration] = STATE(1799), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1799), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1799), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1799), [sym_static_assert] = STATE(1799), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1799), [aux_sym_source_file_repeat1] = STATE(1799), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6221), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5273), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2097] = { [sym_import_declaration] = STATE(2522), [sym_mixin_declaration] = STATE(2522), [sym__declaration] = STATE(2522), [sym__declaration2] = STATE(2522), [sym_variable_declaration] = STATE(2522), [sym_manifest_constant] = STATE(2522), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2522), [sym_alias_declaration] = STATE(2522), [sym_alias_reassign] = STATE(2522), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2522), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2522), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2522), [sym_union_declaration] = STATE(2522), [sym_postblit] = STATE(2522), [sym_invariant_declaration] = STATE(2522), [sym_class_declaration] = STATE(2522), [sym_constructor] = STATE(2522), [sym_destructor] = STATE(2522), [sym_alias_this] = STATE(2522), [sym_interface_declaration] = STATE(2522), [sym_enum_declaration] = STATE(2522), [sym_anonymous_enum_declaration] = STATE(2522), [sym_function_declaration] = STATE(2522), [sym_template_declaration] = STATE(2522), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2522), [sym_template_mixin] = STATE(2522), [sym_conditional_declaration] = STATE(2522), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2522), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2522), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2522), [sym_static_assert] = STATE(2522), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2522), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6223), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6225), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2098] = { [sym_import_declaration] = STATE(1802), [sym_mixin_declaration] = STATE(1802), [sym__declaration] = STATE(1802), [sym__declaration2] = STATE(1802), [sym_variable_declaration] = STATE(1802), [sym_manifest_constant] = STATE(1802), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1802), [sym_alias_declaration] = STATE(1802), [sym_alias_reassign] = STATE(1802), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1802), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1802), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1802), [sym_union_declaration] = STATE(1802), [sym_postblit] = STATE(1802), [sym_invariant_declaration] = STATE(1802), [sym_class_declaration] = STATE(1802), [sym_constructor] = STATE(1802), [sym_destructor] = STATE(1802), [sym_alias_this] = STATE(1802), [sym_interface_declaration] = STATE(1802), [sym_enum_declaration] = STATE(1802), [sym_anonymous_enum_declaration] = STATE(1802), [sym_function_declaration] = STATE(1802), [sym_template_declaration] = STATE(1802), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1802), [sym_template_mixin] = STATE(1802), [sym_conditional_declaration] = STATE(1802), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1802), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1802), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1802), [sym_static_assert] = STATE(1802), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1802), [aux_sym_source_file_repeat1] = STATE(1802), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6227), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2099] = { [sym_import_declaration] = STATE(2846), [sym_mixin_declaration] = STATE(2846), [sym__declaration] = STATE(2846), [sym__declaration2] = STATE(2846), [sym_variable_declaration] = STATE(2846), [sym_manifest_constant] = STATE(2846), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2846), [sym_alias_declaration] = STATE(2846), [sym_alias_reassign] = STATE(2846), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2846), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2846), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2846), [sym_union_declaration] = STATE(2846), [sym_postblit] = STATE(2846), [sym_invariant_declaration] = STATE(2846), [sym_class_declaration] = STATE(2846), [sym_constructor] = STATE(2846), [sym_destructor] = STATE(2846), [sym_alias_this] = STATE(2846), [sym_interface_declaration] = STATE(2846), [sym_enum_declaration] = STATE(2846), [sym_anonymous_enum_declaration] = STATE(2846), [sym_function_declaration] = STATE(2846), [sym_template_declaration] = STATE(2846), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2846), [sym_template_mixin] = STATE(2846), [sym_conditional_declaration] = STATE(2846), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2846), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2846), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2846), [sym_static_assert] = STATE(2846), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2846), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6229), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5497), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2100] = { [sym_identifier] = ACTIONS(3074), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3076), [anon_sym_LBRACE] = ACTIONS(3076), [anon_sym_SLASH] = ACTIONS(3078), [anon_sym_SLASH_EQ] = ACTIONS(3080), [anon_sym_DOT] = ACTIONS(3082), [anon_sym_AMP] = ACTIONS(3085), [anon_sym_AMP_EQ] = ACTIONS(3080), [anon_sym_AMP_AMP] = ACTIONS(3080), [anon_sym_PIPE] = ACTIONS(3078), [anon_sym_PIPE_EQ] = ACTIONS(3080), [anon_sym_PIPE_PIPE] = ACTIONS(3080), [anon_sym_DASH] = ACTIONS(3085), [anon_sym_DASH_EQ] = ACTIONS(3080), [anon_sym_DASH_DASH] = ACTIONS(3082), [anon_sym_PLUS] = ACTIONS(3085), [anon_sym_PLUS_EQ] = ACTIONS(3080), [anon_sym_PLUS_PLUS] = ACTIONS(3082), [anon_sym_LT] = ACTIONS(3078), [anon_sym_LT_EQ] = ACTIONS(3080), [anon_sym_LT_LT] = ACTIONS(3078), [anon_sym_LT_LT_EQ] = ACTIONS(3080), [anon_sym_GT] = ACTIONS(3078), [anon_sym_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3080), [anon_sym_GT_GT] = ACTIONS(3078), [anon_sym_GT_GT_GT] = ACTIONS(3078), [anon_sym_BANG] = ACTIONS(3074), [anon_sym_BANG_EQ] = ACTIONS(3080), [anon_sym_LPAREN] = ACTIONS(3082), [anon_sym_RPAREN] = ACTIONS(3076), [anon_sym_LBRACK] = ACTIONS(3082), [anon_sym_QMARK] = ACTIONS(3080), [anon_sym_COMMA] = ACTIONS(3080), [anon_sym_SEMI] = ACTIONS(3082), [anon_sym_DOLLAR] = ACTIONS(3076), [anon_sym_EQ] = ACTIONS(3078), [anon_sym_EQ_EQ] = ACTIONS(3080), [anon_sym_STAR] = ACTIONS(3085), [anon_sym_STAR_EQ] = ACTIONS(3080), [anon_sym_PERCENT] = ACTIONS(3078), [anon_sym_PERCENT_EQ] = ACTIONS(3080), [anon_sym_CARET] = ACTIONS(3078), [anon_sym_CARET_EQ] = ACTIONS(3080), [anon_sym_CARET_CARET] = ACTIONS(3078), [anon_sym_CARET_CARET_EQ] = ACTIONS(3080), [anon_sym_TILDE] = ACTIONS(3085), [anon_sym_TILDE_EQ] = ACTIONS(3080), [sym_bool] = ACTIONS(3074), [sym_byte] = ACTIONS(3074), [sym_ubyte] = ACTIONS(3074), [sym_char] = ACTIONS(3074), [sym_short] = ACTIONS(3074), [sym_ushort] = ACTIONS(3074), [sym_int] = ACTIONS(3074), [sym_uint] = ACTIONS(3074), [sym_long] = ACTIONS(3074), [sym_ulong] = ACTIONS(3074), [sym_cent] = ACTIONS(3074), [sym_ucent] = ACTIONS(3074), [sym_wchar] = ACTIONS(3074), [sym_dchar] = ACTIONS(3074), [sym_float] = ACTIONS(3074), [sym_double] = ACTIONS(3074), [sym_real] = ACTIONS(3074), [sym_ifloat] = ACTIONS(3074), [sym_idouble] = ACTIONS(3074), [sym_ireal] = ACTIONS(3074), [sym_cfloat] = ACTIONS(3074), [sym_cdouble] = ACTIONS(3074), [sym_creal] = ACTIONS(3074), [sym_size_t] = ACTIONS(3074), [sym_ptrdiff_t] = ACTIONS(3074), [sym_string] = ACTIONS(3074), [sym_cstring] = ACTIONS(3074), [sym_dstring] = ACTIONS(3074), [sym_wstring] = ACTIONS(3074), [sym_noreturn] = ACTIONS(3074), [sym_true] = ACTIONS(3074), [sym_false] = ACTIONS(3074), [sym_null] = ACTIONS(3074), [sym_super] = ACTIONS(3074), [sym_this] = ACTIONS(3074), [sym_assert] = ACTIONS(3074), [sym_auto] = ACTIONS(3074), [sym_cast] = ACTIONS(3074), [sym_catch] = ACTIONS(3074), [sym_const] = ACTIONS(3074), [sym_delegate] = ACTIONS(3074), [sym_delete] = ACTIONS(3074), [sym_do] = ACTIONS(3074), [sym_else] = ACTIONS(3074), [sym_finally] = ACTIONS(3074), [sym_function] = ACTIONS(3074), [sym_immutable] = ACTIONS(3074), [sym_import] = ACTIONS(3074), [sym_in] = ACTIONS(3085), [sym_inout] = ACTIONS(3074), [sym_is] = ACTIONS(3085), [sym_mixin] = ACTIONS(3074), [sym_new] = ACTIONS(3074), [sym_out] = ACTIONS(3074), [sym_ref] = ACTIONS(3074), [sym_shared] = ACTIONS(3074), [sym_throw] = ACTIONS(3074), [sym_typeid] = ACTIONS(3074), [sym_typeof] = ACTIONS(3074), [sym_traits] = ACTIONS(3074), [sym_vector] = ACTIONS(3074), [sym_void] = ACTIONS(3074), [anon_sym_BQUOTE] = ACTIONS(3076), [anon_sym_r_DQUOTE] = ACTIONS(3076), [anon_sym_x_DQUOTE] = ACTIONS(3076), [anon_sym_DQUOTE] = ACTIONS(3076), [anon_sym_i_BQUOTE] = ACTIONS(3076), [anon_sym_i_DQUOTE] = ACTIONS(3076), [anon_sym_iq_LBRACE] = ACTIONS(3076), [aux_sym_char_literal_token1] = ACTIONS(3076), [anon_sym_SQUOTE] = ACTIONS(3074), [anon_sym___DATE__] = ACTIONS(3074), [anon_sym___FILE__] = ACTIONS(3074), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3074), [anon_sym___FUNCTION__] = ACTIONS(3074), [anon_sym___LINE__] = ACTIONS(3074), [anon_sym___MODULE__] = ACTIONS(3074), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3074), [anon_sym___TIME__] = ACTIONS(3074), [anon_sym___TIMESTAMP__] = ACTIONS(3074), [anon_sym___VENDOR__] = ACTIONS(3074), [anon_sym___VERSION__] = ACTIONS(3074), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3076), [sym_float_literal] = ACTIONS(3076), [sym__string] = ACTIONS(3076), [sym_not_in] = ACTIONS(3080), [sym_not_is] = ACTIONS(3080), }, [2101] = { [sym_import_declaration] = STATE(2770), [sym_mixin_declaration] = STATE(2770), [sym__declaration] = STATE(2770), [sym__declaration2] = STATE(2770), [sym_variable_declaration] = STATE(2770), [sym_manifest_constant] = STATE(2770), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2770), [sym_alias_declaration] = STATE(2770), [sym_alias_reassign] = STATE(2770), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2770), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2770), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2770), [sym_union_declaration] = STATE(2770), [sym_postblit] = STATE(2770), [sym_invariant_declaration] = STATE(2770), [sym_class_declaration] = STATE(2770), [sym_constructor] = STATE(2770), [sym_destructor] = STATE(2770), [sym_alias_this] = STATE(2770), [sym_interface_declaration] = STATE(2770), [sym_enum_declaration] = STATE(2770), [sym_anonymous_enum_declaration] = STATE(2770), [sym_function_declaration] = STATE(2770), [sym_template_declaration] = STATE(2770), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2770), [sym_template_mixin] = STATE(2770), [sym_conditional_declaration] = STATE(2770), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2770), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2770), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2770), [sym_static_assert] = STATE(2770), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2770), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6231), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5609), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2102] = { [sym_import_declaration] = STATE(1784), [sym_mixin_declaration] = STATE(1784), [sym__declaration] = STATE(1784), [sym__declaration2] = STATE(1784), [sym_variable_declaration] = STATE(1784), [sym_manifest_constant] = STATE(1784), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1784), [sym_alias_declaration] = STATE(1784), [sym_alias_reassign] = STATE(1784), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1784), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1784), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1784), [sym_union_declaration] = STATE(1784), [sym_postblit] = STATE(1784), [sym_invariant_declaration] = STATE(1784), [sym_class_declaration] = STATE(1784), [sym_constructor] = STATE(1784), [sym_destructor] = STATE(1784), [sym_alias_this] = STATE(1784), [sym_interface_declaration] = STATE(1784), [sym_enum_declaration] = STATE(1784), [sym_anonymous_enum_declaration] = STATE(1784), [sym_function_declaration] = STATE(1784), [sym_template_declaration] = STATE(1784), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1784), [sym_template_mixin] = STATE(1784), [sym_conditional_declaration] = STATE(1784), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1784), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1784), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1784), [sym_static_assert] = STATE(1784), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1784), [aux_sym_source_file_repeat1] = STATE(1784), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6233), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2103] = { [sym_import_declaration] = STATE(1710), [sym_mixin_declaration] = STATE(1710), [sym__declaration] = STATE(1710), [sym__declaration2] = STATE(1710), [sym_variable_declaration] = STATE(1710), [sym_manifest_constant] = STATE(1710), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1710), [sym_alias_declaration] = STATE(1710), [sym_alias_reassign] = STATE(1710), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1710), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1710), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1710), [sym_union_declaration] = STATE(1710), [sym_postblit] = STATE(1710), [sym_invariant_declaration] = STATE(1710), [sym_class_declaration] = STATE(1710), [sym_constructor] = STATE(1710), [sym_destructor] = STATE(1710), [sym_alias_this] = STATE(1710), [sym_interface_declaration] = STATE(1710), [sym_enum_declaration] = STATE(1710), [sym_anonymous_enum_declaration] = STATE(1710), [sym_function_declaration] = STATE(1710), [sym_template_declaration] = STATE(1710), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1710), [sym_template_mixin] = STATE(1710), [sym_conditional_declaration] = STATE(1710), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1710), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1710), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1710), [sym_static_assert] = STATE(1710), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1710), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6235), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6237), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2104] = { [sym_import_declaration] = STATE(2592), [sym_mixin_declaration] = STATE(2592), [sym__declaration] = STATE(2592), [sym__declaration2] = STATE(2592), [sym_variable_declaration] = STATE(2592), [sym_manifest_constant] = STATE(2592), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2592), [sym_alias_declaration] = STATE(2592), [sym_alias_reassign] = STATE(2592), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2592), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2592), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2592), [sym_union_declaration] = STATE(2592), [sym_postblit] = STATE(2592), [sym_invariant_declaration] = STATE(2592), [sym_class_declaration] = STATE(2592), [sym_constructor] = STATE(2592), [sym_destructor] = STATE(2592), [sym_alias_this] = STATE(2592), [sym_interface_declaration] = STATE(2592), [sym_enum_declaration] = STATE(2592), [sym_anonymous_enum_declaration] = STATE(2592), [sym_function_declaration] = STATE(2592), [sym_template_declaration] = STATE(2592), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2592), [sym_template_mixin] = STATE(2592), [sym_conditional_declaration] = STATE(2592), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2592), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2592), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2592), [sym_static_assert] = STATE(2592), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2592), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6239), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6115), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2105] = { [sym_import_declaration] = STATE(2778), [sym_mixin_declaration] = STATE(2778), [sym__declaration] = STATE(2778), [sym__declaration2] = STATE(2778), [sym_variable_declaration] = STATE(2778), [sym_manifest_constant] = STATE(2778), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(2778), [sym_alias_declaration] = STATE(2778), [sym_alias_reassign] = STATE(2778), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2778), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2778), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(2778), [sym_union_declaration] = STATE(2778), [sym_postblit] = STATE(2778), [sym_invariant_declaration] = STATE(2778), [sym_class_declaration] = STATE(2778), [sym_constructor] = STATE(2778), [sym_destructor] = STATE(2778), [sym_alias_this] = STATE(2778), [sym_interface_declaration] = STATE(2778), [sym_enum_declaration] = STATE(2778), [sym_anonymous_enum_declaration] = STATE(2778), [sym_function_declaration] = STATE(2778), [sym_template_declaration] = STATE(2778), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2778), [sym_template_mixin] = STATE(2778), [sym_conditional_declaration] = STATE(2778), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2778), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2778), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2778), [sym_static_assert] = STATE(2778), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2778), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6241), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6243), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2106] = { [sym_import_declaration] = STATE(1791), [sym_mixin_declaration] = STATE(1791), [sym__declaration] = STATE(1791), [sym__declaration2] = STATE(1791), [sym_variable_declaration] = STATE(1791), [sym_manifest_constant] = STATE(1791), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1791), [sym_alias_declaration] = STATE(1791), [sym_alias_reassign] = STATE(1791), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1791), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1791), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1791), [sym_union_declaration] = STATE(1791), [sym_postblit] = STATE(1791), [sym_invariant_declaration] = STATE(1791), [sym_class_declaration] = STATE(1791), [sym_constructor] = STATE(1791), [sym_destructor] = STATE(1791), [sym_alias_this] = STATE(1791), [sym_interface_declaration] = STATE(1791), [sym_enum_declaration] = STATE(1791), [sym_anonymous_enum_declaration] = STATE(1791), [sym_function_declaration] = STATE(1791), [sym_template_declaration] = STATE(1791), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1791), [sym_template_mixin] = STATE(1791), [sym_conditional_declaration] = STATE(1791), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1791), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1791), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1791), [sym_static_assert] = STATE(1791), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1791), [aux_sym_source_file_repeat1] = STATE(1791), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6245), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2107] = { [sym_import_declaration] = STATE(607), [sym_mixin_declaration] = STATE(607), [sym__declaration] = STATE(607), [sym__declaration2] = STATE(607), [sym_variable_declaration] = STATE(607), [sym_manifest_constant] = STATE(607), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(607), [sym_alias_declaration] = STATE(607), [sym_alias_reassign] = STATE(607), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(607), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(607), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(607), [sym_union_declaration] = STATE(607), [sym_postblit] = STATE(607), [sym_invariant_declaration] = STATE(607), [sym_class_declaration] = STATE(607), [sym_constructor] = STATE(607), [sym_destructor] = STATE(607), [sym_alias_this] = STATE(607), [sym_interface_declaration] = STATE(607), [sym_enum_declaration] = STATE(607), [sym_anonymous_enum_declaration] = STATE(607), [sym_function_declaration] = STATE(607), [sym_template_declaration] = STATE(607), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(607), [sym_template_mixin] = STATE(607), [sym_conditional_declaration] = STATE(607), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(607), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(607), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(607), [sym_static_assert] = STATE(607), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(607), [aux_sym_source_file_repeat1] = STATE(607), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6247), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2108] = { [sym_import_declaration] = STATE(2627), [sym_mixin_declaration] = STATE(2627), [sym__declaration] = STATE(2627), [sym__declaration2] = STATE(2627), [sym_variable_declaration] = STATE(2627), [sym_manifest_constant] = STATE(2627), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(2627), [sym_alias_declaration] = STATE(2627), [sym_alias_reassign] = STATE(2627), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2627), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2627), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2627), [sym_union_declaration] = STATE(2627), [sym_postblit] = STATE(2627), [sym_invariant_declaration] = STATE(2627), [sym_class_declaration] = STATE(2627), [sym_constructor] = STATE(2627), [sym_destructor] = STATE(2627), [sym_alias_this] = STATE(2627), [sym_interface_declaration] = STATE(2627), [sym_enum_declaration] = STATE(2627), [sym_anonymous_enum_declaration] = STATE(2627), [sym_function_declaration] = STATE(2627), [sym_template_declaration] = STATE(2627), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2627), [sym_template_mixin] = STATE(2627), [sym_conditional_declaration] = STATE(2627), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2627), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2627), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2627), [sym_static_assert] = STATE(2627), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2627), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6249), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5593), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2109] = { [sym_import_declaration] = STATE(1792), [sym_mixin_declaration] = STATE(1792), [sym__declaration] = STATE(1792), [sym__declaration2] = STATE(1792), [sym_variable_declaration] = STATE(1792), [sym_manifest_constant] = STATE(1792), [sym_storage_class] = STATE(3002), [sym_auto_declaration] = STATE(1792), [sym_alias_declaration] = STATE(1792), [sym_alias_reassign] = STATE(1792), [sym_type] = STATE(5674), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1792), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2153), [sym__attribute] = STATE(2153), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1792), [sym_pragma_expression] = STATE(1819), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(1792), [sym_union_declaration] = STATE(1792), [sym_postblit] = STATE(1792), [sym_invariant_declaration] = STATE(1792), [sym_class_declaration] = STATE(1792), [sym_constructor] = STATE(1792), [sym_destructor] = STATE(1792), [sym_alias_this] = STATE(1792), [sym_interface_declaration] = STATE(1792), [sym_enum_declaration] = STATE(1792), [sym_anonymous_enum_declaration] = STATE(1792), [sym_function_declaration] = STATE(1792), [sym_template_declaration] = STATE(1792), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1792), [sym_template_mixin] = STATE(1792), [sym_conditional_declaration] = STATE(1792), [sym_condition] = STATE(2042), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1792), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1792), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1792), [sym_static_assert] = STATE(1792), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1792), [aux_sym_source_file_repeat1] = STATE(1792), [aux_sym_import_declaration_repeat1] = STATE(2153), [aux_sym_variable_declaration_repeat1] = STATE(3002), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6251), [anon_sym_TILDE] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(23), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(41), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(41), [sym_protected] = ACTIONS(41), [sym_public] = ACTIONS(41), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(41), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(59), [sym_static] = ACTIONS(61), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2110] = { [sym_identifier] = ACTIONS(3112), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3115), [anon_sym_LBRACE] = ACTIONS(3115), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3115), [anon_sym_AMP] = ACTIONS(3112), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3112), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3115), [anon_sym_PLUS] = ACTIONS(3112), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3115), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3112), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3115), [anon_sym_RPAREN] = ACTIONS(3115), [anon_sym_LBRACK] = ACTIONS(3115), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3115), [anon_sym_DOLLAR] = ACTIONS(3115), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3112), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3112), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3112), [sym_byte] = ACTIONS(3112), [sym_ubyte] = ACTIONS(3112), [sym_char] = ACTIONS(3112), [sym_short] = ACTIONS(3112), [sym_ushort] = ACTIONS(3112), [sym_int] = ACTIONS(3112), [sym_uint] = ACTIONS(3112), [sym_long] = ACTIONS(3112), [sym_ulong] = ACTIONS(3112), [sym_cent] = ACTIONS(3112), [sym_ucent] = ACTIONS(3112), [sym_wchar] = ACTIONS(3112), [sym_dchar] = ACTIONS(3112), [sym_float] = ACTIONS(3112), [sym_double] = ACTIONS(3112), [sym_real] = ACTIONS(3112), [sym_ifloat] = ACTIONS(3112), [sym_idouble] = ACTIONS(3112), [sym_ireal] = ACTIONS(3112), [sym_cfloat] = ACTIONS(3112), [sym_cdouble] = ACTIONS(3112), [sym_creal] = ACTIONS(3112), [sym_size_t] = ACTIONS(3112), [sym_ptrdiff_t] = ACTIONS(3112), [sym_string] = ACTIONS(3112), [sym_cstring] = ACTIONS(3112), [sym_dstring] = ACTIONS(3112), [sym_wstring] = ACTIONS(3112), [sym_noreturn] = ACTIONS(3112), [sym_true] = ACTIONS(3112), [sym_false] = ACTIONS(3112), [sym_null] = ACTIONS(3112), [sym_super] = ACTIONS(3112), [sym_this] = ACTIONS(3112), [sym_assert] = ACTIONS(3112), [sym_auto] = ACTIONS(3112), [sym_cast] = ACTIONS(3112), [sym_catch] = ACTIONS(3112), [sym_const] = ACTIONS(3112), [sym_delegate] = ACTIONS(3112), [sym_delete] = ACTIONS(3112), [sym_do] = ACTIONS(3112), [sym_else] = ACTIONS(3112), [sym_finally] = ACTIONS(3112), [sym_function] = ACTIONS(3112), [sym_immutable] = ACTIONS(3112), [sym_import] = ACTIONS(3112), [sym_in] = ACTIONS(3112), [sym_inout] = ACTIONS(3112), [sym_is] = ACTIONS(3112), [sym_mixin] = ACTIONS(3112), [sym_new] = ACTIONS(3112), [sym_out] = ACTIONS(3112), [sym_ref] = ACTIONS(3112), [sym_shared] = ACTIONS(3112), [sym_throw] = ACTIONS(3112), [sym_typeid] = ACTIONS(3112), [sym_typeof] = ACTIONS(3112), [sym_traits] = ACTIONS(3112), [sym_vector] = ACTIONS(3112), [sym_void] = ACTIONS(3112), [anon_sym_BQUOTE] = ACTIONS(3115), [anon_sym_r_DQUOTE] = ACTIONS(3115), [anon_sym_x_DQUOTE] = ACTIONS(3115), [anon_sym_DQUOTE] = ACTIONS(3115), [anon_sym_i_BQUOTE] = ACTIONS(3115), [anon_sym_i_DQUOTE] = ACTIONS(3115), [anon_sym_iq_LBRACE] = ACTIONS(3115), [aux_sym_char_literal_token1] = ACTIONS(3115), [anon_sym_SQUOTE] = ACTIONS(3112), [anon_sym___DATE__] = ACTIONS(3112), [anon_sym___FILE__] = ACTIONS(3112), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3112), [anon_sym___FUNCTION__] = ACTIONS(3112), [anon_sym___LINE__] = ACTIONS(3112), [anon_sym___MODULE__] = ACTIONS(3112), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3112), [anon_sym___TIME__] = ACTIONS(3112), [anon_sym___TIMESTAMP__] = ACTIONS(3112), [anon_sym___VENDOR__] = ACTIONS(3112), [anon_sym___VERSION__] = ACTIONS(3112), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3115), [sym_float_literal] = ACTIONS(3115), [sym__string] = ACTIONS(3115), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2111] = { [sym_import_declaration] = STATE(2627), [sym_mixin_declaration] = STATE(2627), [sym__declaration] = STATE(2627), [sym__declaration2] = STATE(2627), [sym_variable_declaration] = STATE(2627), [sym_manifest_constant] = STATE(2627), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2627), [sym_alias_declaration] = STATE(2627), [sym_alias_reassign] = STATE(2627), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2627), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2627), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2627), [sym_union_declaration] = STATE(2627), [sym_postblit] = STATE(2627), [sym_invariant_declaration] = STATE(2627), [sym_class_declaration] = STATE(2627), [sym_constructor] = STATE(2627), [sym_destructor] = STATE(2627), [sym_alias_this] = STATE(2627), [sym_interface_declaration] = STATE(2627), [sym_enum_declaration] = STATE(2627), [sym_anonymous_enum_declaration] = STATE(2627), [sym_function_declaration] = STATE(2627), [sym_template_declaration] = STATE(2627), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2627), [sym_template_mixin] = STATE(2627), [sym_conditional_declaration] = STATE(2627), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2627), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2627), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2627), [sym_static_assert] = STATE(2627), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2627), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6249), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5593), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2112] = { [sym_import_declaration] = STATE(1529), [sym_mixin_declaration] = STATE(1529), [sym__declaration] = STATE(1529), [sym__declaration2] = STATE(1529), [sym_variable_declaration] = STATE(1529), [sym_manifest_constant] = STATE(1529), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1529), [sym_alias_declaration] = STATE(1529), [sym_alias_reassign] = STATE(1529), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1529), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1529), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1529), [sym_union_declaration] = STATE(1529), [sym_postblit] = STATE(1529), [sym_invariant_declaration] = STATE(1529), [sym_class_declaration] = STATE(1529), [sym_constructor] = STATE(1529), [sym_destructor] = STATE(1529), [sym_alias_this] = STATE(1529), [sym_interface_declaration] = STATE(1529), [sym_enum_declaration] = STATE(1529), [sym_anonymous_enum_declaration] = STATE(1529), [sym_function_declaration] = STATE(1529), [sym_template_declaration] = STATE(1529), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1529), [sym_template_mixin] = STATE(1529), [sym_conditional_declaration] = STATE(1529), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1529), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1529), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1529), [sym_static_assert] = STATE(1529), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1529), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6253), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5817), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2113] = { [sym_import_declaration] = STATE(594), [sym_mixin_declaration] = STATE(594), [sym__declaration] = STATE(594), [sym__declaration2] = STATE(594), [sym_variable_declaration] = STATE(594), [sym_manifest_constant] = STATE(594), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(594), [sym_alias_declaration] = STATE(594), [sym_alias_reassign] = STATE(594), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(594), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(594), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(594), [sym_union_declaration] = STATE(594), [sym_postblit] = STATE(594), [sym_invariant_declaration] = STATE(594), [sym_class_declaration] = STATE(594), [sym_constructor] = STATE(594), [sym_destructor] = STATE(594), [sym_alias_this] = STATE(594), [sym_interface_declaration] = STATE(594), [sym_enum_declaration] = STATE(594), [sym_anonymous_enum_declaration] = STATE(594), [sym_function_declaration] = STATE(594), [sym_template_declaration] = STATE(594), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(594), [sym_template_mixin] = STATE(594), [sym_conditional_declaration] = STATE(594), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(594), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(594), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(594), [sym_static_assert] = STATE(594), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(594), [aux_sym_source_file_repeat1] = STATE(594), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6255), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2114] = { [sym_identifier] = ACTIONS(3064), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3067), [anon_sym_LBRACE] = ACTIONS(3067), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3067), [anon_sym_AMP] = ACTIONS(3064), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3064), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3067), [anon_sym_PLUS] = ACTIONS(3064), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3067), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3064), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3067), [anon_sym_RPAREN] = ACTIONS(3067), [anon_sym_LBRACK] = ACTIONS(3067), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3067), [anon_sym_DOLLAR] = ACTIONS(3067), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3064), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3064), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3064), [sym_byte] = ACTIONS(3064), [sym_ubyte] = ACTIONS(3064), [sym_char] = ACTIONS(3064), [sym_short] = ACTIONS(3064), [sym_ushort] = ACTIONS(3064), [sym_int] = ACTIONS(3064), [sym_uint] = ACTIONS(3064), [sym_long] = ACTIONS(3064), [sym_ulong] = ACTIONS(3064), [sym_cent] = ACTIONS(3064), [sym_ucent] = ACTIONS(3064), [sym_wchar] = ACTIONS(3064), [sym_dchar] = ACTIONS(3064), [sym_float] = ACTIONS(3064), [sym_double] = ACTIONS(3064), [sym_real] = ACTIONS(3064), [sym_ifloat] = ACTIONS(3064), [sym_idouble] = ACTIONS(3064), [sym_ireal] = ACTIONS(3064), [sym_cfloat] = ACTIONS(3064), [sym_cdouble] = ACTIONS(3064), [sym_creal] = ACTIONS(3064), [sym_size_t] = ACTIONS(3064), [sym_ptrdiff_t] = ACTIONS(3064), [sym_string] = ACTIONS(3064), [sym_cstring] = ACTIONS(3064), [sym_dstring] = ACTIONS(3064), [sym_wstring] = ACTIONS(3064), [sym_noreturn] = ACTIONS(3064), [sym_true] = ACTIONS(3064), [sym_false] = ACTIONS(3064), [sym_null] = ACTIONS(3064), [sym_super] = ACTIONS(3064), [sym_this] = ACTIONS(3064), [sym_assert] = ACTIONS(3064), [sym_auto] = ACTIONS(3064), [sym_cast] = ACTIONS(3064), [sym_catch] = ACTIONS(3064), [sym_const] = ACTIONS(3064), [sym_delegate] = ACTIONS(3064), [sym_delete] = ACTIONS(3064), [sym_do] = ACTIONS(3064), [sym_else] = ACTIONS(3064), [sym_finally] = ACTIONS(3064), [sym_function] = ACTIONS(3064), [sym_immutable] = ACTIONS(3064), [sym_import] = ACTIONS(3064), [sym_in] = ACTIONS(3064), [sym_inout] = ACTIONS(3064), [sym_is] = ACTIONS(3064), [sym_mixin] = ACTIONS(3064), [sym_new] = ACTIONS(3064), [sym_out] = ACTIONS(3064), [sym_ref] = ACTIONS(3064), [sym_shared] = ACTIONS(3064), [sym_throw] = ACTIONS(3064), [sym_typeid] = ACTIONS(3064), [sym_typeof] = ACTIONS(3064), [sym_traits] = ACTIONS(3064), [sym_vector] = ACTIONS(3064), [sym_void] = ACTIONS(3064), [anon_sym_BQUOTE] = ACTIONS(3067), [anon_sym_r_DQUOTE] = ACTIONS(3067), [anon_sym_x_DQUOTE] = ACTIONS(3067), [anon_sym_DQUOTE] = ACTIONS(3067), [anon_sym_i_BQUOTE] = ACTIONS(3067), [anon_sym_i_DQUOTE] = ACTIONS(3067), [anon_sym_iq_LBRACE] = ACTIONS(3067), [aux_sym_char_literal_token1] = ACTIONS(3067), [anon_sym_SQUOTE] = ACTIONS(3064), [anon_sym___DATE__] = ACTIONS(3064), [anon_sym___FILE__] = ACTIONS(3064), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3064), [anon_sym___FUNCTION__] = ACTIONS(3064), [anon_sym___LINE__] = ACTIONS(3064), [anon_sym___MODULE__] = ACTIONS(3064), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3064), [anon_sym___TIME__] = ACTIONS(3064), [anon_sym___TIMESTAMP__] = ACTIONS(3064), [anon_sym___VENDOR__] = ACTIONS(3064), [anon_sym___VERSION__] = ACTIONS(3064), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3067), [sym_float_literal] = ACTIONS(3067), [sym__string] = ACTIONS(3067), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2115] = { [sym_import_declaration] = STATE(1545), [sym_mixin_declaration] = STATE(1545), [sym__declaration] = STATE(1545), [sym__declaration2] = STATE(1545), [sym_variable_declaration] = STATE(1545), [sym_manifest_constant] = STATE(1545), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1545), [sym_alias_declaration] = STATE(1545), [sym_alias_reassign] = STATE(1545), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1545), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1545), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1545), [sym_union_declaration] = STATE(1545), [sym_postblit] = STATE(1545), [sym_invariant_declaration] = STATE(1545), [sym_class_declaration] = STATE(1545), [sym_constructor] = STATE(1545), [sym_destructor] = STATE(1545), [sym_alias_this] = STATE(1545), [sym_interface_declaration] = STATE(1545), [sym_enum_declaration] = STATE(1545), [sym_anonymous_enum_declaration] = STATE(1545), [sym_function_declaration] = STATE(1545), [sym_template_declaration] = STATE(1545), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1545), [sym_template_mixin] = STATE(1545), [sym_conditional_declaration] = STATE(1545), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1545), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1545), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1545), [sym_static_assert] = STATE(1545), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1545), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6257), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5613), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2116] = { [sym_identifier] = ACTIONS(3106), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3109), [anon_sym_LBRACE] = ACTIONS(3109), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3109), [anon_sym_AMP] = ACTIONS(3106), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3106), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3109), [anon_sym_PLUS] = ACTIONS(3106), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3109), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3106), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3109), [anon_sym_RPAREN] = ACTIONS(3109), [anon_sym_LBRACK] = ACTIONS(3109), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3109), [anon_sym_DOLLAR] = ACTIONS(3109), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3106), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3106), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3106), [sym_byte] = ACTIONS(3106), [sym_ubyte] = ACTIONS(3106), [sym_char] = ACTIONS(3106), [sym_short] = ACTIONS(3106), [sym_ushort] = ACTIONS(3106), [sym_int] = ACTIONS(3106), [sym_uint] = ACTIONS(3106), [sym_long] = ACTIONS(3106), [sym_ulong] = ACTIONS(3106), [sym_cent] = ACTIONS(3106), [sym_ucent] = ACTIONS(3106), [sym_wchar] = ACTIONS(3106), [sym_dchar] = ACTIONS(3106), [sym_float] = ACTIONS(3106), [sym_double] = ACTIONS(3106), [sym_real] = ACTIONS(3106), [sym_ifloat] = ACTIONS(3106), [sym_idouble] = ACTIONS(3106), [sym_ireal] = ACTIONS(3106), [sym_cfloat] = ACTIONS(3106), [sym_cdouble] = ACTIONS(3106), [sym_creal] = ACTIONS(3106), [sym_size_t] = ACTIONS(3106), [sym_ptrdiff_t] = ACTIONS(3106), [sym_string] = ACTIONS(3106), [sym_cstring] = ACTIONS(3106), [sym_dstring] = ACTIONS(3106), [sym_wstring] = ACTIONS(3106), [sym_noreturn] = ACTIONS(3106), [sym_true] = ACTIONS(3106), [sym_false] = ACTIONS(3106), [sym_null] = ACTIONS(3106), [sym_super] = ACTIONS(3106), [sym_this] = ACTIONS(3106), [sym_assert] = ACTIONS(3106), [sym_auto] = ACTIONS(3106), [sym_cast] = ACTIONS(3106), [sym_catch] = ACTIONS(3106), [sym_const] = ACTIONS(3106), [sym_delegate] = ACTIONS(3106), [sym_delete] = ACTIONS(3106), [sym_do] = ACTIONS(3106), [sym_else] = ACTIONS(3106), [sym_finally] = ACTIONS(3106), [sym_function] = ACTIONS(3106), [sym_immutable] = ACTIONS(3106), [sym_import] = ACTIONS(3106), [sym_in] = ACTIONS(3106), [sym_inout] = ACTIONS(3106), [sym_is] = ACTIONS(3106), [sym_mixin] = ACTIONS(3106), [sym_new] = ACTIONS(3106), [sym_out] = ACTIONS(3106), [sym_ref] = ACTIONS(3106), [sym_shared] = ACTIONS(3106), [sym_throw] = ACTIONS(3106), [sym_typeid] = ACTIONS(3106), [sym_typeof] = ACTIONS(3106), [sym_traits] = ACTIONS(3106), [sym_vector] = ACTIONS(3106), [sym_void] = ACTIONS(3106), [anon_sym_BQUOTE] = ACTIONS(3109), [anon_sym_r_DQUOTE] = ACTIONS(3109), [anon_sym_x_DQUOTE] = ACTIONS(3109), [anon_sym_DQUOTE] = ACTIONS(3109), [anon_sym_i_BQUOTE] = ACTIONS(3109), [anon_sym_i_DQUOTE] = ACTIONS(3109), [anon_sym_iq_LBRACE] = ACTIONS(3109), [aux_sym_char_literal_token1] = ACTIONS(3109), [anon_sym_SQUOTE] = ACTIONS(3106), [anon_sym___DATE__] = ACTIONS(3106), [anon_sym___FILE__] = ACTIONS(3106), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3106), [anon_sym___FUNCTION__] = ACTIONS(3106), [anon_sym___LINE__] = ACTIONS(3106), [anon_sym___MODULE__] = ACTIONS(3106), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3106), [anon_sym___TIME__] = ACTIONS(3106), [anon_sym___TIMESTAMP__] = ACTIONS(3106), [anon_sym___VENDOR__] = ACTIONS(3106), [anon_sym___VERSION__] = ACTIONS(3106), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3109), [sym_float_literal] = ACTIONS(3109), [sym__string] = ACTIONS(3109), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2117] = { [sym_import_declaration] = STATE(2522), [sym_mixin_declaration] = STATE(2522), [sym__declaration] = STATE(2522), [sym__declaration2] = STATE(2522), [sym_variable_declaration] = STATE(2522), [sym_manifest_constant] = STATE(2522), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2522), [sym_alias_declaration] = STATE(2522), [sym_alias_reassign] = STATE(2522), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2522), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2522), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2522), [sym_union_declaration] = STATE(2522), [sym_postblit] = STATE(2522), [sym_invariant_declaration] = STATE(2522), [sym_class_declaration] = STATE(2522), [sym_constructor] = STATE(2522), [sym_destructor] = STATE(2522), [sym_alias_this] = STATE(2522), [sym_interface_declaration] = STATE(2522), [sym_enum_declaration] = STATE(2522), [sym_anonymous_enum_declaration] = STATE(2522), [sym_function_declaration] = STATE(2522), [sym_template_declaration] = STATE(2522), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2522), [sym_template_mixin] = STATE(2522), [sym_conditional_declaration] = STATE(2522), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2522), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2522), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2522), [sym_static_assert] = STATE(2522), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2522), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6223), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6225), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2118] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_catch] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(6259), [sym_finally] = ACTIONS(3088), [sym_function] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2119] = { [sym_import_declaration] = STATE(2592), [sym_mixin_declaration] = STATE(2592), [sym__declaration] = STATE(2592), [sym__declaration2] = STATE(2592), [sym_variable_declaration] = STATE(2592), [sym_manifest_constant] = STATE(2592), [sym_storage_class] = STATE(3003), [sym_auto_declaration] = STATE(2592), [sym_alias_declaration] = STATE(2592), [sym_alias_reassign] = STATE(2592), [sym_type] = STATE(5611), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2592), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2154), [sym__attribute] = STATE(2154), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2592), [sym_pragma_expression] = STATE(1950), [sym_mixin_expression] = STATE(5311), [sym_struct_declaration] = STATE(2592), [sym_union_declaration] = STATE(2592), [sym_postblit] = STATE(2592), [sym_invariant_declaration] = STATE(2592), [sym_class_declaration] = STATE(2592), [sym_constructor] = STATE(2592), [sym_destructor] = STATE(2592), [sym_alias_this] = STATE(2592), [sym_interface_declaration] = STATE(2592), [sym_enum_declaration] = STATE(2592), [sym_anonymous_enum_declaration] = STATE(2592), [sym_function_declaration] = STATE(2592), [sym_template_declaration] = STATE(2592), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2592), [sym_template_mixin] = STATE(2592), [sym_conditional_declaration] = STATE(2592), [sym_condition] = STATE(2083), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2592), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2592), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2592), [sym_static_assert] = STATE(2592), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2592), [aux_sym_import_declaration_repeat1] = STATE(2154), [aux_sym_variable_declaration_repeat1] = STATE(3003), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6239), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6115), [anon_sym_TILDE] = ACTIONS(5587), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5589), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(27), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(31), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(35), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(39), [sym_export] = ACTIONS(1284), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(45), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(47), [sym_invariant] = ACTIONS(49), [sym_mixin] = ACTIONS(51), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1284), [sym_protected] = ACTIONS(1284), [sym_public] = ACTIONS(1284), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1284), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1747), [sym_static] = ACTIONS(5591), [sym_struct] = ACTIONS(63), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(65), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(69), [sym_unittest] = ACTIONS(71), [sym_version] = ACTIONS(73), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2120] = { [sym_import_declaration] = STATE(2292), [sym_mixin_declaration] = STATE(2292), [sym__declaration] = STATE(2292), [sym__declaration2] = STATE(2292), [sym_variable_declaration] = STATE(2292), [sym_manifest_constant] = STATE(2292), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2292), [sym_alias_declaration] = STATE(2292), [sym_alias_reassign] = STATE(2292), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2292), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2292), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2292), [sym_union_declaration] = STATE(2292), [sym_postblit] = STATE(2292), [sym_invariant_declaration] = STATE(2292), [sym_class_declaration] = STATE(2292), [sym_constructor] = STATE(2292), [sym_destructor] = STATE(2292), [sym_alias_this] = STATE(2292), [sym_interface_declaration] = STATE(2292), [sym_enum_declaration] = STATE(2292), [sym_anonymous_enum_declaration] = STATE(2292), [sym_function_declaration] = STATE(2292), [sym_template_declaration] = STATE(2292), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2292), [sym_template_mixin] = STATE(2292), [sym_conditional_declaration] = STATE(2292), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2292), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2292), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2292), [sym_static_assert] = STATE(2292), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2292), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6263), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6265), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2121] = { [sym_import_declaration] = STATE(609), [sym_mixin_declaration] = STATE(609), [sym__declaration] = STATE(609), [sym__declaration2] = STATE(609), [sym_variable_declaration] = STATE(609), [sym_manifest_constant] = STATE(609), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(609), [sym_alias_declaration] = STATE(609), [sym_alias_reassign] = STATE(609), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(609), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(609), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(609), [sym_union_declaration] = STATE(609), [sym_postblit] = STATE(609), [sym_invariant_declaration] = STATE(609), [sym_class_declaration] = STATE(609), [sym_constructor] = STATE(609), [sym_destructor] = STATE(609), [sym_alias_this] = STATE(609), [sym_interface_declaration] = STATE(609), [sym_enum_declaration] = STATE(609), [sym_anonymous_enum_declaration] = STATE(609), [sym_function_declaration] = STATE(609), [sym_template_declaration] = STATE(609), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(609), [sym_template_mixin] = STATE(609), [sym_conditional_declaration] = STATE(609), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(609), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(609), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(609), [sym_static_assert] = STATE(609), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(609), [aux_sym_source_file_repeat1] = STATE(609), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6267), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2122] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_catch] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(6269), [sym_finally] = ACTIONS(3088), [sym_function] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2123] = { [sym_import_declaration] = STATE(1761), [sym_mixin_declaration] = STATE(1761), [sym__declaration] = STATE(1761), [sym__declaration2] = STATE(1761), [sym_variable_declaration] = STATE(1761), [sym_manifest_constant] = STATE(1761), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1761), [sym_alias_declaration] = STATE(1761), [sym_alias_reassign] = STATE(1761), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1761), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1761), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1761), [sym_union_declaration] = STATE(1761), [sym_postblit] = STATE(1761), [sym_invariant_declaration] = STATE(1761), [sym_class_declaration] = STATE(1761), [sym_constructor] = STATE(1761), [sym_destructor] = STATE(1761), [sym_alias_this] = STATE(1761), [sym_interface_declaration] = STATE(1761), [sym_enum_declaration] = STATE(1761), [sym_anonymous_enum_declaration] = STATE(1761), [sym_function_declaration] = STATE(1761), [sym_template_declaration] = STATE(1761), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1761), [sym_template_mixin] = STATE(1761), [sym_conditional_declaration] = STATE(1761), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1761), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1761), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1761), [sym_static_assert] = STATE(1761), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1761), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6272), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6005), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2124] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_SLASH] = ACTIONS(3098), [anon_sym_SLASH_EQ] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_AMP] = ACTIONS(3098), [anon_sym_AMP_EQ] = ACTIONS(3100), [anon_sym_AMP_AMP] = ACTIONS(3100), [anon_sym_PIPE] = ACTIONS(3098), [anon_sym_PIPE_EQ] = ACTIONS(3100), [anon_sym_PIPE_PIPE] = ACTIONS(3100), [anon_sym_DASH] = ACTIONS(3098), [anon_sym_DASH_EQ] = ACTIONS(3100), [anon_sym_DASH_DASH] = ACTIONS(3100), [anon_sym_PLUS] = ACTIONS(3098), [anon_sym_PLUS_EQ] = ACTIONS(3100), [anon_sym_PLUS_PLUS] = ACTIONS(3100), [anon_sym_LT] = ACTIONS(3098), [anon_sym_LT_EQ] = ACTIONS(3100), [anon_sym_LT_LT] = ACTIONS(3098), [anon_sym_LT_LT_EQ] = ACTIONS(3100), [anon_sym_GT] = ACTIONS(3098), [anon_sym_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3100), [anon_sym_GT_GT] = ACTIONS(3098), [anon_sym_GT_GT_GT] = ACTIONS(3098), [anon_sym_BANG] = ACTIONS(3098), [anon_sym_BANG_EQ] = ACTIONS(3100), [anon_sym_LPAREN] = ACTIONS(3100), [anon_sym_RPAREN] = ACTIONS(3100), [anon_sym_LBRACK] = ACTIONS(3100), [anon_sym_QMARK] = ACTIONS(3100), [anon_sym_COMMA] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_DOLLAR] = ACTIONS(3100), [anon_sym_EQ] = ACTIONS(3098), [anon_sym_EQ_EQ] = ACTIONS(3100), [anon_sym_STAR] = ACTIONS(3098), [anon_sym_STAR_EQ] = ACTIONS(3100), [anon_sym_PERCENT] = ACTIONS(3098), [anon_sym_PERCENT_EQ] = ACTIONS(3100), [anon_sym_CARET] = ACTIONS(3098), [anon_sym_CARET_EQ] = ACTIONS(3100), [anon_sym_CARET_CARET] = ACTIONS(3098), [anon_sym_CARET_CARET_EQ] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3098), [anon_sym_TILDE_EQ] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_true] = ACTIONS(3098), [sym_false] = ACTIONS(3098), [sym_null] = ACTIONS(3098), [sym_super] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_assert] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_cast] = ACTIONS(3098), [sym_catch] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_delegate] = ACTIONS(3098), [sym_delete] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_finally] = ACTIONS(3098), [sym_function] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_is] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_new] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_throw] = ACTIONS(3098), [sym_typeid] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [anon_sym_BQUOTE] = ACTIONS(3100), [anon_sym_r_DQUOTE] = ACTIONS(3100), [anon_sym_x_DQUOTE] = ACTIONS(3100), [anon_sym_DQUOTE] = ACTIONS(3100), [anon_sym_i_BQUOTE] = ACTIONS(3100), [anon_sym_i_DQUOTE] = ACTIONS(3100), [anon_sym_iq_LBRACE] = ACTIONS(3100), [aux_sym_char_literal_token1] = ACTIONS(3100), [anon_sym_SQUOTE] = ACTIONS(3098), [anon_sym___DATE__] = ACTIONS(3098), [anon_sym___FILE__] = ACTIONS(3098), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3098), [anon_sym___FUNCTION__] = ACTIONS(3098), [anon_sym___LINE__] = ACTIONS(3098), [anon_sym___MODULE__] = ACTIONS(3098), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3098), [anon_sym___TIME__] = ACTIONS(3098), [anon_sym___TIMESTAMP__] = ACTIONS(3098), [anon_sym___VENDOR__] = ACTIONS(3098), [anon_sym___VERSION__] = ACTIONS(3098), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3100), [sym_float_literal] = ACTIONS(3100), [sym__string] = ACTIONS(3100), [sym_not_in] = ACTIONS(3100), [sym_not_is] = ACTIONS(3100), }, [2125] = { [sym_import_declaration] = STATE(2309), [sym_mixin_declaration] = STATE(2309), [sym__declaration] = STATE(2309), [sym__declaration2] = STATE(2309), [sym_variable_declaration] = STATE(2309), [sym_manifest_constant] = STATE(2309), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2309), [sym_alias_declaration] = STATE(2309), [sym_alias_reassign] = STATE(2309), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2309), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2309), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2309), [sym_union_declaration] = STATE(2309), [sym_postblit] = STATE(2309), [sym_invariant_declaration] = STATE(2309), [sym_class_declaration] = STATE(2309), [sym_constructor] = STATE(2309), [sym_destructor] = STATE(2309), [sym_alias_this] = STATE(2309), [sym_interface_declaration] = STATE(2309), [sym_enum_declaration] = STATE(2309), [sym_anonymous_enum_declaration] = STATE(2309), [sym_function_declaration] = STATE(2309), [sym_template_declaration] = STATE(2309), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2309), [sym_template_mixin] = STATE(2309), [sym_conditional_declaration] = STATE(2309), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2309), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2309), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2309), [sym_static_assert] = STATE(2309), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2309), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6274), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5617), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2126] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_SLASH] = ACTIONS(3102), [anon_sym_SLASH_EQ] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_AMP] = ACTIONS(3102), [anon_sym_AMP_EQ] = ACTIONS(3104), [anon_sym_AMP_AMP] = ACTIONS(3104), [anon_sym_PIPE] = ACTIONS(3102), [anon_sym_PIPE_EQ] = ACTIONS(3104), [anon_sym_PIPE_PIPE] = ACTIONS(3104), [anon_sym_DASH] = ACTIONS(3102), [anon_sym_DASH_EQ] = ACTIONS(3104), [anon_sym_DASH_DASH] = ACTIONS(3104), [anon_sym_PLUS] = ACTIONS(3102), [anon_sym_PLUS_EQ] = ACTIONS(3104), [anon_sym_PLUS_PLUS] = ACTIONS(3104), [anon_sym_LT] = ACTIONS(3102), [anon_sym_LT_EQ] = ACTIONS(3104), [anon_sym_LT_LT] = ACTIONS(3102), [anon_sym_LT_LT_EQ] = ACTIONS(3104), [anon_sym_GT] = ACTIONS(3102), [anon_sym_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3104), [anon_sym_GT_GT] = ACTIONS(3102), [anon_sym_GT_GT_GT] = ACTIONS(3102), [anon_sym_BANG] = ACTIONS(3102), [anon_sym_BANG_EQ] = ACTIONS(3104), [anon_sym_LPAREN] = ACTIONS(3104), [anon_sym_RPAREN] = ACTIONS(3104), [anon_sym_LBRACK] = ACTIONS(3104), [anon_sym_QMARK] = ACTIONS(3104), [anon_sym_COMMA] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_DOLLAR] = ACTIONS(3104), [anon_sym_EQ] = ACTIONS(3102), [anon_sym_EQ_EQ] = ACTIONS(3104), [anon_sym_STAR] = ACTIONS(3102), [anon_sym_STAR_EQ] = ACTIONS(3104), [anon_sym_PERCENT] = ACTIONS(3102), [anon_sym_PERCENT_EQ] = ACTIONS(3104), [anon_sym_CARET] = ACTIONS(3102), [anon_sym_CARET_EQ] = ACTIONS(3104), [anon_sym_CARET_CARET] = ACTIONS(3102), [anon_sym_CARET_CARET_EQ] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3102), [anon_sym_TILDE_EQ] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_true] = ACTIONS(3102), [sym_false] = ACTIONS(3102), [sym_null] = ACTIONS(3102), [sym_super] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_assert] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_cast] = ACTIONS(3102), [sym_catch] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_delegate] = ACTIONS(3102), [sym_delete] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_finally] = ACTIONS(3102), [sym_function] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_is] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_new] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_throw] = ACTIONS(3102), [sym_typeid] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [anon_sym_BQUOTE] = ACTIONS(3104), [anon_sym_r_DQUOTE] = ACTIONS(3104), [anon_sym_x_DQUOTE] = ACTIONS(3104), [anon_sym_DQUOTE] = ACTIONS(3104), [anon_sym_i_BQUOTE] = ACTIONS(3104), [anon_sym_i_DQUOTE] = ACTIONS(3104), [anon_sym_iq_LBRACE] = ACTIONS(3104), [aux_sym_char_literal_token1] = ACTIONS(3104), [anon_sym_SQUOTE] = ACTIONS(3102), [anon_sym___DATE__] = ACTIONS(3102), [anon_sym___FILE__] = ACTIONS(3102), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3102), [anon_sym___FUNCTION__] = ACTIONS(3102), [anon_sym___LINE__] = ACTIONS(3102), [anon_sym___MODULE__] = ACTIONS(3102), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3102), [anon_sym___TIME__] = ACTIONS(3102), [anon_sym___TIMESTAMP__] = ACTIONS(3102), [anon_sym___VENDOR__] = ACTIONS(3102), [anon_sym___VERSION__] = ACTIONS(3102), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3104), [sym_float_literal] = ACTIONS(3104), [sym__string] = ACTIONS(3104), [sym_not_in] = ACTIONS(3104), [sym_not_is] = ACTIONS(3104), }, [2127] = { [sym_import_declaration] = STATE(2320), [sym_mixin_declaration] = STATE(2320), [sym__declaration] = STATE(2320), [sym__declaration2] = STATE(2320), [sym_variable_declaration] = STATE(2320), [sym_manifest_constant] = STATE(2320), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2320), [sym_alias_declaration] = STATE(2320), [sym_alias_reassign] = STATE(2320), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2320), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2161), [sym__attribute] = STATE(2161), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2320), [sym_pragma_expression] = STATE(1857), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2320), [sym_union_declaration] = STATE(2320), [sym_postblit] = STATE(2320), [sym_invariant_declaration] = STATE(2320), [sym_class_declaration] = STATE(2320), [sym_constructor] = STATE(2320), [sym_destructor] = STATE(2320), [sym_alias_this] = STATE(2320), [sym_interface_declaration] = STATE(2320), [sym_enum_declaration] = STATE(2320), [sym_anonymous_enum_declaration] = STATE(2320), [sym_function_declaration] = STATE(2320), [sym_template_declaration] = STATE(2320), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2320), [sym_template_mixin] = STATE(2320), [sym_conditional_declaration] = STATE(2320), [sym_condition] = STATE(1835), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2320), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2320), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2320), [sym_static_assert] = STATE(2320), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2320), [aux_sym_import_declaration_repeat1] = STATE(2161), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6276), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5913), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(872), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(872), [sym_protected] = ACTIONS(872), [sym_public] = ACTIONS(872), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(872), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5533), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2128] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3070), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3070), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_RPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3070), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3070), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_catch] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_finally] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2129] = { [sym_import_declaration] = STATE(590), [sym_mixin_declaration] = STATE(590), [sym__declaration] = STATE(590), [sym__declaration2] = STATE(590), [sym_variable_declaration] = STATE(590), [sym_manifest_constant] = STATE(590), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(590), [sym_alias_declaration] = STATE(590), [sym_alias_reassign] = STATE(590), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(590), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(590), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(590), [sym_union_declaration] = STATE(590), [sym_postblit] = STATE(590), [sym_invariant_declaration] = STATE(590), [sym_class_declaration] = STATE(590), [sym_constructor] = STATE(590), [sym_destructor] = STATE(590), [sym_alias_this] = STATE(590), [sym_interface_declaration] = STATE(590), [sym_enum_declaration] = STATE(590), [sym_anonymous_enum_declaration] = STATE(590), [sym_function_declaration] = STATE(590), [sym_template_declaration] = STATE(590), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(590), [sym_template_mixin] = STATE(590), [sym_conditional_declaration] = STATE(590), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(590), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(590), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(590), [sym_static_assert] = STATE(590), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(590), [aux_sym_source_file_repeat1] = STATE(590), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6278), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2130] = { [sym_import_declaration] = STATE(1797), [sym_mixin_declaration] = STATE(1797), [sym__declaration] = STATE(1797), [sym__declaration2] = STATE(1797), [sym_variable_declaration] = STATE(1797), [sym_manifest_constant] = STATE(1797), [sym_storage_class] = STATE(3005), [sym_auto_declaration] = STATE(1797), [sym_alias_declaration] = STATE(1797), [sym_alias_reassign] = STATE(1797), [sym_type] = STATE(5583), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1797), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2155), [sym__attribute] = STATE(2155), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1797), [sym_pragma_expression] = STATE(2080), [sym_mixin_expression] = STATE(5309), [sym_struct_declaration] = STATE(1797), [sym_union_declaration] = STATE(1797), [sym_postblit] = STATE(1797), [sym_invariant_declaration] = STATE(1797), [sym_class_declaration] = STATE(1797), [sym_constructor] = STATE(1797), [sym_destructor] = STATE(1797), [sym_alias_this] = STATE(1797), [sym_interface_declaration] = STATE(1797), [sym_enum_declaration] = STATE(1797), [sym_anonymous_enum_declaration] = STATE(1797), [sym_function_declaration] = STATE(1797), [sym_template_declaration] = STATE(1797), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1797), [sym_template_mixin] = STATE(1797), [sym_conditional_declaration] = STATE(1797), [sym_condition] = STATE(2068), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1797), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1797), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1797), [sym_static_assert] = STATE(1797), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1797), [aux_sym_source_file_repeat1] = STATE(1797), [aux_sym_import_declaration_repeat1] = STATE(2155), [aux_sym_variable_declaration_repeat1] = STATE(3005), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5271), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6280), [anon_sym_TILDE] = ACTIONS(5275), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5277), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(5279), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(5281), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5283), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(5285), [sym_export] = ACTIONS(5287), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5289), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(5291), [sym_invariant] = ACTIONS(5293), [sym_mixin] = ACTIONS(5295), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5287), [sym_protected] = ACTIONS(5287), [sym_public] = ACTIONS(5287), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5287), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5297), [sym_static] = ACTIONS(5299), [sym_struct] = ACTIONS(5301), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(5303), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(5305), [sym_unittest] = ACTIONS(5307), [sym_version] = ACTIONS(5309), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2131] = { [sym_identifier] = ACTIONS(3118), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3121), [anon_sym_LBRACE] = ACTIONS(3121), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3121), [anon_sym_AMP] = ACTIONS(3118), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3118), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3121), [anon_sym_PLUS] = ACTIONS(3118), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3121), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3118), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3121), [anon_sym_RPAREN] = ACTIONS(3121), [anon_sym_LBRACK] = ACTIONS(3121), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3121), [anon_sym_DOLLAR] = ACTIONS(3121), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3118), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3118), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3118), [sym_byte] = ACTIONS(3118), [sym_ubyte] = ACTIONS(3118), [sym_char] = ACTIONS(3118), [sym_short] = ACTIONS(3118), [sym_ushort] = ACTIONS(3118), [sym_int] = ACTIONS(3118), [sym_uint] = ACTIONS(3118), [sym_long] = ACTIONS(3118), [sym_ulong] = ACTIONS(3118), [sym_cent] = ACTIONS(3118), [sym_ucent] = ACTIONS(3118), [sym_wchar] = ACTIONS(3118), [sym_dchar] = ACTIONS(3118), [sym_float] = ACTIONS(3118), [sym_double] = ACTIONS(3118), [sym_real] = ACTIONS(3118), [sym_ifloat] = ACTIONS(3118), [sym_idouble] = ACTIONS(3118), [sym_ireal] = ACTIONS(3118), [sym_cfloat] = ACTIONS(3118), [sym_cdouble] = ACTIONS(3118), [sym_creal] = ACTIONS(3118), [sym_size_t] = ACTIONS(3118), [sym_ptrdiff_t] = ACTIONS(3118), [sym_string] = ACTIONS(3118), [sym_cstring] = ACTIONS(3118), [sym_dstring] = ACTIONS(3118), [sym_wstring] = ACTIONS(3118), [sym_noreturn] = ACTIONS(3118), [sym_true] = ACTIONS(3118), [sym_false] = ACTIONS(3118), [sym_null] = ACTIONS(3118), [sym_super] = ACTIONS(3118), [sym_this] = ACTIONS(3118), [sym_assert] = ACTIONS(3118), [sym_auto] = ACTIONS(3118), [sym_cast] = ACTIONS(3118), [sym_catch] = ACTIONS(3118), [sym_const] = ACTIONS(3118), [sym_delegate] = ACTIONS(3118), [sym_delete] = ACTIONS(3118), [sym_do] = ACTIONS(3118), [sym_else] = ACTIONS(3118), [sym_finally] = ACTIONS(3118), [sym_function] = ACTIONS(3118), [sym_immutable] = ACTIONS(3118), [sym_import] = ACTIONS(3118), [sym_in] = ACTIONS(3118), [sym_inout] = ACTIONS(3118), [sym_is] = ACTIONS(3118), [sym_mixin] = ACTIONS(3118), [sym_new] = ACTIONS(3118), [sym_out] = ACTIONS(3118), [sym_ref] = ACTIONS(3118), [sym_shared] = ACTIONS(3118), [sym_throw] = ACTIONS(3118), [sym_typeid] = ACTIONS(3118), [sym_typeof] = ACTIONS(3118), [sym_traits] = ACTIONS(3118), [sym_vector] = ACTIONS(3118), [sym_void] = ACTIONS(3118), [anon_sym_BQUOTE] = ACTIONS(3121), [anon_sym_r_DQUOTE] = ACTIONS(3121), [anon_sym_x_DQUOTE] = ACTIONS(3121), [anon_sym_DQUOTE] = ACTIONS(3121), [anon_sym_i_BQUOTE] = ACTIONS(3121), [anon_sym_i_DQUOTE] = ACTIONS(3121), [anon_sym_iq_LBRACE] = ACTIONS(3121), [aux_sym_char_literal_token1] = ACTIONS(3121), [anon_sym_SQUOTE] = ACTIONS(3118), [anon_sym___DATE__] = ACTIONS(3118), [anon_sym___FILE__] = ACTIONS(3118), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3118), [anon_sym___FUNCTION__] = ACTIONS(3118), [anon_sym___LINE__] = ACTIONS(3118), [anon_sym___MODULE__] = ACTIONS(3118), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3118), [anon_sym___TIME__] = ACTIONS(3118), [anon_sym___TIMESTAMP__] = ACTIONS(3118), [anon_sym___VENDOR__] = ACTIONS(3118), [anon_sym___VERSION__] = ACTIONS(3118), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3121), [sym_float_literal] = ACTIONS(3121), [sym__string] = ACTIONS(3121), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2132] = { [sym_import_declaration] = STATE(2320), [sym_mixin_declaration] = STATE(2320), [sym__declaration] = STATE(2320), [sym__declaration2] = STATE(2320), [sym_variable_declaration] = STATE(2320), [sym_manifest_constant] = STATE(2320), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2320), [sym_alias_declaration] = STATE(2320), [sym_alias_reassign] = STATE(2320), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2320), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2320), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2320), [sym_union_declaration] = STATE(2320), [sym_postblit] = STATE(2320), [sym_invariant_declaration] = STATE(2320), [sym_class_declaration] = STATE(2320), [sym_constructor] = STATE(2320), [sym_destructor] = STATE(2320), [sym_alias_this] = STATE(2320), [sym_interface_declaration] = STATE(2320), [sym_enum_declaration] = STATE(2320), [sym_anonymous_enum_declaration] = STATE(2320), [sym_function_declaration] = STATE(2320), [sym_template_declaration] = STATE(2320), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2320), [sym_template_mixin] = STATE(2320), [sym_conditional_declaration] = STATE(2320), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2320), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2320), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2320), [sym_static_assert] = STATE(2320), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2320), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6276), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5913), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2133] = { [sym_import_declaration] = STATE(2653), [sym_mixin_declaration] = STATE(2653), [sym__declaration] = STATE(2653), [sym__declaration2] = STATE(2653), [sym_variable_declaration] = STATE(2653), [sym_manifest_constant] = STATE(2653), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2653), [sym_alias_declaration] = STATE(2653), [sym_alias_reassign] = STATE(2653), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2653), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2653), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2653), [sym_union_declaration] = STATE(2653), [sym_postblit] = STATE(2653), [sym_invariant_declaration] = STATE(2653), [sym_class_declaration] = STATE(2653), [sym_constructor] = STATE(2653), [sym_destructor] = STATE(2653), [sym_alias_this] = STATE(2653), [sym_interface_declaration] = STATE(2653), [sym_enum_declaration] = STATE(2653), [sym_anonymous_enum_declaration] = STATE(2653), [sym_function_declaration] = STATE(2653), [sym_template_declaration] = STATE(2653), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2653), [sym_template_mixin] = STATE(2653), [sym_conditional_declaration] = STATE(2653), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2653), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2653), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2653), [sym_static_assert] = STATE(2653), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2653), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6282), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6284), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2134] = { [sym_import_declaration] = STATE(1786), [sym_mixin_declaration] = STATE(1786), [sym__declaration] = STATE(1786), [sym__declaration2] = STATE(1786), [sym_variable_declaration] = STATE(1786), [sym_manifest_constant] = STATE(1786), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(1786), [sym_alias_declaration] = STATE(1786), [sym_alias_reassign] = STATE(1786), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1786), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1786), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(1786), [sym_union_declaration] = STATE(1786), [sym_postblit] = STATE(1786), [sym_invariant_declaration] = STATE(1786), [sym_class_declaration] = STATE(1786), [sym_constructor] = STATE(1786), [sym_destructor] = STATE(1786), [sym_alias_this] = STATE(1786), [sym_interface_declaration] = STATE(1786), [sym_enum_declaration] = STATE(1786), [sym_anonymous_enum_declaration] = STATE(1786), [sym_function_declaration] = STATE(1786), [sym_template_declaration] = STATE(1786), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1786), [sym_template_mixin] = STATE(1786), [sym_conditional_declaration] = STATE(1786), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1786), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1786), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1786), [sym_static_assert] = STATE(1786), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1786), [aux_sym_source_file_repeat1] = STATE(1786), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6286), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2135] = { [sym_import_declaration] = STATE(2653), [sym_mixin_declaration] = STATE(2653), [sym__declaration] = STATE(2653), [sym__declaration2] = STATE(2653), [sym_variable_declaration] = STATE(2653), [sym_manifest_constant] = STATE(2653), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2653), [sym_alias_declaration] = STATE(2653), [sym_alias_reassign] = STATE(2653), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2653), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2653), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2653), [sym_union_declaration] = STATE(2653), [sym_postblit] = STATE(2653), [sym_invariant_declaration] = STATE(2653), [sym_class_declaration] = STATE(2653), [sym_constructor] = STATE(2653), [sym_destructor] = STATE(2653), [sym_alias_this] = STATE(2653), [sym_interface_declaration] = STATE(2653), [sym_enum_declaration] = STATE(2653), [sym_anonymous_enum_declaration] = STATE(2653), [sym_function_declaration] = STATE(2653), [sym_template_declaration] = STATE(2653), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2653), [sym_template_mixin] = STATE(2653), [sym_conditional_declaration] = STATE(2653), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2653), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2653), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2653), [sym_static_assert] = STATE(2653), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2653), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6282), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6284), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2136] = { [sym_import_declaration] = STATE(2309), [sym_mixin_declaration] = STATE(2309), [sym__declaration] = STATE(2309), [sym__declaration2] = STATE(2309), [sym_variable_declaration] = STATE(2309), [sym_manifest_constant] = STATE(2309), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2309), [sym_alias_declaration] = STATE(2309), [sym_alias_reassign] = STATE(2309), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2309), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2309), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2309), [sym_union_declaration] = STATE(2309), [sym_postblit] = STATE(2309), [sym_invariant_declaration] = STATE(2309), [sym_class_declaration] = STATE(2309), [sym_constructor] = STATE(2309), [sym_destructor] = STATE(2309), [sym_alias_this] = STATE(2309), [sym_interface_declaration] = STATE(2309), [sym_enum_declaration] = STATE(2309), [sym_anonymous_enum_declaration] = STATE(2309), [sym_function_declaration] = STATE(2309), [sym_template_declaration] = STATE(2309), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2309), [sym_template_mixin] = STATE(2309), [sym_conditional_declaration] = STATE(2309), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2309), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2309), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2309), [sym_static_assert] = STATE(2309), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2309), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6274), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5617), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2137] = { [sym_import_declaration] = STATE(2663), [sym_mixin_declaration] = STATE(2663), [sym__declaration] = STATE(2663), [sym__declaration2] = STATE(2663), [sym_variable_declaration] = STATE(2663), [sym_manifest_constant] = STATE(2663), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2663), [sym_alias_declaration] = STATE(2663), [sym_alias_reassign] = STATE(2663), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2663), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2663), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2663), [sym_union_declaration] = STATE(2663), [sym_postblit] = STATE(2663), [sym_invariant_declaration] = STATE(2663), [sym_class_declaration] = STATE(2663), [sym_constructor] = STATE(2663), [sym_destructor] = STATE(2663), [sym_alias_this] = STATE(2663), [sym_interface_declaration] = STATE(2663), [sym_enum_declaration] = STATE(2663), [sym_anonymous_enum_declaration] = STATE(2663), [sym_function_declaration] = STATE(2663), [sym_template_declaration] = STATE(2663), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2663), [sym_template_mixin] = STATE(2663), [sym_conditional_declaration] = STATE(2663), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2663), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2663), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2663), [sym_static_assert] = STATE(2663), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2663), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6288), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5985), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2138] = { [sym_import_declaration] = STATE(2672), [sym_mixin_declaration] = STATE(2672), [sym__declaration] = STATE(2672), [sym__declaration2] = STATE(2672), [sym_variable_declaration] = STATE(2672), [sym_manifest_constant] = STATE(2672), [sym_storage_class] = STATE(3007), [sym_auto_declaration] = STATE(2672), [sym_alias_declaration] = STATE(2672), [sym_alias_reassign] = STATE(2672), [sym_type] = STATE(5639), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2672), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2160), [sym__attribute] = STATE(2160), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2672), [sym_pragma_expression] = STATE(1865), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2672), [sym_union_declaration] = STATE(2672), [sym_postblit] = STATE(2672), [sym_invariant_declaration] = STATE(2672), [sym_class_declaration] = STATE(2672), [sym_constructor] = STATE(2672), [sym_destructor] = STATE(2672), [sym_alias_this] = STATE(2672), [sym_interface_declaration] = STATE(2672), [sym_enum_declaration] = STATE(2672), [sym_anonymous_enum_declaration] = STATE(2672), [sym_function_declaration] = STATE(2672), [sym_template_declaration] = STATE(2672), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2672), [sym_template_mixin] = STATE(2672), [sym_conditional_declaration] = STATE(2672), [sym_condition] = STATE(1946), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2672), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2672), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2672), [sym_static_assert] = STATE(2672), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2672), [aux_sym_import_declaration_repeat1] = STATE(2160), [aux_sym_variable_declaration_repeat1] = STATE(3007), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6290), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5911), [anon_sym_TILDE] = ACTIONS(5181), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5183), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(5187), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(5191), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(5187), [sym_protected] = ACTIONS(5187), [sym_public] = ACTIONS(5187), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(5187), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(5195), [sym_static] = ACTIONS(5197), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(5199), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2139] = { [sym_import_declaration] = STATE(2663), [sym_mixin_declaration] = STATE(2663), [sym__declaration] = STATE(2663), [sym__declaration2] = STATE(2663), [sym_variable_declaration] = STATE(2663), [sym_manifest_constant] = STATE(2663), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2663), [sym_alias_declaration] = STATE(2663), [sym_alias_reassign] = STATE(2663), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2663), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2663), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2663), [sym_union_declaration] = STATE(2663), [sym_postblit] = STATE(2663), [sym_invariant_declaration] = STATE(2663), [sym_class_declaration] = STATE(2663), [sym_constructor] = STATE(2663), [sym_destructor] = STATE(2663), [sym_alias_this] = STATE(2663), [sym_interface_declaration] = STATE(2663), [sym_enum_declaration] = STATE(2663), [sym_anonymous_enum_declaration] = STATE(2663), [sym_function_declaration] = STATE(2663), [sym_template_declaration] = STATE(2663), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2663), [sym_template_mixin] = STATE(2663), [sym_conditional_declaration] = STATE(2663), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2663), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2663), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2663), [sym_static_assert] = STATE(2663), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2663), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6288), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5985), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2140] = { [sym_import_declaration] = STATE(2672), [sym_mixin_declaration] = STATE(2672), [sym__declaration] = STATE(2672), [sym__declaration2] = STATE(2672), [sym_variable_declaration] = STATE(2672), [sym_manifest_constant] = STATE(2672), [sym_storage_class] = STATE(3006), [sym_auto_declaration] = STATE(2672), [sym_alias_declaration] = STATE(2672), [sym_alias_reassign] = STATE(2672), [sym_type] = STATE(5707), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2672), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2157), [sym__attribute] = STATE(2157), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2672), [sym_pragma_expression] = STATE(2013), [sym_mixin_expression] = STATE(5313), [sym_struct_declaration] = STATE(2672), [sym_union_declaration] = STATE(2672), [sym_postblit] = STATE(2672), [sym_invariant_declaration] = STATE(2672), [sym_class_declaration] = STATE(2672), [sym_constructor] = STATE(2672), [sym_destructor] = STATE(2672), [sym_alias_this] = STATE(2672), [sym_interface_declaration] = STATE(2672), [sym_enum_declaration] = STATE(2672), [sym_anonymous_enum_declaration] = STATE(2672), [sym_function_declaration] = STATE(2672), [sym_template_declaration] = STATE(2672), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2672), [sym_template_mixin] = STATE(2672), [sym_conditional_declaration] = STATE(2672), [sym_condition] = STATE(1917), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2672), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2672), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2672), [sym_static_assert] = STATE(2672), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2672), [aux_sym_import_declaration_repeat1] = STATE(2157), [aux_sym_variable_declaration_repeat1] = STATE(3006), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5177), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6290), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5911), [anon_sym_TILDE] = ACTIONS(5569), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5571), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(1042), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(1048), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5185), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(1170), [sym_export] = ACTIONS(1060), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5189), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(1076), [sym_invariant] = ACTIONS(1078), [sym_mixin] = ACTIONS(5193), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(1060), [sym_protected] = ACTIONS(1060), [sym_public] = ACTIONS(1060), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(1060), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(1178), [sym_static] = ACTIONS(5573), [sym_struct] = ACTIONS(1098), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(1106), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(1110), [sym_unittest] = ACTIONS(1112), [sym_version] = ACTIONS(5201), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2141] = { [sym_import_declaration] = STATE(1577), [sym_mixin_declaration] = STATE(1577), [sym__declaration] = STATE(1577), [sym__declaration2] = STATE(1577), [sym_variable_declaration] = STATE(1577), [sym_manifest_constant] = STATE(1577), [sym_storage_class] = STATE(2996), [sym_auto_declaration] = STATE(1577), [sym_alias_declaration] = STATE(1577), [sym_alias_reassign] = STATE(1577), [sym_type] = STATE(5680), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1577), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2158), [sym__attribute] = STATE(2158), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1577), [sym_pragma_expression] = STATE(1867), [sym_mixin_expression] = STATE(5281), [sym_struct_declaration] = STATE(1577), [sym_union_declaration] = STATE(1577), [sym_postblit] = STATE(1577), [sym_invariant_declaration] = STATE(1577), [sym_class_declaration] = STATE(1577), [sym_constructor] = STATE(1577), [sym_destructor] = STATE(1577), [sym_alias_this] = STATE(1577), [sym_interface_declaration] = STATE(1577), [sym_enum_declaration] = STATE(1577), [sym_anonymous_enum_declaration] = STATE(1577), [sym_function_declaration] = STATE(1577), [sym_template_declaration] = STATE(1577), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1577), [sym_template_mixin] = STATE(1577), [sym_conditional_declaration] = STATE(1577), [sym_condition] = STATE(1908), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1577), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1577), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1577), [sym_static_assert] = STATE(1577), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1577), [aux_sym_import_declaration_repeat1] = STATE(2158), [aux_sym_variable_declaration_repeat1] = STATE(2996), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2870), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6292), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(5511), [anon_sym_TILDE] = ACTIONS(2874), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2876), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(109), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(123), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2878), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(137), [sym_export] = ACTIONS(139), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2880), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(157), [sym_invariant] = ACTIONS(159), [sym_mixin] = ACTIONS(2882), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(139), [sym_protected] = ACTIONS(139), [sym_public] = ACTIONS(139), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(139), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(177), [sym_static] = ACTIONS(2884), [sym_struct] = ACTIONS(181), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(187), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(197), [sym_unittest] = ACTIONS(199), [sym_version] = ACTIONS(2886), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2142] = { [sym_import_declaration] = STATE(2292), [sym_mixin_declaration] = STATE(2292), [sym__declaration] = STATE(2292), [sym__declaration2] = STATE(2292), [sym_variable_declaration] = STATE(2292), [sym_manifest_constant] = STATE(2292), [sym_storage_class] = STATE(2995), [sym_auto_declaration] = STATE(2292), [sym_alias_declaration] = STATE(2292), [sym_alias_reassign] = STATE(2292), [sym_type] = STATE(5640), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(2292), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2159), [sym__attribute] = STATE(2159), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(2292), [sym_pragma_expression] = STATE(2088), [sym_mixin_expression] = STATE(5303), [sym_struct_declaration] = STATE(2292), [sym_union_declaration] = STATE(2292), [sym_postblit] = STATE(2292), [sym_invariant_declaration] = STATE(2292), [sym_class_declaration] = STATE(2292), [sym_constructor] = STATE(2292), [sym_destructor] = STATE(2292), [sym_alias_this] = STATE(2292), [sym_interface_declaration] = STATE(2292), [sym_enum_declaration] = STATE(2292), [sym_anonymous_enum_declaration] = STATE(2292), [sym_function_declaration] = STATE(2292), [sym_template_declaration] = STATE(2292), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(2292), [sym_template_mixin] = STATE(2292), [sym_conditional_declaration] = STATE(2292), [sym_condition] = STATE(1925), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(2292), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(2292), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(2292), [sym_static_assert] = STATE(2292), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(2292), [aux_sym_import_declaration_repeat1] = STATE(2159), [aux_sym_variable_declaration_repeat1] = STATE(2995), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(5515), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6263), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6265), [anon_sym_TILDE] = ACTIONS(5523), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(5525), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(704), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(720), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(5527), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(870), [sym_export] = ACTIONS(742), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(5529), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(762), [sym_invariant] = ACTIONS(764), [sym_mixin] = ACTIONS(5531), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(742), [sym_protected] = ACTIONS(742), [sym_public] = ACTIONS(742), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(742), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(886), [sym_static] = ACTIONS(5723), [sym_struct] = ACTIONS(788), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(796), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(804), [sym_unittest] = ACTIONS(806), [sym_version] = ACTIONS(5535), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2143] = { [sym_import_declaration] = STATE(1500), [sym_mixin_declaration] = STATE(1500), [sym__declaration] = STATE(1500), [sym__declaration2] = STATE(1500), [sym_variable_declaration] = STATE(1500), [sym_manifest_constant] = STATE(1500), [sym_storage_class] = STATE(2988), [sym_auto_declaration] = STATE(1500), [sym_alias_declaration] = STATE(1500), [sym_alias_reassign] = STATE(1500), [sym_type] = STATE(5678), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_attribute_declaration] = STATE(1500), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2150), [sym__attribute] = STATE(2150), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_declaration] = STATE(1500), [sym_pragma_expression] = STATE(1878), [sym_mixin_expression] = STATE(5259), [sym_struct_declaration] = STATE(1500), [sym_union_declaration] = STATE(1500), [sym_postblit] = STATE(1500), [sym_invariant_declaration] = STATE(1500), [sym_class_declaration] = STATE(1500), [sym_constructor] = STATE(1500), [sym_destructor] = STATE(1500), [sym_alias_this] = STATE(1500), [sym_interface_declaration] = STATE(1500), [sym_enum_declaration] = STATE(1500), [sym_anonymous_enum_declaration] = STATE(1500), [sym_function_declaration] = STATE(1500), [sym_template_declaration] = STATE(1500), [sym_template_instance] = STATE(5035), [sym_mixin_template_declaration] = STATE(1500), [sym_template_mixin] = STATE(1500), [sym_conditional_declaration] = STATE(1500), [sym_condition] = STATE(1891), [sym_version_condition] = STATE(2924), [sym_version_specification] = STATE(1500), [sym_debug_condition] = STATE(2924), [sym_debug_specification] = STATE(1500), [sym_static_if_condition] = STATE(2924), [sym_static_foreach_declaration] = STATE(1500), [sym_static_assert] = STATE(1500), [sym_traits_expression] = STATE(4997), [sym_unittest_declaration] = STATE(1500), [aux_sym_import_declaration_repeat1] = STATE(2150), [aux_sym_variable_declaration_repeat1] = STATE(2988), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(2641), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6294), [anon_sym_DOT] = ACTIONS(13), [anon_sym_SEMI] = ACTIONS(6296), [anon_sym_TILDE] = ACTIONS(2649), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(2651), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(261), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(269), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(2653), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(277), [sym_export] = ACTIONS(279), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(2655), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(293), [sym_invariant] = ACTIONS(295), [sym_mixin] = ACTIONS(2657), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(279), [sym_protected] = ACTIONS(279), [sym_public] = ACTIONS(279), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(279), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(303), [sym_static] = ACTIONS(2659), [sym_struct] = ACTIONS(307), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(313), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(317), [sym_unittest] = ACTIONS(319), [sym_version] = ACTIONS(2661), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2144] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(6298), [sym_function] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2145] = { [sym_identifier] = ACTIONS(3088), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3091), [anon_sym_LBRACE] = ACTIONS(3091), [anon_sym_SLASH] = ACTIONS(3070), [anon_sym_SLASH_EQ] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3091), [anon_sym_AMP] = ACTIONS(3088), [anon_sym_AMP_EQ] = ACTIONS(3072), [anon_sym_AMP_AMP] = ACTIONS(3072), [anon_sym_PIPE] = ACTIONS(3070), [anon_sym_PIPE_EQ] = ACTIONS(3072), [anon_sym_PIPE_PIPE] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3088), [anon_sym_DASH_EQ] = ACTIONS(3072), [anon_sym_DASH_DASH] = ACTIONS(3091), [anon_sym_PLUS] = ACTIONS(3088), [anon_sym_PLUS_EQ] = ACTIONS(3072), [anon_sym_PLUS_PLUS] = ACTIONS(3091), [anon_sym_LT] = ACTIONS(3070), [anon_sym_LT_EQ] = ACTIONS(3072), [anon_sym_LT_LT] = ACTIONS(3070), [anon_sym_LT_LT_EQ] = ACTIONS(3072), [anon_sym_GT] = ACTIONS(3070), [anon_sym_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT_GT_EQ] = ACTIONS(3072), [anon_sym_GT_GT] = ACTIONS(3070), [anon_sym_GT_GT_GT] = ACTIONS(3070), [anon_sym_BANG] = ACTIONS(3088), [anon_sym_BANG_EQ] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3091), [anon_sym_RPAREN] = ACTIONS(3091), [anon_sym_LBRACK] = ACTIONS(3091), [anon_sym_QMARK] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3091), [anon_sym_DOLLAR] = ACTIONS(3091), [anon_sym_EQ] = ACTIONS(3070), [anon_sym_EQ_EQ] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3088), [anon_sym_STAR_EQ] = ACTIONS(3072), [anon_sym_PERCENT] = ACTIONS(3070), [anon_sym_PERCENT_EQ] = ACTIONS(3072), [anon_sym_CARET] = ACTIONS(3070), [anon_sym_CARET_EQ] = ACTIONS(3072), [anon_sym_CARET_CARET] = ACTIONS(3070), [anon_sym_CARET_CARET_EQ] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3088), [anon_sym_TILDE_EQ] = ACTIONS(3072), [sym_bool] = ACTIONS(3088), [sym_byte] = ACTIONS(3088), [sym_ubyte] = ACTIONS(3088), [sym_char] = ACTIONS(3088), [sym_short] = ACTIONS(3088), [sym_ushort] = ACTIONS(3088), [sym_int] = ACTIONS(3088), [sym_uint] = ACTIONS(3088), [sym_long] = ACTIONS(3088), [sym_ulong] = ACTIONS(3088), [sym_cent] = ACTIONS(3088), [sym_ucent] = ACTIONS(3088), [sym_wchar] = ACTIONS(3088), [sym_dchar] = ACTIONS(3088), [sym_float] = ACTIONS(3088), [sym_double] = ACTIONS(3088), [sym_real] = ACTIONS(3088), [sym_ifloat] = ACTIONS(3088), [sym_idouble] = ACTIONS(3088), [sym_ireal] = ACTIONS(3088), [sym_cfloat] = ACTIONS(3088), [sym_cdouble] = ACTIONS(3088), [sym_creal] = ACTIONS(3088), [sym_size_t] = ACTIONS(3088), [sym_ptrdiff_t] = ACTIONS(3088), [sym_string] = ACTIONS(3088), [sym_cstring] = ACTIONS(3088), [sym_dstring] = ACTIONS(3088), [sym_wstring] = ACTIONS(3088), [sym_noreturn] = ACTIONS(3088), [sym_true] = ACTIONS(3088), [sym_false] = ACTIONS(3088), [sym_null] = ACTIONS(3088), [sym_super] = ACTIONS(3088), [sym_this] = ACTIONS(3088), [sym_assert] = ACTIONS(3088), [sym_auto] = ACTIONS(3088), [sym_cast] = ACTIONS(3088), [sym_const] = ACTIONS(3088), [sym_delegate] = ACTIONS(3088), [sym_delete] = ACTIONS(3088), [sym_do] = ACTIONS(3088), [sym_else] = ACTIONS(6301), [sym_function] = ACTIONS(3088), [sym_immutable] = ACTIONS(3088), [sym_import] = ACTIONS(3088), [sym_in] = ACTIONS(3088), [sym_inout] = ACTIONS(3088), [sym_is] = ACTIONS(3088), [sym_mixin] = ACTIONS(3088), [sym_new] = ACTIONS(3088), [sym_out] = ACTIONS(3088), [sym_ref] = ACTIONS(3088), [sym_shared] = ACTIONS(3088), [sym_throw] = ACTIONS(3088), [sym_typeid] = ACTIONS(3088), [sym_typeof] = ACTIONS(3088), [sym_traits] = ACTIONS(3088), [sym_vector] = ACTIONS(3088), [sym_void] = ACTIONS(3088), [anon_sym_BQUOTE] = ACTIONS(3091), [anon_sym_r_DQUOTE] = ACTIONS(3091), [anon_sym_x_DQUOTE] = ACTIONS(3091), [anon_sym_DQUOTE] = ACTIONS(3091), [anon_sym_i_BQUOTE] = ACTIONS(3091), [anon_sym_i_DQUOTE] = ACTIONS(3091), [anon_sym_iq_LBRACE] = ACTIONS(3091), [aux_sym_char_literal_token1] = ACTIONS(3091), [anon_sym_SQUOTE] = ACTIONS(3088), [anon_sym___DATE__] = ACTIONS(3088), [anon_sym___FILE__] = ACTIONS(3088), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3088), [anon_sym___FUNCTION__] = ACTIONS(3088), [anon_sym___LINE__] = ACTIONS(3088), [anon_sym___MODULE__] = ACTIONS(3088), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3088), [anon_sym___TIME__] = ACTIONS(3088), [anon_sym___TIMESTAMP__] = ACTIONS(3088), [anon_sym___VENDOR__] = ACTIONS(3088), [anon_sym___VERSION__] = ACTIONS(3088), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3091), [sym_float_literal] = ACTIONS(3091), [sym__string] = ACTIONS(3091), [sym_not_in] = ACTIONS(3072), [sym_not_is] = ACTIONS(3072), }, [2146] = { [sym_catch_statement] = STATE(2147), [sym_finally_statement] = STATE(2289), [aux_sym_try_statement_repeat1] = STATE(2147), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(6305), [sym_const] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_else] = ACTIONS(4159), [sym_finally] = ACTIONS(6307), [sym_function] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [2147] = { [sym_catch_statement] = STATE(2152), [sym_finally_statement] = STATE(2332), [aux_sym_try_statement_repeat1] = STATE(2152), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(6305), [sym_const] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_finally] = ACTIONS(6307), [sym_function] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [2148] = { [sym_catch_statement] = STATE(2149), [sym_finally_statement] = STATE(2289), [aux_sym_try_statement_repeat1] = STATE(2149), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(6305), [sym_const] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_else] = ACTIONS(4159), [sym_finally] = ACTIONS(6309), [sym_function] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [2149] = { [sym_catch_statement] = STATE(2152), [sym_finally_statement] = STATE(2332), [aux_sym_try_statement_repeat1] = STATE(2152), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(6305), [sym_const] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_finally] = ACTIONS(6309), [sym_function] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [2150] = { [sym_storage_class] = STATE(2997), [sym_type] = STATE(5722), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(1911), [sym_mixin_expression] = STATE(5276), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1927), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(2997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6311), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6313), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6315), [anon_sym_TILDE] = ACTIONS(6317), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6319), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6321), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6323), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6327), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6331), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6333), [sym_invariant] = ACTIONS(6335), [sym_mixin] = ACTIONS(6337), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6339), [sym_static] = ACTIONS(6341), [sym_struct] = ACTIONS(6343), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6345), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6347), [sym_unittest] = ACTIONS(6349), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2151] = { [sym_catch_statement] = STATE(2162), [sym_finally_statement] = STATE(2289), [aux_sym_try_statement_repeat1] = STATE(2162), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(6353), [sym_const] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_finally] = ACTIONS(6355), [sym_function] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [2152] = { [sym_catch_statement] = STATE(2152), [aux_sym_try_statement_repeat1] = STATE(2152), [sym_identifier] = ACTIONS(4169), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4171), [anon_sym_LBRACE] = ACTIONS(4171), [anon_sym_DOT] = ACTIONS(4171), [anon_sym_AMP] = ACTIONS(4171), [anon_sym_DASH] = ACTIONS(4169), [anon_sym_DASH_DASH] = ACTIONS(4171), [anon_sym_PLUS] = ACTIONS(4169), [anon_sym_PLUS_PLUS] = ACTIONS(4171), [anon_sym_BANG] = ACTIONS(4171), [anon_sym_LPAREN] = ACTIONS(4171), [anon_sym_RPAREN] = ACTIONS(4171), [anon_sym_LBRACK] = ACTIONS(4171), [anon_sym_SEMI] = ACTIONS(4171), [anon_sym_DOLLAR] = ACTIONS(4171), [anon_sym_STAR] = ACTIONS(4171), [anon_sym_TILDE] = ACTIONS(4171), [sym_bool] = ACTIONS(4169), [sym_byte] = ACTIONS(4169), [sym_ubyte] = ACTIONS(4169), [sym_char] = ACTIONS(4169), [sym_short] = ACTIONS(4169), [sym_ushort] = ACTIONS(4169), [sym_int] = ACTIONS(4169), [sym_uint] = ACTIONS(4169), [sym_long] = ACTIONS(4169), [sym_ulong] = ACTIONS(4169), [sym_cent] = ACTIONS(4169), [sym_ucent] = ACTIONS(4169), [sym_wchar] = ACTIONS(4169), [sym_dchar] = ACTIONS(4169), [sym_float] = ACTIONS(4169), [sym_double] = ACTIONS(4169), [sym_real] = ACTIONS(4169), [sym_ifloat] = ACTIONS(4169), [sym_idouble] = ACTIONS(4169), [sym_ireal] = ACTIONS(4169), [sym_cfloat] = ACTIONS(4169), [sym_cdouble] = ACTIONS(4169), [sym_creal] = ACTIONS(4169), [sym_size_t] = ACTIONS(4169), [sym_ptrdiff_t] = ACTIONS(4169), [sym_string] = ACTIONS(4169), [sym_cstring] = ACTIONS(4169), [sym_dstring] = ACTIONS(4169), [sym_wstring] = ACTIONS(4169), [sym_noreturn] = ACTIONS(4169), [sym_true] = ACTIONS(4169), [sym_false] = ACTIONS(4169), [sym_null] = ACTIONS(4169), [sym_super] = ACTIONS(4169), [sym_this] = ACTIONS(4169), [sym_assert] = ACTIONS(4169), [sym_auto] = ACTIONS(4169), [sym_cast] = ACTIONS(4169), [sym_catch] = ACTIONS(6357), [sym_const] = ACTIONS(4169), [sym_delegate] = ACTIONS(4169), [sym_delete] = ACTIONS(4169), [sym_do] = ACTIONS(4169), [sym_else] = ACTIONS(4169), [sym_finally] = ACTIONS(4169), [sym_function] = ACTIONS(4169), [sym_immutable] = ACTIONS(4169), [sym_import] = ACTIONS(4169), [sym_in] = ACTIONS(4169), [sym_inout] = ACTIONS(4169), [sym_is] = ACTIONS(4169), [sym_mixin] = ACTIONS(4169), [sym_new] = ACTIONS(4169), [sym_out] = ACTIONS(4169), [sym_ref] = ACTIONS(4169), [sym_shared] = ACTIONS(4169), [sym_throw] = ACTIONS(4169), [sym_typeid] = ACTIONS(4169), [sym_typeof] = ACTIONS(4169), [sym_traits] = ACTIONS(4169), [sym_vector] = ACTIONS(4169), [sym_void] = ACTIONS(4169), [anon_sym_BQUOTE] = ACTIONS(4171), [anon_sym_r_DQUOTE] = ACTIONS(4171), [anon_sym_x_DQUOTE] = ACTIONS(4171), [anon_sym_DQUOTE] = ACTIONS(4171), [anon_sym_i_BQUOTE] = ACTIONS(4171), [anon_sym_i_DQUOTE] = ACTIONS(4171), [anon_sym_iq_LBRACE] = ACTIONS(4171), [aux_sym_char_literal_token1] = ACTIONS(4171), [anon_sym_SQUOTE] = ACTIONS(4169), [anon_sym___DATE__] = ACTIONS(4169), [anon_sym___FILE__] = ACTIONS(4169), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4169), [anon_sym___FUNCTION__] = ACTIONS(4169), [anon_sym___LINE__] = ACTIONS(4169), [anon_sym___MODULE__] = ACTIONS(4169), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4169), [anon_sym___TIME__] = ACTIONS(4169), [anon_sym___TIMESTAMP__] = ACTIONS(4169), [anon_sym___VENDOR__] = ACTIONS(4169), [anon_sym___VERSION__] = ACTIONS(4169), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4171), [sym_float_literal] = ACTIONS(4171), [sym__string] = ACTIONS(4171), }, [2153] = { [sym_storage_class] = STATE(3014), [sym_type] = STATE(5618), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(2029), [sym_mixin_expression] = STATE(5241), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(2020), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(3014), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6360), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6362), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6364), [anon_sym_TILDE] = ACTIONS(6366), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6368), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6370), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6372), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6374), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6376), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6378), [sym_invariant] = ACTIONS(6380), [sym_mixin] = ACTIONS(6382), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6384), [sym_static] = ACTIONS(6386), [sym_struct] = ACTIONS(6388), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6390), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6392), [sym_unittest] = ACTIONS(6394), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2154] = { [sym_storage_class] = STATE(2989), [sym_type] = STATE(5576), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(1854), [sym_mixin_expression] = STATE(5241), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1844), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(2989), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6360), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6362), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6364), [anon_sym_TILDE] = ACTIONS(6396), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6398), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6370), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6372), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6374), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6376), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6378), [sym_invariant] = ACTIONS(6380), [sym_mixin] = ACTIONS(6382), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6400), [sym_static] = ACTIONS(6402), [sym_struct] = ACTIONS(6388), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6390), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6392), [sym_unittest] = ACTIONS(6394), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2155] = { [sym_storage_class] = STATE(3001), [sym_type] = STATE(5715), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(2065), [sym_mixin_expression] = STATE(5247), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1855), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(3001), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6404), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6406), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6408), [anon_sym_TILDE] = ACTIONS(6410), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6412), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6414), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6416), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6418), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6420), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6422), [sym_invariant] = ACTIONS(6424), [sym_mixin] = ACTIONS(6426), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6428), [sym_static] = ACTIONS(6430), [sym_struct] = ACTIONS(6432), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6434), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6436), [sym_unittest] = ACTIONS(6438), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2156] = { [sym_catch_statement] = STATE(2164), [sym_finally_statement] = STATE(2332), [aux_sym_try_statement_repeat1] = STATE(2164), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(6353), [sym_const] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_finally] = ACTIONS(6440), [sym_function] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [2157] = { [sym_storage_class] = STATE(3012), [sym_type] = STATE(5693), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(1964), [sym_mixin_expression] = STATE(5302), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1899), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(3012), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6442), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6444), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6446), [anon_sym_TILDE] = ACTIONS(6448), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6450), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6452), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6454), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6456), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6458), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6460), [sym_invariant] = ACTIONS(6462), [sym_mixin] = ACTIONS(6464), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6466), [sym_static] = ACTIONS(6468), [sym_struct] = ACTIONS(6470), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6472), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6474), [sym_unittest] = ACTIONS(6476), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2158] = { [sym_storage_class] = STATE(3008), [sym_type] = STATE(5593), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(1838), [sym_mixin_expression] = STATE(5291), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1981), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(3008), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6478), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6480), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6482), [anon_sym_TILDE] = ACTIONS(6484), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6486), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6488), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6490), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6492), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6494), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6496), [sym_invariant] = ACTIONS(6498), [sym_mixin] = ACTIONS(6500), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6502), [sym_static] = ACTIONS(6504), [sym_struct] = ACTIONS(6506), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6508), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6510), [sym_unittest] = ACTIONS(6512), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2159] = { [sym_storage_class] = STATE(2992), [sym_type] = STATE(5606), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(1928), [sym_mixin_expression] = STATE(5310), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1978), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(2992), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6514), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6516), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6518), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6522), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6524), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6526), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6528), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6530), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6532), [sym_invariant] = ACTIONS(6534), [sym_mixin] = ACTIONS(6536), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6538), [sym_static] = ACTIONS(6540), [sym_struct] = ACTIONS(6542), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6544), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6546), [sym_unittest] = ACTIONS(6548), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2160] = { [sym_storage_class] = STATE(2990), [sym_type] = STATE(5614), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(2000), [sym_mixin_expression] = STATE(5302), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1957), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(2990), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6442), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6444), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6446), [anon_sym_TILDE] = ACTIONS(6550), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6552), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6452), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6454), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6456), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6458), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6460), [sym_invariant] = ACTIONS(6554), [sym_mixin] = ACTIONS(6464), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6556), [sym_static] = ACTIONS(6558), [sym_struct] = ACTIONS(6470), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6472), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6474), [sym_unittest] = ACTIONS(6560), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2161] = { [sym_storage_class] = STATE(2992), [sym_type] = STATE(5606), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(2072), [sym_mixin_expression] = STATE(5310), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1893), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(2992), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6514), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6516), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6518), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6522), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6524), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6526), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6528), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6530), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6532), [sym_invariant] = ACTIONS(6534), [sym_mixin] = ACTIONS(6536), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6538), [sym_static] = ACTIONS(6540), [sym_struct] = ACTIONS(6542), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6544), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6546), [sym_unittest] = ACTIONS(6548), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2162] = { [sym_catch_statement] = STATE(2164), [sym_finally_statement] = STATE(2332), [aux_sym_try_statement_repeat1] = STATE(2164), [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(6353), [sym_const] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_finally] = ACTIONS(6355), [sym_function] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [2163] = { [sym_catch_statement] = STATE(2156), [sym_finally_statement] = STATE(2289), [aux_sym_try_statement_repeat1] = STATE(2156), [sym_identifier] = ACTIONS(4159), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4161), [anon_sym_LBRACE] = ACTIONS(4161), [anon_sym_DOT] = ACTIONS(4161), [anon_sym_AMP] = ACTIONS(4161), [anon_sym_DASH] = ACTIONS(4159), [anon_sym_DASH_DASH] = ACTIONS(4161), [anon_sym_PLUS] = ACTIONS(4159), [anon_sym_PLUS_PLUS] = ACTIONS(4161), [anon_sym_BANG] = ACTIONS(4161), [anon_sym_LPAREN] = ACTIONS(4161), [anon_sym_RPAREN] = ACTIONS(4161), [anon_sym_LBRACK] = ACTIONS(4161), [anon_sym_SEMI] = ACTIONS(4161), [anon_sym_DOLLAR] = ACTIONS(4161), [anon_sym_STAR] = ACTIONS(4161), [anon_sym_TILDE] = ACTIONS(4161), [sym_bool] = ACTIONS(4159), [sym_byte] = ACTIONS(4159), [sym_ubyte] = ACTIONS(4159), [sym_char] = ACTIONS(4159), [sym_short] = ACTIONS(4159), [sym_ushort] = ACTIONS(4159), [sym_int] = ACTIONS(4159), [sym_uint] = ACTIONS(4159), [sym_long] = ACTIONS(4159), [sym_ulong] = ACTIONS(4159), [sym_cent] = ACTIONS(4159), [sym_ucent] = ACTIONS(4159), [sym_wchar] = ACTIONS(4159), [sym_dchar] = ACTIONS(4159), [sym_float] = ACTIONS(4159), [sym_double] = ACTIONS(4159), [sym_real] = ACTIONS(4159), [sym_ifloat] = ACTIONS(4159), [sym_idouble] = ACTIONS(4159), [sym_ireal] = ACTIONS(4159), [sym_cfloat] = ACTIONS(4159), [sym_cdouble] = ACTIONS(4159), [sym_creal] = ACTIONS(4159), [sym_size_t] = ACTIONS(4159), [sym_ptrdiff_t] = ACTIONS(4159), [sym_string] = ACTIONS(4159), [sym_cstring] = ACTIONS(4159), [sym_dstring] = ACTIONS(4159), [sym_wstring] = ACTIONS(4159), [sym_noreturn] = ACTIONS(4159), [sym_true] = ACTIONS(4159), [sym_false] = ACTIONS(4159), [sym_null] = ACTIONS(4159), [sym_super] = ACTIONS(4159), [sym_this] = ACTIONS(4159), [sym_assert] = ACTIONS(4159), [sym_auto] = ACTIONS(4159), [sym_cast] = ACTIONS(4159), [sym_catch] = ACTIONS(6353), [sym_const] = ACTIONS(4159), [sym_delegate] = ACTIONS(4159), [sym_delete] = ACTIONS(4159), [sym_do] = ACTIONS(4159), [sym_finally] = ACTIONS(6440), [sym_function] = ACTIONS(4159), [sym_immutable] = ACTIONS(4159), [sym_import] = ACTIONS(4159), [sym_in] = ACTIONS(4159), [sym_inout] = ACTIONS(4159), [sym_is] = ACTIONS(4159), [sym_mixin] = ACTIONS(4159), [sym_new] = ACTIONS(4159), [sym_out] = ACTIONS(4159), [sym_ref] = ACTIONS(4159), [sym_shared] = ACTIONS(4159), [sym_throw] = ACTIONS(4159), [sym_typeid] = ACTIONS(4159), [sym_typeof] = ACTIONS(4159), [sym_traits] = ACTIONS(4159), [sym_vector] = ACTIONS(4159), [sym_void] = ACTIONS(4159), [anon_sym_BQUOTE] = ACTIONS(4161), [anon_sym_r_DQUOTE] = ACTIONS(4161), [anon_sym_x_DQUOTE] = ACTIONS(4161), [anon_sym_DQUOTE] = ACTIONS(4161), [anon_sym_i_BQUOTE] = ACTIONS(4161), [anon_sym_i_DQUOTE] = ACTIONS(4161), [anon_sym_iq_LBRACE] = ACTIONS(4161), [aux_sym_char_literal_token1] = ACTIONS(4161), [anon_sym_SQUOTE] = ACTIONS(4159), [anon_sym___DATE__] = ACTIONS(4159), [anon_sym___FILE__] = ACTIONS(4159), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4159), [anon_sym___FUNCTION__] = ACTIONS(4159), [anon_sym___LINE__] = ACTIONS(4159), [anon_sym___MODULE__] = ACTIONS(4159), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4159), [anon_sym___TIME__] = ACTIONS(4159), [anon_sym___TIMESTAMP__] = ACTIONS(4159), [anon_sym___VENDOR__] = ACTIONS(4159), [anon_sym___VERSION__] = ACTIONS(4159), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4161), [sym_float_literal] = ACTIONS(4161), [sym__string] = ACTIONS(4161), }, [2164] = { [sym_catch_statement] = STATE(2164), [aux_sym_try_statement_repeat1] = STATE(2164), [sym_identifier] = ACTIONS(4169), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4171), [anon_sym_LBRACE] = ACTIONS(4171), [anon_sym_DOT] = ACTIONS(4171), [anon_sym_AMP] = ACTIONS(4171), [anon_sym_DASH] = ACTIONS(4169), [anon_sym_DASH_DASH] = ACTIONS(4171), [anon_sym_PLUS] = ACTIONS(4169), [anon_sym_PLUS_PLUS] = ACTIONS(4171), [anon_sym_BANG] = ACTIONS(4171), [anon_sym_LPAREN] = ACTIONS(4171), [anon_sym_RPAREN] = ACTIONS(4171), [anon_sym_LBRACK] = ACTIONS(4171), [anon_sym_SEMI] = ACTIONS(4171), [anon_sym_DOLLAR] = ACTIONS(4171), [anon_sym_STAR] = ACTIONS(4171), [anon_sym_TILDE] = ACTIONS(4171), [sym_bool] = ACTIONS(4169), [sym_byte] = ACTIONS(4169), [sym_ubyte] = ACTIONS(4169), [sym_char] = ACTIONS(4169), [sym_short] = ACTIONS(4169), [sym_ushort] = ACTIONS(4169), [sym_int] = ACTIONS(4169), [sym_uint] = ACTIONS(4169), [sym_long] = ACTIONS(4169), [sym_ulong] = ACTIONS(4169), [sym_cent] = ACTIONS(4169), [sym_ucent] = ACTIONS(4169), [sym_wchar] = ACTIONS(4169), [sym_dchar] = ACTIONS(4169), [sym_float] = ACTIONS(4169), [sym_double] = ACTIONS(4169), [sym_real] = ACTIONS(4169), [sym_ifloat] = ACTIONS(4169), [sym_idouble] = ACTIONS(4169), [sym_ireal] = ACTIONS(4169), [sym_cfloat] = ACTIONS(4169), [sym_cdouble] = ACTIONS(4169), [sym_creal] = ACTIONS(4169), [sym_size_t] = ACTIONS(4169), [sym_ptrdiff_t] = ACTIONS(4169), [sym_string] = ACTIONS(4169), [sym_cstring] = ACTIONS(4169), [sym_dstring] = ACTIONS(4169), [sym_wstring] = ACTIONS(4169), [sym_noreturn] = ACTIONS(4169), [sym_true] = ACTIONS(4169), [sym_false] = ACTIONS(4169), [sym_null] = ACTIONS(4169), [sym_super] = ACTIONS(4169), [sym_this] = ACTIONS(4169), [sym_assert] = ACTIONS(4169), [sym_auto] = ACTIONS(4169), [sym_cast] = ACTIONS(4169), [sym_catch] = ACTIONS(6562), [sym_const] = ACTIONS(4169), [sym_delegate] = ACTIONS(4169), [sym_delete] = ACTIONS(4169), [sym_do] = ACTIONS(4169), [sym_finally] = ACTIONS(4169), [sym_function] = ACTIONS(4169), [sym_immutable] = ACTIONS(4169), [sym_import] = ACTIONS(4169), [sym_in] = ACTIONS(4169), [sym_inout] = ACTIONS(4169), [sym_is] = ACTIONS(4169), [sym_mixin] = ACTIONS(4169), [sym_new] = ACTIONS(4169), [sym_out] = ACTIONS(4169), [sym_ref] = ACTIONS(4169), [sym_shared] = ACTIONS(4169), [sym_throw] = ACTIONS(4169), [sym_typeid] = ACTIONS(4169), [sym_typeof] = ACTIONS(4169), [sym_traits] = ACTIONS(4169), [sym_vector] = ACTIONS(4169), [sym_void] = ACTIONS(4169), [anon_sym_BQUOTE] = ACTIONS(4171), [anon_sym_r_DQUOTE] = ACTIONS(4171), [anon_sym_x_DQUOTE] = ACTIONS(4171), [anon_sym_DQUOTE] = ACTIONS(4171), [anon_sym_i_BQUOTE] = ACTIONS(4171), [anon_sym_i_DQUOTE] = ACTIONS(4171), [anon_sym_iq_LBRACE] = ACTIONS(4171), [aux_sym_char_literal_token1] = ACTIONS(4171), [anon_sym_SQUOTE] = ACTIONS(4169), [anon_sym___DATE__] = ACTIONS(4169), [anon_sym___FILE__] = ACTIONS(4169), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4169), [anon_sym___FUNCTION__] = ACTIONS(4169), [anon_sym___LINE__] = ACTIONS(4169), [anon_sym___MODULE__] = ACTIONS(4169), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4169), [anon_sym___TIME__] = ACTIONS(4169), [anon_sym___TIMESTAMP__] = ACTIONS(4169), [anon_sym___VENDOR__] = ACTIONS(4169), [anon_sym___VERSION__] = ACTIONS(4169), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4171), [sym_float_literal] = ACTIONS(4171), [sym__string] = ACTIONS(4171), }, [2165] = { [sym_storage_class] = STATE(2992), [sym_type] = STATE(5606), [sym_type_ctor] = STATE(2931), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(2971), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2971), [sym__function_attribute_kwd] = STATE(2971), [sym_linkage_attribute] = STATE(2971), [sym_pragma_expression] = STATE(2072), [sym_mixin_expression] = STATE(5310), [sym_template_instance] = STATE(5035), [sym_condition] = STATE(1893), [sym_version_condition] = STATE(2924), [sym_debug_condition] = STATE(2924), [sym_static_if_condition] = STATE(2924), [sym_traits_expression] = STATE(4997), [aux_sym_import_declaration_repeat1] = STATE(2423), [aux_sym_variable_declaration_repeat1] = STATE(2992), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(6514), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(6518), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(19), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(6522), [sym_abstract] = ACTIONS(25), [sym_alias] = ACTIONS(6524), [sym_align] = ACTIONS(29), [sym_auto] = ACTIONS(25), [sym_class] = ACTIONS(6526), [sym_const] = ACTIONS(33), [sym_debug] = ACTIONS(6325), [sym_deprecated] = ACTIONS(37), [sym_enum] = ACTIONS(6528), [sym_export] = ACTIONS(6329), [sym_extern] = ACTIONS(43), [sym_final] = ACTIONS(25), [sym_immutable] = ACTIONS(33), [sym_import] = ACTIONS(6530), [sym_inout] = ACTIONS(33), [sym_interface] = ACTIONS(6532), [sym_invariant] = ACTIONS(6534), [sym_mixin] = ACTIONS(6536), [sym_nothrow] = ACTIONS(25), [sym_override] = ACTIONS(25), [sym_package] = ACTIONS(55), [sym_pragma] = ACTIONS(57), [sym_private] = ACTIONS(6329), [sym_protected] = ACTIONS(6329), [sym_public] = ACTIONS(6329), [sym_pure] = ACTIONS(25), [sym_ref] = ACTIONS(25), [sym_return] = ACTIONS(6329), [sym_scope] = ACTIONS(25), [sym_shared] = ACTIONS(6538), [sym_static] = ACTIONS(6540), [sym_struct] = ACTIONS(6542), [sym_synchronized] = ACTIONS(25), [sym_template] = ACTIONS(6544), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(6546), [sym_unittest] = ACTIONS(6548), [sym_version] = ACTIONS(6351), [sym_gshared] = ACTIONS(25), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2166] = { [sym_identifier] = ACTIONS(4646), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4648), [anon_sym_LBRACE] = ACTIONS(4648), [anon_sym_DOT] = ACTIONS(4648), [anon_sym_AMP] = ACTIONS(4648), [anon_sym_DASH] = ACTIONS(4646), [anon_sym_DASH_DASH] = ACTIONS(4648), [anon_sym_PLUS] = ACTIONS(4646), [anon_sym_PLUS_PLUS] = ACTIONS(4648), [anon_sym_BANG] = ACTIONS(4648), [anon_sym_LPAREN] = ACTIONS(4648), [anon_sym_RPAREN] = ACTIONS(4648), [anon_sym_LBRACK] = ACTIONS(4648), [anon_sym_SEMI] = ACTIONS(4648), [anon_sym_DOLLAR] = ACTIONS(4648), [anon_sym_STAR] = ACTIONS(4648), [anon_sym_TILDE] = ACTIONS(4648), [sym_bool] = ACTIONS(4646), [sym_byte] = ACTIONS(4646), [sym_ubyte] = ACTIONS(4646), [sym_char] = ACTIONS(4646), [sym_short] = ACTIONS(4646), [sym_ushort] = ACTIONS(4646), [sym_int] = ACTIONS(4646), [sym_uint] = ACTIONS(4646), [sym_long] = ACTIONS(4646), [sym_ulong] = ACTIONS(4646), [sym_cent] = ACTIONS(4646), [sym_ucent] = ACTIONS(4646), [sym_wchar] = ACTIONS(4646), [sym_dchar] = ACTIONS(4646), [sym_float] = ACTIONS(4646), [sym_double] = ACTIONS(4646), [sym_real] = ACTIONS(4646), [sym_ifloat] = ACTIONS(4646), [sym_idouble] = ACTIONS(4646), [sym_ireal] = ACTIONS(4646), [sym_cfloat] = ACTIONS(4646), [sym_cdouble] = ACTIONS(4646), [sym_creal] = ACTIONS(4646), [sym_size_t] = ACTIONS(4646), [sym_ptrdiff_t] = ACTIONS(4646), [sym_string] = ACTIONS(4646), [sym_cstring] = ACTIONS(4646), [sym_dstring] = ACTIONS(4646), [sym_wstring] = ACTIONS(4646), [sym_noreturn] = ACTIONS(4646), [sym_true] = ACTIONS(4646), [sym_false] = ACTIONS(4646), [sym_null] = ACTIONS(4646), [sym_super] = ACTIONS(4646), [sym_this] = ACTIONS(4646), [sym_assert] = ACTIONS(4646), [sym_auto] = ACTIONS(4646), [sym_cast] = ACTIONS(4646), [sym_catch] = ACTIONS(4646), [sym_const] = ACTIONS(4646), [sym_delegate] = ACTIONS(4646), [sym_delete] = ACTIONS(4646), [sym_do] = ACTIONS(4646), [sym_else] = ACTIONS(4646), [sym_finally] = ACTIONS(4646), [sym_function] = ACTIONS(4646), [sym_immutable] = ACTIONS(4646), [sym_import] = ACTIONS(4646), [sym_in] = ACTIONS(4646), [sym_inout] = ACTIONS(4646), [sym_is] = ACTIONS(4646), [sym_mixin] = ACTIONS(4646), [sym_new] = ACTIONS(4646), [sym_out] = ACTIONS(4646), [sym_ref] = ACTIONS(4646), [sym_shared] = ACTIONS(4646), [sym_throw] = ACTIONS(4646), [sym_typeid] = ACTIONS(4646), [sym_typeof] = ACTIONS(4646), [sym_traits] = ACTIONS(4646), [sym_vector] = ACTIONS(4646), [sym_void] = ACTIONS(4646), [anon_sym_BQUOTE] = ACTIONS(4648), [anon_sym_r_DQUOTE] = ACTIONS(4648), [anon_sym_x_DQUOTE] = ACTIONS(4648), [anon_sym_DQUOTE] = ACTIONS(4648), [anon_sym_i_BQUOTE] = ACTIONS(4648), [anon_sym_i_DQUOTE] = ACTIONS(4648), [anon_sym_iq_LBRACE] = ACTIONS(4648), [aux_sym_char_literal_token1] = ACTIONS(4648), [anon_sym_SQUOTE] = ACTIONS(4646), [anon_sym___DATE__] = ACTIONS(4646), [anon_sym___FILE__] = ACTIONS(4646), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4646), [anon_sym___FUNCTION__] = ACTIONS(4646), [anon_sym___LINE__] = ACTIONS(4646), [anon_sym___MODULE__] = ACTIONS(4646), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4646), [anon_sym___TIME__] = ACTIONS(4646), [anon_sym___TIMESTAMP__] = ACTIONS(4646), [anon_sym___VENDOR__] = ACTIONS(4646), [anon_sym___VERSION__] = ACTIONS(4646), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4648), [sym_float_literal] = ACTIONS(4648), [sym__string] = ACTIONS(4648), }, [2167] = { [sym_identifier] = ACTIONS(5016), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5018), [anon_sym_LBRACE] = ACTIONS(5018), [anon_sym_DOT] = ACTIONS(5018), [anon_sym_AMP] = ACTIONS(5018), [anon_sym_DASH] = ACTIONS(5016), [anon_sym_DASH_DASH] = ACTIONS(5018), [anon_sym_PLUS] = ACTIONS(5016), [anon_sym_PLUS_PLUS] = ACTIONS(5018), [anon_sym_BANG] = ACTIONS(5018), [anon_sym_LPAREN] = ACTIONS(5018), [anon_sym_RPAREN] = ACTIONS(5018), [anon_sym_LBRACK] = ACTIONS(5018), [anon_sym_SEMI] = ACTIONS(5018), [anon_sym_DOLLAR] = ACTIONS(5018), [anon_sym_STAR] = ACTIONS(5018), [anon_sym_TILDE] = ACTIONS(5018), [sym_bool] = ACTIONS(5016), [sym_byte] = ACTIONS(5016), [sym_ubyte] = ACTIONS(5016), [sym_char] = ACTIONS(5016), [sym_short] = ACTIONS(5016), [sym_ushort] = ACTIONS(5016), [sym_int] = ACTIONS(5016), [sym_uint] = ACTIONS(5016), [sym_long] = ACTIONS(5016), [sym_ulong] = ACTIONS(5016), [sym_cent] = ACTIONS(5016), [sym_ucent] = ACTIONS(5016), [sym_wchar] = ACTIONS(5016), [sym_dchar] = ACTIONS(5016), [sym_float] = ACTIONS(5016), [sym_double] = ACTIONS(5016), [sym_real] = ACTIONS(5016), [sym_ifloat] = ACTIONS(5016), [sym_idouble] = ACTIONS(5016), [sym_ireal] = ACTIONS(5016), [sym_cfloat] = ACTIONS(5016), [sym_cdouble] = ACTIONS(5016), [sym_creal] = ACTIONS(5016), [sym_size_t] = ACTIONS(5016), [sym_ptrdiff_t] = ACTIONS(5016), [sym_string] = ACTIONS(5016), [sym_cstring] = ACTIONS(5016), [sym_dstring] = ACTIONS(5016), [sym_wstring] = ACTIONS(5016), [sym_noreturn] = ACTIONS(5016), [sym_true] = ACTIONS(5016), [sym_false] = ACTIONS(5016), [sym_null] = ACTIONS(5016), [sym_super] = ACTIONS(5016), [sym_this] = ACTIONS(5016), [sym_assert] = ACTIONS(5016), [sym_auto] = ACTIONS(5016), [sym_cast] = ACTIONS(5016), [sym_catch] = ACTIONS(5016), [sym_const] = ACTIONS(5016), [sym_delegate] = ACTIONS(5016), [sym_delete] = ACTIONS(5016), [sym_do] = ACTIONS(5016), [sym_else] = ACTIONS(5016), [sym_finally] = ACTIONS(5016), [sym_function] = ACTIONS(5016), [sym_immutable] = ACTIONS(5016), [sym_import] = ACTIONS(5016), [sym_in] = ACTIONS(5016), [sym_inout] = ACTIONS(5016), [sym_is] = ACTIONS(5016), [sym_mixin] = ACTIONS(5016), [sym_new] = ACTIONS(5016), [sym_out] = ACTIONS(5016), [sym_ref] = ACTIONS(5016), [sym_shared] = ACTIONS(5016), [sym_throw] = ACTIONS(5016), [sym_typeid] = ACTIONS(5016), [sym_typeof] = ACTIONS(5016), [sym_traits] = ACTIONS(5016), [sym_vector] = ACTIONS(5016), [sym_void] = ACTIONS(5016), [anon_sym_BQUOTE] = ACTIONS(5018), [anon_sym_r_DQUOTE] = ACTIONS(5018), [anon_sym_x_DQUOTE] = ACTIONS(5018), [anon_sym_DQUOTE] = ACTIONS(5018), [anon_sym_i_BQUOTE] = ACTIONS(5018), [anon_sym_i_DQUOTE] = ACTIONS(5018), [anon_sym_iq_LBRACE] = ACTIONS(5018), [aux_sym_char_literal_token1] = ACTIONS(5018), [anon_sym_SQUOTE] = ACTIONS(5016), [anon_sym___DATE__] = ACTIONS(5016), [anon_sym___FILE__] = ACTIONS(5016), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5016), [anon_sym___FUNCTION__] = ACTIONS(5016), [anon_sym___LINE__] = ACTIONS(5016), [anon_sym___MODULE__] = ACTIONS(5016), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5016), [anon_sym___TIME__] = ACTIONS(5016), [anon_sym___TIMESTAMP__] = ACTIONS(5016), [anon_sym___VENDOR__] = ACTIONS(5016), [anon_sym___VERSION__] = ACTIONS(5016), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5018), [sym_float_literal] = ACTIONS(5018), [sym__string] = ACTIONS(5018), }, [2168] = { [sym_identifier] = ACTIONS(4472), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4474), [anon_sym_LBRACE] = ACTIONS(4474), [anon_sym_DOT] = ACTIONS(4474), [anon_sym_AMP] = ACTIONS(4474), [anon_sym_DASH] = ACTIONS(4472), [anon_sym_DASH_DASH] = ACTIONS(4474), [anon_sym_PLUS] = ACTIONS(4472), [anon_sym_PLUS_PLUS] = ACTIONS(4474), [anon_sym_BANG] = ACTIONS(4474), [anon_sym_LPAREN] = ACTIONS(4474), [anon_sym_RPAREN] = ACTIONS(4474), [anon_sym_LBRACK] = ACTIONS(4474), [anon_sym_SEMI] = ACTIONS(4474), [anon_sym_DOLLAR] = ACTIONS(4474), [anon_sym_STAR] = ACTIONS(4474), [anon_sym_TILDE] = ACTIONS(4474), [sym_bool] = ACTIONS(4472), [sym_byte] = ACTIONS(4472), [sym_ubyte] = ACTIONS(4472), [sym_char] = ACTIONS(4472), [sym_short] = ACTIONS(4472), [sym_ushort] = ACTIONS(4472), [sym_int] = ACTIONS(4472), [sym_uint] = ACTIONS(4472), [sym_long] = ACTIONS(4472), [sym_ulong] = ACTIONS(4472), [sym_cent] = ACTIONS(4472), [sym_ucent] = ACTIONS(4472), [sym_wchar] = ACTIONS(4472), [sym_dchar] = ACTIONS(4472), [sym_float] = ACTIONS(4472), [sym_double] = ACTIONS(4472), [sym_real] = ACTIONS(4472), [sym_ifloat] = ACTIONS(4472), [sym_idouble] = ACTIONS(4472), [sym_ireal] = ACTIONS(4472), [sym_cfloat] = ACTIONS(4472), [sym_cdouble] = ACTIONS(4472), [sym_creal] = ACTIONS(4472), [sym_size_t] = ACTIONS(4472), [sym_ptrdiff_t] = ACTIONS(4472), [sym_string] = ACTIONS(4472), [sym_cstring] = ACTIONS(4472), [sym_dstring] = ACTIONS(4472), [sym_wstring] = ACTIONS(4472), [sym_noreturn] = ACTIONS(4472), [sym_true] = ACTIONS(4472), [sym_false] = ACTIONS(4472), [sym_null] = ACTIONS(4472), [sym_super] = ACTIONS(4472), [sym_this] = ACTIONS(4472), [sym_assert] = ACTIONS(4472), [sym_auto] = ACTIONS(4472), [sym_cast] = ACTIONS(4472), [sym_catch] = ACTIONS(4472), [sym_const] = ACTIONS(4472), [sym_delegate] = ACTIONS(4472), [sym_delete] = ACTIONS(4472), [sym_do] = ACTIONS(4472), [sym_else] = ACTIONS(4472), [sym_finally] = ACTIONS(4472), [sym_function] = ACTIONS(4472), [sym_immutable] = ACTIONS(4472), [sym_import] = ACTIONS(4472), [sym_in] = ACTIONS(4472), [sym_inout] = ACTIONS(4472), [sym_is] = ACTIONS(4472), [sym_mixin] = ACTIONS(4472), [sym_new] = ACTIONS(4472), [sym_out] = ACTIONS(4472), [sym_ref] = ACTIONS(4472), [sym_shared] = ACTIONS(4472), [sym_throw] = ACTIONS(4472), [sym_typeid] = ACTIONS(4472), [sym_typeof] = ACTIONS(4472), [sym_traits] = ACTIONS(4472), [sym_vector] = ACTIONS(4472), [sym_void] = ACTIONS(4472), [anon_sym_BQUOTE] = ACTIONS(4474), [anon_sym_r_DQUOTE] = ACTIONS(4474), [anon_sym_x_DQUOTE] = ACTIONS(4474), [anon_sym_DQUOTE] = ACTIONS(4474), [anon_sym_i_BQUOTE] = ACTIONS(4474), [anon_sym_i_DQUOTE] = ACTIONS(4474), [anon_sym_iq_LBRACE] = ACTIONS(4474), [aux_sym_char_literal_token1] = ACTIONS(4474), [anon_sym_SQUOTE] = ACTIONS(4472), [anon_sym___DATE__] = ACTIONS(4472), [anon_sym___FILE__] = ACTIONS(4472), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4472), [anon_sym___FUNCTION__] = ACTIONS(4472), [anon_sym___LINE__] = ACTIONS(4472), [anon_sym___MODULE__] = ACTIONS(4472), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4472), [anon_sym___TIME__] = ACTIONS(4472), [anon_sym___TIMESTAMP__] = ACTIONS(4472), [anon_sym___VENDOR__] = ACTIONS(4472), [anon_sym___VERSION__] = ACTIONS(4472), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4474), [sym_float_literal] = ACTIONS(4474), [sym__string] = ACTIONS(4474), }, [2169] = { [sym_identifier] = ACTIONS(4464), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4466), [anon_sym_LBRACE] = ACTIONS(4466), [anon_sym_DOT] = ACTIONS(4466), [anon_sym_AMP] = ACTIONS(4466), [anon_sym_DASH] = ACTIONS(4464), [anon_sym_DASH_DASH] = ACTIONS(4466), [anon_sym_PLUS] = ACTIONS(4464), [anon_sym_PLUS_PLUS] = ACTIONS(4466), [anon_sym_BANG] = ACTIONS(4466), [anon_sym_LPAREN] = ACTIONS(4466), [anon_sym_RPAREN] = ACTIONS(4466), [anon_sym_LBRACK] = ACTIONS(4466), [anon_sym_SEMI] = ACTIONS(4466), [anon_sym_DOLLAR] = ACTIONS(4466), [anon_sym_STAR] = ACTIONS(4466), [anon_sym_TILDE] = ACTIONS(4466), [sym_bool] = ACTIONS(4464), [sym_byte] = ACTIONS(4464), [sym_ubyte] = ACTIONS(4464), [sym_char] = ACTIONS(4464), [sym_short] = ACTIONS(4464), [sym_ushort] = ACTIONS(4464), [sym_int] = ACTIONS(4464), [sym_uint] = ACTIONS(4464), [sym_long] = ACTIONS(4464), [sym_ulong] = ACTIONS(4464), [sym_cent] = ACTIONS(4464), [sym_ucent] = ACTIONS(4464), [sym_wchar] = ACTIONS(4464), [sym_dchar] = ACTIONS(4464), [sym_float] = ACTIONS(4464), [sym_double] = ACTIONS(4464), [sym_real] = ACTIONS(4464), [sym_ifloat] = ACTIONS(4464), [sym_idouble] = ACTIONS(4464), [sym_ireal] = ACTIONS(4464), [sym_cfloat] = ACTIONS(4464), [sym_cdouble] = ACTIONS(4464), [sym_creal] = ACTIONS(4464), [sym_size_t] = ACTIONS(4464), [sym_ptrdiff_t] = ACTIONS(4464), [sym_string] = ACTIONS(4464), [sym_cstring] = ACTIONS(4464), [sym_dstring] = ACTIONS(4464), [sym_wstring] = ACTIONS(4464), [sym_noreturn] = ACTIONS(4464), [sym_true] = ACTIONS(4464), [sym_false] = ACTIONS(4464), [sym_null] = ACTIONS(4464), [sym_super] = ACTIONS(4464), [sym_this] = ACTIONS(4464), [sym_assert] = ACTIONS(4464), [sym_auto] = ACTIONS(4464), [sym_cast] = ACTIONS(4464), [sym_catch] = ACTIONS(4464), [sym_const] = ACTIONS(4464), [sym_delegate] = ACTIONS(4464), [sym_delete] = ACTIONS(4464), [sym_do] = ACTIONS(4464), [sym_else] = ACTIONS(4464), [sym_finally] = ACTIONS(4464), [sym_function] = ACTIONS(4464), [sym_immutable] = ACTIONS(4464), [sym_import] = ACTIONS(4464), [sym_in] = ACTIONS(4464), [sym_inout] = ACTIONS(4464), [sym_is] = ACTIONS(4464), [sym_mixin] = ACTIONS(4464), [sym_new] = ACTIONS(4464), [sym_out] = ACTIONS(4464), [sym_ref] = ACTIONS(4464), [sym_shared] = ACTIONS(4464), [sym_throw] = ACTIONS(4464), [sym_typeid] = ACTIONS(4464), [sym_typeof] = ACTIONS(4464), [sym_traits] = ACTIONS(4464), [sym_vector] = ACTIONS(4464), [sym_void] = ACTIONS(4464), [anon_sym_BQUOTE] = ACTIONS(4466), [anon_sym_r_DQUOTE] = ACTIONS(4466), [anon_sym_x_DQUOTE] = ACTIONS(4466), [anon_sym_DQUOTE] = ACTIONS(4466), [anon_sym_i_BQUOTE] = ACTIONS(4466), [anon_sym_i_DQUOTE] = ACTIONS(4466), [anon_sym_iq_LBRACE] = ACTIONS(4466), [aux_sym_char_literal_token1] = ACTIONS(4466), [anon_sym_SQUOTE] = ACTIONS(4464), [anon_sym___DATE__] = ACTIONS(4464), [anon_sym___FILE__] = ACTIONS(4464), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4464), [anon_sym___FUNCTION__] = ACTIONS(4464), [anon_sym___LINE__] = ACTIONS(4464), [anon_sym___MODULE__] = ACTIONS(4464), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4464), [anon_sym___TIME__] = ACTIONS(4464), [anon_sym___TIMESTAMP__] = ACTIONS(4464), [anon_sym___VENDOR__] = ACTIONS(4464), [anon_sym___VERSION__] = ACTIONS(4464), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4466), [sym_float_literal] = ACTIONS(4466), [sym__string] = ACTIONS(4466), }, [2170] = { [sym_identifier] = ACTIONS(4456), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4458), [anon_sym_LBRACE] = ACTIONS(4458), [anon_sym_DOT] = ACTIONS(4458), [anon_sym_AMP] = ACTIONS(4458), [anon_sym_DASH] = ACTIONS(4456), [anon_sym_DASH_DASH] = ACTIONS(4458), [anon_sym_PLUS] = ACTIONS(4456), [anon_sym_PLUS_PLUS] = ACTIONS(4458), [anon_sym_BANG] = ACTIONS(4458), [anon_sym_LPAREN] = ACTIONS(4458), [anon_sym_RPAREN] = ACTIONS(4458), [anon_sym_LBRACK] = ACTIONS(4458), [anon_sym_SEMI] = ACTIONS(4458), [anon_sym_DOLLAR] = ACTIONS(4458), [anon_sym_STAR] = ACTIONS(4458), [anon_sym_TILDE] = ACTIONS(4458), [sym_bool] = ACTIONS(4456), [sym_byte] = ACTIONS(4456), [sym_ubyte] = ACTIONS(4456), [sym_char] = ACTIONS(4456), [sym_short] = ACTIONS(4456), [sym_ushort] = ACTIONS(4456), [sym_int] = ACTIONS(4456), [sym_uint] = ACTIONS(4456), [sym_long] = ACTIONS(4456), [sym_ulong] = ACTIONS(4456), [sym_cent] = ACTIONS(4456), [sym_ucent] = ACTIONS(4456), [sym_wchar] = ACTIONS(4456), [sym_dchar] = ACTIONS(4456), [sym_float] = ACTIONS(4456), [sym_double] = ACTIONS(4456), [sym_real] = ACTIONS(4456), [sym_ifloat] = ACTIONS(4456), [sym_idouble] = ACTIONS(4456), [sym_ireal] = ACTIONS(4456), [sym_cfloat] = ACTIONS(4456), [sym_cdouble] = ACTIONS(4456), [sym_creal] = ACTIONS(4456), [sym_size_t] = ACTIONS(4456), [sym_ptrdiff_t] = ACTIONS(4456), [sym_string] = ACTIONS(4456), [sym_cstring] = ACTIONS(4456), [sym_dstring] = ACTIONS(4456), [sym_wstring] = ACTIONS(4456), [sym_noreturn] = ACTIONS(4456), [sym_true] = ACTIONS(4456), [sym_false] = ACTIONS(4456), [sym_null] = ACTIONS(4456), [sym_super] = ACTIONS(4456), [sym_this] = ACTIONS(4456), [sym_assert] = ACTIONS(4456), [sym_auto] = ACTIONS(4456), [sym_cast] = ACTIONS(4456), [sym_catch] = ACTIONS(4456), [sym_const] = ACTIONS(4456), [sym_delegate] = ACTIONS(4456), [sym_delete] = ACTIONS(4456), [sym_do] = ACTIONS(4456), [sym_else] = ACTIONS(4456), [sym_finally] = ACTIONS(4456), [sym_function] = ACTIONS(4456), [sym_immutable] = ACTIONS(4456), [sym_import] = ACTIONS(4456), [sym_in] = ACTIONS(4456), [sym_inout] = ACTIONS(4456), [sym_is] = ACTIONS(4456), [sym_mixin] = ACTIONS(4456), [sym_new] = ACTIONS(4456), [sym_out] = ACTIONS(4456), [sym_ref] = ACTIONS(4456), [sym_shared] = ACTIONS(4456), [sym_throw] = ACTIONS(4456), [sym_typeid] = ACTIONS(4456), [sym_typeof] = ACTIONS(4456), [sym_traits] = ACTIONS(4456), [sym_vector] = ACTIONS(4456), [sym_void] = ACTIONS(4456), [anon_sym_BQUOTE] = ACTIONS(4458), [anon_sym_r_DQUOTE] = ACTIONS(4458), [anon_sym_x_DQUOTE] = ACTIONS(4458), [anon_sym_DQUOTE] = ACTIONS(4458), [anon_sym_i_BQUOTE] = ACTIONS(4458), [anon_sym_i_DQUOTE] = ACTIONS(4458), [anon_sym_iq_LBRACE] = ACTIONS(4458), [aux_sym_char_literal_token1] = ACTIONS(4458), [anon_sym_SQUOTE] = ACTIONS(4456), [anon_sym___DATE__] = ACTIONS(4456), [anon_sym___FILE__] = ACTIONS(4456), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4456), [anon_sym___FUNCTION__] = ACTIONS(4456), [anon_sym___LINE__] = ACTIONS(4456), [anon_sym___MODULE__] = ACTIONS(4456), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4456), [anon_sym___TIME__] = ACTIONS(4456), [anon_sym___TIMESTAMP__] = ACTIONS(4456), [anon_sym___VENDOR__] = ACTIONS(4456), [anon_sym___VERSION__] = ACTIONS(4456), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4458), [sym_float_literal] = ACTIONS(4458), [sym__string] = ACTIONS(4458), }, [2171] = { [sym_identifier] = ACTIONS(4418), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4420), [anon_sym_LBRACE] = ACTIONS(4420), [anon_sym_DOT] = ACTIONS(4420), [anon_sym_AMP] = ACTIONS(4420), [anon_sym_DASH] = ACTIONS(4418), [anon_sym_DASH_DASH] = ACTIONS(4420), [anon_sym_PLUS] = ACTIONS(4418), [anon_sym_PLUS_PLUS] = ACTIONS(4420), [anon_sym_BANG] = ACTIONS(4420), [anon_sym_LPAREN] = ACTIONS(4420), [anon_sym_RPAREN] = ACTIONS(4420), [anon_sym_LBRACK] = ACTIONS(4420), [anon_sym_SEMI] = ACTIONS(4420), [anon_sym_DOLLAR] = ACTIONS(4420), [anon_sym_STAR] = ACTIONS(4420), [anon_sym_TILDE] = ACTIONS(4420), [sym_bool] = ACTIONS(4418), [sym_byte] = ACTIONS(4418), [sym_ubyte] = ACTIONS(4418), [sym_char] = ACTIONS(4418), [sym_short] = ACTIONS(4418), [sym_ushort] = ACTIONS(4418), [sym_int] = ACTIONS(4418), [sym_uint] = ACTIONS(4418), [sym_long] = ACTIONS(4418), [sym_ulong] = ACTIONS(4418), [sym_cent] = ACTIONS(4418), [sym_ucent] = ACTIONS(4418), [sym_wchar] = ACTIONS(4418), [sym_dchar] = ACTIONS(4418), [sym_float] = ACTIONS(4418), [sym_double] = ACTIONS(4418), [sym_real] = ACTIONS(4418), [sym_ifloat] = ACTIONS(4418), [sym_idouble] = ACTIONS(4418), [sym_ireal] = ACTIONS(4418), [sym_cfloat] = ACTIONS(4418), [sym_cdouble] = ACTIONS(4418), [sym_creal] = ACTIONS(4418), [sym_size_t] = ACTIONS(4418), [sym_ptrdiff_t] = ACTIONS(4418), [sym_string] = ACTIONS(4418), [sym_cstring] = ACTIONS(4418), [sym_dstring] = ACTIONS(4418), [sym_wstring] = ACTIONS(4418), [sym_noreturn] = ACTIONS(4418), [sym_true] = ACTIONS(4418), [sym_false] = ACTIONS(4418), [sym_null] = ACTIONS(4418), [sym_super] = ACTIONS(4418), [sym_this] = ACTIONS(4418), [sym_assert] = ACTIONS(4418), [sym_auto] = ACTIONS(4418), [sym_cast] = ACTIONS(4418), [sym_catch] = ACTIONS(4418), [sym_const] = ACTIONS(4418), [sym_delegate] = ACTIONS(4418), [sym_delete] = ACTIONS(4418), [sym_do] = ACTIONS(4418), [sym_else] = ACTIONS(4418), [sym_finally] = ACTIONS(4418), [sym_function] = ACTIONS(4418), [sym_immutable] = ACTIONS(4418), [sym_import] = ACTIONS(4418), [sym_in] = ACTIONS(4418), [sym_inout] = ACTIONS(4418), [sym_is] = ACTIONS(4418), [sym_mixin] = ACTIONS(4418), [sym_new] = ACTIONS(4418), [sym_out] = ACTIONS(4418), [sym_ref] = ACTIONS(4418), [sym_shared] = ACTIONS(4418), [sym_throw] = ACTIONS(4418), [sym_typeid] = ACTIONS(4418), [sym_typeof] = ACTIONS(4418), [sym_traits] = ACTIONS(4418), [sym_vector] = ACTIONS(4418), [sym_void] = ACTIONS(4418), [anon_sym_BQUOTE] = ACTIONS(4420), [anon_sym_r_DQUOTE] = ACTIONS(4420), [anon_sym_x_DQUOTE] = ACTIONS(4420), [anon_sym_DQUOTE] = ACTIONS(4420), [anon_sym_i_BQUOTE] = ACTIONS(4420), [anon_sym_i_DQUOTE] = ACTIONS(4420), [anon_sym_iq_LBRACE] = ACTIONS(4420), [aux_sym_char_literal_token1] = ACTIONS(4420), [anon_sym_SQUOTE] = ACTIONS(4418), [anon_sym___DATE__] = ACTIONS(4418), [anon_sym___FILE__] = ACTIONS(4418), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4418), [anon_sym___FUNCTION__] = ACTIONS(4418), [anon_sym___LINE__] = ACTIONS(4418), [anon_sym___MODULE__] = ACTIONS(4418), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4418), [anon_sym___TIME__] = ACTIONS(4418), [anon_sym___TIMESTAMP__] = ACTIONS(4418), [anon_sym___VENDOR__] = ACTIONS(4418), [anon_sym___VERSION__] = ACTIONS(4418), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4420), [sym_float_literal] = ACTIONS(4420), [sym__string] = ACTIONS(4420), }, [2172] = { [sym_identifier] = ACTIONS(4698), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4701), [anon_sym_LBRACE] = ACTIONS(4701), [anon_sym_DOT] = ACTIONS(4701), [anon_sym_AMP] = ACTIONS(4701), [anon_sym_DASH] = ACTIONS(4698), [anon_sym_DASH_DASH] = ACTIONS(4701), [anon_sym_PLUS] = ACTIONS(4698), [anon_sym_PLUS_PLUS] = ACTIONS(4701), [anon_sym_BANG] = ACTIONS(4701), [anon_sym_LPAREN] = ACTIONS(4701), [anon_sym_RPAREN] = ACTIONS(4701), [anon_sym_LBRACK] = ACTIONS(4701), [anon_sym_SEMI] = ACTIONS(4701), [anon_sym_DOLLAR] = ACTIONS(4701), [anon_sym_STAR] = ACTIONS(4701), [anon_sym_TILDE] = ACTIONS(4701), [sym_bool] = ACTIONS(4698), [sym_byte] = ACTIONS(4698), [sym_ubyte] = ACTIONS(4698), [sym_char] = ACTIONS(4698), [sym_short] = ACTIONS(4698), [sym_ushort] = ACTIONS(4698), [sym_int] = ACTIONS(4698), [sym_uint] = ACTIONS(4698), [sym_long] = ACTIONS(4698), [sym_ulong] = ACTIONS(4698), [sym_cent] = ACTIONS(4698), [sym_ucent] = ACTIONS(4698), [sym_wchar] = ACTIONS(4698), [sym_dchar] = ACTIONS(4698), [sym_float] = ACTIONS(4698), [sym_double] = ACTIONS(4698), [sym_real] = ACTIONS(4698), [sym_ifloat] = ACTIONS(4698), [sym_idouble] = ACTIONS(4698), [sym_ireal] = ACTIONS(4698), [sym_cfloat] = ACTIONS(4698), [sym_cdouble] = ACTIONS(4698), [sym_creal] = ACTIONS(4698), [sym_size_t] = ACTIONS(4698), [sym_ptrdiff_t] = ACTIONS(4698), [sym_string] = ACTIONS(4698), [sym_cstring] = ACTIONS(4698), [sym_dstring] = ACTIONS(4698), [sym_wstring] = ACTIONS(4698), [sym_noreturn] = ACTIONS(4698), [sym_true] = ACTIONS(4698), [sym_false] = ACTIONS(4698), [sym_null] = ACTIONS(4698), [sym_super] = ACTIONS(4698), [sym_this] = ACTIONS(4698), [sym_assert] = ACTIONS(4698), [sym_auto] = ACTIONS(4698), [sym_cast] = ACTIONS(4698), [sym_catch] = ACTIONS(4698), [sym_const] = ACTIONS(4698), [sym_delegate] = ACTIONS(4698), [sym_delete] = ACTIONS(4698), [sym_do] = ACTIONS(4698), [sym_else] = ACTIONS(4698), [sym_finally] = ACTIONS(4698), [sym_function] = ACTIONS(4698), [sym_immutable] = ACTIONS(4698), [sym_import] = ACTIONS(4698), [sym_in] = ACTIONS(4698), [sym_inout] = ACTIONS(4698), [sym_is] = ACTIONS(4698), [sym_mixin] = ACTIONS(4698), [sym_new] = ACTIONS(4698), [sym_out] = ACTIONS(4698), [sym_ref] = ACTIONS(4698), [sym_shared] = ACTIONS(4698), [sym_throw] = ACTIONS(4698), [sym_typeid] = ACTIONS(4698), [sym_typeof] = ACTIONS(4698), [sym_traits] = ACTIONS(4698), [sym_vector] = ACTIONS(4698), [sym_void] = ACTIONS(4698), [anon_sym_BQUOTE] = ACTIONS(4701), [anon_sym_r_DQUOTE] = ACTIONS(4701), [anon_sym_x_DQUOTE] = ACTIONS(4701), [anon_sym_DQUOTE] = ACTIONS(4701), [anon_sym_i_BQUOTE] = ACTIONS(4701), [anon_sym_i_DQUOTE] = ACTIONS(4701), [anon_sym_iq_LBRACE] = ACTIONS(4701), [aux_sym_char_literal_token1] = ACTIONS(4701), [anon_sym_SQUOTE] = ACTIONS(4698), [anon_sym___DATE__] = ACTIONS(4698), [anon_sym___FILE__] = ACTIONS(4698), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4698), [anon_sym___FUNCTION__] = ACTIONS(4698), [anon_sym___LINE__] = ACTIONS(4698), [anon_sym___MODULE__] = ACTIONS(4698), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4698), [anon_sym___TIME__] = ACTIONS(4698), [anon_sym___TIMESTAMP__] = ACTIONS(4698), [anon_sym___VENDOR__] = ACTIONS(4698), [anon_sym___VERSION__] = ACTIONS(4698), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4701), [sym_float_literal] = ACTIONS(4701), [sym__string] = ACTIONS(4701), }, [2173] = { [sym_identifier] = ACTIONS(4414), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4416), [anon_sym_LBRACE] = ACTIONS(4416), [anon_sym_DOT] = ACTIONS(4416), [anon_sym_AMP] = ACTIONS(4416), [anon_sym_DASH] = ACTIONS(4414), [anon_sym_DASH_DASH] = ACTIONS(4416), [anon_sym_PLUS] = ACTIONS(4414), [anon_sym_PLUS_PLUS] = ACTIONS(4416), [anon_sym_BANG] = ACTIONS(4416), [anon_sym_LPAREN] = ACTIONS(4416), [anon_sym_RPAREN] = ACTIONS(4416), [anon_sym_LBRACK] = ACTIONS(4416), [anon_sym_SEMI] = ACTIONS(4416), [anon_sym_DOLLAR] = ACTIONS(4416), [anon_sym_STAR] = ACTIONS(4416), [anon_sym_TILDE] = ACTIONS(4416), [sym_bool] = ACTIONS(4414), [sym_byte] = ACTIONS(4414), [sym_ubyte] = ACTIONS(4414), [sym_char] = ACTIONS(4414), [sym_short] = ACTIONS(4414), [sym_ushort] = ACTIONS(4414), [sym_int] = ACTIONS(4414), [sym_uint] = ACTIONS(4414), [sym_long] = ACTIONS(4414), [sym_ulong] = ACTIONS(4414), [sym_cent] = ACTIONS(4414), [sym_ucent] = ACTIONS(4414), [sym_wchar] = ACTIONS(4414), [sym_dchar] = ACTIONS(4414), [sym_float] = ACTIONS(4414), [sym_double] = ACTIONS(4414), [sym_real] = ACTIONS(4414), [sym_ifloat] = ACTIONS(4414), [sym_idouble] = ACTIONS(4414), [sym_ireal] = ACTIONS(4414), [sym_cfloat] = ACTIONS(4414), [sym_cdouble] = ACTIONS(4414), [sym_creal] = ACTIONS(4414), [sym_size_t] = ACTIONS(4414), [sym_ptrdiff_t] = ACTIONS(4414), [sym_string] = ACTIONS(4414), [sym_cstring] = ACTIONS(4414), [sym_dstring] = ACTIONS(4414), [sym_wstring] = ACTIONS(4414), [sym_noreturn] = ACTIONS(4414), [sym_true] = ACTIONS(4414), [sym_false] = ACTIONS(4414), [sym_null] = ACTIONS(4414), [sym_super] = ACTIONS(4414), [sym_this] = ACTIONS(4414), [sym_assert] = ACTIONS(4414), [sym_auto] = ACTIONS(4414), [sym_cast] = ACTIONS(4414), [sym_catch] = ACTIONS(4414), [sym_const] = ACTIONS(4414), [sym_delegate] = ACTIONS(4414), [sym_delete] = ACTIONS(4414), [sym_do] = ACTIONS(4414), [sym_else] = ACTIONS(4414), [sym_finally] = ACTIONS(4414), [sym_function] = ACTIONS(4414), [sym_immutable] = ACTIONS(4414), [sym_import] = ACTIONS(4414), [sym_in] = ACTIONS(4414), [sym_inout] = ACTIONS(4414), [sym_is] = ACTIONS(4414), [sym_mixin] = ACTIONS(4414), [sym_new] = ACTIONS(4414), [sym_out] = ACTIONS(4414), [sym_ref] = ACTIONS(4414), [sym_shared] = ACTIONS(4414), [sym_throw] = ACTIONS(4414), [sym_typeid] = ACTIONS(4414), [sym_typeof] = ACTIONS(4414), [sym_traits] = ACTIONS(4414), [sym_vector] = ACTIONS(4414), [sym_void] = ACTIONS(4414), [anon_sym_BQUOTE] = ACTIONS(4416), [anon_sym_r_DQUOTE] = ACTIONS(4416), [anon_sym_x_DQUOTE] = ACTIONS(4416), [anon_sym_DQUOTE] = ACTIONS(4416), [anon_sym_i_BQUOTE] = ACTIONS(4416), [anon_sym_i_DQUOTE] = ACTIONS(4416), [anon_sym_iq_LBRACE] = ACTIONS(4416), [aux_sym_char_literal_token1] = ACTIONS(4416), [anon_sym_SQUOTE] = ACTIONS(4414), [anon_sym___DATE__] = ACTIONS(4414), [anon_sym___FILE__] = ACTIONS(4414), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4414), [anon_sym___FUNCTION__] = ACTIONS(4414), [anon_sym___LINE__] = ACTIONS(4414), [anon_sym___MODULE__] = ACTIONS(4414), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4414), [anon_sym___TIME__] = ACTIONS(4414), [anon_sym___TIMESTAMP__] = ACTIONS(4414), [anon_sym___VENDOR__] = ACTIONS(4414), [anon_sym___VERSION__] = ACTIONS(4414), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4416), [sym_float_literal] = ACTIONS(4416), [sym__string] = ACTIONS(4416), }, [2174] = { [sym_identifier] = ACTIONS(4728), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4730), [anon_sym_LBRACE] = ACTIONS(4730), [anon_sym_DOT] = ACTIONS(4730), [anon_sym_AMP] = ACTIONS(4730), [anon_sym_DASH] = ACTIONS(4728), [anon_sym_DASH_DASH] = ACTIONS(4730), [anon_sym_PLUS] = ACTIONS(4728), [anon_sym_PLUS_PLUS] = ACTIONS(4730), [anon_sym_BANG] = ACTIONS(4730), [anon_sym_LPAREN] = ACTIONS(4730), [anon_sym_RPAREN] = ACTIONS(4730), [anon_sym_LBRACK] = ACTIONS(4730), [anon_sym_SEMI] = ACTIONS(4730), [anon_sym_DOLLAR] = ACTIONS(4730), [anon_sym_STAR] = ACTIONS(4730), [anon_sym_TILDE] = ACTIONS(4730), [sym_bool] = ACTIONS(4728), [sym_byte] = ACTIONS(4728), [sym_ubyte] = ACTIONS(4728), [sym_char] = ACTIONS(4728), [sym_short] = ACTIONS(4728), [sym_ushort] = ACTIONS(4728), [sym_int] = ACTIONS(4728), [sym_uint] = ACTIONS(4728), [sym_long] = ACTIONS(4728), [sym_ulong] = ACTIONS(4728), [sym_cent] = ACTIONS(4728), [sym_ucent] = ACTIONS(4728), [sym_wchar] = ACTIONS(4728), [sym_dchar] = ACTIONS(4728), [sym_float] = ACTIONS(4728), [sym_double] = ACTIONS(4728), [sym_real] = ACTIONS(4728), [sym_ifloat] = ACTIONS(4728), [sym_idouble] = ACTIONS(4728), [sym_ireal] = ACTIONS(4728), [sym_cfloat] = ACTIONS(4728), [sym_cdouble] = ACTIONS(4728), [sym_creal] = ACTIONS(4728), [sym_size_t] = ACTIONS(4728), [sym_ptrdiff_t] = ACTIONS(4728), [sym_string] = ACTIONS(4728), [sym_cstring] = ACTIONS(4728), [sym_dstring] = ACTIONS(4728), [sym_wstring] = ACTIONS(4728), [sym_noreturn] = ACTIONS(4728), [sym_true] = ACTIONS(4728), [sym_false] = ACTIONS(4728), [sym_null] = ACTIONS(4728), [sym_super] = ACTIONS(4728), [sym_this] = ACTIONS(4728), [sym_assert] = ACTIONS(4728), [sym_auto] = ACTIONS(4728), [sym_cast] = ACTIONS(4728), [sym_catch] = ACTIONS(4728), [sym_const] = ACTIONS(4728), [sym_delegate] = ACTIONS(4728), [sym_delete] = ACTIONS(4728), [sym_do] = ACTIONS(4728), [sym_else] = ACTIONS(4728), [sym_finally] = ACTIONS(4728), [sym_function] = ACTIONS(4728), [sym_immutable] = ACTIONS(4728), [sym_import] = ACTIONS(4728), [sym_in] = ACTIONS(4728), [sym_inout] = ACTIONS(4728), [sym_is] = ACTIONS(4728), [sym_mixin] = ACTIONS(4728), [sym_new] = ACTIONS(4728), [sym_out] = ACTIONS(4728), [sym_ref] = ACTIONS(4728), [sym_shared] = ACTIONS(4728), [sym_throw] = ACTIONS(4728), [sym_typeid] = ACTIONS(4728), [sym_typeof] = ACTIONS(4728), [sym_traits] = ACTIONS(4728), [sym_vector] = ACTIONS(4728), [sym_void] = ACTIONS(4728), [anon_sym_BQUOTE] = ACTIONS(4730), [anon_sym_r_DQUOTE] = ACTIONS(4730), [anon_sym_x_DQUOTE] = ACTIONS(4730), [anon_sym_DQUOTE] = ACTIONS(4730), [anon_sym_i_BQUOTE] = ACTIONS(4730), [anon_sym_i_DQUOTE] = ACTIONS(4730), [anon_sym_iq_LBRACE] = ACTIONS(4730), [aux_sym_char_literal_token1] = ACTIONS(4730), [anon_sym_SQUOTE] = ACTIONS(4728), [anon_sym___DATE__] = ACTIONS(4728), [anon_sym___FILE__] = ACTIONS(4728), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4728), [anon_sym___FUNCTION__] = ACTIONS(4728), [anon_sym___LINE__] = ACTIONS(4728), [anon_sym___MODULE__] = ACTIONS(4728), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4728), [anon_sym___TIME__] = ACTIONS(4728), [anon_sym___TIMESTAMP__] = ACTIONS(4728), [anon_sym___VENDOR__] = ACTIONS(4728), [anon_sym___VERSION__] = ACTIONS(4728), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4730), [sym_float_literal] = ACTIONS(4730), [sym__string] = ACTIONS(4730), }, [2175] = { [sym_identifier] = ACTIONS(4339), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4341), [anon_sym_LBRACE] = ACTIONS(4341), [anon_sym_DOT] = ACTIONS(4341), [anon_sym_AMP] = ACTIONS(4341), [anon_sym_DASH] = ACTIONS(4339), [anon_sym_DASH_DASH] = ACTIONS(4341), [anon_sym_PLUS] = ACTIONS(4339), [anon_sym_PLUS_PLUS] = ACTIONS(4341), [anon_sym_BANG] = ACTIONS(4341), [anon_sym_LPAREN] = ACTIONS(4341), [anon_sym_RPAREN] = ACTIONS(4341), [anon_sym_LBRACK] = ACTIONS(4341), [anon_sym_SEMI] = ACTIONS(4341), [anon_sym_DOLLAR] = ACTIONS(4341), [anon_sym_STAR] = ACTIONS(4341), [anon_sym_TILDE] = ACTIONS(4341), [sym_bool] = ACTIONS(4339), [sym_byte] = ACTIONS(4339), [sym_ubyte] = ACTIONS(4339), [sym_char] = ACTIONS(4339), [sym_short] = ACTIONS(4339), [sym_ushort] = ACTIONS(4339), [sym_int] = ACTIONS(4339), [sym_uint] = ACTIONS(4339), [sym_long] = ACTIONS(4339), [sym_ulong] = ACTIONS(4339), [sym_cent] = ACTIONS(4339), [sym_ucent] = ACTIONS(4339), [sym_wchar] = ACTIONS(4339), [sym_dchar] = ACTIONS(4339), [sym_float] = ACTIONS(4339), [sym_double] = ACTIONS(4339), [sym_real] = ACTIONS(4339), [sym_ifloat] = ACTIONS(4339), [sym_idouble] = ACTIONS(4339), [sym_ireal] = ACTIONS(4339), [sym_cfloat] = ACTIONS(4339), [sym_cdouble] = ACTIONS(4339), [sym_creal] = ACTIONS(4339), [sym_size_t] = ACTIONS(4339), [sym_ptrdiff_t] = ACTIONS(4339), [sym_string] = ACTIONS(4339), [sym_cstring] = ACTIONS(4339), [sym_dstring] = ACTIONS(4339), [sym_wstring] = ACTIONS(4339), [sym_noreturn] = ACTIONS(4339), [sym_true] = ACTIONS(4339), [sym_false] = ACTIONS(4339), [sym_null] = ACTIONS(4339), [sym_super] = ACTIONS(4339), [sym_this] = ACTIONS(4339), [sym_assert] = ACTIONS(4339), [sym_auto] = ACTIONS(4339), [sym_cast] = ACTIONS(4339), [sym_catch] = ACTIONS(4339), [sym_const] = ACTIONS(4339), [sym_delegate] = ACTIONS(4339), [sym_delete] = ACTIONS(4339), [sym_do] = ACTIONS(4339), [sym_else] = ACTIONS(4339), [sym_finally] = ACTIONS(4339), [sym_function] = ACTIONS(4339), [sym_immutable] = ACTIONS(4339), [sym_import] = ACTIONS(4339), [sym_in] = ACTIONS(4339), [sym_inout] = ACTIONS(4339), [sym_is] = ACTIONS(4339), [sym_mixin] = ACTIONS(4339), [sym_new] = ACTIONS(4339), [sym_out] = ACTIONS(4339), [sym_ref] = ACTIONS(4339), [sym_shared] = ACTIONS(4339), [sym_throw] = ACTIONS(4339), [sym_typeid] = ACTIONS(4339), [sym_typeof] = ACTIONS(4339), [sym_traits] = ACTIONS(4339), [sym_vector] = ACTIONS(4339), [sym_void] = ACTIONS(4339), [anon_sym_BQUOTE] = ACTIONS(4341), [anon_sym_r_DQUOTE] = ACTIONS(4341), [anon_sym_x_DQUOTE] = ACTIONS(4341), [anon_sym_DQUOTE] = ACTIONS(4341), [anon_sym_i_BQUOTE] = ACTIONS(4341), [anon_sym_i_DQUOTE] = ACTIONS(4341), [anon_sym_iq_LBRACE] = ACTIONS(4341), [aux_sym_char_literal_token1] = ACTIONS(4341), [anon_sym_SQUOTE] = ACTIONS(4339), [anon_sym___DATE__] = ACTIONS(4339), [anon_sym___FILE__] = ACTIONS(4339), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4339), [anon_sym___FUNCTION__] = ACTIONS(4339), [anon_sym___LINE__] = ACTIONS(4339), [anon_sym___MODULE__] = ACTIONS(4339), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4339), [anon_sym___TIME__] = ACTIONS(4339), [anon_sym___TIMESTAMP__] = ACTIONS(4339), [anon_sym___VENDOR__] = ACTIONS(4339), [anon_sym___VERSION__] = ACTIONS(4339), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4341), [sym_float_literal] = ACTIONS(4341), [sym__string] = ACTIONS(4341), }, [2176] = { [sym_identifier] = ACTIONS(4327), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4329), [anon_sym_LBRACE] = ACTIONS(4329), [anon_sym_DOT] = ACTIONS(4329), [anon_sym_AMP] = ACTIONS(4329), [anon_sym_DASH] = ACTIONS(4327), [anon_sym_DASH_DASH] = ACTIONS(4329), [anon_sym_PLUS] = ACTIONS(4327), [anon_sym_PLUS_PLUS] = ACTIONS(4329), [anon_sym_BANG] = ACTIONS(4329), [anon_sym_LPAREN] = ACTIONS(4329), [anon_sym_RPAREN] = ACTIONS(4329), [anon_sym_LBRACK] = ACTIONS(4329), [anon_sym_SEMI] = ACTIONS(4329), [anon_sym_DOLLAR] = ACTIONS(4329), [anon_sym_STAR] = ACTIONS(4329), [anon_sym_TILDE] = ACTIONS(4329), [sym_bool] = ACTIONS(4327), [sym_byte] = ACTIONS(4327), [sym_ubyte] = ACTIONS(4327), [sym_char] = ACTIONS(4327), [sym_short] = ACTIONS(4327), [sym_ushort] = ACTIONS(4327), [sym_int] = ACTIONS(4327), [sym_uint] = ACTIONS(4327), [sym_long] = ACTIONS(4327), [sym_ulong] = ACTIONS(4327), [sym_cent] = ACTIONS(4327), [sym_ucent] = ACTIONS(4327), [sym_wchar] = ACTIONS(4327), [sym_dchar] = ACTIONS(4327), [sym_float] = ACTIONS(4327), [sym_double] = ACTIONS(4327), [sym_real] = ACTIONS(4327), [sym_ifloat] = ACTIONS(4327), [sym_idouble] = ACTIONS(4327), [sym_ireal] = ACTIONS(4327), [sym_cfloat] = ACTIONS(4327), [sym_cdouble] = ACTIONS(4327), [sym_creal] = ACTIONS(4327), [sym_size_t] = ACTIONS(4327), [sym_ptrdiff_t] = ACTIONS(4327), [sym_string] = ACTIONS(4327), [sym_cstring] = ACTIONS(4327), [sym_dstring] = ACTIONS(4327), [sym_wstring] = ACTIONS(4327), [sym_noreturn] = ACTIONS(4327), [sym_true] = ACTIONS(4327), [sym_false] = ACTIONS(4327), [sym_null] = ACTIONS(4327), [sym_super] = ACTIONS(4327), [sym_this] = ACTIONS(4327), [sym_assert] = ACTIONS(4327), [sym_auto] = ACTIONS(4327), [sym_cast] = ACTIONS(4327), [sym_catch] = ACTIONS(4327), [sym_const] = ACTIONS(4327), [sym_delegate] = ACTIONS(4327), [sym_delete] = ACTIONS(4327), [sym_do] = ACTIONS(4327), [sym_else] = ACTIONS(4327), [sym_finally] = ACTIONS(4327), [sym_function] = ACTIONS(4327), [sym_immutable] = ACTIONS(4327), [sym_import] = ACTIONS(4327), [sym_in] = ACTIONS(4327), [sym_inout] = ACTIONS(4327), [sym_is] = ACTIONS(4327), [sym_mixin] = ACTIONS(4327), [sym_new] = ACTIONS(4327), [sym_out] = ACTIONS(4327), [sym_ref] = ACTIONS(4327), [sym_shared] = ACTIONS(4327), [sym_throw] = ACTIONS(4327), [sym_typeid] = ACTIONS(4327), [sym_typeof] = ACTIONS(4327), [sym_traits] = ACTIONS(4327), [sym_vector] = ACTIONS(4327), [sym_void] = ACTIONS(4327), [anon_sym_BQUOTE] = ACTIONS(4329), [anon_sym_r_DQUOTE] = ACTIONS(4329), [anon_sym_x_DQUOTE] = ACTIONS(4329), [anon_sym_DQUOTE] = ACTIONS(4329), [anon_sym_i_BQUOTE] = ACTIONS(4329), [anon_sym_i_DQUOTE] = ACTIONS(4329), [anon_sym_iq_LBRACE] = ACTIONS(4329), [aux_sym_char_literal_token1] = ACTIONS(4329), [anon_sym_SQUOTE] = ACTIONS(4327), [anon_sym___DATE__] = ACTIONS(4327), [anon_sym___FILE__] = ACTIONS(4327), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4327), [anon_sym___FUNCTION__] = ACTIONS(4327), [anon_sym___LINE__] = ACTIONS(4327), [anon_sym___MODULE__] = ACTIONS(4327), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4327), [anon_sym___TIME__] = ACTIONS(4327), [anon_sym___TIMESTAMP__] = ACTIONS(4327), [anon_sym___VENDOR__] = ACTIONS(4327), [anon_sym___VERSION__] = ACTIONS(4327), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4329), [sym_float_literal] = ACTIONS(4329), [sym__string] = ACTIONS(4329), }, [2177] = { [sym_identifier] = ACTIONS(4313), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4315), [anon_sym_LBRACE] = ACTIONS(4315), [anon_sym_DOT] = ACTIONS(4315), [anon_sym_AMP] = ACTIONS(4315), [anon_sym_DASH] = ACTIONS(4313), [anon_sym_DASH_DASH] = ACTIONS(4315), [anon_sym_PLUS] = ACTIONS(4313), [anon_sym_PLUS_PLUS] = ACTIONS(4315), [anon_sym_BANG] = ACTIONS(4315), [anon_sym_LPAREN] = ACTIONS(4315), [anon_sym_RPAREN] = ACTIONS(4315), [anon_sym_LBRACK] = ACTIONS(4315), [anon_sym_SEMI] = ACTIONS(4315), [anon_sym_DOLLAR] = ACTIONS(4315), [anon_sym_STAR] = ACTIONS(4315), [anon_sym_TILDE] = ACTIONS(4315), [sym_bool] = ACTIONS(4313), [sym_byte] = ACTIONS(4313), [sym_ubyte] = ACTIONS(4313), [sym_char] = ACTIONS(4313), [sym_short] = ACTIONS(4313), [sym_ushort] = ACTIONS(4313), [sym_int] = ACTIONS(4313), [sym_uint] = ACTIONS(4313), [sym_long] = ACTIONS(4313), [sym_ulong] = ACTIONS(4313), [sym_cent] = ACTIONS(4313), [sym_ucent] = ACTIONS(4313), [sym_wchar] = ACTIONS(4313), [sym_dchar] = ACTIONS(4313), [sym_float] = ACTIONS(4313), [sym_double] = ACTIONS(4313), [sym_real] = ACTIONS(4313), [sym_ifloat] = ACTIONS(4313), [sym_idouble] = ACTIONS(4313), [sym_ireal] = ACTIONS(4313), [sym_cfloat] = ACTIONS(4313), [sym_cdouble] = ACTIONS(4313), [sym_creal] = ACTIONS(4313), [sym_size_t] = ACTIONS(4313), [sym_ptrdiff_t] = ACTIONS(4313), [sym_string] = ACTIONS(4313), [sym_cstring] = ACTIONS(4313), [sym_dstring] = ACTIONS(4313), [sym_wstring] = ACTIONS(4313), [sym_noreturn] = ACTIONS(4313), [sym_true] = ACTIONS(4313), [sym_false] = ACTIONS(4313), [sym_null] = ACTIONS(4313), [sym_super] = ACTIONS(4313), [sym_this] = ACTIONS(4313), [sym_assert] = ACTIONS(4313), [sym_auto] = ACTIONS(4313), [sym_cast] = ACTIONS(4313), [sym_catch] = ACTIONS(4313), [sym_const] = ACTIONS(4313), [sym_delegate] = ACTIONS(4313), [sym_delete] = ACTIONS(4313), [sym_do] = ACTIONS(4313), [sym_else] = ACTIONS(4313), [sym_finally] = ACTIONS(4313), [sym_function] = ACTIONS(4313), [sym_immutable] = ACTIONS(4313), [sym_import] = ACTIONS(4313), [sym_in] = ACTIONS(4313), [sym_inout] = ACTIONS(4313), [sym_is] = ACTIONS(4313), [sym_mixin] = ACTIONS(4313), [sym_new] = ACTIONS(4313), [sym_out] = ACTIONS(4313), [sym_ref] = ACTIONS(4313), [sym_shared] = ACTIONS(4313), [sym_throw] = ACTIONS(4313), [sym_typeid] = ACTIONS(4313), [sym_typeof] = ACTIONS(4313), [sym_traits] = ACTIONS(4313), [sym_vector] = ACTIONS(4313), [sym_void] = ACTIONS(4313), [anon_sym_BQUOTE] = ACTIONS(4315), [anon_sym_r_DQUOTE] = ACTIONS(4315), [anon_sym_x_DQUOTE] = ACTIONS(4315), [anon_sym_DQUOTE] = ACTIONS(4315), [anon_sym_i_BQUOTE] = ACTIONS(4315), [anon_sym_i_DQUOTE] = ACTIONS(4315), [anon_sym_iq_LBRACE] = ACTIONS(4315), [aux_sym_char_literal_token1] = ACTIONS(4315), [anon_sym_SQUOTE] = ACTIONS(4313), [anon_sym___DATE__] = ACTIONS(4313), [anon_sym___FILE__] = ACTIONS(4313), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4313), [anon_sym___FUNCTION__] = ACTIONS(4313), [anon_sym___LINE__] = ACTIONS(4313), [anon_sym___MODULE__] = ACTIONS(4313), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4313), [anon_sym___TIME__] = ACTIONS(4313), [anon_sym___TIMESTAMP__] = ACTIONS(4313), [anon_sym___VENDOR__] = ACTIONS(4313), [anon_sym___VERSION__] = ACTIONS(4313), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4315), [sym_float_literal] = ACTIONS(4315), [sym__string] = ACTIONS(4315), }, [2178] = { [sym_identifier] = ACTIONS(4740), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4743), [anon_sym_LBRACE] = ACTIONS(4743), [anon_sym_DOT] = ACTIONS(4743), [anon_sym_AMP] = ACTIONS(4743), [anon_sym_DASH] = ACTIONS(4740), [anon_sym_DASH_DASH] = ACTIONS(4743), [anon_sym_PLUS] = ACTIONS(4740), [anon_sym_PLUS_PLUS] = ACTIONS(4743), [anon_sym_BANG] = ACTIONS(4743), [anon_sym_LPAREN] = ACTIONS(4743), [anon_sym_RPAREN] = ACTIONS(4743), [anon_sym_LBRACK] = ACTIONS(4743), [anon_sym_SEMI] = ACTIONS(4743), [anon_sym_DOLLAR] = ACTIONS(4743), [anon_sym_STAR] = ACTIONS(4743), [anon_sym_TILDE] = ACTIONS(4743), [sym_bool] = ACTIONS(4740), [sym_byte] = ACTIONS(4740), [sym_ubyte] = ACTIONS(4740), [sym_char] = ACTIONS(4740), [sym_short] = ACTIONS(4740), [sym_ushort] = ACTIONS(4740), [sym_int] = ACTIONS(4740), [sym_uint] = ACTIONS(4740), [sym_long] = ACTIONS(4740), [sym_ulong] = ACTIONS(4740), [sym_cent] = ACTIONS(4740), [sym_ucent] = ACTIONS(4740), [sym_wchar] = ACTIONS(4740), [sym_dchar] = ACTIONS(4740), [sym_float] = ACTIONS(4740), [sym_double] = ACTIONS(4740), [sym_real] = ACTIONS(4740), [sym_ifloat] = ACTIONS(4740), [sym_idouble] = ACTIONS(4740), [sym_ireal] = ACTIONS(4740), [sym_cfloat] = ACTIONS(4740), [sym_cdouble] = ACTIONS(4740), [sym_creal] = ACTIONS(4740), [sym_size_t] = ACTIONS(4740), [sym_ptrdiff_t] = ACTIONS(4740), [sym_string] = ACTIONS(4740), [sym_cstring] = ACTIONS(4740), [sym_dstring] = ACTIONS(4740), [sym_wstring] = ACTIONS(4740), [sym_noreturn] = ACTIONS(4740), [sym_true] = ACTIONS(4740), [sym_false] = ACTIONS(4740), [sym_null] = ACTIONS(4740), [sym_super] = ACTIONS(4740), [sym_this] = ACTIONS(4740), [sym_assert] = ACTIONS(4740), [sym_auto] = ACTIONS(4740), [sym_cast] = ACTIONS(4740), [sym_catch] = ACTIONS(4740), [sym_const] = ACTIONS(4740), [sym_delegate] = ACTIONS(4740), [sym_delete] = ACTIONS(4740), [sym_do] = ACTIONS(4740), [sym_else] = ACTIONS(4740), [sym_finally] = ACTIONS(4740), [sym_function] = ACTIONS(4740), [sym_immutable] = ACTIONS(4740), [sym_import] = ACTIONS(4740), [sym_in] = ACTIONS(4740), [sym_inout] = ACTIONS(4740), [sym_is] = ACTIONS(4740), [sym_mixin] = ACTIONS(4740), [sym_new] = ACTIONS(4740), [sym_out] = ACTIONS(4740), [sym_ref] = ACTIONS(4740), [sym_shared] = ACTIONS(4740), [sym_throw] = ACTIONS(4740), [sym_typeid] = ACTIONS(4740), [sym_typeof] = ACTIONS(4740), [sym_traits] = ACTIONS(4740), [sym_vector] = ACTIONS(4740), [sym_void] = ACTIONS(4740), [anon_sym_BQUOTE] = ACTIONS(4743), [anon_sym_r_DQUOTE] = ACTIONS(4743), [anon_sym_x_DQUOTE] = ACTIONS(4743), [anon_sym_DQUOTE] = ACTIONS(4743), [anon_sym_i_BQUOTE] = ACTIONS(4743), [anon_sym_i_DQUOTE] = ACTIONS(4743), [anon_sym_iq_LBRACE] = ACTIONS(4743), [aux_sym_char_literal_token1] = ACTIONS(4743), [anon_sym_SQUOTE] = ACTIONS(4740), [anon_sym___DATE__] = ACTIONS(4740), [anon_sym___FILE__] = ACTIONS(4740), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4740), [anon_sym___FUNCTION__] = ACTIONS(4740), [anon_sym___LINE__] = ACTIONS(4740), [anon_sym___MODULE__] = ACTIONS(4740), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4740), [anon_sym___TIME__] = ACTIONS(4740), [anon_sym___TIMESTAMP__] = ACTIONS(4740), [anon_sym___VENDOR__] = ACTIONS(4740), [anon_sym___VERSION__] = ACTIONS(4740), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4743), [sym_float_literal] = ACTIONS(4743), [sym__string] = ACTIONS(4743), }, [2179] = { [sym_identifier] = ACTIONS(4762), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4764), [anon_sym_LBRACE] = ACTIONS(4764), [anon_sym_DOT] = ACTIONS(4764), [anon_sym_AMP] = ACTIONS(4764), [anon_sym_DASH] = ACTIONS(4762), [anon_sym_DASH_DASH] = ACTIONS(4764), [anon_sym_PLUS] = ACTIONS(4762), [anon_sym_PLUS_PLUS] = ACTIONS(4764), [anon_sym_BANG] = ACTIONS(4764), [anon_sym_LPAREN] = ACTIONS(4764), [anon_sym_RPAREN] = ACTIONS(4764), [anon_sym_LBRACK] = ACTIONS(4764), [anon_sym_SEMI] = ACTIONS(4764), [anon_sym_DOLLAR] = ACTIONS(4764), [anon_sym_STAR] = ACTIONS(4764), [anon_sym_TILDE] = ACTIONS(4764), [sym_bool] = ACTIONS(4762), [sym_byte] = ACTIONS(4762), [sym_ubyte] = ACTIONS(4762), [sym_char] = ACTIONS(4762), [sym_short] = ACTIONS(4762), [sym_ushort] = ACTIONS(4762), [sym_int] = ACTIONS(4762), [sym_uint] = ACTIONS(4762), [sym_long] = ACTIONS(4762), [sym_ulong] = ACTIONS(4762), [sym_cent] = ACTIONS(4762), [sym_ucent] = ACTIONS(4762), [sym_wchar] = ACTIONS(4762), [sym_dchar] = ACTIONS(4762), [sym_float] = ACTIONS(4762), [sym_double] = ACTIONS(4762), [sym_real] = ACTIONS(4762), [sym_ifloat] = ACTIONS(4762), [sym_idouble] = ACTIONS(4762), [sym_ireal] = ACTIONS(4762), [sym_cfloat] = ACTIONS(4762), [sym_cdouble] = ACTIONS(4762), [sym_creal] = ACTIONS(4762), [sym_size_t] = ACTIONS(4762), [sym_ptrdiff_t] = ACTIONS(4762), [sym_string] = ACTIONS(4762), [sym_cstring] = ACTIONS(4762), [sym_dstring] = ACTIONS(4762), [sym_wstring] = ACTIONS(4762), [sym_noreturn] = ACTIONS(4762), [sym_true] = ACTIONS(4762), [sym_false] = ACTIONS(4762), [sym_null] = ACTIONS(4762), [sym_super] = ACTIONS(4762), [sym_this] = ACTIONS(4762), [sym_assert] = ACTIONS(4762), [sym_auto] = ACTIONS(4762), [sym_cast] = ACTIONS(4762), [sym_catch] = ACTIONS(4762), [sym_const] = ACTIONS(4762), [sym_delegate] = ACTIONS(4762), [sym_delete] = ACTIONS(4762), [sym_do] = ACTIONS(4762), [sym_else] = ACTIONS(4762), [sym_finally] = ACTIONS(4762), [sym_function] = ACTIONS(4762), [sym_immutable] = ACTIONS(4762), [sym_import] = ACTIONS(4762), [sym_in] = ACTIONS(4762), [sym_inout] = ACTIONS(4762), [sym_is] = ACTIONS(4762), [sym_mixin] = ACTIONS(4762), [sym_new] = ACTIONS(4762), [sym_out] = ACTIONS(4762), [sym_ref] = ACTIONS(4762), [sym_shared] = ACTIONS(4762), [sym_throw] = ACTIONS(4762), [sym_typeid] = ACTIONS(4762), [sym_typeof] = ACTIONS(4762), [sym_traits] = ACTIONS(4762), [sym_vector] = ACTIONS(4762), [sym_void] = ACTIONS(4762), [anon_sym_BQUOTE] = ACTIONS(4764), [anon_sym_r_DQUOTE] = ACTIONS(4764), [anon_sym_x_DQUOTE] = ACTIONS(4764), [anon_sym_DQUOTE] = ACTIONS(4764), [anon_sym_i_BQUOTE] = ACTIONS(4764), [anon_sym_i_DQUOTE] = ACTIONS(4764), [anon_sym_iq_LBRACE] = ACTIONS(4764), [aux_sym_char_literal_token1] = ACTIONS(4764), [anon_sym_SQUOTE] = ACTIONS(4762), [anon_sym___DATE__] = ACTIONS(4762), [anon_sym___FILE__] = ACTIONS(4762), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4762), [anon_sym___FUNCTION__] = ACTIONS(4762), [anon_sym___LINE__] = ACTIONS(4762), [anon_sym___MODULE__] = ACTIONS(4762), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4762), [anon_sym___TIME__] = ACTIONS(4762), [anon_sym___TIMESTAMP__] = ACTIONS(4762), [anon_sym___VENDOR__] = ACTIONS(4762), [anon_sym___VERSION__] = ACTIONS(4762), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4764), [sym_float_literal] = ACTIONS(4764), [sym__string] = ACTIONS(4764), }, [2180] = { [sym_identifier] = ACTIONS(4293), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4295), [anon_sym_LBRACE] = ACTIONS(4295), [anon_sym_DOT] = ACTIONS(4295), [anon_sym_AMP] = ACTIONS(4295), [anon_sym_DASH] = ACTIONS(4293), [anon_sym_DASH_DASH] = ACTIONS(4295), [anon_sym_PLUS] = ACTIONS(4293), [anon_sym_PLUS_PLUS] = ACTIONS(4295), [anon_sym_BANG] = ACTIONS(4295), [anon_sym_LPAREN] = ACTIONS(4295), [anon_sym_RPAREN] = ACTIONS(4295), [anon_sym_LBRACK] = ACTIONS(4295), [anon_sym_SEMI] = ACTIONS(4295), [anon_sym_DOLLAR] = ACTIONS(4295), [anon_sym_STAR] = ACTIONS(4295), [anon_sym_TILDE] = ACTIONS(4295), [sym_bool] = ACTIONS(4293), [sym_byte] = ACTIONS(4293), [sym_ubyte] = ACTIONS(4293), [sym_char] = ACTIONS(4293), [sym_short] = ACTIONS(4293), [sym_ushort] = ACTIONS(4293), [sym_int] = ACTIONS(4293), [sym_uint] = ACTIONS(4293), [sym_long] = ACTIONS(4293), [sym_ulong] = ACTIONS(4293), [sym_cent] = ACTIONS(4293), [sym_ucent] = ACTIONS(4293), [sym_wchar] = ACTIONS(4293), [sym_dchar] = ACTIONS(4293), [sym_float] = ACTIONS(4293), [sym_double] = ACTIONS(4293), [sym_real] = ACTIONS(4293), [sym_ifloat] = ACTIONS(4293), [sym_idouble] = ACTIONS(4293), [sym_ireal] = ACTIONS(4293), [sym_cfloat] = ACTIONS(4293), [sym_cdouble] = ACTIONS(4293), [sym_creal] = ACTIONS(4293), [sym_size_t] = ACTIONS(4293), [sym_ptrdiff_t] = ACTIONS(4293), [sym_string] = ACTIONS(4293), [sym_cstring] = ACTIONS(4293), [sym_dstring] = ACTIONS(4293), [sym_wstring] = ACTIONS(4293), [sym_noreturn] = ACTIONS(4293), [sym_true] = ACTIONS(4293), [sym_false] = ACTIONS(4293), [sym_null] = ACTIONS(4293), [sym_super] = ACTIONS(4293), [sym_this] = ACTIONS(4293), [sym_assert] = ACTIONS(4293), [sym_auto] = ACTIONS(4293), [sym_cast] = ACTIONS(4293), [sym_catch] = ACTIONS(4293), [sym_const] = ACTIONS(4293), [sym_delegate] = ACTIONS(4293), [sym_delete] = ACTIONS(4293), [sym_do] = ACTIONS(4293), [sym_else] = ACTIONS(4293), [sym_finally] = ACTIONS(4293), [sym_function] = ACTIONS(4293), [sym_immutable] = ACTIONS(4293), [sym_import] = ACTIONS(4293), [sym_in] = ACTIONS(4293), [sym_inout] = ACTIONS(4293), [sym_is] = ACTIONS(4293), [sym_mixin] = ACTIONS(4293), [sym_new] = ACTIONS(4293), [sym_out] = ACTIONS(4293), [sym_ref] = ACTIONS(4293), [sym_shared] = ACTIONS(4293), [sym_throw] = ACTIONS(4293), [sym_typeid] = ACTIONS(4293), [sym_typeof] = ACTIONS(4293), [sym_traits] = ACTIONS(4293), [sym_vector] = ACTIONS(4293), [sym_void] = ACTIONS(4293), [anon_sym_BQUOTE] = ACTIONS(4295), [anon_sym_r_DQUOTE] = ACTIONS(4295), [anon_sym_x_DQUOTE] = ACTIONS(4295), [anon_sym_DQUOTE] = ACTIONS(4295), [anon_sym_i_BQUOTE] = ACTIONS(4295), [anon_sym_i_DQUOTE] = ACTIONS(4295), [anon_sym_iq_LBRACE] = ACTIONS(4295), [aux_sym_char_literal_token1] = ACTIONS(4295), [anon_sym_SQUOTE] = ACTIONS(4293), [anon_sym___DATE__] = ACTIONS(4293), [anon_sym___FILE__] = ACTIONS(4293), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4293), [anon_sym___FUNCTION__] = ACTIONS(4293), [anon_sym___LINE__] = ACTIONS(4293), [anon_sym___MODULE__] = ACTIONS(4293), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4293), [anon_sym___TIME__] = ACTIONS(4293), [anon_sym___TIMESTAMP__] = ACTIONS(4293), [anon_sym___VENDOR__] = ACTIONS(4293), [anon_sym___VERSION__] = ACTIONS(4293), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4295), [sym_float_literal] = ACTIONS(4295), [sym__string] = ACTIONS(4295), }, [2181] = { [sym_identifier] = ACTIONS(4782), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4785), [anon_sym_LBRACE] = ACTIONS(4785), [anon_sym_DOT] = ACTIONS(4785), [anon_sym_AMP] = ACTIONS(4785), [anon_sym_DASH] = ACTIONS(4782), [anon_sym_DASH_DASH] = ACTIONS(4785), [anon_sym_PLUS] = ACTIONS(4782), [anon_sym_PLUS_PLUS] = ACTIONS(4785), [anon_sym_BANG] = ACTIONS(4785), [anon_sym_LPAREN] = ACTIONS(4785), [anon_sym_RPAREN] = ACTIONS(4785), [anon_sym_LBRACK] = ACTIONS(4785), [anon_sym_SEMI] = ACTIONS(4785), [anon_sym_DOLLAR] = ACTIONS(4785), [anon_sym_STAR] = ACTIONS(4785), [anon_sym_TILDE] = ACTIONS(4785), [sym_bool] = ACTIONS(4782), [sym_byte] = ACTIONS(4782), [sym_ubyte] = ACTIONS(4782), [sym_char] = ACTIONS(4782), [sym_short] = ACTIONS(4782), [sym_ushort] = ACTIONS(4782), [sym_int] = ACTIONS(4782), [sym_uint] = ACTIONS(4782), [sym_long] = ACTIONS(4782), [sym_ulong] = ACTIONS(4782), [sym_cent] = ACTIONS(4782), [sym_ucent] = ACTIONS(4782), [sym_wchar] = ACTIONS(4782), [sym_dchar] = ACTIONS(4782), [sym_float] = ACTIONS(4782), [sym_double] = ACTIONS(4782), [sym_real] = ACTIONS(4782), [sym_ifloat] = ACTIONS(4782), [sym_idouble] = ACTIONS(4782), [sym_ireal] = ACTIONS(4782), [sym_cfloat] = ACTIONS(4782), [sym_cdouble] = ACTIONS(4782), [sym_creal] = ACTIONS(4782), [sym_size_t] = ACTIONS(4782), [sym_ptrdiff_t] = ACTIONS(4782), [sym_string] = ACTIONS(4782), [sym_cstring] = ACTIONS(4782), [sym_dstring] = ACTIONS(4782), [sym_wstring] = ACTIONS(4782), [sym_noreturn] = ACTIONS(4782), [sym_true] = ACTIONS(4782), [sym_false] = ACTIONS(4782), [sym_null] = ACTIONS(4782), [sym_super] = ACTIONS(4782), [sym_this] = ACTIONS(4782), [sym_assert] = ACTIONS(4782), [sym_auto] = ACTIONS(4782), [sym_cast] = ACTIONS(4782), [sym_catch] = ACTIONS(4782), [sym_const] = ACTIONS(4782), [sym_delegate] = ACTIONS(4782), [sym_delete] = ACTIONS(4782), [sym_do] = ACTIONS(4782), [sym_else] = ACTIONS(4782), [sym_finally] = ACTIONS(4782), [sym_function] = ACTIONS(4782), [sym_immutable] = ACTIONS(4782), [sym_import] = ACTIONS(4782), [sym_in] = ACTIONS(4782), [sym_inout] = ACTIONS(4782), [sym_is] = ACTIONS(4782), [sym_mixin] = ACTIONS(4782), [sym_new] = ACTIONS(4782), [sym_out] = ACTIONS(4782), [sym_ref] = ACTIONS(4782), [sym_shared] = ACTIONS(4782), [sym_throw] = ACTIONS(4782), [sym_typeid] = ACTIONS(4782), [sym_typeof] = ACTIONS(4782), [sym_traits] = ACTIONS(4782), [sym_vector] = ACTIONS(4782), [sym_void] = ACTIONS(4782), [anon_sym_BQUOTE] = ACTIONS(4785), [anon_sym_r_DQUOTE] = ACTIONS(4785), [anon_sym_x_DQUOTE] = ACTIONS(4785), [anon_sym_DQUOTE] = ACTIONS(4785), [anon_sym_i_BQUOTE] = ACTIONS(4785), [anon_sym_i_DQUOTE] = ACTIONS(4785), [anon_sym_iq_LBRACE] = ACTIONS(4785), [aux_sym_char_literal_token1] = ACTIONS(4785), [anon_sym_SQUOTE] = ACTIONS(4782), [anon_sym___DATE__] = ACTIONS(4782), [anon_sym___FILE__] = ACTIONS(4782), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4782), [anon_sym___FUNCTION__] = ACTIONS(4782), [anon_sym___LINE__] = ACTIONS(4782), [anon_sym___MODULE__] = ACTIONS(4782), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4782), [anon_sym___TIME__] = ACTIONS(4782), [anon_sym___TIMESTAMP__] = ACTIONS(4782), [anon_sym___VENDOR__] = ACTIONS(4782), [anon_sym___VERSION__] = ACTIONS(4782), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4785), [sym_float_literal] = ACTIONS(4785), [sym__string] = ACTIONS(4785), }, [2182] = { [sym_identifier] = ACTIONS(4802), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4804), [anon_sym_LBRACE] = ACTIONS(4804), [anon_sym_DOT] = ACTIONS(4804), [anon_sym_AMP] = ACTIONS(4804), [anon_sym_DASH] = ACTIONS(4802), [anon_sym_DASH_DASH] = ACTIONS(4804), [anon_sym_PLUS] = ACTIONS(4802), [anon_sym_PLUS_PLUS] = ACTIONS(4804), [anon_sym_BANG] = ACTIONS(4804), [anon_sym_LPAREN] = ACTIONS(4804), [anon_sym_RPAREN] = ACTIONS(4804), [anon_sym_LBRACK] = ACTIONS(4804), [anon_sym_SEMI] = ACTIONS(4804), [anon_sym_DOLLAR] = ACTIONS(4804), [anon_sym_STAR] = ACTIONS(4804), [anon_sym_TILDE] = ACTIONS(4804), [sym_bool] = ACTIONS(4802), [sym_byte] = ACTIONS(4802), [sym_ubyte] = ACTIONS(4802), [sym_char] = ACTIONS(4802), [sym_short] = ACTIONS(4802), [sym_ushort] = ACTIONS(4802), [sym_int] = ACTIONS(4802), [sym_uint] = ACTIONS(4802), [sym_long] = ACTIONS(4802), [sym_ulong] = ACTIONS(4802), [sym_cent] = ACTIONS(4802), [sym_ucent] = ACTIONS(4802), [sym_wchar] = ACTIONS(4802), [sym_dchar] = ACTIONS(4802), [sym_float] = ACTIONS(4802), [sym_double] = ACTIONS(4802), [sym_real] = ACTIONS(4802), [sym_ifloat] = ACTIONS(4802), [sym_idouble] = ACTIONS(4802), [sym_ireal] = ACTIONS(4802), [sym_cfloat] = ACTIONS(4802), [sym_cdouble] = ACTIONS(4802), [sym_creal] = ACTIONS(4802), [sym_size_t] = ACTIONS(4802), [sym_ptrdiff_t] = ACTIONS(4802), [sym_string] = ACTIONS(4802), [sym_cstring] = ACTIONS(4802), [sym_dstring] = ACTIONS(4802), [sym_wstring] = ACTIONS(4802), [sym_noreturn] = ACTIONS(4802), [sym_true] = ACTIONS(4802), [sym_false] = ACTIONS(4802), [sym_null] = ACTIONS(4802), [sym_super] = ACTIONS(4802), [sym_this] = ACTIONS(4802), [sym_assert] = ACTIONS(4802), [sym_auto] = ACTIONS(4802), [sym_cast] = ACTIONS(4802), [sym_catch] = ACTIONS(4802), [sym_const] = ACTIONS(4802), [sym_delegate] = ACTIONS(4802), [sym_delete] = ACTIONS(4802), [sym_do] = ACTIONS(4802), [sym_else] = ACTIONS(4802), [sym_finally] = ACTIONS(4802), [sym_function] = ACTIONS(4802), [sym_immutable] = ACTIONS(4802), [sym_import] = ACTIONS(4802), [sym_in] = ACTIONS(4802), [sym_inout] = ACTIONS(4802), [sym_is] = ACTIONS(4802), [sym_mixin] = ACTIONS(4802), [sym_new] = ACTIONS(4802), [sym_out] = ACTIONS(4802), [sym_ref] = ACTIONS(4802), [sym_shared] = ACTIONS(4802), [sym_throw] = ACTIONS(4802), [sym_typeid] = ACTIONS(4802), [sym_typeof] = ACTIONS(4802), [sym_traits] = ACTIONS(4802), [sym_vector] = ACTIONS(4802), [sym_void] = ACTIONS(4802), [anon_sym_BQUOTE] = ACTIONS(4804), [anon_sym_r_DQUOTE] = ACTIONS(4804), [anon_sym_x_DQUOTE] = ACTIONS(4804), [anon_sym_DQUOTE] = ACTIONS(4804), [anon_sym_i_BQUOTE] = ACTIONS(4804), [anon_sym_i_DQUOTE] = ACTIONS(4804), [anon_sym_iq_LBRACE] = ACTIONS(4804), [aux_sym_char_literal_token1] = ACTIONS(4804), [anon_sym_SQUOTE] = ACTIONS(4802), [anon_sym___DATE__] = ACTIONS(4802), [anon_sym___FILE__] = ACTIONS(4802), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4802), [anon_sym___FUNCTION__] = ACTIONS(4802), [anon_sym___LINE__] = ACTIONS(4802), [anon_sym___MODULE__] = ACTIONS(4802), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4802), [anon_sym___TIME__] = ACTIONS(4802), [anon_sym___TIMESTAMP__] = ACTIONS(4802), [anon_sym___VENDOR__] = ACTIONS(4802), [anon_sym___VERSION__] = ACTIONS(4802), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4804), [sym_float_literal] = ACTIONS(4804), [sym__string] = ACTIONS(4804), }, [2183] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_catch] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(6565), [sym_finally] = ACTIONS(4359), [sym_function] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [2184] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_catch] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(6567), [sym_finally] = ACTIONS(4640), [sym_function] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [2185] = { [sym_identifier] = ACTIONS(4806), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4808), [anon_sym_LBRACE] = ACTIONS(4808), [anon_sym_DOT] = ACTIONS(4808), [anon_sym_AMP] = ACTIONS(4808), [anon_sym_DASH] = ACTIONS(4806), [anon_sym_DASH_DASH] = ACTIONS(4808), [anon_sym_PLUS] = ACTIONS(4806), [anon_sym_PLUS_PLUS] = ACTIONS(4808), [anon_sym_BANG] = ACTIONS(4808), [anon_sym_LPAREN] = ACTIONS(4808), [anon_sym_RPAREN] = ACTIONS(4808), [anon_sym_LBRACK] = ACTIONS(4808), [anon_sym_SEMI] = ACTIONS(4808), [anon_sym_DOLLAR] = ACTIONS(4808), [anon_sym_STAR] = ACTIONS(4808), [anon_sym_TILDE] = ACTIONS(4808), [sym_bool] = ACTIONS(4806), [sym_byte] = ACTIONS(4806), [sym_ubyte] = ACTIONS(4806), [sym_char] = ACTIONS(4806), [sym_short] = ACTIONS(4806), [sym_ushort] = ACTIONS(4806), [sym_int] = ACTIONS(4806), [sym_uint] = ACTIONS(4806), [sym_long] = ACTIONS(4806), [sym_ulong] = ACTIONS(4806), [sym_cent] = ACTIONS(4806), [sym_ucent] = ACTIONS(4806), [sym_wchar] = ACTIONS(4806), [sym_dchar] = ACTIONS(4806), [sym_float] = ACTIONS(4806), [sym_double] = ACTIONS(4806), [sym_real] = ACTIONS(4806), [sym_ifloat] = ACTIONS(4806), [sym_idouble] = ACTIONS(4806), [sym_ireal] = ACTIONS(4806), [sym_cfloat] = ACTIONS(4806), [sym_cdouble] = ACTIONS(4806), [sym_creal] = ACTIONS(4806), [sym_size_t] = ACTIONS(4806), [sym_ptrdiff_t] = ACTIONS(4806), [sym_string] = ACTIONS(4806), [sym_cstring] = ACTIONS(4806), [sym_dstring] = ACTIONS(4806), [sym_wstring] = ACTIONS(4806), [sym_noreturn] = ACTIONS(4806), [sym_true] = ACTIONS(4806), [sym_false] = ACTIONS(4806), [sym_null] = ACTIONS(4806), [sym_super] = ACTIONS(4806), [sym_this] = ACTIONS(4806), [sym_assert] = ACTIONS(4806), [sym_auto] = ACTIONS(4806), [sym_cast] = ACTIONS(4806), [sym_catch] = ACTIONS(4806), [sym_const] = ACTIONS(4806), [sym_delegate] = ACTIONS(4806), [sym_delete] = ACTIONS(4806), [sym_do] = ACTIONS(4806), [sym_else] = ACTIONS(4806), [sym_finally] = ACTIONS(4806), [sym_function] = ACTIONS(4806), [sym_immutable] = ACTIONS(4806), [sym_import] = ACTIONS(4806), [sym_in] = ACTIONS(4806), [sym_inout] = ACTIONS(4806), [sym_is] = ACTIONS(4806), [sym_mixin] = ACTIONS(4806), [sym_new] = ACTIONS(4806), [sym_out] = ACTIONS(4806), [sym_ref] = ACTIONS(4806), [sym_shared] = ACTIONS(4806), [sym_throw] = ACTIONS(4806), [sym_typeid] = ACTIONS(4806), [sym_typeof] = ACTIONS(4806), [sym_traits] = ACTIONS(4806), [sym_vector] = ACTIONS(4806), [sym_void] = ACTIONS(4806), [anon_sym_BQUOTE] = ACTIONS(4808), [anon_sym_r_DQUOTE] = ACTIONS(4808), [anon_sym_x_DQUOTE] = ACTIONS(4808), [anon_sym_DQUOTE] = ACTIONS(4808), [anon_sym_i_BQUOTE] = ACTIONS(4808), [anon_sym_i_DQUOTE] = ACTIONS(4808), [anon_sym_iq_LBRACE] = ACTIONS(4808), [aux_sym_char_literal_token1] = ACTIONS(4808), [anon_sym_SQUOTE] = ACTIONS(4806), [anon_sym___DATE__] = ACTIONS(4806), [anon_sym___FILE__] = ACTIONS(4806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4806), [anon_sym___FUNCTION__] = ACTIONS(4806), [anon_sym___LINE__] = ACTIONS(4806), [anon_sym___MODULE__] = ACTIONS(4806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4806), [anon_sym___TIME__] = ACTIONS(4806), [anon_sym___TIMESTAMP__] = ACTIONS(4806), [anon_sym___VENDOR__] = ACTIONS(4806), [anon_sym___VERSION__] = ACTIONS(4806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4808), [sym_float_literal] = ACTIONS(4808), [sym__string] = ACTIONS(4808), }, [2186] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_finally] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [2187] = { [sym_identifier] = ACTIONS(4810), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4812), [anon_sym_LBRACE] = ACTIONS(4812), [anon_sym_DOT] = ACTIONS(4812), [anon_sym_AMP] = ACTIONS(4812), [anon_sym_DASH] = ACTIONS(4810), [anon_sym_DASH_DASH] = ACTIONS(4812), [anon_sym_PLUS] = ACTIONS(4810), [anon_sym_PLUS_PLUS] = ACTIONS(4812), [anon_sym_BANG] = ACTIONS(4812), [anon_sym_LPAREN] = ACTIONS(4812), [anon_sym_RPAREN] = ACTIONS(4812), [anon_sym_LBRACK] = ACTIONS(4812), [anon_sym_SEMI] = ACTIONS(4812), [anon_sym_DOLLAR] = ACTIONS(4812), [anon_sym_STAR] = ACTIONS(4812), [anon_sym_TILDE] = ACTIONS(4812), [sym_bool] = ACTIONS(4810), [sym_byte] = ACTIONS(4810), [sym_ubyte] = ACTIONS(4810), [sym_char] = ACTIONS(4810), [sym_short] = ACTIONS(4810), [sym_ushort] = ACTIONS(4810), [sym_int] = ACTIONS(4810), [sym_uint] = ACTIONS(4810), [sym_long] = ACTIONS(4810), [sym_ulong] = ACTIONS(4810), [sym_cent] = ACTIONS(4810), [sym_ucent] = ACTIONS(4810), [sym_wchar] = ACTIONS(4810), [sym_dchar] = ACTIONS(4810), [sym_float] = ACTIONS(4810), [sym_double] = ACTIONS(4810), [sym_real] = ACTIONS(4810), [sym_ifloat] = ACTIONS(4810), [sym_idouble] = ACTIONS(4810), [sym_ireal] = ACTIONS(4810), [sym_cfloat] = ACTIONS(4810), [sym_cdouble] = ACTIONS(4810), [sym_creal] = ACTIONS(4810), [sym_size_t] = ACTIONS(4810), [sym_ptrdiff_t] = ACTIONS(4810), [sym_string] = ACTIONS(4810), [sym_cstring] = ACTIONS(4810), [sym_dstring] = ACTIONS(4810), [sym_wstring] = ACTIONS(4810), [sym_noreturn] = ACTIONS(4810), [sym_true] = ACTIONS(4810), [sym_false] = ACTIONS(4810), [sym_null] = ACTIONS(4810), [sym_super] = ACTIONS(4810), [sym_this] = ACTIONS(4810), [sym_assert] = ACTIONS(4810), [sym_auto] = ACTIONS(4810), [sym_cast] = ACTIONS(4810), [sym_catch] = ACTIONS(4810), [sym_const] = ACTIONS(4810), [sym_delegate] = ACTIONS(4810), [sym_delete] = ACTIONS(4810), [sym_do] = ACTIONS(4810), [sym_else] = ACTIONS(4810), [sym_finally] = ACTIONS(4810), [sym_function] = ACTIONS(4810), [sym_immutable] = ACTIONS(4810), [sym_import] = ACTIONS(4810), [sym_in] = ACTIONS(4810), [sym_inout] = ACTIONS(4810), [sym_is] = ACTIONS(4810), [sym_mixin] = ACTIONS(4810), [sym_new] = ACTIONS(4810), [sym_out] = ACTIONS(4810), [sym_ref] = ACTIONS(4810), [sym_shared] = ACTIONS(4810), [sym_throw] = ACTIONS(4810), [sym_typeid] = ACTIONS(4810), [sym_typeof] = ACTIONS(4810), [sym_traits] = ACTIONS(4810), [sym_vector] = ACTIONS(4810), [sym_void] = ACTIONS(4810), [anon_sym_BQUOTE] = ACTIONS(4812), [anon_sym_r_DQUOTE] = ACTIONS(4812), [anon_sym_x_DQUOTE] = ACTIONS(4812), [anon_sym_DQUOTE] = ACTIONS(4812), [anon_sym_i_BQUOTE] = ACTIONS(4812), [anon_sym_i_DQUOTE] = ACTIONS(4812), [anon_sym_iq_LBRACE] = ACTIONS(4812), [aux_sym_char_literal_token1] = ACTIONS(4812), [anon_sym_SQUOTE] = ACTIONS(4810), [anon_sym___DATE__] = ACTIONS(4810), [anon_sym___FILE__] = ACTIONS(4810), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4810), [anon_sym___FUNCTION__] = ACTIONS(4810), [anon_sym___LINE__] = ACTIONS(4810), [anon_sym___MODULE__] = ACTIONS(4810), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4810), [anon_sym___TIME__] = ACTIONS(4810), [anon_sym___TIMESTAMP__] = ACTIONS(4810), [anon_sym___VENDOR__] = ACTIONS(4810), [anon_sym___VERSION__] = ACTIONS(4810), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4812), [sym_float_literal] = ACTIONS(4812), [sym__string] = ACTIONS(4812), }, [2188] = { [sym_identifier] = ACTIONS(4848), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4850), [anon_sym_LBRACE] = ACTIONS(4850), [anon_sym_DOT] = ACTIONS(4850), [anon_sym_AMP] = ACTIONS(4850), [anon_sym_DASH] = ACTIONS(4848), [anon_sym_DASH_DASH] = ACTIONS(4850), [anon_sym_PLUS] = ACTIONS(4848), [anon_sym_PLUS_PLUS] = ACTIONS(4850), [anon_sym_BANG] = ACTIONS(4850), [anon_sym_LPAREN] = ACTIONS(4850), [anon_sym_RPAREN] = ACTIONS(4850), [anon_sym_LBRACK] = ACTIONS(4850), [anon_sym_SEMI] = ACTIONS(4850), [anon_sym_DOLLAR] = ACTIONS(4850), [anon_sym_STAR] = ACTIONS(4850), [anon_sym_TILDE] = ACTIONS(4850), [sym_bool] = ACTIONS(4848), [sym_byte] = ACTIONS(4848), [sym_ubyte] = ACTIONS(4848), [sym_char] = ACTIONS(4848), [sym_short] = ACTIONS(4848), [sym_ushort] = ACTIONS(4848), [sym_int] = ACTIONS(4848), [sym_uint] = ACTIONS(4848), [sym_long] = ACTIONS(4848), [sym_ulong] = ACTIONS(4848), [sym_cent] = ACTIONS(4848), [sym_ucent] = ACTIONS(4848), [sym_wchar] = ACTIONS(4848), [sym_dchar] = ACTIONS(4848), [sym_float] = ACTIONS(4848), [sym_double] = ACTIONS(4848), [sym_real] = ACTIONS(4848), [sym_ifloat] = ACTIONS(4848), [sym_idouble] = ACTIONS(4848), [sym_ireal] = ACTIONS(4848), [sym_cfloat] = ACTIONS(4848), [sym_cdouble] = ACTIONS(4848), [sym_creal] = ACTIONS(4848), [sym_size_t] = ACTIONS(4848), [sym_ptrdiff_t] = ACTIONS(4848), [sym_string] = ACTIONS(4848), [sym_cstring] = ACTIONS(4848), [sym_dstring] = ACTIONS(4848), [sym_wstring] = ACTIONS(4848), [sym_noreturn] = ACTIONS(4848), [sym_true] = ACTIONS(4848), [sym_false] = ACTIONS(4848), [sym_null] = ACTIONS(4848), [sym_super] = ACTIONS(4848), [sym_this] = ACTIONS(4848), [sym_assert] = ACTIONS(4848), [sym_auto] = ACTIONS(4848), [sym_cast] = ACTIONS(4848), [sym_catch] = ACTIONS(4848), [sym_const] = ACTIONS(4848), [sym_delegate] = ACTIONS(4848), [sym_delete] = ACTIONS(4848), [sym_do] = ACTIONS(4848), [sym_else] = ACTIONS(4848), [sym_finally] = ACTIONS(4848), [sym_function] = ACTIONS(4848), [sym_immutable] = ACTIONS(4848), [sym_import] = ACTIONS(4848), [sym_in] = ACTIONS(4848), [sym_inout] = ACTIONS(4848), [sym_is] = ACTIONS(4848), [sym_mixin] = ACTIONS(4848), [sym_new] = ACTIONS(4848), [sym_out] = ACTIONS(4848), [sym_ref] = ACTIONS(4848), [sym_shared] = ACTIONS(4848), [sym_throw] = ACTIONS(4848), [sym_typeid] = ACTIONS(4848), [sym_typeof] = ACTIONS(4848), [sym_traits] = ACTIONS(4848), [sym_vector] = ACTIONS(4848), [sym_void] = ACTIONS(4848), [anon_sym_BQUOTE] = ACTIONS(4850), [anon_sym_r_DQUOTE] = ACTIONS(4850), [anon_sym_x_DQUOTE] = ACTIONS(4850), [anon_sym_DQUOTE] = ACTIONS(4850), [anon_sym_i_BQUOTE] = ACTIONS(4850), [anon_sym_i_DQUOTE] = ACTIONS(4850), [anon_sym_iq_LBRACE] = ACTIONS(4850), [aux_sym_char_literal_token1] = ACTIONS(4850), [anon_sym_SQUOTE] = ACTIONS(4848), [anon_sym___DATE__] = ACTIONS(4848), [anon_sym___FILE__] = ACTIONS(4848), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4848), [anon_sym___FUNCTION__] = ACTIONS(4848), [anon_sym___LINE__] = ACTIONS(4848), [anon_sym___MODULE__] = ACTIONS(4848), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4848), [anon_sym___TIME__] = ACTIONS(4848), [anon_sym___TIMESTAMP__] = ACTIONS(4848), [anon_sym___VENDOR__] = ACTIONS(4848), [anon_sym___VERSION__] = ACTIONS(4848), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4850), [sym_float_literal] = ACTIONS(4850), [sym__string] = ACTIONS(4850), }, [2189] = { [sym_identifier] = ACTIONS(4374), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4376), [anon_sym_LBRACE] = ACTIONS(4376), [anon_sym_DOT] = ACTIONS(4376), [anon_sym_AMP] = ACTIONS(4376), [anon_sym_DASH] = ACTIONS(4374), [anon_sym_DASH_DASH] = ACTIONS(4376), [anon_sym_PLUS] = ACTIONS(4374), [anon_sym_PLUS_PLUS] = ACTIONS(4376), [anon_sym_BANG] = ACTIONS(4376), [anon_sym_LPAREN] = ACTIONS(4376), [anon_sym_RPAREN] = ACTIONS(4376), [anon_sym_LBRACK] = ACTIONS(4376), [anon_sym_SEMI] = ACTIONS(4376), [anon_sym_DOLLAR] = ACTIONS(4376), [anon_sym_STAR] = ACTIONS(4376), [anon_sym_TILDE] = ACTIONS(4376), [sym_bool] = ACTIONS(4374), [sym_byte] = ACTIONS(4374), [sym_ubyte] = ACTIONS(4374), [sym_char] = ACTIONS(4374), [sym_short] = ACTIONS(4374), [sym_ushort] = ACTIONS(4374), [sym_int] = ACTIONS(4374), [sym_uint] = ACTIONS(4374), [sym_long] = ACTIONS(4374), [sym_ulong] = ACTIONS(4374), [sym_cent] = ACTIONS(4374), [sym_ucent] = ACTIONS(4374), [sym_wchar] = ACTIONS(4374), [sym_dchar] = ACTIONS(4374), [sym_float] = ACTIONS(4374), [sym_double] = ACTIONS(4374), [sym_real] = ACTIONS(4374), [sym_ifloat] = ACTIONS(4374), [sym_idouble] = ACTIONS(4374), [sym_ireal] = ACTIONS(4374), [sym_cfloat] = ACTIONS(4374), [sym_cdouble] = ACTIONS(4374), [sym_creal] = ACTIONS(4374), [sym_size_t] = ACTIONS(4374), [sym_ptrdiff_t] = ACTIONS(4374), [sym_string] = ACTIONS(4374), [sym_cstring] = ACTIONS(4374), [sym_dstring] = ACTIONS(4374), [sym_wstring] = ACTIONS(4374), [sym_noreturn] = ACTIONS(4374), [sym_true] = ACTIONS(4374), [sym_false] = ACTIONS(4374), [sym_null] = ACTIONS(4374), [sym_super] = ACTIONS(4374), [sym_this] = ACTIONS(4374), [sym_assert] = ACTIONS(4374), [sym_auto] = ACTIONS(4374), [sym_cast] = ACTIONS(4374), [sym_catch] = ACTIONS(4374), [sym_const] = ACTIONS(4374), [sym_delegate] = ACTIONS(4374), [sym_delete] = ACTIONS(4374), [sym_do] = ACTIONS(4374), [sym_else] = ACTIONS(4374), [sym_finally] = ACTIONS(4374), [sym_function] = ACTIONS(4374), [sym_immutable] = ACTIONS(4374), [sym_import] = ACTIONS(4374), [sym_in] = ACTIONS(4374), [sym_inout] = ACTIONS(4374), [sym_is] = ACTIONS(4374), [sym_mixin] = ACTIONS(4374), [sym_new] = ACTIONS(4374), [sym_out] = ACTIONS(4374), [sym_ref] = ACTIONS(4374), [sym_shared] = ACTIONS(4374), [sym_throw] = ACTIONS(4374), [sym_typeid] = ACTIONS(4374), [sym_typeof] = ACTIONS(4374), [sym_traits] = ACTIONS(4374), [sym_vector] = ACTIONS(4374), [sym_void] = ACTIONS(4374), [anon_sym_BQUOTE] = ACTIONS(4376), [anon_sym_r_DQUOTE] = ACTIONS(4376), [anon_sym_x_DQUOTE] = ACTIONS(4376), [anon_sym_DQUOTE] = ACTIONS(4376), [anon_sym_i_BQUOTE] = ACTIONS(4376), [anon_sym_i_DQUOTE] = ACTIONS(4376), [anon_sym_iq_LBRACE] = ACTIONS(4376), [aux_sym_char_literal_token1] = ACTIONS(4376), [anon_sym_SQUOTE] = ACTIONS(4374), [anon_sym___DATE__] = ACTIONS(4374), [anon_sym___FILE__] = ACTIONS(4374), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4374), [anon_sym___FUNCTION__] = ACTIONS(4374), [anon_sym___LINE__] = ACTIONS(4374), [anon_sym___MODULE__] = ACTIONS(4374), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4374), [anon_sym___TIME__] = ACTIONS(4374), [anon_sym___TIMESTAMP__] = ACTIONS(4374), [anon_sym___VENDOR__] = ACTIONS(4374), [anon_sym___VERSION__] = ACTIONS(4374), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4376), [sym_float_literal] = ACTIONS(4376), [sym__string] = ACTIONS(4376), }, [2190] = { [sym_identifier] = ACTIONS(4378), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4380), [anon_sym_LBRACE] = ACTIONS(4380), [anon_sym_DOT] = ACTIONS(4380), [anon_sym_AMP] = ACTIONS(4380), [anon_sym_DASH] = ACTIONS(4378), [anon_sym_DASH_DASH] = ACTIONS(4380), [anon_sym_PLUS] = ACTIONS(4378), [anon_sym_PLUS_PLUS] = ACTIONS(4380), [anon_sym_BANG] = ACTIONS(4380), [anon_sym_LPAREN] = ACTIONS(4380), [anon_sym_RPAREN] = ACTIONS(4380), [anon_sym_LBRACK] = ACTIONS(4380), [anon_sym_SEMI] = ACTIONS(4380), [anon_sym_DOLLAR] = ACTIONS(4380), [anon_sym_STAR] = ACTIONS(4380), [anon_sym_TILDE] = ACTIONS(4380), [sym_bool] = ACTIONS(4378), [sym_byte] = ACTIONS(4378), [sym_ubyte] = ACTIONS(4378), [sym_char] = ACTIONS(4378), [sym_short] = ACTIONS(4378), [sym_ushort] = ACTIONS(4378), [sym_int] = ACTIONS(4378), [sym_uint] = ACTIONS(4378), [sym_long] = ACTIONS(4378), [sym_ulong] = ACTIONS(4378), [sym_cent] = ACTIONS(4378), [sym_ucent] = ACTIONS(4378), [sym_wchar] = ACTIONS(4378), [sym_dchar] = ACTIONS(4378), [sym_float] = ACTIONS(4378), [sym_double] = ACTIONS(4378), [sym_real] = ACTIONS(4378), [sym_ifloat] = ACTIONS(4378), [sym_idouble] = ACTIONS(4378), [sym_ireal] = ACTIONS(4378), [sym_cfloat] = ACTIONS(4378), [sym_cdouble] = ACTIONS(4378), [sym_creal] = ACTIONS(4378), [sym_size_t] = ACTIONS(4378), [sym_ptrdiff_t] = ACTIONS(4378), [sym_string] = ACTIONS(4378), [sym_cstring] = ACTIONS(4378), [sym_dstring] = ACTIONS(4378), [sym_wstring] = ACTIONS(4378), [sym_noreturn] = ACTIONS(4378), [sym_true] = ACTIONS(4378), [sym_false] = ACTIONS(4378), [sym_null] = ACTIONS(4378), [sym_super] = ACTIONS(4378), [sym_this] = ACTIONS(4378), [sym_assert] = ACTIONS(4378), [sym_auto] = ACTIONS(4378), [sym_cast] = ACTIONS(4378), [sym_catch] = ACTIONS(4378), [sym_const] = ACTIONS(4378), [sym_delegate] = ACTIONS(4378), [sym_delete] = ACTIONS(4378), [sym_do] = ACTIONS(4378), [sym_else] = ACTIONS(4378), [sym_finally] = ACTIONS(4378), [sym_function] = ACTIONS(4378), [sym_immutable] = ACTIONS(4378), [sym_import] = ACTIONS(4378), [sym_in] = ACTIONS(4378), [sym_inout] = ACTIONS(4378), [sym_is] = ACTIONS(4378), [sym_mixin] = ACTIONS(4378), [sym_new] = ACTIONS(4378), [sym_out] = ACTIONS(4378), [sym_ref] = ACTIONS(4378), [sym_shared] = ACTIONS(4378), [sym_throw] = ACTIONS(4378), [sym_typeid] = ACTIONS(4378), [sym_typeof] = ACTIONS(4378), [sym_traits] = ACTIONS(4378), [sym_vector] = ACTIONS(4378), [sym_void] = ACTIONS(4378), [anon_sym_BQUOTE] = ACTIONS(4380), [anon_sym_r_DQUOTE] = ACTIONS(4380), [anon_sym_x_DQUOTE] = ACTIONS(4380), [anon_sym_DQUOTE] = ACTIONS(4380), [anon_sym_i_BQUOTE] = ACTIONS(4380), [anon_sym_i_DQUOTE] = ACTIONS(4380), [anon_sym_iq_LBRACE] = ACTIONS(4380), [aux_sym_char_literal_token1] = ACTIONS(4380), [anon_sym_SQUOTE] = ACTIONS(4378), [anon_sym___DATE__] = ACTIONS(4378), [anon_sym___FILE__] = ACTIONS(4378), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4378), [anon_sym___FUNCTION__] = ACTIONS(4378), [anon_sym___LINE__] = ACTIONS(4378), [anon_sym___MODULE__] = ACTIONS(4378), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4378), [anon_sym___TIME__] = ACTIONS(4378), [anon_sym___TIMESTAMP__] = ACTIONS(4378), [anon_sym___VENDOR__] = ACTIONS(4378), [anon_sym___VERSION__] = ACTIONS(4378), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4380), [sym_float_literal] = ACTIONS(4380), [sym__string] = ACTIONS(4380), }, [2191] = { [sym_identifier] = ACTIONS(4382), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4384), [anon_sym_LBRACE] = ACTIONS(4384), [anon_sym_DOT] = ACTIONS(4384), [anon_sym_AMP] = ACTIONS(4384), [anon_sym_DASH] = ACTIONS(4382), [anon_sym_DASH_DASH] = ACTIONS(4384), [anon_sym_PLUS] = ACTIONS(4382), [anon_sym_PLUS_PLUS] = ACTIONS(4384), [anon_sym_BANG] = ACTIONS(4384), [anon_sym_LPAREN] = ACTIONS(4384), [anon_sym_RPAREN] = ACTIONS(4384), [anon_sym_LBRACK] = ACTIONS(4384), [anon_sym_SEMI] = ACTIONS(4384), [anon_sym_DOLLAR] = ACTIONS(4384), [anon_sym_STAR] = ACTIONS(4384), [anon_sym_TILDE] = ACTIONS(4384), [sym_bool] = ACTIONS(4382), [sym_byte] = ACTIONS(4382), [sym_ubyte] = ACTIONS(4382), [sym_char] = ACTIONS(4382), [sym_short] = ACTIONS(4382), [sym_ushort] = ACTIONS(4382), [sym_int] = ACTIONS(4382), [sym_uint] = ACTIONS(4382), [sym_long] = ACTIONS(4382), [sym_ulong] = ACTIONS(4382), [sym_cent] = ACTIONS(4382), [sym_ucent] = ACTIONS(4382), [sym_wchar] = ACTIONS(4382), [sym_dchar] = ACTIONS(4382), [sym_float] = ACTIONS(4382), [sym_double] = ACTIONS(4382), [sym_real] = ACTIONS(4382), [sym_ifloat] = ACTIONS(4382), [sym_idouble] = ACTIONS(4382), [sym_ireal] = ACTIONS(4382), [sym_cfloat] = ACTIONS(4382), [sym_cdouble] = ACTIONS(4382), [sym_creal] = ACTIONS(4382), [sym_size_t] = ACTIONS(4382), [sym_ptrdiff_t] = ACTIONS(4382), [sym_string] = ACTIONS(4382), [sym_cstring] = ACTIONS(4382), [sym_dstring] = ACTIONS(4382), [sym_wstring] = ACTIONS(4382), [sym_noreturn] = ACTIONS(4382), [sym_true] = ACTIONS(4382), [sym_false] = ACTIONS(4382), [sym_null] = ACTIONS(4382), [sym_super] = ACTIONS(4382), [sym_this] = ACTIONS(4382), [sym_assert] = ACTIONS(4382), [sym_auto] = ACTIONS(4382), [sym_cast] = ACTIONS(4382), [sym_catch] = ACTIONS(4382), [sym_const] = ACTIONS(4382), [sym_delegate] = ACTIONS(4382), [sym_delete] = ACTIONS(4382), [sym_do] = ACTIONS(4382), [sym_else] = ACTIONS(4382), [sym_finally] = ACTIONS(4382), [sym_function] = ACTIONS(4382), [sym_immutable] = ACTIONS(4382), [sym_import] = ACTIONS(4382), [sym_in] = ACTIONS(4382), [sym_inout] = ACTIONS(4382), [sym_is] = ACTIONS(4382), [sym_mixin] = ACTIONS(4382), [sym_new] = ACTIONS(4382), [sym_out] = ACTIONS(4382), [sym_ref] = ACTIONS(4382), [sym_shared] = ACTIONS(4382), [sym_throw] = ACTIONS(4382), [sym_typeid] = ACTIONS(4382), [sym_typeof] = ACTIONS(4382), [sym_traits] = ACTIONS(4382), [sym_vector] = ACTIONS(4382), [sym_void] = ACTIONS(4382), [anon_sym_BQUOTE] = ACTIONS(4384), [anon_sym_r_DQUOTE] = ACTIONS(4384), [anon_sym_x_DQUOTE] = ACTIONS(4384), [anon_sym_DQUOTE] = ACTIONS(4384), [anon_sym_i_BQUOTE] = ACTIONS(4384), [anon_sym_i_DQUOTE] = ACTIONS(4384), [anon_sym_iq_LBRACE] = ACTIONS(4384), [aux_sym_char_literal_token1] = ACTIONS(4384), [anon_sym_SQUOTE] = ACTIONS(4382), [anon_sym___DATE__] = ACTIONS(4382), [anon_sym___FILE__] = ACTIONS(4382), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4382), [anon_sym___FUNCTION__] = ACTIONS(4382), [anon_sym___LINE__] = ACTIONS(4382), [anon_sym___MODULE__] = ACTIONS(4382), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4382), [anon_sym___TIME__] = ACTIONS(4382), [anon_sym___TIMESTAMP__] = ACTIONS(4382), [anon_sym___VENDOR__] = ACTIONS(4382), [anon_sym___VERSION__] = ACTIONS(4382), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4384), [sym_float_literal] = ACTIONS(4384), [sym__string] = ACTIONS(4384), }, [2192] = { [sym_identifier] = ACTIONS(4390), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4394), [anon_sym_LBRACE] = ACTIONS(4394), [anon_sym_DOT] = ACTIONS(4394), [anon_sym_AMP] = ACTIONS(4394), [anon_sym_DASH] = ACTIONS(4390), [anon_sym_DASH_DASH] = ACTIONS(4394), [anon_sym_PLUS] = ACTIONS(4390), [anon_sym_PLUS_PLUS] = ACTIONS(4394), [anon_sym_BANG] = ACTIONS(4394), [anon_sym_LPAREN] = ACTIONS(4394), [anon_sym_RPAREN] = ACTIONS(4394), [anon_sym_LBRACK] = ACTIONS(4394), [anon_sym_SEMI] = ACTIONS(4394), [anon_sym_DOLLAR] = ACTIONS(4394), [anon_sym_STAR] = ACTIONS(4394), [anon_sym_TILDE] = ACTIONS(4394), [sym_bool] = ACTIONS(4390), [sym_byte] = ACTIONS(4390), [sym_ubyte] = ACTIONS(4390), [sym_char] = ACTIONS(4390), [sym_short] = ACTIONS(4390), [sym_ushort] = ACTIONS(4390), [sym_int] = ACTIONS(4390), [sym_uint] = ACTIONS(4390), [sym_long] = ACTIONS(4390), [sym_ulong] = ACTIONS(4390), [sym_cent] = ACTIONS(4390), [sym_ucent] = ACTIONS(4390), [sym_wchar] = ACTIONS(4390), [sym_dchar] = ACTIONS(4390), [sym_float] = ACTIONS(4390), [sym_double] = ACTIONS(4390), [sym_real] = ACTIONS(4390), [sym_ifloat] = ACTIONS(4390), [sym_idouble] = ACTIONS(4390), [sym_ireal] = ACTIONS(4390), [sym_cfloat] = ACTIONS(4390), [sym_cdouble] = ACTIONS(4390), [sym_creal] = ACTIONS(4390), [sym_size_t] = ACTIONS(4390), [sym_ptrdiff_t] = ACTIONS(4390), [sym_string] = ACTIONS(4390), [sym_cstring] = ACTIONS(4390), [sym_dstring] = ACTIONS(4390), [sym_wstring] = ACTIONS(4390), [sym_noreturn] = ACTIONS(4390), [sym_true] = ACTIONS(4390), [sym_false] = ACTIONS(4390), [sym_null] = ACTIONS(4390), [sym_super] = ACTIONS(4390), [sym_this] = ACTIONS(4390), [sym_assert] = ACTIONS(4390), [sym_auto] = ACTIONS(4390), [sym_cast] = ACTIONS(4390), [sym_catch] = ACTIONS(4390), [sym_const] = ACTIONS(4390), [sym_delegate] = ACTIONS(4390), [sym_delete] = ACTIONS(4390), [sym_do] = ACTIONS(4390), [sym_else] = ACTIONS(4390), [sym_finally] = ACTIONS(4390), [sym_function] = ACTIONS(4390), [sym_immutable] = ACTIONS(4390), [sym_import] = ACTIONS(4390), [sym_in] = ACTIONS(4390), [sym_inout] = ACTIONS(4390), [sym_is] = ACTIONS(4390), [sym_mixin] = ACTIONS(4390), [sym_new] = ACTIONS(4390), [sym_out] = ACTIONS(4390), [sym_ref] = ACTIONS(4390), [sym_shared] = ACTIONS(4390), [sym_throw] = ACTIONS(4390), [sym_typeid] = ACTIONS(4390), [sym_typeof] = ACTIONS(4390), [sym_traits] = ACTIONS(4390), [sym_vector] = ACTIONS(4390), [sym_void] = ACTIONS(4390), [anon_sym_BQUOTE] = ACTIONS(4394), [anon_sym_r_DQUOTE] = ACTIONS(4394), [anon_sym_x_DQUOTE] = ACTIONS(4394), [anon_sym_DQUOTE] = ACTIONS(4394), [anon_sym_i_BQUOTE] = ACTIONS(4394), [anon_sym_i_DQUOTE] = ACTIONS(4394), [anon_sym_iq_LBRACE] = ACTIONS(4394), [aux_sym_char_literal_token1] = ACTIONS(4394), [anon_sym_SQUOTE] = ACTIONS(4390), [anon_sym___DATE__] = ACTIONS(4390), [anon_sym___FILE__] = ACTIONS(4390), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4390), [anon_sym___FUNCTION__] = ACTIONS(4390), [anon_sym___LINE__] = ACTIONS(4390), [anon_sym___MODULE__] = ACTIONS(4390), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4390), [anon_sym___TIME__] = ACTIONS(4390), [anon_sym___TIMESTAMP__] = ACTIONS(4390), [anon_sym___VENDOR__] = ACTIONS(4390), [anon_sym___VERSION__] = ACTIONS(4390), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4394), [sym_float_literal] = ACTIONS(4394), [sym__string] = ACTIONS(4394), }, [2193] = { [sym_identifier] = ACTIONS(4410), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4412), [anon_sym_LBRACE] = ACTIONS(4412), [anon_sym_DOT] = ACTIONS(4412), [anon_sym_AMP] = ACTIONS(4412), [anon_sym_DASH] = ACTIONS(4410), [anon_sym_DASH_DASH] = ACTIONS(4412), [anon_sym_PLUS] = ACTIONS(4410), [anon_sym_PLUS_PLUS] = ACTIONS(4412), [anon_sym_BANG] = ACTIONS(4412), [anon_sym_LPAREN] = ACTIONS(4412), [anon_sym_RPAREN] = ACTIONS(4412), [anon_sym_LBRACK] = ACTIONS(4412), [anon_sym_SEMI] = ACTIONS(4412), [anon_sym_DOLLAR] = ACTIONS(4412), [anon_sym_STAR] = ACTIONS(4412), [anon_sym_TILDE] = ACTIONS(4412), [sym_bool] = ACTIONS(4410), [sym_byte] = ACTIONS(4410), [sym_ubyte] = ACTIONS(4410), [sym_char] = ACTIONS(4410), [sym_short] = ACTIONS(4410), [sym_ushort] = ACTIONS(4410), [sym_int] = ACTIONS(4410), [sym_uint] = ACTIONS(4410), [sym_long] = ACTIONS(4410), [sym_ulong] = ACTIONS(4410), [sym_cent] = ACTIONS(4410), [sym_ucent] = ACTIONS(4410), [sym_wchar] = ACTIONS(4410), [sym_dchar] = ACTIONS(4410), [sym_float] = ACTIONS(4410), [sym_double] = ACTIONS(4410), [sym_real] = ACTIONS(4410), [sym_ifloat] = ACTIONS(4410), [sym_idouble] = ACTIONS(4410), [sym_ireal] = ACTIONS(4410), [sym_cfloat] = ACTIONS(4410), [sym_cdouble] = ACTIONS(4410), [sym_creal] = ACTIONS(4410), [sym_size_t] = ACTIONS(4410), [sym_ptrdiff_t] = ACTIONS(4410), [sym_string] = ACTIONS(4410), [sym_cstring] = ACTIONS(4410), [sym_dstring] = ACTIONS(4410), [sym_wstring] = ACTIONS(4410), [sym_noreturn] = ACTIONS(4410), [sym_true] = ACTIONS(4410), [sym_false] = ACTIONS(4410), [sym_null] = ACTIONS(4410), [sym_super] = ACTIONS(4410), [sym_this] = ACTIONS(4410), [sym_assert] = ACTIONS(4410), [sym_auto] = ACTIONS(4410), [sym_cast] = ACTIONS(4410), [sym_catch] = ACTIONS(4410), [sym_const] = ACTIONS(4410), [sym_delegate] = ACTIONS(4410), [sym_delete] = ACTIONS(4410), [sym_do] = ACTIONS(4410), [sym_else] = ACTIONS(4410), [sym_finally] = ACTIONS(4410), [sym_function] = ACTIONS(4410), [sym_immutable] = ACTIONS(4410), [sym_import] = ACTIONS(4410), [sym_in] = ACTIONS(4410), [sym_inout] = ACTIONS(4410), [sym_is] = ACTIONS(4410), [sym_mixin] = ACTIONS(4410), [sym_new] = ACTIONS(4410), [sym_out] = ACTIONS(4410), [sym_ref] = ACTIONS(4410), [sym_shared] = ACTIONS(4410), [sym_throw] = ACTIONS(4410), [sym_typeid] = ACTIONS(4410), [sym_typeof] = ACTIONS(4410), [sym_traits] = ACTIONS(4410), [sym_vector] = ACTIONS(4410), [sym_void] = ACTIONS(4410), [anon_sym_BQUOTE] = ACTIONS(4412), [anon_sym_r_DQUOTE] = ACTIONS(4412), [anon_sym_x_DQUOTE] = ACTIONS(4412), [anon_sym_DQUOTE] = ACTIONS(4412), [anon_sym_i_BQUOTE] = ACTIONS(4412), [anon_sym_i_DQUOTE] = ACTIONS(4412), [anon_sym_iq_LBRACE] = ACTIONS(4412), [aux_sym_char_literal_token1] = ACTIONS(4412), [anon_sym_SQUOTE] = ACTIONS(4410), [anon_sym___DATE__] = ACTIONS(4410), [anon_sym___FILE__] = ACTIONS(4410), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4410), [anon_sym___FUNCTION__] = ACTIONS(4410), [anon_sym___LINE__] = ACTIONS(4410), [anon_sym___MODULE__] = ACTIONS(4410), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4410), [anon_sym___TIME__] = ACTIONS(4410), [anon_sym___TIMESTAMP__] = ACTIONS(4410), [anon_sym___VENDOR__] = ACTIONS(4410), [anon_sym___VERSION__] = ACTIONS(4410), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4412), [sym_float_literal] = ACTIONS(4412), [sym__string] = ACTIONS(4412), }, [2194] = { [sym_identifier] = ACTIONS(4422), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4424), [anon_sym_LBRACE] = ACTIONS(4424), [anon_sym_DOT] = ACTIONS(4424), [anon_sym_AMP] = ACTIONS(4424), [anon_sym_DASH] = ACTIONS(4422), [anon_sym_DASH_DASH] = ACTIONS(4424), [anon_sym_PLUS] = ACTIONS(4422), [anon_sym_PLUS_PLUS] = ACTIONS(4424), [anon_sym_BANG] = ACTIONS(4424), [anon_sym_LPAREN] = ACTIONS(4424), [anon_sym_RPAREN] = ACTIONS(4424), [anon_sym_LBRACK] = ACTIONS(4424), [anon_sym_SEMI] = ACTIONS(4424), [anon_sym_DOLLAR] = ACTIONS(4424), [anon_sym_STAR] = ACTIONS(4424), [anon_sym_TILDE] = ACTIONS(4424), [sym_bool] = ACTIONS(4422), [sym_byte] = ACTIONS(4422), [sym_ubyte] = ACTIONS(4422), [sym_char] = ACTIONS(4422), [sym_short] = ACTIONS(4422), [sym_ushort] = ACTIONS(4422), [sym_int] = ACTIONS(4422), [sym_uint] = ACTIONS(4422), [sym_long] = ACTIONS(4422), [sym_ulong] = ACTIONS(4422), [sym_cent] = ACTIONS(4422), [sym_ucent] = ACTIONS(4422), [sym_wchar] = ACTIONS(4422), [sym_dchar] = ACTIONS(4422), [sym_float] = ACTIONS(4422), [sym_double] = ACTIONS(4422), [sym_real] = ACTIONS(4422), [sym_ifloat] = ACTIONS(4422), [sym_idouble] = ACTIONS(4422), [sym_ireal] = ACTIONS(4422), [sym_cfloat] = ACTIONS(4422), [sym_cdouble] = ACTIONS(4422), [sym_creal] = ACTIONS(4422), [sym_size_t] = ACTIONS(4422), [sym_ptrdiff_t] = ACTIONS(4422), [sym_string] = ACTIONS(4422), [sym_cstring] = ACTIONS(4422), [sym_dstring] = ACTIONS(4422), [sym_wstring] = ACTIONS(4422), [sym_noreturn] = ACTIONS(4422), [sym_true] = ACTIONS(4422), [sym_false] = ACTIONS(4422), [sym_null] = ACTIONS(4422), [sym_super] = ACTIONS(4422), [sym_this] = ACTIONS(4422), [sym_assert] = ACTIONS(4422), [sym_auto] = ACTIONS(4422), [sym_cast] = ACTIONS(4422), [sym_catch] = ACTIONS(4422), [sym_const] = ACTIONS(4422), [sym_delegate] = ACTIONS(4422), [sym_delete] = ACTIONS(4422), [sym_do] = ACTIONS(4422), [sym_else] = ACTIONS(4422), [sym_finally] = ACTIONS(4422), [sym_function] = ACTIONS(4422), [sym_immutable] = ACTIONS(4422), [sym_import] = ACTIONS(4422), [sym_in] = ACTIONS(4422), [sym_inout] = ACTIONS(4422), [sym_is] = ACTIONS(4422), [sym_mixin] = ACTIONS(4422), [sym_new] = ACTIONS(4422), [sym_out] = ACTIONS(4422), [sym_ref] = ACTIONS(4422), [sym_shared] = ACTIONS(4422), [sym_throw] = ACTIONS(4422), [sym_typeid] = ACTIONS(4422), [sym_typeof] = ACTIONS(4422), [sym_traits] = ACTIONS(4422), [sym_vector] = ACTIONS(4422), [sym_void] = ACTIONS(4422), [anon_sym_BQUOTE] = ACTIONS(4424), [anon_sym_r_DQUOTE] = ACTIONS(4424), [anon_sym_x_DQUOTE] = ACTIONS(4424), [anon_sym_DQUOTE] = ACTIONS(4424), [anon_sym_i_BQUOTE] = ACTIONS(4424), [anon_sym_i_DQUOTE] = ACTIONS(4424), [anon_sym_iq_LBRACE] = ACTIONS(4424), [aux_sym_char_literal_token1] = ACTIONS(4424), [anon_sym_SQUOTE] = ACTIONS(4422), [anon_sym___DATE__] = ACTIONS(4422), [anon_sym___FILE__] = ACTIONS(4422), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4422), [anon_sym___FUNCTION__] = ACTIONS(4422), [anon_sym___LINE__] = ACTIONS(4422), [anon_sym___MODULE__] = ACTIONS(4422), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4422), [anon_sym___TIME__] = ACTIONS(4422), [anon_sym___TIMESTAMP__] = ACTIONS(4422), [anon_sym___VENDOR__] = ACTIONS(4422), [anon_sym___VERSION__] = ACTIONS(4422), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4424), [sym_float_literal] = ACTIONS(4424), [sym__string] = ACTIONS(4424), }, [2195] = { [sym_identifier] = ACTIONS(4426), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4428), [anon_sym_LBRACE] = ACTIONS(4428), [anon_sym_DOT] = ACTIONS(4428), [anon_sym_AMP] = ACTIONS(4428), [anon_sym_DASH] = ACTIONS(4426), [anon_sym_DASH_DASH] = ACTIONS(4428), [anon_sym_PLUS] = ACTIONS(4426), [anon_sym_PLUS_PLUS] = ACTIONS(4428), [anon_sym_BANG] = ACTIONS(4428), [anon_sym_LPAREN] = ACTIONS(4428), [anon_sym_RPAREN] = ACTIONS(4428), [anon_sym_LBRACK] = ACTIONS(4428), [anon_sym_SEMI] = ACTIONS(4428), [anon_sym_DOLLAR] = ACTIONS(4428), [anon_sym_STAR] = ACTIONS(4428), [anon_sym_TILDE] = ACTIONS(4428), [sym_bool] = ACTIONS(4426), [sym_byte] = ACTIONS(4426), [sym_ubyte] = ACTIONS(4426), [sym_char] = ACTIONS(4426), [sym_short] = ACTIONS(4426), [sym_ushort] = ACTIONS(4426), [sym_int] = ACTIONS(4426), [sym_uint] = ACTIONS(4426), [sym_long] = ACTIONS(4426), [sym_ulong] = ACTIONS(4426), [sym_cent] = ACTIONS(4426), [sym_ucent] = ACTIONS(4426), [sym_wchar] = ACTIONS(4426), [sym_dchar] = ACTIONS(4426), [sym_float] = ACTIONS(4426), [sym_double] = ACTIONS(4426), [sym_real] = ACTIONS(4426), [sym_ifloat] = ACTIONS(4426), [sym_idouble] = ACTIONS(4426), [sym_ireal] = ACTIONS(4426), [sym_cfloat] = ACTIONS(4426), [sym_cdouble] = ACTIONS(4426), [sym_creal] = ACTIONS(4426), [sym_size_t] = ACTIONS(4426), [sym_ptrdiff_t] = ACTIONS(4426), [sym_string] = ACTIONS(4426), [sym_cstring] = ACTIONS(4426), [sym_dstring] = ACTIONS(4426), [sym_wstring] = ACTIONS(4426), [sym_noreturn] = ACTIONS(4426), [sym_true] = ACTIONS(4426), [sym_false] = ACTIONS(4426), [sym_null] = ACTIONS(4426), [sym_super] = ACTIONS(4426), [sym_this] = ACTIONS(4426), [sym_assert] = ACTIONS(4426), [sym_auto] = ACTIONS(4426), [sym_cast] = ACTIONS(4426), [sym_catch] = ACTIONS(4426), [sym_const] = ACTIONS(4426), [sym_delegate] = ACTIONS(4426), [sym_delete] = ACTIONS(4426), [sym_do] = ACTIONS(4426), [sym_else] = ACTIONS(4426), [sym_finally] = ACTIONS(4426), [sym_function] = ACTIONS(4426), [sym_immutable] = ACTIONS(4426), [sym_import] = ACTIONS(4426), [sym_in] = ACTIONS(4426), [sym_inout] = ACTIONS(4426), [sym_is] = ACTIONS(4426), [sym_mixin] = ACTIONS(4426), [sym_new] = ACTIONS(4426), [sym_out] = ACTIONS(4426), [sym_ref] = ACTIONS(4426), [sym_shared] = ACTIONS(4426), [sym_throw] = ACTIONS(4426), [sym_typeid] = ACTIONS(4426), [sym_typeof] = ACTIONS(4426), [sym_traits] = ACTIONS(4426), [sym_vector] = ACTIONS(4426), [sym_void] = ACTIONS(4426), [anon_sym_BQUOTE] = ACTIONS(4428), [anon_sym_r_DQUOTE] = ACTIONS(4428), [anon_sym_x_DQUOTE] = ACTIONS(4428), [anon_sym_DQUOTE] = ACTIONS(4428), [anon_sym_i_BQUOTE] = ACTIONS(4428), [anon_sym_i_DQUOTE] = ACTIONS(4428), [anon_sym_iq_LBRACE] = ACTIONS(4428), [aux_sym_char_literal_token1] = ACTIONS(4428), [anon_sym_SQUOTE] = ACTIONS(4426), [anon_sym___DATE__] = ACTIONS(4426), [anon_sym___FILE__] = ACTIONS(4426), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4426), [anon_sym___FUNCTION__] = ACTIONS(4426), [anon_sym___LINE__] = ACTIONS(4426), [anon_sym___MODULE__] = ACTIONS(4426), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4426), [anon_sym___TIME__] = ACTIONS(4426), [anon_sym___TIMESTAMP__] = ACTIONS(4426), [anon_sym___VENDOR__] = ACTIONS(4426), [anon_sym___VERSION__] = ACTIONS(4426), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4428), [sym_float_literal] = ACTIONS(4428), [sym__string] = ACTIONS(4428), }, [2196] = { [sym_identifier] = ACTIONS(4430), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4432), [anon_sym_LBRACE] = ACTIONS(4432), [anon_sym_DOT] = ACTIONS(4432), [anon_sym_AMP] = ACTIONS(4432), [anon_sym_DASH] = ACTIONS(4430), [anon_sym_DASH_DASH] = ACTIONS(4432), [anon_sym_PLUS] = ACTIONS(4430), [anon_sym_PLUS_PLUS] = ACTIONS(4432), [anon_sym_BANG] = ACTIONS(4432), [anon_sym_LPAREN] = ACTIONS(4432), [anon_sym_RPAREN] = ACTIONS(4432), [anon_sym_LBRACK] = ACTIONS(4432), [anon_sym_SEMI] = ACTIONS(4432), [anon_sym_DOLLAR] = ACTIONS(4432), [anon_sym_STAR] = ACTIONS(4432), [anon_sym_TILDE] = ACTIONS(4432), [sym_bool] = ACTIONS(4430), [sym_byte] = ACTIONS(4430), [sym_ubyte] = ACTIONS(4430), [sym_char] = ACTIONS(4430), [sym_short] = ACTIONS(4430), [sym_ushort] = ACTIONS(4430), [sym_int] = ACTIONS(4430), [sym_uint] = ACTIONS(4430), [sym_long] = ACTIONS(4430), [sym_ulong] = ACTIONS(4430), [sym_cent] = ACTIONS(4430), [sym_ucent] = ACTIONS(4430), [sym_wchar] = ACTIONS(4430), [sym_dchar] = ACTIONS(4430), [sym_float] = ACTIONS(4430), [sym_double] = ACTIONS(4430), [sym_real] = ACTIONS(4430), [sym_ifloat] = ACTIONS(4430), [sym_idouble] = ACTIONS(4430), [sym_ireal] = ACTIONS(4430), [sym_cfloat] = ACTIONS(4430), [sym_cdouble] = ACTIONS(4430), [sym_creal] = ACTIONS(4430), [sym_size_t] = ACTIONS(4430), [sym_ptrdiff_t] = ACTIONS(4430), [sym_string] = ACTIONS(4430), [sym_cstring] = ACTIONS(4430), [sym_dstring] = ACTIONS(4430), [sym_wstring] = ACTIONS(4430), [sym_noreturn] = ACTIONS(4430), [sym_true] = ACTIONS(4430), [sym_false] = ACTIONS(4430), [sym_null] = ACTIONS(4430), [sym_super] = ACTIONS(4430), [sym_this] = ACTIONS(4430), [sym_assert] = ACTIONS(4430), [sym_auto] = ACTIONS(4430), [sym_cast] = ACTIONS(4430), [sym_catch] = ACTIONS(4430), [sym_const] = ACTIONS(4430), [sym_delegate] = ACTIONS(4430), [sym_delete] = ACTIONS(4430), [sym_do] = ACTIONS(4430), [sym_else] = ACTIONS(4430), [sym_finally] = ACTIONS(4430), [sym_function] = ACTIONS(4430), [sym_immutable] = ACTIONS(4430), [sym_import] = ACTIONS(4430), [sym_in] = ACTIONS(4430), [sym_inout] = ACTIONS(4430), [sym_is] = ACTIONS(4430), [sym_mixin] = ACTIONS(4430), [sym_new] = ACTIONS(4430), [sym_out] = ACTIONS(4430), [sym_ref] = ACTIONS(4430), [sym_shared] = ACTIONS(4430), [sym_throw] = ACTIONS(4430), [sym_typeid] = ACTIONS(4430), [sym_typeof] = ACTIONS(4430), [sym_traits] = ACTIONS(4430), [sym_vector] = ACTIONS(4430), [sym_void] = ACTIONS(4430), [anon_sym_BQUOTE] = ACTIONS(4432), [anon_sym_r_DQUOTE] = ACTIONS(4432), [anon_sym_x_DQUOTE] = ACTIONS(4432), [anon_sym_DQUOTE] = ACTIONS(4432), [anon_sym_i_BQUOTE] = ACTIONS(4432), [anon_sym_i_DQUOTE] = ACTIONS(4432), [anon_sym_iq_LBRACE] = ACTIONS(4432), [aux_sym_char_literal_token1] = ACTIONS(4432), [anon_sym_SQUOTE] = ACTIONS(4430), [anon_sym___DATE__] = ACTIONS(4430), [anon_sym___FILE__] = ACTIONS(4430), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4430), [anon_sym___FUNCTION__] = ACTIONS(4430), [anon_sym___LINE__] = ACTIONS(4430), [anon_sym___MODULE__] = ACTIONS(4430), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4430), [anon_sym___TIME__] = ACTIONS(4430), [anon_sym___TIMESTAMP__] = ACTIONS(4430), [anon_sym___VENDOR__] = ACTIONS(4430), [anon_sym___VERSION__] = ACTIONS(4430), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4432), [sym_float_literal] = ACTIONS(4432), [sym__string] = ACTIONS(4432), }, [2197] = { [sym_identifier] = ACTIONS(4438), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4440), [anon_sym_LBRACE] = ACTIONS(4440), [anon_sym_DOT] = ACTIONS(4440), [anon_sym_AMP] = ACTIONS(4440), [anon_sym_DASH] = ACTIONS(4438), [anon_sym_DASH_DASH] = ACTIONS(4440), [anon_sym_PLUS] = ACTIONS(4438), [anon_sym_PLUS_PLUS] = ACTIONS(4440), [anon_sym_BANG] = ACTIONS(4440), [anon_sym_LPAREN] = ACTIONS(4440), [anon_sym_RPAREN] = ACTIONS(4440), [anon_sym_LBRACK] = ACTIONS(4440), [anon_sym_SEMI] = ACTIONS(4440), [anon_sym_DOLLAR] = ACTIONS(4440), [anon_sym_STAR] = ACTIONS(4440), [anon_sym_TILDE] = ACTIONS(4440), [sym_bool] = ACTIONS(4438), [sym_byte] = ACTIONS(4438), [sym_ubyte] = ACTIONS(4438), [sym_char] = ACTIONS(4438), [sym_short] = ACTIONS(4438), [sym_ushort] = ACTIONS(4438), [sym_int] = ACTIONS(4438), [sym_uint] = ACTIONS(4438), [sym_long] = ACTIONS(4438), [sym_ulong] = ACTIONS(4438), [sym_cent] = ACTIONS(4438), [sym_ucent] = ACTIONS(4438), [sym_wchar] = ACTIONS(4438), [sym_dchar] = ACTIONS(4438), [sym_float] = ACTIONS(4438), [sym_double] = ACTIONS(4438), [sym_real] = ACTIONS(4438), [sym_ifloat] = ACTIONS(4438), [sym_idouble] = ACTIONS(4438), [sym_ireal] = ACTIONS(4438), [sym_cfloat] = ACTIONS(4438), [sym_cdouble] = ACTIONS(4438), [sym_creal] = ACTIONS(4438), [sym_size_t] = ACTIONS(4438), [sym_ptrdiff_t] = ACTIONS(4438), [sym_string] = ACTIONS(4438), [sym_cstring] = ACTIONS(4438), [sym_dstring] = ACTIONS(4438), [sym_wstring] = ACTIONS(4438), [sym_noreturn] = ACTIONS(4438), [sym_true] = ACTIONS(4438), [sym_false] = ACTIONS(4438), [sym_null] = ACTIONS(4438), [sym_super] = ACTIONS(4438), [sym_this] = ACTIONS(4438), [sym_assert] = ACTIONS(4438), [sym_auto] = ACTIONS(4438), [sym_cast] = ACTIONS(4438), [sym_catch] = ACTIONS(4438), [sym_const] = ACTIONS(4438), [sym_delegate] = ACTIONS(4438), [sym_delete] = ACTIONS(4438), [sym_do] = ACTIONS(4438), [sym_else] = ACTIONS(4438), [sym_finally] = ACTIONS(4438), [sym_function] = ACTIONS(4438), [sym_immutable] = ACTIONS(4438), [sym_import] = ACTIONS(4438), [sym_in] = ACTIONS(4438), [sym_inout] = ACTIONS(4438), [sym_is] = ACTIONS(4438), [sym_mixin] = ACTIONS(4438), [sym_new] = ACTIONS(4438), [sym_out] = ACTIONS(4438), [sym_ref] = ACTIONS(4438), [sym_shared] = ACTIONS(4438), [sym_throw] = ACTIONS(4438), [sym_typeid] = ACTIONS(4438), [sym_typeof] = ACTIONS(4438), [sym_traits] = ACTIONS(4438), [sym_vector] = ACTIONS(4438), [sym_void] = ACTIONS(4438), [anon_sym_BQUOTE] = ACTIONS(4440), [anon_sym_r_DQUOTE] = ACTIONS(4440), [anon_sym_x_DQUOTE] = ACTIONS(4440), [anon_sym_DQUOTE] = ACTIONS(4440), [anon_sym_i_BQUOTE] = ACTIONS(4440), [anon_sym_i_DQUOTE] = ACTIONS(4440), [anon_sym_iq_LBRACE] = ACTIONS(4440), [aux_sym_char_literal_token1] = ACTIONS(4440), [anon_sym_SQUOTE] = ACTIONS(4438), [anon_sym___DATE__] = ACTIONS(4438), [anon_sym___FILE__] = ACTIONS(4438), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4438), [anon_sym___FUNCTION__] = ACTIONS(4438), [anon_sym___LINE__] = ACTIONS(4438), [anon_sym___MODULE__] = ACTIONS(4438), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4438), [anon_sym___TIME__] = ACTIONS(4438), [anon_sym___TIMESTAMP__] = ACTIONS(4438), [anon_sym___VENDOR__] = ACTIONS(4438), [anon_sym___VERSION__] = ACTIONS(4438), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4440), [sym_float_literal] = ACTIONS(4440), [sym__string] = ACTIONS(4440), }, [2198] = { [sym_identifier] = ACTIONS(4442), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4444), [anon_sym_LBRACE] = ACTIONS(4444), [anon_sym_DOT] = ACTIONS(4444), [anon_sym_AMP] = ACTIONS(4444), [anon_sym_DASH] = ACTIONS(4442), [anon_sym_DASH_DASH] = ACTIONS(4444), [anon_sym_PLUS] = ACTIONS(4442), [anon_sym_PLUS_PLUS] = ACTIONS(4444), [anon_sym_BANG] = ACTIONS(4444), [anon_sym_LPAREN] = ACTIONS(4444), [anon_sym_RPAREN] = ACTIONS(4444), [anon_sym_LBRACK] = ACTIONS(4444), [anon_sym_SEMI] = ACTIONS(4444), [anon_sym_DOLLAR] = ACTIONS(4444), [anon_sym_STAR] = ACTIONS(4444), [anon_sym_TILDE] = ACTIONS(4444), [sym_bool] = ACTIONS(4442), [sym_byte] = ACTIONS(4442), [sym_ubyte] = ACTIONS(4442), [sym_char] = ACTIONS(4442), [sym_short] = ACTIONS(4442), [sym_ushort] = ACTIONS(4442), [sym_int] = ACTIONS(4442), [sym_uint] = ACTIONS(4442), [sym_long] = ACTIONS(4442), [sym_ulong] = ACTIONS(4442), [sym_cent] = ACTIONS(4442), [sym_ucent] = ACTIONS(4442), [sym_wchar] = ACTIONS(4442), [sym_dchar] = ACTIONS(4442), [sym_float] = ACTIONS(4442), [sym_double] = ACTIONS(4442), [sym_real] = ACTIONS(4442), [sym_ifloat] = ACTIONS(4442), [sym_idouble] = ACTIONS(4442), [sym_ireal] = ACTIONS(4442), [sym_cfloat] = ACTIONS(4442), [sym_cdouble] = ACTIONS(4442), [sym_creal] = ACTIONS(4442), [sym_size_t] = ACTIONS(4442), [sym_ptrdiff_t] = ACTIONS(4442), [sym_string] = ACTIONS(4442), [sym_cstring] = ACTIONS(4442), [sym_dstring] = ACTIONS(4442), [sym_wstring] = ACTIONS(4442), [sym_noreturn] = ACTIONS(4442), [sym_true] = ACTIONS(4442), [sym_false] = ACTIONS(4442), [sym_null] = ACTIONS(4442), [sym_super] = ACTIONS(4442), [sym_this] = ACTIONS(4442), [sym_assert] = ACTIONS(4442), [sym_auto] = ACTIONS(4442), [sym_cast] = ACTIONS(4442), [sym_catch] = ACTIONS(4442), [sym_const] = ACTIONS(4442), [sym_delegate] = ACTIONS(4442), [sym_delete] = ACTIONS(4442), [sym_do] = ACTIONS(4442), [sym_else] = ACTIONS(4442), [sym_finally] = ACTIONS(4442), [sym_function] = ACTIONS(4442), [sym_immutable] = ACTIONS(4442), [sym_import] = ACTIONS(4442), [sym_in] = ACTIONS(4442), [sym_inout] = ACTIONS(4442), [sym_is] = ACTIONS(4442), [sym_mixin] = ACTIONS(4442), [sym_new] = ACTIONS(4442), [sym_out] = ACTIONS(4442), [sym_ref] = ACTIONS(4442), [sym_shared] = ACTIONS(4442), [sym_throw] = ACTIONS(4442), [sym_typeid] = ACTIONS(4442), [sym_typeof] = ACTIONS(4442), [sym_traits] = ACTIONS(4442), [sym_vector] = ACTIONS(4442), [sym_void] = ACTIONS(4442), [anon_sym_BQUOTE] = ACTIONS(4444), [anon_sym_r_DQUOTE] = ACTIONS(4444), [anon_sym_x_DQUOTE] = ACTIONS(4444), [anon_sym_DQUOTE] = ACTIONS(4444), [anon_sym_i_BQUOTE] = ACTIONS(4444), [anon_sym_i_DQUOTE] = ACTIONS(4444), [anon_sym_iq_LBRACE] = ACTIONS(4444), [aux_sym_char_literal_token1] = ACTIONS(4444), [anon_sym_SQUOTE] = ACTIONS(4442), [anon_sym___DATE__] = ACTIONS(4442), [anon_sym___FILE__] = ACTIONS(4442), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4442), [anon_sym___FUNCTION__] = ACTIONS(4442), [anon_sym___LINE__] = ACTIONS(4442), [anon_sym___MODULE__] = ACTIONS(4442), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4442), [anon_sym___TIME__] = ACTIONS(4442), [anon_sym___TIMESTAMP__] = ACTIONS(4442), [anon_sym___VENDOR__] = ACTIONS(4442), [anon_sym___VERSION__] = ACTIONS(4442), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4444), [sym_float_literal] = ACTIONS(4444), [sym__string] = ACTIONS(4444), }, [2199] = { [sym_identifier] = ACTIONS(4452), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4454), [anon_sym_LBRACE] = ACTIONS(4454), [anon_sym_DOT] = ACTIONS(4454), [anon_sym_AMP] = ACTIONS(4454), [anon_sym_DASH] = ACTIONS(4452), [anon_sym_DASH_DASH] = ACTIONS(4454), [anon_sym_PLUS] = ACTIONS(4452), [anon_sym_PLUS_PLUS] = ACTIONS(4454), [anon_sym_BANG] = ACTIONS(4454), [anon_sym_LPAREN] = ACTIONS(4454), [anon_sym_RPAREN] = ACTIONS(4454), [anon_sym_LBRACK] = ACTIONS(4454), [anon_sym_SEMI] = ACTIONS(4454), [anon_sym_DOLLAR] = ACTIONS(4454), [anon_sym_STAR] = ACTIONS(4454), [anon_sym_TILDE] = ACTIONS(4454), [sym_bool] = ACTIONS(4452), [sym_byte] = ACTIONS(4452), [sym_ubyte] = ACTIONS(4452), [sym_char] = ACTIONS(4452), [sym_short] = ACTIONS(4452), [sym_ushort] = ACTIONS(4452), [sym_int] = ACTIONS(4452), [sym_uint] = ACTIONS(4452), [sym_long] = ACTIONS(4452), [sym_ulong] = ACTIONS(4452), [sym_cent] = ACTIONS(4452), [sym_ucent] = ACTIONS(4452), [sym_wchar] = ACTIONS(4452), [sym_dchar] = ACTIONS(4452), [sym_float] = ACTIONS(4452), [sym_double] = ACTIONS(4452), [sym_real] = ACTIONS(4452), [sym_ifloat] = ACTIONS(4452), [sym_idouble] = ACTIONS(4452), [sym_ireal] = ACTIONS(4452), [sym_cfloat] = ACTIONS(4452), [sym_cdouble] = ACTIONS(4452), [sym_creal] = ACTIONS(4452), [sym_size_t] = ACTIONS(4452), [sym_ptrdiff_t] = ACTIONS(4452), [sym_string] = ACTIONS(4452), [sym_cstring] = ACTIONS(4452), [sym_dstring] = ACTIONS(4452), [sym_wstring] = ACTIONS(4452), [sym_noreturn] = ACTIONS(4452), [sym_true] = ACTIONS(4452), [sym_false] = ACTIONS(4452), [sym_null] = ACTIONS(4452), [sym_super] = ACTIONS(4452), [sym_this] = ACTIONS(4452), [sym_assert] = ACTIONS(4452), [sym_auto] = ACTIONS(4452), [sym_cast] = ACTIONS(4452), [sym_catch] = ACTIONS(4452), [sym_const] = ACTIONS(4452), [sym_delegate] = ACTIONS(4452), [sym_delete] = ACTIONS(4452), [sym_do] = ACTIONS(4452), [sym_else] = ACTIONS(4452), [sym_finally] = ACTIONS(4452), [sym_function] = ACTIONS(4452), [sym_immutable] = ACTIONS(4452), [sym_import] = ACTIONS(4452), [sym_in] = ACTIONS(4452), [sym_inout] = ACTIONS(4452), [sym_is] = ACTIONS(4452), [sym_mixin] = ACTIONS(4452), [sym_new] = ACTIONS(4452), [sym_out] = ACTIONS(4452), [sym_ref] = ACTIONS(4452), [sym_shared] = ACTIONS(4452), [sym_throw] = ACTIONS(4452), [sym_typeid] = ACTIONS(4452), [sym_typeof] = ACTIONS(4452), [sym_traits] = ACTIONS(4452), [sym_vector] = ACTIONS(4452), [sym_void] = ACTIONS(4452), [anon_sym_BQUOTE] = ACTIONS(4454), [anon_sym_r_DQUOTE] = ACTIONS(4454), [anon_sym_x_DQUOTE] = ACTIONS(4454), [anon_sym_DQUOTE] = ACTIONS(4454), [anon_sym_i_BQUOTE] = ACTIONS(4454), [anon_sym_i_DQUOTE] = ACTIONS(4454), [anon_sym_iq_LBRACE] = ACTIONS(4454), [aux_sym_char_literal_token1] = ACTIONS(4454), [anon_sym_SQUOTE] = ACTIONS(4452), [anon_sym___DATE__] = ACTIONS(4452), [anon_sym___FILE__] = ACTIONS(4452), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4452), [anon_sym___FUNCTION__] = ACTIONS(4452), [anon_sym___LINE__] = ACTIONS(4452), [anon_sym___MODULE__] = ACTIONS(4452), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4452), [anon_sym___TIME__] = ACTIONS(4452), [anon_sym___TIMESTAMP__] = ACTIONS(4452), [anon_sym___VENDOR__] = ACTIONS(4452), [anon_sym___VERSION__] = ACTIONS(4452), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4454), [sym_float_literal] = ACTIONS(4454), [sym__string] = ACTIONS(4454), }, [2200] = { [sym_identifier] = ACTIONS(4708), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4710), [anon_sym_LBRACE] = ACTIONS(4710), [anon_sym_DOT] = ACTIONS(4710), [anon_sym_AMP] = ACTIONS(4710), [anon_sym_DASH] = ACTIONS(4708), [anon_sym_DASH_DASH] = ACTIONS(4710), [anon_sym_PLUS] = ACTIONS(4708), [anon_sym_PLUS_PLUS] = ACTIONS(4710), [anon_sym_BANG] = ACTIONS(4710), [anon_sym_LPAREN] = ACTIONS(4710), [anon_sym_RPAREN] = ACTIONS(4710), [anon_sym_LBRACK] = ACTIONS(4710), [anon_sym_SEMI] = ACTIONS(4710), [anon_sym_DOLLAR] = ACTIONS(4710), [anon_sym_STAR] = ACTIONS(4710), [anon_sym_TILDE] = ACTIONS(4710), [sym_bool] = ACTIONS(4708), [sym_byte] = ACTIONS(4708), [sym_ubyte] = ACTIONS(4708), [sym_char] = ACTIONS(4708), [sym_short] = ACTIONS(4708), [sym_ushort] = ACTIONS(4708), [sym_int] = ACTIONS(4708), [sym_uint] = ACTIONS(4708), [sym_long] = ACTIONS(4708), [sym_ulong] = ACTIONS(4708), [sym_cent] = ACTIONS(4708), [sym_ucent] = ACTIONS(4708), [sym_wchar] = ACTIONS(4708), [sym_dchar] = ACTIONS(4708), [sym_float] = ACTIONS(4708), [sym_double] = ACTIONS(4708), [sym_real] = ACTIONS(4708), [sym_ifloat] = ACTIONS(4708), [sym_idouble] = ACTIONS(4708), [sym_ireal] = ACTIONS(4708), [sym_cfloat] = ACTIONS(4708), [sym_cdouble] = ACTIONS(4708), [sym_creal] = ACTIONS(4708), [sym_size_t] = ACTIONS(4708), [sym_ptrdiff_t] = ACTIONS(4708), [sym_string] = ACTIONS(4708), [sym_cstring] = ACTIONS(4708), [sym_dstring] = ACTIONS(4708), [sym_wstring] = ACTIONS(4708), [sym_noreturn] = ACTIONS(4708), [sym_true] = ACTIONS(4708), [sym_false] = ACTIONS(4708), [sym_null] = ACTIONS(4708), [sym_super] = ACTIONS(4708), [sym_this] = ACTIONS(4708), [sym_assert] = ACTIONS(4708), [sym_auto] = ACTIONS(4708), [sym_cast] = ACTIONS(4708), [sym_catch] = ACTIONS(4708), [sym_const] = ACTIONS(4708), [sym_delegate] = ACTIONS(4708), [sym_delete] = ACTIONS(4708), [sym_do] = ACTIONS(4708), [sym_else] = ACTIONS(4708), [sym_finally] = ACTIONS(4708), [sym_function] = ACTIONS(4708), [sym_immutable] = ACTIONS(4708), [sym_import] = ACTIONS(4708), [sym_in] = ACTIONS(4708), [sym_inout] = ACTIONS(4708), [sym_is] = ACTIONS(4708), [sym_mixin] = ACTIONS(4708), [sym_new] = ACTIONS(4708), [sym_out] = ACTIONS(4708), [sym_ref] = ACTIONS(4708), [sym_shared] = ACTIONS(4708), [sym_throw] = ACTIONS(4708), [sym_typeid] = ACTIONS(4708), [sym_typeof] = ACTIONS(4708), [sym_traits] = ACTIONS(4708), [sym_vector] = ACTIONS(4708), [sym_void] = ACTIONS(4708), [anon_sym_BQUOTE] = ACTIONS(4710), [anon_sym_r_DQUOTE] = ACTIONS(4710), [anon_sym_x_DQUOTE] = ACTIONS(4710), [anon_sym_DQUOTE] = ACTIONS(4710), [anon_sym_i_BQUOTE] = ACTIONS(4710), [anon_sym_i_DQUOTE] = ACTIONS(4710), [anon_sym_iq_LBRACE] = ACTIONS(4710), [aux_sym_char_literal_token1] = ACTIONS(4710), [anon_sym_SQUOTE] = ACTIONS(4708), [anon_sym___DATE__] = ACTIONS(4708), [anon_sym___FILE__] = ACTIONS(4708), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4708), [anon_sym___FUNCTION__] = ACTIONS(4708), [anon_sym___LINE__] = ACTIONS(4708), [anon_sym___MODULE__] = ACTIONS(4708), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4708), [anon_sym___TIME__] = ACTIONS(4708), [anon_sym___TIMESTAMP__] = ACTIONS(4708), [anon_sym___VENDOR__] = ACTIONS(4708), [anon_sym___VERSION__] = ACTIONS(4708), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4710), [sym_float_literal] = ACTIONS(4710), [sym__string] = ACTIONS(4710), }, [2201] = { [sym_identifier] = ACTIONS(4754), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4756), [anon_sym_LBRACE] = ACTIONS(4756), [anon_sym_DOT] = ACTIONS(4756), [anon_sym_AMP] = ACTIONS(4756), [anon_sym_DASH] = ACTIONS(4754), [anon_sym_DASH_DASH] = ACTIONS(4756), [anon_sym_PLUS] = ACTIONS(4754), [anon_sym_PLUS_PLUS] = ACTIONS(4756), [anon_sym_BANG] = ACTIONS(4756), [anon_sym_LPAREN] = ACTIONS(4756), [anon_sym_RPAREN] = ACTIONS(4756), [anon_sym_LBRACK] = ACTIONS(4756), [anon_sym_SEMI] = ACTIONS(4756), [anon_sym_DOLLAR] = ACTIONS(4756), [anon_sym_STAR] = ACTIONS(4756), [anon_sym_TILDE] = ACTIONS(4756), [sym_bool] = ACTIONS(4754), [sym_byte] = ACTIONS(4754), [sym_ubyte] = ACTIONS(4754), [sym_char] = ACTIONS(4754), [sym_short] = ACTIONS(4754), [sym_ushort] = ACTIONS(4754), [sym_int] = ACTIONS(4754), [sym_uint] = ACTIONS(4754), [sym_long] = ACTIONS(4754), [sym_ulong] = ACTIONS(4754), [sym_cent] = ACTIONS(4754), [sym_ucent] = ACTIONS(4754), [sym_wchar] = ACTIONS(4754), [sym_dchar] = ACTIONS(4754), [sym_float] = ACTIONS(4754), [sym_double] = ACTIONS(4754), [sym_real] = ACTIONS(4754), [sym_ifloat] = ACTIONS(4754), [sym_idouble] = ACTIONS(4754), [sym_ireal] = ACTIONS(4754), [sym_cfloat] = ACTIONS(4754), [sym_cdouble] = ACTIONS(4754), [sym_creal] = ACTIONS(4754), [sym_size_t] = ACTIONS(4754), [sym_ptrdiff_t] = ACTIONS(4754), [sym_string] = ACTIONS(4754), [sym_cstring] = ACTIONS(4754), [sym_dstring] = ACTIONS(4754), [sym_wstring] = ACTIONS(4754), [sym_noreturn] = ACTIONS(4754), [sym_true] = ACTIONS(4754), [sym_false] = ACTIONS(4754), [sym_null] = ACTIONS(4754), [sym_super] = ACTIONS(4754), [sym_this] = ACTIONS(4754), [sym_assert] = ACTIONS(4754), [sym_auto] = ACTIONS(4754), [sym_cast] = ACTIONS(4754), [sym_catch] = ACTIONS(4754), [sym_const] = ACTIONS(4754), [sym_delegate] = ACTIONS(4754), [sym_delete] = ACTIONS(4754), [sym_do] = ACTIONS(4754), [sym_else] = ACTIONS(4754), [sym_finally] = ACTIONS(4754), [sym_function] = ACTIONS(4754), [sym_immutable] = ACTIONS(4754), [sym_import] = ACTIONS(4754), [sym_in] = ACTIONS(4754), [sym_inout] = ACTIONS(4754), [sym_is] = ACTIONS(4754), [sym_mixin] = ACTIONS(4754), [sym_new] = ACTIONS(4754), [sym_out] = ACTIONS(4754), [sym_ref] = ACTIONS(4754), [sym_shared] = ACTIONS(4754), [sym_throw] = ACTIONS(4754), [sym_typeid] = ACTIONS(4754), [sym_typeof] = ACTIONS(4754), [sym_traits] = ACTIONS(4754), [sym_vector] = ACTIONS(4754), [sym_void] = ACTIONS(4754), [anon_sym_BQUOTE] = ACTIONS(4756), [anon_sym_r_DQUOTE] = ACTIONS(4756), [anon_sym_x_DQUOTE] = ACTIONS(4756), [anon_sym_DQUOTE] = ACTIONS(4756), [anon_sym_i_BQUOTE] = ACTIONS(4756), [anon_sym_i_DQUOTE] = ACTIONS(4756), [anon_sym_iq_LBRACE] = ACTIONS(4756), [aux_sym_char_literal_token1] = ACTIONS(4756), [anon_sym_SQUOTE] = ACTIONS(4754), [anon_sym___DATE__] = ACTIONS(4754), [anon_sym___FILE__] = ACTIONS(4754), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4754), [anon_sym___FUNCTION__] = ACTIONS(4754), [anon_sym___LINE__] = ACTIONS(4754), [anon_sym___MODULE__] = ACTIONS(4754), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4754), [anon_sym___TIME__] = ACTIONS(4754), [anon_sym___TIMESTAMP__] = ACTIONS(4754), [anon_sym___VENDOR__] = ACTIONS(4754), [anon_sym___VERSION__] = ACTIONS(4754), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4756), [sym_float_literal] = ACTIONS(4756), [sym__string] = ACTIONS(4756), }, [2202] = { [sym_identifier] = ACTIONS(4694), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4696), [anon_sym_LBRACE] = ACTIONS(4696), [anon_sym_DOT] = ACTIONS(4696), [anon_sym_AMP] = ACTIONS(4696), [anon_sym_DASH] = ACTIONS(4694), [anon_sym_DASH_DASH] = ACTIONS(4696), [anon_sym_PLUS] = ACTIONS(4694), [anon_sym_PLUS_PLUS] = ACTIONS(4696), [anon_sym_BANG] = ACTIONS(4696), [anon_sym_LPAREN] = ACTIONS(4696), [anon_sym_RPAREN] = ACTIONS(4696), [anon_sym_LBRACK] = ACTIONS(4696), [anon_sym_SEMI] = ACTIONS(4696), [anon_sym_DOLLAR] = ACTIONS(4696), [anon_sym_STAR] = ACTIONS(4696), [anon_sym_TILDE] = ACTIONS(4696), [sym_bool] = ACTIONS(4694), [sym_byte] = ACTIONS(4694), [sym_ubyte] = ACTIONS(4694), [sym_char] = ACTIONS(4694), [sym_short] = ACTIONS(4694), [sym_ushort] = ACTIONS(4694), [sym_int] = ACTIONS(4694), [sym_uint] = ACTIONS(4694), [sym_long] = ACTIONS(4694), [sym_ulong] = ACTIONS(4694), [sym_cent] = ACTIONS(4694), [sym_ucent] = ACTIONS(4694), [sym_wchar] = ACTIONS(4694), [sym_dchar] = ACTIONS(4694), [sym_float] = ACTIONS(4694), [sym_double] = ACTIONS(4694), [sym_real] = ACTIONS(4694), [sym_ifloat] = ACTIONS(4694), [sym_idouble] = ACTIONS(4694), [sym_ireal] = ACTIONS(4694), [sym_cfloat] = ACTIONS(4694), [sym_cdouble] = ACTIONS(4694), [sym_creal] = ACTIONS(4694), [sym_size_t] = ACTIONS(4694), [sym_ptrdiff_t] = ACTIONS(4694), [sym_string] = ACTIONS(4694), [sym_cstring] = ACTIONS(4694), [sym_dstring] = ACTIONS(4694), [sym_wstring] = ACTIONS(4694), [sym_noreturn] = ACTIONS(4694), [sym_true] = ACTIONS(4694), [sym_false] = ACTIONS(4694), [sym_null] = ACTIONS(4694), [sym_super] = ACTIONS(4694), [sym_this] = ACTIONS(4694), [sym_assert] = ACTIONS(4694), [sym_auto] = ACTIONS(4694), [sym_cast] = ACTIONS(4694), [sym_catch] = ACTIONS(4694), [sym_const] = ACTIONS(4694), [sym_delegate] = ACTIONS(4694), [sym_delete] = ACTIONS(4694), [sym_do] = ACTIONS(4694), [sym_else] = ACTIONS(4694), [sym_finally] = ACTIONS(4694), [sym_function] = ACTIONS(4694), [sym_immutable] = ACTIONS(4694), [sym_import] = ACTIONS(4694), [sym_in] = ACTIONS(4694), [sym_inout] = ACTIONS(4694), [sym_is] = ACTIONS(4694), [sym_mixin] = ACTIONS(4694), [sym_new] = ACTIONS(4694), [sym_out] = ACTIONS(4694), [sym_ref] = ACTIONS(4694), [sym_shared] = ACTIONS(4694), [sym_throw] = ACTIONS(4694), [sym_typeid] = ACTIONS(4694), [sym_typeof] = ACTIONS(4694), [sym_traits] = ACTIONS(4694), [sym_vector] = ACTIONS(4694), [sym_void] = ACTIONS(4694), [anon_sym_BQUOTE] = ACTIONS(4696), [anon_sym_r_DQUOTE] = ACTIONS(4696), [anon_sym_x_DQUOTE] = ACTIONS(4696), [anon_sym_DQUOTE] = ACTIONS(4696), [anon_sym_i_BQUOTE] = ACTIONS(4696), [anon_sym_i_DQUOTE] = ACTIONS(4696), [anon_sym_iq_LBRACE] = ACTIONS(4696), [aux_sym_char_literal_token1] = ACTIONS(4696), [anon_sym_SQUOTE] = ACTIONS(4694), [anon_sym___DATE__] = ACTIONS(4694), [anon_sym___FILE__] = ACTIONS(4694), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4694), [anon_sym___FUNCTION__] = ACTIONS(4694), [anon_sym___LINE__] = ACTIONS(4694), [anon_sym___MODULE__] = ACTIONS(4694), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4694), [anon_sym___TIME__] = ACTIONS(4694), [anon_sym___TIMESTAMP__] = ACTIONS(4694), [anon_sym___VENDOR__] = ACTIONS(4694), [anon_sym___VERSION__] = ACTIONS(4694), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4696), [sym_float_literal] = ACTIONS(4696), [sym__string] = ACTIONS(4696), }, [2203] = { [sym_identifier] = ACTIONS(4534), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4536), [anon_sym_LBRACE] = ACTIONS(4536), [anon_sym_DOT] = ACTIONS(4536), [anon_sym_AMP] = ACTIONS(4536), [anon_sym_DASH] = ACTIONS(4534), [anon_sym_DASH_DASH] = ACTIONS(4536), [anon_sym_PLUS] = ACTIONS(4534), [anon_sym_PLUS_PLUS] = ACTIONS(4536), [anon_sym_BANG] = ACTIONS(4536), [anon_sym_LPAREN] = ACTIONS(4536), [anon_sym_RPAREN] = ACTIONS(4536), [anon_sym_LBRACK] = ACTIONS(4536), [anon_sym_SEMI] = ACTIONS(4536), [anon_sym_DOLLAR] = ACTIONS(4536), [anon_sym_STAR] = ACTIONS(4536), [anon_sym_TILDE] = ACTIONS(4536), [sym_bool] = ACTIONS(4534), [sym_byte] = ACTIONS(4534), [sym_ubyte] = ACTIONS(4534), [sym_char] = ACTIONS(4534), [sym_short] = ACTIONS(4534), [sym_ushort] = ACTIONS(4534), [sym_int] = ACTIONS(4534), [sym_uint] = ACTIONS(4534), [sym_long] = ACTIONS(4534), [sym_ulong] = ACTIONS(4534), [sym_cent] = ACTIONS(4534), [sym_ucent] = ACTIONS(4534), [sym_wchar] = ACTIONS(4534), [sym_dchar] = ACTIONS(4534), [sym_float] = ACTIONS(4534), [sym_double] = ACTIONS(4534), [sym_real] = ACTIONS(4534), [sym_ifloat] = ACTIONS(4534), [sym_idouble] = ACTIONS(4534), [sym_ireal] = ACTIONS(4534), [sym_cfloat] = ACTIONS(4534), [sym_cdouble] = ACTIONS(4534), [sym_creal] = ACTIONS(4534), [sym_size_t] = ACTIONS(4534), [sym_ptrdiff_t] = ACTIONS(4534), [sym_string] = ACTIONS(4534), [sym_cstring] = ACTIONS(4534), [sym_dstring] = ACTIONS(4534), [sym_wstring] = ACTIONS(4534), [sym_noreturn] = ACTIONS(4534), [sym_true] = ACTIONS(4534), [sym_false] = ACTIONS(4534), [sym_null] = ACTIONS(4534), [sym_super] = ACTIONS(4534), [sym_this] = ACTIONS(4534), [sym_assert] = ACTIONS(4534), [sym_auto] = ACTIONS(4534), [sym_cast] = ACTIONS(4534), [sym_catch] = ACTIONS(4534), [sym_const] = ACTIONS(4534), [sym_delegate] = ACTIONS(4534), [sym_delete] = ACTIONS(4534), [sym_do] = ACTIONS(4534), [sym_else] = ACTIONS(4534), [sym_finally] = ACTIONS(4534), [sym_function] = ACTIONS(4534), [sym_immutable] = ACTIONS(4534), [sym_import] = ACTIONS(4534), [sym_in] = ACTIONS(4534), [sym_inout] = ACTIONS(4534), [sym_is] = ACTIONS(4534), [sym_mixin] = ACTIONS(4534), [sym_new] = ACTIONS(4534), [sym_out] = ACTIONS(4534), [sym_ref] = ACTIONS(4534), [sym_shared] = ACTIONS(4534), [sym_throw] = ACTIONS(4534), [sym_typeid] = ACTIONS(4534), [sym_typeof] = ACTIONS(4534), [sym_traits] = ACTIONS(4534), [sym_vector] = ACTIONS(4534), [sym_void] = ACTIONS(4534), [anon_sym_BQUOTE] = ACTIONS(4536), [anon_sym_r_DQUOTE] = ACTIONS(4536), [anon_sym_x_DQUOTE] = ACTIONS(4536), [anon_sym_DQUOTE] = ACTIONS(4536), [anon_sym_i_BQUOTE] = ACTIONS(4536), [anon_sym_i_DQUOTE] = ACTIONS(4536), [anon_sym_iq_LBRACE] = ACTIONS(4536), [aux_sym_char_literal_token1] = ACTIONS(4536), [anon_sym_SQUOTE] = ACTIONS(4534), [anon_sym___DATE__] = ACTIONS(4534), [anon_sym___FILE__] = ACTIONS(4534), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4534), [anon_sym___FUNCTION__] = ACTIONS(4534), [anon_sym___LINE__] = ACTIONS(4534), [anon_sym___MODULE__] = ACTIONS(4534), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4534), [anon_sym___TIME__] = ACTIONS(4534), [anon_sym___TIMESTAMP__] = ACTIONS(4534), [anon_sym___VENDOR__] = ACTIONS(4534), [anon_sym___VERSION__] = ACTIONS(4534), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4536), [sym_float_literal] = ACTIONS(4536), [sym__string] = ACTIONS(4536), }, [2204] = { [sym_identifier] = ACTIONS(4828), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4830), [anon_sym_LBRACE] = ACTIONS(4830), [anon_sym_DOT] = ACTIONS(4830), [anon_sym_AMP] = ACTIONS(4830), [anon_sym_DASH] = ACTIONS(4828), [anon_sym_DASH_DASH] = ACTIONS(4830), [anon_sym_PLUS] = ACTIONS(4828), [anon_sym_PLUS_PLUS] = ACTIONS(4830), [anon_sym_BANG] = ACTIONS(4830), [anon_sym_LPAREN] = ACTIONS(4830), [anon_sym_RPAREN] = ACTIONS(4830), [anon_sym_LBRACK] = ACTIONS(4830), [anon_sym_SEMI] = ACTIONS(4830), [anon_sym_DOLLAR] = ACTIONS(4830), [anon_sym_STAR] = ACTIONS(4830), [anon_sym_TILDE] = ACTIONS(4830), [sym_bool] = ACTIONS(4828), [sym_byte] = ACTIONS(4828), [sym_ubyte] = ACTIONS(4828), [sym_char] = ACTIONS(4828), [sym_short] = ACTIONS(4828), [sym_ushort] = ACTIONS(4828), [sym_int] = ACTIONS(4828), [sym_uint] = ACTIONS(4828), [sym_long] = ACTIONS(4828), [sym_ulong] = ACTIONS(4828), [sym_cent] = ACTIONS(4828), [sym_ucent] = ACTIONS(4828), [sym_wchar] = ACTIONS(4828), [sym_dchar] = ACTIONS(4828), [sym_float] = ACTIONS(4828), [sym_double] = ACTIONS(4828), [sym_real] = ACTIONS(4828), [sym_ifloat] = ACTIONS(4828), [sym_idouble] = ACTIONS(4828), [sym_ireal] = ACTIONS(4828), [sym_cfloat] = ACTIONS(4828), [sym_cdouble] = ACTIONS(4828), [sym_creal] = ACTIONS(4828), [sym_size_t] = ACTIONS(4828), [sym_ptrdiff_t] = ACTIONS(4828), [sym_string] = ACTIONS(4828), [sym_cstring] = ACTIONS(4828), [sym_dstring] = ACTIONS(4828), [sym_wstring] = ACTIONS(4828), [sym_noreturn] = ACTIONS(4828), [sym_true] = ACTIONS(4828), [sym_false] = ACTIONS(4828), [sym_null] = ACTIONS(4828), [sym_super] = ACTIONS(4828), [sym_this] = ACTIONS(4828), [sym_assert] = ACTIONS(4828), [sym_auto] = ACTIONS(4828), [sym_cast] = ACTIONS(4828), [sym_catch] = ACTIONS(4828), [sym_const] = ACTIONS(4828), [sym_delegate] = ACTIONS(4828), [sym_delete] = ACTIONS(4828), [sym_do] = ACTIONS(4828), [sym_else] = ACTIONS(4828), [sym_finally] = ACTIONS(4828), [sym_function] = ACTIONS(4828), [sym_immutable] = ACTIONS(4828), [sym_import] = ACTIONS(4828), [sym_in] = ACTIONS(4828), [sym_inout] = ACTIONS(4828), [sym_is] = ACTIONS(4828), [sym_mixin] = ACTIONS(4828), [sym_new] = ACTIONS(4828), [sym_out] = ACTIONS(4828), [sym_ref] = ACTIONS(4828), [sym_shared] = ACTIONS(4828), [sym_throw] = ACTIONS(4828), [sym_typeid] = ACTIONS(4828), [sym_typeof] = ACTIONS(4828), [sym_traits] = ACTIONS(4828), [sym_vector] = ACTIONS(4828), [sym_void] = ACTIONS(4828), [anon_sym_BQUOTE] = ACTIONS(4830), [anon_sym_r_DQUOTE] = ACTIONS(4830), [anon_sym_x_DQUOTE] = ACTIONS(4830), [anon_sym_DQUOTE] = ACTIONS(4830), [anon_sym_i_BQUOTE] = ACTIONS(4830), [anon_sym_i_DQUOTE] = ACTIONS(4830), [anon_sym_iq_LBRACE] = ACTIONS(4830), [aux_sym_char_literal_token1] = ACTIONS(4830), [anon_sym_SQUOTE] = ACTIONS(4828), [anon_sym___DATE__] = ACTIONS(4828), [anon_sym___FILE__] = ACTIONS(4828), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4828), [anon_sym___FUNCTION__] = ACTIONS(4828), [anon_sym___LINE__] = ACTIONS(4828), [anon_sym___MODULE__] = ACTIONS(4828), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4828), [anon_sym___TIME__] = ACTIONS(4828), [anon_sym___TIMESTAMP__] = ACTIONS(4828), [anon_sym___VENDOR__] = ACTIONS(4828), [anon_sym___VERSION__] = ACTIONS(4828), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4830), [sym_float_literal] = ACTIONS(4830), [sym__string] = ACTIONS(4830), }, [2205] = { [sym_identifier] = ACTIONS(4606), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4608), [anon_sym_LBRACE] = ACTIONS(4608), [anon_sym_DOT] = ACTIONS(4608), [anon_sym_AMP] = ACTIONS(4608), [anon_sym_DASH] = ACTIONS(4606), [anon_sym_DASH_DASH] = ACTIONS(4608), [anon_sym_PLUS] = ACTIONS(4606), [anon_sym_PLUS_PLUS] = ACTIONS(4608), [anon_sym_BANG] = ACTIONS(4608), [anon_sym_LPAREN] = ACTIONS(4608), [anon_sym_RPAREN] = ACTIONS(4608), [anon_sym_LBRACK] = ACTIONS(4608), [anon_sym_SEMI] = ACTIONS(4608), [anon_sym_DOLLAR] = ACTIONS(4608), [anon_sym_STAR] = ACTIONS(4608), [anon_sym_TILDE] = ACTIONS(4608), [sym_bool] = ACTIONS(4606), [sym_byte] = ACTIONS(4606), [sym_ubyte] = ACTIONS(4606), [sym_char] = ACTIONS(4606), [sym_short] = ACTIONS(4606), [sym_ushort] = ACTIONS(4606), [sym_int] = ACTIONS(4606), [sym_uint] = ACTIONS(4606), [sym_long] = ACTIONS(4606), [sym_ulong] = ACTIONS(4606), [sym_cent] = ACTIONS(4606), [sym_ucent] = ACTIONS(4606), [sym_wchar] = ACTIONS(4606), [sym_dchar] = ACTIONS(4606), [sym_float] = ACTIONS(4606), [sym_double] = ACTIONS(4606), [sym_real] = ACTIONS(4606), [sym_ifloat] = ACTIONS(4606), [sym_idouble] = ACTIONS(4606), [sym_ireal] = ACTIONS(4606), [sym_cfloat] = ACTIONS(4606), [sym_cdouble] = ACTIONS(4606), [sym_creal] = ACTIONS(4606), [sym_size_t] = ACTIONS(4606), [sym_ptrdiff_t] = ACTIONS(4606), [sym_string] = ACTIONS(4606), [sym_cstring] = ACTIONS(4606), [sym_dstring] = ACTIONS(4606), [sym_wstring] = ACTIONS(4606), [sym_noreturn] = ACTIONS(4606), [sym_true] = ACTIONS(4606), [sym_false] = ACTIONS(4606), [sym_null] = ACTIONS(4606), [sym_super] = ACTIONS(4606), [sym_this] = ACTIONS(4606), [sym_assert] = ACTIONS(4606), [sym_auto] = ACTIONS(4606), [sym_cast] = ACTIONS(4606), [sym_catch] = ACTIONS(4606), [sym_const] = ACTIONS(4606), [sym_delegate] = ACTIONS(4606), [sym_delete] = ACTIONS(4606), [sym_do] = ACTIONS(4606), [sym_else] = ACTIONS(4606), [sym_finally] = ACTIONS(4606), [sym_function] = ACTIONS(4606), [sym_immutable] = ACTIONS(4606), [sym_import] = ACTIONS(4606), [sym_in] = ACTIONS(4606), [sym_inout] = ACTIONS(4606), [sym_is] = ACTIONS(4606), [sym_mixin] = ACTIONS(4606), [sym_new] = ACTIONS(4606), [sym_out] = ACTIONS(4606), [sym_ref] = ACTIONS(4606), [sym_shared] = ACTIONS(4606), [sym_throw] = ACTIONS(4606), [sym_typeid] = ACTIONS(4606), [sym_typeof] = ACTIONS(4606), [sym_traits] = ACTIONS(4606), [sym_vector] = ACTIONS(4606), [sym_void] = ACTIONS(4606), [anon_sym_BQUOTE] = ACTIONS(4608), [anon_sym_r_DQUOTE] = ACTIONS(4608), [anon_sym_x_DQUOTE] = ACTIONS(4608), [anon_sym_DQUOTE] = ACTIONS(4608), [anon_sym_i_BQUOTE] = ACTIONS(4608), [anon_sym_i_DQUOTE] = ACTIONS(4608), [anon_sym_iq_LBRACE] = ACTIONS(4608), [aux_sym_char_literal_token1] = ACTIONS(4608), [anon_sym_SQUOTE] = ACTIONS(4606), [anon_sym___DATE__] = ACTIONS(4606), [anon_sym___FILE__] = ACTIONS(4606), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4606), [anon_sym___FUNCTION__] = ACTIONS(4606), [anon_sym___LINE__] = ACTIONS(4606), [anon_sym___MODULE__] = ACTIONS(4606), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4606), [anon_sym___TIME__] = ACTIONS(4606), [anon_sym___TIMESTAMP__] = ACTIONS(4606), [anon_sym___VENDOR__] = ACTIONS(4606), [anon_sym___VERSION__] = ACTIONS(4606), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4608), [sym_float_literal] = ACTIONS(4608), [sym__string] = ACTIONS(4608), }, [2206] = { [sym_identifier] = ACTIONS(4590), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4592), [anon_sym_LBRACE] = ACTIONS(4592), [anon_sym_DOT] = ACTIONS(4592), [anon_sym_AMP] = ACTIONS(4592), [anon_sym_DASH] = ACTIONS(4590), [anon_sym_DASH_DASH] = ACTIONS(4592), [anon_sym_PLUS] = ACTIONS(4590), [anon_sym_PLUS_PLUS] = ACTIONS(4592), [anon_sym_BANG] = ACTIONS(4592), [anon_sym_LPAREN] = ACTIONS(4592), [anon_sym_RPAREN] = ACTIONS(4592), [anon_sym_LBRACK] = ACTIONS(4592), [anon_sym_SEMI] = ACTIONS(4592), [anon_sym_DOLLAR] = ACTIONS(4592), [anon_sym_STAR] = ACTIONS(4592), [anon_sym_TILDE] = ACTIONS(4592), [sym_bool] = ACTIONS(4590), [sym_byte] = ACTIONS(4590), [sym_ubyte] = ACTIONS(4590), [sym_char] = ACTIONS(4590), [sym_short] = ACTIONS(4590), [sym_ushort] = ACTIONS(4590), [sym_int] = ACTIONS(4590), [sym_uint] = ACTIONS(4590), [sym_long] = ACTIONS(4590), [sym_ulong] = ACTIONS(4590), [sym_cent] = ACTIONS(4590), [sym_ucent] = ACTIONS(4590), [sym_wchar] = ACTIONS(4590), [sym_dchar] = ACTIONS(4590), [sym_float] = ACTIONS(4590), [sym_double] = ACTIONS(4590), [sym_real] = ACTIONS(4590), [sym_ifloat] = ACTIONS(4590), [sym_idouble] = ACTIONS(4590), [sym_ireal] = ACTIONS(4590), [sym_cfloat] = ACTIONS(4590), [sym_cdouble] = ACTIONS(4590), [sym_creal] = ACTIONS(4590), [sym_size_t] = ACTIONS(4590), [sym_ptrdiff_t] = ACTIONS(4590), [sym_string] = ACTIONS(4590), [sym_cstring] = ACTIONS(4590), [sym_dstring] = ACTIONS(4590), [sym_wstring] = ACTIONS(4590), [sym_noreturn] = ACTIONS(4590), [sym_true] = ACTIONS(4590), [sym_false] = ACTIONS(4590), [sym_null] = ACTIONS(4590), [sym_super] = ACTIONS(4590), [sym_this] = ACTIONS(4590), [sym_assert] = ACTIONS(4590), [sym_auto] = ACTIONS(4590), [sym_cast] = ACTIONS(4590), [sym_catch] = ACTIONS(4590), [sym_const] = ACTIONS(4590), [sym_delegate] = ACTIONS(4590), [sym_delete] = ACTIONS(4590), [sym_do] = ACTIONS(4590), [sym_else] = ACTIONS(4590), [sym_finally] = ACTIONS(4590), [sym_function] = ACTIONS(4590), [sym_immutable] = ACTIONS(4590), [sym_import] = ACTIONS(4590), [sym_in] = ACTIONS(4590), [sym_inout] = ACTIONS(4590), [sym_is] = ACTIONS(4590), [sym_mixin] = ACTIONS(4590), [sym_new] = ACTIONS(4590), [sym_out] = ACTIONS(4590), [sym_ref] = ACTIONS(4590), [sym_shared] = ACTIONS(4590), [sym_throw] = ACTIONS(4590), [sym_typeid] = ACTIONS(4590), [sym_typeof] = ACTIONS(4590), [sym_traits] = ACTIONS(4590), [sym_vector] = ACTIONS(4590), [sym_void] = ACTIONS(4590), [anon_sym_BQUOTE] = ACTIONS(4592), [anon_sym_r_DQUOTE] = ACTIONS(4592), [anon_sym_x_DQUOTE] = ACTIONS(4592), [anon_sym_DQUOTE] = ACTIONS(4592), [anon_sym_i_BQUOTE] = ACTIONS(4592), [anon_sym_i_DQUOTE] = ACTIONS(4592), [anon_sym_iq_LBRACE] = ACTIONS(4592), [aux_sym_char_literal_token1] = ACTIONS(4592), [anon_sym_SQUOTE] = ACTIONS(4590), [anon_sym___DATE__] = ACTIONS(4590), [anon_sym___FILE__] = ACTIONS(4590), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4590), [anon_sym___FUNCTION__] = ACTIONS(4590), [anon_sym___LINE__] = ACTIONS(4590), [anon_sym___MODULE__] = ACTIONS(4590), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4590), [anon_sym___TIME__] = ACTIONS(4590), [anon_sym___TIMESTAMP__] = ACTIONS(4590), [anon_sym___VENDOR__] = ACTIONS(4590), [anon_sym___VERSION__] = ACTIONS(4590), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4592), [sym_float_literal] = ACTIONS(4592), [sym__string] = ACTIONS(4592), }, [2207] = { [sym_identifier] = ACTIONS(4500), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4502), [anon_sym_LBRACE] = ACTIONS(4502), [anon_sym_DOT] = ACTIONS(4502), [anon_sym_AMP] = ACTIONS(4502), [anon_sym_DASH] = ACTIONS(4500), [anon_sym_DASH_DASH] = ACTIONS(4502), [anon_sym_PLUS] = ACTIONS(4500), [anon_sym_PLUS_PLUS] = ACTIONS(4502), [anon_sym_BANG] = ACTIONS(4502), [anon_sym_LPAREN] = ACTIONS(4502), [anon_sym_RPAREN] = ACTIONS(4502), [anon_sym_LBRACK] = ACTIONS(4502), [anon_sym_SEMI] = ACTIONS(4502), [anon_sym_DOLLAR] = ACTIONS(4502), [anon_sym_STAR] = ACTIONS(4502), [anon_sym_TILDE] = ACTIONS(4502), [sym_bool] = ACTIONS(4500), [sym_byte] = ACTIONS(4500), [sym_ubyte] = ACTIONS(4500), [sym_char] = ACTIONS(4500), [sym_short] = ACTIONS(4500), [sym_ushort] = ACTIONS(4500), [sym_int] = ACTIONS(4500), [sym_uint] = ACTIONS(4500), [sym_long] = ACTIONS(4500), [sym_ulong] = ACTIONS(4500), [sym_cent] = ACTIONS(4500), [sym_ucent] = ACTIONS(4500), [sym_wchar] = ACTIONS(4500), [sym_dchar] = ACTIONS(4500), [sym_float] = ACTIONS(4500), [sym_double] = ACTIONS(4500), [sym_real] = ACTIONS(4500), [sym_ifloat] = ACTIONS(4500), [sym_idouble] = ACTIONS(4500), [sym_ireal] = ACTIONS(4500), [sym_cfloat] = ACTIONS(4500), [sym_cdouble] = ACTIONS(4500), [sym_creal] = ACTIONS(4500), [sym_size_t] = ACTIONS(4500), [sym_ptrdiff_t] = ACTIONS(4500), [sym_string] = ACTIONS(4500), [sym_cstring] = ACTIONS(4500), [sym_dstring] = ACTIONS(4500), [sym_wstring] = ACTIONS(4500), [sym_noreturn] = ACTIONS(4500), [sym_true] = ACTIONS(4500), [sym_false] = ACTIONS(4500), [sym_null] = ACTIONS(4500), [sym_super] = ACTIONS(4500), [sym_this] = ACTIONS(4500), [sym_assert] = ACTIONS(4500), [sym_auto] = ACTIONS(4500), [sym_cast] = ACTIONS(4500), [sym_catch] = ACTIONS(4500), [sym_const] = ACTIONS(4500), [sym_delegate] = ACTIONS(4500), [sym_delete] = ACTIONS(4500), [sym_do] = ACTIONS(4500), [sym_else] = ACTIONS(4500), [sym_finally] = ACTIONS(4500), [sym_function] = ACTIONS(4500), [sym_immutable] = ACTIONS(4500), [sym_import] = ACTIONS(4500), [sym_in] = ACTIONS(4500), [sym_inout] = ACTIONS(4500), [sym_is] = ACTIONS(4500), [sym_mixin] = ACTIONS(4500), [sym_new] = ACTIONS(4500), [sym_out] = ACTIONS(4500), [sym_ref] = ACTIONS(4500), [sym_shared] = ACTIONS(4500), [sym_throw] = ACTIONS(4500), [sym_typeid] = ACTIONS(4500), [sym_typeof] = ACTIONS(4500), [sym_traits] = ACTIONS(4500), [sym_vector] = ACTIONS(4500), [sym_void] = ACTIONS(4500), [anon_sym_BQUOTE] = ACTIONS(4502), [anon_sym_r_DQUOTE] = ACTIONS(4502), [anon_sym_x_DQUOTE] = ACTIONS(4502), [anon_sym_DQUOTE] = ACTIONS(4502), [anon_sym_i_BQUOTE] = ACTIONS(4502), [anon_sym_i_DQUOTE] = ACTIONS(4502), [anon_sym_iq_LBRACE] = ACTIONS(4502), [aux_sym_char_literal_token1] = ACTIONS(4502), [anon_sym_SQUOTE] = ACTIONS(4500), [anon_sym___DATE__] = ACTIONS(4500), [anon_sym___FILE__] = ACTIONS(4500), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4500), [anon_sym___FUNCTION__] = ACTIONS(4500), [anon_sym___LINE__] = ACTIONS(4500), [anon_sym___MODULE__] = ACTIONS(4500), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4500), [anon_sym___TIME__] = ACTIONS(4500), [anon_sym___TIMESTAMP__] = ACTIONS(4500), [anon_sym___VENDOR__] = ACTIONS(4500), [anon_sym___VERSION__] = ACTIONS(4500), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4502), [sym_float_literal] = ACTIONS(4502), [sym__string] = ACTIONS(4502), }, [2208] = { [sym_identifier] = ACTIONS(4512), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4514), [anon_sym_LBRACE] = ACTIONS(4514), [anon_sym_DOT] = ACTIONS(4514), [anon_sym_AMP] = ACTIONS(4514), [anon_sym_DASH] = ACTIONS(4512), [anon_sym_DASH_DASH] = ACTIONS(4514), [anon_sym_PLUS] = ACTIONS(4512), [anon_sym_PLUS_PLUS] = ACTIONS(4514), [anon_sym_BANG] = ACTIONS(4514), [anon_sym_LPAREN] = ACTIONS(4514), [anon_sym_RPAREN] = ACTIONS(4514), [anon_sym_LBRACK] = ACTIONS(4514), [anon_sym_SEMI] = ACTIONS(4514), [anon_sym_DOLLAR] = ACTIONS(4514), [anon_sym_STAR] = ACTIONS(4514), [anon_sym_TILDE] = ACTIONS(4514), [sym_bool] = ACTIONS(4512), [sym_byte] = ACTIONS(4512), [sym_ubyte] = ACTIONS(4512), [sym_char] = ACTIONS(4512), [sym_short] = ACTIONS(4512), [sym_ushort] = ACTIONS(4512), [sym_int] = ACTIONS(4512), [sym_uint] = ACTIONS(4512), [sym_long] = ACTIONS(4512), [sym_ulong] = ACTIONS(4512), [sym_cent] = ACTIONS(4512), [sym_ucent] = ACTIONS(4512), [sym_wchar] = ACTIONS(4512), [sym_dchar] = ACTIONS(4512), [sym_float] = ACTIONS(4512), [sym_double] = ACTIONS(4512), [sym_real] = ACTIONS(4512), [sym_ifloat] = ACTIONS(4512), [sym_idouble] = ACTIONS(4512), [sym_ireal] = ACTIONS(4512), [sym_cfloat] = ACTIONS(4512), [sym_cdouble] = ACTIONS(4512), [sym_creal] = ACTIONS(4512), [sym_size_t] = ACTIONS(4512), [sym_ptrdiff_t] = ACTIONS(4512), [sym_string] = ACTIONS(4512), [sym_cstring] = ACTIONS(4512), [sym_dstring] = ACTIONS(4512), [sym_wstring] = ACTIONS(4512), [sym_noreturn] = ACTIONS(4512), [sym_true] = ACTIONS(4512), [sym_false] = ACTIONS(4512), [sym_null] = ACTIONS(4512), [sym_super] = ACTIONS(4512), [sym_this] = ACTIONS(4512), [sym_assert] = ACTIONS(4512), [sym_auto] = ACTIONS(4512), [sym_cast] = ACTIONS(4512), [sym_catch] = ACTIONS(4512), [sym_const] = ACTIONS(4512), [sym_delegate] = ACTIONS(4512), [sym_delete] = ACTIONS(4512), [sym_do] = ACTIONS(4512), [sym_else] = ACTIONS(4512), [sym_finally] = ACTIONS(4512), [sym_function] = ACTIONS(4512), [sym_immutable] = ACTIONS(4512), [sym_import] = ACTIONS(4512), [sym_in] = ACTIONS(4512), [sym_inout] = ACTIONS(4512), [sym_is] = ACTIONS(4512), [sym_mixin] = ACTIONS(4512), [sym_new] = ACTIONS(4512), [sym_out] = ACTIONS(4512), [sym_ref] = ACTIONS(4512), [sym_shared] = ACTIONS(4512), [sym_throw] = ACTIONS(4512), [sym_typeid] = ACTIONS(4512), [sym_typeof] = ACTIONS(4512), [sym_traits] = ACTIONS(4512), [sym_vector] = ACTIONS(4512), [sym_void] = ACTIONS(4512), [anon_sym_BQUOTE] = ACTIONS(4514), [anon_sym_r_DQUOTE] = ACTIONS(4514), [anon_sym_x_DQUOTE] = ACTIONS(4514), [anon_sym_DQUOTE] = ACTIONS(4514), [anon_sym_i_BQUOTE] = ACTIONS(4514), [anon_sym_i_DQUOTE] = ACTIONS(4514), [anon_sym_iq_LBRACE] = ACTIONS(4514), [aux_sym_char_literal_token1] = ACTIONS(4514), [anon_sym_SQUOTE] = ACTIONS(4512), [anon_sym___DATE__] = ACTIONS(4512), [anon_sym___FILE__] = ACTIONS(4512), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4512), [anon_sym___FUNCTION__] = ACTIONS(4512), [anon_sym___LINE__] = ACTIONS(4512), [anon_sym___MODULE__] = ACTIONS(4512), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4512), [anon_sym___TIME__] = ACTIONS(4512), [anon_sym___TIMESTAMP__] = ACTIONS(4512), [anon_sym___VENDOR__] = ACTIONS(4512), [anon_sym___VERSION__] = ACTIONS(4512), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4514), [sym_float_literal] = ACTIONS(4514), [sym__string] = ACTIONS(4514), }, [2209] = { [sym_identifier] = ACTIONS(4840), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4842), [anon_sym_LBRACE] = ACTIONS(4842), [anon_sym_DOT] = ACTIONS(4842), [anon_sym_AMP] = ACTIONS(4842), [anon_sym_DASH] = ACTIONS(4840), [anon_sym_DASH_DASH] = ACTIONS(4842), [anon_sym_PLUS] = ACTIONS(4840), [anon_sym_PLUS_PLUS] = ACTIONS(4842), [anon_sym_BANG] = ACTIONS(4842), [anon_sym_LPAREN] = ACTIONS(4842), [anon_sym_RPAREN] = ACTIONS(4842), [anon_sym_LBRACK] = ACTIONS(4842), [anon_sym_SEMI] = ACTIONS(4842), [anon_sym_DOLLAR] = ACTIONS(4842), [anon_sym_STAR] = ACTIONS(4842), [anon_sym_TILDE] = ACTIONS(4842), [sym_bool] = ACTIONS(4840), [sym_byte] = ACTIONS(4840), [sym_ubyte] = ACTIONS(4840), [sym_char] = ACTIONS(4840), [sym_short] = ACTIONS(4840), [sym_ushort] = ACTIONS(4840), [sym_int] = ACTIONS(4840), [sym_uint] = ACTIONS(4840), [sym_long] = ACTIONS(4840), [sym_ulong] = ACTIONS(4840), [sym_cent] = ACTIONS(4840), [sym_ucent] = ACTIONS(4840), [sym_wchar] = ACTIONS(4840), [sym_dchar] = ACTIONS(4840), [sym_float] = ACTIONS(4840), [sym_double] = ACTIONS(4840), [sym_real] = ACTIONS(4840), [sym_ifloat] = ACTIONS(4840), [sym_idouble] = ACTIONS(4840), [sym_ireal] = ACTIONS(4840), [sym_cfloat] = ACTIONS(4840), [sym_cdouble] = ACTIONS(4840), [sym_creal] = ACTIONS(4840), [sym_size_t] = ACTIONS(4840), [sym_ptrdiff_t] = ACTIONS(4840), [sym_string] = ACTIONS(4840), [sym_cstring] = ACTIONS(4840), [sym_dstring] = ACTIONS(4840), [sym_wstring] = ACTIONS(4840), [sym_noreturn] = ACTIONS(4840), [sym_true] = ACTIONS(4840), [sym_false] = ACTIONS(4840), [sym_null] = ACTIONS(4840), [sym_super] = ACTIONS(4840), [sym_this] = ACTIONS(4840), [sym_assert] = ACTIONS(4840), [sym_auto] = ACTIONS(4840), [sym_cast] = ACTIONS(4840), [sym_catch] = ACTIONS(4840), [sym_const] = ACTIONS(4840), [sym_delegate] = ACTIONS(4840), [sym_delete] = ACTIONS(4840), [sym_do] = ACTIONS(4840), [sym_else] = ACTIONS(4840), [sym_finally] = ACTIONS(4840), [sym_function] = ACTIONS(4840), [sym_immutable] = ACTIONS(4840), [sym_import] = ACTIONS(4840), [sym_in] = ACTIONS(4840), [sym_inout] = ACTIONS(4840), [sym_is] = ACTIONS(4840), [sym_mixin] = ACTIONS(4840), [sym_new] = ACTIONS(4840), [sym_out] = ACTIONS(4840), [sym_ref] = ACTIONS(4840), [sym_shared] = ACTIONS(4840), [sym_throw] = ACTIONS(4840), [sym_typeid] = ACTIONS(4840), [sym_typeof] = ACTIONS(4840), [sym_traits] = ACTIONS(4840), [sym_vector] = ACTIONS(4840), [sym_void] = ACTIONS(4840), [anon_sym_BQUOTE] = ACTIONS(4842), [anon_sym_r_DQUOTE] = ACTIONS(4842), [anon_sym_x_DQUOTE] = ACTIONS(4842), [anon_sym_DQUOTE] = ACTIONS(4842), [anon_sym_i_BQUOTE] = ACTIONS(4842), [anon_sym_i_DQUOTE] = ACTIONS(4842), [anon_sym_iq_LBRACE] = ACTIONS(4842), [aux_sym_char_literal_token1] = ACTIONS(4842), [anon_sym_SQUOTE] = ACTIONS(4840), [anon_sym___DATE__] = ACTIONS(4840), [anon_sym___FILE__] = ACTIONS(4840), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4840), [anon_sym___FUNCTION__] = ACTIONS(4840), [anon_sym___LINE__] = ACTIONS(4840), [anon_sym___MODULE__] = ACTIONS(4840), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4840), [anon_sym___TIME__] = ACTIONS(4840), [anon_sym___TIMESTAMP__] = ACTIONS(4840), [anon_sym___VENDOR__] = ACTIONS(4840), [anon_sym___VERSION__] = ACTIONS(4840), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4842), [sym_float_literal] = ACTIONS(4842), [sym__string] = ACTIONS(4842), }, [2210] = { [sym_identifier] = ACTIONS(4880), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4882), [anon_sym_LBRACE] = ACTIONS(4882), [anon_sym_DOT] = ACTIONS(4882), [anon_sym_AMP] = ACTIONS(4882), [anon_sym_DASH] = ACTIONS(4880), [anon_sym_DASH_DASH] = ACTIONS(4882), [anon_sym_PLUS] = ACTIONS(4880), [anon_sym_PLUS_PLUS] = ACTIONS(4882), [anon_sym_BANG] = ACTIONS(4882), [anon_sym_LPAREN] = ACTIONS(4882), [anon_sym_RPAREN] = ACTIONS(4882), [anon_sym_LBRACK] = ACTIONS(4882), [anon_sym_SEMI] = ACTIONS(4882), [anon_sym_DOLLAR] = ACTIONS(4882), [anon_sym_STAR] = ACTIONS(4882), [anon_sym_TILDE] = ACTIONS(4882), [sym_bool] = ACTIONS(4880), [sym_byte] = ACTIONS(4880), [sym_ubyte] = ACTIONS(4880), [sym_char] = ACTIONS(4880), [sym_short] = ACTIONS(4880), [sym_ushort] = ACTIONS(4880), [sym_int] = ACTIONS(4880), [sym_uint] = ACTIONS(4880), [sym_long] = ACTIONS(4880), [sym_ulong] = ACTIONS(4880), [sym_cent] = ACTIONS(4880), [sym_ucent] = ACTIONS(4880), [sym_wchar] = ACTIONS(4880), [sym_dchar] = ACTIONS(4880), [sym_float] = ACTIONS(4880), [sym_double] = ACTIONS(4880), [sym_real] = ACTIONS(4880), [sym_ifloat] = ACTIONS(4880), [sym_idouble] = ACTIONS(4880), [sym_ireal] = ACTIONS(4880), [sym_cfloat] = ACTIONS(4880), [sym_cdouble] = ACTIONS(4880), [sym_creal] = ACTIONS(4880), [sym_size_t] = ACTIONS(4880), [sym_ptrdiff_t] = ACTIONS(4880), [sym_string] = ACTIONS(4880), [sym_cstring] = ACTIONS(4880), [sym_dstring] = ACTIONS(4880), [sym_wstring] = ACTIONS(4880), [sym_noreturn] = ACTIONS(4880), [sym_true] = ACTIONS(4880), [sym_false] = ACTIONS(4880), [sym_null] = ACTIONS(4880), [sym_super] = ACTIONS(4880), [sym_this] = ACTIONS(4880), [sym_assert] = ACTIONS(4880), [sym_auto] = ACTIONS(4880), [sym_cast] = ACTIONS(4880), [sym_catch] = ACTIONS(4880), [sym_const] = ACTIONS(4880), [sym_delegate] = ACTIONS(4880), [sym_delete] = ACTIONS(4880), [sym_do] = ACTIONS(4880), [sym_else] = ACTIONS(4880), [sym_finally] = ACTIONS(4880), [sym_function] = ACTIONS(4880), [sym_immutable] = ACTIONS(4880), [sym_import] = ACTIONS(4880), [sym_in] = ACTIONS(4880), [sym_inout] = ACTIONS(4880), [sym_is] = ACTIONS(4880), [sym_mixin] = ACTIONS(4880), [sym_new] = ACTIONS(4880), [sym_out] = ACTIONS(4880), [sym_ref] = ACTIONS(4880), [sym_shared] = ACTIONS(4880), [sym_throw] = ACTIONS(4880), [sym_typeid] = ACTIONS(4880), [sym_typeof] = ACTIONS(4880), [sym_traits] = ACTIONS(4880), [sym_vector] = ACTIONS(4880), [sym_void] = ACTIONS(4880), [anon_sym_BQUOTE] = ACTIONS(4882), [anon_sym_r_DQUOTE] = ACTIONS(4882), [anon_sym_x_DQUOTE] = ACTIONS(4882), [anon_sym_DQUOTE] = ACTIONS(4882), [anon_sym_i_BQUOTE] = ACTIONS(4882), [anon_sym_i_DQUOTE] = ACTIONS(4882), [anon_sym_iq_LBRACE] = ACTIONS(4882), [aux_sym_char_literal_token1] = ACTIONS(4882), [anon_sym_SQUOTE] = ACTIONS(4880), [anon_sym___DATE__] = ACTIONS(4880), [anon_sym___FILE__] = ACTIONS(4880), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4880), [anon_sym___FUNCTION__] = ACTIONS(4880), [anon_sym___LINE__] = ACTIONS(4880), [anon_sym___MODULE__] = ACTIONS(4880), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4880), [anon_sym___TIME__] = ACTIONS(4880), [anon_sym___TIMESTAMP__] = ACTIONS(4880), [anon_sym___VENDOR__] = ACTIONS(4880), [anon_sym___VERSION__] = ACTIONS(4880), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4882), [sym_float_literal] = ACTIONS(4882), [sym__string] = ACTIONS(4882), }, [2211] = { [sym_identifier] = ACTIONS(4520), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4522), [anon_sym_LBRACE] = ACTIONS(4522), [anon_sym_DOT] = ACTIONS(4522), [anon_sym_AMP] = ACTIONS(4522), [anon_sym_DASH] = ACTIONS(4520), [anon_sym_DASH_DASH] = ACTIONS(4522), [anon_sym_PLUS] = ACTIONS(4520), [anon_sym_PLUS_PLUS] = ACTIONS(4522), [anon_sym_BANG] = ACTIONS(4522), [anon_sym_LPAREN] = ACTIONS(4522), [anon_sym_RPAREN] = ACTIONS(4522), [anon_sym_LBRACK] = ACTIONS(4522), [anon_sym_SEMI] = ACTIONS(4522), [anon_sym_DOLLAR] = ACTIONS(4522), [anon_sym_STAR] = ACTIONS(4522), [anon_sym_TILDE] = ACTIONS(4522), [sym_bool] = ACTIONS(4520), [sym_byte] = ACTIONS(4520), [sym_ubyte] = ACTIONS(4520), [sym_char] = ACTIONS(4520), [sym_short] = ACTIONS(4520), [sym_ushort] = ACTIONS(4520), [sym_int] = ACTIONS(4520), [sym_uint] = ACTIONS(4520), [sym_long] = ACTIONS(4520), [sym_ulong] = ACTIONS(4520), [sym_cent] = ACTIONS(4520), [sym_ucent] = ACTIONS(4520), [sym_wchar] = ACTIONS(4520), [sym_dchar] = ACTIONS(4520), [sym_float] = ACTIONS(4520), [sym_double] = ACTIONS(4520), [sym_real] = ACTIONS(4520), [sym_ifloat] = ACTIONS(4520), [sym_idouble] = ACTIONS(4520), [sym_ireal] = ACTIONS(4520), [sym_cfloat] = ACTIONS(4520), [sym_cdouble] = ACTIONS(4520), [sym_creal] = ACTIONS(4520), [sym_size_t] = ACTIONS(4520), [sym_ptrdiff_t] = ACTIONS(4520), [sym_string] = ACTIONS(4520), [sym_cstring] = ACTIONS(4520), [sym_dstring] = ACTIONS(4520), [sym_wstring] = ACTIONS(4520), [sym_noreturn] = ACTIONS(4520), [sym_true] = ACTIONS(4520), [sym_false] = ACTIONS(4520), [sym_null] = ACTIONS(4520), [sym_super] = ACTIONS(4520), [sym_this] = ACTIONS(4520), [sym_assert] = ACTIONS(4520), [sym_auto] = ACTIONS(4520), [sym_cast] = ACTIONS(4520), [sym_catch] = ACTIONS(4520), [sym_const] = ACTIONS(4520), [sym_delegate] = ACTIONS(4520), [sym_delete] = ACTIONS(4520), [sym_do] = ACTIONS(4520), [sym_else] = ACTIONS(4520), [sym_finally] = ACTIONS(4520), [sym_function] = ACTIONS(4520), [sym_immutable] = ACTIONS(4520), [sym_import] = ACTIONS(4520), [sym_in] = ACTIONS(4520), [sym_inout] = ACTIONS(4520), [sym_is] = ACTIONS(4520), [sym_mixin] = ACTIONS(4520), [sym_new] = ACTIONS(4520), [sym_out] = ACTIONS(4520), [sym_ref] = ACTIONS(4520), [sym_shared] = ACTIONS(4520), [sym_throw] = ACTIONS(4520), [sym_typeid] = ACTIONS(4520), [sym_typeof] = ACTIONS(4520), [sym_traits] = ACTIONS(4520), [sym_vector] = ACTIONS(4520), [sym_void] = ACTIONS(4520), [anon_sym_BQUOTE] = ACTIONS(4522), [anon_sym_r_DQUOTE] = ACTIONS(4522), [anon_sym_x_DQUOTE] = ACTIONS(4522), [anon_sym_DQUOTE] = ACTIONS(4522), [anon_sym_i_BQUOTE] = ACTIONS(4522), [anon_sym_i_DQUOTE] = ACTIONS(4522), [anon_sym_iq_LBRACE] = ACTIONS(4522), [aux_sym_char_literal_token1] = ACTIONS(4522), [anon_sym_SQUOTE] = ACTIONS(4520), [anon_sym___DATE__] = ACTIONS(4520), [anon_sym___FILE__] = ACTIONS(4520), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4520), [anon_sym___FUNCTION__] = ACTIONS(4520), [anon_sym___LINE__] = ACTIONS(4520), [anon_sym___MODULE__] = ACTIONS(4520), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4520), [anon_sym___TIME__] = ACTIONS(4520), [anon_sym___TIMESTAMP__] = ACTIONS(4520), [anon_sym___VENDOR__] = ACTIONS(4520), [anon_sym___VERSION__] = ACTIONS(4520), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4522), [sym_float_literal] = ACTIONS(4522), [sym__string] = ACTIONS(4522), }, [2212] = { [sym_identifier] = ACTIONS(4586), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4588), [anon_sym_LBRACE] = ACTIONS(4588), [anon_sym_DOT] = ACTIONS(4588), [anon_sym_AMP] = ACTIONS(4588), [anon_sym_DASH] = ACTIONS(4586), [anon_sym_DASH_DASH] = ACTIONS(4588), [anon_sym_PLUS] = ACTIONS(4586), [anon_sym_PLUS_PLUS] = ACTIONS(4588), [anon_sym_BANG] = ACTIONS(4588), [anon_sym_LPAREN] = ACTIONS(4588), [anon_sym_RPAREN] = ACTIONS(4588), [anon_sym_LBRACK] = ACTIONS(4588), [anon_sym_SEMI] = ACTIONS(4588), [anon_sym_DOLLAR] = ACTIONS(4588), [anon_sym_STAR] = ACTIONS(4588), [anon_sym_TILDE] = ACTIONS(4588), [sym_bool] = ACTIONS(4586), [sym_byte] = ACTIONS(4586), [sym_ubyte] = ACTIONS(4586), [sym_char] = ACTIONS(4586), [sym_short] = ACTIONS(4586), [sym_ushort] = ACTIONS(4586), [sym_int] = ACTIONS(4586), [sym_uint] = ACTIONS(4586), [sym_long] = ACTIONS(4586), [sym_ulong] = ACTIONS(4586), [sym_cent] = ACTIONS(4586), [sym_ucent] = ACTIONS(4586), [sym_wchar] = ACTIONS(4586), [sym_dchar] = ACTIONS(4586), [sym_float] = ACTIONS(4586), [sym_double] = ACTIONS(4586), [sym_real] = ACTIONS(4586), [sym_ifloat] = ACTIONS(4586), [sym_idouble] = ACTIONS(4586), [sym_ireal] = ACTIONS(4586), [sym_cfloat] = ACTIONS(4586), [sym_cdouble] = ACTIONS(4586), [sym_creal] = ACTIONS(4586), [sym_size_t] = ACTIONS(4586), [sym_ptrdiff_t] = ACTIONS(4586), [sym_string] = ACTIONS(4586), [sym_cstring] = ACTIONS(4586), [sym_dstring] = ACTIONS(4586), [sym_wstring] = ACTIONS(4586), [sym_noreturn] = ACTIONS(4586), [sym_true] = ACTIONS(4586), [sym_false] = ACTIONS(4586), [sym_null] = ACTIONS(4586), [sym_super] = ACTIONS(4586), [sym_this] = ACTIONS(4586), [sym_assert] = ACTIONS(4586), [sym_auto] = ACTIONS(4586), [sym_cast] = ACTIONS(4586), [sym_catch] = ACTIONS(4586), [sym_const] = ACTIONS(4586), [sym_delegate] = ACTIONS(4586), [sym_delete] = ACTIONS(4586), [sym_do] = ACTIONS(4586), [sym_else] = ACTIONS(4586), [sym_finally] = ACTIONS(4586), [sym_function] = ACTIONS(4586), [sym_immutable] = ACTIONS(4586), [sym_import] = ACTIONS(4586), [sym_in] = ACTIONS(4586), [sym_inout] = ACTIONS(4586), [sym_is] = ACTIONS(4586), [sym_mixin] = ACTIONS(4586), [sym_new] = ACTIONS(4586), [sym_out] = ACTIONS(4586), [sym_ref] = ACTIONS(4586), [sym_shared] = ACTIONS(4586), [sym_throw] = ACTIONS(4586), [sym_typeid] = ACTIONS(4586), [sym_typeof] = ACTIONS(4586), [sym_traits] = ACTIONS(4586), [sym_vector] = ACTIONS(4586), [sym_void] = ACTIONS(4586), [anon_sym_BQUOTE] = ACTIONS(4588), [anon_sym_r_DQUOTE] = ACTIONS(4588), [anon_sym_x_DQUOTE] = ACTIONS(4588), [anon_sym_DQUOTE] = ACTIONS(4588), [anon_sym_i_BQUOTE] = ACTIONS(4588), [anon_sym_i_DQUOTE] = ACTIONS(4588), [anon_sym_iq_LBRACE] = ACTIONS(4588), [aux_sym_char_literal_token1] = ACTIONS(4588), [anon_sym_SQUOTE] = ACTIONS(4586), [anon_sym___DATE__] = ACTIONS(4586), [anon_sym___FILE__] = ACTIONS(4586), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4586), [anon_sym___FUNCTION__] = ACTIONS(4586), [anon_sym___LINE__] = ACTIONS(4586), [anon_sym___MODULE__] = ACTIONS(4586), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4586), [anon_sym___TIME__] = ACTIONS(4586), [anon_sym___TIMESTAMP__] = ACTIONS(4586), [anon_sym___VENDOR__] = ACTIONS(4586), [anon_sym___VERSION__] = ACTIONS(4586), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4588), [sym_float_literal] = ACTIONS(4588), [sym__string] = ACTIONS(4588), }, [2213] = { [sym_identifier] = ACTIONS(4818), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4820), [anon_sym_LBRACE] = ACTIONS(4820), [anon_sym_DOT] = ACTIONS(4820), [anon_sym_AMP] = ACTIONS(4820), [anon_sym_DASH] = ACTIONS(4818), [anon_sym_DASH_DASH] = ACTIONS(4820), [anon_sym_PLUS] = ACTIONS(4818), [anon_sym_PLUS_PLUS] = ACTIONS(4820), [anon_sym_BANG] = ACTIONS(4820), [anon_sym_LPAREN] = ACTIONS(4820), [anon_sym_RPAREN] = ACTIONS(4820), [anon_sym_LBRACK] = ACTIONS(4820), [anon_sym_SEMI] = ACTIONS(4820), [anon_sym_DOLLAR] = ACTIONS(4820), [anon_sym_STAR] = ACTIONS(4820), [anon_sym_TILDE] = ACTIONS(4820), [sym_bool] = ACTIONS(4818), [sym_byte] = ACTIONS(4818), [sym_ubyte] = ACTIONS(4818), [sym_char] = ACTIONS(4818), [sym_short] = ACTIONS(4818), [sym_ushort] = ACTIONS(4818), [sym_int] = ACTIONS(4818), [sym_uint] = ACTIONS(4818), [sym_long] = ACTIONS(4818), [sym_ulong] = ACTIONS(4818), [sym_cent] = ACTIONS(4818), [sym_ucent] = ACTIONS(4818), [sym_wchar] = ACTIONS(4818), [sym_dchar] = ACTIONS(4818), [sym_float] = ACTIONS(4818), [sym_double] = ACTIONS(4818), [sym_real] = ACTIONS(4818), [sym_ifloat] = ACTIONS(4818), [sym_idouble] = ACTIONS(4818), [sym_ireal] = ACTIONS(4818), [sym_cfloat] = ACTIONS(4818), [sym_cdouble] = ACTIONS(4818), [sym_creal] = ACTIONS(4818), [sym_size_t] = ACTIONS(4818), [sym_ptrdiff_t] = ACTIONS(4818), [sym_string] = ACTIONS(4818), [sym_cstring] = ACTIONS(4818), [sym_dstring] = ACTIONS(4818), [sym_wstring] = ACTIONS(4818), [sym_noreturn] = ACTIONS(4818), [sym_true] = ACTIONS(4818), [sym_false] = ACTIONS(4818), [sym_null] = ACTIONS(4818), [sym_super] = ACTIONS(4818), [sym_this] = ACTIONS(4818), [sym_assert] = ACTIONS(4818), [sym_auto] = ACTIONS(4818), [sym_cast] = ACTIONS(4818), [sym_catch] = ACTIONS(4818), [sym_const] = ACTIONS(4818), [sym_delegate] = ACTIONS(4818), [sym_delete] = ACTIONS(4818), [sym_do] = ACTIONS(4818), [sym_else] = ACTIONS(4818), [sym_finally] = ACTIONS(4818), [sym_function] = ACTIONS(4818), [sym_immutable] = ACTIONS(4818), [sym_import] = ACTIONS(4818), [sym_in] = ACTIONS(4818), [sym_inout] = ACTIONS(4818), [sym_is] = ACTIONS(4818), [sym_mixin] = ACTIONS(4818), [sym_new] = ACTIONS(4818), [sym_out] = ACTIONS(4818), [sym_ref] = ACTIONS(4818), [sym_shared] = ACTIONS(4818), [sym_throw] = ACTIONS(4818), [sym_typeid] = ACTIONS(4818), [sym_typeof] = ACTIONS(4818), [sym_traits] = ACTIONS(4818), [sym_vector] = ACTIONS(4818), [sym_void] = ACTIONS(4818), [anon_sym_BQUOTE] = ACTIONS(4820), [anon_sym_r_DQUOTE] = ACTIONS(4820), [anon_sym_x_DQUOTE] = ACTIONS(4820), [anon_sym_DQUOTE] = ACTIONS(4820), [anon_sym_i_BQUOTE] = ACTIONS(4820), [anon_sym_i_DQUOTE] = ACTIONS(4820), [anon_sym_iq_LBRACE] = ACTIONS(4820), [aux_sym_char_literal_token1] = ACTIONS(4820), [anon_sym_SQUOTE] = ACTIONS(4818), [anon_sym___DATE__] = ACTIONS(4818), [anon_sym___FILE__] = ACTIONS(4818), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4818), [anon_sym___FUNCTION__] = ACTIONS(4818), [anon_sym___LINE__] = ACTIONS(4818), [anon_sym___MODULE__] = ACTIONS(4818), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4818), [anon_sym___TIME__] = ACTIONS(4818), [anon_sym___TIMESTAMP__] = ACTIONS(4818), [anon_sym___VENDOR__] = ACTIONS(4818), [anon_sym___VERSION__] = ACTIONS(4818), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4820), [sym_float_literal] = ACTIONS(4820), [sym__string] = ACTIONS(4820), }, [2214] = { [sym_identifier] = ACTIONS(4538), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4540), [anon_sym_LBRACE] = ACTIONS(4540), [anon_sym_DOT] = ACTIONS(4540), [anon_sym_AMP] = ACTIONS(4540), [anon_sym_DASH] = ACTIONS(4538), [anon_sym_DASH_DASH] = ACTIONS(4540), [anon_sym_PLUS] = ACTIONS(4538), [anon_sym_PLUS_PLUS] = ACTIONS(4540), [anon_sym_BANG] = ACTIONS(4540), [anon_sym_LPAREN] = ACTIONS(4540), [anon_sym_RPAREN] = ACTIONS(4540), [anon_sym_LBRACK] = ACTIONS(4540), [anon_sym_SEMI] = ACTIONS(4540), [anon_sym_DOLLAR] = ACTIONS(4540), [anon_sym_STAR] = ACTIONS(4540), [anon_sym_TILDE] = ACTIONS(4540), [sym_bool] = ACTIONS(4538), [sym_byte] = ACTIONS(4538), [sym_ubyte] = ACTIONS(4538), [sym_char] = ACTIONS(4538), [sym_short] = ACTIONS(4538), [sym_ushort] = ACTIONS(4538), [sym_int] = ACTIONS(4538), [sym_uint] = ACTIONS(4538), [sym_long] = ACTIONS(4538), [sym_ulong] = ACTIONS(4538), [sym_cent] = ACTIONS(4538), [sym_ucent] = ACTIONS(4538), [sym_wchar] = ACTIONS(4538), [sym_dchar] = ACTIONS(4538), [sym_float] = ACTIONS(4538), [sym_double] = ACTIONS(4538), [sym_real] = ACTIONS(4538), [sym_ifloat] = ACTIONS(4538), [sym_idouble] = ACTIONS(4538), [sym_ireal] = ACTIONS(4538), [sym_cfloat] = ACTIONS(4538), [sym_cdouble] = ACTIONS(4538), [sym_creal] = ACTIONS(4538), [sym_size_t] = ACTIONS(4538), [sym_ptrdiff_t] = ACTIONS(4538), [sym_string] = ACTIONS(4538), [sym_cstring] = ACTIONS(4538), [sym_dstring] = ACTIONS(4538), [sym_wstring] = ACTIONS(4538), [sym_noreturn] = ACTIONS(4538), [sym_true] = ACTIONS(4538), [sym_false] = ACTIONS(4538), [sym_null] = ACTIONS(4538), [sym_super] = ACTIONS(4538), [sym_this] = ACTIONS(4538), [sym_assert] = ACTIONS(4538), [sym_auto] = ACTIONS(4538), [sym_cast] = ACTIONS(4538), [sym_catch] = ACTIONS(4538), [sym_const] = ACTIONS(4538), [sym_delegate] = ACTIONS(4538), [sym_delete] = ACTIONS(4538), [sym_do] = ACTIONS(4538), [sym_else] = ACTIONS(4538), [sym_finally] = ACTIONS(4538), [sym_function] = ACTIONS(4538), [sym_immutable] = ACTIONS(4538), [sym_import] = ACTIONS(4538), [sym_in] = ACTIONS(4538), [sym_inout] = ACTIONS(4538), [sym_is] = ACTIONS(4538), [sym_mixin] = ACTIONS(4538), [sym_new] = ACTIONS(4538), [sym_out] = ACTIONS(4538), [sym_ref] = ACTIONS(4538), [sym_shared] = ACTIONS(4538), [sym_throw] = ACTIONS(4538), [sym_typeid] = ACTIONS(4538), [sym_typeof] = ACTIONS(4538), [sym_traits] = ACTIONS(4538), [sym_vector] = ACTIONS(4538), [sym_void] = ACTIONS(4538), [anon_sym_BQUOTE] = ACTIONS(4540), [anon_sym_r_DQUOTE] = ACTIONS(4540), [anon_sym_x_DQUOTE] = ACTIONS(4540), [anon_sym_DQUOTE] = ACTIONS(4540), [anon_sym_i_BQUOTE] = ACTIONS(4540), [anon_sym_i_DQUOTE] = ACTIONS(4540), [anon_sym_iq_LBRACE] = ACTIONS(4540), [aux_sym_char_literal_token1] = ACTIONS(4540), [anon_sym_SQUOTE] = ACTIONS(4538), [anon_sym___DATE__] = ACTIONS(4538), [anon_sym___FILE__] = ACTIONS(4538), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4538), [anon_sym___FUNCTION__] = ACTIONS(4538), [anon_sym___LINE__] = ACTIONS(4538), [anon_sym___MODULE__] = ACTIONS(4538), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4538), [anon_sym___TIME__] = ACTIONS(4538), [anon_sym___TIMESTAMP__] = ACTIONS(4538), [anon_sym___VENDOR__] = ACTIONS(4538), [anon_sym___VERSION__] = ACTIONS(4538), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4540), [sym_float_literal] = ACTIONS(4540), [sym__string] = ACTIONS(4540), }, [2215] = { [sym_identifier] = ACTIONS(4546), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4548), [anon_sym_LBRACE] = ACTIONS(4548), [anon_sym_DOT] = ACTIONS(4548), [anon_sym_AMP] = ACTIONS(4548), [anon_sym_DASH] = ACTIONS(4546), [anon_sym_DASH_DASH] = ACTIONS(4548), [anon_sym_PLUS] = ACTIONS(4546), [anon_sym_PLUS_PLUS] = ACTIONS(4548), [anon_sym_BANG] = ACTIONS(4548), [anon_sym_LPAREN] = ACTIONS(4548), [anon_sym_RPAREN] = ACTIONS(4548), [anon_sym_LBRACK] = ACTIONS(4548), [anon_sym_SEMI] = ACTIONS(4548), [anon_sym_DOLLAR] = ACTIONS(4548), [anon_sym_STAR] = ACTIONS(4548), [anon_sym_TILDE] = ACTIONS(4548), [sym_bool] = ACTIONS(4546), [sym_byte] = ACTIONS(4546), [sym_ubyte] = ACTIONS(4546), [sym_char] = ACTIONS(4546), [sym_short] = ACTIONS(4546), [sym_ushort] = ACTIONS(4546), [sym_int] = ACTIONS(4546), [sym_uint] = ACTIONS(4546), [sym_long] = ACTIONS(4546), [sym_ulong] = ACTIONS(4546), [sym_cent] = ACTIONS(4546), [sym_ucent] = ACTIONS(4546), [sym_wchar] = ACTIONS(4546), [sym_dchar] = ACTIONS(4546), [sym_float] = ACTIONS(4546), [sym_double] = ACTIONS(4546), [sym_real] = ACTIONS(4546), [sym_ifloat] = ACTIONS(4546), [sym_idouble] = ACTIONS(4546), [sym_ireal] = ACTIONS(4546), [sym_cfloat] = ACTIONS(4546), [sym_cdouble] = ACTIONS(4546), [sym_creal] = ACTIONS(4546), [sym_size_t] = ACTIONS(4546), [sym_ptrdiff_t] = ACTIONS(4546), [sym_string] = ACTIONS(4546), [sym_cstring] = ACTIONS(4546), [sym_dstring] = ACTIONS(4546), [sym_wstring] = ACTIONS(4546), [sym_noreturn] = ACTIONS(4546), [sym_true] = ACTIONS(4546), [sym_false] = ACTIONS(4546), [sym_null] = ACTIONS(4546), [sym_super] = ACTIONS(4546), [sym_this] = ACTIONS(4546), [sym_assert] = ACTIONS(4546), [sym_auto] = ACTIONS(4546), [sym_cast] = ACTIONS(4546), [sym_catch] = ACTIONS(4546), [sym_const] = ACTIONS(4546), [sym_delegate] = ACTIONS(4546), [sym_delete] = ACTIONS(4546), [sym_do] = ACTIONS(4546), [sym_else] = ACTIONS(4546), [sym_finally] = ACTIONS(4546), [sym_function] = ACTIONS(4546), [sym_immutable] = ACTIONS(4546), [sym_import] = ACTIONS(4546), [sym_in] = ACTIONS(4546), [sym_inout] = ACTIONS(4546), [sym_is] = ACTIONS(4546), [sym_mixin] = ACTIONS(4546), [sym_new] = ACTIONS(4546), [sym_out] = ACTIONS(4546), [sym_ref] = ACTIONS(4546), [sym_shared] = ACTIONS(4546), [sym_throw] = ACTIONS(4546), [sym_typeid] = ACTIONS(4546), [sym_typeof] = ACTIONS(4546), [sym_traits] = ACTIONS(4546), [sym_vector] = ACTIONS(4546), [sym_void] = ACTIONS(4546), [anon_sym_BQUOTE] = ACTIONS(4548), [anon_sym_r_DQUOTE] = ACTIONS(4548), [anon_sym_x_DQUOTE] = ACTIONS(4548), [anon_sym_DQUOTE] = ACTIONS(4548), [anon_sym_i_BQUOTE] = ACTIONS(4548), [anon_sym_i_DQUOTE] = ACTIONS(4548), [anon_sym_iq_LBRACE] = ACTIONS(4548), [aux_sym_char_literal_token1] = ACTIONS(4548), [anon_sym_SQUOTE] = ACTIONS(4546), [anon_sym___DATE__] = ACTIONS(4546), [anon_sym___FILE__] = ACTIONS(4546), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4546), [anon_sym___FUNCTION__] = ACTIONS(4546), [anon_sym___LINE__] = ACTIONS(4546), [anon_sym___MODULE__] = ACTIONS(4546), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4546), [anon_sym___TIME__] = ACTIONS(4546), [anon_sym___TIMESTAMP__] = ACTIONS(4546), [anon_sym___VENDOR__] = ACTIONS(4546), [anon_sym___VERSION__] = ACTIONS(4546), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4548), [sym_float_literal] = ACTIONS(4548), [sym__string] = ACTIONS(4548), }, [2216] = { [sym_identifier] = ACTIONS(4884), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4886), [anon_sym_LBRACE] = ACTIONS(4886), [anon_sym_DOT] = ACTIONS(4886), [anon_sym_AMP] = ACTIONS(4886), [anon_sym_DASH] = ACTIONS(4884), [anon_sym_DASH_DASH] = ACTIONS(4886), [anon_sym_PLUS] = ACTIONS(4884), [anon_sym_PLUS_PLUS] = ACTIONS(4886), [anon_sym_BANG] = ACTIONS(4886), [anon_sym_LPAREN] = ACTIONS(4886), [anon_sym_RPAREN] = ACTIONS(4886), [anon_sym_LBRACK] = ACTIONS(4886), [anon_sym_SEMI] = ACTIONS(4886), [anon_sym_DOLLAR] = ACTIONS(4886), [anon_sym_STAR] = ACTIONS(4886), [anon_sym_TILDE] = ACTIONS(4886), [sym_bool] = ACTIONS(4884), [sym_byte] = ACTIONS(4884), [sym_ubyte] = ACTIONS(4884), [sym_char] = ACTIONS(4884), [sym_short] = ACTIONS(4884), [sym_ushort] = ACTIONS(4884), [sym_int] = ACTIONS(4884), [sym_uint] = ACTIONS(4884), [sym_long] = ACTIONS(4884), [sym_ulong] = ACTIONS(4884), [sym_cent] = ACTIONS(4884), [sym_ucent] = ACTIONS(4884), [sym_wchar] = ACTIONS(4884), [sym_dchar] = ACTIONS(4884), [sym_float] = ACTIONS(4884), [sym_double] = ACTIONS(4884), [sym_real] = ACTIONS(4884), [sym_ifloat] = ACTIONS(4884), [sym_idouble] = ACTIONS(4884), [sym_ireal] = ACTIONS(4884), [sym_cfloat] = ACTIONS(4884), [sym_cdouble] = ACTIONS(4884), [sym_creal] = ACTIONS(4884), [sym_size_t] = ACTIONS(4884), [sym_ptrdiff_t] = ACTIONS(4884), [sym_string] = ACTIONS(4884), [sym_cstring] = ACTIONS(4884), [sym_dstring] = ACTIONS(4884), [sym_wstring] = ACTIONS(4884), [sym_noreturn] = ACTIONS(4884), [sym_true] = ACTIONS(4884), [sym_false] = ACTIONS(4884), [sym_null] = ACTIONS(4884), [sym_super] = ACTIONS(4884), [sym_this] = ACTIONS(4884), [sym_assert] = ACTIONS(4884), [sym_auto] = ACTIONS(4884), [sym_cast] = ACTIONS(4884), [sym_catch] = ACTIONS(4884), [sym_const] = ACTIONS(4884), [sym_delegate] = ACTIONS(4884), [sym_delete] = ACTIONS(4884), [sym_do] = ACTIONS(4884), [sym_else] = ACTIONS(4884), [sym_finally] = ACTIONS(4884), [sym_function] = ACTIONS(4884), [sym_immutable] = ACTIONS(4884), [sym_import] = ACTIONS(4884), [sym_in] = ACTIONS(4884), [sym_inout] = ACTIONS(4884), [sym_is] = ACTIONS(4884), [sym_mixin] = ACTIONS(4884), [sym_new] = ACTIONS(4884), [sym_out] = ACTIONS(4884), [sym_ref] = ACTIONS(4884), [sym_shared] = ACTIONS(4884), [sym_throw] = ACTIONS(4884), [sym_typeid] = ACTIONS(4884), [sym_typeof] = ACTIONS(4884), [sym_traits] = ACTIONS(4884), [sym_vector] = ACTIONS(4884), [sym_void] = ACTIONS(4884), [anon_sym_BQUOTE] = ACTIONS(4886), [anon_sym_r_DQUOTE] = ACTIONS(4886), [anon_sym_x_DQUOTE] = ACTIONS(4886), [anon_sym_DQUOTE] = ACTIONS(4886), [anon_sym_i_BQUOTE] = ACTIONS(4886), [anon_sym_i_DQUOTE] = ACTIONS(4886), [anon_sym_iq_LBRACE] = ACTIONS(4886), [aux_sym_char_literal_token1] = ACTIONS(4886), [anon_sym_SQUOTE] = ACTIONS(4884), [anon_sym___DATE__] = ACTIONS(4884), [anon_sym___FILE__] = ACTIONS(4884), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4884), [anon_sym___FUNCTION__] = ACTIONS(4884), [anon_sym___LINE__] = ACTIONS(4884), [anon_sym___MODULE__] = ACTIONS(4884), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4884), [anon_sym___TIME__] = ACTIONS(4884), [anon_sym___TIMESTAMP__] = ACTIONS(4884), [anon_sym___VENDOR__] = ACTIONS(4884), [anon_sym___VERSION__] = ACTIONS(4884), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4886), [sym_float_literal] = ACTIONS(4886), [sym__string] = ACTIONS(4886), }, [2217] = { [sym_identifier] = ACTIONS(4562), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4564), [anon_sym_LBRACE] = ACTIONS(4564), [anon_sym_DOT] = ACTIONS(4564), [anon_sym_AMP] = ACTIONS(4564), [anon_sym_DASH] = ACTIONS(4562), [anon_sym_DASH_DASH] = ACTIONS(4564), [anon_sym_PLUS] = ACTIONS(4562), [anon_sym_PLUS_PLUS] = ACTIONS(4564), [anon_sym_BANG] = ACTIONS(4564), [anon_sym_LPAREN] = ACTIONS(4564), [anon_sym_RPAREN] = ACTIONS(4564), [anon_sym_LBRACK] = ACTIONS(4564), [anon_sym_SEMI] = ACTIONS(4564), [anon_sym_DOLLAR] = ACTIONS(4564), [anon_sym_STAR] = ACTIONS(4564), [anon_sym_TILDE] = ACTIONS(4564), [sym_bool] = ACTIONS(4562), [sym_byte] = ACTIONS(4562), [sym_ubyte] = ACTIONS(4562), [sym_char] = ACTIONS(4562), [sym_short] = ACTIONS(4562), [sym_ushort] = ACTIONS(4562), [sym_int] = ACTIONS(4562), [sym_uint] = ACTIONS(4562), [sym_long] = ACTIONS(4562), [sym_ulong] = ACTIONS(4562), [sym_cent] = ACTIONS(4562), [sym_ucent] = ACTIONS(4562), [sym_wchar] = ACTIONS(4562), [sym_dchar] = ACTIONS(4562), [sym_float] = ACTIONS(4562), [sym_double] = ACTIONS(4562), [sym_real] = ACTIONS(4562), [sym_ifloat] = ACTIONS(4562), [sym_idouble] = ACTIONS(4562), [sym_ireal] = ACTIONS(4562), [sym_cfloat] = ACTIONS(4562), [sym_cdouble] = ACTIONS(4562), [sym_creal] = ACTIONS(4562), [sym_size_t] = ACTIONS(4562), [sym_ptrdiff_t] = ACTIONS(4562), [sym_string] = ACTIONS(4562), [sym_cstring] = ACTIONS(4562), [sym_dstring] = ACTIONS(4562), [sym_wstring] = ACTIONS(4562), [sym_noreturn] = ACTIONS(4562), [sym_true] = ACTIONS(4562), [sym_false] = ACTIONS(4562), [sym_null] = ACTIONS(4562), [sym_super] = ACTIONS(4562), [sym_this] = ACTIONS(4562), [sym_assert] = ACTIONS(4562), [sym_auto] = ACTIONS(4562), [sym_cast] = ACTIONS(4562), [sym_catch] = ACTIONS(4562), [sym_const] = ACTIONS(4562), [sym_delegate] = ACTIONS(4562), [sym_delete] = ACTIONS(4562), [sym_do] = ACTIONS(4562), [sym_else] = ACTIONS(4562), [sym_finally] = ACTIONS(4562), [sym_function] = ACTIONS(4562), [sym_immutable] = ACTIONS(4562), [sym_import] = ACTIONS(4562), [sym_in] = ACTIONS(4562), [sym_inout] = ACTIONS(4562), [sym_is] = ACTIONS(4562), [sym_mixin] = ACTIONS(4562), [sym_new] = ACTIONS(4562), [sym_out] = ACTIONS(4562), [sym_ref] = ACTIONS(4562), [sym_shared] = ACTIONS(4562), [sym_throw] = ACTIONS(4562), [sym_typeid] = ACTIONS(4562), [sym_typeof] = ACTIONS(4562), [sym_traits] = ACTIONS(4562), [sym_vector] = ACTIONS(4562), [sym_void] = ACTIONS(4562), [anon_sym_BQUOTE] = ACTIONS(4564), [anon_sym_r_DQUOTE] = ACTIONS(4564), [anon_sym_x_DQUOTE] = ACTIONS(4564), [anon_sym_DQUOTE] = ACTIONS(4564), [anon_sym_i_BQUOTE] = ACTIONS(4564), [anon_sym_i_DQUOTE] = ACTIONS(4564), [anon_sym_iq_LBRACE] = ACTIONS(4564), [aux_sym_char_literal_token1] = ACTIONS(4564), [anon_sym_SQUOTE] = ACTIONS(4562), [anon_sym___DATE__] = ACTIONS(4562), [anon_sym___FILE__] = ACTIONS(4562), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4562), [anon_sym___FUNCTION__] = ACTIONS(4562), [anon_sym___LINE__] = ACTIONS(4562), [anon_sym___MODULE__] = ACTIONS(4562), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4562), [anon_sym___TIME__] = ACTIONS(4562), [anon_sym___TIMESTAMP__] = ACTIONS(4562), [anon_sym___VENDOR__] = ACTIONS(4562), [anon_sym___VERSION__] = ACTIONS(4562), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4564), [sym_float_literal] = ACTIONS(4564), [sym__string] = ACTIONS(4564), }, [2218] = { [sym_identifier] = ACTIONS(4574), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4576), [anon_sym_LBRACE] = ACTIONS(4576), [anon_sym_DOT] = ACTIONS(4576), [anon_sym_AMP] = ACTIONS(4576), [anon_sym_DASH] = ACTIONS(4574), [anon_sym_DASH_DASH] = ACTIONS(4576), [anon_sym_PLUS] = ACTIONS(4574), [anon_sym_PLUS_PLUS] = ACTIONS(4576), [anon_sym_BANG] = ACTIONS(4576), [anon_sym_LPAREN] = ACTIONS(4576), [anon_sym_RPAREN] = ACTIONS(4576), [anon_sym_LBRACK] = ACTIONS(4576), [anon_sym_SEMI] = ACTIONS(4576), [anon_sym_DOLLAR] = ACTIONS(4576), [anon_sym_STAR] = ACTIONS(4576), [anon_sym_TILDE] = ACTIONS(4576), [sym_bool] = ACTIONS(4574), [sym_byte] = ACTIONS(4574), [sym_ubyte] = ACTIONS(4574), [sym_char] = ACTIONS(4574), [sym_short] = ACTIONS(4574), [sym_ushort] = ACTIONS(4574), [sym_int] = ACTIONS(4574), [sym_uint] = ACTIONS(4574), [sym_long] = ACTIONS(4574), [sym_ulong] = ACTIONS(4574), [sym_cent] = ACTIONS(4574), [sym_ucent] = ACTIONS(4574), [sym_wchar] = ACTIONS(4574), [sym_dchar] = ACTIONS(4574), [sym_float] = ACTIONS(4574), [sym_double] = ACTIONS(4574), [sym_real] = ACTIONS(4574), [sym_ifloat] = ACTIONS(4574), [sym_idouble] = ACTIONS(4574), [sym_ireal] = ACTIONS(4574), [sym_cfloat] = ACTIONS(4574), [sym_cdouble] = ACTIONS(4574), [sym_creal] = ACTIONS(4574), [sym_size_t] = ACTIONS(4574), [sym_ptrdiff_t] = ACTIONS(4574), [sym_string] = ACTIONS(4574), [sym_cstring] = ACTIONS(4574), [sym_dstring] = ACTIONS(4574), [sym_wstring] = ACTIONS(4574), [sym_noreturn] = ACTIONS(4574), [sym_true] = ACTIONS(4574), [sym_false] = ACTIONS(4574), [sym_null] = ACTIONS(4574), [sym_super] = ACTIONS(4574), [sym_this] = ACTIONS(4574), [sym_assert] = ACTIONS(4574), [sym_auto] = ACTIONS(4574), [sym_cast] = ACTIONS(4574), [sym_catch] = ACTIONS(4574), [sym_const] = ACTIONS(4574), [sym_delegate] = ACTIONS(4574), [sym_delete] = ACTIONS(4574), [sym_do] = ACTIONS(4574), [sym_else] = ACTIONS(4574), [sym_finally] = ACTIONS(4574), [sym_function] = ACTIONS(4574), [sym_immutable] = ACTIONS(4574), [sym_import] = ACTIONS(4574), [sym_in] = ACTIONS(4574), [sym_inout] = ACTIONS(4574), [sym_is] = ACTIONS(4574), [sym_mixin] = ACTIONS(4574), [sym_new] = ACTIONS(4574), [sym_out] = ACTIONS(4574), [sym_ref] = ACTIONS(4574), [sym_shared] = ACTIONS(4574), [sym_throw] = ACTIONS(4574), [sym_typeid] = ACTIONS(4574), [sym_typeof] = ACTIONS(4574), [sym_traits] = ACTIONS(4574), [sym_vector] = ACTIONS(4574), [sym_void] = ACTIONS(4574), [anon_sym_BQUOTE] = ACTIONS(4576), [anon_sym_r_DQUOTE] = ACTIONS(4576), [anon_sym_x_DQUOTE] = ACTIONS(4576), [anon_sym_DQUOTE] = ACTIONS(4576), [anon_sym_i_BQUOTE] = ACTIONS(4576), [anon_sym_i_DQUOTE] = ACTIONS(4576), [anon_sym_iq_LBRACE] = ACTIONS(4576), [aux_sym_char_literal_token1] = ACTIONS(4576), [anon_sym_SQUOTE] = ACTIONS(4574), [anon_sym___DATE__] = ACTIONS(4574), [anon_sym___FILE__] = ACTIONS(4574), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4574), [anon_sym___FUNCTION__] = ACTIONS(4574), [anon_sym___LINE__] = ACTIONS(4574), [anon_sym___MODULE__] = ACTIONS(4574), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4574), [anon_sym___TIME__] = ACTIONS(4574), [anon_sym___TIMESTAMP__] = ACTIONS(4574), [anon_sym___VENDOR__] = ACTIONS(4574), [anon_sym___VERSION__] = ACTIONS(4574), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4576), [sym_float_literal] = ACTIONS(4576), [sym__string] = ACTIONS(4576), }, [2219] = { [sym_identifier] = ACTIONS(4908), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4910), [anon_sym_LBRACE] = ACTIONS(4910), [anon_sym_DOT] = ACTIONS(4910), [anon_sym_AMP] = ACTIONS(4910), [anon_sym_DASH] = ACTIONS(4908), [anon_sym_DASH_DASH] = ACTIONS(4910), [anon_sym_PLUS] = ACTIONS(4908), [anon_sym_PLUS_PLUS] = ACTIONS(4910), [anon_sym_BANG] = ACTIONS(4910), [anon_sym_LPAREN] = ACTIONS(4910), [anon_sym_RPAREN] = ACTIONS(4910), [anon_sym_LBRACK] = ACTIONS(4910), [anon_sym_SEMI] = ACTIONS(4910), [anon_sym_DOLLAR] = ACTIONS(4910), [anon_sym_STAR] = ACTIONS(4910), [anon_sym_TILDE] = ACTIONS(4910), [sym_bool] = ACTIONS(4908), [sym_byte] = ACTIONS(4908), [sym_ubyte] = ACTIONS(4908), [sym_char] = ACTIONS(4908), [sym_short] = ACTIONS(4908), [sym_ushort] = ACTIONS(4908), [sym_int] = ACTIONS(4908), [sym_uint] = ACTIONS(4908), [sym_long] = ACTIONS(4908), [sym_ulong] = ACTIONS(4908), [sym_cent] = ACTIONS(4908), [sym_ucent] = ACTIONS(4908), [sym_wchar] = ACTIONS(4908), [sym_dchar] = ACTIONS(4908), [sym_float] = ACTIONS(4908), [sym_double] = ACTIONS(4908), [sym_real] = ACTIONS(4908), [sym_ifloat] = ACTIONS(4908), [sym_idouble] = ACTIONS(4908), [sym_ireal] = ACTIONS(4908), [sym_cfloat] = ACTIONS(4908), [sym_cdouble] = ACTIONS(4908), [sym_creal] = ACTIONS(4908), [sym_size_t] = ACTIONS(4908), [sym_ptrdiff_t] = ACTIONS(4908), [sym_string] = ACTIONS(4908), [sym_cstring] = ACTIONS(4908), [sym_dstring] = ACTIONS(4908), [sym_wstring] = ACTIONS(4908), [sym_noreturn] = ACTIONS(4908), [sym_true] = ACTIONS(4908), [sym_false] = ACTIONS(4908), [sym_null] = ACTIONS(4908), [sym_super] = ACTIONS(4908), [sym_this] = ACTIONS(4908), [sym_assert] = ACTIONS(4908), [sym_auto] = ACTIONS(4908), [sym_cast] = ACTIONS(4908), [sym_catch] = ACTIONS(4908), [sym_const] = ACTIONS(4908), [sym_delegate] = ACTIONS(4908), [sym_delete] = ACTIONS(4908), [sym_do] = ACTIONS(4908), [sym_else] = ACTIONS(4908), [sym_finally] = ACTIONS(4908), [sym_function] = ACTIONS(4908), [sym_immutable] = ACTIONS(4908), [sym_import] = ACTIONS(4908), [sym_in] = ACTIONS(4908), [sym_inout] = ACTIONS(4908), [sym_is] = ACTIONS(4908), [sym_mixin] = ACTIONS(4908), [sym_new] = ACTIONS(4908), [sym_out] = ACTIONS(4908), [sym_ref] = ACTIONS(4908), [sym_shared] = ACTIONS(4908), [sym_throw] = ACTIONS(4908), [sym_typeid] = ACTIONS(4908), [sym_typeof] = ACTIONS(4908), [sym_traits] = ACTIONS(4908), [sym_vector] = ACTIONS(4908), [sym_void] = ACTIONS(4908), [anon_sym_BQUOTE] = ACTIONS(4910), [anon_sym_r_DQUOTE] = ACTIONS(4910), [anon_sym_x_DQUOTE] = ACTIONS(4910), [anon_sym_DQUOTE] = ACTIONS(4910), [anon_sym_i_BQUOTE] = ACTIONS(4910), [anon_sym_i_DQUOTE] = ACTIONS(4910), [anon_sym_iq_LBRACE] = ACTIONS(4910), [aux_sym_char_literal_token1] = ACTIONS(4910), [anon_sym_SQUOTE] = ACTIONS(4908), [anon_sym___DATE__] = ACTIONS(4908), [anon_sym___FILE__] = ACTIONS(4908), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4908), [anon_sym___FUNCTION__] = ACTIONS(4908), [anon_sym___LINE__] = ACTIONS(4908), [anon_sym___MODULE__] = ACTIONS(4908), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4908), [anon_sym___TIME__] = ACTIONS(4908), [anon_sym___TIMESTAMP__] = ACTIONS(4908), [anon_sym___VENDOR__] = ACTIONS(4908), [anon_sym___VERSION__] = ACTIONS(4908), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4910), [sym_float_literal] = ACTIONS(4910), [sym__string] = ACTIONS(4910), }, [2220] = { [sym_identifier] = ACTIONS(4922), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4924), [anon_sym_LBRACE] = ACTIONS(4924), [anon_sym_DOT] = ACTIONS(4924), [anon_sym_AMP] = ACTIONS(4924), [anon_sym_DASH] = ACTIONS(4922), [anon_sym_DASH_DASH] = ACTIONS(4924), [anon_sym_PLUS] = ACTIONS(4922), [anon_sym_PLUS_PLUS] = ACTIONS(4924), [anon_sym_BANG] = ACTIONS(4924), [anon_sym_LPAREN] = ACTIONS(4924), [anon_sym_RPAREN] = ACTIONS(4924), [anon_sym_LBRACK] = ACTIONS(4924), [anon_sym_SEMI] = ACTIONS(4924), [anon_sym_DOLLAR] = ACTIONS(4924), [anon_sym_STAR] = ACTIONS(4924), [anon_sym_TILDE] = ACTIONS(4924), [sym_bool] = ACTIONS(4922), [sym_byte] = ACTIONS(4922), [sym_ubyte] = ACTIONS(4922), [sym_char] = ACTIONS(4922), [sym_short] = ACTIONS(4922), [sym_ushort] = ACTIONS(4922), [sym_int] = ACTIONS(4922), [sym_uint] = ACTIONS(4922), [sym_long] = ACTIONS(4922), [sym_ulong] = ACTIONS(4922), [sym_cent] = ACTIONS(4922), [sym_ucent] = ACTIONS(4922), [sym_wchar] = ACTIONS(4922), [sym_dchar] = ACTIONS(4922), [sym_float] = ACTIONS(4922), [sym_double] = ACTIONS(4922), [sym_real] = ACTIONS(4922), [sym_ifloat] = ACTIONS(4922), [sym_idouble] = ACTIONS(4922), [sym_ireal] = ACTIONS(4922), [sym_cfloat] = ACTIONS(4922), [sym_cdouble] = ACTIONS(4922), [sym_creal] = ACTIONS(4922), [sym_size_t] = ACTIONS(4922), [sym_ptrdiff_t] = ACTIONS(4922), [sym_string] = ACTIONS(4922), [sym_cstring] = ACTIONS(4922), [sym_dstring] = ACTIONS(4922), [sym_wstring] = ACTIONS(4922), [sym_noreturn] = ACTIONS(4922), [sym_true] = ACTIONS(4922), [sym_false] = ACTIONS(4922), [sym_null] = ACTIONS(4922), [sym_super] = ACTIONS(4922), [sym_this] = ACTIONS(4922), [sym_assert] = ACTIONS(4922), [sym_auto] = ACTIONS(4922), [sym_cast] = ACTIONS(4922), [sym_catch] = ACTIONS(4922), [sym_const] = ACTIONS(4922), [sym_delegate] = ACTIONS(4922), [sym_delete] = ACTIONS(4922), [sym_do] = ACTIONS(4922), [sym_else] = ACTIONS(4922), [sym_finally] = ACTIONS(4922), [sym_function] = ACTIONS(4922), [sym_immutable] = ACTIONS(4922), [sym_import] = ACTIONS(4922), [sym_in] = ACTIONS(4922), [sym_inout] = ACTIONS(4922), [sym_is] = ACTIONS(4922), [sym_mixin] = ACTIONS(4922), [sym_new] = ACTIONS(4922), [sym_out] = ACTIONS(4922), [sym_ref] = ACTIONS(4922), [sym_shared] = ACTIONS(4922), [sym_throw] = ACTIONS(4922), [sym_typeid] = ACTIONS(4922), [sym_typeof] = ACTIONS(4922), [sym_traits] = ACTIONS(4922), [sym_vector] = ACTIONS(4922), [sym_void] = ACTIONS(4922), [anon_sym_BQUOTE] = ACTIONS(4924), [anon_sym_r_DQUOTE] = ACTIONS(4924), [anon_sym_x_DQUOTE] = ACTIONS(4924), [anon_sym_DQUOTE] = ACTIONS(4924), [anon_sym_i_BQUOTE] = ACTIONS(4924), [anon_sym_i_DQUOTE] = ACTIONS(4924), [anon_sym_iq_LBRACE] = ACTIONS(4924), [aux_sym_char_literal_token1] = ACTIONS(4924), [anon_sym_SQUOTE] = ACTIONS(4922), [anon_sym___DATE__] = ACTIONS(4922), [anon_sym___FILE__] = ACTIONS(4922), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4922), [anon_sym___FUNCTION__] = ACTIONS(4922), [anon_sym___LINE__] = ACTIONS(4922), [anon_sym___MODULE__] = ACTIONS(4922), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4922), [anon_sym___TIME__] = ACTIONS(4922), [anon_sym___TIMESTAMP__] = ACTIONS(4922), [anon_sym___VENDOR__] = ACTIONS(4922), [anon_sym___VERSION__] = ACTIONS(4922), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4924), [sym_float_literal] = ACTIONS(4924), [sym__string] = ACTIONS(4924), }, [2221] = { [sym_identifier] = ACTIONS(5004), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5006), [anon_sym_LBRACE] = ACTIONS(5006), [anon_sym_DOT] = ACTIONS(5006), [anon_sym_AMP] = ACTIONS(5006), [anon_sym_DASH] = ACTIONS(5004), [anon_sym_DASH_DASH] = ACTIONS(5006), [anon_sym_PLUS] = ACTIONS(5004), [anon_sym_PLUS_PLUS] = ACTIONS(5006), [anon_sym_BANG] = ACTIONS(5006), [anon_sym_LPAREN] = ACTIONS(5006), [anon_sym_RPAREN] = ACTIONS(5006), [anon_sym_LBRACK] = ACTIONS(5006), [anon_sym_SEMI] = ACTIONS(5006), [anon_sym_DOLLAR] = ACTIONS(5006), [anon_sym_STAR] = ACTIONS(5006), [anon_sym_TILDE] = ACTIONS(5006), [sym_bool] = ACTIONS(5004), [sym_byte] = ACTIONS(5004), [sym_ubyte] = ACTIONS(5004), [sym_char] = ACTIONS(5004), [sym_short] = ACTIONS(5004), [sym_ushort] = ACTIONS(5004), [sym_int] = ACTIONS(5004), [sym_uint] = ACTIONS(5004), [sym_long] = ACTIONS(5004), [sym_ulong] = ACTIONS(5004), [sym_cent] = ACTIONS(5004), [sym_ucent] = ACTIONS(5004), [sym_wchar] = ACTIONS(5004), [sym_dchar] = ACTIONS(5004), [sym_float] = ACTIONS(5004), [sym_double] = ACTIONS(5004), [sym_real] = ACTIONS(5004), [sym_ifloat] = ACTIONS(5004), [sym_idouble] = ACTIONS(5004), [sym_ireal] = ACTIONS(5004), [sym_cfloat] = ACTIONS(5004), [sym_cdouble] = ACTIONS(5004), [sym_creal] = ACTIONS(5004), [sym_size_t] = ACTIONS(5004), [sym_ptrdiff_t] = ACTIONS(5004), [sym_string] = ACTIONS(5004), [sym_cstring] = ACTIONS(5004), [sym_dstring] = ACTIONS(5004), [sym_wstring] = ACTIONS(5004), [sym_noreturn] = ACTIONS(5004), [sym_true] = ACTIONS(5004), [sym_false] = ACTIONS(5004), [sym_null] = ACTIONS(5004), [sym_super] = ACTIONS(5004), [sym_this] = ACTIONS(5004), [sym_assert] = ACTIONS(5004), [sym_auto] = ACTIONS(5004), [sym_cast] = ACTIONS(5004), [sym_catch] = ACTIONS(5004), [sym_const] = ACTIONS(5004), [sym_delegate] = ACTIONS(5004), [sym_delete] = ACTIONS(5004), [sym_do] = ACTIONS(5004), [sym_else] = ACTIONS(5004), [sym_finally] = ACTIONS(5004), [sym_function] = ACTIONS(5004), [sym_immutable] = ACTIONS(5004), [sym_import] = ACTIONS(5004), [sym_in] = ACTIONS(5004), [sym_inout] = ACTIONS(5004), [sym_is] = ACTIONS(5004), [sym_mixin] = ACTIONS(5004), [sym_new] = ACTIONS(5004), [sym_out] = ACTIONS(5004), [sym_ref] = ACTIONS(5004), [sym_shared] = ACTIONS(5004), [sym_throw] = ACTIONS(5004), [sym_typeid] = ACTIONS(5004), [sym_typeof] = ACTIONS(5004), [sym_traits] = ACTIONS(5004), [sym_vector] = ACTIONS(5004), [sym_void] = ACTIONS(5004), [anon_sym_BQUOTE] = ACTIONS(5006), [anon_sym_r_DQUOTE] = ACTIONS(5006), [anon_sym_x_DQUOTE] = ACTIONS(5006), [anon_sym_DQUOTE] = ACTIONS(5006), [anon_sym_i_BQUOTE] = ACTIONS(5006), [anon_sym_i_DQUOTE] = ACTIONS(5006), [anon_sym_iq_LBRACE] = ACTIONS(5006), [aux_sym_char_literal_token1] = ACTIONS(5006), [anon_sym_SQUOTE] = ACTIONS(5004), [anon_sym___DATE__] = ACTIONS(5004), [anon_sym___FILE__] = ACTIONS(5004), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5004), [anon_sym___FUNCTION__] = ACTIONS(5004), [anon_sym___LINE__] = ACTIONS(5004), [anon_sym___MODULE__] = ACTIONS(5004), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5004), [anon_sym___TIME__] = ACTIONS(5004), [anon_sym___TIMESTAMP__] = ACTIONS(5004), [anon_sym___VENDOR__] = ACTIONS(5004), [anon_sym___VERSION__] = ACTIONS(5004), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5006), [sym_float_literal] = ACTIONS(5006), [sym__string] = ACTIONS(5006), }, [2222] = { [sym_identifier] = ACTIONS(4940), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4942), [anon_sym_LBRACE] = ACTIONS(4942), [anon_sym_DOT] = ACTIONS(4942), [anon_sym_AMP] = ACTIONS(4942), [anon_sym_DASH] = ACTIONS(4940), [anon_sym_DASH_DASH] = ACTIONS(4942), [anon_sym_PLUS] = ACTIONS(4940), [anon_sym_PLUS_PLUS] = ACTIONS(4942), [anon_sym_BANG] = ACTIONS(4942), [anon_sym_LPAREN] = ACTIONS(4942), [anon_sym_RPAREN] = ACTIONS(4942), [anon_sym_LBRACK] = ACTIONS(4942), [anon_sym_SEMI] = ACTIONS(4942), [anon_sym_DOLLAR] = ACTIONS(4942), [anon_sym_STAR] = ACTIONS(4942), [anon_sym_TILDE] = ACTIONS(4942), [sym_bool] = ACTIONS(4940), [sym_byte] = ACTIONS(4940), [sym_ubyte] = ACTIONS(4940), [sym_char] = ACTIONS(4940), [sym_short] = ACTIONS(4940), [sym_ushort] = ACTIONS(4940), [sym_int] = ACTIONS(4940), [sym_uint] = ACTIONS(4940), [sym_long] = ACTIONS(4940), [sym_ulong] = ACTIONS(4940), [sym_cent] = ACTIONS(4940), [sym_ucent] = ACTIONS(4940), [sym_wchar] = ACTIONS(4940), [sym_dchar] = ACTIONS(4940), [sym_float] = ACTIONS(4940), [sym_double] = ACTIONS(4940), [sym_real] = ACTIONS(4940), [sym_ifloat] = ACTIONS(4940), [sym_idouble] = ACTIONS(4940), [sym_ireal] = ACTIONS(4940), [sym_cfloat] = ACTIONS(4940), [sym_cdouble] = ACTIONS(4940), [sym_creal] = ACTIONS(4940), [sym_size_t] = ACTIONS(4940), [sym_ptrdiff_t] = ACTIONS(4940), [sym_string] = ACTIONS(4940), [sym_cstring] = ACTIONS(4940), [sym_dstring] = ACTIONS(4940), [sym_wstring] = ACTIONS(4940), [sym_noreturn] = ACTIONS(4940), [sym_true] = ACTIONS(4940), [sym_false] = ACTIONS(4940), [sym_null] = ACTIONS(4940), [sym_super] = ACTIONS(4940), [sym_this] = ACTIONS(4940), [sym_assert] = ACTIONS(4940), [sym_auto] = ACTIONS(4940), [sym_cast] = ACTIONS(4940), [sym_catch] = ACTIONS(4940), [sym_const] = ACTIONS(4940), [sym_delegate] = ACTIONS(4940), [sym_delete] = ACTIONS(4940), [sym_do] = ACTIONS(4940), [sym_else] = ACTIONS(4940), [sym_finally] = ACTIONS(4940), [sym_function] = ACTIONS(4940), [sym_immutable] = ACTIONS(4940), [sym_import] = ACTIONS(4940), [sym_in] = ACTIONS(4940), [sym_inout] = ACTIONS(4940), [sym_is] = ACTIONS(4940), [sym_mixin] = ACTIONS(4940), [sym_new] = ACTIONS(4940), [sym_out] = ACTIONS(4940), [sym_ref] = ACTIONS(4940), [sym_shared] = ACTIONS(4940), [sym_throw] = ACTIONS(4940), [sym_typeid] = ACTIONS(4940), [sym_typeof] = ACTIONS(4940), [sym_traits] = ACTIONS(4940), [sym_vector] = ACTIONS(4940), [sym_void] = ACTIONS(4940), [anon_sym_BQUOTE] = ACTIONS(4942), [anon_sym_r_DQUOTE] = ACTIONS(4942), [anon_sym_x_DQUOTE] = ACTIONS(4942), [anon_sym_DQUOTE] = ACTIONS(4942), [anon_sym_i_BQUOTE] = ACTIONS(4942), [anon_sym_i_DQUOTE] = ACTIONS(4942), [anon_sym_iq_LBRACE] = ACTIONS(4942), [aux_sym_char_literal_token1] = ACTIONS(4942), [anon_sym_SQUOTE] = ACTIONS(4940), [anon_sym___DATE__] = ACTIONS(4940), [anon_sym___FILE__] = ACTIONS(4940), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4940), [anon_sym___FUNCTION__] = ACTIONS(4940), [anon_sym___LINE__] = ACTIONS(4940), [anon_sym___MODULE__] = ACTIONS(4940), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4940), [anon_sym___TIME__] = ACTIONS(4940), [anon_sym___TIMESTAMP__] = ACTIONS(4940), [anon_sym___VENDOR__] = ACTIONS(4940), [anon_sym___VERSION__] = ACTIONS(4940), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4942), [sym_float_literal] = ACTIONS(4942), [sym__string] = ACTIONS(4942), }, [2223] = { [sym_identifier] = ACTIONS(5028), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5030), [anon_sym_LBRACE] = ACTIONS(5030), [anon_sym_DOT] = ACTIONS(5030), [anon_sym_AMP] = ACTIONS(5030), [anon_sym_DASH] = ACTIONS(5028), [anon_sym_DASH_DASH] = ACTIONS(5030), [anon_sym_PLUS] = ACTIONS(5028), [anon_sym_PLUS_PLUS] = ACTIONS(5030), [anon_sym_BANG] = ACTIONS(5030), [anon_sym_LPAREN] = ACTIONS(5030), [anon_sym_RPAREN] = ACTIONS(5030), [anon_sym_LBRACK] = ACTIONS(5030), [anon_sym_SEMI] = ACTIONS(5030), [anon_sym_DOLLAR] = ACTIONS(5030), [anon_sym_STAR] = ACTIONS(5030), [anon_sym_TILDE] = ACTIONS(5030), [sym_bool] = ACTIONS(5028), [sym_byte] = ACTIONS(5028), [sym_ubyte] = ACTIONS(5028), [sym_char] = ACTIONS(5028), [sym_short] = ACTIONS(5028), [sym_ushort] = ACTIONS(5028), [sym_int] = ACTIONS(5028), [sym_uint] = ACTIONS(5028), [sym_long] = ACTIONS(5028), [sym_ulong] = ACTIONS(5028), [sym_cent] = ACTIONS(5028), [sym_ucent] = ACTIONS(5028), [sym_wchar] = ACTIONS(5028), [sym_dchar] = ACTIONS(5028), [sym_float] = ACTIONS(5028), [sym_double] = ACTIONS(5028), [sym_real] = ACTIONS(5028), [sym_ifloat] = ACTIONS(5028), [sym_idouble] = ACTIONS(5028), [sym_ireal] = ACTIONS(5028), [sym_cfloat] = ACTIONS(5028), [sym_cdouble] = ACTIONS(5028), [sym_creal] = ACTIONS(5028), [sym_size_t] = ACTIONS(5028), [sym_ptrdiff_t] = ACTIONS(5028), [sym_string] = ACTIONS(5028), [sym_cstring] = ACTIONS(5028), [sym_dstring] = ACTIONS(5028), [sym_wstring] = ACTIONS(5028), [sym_noreturn] = ACTIONS(5028), [sym_true] = ACTIONS(5028), [sym_false] = ACTIONS(5028), [sym_null] = ACTIONS(5028), [sym_super] = ACTIONS(5028), [sym_this] = ACTIONS(5028), [sym_assert] = ACTIONS(5028), [sym_auto] = ACTIONS(5028), [sym_cast] = ACTIONS(5028), [sym_catch] = ACTIONS(5028), [sym_const] = ACTIONS(5028), [sym_delegate] = ACTIONS(5028), [sym_delete] = ACTIONS(5028), [sym_do] = ACTIONS(5028), [sym_else] = ACTIONS(5028), [sym_finally] = ACTIONS(5028), [sym_function] = ACTIONS(5028), [sym_immutable] = ACTIONS(5028), [sym_import] = ACTIONS(5028), [sym_in] = ACTIONS(5028), [sym_inout] = ACTIONS(5028), [sym_is] = ACTIONS(5028), [sym_mixin] = ACTIONS(5028), [sym_new] = ACTIONS(5028), [sym_out] = ACTIONS(5028), [sym_ref] = ACTIONS(5028), [sym_shared] = ACTIONS(5028), [sym_throw] = ACTIONS(5028), [sym_typeid] = ACTIONS(5028), [sym_typeof] = ACTIONS(5028), [sym_traits] = ACTIONS(5028), [sym_vector] = ACTIONS(5028), [sym_void] = ACTIONS(5028), [anon_sym_BQUOTE] = ACTIONS(5030), [anon_sym_r_DQUOTE] = ACTIONS(5030), [anon_sym_x_DQUOTE] = ACTIONS(5030), [anon_sym_DQUOTE] = ACTIONS(5030), [anon_sym_i_BQUOTE] = ACTIONS(5030), [anon_sym_i_DQUOTE] = ACTIONS(5030), [anon_sym_iq_LBRACE] = ACTIONS(5030), [aux_sym_char_literal_token1] = ACTIONS(5030), [anon_sym_SQUOTE] = ACTIONS(5028), [anon_sym___DATE__] = ACTIONS(5028), [anon_sym___FILE__] = ACTIONS(5028), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5028), [anon_sym___FUNCTION__] = ACTIONS(5028), [anon_sym___LINE__] = ACTIONS(5028), [anon_sym___MODULE__] = ACTIONS(5028), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5028), [anon_sym___TIME__] = ACTIONS(5028), [anon_sym___TIMESTAMP__] = ACTIONS(5028), [anon_sym___VENDOR__] = ACTIONS(5028), [anon_sym___VERSION__] = ACTIONS(5028), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5030), [sym_float_literal] = ACTIONS(5030), [sym__string] = ACTIONS(5030), }, [2224] = { [sym_identifier] = ACTIONS(4948), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4950), [anon_sym_LBRACE] = ACTIONS(4950), [anon_sym_DOT] = ACTIONS(4950), [anon_sym_AMP] = ACTIONS(4950), [anon_sym_DASH] = ACTIONS(4948), [anon_sym_DASH_DASH] = ACTIONS(4950), [anon_sym_PLUS] = ACTIONS(4948), [anon_sym_PLUS_PLUS] = ACTIONS(4950), [anon_sym_BANG] = ACTIONS(4950), [anon_sym_LPAREN] = ACTIONS(4950), [anon_sym_RPAREN] = ACTIONS(4950), [anon_sym_LBRACK] = ACTIONS(4950), [anon_sym_SEMI] = ACTIONS(4950), [anon_sym_DOLLAR] = ACTIONS(4950), [anon_sym_STAR] = ACTIONS(4950), [anon_sym_TILDE] = ACTIONS(4950), [sym_bool] = ACTIONS(4948), [sym_byte] = ACTIONS(4948), [sym_ubyte] = ACTIONS(4948), [sym_char] = ACTIONS(4948), [sym_short] = ACTIONS(4948), [sym_ushort] = ACTIONS(4948), [sym_int] = ACTIONS(4948), [sym_uint] = ACTIONS(4948), [sym_long] = ACTIONS(4948), [sym_ulong] = ACTIONS(4948), [sym_cent] = ACTIONS(4948), [sym_ucent] = ACTIONS(4948), [sym_wchar] = ACTIONS(4948), [sym_dchar] = ACTIONS(4948), [sym_float] = ACTIONS(4948), [sym_double] = ACTIONS(4948), [sym_real] = ACTIONS(4948), [sym_ifloat] = ACTIONS(4948), [sym_idouble] = ACTIONS(4948), [sym_ireal] = ACTIONS(4948), [sym_cfloat] = ACTIONS(4948), [sym_cdouble] = ACTIONS(4948), [sym_creal] = ACTIONS(4948), [sym_size_t] = ACTIONS(4948), [sym_ptrdiff_t] = ACTIONS(4948), [sym_string] = ACTIONS(4948), [sym_cstring] = ACTIONS(4948), [sym_dstring] = ACTIONS(4948), [sym_wstring] = ACTIONS(4948), [sym_noreturn] = ACTIONS(4948), [sym_true] = ACTIONS(4948), [sym_false] = ACTIONS(4948), [sym_null] = ACTIONS(4948), [sym_super] = ACTIONS(4948), [sym_this] = ACTIONS(4948), [sym_assert] = ACTIONS(4948), [sym_auto] = ACTIONS(4948), [sym_cast] = ACTIONS(4948), [sym_catch] = ACTIONS(4948), [sym_const] = ACTIONS(4948), [sym_delegate] = ACTIONS(4948), [sym_delete] = ACTIONS(4948), [sym_do] = ACTIONS(4948), [sym_else] = ACTIONS(4948), [sym_finally] = ACTIONS(4948), [sym_function] = ACTIONS(4948), [sym_immutable] = ACTIONS(4948), [sym_import] = ACTIONS(4948), [sym_in] = ACTIONS(4948), [sym_inout] = ACTIONS(4948), [sym_is] = ACTIONS(4948), [sym_mixin] = ACTIONS(4948), [sym_new] = ACTIONS(4948), [sym_out] = ACTIONS(4948), [sym_ref] = ACTIONS(4948), [sym_shared] = ACTIONS(4948), [sym_throw] = ACTIONS(4948), [sym_typeid] = ACTIONS(4948), [sym_typeof] = ACTIONS(4948), [sym_traits] = ACTIONS(4948), [sym_vector] = ACTIONS(4948), [sym_void] = ACTIONS(4948), [anon_sym_BQUOTE] = ACTIONS(4950), [anon_sym_r_DQUOTE] = ACTIONS(4950), [anon_sym_x_DQUOTE] = ACTIONS(4950), [anon_sym_DQUOTE] = ACTIONS(4950), [anon_sym_i_BQUOTE] = ACTIONS(4950), [anon_sym_i_DQUOTE] = ACTIONS(4950), [anon_sym_iq_LBRACE] = ACTIONS(4950), [aux_sym_char_literal_token1] = ACTIONS(4950), [anon_sym_SQUOTE] = ACTIONS(4948), [anon_sym___DATE__] = ACTIONS(4948), [anon_sym___FILE__] = ACTIONS(4948), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4948), [anon_sym___FUNCTION__] = ACTIONS(4948), [anon_sym___LINE__] = ACTIONS(4948), [anon_sym___MODULE__] = ACTIONS(4948), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4948), [anon_sym___TIME__] = ACTIONS(4948), [anon_sym___TIMESTAMP__] = ACTIONS(4948), [anon_sym___VENDOR__] = ACTIONS(4948), [anon_sym___VERSION__] = ACTIONS(4948), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4950), [sym_float_literal] = ACTIONS(4950), [sym__string] = ACTIONS(4950), }, [2225] = { [sym_identifier] = ACTIONS(4301), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4303), [anon_sym_LBRACE] = ACTIONS(4303), [anon_sym_DOT] = ACTIONS(4303), [anon_sym_AMP] = ACTIONS(4303), [anon_sym_DASH] = ACTIONS(4301), [anon_sym_DASH_DASH] = ACTIONS(4303), [anon_sym_PLUS] = ACTIONS(4301), [anon_sym_PLUS_PLUS] = ACTIONS(4303), [anon_sym_BANG] = ACTIONS(4303), [anon_sym_LPAREN] = ACTIONS(4303), [anon_sym_RPAREN] = ACTIONS(4303), [anon_sym_LBRACK] = ACTIONS(4303), [anon_sym_SEMI] = ACTIONS(4303), [anon_sym_DOLLAR] = ACTIONS(4303), [anon_sym_STAR] = ACTIONS(4303), [anon_sym_TILDE] = ACTIONS(4303), [sym_bool] = ACTIONS(4301), [sym_byte] = ACTIONS(4301), [sym_ubyte] = ACTIONS(4301), [sym_char] = ACTIONS(4301), [sym_short] = ACTIONS(4301), [sym_ushort] = ACTIONS(4301), [sym_int] = ACTIONS(4301), [sym_uint] = ACTIONS(4301), [sym_long] = ACTIONS(4301), [sym_ulong] = ACTIONS(4301), [sym_cent] = ACTIONS(4301), [sym_ucent] = ACTIONS(4301), [sym_wchar] = ACTIONS(4301), [sym_dchar] = ACTIONS(4301), [sym_float] = ACTIONS(4301), [sym_double] = ACTIONS(4301), [sym_real] = ACTIONS(4301), [sym_ifloat] = ACTIONS(4301), [sym_idouble] = ACTIONS(4301), [sym_ireal] = ACTIONS(4301), [sym_cfloat] = ACTIONS(4301), [sym_cdouble] = ACTIONS(4301), [sym_creal] = ACTIONS(4301), [sym_size_t] = ACTIONS(4301), [sym_ptrdiff_t] = ACTIONS(4301), [sym_string] = ACTIONS(4301), [sym_cstring] = ACTIONS(4301), [sym_dstring] = ACTIONS(4301), [sym_wstring] = ACTIONS(4301), [sym_noreturn] = ACTIONS(4301), [sym_true] = ACTIONS(4301), [sym_false] = ACTIONS(4301), [sym_null] = ACTIONS(4301), [sym_super] = ACTIONS(4301), [sym_this] = ACTIONS(4301), [sym_assert] = ACTIONS(4301), [sym_auto] = ACTIONS(4301), [sym_cast] = ACTIONS(4301), [sym_catch] = ACTIONS(4301), [sym_const] = ACTIONS(4301), [sym_delegate] = ACTIONS(4301), [sym_delete] = ACTIONS(4301), [sym_do] = ACTIONS(4301), [sym_else] = ACTIONS(4301), [sym_finally] = ACTIONS(4301), [sym_function] = ACTIONS(4301), [sym_immutable] = ACTIONS(4301), [sym_import] = ACTIONS(4301), [sym_in] = ACTIONS(4301), [sym_inout] = ACTIONS(4301), [sym_is] = ACTIONS(4301), [sym_mixin] = ACTIONS(4301), [sym_new] = ACTIONS(4301), [sym_out] = ACTIONS(4301), [sym_ref] = ACTIONS(4301), [sym_shared] = ACTIONS(4301), [sym_throw] = ACTIONS(4301), [sym_typeid] = ACTIONS(4301), [sym_typeof] = ACTIONS(4301), [sym_traits] = ACTIONS(4301), [sym_vector] = ACTIONS(4301), [sym_void] = ACTIONS(4301), [anon_sym_BQUOTE] = ACTIONS(4303), [anon_sym_r_DQUOTE] = ACTIONS(4303), [anon_sym_x_DQUOTE] = ACTIONS(4303), [anon_sym_DQUOTE] = ACTIONS(4303), [anon_sym_i_BQUOTE] = ACTIONS(4303), [anon_sym_i_DQUOTE] = ACTIONS(4303), [anon_sym_iq_LBRACE] = ACTIONS(4303), [aux_sym_char_literal_token1] = ACTIONS(4303), [anon_sym_SQUOTE] = ACTIONS(4301), [anon_sym___DATE__] = ACTIONS(4301), [anon_sym___FILE__] = ACTIONS(4301), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4301), [anon_sym___FUNCTION__] = ACTIONS(4301), [anon_sym___LINE__] = ACTIONS(4301), [anon_sym___MODULE__] = ACTIONS(4301), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4301), [anon_sym___TIME__] = ACTIONS(4301), [anon_sym___TIMESTAMP__] = ACTIONS(4301), [anon_sym___VENDOR__] = ACTIONS(4301), [anon_sym___VERSION__] = ACTIONS(4301), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4303), [sym_float_literal] = ACTIONS(4303), [sym__string] = ACTIONS(4303), }, [2226] = { [sym_identifier] = ACTIONS(4814), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4816), [anon_sym_LBRACE] = ACTIONS(4816), [anon_sym_DOT] = ACTIONS(4816), [anon_sym_AMP] = ACTIONS(4816), [anon_sym_DASH] = ACTIONS(4814), [anon_sym_DASH_DASH] = ACTIONS(4816), [anon_sym_PLUS] = ACTIONS(4814), [anon_sym_PLUS_PLUS] = ACTIONS(4816), [anon_sym_BANG] = ACTIONS(4816), [anon_sym_LPAREN] = ACTIONS(4816), [anon_sym_RPAREN] = ACTIONS(4816), [anon_sym_LBRACK] = ACTIONS(4816), [anon_sym_SEMI] = ACTIONS(4816), [anon_sym_DOLLAR] = ACTIONS(4816), [anon_sym_STAR] = ACTIONS(4816), [anon_sym_TILDE] = ACTIONS(4816), [sym_bool] = ACTIONS(4814), [sym_byte] = ACTIONS(4814), [sym_ubyte] = ACTIONS(4814), [sym_char] = ACTIONS(4814), [sym_short] = ACTIONS(4814), [sym_ushort] = ACTIONS(4814), [sym_int] = ACTIONS(4814), [sym_uint] = ACTIONS(4814), [sym_long] = ACTIONS(4814), [sym_ulong] = ACTIONS(4814), [sym_cent] = ACTIONS(4814), [sym_ucent] = ACTIONS(4814), [sym_wchar] = ACTIONS(4814), [sym_dchar] = ACTIONS(4814), [sym_float] = ACTIONS(4814), [sym_double] = ACTIONS(4814), [sym_real] = ACTIONS(4814), [sym_ifloat] = ACTIONS(4814), [sym_idouble] = ACTIONS(4814), [sym_ireal] = ACTIONS(4814), [sym_cfloat] = ACTIONS(4814), [sym_cdouble] = ACTIONS(4814), [sym_creal] = ACTIONS(4814), [sym_size_t] = ACTIONS(4814), [sym_ptrdiff_t] = ACTIONS(4814), [sym_string] = ACTIONS(4814), [sym_cstring] = ACTIONS(4814), [sym_dstring] = ACTIONS(4814), [sym_wstring] = ACTIONS(4814), [sym_noreturn] = ACTIONS(4814), [sym_true] = ACTIONS(4814), [sym_false] = ACTIONS(4814), [sym_null] = ACTIONS(4814), [sym_super] = ACTIONS(4814), [sym_this] = ACTIONS(4814), [sym_assert] = ACTIONS(4814), [sym_auto] = ACTIONS(4814), [sym_cast] = ACTIONS(4814), [sym_catch] = ACTIONS(4814), [sym_const] = ACTIONS(4814), [sym_delegate] = ACTIONS(4814), [sym_delete] = ACTIONS(4814), [sym_do] = ACTIONS(4814), [sym_else] = ACTIONS(4814), [sym_finally] = ACTIONS(4814), [sym_function] = ACTIONS(4814), [sym_immutable] = ACTIONS(4814), [sym_import] = ACTIONS(4814), [sym_in] = ACTIONS(4814), [sym_inout] = ACTIONS(4814), [sym_is] = ACTIONS(4814), [sym_mixin] = ACTIONS(4814), [sym_new] = ACTIONS(4814), [sym_out] = ACTIONS(4814), [sym_ref] = ACTIONS(4814), [sym_shared] = ACTIONS(4814), [sym_throw] = ACTIONS(4814), [sym_typeid] = ACTIONS(4814), [sym_typeof] = ACTIONS(4814), [sym_traits] = ACTIONS(4814), [sym_vector] = ACTIONS(4814), [sym_void] = ACTIONS(4814), [anon_sym_BQUOTE] = ACTIONS(4816), [anon_sym_r_DQUOTE] = ACTIONS(4816), [anon_sym_x_DQUOTE] = ACTIONS(4816), [anon_sym_DQUOTE] = ACTIONS(4816), [anon_sym_i_BQUOTE] = ACTIONS(4816), [anon_sym_i_DQUOTE] = ACTIONS(4816), [anon_sym_iq_LBRACE] = ACTIONS(4816), [aux_sym_char_literal_token1] = ACTIONS(4816), [anon_sym_SQUOTE] = ACTIONS(4814), [anon_sym___DATE__] = ACTIONS(4814), [anon_sym___FILE__] = ACTIONS(4814), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4814), [anon_sym___FUNCTION__] = ACTIONS(4814), [anon_sym___LINE__] = ACTIONS(4814), [anon_sym___MODULE__] = ACTIONS(4814), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4814), [anon_sym___TIME__] = ACTIONS(4814), [anon_sym___TIMESTAMP__] = ACTIONS(4814), [anon_sym___VENDOR__] = ACTIONS(4814), [anon_sym___VERSION__] = ACTIONS(4814), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4816), [sym_float_literal] = ACTIONS(4816), [sym__string] = ACTIONS(4816), }, [2227] = { [sym_identifier] = ACTIONS(4876), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4878), [anon_sym_LBRACE] = ACTIONS(4878), [anon_sym_DOT] = ACTIONS(4878), [anon_sym_AMP] = ACTIONS(4878), [anon_sym_DASH] = ACTIONS(4876), [anon_sym_DASH_DASH] = ACTIONS(4878), [anon_sym_PLUS] = ACTIONS(4876), [anon_sym_PLUS_PLUS] = ACTIONS(4878), [anon_sym_BANG] = ACTIONS(4878), [anon_sym_LPAREN] = ACTIONS(4878), [anon_sym_RPAREN] = ACTIONS(4878), [anon_sym_LBRACK] = ACTIONS(4878), [anon_sym_SEMI] = ACTIONS(4878), [anon_sym_DOLLAR] = ACTIONS(4878), [anon_sym_STAR] = ACTIONS(4878), [anon_sym_TILDE] = ACTIONS(4878), [sym_bool] = ACTIONS(4876), [sym_byte] = ACTIONS(4876), [sym_ubyte] = ACTIONS(4876), [sym_char] = ACTIONS(4876), [sym_short] = ACTIONS(4876), [sym_ushort] = ACTIONS(4876), [sym_int] = ACTIONS(4876), [sym_uint] = ACTIONS(4876), [sym_long] = ACTIONS(4876), [sym_ulong] = ACTIONS(4876), [sym_cent] = ACTIONS(4876), [sym_ucent] = ACTIONS(4876), [sym_wchar] = ACTIONS(4876), [sym_dchar] = ACTIONS(4876), [sym_float] = ACTIONS(4876), [sym_double] = ACTIONS(4876), [sym_real] = ACTIONS(4876), [sym_ifloat] = ACTIONS(4876), [sym_idouble] = ACTIONS(4876), [sym_ireal] = ACTIONS(4876), [sym_cfloat] = ACTIONS(4876), [sym_cdouble] = ACTIONS(4876), [sym_creal] = ACTIONS(4876), [sym_size_t] = ACTIONS(4876), [sym_ptrdiff_t] = ACTIONS(4876), [sym_string] = ACTIONS(4876), [sym_cstring] = ACTIONS(4876), [sym_dstring] = ACTIONS(4876), [sym_wstring] = ACTIONS(4876), [sym_noreturn] = ACTIONS(4876), [sym_true] = ACTIONS(4876), [sym_false] = ACTIONS(4876), [sym_null] = ACTIONS(4876), [sym_super] = ACTIONS(4876), [sym_this] = ACTIONS(4876), [sym_assert] = ACTIONS(4876), [sym_auto] = ACTIONS(4876), [sym_cast] = ACTIONS(4876), [sym_catch] = ACTIONS(4876), [sym_const] = ACTIONS(4876), [sym_delegate] = ACTIONS(4876), [sym_delete] = ACTIONS(4876), [sym_do] = ACTIONS(4876), [sym_else] = ACTIONS(4876), [sym_finally] = ACTIONS(4876), [sym_function] = ACTIONS(4876), [sym_immutable] = ACTIONS(4876), [sym_import] = ACTIONS(4876), [sym_in] = ACTIONS(4876), [sym_inout] = ACTIONS(4876), [sym_is] = ACTIONS(4876), [sym_mixin] = ACTIONS(4876), [sym_new] = ACTIONS(4876), [sym_out] = ACTIONS(4876), [sym_ref] = ACTIONS(4876), [sym_shared] = ACTIONS(4876), [sym_throw] = ACTIONS(4876), [sym_typeid] = ACTIONS(4876), [sym_typeof] = ACTIONS(4876), [sym_traits] = ACTIONS(4876), [sym_vector] = ACTIONS(4876), [sym_void] = ACTIONS(4876), [anon_sym_BQUOTE] = ACTIONS(4878), [anon_sym_r_DQUOTE] = ACTIONS(4878), [anon_sym_x_DQUOTE] = ACTIONS(4878), [anon_sym_DQUOTE] = ACTIONS(4878), [anon_sym_i_BQUOTE] = ACTIONS(4878), [anon_sym_i_DQUOTE] = ACTIONS(4878), [anon_sym_iq_LBRACE] = ACTIONS(4878), [aux_sym_char_literal_token1] = ACTIONS(4878), [anon_sym_SQUOTE] = ACTIONS(4876), [anon_sym___DATE__] = ACTIONS(4876), [anon_sym___FILE__] = ACTIONS(4876), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4876), [anon_sym___FUNCTION__] = ACTIONS(4876), [anon_sym___LINE__] = ACTIONS(4876), [anon_sym___MODULE__] = ACTIONS(4876), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4876), [anon_sym___TIME__] = ACTIONS(4876), [anon_sym___TIMESTAMP__] = ACTIONS(4876), [anon_sym___VENDOR__] = ACTIONS(4876), [anon_sym___VERSION__] = ACTIONS(4876), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4878), [sym_float_literal] = ACTIONS(4878), [sym__string] = ACTIONS(4878), }, [2228] = { [sym_identifier] = ACTIONS(4822), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4824), [anon_sym_LBRACE] = ACTIONS(4824), [anon_sym_DOT] = ACTIONS(4824), [anon_sym_AMP] = ACTIONS(4824), [anon_sym_DASH] = ACTIONS(4822), [anon_sym_DASH_DASH] = ACTIONS(4824), [anon_sym_PLUS] = ACTIONS(4822), [anon_sym_PLUS_PLUS] = ACTIONS(4824), [anon_sym_BANG] = ACTIONS(4824), [anon_sym_LPAREN] = ACTIONS(4824), [anon_sym_RPAREN] = ACTIONS(4824), [anon_sym_LBRACK] = ACTIONS(4824), [anon_sym_SEMI] = ACTIONS(4824), [anon_sym_DOLLAR] = ACTIONS(4824), [anon_sym_STAR] = ACTIONS(4824), [anon_sym_TILDE] = ACTIONS(4824), [sym_bool] = ACTIONS(4822), [sym_byte] = ACTIONS(4822), [sym_ubyte] = ACTIONS(4822), [sym_char] = ACTIONS(4822), [sym_short] = ACTIONS(4822), [sym_ushort] = ACTIONS(4822), [sym_int] = ACTIONS(4822), [sym_uint] = ACTIONS(4822), [sym_long] = ACTIONS(4822), [sym_ulong] = ACTIONS(4822), [sym_cent] = ACTIONS(4822), [sym_ucent] = ACTIONS(4822), [sym_wchar] = ACTIONS(4822), [sym_dchar] = ACTIONS(4822), [sym_float] = ACTIONS(4822), [sym_double] = ACTIONS(4822), [sym_real] = ACTIONS(4822), [sym_ifloat] = ACTIONS(4822), [sym_idouble] = ACTIONS(4822), [sym_ireal] = ACTIONS(4822), [sym_cfloat] = ACTIONS(4822), [sym_cdouble] = ACTIONS(4822), [sym_creal] = ACTIONS(4822), [sym_size_t] = ACTIONS(4822), [sym_ptrdiff_t] = ACTIONS(4822), [sym_string] = ACTIONS(4822), [sym_cstring] = ACTIONS(4822), [sym_dstring] = ACTIONS(4822), [sym_wstring] = ACTIONS(4822), [sym_noreturn] = ACTIONS(4822), [sym_true] = ACTIONS(4822), [sym_false] = ACTIONS(4822), [sym_null] = ACTIONS(4822), [sym_super] = ACTIONS(4822), [sym_this] = ACTIONS(4822), [sym_assert] = ACTIONS(4822), [sym_auto] = ACTIONS(4822), [sym_cast] = ACTIONS(4822), [sym_catch] = ACTIONS(4822), [sym_const] = ACTIONS(4822), [sym_delegate] = ACTIONS(4822), [sym_delete] = ACTIONS(4822), [sym_do] = ACTIONS(4822), [sym_else] = ACTIONS(4822), [sym_finally] = ACTIONS(4822), [sym_function] = ACTIONS(4822), [sym_immutable] = ACTIONS(4822), [sym_import] = ACTIONS(4822), [sym_in] = ACTIONS(4822), [sym_inout] = ACTIONS(4822), [sym_is] = ACTIONS(4822), [sym_mixin] = ACTIONS(4822), [sym_new] = ACTIONS(4822), [sym_out] = ACTIONS(4822), [sym_ref] = ACTIONS(4822), [sym_shared] = ACTIONS(4822), [sym_throw] = ACTIONS(4822), [sym_typeid] = ACTIONS(4822), [sym_typeof] = ACTIONS(4822), [sym_traits] = ACTIONS(4822), [sym_vector] = ACTIONS(4822), [sym_void] = ACTIONS(4822), [anon_sym_BQUOTE] = ACTIONS(4824), [anon_sym_r_DQUOTE] = ACTIONS(4824), [anon_sym_x_DQUOTE] = ACTIONS(4824), [anon_sym_DQUOTE] = ACTIONS(4824), [anon_sym_i_BQUOTE] = ACTIONS(4824), [anon_sym_i_DQUOTE] = ACTIONS(4824), [anon_sym_iq_LBRACE] = ACTIONS(4824), [aux_sym_char_literal_token1] = ACTIONS(4824), [anon_sym_SQUOTE] = ACTIONS(4822), [anon_sym___DATE__] = ACTIONS(4822), [anon_sym___FILE__] = ACTIONS(4822), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4822), [anon_sym___FUNCTION__] = ACTIONS(4822), [anon_sym___LINE__] = ACTIONS(4822), [anon_sym___MODULE__] = ACTIONS(4822), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4822), [anon_sym___TIME__] = ACTIONS(4822), [anon_sym___TIMESTAMP__] = ACTIONS(4822), [anon_sym___VENDOR__] = ACTIONS(4822), [anon_sym___VERSION__] = ACTIONS(4822), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4824), [sym_float_literal] = ACTIONS(4824), [sym__string] = ACTIONS(4824), }, [2229] = { [sym_identifier] = ACTIONS(4956), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4958), [anon_sym_LBRACE] = ACTIONS(4958), [anon_sym_DOT] = ACTIONS(4958), [anon_sym_AMP] = ACTIONS(4958), [anon_sym_DASH] = ACTIONS(4956), [anon_sym_DASH_DASH] = ACTIONS(4958), [anon_sym_PLUS] = ACTIONS(4956), [anon_sym_PLUS_PLUS] = ACTIONS(4958), [anon_sym_BANG] = ACTIONS(4958), [anon_sym_LPAREN] = ACTIONS(4958), [anon_sym_RPAREN] = ACTIONS(4958), [anon_sym_LBRACK] = ACTIONS(4958), [anon_sym_SEMI] = ACTIONS(4958), [anon_sym_DOLLAR] = ACTIONS(4958), [anon_sym_STAR] = ACTIONS(4958), [anon_sym_TILDE] = ACTIONS(4958), [sym_bool] = ACTIONS(4956), [sym_byte] = ACTIONS(4956), [sym_ubyte] = ACTIONS(4956), [sym_char] = ACTIONS(4956), [sym_short] = ACTIONS(4956), [sym_ushort] = ACTIONS(4956), [sym_int] = ACTIONS(4956), [sym_uint] = ACTIONS(4956), [sym_long] = ACTIONS(4956), [sym_ulong] = ACTIONS(4956), [sym_cent] = ACTIONS(4956), [sym_ucent] = ACTIONS(4956), [sym_wchar] = ACTIONS(4956), [sym_dchar] = ACTIONS(4956), [sym_float] = ACTIONS(4956), [sym_double] = ACTIONS(4956), [sym_real] = ACTIONS(4956), [sym_ifloat] = ACTIONS(4956), [sym_idouble] = ACTIONS(4956), [sym_ireal] = ACTIONS(4956), [sym_cfloat] = ACTIONS(4956), [sym_cdouble] = ACTIONS(4956), [sym_creal] = ACTIONS(4956), [sym_size_t] = ACTIONS(4956), [sym_ptrdiff_t] = ACTIONS(4956), [sym_string] = ACTIONS(4956), [sym_cstring] = ACTIONS(4956), [sym_dstring] = ACTIONS(4956), [sym_wstring] = ACTIONS(4956), [sym_noreturn] = ACTIONS(4956), [sym_true] = ACTIONS(4956), [sym_false] = ACTIONS(4956), [sym_null] = ACTIONS(4956), [sym_super] = ACTIONS(4956), [sym_this] = ACTIONS(4956), [sym_assert] = ACTIONS(4956), [sym_auto] = ACTIONS(4956), [sym_cast] = ACTIONS(4956), [sym_catch] = ACTIONS(4956), [sym_const] = ACTIONS(4956), [sym_delegate] = ACTIONS(4956), [sym_delete] = ACTIONS(4956), [sym_do] = ACTIONS(4956), [sym_else] = ACTIONS(4956), [sym_finally] = ACTIONS(4956), [sym_function] = ACTIONS(4956), [sym_immutable] = ACTIONS(4956), [sym_import] = ACTIONS(4956), [sym_in] = ACTIONS(4956), [sym_inout] = ACTIONS(4956), [sym_is] = ACTIONS(4956), [sym_mixin] = ACTIONS(4956), [sym_new] = ACTIONS(4956), [sym_out] = ACTIONS(4956), [sym_ref] = ACTIONS(4956), [sym_shared] = ACTIONS(4956), [sym_throw] = ACTIONS(4956), [sym_typeid] = ACTIONS(4956), [sym_typeof] = ACTIONS(4956), [sym_traits] = ACTIONS(4956), [sym_vector] = ACTIONS(4956), [sym_void] = ACTIONS(4956), [anon_sym_BQUOTE] = ACTIONS(4958), [anon_sym_r_DQUOTE] = ACTIONS(4958), [anon_sym_x_DQUOTE] = ACTIONS(4958), [anon_sym_DQUOTE] = ACTIONS(4958), [anon_sym_i_BQUOTE] = ACTIONS(4958), [anon_sym_i_DQUOTE] = ACTIONS(4958), [anon_sym_iq_LBRACE] = ACTIONS(4958), [aux_sym_char_literal_token1] = ACTIONS(4958), [anon_sym_SQUOTE] = ACTIONS(4956), [anon_sym___DATE__] = ACTIONS(4956), [anon_sym___FILE__] = ACTIONS(4956), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4956), [anon_sym___FUNCTION__] = ACTIONS(4956), [anon_sym___LINE__] = ACTIONS(4956), [anon_sym___MODULE__] = ACTIONS(4956), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4956), [anon_sym___TIME__] = ACTIONS(4956), [anon_sym___TIMESTAMP__] = ACTIONS(4956), [anon_sym___VENDOR__] = ACTIONS(4956), [anon_sym___VERSION__] = ACTIONS(4956), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4958), [sym_float_literal] = ACTIONS(4958), [sym__string] = ACTIONS(4958), }, [2230] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_finally] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [2231] = { [sym_identifier] = ACTIONS(4317), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4319), [anon_sym_LBRACE] = ACTIONS(4319), [anon_sym_DOT] = ACTIONS(4319), [anon_sym_AMP] = ACTIONS(4319), [anon_sym_DASH] = ACTIONS(4317), [anon_sym_DASH_DASH] = ACTIONS(4319), [anon_sym_PLUS] = ACTIONS(4317), [anon_sym_PLUS_PLUS] = ACTIONS(4319), [anon_sym_BANG] = ACTIONS(4319), [anon_sym_LPAREN] = ACTIONS(4319), [anon_sym_RPAREN] = ACTIONS(4319), [anon_sym_LBRACK] = ACTIONS(4319), [anon_sym_SEMI] = ACTIONS(4319), [anon_sym_DOLLAR] = ACTIONS(4319), [anon_sym_STAR] = ACTIONS(4319), [anon_sym_TILDE] = ACTIONS(4319), [sym_bool] = ACTIONS(4317), [sym_byte] = ACTIONS(4317), [sym_ubyte] = ACTIONS(4317), [sym_char] = ACTIONS(4317), [sym_short] = ACTIONS(4317), [sym_ushort] = ACTIONS(4317), [sym_int] = ACTIONS(4317), [sym_uint] = ACTIONS(4317), [sym_long] = ACTIONS(4317), [sym_ulong] = ACTIONS(4317), [sym_cent] = ACTIONS(4317), [sym_ucent] = ACTIONS(4317), [sym_wchar] = ACTIONS(4317), [sym_dchar] = ACTIONS(4317), [sym_float] = ACTIONS(4317), [sym_double] = ACTIONS(4317), [sym_real] = ACTIONS(4317), [sym_ifloat] = ACTIONS(4317), [sym_idouble] = ACTIONS(4317), [sym_ireal] = ACTIONS(4317), [sym_cfloat] = ACTIONS(4317), [sym_cdouble] = ACTIONS(4317), [sym_creal] = ACTIONS(4317), [sym_size_t] = ACTIONS(4317), [sym_ptrdiff_t] = ACTIONS(4317), [sym_string] = ACTIONS(4317), [sym_cstring] = ACTIONS(4317), [sym_dstring] = ACTIONS(4317), [sym_wstring] = ACTIONS(4317), [sym_noreturn] = ACTIONS(4317), [sym_true] = ACTIONS(4317), [sym_false] = ACTIONS(4317), [sym_null] = ACTIONS(4317), [sym_super] = ACTIONS(4317), [sym_this] = ACTIONS(4317), [sym_assert] = ACTIONS(4317), [sym_auto] = ACTIONS(4317), [sym_cast] = ACTIONS(4317), [sym_catch] = ACTIONS(4317), [sym_const] = ACTIONS(4317), [sym_delegate] = ACTIONS(4317), [sym_delete] = ACTIONS(4317), [sym_do] = ACTIONS(4317), [sym_else] = ACTIONS(4317), [sym_finally] = ACTIONS(4317), [sym_function] = ACTIONS(4317), [sym_immutable] = ACTIONS(4317), [sym_import] = ACTIONS(4317), [sym_in] = ACTIONS(4317), [sym_inout] = ACTIONS(4317), [sym_is] = ACTIONS(4317), [sym_mixin] = ACTIONS(4317), [sym_new] = ACTIONS(4317), [sym_out] = ACTIONS(4317), [sym_ref] = ACTIONS(4317), [sym_shared] = ACTIONS(4317), [sym_throw] = ACTIONS(4317), [sym_typeid] = ACTIONS(4317), [sym_typeof] = ACTIONS(4317), [sym_traits] = ACTIONS(4317), [sym_vector] = ACTIONS(4317), [sym_void] = ACTIONS(4317), [anon_sym_BQUOTE] = ACTIONS(4319), [anon_sym_r_DQUOTE] = ACTIONS(4319), [anon_sym_x_DQUOTE] = ACTIONS(4319), [anon_sym_DQUOTE] = ACTIONS(4319), [anon_sym_i_BQUOTE] = ACTIONS(4319), [anon_sym_i_DQUOTE] = ACTIONS(4319), [anon_sym_iq_LBRACE] = ACTIONS(4319), [aux_sym_char_literal_token1] = ACTIONS(4319), [anon_sym_SQUOTE] = ACTIONS(4317), [anon_sym___DATE__] = ACTIONS(4317), [anon_sym___FILE__] = ACTIONS(4317), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4317), [anon_sym___FUNCTION__] = ACTIONS(4317), [anon_sym___LINE__] = ACTIONS(4317), [anon_sym___MODULE__] = ACTIONS(4317), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4317), [anon_sym___TIME__] = ACTIONS(4317), [anon_sym___TIMESTAMP__] = ACTIONS(4317), [anon_sym___VENDOR__] = ACTIONS(4317), [anon_sym___VERSION__] = ACTIONS(4317), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4319), [sym_float_literal] = ACTIONS(4319), [sym__string] = ACTIONS(4319), }, [2232] = { [sym_identifier] = ACTIONS(4331), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4333), [anon_sym_LBRACE] = ACTIONS(4333), [anon_sym_DOT] = ACTIONS(4333), [anon_sym_AMP] = ACTIONS(4333), [anon_sym_DASH] = ACTIONS(4331), [anon_sym_DASH_DASH] = ACTIONS(4333), [anon_sym_PLUS] = ACTIONS(4331), [anon_sym_PLUS_PLUS] = ACTIONS(4333), [anon_sym_BANG] = ACTIONS(4333), [anon_sym_LPAREN] = ACTIONS(4333), [anon_sym_RPAREN] = ACTIONS(4333), [anon_sym_LBRACK] = ACTIONS(4333), [anon_sym_SEMI] = ACTIONS(4333), [anon_sym_DOLLAR] = ACTIONS(4333), [anon_sym_STAR] = ACTIONS(4333), [anon_sym_TILDE] = ACTIONS(4333), [sym_bool] = ACTIONS(4331), [sym_byte] = ACTIONS(4331), [sym_ubyte] = ACTIONS(4331), [sym_char] = ACTIONS(4331), [sym_short] = ACTIONS(4331), [sym_ushort] = ACTIONS(4331), [sym_int] = ACTIONS(4331), [sym_uint] = ACTIONS(4331), [sym_long] = ACTIONS(4331), [sym_ulong] = ACTIONS(4331), [sym_cent] = ACTIONS(4331), [sym_ucent] = ACTIONS(4331), [sym_wchar] = ACTIONS(4331), [sym_dchar] = ACTIONS(4331), [sym_float] = ACTIONS(4331), [sym_double] = ACTIONS(4331), [sym_real] = ACTIONS(4331), [sym_ifloat] = ACTIONS(4331), [sym_idouble] = ACTIONS(4331), [sym_ireal] = ACTIONS(4331), [sym_cfloat] = ACTIONS(4331), [sym_cdouble] = ACTIONS(4331), [sym_creal] = ACTIONS(4331), [sym_size_t] = ACTIONS(4331), [sym_ptrdiff_t] = ACTIONS(4331), [sym_string] = ACTIONS(4331), [sym_cstring] = ACTIONS(4331), [sym_dstring] = ACTIONS(4331), [sym_wstring] = ACTIONS(4331), [sym_noreturn] = ACTIONS(4331), [sym_true] = ACTIONS(4331), [sym_false] = ACTIONS(4331), [sym_null] = ACTIONS(4331), [sym_super] = ACTIONS(4331), [sym_this] = ACTIONS(4331), [sym_assert] = ACTIONS(4331), [sym_auto] = ACTIONS(4331), [sym_cast] = ACTIONS(4331), [sym_catch] = ACTIONS(4331), [sym_const] = ACTIONS(4331), [sym_delegate] = ACTIONS(4331), [sym_delete] = ACTIONS(4331), [sym_do] = ACTIONS(4331), [sym_else] = ACTIONS(4331), [sym_finally] = ACTIONS(4331), [sym_function] = ACTIONS(4331), [sym_immutable] = ACTIONS(4331), [sym_import] = ACTIONS(4331), [sym_in] = ACTIONS(4331), [sym_inout] = ACTIONS(4331), [sym_is] = ACTIONS(4331), [sym_mixin] = ACTIONS(4331), [sym_new] = ACTIONS(4331), [sym_out] = ACTIONS(4331), [sym_ref] = ACTIONS(4331), [sym_shared] = ACTIONS(4331), [sym_throw] = ACTIONS(4331), [sym_typeid] = ACTIONS(4331), [sym_typeof] = ACTIONS(4331), [sym_traits] = ACTIONS(4331), [sym_vector] = ACTIONS(4331), [sym_void] = ACTIONS(4331), [anon_sym_BQUOTE] = ACTIONS(4333), [anon_sym_r_DQUOTE] = ACTIONS(4333), [anon_sym_x_DQUOTE] = ACTIONS(4333), [anon_sym_DQUOTE] = ACTIONS(4333), [anon_sym_i_BQUOTE] = ACTIONS(4333), [anon_sym_i_DQUOTE] = ACTIONS(4333), [anon_sym_iq_LBRACE] = ACTIONS(4333), [aux_sym_char_literal_token1] = ACTIONS(4333), [anon_sym_SQUOTE] = ACTIONS(4331), [anon_sym___DATE__] = ACTIONS(4331), [anon_sym___FILE__] = ACTIONS(4331), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4331), [anon_sym___FUNCTION__] = ACTIONS(4331), [anon_sym___LINE__] = ACTIONS(4331), [anon_sym___MODULE__] = ACTIONS(4331), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4331), [anon_sym___TIME__] = ACTIONS(4331), [anon_sym___TIMESTAMP__] = ACTIONS(4331), [anon_sym___VENDOR__] = ACTIONS(4331), [anon_sym___VERSION__] = ACTIONS(4331), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4333), [sym_float_literal] = ACTIONS(4333), [sym__string] = ACTIONS(4333), }, [2233] = { [sym_identifier] = ACTIONS(4343), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4345), [anon_sym_LBRACE] = ACTIONS(4345), [anon_sym_DOT] = ACTIONS(4345), [anon_sym_AMP] = ACTIONS(4345), [anon_sym_DASH] = ACTIONS(4343), [anon_sym_DASH_DASH] = ACTIONS(4345), [anon_sym_PLUS] = ACTIONS(4343), [anon_sym_PLUS_PLUS] = ACTIONS(4345), [anon_sym_BANG] = ACTIONS(4345), [anon_sym_LPAREN] = ACTIONS(4345), [anon_sym_RPAREN] = ACTIONS(4345), [anon_sym_LBRACK] = ACTIONS(4345), [anon_sym_SEMI] = ACTIONS(4345), [anon_sym_DOLLAR] = ACTIONS(4345), [anon_sym_STAR] = ACTIONS(4345), [anon_sym_TILDE] = ACTIONS(4345), [sym_bool] = ACTIONS(4343), [sym_byte] = ACTIONS(4343), [sym_ubyte] = ACTIONS(4343), [sym_char] = ACTIONS(4343), [sym_short] = ACTIONS(4343), [sym_ushort] = ACTIONS(4343), [sym_int] = ACTIONS(4343), [sym_uint] = ACTIONS(4343), [sym_long] = ACTIONS(4343), [sym_ulong] = ACTIONS(4343), [sym_cent] = ACTIONS(4343), [sym_ucent] = ACTIONS(4343), [sym_wchar] = ACTIONS(4343), [sym_dchar] = ACTIONS(4343), [sym_float] = ACTIONS(4343), [sym_double] = ACTIONS(4343), [sym_real] = ACTIONS(4343), [sym_ifloat] = ACTIONS(4343), [sym_idouble] = ACTIONS(4343), [sym_ireal] = ACTIONS(4343), [sym_cfloat] = ACTIONS(4343), [sym_cdouble] = ACTIONS(4343), [sym_creal] = ACTIONS(4343), [sym_size_t] = ACTIONS(4343), [sym_ptrdiff_t] = ACTIONS(4343), [sym_string] = ACTIONS(4343), [sym_cstring] = ACTIONS(4343), [sym_dstring] = ACTIONS(4343), [sym_wstring] = ACTIONS(4343), [sym_noreturn] = ACTIONS(4343), [sym_true] = ACTIONS(4343), [sym_false] = ACTIONS(4343), [sym_null] = ACTIONS(4343), [sym_super] = ACTIONS(4343), [sym_this] = ACTIONS(4343), [sym_assert] = ACTIONS(4343), [sym_auto] = ACTIONS(4343), [sym_cast] = ACTIONS(4343), [sym_catch] = ACTIONS(4343), [sym_const] = ACTIONS(4343), [sym_delegate] = ACTIONS(4343), [sym_delete] = ACTIONS(4343), [sym_do] = ACTIONS(4343), [sym_else] = ACTIONS(4343), [sym_finally] = ACTIONS(4343), [sym_function] = ACTIONS(4343), [sym_immutable] = ACTIONS(4343), [sym_import] = ACTIONS(4343), [sym_in] = ACTIONS(4343), [sym_inout] = ACTIONS(4343), [sym_is] = ACTIONS(4343), [sym_mixin] = ACTIONS(4343), [sym_new] = ACTIONS(4343), [sym_out] = ACTIONS(4343), [sym_ref] = ACTIONS(4343), [sym_shared] = ACTIONS(4343), [sym_throw] = ACTIONS(4343), [sym_typeid] = ACTIONS(4343), [sym_typeof] = ACTIONS(4343), [sym_traits] = ACTIONS(4343), [sym_vector] = ACTIONS(4343), [sym_void] = ACTIONS(4343), [anon_sym_BQUOTE] = ACTIONS(4345), [anon_sym_r_DQUOTE] = ACTIONS(4345), [anon_sym_x_DQUOTE] = ACTIONS(4345), [anon_sym_DQUOTE] = ACTIONS(4345), [anon_sym_i_BQUOTE] = ACTIONS(4345), [anon_sym_i_DQUOTE] = ACTIONS(4345), [anon_sym_iq_LBRACE] = ACTIONS(4345), [aux_sym_char_literal_token1] = ACTIONS(4345), [anon_sym_SQUOTE] = ACTIONS(4343), [anon_sym___DATE__] = ACTIONS(4343), [anon_sym___FILE__] = ACTIONS(4343), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4343), [anon_sym___FUNCTION__] = ACTIONS(4343), [anon_sym___LINE__] = ACTIONS(4343), [anon_sym___MODULE__] = ACTIONS(4343), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4343), [anon_sym___TIME__] = ACTIONS(4343), [anon_sym___TIMESTAMP__] = ACTIONS(4343), [anon_sym___VENDOR__] = ACTIONS(4343), [anon_sym___VERSION__] = ACTIONS(4343), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4345), [sym_float_literal] = ACTIONS(4345), [sym__string] = ACTIONS(4345), }, [2234] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_AMP] = ACTIONS(3100), [anon_sym_DASH] = ACTIONS(3098), [anon_sym_DASH_DASH] = ACTIONS(3100), [anon_sym_PLUS] = ACTIONS(3098), [anon_sym_PLUS_PLUS] = ACTIONS(3100), [anon_sym_BANG] = ACTIONS(3100), [anon_sym_LPAREN] = ACTIONS(3100), [anon_sym_RPAREN] = ACTIONS(3100), [anon_sym_LBRACK] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_DOLLAR] = ACTIONS(3100), [anon_sym_STAR] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_true] = ACTIONS(3098), [sym_false] = ACTIONS(3098), [sym_null] = ACTIONS(3098), [sym_super] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_assert] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_cast] = ACTIONS(3098), [sym_catch] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_delegate] = ACTIONS(3098), [sym_delete] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_finally] = ACTIONS(3098), [sym_function] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_is] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_new] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_throw] = ACTIONS(3098), [sym_typeid] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [anon_sym_BQUOTE] = ACTIONS(3100), [anon_sym_r_DQUOTE] = ACTIONS(3100), [anon_sym_x_DQUOTE] = ACTIONS(3100), [anon_sym_DQUOTE] = ACTIONS(3100), [anon_sym_i_BQUOTE] = ACTIONS(3100), [anon_sym_i_DQUOTE] = ACTIONS(3100), [anon_sym_iq_LBRACE] = ACTIONS(3100), [aux_sym_char_literal_token1] = ACTIONS(3100), [anon_sym_SQUOTE] = ACTIONS(3098), [anon_sym___DATE__] = ACTIONS(3098), [anon_sym___FILE__] = ACTIONS(3098), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3098), [anon_sym___FUNCTION__] = ACTIONS(3098), [anon_sym___LINE__] = ACTIONS(3098), [anon_sym___MODULE__] = ACTIONS(3098), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3098), [anon_sym___TIME__] = ACTIONS(3098), [anon_sym___TIMESTAMP__] = ACTIONS(3098), [anon_sym___VENDOR__] = ACTIONS(3098), [anon_sym___VERSION__] = ACTIONS(3098), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3100), [sym_float_literal] = ACTIONS(3100), [sym__string] = ACTIONS(3100), }, [2235] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_catch] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(6569), [sym_finally] = ACTIONS(4365), [sym_function] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [2236] = { [sym_identifier] = ACTIONS(4386), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4388), [anon_sym_LBRACE] = ACTIONS(4388), [anon_sym_DOT] = ACTIONS(4388), [anon_sym_AMP] = ACTIONS(4388), [anon_sym_DASH] = ACTIONS(4386), [anon_sym_DASH_DASH] = ACTIONS(4388), [anon_sym_PLUS] = ACTIONS(4386), [anon_sym_PLUS_PLUS] = ACTIONS(4388), [anon_sym_BANG] = ACTIONS(4388), [anon_sym_LPAREN] = ACTIONS(4388), [anon_sym_RPAREN] = ACTIONS(4388), [anon_sym_LBRACK] = ACTIONS(4388), [anon_sym_SEMI] = ACTIONS(4388), [anon_sym_DOLLAR] = ACTIONS(4388), [anon_sym_STAR] = ACTIONS(4388), [anon_sym_TILDE] = ACTIONS(4388), [sym_bool] = ACTIONS(4386), [sym_byte] = ACTIONS(4386), [sym_ubyte] = ACTIONS(4386), [sym_char] = ACTIONS(4386), [sym_short] = ACTIONS(4386), [sym_ushort] = ACTIONS(4386), [sym_int] = ACTIONS(4386), [sym_uint] = ACTIONS(4386), [sym_long] = ACTIONS(4386), [sym_ulong] = ACTIONS(4386), [sym_cent] = ACTIONS(4386), [sym_ucent] = ACTIONS(4386), [sym_wchar] = ACTIONS(4386), [sym_dchar] = ACTIONS(4386), [sym_float] = ACTIONS(4386), [sym_double] = ACTIONS(4386), [sym_real] = ACTIONS(4386), [sym_ifloat] = ACTIONS(4386), [sym_idouble] = ACTIONS(4386), [sym_ireal] = ACTIONS(4386), [sym_cfloat] = ACTIONS(4386), [sym_cdouble] = ACTIONS(4386), [sym_creal] = ACTIONS(4386), [sym_size_t] = ACTIONS(4386), [sym_ptrdiff_t] = ACTIONS(4386), [sym_string] = ACTIONS(4386), [sym_cstring] = ACTIONS(4386), [sym_dstring] = ACTIONS(4386), [sym_wstring] = ACTIONS(4386), [sym_noreturn] = ACTIONS(4386), [sym_true] = ACTIONS(4386), [sym_false] = ACTIONS(4386), [sym_null] = ACTIONS(4386), [sym_super] = ACTIONS(4386), [sym_this] = ACTIONS(4386), [sym_assert] = ACTIONS(4386), [sym_auto] = ACTIONS(4386), [sym_cast] = ACTIONS(4386), [sym_catch] = ACTIONS(4386), [sym_const] = ACTIONS(4386), [sym_delegate] = ACTIONS(4386), [sym_delete] = ACTIONS(4386), [sym_do] = ACTIONS(4386), [sym_else] = ACTIONS(4386), [sym_finally] = ACTIONS(4386), [sym_function] = ACTIONS(4386), [sym_immutable] = ACTIONS(4386), [sym_import] = ACTIONS(4386), [sym_in] = ACTIONS(4386), [sym_inout] = ACTIONS(4386), [sym_is] = ACTIONS(4386), [sym_mixin] = ACTIONS(4386), [sym_new] = ACTIONS(4386), [sym_out] = ACTIONS(4386), [sym_ref] = ACTIONS(4386), [sym_shared] = ACTIONS(4386), [sym_throw] = ACTIONS(4386), [sym_typeid] = ACTIONS(4386), [sym_typeof] = ACTIONS(4386), [sym_traits] = ACTIONS(4386), [sym_vector] = ACTIONS(4386), [sym_void] = ACTIONS(4386), [anon_sym_BQUOTE] = ACTIONS(4388), [anon_sym_r_DQUOTE] = ACTIONS(4388), [anon_sym_x_DQUOTE] = ACTIONS(4388), [anon_sym_DQUOTE] = ACTIONS(4388), [anon_sym_i_BQUOTE] = ACTIONS(4388), [anon_sym_i_DQUOTE] = ACTIONS(4388), [anon_sym_iq_LBRACE] = ACTIONS(4388), [aux_sym_char_literal_token1] = ACTIONS(4388), [anon_sym_SQUOTE] = ACTIONS(4386), [anon_sym___DATE__] = ACTIONS(4386), [anon_sym___FILE__] = ACTIONS(4386), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4386), [anon_sym___FUNCTION__] = ACTIONS(4386), [anon_sym___LINE__] = ACTIONS(4386), [anon_sym___MODULE__] = ACTIONS(4386), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4386), [anon_sym___TIME__] = ACTIONS(4386), [anon_sym___TIMESTAMP__] = ACTIONS(4386), [anon_sym___VENDOR__] = ACTIONS(4386), [anon_sym___VERSION__] = ACTIONS(4386), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4388), [sym_float_literal] = ACTIONS(4388), [sym__string] = ACTIONS(4388), }, [2237] = { [sym_identifier] = ACTIONS(4398), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4400), [anon_sym_LBRACE] = ACTIONS(4400), [anon_sym_DOT] = ACTIONS(4400), [anon_sym_AMP] = ACTIONS(4400), [anon_sym_DASH] = ACTIONS(4398), [anon_sym_DASH_DASH] = ACTIONS(4400), [anon_sym_PLUS] = ACTIONS(4398), [anon_sym_PLUS_PLUS] = ACTIONS(4400), [anon_sym_BANG] = ACTIONS(4400), [anon_sym_LPAREN] = ACTIONS(4400), [anon_sym_RPAREN] = ACTIONS(4400), [anon_sym_LBRACK] = ACTIONS(4400), [anon_sym_SEMI] = ACTIONS(4400), [anon_sym_DOLLAR] = ACTIONS(4400), [anon_sym_STAR] = ACTIONS(4400), [anon_sym_TILDE] = ACTIONS(4400), [sym_bool] = ACTIONS(4398), [sym_byte] = ACTIONS(4398), [sym_ubyte] = ACTIONS(4398), [sym_char] = ACTIONS(4398), [sym_short] = ACTIONS(4398), [sym_ushort] = ACTIONS(4398), [sym_int] = ACTIONS(4398), [sym_uint] = ACTIONS(4398), [sym_long] = ACTIONS(4398), [sym_ulong] = ACTIONS(4398), [sym_cent] = ACTIONS(4398), [sym_ucent] = ACTIONS(4398), [sym_wchar] = ACTIONS(4398), [sym_dchar] = ACTIONS(4398), [sym_float] = ACTIONS(4398), [sym_double] = ACTIONS(4398), [sym_real] = ACTIONS(4398), [sym_ifloat] = ACTIONS(4398), [sym_idouble] = ACTIONS(4398), [sym_ireal] = ACTIONS(4398), [sym_cfloat] = ACTIONS(4398), [sym_cdouble] = ACTIONS(4398), [sym_creal] = ACTIONS(4398), [sym_size_t] = ACTIONS(4398), [sym_ptrdiff_t] = ACTIONS(4398), [sym_string] = ACTIONS(4398), [sym_cstring] = ACTIONS(4398), [sym_dstring] = ACTIONS(4398), [sym_wstring] = ACTIONS(4398), [sym_noreturn] = ACTIONS(4398), [sym_true] = ACTIONS(4398), [sym_false] = ACTIONS(4398), [sym_null] = ACTIONS(4398), [sym_super] = ACTIONS(4398), [sym_this] = ACTIONS(4398), [sym_assert] = ACTIONS(4398), [sym_auto] = ACTIONS(4398), [sym_cast] = ACTIONS(4398), [sym_catch] = ACTIONS(4398), [sym_const] = ACTIONS(4398), [sym_delegate] = ACTIONS(4398), [sym_delete] = ACTIONS(4398), [sym_do] = ACTIONS(4398), [sym_else] = ACTIONS(4398), [sym_finally] = ACTIONS(4398), [sym_function] = ACTIONS(4398), [sym_immutable] = ACTIONS(4398), [sym_import] = ACTIONS(4398), [sym_in] = ACTIONS(4398), [sym_inout] = ACTIONS(4398), [sym_is] = ACTIONS(4398), [sym_mixin] = ACTIONS(4398), [sym_new] = ACTIONS(4398), [sym_out] = ACTIONS(4398), [sym_ref] = ACTIONS(4398), [sym_shared] = ACTIONS(4398), [sym_throw] = ACTIONS(4398), [sym_typeid] = ACTIONS(4398), [sym_typeof] = ACTIONS(4398), [sym_traits] = ACTIONS(4398), [sym_vector] = ACTIONS(4398), [sym_void] = ACTIONS(4398), [anon_sym_BQUOTE] = ACTIONS(4400), [anon_sym_r_DQUOTE] = ACTIONS(4400), [anon_sym_x_DQUOTE] = ACTIONS(4400), [anon_sym_DQUOTE] = ACTIONS(4400), [anon_sym_i_BQUOTE] = ACTIONS(4400), [anon_sym_i_DQUOTE] = ACTIONS(4400), [anon_sym_iq_LBRACE] = ACTIONS(4400), [aux_sym_char_literal_token1] = ACTIONS(4400), [anon_sym_SQUOTE] = ACTIONS(4398), [anon_sym___DATE__] = ACTIONS(4398), [anon_sym___FILE__] = ACTIONS(4398), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4398), [anon_sym___FUNCTION__] = ACTIONS(4398), [anon_sym___LINE__] = ACTIONS(4398), [anon_sym___MODULE__] = ACTIONS(4398), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4398), [anon_sym___TIME__] = ACTIONS(4398), [anon_sym___TIMESTAMP__] = ACTIONS(4398), [anon_sym___VENDOR__] = ACTIONS(4398), [anon_sym___VERSION__] = ACTIONS(4398), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4400), [sym_float_literal] = ACTIONS(4400), [sym__string] = ACTIONS(4400), }, [2238] = { [sym_identifier] = ACTIONS(4406), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4408), [anon_sym_LBRACE] = ACTIONS(4408), [anon_sym_DOT] = ACTIONS(4408), [anon_sym_AMP] = ACTIONS(4408), [anon_sym_DASH] = ACTIONS(4406), [anon_sym_DASH_DASH] = ACTIONS(4408), [anon_sym_PLUS] = ACTIONS(4406), [anon_sym_PLUS_PLUS] = ACTIONS(4408), [anon_sym_BANG] = ACTIONS(4408), [anon_sym_LPAREN] = ACTIONS(4408), [anon_sym_RPAREN] = ACTIONS(4408), [anon_sym_LBRACK] = ACTIONS(4408), [anon_sym_SEMI] = ACTIONS(4408), [anon_sym_DOLLAR] = ACTIONS(4408), [anon_sym_STAR] = ACTIONS(4408), [anon_sym_TILDE] = ACTIONS(4408), [sym_bool] = ACTIONS(4406), [sym_byte] = ACTIONS(4406), [sym_ubyte] = ACTIONS(4406), [sym_char] = ACTIONS(4406), [sym_short] = ACTIONS(4406), [sym_ushort] = ACTIONS(4406), [sym_int] = ACTIONS(4406), [sym_uint] = ACTIONS(4406), [sym_long] = ACTIONS(4406), [sym_ulong] = ACTIONS(4406), [sym_cent] = ACTIONS(4406), [sym_ucent] = ACTIONS(4406), [sym_wchar] = ACTIONS(4406), [sym_dchar] = ACTIONS(4406), [sym_float] = ACTIONS(4406), [sym_double] = ACTIONS(4406), [sym_real] = ACTIONS(4406), [sym_ifloat] = ACTIONS(4406), [sym_idouble] = ACTIONS(4406), [sym_ireal] = ACTIONS(4406), [sym_cfloat] = ACTIONS(4406), [sym_cdouble] = ACTIONS(4406), [sym_creal] = ACTIONS(4406), [sym_size_t] = ACTIONS(4406), [sym_ptrdiff_t] = ACTIONS(4406), [sym_string] = ACTIONS(4406), [sym_cstring] = ACTIONS(4406), [sym_dstring] = ACTIONS(4406), [sym_wstring] = ACTIONS(4406), [sym_noreturn] = ACTIONS(4406), [sym_true] = ACTIONS(4406), [sym_false] = ACTIONS(4406), [sym_null] = ACTIONS(4406), [sym_super] = ACTIONS(4406), [sym_this] = ACTIONS(4406), [sym_assert] = ACTIONS(4406), [sym_auto] = ACTIONS(4406), [sym_cast] = ACTIONS(4406), [sym_catch] = ACTIONS(4406), [sym_const] = ACTIONS(4406), [sym_delegate] = ACTIONS(4406), [sym_delete] = ACTIONS(4406), [sym_do] = ACTIONS(4406), [sym_else] = ACTIONS(4406), [sym_finally] = ACTIONS(4406), [sym_function] = ACTIONS(4406), [sym_immutable] = ACTIONS(4406), [sym_import] = ACTIONS(4406), [sym_in] = ACTIONS(4406), [sym_inout] = ACTIONS(4406), [sym_is] = ACTIONS(4406), [sym_mixin] = ACTIONS(4406), [sym_new] = ACTIONS(4406), [sym_out] = ACTIONS(4406), [sym_ref] = ACTIONS(4406), [sym_shared] = ACTIONS(4406), [sym_throw] = ACTIONS(4406), [sym_typeid] = ACTIONS(4406), [sym_typeof] = ACTIONS(4406), [sym_traits] = ACTIONS(4406), [sym_vector] = ACTIONS(4406), [sym_void] = ACTIONS(4406), [anon_sym_BQUOTE] = ACTIONS(4408), [anon_sym_r_DQUOTE] = ACTIONS(4408), [anon_sym_x_DQUOTE] = ACTIONS(4408), [anon_sym_DQUOTE] = ACTIONS(4408), [anon_sym_i_BQUOTE] = ACTIONS(4408), [anon_sym_i_DQUOTE] = ACTIONS(4408), [anon_sym_iq_LBRACE] = ACTIONS(4408), [aux_sym_char_literal_token1] = ACTIONS(4408), [anon_sym_SQUOTE] = ACTIONS(4406), [anon_sym___DATE__] = ACTIONS(4406), [anon_sym___FILE__] = ACTIONS(4406), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4406), [anon_sym___FUNCTION__] = ACTIONS(4406), [anon_sym___LINE__] = ACTIONS(4406), [anon_sym___MODULE__] = ACTIONS(4406), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4406), [anon_sym___TIME__] = ACTIONS(4406), [anon_sym___TIMESTAMP__] = ACTIONS(4406), [anon_sym___VENDOR__] = ACTIONS(4406), [anon_sym___VERSION__] = ACTIONS(4406), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4408), [sym_float_literal] = ACTIONS(4408), [sym__string] = ACTIONS(4408), }, [2239] = { [sym_identifier] = ACTIONS(4434), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4436), [anon_sym_LBRACE] = ACTIONS(4436), [anon_sym_DOT] = ACTIONS(4436), [anon_sym_AMP] = ACTIONS(4436), [anon_sym_DASH] = ACTIONS(4434), [anon_sym_DASH_DASH] = ACTIONS(4436), [anon_sym_PLUS] = ACTIONS(4434), [anon_sym_PLUS_PLUS] = ACTIONS(4436), [anon_sym_BANG] = ACTIONS(4436), [anon_sym_LPAREN] = ACTIONS(4436), [anon_sym_RPAREN] = ACTIONS(4436), [anon_sym_LBRACK] = ACTIONS(4436), [anon_sym_SEMI] = ACTIONS(4436), [anon_sym_DOLLAR] = ACTIONS(4436), [anon_sym_STAR] = ACTIONS(4436), [anon_sym_TILDE] = ACTIONS(4436), [sym_bool] = ACTIONS(4434), [sym_byte] = ACTIONS(4434), [sym_ubyte] = ACTIONS(4434), [sym_char] = ACTIONS(4434), [sym_short] = ACTIONS(4434), [sym_ushort] = ACTIONS(4434), [sym_int] = ACTIONS(4434), [sym_uint] = ACTIONS(4434), [sym_long] = ACTIONS(4434), [sym_ulong] = ACTIONS(4434), [sym_cent] = ACTIONS(4434), [sym_ucent] = ACTIONS(4434), [sym_wchar] = ACTIONS(4434), [sym_dchar] = ACTIONS(4434), [sym_float] = ACTIONS(4434), [sym_double] = ACTIONS(4434), [sym_real] = ACTIONS(4434), [sym_ifloat] = ACTIONS(4434), [sym_idouble] = ACTIONS(4434), [sym_ireal] = ACTIONS(4434), [sym_cfloat] = ACTIONS(4434), [sym_cdouble] = ACTIONS(4434), [sym_creal] = ACTIONS(4434), [sym_size_t] = ACTIONS(4434), [sym_ptrdiff_t] = ACTIONS(4434), [sym_string] = ACTIONS(4434), [sym_cstring] = ACTIONS(4434), [sym_dstring] = ACTIONS(4434), [sym_wstring] = ACTIONS(4434), [sym_noreturn] = ACTIONS(4434), [sym_true] = ACTIONS(4434), [sym_false] = ACTIONS(4434), [sym_null] = ACTIONS(4434), [sym_super] = ACTIONS(4434), [sym_this] = ACTIONS(4434), [sym_assert] = ACTIONS(4434), [sym_auto] = ACTIONS(4434), [sym_cast] = ACTIONS(4434), [sym_catch] = ACTIONS(4434), [sym_const] = ACTIONS(4434), [sym_delegate] = ACTIONS(4434), [sym_delete] = ACTIONS(4434), [sym_do] = ACTIONS(4434), [sym_else] = ACTIONS(4434), [sym_finally] = ACTIONS(4434), [sym_function] = ACTIONS(4434), [sym_immutable] = ACTIONS(4434), [sym_import] = ACTIONS(4434), [sym_in] = ACTIONS(4434), [sym_inout] = ACTIONS(4434), [sym_is] = ACTIONS(4434), [sym_mixin] = ACTIONS(4434), [sym_new] = ACTIONS(4434), [sym_out] = ACTIONS(4434), [sym_ref] = ACTIONS(4434), [sym_shared] = ACTIONS(4434), [sym_throw] = ACTIONS(4434), [sym_typeid] = ACTIONS(4434), [sym_typeof] = ACTIONS(4434), [sym_traits] = ACTIONS(4434), [sym_vector] = ACTIONS(4434), [sym_void] = ACTIONS(4434), [anon_sym_BQUOTE] = ACTIONS(4436), [anon_sym_r_DQUOTE] = ACTIONS(4436), [anon_sym_x_DQUOTE] = ACTIONS(4436), [anon_sym_DQUOTE] = ACTIONS(4436), [anon_sym_i_BQUOTE] = ACTIONS(4436), [anon_sym_i_DQUOTE] = ACTIONS(4436), [anon_sym_iq_LBRACE] = ACTIONS(4436), [aux_sym_char_literal_token1] = ACTIONS(4436), [anon_sym_SQUOTE] = ACTIONS(4434), [anon_sym___DATE__] = ACTIONS(4434), [anon_sym___FILE__] = ACTIONS(4434), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4434), [anon_sym___FUNCTION__] = ACTIONS(4434), [anon_sym___LINE__] = ACTIONS(4434), [anon_sym___MODULE__] = ACTIONS(4434), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4434), [anon_sym___TIME__] = ACTIONS(4434), [anon_sym___TIMESTAMP__] = ACTIONS(4434), [anon_sym___VENDOR__] = ACTIONS(4434), [anon_sym___VERSION__] = ACTIONS(4434), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4436), [sym_float_literal] = ACTIONS(4436), [sym__string] = ACTIONS(4436), }, [2240] = { [sym_identifier] = ACTIONS(4460), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4462), [anon_sym_LBRACE] = ACTIONS(4462), [anon_sym_DOT] = ACTIONS(4462), [anon_sym_AMP] = ACTIONS(4462), [anon_sym_DASH] = ACTIONS(4460), [anon_sym_DASH_DASH] = ACTIONS(4462), [anon_sym_PLUS] = ACTIONS(4460), [anon_sym_PLUS_PLUS] = ACTIONS(4462), [anon_sym_BANG] = ACTIONS(4462), [anon_sym_LPAREN] = ACTIONS(4462), [anon_sym_RPAREN] = ACTIONS(4462), [anon_sym_LBRACK] = ACTIONS(4462), [anon_sym_SEMI] = ACTIONS(4462), [anon_sym_DOLLAR] = ACTIONS(4462), [anon_sym_STAR] = ACTIONS(4462), [anon_sym_TILDE] = ACTIONS(4462), [sym_bool] = ACTIONS(4460), [sym_byte] = ACTIONS(4460), [sym_ubyte] = ACTIONS(4460), [sym_char] = ACTIONS(4460), [sym_short] = ACTIONS(4460), [sym_ushort] = ACTIONS(4460), [sym_int] = ACTIONS(4460), [sym_uint] = ACTIONS(4460), [sym_long] = ACTIONS(4460), [sym_ulong] = ACTIONS(4460), [sym_cent] = ACTIONS(4460), [sym_ucent] = ACTIONS(4460), [sym_wchar] = ACTIONS(4460), [sym_dchar] = ACTIONS(4460), [sym_float] = ACTIONS(4460), [sym_double] = ACTIONS(4460), [sym_real] = ACTIONS(4460), [sym_ifloat] = ACTIONS(4460), [sym_idouble] = ACTIONS(4460), [sym_ireal] = ACTIONS(4460), [sym_cfloat] = ACTIONS(4460), [sym_cdouble] = ACTIONS(4460), [sym_creal] = ACTIONS(4460), [sym_size_t] = ACTIONS(4460), [sym_ptrdiff_t] = ACTIONS(4460), [sym_string] = ACTIONS(4460), [sym_cstring] = ACTIONS(4460), [sym_dstring] = ACTIONS(4460), [sym_wstring] = ACTIONS(4460), [sym_noreturn] = ACTIONS(4460), [sym_true] = ACTIONS(4460), [sym_false] = ACTIONS(4460), [sym_null] = ACTIONS(4460), [sym_super] = ACTIONS(4460), [sym_this] = ACTIONS(4460), [sym_assert] = ACTIONS(4460), [sym_auto] = ACTIONS(4460), [sym_cast] = ACTIONS(4460), [sym_catch] = ACTIONS(4460), [sym_const] = ACTIONS(4460), [sym_delegate] = ACTIONS(4460), [sym_delete] = ACTIONS(4460), [sym_do] = ACTIONS(4460), [sym_else] = ACTIONS(4460), [sym_finally] = ACTIONS(4460), [sym_function] = ACTIONS(4460), [sym_immutable] = ACTIONS(4460), [sym_import] = ACTIONS(4460), [sym_in] = ACTIONS(4460), [sym_inout] = ACTIONS(4460), [sym_is] = ACTIONS(4460), [sym_mixin] = ACTIONS(4460), [sym_new] = ACTIONS(4460), [sym_out] = ACTIONS(4460), [sym_ref] = ACTIONS(4460), [sym_shared] = ACTIONS(4460), [sym_throw] = ACTIONS(4460), [sym_typeid] = ACTIONS(4460), [sym_typeof] = ACTIONS(4460), [sym_traits] = ACTIONS(4460), [sym_vector] = ACTIONS(4460), [sym_void] = ACTIONS(4460), [anon_sym_BQUOTE] = ACTIONS(4462), [anon_sym_r_DQUOTE] = ACTIONS(4462), [anon_sym_x_DQUOTE] = ACTIONS(4462), [anon_sym_DQUOTE] = ACTIONS(4462), [anon_sym_i_BQUOTE] = ACTIONS(4462), [anon_sym_i_DQUOTE] = ACTIONS(4462), [anon_sym_iq_LBRACE] = ACTIONS(4462), [aux_sym_char_literal_token1] = ACTIONS(4462), [anon_sym_SQUOTE] = ACTIONS(4460), [anon_sym___DATE__] = ACTIONS(4460), [anon_sym___FILE__] = ACTIONS(4460), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4460), [anon_sym___FUNCTION__] = ACTIONS(4460), [anon_sym___LINE__] = ACTIONS(4460), [anon_sym___MODULE__] = ACTIONS(4460), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4460), [anon_sym___TIME__] = ACTIONS(4460), [anon_sym___TIMESTAMP__] = ACTIONS(4460), [anon_sym___VENDOR__] = ACTIONS(4460), [anon_sym___VERSION__] = ACTIONS(4460), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4462), [sym_float_literal] = ACTIONS(4462), [sym__string] = ACTIONS(4462), }, [2241] = { [sym_identifier] = ACTIONS(4892), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4894), [anon_sym_LBRACE] = ACTIONS(4894), [anon_sym_DOT] = ACTIONS(4894), [anon_sym_AMP] = ACTIONS(4894), [anon_sym_DASH] = ACTIONS(4892), [anon_sym_DASH_DASH] = ACTIONS(4894), [anon_sym_PLUS] = ACTIONS(4892), [anon_sym_PLUS_PLUS] = ACTIONS(4894), [anon_sym_BANG] = ACTIONS(4894), [anon_sym_LPAREN] = ACTIONS(4894), [anon_sym_RPAREN] = ACTIONS(4894), [anon_sym_LBRACK] = ACTIONS(4894), [anon_sym_SEMI] = ACTIONS(4894), [anon_sym_DOLLAR] = ACTIONS(4894), [anon_sym_STAR] = ACTIONS(4894), [anon_sym_TILDE] = ACTIONS(4894), [sym_bool] = ACTIONS(4892), [sym_byte] = ACTIONS(4892), [sym_ubyte] = ACTIONS(4892), [sym_char] = ACTIONS(4892), [sym_short] = ACTIONS(4892), [sym_ushort] = ACTIONS(4892), [sym_int] = ACTIONS(4892), [sym_uint] = ACTIONS(4892), [sym_long] = ACTIONS(4892), [sym_ulong] = ACTIONS(4892), [sym_cent] = ACTIONS(4892), [sym_ucent] = ACTIONS(4892), [sym_wchar] = ACTIONS(4892), [sym_dchar] = ACTIONS(4892), [sym_float] = ACTIONS(4892), [sym_double] = ACTIONS(4892), [sym_real] = ACTIONS(4892), [sym_ifloat] = ACTIONS(4892), [sym_idouble] = ACTIONS(4892), [sym_ireal] = ACTIONS(4892), [sym_cfloat] = ACTIONS(4892), [sym_cdouble] = ACTIONS(4892), [sym_creal] = ACTIONS(4892), [sym_size_t] = ACTIONS(4892), [sym_ptrdiff_t] = ACTIONS(4892), [sym_string] = ACTIONS(4892), [sym_cstring] = ACTIONS(4892), [sym_dstring] = ACTIONS(4892), [sym_wstring] = ACTIONS(4892), [sym_noreturn] = ACTIONS(4892), [sym_true] = ACTIONS(4892), [sym_false] = ACTIONS(4892), [sym_null] = ACTIONS(4892), [sym_super] = ACTIONS(4892), [sym_this] = ACTIONS(4892), [sym_assert] = ACTIONS(4892), [sym_auto] = ACTIONS(4892), [sym_cast] = ACTIONS(4892), [sym_catch] = ACTIONS(4892), [sym_const] = ACTIONS(4892), [sym_delegate] = ACTIONS(4892), [sym_delete] = ACTIONS(4892), [sym_do] = ACTIONS(4892), [sym_else] = ACTIONS(4892), [sym_finally] = ACTIONS(4892), [sym_function] = ACTIONS(4892), [sym_immutable] = ACTIONS(4892), [sym_import] = ACTIONS(4892), [sym_in] = ACTIONS(4892), [sym_inout] = ACTIONS(4892), [sym_is] = ACTIONS(4892), [sym_mixin] = ACTIONS(4892), [sym_new] = ACTIONS(4892), [sym_out] = ACTIONS(4892), [sym_ref] = ACTIONS(4892), [sym_shared] = ACTIONS(4892), [sym_throw] = ACTIONS(4892), [sym_typeid] = ACTIONS(4892), [sym_typeof] = ACTIONS(4892), [sym_traits] = ACTIONS(4892), [sym_vector] = ACTIONS(4892), [sym_void] = ACTIONS(4892), [anon_sym_BQUOTE] = ACTIONS(4894), [anon_sym_r_DQUOTE] = ACTIONS(4894), [anon_sym_x_DQUOTE] = ACTIONS(4894), [anon_sym_DQUOTE] = ACTIONS(4894), [anon_sym_i_BQUOTE] = ACTIONS(4894), [anon_sym_i_DQUOTE] = ACTIONS(4894), [anon_sym_iq_LBRACE] = ACTIONS(4894), [aux_sym_char_literal_token1] = ACTIONS(4894), [anon_sym_SQUOTE] = ACTIONS(4892), [anon_sym___DATE__] = ACTIONS(4892), [anon_sym___FILE__] = ACTIONS(4892), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4892), [anon_sym___FUNCTION__] = ACTIONS(4892), [anon_sym___LINE__] = ACTIONS(4892), [anon_sym___MODULE__] = ACTIONS(4892), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4892), [anon_sym___TIME__] = ACTIONS(4892), [anon_sym___TIMESTAMP__] = ACTIONS(4892), [anon_sym___VENDOR__] = ACTIONS(4892), [anon_sym___VERSION__] = ACTIONS(4892), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4894), [sym_float_literal] = ACTIONS(4894), [sym__string] = ACTIONS(4894), }, [2242] = { [sym_identifier] = ACTIONS(4468), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4470), [anon_sym_LBRACE] = ACTIONS(4470), [anon_sym_DOT] = ACTIONS(4470), [anon_sym_AMP] = ACTIONS(4470), [anon_sym_DASH] = ACTIONS(4468), [anon_sym_DASH_DASH] = ACTIONS(4470), [anon_sym_PLUS] = ACTIONS(4468), [anon_sym_PLUS_PLUS] = ACTIONS(4470), [anon_sym_BANG] = ACTIONS(4470), [anon_sym_LPAREN] = ACTIONS(4470), [anon_sym_RPAREN] = ACTIONS(4470), [anon_sym_LBRACK] = ACTIONS(4470), [anon_sym_SEMI] = ACTIONS(4470), [anon_sym_DOLLAR] = ACTIONS(4470), [anon_sym_STAR] = ACTIONS(4470), [anon_sym_TILDE] = ACTIONS(4470), [sym_bool] = ACTIONS(4468), [sym_byte] = ACTIONS(4468), [sym_ubyte] = ACTIONS(4468), [sym_char] = ACTIONS(4468), [sym_short] = ACTIONS(4468), [sym_ushort] = ACTIONS(4468), [sym_int] = ACTIONS(4468), [sym_uint] = ACTIONS(4468), [sym_long] = ACTIONS(4468), [sym_ulong] = ACTIONS(4468), [sym_cent] = ACTIONS(4468), [sym_ucent] = ACTIONS(4468), [sym_wchar] = ACTIONS(4468), [sym_dchar] = ACTIONS(4468), [sym_float] = ACTIONS(4468), [sym_double] = ACTIONS(4468), [sym_real] = ACTIONS(4468), [sym_ifloat] = ACTIONS(4468), [sym_idouble] = ACTIONS(4468), [sym_ireal] = ACTIONS(4468), [sym_cfloat] = ACTIONS(4468), [sym_cdouble] = ACTIONS(4468), [sym_creal] = ACTIONS(4468), [sym_size_t] = ACTIONS(4468), [sym_ptrdiff_t] = ACTIONS(4468), [sym_string] = ACTIONS(4468), [sym_cstring] = ACTIONS(4468), [sym_dstring] = ACTIONS(4468), [sym_wstring] = ACTIONS(4468), [sym_noreturn] = ACTIONS(4468), [sym_true] = ACTIONS(4468), [sym_false] = ACTIONS(4468), [sym_null] = ACTIONS(4468), [sym_super] = ACTIONS(4468), [sym_this] = ACTIONS(4468), [sym_assert] = ACTIONS(4468), [sym_auto] = ACTIONS(4468), [sym_cast] = ACTIONS(4468), [sym_catch] = ACTIONS(4468), [sym_const] = ACTIONS(4468), [sym_delegate] = ACTIONS(4468), [sym_delete] = ACTIONS(4468), [sym_do] = ACTIONS(4468), [sym_else] = ACTIONS(4468), [sym_finally] = ACTIONS(4468), [sym_function] = ACTIONS(4468), [sym_immutable] = ACTIONS(4468), [sym_import] = ACTIONS(4468), [sym_in] = ACTIONS(4468), [sym_inout] = ACTIONS(4468), [sym_is] = ACTIONS(4468), [sym_mixin] = ACTIONS(4468), [sym_new] = ACTIONS(4468), [sym_out] = ACTIONS(4468), [sym_ref] = ACTIONS(4468), [sym_shared] = ACTIONS(4468), [sym_throw] = ACTIONS(4468), [sym_typeid] = ACTIONS(4468), [sym_typeof] = ACTIONS(4468), [sym_traits] = ACTIONS(4468), [sym_vector] = ACTIONS(4468), [sym_void] = ACTIONS(4468), [anon_sym_BQUOTE] = ACTIONS(4470), [anon_sym_r_DQUOTE] = ACTIONS(4470), [anon_sym_x_DQUOTE] = ACTIONS(4470), [anon_sym_DQUOTE] = ACTIONS(4470), [anon_sym_i_BQUOTE] = ACTIONS(4470), [anon_sym_i_DQUOTE] = ACTIONS(4470), [anon_sym_iq_LBRACE] = ACTIONS(4470), [aux_sym_char_literal_token1] = ACTIONS(4470), [anon_sym_SQUOTE] = ACTIONS(4468), [anon_sym___DATE__] = ACTIONS(4468), [anon_sym___FILE__] = ACTIONS(4468), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4468), [anon_sym___FUNCTION__] = ACTIONS(4468), [anon_sym___LINE__] = ACTIONS(4468), [anon_sym___MODULE__] = ACTIONS(4468), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4468), [anon_sym___TIME__] = ACTIONS(4468), [anon_sym___TIMESTAMP__] = ACTIONS(4468), [anon_sym___VENDOR__] = ACTIONS(4468), [anon_sym___VERSION__] = ACTIONS(4468), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4470), [sym_float_literal] = ACTIONS(4470), [sym__string] = ACTIONS(4470), }, [2243] = { [sym_identifier] = ACTIONS(4476), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4478), [anon_sym_LBRACE] = ACTIONS(4478), [anon_sym_DOT] = ACTIONS(4478), [anon_sym_AMP] = ACTIONS(4478), [anon_sym_DASH] = ACTIONS(4476), [anon_sym_DASH_DASH] = ACTIONS(4478), [anon_sym_PLUS] = ACTIONS(4476), [anon_sym_PLUS_PLUS] = ACTIONS(4478), [anon_sym_BANG] = ACTIONS(4478), [anon_sym_LPAREN] = ACTIONS(4478), [anon_sym_RPAREN] = ACTIONS(4478), [anon_sym_LBRACK] = ACTIONS(4478), [anon_sym_SEMI] = ACTIONS(4478), [anon_sym_DOLLAR] = ACTIONS(4478), [anon_sym_STAR] = ACTIONS(4478), [anon_sym_TILDE] = ACTIONS(4478), [sym_bool] = ACTIONS(4476), [sym_byte] = ACTIONS(4476), [sym_ubyte] = ACTIONS(4476), [sym_char] = ACTIONS(4476), [sym_short] = ACTIONS(4476), [sym_ushort] = ACTIONS(4476), [sym_int] = ACTIONS(4476), [sym_uint] = ACTIONS(4476), [sym_long] = ACTIONS(4476), [sym_ulong] = ACTIONS(4476), [sym_cent] = ACTIONS(4476), [sym_ucent] = ACTIONS(4476), [sym_wchar] = ACTIONS(4476), [sym_dchar] = ACTIONS(4476), [sym_float] = ACTIONS(4476), [sym_double] = ACTIONS(4476), [sym_real] = ACTIONS(4476), [sym_ifloat] = ACTIONS(4476), [sym_idouble] = ACTIONS(4476), [sym_ireal] = ACTIONS(4476), [sym_cfloat] = ACTIONS(4476), [sym_cdouble] = ACTIONS(4476), [sym_creal] = ACTIONS(4476), [sym_size_t] = ACTIONS(4476), [sym_ptrdiff_t] = ACTIONS(4476), [sym_string] = ACTIONS(4476), [sym_cstring] = ACTIONS(4476), [sym_dstring] = ACTIONS(4476), [sym_wstring] = ACTIONS(4476), [sym_noreturn] = ACTIONS(4476), [sym_true] = ACTIONS(4476), [sym_false] = ACTIONS(4476), [sym_null] = ACTIONS(4476), [sym_super] = ACTIONS(4476), [sym_this] = ACTIONS(4476), [sym_assert] = ACTIONS(4476), [sym_auto] = ACTIONS(4476), [sym_cast] = ACTIONS(4476), [sym_catch] = ACTIONS(4476), [sym_const] = ACTIONS(4476), [sym_delegate] = ACTIONS(4476), [sym_delete] = ACTIONS(4476), [sym_do] = ACTIONS(4476), [sym_else] = ACTIONS(4476), [sym_finally] = ACTIONS(4476), [sym_function] = ACTIONS(4476), [sym_immutable] = ACTIONS(4476), [sym_import] = ACTIONS(4476), [sym_in] = ACTIONS(4476), [sym_inout] = ACTIONS(4476), [sym_is] = ACTIONS(4476), [sym_mixin] = ACTIONS(4476), [sym_new] = ACTIONS(4476), [sym_out] = ACTIONS(4476), [sym_ref] = ACTIONS(4476), [sym_shared] = ACTIONS(4476), [sym_throw] = ACTIONS(4476), [sym_typeid] = ACTIONS(4476), [sym_typeof] = ACTIONS(4476), [sym_traits] = ACTIONS(4476), [sym_vector] = ACTIONS(4476), [sym_void] = ACTIONS(4476), [anon_sym_BQUOTE] = ACTIONS(4478), [anon_sym_r_DQUOTE] = ACTIONS(4478), [anon_sym_x_DQUOTE] = ACTIONS(4478), [anon_sym_DQUOTE] = ACTIONS(4478), [anon_sym_i_BQUOTE] = ACTIONS(4478), [anon_sym_i_DQUOTE] = ACTIONS(4478), [anon_sym_iq_LBRACE] = ACTIONS(4478), [aux_sym_char_literal_token1] = ACTIONS(4478), [anon_sym_SQUOTE] = ACTIONS(4476), [anon_sym___DATE__] = ACTIONS(4476), [anon_sym___FILE__] = ACTIONS(4476), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4476), [anon_sym___FUNCTION__] = ACTIONS(4476), [anon_sym___LINE__] = ACTIONS(4476), [anon_sym___MODULE__] = ACTIONS(4476), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4476), [anon_sym___TIME__] = ACTIONS(4476), [anon_sym___TIMESTAMP__] = ACTIONS(4476), [anon_sym___VENDOR__] = ACTIONS(4476), [anon_sym___VERSION__] = ACTIONS(4476), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4478), [sym_float_literal] = ACTIONS(4478), [sym__string] = ACTIONS(4478), }, [2244] = { [sym_identifier] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2643), [anon_sym_LBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(2643), [anon_sym_AMP] = ACTIONS(2643), [anon_sym_DASH] = ACTIONS(2645), [anon_sym_DASH_DASH] = ACTIONS(2643), [anon_sym_PLUS] = ACTIONS(2645), [anon_sym_PLUS_PLUS] = ACTIONS(2643), [anon_sym_BANG] = ACTIONS(2643), [anon_sym_LPAREN] = ACTIONS(2643), [anon_sym_RPAREN] = ACTIONS(2643), [anon_sym_LBRACK] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_DOLLAR] = ACTIONS(2643), [anon_sym_STAR] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2643), [sym_bool] = ACTIONS(2645), [sym_byte] = ACTIONS(2645), [sym_ubyte] = ACTIONS(2645), [sym_char] = ACTIONS(2645), [sym_short] = ACTIONS(2645), [sym_ushort] = ACTIONS(2645), [sym_int] = ACTIONS(2645), [sym_uint] = ACTIONS(2645), [sym_long] = ACTIONS(2645), [sym_ulong] = ACTIONS(2645), [sym_cent] = ACTIONS(2645), [sym_ucent] = ACTIONS(2645), [sym_wchar] = ACTIONS(2645), [sym_dchar] = ACTIONS(2645), [sym_float] = ACTIONS(2645), [sym_double] = ACTIONS(2645), [sym_real] = ACTIONS(2645), [sym_ifloat] = ACTIONS(2645), [sym_idouble] = ACTIONS(2645), [sym_ireal] = ACTIONS(2645), [sym_cfloat] = ACTIONS(2645), [sym_cdouble] = ACTIONS(2645), [sym_creal] = ACTIONS(2645), [sym_size_t] = ACTIONS(2645), [sym_ptrdiff_t] = ACTIONS(2645), [sym_string] = ACTIONS(2645), [sym_cstring] = ACTIONS(2645), [sym_dstring] = ACTIONS(2645), [sym_wstring] = ACTIONS(2645), [sym_noreturn] = ACTIONS(2645), [sym_true] = ACTIONS(2645), [sym_false] = ACTIONS(2645), [sym_null] = ACTIONS(2645), [sym_super] = ACTIONS(2645), [sym_this] = ACTIONS(2645), [sym_assert] = ACTIONS(2645), [sym_auto] = ACTIONS(2645), [sym_cast] = ACTIONS(2645), [sym_catch] = ACTIONS(2645), [sym_const] = ACTIONS(2645), [sym_delegate] = ACTIONS(2645), [sym_delete] = ACTIONS(2645), [sym_do] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_finally] = ACTIONS(2645), [sym_function] = ACTIONS(2645), [sym_immutable] = ACTIONS(2645), [sym_import] = ACTIONS(2645), [sym_in] = ACTIONS(2645), [sym_inout] = ACTIONS(2645), [sym_is] = ACTIONS(2645), [sym_mixin] = ACTIONS(2645), [sym_new] = ACTIONS(2645), [sym_out] = ACTIONS(2645), [sym_ref] = ACTIONS(2645), [sym_shared] = ACTIONS(2645), [sym_throw] = ACTIONS(2645), [sym_typeid] = ACTIONS(2645), [sym_typeof] = ACTIONS(2645), [sym_traits] = ACTIONS(2645), [sym_vector] = ACTIONS(2645), [sym_void] = ACTIONS(2645), [anon_sym_BQUOTE] = ACTIONS(2643), [anon_sym_r_DQUOTE] = ACTIONS(2643), [anon_sym_x_DQUOTE] = ACTIONS(2643), [anon_sym_DQUOTE] = ACTIONS(2643), [anon_sym_i_BQUOTE] = ACTIONS(2643), [anon_sym_i_DQUOTE] = ACTIONS(2643), [anon_sym_iq_LBRACE] = ACTIONS(2643), [aux_sym_char_literal_token1] = ACTIONS(2643), [anon_sym_SQUOTE] = ACTIONS(2645), [anon_sym___DATE__] = ACTIONS(2645), [anon_sym___FILE__] = ACTIONS(2645), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2645), [anon_sym___FUNCTION__] = ACTIONS(2645), [anon_sym___LINE__] = ACTIONS(2645), [anon_sym___MODULE__] = ACTIONS(2645), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2645), [anon_sym___TIME__] = ACTIONS(2645), [anon_sym___TIMESTAMP__] = ACTIONS(2645), [anon_sym___VENDOR__] = ACTIONS(2645), [anon_sym___VERSION__] = ACTIONS(2645), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2643), [sym_float_literal] = ACTIONS(2643), [sym__string] = ACTIONS(2643), }, [2245] = { [sym_identifier] = ACTIONS(4484), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4486), [anon_sym_LBRACE] = ACTIONS(4486), [anon_sym_DOT] = ACTIONS(4486), [anon_sym_AMP] = ACTIONS(4486), [anon_sym_DASH] = ACTIONS(4484), [anon_sym_DASH_DASH] = ACTIONS(4486), [anon_sym_PLUS] = ACTIONS(4484), [anon_sym_PLUS_PLUS] = ACTIONS(4486), [anon_sym_BANG] = ACTIONS(4486), [anon_sym_LPAREN] = ACTIONS(4486), [anon_sym_RPAREN] = ACTIONS(4486), [anon_sym_LBRACK] = ACTIONS(4486), [anon_sym_SEMI] = ACTIONS(4486), [anon_sym_DOLLAR] = ACTIONS(4486), [anon_sym_STAR] = ACTIONS(4486), [anon_sym_TILDE] = ACTIONS(4486), [sym_bool] = ACTIONS(4484), [sym_byte] = ACTIONS(4484), [sym_ubyte] = ACTIONS(4484), [sym_char] = ACTIONS(4484), [sym_short] = ACTIONS(4484), [sym_ushort] = ACTIONS(4484), [sym_int] = ACTIONS(4484), [sym_uint] = ACTIONS(4484), [sym_long] = ACTIONS(4484), [sym_ulong] = ACTIONS(4484), [sym_cent] = ACTIONS(4484), [sym_ucent] = ACTIONS(4484), [sym_wchar] = ACTIONS(4484), [sym_dchar] = ACTIONS(4484), [sym_float] = ACTIONS(4484), [sym_double] = ACTIONS(4484), [sym_real] = ACTIONS(4484), [sym_ifloat] = ACTIONS(4484), [sym_idouble] = ACTIONS(4484), [sym_ireal] = ACTIONS(4484), [sym_cfloat] = ACTIONS(4484), [sym_cdouble] = ACTIONS(4484), [sym_creal] = ACTIONS(4484), [sym_size_t] = ACTIONS(4484), [sym_ptrdiff_t] = ACTIONS(4484), [sym_string] = ACTIONS(4484), [sym_cstring] = ACTIONS(4484), [sym_dstring] = ACTIONS(4484), [sym_wstring] = ACTIONS(4484), [sym_noreturn] = ACTIONS(4484), [sym_true] = ACTIONS(4484), [sym_false] = ACTIONS(4484), [sym_null] = ACTIONS(4484), [sym_super] = ACTIONS(4484), [sym_this] = ACTIONS(4484), [sym_assert] = ACTIONS(4484), [sym_auto] = ACTIONS(4484), [sym_cast] = ACTIONS(4484), [sym_catch] = ACTIONS(4484), [sym_const] = ACTIONS(4484), [sym_delegate] = ACTIONS(4484), [sym_delete] = ACTIONS(4484), [sym_do] = ACTIONS(4484), [sym_else] = ACTIONS(4484), [sym_finally] = ACTIONS(4484), [sym_function] = ACTIONS(4484), [sym_immutable] = ACTIONS(4484), [sym_import] = ACTIONS(4484), [sym_in] = ACTIONS(4484), [sym_inout] = ACTIONS(4484), [sym_is] = ACTIONS(4484), [sym_mixin] = ACTIONS(4484), [sym_new] = ACTIONS(4484), [sym_out] = ACTIONS(4484), [sym_ref] = ACTIONS(4484), [sym_shared] = ACTIONS(4484), [sym_throw] = ACTIONS(4484), [sym_typeid] = ACTIONS(4484), [sym_typeof] = ACTIONS(4484), [sym_traits] = ACTIONS(4484), [sym_vector] = ACTIONS(4484), [sym_void] = ACTIONS(4484), [anon_sym_BQUOTE] = ACTIONS(4486), [anon_sym_r_DQUOTE] = ACTIONS(4486), [anon_sym_x_DQUOTE] = ACTIONS(4486), [anon_sym_DQUOTE] = ACTIONS(4486), [anon_sym_i_BQUOTE] = ACTIONS(4486), [anon_sym_i_DQUOTE] = ACTIONS(4486), [anon_sym_iq_LBRACE] = ACTIONS(4486), [aux_sym_char_literal_token1] = ACTIONS(4486), [anon_sym_SQUOTE] = ACTIONS(4484), [anon_sym___DATE__] = ACTIONS(4484), [anon_sym___FILE__] = ACTIONS(4484), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4484), [anon_sym___FUNCTION__] = ACTIONS(4484), [anon_sym___LINE__] = ACTIONS(4484), [anon_sym___MODULE__] = ACTIONS(4484), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4484), [anon_sym___TIME__] = ACTIONS(4484), [anon_sym___TIMESTAMP__] = ACTIONS(4484), [anon_sym___VENDOR__] = ACTIONS(4484), [anon_sym___VERSION__] = ACTIONS(4484), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4486), [sym_float_literal] = ACTIONS(4486), [sym__string] = ACTIONS(4486), }, [2246] = { [sym_identifier] = ACTIONS(4488), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4490), [anon_sym_LBRACE] = ACTIONS(4490), [anon_sym_DOT] = ACTIONS(4490), [anon_sym_AMP] = ACTIONS(4490), [anon_sym_DASH] = ACTIONS(4488), [anon_sym_DASH_DASH] = ACTIONS(4490), [anon_sym_PLUS] = ACTIONS(4488), [anon_sym_PLUS_PLUS] = ACTIONS(4490), [anon_sym_BANG] = ACTIONS(4490), [anon_sym_LPAREN] = ACTIONS(4490), [anon_sym_RPAREN] = ACTIONS(4490), [anon_sym_LBRACK] = ACTIONS(4490), [anon_sym_SEMI] = ACTIONS(4490), [anon_sym_DOLLAR] = ACTIONS(4490), [anon_sym_STAR] = ACTIONS(4490), [anon_sym_TILDE] = ACTIONS(4490), [sym_bool] = ACTIONS(4488), [sym_byte] = ACTIONS(4488), [sym_ubyte] = ACTIONS(4488), [sym_char] = ACTIONS(4488), [sym_short] = ACTIONS(4488), [sym_ushort] = ACTIONS(4488), [sym_int] = ACTIONS(4488), [sym_uint] = ACTIONS(4488), [sym_long] = ACTIONS(4488), [sym_ulong] = ACTIONS(4488), [sym_cent] = ACTIONS(4488), [sym_ucent] = ACTIONS(4488), [sym_wchar] = ACTIONS(4488), [sym_dchar] = ACTIONS(4488), [sym_float] = ACTIONS(4488), [sym_double] = ACTIONS(4488), [sym_real] = ACTIONS(4488), [sym_ifloat] = ACTIONS(4488), [sym_idouble] = ACTIONS(4488), [sym_ireal] = ACTIONS(4488), [sym_cfloat] = ACTIONS(4488), [sym_cdouble] = ACTIONS(4488), [sym_creal] = ACTIONS(4488), [sym_size_t] = ACTIONS(4488), [sym_ptrdiff_t] = ACTIONS(4488), [sym_string] = ACTIONS(4488), [sym_cstring] = ACTIONS(4488), [sym_dstring] = ACTIONS(4488), [sym_wstring] = ACTIONS(4488), [sym_noreturn] = ACTIONS(4488), [sym_true] = ACTIONS(4488), [sym_false] = ACTIONS(4488), [sym_null] = ACTIONS(4488), [sym_super] = ACTIONS(4488), [sym_this] = ACTIONS(4488), [sym_assert] = ACTIONS(4488), [sym_auto] = ACTIONS(4488), [sym_cast] = ACTIONS(4488), [sym_catch] = ACTIONS(4488), [sym_const] = ACTIONS(4488), [sym_delegate] = ACTIONS(4488), [sym_delete] = ACTIONS(4488), [sym_do] = ACTIONS(4488), [sym_else] = ACTIONS(4488), [sym_finally] = ACTIONS(4488), [sym_function] = ACTIONS(4488), [sym_immutable] = ACTIONS(4488), [sym_import] = ACTIONS(4488), [sym_in] = ACTIONS(4488), [sym_inout] = ACTIONS(4488), [sym_is] = ACTIONS(4488), [sym_mixin] = ACTIONS(4488), [sym_new] = ACTIONS(4488), [sym_out] = ACTIONS(4488), [sym_ref] = ACTIONS(4488), [sym_shared] = ACTIONS(4488), [sym_throw] = ACTIONS(4488), [sym_typeid] = ACTIONS(4488), [sym_typeof] = ACTIONS(4488), [sym_traits] = ACTIONS(4488), [sym_vector] = ACTIONS(4488), [sym_void] = ACTIONS(4488), [anon_sym_BQUOTE] = ACTIONS(4490), [anon_sym_r_DQUOTE] = ACTIONS(4490), [anon_sym_x_DQUOTE] = ACTIONS(4490), [anon_sym_DQUOTE] = ACTIONS(4490), [anon_sym_i_BQUOTE] = ACTIONS(4490), [anon_sym_i_DQUOTE] = ACTIONS(4490), [anon_sym_iq_LBRACE] = ACTIONS(4490), [aux_sym_char_literal_token1] = ACTIONS(4490), [anon_sym_SQUOTE] = ACTIONS(4488), [anon_sym___DATE__] = ACTIONS(4488), [anon_sym___FILE__] = ACTIONS(4488), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4488), [anon_sym___FUNCTION__] = ACTIONS(4488), [anon_sym___LINE__] = ACTIONS(4488), [anon_sym___MODULE__] = ACTIONS(4488), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4488), [anon_sym___TIME__] = ACTIONS(4488), [anon_sym___TIMESTAMP__] = ACTIONS(4488), [anon_sym___VENDOR__] = ACTIONS(4488), [anon_sym___VERSION__] = ACTIONS(4488), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4490), [sym_float_literal] = ACTIONS(4490), [sym__string] = ACTIONS(4490), }, [2247] = { [sym_identifier] = ACTIONS(4492), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4494), [anon_sym_LBRACE] = ACTIONS(4494), [anon_sym_DOT] = ACTIONS(4494), [anon_sym_AMP] = ACTIONS(4494), [anon_sym_DASH] = ACTIONS(4492), [anon_sym_DASH_DASH] = ACTIONS(4494), [anon_sym_PLUS] = ACTIONS(4492), [anon_sym_PLUS_PLUS] = ACTIONS(4494), [anon_sym_BANG] = ACTIONS(4494), [anon_sym_LPAREN] = ACTIONS(4494), [anon_sym_RPAREN] = ACTIONS(4494), [anon_sym_LBRACK] = ACTIONS(4494), [anon_sym_SEMI] = ACTIONS(4494), [anon_sym_DOLLAR] = ACTIONS(4494), [anon_sym_STAR] = ACTIONS(4494), [anon_sym_TILDE] = ACTIONS(4494), [sym_bool] = ACTIONS(4492), [sym_byte] = ACTIONS(4492), [sym_ubyte] = ACTIONS(4492), [sym_char] = ACTIONS(4492), [sym_short] = ACTIONS(4492), [sym_ushort] = ACTIONS(4492), [sym_int] = ACTIONS(4492), [sym_uint] = ACTIONS(4492), [sym_long] = ACTIONS(4492), [sym_ulong] = ACTIONS(4492), [sym_cent] = ACTIONS(4492), [sym_ucent] = ACTIONS(4492), [sym_wchar] = ACTIONS(4492), [sym_dchar] = ACTIONS(4492), [sym_float] = ACTIONS(4492), [sym_double] = ACTIONS(4492), [sym_real] = ACTIONS(4492), [sym_ifloat] = ACTIONS(4492), [sym_idouble] = ACTIONS(4492), [sym_ireal] = ACTIONS(4492), [sym_cfloat] = ACTIONS(4492), [sym_cdouble] = ACTIONS(4492), [sym_creal] = ACTIONS(4492), [sym_size_t] = ACTIONS(4492), [sym_ptrdiff_t] = ACTIONS(4492), [sym_string] = ACTIONS(4492), [sym_cstring] = ACTIONS(4492), [sym_dstring] = ACTIONS(4492), [sym_wstring] = ACTIONS(4492), [sym_noreturn] = ACTIONS(4492), [sym_true] = ACTIONS(4492), [sym_false] = ACTIONS(4492), [sym_null] = ACTIONS(4492), [sym_super] = ACTIONS(4492), [sym_this] = ACTIONS(4492), [sym_assert] = ACTIONS(4492), [sym_auto] = ACTIONS(4492), [sym_cast] = ACTIONS(4492), [sym_catch] = ACTIONS(4492), [sym_const] = ACTIONS(4492), [sym_delegate] = ACTIONS(4492), [sym_delete] = ACTIONS(4492), [sym_do] = ACTIONS(4492), [sym_else] = ACTIONS(4492), [sym_finally] = ACTIONS(4492), [sym_function] = ACTIONS(4492), [sym_immutable] = ACTIONS(4492), [sym_import] = ACTIONS(4492), [sym_in] = ACTIONS(4492), [sym_inout] = ACTIONS(4492), [sym_is] = ACTIONS(4492), [sym_mixin] = ACTIONS(4492), [sym_new] = ACTIONS(4492), [sym_out] = ACTIONS(4492), [sym_ref] = ACTIONS(4492), [sym_shared] = ACTIONS(4492), [sym_throw] = ACTIONS(4492), [sym_typeid] = ACTIONS(4492), [sym_typeof] = ACTIONS(4492), [sym_traits] = ACTIONS(4492), [sym_vector] = ACTIONS(4492), [sym_void] = ACTIONS(4492), [anon_sym_BQUOTE] = ACTIONS(4494), [anon_sym_r_DQUOTE] = ACTIONS(4494), [anon_sym_x_DQUOTE] = ACTIONS(4494), [anon_sym_DQUOTE] = ACTIONS(4494), [anon_sym_i_BQUOTE] = ACTIONS(4494), [anon_sym_i_DQUOTE] = ACTIONS(4494), [anon_sym_iq_LBRACE] = ACTIONS(4494), [aux_sym_char_literal_token1] = ACTIONS(4494), [anon_sym_SQUOTE] = ACTIONS(4492), [anon_sym___DATE__] = ACTIONS(4492), [anon_sym___FILE__] = ACTIONS(4492), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4492), [anon_sym___FUNCTION__] = ACTIONS(4492), [anon_sym___LINE__] = ACTIONS(4492), [anon_sym___MODULE__] = ACTIONS(4492), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4492), [anon_sym___TIME__] = ACTIONS(4492), [anon_sym___TIMESTAMP__] = ACTIONS(4492), [anon_sym___VENDOR__] = ACTIONS(4492), [anon_sym___VERSION__] = ACTIONS(4492), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4494), [sym_float_literal] = ACTIONS(4494), [sym__string] = ACTIONS(4494), }, [2248] = { [sym_identifier] = ACTIONS(4504), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4506), [anon_sym_LBRACE] = ACTIONS(4506), [anon_sym_DOT] = ACTIONS(4506), [anon_sym_AMP] = ACTIONS(4506), [anon_sym_DASH] = ACTIONS(4504), [anon_sym_DASH_DASH] = ACTIONS(4506), [anon_sym_PLUS] = ACTIONS(4504), [anon_sym_PLUS_PLUS] = ACTIONS(4506), [anon_sym_BANG] = ACTIONS(4506), [anon_sym_LPAREN] = ACTIONS(4506), [anon_sym_RPAREN] = ACTIONS(4506), [anon_sym_LBRACK] = ACTIONS(4506), [anon_sym_SEMI] = ACTIONS(4506), [anon_sym_DOLLAR] = ACTIONS(4506), [anon_sym_STAR] = ACTIONS(4506), [anon_sym_TILDE] = ACTIONS(4506), [sym_bool] = ACTIONS(4504), [sym_byte] = ACTIONS(4504), [sym_ubyte] = ACTIONS(4504), [sym_char] = ACTIONS(4504), [sym_short] = ACTIONS(4504), [sym_ushort] = ACTIONS(4504), [sym_int] = ACTIONS(4504), [sym_uint] = ACTIONS(4504), [sym_long] = ACTIONS(4504), [sym_ulong] = ACTIONS(4504), [sym_cent] = ACTIONS(4504), [sym_ucent] = ACTIONS(4504), [sym_wchar] = ACTIONS(4504), [sym_dchar] = ACTIONS(4504), [sym_float] = ACTIONS(4504), [sym_double] = ACTIONS(4504), [sym_real] = ACTIONS(4504), [sym_ifloat] = ACTIONS(4504), [sym_idouble] = ACTIONS(4504), [sym_ireal] = ACTIONS(4504), [sym_cfloat] = ACTIONS(4504), [sym_cdouble] = ACTIONS(4504), [sym_creal] = ACTIONS(4504), [sym_size_t] = ACTIONS(4504), [sym_ptrdiff_t] = ACTIONS(4504), [sym_string] = ACTIONS(4504), [sym_cstring] = ACTIONS(4504), [sym_dstring] = ACTIONS(4504), [sym_wstring] = ACTIONS(4504), [sym_noreturn] = ACTIONS(4504), [sym_true] = ACTIONS(4504), [sym_false] = ACTIONS(4504), [sym_null] = ACTIONS(4504), [sym_super] = ACTIONS(4504), [sym_this] = ACTIONS(4504), [sym_assert] = ACTIONS(4504), [sym_auto] = ACTIONS(4504), [sym_cast] = ACTIONS(4504), [sym_catch] = ACTIONS(4504), [sym_const] = ACTIONS(4504), [sym_delegate] = ACTIONS(4504), [sym_delete] = ACTIONS(4504), [sym_do] = ACTIONS(4504), [sym_else] = ACTIONS(4504), [sym_finally] = ACTIONS(4504), [sym_function] = ACTIONS(4504), [sym_immutable] = ACTIONS(4504), [sym_import] = ACTIONS(4504), [sym_in] = ACTIONS(4504), [sym_inout] = ACTIONS(4504), [sym_is] = ACTIONS(4504), [sym_mixin] = ACTIONS(4504), [sym_new] = ACTIONS(4504), [sym_out] = ACTIONS(4504), [sym_ref] = ACTIONS(4504), [sym_shared] = ACTIONS(4504), [sym_throw] = ACTIONS(4504), [sym_typeid] = ACTIONS(4504), [sym_typeof] = ACTIONS(4504), [sym_traits] = ACTIONS(4504), [sym_vector] = ACTIONS(4504), [sym_void] = ACTIONS(4504), [anon_sym_BQUOTE] = ACTIONS(4506), [anon_sym_r_DQUOTE] = ACTIONS(4506), [anon_sym_x_DQUOTE] = ACTIONS(4506), [anon_sym_DQUOTE] = ACTIONS(4506), [anon_sym_i_BQUOTE] = ACTIONS(4506), [anon_sym_i_DQUOTE] = ACTIONS(4506), [anon_sym_iq_LBRACE] = ACTIONS(4506), [aux_sym_char_literal_token1] = ACTIONS(4506), [anon_sym_SQUOTE] = ACTIONS(4504), [anon_sym___DATE__] = ACTIONS(4504), [anon_sym___FILE__] = ACTIONS(4504), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4504), [anon_sym___FUNCTION__] = ACTIONS(4504), [anon_sym___LINE__] = ACTIONS(4504), [anon_sym___MODULE__] = ACTIONS(4504), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4504), [anon_sym___TIME__] = ACTIONS(4504), [anon_sym___TIMESTAMP__] = ACTIONS(4504), [anon_sym___VENDOR__] = ACTIONS(4504), [anon_sym___VERSION__] = ACTIONS(4504), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4506), [sym_float_literal] = ACTIONS(4506), [sym__string] = ACTIONS(4506), }, [2249] = { [sym_identifier] = ACTIONS(4960), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4962), [anon_sym_LBRACE] = ACTIONS(4962), [anon_sym_DOT] = ACTIONS(4962), [anon_sym_AMP] = ACTIONS(4962), [anon_sym_DASH] = ACTIONS(4960), [anon_sym_DASH_DASH] = ACTIONS(4962), [anon_sym_PLUS] = ACTIONS(4960), [anon_sym_PLUS_PLUS] = ACTIONS(4962), [anon_sym_BANG] = ACTIONS(4962), [anon_sym_LPAREN] = ACTIONS(4962), [anon_sym_RPAREN] = ACTIONS(4962), [anon_sym_LBRACK] = ACTIONS(4962), [anon_sym_SEMI] = ACTIONS(4962), [anon_sym_DOLLAR] = ACTIONS(4962), [anon_sym_STAR] = ACTIONS(4962), [anon_sym_TILDE] = ACTIONS(4962), [sym_bool] = ACTIONS(4960), [sym_byte] = ACTIONS(4960), [sym_ubyte] = ACTIONS(4960), [sym_char] = ACTIONS(4960), [sym_short] = ACTIONS(4960), [sym_ushort] = ACTIONS(4960), [sym_int] = ACTIONS(4960), [sym_uint] = ACTIONS(4960), [sym_long] = ACTIONS(4960), [sym_ulong] = ACTIONS(4960), [sym_cent] = ACTIONS(4960), [sym_ucent] = ACTIONS(4960), [sym_wchar] = ACTIONS(4960), [sym_dchar] = ACTIONS(4960), [sym_float] = ACTIONS(4960), [sym_double] = ACTIONS(4960), [sym_real] = ACTIONS(4960), [sym_ifloat] = ACTIONS(4960), [sym_idouble] = ACTIONS(4960), [sym_ireal] = ACTIONS(4960), [sym_cfloat] = ACTIONS(4960), [sym_cdouble] = ACTIONS(4960), [sym_creal] = ACTIONS(4960), [sym_size_t] = ACTIONS(4960), [sym_ptrdiff_t] = ACTIONS(4960), [sym_string] = ACTIONS(4960), [sym_cstring] = ACTIONS(4960), [sym_dstring] = ACTIONS(4960), [sym_wstring] = ACTIONS(4960), [sym_noreturn] = ACTIONS(4960), [sym_true] = ACTIONS(4960), [sym_false] = ACTIONS(4960), [sym_null] = ACTIONS(4960), [sym_super] = ACTIONS(4960), [sym_this] = ACTIONS(4960), [sym_assert] = ACTIONS(4960), [sym_auto] = ACTIONS(4960), [sym_cast] = ACTIONS(4960), [sym_catch] = ACTIONS(4960), [sym_const] = ACTIONS(4960), [sym_delegate] = ACTIONS(4960), [sym_delete] = ACTIONS(4960), [sym_do] = ACTIONS(4960), [sym_else] = ACTIONS(4960), [sym_finally] = ACTIONS(4960), [sym_function] = ACTIONS(4960), [sym_immutable] = ACTIONS(4960), [sym_import] = ACTIONS(4960), [sym_in] = ACTIONS(4960), [sym_inout] = ACTIONS(4960), [sym_is] = ACTIONS(4960), [sym_mixin] = ACTIONS(4960), [sym_new] = ACTIONS(4960), [sym_out] = ACTIONS(4960), [sym_ref] = ACTIONS(4960), [sym_shared] = ACTIONS(4960), [sym_throw] = ACTIONS(4960), [sym_typeid] = ACTIONS(4960), [sym_typeof] = ACTIONS(4960), [sym_traits] = ACTIONS(4960), [sym_vector] = ACTIONS(4960), [sym_void] = ACTIONS(4960), [anon_sym_BQUOTE] = ACTIONS(4962), [anon_sym_r_DQUOTE] = ACTIONS(4962), [anon_sym_x_DQUOTE] = ACTIONS(4962), [anon_sym_DQUOTE] = ACTIONS(4962), [anon_sym_i_BQUOTE] = ACTIONS(4962), [anon_sym_i_DQUOTE] = ACTIONS(4962), [anon_sym_iq_LBRACE] = ACTIONS(4962), [aux_sym_char_literal_token1] = ACTIONS(4962), [anon_sym_SQUOTE] = ACTIONS(4960), [anon_sym___DATE__] = ACTIONS(4960), [anon_sym___FILE__] = ACTIONS(4960), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4960), [anon_sym___FUNCTION__] = ACTIONS(4960), [anon_sym___LINE__] = ACTIONS(4960), [anon_sym___MODULE__] = ACTIONS(4960), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4960), [anon_sym___TIME__] = ACTIONS(4960), [anon_sym___TIMESTAMP__] = ACTIONS(4960), [anon_sym___VENDOR__] = ACTIONS(4960), [anon_sym___VERSION__] = ACTIONS(4960), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4962), [sym_float_literal] = ACTIONS(4962), [sym__string] = ACTIONS(4962), }, [2250] = { [sym_identifier] = ACTIONS(4758), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4760), [anon_sym_LBRACE] = ACTIONS(4760), [anon_sym_DOT] = ACTIONS(4760), [anon_sym_AMP] = ACTIONS(4760), [anon_sym_DASH] = ACTIONS(4758), [anon_sym_DASH_DASH] = ACTIONS(4760), [anon_sym_PLUS] = ACTIONS(4758), [anon_sym_PLUS_PLUS] = ACTIONS(4760), [anon_sym_BANG] = ACTIONS(4760), [anon_sym_LPAREN] = ACTIONS(4760), [anon_sym_RPAREN] = ACTIONS(4760), [anon_sym_LBRACK] = ACTIONS(4760), [anon_sym_SEMI] = ACTIONS(4760), [anon_sym_DOLLAR] = ACTIONS(4760), [anon_sym_STAR] = ACTIONS(4760), [anon_sym_TILDE] = ACTIONS(4760), [sym_bool] = ACTIONS(4758), [sym_byte] = ACTIONS(4758), [sym_ubyte] = ACTIONS(4758), [sym_char] = ACTIONS(4758), [sym_short] = ACTIONS(4758), [sym_ushort] = ACTIONS(4758), [sym_int] = ACTIONS(4758), [sym_uint] = ACTIONS(4758), [sym_long] = ACTIONS(4758), [sym_ulong] = ACTIONS(4758), [sym_cent] = ACTIONS(4758), [sym_ucent] = ACTIONS(4758), [sym_wchar] = ACTIONS(4758), [sym_dchar] = ACTIONS(4758), [sym_float] = ACTIONS(4758), [sym_double] = ACTIONS(4758), [sym_real] = ACTIONS(4758), [sym_ifloat] = ACTIONS(4758), [sym_idouble] = ACTIONS(4758), [sym_ireal] = ACTIONS(4758), [sym_cfloat] = ACTIONS(4758), [sym_cdouble] = ACTIONS(4758), [sym_creal] = ACTIONS(4758), [sym_size_t] = ACTIONS(4758), [sym_ptrdiff_t] = ACTIONS(4758), [sym_string] = ACTIONS(4758), [sym_cstring] = ACTIONS(4758), [sym_dstring] = ACTIONS(4758), [sym_wstring] = ACTIONS(4758), [sym_noreturn] = ACTIONS(4758), [sym_true] = ACTIONS(4758), [sym_false] = ACTIONS(4758), [sym_null] = ACTIONS(4758), [sym_super] = ACTIONS(4758), [sym_this] = ACTIONS(4758), [sym_assert] = ACTIONS(4758), [sym_auto] = ACTIONS(4758), [sym_cast] = ACTIONS(4758), [sym_catch] = ACTIONS(4758), [sym_const] = ACTIONS(4758), [sym_delegate] = ACTIONS(4758), [sym_delete] = ACTIONS(4758), [sym_do] = ACTIONS(4758), [sym_else] = ACTIONS(4758), [sym_finally] = ACTIONS(4758), [sym_function] = ACTIONS(4758), [sym_immutable] = ACTIONS(4758), [sym_import] = ACTIONS(4758), [sym_in] = ACTIONS(4758), [sym_inout] = ACTIONS(4758), [sym_is] = ACTIONS(4758), [sym_mixin] = ACTIONS(4758), [sym_new] = ACTIONS(4758), [sym_out] = ACTIONS(4758), [sym_ref] = ACTIONS(4758), [sym_shared] = ACTIONS(4758), [sym_throw] = ACTIONS(4758), [sym_typeid] = ACTIONS(4758), [sym_typeof] = ACTIONS(4758), [sym_traits] = ACTIONS(4758), [sym_vector] = ACTIONS(4758), [sym_void] = ACTIONS(4758), [anon_sym_BQUOTE] = ACTIONS(4760), [anon_sym_r_DQUOTE] = ACTIONS(4760), [anon_sym_x_DQUOTE] = ACTIONS(4760), [anon_sym_DQUOTE] = ACTIONS(4760), [anon_sym_i_BQUOTE] = ACTIONS(4760), [anon_sym_i_DQUOTE] = ACTIONS(4760), [anon_sym_iq_LBRACE] = ACTIONS(4760), [aux_sym_char_literal_token1] = ACTIONS(4760), [anon_sym_SQUOTE] = ACTIONS(4758), [anon_sym___DATE__] = ACTIONS(4758), [anon_sym___FILE__] = ACTIONS(4758), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4758), [anon_sym___FUNCTION__] = ACTIONS(4758), [anon_sym___LINE__] = ACTIONS(4758), [anon_sym___MODULE__] = ACTIONS(4758), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4758), [anon_sym___TIME__] = ACTIONS(4758), [anon_sym___TIMESTAMP__] = ACTIONS(4758), [anon_sym___VENDOR__] = ACTIONS(4758), [anon_sym___VERSION__] = ACTIONS(4758), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4760), [sym_float_literal] = ACTIONS(4760), [sym__string] = ACTIONS(4760), }, [2251] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_AMP] = ACTIONS(3104), [anon_sym_DASH] = ACTIONS(3102), [anon_sym_DASH_DASH] = ACTIONS(3104), [anon_sym_PLUS] = ACTIONS(3102), [anon_sym_PLUS_PLUS] = ACTIONS(3104), [anon_sym_BANG] = ACTIONS(3104), [anon_sym_LPAREN] = ACTIONS(3104), [anon_sym_RPAREN] = ACTIONS(3104), [anon_sym_LBRACK] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_DOLLAR] = ACTIONS(3104), [anon_sym_STAR] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_true] = ACTIONS(3102), [sym_false] = ACTIONS(3102), [sym_null] = ACTIONS(3102), [sym_super] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_assert] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_cast] = ACTIONS(3102), [sym_catch] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_delegate] = ACTIONS(3102), [sym_delete] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_finally] = ACTIONS(3102), [sym_function] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_is] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_new] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_throw] = ACTIONS(3102), [sym_typeid] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [anon_sym_BQUOTE] = ACTIONS(3104), [anon_sym_r_DQUOTE] = ACTIONS(3104), [anon_sym_x_DQUOTE] = ACTIONS(3104), [anon_sym_DQUOTE] = ACTIONS(3104), [anon_sym_i_BQUOTE] = ACTIONS(3104), [anon_sym_i_DQUOTE] = ACTIONS(3104), [anon_sym_iq_LBRACE] = ACTIONS(3104), [aux_sym_char_literal_token1] = ACTIONS(3104), [anon_sym_SQUOTE] = ACTIONS(3102), [anon_sym___DATE__] = ACTIONS(3102), [anon_sym___FILE__] = ACTIONS(3102), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3102), [anon_sym___FUNCTION__] = ACTIONS(3102), [anon_sym___LINE__] = ACTIONS(3102), [anon_sym___MODULE__] = ACTIONS(3102), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3102), [anon_sym___TIME__] = ACTIONS(3102), [anon_sym___TIMESTAMP__] = ACTIONS(3102), [anon_sym___VENDOR__] = ACTIONS(3102), [anon_sym___VERSION__] = ACTIONS(3102), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3104), [sym_float_literal] = ACTIONS(3104), [sym__string] = ACTIONS(3104), }, [2252] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_AMP] = ACTIONS(3072), [anon_sym_DASH] = ACTIONS(3070), [anon_sym_DASH_DASH] = ACTIONS(3072), [anon_sym_PLUS] = ACTIONS(3070), [anon_sym_PLUS_PLUS] = ACTIONS(3072), [anon_sym_BANG] = ACTIONS(3072), [anon_sym_LPAREN] = ACTIONS(3072), [anon_sym_RPAREN] = ACTIONS(3072), [anon_sym_LBRACK] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_DOLLAR] = ACTIONS(3072), [anon_sym_STAR] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_true] = ACTIONS(3070), [sym_false] = ACTIONS(3070), [sym_null] = ACTIONS(3070), [sym_super] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_assert] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_cast] = ACTIONS(3070), [sym_catch] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_delegate] = ACTIONS(3070), [sym_delete] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_finally] = ACTIONS(3070), [sym_function] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_is] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_new] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_throw] = ACTIONS(3070), [sym_typeid] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [anon_sym_BQUOTE] = ACTIONS(3072), [anon_sym_r_DQUOTE] = ACTIONS(3072), [anon_sym_x_DQUOTE] = ACTIONS(3072), [anon_sym_DQUOTE] = ACTIONS(3072), [anon_sym_i_BQUOTE] = ACTIONS(3072), [anon_sym_i_DQUOTE] = ACTIONS(3072), [anon_sym_iq_LBRACE] = ACTIONS(3072), [aux_sym_char_literal_token1] = ACTIONS(3072), [anon_sym_SQUOTE] = ACTIONS(3070), [anon_sym___DATE__] = ACTIONS(3070), [anon_sym___FILE__] = ACTIONS(3070), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3070), [anon_sym___FUNCTION__] = ACTIONS(3070), [anon_sym___LINE__] = ACTIONS(3070), [anon_sym___MODULE__] = ACTIONS(3070), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3070), [anon_sym___TIME__] = ACTIONS(3070), [anon_sym___TIMESTAMP__] = ACTIONS(3070), [anon_sym___VENDOR__] = ACTIONS(3070), [anon_sym___VERSION__] = ACTIONS(3070), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(3072), [sym_float_literal] = ACTIONS(3072), [sym__string] = ACTIONS(3072), }, [2253] = { [sym_identifier] = ACTIONS(4750), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4752), [anon_sym_LBRACE] = ACTIONS(4752), [anon_sym_DOT] = ACTIONS(4752), [anon_sym_AMP] = ACTIONS(4752), [anon_sym_DASH] = ACTIONS(4750), [anon_sym_DASH_DASH] = ACTIONS(4752), [anon_sym_PLUS] = ACTIONS(4750), [anon_sym_PLUS_PLUS] = ACTIONS(4752), [anon_sym_BANG] = ACTIONS(4752), [anon_sym_LPAREN] = ACTIONS(4752), [anon_sym_RPAREN] = ACTIONS(4752), [anon_sym_LBRACK] = ACTIONS(4752), [anon_sym_SEMI] = ACTIONS(4752), [anon_sym_DOLLAR] = ACTIONS(4752), [anon_sym_STAR] = ACTIONS(4752), [anon_sym_TILDE] = ACTIONS(4752), [sym_bool] = ACTIONS(4750), [sym_byte] = ACTIONS(4750), [sym_ubyte] = ACTIONS(4750), [sym_char] = ACTIONS(4750), [sym_short] = ACTIONS(4750), [sym_ushort] = ACTIONS(4750), [sym_int] = ACTIONS(4750), [sym_uint] = ACTIONS(4750), [sym_long] = ACTIONS(4750), [sym_ulong] = ACTIONS(4750), [sym_cent] = ACTIONS(4750), [sym_ucent] = ACTIONS(4750), [sym_wchar] = ACTIONS(4750), [sym_dchar] = ACTIONS(4750), [sym_float] = ACTIONS(4750), [sym_double] = ACTIONS(4750), [sym_real] = ACTIONS(4750), [sym_ifloat] = ACTIONS(4750), [sym_idouble] = ACTIONS(4750), [sym_ireal] = ACTIONS(4750), [sym_cfloat] = ACTIONS(4750), [sym_cdouble] = ACTIONS(4750), [sym_creal] = ACTIONS(4750), [sym_size_t] = ACTIONS(4750), [sym_ptrdiff_t] = ACTIONS(4750), [sym_string] = ACTIONS(4750), [sym_cstring] = ACTIONS(4750), [sym_dstring] = ACTIONS(4750), [sym_wstring] = ACTIONS(4750), [sym_noreturn] = ACTIONS(4750), [sym_true] = ACTIONS(4750), [sym_false] = ACTIONS(4750), [sym_null] = ACTIONS(4750), [sym_super] = ACTIONS(4750), [sym_this] = ACTIONS(4750), [sym_assert] = ACTIONS(4750), [sym_auto] = ACTIONS(4750), [sym_cast] = ACTIONS(4750), [sym_catch] = ACTIONS(4750), [sym_const] = ACTIONS(4750), [sym_delegate] = ACTIONS(4750), [sym_delete] = ACTIONS(4750), [sym_do] = ACTIONS(4750), [sym_else] = ACTIONS(4750), [sym_finally] = ACTIONS(4750), [sym_function] = ACTIONS(4750), [sym_immutable] = ACTIONS(4750), [sym_import] = ACTIONS(4750), [sym_in] = ACTIONS(4750), [sym_inout] = ACTIONS(4750), [sym_is] = ACTIONS(4750), [sym_mixin] = ACTIONS(4750), [sym_new] = ACTIONS(4750), [sym_out] = ACTIONS(4750), [sym_ref] = ACTIONS(4750), [sym_shared] = ACTIONS(4750), [sym_throw] = ACTIONS(4750), [sym_typeid] = ACTIONS(4750), [sym_typeof] = ACTIONS(4750), [sym_traits] = ACTIONS(4750), [sym_vector] = ACTIONS(4750), [sym_void] = ACTIONS(4750), [anon_sym_BQUOTE] = ACTIONS(4752), [anon_sym_r_DQUOTE] = ACTIONS(4752), [anon_sym_x_DQUOTE] = ACTIONS(4752), [anon_sym_DQUOTE] = ACTIONS(4752), [anon_sym_i_BQUOTE] = ACTIONS(4752), [anon_sym_i_DQUOTE] = ACTIONS(4752), [anon_sym_iq_LBRACE] = ACTIONS(4752), [aux_sym_char_literal_token1] = ACTIONS(4752), [anon_sym_SQUOTE] = ACTIONS(4750), [anon_sym___DATE__] = ACTIONS(4750), [anon_sym___FILE__] = ACTIONS(4750), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4750), [anon_sym___FUNCTION__] = ACTIONS(4750), [anon_sym___LINE__] = ACTIONS(4750), [anon_sym___MODULE__] = ACTIONS(4750), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4750), [anon_sym___TIME__] = ACTIONS(4750), [anon_sym___TIMESTAMP__] = ACTIONS(4750), [anon_sym___VENDOR__] = ACTIONS(4750), [anon_sym___VERSION__] = ACTIONS(4750), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4752), [sym_float_literal] = ACTIONS(4752), [sym__string] = ACTIONS(4752), }, [2254] = { [sym_identifier] = ACTIONS(5012), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5014), [anon_sym_LBRACE] = ACTIONS(5014), [anon_sym_DOT] = ACTIONS(5014), [anon_sym_AMP] = ACTIONS(5014), [anon_sym_DASH] = ACTIONS(5012), [anon_sym_DASH_DASH] = ACTIONS(5014), [anon_sym_PLUS] = ACTIONS(5012), [anon_sym_PLUS_PLUS] = ACTIONS(5014), [anon_sym_BANG] = ACTIONS(5014), [anon_sym_LPAREN] = ACTIONS(5014), [anon_sym_RPAREN] = ACTIONS(5014), [anon_sym_LBRACK] = ACTIONS(5014), [anon_sym_SEMI] = ACTIONS(5014), [anon_sym_DOLLAR] = ACTIONS(5014), [anon_sym_STAR] = ACTIONS(5014), [anon_sym_TILDE] = ACTIONS(5014), [sym_bool] = ACTIONS(5012), [sym_byte] = ACTIONS(5012), [sym_ubyte] = ACTIONS(5012), [sym_char] = ACTIONS(5012), [sym_short] = ACTIONS(5012), [sym_ushort] = ACTIONS(5012), [sym_int] = ACTIONS(5012), [sym_uint] = ACTIONS(5012), [sym_long] = ACTIONS(5012), [sym_ulong] = ACTIONS(5012), [sym_cent] = ACTIONS(5012), [sym_ucent] = ACTIONS(5012), [sym_wchar] = ACTIONS(5012), [sym_dchar] = ACTIONS(5012), [sym_float] = ACTIONS(5012), [sym_double] = ACTIONS(5012), [sym_real] = ACTIONS(5012), [sym_ifloat] = ACTIONS(5012), [sym_idouble] = ACTIONS(5012), [sym_ireal] = ACTIONS(5012), [sym_cfloat] = ACTIONS(5012), [sym_cdouble] = ACTIONS(5012), [sym_creal] = ACTIONS(5012), [sym_size_t] = ACTIONS(5012), [sym_ptrdiff_t] = ACTIONS(5012), [sym_string] = ACTIONS(5012), [sym_cstring] = ACTIONS(5012), [sym_dstring] = ACTIONS(5012), [sym_wstring] = ACTIONS(5012), [sym_noreturn] = ACTIONS(5012), [sym_true] = ACTIONS(5012), [sym_false] = ACTIONS(5012), [sym_null] = ACTIONS(5012), [sym_super] = ACTIONS(5012), [sym_this] = ACTIONS(5012), [sym_assert] = ACTIONS(5012), [sym_auto] = ACTIONS(5012), [sym_cast] = ACTIONS(5012), [sym_catch] = ACTIONS(5012), [sym_const] = ACTIONS(5012), [sym_delegate] = ACTIONS(5012), [sym_delete] = ACTIONS(5012), [sym_do] = ACTIONS(5012), [sym_else] = ACTIONS(5012), [sym_finally] = ACTIONS(5012), [sym_function] = ACTIONS(5012), [sym_immutable] = ACTIONS(5012), [sym_import] = ACTIONS(5012), [sym_in] = ACTIONS(5012), [sym_inout] = ACTIONS(5012), [sym_is] = ACTIONS(5012), [sym_mixin] = ACTIONS(5012), [sym_new] = ACTIONS(5012), [sym_out] = ACTIONS(5012), [sym_ref] = ACTIONS(5012), [sym_shared] = ACTIONS(5012), [sym_throw] = ACTIONS(5012), [sym_typeid] = ACTIONS(5012), [sym_typeof] = ACTIONS(5012), [sym_traits] = ACTIONS(5012), [sym_vector] = ACTIONS(5012), [sym_void] = ACTIONS(5012), [anon_sym_BQUOTE] = ACTIONS(5014), [anon_sym_r_DQUOTE] = ACTIONS(5014), [anon_sym_x_DQUOTE] = ACTIONS(5014), [anon_sym_DQUOTE] = ACTIONS(5014), [anon_sym_i_BQUOTE] = ACTIONS(5014), [anon_sym_i_DQUOTE] = ACTIONS(5014), [anon_sym_iq_LBRACE] = ACTIONS(5014), [aux_sym_char_literal_token1] = ACTIONS(5014), [anon_sym_SQUOTE] = ACTIONS(5012), [anon_sym___DATE__] = ACTIONS(5012), [anon_sym___FILE__] = ACTIONS(5012), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5012), [anon_sym___FUNCTION__] = ACTIONS(5012), [anon_sym___LINE__] = ACTIONS(5012), [anon_sym___MODULE__] = ACTIONS(5012), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5012), [anon_sym___TIME__] = ACTIONS(5012), [anon_sym___TIMESTAMP__] = ACTIONS(5012), [anon_sym___VENDOR__] = ACTIONS(5012), [anon_sym___VERSION__] = ACTIONS(5012), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5014), [sym_float_literal] = ACTIONS(5014), [sym__string] = ACTIONS(5014), }, [2255] = { [sym_identifier] = ACTIONS(4524), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4526), [anon_sym_LBRACE] = ACTIONS(4526), [anon_sym_DOT] = ACTIONS(4526), [anon_sym_AMP] = ACTIONS(4526), [anon_sym_DASH] = ACTIONS(4524), [anon_sym_DASH_DASH] = ACTIONS(4526), [anon_sym_PLUS] = ACTIONS(4524), [anon_sym_PLUS_PLUS] = ACTIONS(4526), [anon_sym_BANG] = ACTIONS(4526), [anon_sym_LPAREN] = ACTIONS(4526), [anon_sym_RPAREN] = ACTIONS(4526), [anon_sym_LBRACK] = ACTIONS(4526), [anon_sym_SEMI] = ACTIONS(4526), [anon_sym_DOLLAR] = ACTIONS(4526), [anon_sym_STAR] = ACTIONS(4526), [anon_sym_TILDE] = ACTIONS(4526), [sym_bool] = ACTIONS(4524), [sym_byte] = ACTIONS(4524), [sym_ubyte] = ACTIONS(4524), [sym_char] = ACTIONS(4524), [sym_short] = ACTIONS(4524), [sym_ushort] = ACTIONS(4524), [sym_int] = ACTIONS(4524), [sym_uint] = ACTIONS(4524), [sym_long] = ACTIONS(4524), [sym_ulong] = ACTIONS(4524), [sym_cent] = ACTIONS(4524), [sym_ucent] = ACTIONS(4524), [sym_wchar] = ACTIONS(4524), [sym_dchar] = ACTIONS(4524), [sym_float] = ACTIONS(4524), [sym_double] = ACTIONS(4524), [sym_real] = ACTIONS(4524), [sym_ifloat] = ACTIONS(4524), [sym_idouble] = ACTIONS(4524), [sym_ireal] = ACTIONS(4524), [sym_cfloat] = ACTIONS(4524), [sym_cdouble] = ACTIONS(4524), [sym_creal] = ACTIONS(4524), [sym_size_t] = ACTIONS(4524), [sym_ptrdiff_t] = ACTIONS(4524), [sym_string] = ACTIONS(4524), [sym_cstring] = ACTIONS(4524), [sym_dstring] = ACTIONS(4524), [sym_wstring] = ACTIONS(4524), [sym_noreturn] = ACTIONS(4524), [sym_true] = ACTIONS(4524), [sym_false] = ACTIONS(4524), [sym_null] = ACTIONS(4524), [sym_super] = ACTIONS(4524), [sym_this] = ACTIONS(4524), [sym_assert] = ACTIONS(4524), [sym_auto] = ACTIONS(4524), [sym_cast] = ACTIONS(4524), [sym_catch] = ACTIONS(4524), [sym_const] = ACTIONS(4524), [sym_delegate] = ACTIONS(4524), [sym_delete] = ACTIONS(4524), [sym_do] = ACTIONS(4524), [sym_else] = ACTIONS(4524), [sym_finally] = ACTIONS(4524), [sym_function] = ACTIONS(4524), [sym_immutable] = ACTIONS(4524), [sym_import] = ACTIONS(4524), [sym_in] = ACTIONS(4524), [sym_inout] = ACTIONS(4524), [sym_is] = ACTIONS(4524), [sym_mixin] = ACTIONS(4524), [sym_new] = ACTIONS(4524), [sym_out] = ACTIONS(4524), [sym_ref] = ACTIONS(4524), [sym_shared] = ACTIONS(4524), [sym_throw] = ACTIONS(4524), [sym_typeid] = ACTIONS(4524), [sym_typeof] = ACTIONS(4524), [sym_traits] = ACTIONS(4524), [sym_vector] = ACTIONS(4524), [sym_void] = ACTIONS(4524), [anon_sym_BQUOTE] = ACTIONS(4526), [anon_sym_r_DQUOTE] = ACTIONS(4526), [anon_sym_x_DQUOTE] = ACTIONS(4526), [anon_sym_DQUOTE] = ACTIONS(4526), [anon_sym_i_BQUOTE] = ACTIONS(4526), [anon_sym_i_DQUOTE] = ACTIONS(4526), [anon_sym_iq_LBRACE] = ACTIONS(4526), [aux_sym_char_literal_token1] = ACTIONS(4526), [anon_sym_SQUOTE] = ACTIONS(4524), [anon_sym___DATE__] = ACTIONS(4524), [anon_sym___FILE__] = ACTIONS(4524), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4524), [anon_sym___FUNCTION__] = ACTIONS(4524), [anon_sym___LINE__] = ACTIONS(4524), [anon_sym___MODULE__] = ACTIONS(4524), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4524), [anon_sym___TIME__] = ACTIONS(4524), [anon_sym___TIMESTAMP__] = ACTIONS(4524), [anon_sym___VENDOR__] = ACTIONS(4524), [anon_sym___VERSION__] = ACTIONS(4524), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4526), [sym_float_literal] = ACTIONS(4526), [sym__string] = ACTIONS(4526), }, [2256] = { [sym_identifier] = ACTIONS(4746), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4748), [anon_sym_LBRACE] = ACTIONS(4748), [anon_sym_DOT] = ACTIONS(4748), [anon_sym_AMP] = ACTIONS(4748), [anon_sym_DASH] = ACTIONS(4746), [anon_sym_DASH_DASH] = ACTIONS(4748), [anon_sym_PLUS] = ACTIONS(4746), [anon_sym_PLUS_PLUS] = ACTIONS(4748), [anon_sym_BANG] = ACTIONS(4748), [anon_sym_LPAREN] = ACTIONS(4748), [anon_sym_RPAREN] = ACTIONS(4748), [anon_sym_LBRACK] = ACTIONS(4748), [anon_sym_SEMI] = ACTIONS(4748), [anon_sym_DOLLAR] = ACTIONS(4748), [anon_sym_STAR] = ACTIONS(4748), [anon_sym_TILDE] = ACTIONS(4748), [sym_bool] = ACTIONS(4746), [sym_byte] = ACTIONS(4746), [sym_ubyte] = ACTIONS(4746), [sym_char] = ACTIONS(4746), [sym_short] = ACTIONS(4746), [sym_ushort] = ACTIONS(4746), [sym_int] = ACTIONS(4746), [sym_uint] = ACTIONS(4746), [sym_long] = ACTIONS(4746), [sym_ulong] = ACTIONS(4746), [sym_cent] = ACTIONS(4746), [sym_ucent] = ACTIONS(4746), [sym_wchar] = ACTIONS(4746), [sym_dchar] = ACTIONS(4746), [sym_float] = ACTIONS(4746), [sym_double] = ACTIONS(4746), [sym_real] = ACTIONS(4746), [sym_ifloat] = ACTIONS(4746), [sym_idouble] = ACTIONS(4746), [sym_ireal] = ACTIONS(4746), [sym_cfloat] = ACTIONS(4746), [sym_cdouble] = ACTIONS(4746), [sym_creal] = ACTIONS(4746), [sym_size_t] = ACTIONS(4746), [sym_ptrdiff_t] = ACTIONS(4746), [sym_string] = ACTIONS(4746), [sym_cstring] = ACTIONS(4746), [sym_dstring] = ACTIONS(4746), [sym_wstring] = ACTIONS(4746), [sym_noreturn] = ACTIONS(4746), [sym_true] = ACTIONS(4746), [sym_false] = ACTIONS(4746), [sym_null] = ACTIONS(4746), [sym_super] = ACTIONS(4746), [sym_this] = ACTIONS(4746), [sym_assert] = ACTIONS(4746), [sym_auto] = ACTIONS(4746), [sym_cast] = ACTIONS(4746), [sym_catch] = ACTIONS(4746), [sym_const] = ACTIONS(4746), [sym_delegate] = ACTIONS(4746), [sym_delete] = ACTIONS(4746), [sym_do] = ACTIONS(4746), [sym_else] = ACTIONS(4746), [sym_finally] = ACTIONS(4746), [sym_function] = ACTIONS(4746), [sym_immutable] = ACTIONS(4746), [sym_import] = ACTIONS(4746), [sym_in] = ACTIONS(4746), [sym_inout] = ACTIONS(4746), [sym_is] = ACTIONS(4746), [sym_mixin] = ACTIONS(4746), [sym_new] = ACTIONS(4746), [sym_out] = ACTIONS(4746), [sym_ref] = ACTIONS(4746), [sym_shared] = ACTIONS(4746), [sym_throw] = ACTIONS(4746), [sym_typeid] = ACTIONS(4746), [sym_typeof] = ACTIONS(4746), [sym_traits] = ACTIONS(4746), [sym_vector] = ACTIONS(4746), [sym_void] = ACTIONS(4746), [anon_sym_BQUOTE] = ACTIONS(4748), [anon_sym_r_DQUOTE] = ACTIONS(4748), [anon_sym_x_DQUOTE] = ACTIONS(4748), [anon_sym_DQUOTE] = ACTIONS(4748), [anon_sym_i_BQUOTE] = ACTIONS(4748), [anon_sym_i_DQUOTE] = ACTIONS(4748), [anon_sym_iq_LBRACE] = ACTIONS(4748), [aux_sym_char_literal_token1] = ACTIONS(4748), [anon_sym_SQUOTE] = ACTIONS(4746), [anon_sym___DATE__] = ACTIONS(4746), [anon_sym___FILE__] = ACTIONS(4746), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4746), [anon_sym___FUNCTION__] = ACTIONS(4746), [anon_sym___LINE__] = ACTIONS(4746), [anon_sym___MODULE__] = ACTIONS(4746), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4746), [anon_sym___TIME__] = ACTIONS(4746), [anon_sym___TIMESTAMP__] = ACTIONS(4746), [anon_sym___VENDOR__] = ACTIONS(4746), [anon_sym___VERSION__] = ACTIONS(4746), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4748), [sym_float_literal] = ACTIONS(4748), [sym__string] = ACTIONS(4748), }, [2257] = { [sym_identifier] = ACTIONS(4402), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4404), [anon_sym_LBRACE] = ACTIONS(4404), [anon_sym_DOT] = ACTIONS(4404), [anon_sym_AMP] = ACTIONS(4404), [anon_sym_DASH] = ACTIONS(4402), [anon_sym_DASH_DASH] = ACTIONS(4404), [anon_sym_PLUS] = ACTIONS(4402), [anon_sym_PLUS_PLUS] = ACTIONS(4404), [anon_sym_BANG] = ACTIONS(4404), [anon_sym_LPAREN] = ACTIONS(4404), [anon_sym_RPAREN] = ACTIONS(4404), [anon_sym_LBRACK] = ACTIONS(4404), [anon_sym_SEMI] = ACTIONS(4404), [anon_sym_DOLLAR] = ACTIONS(4404), [anon_sym_STAR] = ACTIONS(4404), [anon_sym_TILDE] = ACTIONS(4404), [sym_bool] = ACTIONS(4402), [sym_byte] = ACTIONS(4402), [sym_ubyte] = ACTIONS(4402), [sym_char] = ACTIONS(4402), [sym_short] = ACTIONS(4402), [sym_ushort] = ACTIONS(4402), [sym_int] = ACTIONS(4402), [sym_uint] = ACTIONS(4402), [sym_long] = ACTIONS(4402), [sym_ulong] = ACTIONS(4402), [sym_cent] = ACTIONS(4402), [sym_ucent] = ACTIONS(4402), [sym_wchar] = ACTIONS(4402), [sym_dchar] = ACTIONS(4402), [sym_float] = ACTIONS(4402), [sym_double] = ACTIONS(4402), [sym_real] = ACTIONS(4402), [sym_ifloat] = ACTIONS(4402), [sym_idouble] = ACTIONS(4402), [sym_ireal] = ACTIONS(4402), [sym_cfloat] = ACTIONS(4402), [sym_cdouble] = ACTIONS(4402), [sym_creal] = ACTIONS(4402), [sym_size_t] = ACTIONS(4402), [sym_ptrdiff_t] = ACTIONS(4402), [sym_string] = ACTIONS(4402), [sym_cstring] = ACTIONS(4402), [sym_dstring] = ACTIONS(4402), [sym_wstring] = ACTIONS(4402), [sym_noreturn] = ACTIONS(4402), [sym_true] = ACTIONS(4402), [sym_false] = ACTIONS(4402), [sym_null] = ACTIONS(4402), [sym_super] = ACTIONS(4402), [sym_this] = ACTIONS(4402), [sym_assert] = ACTIONS(4402), [sym_auto] = ACTIONS(4402), [sym_cast] = ACTIONS(4402), [sym_catch] = ACTIONS(4402), [sym_const] = ACTIONS(4402), [sym_delegate] = ACTIONS(4402), [sym_delete] = ACTIONS(4402), [sym_do] = ACTIONS(4402), [sym_else] = ACTIONS(4402), [sym_finally] = ACTIONS(4402), [sym_function] = ACTIONS(4402), [sym_immutable] = ACTIONS(4402), [sym_import] = ACTIONS(4402), [sym_in] = ACTIONS(4402), [sym_inout] = ACTIONS(4402), [sym_is] = ACTIONS(4402), [sym_mixin] = ACTIONS(4402), [sym_new] = ACTIONS(4402), [sym_out] = ACTIONS(4402), [sym_ref] = ACTIONS(4402), [sym_shared] = ACTIONS(4402), [sym_throw] = ACTIONS(4402), [sym_typeid] = ACTIONS(4402), [sym_typeof] = ACTIONS(4402), [sym_traits] = ACTIONS(4402), [sym_vector] = ACTIONS(4402), [sym_void] = ACTIONS(4402), [anon_sym_BQUOTE] = ACTIONS(4404), [anon_sym_r_DQUOTE] = ACTIONS(4404), [anon_sym_x_DQUOTE] = ACTIONS(4404), [anon_sym_DQUOTE] = ACTIONS(4404), [anon_sym_i_BQUOTE] = ACTIONS(4404), [anon_sym_i_DQUOTE] = ACTIONS(4404), [anon_sym_iq_LBRACE] = ACTIONS(4404), [aux_sym_char_literal_token1] = ACTIONS(4404), [anon_sym_SQUOTE] = ACTIONS(4402), [anon_sym___DATE__] = ACTIONS(4402), [anon_sym___FILE__] = ACTIONS(4402), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4402), [anon_sym___FUNCTION__] = ACTIONS(4402), [anon_sym___LINE__] = ACTIONS(4402), [anon_sym___MODULE__] = ACTIONS(4402), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4402), [anon_sym___TIME__] = ACTIONS(4402), [anon_sym___TIMESTAMP__] = ACTIONS(4402), [anon_sym___VENDOR__] = ACTIONS(4402), [anon_sym___VERSION__] = ACTIONS(4402), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4404), [sym_float_literal] = ACTIONS(4404), [sym__string] = ACTIONS(4404), }, [2258] = { [sym_identifier] = ACTIONS(4724), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4726), [anon_sym_LBRACE] = ACTIONS(4726), [anon_sym_DOT] = ACTIONS(4726), [anon_sym_AMP] = ACTIONS(4726), [anon_sym_DASH] = ACTIONS(4724), [anon_sym_DASH_DASH] = ACTIONS(4726), [anon_sym_PLUS] = ACTIONS(4724), [anon_sym_PLUS_PLUS] = ACTIONS(4726), [anon_sym_BANG] = ACTIONS(4726), [anon_sym_LPAREN] = ACTIONS(4726), [anon_sym_RPAREN] = ACTIONS(4726), [anon_sym_LBRACK] = ACTIONS(4726), [anon_sym_SEMI] = ACTIONS(4726), [anon_sym_DOLLAR] = ACTIONS(4726), [anon_sym_STAR] = ACTIONS(4726), [anon_sym_TILDE] = ACTIONS(4726), [sym_bool] = ACTIONS(4724), [sym_byte] = ACTIONS(4724), [sym_ubyte] = ACTIONS(4724), [sym_char] = ACTIONS(4724), [sym_short] = ACTIONS(4724), [sym_ushort] = ACTIONS(4724), [sym_int] = ACTIONS(4724), [sym_uint] = ACTIONS(4724), [sym_long] = ACTIONS(4724), [sym_ulong] = ACTIONS(4724), [sym_cent] = ACTIONS(4724), [sym_ucent] = ACTIONS(4724), [sym_wchar] = ACTIONS(4724), [sym_dchar] = ACTIONS(4724), [sym_float] = ACTIONS(4724), [sym_double] = ACTIONS(4724), [sym_real] = ACTIONS(4724), [sym_ifloat] = ACTIONS(4724), [sym_idouble] = ACTIONS(4724), [sym_ireal] = ACTIONS(4724), [sym_cfloat] = ACTIONS(4724), [sym_cdouble] = ACTIONS(4724), [sym_creal] = ACTIONS(4724), [sym_size_t] = ACTIONS(4724), [sym_ptrdiff_t] = ACTIONS(4724), [sym_string] = ACTIONS(4724), [sym_cstring] = ACTIONS(4724), [sym_dstring] = ACTIONS(4724), [sym_wstring] = ACTIONS(4724), [sym_noreturn] = ACTIONS(4724), [sym_true] = ACTIONS(4724), [sym_false] = ACTIONS(4724), [sym_null] = ACTIONS(4724), [sym_super] = ACTIONS(4724), [sym_this] = ACTIONS(4724), [sym_assert] = ACTIONS(4724), [sym_auto] = ACTIONS(4724), [sym_cast] = ACTIONS(4724), [sym_catch] = ACTIONS(4724), [sym_const] = ACTIONS(4724), [sym_delegate] = ACTIONS(4724), [sym_delete] = ACTIONS(4724), [sym_do] = ACTIONS(4724), [sym_else] = ACTIONS(4724), [sym_finally] = ACTIONS(4724), [sym_function] = ACTIONS(4724), [sym_immutable] = ACTIONS(4724), [sym_import] = ACTIONS(4724), [sym_in] = ACTIONS(4724), [sym_inout] = ACTIONS(4724), [sym_is] = ACTIONS(4724), [sym_mixin] = ACTIONS(4724), [sym_new] = ACTIONS(4724), [sym_out] = ACTIONS(4724), [sym_ref] = ACTIONS(4724), [sym_shared] = ACTIONS(4724), [sym_throw] = ACTIONS(4724), [sym_typeid] = ACTIONS(4724), [sym_typeof] = ACTIONS(4724), [sym_traits] = ACTIONS(4724), [sym_vector] = ACTIONS(4724), [sym_void] = ACTIONS(4724), [anon_sym_BQUOTE] = ACTIONS(4726), [anon_sym_r_DQUOTE] = ACTIONS(4726), [anon_sym_x_DQUOTE] = ACTIONS(4726), [anon_sym_DQUOTE] = ACTIONS(4726), [anon_sym_i_BQUOTE] = ACTIONS(4726), [anon_sym_i_DQUOTE] = ACTIONS(4726), [anon_sym_iq_LBRACE] = ACTIONS(4726), [aux_sym_char_literal_token1] = ACTIONS(4726), [anon_sym_SQUOTE] = ACTIONS(4724), [anon_sym___DATE__] = ACTIONS(4724), [anon_sym___FILE__] = ACTIONS(4724), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4724), [anon_sym___FUNCTION__] = ACTIONS(4724), [anon_sym___LINE__] = ACTIONS(4724), [anon_sym___MODULE__] = ACTIONS(4724), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4724), [anon_sym___TIME__] = ACTIONS(4724), [anon_sym___TIMESTAMP__] = ACTIONS(4724), [anon_sym___VENDOR__] = ACTIONS(4724), [anon_sym___VERSION__] = ACTIONS(4724), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4726), [sym_float_literal] = ACTIONS(4726), [sym__string] = ACTIONS(4726), }, [2259] = { [sym_identifier] = ACTIONS(5024), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5026), [anon_sym_LBRACE] = ACTIONS(5026), [anon_sym_DOT] = ACTIONS(5026), [anon_sym_AMP] = ACTIONS(5026), [anon_sym_DASH] = ACTIONS(5024), [anon_sym_DASH_DASH] = ACTIONS(5026), [anon_sym_PLUS] = ACTIONS(5024), [anon_sym_PLUS_PLUS] = ACTIONS(5026), [anon_sym_BANG] = ACTIONS(5026), [anon_sym_LPAREN] = ACTIONS(5026), [anon_sym_RPAREN] = ACTIONS(5026), [anon_sym_LBRACK] = ACTIONS(5026), [anon_sym_SEMI] = ACTIONS(5026), [anon_sym_DOLLAR] = ACTIONS(5026), [anon_sym_STAR] = ACTIONS(5026), [anon_sym_TILDE] = ACTIONS(5026), [sym_bool] = ACTIONS(5024), [sym_byte] = ACTIONS(5024), [sym_ubyte] = ACTIONS(5024), [sym_char] = ACTIONS(5024), [sym_short] = ACTIONS(5024), [sym_ushort] = ACTIONS(5024), [sym_int] = ACTIONS(5024), [sym_uint] = ACTIONS(5024), [sym_long] = ACTIONS(5024), [sym_ulong] = ACTIONS(5024), [sym_cent] = ACTIONS(5024), [sym_ucent] = ACTIONS(5024), [sym_wchar] = ACTIONS(5024), [sym_dchar] = ACTIONS(5024), [sym_float] = ACTIONS(5024), [sym_double] = ACTIONS(5024), [sym_real] = ACTIONS(5024), [sym_ifloat] = ACTIONS(5024), [sym_idouble] = ACTIONS(5024), [sym_ireal] = ACTIONS(5024), [sym_cfloat] = ACTIONS(5024), [sym_cdouble] = ACTIONS(5024), [sym_creal] = ACTIONS(5024), [sym_size_t] = ACTIONS(5024), [sym_ptrdiff_t] = ACTIONS(5024), [sym_string] = ACTIONS(5024), [sym_cstring] = ACTIONS(5024), [sym_dstring] = ACTIONS(5024), [sym_wstring] = ACTIONS(5024), [sym_noreturn] = ACTIONS(5024), [sym_true] = ACTIONS(5024), [sym_false] = ACTIONS(5024), [sym_null] = ACTIONS(5024), [sym_super] = ACTIONS(5024), [sym_this] = ACTIONS(5024), [sym_assert] = ACTIONS(5024), [sym_auto] = ACTIONS(5024), [sym_cast] = ACTIONS(5024), [sym_catch] = ACTIONS(5024), [sym_const] = ACTIONS(5024), [sym_delegate] = ACTIONS(5024), [sym_delete] = ACTIONS(5024), [sym_do] = ACTIONS(5024), [sym_else] = ACTIONS(5024), [sym_finally] = ACTIONS(5024), [sym_function] = ACTIONS(5024), [sym_immutable] = ACTIONS(5024), [sym_import] = ACTIONS(5024), [sym_in] = ACTIONS(5024), [sym_inout] = ACTIONS(5024), [sym_is] = ACTIONS(5024), [sym_mixin] = ACTIONS(5024), [sym_new] = ACTIONS(5024), [sym_out] = ACTIONS(5024), [sym_ref] = ACTIONS(5024), [sym_shared] = ACTIONS(5024), [sym_throw] = ACTIONS(5024), [sym_typeid] = ACTIONS(5024), [sym_typeof] = ACTIONS(5024), [sym_traits] = ACTIONS(5024), [sym_vector] = ACTIONS(5024), [sym_void] = ACTIONS(5024), [anon_sym_BQUOTE] = ACTIONS(5026), [anon_sym_r_DQUOTE] = ACTIONS(5026), [anon_sym_x_DQUOTE] = ACTIONS(5026), [anon_sym_DQUOTE] = ACTIONS(5026), [anon_sym_i_BQUOTE] = ACTIONS(5026), [anon_sym_i_DQUOTE] = ACTIONS(5026), [anon_sym_iq_LBRACE] = ACTIONS(5026), [aux_sym_char_literal_token1] = ACTIONS(5026), [anon_sym_SQUOTE] = ACTIONS(5024), [anon_sym___DATE__] = ACTIONS(5024), [anon_sym___FILE__] = ACTIONS(5024), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5024), [anon_sym___FUNCTION__] = ACTIONS(5024), [anon_sym___LINE__] = ACTIONS(5024), [anon_sym___MODULE__] = ACTIONS(5024), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5024), [anon_sym___TIME__] = ACTIONS(5024), [anon_sym___TIMESTAMP__] = ACTIONS(5024), [anon_sym___VENDOR__] = ACTIONS(5024), [anon_sym___VERSION__] = ACTIONS(5024), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5026), [sym_float_literal] = ACTIONS(5026), [sym__string] = ACTIONS(5026), }, [2260] = { [sym_identifier] = ACTIONS(4716), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4718), [anon_sym_LBRACE] = ACTIONS(4718), [anon_sym_DOT] = ACTIONS(4718), [anon_sym_AMP] = ACTIONS(4718), [anon_sym_DASH] = ACTIONS(4716), [anon_sym_DASH_DASH] = ACTIONS(4718), [anon_sym_PLUS] = ACTIONS(4716), [anon_sym_PLUS_PLUS] = ACTIONS(4718), [anon_sym_BANG] = ACTIONS(4718), [anon_sym_LPAREN] = ACTIONS(4718), [anon_sym_RPAREN] = ACTIONS(4718), [anon_sym_LBRACK] = ACTIONS(4718), [anon_sym_SEMI] = ACTIONS(4718), [anon_sym_DOLLAR] = ACTIONS(4718), [anon_sym_STAR] = ACTIONS(4718), [anon_sym_TILDE] = ACTIONS(4718), [sym_bool] = ACTIONS(4716), [sym_byte] = ACTIONS(4716), [sym_ubyte] = ACTIONS(4716), [sym_char] = ACTIONS(4716), [sym_short] = ACTIONS(4716), [sym_ushort] = ACTIONS(4716), [sym_int] = ACTIONS(4716), [sym_uint] = ACTIONS(4716), [sym_long] = ACTIONS(4716), [sym_ulong] = ACTIONS(4716), [sym_cent] = ACTIONS(4716), [sym_ucent] = ACTIONS(4716), [sym_wchar] = ACTIONS(4716), [sym_dchar] = ACTIONS(4716), [sym_float] = ACTIONS(4716), [sym_double] = ACTIONS(4716), [sym_real] = ACTIONS(4716), [sym_ifloat] = ACTIONS(4716), [sym_idouble] = ACTIONS(4716), [sym_ireal] = ACTIONS(4716), [sym_cfloat] = ACTIONS(4716), [sym_cdouble] = ACTIONS(4716), [sym_creal] = ACTIONS(4716), [sym_size_t] = ACTIONS(4716), [sym_ptrdiff_t] = ACTIONS(4716), [sym_string] = ACTIONS(4716), [sym_cstring] = ACTIONS(4716), [sym_dstring] = ACTIONS(4716), [sym_wstring] = ACTIONS(4716), [sym_noreturn] = ACTIONS(4716), [sym_true] = ACTIONS(4716), [sym_false] = ACTIONS(4716), [sym_null] = ACTIONS(4716), [sym_super] = ACTIONS(4716), [sym_this] = ACTIONS(4716), [sym_assert] = ACTIONS(4716), [sym_auto] = ACTIONS(4716), [sym_cast] = ACTIONS(4716), [sym_catch] = ACTIONS(4716), [sym_const] = ACTIONS(4716), [sym_delegate] = ACTIONS(4716), [sym_delete] = ACTIONS(4716), [sym_do] = ACTIONS(4716), [sym_else] = ACTIONS(4716), [sym_finally] = ACTIONS(4716), [sym_function] = ACTIONS(4716), [sym_immutable] = ACTIONS(4716), [sym_import] = ACTIONS(4716), [sym_in] = ACTIONS(4716), [sym_inout] = ACTIONS(4716), [sym_is] = ACTIONS(4716), [sym_mixin] = ACTIONS(4716), [sym_new] = ACTIONS(4716), [sym_out] = ACTIONS(4716), [sym_ref] = ACTIONS(4716), [sym_shared] = ACTIONS(4716), [sym_throw] = ACTIONS(4716), [sym_typeid] = ACTIONS(4716), [sym_typeof] = ACTIONS(4716), [sym_traits] = ACTIONS(4716), [sym_vector] = ACTIONS(4716), [sym_void] = ACTIONS(4716), [anon_sym_BQUOTE] = ACTIONS(4718), [anon_sym_r_DQUOTE] = ACTIONS(4718), [anon_sym_x_DQUOTE] = ACTIONS(4718), [anon_sym_DQUOTE] = ACTIONS(4718), [anon_sym_i_BQUOTE] = ACTIONS(4718), [anon_sym_i_DQUOTE] = ACTIONS(4718), [anon_sym_iq_LBRACE] = ACTIONS(4718), [aux_sym_char_literal_token1] = ACTIONS(4718), [anon_sym_SQUOTE] = ACTIONS(4716), [anon_sym___DATE__] = ACTIONS(4716), [anon_sym___FILE__] = ACTIONS(4716), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4716), [anon_sym___FUNCTION__] = ACTIONS(4716), [anon_sym___LINE__] = ACTIONS(4716), [anon_sym___MODULE__] = ACTIONS(4716), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4716), [anon_sym___TIME__] = ACTIONS(4716), [anon_sym___TIMESTAMP__] = ACTIONS(4716), [anon_sym___VENDOR__] = ACTIONS(4716), [anon_sym___VERSION__] = ACTIONS(4716), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4718), [sym_float_literal] = ACTIONS(4718), [sym__string] = ACTIONS(4718), }, [2261] = { [sym_identifier] = ACTIONS(4289), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4291), [anon_sym_LBRACE] = ACTIONS(4291), [anon_sym_DOT] = ACTIONS(4291), [anon_sym_AMP] = ACTIONS(4291), [anon_sym_DASH] = ACTIONS(4289), [anon_sym_DASH_DASH] = ACTIONS(4291), [anon_sym_PLUS] = ACTIONS(4289), [anon_sym_PLUS_PLUS] = ACTIONS(4291), [anon_sym_BANG] = ACTIONS(4291), [anon_sym_LPAREN] = ACTIONS(4291), [anon_sym_RPAREN] = ACTIONS(4291), [anon_sym_LBRACK] = ACTIONS(4291), [anon_sym_SEMI] = ACTIONS(4291), [anon_sym_DOLLAR] = ACTIONS(4291), [anon_sym_STAR] = ACTIONS(4291), [anon_sym_TILDE] = ACTIONS(4291), [sym_bool] = ACTIONS(4289), [sym_byte] = ACTIONS(4289), [sym_ubyte] = ACTIONS(4289), [sym_char] = ACTIONS(4289), [sym_short] = ACTIONS(4289), [sym_ushort] = ACTIONS(4289), [sym_int] = ACTIONS(4289), [sym_uint] = ACTIONS(4289), [sym_long] = ACTIONS(4289), [sym_ulong] = ACTIONS(4289), [sym_cent] = ACTIONS(4289), [sym_ucent] = ACTIONS(4289), [sym_wchar] = ACTIONS(4289), [sym_dchar] = ACTIONS(4289), [sym_float] = ACTIONS(4289), [sym_double] = ACTIONS(4289), [sym_real] = ACTIONS(4289), [sym_ifloat] = ACTIONS(4289), [sym_idouble] = ACTIONS(4289), [sym_ireal] = ACTIONS(4289), [sym_cfloat] = ACTIONS(4289), [sym_cdouble] = ACTIONS(4289), [sym_creal] = ACTIONS(4289), [sym_size_t] = ACTIONS(4289), [sym_ptrdiff_t] = ACTIONS(4289), [sym_string] = ACTIONS(4289), [sym_cstring] = ACTIONS(4289), [sym_dstring] = ACTIONS(4289), [sym_wstring] = ACTIONS(4289), [sym_noreturn] = ACTIONS(4289), [sym_true] = ACTIONS(4289), [sym_false] = ACTIONS(4289), [sym_null] = ACTIONS(4289), [sym_super] = ACTIONS(4289), [sym_this] = ACTIONS(4289), [sym_assert] = ACTIONS(4289), [sym_auto] = ACTIONS(4289), [sym_cast] = ACTIONS(4289), [sym_catch] = ACTIONS(4289), [sym_const] = ACTIONS(4289), [sym_delegate] = ACTIONS(4289), [sym_delete] = ACTIONS(4289), [sym_do] = ACTIONS(4289), [sym_else] = ACTIONS(4289), [sym_finally] = ACTIONS(4289), [sym_function] = ACTIONS(4289), [sym_immutable] = ACTIONS(4289), [sym_import] = ACTIONS(4289), [sym_in] = ACTIONS(4289), [sym_inout] = ACTIONS(4289), [sym_is] = ACTIONS(4289), [sym_mixin] = ACTIONS(4289), [sym_new] = ACTIONS(4289), [sym_out] = ACTIONS(4289), [sym_ref] = ACTIONS(4289), [sym_shared] = ACTIONS(4289), [sym_throw] = ACTIONS(4289), [sym_typeid] = ACTIONS(4289), [sym_typeof] = ACTIONS(4289), [sym_traits] = ACTIONS(4289), [sym_vector] = ACTIONS(4289), [sym_void] = ACTIONS(4289), [anon_sym_BQUOTE] = ACTIONS(4291), [anon_sym_r_DQUOTE] = ACTIONS(4291), [anon_sym_x_DQUOTE] = ACTIONS(4291), [anon_sym_DQUOTE] = ACTIONS(4291), [anon_sym_i_BQUOTE] = ACTIONS(4291), [anon_sym_i_DQUOTE] = ACTIONS(4291), [anon_sym_iq_LBRACE] = ACTIONS(4291), [aux_sym_char_literal_token1] = ACTIONS(4291), [anon_sym_SQUOTE] = ACTIONS(4289), [anon_sym___DATE__] = ACTIONS(4289), [anon_sym___FILE__] = ACTIONS(4289), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4289), [anon_sym___FUNCTION__] = ACTIONS(4289), [anon_sym___LINE__] = ACTIONS(4289), [anon_sym___MODULE__] = ACTIONS(4289), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4289), [anon_sym___TIME__] = ACTIONS(4289), [anon_sym___TIMESTAMP__] = ACTIONS(4289), [anon_sym___VENDOR__] = ACTIONS(4289), [anon_sym___VERSION__] = ACTIONS(4289), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4291), [sym_float_literal] = ACTIONS(4291), [sym__string] = ACTIONS(4291), }, [2262] = { [sym_identifier] = ACTIONS(5036), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5038), [anon_sym_LBRACE] = ACTIONS(5038), [anon_sym_DOT] = ACTIONS(5038), [anon_sym_AMP] = ACTIONS(5038), [anon_sym_DASH] = ACTIONS(5036), [anon_sym_DASH_DASH] = ACTIONS(5038), [anon_sym_PLUS] = ACTIONS(5036), [anon_sym_PLUS_PLUS] = ACTIONS(5038), [anon_sym_BANG] = ACTIONS(5038), [anon_sym_LPAREN] = ACTIONS(5038), [anon_sym_RPAREN] = ACTIONS(5038), [anon_sym_LBRACK] = ACTIONS(5038), [anon_sym_SEMI] = ACTIONS(5038), [anon_sym_DOLLAR] = ACTIONS(5038), [anon_sym_STAR] = ACTIONS(5038), [anon_sym_TILDE] = ACTIONS(5038), [sym_bool] = ACTIONS(5036), [sym_byte] = ACTIONS(5036), [sym_ubyte] = ACTIONS(5036), [sym_char] = ACTIONS(5036), [sym_short] = ACTIONS(5036), [sym_ushort] = ACTIONS(5036), [sym_int] = ACTIONS(5036), [sym_uint] = ACTIONS(5036), [sym_long] = ACTIONS(5036), [sym_ulong] = ACTIONS(5036), [sym_cent] = ACTIONS(5036), [sym_ucent] = ACTIONS(5036), [sym_wchar] = ACTIONS(5036), [sym_dchar] = ACTIONS(5036), [sym_float] = ACTIONS(5036), [sym_double] = ACTIONS(5036), [sym_real] = ACTIONS(5036), [sym_ifloat] = ACTIONS(5036), [sym_idouble] = ACTIONS(5036), [sym_ireal] = ACTIONS(5036), [sym_cfloat] = ACTIONS(5036), [sym_cdouble] = ACTIONS(5036), [sym_creal] = ACTIONS(5036), [sym_size_t] = ACTIONS(5036), [sym_ptrdiff_t] = ACTIONS(5036), [sym_string] = ACTIONS(5036), [sym_cstring] = ACTIONS(5036), [sym_dstring] = ACTIONS(5036), [sym_wstring] = ACTIONS(5036), [sym_noreturn] = ACTIONS(5036), [sym_true] = ACTIONS(5036), [sym_false] = ACTIONS(5036), [sym_null] = ACTIONS(5036), [sym_super] = ACTIONS(5036), [sym_this] = ACTIONS(5036), [sym_assert] = ACTIONS(5036), [sym_auto] = ACTIONS(5036), [sym_cast] = ACTIONS(5036), [sym_catch] = ACTIONS(5036), [sym_const] = ACTIONS(5036), [sym_delegate] = ACTIONS(5036), [sym_delete] = ACTIONS(5036), [sym_do] = ACTIONS(5036), [sym_else] = ACTIONS(5036), [sym_finally] = ACTIONS(5036), [sym_function] = ACTIONS(5036), [sym_immutable] = ACTIONS(5036), [sym_import] = ACTIONS(5036), [sym_in] = ACTIONS(5036), [sym_inout] = ACTIONS(5036), [sym_is] = ACTIONS(5036), [sym_mixin] = ACTIONS(5036), [sym_new] = ACTIONS(5036), [sym_out] = ACTIONS(5036), [sym_ref] = ACTIONS(5036), [sym_shared] = ACTIONS(5036), [sym_throw] = ACTIONS(5036), [sym_typeid] = ACTIONS(5036), [sym_typeof] = ACTIONS(5036), [sym_traits] = ACTIONS(5036), [sym_vector] = ACTIONS(5036), [sym_void] = ACTIONS(5036), [anon_sym_BQUOTE] = ACTIONS(5038), [anon_sym_r_DQUOTE] = ACTIONS(5038), [anon_sym_x_DQUOTE] = ACTIONS(5038), [anon_sym_DQUOTE] = ACTIONS(5038), [anon_sym_i_BQUOTE] = ACTIONS(5038), [anon_sym_i_DQUOTE] = ACTIONS(5038), [anon_sym_iq_LBRACE] = ACTIONS(5038), [aux_sym_char_literal_token1] = ACTIONS(5038), [anon_sym_SQUOTE] = ACTIONS(5036), [anon_sym___DATE__] = ACTIONS(5036), [anon_sym___FILE__] = ACTIONS(5036), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5036), [anon_sym___FUNCTION__] = ACTIONS(5036), [anon_sym___LINE__] = ACTIONS(5036), [anon_sym___MODULE__] = ACTIONS(5036), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5036), [anon_sym___TIME__] = ACTIONS(5036), [anon_sym___TIMESTAMP__] = ACTIONS(5036), [anon_sym___VENDOR__] = ACTIONS(5036), [anon_sym___VERSION__] = ACTIONS(5036), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5038), [sym_float_literal] = ACTIONS(5038), [sym__string] = ACTIONS(5038), }, [2263] = { [sym_identifier] = ACTIONS(5060), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5062), [anon_sym_LBRACE] = ACTIONS(5062), [anon_sym_DOT] = ACTIONS(5062), [anon_sym_AMP] = ACTIONS(5062), [anon_sym_DASH] = ACTIONS(5060), [anon_sym_DASH_DASH] = ACTIONS(5062), [anon_sym_PLUS] = ACTIONS(5060), [anon_sym_PLUS_PLUS] = ACTIONS(5062), [anon_sym_BANG] = ACTIONS(5062), [anon_sym_LPAREN] = ACTIONS(5062), [anon_sym_RPAREN] = ACTIONS(5062), [anon_sym_LBRACK] = ACTIONS(5062), [anon_sym_SEMI] = ACTIONS(5062), [anon_sym_DOLLAR] = ACTIONS(5062), [anon_sym_STAR] = ACTIONS(5062), [anon_sym_TILDE] = ACTIONS(5062), [sym_bool] = ACTIONS(5060), [sym_byte] = ACTIONS(5060), [sym_ubyte] = ACTIONS(5060), [sym_char] = ACTIONS(5060), [sym_short] = ACTIONS(5060), [sym_ushort] = ACTIONS(5060), [sym_int] = ACTIONS(5060), [sym_uint] = ACTIONS(5060), [sym_long] = ACTIONS(5060), [sym_ulong] = ACTIONS(5060), [sym_cent] = ACTIONS(5060), [sym_ucent] = ACTIONS(5060), [sym_wchar] = ACTIONS(5060), [sym_dchar] = ACTIONS(5060), [sym_float] = ACTIONS(5060), [sym_double] = ACTIONS(5060), [sym_real] = ACTIONS(5060), [sym_ifloat] = ACTIONS(5060), [sym_idouble] = ACTIONS(5060), [sym_ireal] = ACTIONS(5060), [sym_cfloat] = ACTIONS(5060), [sym_cdouble] = ACTIONS(5060), [sym_creal] = ACTIONS(5060), [sym_size_t] = ACTIONS(5060), [sym_ptrdiff_t] = ACTIONS(5060), [sym_string] = ACTIONS(5060), [sym_cstring] = ACTIONS(5060), [sym_dstring] = ACTIONS(5060), [sym_wstring] = ACTIONS(5060), [sym_noreturn] = ACTIONS(5060), [sym_true] = ACTIONS(5060), [sym_false] = ACTIONS(5060), [sym_null] = ACTIONS(5060), [sym_super] = ACTIONS(5060), [sym_this] = ACTIONS(5060), [sym_assert] = ACTIONS(5060), [sym_auto] = ACTIONS(5060), [sym_cast] = ACTIONS(5060), [sym_catch] = ACTIONS(5060), [sym_const] = ACTIONS(5060), [sym_delegate] = ACTIONS(5060), [sym_delete] = ACTIONS(5060), [sym_do] = ACTIONS(5060), [sym_else] = ACTIONS(5060), [sym_finally] = ACTIONS(5060), [sym_function] = ACTIONS(5060), [sym_immutable] = ACTIONS(5060), [sym_import] = ACTIONS(5060), [sym_in] = ACTIONS(5060), [sym_inout] = ACTIONS(5060), [sym_is] = ACTIONS(5060), [sym_mixin] = ACTIONS(5060), [sym_new] = ACTIONS(5060), [sym_out] = ACTIONS(5060), [sym_ref] = ACTIONS(5060), [sym_shared] = ACTIONS(5060), [sym_throw] = ACTIONS(5060), [sym_typeid] = ACTIONS(5060), [sym_typeof] = ACTIONS(5060), [sym_traits] = ACTIONS(5060), [sym_vector] = ACTIONS(5060), [sym_void] = ACTIONS(5060), [anon_sym_BQUOTE] = ACTIONS(5062), [anon_sym_r_DQUOTE] = ACTIONS(5062), [anon_sym_x_DQUOTE] = ACTIONS(5062), [anon_sym_DQUOTE] = ACTIONS(5062), [anon_sym_i_BQUOTE] = ACTIONS(5062), [anon_sym_i_DQUOTE] = ACTIONS(5062), [anon_sym_iq_LBRACE] = ACTIONS(5062), [aux_sym_char_literal_token1] = ACTIONS(5062), [anon_sym_SQUOTE] = ACTIONS(5060), [anon_sym___DATE__] = ACTIONS(5060), [anon_sym___FILE__] = ACTIONS(5060), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5060), [anon_sym___FUNCTION__] = ACTIONS(5060), [anon_sym___LINE__] = ACTIONS(5060), [anon_sym___MODULE__] = ACTIONS(5060), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5060), [anon_sym___TIME__] = ACTIONS(5060), [anon_sym___TIMESTAMP__] = ACTIONS(5060), [anon_sym___VENDOR__] = ACTIONS(5060), [anon_sym___VERSION__] = ACTIONS(5060), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5062), [sym_float_literal] = ACTIONS(5062), [sym__string] = ACTIONS(5062), }, [2264] = { [sym_identifier] = ACTIONS(4650), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4652), [anon_sym_LBRACE] = ACTIONS(4652), [anon_sym_DOT] = ACTIONS(4652), [anon_sym_AMP] = ACTIONS(4652), [anon_sym_DASH] = ACTIONS(4650), [anon_sym_DASH_DASH] = ACTIONS(4652), [anon_sym_PLUS] = ACTIONS(4650), [anon_sym_PLUS_PLUS] = ACTIONS(4652), [anon_sym_BANG] = ACTIONS(4652), [anon_sym_LPAREN] = ACTIONS(4652), [anon_sym_RPAREN] = ACTIONS(4652), [anon_sym_LBRACK] = ACTIONS(4652), [anon_sym_SEMI] = ACTIONS(4652), [anon_sym_DOLLAR] = ACTIONS(4652), [anon_sym_STAR] = ACTIONS(4652), [anon_sym_TILDE] = ACTIONS(4652), [sym_bool] = ACTIONS(4650), [sym_byte] = ACTIONS(4650), [sym_ubyte] = ACTIONS(4650), [sym_char] = ACTIONS(4650), [sym_short] = ACTIONS(4650), [sym_ushort] = ACTIONS(4650), [sym_int] = ACTIONS(4650), [sym_uint] = ACTIONS(4650), [sym_long] = ACTIONS(4650), [sym_ulong] = ACTIONS(4650), [sym_cent] = ACTIONS(4650), [sym_ucent] = ACTIONS(4650), [sym_wchar] = ACTIONS(4650), [sym_dchar] = ACTIONS(4650), [sym_float] = ACTIONS(4650), [sym_double] = ACTIONS(4650), [sym_real] = ACTIONS(4650), [sym_ifloat] = ACTIONS(4650), [sym_idouble] = ACTIONS(4650), [sym_ireal] = ACTIONS(4650), [sym_cfloat] = ACTIONS(4650), [sym_cdouble] = ACTIONS(4650), [sym_creal] = ACTIONS(4650), [sym_size_t] = ACTIONS(4650), [sym_ptrdiff_t] = ACTIONS(4650), [sym_string] = ACTIONS(4650), [sym_cstring] = ACTIONS(4650), [sym_dstring] = ACTIONS(4650), [sym_wstring] = ACTIONS(4650), [sym_noreturn] = ACTIONS(4650), [sym_true] = ACTIONS(4650), [sym_false] = ACTIONS(4650), [sym_null] = ACTIONS(4650), [sym_super] = ACTIONS(4650), [sym_this] = ACTIONS(4650), [sym_assert] = ACTIONS(4650), [sym_auto] = ACTIONS(4650), [sym_cast] = ACTIONS(4650), [sym_catch] = ACTIONS(4650), [sym_const] = ACTIONS(4650), [sym_delegate] = ACTIONS(4650), [sym_delete] = ACTIONS(4650), [sym_do] = ACTIONS(4650), [sym_else] = ACTIONS(4650), [sym_finally] = ACTIONS(4650), [sym_function] = ACTIONS(4650), [sym_immutable] = ACTIONS(4650), [sym_import] = ACTIONS(4650), [sym_in] = ACTIONS(4650), [sym_inout] = ACTIONS(4650), [sym_is] = ACTIONS(4650), [sym_mixin] = ACTIONS(4650), [sym_new] = ACTIONS(4650), [sym_out] = ACTIONS(4650), [sym_ref] = ACTIONS(4650), [sym_shared] = ACTIONS(4650), [sym_throw] = ACTIONS(4650), [sym_typeid] = ACTIONS(4650), [sym_typeof] = ACTIONS(4650), [sym_traits] = ACTIONS(4650), [sym_vector] = ACTIONS(4650), [sym_void] = ACTIONS(4650), [anon_sym_BQUOTE] = ACTIONS(4652), [anon_sym_r_DQUOTE] = ACTIONS(4652), [anon_sym_x_DQUOTE] = ACTIONS(4652), [anon_sym_DQUOTE] = ACTIONS(4652), [anon_sym_i_BQUOTE] = ACTIONS(4652), [anon_sym_i_DQUOTE] = ACTIONS(4652), [anon_sym_iq_LBRACE] = ACTIONS(4652), [aux_sym_char_literal_token1] = ACTIONS(4652), [anon_sym_SQUOTE] = ACTIONS(4650), [anon_sym___DATE__] = ACTIONS(4650), [anon_sym___FILE__] = ACTIONS(4650), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4650), [anon_sym___FUNCTION__] = ACTIONS(4650), [anon_sym___LINE__] = ACTIONS(4650), [anon_sym___MODULE__] = ACTIONS(4650), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4650), [anon_sym___TIME__] = ACTIONS(4650), [anon_sym___TIMESTAMP__] = ACTIONS(4650), [anon_sym___VENDOR__] = ACTIONS(4650), [anon_sym___VERSION__] = ACTIONS(4650), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4652), [sym_float_literal] = ACTIONS(4652), [sym__string] = ACTIONS(4652), }, [2265] = { [sym_identifier] = ACTIONS(4285), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4287), [anon_sym_LBRACE] = ACTIONS(4287), [anon_sym_DOT] = ACTIONS(4287), [anon_sym_AMP] = ACTIONS(4287), [anon_sym_DASH] = ACTIONS(4285), [anon_sym_DASH_DASH] = ACTIONS(4287), [anon_sym_PLUS] = ACTIONS(4285), [anon_sym_PLUS_PLUS] = ACTIONS(4287), [anon_sym_BANG] = ACTIONS(4287), [anon_sym_LPAREN] = ACTIONS(4287), [anon_sym_RPAREN] = ACTIONS(4287), [anon_sym_LBRACK] = ACTIONS(4287), [anon_sym_SEMI] = ACTIONS(4287), [anon_sym_DOLLAR] = ACTIONS(4287), [anon_sym_STAR] = ACTIONS(4287), [anon_sym_TILDE] = ACTIONS(4287), [sym_bool] = ACTIONS(4285), [sym_byte] = ACTIONS(4285), [sym_ubyte] = ACTIONS(4285), [sym_char] = ACTIONS(4285), [sym_short] = ACTIONS(4285), [sym_ushort] = ACTIONS(4285), [sym_int] = ACTIONS(4285), [sym_uint] = ACTIONS(4285), [sym_long] = ACTIONS(4285), [sym_ulong] = ACTIONS(4285), [sym_cent] = ACTIONS(4285), [sym_ucent] = ACTIONS(4285), [sym_wchar] = ACTIONS(4285), [sym_dchar] = ACTIONS(4285), [sym_float] = ACTIONS(4285), [sym_double] = ACTIONS(4285), [sym_real] = ACTIONS(4285), [sym_ifloat] = ACTIONS(4285), [sym_idouble] = ACTIONS(4285), [sym_ireal] = ACTIONS(4285), [sym_cfloat] = ACTIONS(4285), [sym_cdouble] = ACTIONS(4285), [sym_creal] = ACTIONS(4285), [sym_size_t] = ACTIONS(4285), [sym_ptrdiff_t] = ACTIONS(4285), [sym_string] = ACTIONS(4285), [sym_cstring] = ACTIONS(4285), [sym_dstring] = ACTIONS(4285), [sym_wstring] = ACTIONS(4285), [sym_noreturn] = ACTIONS(4285), [sym_true] = ACTIONS(4285), [sym_false] = ACTIONS(4285), [sym_null] = ACTIONS(4285), [sym_super] = ACTIONS(4285), [sym_this] = ACTIONS(4285), [sym_assert] = ACTIONS(4285), [sym_auto] = ACTIONS(4285), [sym_cast] = ACTIONS(4285), [sym_catch] = ACTIONS(4285), [sym_const] = ACTIONS(4285), [sym_delegate] = ACTIONS(4285), [sym_delete] = ACTIONS(4285), [sym_do] = ACTIONS(4285), [sym_else] = ACTIONS(4285), [sym_finally] = ACTIONS(4285), [sym_function] = ACTIONS(4285), [sym_immutable] = ACTIONS(4285), [sym_import] = ACTIONS(4285), [sym_in] = ACTIONS(4285), [sym_inout] = ACTIONS(4285), [sym_is] = ACTIONS(4285), [sym_mixin] = ACTIONS(4285), [sym_new] = ACTIONS(4285), [sym_out] = ACTIONS(4285), [sym_ref] = ACTIONS(4285), [sym_shared] = ACTIONS(4285), [sym_throw] = ACTIONS(4285), [sym_typeid] = ACTIONS(4285), [sym_typeof] = ACTIONS(4285), [sym_traits] = ACTIONS(4285), [sym_vector] = ACTIONS(4285), [sym_void] = ACTIONS(4285), [anon_sym_BQUOTE] = ACTIONS(4287), [anon_sym_r_DQUOTE] = ACTIONS(4287), [anon_sym_x_DQUOTE] = ACTIONS(4287), [anon_sym_DQUOTE] = ACTIONS(4287), [anon_sym_i_BQUOTE] = ACTIONS(4287), [anon_sym_i_DQUOTE] = ACTIONS(4287), [anon_sym_iq_LBRACE] = ACTIONS(4287), [aux_sym_char_literal_token1] = ACTIONS(4287), [anon_sym_SQUOTE] = ACTIONS(4285), [anon_sym___DATE__] = ACTIONS(4285), [anon_sym___FILE__] = ACTIONS(4285), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4285), [anon_sym___FUNCTION__] = ACTIONS(4285), [anon_sym___LINE__] = ACTIONS(4285), [anon_sym___MODULE__] = ACTIONS(4285), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4285), [anon_sym___TIME__] = ACTIONS(4285), [anon_sym___TIMESTAMP__] = ACTIONS(4285), [anon_sym___VENDOR__] = ACTIONS(4285), [anon_sym___VERSION__] = ACTIONS(4285), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4287), [sym_float_literal] = ACTIONS(4287), [sym__string] = ACTIONS(4287), }, [2266] = { [sym_identifier] = ACTIONS(4662), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4664), [anon_sym_LBRACE] = ACTIONS(4664), [anon_sym_DOT] = ACTIONS(4664), [anon_sym_AMP] = ACTIONS(4664), [anon_sym_DASH] = ACTIONS(4662), [anon_sym_DASH_DASH] = ACTIONS(4664), [anon_sym_PLUS] = ACTIONS(4662), [anon_sym_PLUS_PLUS] = ACTIONS(4664), [anon_sym_BANG] = ACTIONS(4664), [anon_sym_LPAREN] = ACTIONS(4664), [anon_sym_RPAREN] = ACTIONS(4664), [anon_sym_LBRACK] = ACTIONS(4664), [anon_sym_SEMI] = ACTIONS(4664), [anon_sym_DOLLAR] = ACTIONS(4664), [anon_sym_STAR] = ACTIONS(4664), [anon_sym_TILDE] = ACTIONS(4664), [sym_bool] = ACTIONS(4662), [sym_byte] = ACTIONS(4662), [sym_ubyte] = ACTIONS(4662), [sym_char] = ACTIONS(4662), [sym_short] = ACTIONS(4662), [sym_ushort] = ACTIONS(4662), [sym_int] = ACTIONS(4662), [sym_uint] = ACTIONS(4662), [sym_long] = ACTIONS(4662), [sym_ulong] = ACTIONS(4662), [sym_cent] = ACTIONS(4662), [sym_ucent] = ACTIONS(4662), [sym_wchar] = ACTIONS(4662), [sym_dchar] = ACTIONS(4662), [sym_float] = ACTIONS(4662), [sym_double] = ACTIONS(4662), [sym_real] = ACTIONS(4662), [sym_ifloat] = ACTIONS(4662), [sym_idouble] = ACTIONS(4662), [sym_ireal] = ACTIONS(4662), [sym_cfloat] = ACTIONS(4662), [sym_cdouble] = ACTIONS(4662), [sym_creal] = ACTIONS(4662), [sym_size_t] = ACTIONS(4662), [sym_ptrdiff_t] = ACTIONS(4662), [sym_string] = ACTIONS(4662), [sym_cstring] = ACTIONS(4662), [sym_dstring] = ACTIONS(4662), [sym_wstring] = ACTIONS(4662), [sym_noreturn] = ACTIONS(4662), [sym_true] = ACTIONS(4662), [sym_false] = ACTIONS(4662), [sym_null] = ACTIONS(4662), [sym_super] = ACTIONS(4662), [sym_this] = ACTIONS(4662), [sym_assert] = ACTIONS(4662), [sym_auto] = ACTIONS(4662), [sym_cast] = ACTIONS(4662), [sym_catch] = ACTIONS(4662), [sym_const] = ACTIONS(4662), [sym_delegate] = ACTIONS(4662), [sym_delete] = ACTIONS(4662), [sym_do] = ACTIONS(4662), [sym_else] = ACTIONS(4662), [sym_finally] = ACTIONS(4662), [sym_function] = ACTIONS(4662), [sym_immutable] = ACTIONS(4662), [sym_import] = ACTIONS(4662), [sym_in] = ACTIONS(4662), [sym_inout] = ACTIONS(4662), [sym_is] = ACTIONS(4662), [sym_mixin] = ACTIONS(4662), [sym_new] = ACTIONS(4662), [sym_out] = ACTIONS(4662), [sym_ref] = ACTIONS(4662), [sym_shared] = ACTIONS(4662), [sym_throw] = ACTIONS(4662), [sym_typeid] = ACTIONS(4662), [sym_typeof] = ACTIONS(4662), [sym_traits] = ACTIONS(4662), [sym_vector] = ACTIONS(4662), [sym_void] = ACTIONS(4662), [anon_sym_BQUOTE] = ACTIONS(4664), [anon_sym_r_DQUOTE] = ACTIONS(4664), [anon_sym_x_DQUOTE] = ACTIONS(4664), [anon_sym_DQUOTE] = ACTIONS(4664), [anon_sym_i_BQUOTE] = ACTIONS(4664), [anon_sym_i_DQUOTE] = ACTIONS(4664), [anon_sym_iq_LBRACE] = ACTIONS(4664), [aux_sym_char_literal_token1] = ACTIONS(4664), [anon_sym_SQUOTE] = ACTIONS(4662), [anon_sym___DATE__] = ACTIONS(4662), [anon_sym___FILE__] = ACTIONS(4662), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4662), [anon_sym___FUNCTION__] = ACTIONS(4662), [anon_sym___LINE__] = ACTIONS(4662), [anon_sym___MODULE__] = ACTIONS(4662), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4662), [anon_sym___TIME__] = ACTIONS(4662), [anon_sym___TIMESTAMP__] = ACTIONS(4662), [anon_sym___VENDOR__] = ACTIONS(4662), [anon_sym___VERSION__] = ACTIONS(4662), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4664), [sym_float_literal] = ACTIONS(4664), [sym__string] = ACTIONS(4664), }, [2267] = { [sym_identifier] = ACTIONS(4670), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4672), [anon_sym_LBRACE] = ACTIONS(4672), [anon_sym_DOT] = ACTIONS(4672), [anon_sym_AMP] = ACTIONS(4672), [anon_sym_DASH] = ACTIONS(4670), [anon_sym_DASH_DASH] = ACTIONS(4672), [anon_sym_PLUS] = ACTIONS(4670), [anon_sym_PLUS_PLUS] = ACTIONS(4672), [anon_sym_BANG] = ACTIONS(4672), [anon_sym_LPAREN] = ACTIONS(4672), [anon_sym_RPAREN] = ACTIONS(4672), [anon_sym_LBRACK] = ACTIONS(4672), [anon_sym_SEMI] = ACTIONS(4672), [anon_sym_DOLLAR] = ACTIONS(4672), [anon_sym_STAR] = ACTIONS(4672), [anon_sym_TILDE] = ACTIONS(4672), [sym_bool] = ACTIONS(4670), [sym_byte] = ACTIONS(4670), [sym_ubyte] = ACTIONS(4670), [sym_char] = ACTIONS(4670), [sym_short] = ACTIONS(4670), [sym_ushort] = ACTIONS(4670), [sym_int] = ACTIONS(4670), [sym_uint] = ACTIONS(4670), [sym_long] = ACTIONS(4670), [sym_ulong] = ACTIONS(4670), [sym_cent] = ACTIONS(4670), [sym_ucent] = ACTIONS(4670), [sym_wchar] = ACTIONS(4670), [sym_dchar] = ACTIONS(4670), [sym_float] = ACTIONS(4670), [sym_double] = ACTIONS(4670), [sym_real] = ACTIONS(4670), [sym_ifloat] = ACTIONS(4670), [sym_idouble] = ACTIONS(4670), [sym_ireal] = ACTIONS(4670), [sym_cfloat] = ACTIONS(4670), [sym_cdouble] = ACTIONS(4670), [sym_creal] = ACTIONS(4670), [sym_size_t] = ACTIONS(4670), [sym_ptrdiff_t] = ACTIONS(4670), [sym_string] = ACTIONS(4670), [sym_cstring] = ACTIONS(4670), [sym_dstring] = ACTIONS(4670), [sym_wstring] = ACTIONS(4670), [sym_noreturn] = ACTIONS(4670), [sym_true] = ACTIONS(4670), [sym_false] = ACTIONS(4670), [sym_null] = ACTIONS(4670), [sym_super] = ACTIONS(4670), [sym_this] = ACTIONS(4670), [sym_assert] = ACTIONS(4670), [sym_auto] = ACTIONS(4670), [sym_cast] = ACTIONS(4670), [sym_catch] = ACTIONS(4670), [sym_const] = ACTIONS(4670), [sym_delegate] = ACTIONS(4670), [sym_delete] = ACTIONS(4670), [sym_do] = ACTIONS(4670), [sym_else] = ACTIONS(4670), [sym_finally] = ACTIONS(4670), [sym_function] = ACTIONS(4670), [sym_immutable] = ACTIONS(4670), [sym_import] = ACTIONS(4670), [sym_in] = ACTIONS(4670), [sym_inout] = ACTIONS(4670), [sym_is] = ACTIONS(4670), [sym_mixin] = ACTIONS(4670), [sym_new] = ACTIONS(4670), [sym_out] = ACTIONS(4670), [sym_ref] = ACTIONS(4670), [sym_shared] = ACTIONS(4670), [sym_throw] = ACTIONS(4670), [sym_typeid] = ACTIONS(4670), [sym_typeof] = ACTIONS(4670), [sym_traits] = ACTIONS(4670), [sym_vector] = ACTIONS(4670), [sym_void] = ACTIONS(4670), [anon_sym_BQUOTE] = ACTIONS(4672), [anon_sym_r_DQUOTE] = ACTIONS(4672), [anon_sym_x_DQUOTE] = ACTIONS(4672), [anon_sym_DQUOTE] = ACTIONS(4672), [anon_sym_i_BQUOTE] = ACTIONS(4672), [anon_sym_i_DQUOTE] = ACTIONS(4672), [anon_sym_iq_LBRACE] = ACTIONS(4672), [aux_sym_char_literal_token1] = ACTIONS(4672), [anon_sym_SQUOTE] = ACTIONS(4670), [anon_sym___DATE__] = ACTIONS(4670), [anon_sym___FILE__] = ACTIONS(4670), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4670), [anon_sym___FUNCTION__] = ACTIONS(4670), [anon_sym___LINE__] = ACTIONS(4670), [anon_sym___MODULE__] = ACTIONS(4670), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4670), [anon_sym___TIME__] = ACTIONS(4670), [anon_sym___TIMESTAMP__] = ACTIONS(4670), [anon_sym___VENDOR__] = ACTIONS(4670), [anon_sym___VERSION__] = ACTIONS(4670), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4672), [sym_float_literal] = ACTIONS(4672), [sym__string] = ACTIONS(4672), }, [2268] = { [sym_identifier] = ACTIONS(4674), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4676), [anon_sym_LBRACE] = ACTIONS(4676), [anon_sym_DOT] = ACTIONS(4676), [anon_sym_AMP] = ACTIONS(4676), [anon_sym_DASH] = ACTIONS(4674), [anon_sym_DASH_DASH] = ACTIONS(4676), [anon_sym_PLUS] = ACTIONS(4674), [anon_sym_PLUS_PLUS] = ACTIONS(4676), [anon_sym_BANG] = ACTIONS(4676), [anon_sym_LPAREN] = ACTIONS(4676), [anon_sym_RPAREN] = ACTIONS(4676), [anon_sym_LBRACK] = ACTIONS(4676), [anon_sym_SEMI] = ACTIONS(4676), [anon_sym_DOLLAR] = ACTIONS(4676), [anon_sym_STAR] = ACTIONS(4676), [anon_sym_TILDE] = ACTIONS(4676), [sym_bool] = ACTIONS(4674), [sym_byte] = ACTIONS(4674), [sym_ubyte] = ACTIONS(4674), [sym_char] = ACTIONS(4674), [sym_short] = ACTIONS(4674), [sym_ushort] = ACTIONS(4674), [sym_int] = ACTIONS(4674), [sym_uint] = ACTIONS(4674), [sym_long] = ACTIONS(4674), [sym_ulong] = ACTIONS(4674), [sym_cent] = ACTIONS(4674), [sym_ucent] = ACTIONS(4674), [sym_wchar] = ACTIONS(4674), [sym_dchar] = ACTIONS(4674), [sym_float] = ACTIONS(4674), [sym_double] = ACTIONS(4674), [sym_real] = ACTIONS(4674), [sym_ifloat] = ACTIONS(4674), [sym_idouble] = ACTIONS(4674), [sym_ireal] = ACTIONS(4674), [sym_cfloat] = ACTIONS(4674), [sym_cdouble] = ACTIONS(4674), [sym_creal] = ACTIONS(4674), [sym_size_t] = ACTIONS(4674), [sym_ptrdiff_t] = ACTIONS(4674), [sym_string] = ACTIONS(4674), [sym_cstring] = ACTIONS(4674), [sym_dstring] = ACTIONS(4674), [sym_wstring] = ACTIONS(4674), [sym_noreturn] = ACTIONS(4674), [sym_true] = ACTIONS(4674), [sym_false] = ACTIONS(4674), [sym_null] = ACTIONS(4674), [sym_super] = ACTIONS(4674), [sym_this] = ACTIONS(4674), [sym_assert] = ACTIONS(4674), [sym_auto] = ACTIONS(4674), [sym_cast] = ACTIONS(4674), [sym_catch] = ACTIONS(4674), [sym_const] = ACTIONS(4674), [sym_delegate] = ACTIONS(4674), [sym_delete] = ACTIONS(4674), [sym_do] = ACTIONS(4674), [sym_else] = ACTIONS(4674), [sym_finally] = ACTIONS(4674), [sym_function] = ACTIONS(4674), [sym_immutable] = ACTIONS(4674), [sym_import] = ACTIONS(4674), [sym_in] = ACTIONS(4674), [sym_inout] = ACTIONS(4674), [sym_is] = ACTIONS(4674), [sym_mixin] = ACTIONS(4674), [sym_new] = ACTIONS(4674), [sym_out] = ACTIONS(4674), [sym_ref] = ACTIONS(4674), [sym_shared] = ACTIONS(4674), [sym_throw] = ACTIONS(4674), [sym_typeid] = ACTIONS(4674), [sym_typeof] = ACTIONS(4674), [sym_traits] = ACTIONS(4674), [sym_vector] = ACTIONS(4674), [sym_void] = ACTIONS(4674), [anon_sym_BQUOTE] = ACTIONS(4676), [anon_sym_r_DQUOTE] = ACTIONS(4676), [anon_sym_x_DQUOTE] = ACTIONS(4676), [anon_sym_DQUOTE] = ACTIONS(4676), [anon_sym_i_BQUOTE] = ACTIONS(4676), [anon_sym_i_DQUOTE] = ACTIONS(4676), [anon_sym_iq_LBRACE] = ACTIONS(4676), [aux_sym_char_literal_token1] = ACTIONS(4676), [anon_sym_SQUOTE] = ACTIONS(4674), [anon_sym___DATE__] = ACTIONS(4674), [anon_sym___FILE__] = ACTIONS(4674), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4674), [anon_sym___FUNCTION__] = ACTIONS(4674), [anon_sym___LINE__] = ACTIONS(4674), [anon_sym___MODULE__] = ACTIONS(4674), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4674), [anon_sym___TIME__] = ACTIONS(4674), [anon_sym___TIMESTAMP__] = ACTIONS(4674), [anon_sym___VENDOR__] = ACTIONS(4674), [anon_sym___VERSION__] = ACTIONS(4674), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4676), [sym_float_literal] = ACTIONS(4676), [sym__string] = ACTIONS(4676), }, [2269] = { [sym_identifier] = ACTIONS(4682), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4684), [anon_sym_LBRACE] = ACTIONS(4684), [anon_sym_DOT] = ACTIONS(4684), [anon_sym_AMP] = ACTIONS(4684), [anon_sym_DASH] = ACTIONS(4682), [anon_sym_DASH_DASH] = ACTIONS(4684), [anon_sym_PLUS] = ACTIONS(4682), [anon_sym_PLUS_PLUS] = ACTIONS(4684), [anon_sym_BANG] = ACTIONS(4684), [anon_sym_LPAREN] = ACTIONS(4684), [anon_sym_RPAREN] = ACTIONS(4684), [anon_sym_LBRACK] = ACTIONS(4684), [anon_sym_SEMI] = ACTIONS(4684), [anon_sym_DOLLAR] = ACTIONS(4684), [anon_sym_STAR] = ACTIONS(4684), [anon_sym_TILDE] = ACTIONS(4684), [sym_bool] = ACTIONS(4682), [sym_byte] = ACTIONS(4682), [sym_ubyte] = ACTIONS(4682), [sym_char] = ACTIONS(4682), [sym_short] = ACTIONS(4682), [sym_ushort] = ACTIONS(4682), [sym_int] = ACTIONS(4682), [sym_uint] = ACTIONS(4682), [sym_long] = ACTIONS(4682), [sym_ulong] = ACTIONS(4682), [sym_cent] = ACTIONS(4682), [sym_ucent] = ACTIONS(4682), [sym_wchar] = ACTIONS(4682), [sym_dchar] = ACTIONS(4682), [sym_float] = ACTIONS(4682), [sym_double] = ACTIONS(4682), [sym_real] = ACTIONS(4682), [sym_ifloat] = ACTIONS(4682), [sym_idouble] = ACTIONS(4682), [sym_ireal] = ACTIONS(4682), [sym_cfloat] = ACTIONS(4682), [sym_cdouble] = ACTIONS(4682), [sym_creal] = ACTIONS(4682), [sym_size_t] = ACTIONS(4682), [sym_ptrdiff_t] = ACTIONS(4682), [sym_string] = ACTIONS(4682), [sym_cstring] = ACTIONS(4682), [sym_dstring] = ACTIONS(4682), [sym_wstring] = ACTIONS(4682), [sym_noreturn] = ACTIONS(4682), [sym_true] = ACTIONS(4682), [sym_false] = ACTIONS(4682), [sym_null] = ACTIONS(4682), [sym_super] = ACTIONS(4682), [sym_this] = ACTIONS(4682), [sym_assert] = ACTIONS(4682), [sym_auto] = ACTIONS(4682), [sym_cast] = ACTIONS(4682), [sym_catch] = ACTIONS(4682), [sym_const] = ACTIONS(4682), [sym_delegate] = ACTIONS(4682), [sym_delete] = ACTIONS(4682), [sym_do] = ACTIONS(4682), [sym_else] = ACTIONS(4682), [sym_finally] = ACTIONS(4682), [sym_function] = ACTIONS(4682), [sym_immutable] = ACTIONS(4682), [sym_import] = ACTIONS(4682), [sym_in] = ACTIONS(4682), [sym_inout] = ACTIONS(4682), [sym_is] = ACTIONS(4682), [sym_mixin] = ACTIONS(4682), [sym_new] = ACTIONS(4682), [sym_out] = ACTIONS(4682), [sym_ref] = ACTIONS(4682), [sym_shared] = ACTIONS(4682), [sym_throw] = ACTIONS(4682), [sym_typeid] = ACTIONS(4682), [sym_typeof] = ACTIONS(4682), [sym_traits] = ACTIONS(4682), [sym_vector] = ACTIONS(4682), [sym_void] = ACTIONS(4682), [anon_sym_BQUOTE] = ACTIONS(4684), [anon_sym_r_DQUOTE] = ACTIONS(4684), [anon_sym_x_DQUOTE] = ACTIONS(4684), [anon_sym_DQUOTE] = ACTIONS(4684), [anon_sym_i_BQUOTE] = ACTIONS(4684), [anon_sym_i_DQUOTE] = ACTIONS(4684), [anon_sym_iq_LBRACE] = ACTIONS(4684), [aux_sym_char_literal_token1] = ACTIONS(4684), [anon_sym_SQUOTE] = ACTIONS(4682), [anon_sym___DATE__] = ACTIONS(4682), [anon_sym___FILE__] = ACTIONS(4682), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4682), [anon_sym___FUNCTION__] = ACTIONS(4682), [anon_sym___LINE__] = ACTIONS(4682), [anon_sym___MODULE__] = ACTIONS(4682), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4682), [anon_sym___TIME__] = ACTIONS(4682), [anon_sym___TIMESTAMP__] = ACTIONS(4682), [anon_sym___VENDOR__] = ACTIONS(4682), [anon_sym___VERSION__] = ACTIONS(4682), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4684), [sym_float_literal] = ACTIONS(4684), [sym__string] = ACTIONS(4684), }, [2270] = { [sym_identifier] = ACTIONS(4686), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4688), [anon_sym_LBRACE] = ACTIONS(4688), [anon_sym_DOT] = ACTIONS(4688), [anon_sym_AMP] = ACTIONS(4688), [anon_sym_DASH] = ACTIONS(4686), [anon_sym_DASH_DASH] = ACTIONS(4688), [anon_sym_PLUS] = ACTIONS(4686), [anon_sym_PLUS_PLUS] = ACTIONS(4688), [anon_sym_BANG] = ACTIONS(4688), [anon_sym_LPAREN] = ACTIONS(4688), [anon_sym_RPAREN] = ACTIONS(4688), [anon_sym_LBRACK] = ACTIONS(4688), [anon_sym_SEMI] = ACTIONS(4688), [anon_sym_DOLLAR] = ACTIONS(4688), [anon_sym_STAR] = ACTIONS(4688), [anon_sym_TILDE] = ACTIONS(4688), [sym_bool] = ACTIONS(4686), [sym_byte] = ACTIONS(4686), [sym_ubyte] = ACTIONS(4686), [sym_char] = ACTIONS(4686), [sym_short] = ACTIONS(4686), [sym_ushort] = ACTIONS(4686), [sym_int] = ACTIONS(4686), [sym_uint] = ACTIONS(4686), [sym_long] = ACTIONS(4686), [sym_ulong] = ACTIONS(4686), [sym_cent] = ACTIONS(4686), [sym_ucent] = ACTIONS(4686), [sym_wchar] = ACTIONS(4686), [sym_dchar] = ACTIONS(4686), [sym_float] = ACTIONS(4686), [sym_double] = ACTIONS(4686), [sym_real] = ACTIONS(4686), [sym_ifloat] = ACTIONS(4686), [sym_idouble] = ACTIONS(4686), [sym_ireal] = ACTIONS(4686), [sym_cfloat] = ACTIONS(4686), [sym_cdouble] = ACTIONS(4686), [sym_creal] = ACTIONS(4686), [sym_size_t] = ACTIONS(4686), [sym_ptrdiff_t] = ACTIONS(4686), [sym_string] = ACTIONS(4686), [sym_cstring] = ACTIONS(4686), [sym_dstring] = ACTIONS(4686), [sym_wstring] = ACTIONS(4686), [sym_noreturn] = ACTIONS(4686), [sym_true] = ACTIONS(4686), [sym_false] = ACTIONS(4686), [sym_null] = ACTIONS(4686), [sym_super] = ACTIONS(4686), [sym_this] = ACTIONS(4686), [sym_assert] = ACTIONS(4686), [sym_auto] = ACTIONS(4686), [sym_cast] = ACTIONS(4686), [sym_catch] = ACTIONS(4686), [sym_const] = ACTIONS(4686), [sym_delegate] = ACTIONS(4686), [sym_delete] = ACTIONS(4686), [sym_do] = ACTIONS(4686), [sym_else] = ACTIONS(4686), [sym_finally] = ACTIONS(4686), [sym_function] = ACTIONS(4686), [sym_immutable] = ACTIONS(4686), [sym_import] = ACTIONS(4686), [sym_in] = ACTIONS(4686), [sym_inout] = ACTIONS(4686), [sym_is] = ACTIONS(4686), [sym_mixin] = ACTIONS(4686), [sym_new] = ACTIONS(4686), [sym_out] = ACTIONS(4686), [sym_ref] = ACTIONS(4686), [sym_shared] = ACTIONS(4686), [sym_throw] = ACTIONS(4686), [sym_typeid] = ACTIONS(4686), [sym_typeof] = ACTIONS(4686), [sym_traits] = ACTIONS(4686), [sym_vector] = ACTIONS(4686), [sym_void] = ACTIONS(4686), [anon_sym_BQUOTE] = ACTIONS(4688), [anon_sym_r_DQUOTE] = ACTIONS(4688), [anon_sym_x_DQUOTE] = ACTIONS(4688), [anon_sym_DQUOTE] = ACTIONS(4688), [anon_sym_i_BQUOTE] = ACTIONS(4688), [anon_sym_i_DQUOTE] = ACTIONS(4688), [anon_sym_iq_LBRACE] = ACTIONS(4688), [aux_sym_char_literal_token1] = ACTIONS(4688), [anon_sym_SQUOTE] = ACTIONS(4686), [anon_sym___DATE__] = ACTIONS(4686), [anon_sym___FILE__] = ACTIONS(4686), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4686), [anon_sym___FUNCTION__] = ACTIONS(4686), [anon_sym___LINE__] = ACTIONS(4686), [anon_sym___MODULE__] = ACTIONS(4686), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4686), [anon_sym___TIME__] = ACTIONS(4686), [anon_sym___TIMESTAMP__] = ACTIONS(4686), [anon_sym___VENDOR__] = ACTIONS(4686), [anon_sym___VERSION__] = ACTIONS(4686), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4688), [sym_float_literal] = ACTIONS(4688), [sym__string] = ACTIONS(4688), }, [2271] = { [sym_identifier] = ACTIONS(4704), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4706), [anon_sym_LBRACE] = ACTIONS(4706), [anon_sym_DOT] = ACTIONS(4706), [anon_sym_AMP] = ACTIONS(4706), [anon_sym_DASH] = ACTIONS(4704), [anon_sym_DASH_DASH] = ACTIONS(4706), [anon_sym_PLUS] = ACTIONS(4704), [anon_sym_PLUS_PLUS] = ACTIONS(4706), [anon_sym_BANG] = ACTIONS(4706), [anon_sym_LPAREN] = ACTIONS(4706), [anon_sym_RPAREN] = ACTIONS(4706), [anon_sym_LBRACK] = ACTIONS(4706), [anon_sym_SEMI] = ACTIONS(4706), [anon_sym_DOLLAR] = ACTIONS(4706), [anon_sym_STAR] = ACTIONS(4706), [anon_sym_TILDE] = ACTIONS(4706), [sym_bool] = ACTIONS(4704), [sym_byte] = ACTIONS(4704), [sym_ubyte] = ACTIONS(4704), [sym_char] = ACTIONS(4704), [sym_short] = ACTIONS(4704), [sym_ushort] = ACTIONS(4704), [sym_int] = ACTIONS(4704), [sym_uint] = ACTIONS(4704), [sym_long] = ACTIONS(4704), [sym_ulong] = ACTIONS(4704), [sym_cent] = ACTIONS(4704), [sym_ucent] = ACTIONS(4704), [sym_wchar] = ACTIONS(4704), [sym_dchar] = ACTIONS(4704), [sym_float] = ACTIONS(4704), [sym_double] = ACTIONS(4704), [sym_real] = ACTIONS(4704), [sym_ifloat] = ACTIONS(4704), [sym_idouble] = ACTIONS(4704), [sym_ireal] = ACTIONS(4704), [sym_cfloat] = ACTIONS(4704), [sym_cdouble] = ACTIONS(4704), [sym_creal] = ACTIONS(4704), [sym_size_t] = ACTIONS(4704), [sym_ptrdiff_t] = ACTIONS(4704), [sym_string] = ACTIONS(4704), [sym_cstring] = ACTIONS(4704), [sym_dstring] = ACTIONS(4704), [sym_wstring] = ACTIONS(4704), [sym_noreturn] = ACTIONS(4704), [sym_true] = ACTIONS(4704), [sym_false] = ACTIONS(4704), [sym_null] = ACTIONS(4704), [sym_super] = ACTIONS(4704), [sym_this] = ACTIONS(4704), [sym_assert] = ACTIONS(4704), [sym_auto] = ACTIONS(4704), [sym_cast] = ACTIONS(4704), [sym_catch] = ACTIONS(4704), [sym_const] = ACTIONS(4704), [sym_delegate] = ACTIONS(4704), [sym_delete] = ACTIONS(4704), [sym_do] = ACTIONS(4704), [sym_else] = ACTIONS(4704), [sym_finally] = ACTIONS(4704), [sym_function] = ACTIONS(4704), [sym_immutable] = ACTIONS(4704), [sym_import] = ACTIONS(4704), [sym_in] = ACTIONS(4704), [sym_inout] = ACTIONS(4704), [sym_is] = ACTIONS(4704), [sym_mixin] = ACTIONS(4704), [sym_new] = ACTIONS(4704), [sym_out] = ACTIONS(4704), [sym_ref] = ACTIONS(4704), [sym_shared] = ACTIONS(4704), [sym_throw] = ACTIONS(4704), [sym_typeid] = ACTIONS(4704), [sym_typeof] = ACTIONS(4704), [sym_traits] = ACTIONS(4704), [sym_vector] = ACTIONS(4704), [sym_void] = ACTIONS(4704), [anon_sym_BQUOTE] = ACTIONS(4706), [anon_sym_r_DQUOTE] = ACTIONS(4706), [anon_sym_x_DQUOTE] = ACTIONS(4706), [anon_sym_DQUOTE] = ACTIONS(4706), [anon_sym_i_BQUOTE] = ACTIONS(4706), [anon_sym_i_DQUOTE] = ACTIONS(4706), [anon_sym_iq_LBRACE] = ACTIONS(4706), [aux_sym_char_literal_token1] = ACTIONS(4706), [anon_sym_SQUOTE] = ACTIONS(4704), [anon_sym___DATE__] = ACTIONS(4704), [anon_sym___FILE__] = ACTIONS(4704), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4704), [anon_sym___FUNCTION__] = ACTIONS(4704), [anon_sym___LINE__] = ACTIONS(4704), [anon_sym___MODULE__] = ACTIONS(4704), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4704), [anon_sym___TIME__] = ACTIONS(4704), [anon_sym___TIMESTAMP__] = ACTIONS(4704), [anon_sym___VENDOR__] = ACTIONS(4704), [anon_sym___VERSION__] = ACTIONS(4704), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4706), [sym_float_literal] = ACTIONS(4706), [sym__string] = ACTIONS(4706), }, [2272] = { [sym_identifier] = ACTIONS(4712), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4714), [anon_sym_LBRACE] = ACTIONS(4714), [anon_sym_DOT] = ACTIONS(4714), [anon_sym_AMP] = ACTIONS(4714), [anon_sym_DASH] = ACTIONS(4712), [anon_sym_DASH_DASH] = ACTIONS(4714), [anon_sym_PLUS] = ACTIONS(4712), [anon_sym_PLUS_PLUS] = ACTIONS(4714), [anon_sym_BANG] = ACTIONS(4714), [anon_sym_LPAREN] = ACTIONS(4714), [anon_sym_RPAREN] = ACTIONS(4714), [anon_sym_LBRACK] = ACTIONS(4714), [anon_sym_SEMI] = ACTIONS(4714), [anon_sym_DOLLAR] = ACTIONS(4714), [anon_sym_STAR] = ACTIONS(4714), [anon_sym_TILDE] = ACTIONS(4714), [sym_bool] = ACTIONS(4712), [sym_byte] = ACTIONS(4712), [sym_ubyte] = ACTIONS(4712), [sym_char] = ACTIONS(4712), [sym_short] = ACTIONS(4712), [sym_ushort] = ACTIONS(4712), [sym_int] = ACTIONS(4712), [sym_uint] = ACTIONS(4712), [sym_long] = ACTIONS(4712), [sym_ulong] = ACTIONS(4712), [sym_cent] = ACTIONS(4712), [sym_ucent] = ACTIONS(4712), [sym_wchar] = ACTIONS(4712), [sym_dchar] = ACTIONS(4712), [sym_float] = ACTIONS(4712), [sym_double] = ACTIONS(4712), [sym_real] = ACTIONS(4712), [sym_ifloat] = ACTIONS(4712), [sym_idouble] = ACTIONS(4712), [sym_ireal] = ACTIONS(4712), [sym_cfloat] = ACTIONS(4712), [sym_cdouble] = ACTIONS(4712), [sym_creal] = ACTIONS(4712), [sym_size_t] = ACTIONS(4712), [sym_ptrdiff_t] = ACTIONS(4712), [sym_string] = ACTIONS(4712), [sym_cstring] = ACTIONS(4712), [sym_dstring] = ACTIONS(4712), [sym_wstring] = ACTIONS(4712), [sym_noreturn] = ACTIONS(4712), [sym_true] = ACTIONS(4712), [sym_false] = ACTIONS(4712), [sym_null] = ACTIONS(4712), [sym_super] = ACTIONS(4712), [sym_this] = ACTIONS(4712), [sym_assert] = ACTIONS(4712), [sym_auto] = ACTIONS(4712), [sym_cast] = ACTIONS(4712), [sym_catch] = ACTIONS(4712), [sym_const] = ACTIONS(4712), [sym_delegate] = ACTIONS(4712), [sym_delete] = ACTIONS(4712), [sym_do] = ACTIONS(4712), [sym_else] = ACTIONS(4712), [sym_finally] = ACTIONS(4712), [sym_function] = ACTIONS(4712), [sym_immutable] = ACTIONS(4712), [sym_import] = ACTIONS(4712), [sym_in] = ACTIONS(4712), [sym_inout] = ACTIONS(4712), [sym_is] = ACTIONS(4712), [sym_mixin] = ACTIONS(4712), [sym_new] = ACTIONS(4712), [sym_out] = ACTIONS(4712), [sym_ref] = ACTIONS(4712), [sym_shared] = ACTIONS(4712), [sym_throw] = ACTIONS(4712), [sym_typeid] = ACTIONS(4712), [sym_typeof] = ACTIONS(4712), [sym_traits] = ACTIONS(4712), [sym_vector] = ACTIONS(4712), [sym_void] = ACTIONS(4712), [anon_sym_BQUOTE] = ACTIONS(4714), [anon_sym_r_DQUOTE] = ACTIONS(4714), [anon_sym_x_DQUOTE] = ACTIONS(4714), [anon_sym_DQUOTE] = ACTIONS(4714), [anon_sym_i_BQUOTE] = ACTIONS(4714), [anon_sym_i_DQUOTE] = ACTIONS(4714), [anon_sym_iq_LBRACE] = ACTIONS(4714), [aux_sym_char_literal_token1] = ACTIONS(4714), [anon_sym_SQUOTE] = ACTIONS(4712), [anon_sym___DATE__] = ACTIONS(4712), [anon_sym___FILE__] = ACTIONS(4712), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4712), [anon_sym___FUNCTION__] = ACTIONS(4712), [anon_sym___LINE__] = ACTIONS(4712), [anon_sym___MODULE__] = ACTIONS(4712), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4712), [anon_sym___TIME__] = ACTIONS(4712), [anon_sym___TIMESTAMP__] = ACTIONS(4712), [anon_sym___VENDOR__] = ACTIONS(4712), [anon_sym___VERSION__] = ACTIONS(4712), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4714), [sym_float_literal] = ACTIONS(4714), [sym__string] = ACTIONS(4714), }, [2273] = { [sym_identifier] = ACTIONS(4582), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4584), [anon_sym_LBRACE] = ACTIONS(4584), [anon_sym_DOT] = ACTIONS(4584), [anon_sym_AMP] = ACTIONS(4584), [anon_sym_DASH] = ACTIONS(4582), [anon_sym_DASH_DASH] = ACTIONS(4584), [anon_sym_PLUS] = ACTIONS(4582), [anon_sym_PLUS_PLUS] = ACTIONS(4584), [anon_sym_BANG] = ACTIONS(4584), [anon_sym_LPAREN] = ACTIONS(4584), [anon_sym_RPAREN] = ACTIONS(4584), [anon_sym_LBRACK] = ACTIONS(4584), [anon_sym_SEMI] = ACTIONS(4584), [anon_sym_DOLLAR] = ACTIONS(4584), [anon_sym_STAR] = ACTIONS(4584), [anon_sym_TILDE] = ACTIONS(4584), [sym_bool] = ACTIONS(4582), [sym_byte] = ACTIONS(4582), [sym_ubyte] = ACTIONS(4582), [sym_char] = ACTIONS(4582), [sym_short] = ACTIONS(4582), [sym_ushort] = ACTIONS(4582), [sym_int] = ACTIONS(4582), [sym_uint] = ACTIONS(4582), [sym_long] = ACTIONS(4582), [sym_ulong] = ACTIONS(4582), [sym_cent] = ACTIONS(4582), [sym_ucent] = ACTIONS(4582), [sym_wchar] = ACTIONS(4582), [sym_dchar] = ACTIONS(4582), [sym_float] = ACTIONS(4582), [sym_double] = ACTIONS(4582), [sym_real] = ACTIONS(4582), [sym_ifloat] = ACTIONS(4582), [sym_idouble] = ACTIONS(4582), [sym_ireal] = ACTIONS(4582), [sym_cfloat] = ACTIONS(4582), [sym_cdouble] = ACTIONS(4582), [sym_creal] = ACTIONS(4582), [sym_size_t] = ACTIONS(4582), [sym_ptrdiff_t] = ACTIONS(4582), [sym_string] = ACTIONS(4582), [sym_cstring] = ACTIONS(4582), [sym_dstring] = ACTIONS(4582), [sym_wstring] = ACTIONS(4582), [sym_noreturn] = ACTIONS(4582), [sym_true] = ACTIONS(4582), [sym_false] = ACTIONS(4582), [sym_null] = ACTIONS(4582), [sym_super] = ACTIONS(4582), [sym_this] = ACTIONS(4582), [sym_assert] = ACTIONS(4582), [sym_auto] = ACTIONS(4582), [sym_cast] = ACTIONS(4582), [sym_catch] = ACTIONS(4582), [sym_const] = ACTIONS(4582), [sym_delegate] = ACTIONS(4582), [sym_delete] = ACTIONS(4582), [sym_do] = ACTIONS(4582), [sym_else] = ACTIONS(4582), [sym_finally] = ACTIONS(4582), [sym_function] = ACTIONS(4582), [sym_immutable] = ACTIONS(4582), [sym_import] = ACTIONS(4582), [sym_in] = ACTIONS(4582), [sym_inout] = ACTIONS(4582), [sym_is] = ACTIONS(4582), [sym_mixin] = ACTIONS(4582), [sym_new] = ACTIONS(4582), [sym_out] = ACTIONS(4582), [sym_ref] = ACTIONS(4582), [sym_shared] = ACTIONS(4582), [sym_throw] = ACTIONS(4582), [sym_typeid] = ACTIONS(4582), [sym_typeof] = ACTIONS(4582), [sym_traits] = ACTIONS(4582), [sym_vector] = ACTIONS(4582), [sym_void] = ACTIONS(4582), [anon_sym_BQUOTE] = ACTIONS(4584), [anon_sym_r_DQUOTE] = ACTIONS(4584), [anon_sym_x_DQUOTE] = ACTIONS(4584), [anon_sym_DQUOTE] = ACTIONS(4584), [anon_sym_i_BQUOTE] = ACTIONS(4584), [anon_sym_i_DQUOTE] = ACTIONS(4584), [anon_sym_iq_LBRACE] = ACTIONS(4584), [aux_sym_char_literal_token1] = ACTIONS(4584), [anon_sym_SQUOTE] = ACTIONS(4582), [anon_sym___DATE__] = ACTIONS(4582), [anon_sym___FILE__] = ACTIONS(4582), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4582), [anon_sym___FUNCTION__] = ACTIONS(4582), [anon_sym___LINE__] = ACTIONS(4582), [anon_sym___MODULE__] = ACTIONS(4582), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4582), [anon_sym___TIME__] = ACTIONS(4582), [anon_sym___TIMESTAMP__] = ACTIONS(4582), [anon_sym___VENDOR__] = ACTIONS(4582), [anon_sym___VERSION__] = ACTIONS(4582), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4584), [sym_float_literal] = ACTIONS(4584), [sym__string] = ACTIONS(4584), }, [2274] = { [sym_identifier] = ACTIONS(4720), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4722), [anon_sym_LBRACE] = ACTIONS(4722), [anon_sym_DOT] = ACTIONS(4722), [anon_sym_AMP] = ACTIONS(4722), [anon_sym_DASH] = ACTIONS(4720), [anon_sym_DASH_DASH] = ACTIONS(4722), [anon_sym_PLUS] = ACTIONS(4720), [anon_sym_PLUS_PLUS] = ACTIONS(4722), [anon_sym_BANG] = ACTIONS(4722), [anon_sym_LPAREN] = ACTIONS(4722), [anon_sym_RPAREN] = ACTIONS(4722), [anon_sym_LBRACK] = ACTIONS(4722), [anon_sym_SEMI] = ACTIONS(4722), [anon_sym_DOLLAR] = ACTIONS(4722), [anon_sym_STAR] = ACTIONS(4722), [anon_sym_TILDE] = ACTIONS(4722), [sym_bool] = ACTIONS(4720), [sym_byte] = ACTIONS(4720), [sym_ubyte] = ACTIONS(4720), [sym_char] = ACTIONS(4720), [sym_short] = ACTIONS(4720), [sym_ushort] = ACTIONS(4720), [sym_int] = ACTIONS(4720), [sym_uint] = ACTIONS(4720), [sym_long] = ACTIONS(4720), [sym_ulong] = ACTIONS(4720), [sym_cent] = ACTIONS(4720), [sym_ucent] = ACTIONS(4720), [sym_wchar] = ACTIONS(4720), [sym_dchar] = ACTIONS(4720), [sym_float] = ACTIONS(4720), [sym_double] = ACTIONS(4720), [sym_real] = ACTIONS(4720), [sym_ifloat] = ACTIONS(4720), [sym_idouble] = ACTIONS(4720), [sym_ireal] = ACTIONS(4720), [sym_cfloat] = ACTIONS(4720), [sym_cdouble] = ACTIONS(4720), [sym_creal] = ACTIONS(4720), [sym_size_t] = ACTIONS(4720), [sym_ptrdiff_t] = ACTIONS(4720), [sym_string] = ACTIONS(4720), [sym_cstring] = ACTIONS(4720), [sym_dstring] = ACTIONS(4720), [sym_wstring] = ACTIONS(4720), [sym_noreturn] = ACTIONS(4720), [sym_true] = ACTIONS(4720), [sym_false] = ACTIONS(4720), [sym_null] = ACTIONS(4720), [sym_super] = ACTIONS(4720), [sym_this] = ACTIONS(4720), [sym_assert] = ACTIONS(4720), [sym_auto] = ACTIONS(4720), [sym_cast] = ACTIONS(4720), [sym_catch] = ACTIONS(4720), [sym_const] = ACTIONS(4720), [sym_delegate] = ACTIONS(4720), [sym_delete] = ACTIONS(4720), [sym_do] = ACTIONS(4720), [sym_else] = ACTIONS(4720), [sym_finally] = ACTIONS(4720), [sym_function] = ACTIONS(4720), [sym_immutable] = ACTIONS(4720), [sym_import] = ACTIONS(4720), [sym_in] = ACTIONS(4720), [sym_inout] = ACTIONS(4720), [sym_is] = ACTIONS(4720), [sym_mixin] = ACTIONS(4720), [sym_new] = ACTIONS(4720), [sym_out] = ACTIONS(4720), [sym_ref] = ACTIONS(4720), [sym_shared] = ACTIONS(4720), [sym_throw] = ACTIONS(4720), [sym_typeid] = ACTIONS(4720), [sym_typeof] = ACTIONS(4720), [sym_traits] = ACTIONS(4720), [sym_vector] = ACTIONS(4720), [sym_void] = ACTIONS(4720), [anon_sym_BQUOTE] = ACTIONS(4722), [anon_sym_r_DQUOTE] = ACTIONS(4722), [anon_sym_x_DQUOTE] = ACTIONS(4722), [anon_sym_DQUOTE] = ACTIONS(4722), [anon_sym_i_BQUOTE] = ACTIONS(4722), [anon_sym_i_DQUOTE] = ACTIONS(4722), [anon_sym_iq_LBRACE] = ACTIONS(4722), [aux_sym_char_literal_token1] = ACTIONS(4722), [anon_sym_SQUOTE] = ACTIONS(4720), [anon_sym___DATE__] = ACTIONS(4720), [anon_sym___FILE__] = ACTIONS(4720), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4720), [anon_sym___FUNCTION__] = ACTIONS(4720), [anon_sym___LINE__] = ACTIONS(4720), [anon_sym___MODULE__] = ACTIONS(4720), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4720), [anon_sym___TIME__] = ACTIONS(4720), [anon_sym___TIMESTAMP__] = ACTIONS(4720), [anon_sym___VENDOR__] = ACTIONS(4720), [anon_sym___VERSION__] = ACTIONS(4720), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4722), [sym_float_literal] = ACTIONS(4722), [sym__string] = ACTIONS(4722), }, [2275] = { [sym_identifier] = ACTIONS(5064), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5066), [anon_sym_LBRACE] = ACTIONS(5066), [anon_sym_DOT] = ACTIONS(5066), [anon_sym_AMP] = ACTIONS(5066), [anon_sym_DASH] = ACTIONS(5064), [anon_sym_DASH_DASH] = ACTIONS(5066), [anon_sym_PLUS] = ACTIONS(5064), [anon_sym_PLUS_PLUS] = ACTIONS(5066), [anon_sym_BANG] = ACTIONS(5066), [anon_sym_LPAREN] = ACTIONS(5066), [anon_sym_RPAREN] = ACTIONS(5066), [anon_sym_LBRACK] = ACTIONS(5066), [anon_sym_SEMI] = ACTIONS(5066), [anon_sym_DOLLAR] = ACTIONS(5066), [anon_sym_STAR] = ACTIONS(5066), [anon_sym_TILDE] = ACTIONS(5066), [sym_bool] = ACTIONS(5064), [sym_byte] = ACTIONS(5064), [sym_ubyte] = ACTIONS(5064), [sym_char] = ACTIONS(5064), [sym_short] = ACTIONS(5064), [sym_ushort] = ACTIONS(5064), [sym_int] = ACTIONS(5064), [sym_uint] = ACTIONS(5064), [sym_long] = ACTIONS(5064), [sym_ulong] = ACTIONS(5064), [sym_cent] = ACTIONS(5064), [sym_ucent] = ACTIONS(5064), [sym_wchar] = ACTIONS(5064), [sym_dchar] = ACTIONS(5064), [sym_float] = ACTIONS(5064), [sym_double] = ACTIONS(5064), [sym_real] = ACTIONS(5064), [sym_ifloat] = ACTIONS(5064), [sym_idouble] = ACTIONS(5064), [sym_ireal] = ACTIONS(5064), [sym_cfloat] = ACTIONS(5064), [sym_cdouble] = ACTIONS(5064), [sym_creal] = ACTIONS(5064), [sym_size_t] = ACTIONS(5064), [sym_ptrdiff_t] = ACTIONS(5064), [sym_string] = ACTIONS(5064), [sym_cstring] = ACTIONS(5064), [sym_dstring] = ACTIONS(5064), [sym_wstring] = ACTIONS(5064), [sym_noreturn] = ACTIONS(5064), [sym_true] = ACTIONS(5064), [sym_false] = ACTIONS(5064), [sym_null] = ACTIONS(5064), [sym_super] = ACTIONS(5064), [sym_this] = ACTIONS(5064), [sym_assert] = ACTIONS(5064), [sym_auto] = ACTIONS(5064), [sym_cast] = ACTIONS(5064), [sym_catch] = ACTIONS(5064), [sym_const] = ACTIONS(5064), [sym_delegate] = ACTIONS(5064), [sym_delete] = ACTIONS(5064), [sym_do] = ACTIONS(5064), [sym_else] = ACTIONS(5064), [sym_finally] = ACTIONS(5064), [sym_function] = ACTIONS(5064), [sym_immutable] = ACTIONS(5064), [sym_import] = ACTIONS(5064), [sym_in] = ACTIONS(5064), [sym_inout] = ACTIONS(5064), [sym_is] = ACTIONS(5064), [sym_mixin] = ACTIONS(5064), [sym_new] = ACTIONS(5064), [sym_out] = ACTIONS(5064), [sym_ref] = ACTIONS(5064), [sym_shared] = ACTIONS(5064), [sym_throw] = ACTIONS(5064), [sym_typeid] = ACTIONS(5064), [sym_typeof] = ACTIONS(5064), [sym_traits] = ACTIONS(5064), [sym_vector] = ACTIONS(5064), [sym_void] = ACTIONS(5064), [anon_sym_BQUOTE] = ACTIONS(5066), [anon_sym_r_DQUOTE] = ACTIONS(5066), [anon_sym_x_DQUOTE] = ACTIONS(5066), [anon_sym_DQUOTE] = ACTIONS(5066), [anon_sym_i_BQUOTE] = ACTIONS(5066), [anon_sym_i_DQUOTE] = ACTIONS(5066), [anon_sym_iq_LBRACE] = ACTIONS(5066), [aux_sym_char_literal_token1] = ACTIONS(5066), [anon_sym_SQUOTE] = ACTIONS(5064), [anon_sym___DATE__] = ACTIONS(5064), [anon_sym___FILE__] = ACTIONS(5064), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5064), [anon_sym___FUNCTION__] = ACTIONS(5064), [anon_sym___LINE__] = ACTIONS(5064), [anon_sym___MODULE__] = ACTIONS(5064), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5064), [anon_sym___TIME__] = ACTIONS(5064), [anon_sym___TIMESTAMP__] = ACTIONS(5064), [anon_sym___VENDOR__] = ACTIONS(5064), [anon_sym___VERSION__] = ACTIONS(5064), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5066), [sym_float_literal] = ACTIONS(5066), [sym__string] = ACTIONS(5066), }, [2276] = { [sym_identifier] = ACTIONS(4732), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4734), [anon_sym_LBRACE] = ACTIONS(4734), [anon_sym_DOT] = ACTIONS(4734), [anon_sym_AMP] = ACTIONS(4734), [anon_sym_DASH] = ACTIONS(4732), [anon_sym_DASH_DASH] = ACTIONS(4734), [anon_sym_PLUS] = ACTIONS(4732), [anon_sym_PLUS_PLUS] = ACTIONS(4734), [anon_sym_BANG] = ACTIONS(4734), [anon_sym_LPAREN] = ACTIONS(4734), [anon_sym_RPAREN] = ACTIONS(4734), [anon_sym_LBRACK] = ACTIONS(4734), [anon_sym_SEMI] = ACTIONS(4734), [anon_sym_DOLLAR] = ACTIONS(4734), [anon_sym_STAR] = ACTIONS(4734), [anon_sym_TILDE] = ACTIONS(4734), [sym_bool] = ACTIONS(4732), [sym_byte] = ACTIONS(4732), [sym_ubyte] = ACTIONS(4732), [sym_char] = ACTIONS(4732), [sym_short] = ACTIONS(4732), [sym_ushort] = ACTIONS(4732), [sym_int] = ACTIONS(4732), [sym_uint] = ACTIONS(4732), [sym_long] = ACTIONS(4732), [sym_ulong] = ACTIONS(4732), [sym_cent] = ACTIONS(4732), [sym_ucent] = ACTIONS(4732), [sym_wchar] = ACTIONS(4732), [sym_dchar] = ACTIONS(4732), [sym_float] = ACTIONS(4732), [sym_double] = ACTIONS(4732), [sym_real] = ACTIONS(4732), [sym_ifloat] = ACTIONS(4732), [sym_idouble] = ACTIONS(4732), [sym_ireal] = ACTIONS(4732), [sym_cfloat] = ACTIONS(4732), [sym_cdouble] = ACTIONS(4732), [sym_creal] = ACTIONS(4732), [sym_size_t] = ACTIONS(4732), [sym_ptrdiff_t] = ACTIONS(4732), [sym_string] = ACTIONS(4732), [sym_cstring] = ACTIONS(4732), [sym_dstring] = ACTIONS(4732), [sym_wstring] = ACTIONS(4732), [sym_noreturn] = ACTIONS(4732), [sym_true] = ACTIONS(4732), [sym_false] = ACTIONS(4732), [sym_null] = ACTIONS(4732), [sym_super] = ACTIONS(4732), [sym_this] = ACTIONS(4732), [sym_assert] = ACTIONS(4732), [sym_auto] = ACTIONS(4732), [sym_cast] = ACTIONS(4732), [sym_catch] = ACTIONS(4732), [sym_const] = ACTIONS(4732), [sym_delegate] = ACTIONS(4732), [sym_delete] = ACTIONS(4732), [sym_do] = ACTIONS(4732), [sym_else] = ACTIONS(4732), [sym_finally] = ACTIONS(4732), [sym_function] = ACTIONS(4732), [sym_immutable] = ACTIONS(4732), [sym_import] = ACTIONS(4732), [sym_in] = ACTIONS(4732), [sym_inout] = ACTIONS(4732), [sym_is] = ACTIONS(4732), [sym_mixin] = ACTIONS(4732), [sym_new] = ACTIONS(4732), [sym_out] = ACTIONS(4732), [sym_ref] = ACTIONS(4732), [sym_shared] = ACTIONS(4732), [sym_throw] = ACTIONS(4732), [sym_typeid] = ACTIONS(4732), [sym_typeof] = ACTIONS(4732), [sym_traits] = ACTIONS(4732), [sym_vector] = ACTIONS(4732), [sym_void] = ACTIONS(4732), [anon_sym_BQUOTE] = ACTIONS(4734), [anon_sym_r_DQUOTE] = ACTIONS(4734), [anon_sym_x_DQUOTE] = ACTIONS(4734), [anon_sym_DQUOTE] = ACTIONS(4734), [anon_sym_i_BQUOTE] = ACTIONS(4734), [anon_sym_i_DQUOTE] = ACTIONS(4734), [anon_sym_iq_LBRACE] = ACTIONS(4734), [aux_sym_char_literal_token1] = ACTIONS(4734), [anon_sym_SQUOTE] = ACTIONS(4732), [anon_sym___DATE__] = ACTIONS(4732), [anon_sym___FILE__] = ACTIONS(4732), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4732), [anon_sym___FUNCTION__] = ACTIONS(4732), [anon_sym___LINE__] = ACTIONS(4732), [anon_sym___MODULE__] = ACTIONS(4732), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4732), [anon_sym___TIME__] = ACTIONS(4732), [anon_sym___TIMESTAMP__] = ACTIONS(4732), [anon_sym___VENDOR__] = ACTIONS(4732), [anon_sym___VERSION__] = ACTIONS(4732), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4734), [sym_float_literal] = ACTIONS(4734), [sym__string] = ACTIONS(4734), }, [2277] = { [sym_identifier] = ACTIONS(4736), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4738), [anon_sym_LBRACE] = ACTIONS(4738), [anon_sym_DOT] = ACTIONS(4738), [anon_sym_AMP] = ACTIONS(4738), [anon_sym_DASH] = ACTIONS(4736), [anon_sym_DASH_DASH] = ACTIONS(4738), [anon_sym_PLUS] = ACTIONS(4736), [anon_sym_PLUS_PLUS] = ACTIONS(4738), [anon_sym_BANG] = ACTIONS(4738), [anon_sym_LPAREN] = ACTIONS(4738), [anon_sym_RPAREN] = ACTIONS(4738), [anon_sym_LBRACK] = ACTIONS(4738), [anon_sym_SEMI] = ACTIONS(4738), [anon_sym_DOLLAR] = ACTIONS(4738), [anon_sym_STAR] = ACTIONS(4738), [anon_sym_TILDE] = ACTIONS(4738), [sym_bool] = ACTIONS(4736), [sym_byte] = ACTIONS(4736), [sym_ubyte] = ACTIONS(4736), [sym_char] = ACTIONS(4736), [sym_short] = ACTIONS(4736), [sym_ushort] = ACTIONS(4736), [sym_int] = ACTIONS(4736), [sym_uint] = ACTIONS(4736), [sym_long] = ACTIONS(4736), [sym_ulong] = ACTIONS(4736), [sym_cent] = ACTIONS(4736), [sym_ucent] = ACTIONS(4736), [sym_wchar] = ACTIONS(4736), [sym_dchar] = ACTIONS(4736), [sym_float] = ACTIONS(4736), [sym_double] = ACTIONS(4736), [sym_real] = ACTIONS(4736), [sym_ifloat] = ACTIONS(4736), [sym_idouble] = ACTIONS(4736), [sym_ireal] = ACTIONS(4736), [sym_cfloat] = ACTIONS(4736), [sym_cdouble] = ACTIONS(4736), [sym_creal] = ACTIONS(4736), [sym_size_t] = ACTIONS(4736), [sym_ptrdiff_t] = ACTIONS(4736), [sym_string] = ACTIONS(4736), [sym_cstring] = ACTIONS(4736), [sym_dstring] = ACTIONS(4736), [sym_wstring] = ACTIONS(4736), [sym_noreturn] = ACTIONS(4736), [sym_true] = ACTIONS(4736), [sym_false] = ACTIONS(4736), [sym_null] = ACTIONS(4736), [sym_super] = ACTIONS(4736), [sym_this] = ACTIONS(4736), [sym_assert] = ACTIONS(4736), [sym_auto] = ACTIONS(4736), [sym_cast] = ACTIONS(4736), [sym_catch] = ACTIONS(4736), [sym_const] = ACTIONS(4736), [sym_delegate] = ACTIONS(4736), [sym_delete] = ACTIONS(4736), [sym_do] = ACTIONS(4736), [sym_else] = ACTIONS(4736), [sym_finally] = ACTIONS(4736), [sym_function] = ACTIONS(4736), [sym_immutable] = ACTIONS(4736), [sym_import] = ACTIONS(4736), [sym_in] = ACTIONS(4736), [sym_inout] = ACTIONS(4736), [sym_is] = ACTIONS(4736), [sym_mixin] = ACTIONS(4736), [sym_new] = ACTIONS(4736), [sym_out] = ACTIONS(4736), [sym_ref] = ACTIONS(4736), [sym_shared] = ACTIONS(4736), [sym_throw] = ACTIONS(4736), [sym_typeid] = ACTIONS(4736), [sym_typeof] = ACTIONS(4736), [sym_traits] = ACTIONS(4736), [sym_vector] = ACTIONS(4736), [sym_void] = ACTIONS(4736), [anon_sym_BQUOTE] = ACTIONS(4738), [anon_sym_r_DQUOTE] = ACTIONS(4738), [anon_sym_x_DQUOTE] = ACTIONS(4738), [anon_sym_DQUOTE] = ACTIONS(4738), [anon_sym_i_BQUOTE] = ACTIONS(4738), [anon_sym_i_DQUOTE] = ACTIONS(4738), [anon_sym_iq_LBRACE] = ACTIONS(4738), [aux_sym_char_literal_token1] = ACTIONS(4738), [anon_sym_SQUOTE] = ACTIONS(4736), [anon_sym___DATE__] = ACTIONS(4736), [anon_sym___FILE__] = ACTIONS(4736), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4736), [anon_sym___FUNCTION__] = ACTIONS(4736), [anon_sym___LINE__] = ACTIONS(4736), [anon_sym___MODULE__] = ACTIONS(4736), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4736), [anon_sym___TIME__] = ACTIONS(4736), [anon_sym___TIMESTAMP__] = ACTIONS(4736), [anon_sym___VENDOR__] = ACTIONS(4736), [anon_sym___VERSION__] = ACTIONS(4736), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4738), [sym_float_literal] = ACTIONS(4738), [sym__string] = ACTIONS(4738), }, [2278] = { [sym_identifier] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2804), [anon_sym_LBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(2804), [anon_sym_AMP] = ACTIONS(2804), [anon_sym_DASH] = ACTIONS(2806), [anon_sym_DASH_DASH] = ACTIONS(2804), [anon_sym_PLUS] = ACTIONS(2806), [anon_sym_PLUS_PLUS] = ACTIONS(2804), [anon_sym_BANG] = ACTIONS(2804), [anon_sym_LPAREN] = ACTIONS(2804), [anon_sym_RPAREN] = ACTIONS(2804), [anon_sym_LBRACK] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2804), [anon_sym_DOLLAR] = ACTIONS(2804), [anon_sym_STAR] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2804), [sym_bool] = ACTIONS(2806), [sym_byte] = ACTIONS(2806), [sym_ubyte] = ACTIONS(2806), [sym_char] = ACTIONS(2806), [sym_short] = ACTIONS(2806), [sym_ushort] = ACTIONS(2806), [sym_int] = ACTIONS(2806), [sym_uint] = ACTIONS(2806), [sym_long] = ACTIONS(2806), [sym_ulong] = ACTIONS(2806), [sym_cent] = ACTIONS(2806), [sym_ucent] = ACTIONS(2806), [sym_wchar] = ACTIONS(2806), [sym_dchar] = ACTIONS(2806), [sym_float] = ACTIONS(2806), [sym_double] = ACTIONS(2806), [sym_real] = ACTIONS(2806), [sym_ifloat] = ACTIONS(2806), [sym_idouble] = ACTIONS(2806), [sym_ireal] = ACTIONS(2806), [sym_cfloat] = ACTIONS(2806), [sym_cdouble] = ACTIONS(2806), [sym_creal] = ACTIONS(2806), [sym_size_t] = ACTIONS(2806), [sym_ptrdiff_t] = ACTIONS(2806), [sym_string] = ACTIONS(2806), [sym_cstring] = ACTIONS(2806), [sym_dstring] = ACTIONS(2806), [sym_wstring] = ACTIONS(2806), [sym_noreturn] = ACTIONS(2806), [sym_true] = ACTIONS(2806), [sym_false] = ACTIONS(2806), [sym_null] = ACTIONS(2806), [sym_super] = ACTIONS(2806), [sym_this] = ACTIONS(2806), [sym_assert] = ACTIONS(2806), [sym_auto] = ACTIONS(2806), [sym_cast] = ACTIONS(2806), [sym_catch] = ACTIONS(2806), [sym_const] = ACTIONS(2806), [sym_delegate] = ACTIONS(2806), [sym_delete] = ACTIONS(2806), [sym_do] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_finally] = ACTIONS(2806), [sym_function] = ACTIONS(2806), [sym_immutable] = ACTIONS(2806), [sym_import] = ACTIONS(2806), [sym_in] = ACTIONS(2806), [sym_inout] = ACTIONS(2806), [sym_is] = ACTIONS(2806), [sym_mixin] = ACTIONS(2806), [sym_new] = ACTIONS(2806), [sym_out] = ACTIONS(2806), [sym_ref] = ACTIONS(2806), [sym_shared] = ACTIONS(2806), [sym_throw] = ACTIONS(2806), [sym_typeid] = ACTIONS(2806), [sym_typeof] = ACTIONS(2806), [sym_traits] = ACTIONS(2806), [sym_vector] = ACTIONS(2806), [sym_void] = ACTIONS(2806), [anon_sym_BQUOTE] = ACTIONS(2804), [anon_sym_r_DQUOTE] = ACTIONS(2804), [anon_sym_x_DQUOTE] = ACTIONS(2804), [anon_sym_DQUOTE] = ACTIONS(2804), [anon_sym_i_BQUOTE] = ACTIONS(2804), [anon_sym_i_DQUOTE] = ACTIONS(2804), [anon_sym_iq_LBRACE] = ACTIONS(2804), [aux_sym_char_literal_token1] = ACTIONS(2804), [anon_sym_SQUOTE] = ACTIONS(2806), [anon_sym___DATE__] = ACTIONS(2806), [anon_sym___FILE__] = ACTIONS(2806), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2806), [anon_sym___FUNCTION__] = ACTIONS(2806), [anon_sym___LINE__] = ACTIONS(2806), [anon_sym___MODULE__] = ACTIONS(2806), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2806), [anon_sym___TIME__] = ACTIONS(2806), [anon_sym___TIMESTAMP__] = ACTIONS(2806), [anon_sym___VENDOR__] = ACTIONS(2806), [anon_sym___VERSION__] = ACTIONS(2806), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2804), [sym_float_literal] = ACTIONS(2804), [sym__string] = ACTIONS(2804), }, [2279] = { [sym_identifier] = ACTIONS(4774), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4776), [anon_sym_LBRACE] = ACTIONS(4776), [anon_sym_DOT] = ACTIONS(4776), [anon_sym_AMP] = ACTIONS(4776), [anon_sym_DASH] = ACTIONS(4774), [anon_sym_DASH_DASH] = ACTIONS(4776), [anon_sym_PLUS] = ACTIONS(4774), [anon_sym_PLUS_PLUS] = ACTIONS(4776), [anon_sym_BANG] = ACTIONS(4776), [anon_sym_LPAREN] = ACTIONS(4776), [anon_sym_RPAREN] = ACTIONS(4776), [anon_sym_LBRACK] = ACTIONS(4776), [anon_sym_SEMI] = ACTIONS(4776), [anon_sym_DOLLAR] = ACTIONS(4776), [anon_sym_STAR] = ACTIONS(4776), [anon_sym_TILDE] = ACTIONS(4776), [sym_bool] = ACTIONS(4774), [sym_byte] = ACTIONS(4774), [sym_ubyte] = ACTIONS(4774), [sym_char] = ACTIONS(4774), [sym_short] = ACTIONS(4774), [sym_ushort] = ACTIONS(4774), [sym_int] = ACTIONS(4774), [sym_uint] = ACTIONS(4774), [sym_long] = ACTIONS(4774), [sym_ulong] = ACTIONS(4774), [sym_cent] = ACTIONS(4774), [sym_ucent] = ACTIONS(4774), [sym_wchar] = ACTIONS(4774), [sym_dchar] = ACTIONS(4774), [sym_float] = ACTIONS(4774), [sym_double] = ACTIONS(4774), [sym_real] = ACTIONS(4774), [sym_ifloat] = ACTIONS(4774), [sym_idouble] = ACTIONS(4774), [sym_ireal] = ACTIONS(4774), [sym_cfloat] = ACTIONS(4774), [sym_cdouble] = ACTIONS(4774), [sym_creal] = ACTIONS(4774), [sym_size_t] = ACTIONS(4774), [sym_ptrdiff_t] = ACTIONS(4774), [sym_string] = ACTIONS(4774), [sym_cstring] = ACTIONS(4774), [sym_dstring] = ACTIONS(4774), [sym_wstring] = ACTIONS(4774), [sym_noreturn] = ACTIONS(4774), [sym_true] = ACTIONS(4774), [sym_false] = ACTIONS(4774), [sym_null] = ACTIONS(4774), [sym_super] = ACTIONS(4774), [sym_this] = ACTIONS(4774), [sym_assert] = ACTIONS(4774), [sym_auto] = ACTIONS(4774), [sym_cast] = ACTIONS(4774), [sym_catch] = ACTIONS(4774), [sym_const] = ACTIONS(4774), [sym_delegate] = ACTIONS(4774), [sym_delete] = ACTIONS(4774), [sym_do] = ACTIONS(4774), [sym_else] = ACTIONS(4774), [sym_finally] = ACTIONS(4774), [sym_function] = ACTIONS(4774), [sym_immutable] = ACTIONS(4774), [sym_import] = ACTIONS(4774), [sym_in] = ACTIONS(4774), [sym_inout] = ACTIONS(4774), [sym_is] = ACTIONS(4774), [sym_mixin] = ACTIONS(4774), [sym_new] = ACTIONS(4774), [sym_out] = ACTIONS(4774), [sym_ref] = ACTIONS(4774), [sym_shared] = ACTIONS(4774), [sym_throw] = ACTIONS(4774), [sym_typeid] = ACTIONS(4774), [sym_typeof] = ACTIONS(4774), [sym_traits] = ACTIONS(4774), [sym_vector] = ACTIONS(4774), [sym_void] = ACTIONS(4774), [anon_sym_BQUOTE] = ACTIONS(4776), [anon_sym_r_DQUOTE] = ACTIONS(4776), [anon_sym_x_DQUOTE] = ACTIONS(4776), [anon_sym_DQUOTE] = ACTIONS(4776), [anon_sym_i_BQUOTE] = ACTIONS(4776), [anon_sym_i_DQUOTE] = ACTIONS(4776), [anon_sym_iq_LBRACE] = ACTIONS(4776), [aux_sym_char_literal_token1] = ACTIONS(4776), [anon_sym_SQUOTE] = ACTIONS(4774), [anon_sym___DATE__] = ACTIONS(4774), [anon_sym___FILE__] = ACTIONS(4774), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4774), [anon_sym___FUNCTION__] = ACTIONS(4774), [anon_sym___LINE__] = ACTIONS(4774), [anon_sym___MODULE__] = ACTIONS(4774), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4774), [anon_sym___TIME__] = ACTIONS(4774), [anon_sym___TIMESTAMP__] = ACTIONS(4774), [anon_sym___VENDOR__] = ACTIONS(4774), [anon_sym___VERSION__] = ACTIONS(4774), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4776), [sym_float_literal] = ACTIONS(4776), [sym__string] = ACTIONS(4776), }, [2280] = { [sym_identifier] = ACTIONS(4788), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4790), [anon_sym_LBRACE] = ACTIONS(4790), [anon_sym_DOT] = ACTIONS(4790), [anon_sym_AMP] = ACTIONS(4790), [anon_sym_DASH] = ACTIONS(4788), [anon_sym_DASH_DASH] = ACTIONS(4790), [anon_sym_PLUS] = ACTIONS(4788), [anon_sym_PLUS_PLUS] = ACTIONS(4790), [anon_sym_BANG] = ACTIONS(4790), [anon_sym_LPAREN] = ACTIONS(4790), [anon_sym_RPAREN] = ACTIONS(4790), [anon_sym_LBRACK] = ACTIONS(4790), [anon_sym_SEMI] = ACTIONS(4790), [anon_sym_DOLLAR] = ACTIONS(4790), [anon_sym_STAR] = ACTIONS(4790), [anon_sym_TILDE] = ACTIONS(4790), [sym_bool] = ACTIONS(4788), [sym_byte] = ACTIONS(4788), [sym_ubyte] = ACTIONS(4788), [sym_char] = ACTIONS(4788), [sym_short] = ACTIONS(4788), [sym_ushort] = ACTIONS(4788), [sym_int] = ACTIONS(4788), [sym_uint] = ACTIONS(4788), [sym_long] = ACTIONS(4788), [sym_ulong] = ACTIONS(4788), [sym_cent] = ACTIONS(4788), [sym_ucent] = ACTIONS(4788), [sym_wchar] = ACTIONS(4788), [sym_dchar] = ACTIONS(4788), [sym_float] = ACTIONS(4788), [sym_double] = ACTIONS(4788), [sym_real] = ACTIONS(4788), [sym_ifloat] = ACTIONS(4788), [sym_idouble] = ACTIONS(4788), [sym_ireal] = ACTIONS(4788), [sym_cfloat] = ACTIONS(4788), [sym_cdouble] = ACTIONS(4788), [sym_creal] = ACTIONS(4788), [sym_size_t] = ACTIONS(4788), [sym_ptrdiff_t] = ACTIONS(4788), [sym_string] = ACTIONS(4788), [sym_cstring] = ACTIONS(4788), [sym_dstring] = ACTIONS(4788), [sym_wstring] = ACTIONS(4788), [sym_noreturn] = ACTIONS(4788), [sym_true] = ACTIONS(4788), [sym_false] = ACTIONS(4788), [sym_null] = ACTIONS(4788), [sym_super] = ACTIONS(4788), [sym_this] = ACTIONS(4788), [sym_assert] = ACTIONS(4788), [sym_auto] = ACTIONS(4788), [sym_cast] = ACTIONS(4788), [sym_catch] = ACTIONS(4788), [sym_const] = ACTIONS(4788), [sym_delegate] = ACTIONS(4788), [sym_delete] = ACTIONS(4788), [sym_do] = ACTIONS(4788), [sym_else] = ACTIONS(4788), [sym_finally] = ACTIONS(4788), [sym_function] = ACTIONS(4788), [sym_immutable] = ACTIONS(4788), [sym_import] = ACTIONS(4788), [sym_in] = ACTIONS(4788), [sym_inout] = ACTIONS(4788), [sym_is] = ACTIONS(4788), [sym_mixin] = ACTIONS(4788), [sym_new] = ACTIONS(4788), [sym_out] = ACTIONS(4788), [sym_ref] = ACTIONS(4788), [sym_shared] = ACTIONS(4788), [sym_throw] = ACTIONS(4788), [sym_typeid] = ACTIONS(4788), [sym_typeof] = ACTIONS(4788), [sym_traits] = ACTIONS(4788), [sym_vector] = ACTIONS(4788), [sym_void] = ACTIONS(4788), [anon_sym_BQUOTE] = ACTIONS(4790), [anon_sym_r_DQUOTE] = ACTIONS(4790), [anon_sym_x_DQUOTE] = ACTIONS(4790), [anon_sym_DQUOTE] = ACTIONS(4790), [anon_sym_i_BQUOTE] = ACTIONS(4790), [anon_sym_i_DQUOTE] = ACTIONS(4790), [anon_sym_iq_LBRACE] = ACTIONS(4790), [aux_sym_char_literal_token1] = ACTIONS(4790), [anon_sym_SQUOTE] = ACTIONS(4788), [anon_sym___DATE__] = ACTIONS(4788), [anon_sym___FILE__] = ACTIONS(4788), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4788), [anon_sym___FUNCTION__] = ACTIONS(4788), [anon_sym___LINE__] = ACTIONS(4788), [anon_sym___MODULE__] = ACTIONS(4788), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4788), [anon_sym___TIME__] = ACTIONS(4788), [anon_sym___TIMESTAMP__] = ACTIONS(4788), [anon_sym___VENDOR__] = ACTIONS(4788), [anon_sym___VERSION__] = ACTIONS(4788), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4790), [sym_float_literal] = ACTIONS(4790), [sym__string] = ACTIONS(4790), }, [2281] = { [sym_identifier] = ACTIONS(4690), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4692), [anon_sym_LBRACE] = ACTIONS(4692), [anon_sym_DOT] = ACTIONS(4692), [anon_sym_AMP] = ACTIONS(4692), [anon_sym_DASH] = ACTIONS(4690), [anon_sym_DASH_DASH] = ACTIONS(4692), [anon_sym_PLUS] = ACTIONS(4690), [anon_sym_PLUS_PLUS] = ACTIONS(4692), [anon_sym_BANG] = ACTIONS(4692), [anon_sym_LPAREN] = ACTIONS(4692), [anon_sym_RPAREN] = ACTIONS(4692), [anon_sym_LBRACK] = ACTIONS(4692), [anon_sym_SEMI] = ACTIONS(4692), [anon_sym_DOLLAR] = ACTIONS(4692), [anon_sym_STAR] = ACTIONS(4692), [anon_sym_TILDE] = ACTIONS(4692), [sym_bool] = ACTIONS(4690), [sym_byte] = ACTIONS(4690), [sym_ubyte] = ACTIONS(4690), [sym_char] = ACTIONS(4690), [sym_short] = ACTIONS(4690), [sym_ushort] = ACTIONS(4690), [sym_int] = ACTIONS(4690), [sym_uint] = ACTIONS(4690), [sym_long] = ACTIONS(4690), [sym_ulong] = ACTIONS(4690), [sym_cent] = ACTIONS(4690), [sym_ucent] = ACTIONS(4690), [sym_wchar] = ACTIONS(4690), [sym_dchar] = ACTIONS(4690), [sym_float] = ACTIONS(4690), [sym_double] = ACTIONS(4690), [sym_real] = ACTIONS(4690), [sym_ifloat] = ACTIONS(4690), [sym_idouble] = ACTIONS(4690), [sym_ireal] = ACTIONS(4690), [sym_cfloat] = ACTIONS(4690), [sym_cdouble] = ACTIONS(4690), [sym_creal] = ACTIONS(4690), [sym_size_t] = ACTIONS(4690), [sym_ptrdiff_t] = ACTIONS(4690), [sym_string] = ACTIONS(4690), [sym_cstring] = ACTIONS(4690), [sym_dstring] = ACTIONS(4690), [sym_wstring] = ACTIONS(4690), [sym_noreturn] = ACTIONS(4690), [sym_true] = ACTIONS(4690), [sym_false] = ACTIONS(4690), [sym_null] = ACTIONS(4690), [sym_super] = ACTIONS(4690), [sym_this] = ACTIONS(4690), [sym_assert] = ACTIONS(4690), [sym_auto] = ACTIONS(4690), [sym_cast] = ACTIONS(4690), [sym_catch] = ACTIONS(4690), [sym_const] = ACTIONS(4690), [sym_delegate] = ACTIONS(4690), [sym_delete] = ACTIONS(4690), [sym_do] = ACTIONS(4690), [sym_else] = ACTIONS(4690), [sym_finally] = ACTIONS(4690), [sym_function] = ACTIONS(4690), [sym_immutable] = ACTIONS(4690), [sym_import] = ACTIONS(4690), [sym_in] = ACTIONS(4690), [sym_inout] = ACTIONS(4690), [sym_is] = ACTIONS(4690), [sym_mixin] = ACTIONS(4690), [sym_new] = ACTIONS(4690), [sym_out] = ACTIONS(4690), [sym_ref] = ACTIONS(4690), [sym_shared] = ACTIONS(4690), [sym_throw] = ACTIONS(4690), [sym_typeid] = ACTIONS(4690), [sym_typeof] = ACTIONS(4690), [sym_traits] = ACTIONS(4690), [sym_vector] = ACTIONS(4690), [sym_void] = ACTIONS(4690), [anon_sym_BQUOTE] = ACTIONS(4692), [anon_sym_r_DQUOTE] = ACTIONS(4692), [anon_sym_x_DQUOTE] = ACTIONS(4692), [anon_sym_DQUOTE] = ACTIONS(4692), [anon_sym_i_BQUOTE] = ACTIONS(4692), [anon_sym_i_DQUOTE] = ACTIONS(4692), [anon_sym_iq_LBRACE] = ACTIONS(4692), [aux_sym_char_literal_token1] = ACTIONS(4692), [anon_sym_SQUOTE] = ACTIONS(4690), [anon_sym___DATE__] = ACTIONS(4690), [anon_sym___FILE__] = ACTIONS(4690), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4690), [anon_sym___FUNCTION__] = ACTIONS(4690), [anon_sym___LINE__] = ACTIONS(4690), [anon_sym___MODULE__] = ACTIONS(4690), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4690), [anon_sym___TIME__] = ACTIONS(4690), [anon_sym___TIMESTAMP__] = ACTIONS(4690), [anon_sym___VENDOR__] = ACTIONS(4690), [anon_sym___VERSION__] = ACTIONS(4690), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4692), [sym_float_literal] = ACTIONS(4692), [sym__string] = ACTIONS(4692), }, [2282] = { [sym_identifier] = ACTIONS(4658), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4660), [anon_sym_LBRACE] = ACTIONS(4660), [anon_sym_DOT] = ACTIONS(4660), [anon_sym_AMP] = ACTIONS(4660), [anon_sym_DASH] = ACTIONS(4658), [anon_sym_DASH_DASH] = ACTIONS(4660), [anon_sym_PLUS] = ACTIONS(4658), [anon_sym_PLUS_PLUS] = ACTIONS(4660), [anon_sym_BANG] = ACTIONS(4660), [anon_sym_LPAREN] = ACTIONS(4660), [anon_sym_RPAREN] = ACTIONS(4660), [anon_sym_LBRACK] = ACTIONS(4660), [anon_sym_SEMI] = ACTIONS(4660), [anon_sym_DOLLAR] = ACTIONS(4660), [anon_sym_STAR] = ACTIONS(4660), [anon_sym_TILDE] = ACTIONS(4660), [sym_bool] = ACTIONS(4658), [sym_byte] = ACTIONS(4658), [sym_ubyte] = ACTIONS(4658), [sym_char] = ACTIONS(4658), [sym_short] = ACTIONS(4658), [sym_ushort] = ACTIONS(4658), [sym_int] = ACTIONS(4658), [sym_uint] = ACTIONS(4658), [sym_long] = ACTIONS(4658), [sym_ulong] = ACTIONS(4658), [sym_cent] = ACTIONS(4658), [sym_ucent] = ACTIONS(4658), [sym_wchar] = ACTIONS(4658), [sym_dchar] = ACTIONS(4658), [sym_float] = ACTIONS(4658), [sym_double] = ACTIONS(4658), [sym_real] = ACTIONS(4658), [sym_ifloat] = ACTIONS(4658), [sym_idouble] = ACTIONS(4658), [sym_ireal] = ACTIONS(4658), [sym_cfloat] = ACTIONS(4658), [sym_cdouble] = ACTIONS(4658), [sym_creal] = ACTIONS(4658), [sym_size_t] = ACTIONS(4658), [sym_ptrdiff_t] = ACTIONS(4658), [sym_string] = ACTIONS(4658), [sym_cstring] = ACTIONS(4658), [sym_dstring] = ACTIONS(4658), [sym_wstring] = ACTIONS(4658), [sym_noreturn] = ACTIONS(4658), [sym_true] = ACTIONS(4658), [sym_false] = ACTIONS(4658), [sym_null] = ACTIONS(4658), [sym_super] = ACTIONS(4658), [sym_this] = ACTIONS(4658), [sym_assert] = ACTIONS(4658), [sym_auto] = ACTIONS(4658), [sym_cast] = ACTIONS(4658), [sym_catch] = ACTIONS(4658), [sym_const] = ACTIONS(4658), [sym_delegate] = ACTIONS(4658), [sym_delete] = ACTIONS(4658), [sym_do] = ACTIONS(4658), [sym_else] = ACTIONS(4658), [sym_finally] = ACTIONS(4658), [sym_function] = ACTIONS(4658), [sym_immutable] = ACTIONS(4658), [sym_import] = ACTIONS(4658), [sym_in] = ACTIONS(4658), [sym_inout] = ACTIONS(4658), [sym_is] = ACTIONS(4658), [sym_mixin] = ACTIONS(4658), [sym_new] = ACTIONS(4658), [sym_out] = ACTIONS(4658), [sym_ref] = ACTIONS(4658), [sym_shared] = ACTIONS(4658), [sym_throw] = ACTIONS(4658), [sym_typeid] = ACTIONS(4658), [sym_typeof] = ACTIONS(4658), [sym_traits] = ACTIONS(4658), [sym_vector] = ACTIONS(4658), [sym_void] = ACTIONS(4658), [anon_sym_BQUOTE] = ACTIONS(4660), [anon_sym_r_DQUOTE] = ACTIONS(4660), [anon_sym_x_DQUOTE] = ACTIONS(4660), [anon_sym_DQUOTE] = ACTIONS(4660), [anon_sym_i_BQUOTE] = ACTIONS(4660), [anon_sym_i_DQUOTE] = ACTIONS(4660), [anon_sym_iq_LBRACE] = ACTIONS(4660), [aux_sym_char_literal_token1] = ACTIONS(4660), [anon_sym_SQUOTE] = ACTIONS(4658), [anon_sym___DATE__] = ACTIONS(4658), [anon_sym___FILE__] = ACTIONS(4658), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4658), [anon_sym___FUNCTION__] = ACTIONS(4658), [anon_sym___LINE__] = ACTIONS(4658), [anon_sym___MODULE__] = ACTIONS(4658), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4658), [anon_sym___TIME__] = ACTIONS(4658), [anon_sym___TIMESTAMP__] = ACTIONS(4658), [anon_sym___VENDOR__] = ACTIONS(4658), [anon_sym___VERSION__] = ACTIONS(4658), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4660), [sym_float_literal] = ACTIONS(4660), [sym__string] = ACTIONS(4660), }, [2283] = { [sym_identifier] = ACTIONS(4594), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4596), [anon_sym_LBRACE] = ACTIONS(4596), [anon_sym_DOT] = ACTIONS(4596), [anon_sym_AMP] = ACTIONS(4596), [anon_sym_DASH] = ACTIONS(4594), [anon_sym_DASH_DASH] = ACTIONS(4596), [anon_sym_PLUS] = ACTIONS(4594), [anon_sym_PLUS_PLUS] = ACTIONS(4596), [anon_sym_BANG] = ACTIONS(4596), [anon_sym_LPAREN] = ACTIONS(4596), [anon_sym_RPAREN] = ACTIONS(4596), [anon_sym_LBRACK] = ACTIONS(4596), [anon_sym_SEMI] = ACTIONS(4596), [anon_sym_DOLLAR] = ACTIONS(4596), [anon_sym_STAR] = ACTIONS(4596), [anon_sym_TILDE] = ACTIONS(4596), [sym_bool] = ACTIONS(4594), [sym_byte] = ACTIONS(4594), [sym_ubyte] = ACTIONS(4594), [sym_char] = ACTIONS(4594), [sym_short] = ACTIONS(4594), [sym_ushort] = ACTIONS(4594), [sym_int] = ACTIONS(4594), [sym_uint] = ACTIONS(4594), [sym_long] = ACTIONS(4594), [sym_ulong] = ACTIONS(4594), [sym_cent] = ACTIONS(4594), [sym_ucent] = ACTIONS(4594), [sym_wchar] = ACTIONS(4594), [sym_dchar] = ACTIONS(4594), [sym_float] = ACTIONS(4594), [sym_double] = ACTIONS(4594), [sym_real] = ACTIONS(4594), [sym_ifloat] = ACTIONS(4594), [sym_idouble] = ACTIONS(4594), [sym_ireal] = ACTIONS(4594), [sym_cfloat] = ACTIONS(4594), [sym_cdouble] = ACTIONS(4594), [sym_creal] = ACTIONS(4594), [sym_size_t] = ACTIONS(4594), [sym_ptrdiff_t] = ACTIONS(4594), [sym_string] = ACTIONS(4594), [sym_cstring] = ACTIONS(4594), [sym_dstring] = ACTIONS(4594), [sym_wstring] = ACTIONS(4594), [sym_noreturn] = ACTIONS(4594), [sym_true] = ACTIONS(4594), [sym_false] = ACTIONS(4594), [sym_null] = ACTIONS(4594), [sym_super] = ACTIONS(4594), [sym_this] = ACTIONS(4594), [sym_assert] = ACTIONS(4594), [sym_auto] = ACTIONS(4594), [sym_cast] = ACTIONS(4594), [sym_catch] = ACTIONS(4594), [sym_const] = ACTIONS(4594), [sym_delegate] = ACTIONS(4594), [sym_delete] = ACTIONS(4594), [sym_do] = ACTIONS(4594), [sym_else] = ACTIONS(4594), [sym_finally] = ACTIONS(4594), [sym_function] = ACTIONS(4594), [sym_immutable] = ACTIONS(4594), [sym_import] = ACTIONS(4594), [sym_in] = ACTIONS(4594), [sym_inout] = ACTIONS(4594), [sym_is] = ACTIONS(4594), [sym_mixin] = ACTIONS(4594), [sym_new] = ACTIONS(4594), [sym_out] = ACTIONS(4594), [sym_ref] = ACTIONS(4594), [sym_shared] = ACTIONS(4594), [sym_throw] = ACTIONS(4594), [sym_typeid] = ACTIONS(4594), [sym_typeof] = ACTIONS(4594), [sym_traits] = ACTIONS(4594), [sym_vector] = ACTIONS(4594), [sym_void] = ACTIONS(4594), [anon_sym_BQUOTE] = ACTIONS(4596), [anon_sym_r_DQUOTE] = ACTIONS(4596), [anon_sym_x_DQUOTE] = ACTIONS(4596), [anon_sym_DQUOTE] = ACTIONS(4596), [anon_sym_i_BQUOTE] = ACTIONS(4596), [anon_sym_i_DQUOTE] = ACTIONS(4596), [anon_sym_iq_LBRACE] = ACTIONS(4596), [aux_sym_char_literal_token1] = ACTIONS(4596), [anon_sym_SQUOTE] = ACTIONS(4594), [anon_sym___DATE__] = ACTIONS(4594), [anon_sym___FILE__] = ACTIONS(4594), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4594), [anon_sym___FUNCTION__] = ACTIONS(4594), [anon_sym___LINE__] = ACTIONS(4594), [anon_sym___MODULE__] = ACTIONS(4594), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4594), [anon_sym___TIME__] = ACTIONS(4594), [anon_sym___TIMESTAMP__] = ACTIONS(4594), [anon_sym___VENDOR__] = ACTIONS(4594), [anon_sym___VERSION__] = ACTIONS(4594), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4596), [sym_float_literal] = ACTIONS(4596), [sym__string] = ACTIONS(4596), }, [2284] = { [sym_identifier] = ACTIONS(4832), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4834), [anon_sym_LBRACE] = ACTIONS(4834), [anon_sym_DOT] = ACTIONS(4834), [anon_sym_AMP] = ACTIONS(4834), [anon_sym_DASH] = ACTIONS(4832), [anon_sym_DASH_DASH] = ACTIONS(4834), [anon_sym_PLUS] = ACTIONS(4832), [anon_sym_PLUS_PLUS] = ACTIONS(4834), [anon_sym_BANG] = ACTIONS(4834), [anon_sym_LPAREN] = ACTIONS(4834), [anon_sym_RPAREN] = ACTIONS(4834), [anon_sym_LBRACK] = ACTIONS(4834), [anon_sym_SEMI] = ACTIONS(4834), [anon_sym_DOLLAR] = ACTIONS(4834), [anon_sym_STAR] = ACTIONS(4834), [anon_sym_TILDE] = ACTIONS(4834), [sym_bool] = ACTIONS(4832), [sym_byte] = ACTIONS(4832), [sym_ubyte] = ACTIONS(4832), [sym_char] = ACTIONS(4832), [sym_short] = ACTIONS(4832), [sym_ushort] = ACTIONS(4832), [sym_int] = ACTIONS(4832), [sym_uint] = ACTIONS(4832), [sym_long] = ACTIONS(4832), [sym_ulong] = ACTIONS(4832), [sym_cent] = ACTIONS(4832), [sym_ucent] = ACTIONS(4832), [sym_wchar] = ACTIONS(4832), [sym_dchar] = ACTIONS(4832), [sym_float] = ACTIONS(4832), [sym_double] = ACTIONS(4832), [sym_real] = ACTIONS(4832), [sym_ifloat] = ACTIONS(4832), [sym_idouble] = ACTIONS(4832), [sym_ireal] = ACTIONS(4832), [sym_cfloat] = ACTIONS(4832), [sym_cdouble] = ACTIONS(4832), [sym_creal] = ACTIONS(4832), [sym_size_t] = ACTIONS(4832), [sym_ptrdiff_t] = ACTIONS(4832), [sym_string] = ACTIONS(4832), [sym_cstring] = ACTIONS(4832), [sym_dstring] = ACTIONS(4832), [sym_wstring] = ACTIONS(4832), [sym_noreturn] = ACTIONS(4832), [sym_true] = ACTIONS(4832), [sym_false] = ACTIONS(4832), [sym_null] = ACTIONS(4832), [sym_super] = ACTIONS(4832), [sym_this] = ACTIONS(4832), [sym_assert] = ACTIONS(4832), [sym_auto] = ACTIONS(4832), [sym_cast] = ACTIONS(4832), [sym_catch] = ACTIONS(4832), [sym_const] = ACTIONS(4832), [sym_delegate] = ACTIONS(4832), [sym_delete] = ACTIONS(4832), [sym_do] = ACTIONS(4832), [sym_else] = ACTIONS(4832), [sym_finally] = ACTIONS(4832), [sym_function] = ACTIONS(4832), [sym_immutable] = ACTIONS(4832), [sym_import] = ACTIONS(4832), [sym_in] = ACTIONS(4832), [sym_inout] = ACTIONS(4832), [sym_is] = ACTIONS(4832), [sym_mixin] = ACTIONS(4832), [sym_new] = ACTIONS(4832), [sym_out] = ACTIONS(4832), [sym_ref] = ACTIONS(4832), [sym_shared] = ACTIONS(4832), [sym_throw] = ACTIONS(4832), [sym_typeid] = ACTIONS(4832), [sym_typeof] = ACTIONS(4832), [sym_traits] = ACTIONS(4832), [sym_vector] = ACTIONS(4832), [sym_void] = ACTIONS(4832), [anon_sym_BQUOTE] = ACTIONS(4834), [anon_sym_r_DQUOTE] = ACTIONS(4834), [anon_sym_x_DQUOTE] = ACTIONS(4834), [anon_sym_DQUOTE] = ACTIONS(4834), [anon_sym_i_BQUOTE] = ACTIONS(4834), [anon_sym_i_DQUOTE] = ACTIONS(4834), [anon_sym_iq_LBRACE] = ACTIONS(4834), [aux_sym_char_literal_token1] = ACTIONS(4834), [anon_sym_SQUOTE] = ACTIONS(4832), [anon_sym___DATE__] = ACTIONS(4832), [anon_sym___FILE__] = ACTIONS(4832), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4832), [anon_sym___FUNCTION__] = ACTIONS(4832), [anon_sym___LINE__] = ACTIONS(4832), [anon_sym___MODULE__] = ACTIONS(4832), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4832), [anon_sym___TIME__] = ACTIONS(4832), [anon_sym___TIMESTAMP__] = ACTIONS(4832), [anon_sym___VENDOR__] = ACTIONS(4832), [anon_sym___VERSION__] = ACTIONS(4832), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4834), [sym_float_literal] = ACTIONS(4834), [sym__string] = ACTIONS(4834), }, [2285] = { [sym_identifier] = ACTIONS(4836), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4838), [anon_sym_LBRACE] = ACTIONS(4838), [anon_sym_DOT] = ACTIONS(4838), [anon_sym_AMP] = ACTIONS(4838), [anon_sym_DASH] = ACTIONS(4836), [anon_sym_DASH_DASH] = ACTIONS(4838), [anon_sym_PLUS] = ACTIONS(4836), [anon_sym_PLUS_PLUS] = ACTIONS(4838), [anon_sym_BANG] = ACTIONS(4838), [anon_sym_LPAREN] = ACTIONS(4838), [anon_sym_RPAREN] = ACTIONS(4838), [anon_sym_LBRACK] = ACTIONS(4838), [anon_sym_SEMI] = ACTIONS(4838), [anon_sym_DOLLAR] = ACTIONS(4838), [anon_sym_STAR] = ACTIONS(4838), [anon_sym_TILDE] = ACTIONS(4838), [sym_bool] = ACTIONS(4836), [sym_byte] = ACTIONS(4836), [sym_ubyte] = ACTIONS(4836), [sym_char] = ACTIONS(4836), [sym_short] = ACTIONS(4836), [sym_ushort] = ACTIONS(4836), [sym_int] = ACTIONS(4836), [sym_uint] = ACTIONS(4836), [sym_long] = ACTIONS(4836), [sym_ulong] = ACTIONS(4836), [sym_cent] = ACTIONS(4836), [sym_ucent] = ACTIONS(4836), [sym_wchar] = ACTIONS(4836), [sym_dchar] = ACTIONS(4836), [sym_float] = ACTIONS(4836), [sym_double] = ACTIONS(4836), [sym_real] = ACTIONS(4836), [sym_ifloat] = ACTIONS(4836), [sym_idouble] = ACTIONS(4836), [sym_ireal] = ACTIONS(4836), [sym_cfloat] = ACTIONS(4836), [sym_cdouble] = ACTIONS(4836), [sym_creal] = ACTIONS(4836), [sym_size_t] = ACTIONS(4836), [sym_ptrdiff_t] = ACTIONS(4836), [sym_string] = ACTIONS(4836), [sym_cstring] = ACTIONS(4836), [sym_dstring] = ACTIONS(4836), [sym_wstring] = ACTIONS(4836), [sym_noreturn] = ACTIONS(4836), [sym_true] = ACTIONS(4836), [sym_false] = ACTIONS(4836), [sym_null] = ACTIONS(4836), [sym_super] = ACTIONS(4836), [sym_this] = ACTIONS(4836), [sym_assert] = ACTIONS(4836), [sym_auto] = ACTIONS(4836), [sym_cast] = ACTIONS(4836), [sym_catch] = ACTIONS(4836), [sym_const] = ACTIONS(4836), [sym_delegate] = ACTIONS(4836), [sym_delete] = ACTIONS(4836), [sym_do] = ACTIONS(4836), [sym_else] = ACTIONS(4836), [sym_finally] = ACTIONS(4836), [sym_function] = ACTIONS(4836), [sym_immutable] = ACTIONS(4836), [sym_import] = ACTIONS(4836), [sym_in] = ACTIONS(4836), [sym_inout] = ACTIONS(4836), [sym_is] = ACTIONS(4836), [sym_mixin] = ACTIONS(4836), [sym_new] = ACTIONS(4836), [sym_out] = ACTIONS(4836), [sym_ref] = ACTIONS(4836), [sym_shared] = ACTIONS(4836), [sym_throw] = ACTIONS(4836), [sym_typeid] = ACTIONS(4836), [sym_typeof] = ACTIONS(4836), [sym_traits] = ACTIONS(4836), [sym_vector] = ACTIONS(4836), [sym_void] = ACTIONS(4836), [anon_sym_BQUOTE] = ACTIONS(4838), [anon_sym_r_DQUOTE] = ACTIONS(4838), [anon_sym_x_DQUOTE] = ACTIONS(4838), [anon_sym_DQUOTE] = ACTIONS(4838), [anon_sym_i_BQUOTE] = ACTIONS(4838), [anon_sym_i_DQUOTE] = ACTIONS(4838), [anon_sym_iq_LBRACE] = ACTIONS(4838), [aux_sym_char_literal_token1] = ACTIONS(4838), [anon_sym_SQUOTE] = ACTIONS(4836), [anon_sym___DATE__] = ACTIONS(4836), [anon_sym___FILE__] = ACTIONS(4836), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4836), [anon_sym___FUNCTION__] = ACTIONS(4836), [anon_sym___LINE__] = ACTIONS(4836), [anon_sym___MODULE__] = ACTIONS(4836), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4836), [anon_sym___TIME__] = ACTIONS(4836), [anon_sym___TIMESTAMP__] = ACTIONS(4836), [anon_sym___VENDOR__] = ACTIONS(4836), [anon_sym___VERSION__] = ACTIONS(4836), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4838), [sym_float_literal] = ACTIONS(4838), [sym__string] = ACTIONS(4838), }, [2286] = { [sym_identifier] = ACTIONS(4844), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4846), [anon_sym_LBRACE] = ACTIONS(4846), [anon_sym_DOT] = ACTIONS(4846), [anon_sym_AMP] = ACTIONS(4846), [anon_sym_DASH] = ACTIONS(4844), [anon_sym_DASH_DASH] = ACTIONS(4846), [anon_sym_PLUS] = ACTIONS(4844), [anon_sym_PLUS_PLUS] = ACTIONS(4846), [anon_sym_BANG] = ACTIONS(4846), [anon_sym_LPAREN] = ACTIONS(4846), [anon_sym_RPAREN] = ACTIONS(4846), [anon_sym_LBRACK] = ACTIONS(4846), [anon_sym_SEMI] = ACTIONS(4846), [anon_sym_DOLLAR] = ACTIONS(4846), [anon_sym_STAR] = ACTIONS(4846), [anon_sym_TILDE] = ACTIONS(4846), [sym_bool] = ACTIONS(4844), [sym_byte] = ACTIONS(4844), [sym_ubyte] = ACTIONS(4844), [sym_char] = ACTIONS(4844), [sym_short] = ACTIONS(4844), [sym_ushort] = ACTIONS(4844), [sym_int] = ACTIONS(4844), [sym_uint] = ACTIONS(4844), [sym_long] = ACTIONS(4844), [sym_ulong] = ACTIONS(4844), [sym_cent] = ACTIONS(4844), [sym_ucent] = ACTIONS(4844), [sym_wchar] = ACTIONS(4844), [sym_dchar] = ACTIONS(4844), [sym_float] = ACTIONS(4844), [sym_double] = ACTIONS(4844), [sym_real] = ACTIONS(4844), [sym_ifloat] = ACTIONS(4844), [sym_idouble] = ACTIONS(4844), [sym_ireal] = ACTIONS(4844), [sym_cfloat] = ACTIONS(4844), [sym_cdouble] = ACTIONS(4844), [sym_creal] = ACTIONS(4844), [sym_size_t] = ACTIONS(4844), [sym_ptrdiff_t] = ACTIONS(4844), [sym_string] = ACTIONS(4844), [sym_cstring] = ACTIONS(4844), [sym_dstring] = ACTIONS(4844), [sym_wstring] = ACTIONS(4844), [sym_noreturn] = ACTIONS(4844), [sym_true] = ACTIONS(4844), [sym_false] = ACTIONS(4844), [sym_null] = ACTIONS(4844), [sym_super] = ACTIONS(4844), [sym_this] = ACTIONS(4844), [sym_assert] = ACTIONS(4844), [sym_auto] = ACTIONS(4844), [sym_cast] = ACTIONS(4844), [sym_catch] = ACTIONS(4844), [sym_const] = ACTIONS(4844), [sym_delegate] = ACTIONS(4844), [sym_delete] = ACTIONS(4844), [sym_do] = ACTIONS(4844), [sym_else] = ACTIONS(4844), [sym_finally] = ACTIONS(4844), [sym_function] = ACTIONS(4844), [sym_immutable] = ACTIONS(4844), [sym_import] = ACTIONS(4844), [sym_in] = ACTIONS(4844), [sym_inout] = ACTIONS(4844), [sym_is] = ACTIONS(4844), [sym_mixin] = ACTIONS(4844), [sym_new] = ACTIONS(4844), [sym_out] = ACTIONS(4844), [sym_ref] = ACTIONS(4844), [sym_shared] = ACTIONS(4844), [sym_throw] = ACTIONS(4844), [sym_typeid] = ACTIONS(4844), [sym_typeof] = ACTIONS(4844), [sym_traits] = ACTIONS(4844), [sym_vector] = ACTIONS(4844), [sym_void] = ACTIONS(4844), [anon_sym_BQUOTE] = ACTIONS(4846), [anon_sym_r_DQUOTE] = ACTIONS(4846), [anon_sym_x_DQUOTE] = ACTIONS(4846), [anon_sym_DQUOTE] = ACTIONS(4846), [anon_sym_i_BQUOTE] = ACTIONS(4846), [anon_sym_i_DQUOTE] = ACTIONS(4846), [anon_sym_iq_LBRACE] = ACTIONS(4846), [aux_sym_char_literal_token1] = ACTIONS(4846), [anon_sym_SQUOTE] = ACTIONS(4844), [anon_sym___DATE__] = ACTIONS(4844), [anon_sym___FILE__] = ACTIONS(4844), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4844), [anon_sym___FUNCTION__] = ACTIONS(4844), [anon_sym___LINE__] = ACTIONS(4844), [anon_sym___MODULE__] = ACTIONS(4844), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4844), [anon_sym___TIME__] = ACTIONS(4844), [anon_sym___TIMESTAMP__] = ACTIONS(4844), [anon_sym___VENDOR__] = ACTIONS(4844), [anon_sym___VERSION__] = ACTIONS(4844), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4846), [sym_float_literal] = ACTIONS(4846), [sym__string] = ACTIONS(4846), }, [2287] = { [sym_identifier] = ACTIONS(4864), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4866), [anon_sym_LBRACE] = ACTIONS(4866), [anon_sym_DOT] = ACTIONS(4866), [anon_sym_AMP] = ACTIONS(4866), [anon_sym_DASH] = ACTIONS(4864), [anon_sym_DASH_DASH] = ACTIONS(4866), [anon_sym_PLUS] = ACTIONS(4864), [anon_sym_PLUS_PLUS] = ACTIONS(4866), [anon_sym_BANG] = ACTIONS(4866), [anon_sym_LPAREN] = ACTIONS(4866), [anon_sym_RPAREN] = ACTIONS(4866), [anon_sym_LBRACK] = ACTIONS(4866), [anon_sym_SEMI] = ACTIONS(4866), [anon_sym_DOLLAR] = ACTIONS(4866), [anon_sym_STAR] = ACTIONS(4866), [anon_sym_TILDE] = ACTIONS(4866), [sym_bool] = ACTIONS(4864), [sym_byte] = ACTIONS(4864), [sym_ubyte] = ACTIONS(4864), [sym_char] = ACTIONS(4864), [sym_short] = ACTIONS(4864), [sym_ushort] = ACTIONS(4864), [sym_int] = ACTIONS(4864), [sym_uint] = ACTIONS(4864), [sym_long] = ACTIONS(4864), [sym_ulong] = ACTIONS(4864), [sym_cent] = ACTIONS(4864), [sym_ucent] = ACTIONS(4864), [sym_wchar] = ACTIONS(4864), [sym_dchar] = ACTIONS(4864), [sym_float] = ACTIONS(4864), [sym_double] = ACTIONS(4864), [sym_real] = ACTIONS(4864), [sym_ifloat] = ACTIONS(4864), [sym_idouble] = ACTIONS(4864), [sym_ireal] = ACTIONS(4864), [sym_cfloat] = ACTIONS(4864), [sym_cdouble] = ACTIONS(4864), [sym_creal] = ACTIONS(4864), [sym_size_t] = ACTIONS(4864), [sym_ptrdiff_t] = ACTIONS(4864), [sym_string] = ACTIONS(4864), [sym_cstring] = ACTIONS(4864), [sym_dstring] = ACTIONS(4864), [sym_wstring] = ACTIONS(4864), [sym_noreturn] = ACTIONS(4864), [sym_true] = ACTIONS(4864), [sym_false] = ACTIONS(4864), [sym_null] = ACTIONS(4864), [sym_super] = ACTIONS(4864), [sym_this] = ACTIONS(4864), [sym_assert] = ACTIONS(4864), [sym_auto] = ACTIONS(4864), [sym_cast] = ACTIONS(4864), [sym_catch] = ACTIONS(4864), [sym_const] = ACTIONS(4864), [sym_delegate] = ACTIONS(4864), [sym_delete] = ACTIONS(4864), [sym_do] = ACTIONS(4864), [sym_else] = ACTIONS(4864), [sym_finally] = ACTIONS(4864), [sym_function] = ACTIONS(4864), [sym_immutable] = ACTIONS(4864), [sym_import] = ACTIONS(4864), [sym_in] = ACTIONS(4864), [sym_inout] = ACTIONS(4864), [sym_is] = ACTIONS(4864), [sym_mixin] = ACTIONS(4864), [sym_new] = ACTIONS(4864), [sym_out] = ACTIONS(4864), [sym_ref] = ACTIONS(4864), [sym_shared] = ACTIONS(4864), [sym_throw] = ACTIONS(4864), [sym_typeid] = ACTIONS(4864), [sym_typeof] = ACTIONS(4864), [sym_traits] = ACTIONS(4864), [sym_vector] = ACTIONS(4864), [sym_void] = ACTIONS(4864), [anon_sym_BQUOTE] = ACTIONS(4866), [anon_sym_r_DQUOTE] = ACTIONS(4866), [anon_sym_x_DQUOTE] = ACTIONS(4866), [anon_sym_DQUOTE] = ACTIONS(4866), [anon_sym_i_BQUOTE] = ACTIONS(4866), [anon_sym_i_DQUOTE] = ACTIONS(4866), [anon_sym_iq_LBRACE] = ACTIONS(4866), [aux_sym_char_literal_token1] = ACTIONS(4866), [anon_sym_SQUOTE] = ACTIONS(4864), [anon_sym___DATE__] = ACTIONS(4864), [anon_sym___FILE__] = ACTIONS(4864), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4864), [anon_sym___FUNCTION__] = ACTIONS(4864), [anon_sym___LINE__] = ACTIONS(4864), [anon_sym___MODULE__] = ACTIONS(4864), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4864), [anon_sym___TIME__] = ACTIONS(4864), [anon_sym___TIMESTAMP__] = ACTIONS(4864), [anon_sym___VENDOR__] = ACTIONS(4864), [anon_sym___VERSION__] = ACTIONS(4864), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4866), [sym_float_literal] = ACTIONS(4866), [sym__string] = ACTIONS(4866), }, [2288] = { [sym_identifier] = ACTIONS(4602), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4604), [anon_sym_LBRACE] = ACTIONS(4604), [anon_sym_DOT] = ACTIONS(4604), [anon_sym_AMP] = ACTIONS(4604), [anon_sym_DASH] = ACTIONS(4602), [anon_sym_DASH_DASH] = ACTIONS(4604), [anon_sym_PLUS] = ACTIONS(4602), [anon_sym_PLUS_PLUS] = ACTIONS(4604), [anon_sym_BANG] = ACTIONS(4604), [anon_sym_LPAREN] = ACTIONS(4604), [anon_sym_RPAREN] = ACTIONS(4604), [anon_sym_LBRACK] = ACTIONS(4604), [anon_sym_SEMI] = ACTIONS(4604), [anon_sym_DOLLAR] = ACTIONS(4604), [anon_sym_STAR] = ACTIONS(4604), [anon_sym_TILDE] = ACTIONS(4604), [sym_bool] = ACTIONS(4602), [sym_byte] = ACTIONS(4602), [sym_ubyte] = ACTIONS(4602), [sym_char] = ACTIONS(4602), [sym_short] = ACTIONS(4602), [sym_ushort] = ACTIONS(4602), [sym_int] = ACTIONS(4602), [sym_uint] = ACTIONS(4602), [sym_long] = ACTIONS(4602), [sym_ulong] = ACTIONS(4602), [sym_cent] = ACTIONS(4602), [sym_ucent] = ACTIONS(4602), [sym_wchar] = ACTIONS(4602), [sym_dchar] = ACTIONS(4602), [sym_float] = ACTIONS(4602), [sym_double] = ACTIONS(4602), [sym_real] = ACTIONS(4602), [sym_ifloat] = ACTIONS(4602), [sym_idouble] = ACTIONS(4602), [sym_ireal] = ACTIONS(4602), [sym_cfloat] = ACTIONS(4602), [sym_cdouble] = ACTIONS(4602), [sym_creal] = ACTIONS(4602), [sym_size_t] = ACTIONS(4602), [sym_ptrdiff_t] = ACTIONS(4602), [sym_string] = ACTIONS(4602), [sym_cstring] = ACTIONS(4602), [sym_dstring] = ACTIONS(4602), [sym_wstring] = ACTIONS(4602), [sym_noreturn] = ACTIONS(4602), [sym_true] = ACTIONS(4602), [sym_false] = ACTIONS(4602), [sym_null] = ACTIONS(4602), [sym_super] = ACTIONS(4602), [sym_this] = ACTIONS(4602), [sym_assert] = ACTIONS(4602), [sym_auto] = ACTIONS(4602), [sym_cast] = ACTIONS(4602), [sym_catch] = ACTIONS(4602), [sym_const] = ACTIONS(4602), [sym_delegate] = ACTIONS(4602), [sym_delete] = ACTIONS(4602), [sym_do] = ACTIONS(4602), [sym_else] = ACTIONS(4602), [sym_finally] = ACTIONS(4602), [sym_function] = ACTIONS(4602), [sym_immutable] = ACTIONS(4602), [sym_import] = ACTIONS(4602), [sym_in] = ACTIONS(4602), [sym_inout] = ACTIONS(4602), [sym_is] = ACTIONS(4602), [sym_mixin] = ACTIONS(4602), [sym_new] = ACTIONS(4602), [sym_out] = ACTIONS(4602), [sym_ref] = ACTIONS(4602), [sym_shared] = ACTIONS(4602), [sym_throw] = ACTIONS(4602), [sym_typeid] = ACTIONS(4602), [sym_typeof] = ACTIONS(4602), [sym_traits] = ACTIONS(4602), [sym_vector] = ACTIONS(4602), [sym_void] = ACTIONS(4602), [anon_sym_BQUOTE] = ACTIONS(4604), [anon_sym_r_DQUOTE] = ACTIONS(4604), [anon_sym_x_DQUOTE] = ACTIONS(4604), [anon_sym_DQUOTE] = ACTIONS(4604), [anon_sym_i_BQUOTE] = ACTIONS(4604), [anon_sym_i_DQUOTE] = ACTIONS(4604), [anon_sym_iq_LBRACE] = ACTIONS(4604), [aux_sym_char_literal_token1] = ACTIONS(4604), [anon_sym_SQUOTE] = ACTIONS(4602), [anon_sym___DATE__] = ACTIONS(4602), [anon_sym___FILE__] = ACTIONS(4602), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4602), [anon_sym___FUNCTION__] = ACTIONS(4602), [anon_sym___LINE__] = ACTIONS(4602), [anon_sym___MODULE__] = ACTIONS(4602), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4602), [anon_sym___TIME__] = ACTIONS(4602), [anon_sym___TIMESTAMP__] = ACTIONS(4602), [anon_sym___VENDOR__] = ACTIONS(4602), [anon_sym___VERSION__] = ACTIONS(4602), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4604), [sym_float_literal] = ACTIONS(4604), [sym__string] = ACTIONS(4604), }, [2289] = { [sym_identifier] = ACTIONS(4149), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4151), [anon_sym_LBRACE] = ACTIONS(4151), [anon_sym_DOT] = ACTIONS(4151), [anon_sym_AMP] = ACTIONS(4151), [anon_sym_DASH] = ACTIONS(4149), [anon_sym_DASH_DASH] = ACTIONS(4151), [anon_sym_PLUS] = ACTIONS(4149), [anon_sym_PLUS_PLUS] = ACTIONS(4151), [anon_sym_BANG] = ACTIONS(4151), [anon_sym_LPAREN] = ACTIONS(4151), [anon_sym_RPAREN] = ACTIONS(4151), [anon_sym_LBRACK] = ACTIONS(4151), [anon_sym_SEMI] = ACTIONS(4151), [anon_sym_DOLLAR] = ACTIONS(4151), [anon_sym_STAR] = ACTIONS(4151), [anon_sym_TILDE] = ACTIONS(4151), [sym_bool] = ACTIONS(4149), [sym_byte] = ACTIONS(4149), [sym_ubyte] = ACTIONS(4149), [sym_char] = ACTIONS(4149), [sym_short] = ACTIONS(4149), [sym_ushort] = ACTIONS(4149), [sym_int] = ACTIONS(4149), [sym_uint] = ACTIONS(4149), [sym_long] = ACTIONS(4149), [sym_ulong] = ACTIONS(4149), [sym_cent] = ACTIONS(4149), [sym_ucent] = ACTIONS(4149), [sym_wchar] = ACTIONS(4149), [sym_dchar] = ACTIONS(4149), [sym_float] = ACTIONS(4149), [sym_double] = ACTIONS(4149), [sym_real] = ACTIONS(4149), [sym_ifloat] = ACTIONS(4149), [sym_idouble] = ACTIONS(4149), [sym_ireal] = ACTIONS(4149), [sym_cfloat] = ACTIONS(4149), [sym_cdouble] = ACTIONS(4149), [sym_creal] = ACTIONS(4149), [sym_size_t] = ACTIONS(4149), [sym_ptrdiff_t] = ACTIONS(4149), [sym_string] = ACTIONS(4149), [sym_cstring] = ACTIONS(4149), [sym_dstring] = ACTIONS(4149), [sym_wstring] = ACTIONS(4149), [sym_noreturn] = ACTIONS(4149), [sym_true] = ACTIONS(4149), [sym_false] = ACTIONS(4149), [sym_null] = ACTIONS(4149), [sym_super] = ACTIONS(4149), [sym_this] = ACTIONS(4149), [sym_assert] = ACTIONS(4149), [sym_auto] = ACTIONS(4149), [sym_cast] = ACTIONS(4149), [sym_catch] = ACTIONS(4149), [sym_const] = ACTIONS(4149), [sym_delegate] = ACTIONS(4149), [sym_delete] = ACTIONS(4149), [sym_do] = ACTIONS(4149), [sym_else] = ACTIONS(4149), [sym_finally] = ACTIONS(4149), [sym_function] = ACTIONS(4149), [sym_immutable] = ACTIONS(4149), [sym_import] = ACTIONS(4149), [sym_in] = ACTIONS(4149), [sym_inout] = ACTIONS(4149), [sym_is] = ACTIONS(4149), [sym_mixin] = ACTIONS(4149), [sym_new] = ACTIONS(4149), [sym_out] = ACTIONS(4149), [sym_ref] = ACTIONS(4149), [sym_shared] = ACTIONS(4149), [sym_throw] = ACTIONS(4149), [sym_typeid] = ACTIONS(4149), [sym_typeof] = ACTIONS(4149), [sym_traits] = ACTIONS(4149), [sym_vector] = ACTIONS(4149), [sym_void] = ACTIONS(4149), [anon_sym_BQUOTE] = ACTIONS(4151), [anon_sym_r_DQUOTE] = ACTIONS(4151), [anon_sym_x_DQUOTE] = ACTIONS(4151), [anon_sym_DQUOTE] = ACTIONS(4151), [anon_sym_i_BQUOTE] = ACTIONS(4151), [anon_sym_i_DQUOTE] = ACTIONS(4151), [anon_sym_iq_LBRACE] = ACTIONS(4151), [aux_sym_char_literal_token1] = ACTIONS(4151), [anon_sym_SQUOTE] = ACTIONS(4149), [anon_sym___DATE__] = ACTIONS(4149), [anon_sym___FILE__] = ACTIONS(4149), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4149), [anon_sym___FUNCTION__] = ACTIONS(4149), [anon_sym___LINE__] = ACTIONS(4149), [anon_sym___MODULE__] = ACTIONS(4149), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4149), [anon_sym___TIME__] = ACTIONS(4149), [anon_sym___TIMESTAMP__] = ACTIONS(4149), [anon_sym___VENDOR__] = ACTIONS(4149), [anon_sym___VERSION__] = ACTIONS(4149), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4151), [sym_float_literal] = ACTIONS(4151), [sym__string] = ACTIONS(4151), }, [2290] = { [sym_identifier] = ACTIONS(4868), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4870), [anon_sym_LBRACE] = ACTIONS(4870), [anon_sym_DOT] = ACTIONS(4870), [anon_sym_AMP] = ACTIONS(4870), [anon_sym_DASH] = ACTIONS(4868), [anon_sym_DASH_DASH] = ACTIONS(4870), [anon_sym_PLUS] = ACTIONS(4868), [anon_sym_PLUS_PLUS] = ACTIONS(4870), [anon_sym_BANG] = ACTIONS(4870), [anon_sym_LPAREN] = ACTIONS(4870), [anon_sym_RPAREN] = ACTIONS(4870), [anon_sym_LBRACK] = ACTIONS(4870), [anon_sym_SEMI] = ACTIONS(4870), [anon_sym_DOLLAR] = ACTIONS(4870), [anon_sym_STAR] = ACTIONS(4870), [anon_sym_TILDE] = ACTIONS(4870), [sym_bool] = ACTIONS(4868), [sym_byte] = ACTIONS(4868), [sym_ubyte] = ACTIONS(4868), [sym_char] = ACTIONS(4868), [sym_short] = ACTIONS(4868), [sym_ushort] = ACTIONS(4868), [sym_int] = ACTIONS(4868), [sym_uint] = ACTIONS(4868), [sym_long] = ACTIONS(4868), [sym_ulong] = ACTIONS(4868), [sym_cent] = ACTIONS(4868), [sym_ucent] = ACTIONS(4868), [sym_wchar] = ACTIONS(4868), [sym_dchar] = ACTIONS(4868), [sym_float] = ACTIONS(4868), [sym_double] = ACTIONS(4868), [sym_real] = ACTIONS(4868), [sym_ifloat] = ACTIONS(4868), [sym_idouble] = ACTIONS(4868), [sym_ireal] = ACTIONS(4868), [sym_cfloat] = ACTIONS(4868), [sym_cdouble] = ACTIONS(4868), [sym_creal] = ACTIONS(4868), [sym_size_t] = ACTIONS(4868), [sym_ptrdiff_t] = ACTIONS(4868), [sym_string] = ACTIONS(4868), [sym_cstring] = ACTIONS(4868), [sym_dstring] = ACTIONS(4868), [sym_wstring] = ACTIONS(4868), [sym_noreturn] = ACTIONS(4868), [sym_true] = ACTIONS(4868), [sym_false] = ACTIONS(4868), [sym_null] = ACTIONS(4868), [sym_super] = ACTIONS(4868), [sym_this] = ACTIONS(4868), [sym_assert] = ACTIONS(4868), [sym_auto] = ACTIONS(4868), [sym_cast] = ACTIONS(4868), [sym_catch] = ACTIONS(4868), [sym_const] = ACTIONS(4868), [sym_delegate] = ACTIONS(4868), [sym_delete] = ACTIONS(4868), [sym_do] = ACTIONS(4868), [sym_else] = ACTIONS(4868), [sym_finally] = ACTIONS(4868), [sym_function] = ACTIONS(4868), [sym_immutable] = ACTIONS(4868), [sym_import] = ACTIONS(4868), [sym_in] = ACTIONS(4868), [sym_inout] = ACTIONS(4868), [sym_is] = ACTIONS(4868), [sym_mixin] = ACTIONS(4868), [sym_new] = ACTIONS(4868), [sym_out] = ACTIONS(4868), [sym_ref] = ACTIONS(4868), [sym_shared] = ACTIONS(4868), [sym_throw] = ACTIONS(4868), [sym_typeid] = ACTIONS(4868), [sym_typeof] = ACTIONS(4868), [sym_traits] = ACTIONS(4868), [sym_vector] = ACTIONS(4868), [sym_void] = ACTIONS(4868), [anon_sym_BQUOTE] = ACTIONS(4870), [anon_sym_r_DQUOTE] = ACTIONS(4870), [anon_sym_x_DQUOTE] = ACTIONS(4870), [anon_sym_DQUOTE] = ACTIONS(4870), [anon_sym_i_BQUOTE] = ACTIONS(4870), [anon_sym_i_DQUOTE] = ACTIONS(4870), [anon_sym_iq_LBRACE] = ACTIONS(4870), [aux_sym_char_literal_token1] = ACTIONS(4870), [anon_sym_SQUOTE] = ACTIONS(4868), [anon_sym___DATE__] = ACTIONS(4868), [anon_sym___FILE__] = ACTIONS(4868), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4868), [anon_sym___FUNCTION__] = ACTIONS(4868), [anon_sym___LINE__] = ACTIONS(4868), [anon_sym___MODULE__] = ACTIONS(4868), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4868), [anon_sym___TIME__] = ACTIONS(4868), [anon_sym___TIMESTAMP__] = ACTIONS(4868), [anon_sym___VENDOR__] = ACTIONS(4868), [anon_sym___VERSION__] = ACTIONS(4868), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4870), [sym_float_literal] = ACTIONS(4870), [sym__string] = ACTIONS(4870), }, [2291] = { [sym_identifier] = ACTIONS(5072), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5074), [anon_sym_LBRACE] = ACTIONS(5074), [anon_sym_DOT] = ACTIONS(5074), [anon_sym_AMP] = ACTIONS(5074), [anon_sym_DASH] = ACTIONS(5072), [anon_sym_DASH_DASH] = ACTIONS(5074), [anon_sym_PLUS] = ACTIONS(5072), [anon_sym_PLUS_PLUS] = ACTIONS(5074), [anon_sym_BANG] = ACTIONS(5074), [anon_sym_LPAREN] = ACTIONS(5074), [anon_sym_RPAREN] = ACTIONS(5074), [anon_sym_LBRACK] = ACTIONS(5074), [anon_sym_SEMI] = ACTIONS(5074), [anon_sym_DOLLAR] = ACTIONS(5074), [anon_sym_STAR] = ACTIONS(5074), [anon_sym_TILDE] = ACTIONS(5074), [sym_bool] = ACTIONS(5072), [sym_byte] = ACTIONS(5072), [sym_ubyte] = ACTIONS(5072), [sym_char] = ACTIONS(5072), [sym_short] = ACTIONS(5072), [sym_ushort] = ACTIONS(5072), [sym_int] = ACTIONS(5072), [sym_uint] = ACTIONS(5072), [sym_long] = ACTIONS(5072), [sym_ulong] = ACTIONS(5072), [sym_cent] = ACTIONS(5072), [sym_ucent] = ACTIONS(5072), [sym_wchar] = ACTIONS(5072), [sym_dchar] = ACTIONS(5072), [sym_float] = ACTIONS(5072), [sym_double] = ACTIONS(5072), [sym_real] = ACTIONS(5072), [sym_ifloat] = ACTIONS(5072), [sym_idouble] = ACTIONS(5072), [sym_ireal] = ACTIONS(5072), [sym_cfloat] = ACTIONS(5072), [sym_cdouble] = ACTIONS(5072), [sym_creal] = ACTIONS(5072), [sym_size_t] = ACTIONS(5072), [sym_ptrdiff_t] = ACTIONS(5072), [sym_string] = ACTIONS(5072), [sym_cstring] = ACTIONS(5072), [sym_dstring] = ACTIONS(5072), [sym_wstring] = ACTIONS(5072), [sym_noreturn] = ACTIONS(5072), [sym_true] = ACTIONS(5072), [sym_false] = ACTIONS(5072), [sym_null] = ACTIONS(5072), [sym_super] = ACTIONS(5072), [sym_this] = ACTIONS(5072), [sym_assert] = ACTIONS(5072), [sym_auto] = ACTIONS(5072), [sym_cast] = ACTIONS(5072), [sym_catch] = ACTIONS(5072), [sym_const] = ACTIONS(5072), [sym_delegate] = ACTIONS(5072), [sym_delete] = ACTIONS(5072), [sym_do] = ACTIONS(5072), [sym_else] = ACTIONS(5072), [sym_finally] = ACTIONS(5072), [sym_function] = ACTIONS(5072), [sym_immutable] = ACTIONS(5072), [sym_import] = ACTIONS(5072), [sym_in] = ACTIONS(5072), [sym_inout] = ACTIONS(5072), [sym_is] = ACTIONS(5072), [sym_mixin] = ACTIONS(5072), [sym_new] = ACTIONS(5072), [sym_out] = ACTIONS(5072), [sym_ref] = ACTIONS(5072), [sym_shared] = ACTIONS(5072), [sym_throw] = ACTIONS(5072), [sym_typeid] = ACTIONS(5072), [sym_typeof] = ACTIONS(5072), [sym_traits] = ACTIONS(5072), [sym_vector] = ACTIONS(5072), [sym_void] = ACTIONS(5072), [anon_sym_BQUOTE] = ACTIONS(5074), [anon_sym_r_DQUOTE] = ACTIONS(5074), [anon_sym_x_DQUOTE] = ACTIONS(5074), [anon_sym_DQUOTE] = ACTIONS(5074), [anon_sym_i_BQUOTE] = ACTIONS(5074), [anon_sym_i_DQUOTE] = ACTIONS(5074), [anon_sym_iq_LBRACE] = ACTIONS(5074), [aux_sym_char_literal_token1] = ACTIONS(5074), [anon_sym_SQUOTE] = ACTIONS(5072), [anon_sym___DATE__] = ACTIONS(5072), [anon_sym___FILE__] = ACTIONS(5072), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5072), [anon_sym___FUNCTION__] = ACTIONS(5072), [anon_sym___LINE__] = ACTIONS(5072), [anon_sym___MODULE__] = ACTIONS(5072), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5072), [anon_sym___TIME__] = ACTIONS(5072), [anon_sym___TIMESTAMP__] = ACTIONS(5072), [anon_sym___VENDOR__] = ACTIONS(5072), [anon_sym___VERSION__] = ACTIONS(5072), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5074), [sym_float_literal] = ACTIONS(5074), [sym__string] = ACTIONS(5074), }, [2292] = { [sym_identifier] = ACTIONS(4872), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4874), [anon_sym_LBRACE] = ACTIONS(4874), [anon_sym_DOT] = ACTIONS(4874), [anon_sym_AMP] = ACTIONS(4874), [anon_sym_DASH] = ACTIONS(4872), [anon_sym_DASH_DASH] = ACTIONS(4874), [anon_sym_PLUS] = ACTIONS(4872), [anon_sym_PLUS_PLUS] = ACTIONS(4874), [anon_sym_BANG] = ACTIONS(4874), [anon_sym_LPAREN] = ACTIONS(4874), [anon_sym_RPAREN] = ACTIONS(4874), [anon_sym_LBRACK] = ACTIONS(4874), [anon_sym_SEMI] = ACTIONS(4874), [anon_sym_DOLLAR] = ACTIONS(4874), [anon_sym_STAR] = ACTIONS(4874), [anon_sym_TILDE] = ACTIONS(4874), [sym_bool] = ACTIONS(4872), [sym_byte] = ACTIONS(4872), [sym_ubyte] = ACTIONS(4872), [sym_char] = ACTIONS(4872), [sym_short] = ACTIONS(4872), [sym_ushort] = ACTIONS(4872), [sym_int] = ACTIONS(4872), [sym_uint] = ACTIONS(4872), [sym_long] = ACTIONS(4872), [sym_ulong] = ACTIONS(4872), [sym_cent] = ACTIONS(4872), [sym_ucent] = ACTIONS(4872), [sym_wchar] = ACTIONS(4872), [sym_dchar] = ACTIONS(4872), [sym_float] = ACTIONS(4872), [sym_double] = ACTIONS(4872), [sym_real] = ACTIONS(4872), [sym_ifloat] = ACTIONS(4872), [sym_idouble] = ACTIONS(4872), [sym_ireal] = ACTIONS(4872), [sym_cfloat] = ACTIONS(4872), [sym_cdouble] = ACTIONS(4872), [sym_creal] = ACTIONS(4872), [sym_size_t] = ACTIONS(4872), [sym_ptrdiff_t] = ACTIONS(4872), [sym_string] = ACTIONS(4872), [sym_cstring] = ACTIONS(4872), [sym_dstring] = ACTIONS(4872), [sym_wstring] = ACTIONS(4872), [sym_noreturn] = ACTIONS(4872), [sym_true] = ACTIONS(4872), [sym_false] = ACTIONS(4872), [sym_null] = ACTIONS(4872), [sym_super] = ACTIONS(4872), [sym_this] = ACTIONS(4872), [sym_assert] = ACTIONS(4872), [sym_auto] = ACTIONS(4872), [sym_cast] = ACTIONS(4872), [sym_catch] = ACTIONS(4872), [sym_const] = ACTIONS(4872), [sym_delegate] = ACTIONS(4872), [sym_delete] = ACTIONS(4872), [sym_do] = ACTIONS(4872), [sym_else] = ACTIONS(4872), [sym_finally] = ACTIONS(4872), [sym_function] = ACTIONS(4872), [sym_immutable] = ACTIONS(4872), [sym_import] = ACTIONS(4872), [sym_in] = ACTIONS(4872), [sym_inout] = ACTIONS(4872), [sym_is] = ACTIONS(4872), [sym_mixin] = ACTIONS(4872), [sym_new] = ACTIONS(4872), [sym_out] = ACTIONS(4872), [sym_ref] = ACTIONS(4872), [sym_shared] = ACTIONS(4872), [sym_throw] = ACTIONS(4872), [sym_typeid] = ACTIONS(4872), [sym_typeof] = ACTIONS(4872), [sym_traits] = ACTIONS(4872), [sym_vector] = ACTIONS(4872), [sym_void] = ACTIONS(4872), [anon_sym_BQUOTE] = ACTIONS(4874), [anon_sym_r_DQUOTE] = ACTIONS(4874), [anon_sym_x_DQUOTE] = ACTIONS(4874), [anon_sym_DQUOTE] = ACTIONS(4874), [anon_sym_i_BQUOTE] = ACTIONS(4874), [anon_sym_i_DQUOTE] = ACTIONS(4874), [anon_sym_iq_LBRACE] = ACTIONS(4874), [aux_sym_char_literal_token1] = ACTIONS(4874), [anon_sym_SQUOTE] = ACTIONS(4872), [anon_sym___DATE__] = ACTIONS(4872), [anon_sym___FILE__] = ACTIONS(4872), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4872), [anon_sym___FUNCTION__] = ACTIONS(4872), [anon_sym___LINE__] = ACTIONS(4872), [anon_sym___MODULE__] = ACTIONS(4872), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4872), [anon_sym___TIME__] = ACTIONS(4872), [anon_sym___TIMESTAMP__] = ACTIONS(4872), [anon_sym___VENDOR__] = ACTIONS(4872), [anon_sym___VERSION__] = ACTIONS(4872), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4874), [sym_float_literal] = ACTIONS(4874), [sym__string] = ACTIONS(4874), }, [2293] = { [sym_identifier] = ACTIONS(4666), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4668), [anon_sym_LBRACE] = ACTIONS(4668), [anon_sym_DOT] = ACTIONS(4668), [anon_sym_AMP] = ACTIONS(4668), [anon_sym_DASH] = ACTIONS(4666), [anon_sym_DASH_DASH] = ACTIONS(4668), [anon_sym_PLUS] = ACTIONS(4666), [anon_sym_PLUS_PLUS] = ACTIONS(4668), [anon_sym_BANG] = ACTIONS(4668), [anon_sym_LPAREN] = ACTIONS(4668), [anon_sym_RPAREN] = ACTIONS(4668), [anon_sym_LBRACK] = ACTIONS(4668), [anon_sym_SEMI] = ACTIONS(4668), [anon_sym_DOLLAR] = ACTIONS(4668), [anon_sym_STAR] = ACTIONS(4668), [anon_sym_TILDE] = ACTIONS(4668), [sym_bool] = ACTIONS(4666), [sym_byte] = ACTIONS(4666), [sym_ubyte] = ACTIONS(4666), [sym_char] = ACTIONS(4666), [sym_short] = ACTIONS(4666), [sym_ushort] = ACTIONS(4666), [sym_int] = ACTIONS(4666), [sym_uint] = ACTIONS(4666), [sym_long] = ACTIONS(4666), [sym_ulong] = ACTIONS(4666), [sym_cent] = ACTIONS(4666), [sym_ucent] = ACTIONS(4666), [sym_wchar] = ACTIONS(4666), [sym_dchar] = ACTIONS(4666), [sym_float] = ACTIONS(4666), [sym_double] = ACTIONS(4666), [sym_real] = ACTIONS(4666), [sym_ifloat] = ACTIONS(4666), [sym_idouble] = ACTIONS(4666), [sym_ireal] = ACTIONS(4666), [sym_cfloat] = ACTIONS(4666), [sym_cdouble] = ACTIONS(4666), [sym_creal] = ACTIONS(4666), [sym_size_t] = ACTIONS(4666), [sym_ptrdiff_t] = ACTIONS(4666), [sym_string] = ACTIONS(4666), [sym_cstring] = ACTIONS(4666), [sym_dstring] = ACTIONS(4666), [sym_wstring] = ACTIONS(4666), [sym_noreturn] = ACTIONS(4666), [sym_true] = ACTIONS(4666), [sym_false] = ACTIONS(4666), [sym_null] = ACTIONS(4666), [sym_super] = ACTIONS(4666), [sym_this] = ACTIONS(4666), [sym_assert] = ACTIONS(4666), [sym_auto] = ACTIONS(4666), [sym_cast] = ACTIONS(4666), [sym_catch] = ACTIONS(4666), [sym_const] = ACTIONS(4666), [sym_delegate] = ACTIONS(4666), [sym_delete] = ACTIONS(4666), [sym_do] = ACTIONS(4666), [sym_else] = ACTIONS(4666), [sym_finally] = ACTIONS(4666), [sym_function] = ACTIONS(4666), [sym_immutable] = ACTIONS(4666), [sym_import] = ACTIONS(4666), [sym_in] = ACTIONS(4666), [sym_inout] = ACTIONS(4666), [sym_is] = ACTIONS(4666), [sym_mixin] = ACTIONS(4666), [sym_new] = ACTIONS(4666), [sym_out] = ACTIONS(4666), [sym_ref] = ACTIONS(4666), [sym_shared] = ACTIONS(4666), [sym_throw] = ACTIONS(4666), [sym_typeid] = ACTIONS(4666), [sym_typeof] = ACTIONS(4666), [sym_traits] = ACTIONS(4666), [sym_vector] = ACTIONS(4666), [sym_void] = ACTIONS(4666), [anon_sym_BQUOTE] = ACTIONS(4668), [anon_sym_r_DQUOTE] = ACTIONS(4668), [anon_sym_x_DQUOTE] = ACTIONS(4668), [anon_sym_DQUOTE] = ACTIONS(4668), [anon_sym_i_BQUOTE] = ACTIONS(4668), [anon_sym_i_DQUOTE] = ACTIONS(4668), [anon_sym_iq_LBRACE] = ACTIONS(4668), [aux_sym_char_literal_token1] = ACTIONS(4668), [anon_sym_SQUOTE] = ACTIONS(4666), [anon_sym___DATE__] = ACTIONS(4666), [anon_sym___FILE__] = ACTIONS(4666), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4666), [anon_sym___FUNCTION__] = ACTIONS(4666), [anon_sym___LINE__] = ACTIONS(4666), [anon_sym___MODULE__] = ACTIONS(4666), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4666), [anon_sym___TIME__] = ACTIONS(4666), [anon_sym___TIMESTAMP__] = ACTIONS(4666), [anon_sym___VENDOR__] = ACTIONS(4666), [anon_sym___VERSION__] = ACTIONS(4666), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4668), [sym_float_literal] = ACTIONS(4668), [sym__string] = ACTIONS(4668), }, [2294] = { [sym_identifier] = ACTIONS(4654), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4656), [anon_sym_LBRACE] = ACTIONS(4656), [anon_sym_DOT] = ACTIONS(4656), [anon_sym_AMP] = ACTIONS(4656), [anon_sym_DASH] = ACTIONS(4654), [anon_sym_DASH_DASH] = ACTIONS(4656), [anon_sym_PLUS] = ACTIONS(4654), [anon_sym_PLUS_PLUS] = ACTIONS(4656), [anon_sym_BANG] = ACTIONS(4656), [anon_sym_LPAREN] = ACTIONS(4656), [anon_sym_RPAREN] = ACTIONS(4656), [anon_sym_LBRACK] = ACTIONS(4656), [anon_sym_SEMI] = ACTIONS(4656), [anon_sym_DOLLAR] = ACTIONS(4656), [anon_sym_STAR] = ACTIONS(4656), [anon_sym_TILDE] = ACTIONS(4656), [sym_bool] = ACTIONS(4654), [sym_byte] = ACTIONS(4654), [sym_ubyte] = ACTIONS(4654), [sym_char] = ACTIONS(4654), [sym_short] = ACTIONS(4654), [sym_ushort] = ACTIONS(4654), [sym_int] = ACTIONS(4654), [sym_uint] = ACTIONS(4654), [sym_long] = ACTIONS(4654), [sym_ulong] = ACTIONS(4654), [sym_cent] = ACTIONS(4654), [sym_ucent] = ACTIONS(4654), [sym_wchar] = ACTIONS(4654), [sym_dchar] = ACTIONS(4654), [sym_float] = ACTIONS(4654), [sym_double] = ACTIONS(4654), [sym_real] = ACTIONS(4654), [sym_ifloat] = ACTIONS(4654), [sym_idouble] = ACTIONS(4654), [sym_ireal] = ACTIONS(4654), [sym_cfloat] = ACTIONS(4654), [sym_cdouble] = ACTIONS(4654), [sym_creal] = ACTIONS(4654), [sym_size_t] = ACTIONS(4654), [sym_ptrdiff_t] = ACTIONS(4654), [sym_string] = ACTIONS(4654), [sym_cstring] = ACTIONS(4654), [sym_dstring] = ACTIONS(4654), [sym_wstring] = ACTIONS(4654), [sym_noreturn] = ACTIONS(4654), [sym_true] = ACTIONS(4654), [sym_false] = ACTIONS(4654), [sym_null] = ACTIONS(4654), [sym_super] = ACTIONS(4654), [sym_this] = ACTIONS(4654), [sym_assert] = ACTIONS(4654), [sym_auto] = ACTIONS(4654), [sym_cast] = ACTIONS(4654), [sym_catch] = ACTIONS(4654), [sym_const] = ACTIONS(4654), [sym_delegate] = ACTIONS(4654), [sym_delete] = ACTIONS(4654), [sym_do] = ACTIONS(4654), [sym_else] = ACTIONS(4654), [sym_finally] = ACTIONS(4654), [sym_function] = ACTIONS(4654), [sym_immutable] = ACTIONS(4654), [sym_import] = ACTIONS(4654), [sym_in] = ACTIONS(4654), [sym_inout] = ACTIONS(4654), [sym_is] = ACTIONS(4654), [sym_mixin] = ACTIONS(4654), [sym_new] = ACTIONS(4654), [sym_out] = ACTIONS(4654), [sym_ref] = ACTIONS(4654), [sym_shared] = ACTIONS(4654), [sym_throw] = ACTIONS(4654), [sym_typeid] = ACTIONS(4654), [sym_typeof] = ACTIONS(4654), [sym_traits] = ACTIONS(4654), [sym_vector] = ACTIONS(4654), [sym_void] = ACTIONS(4654), [anon_sym_BQUOTE] = ACTIONS(4656), [anon_sym_r_DQUOTE] = ACTIONS(4656), [anon_sym_x_DQUOTE] = ACTIONS(4656), [anon_sym_DQUOTE] = ACTIONS(4656), [anon_sym_i_BQUOTE] = ACTIONS(4656), [anon_sym_i_DQUOTE] = ACTIONS(4656), [anon_sym_iq_LBRACE] = ACTIONS(4656), [aux_sym_char_literal_token1] = ACTIONS(4656), [anon_sym_SQUOTE] = ACTIONS(4654), [anon_sym___DATE__] = ACTIONS(4654), [anon_sym___FILE__] = ACTIONS(4654), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4654), [anon_sym___FUNCTION__] = ACTIONS(4654), [anon_sym___LINE__] = ACTIONS(4654), [anon_sym___MODULE__] = ACTIONS(4654), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4654), [anon_sym___TIME__] = ACTIONS(4654), [anon_sym___TIMESTAMP__] = ACTIONS(4654), [anon_sym___VENDOR__] = ACTIONS(4654), [anon_sym___VERSION__] = ACTIONS(4654), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4656), [sym_float_literal] = ACTIONS(4656), [sym__string] = ACTIONS(4656), }, [2295] = { [sym_identifier] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2810), [anon_sym_LBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(2810), [anon_sym_AMP] = ACTIONS(2810), [anon_sym_DASH] = ACTIONS(2812), [anon_sym_DASH_DASH] = ACTIONS(2810), [anon_sym_PLUS] = ACTIONS(2812), [anon_sym_PLUS_PLUS] = ACTIONS(2810), [anon_sym_BANG] = ACTIONS(2810), [anon_sym_LPAREN] = ACTIONS(2810), [anon_sym_RPAREN] = ACTIONS(2810), [anon_sym_LBRACK] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2810), [anon_sym_DOLLAR] = ACTIONS(2810), [anon_sym_STAR] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2810), [sym_bool] = ACTIONS(2812), [sym_byte] = ACTIONS(2812), [sym_ubyte] = ACTIONS(2812), [sym_char] = ACTIONS(2812), [sym_short] = ACTIONS(2812), [sym_ushort] = ACTIONS(2812), [sym_int] = ACTIONS(2812), [sym_uint] = ACTIONS(2812), [sym_long] = ACTIONS(2812), [sym_ulong] = ACTIONS(2812), [sym_cent] = ACTIONS(2812), [sym_ucent] = ACTIONS(2812), [sym_wchar] = ACTIONS(2812), [sym_dchar] = ACTIONS(2812), [sym_float] = ACTIONS(2812), [sym_double] = ACTIONS(2812), [sym_real] = ACTIONS(2812), [sym_ifloat] = ACTIONS(2812), [sym_idouble] = ACTIONS(2812), [sym_ireal] = ACTIONS(2812), [sym_cfloat] = ACTIONS(2812), [sym_cdouble] = ACTIONS(2812), [sym_creal] = ACTIONS(2812), [sym_size_t] = ACTIONS(2812), [sym_ptrdiff_t] = ACTIONS(2812), [sym_string] = ACTIONS(2812), [sym_cstring] = ACTIONS(2812), [sym_dstring] = ACTIONS(2812), [sym_wstring] = ACTIONS(2812), [sym_noreturn] = ACTIONS(2812), [sym_true] = ACTIONS(2812), [sym_false] = ACTIONS(2812), [sym_null] = ACTIONS(2812), [sym_super] = ACTIONS(2812), [sym_this] = ACTIONS(2812), [sym_assert] = ACTIONS(2812), [sym_auto] = ACTIONS(2812), [sym_cast] = ACTIONS(2812), [sym_catch] = ACTIONS(2812), [sym_const] = ACTIONS(2812), [sym_delegate] = ACTIONS(2812), [sym_delete] = ACTIONS(2812), [sym_do] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_finally] = ACTIONS(2812), [sym_function] = ACTIONS(2812), [sym_immutable] = ACTIONS(2812), [sym_import] = ACTIONS(2812), [sym_in] = ACTIONS(2812), [sym_inout] = ACTIONS(2812), [sym_is] = ACTIONS(2812), [sym_mixin] = ACTIONS(2812), [sym_new] = ACTIONS(2812), [sym_out] = ACTIONS(2812), [sym_ref] = ACTIONS(2812), [sym_shared] = ACTIONS(2812), [sym_throw] = ACTIONS(2812), [sym_typeid] = ACTIONS(2812), [sym_typeof] = ACTIONS(2812), [sym_traits] = ACTIONS(2812), [sym_vector] = ACTIONS(2812), [sym_void] = ACTIONS(2812), [anon_sym_BQUOTE] = ACTIONS(2810), [anon_sym_r_DQUOTE] = ACTIONS(2810), [anon_sym_x_DQUOTE] = ACTIONS(2810), [anon_sym_DQUOTE] = ACTIONS(2810), [anon_sym_i_BQUOTE] = ACTIONS(2810), [anon_sym_i_DQUOTE] = ACTIONS(2810), [anon_sym_iq_LBRACE] = ACTIONS(2810), [aux_sym_char_literal_token1] = ACTIONS(2810), [anon_sym_SQUOTE] = ACTIONS(2812), [anon_sym___DATE__] = ACTIONS(2812), [anon_sym___FILE__] = ACTIONS(2812), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2812), [anon_sym___FUNCTION__] = ACTIONS(2812), [anon_sym___LINE__] = ACTIONS(2812), [anon_sym___MODULE__] = ACTIONS(2812), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2812), [anon_sym___TIME__] = ACTIONS(2812), [anon_sym___TIMESTAMP__] = ACTIONS(2812), [anon_sym___VENDOR__] = ACTIONS(2812), [anon_sym___VERSION__] = ACTIONS(2812), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2810), [sym_float_literal] = ACTIONS(2810), [sym__string] = ACTIONS(2810), }, [2296] = { [sym_identifier] = ACTIONS(4636), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4638), [anon_sym_LBRACE] = ACTIONS(4638), [anon_sym_DOT] = ACTIONS(4638), [anon_sym_AMP] = ACTIONS(4638), [anon_sym_DASH] = ACTIONS(4636), [anon_sym_DASH_DASH] = ACTIONS(4638), [anon_sym_PLUS] = ACTIONS(4636), [anon_sym_PLUS_PLUS] = ACTIONS(4638), [anon_sym_BANG] = ACTIONS(4638), [anon_sym_LPAREN] = ACTIONS(4638), [anon_sym_RPAREN] = ACTIONS(4638), [anon_sym_LBRACK] = ACTIONS(4638), [anon_sym_SEMI] = ACTIONS(4638), [anon_sym_DOLLAR] = ACTIONS(4638), [anon_sym_STAR] = ACTIONS(4638), [anon_sym_TILDE] = ACTIONS(4638), [sym_bool] = ACTIONS(4636), [sym_byte] = ACTIONS(4636), [sym_ubyte] = ACTIONS(4636), [sym_char] = ACTIONS(4636), [sym_short] = ACTIONS(4636), [sym_ushort] = ACTIONS(4636), [sym_int] = ACTIONS(4636), [sym_uint] = ACTIONS(4636), [sym_long] = ACTIONS(4636), [sym_ulong] = ACTIONS(4636), [sym_cent] = ACTIONS(4636), [sym_ucent] = ACTIONS(4636), [sym_wchar] = ACTIONS(4636), [sym_dchar] = ACTIONS(4636), [sym_float] = ACTIONS(4636), [sym_double] = ACTIONS(4636), [sym_real] = ACTIONS(4636), [sym_ifloat] = ACTIONS(4636), [sym_idouble] = ACTIONS(4636), [sym_ireal] = ACTIONS(4636), [sym_cfloat] = ACTIONS(4636), [sym_cdouble] = ACTIONS(4636), [sym_creal] = ACTIONS(4636), [sym_size_t] = ACTIONS(4636), [sym_ptrdiff_t] = ACTIONS(4636), [sym_string] = ACTIONS(4636), [sym_cstring] = ACTIONS(4636), [sym_dstring] = ACTIONS(4636), [sym_wstring] = ACTIONS(4636), [sym_noreturn] = ACTIONS(4636), [sym_true] = ACTIONS(4636), [sym_false] = ACTIONS(4636), [sym_null] = ACTIONS(4636), [sym_super] = ACTIONS(4636), [sym_this] = ACTIONS(4636), [sym_assert] = ACTIONS(4636), [sym_auto] = ACTIONS(4636), [sym_cast] = ACTIONS(4636), [sym_catch] = ACTIONS(4636), [sym_const] = ACTIONS(4636), [sym_delegate] = ACTIONS(4636), [sym_delete] = ACTIONS(4636), [sym_do] = ACTIONS(4636), [sym_else] = ACTIONS(4636), [sym_finally] = ACTIONS(4636), [sym_function] = ACTIONS(4636), [sym_immutable] = ACTIONS(4636), [sym_import] = ACTIONS(4636), [sym_in] = ACTIONS(4636), [sym_inout] = ACTIONS(4636), [sym_is] = ACTIONS(4636), [sym_mixin] = ACTIONS(4636), [sym_new] = ACTIONS(4636), [sym_out] = ACTIONS(4636), [sym_ref] = ACTIONS(4636), [sym_shared] = ACTIONS(4636), [sym_throw] = ACTIONS(4636), [sym_typeid] = ACTIONS(4636), [sym_typeof] = ACTIONS(4636), [sym_traits] = ACTIONS(4636), [sym_vector] = ACTIONS(4636), [sym_void] = ACTIONS(4636), [anon_sym_BQUOTE] = ACTIONS(4638), [anon_sym_r_DQUOTE] = ACTIONS(4638), [anon_sym_x_DQUOTE] = ACTIONS(4638), [anon_sym_DQUOTE] = ACTIONS(4638), [anon_sym_i_BQUOTE] = ACTIONS(4638), [anon_sym_i_DQUOTE] = ACTIONS(4638), [anon_sym_iq_LBRACE] = ACTIONS(4638), [aux_sym_char_literal_token1] = ACTIONS(4638), [anon_sym_SQUOTE] = ACTIONS(4636), [anon_sym___DATE__] = ACTIONS(4636), [anon_sym___FILE__] = ACTIONS(4636), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4636), [anon_sym___FUNCTION__] = ACTIONS(4636), [anon_sym___LINE__] = ACTIONS(4636), [anon_sym___MODULE__] = ACTIONS(4636), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4636), [anon_sym___TIME__] = ACTIONS(4636), [anon_sym___TIMESTAMP__] = ACTIONS(4636), [anon_sym___VENDOR__] = ACTIONS(4636), [anon_sym___VERSION__] = ACTIONS(4636), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4638), [sym_float_literal] = ACTIONS(4638), [sym__string] = ACTIONS(4638), }, [2297] = { [sym_identifier] = ACTIONS(4632), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4634), [anon_sym_LBRACE] = ACTIONS(4634), [anon_sym_DOT] = ACTIONS(4634), [anon_sym_AMP] = ACTIONS(4634), [anon_sym_DASH] = ACTIONS(4632), [anon_sym_DASH_DASH] = ACTIONS(4634), [anon_sym_PLUS] = ACTIONS(4632), [anon_sym_PLUS_PLUS] = ACTIONS(4634), [anon_sym_BANG] = ACTIONS(4634), [anon_sym_LPAREN] = ACTIONS(4634), [anon_sym_RPAREN] = ACTIONS(4634), [anon_sym_LBRACK] = ACTIONS(4634), [anon_sym_SEMI] = ACTIONS(4634), [anon_sym_DOLLAR] = ACTIONS(4634), [anon_sym_STAR] = ACTIONS(4634), [anon_sym_TILDE] = ACTIONS(4634), [sym_bool] = ACTIONS(4632), [sym_byte] = ACTIONS(4632), [sym_ubyte] = ACTIONS(4632), [sym_char] = ACTIONS(4632), [sym_short] = ACTIONS(4632), [sym_ushort] = ACTIONS(4632), [sym_int] = ACTIONS(4632), [sym_uint] = ACTIONS(4632), [sym_long] = ACTIONS(4632), [sym_ulong] = ACTIONS(4632), [sym_cent] = ACTIONS(4632), [sym_ucent] = ACTIONS(4632), [sym_wchar] = ACTIONS(4632), [sym_dchar] = ACTIONS(4632), [sym_float] = ACTIONS(4632), [sym_double] = ACTIONS(4632), [sym_real] = ACTIONS(4632), [sym_ifloat] = ACTIONS(4632), [sym_idouble] = ACTIONS(4632), [sym_ireal] = ACTIONS(4632), [sym_cfloat] = ACTIONS(4632), [sym_cdouble] = ACTIONS(4632), [sym_creal] = ACTIONS(4632), [sym_size_t] = ACTIONS(4632), [sym_ptrdiff_t] = ACTIONS(4632), [sym_string] = ACTIONS(4632), [sym_cstring] = ACTIONS(4632), [sym_dstring] = ACTIONS(4632), [sym_wstring] = ACTIONS(4632), [sym_noreturn] = ACTIONS(4632), [sym_true] = ACTIONS(4632), [sym_false] = ACTIONS(4632), [sym_null] = ACTIONS(4632), [sym_super] = ACTIONS(4632), [sym_this] = ACTIONS(4632), [sym_assert] = ACTIONS(4632), [sym_auto] = ACTIONS(4632), [sym_cast] = ACTIONS(4632), [sym_catch] = ACTIONS(4632), [sym_const] = ACTIONS(4632), [sym_delegate] = ACTIONS(4632), [sym_delete] = ACTIONS(4632), [sym_do] = ACTIONS(4632), [sym_else] = ACTIONS(4632), [sym_finally] = ACTIONS(4632), [sym_function] = ACTIONS(4632), [sym_immutable] = ACTIONS(4632), [sym_import] = ACTIONS(4632), [sym_in] = ACTIONS(4632), [sym_inout] = ACTIONS(4632), [sym_is] = ACTIONS(4632), [sym_mixin] = ACTIONS(4632), [sym_new] = ACTIONS(4632), [sym_out] = ACTIONS(4632), [sym_ref] = ACTIONS(4632), [sym_shared] = ACTIONS(4632), [sym_throw] = ACTIONS(4632), [sym_typeid] = ACTIONS(4632), [sym_typeof] = ACTIONS(4632), [sym_traits] = ACTIONS(4632), [sym_vector] = ACTIONS(4632), [sym_void] = ACTIONS(4632), [anon_sym_BQUOTE] = ACTIONS(4634), [anon_sym_r_DQUOTE] = ACTIONS(4634), [anon_sym_x_DQUOTE] = ACTIONS(4634), [anon_sym_DQUOTE] = ACTIONS(4634), [anon_sym_i_BQUOTE] = ACTIONS(4634), [anon_sym_i_DQUOTE] = ACTIONS(4634), [anon_sym_iq_LBRACE] = ACTIONS(4634), [aux_sym_char_literal_token1] = ACTIONS(4634), [anon_sym_SQUOTE] = ACTIONS(4632), [anon_sym___DATE__] = ACTIONS(4632), [anon_sym___FILE__] = ACTIONS(4632), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4632), [anon_sym___FUNCTION__] = ACTIONS(4632), [anon_sym___LINE__] = ACTIONS(4632), [anon_sym___MODULE__] = ACTIONS(4632), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4632), [anon_sym___TIME__] = ACTIONS(4632), [anon_sym___TIMESTAMP__] = ACTIONS(4632), [anon_sym___VENDOR__] = ACTIONS(4632), [anon_sym___VERSION__] = ACTIONS(4632), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4634), [sym_float_literal] = ACTIONS(4634), [sym__string] = ACTIONS(4634), }, [2298] = { [sym_identifier] = ACTIONS(4628), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4630), [anon_sym_LBRACE] = ACTIONS(4630), [anon_sym_DOT] = ACTIONS(4630), [anon_sym_AMP] = ACTIONS(4630), [anon_sym_DASH] = ACTIONS(4628), [anon_sym_DASH_DASH] = ACTIONS(4630), [anon_sym_PLUS] = ACTIONS(4628), [anon_sym_PLUS_PLUS] = ACTIONS(4630), [anon_sym_BANG] = ACTIONS(4630), [anon_sym_LPAREN] = ACTIONS(4630), [anon_sym_RPAREN] = ACTIONS(4630), [anon_sym_LBRACK] = ACTIONS(4630), [anon_sym_SEMI] = ACTIONS(4630), [anon_sym_DOLLAR] = ACTIONS(4630), [anon_sym_STAR] = ACTIONS(4630), [anon_sym_TILDE] = ACTIONS(4630), [sym_bool] = ACTIONS(4628), [sym_byte] = ACTIONS(4628), [sym_ubyte] = ACTIONS(4628), [sym_char] = ACTIONS(4628), [sym_short] = ACTIONS(4628), [sym_ushort] = ACTIONS(4628), [sym_int] = ACTIONS(4628), [sym_uint] = ACTIONS(4628), [sym_long] = ACTIONS(4628), [sym_ulong] = ACTIONS(4628), [sym_cent] = ACTIONS(4628), [sym_ucent] = ACTIONS(4628), [sym_wchar] = ACTIONS(4628), [sym_dchar] = ACTIONS(4628), [sym_float] = ACTIONS(4628), [sym_double] = ACTIONS(4628), [sym_real] = ACTIONS(4628), [sym_ifloat] = ACTIONS(4628), [sym_idouble] = ACTIONS(4628), [sym_ireal] = ACTIONS(4628), [sym_cfloat] = ACTIONS(4628), [sym_cdouble] = ACTIONS(4628), [sym_creal] = ACTIONS(4628), [sym_size_t] = ACTIONS(4628), [sym_ptrdiff_t] = ACTIONS(4628), [sym_string] = ACTIONS(4628), [sym_cstring] = ACTIONS(4628), [sym_dstring] = ACTIONS(4628), [sym_wstring] = ACTIONS(4628), [sym_noreturn] = ACTIONS(4628), [sym_true] = ACTIONS(4628), [sym_false] = ACTIONS(4628), [sym_null] = ACTIONS(4628), [sym_super] = ACTIONS(4628), [sym_this] = ACTIONS(4628), [sym_assert] = ACTIONS(4628), [sym_auto] = ACTIONS(4628), [sym_cast] = ACTIONS(4628), [sym_catch] = ACTIONS(4628), [sym_const] = ACTIONS(4628), [sym_delegate] = ACTIONS(4628), [sym_delete] = ACTIONS(4628), [sym_do] = ACTIONS(4628), [sym_else] = ACTIONS(4628), [sym_finally] = ACTIONS(4628), [sym_function] = ACTIONS(4628), [sym_immutable] = ACTIONS(4628), [sym_import] = ACTIONS(4628), [sym_in] = ACTIONS(4628), [sym_inout] = ACTIONS(4628), [sym_is] = ACTIONS(4628), [sym_mixin] = ACTIONS(4628), [sym_new] = ACTIONS(4628), [sym_out] = ACTIONS(4628), [sym_ref] = ACTIONS(4628), [sym_shared] = ACTIONS(4628), [sym_throw] = ACTIONS(4628), [sym_typeid] = ACTIONS(4628), [sym_typeof] = ACTIONS(4628), [sym_traits] = ACTIONS(4628), [sym_vector] = ACTIONS(4628), [sym_void] = ACTIONS(4628), [anon_sym_BQUOTE] = ACTIONS(4630), [anon_sym_r_DQUOTE] = ACTIONS(4630), [anon_sym_x_DQUOTE] = ACTIONS(4630), [anon_sym_DQUOTE] = ACTIONS(4630), [anon_sym_i_BQUOTE] = ACTIONS(4630), [anon_sym_i_DQUOTE] = ACTIONS(4630), [anon_sym_iq_LBRACE] = ACTIONS(4630), [aux_sym_char_literal_token1] = ACTIONS(4630), [anon_sym_SQUOTE] = ACTIONS(4628), [anon_sym___DATE__] = ACTIONS(4628), [anon_sym___FILE__] = ACTIONS(4628), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4628), [anon_sym___FUNCTION__] = ACTIONS(4628), [anon_sym___LINE__] = ACTIONS(4628), [anon_sym___MODULE__] = ACTIONS(4628), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4628), [anon_sym___TIME__] = ACTIONS(4628), [anon_sym___TIMESTAMP__] = ACTIONS(4628), [anon_sym___VENDOR__] = ACTIONS(4628), [anon_sym___VERSION__] = ACTIONS(4628), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4630), [sym_float_literal] = ACTIONS(4630), [sym__string] = ACTIONS(4630), }, [2299] = { [sym_identifier] = ACTIONS(4888), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4890), [anon_sym_LBRACE] = ACTIONS(4890), [anon_sym_DOT] = ACTIONS(4890), [anon_sym_AMP] = ACTIONS(4890), [anon_sym_DASH] = ACTIONS(4888), [anon_sym_DASH_DASH] = ACTIONS(4890), [anon_sym_PLUS] = ACTIONS(4888), [anon_sym_PLUS_PLUS] = ACTIONS(4890), [anon_sym_BANG] = ACTIONS(4890), [anon_sym_LPAREN] = ACTIONS(4890), [anon_sym_RPAREN] = ACTIONS(4890), [anon_sym_LBRACK] = ACTIONS(4890), [anon_sym_SEMI] = ACTIONS(4890), [anon_sym_DOLLAR] = ACTIONS(4890), [anon_sym_STAR] = ACTIONS(4890), [anon_sym_TILDE] = ACTIONS(4890), [sym_bool] = ACTIONS(4888), [sym_byte] = ACTIONS(4888), [sym_ubyte] = ACTIONS(4888), [sym_char] = ACTIONS(4888), [sym_short] = ACTIONS(4888), [sym_ushort] = ACTIONS(4888), [sym_int] = ACTIONS(4888), [sym_uint] = ACTIONS(4888), [sym_long] = ACTIONS(4888), [sym_ulong] = ACTIONS(4888), [sym_cent] = ACTIONS(4888), [sym_ucent] = ACTIONS(4888), [sym_wchar] = ACTIONS(4888), [sym_dchar] = ACTIONS(4888), [sym_float] = ACTIONS(4888), [sym_double] = ACTIONS(4888), [sym_real] = ACTIONS(4888), [sym_ifloat] = ACTIONS(4888), [sym_idouble] = ACTIONS(4888), [sym_ireal] = ACTIONS(4888), [sym_cfloat] = ACTIONS(4888), [sym_cdouble] = ACTIONS(4888), [sym_creal] = ACTIONS(4888), [sym_size_t] = ACTIONS(4888), [sym_ptrdiff_t] = ACTIONS(4888), [sym_string] = ACTIONS(4888), [sym_cstring] = ACTIONS(4888), [sym_dstring] = ACTIONS(4888), [sym_wstring] = ACTIONS(4888), [sym_noreturn] = ACTIONS(4888), [sym_true] = ACTIONS(4888), [sym_false] = ACTIONS(4888), [sym_null] = ACTIONS(4888), [sym_super] = ACTIONS(4888), [sym_this] = ACTIONS(4888), [sym_assert] = ACTIONS(4888), [sym_auto] = ACTIONS(4888), [sym_cast] = ACTIONS(4888), [sym_catch] = ACTIONS(4888), [sym_const] = ACTIONS(4888), [sym_delegate] = ACTIONS(4888), [sym_delete] = ACTIONS(4888), [sym_do] = ACTIONS(4888), [sym_else] = ACTIONS(4888), [sym_finally] = ACTIONS(4888), [sym_function] = ACTIONS(4888), [sym_immutable] = ACTIONS(4888), [sym_import] = ACTIONS(4888), [sym_in] = ACTIONS(4888), [sym_inout] = ACTIONS(4888), [sym_is] = ACTIONS(4888), [sym_mixin] = ACTIONS(4888), [sym_new] = ACTIONS(4888), [sym_out] = ACTIONS(4888), [sym_ref] = ACTIONS(4888), [sym_shared] = ACTIONS(4888), [sym_throw] = ACTIONS(4888), [sym_typeid] = ACTIONS(4888), [sym_typeof] = ACTIONS(4888), [sym_traits] = ACTIONS(4888), [sym_vector] = ACTIONS(4888), [sym_void] = ACTIONS(4888), [anon_sym_BQUOTE] = ACTIONS(4890), [anon_sym_r_DQUOTE] = ACTIONS(4890), [anon_sym_x_DQUOTE] = ACTIONS(4890), [anon_sym_DQUOTE] = ACTIONS(4890), [anon_sym_i_BQUOTE] = ACTIONS(4890), [anon_sym_i_DQUOTE] = ACTIONS(4890), [anon_sym_iq_LBRACE] = ACTIONS(4890), [aux_sym_char_literal_token1] = ACTIONS(4890), [anon_sym_SQUOTE] = ACTIONS(4888), [anon_sym___DATE__] = ACTIONS(4888), [anon_sym___FILE__] = ACTIONS(4888), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4888), [anon_sym___FUNCTION__] = ACTIONS(4888), [anon_sym___LINE__] = ACTIONS(4888), [anon_sym___MODULE__] = ACTIONS(4888), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4888), [anon_sym___TIME__] = ACTIONS(4888), [anon_sym___TIMESTAMP__] = ACTIONS(4888), [anon_sym___VENDOR__] = ACTIONS(4888), [anon_sym___VERSION__] = ACTIONS(4888), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4890), [sym_float_literal] = ACTIONS(4890), [sym__string] = ACTIONS(4890), }, [2300] = { [sym_identifier] = ACTIONS(4624), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4626), [anon_sym_LBRACE] = ACTIONS(4626), [anon_sym_DOT] = ACTIONS(4626), [anon_sym_AMP] = ACTIONS(4626), [anon_sym_DASH] = ACTIONS(4624), [anon_sym_DASH_DASH] = ACTIONS(4626), [anon_sym_PLUS] = ACTIONS(4624), [anon_sym_PLUS_PLUS] = ACTIONS(4626), [anon_sym_BANG] = ACTIONS(4626), [anon_sym_LPAREN] = ACTIONS(4626), [anon_sym_RPAREN] = ACTIONS(4626), [anon_sym_LBRACK] = ACTIONS(4626), [anon_sym_SEMI] = ACTIONS(4626), [anon_sym_DOLLAR] = ACTIONS(4626), [anon_sym_STAR] = ACTIONS(4626), [anon_sym_TILDE] = ACTIONS(4626), [sym_bool] = ACTIONS(4624), [sym_byte] = ACTIONS(4624), [sym_ubyte] = ACTIONS(4624), [sym_char] = ACTIONS(4624), [sym_short] = ACTIONS(4624), [sym_ushort] = ACTIONS(4624), [sym_int] = ACTIONS(4624), [sym_uint] = ACTIONS(4624), [sym_long] = ACTIONS(4624), [sym_ulong] = ACTIONS(4624), [sym_cent] = ACTIONS(4624), [sym_ucent] = ACTIONS(4624), [sym_wchar] = ACTIONS(4624), [sym_dchar] = ACTIONS(4624), [sym_float] = ACTIONS(4624), [sym_double] = ACTIONS(4624), [sym_real] = ACTIONS(4624), [sym_ifloat] = ACTIONS(4624), [sym_idouble] = ACTIONS(4624), [sym_ireal] = ACTIONS(4624), [sym_cfloat] = ACTIONS(4624), [sym_cdouble] = ACTIONS(4624), [sym_creal] = ACTIONS(4624), [sym_size_t] = ACTIONS(4624), [sym_ptrdiff_t] = ACTIONS(4624), [sym_string] = ACTIONS(4624), [sym_cstring] = ACTIONS(4624), [sym_dstring] = ACTIONS(4624), [sym_wstring] = ACTIONS(4624), [sym_noreturn] = ACTIONS(4624), [sym_true] = ACTIONS(4624), [sym_false] = ACTIONS(4624), [sym_null] = ACTIONS(4624), [sym_super] = ACTIONS(4624), [sym_this] = ACTIONS(4624), [sym_assert] = ACTIONS(4624), [sym_auto] = ACTIONS(4624), [sym_cast] = ACTIONS(4624), [sym_catch] = ACTIONS(4624), [sym_const] = ACTIONS(4624), [sym_delegate] = ACTIONS(4624), [sym_delete] = ACTIONS(4624), [sym_do] = ACTIONS(4624), [sym_else] = ACTIONS(4624), [sym_finally] = ACTIONS(4624), [sym_function] = ACTIONS(4624), [sym_immutable] = ACTIONS(4624), [sym_import] = ACTIONS(4624), [sym_in] = ACTIONS(4624), [sym_inout] = ACTIONS(4624), [sym_is] = ACTIONS(4624), [sym_mixin] = ACTIONS(4624), [sym_new] = ACTIONS(4624), [sym_out] = ACTIONS(4624), [sym_ref] = ACTIONS(4624), [sym_shared] = ACTIONS(4624), [sym_throw] = ACTIONS(4624), [sym_typeid] = ACTIONS(4624), [sym_typeof] = ACTIONS(4624), [sym_traits] = ACTIONS(4624), [sym_vector] = ACTIONS(4624), [sym_void] = ACTIONS(4624), [anon_sym_BQUOTE] = ACTIONS(4626), [anon_sym_r_DQUOTE] = ACTIONS(4626), [anon_sym_x_DQUOTE] = ACTIONS(4626), [anon_sym_DQUOTE] = ACTIONS(4626), [anon_sym_i_BQUOTE] = ACTIONS(4626), [anon_sym_i_DQUOTE] = ACTIONS(4626), [anon_sym_iq_LBRACE] = ACTIONS(4626), [aux_sym_char_literal_token1] = ACTIONS(4626), [anon_sym_SQUOTE] = ACTIONS(4624), [anon_sym___DATE__] = ACTIONS(4624), [anon_sym___FILE__] = ACTIONS(4624), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4624), [anon_sym___FUNCTION__] = ACTIONS(4624), [anon_sym___LINE__] = ACTIONS(4624), [anon_sym___MODULE__] = ACTIONS(4624), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4624), [anon_sym___TIME__] = ACTIONS(4624), [anon_sym___TIMESTAMP__] = ACTIONS(4624), [anon_sym___VENDOR__] = ACTIONS(4624), [anon_sym___VERSION__] = ACTIONS(4624), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4626), [sym_float_literal] = ACTIONS(4626), [sym__string] = ACTIONS(4626), }, [2301] = { [sym_identifier] = ACTIONS(4896), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4898), [anon_sym_LBRACE] = ACTIONS(4898), [anon_sym_DOT] = ACTIONS(4898), [anon_sym_AMP] = ACTIONS(4898), [anon_sym_DASH] = ACTIONS(4896), [anon_sym_DASH_DASH] = ACTIONS(4898), [anon_sym_PLUS] = ACTIONS(4896), [anon_sym_PLUS_PLUS] = ACTIONS(4898), [anon_sym_BANG] = ACTIONS(4898), [anon_sym_LPAREN] = ACTIONS(4898), [anon_sym_RPAREN] = ACTIONS(4898), [anon_sym_LBRACK] = ACTIONS(4898), [anon_sym_SEMI] = ACTIONS(4898), [anon_sym_DOLLAR] = ACTIONS(4898), [anon_sym_STAR] = ACTIONS(4898), [anon_sym_TILDE] = ACTIONS(4898), [sym_bool] = ACTIONS(4896), [sym_byte] = ACTIONS(4896), [sym_ubyte] = ACTIONS(4896), [sym_char] = ACTIONS(4896), [sym_short] = ACTIONS(4896), [sym_ushort] = ACTIONS(4896), [sym_int] = ACTIONS(4896), [sym_uint] = ACTIONS(4896), [sym_long] = ACTIONS(4896), [sym_ulong] = ACTIONS(4896), [sym_cent] = ACTIONS(4896), [sym_ucent] = ACTIONS(4896), [sym_wchar] = ACTIONS(4896), [sym_dchar] = ACTIONS(4896), [sym_float] = ACTIONS(4896), [sym_double] = ACTIONS(4896), [sym_real] = ACTIONS(4896), [sym_ifloat] = ACTIONS(4896), [sym_idouble] = ACTIONS(4896), [sym_ireal] = ACTIONS(4896), [sym_cfloat] = ACTIONS(4896), [sym_cdouble] = ACTIONS(4896), [sym_creal] = ACTIONS(4896), [sym_size_t] = ACTIONS(4896), [sym_ptrdiff_t] = ACTIONS(4896), [sym_string] = ACTIONS(4896), [sym_cstring] = ACTIONS(4896), [sym_dstring] = ACTIONS(4896), [sym_wstring] = ACTIONS(4896), [sym_noreturn] = ACTIONS(4896), [sym_true] = ACTIONS(4896), [sym_false] = ACTIONS(4896), [sym_null] = ACTIONS(4896), [sym_super] = ACTIONS(4896), [sym_this] = ACTIONS(4896), [sym_assert] = ACTIONS(4896), [sym_auto] = ACTIONS(4896), [sym_cast] = ACTIONS(4896), [sym_catch] = ACTIONS(4896), [sym_const] = ACTIONS(4896), [sym_delegate] = ACTIONS(4896), [sym_delete] = ACTIONS(4896), [sym_do] = ACTIONS(4896), [sym_else] = ACTIONS(4896), [sym_finally] = ACTIONS(4896), [sym_function] = ACTIONS(4896), [sym_immutable] = ACTIONS(4896), [sym_import] = ACTIONS(4896), [sym_in] = ACTIONS(4896), [sym_inout] = ACTIONS(4896), [sym_is] = ACTIONS(4896), [sym_mixin] = ACTIONS(4896), [sym_new] = ACTIONS(4896), [sym_out] = ACTIONS(4896), [sym_ref] = ACTIONS(4896), [sym_shared] = ACTIONS(4896), [sym_throw] = ACTIONS(4896), [sym_typeid] = ACTIONS(4896), [sym_typeof] = ACTIONS(4896), [sym_traits] = ACTIONS(4896), [sym_vector] = ACTIONS(4896), [sym_void] = ACTIONS(4896), [anon_sym_BQUOTE] = ACTIONS(4898), [anon_sym_r_DQUOTE] = ACTIONS(4898), [anon_sym_x_DQUOTE] = ACTIONS(4898), [anon_sym_DQUOTE] = ACTIONS(4898), [anon_sym_i_BQUOTE] = ACTIONS(4898), [anon_sym_i_DQUOTE] = ACTIONS(4898), [anon_sym_iq_LBRACE] = ACTIONS(4898), [aux_sym_char_literal_token1] = ACTIONS(4898), [anon_sym_SQUOTE] = ACTIONS(4896), [anon_sym___DATE__] = ACTIONS(4896), [anon_sym___FILE__] = ACTIONS(4896), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4896), [anon_sym___FUNCTION__] = ACTIONS(4896), [anon_sym___LINE__] = ACTIONS(4896), [anon_sym___MODULE__] = ACTIONS(4896), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4896), [anon_sym___TIME__] = ACTIONS(4896), [anon_sym___TIMESTAMP__] = ACTIONS(4896), [anon_sym___VENDOR__] = ACTIONS(4896), [anon_sym___VERSION__] = ACTIONS(4896), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4898), [sym_float_literal] = ACTIONS(4898), [sym__string] = ACTIONS(4898), }, [2302] = { [sym_identifier] = ACTIONS(4900), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4902), [anon_sym_LBRACE] = ACTIONS(4902), [anon_sym_DOT] = ACTIONS(4902), [anon_sym_AMP] = ACTIONS(4902), [anon_sym_DASH] = ACTIONS(4900), [anon_sym_DASH_DASH] = ACTIONS(4902), [anon_sym_PLUS] = ACTIONS(4900), [anon_sym_PLUS_PLUS] = ACTIONS(4902), [anon_sym_BANG] = ACTIONS(4902), [anon_sym_LPAREN] = ACTIONS(4902), [anon_sym_RPAREN] = ACTIONS(4902), [anon_sym_LBRACK] = ACTIONS(4902), [anon_sym_SEMI] = ACTIONS(4902), [anon_sym_DOLLAR] = ACTIONS(4902), [anon_sym_STAR] = ACTIONS(4902), [anon_sym_TILDE] = ACTIONS(4902), [sym_bool] = ACTIONS(4900), [sym_byte] = ACTIONS(4900), [sym_ubyte] = ACTIONS(4900), [sym_char] = ACTIONS(4900), [sym_short] = ACTIONS(4900), [sym_ushort] = ACTIONS(4900), [sym_int] = ACTIONS(4900), [sym_uint] = ACTIONS(4900), [sym_long] = ACTIONS(4900), [sym_ulong] = ACTIONS(4900), [sym_cent] = ACTIONS(4900), [sym_ucent] = ACTIONS(4900), [sym_wchar] = ACTIONS(4900), [sym_dchar] = ACTIONS(4900), [sym_float] = ACTIONS(4900), [sym_double] = ACTIONS(4900), [sym_real] = ACTIONS(4900), [sym_ifloat] = ACTIONS(4900), [sym_idouble] = ACTIONS(4900), [sym_ireal] = ACTIONS(4900), [sym_cfloat] = ACTIONS(4900), [sym_cdouble] = ACTIONS(4900), [sym_creal] = ACTIONS(4900), [sym_size_t] = ACTIONS(4900), [sym_ptrdiff_t] = ACTIONS(4900), [sym_string] = ACTIONS(4900), [sym_cstring] = ACTIONS(4900), [sym_dstring] = ACTIONS(4900), [sym_wstring] = ACTIONS(4900), [sym_noreturn] = ACTIONS(4900), [sym_true] = ACTIONS(4900), [sym_false] = ACTIONS(4900), [sym_null] = ACTIONS(4900), [sym_super] = ACTIONS(4900), [sym_this] = ACTIONS(4900), [sym_assert] = ACTIONS(4900), [sym_auto] = ACTIONS(4900), [sym_cast] = ACTIONS(4900), [sym_catch] = ACTIONS(4900), [sym_const] = ACTIONS(4900), [sym_delegate] = ACTIONS(4900), [sym_delete] = ACTIONS(4900), [sym_do] = ACTIONS(4900), [sym_else] = ACTIONS(4900), [sym_finally] = ACTIONS(4900), [sym_function] = ACTIONS(4900), [sym_immutable] = ACTIONS(4900), [sym_import] = ACTIONS(4900), [sym_in] = ACTIONS(4900), [sym_inout] = ACTIONS(4900), [sym_is] = ACTIONS(4900), [sym_mixin] = ACTIONS(4900), [sym_new] = ACTIONS(4900), [sym_out] = ACTIONS(4900), [sym_ref] = ACTIONS(4900), [sym_shared] = ACTIONS(4900), [sym_throw] = ACTIONS(4900), [sym_typeid] = ACTIONS(4900), [sym_typeof] = ACTIONS(4900), [sym_traits] = ACTIONS(4900), [sym_vector] = ACTIONS(4900), [sym_void] = ACTIONS(4900), [anon_sym_BQUOTE] = ACTIONS(4902), [anon_sym_r_DQUOTE] = ACTIONS(4902), [anon_sym_x_DQUOTE] = ACTIONS(4902), [anon_sym_DQUOTE] = ACTIONS(4902), [anon_sym_i_BQUOTE] = ACTIONS(4902), [anon_sym_i_DQUOTE] = ACTIONS(4902), [anon_sym_iq_LBRACE] = ACTIONS(4902), [aux_sym_char_literal_token1] = ACTIONS(4902), [anon_sym_SQUOTE] = ACTIONS(4900), [anon_sym___DATE__] = ACTIONS(4900), [anon_sym___FILE__] = ACTIONS(4900), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4900), [anon_sym___FUNCTION__] = ACTIONS(4900), [anon_sym___LINE__] = ACTIONS(4900), [anon_sym___MODULE__] = ACTIONS(4900), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4900), [anon_sym___TIME__] = ACTIONS(4900), [anon_sym___TIMESTAMP__] = ACTIONS(4900), [anon_sym___VENDOR__] = ACTIONS(4900), [anon_sym___VERSION__] = ACTIONS(4900), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4902), [sym_float_literal] = ACTIONS(4902), [sym__string] = ACTIONS(4902), }, [2303] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(4926), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_AMP] = ACTIONS(4618), [anon_sym_DASH] = ACTIONS(4616), [anon_sym_DASH_DASH] = ACTIONS(4618), [anon_sym_PLUS] = ACTIONS(4616), [anon_sym_PLUS_PLUS] = ACTIONS(4618), [anon_sym_BANG] = ACTIONS(4618), [anon_sym_LPAREN] = ACTIONS(4618), [anon_sym_RPAREN] = ACTIONS(4618), [anon_sym_LBRACK] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4926), [anon_sym_DOLLAR] = ACTIONS(4618), [anon_sym_STAR] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_true] = ACTIONS(4616), [sym_false] = ACTIONS(4616), [sym_null] = ACTIONS(4616), [sym_super] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_assert] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_cast] = ACTIONS(4616), [sym_catch] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_delegate] = ACTIONS(4616), [sym_delete] = ACTIONS(4616), [sym_do] = ACTIONS(4929), [sym_else] = ACTIONS(4616), [sym_finally] = ACTIONS(4616), [sym_function] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(4929), [sym_inout] = ACTIONS(4616), [sym_is] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_new] = ACTIONS(4616), [sym_out] = ACTIONS(4929), [sym_ref] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_throw] = ACTIONS(4616), [sym_typeid] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [anon_sym_BQUOTE] = ACTIONS(4618), [anon_sym_r_DQUOTE] = ACTIONS(4618), [anon_sym_x_DQUOTE] = ACTIONS(4618), [anon_sym_DQUOTE] = ACTIONS(4618), [anon_sym_i_BQUOTE] = ACTIONS(4618), [anon_sym_i_DQUOTE] = ACTIONS(4618), [anon_sym_iq_LBRACE] = ACTIONS(4618), [aux_sym_char_literal_token1] = ACTIONS(4618), [anon_sym_SQUOTE] = ACTIONS(4616), [anon_sym___DATE__] = ACTIONS(4616), [anon_sym___FILE__] = ACTIONS(4616), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4616), [anon_sym___FUNCTION__] = ACTIONS(4616), [anon_sym___LINE__] = ACTIONS(4616), [anon_sym___MODULE__] = ACTIONS(4616), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4616), [anon_sym___TIME__] = ACTIONS(4616), [anon_sym___TIMESTAMP__] = ACTIONS(4616), [anon_sym___VENDOR__] = ACTIONS(4616), [anon_sym___VERSION__] = ACTIONS(4616), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4618), [sym_float_literal] = ACTIONS(4618), [sym__string] = ACTIONS(4618), }, [2304] = { [sym_identifier] = ACTIONS(4904), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4906), [anon_sym_LBRACE] = ACTIONS(4906), [anon_sym_DOT] = ACTIONS(4906), [anon_sym_AMP] = ACTIONS(4906), [anon_sym_DASH] = ACTIONS(4904), [anon_sym_DASH_DASH] = ACTIONS(4906), [anon_sym_PLUS] = ACTIONS(4904), [anon_sym_PLUS_PLUS] = ACTIONS(4906), [anon_sym_BANG] = ACTIONS(4906), [anon_sym_LPAREN] = ACTIONS(4906), [anon_sym_RPAREN] = ACTIONS(4906), [anon_sym_LBRACK] = ACTIONS(4906), [anon_sym_SEMI] = ACTIONS(4906), [anon_sym_DOLLAR] = ACTIONS(4906), [anon_sym_STAR] = ACTIONS(4906), [anon_sym_TILDE] = ACTIONS(4906), [sym_bool] = ACTIONS(4904), [sym_byte] = ACTIONS(4904), [sym_ubyte] = ACTIONS(4904), [sym_char] = ACTIONS(4904), [sym_short] = ACTIONS(4904), [sym_ushort] = ACTIONS(4904), [sym_int] = ACTIONS(4904), [sym_uint] = ACTIONS(4904), [sym_long] = ACTIONS(4904), [sym_ulong] = ACTIONS(4904), [sym_cent] = ACTIONS(4904), [sym_ucent] = ACTIONS(4904), [sym_wchar] = ACTIONS(4904), [sym_dchar] = ACTIONS(4904), [sym_float] = ACTIONS(4904), [sym_double] = ACTIONS(4904), [sym_real] = ACTIONS(4904), [sym_ifloat] = ACTIONS(4904), [sym_idouble] = ACTIONS(4904), [sym_ireal] = ACTIONS(4904), [sym_cfloat] = ACTIONS(4904), [sym_cdouble] = ACTIONS(4904), [sym_creal] = ACTIONS(4904), [sym_size_t] = ACTIONS(4904), [sym_ptrdiff_t] = ACTIONS(4904), [sym_string] = ACTIONS(4904), [sym_cstring] = ACTIONS(4904), [sym_dstring] = ACTIONS(4904), [sym_wstring] = ACTIONS(4904), [sym_noreturn] = ACTIONS(4904), [sym_true] = ACTIONS(4904), [sym_false] = ACTIONS(4904), [sym_null] = ACTIONS(4904), [sym_super] = ACTIONS(4904), [sym_this] = ACTIONS(4904), [sym_assert] = ACTIONS(4904), [sym_auto] = ACTIONS(4904), [sym_cast] = ACTIONS(4904), [sym_catch] = ACTIONS(4904), [sym_const] = ACTIONS(4904), [sym_delegate] = ACTIONS(4904), [sym_delete] = ACTIONS(4904), [sym_do] = ACTIONS(4904), [sym_else] = ACTIONS(4904), [sym_finally] = ACTIONS(4904), [sym_function] = ACTIONS(4904), [sym_immutable] = ACTIONS(4904), [sym_import] = ACTIONS(4904), [sym_in] = ACTIONS(4904), [sym_inout] = ACTIONS(4904), [sym_is] = ACTIONS(4904), [sym_mixin] = ACTIONS(4904), [sym_new] = ACTIONS(4904), [sym_out] = ACTIONS(4904), [sym_ref] = ACTIONS(4904), [sym_shared] = ACTIONS(4904), [sym_throw] = ACTIONS(4904), [sym_typeid] = ACTIONS(4904), [sym_typeof] = ACTIONS(4904), [sym_traits] = ACTIONS(4904), [sym_vector] = ACTIONS(4904), [sym_void] = ACTIONS(4904), [anon_sym_BQUOTE] = ACTIONS(4906), [anon_sym_r_DQUOTE] = ACTIONS(4906), [anon_sym_x_DQUOTE] = ACTIONS(4906), [anon_sym_DQUOTE] = ACTIONS(4906), [anon_sym_i_BQUOTE] = ACTIONS(4906), [anon_sym_i_DQUOTE] = ACTIONS(4906), [anon_sym_iq_LBRACE] = ACTIONS(4906), [aux_sym_char_literal_token1] = ACTIONS(4906), [anon_sym_SQUOTE] = ACTIONS(4904), [anon_sym___DATE__] = ACTIONS(4904), [anon_sym___FILE__] = ACTIONS(4904), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4904), [anon_sym___FUNCTION__] = ACTIONS(4904), [anon_sym___LINE__] = ACTIONS(4904), [anon_sym___MODULE__] = ACTIONS(4904), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4904), [anon_sym___TIME__] = ACTIONS(4904), [anon_sym___TIMESTAMP__] = ACTIONS(4904), [anon_sym___VENDOR__] = ACTIONS(4904), [anon_sym___VERSION__] = ACTIONS(4904), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4906), [sym_float_literal] = ACTIONS(4906), [sym__string] = ACTIONS(4906), }, [2305] = { [sym_identifier] = ACTIONS(4912), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4914), [anon_sym_LBRACE] = ACTIONS(4914), [anon_sym_DOT] = ACTIONS(4914), [anon_sym_AMP] = ACTIONS(4914), [anon_sym_DASH] = ACTIONS(4912), [anon_sym_DASH_DASH] = ACTIONS(4914), [anon_sym_PLUS] = ACTIONS(4912), [anon_sym_PLUS_PLUS] = ACTIONS(4914), [anon_sym_BANG] = ACTIONS(4914), [anon_sym_LPAREN] = ACTIONS(4914), [anon_sym_RPAREN] = ACTIONS(4914), [anon_sym_LBRACK] = ACTIONS(4914), [anon_sym_SEMI] = ACTIONS(4914), [anon_sym_DOLLAR] = ACTIONS(4914), [anon_sym_STAR] = ACTIONS(4914), [anon_sym_TILDE] = ACTIONS(4914), [sym_bool] = ACTIONS(4912), [sym_byte] = ACTIONS(4912), [sym_ubyte] = ACTIONS(4912), [sym_char] = ACTIONS(4912), [sym_short] = ACTIONS(4912), [sym_ushort] = ACTIONS(4912), [sym_int] = ACTIONS(4912), [sym_uint] = ACTIONS(4912), [sym_long] = ACTIONS(4912), [sym_ulong] = ACTIONS(4912), [sym_cent] = ACTIONS(4912), [sym_ucent] = ACTIONS(4912), [sym_wchar] = ACTIONS(4912), [sym_dchar] = ACTIONS(4912), [sym_float] = ACTIONS(4912), [sym_double] = ACTIONS(4912), [sym_real] = ACTIONS(4912), [sym_ifloat] = ACTIONS(4912), [sym_idouble] = ACTIONS(4912), [sym_ireal] = ACTIONS(4912), [sym_cfloat] = ACTIONS(4912), [sym_cdouble] = ACTIONS(4912), [sym_creal] = ACTIONS(4912), [sym_size_t] = ACTIONS(4912), [sym_ptrdiff_t] = ACTIONS(4912), [sym_string] = ACTIONS(4912), [sym_cstring] = ACTIONS(4912), [sym_dstring] = ACTIONS(4912), [sym_wstring] = ACTIONS(4912), [sym_noreturn] = ACTIONS(4912), [sym_true] = ACTIONS(4912), [sym_false] = ACTIONS(4912), [sym_null] = ACTIONS(4912), [sym_super] = ACTIONS(4912), [sym_this] = ACTIONS(4912), [sym_assert] = ACTIONS(4912), [sym_auto] = ACTIONS(4912), [sym_cast] = ACTIONS(4912), [sym_catch] = ACTIONS(4912), [sym_const] = ACTIONS(4912), [sym_delegate] = ACTIONS(4912), [sym_delete] = ACTIONS(4912), [sym_do] = ACTIONS(4912), [sym_else] = ACTIONS(4912), [sym_finally] = ACTIONS(4912), [sym_function] = ACTIONS(4912), [sym_immutable] = ACTIONS(4912), [sym_import] = ACTIONS(4912), [sym_in] = ACTIONS(4912), [sym_inout] = ACTIONS(4912), [sym_is] = ACTIONS(4912), [sym_mixin] = ACTIONS(4912), [sym_new] = ACTIONS(4912), [sym_out] = ACTIONS(4912), [sym_ref] = ACTIONS(4912), [sym_shared] = ACTIONS(4912), [sym_throw] = ACTIONS(4912), [sym_typeid] = ACTIONS(4912), [sym_typeof] = ACTIONS(4912), [sym_traits] = ACTIONS(4912), [sym_vector] = ACTIONS(4912), [sym_void] = ACTIONS(4912), [anon_sym_BQUOTE] = ACTIONS(4914), [anon_sym_r_DQUOTE] = ACTIONS(4914), [anon_sym_x_DQUOTE] = ACTIONS(4914), [anon_sym_DQUOTE] = ACTIONS(4914), [anon_sym_i_BQUOTE] = ACTIONS(4914), [anon_sym_i_DQUOTE] = ACTIONS(4914), [anon_sym_iq_LBRACE] = ACTIONS(4914), [aux_sym_char_literal_token1] = ACTIONS(4914), [anon_sym_SQUOTE] = ACTIONS(4912), [anon_sym___DATE__] = ACTIONS(4912), [anon_sym___FILE__] = ACTIONS(4912), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4912), [anon_sym___FUNCTION__] = ACTIONS(4912), [anon_sym___LINE__] = ACTIONS(4912), [anon_sym___MODULE__] = ACTIONS(4912), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4912), [anon_sym___TIME__] = ACTIONS(4912), [anon_sym___TIMESTAMP__] = ACTIONS(4912), [anon_sym___VENDOR__] = ACTIONS(4912), [anon_sym___VERSION__] = ACTIONS(4912), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4914), [sym_float_literal] = ACTIONS(4914), [sym__string] = ACTIONS(4914), }, [2306] = { [sym_identifier] = ACTIONS(4620), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4622), [anon_sym_LBRACE] = ACTIONS(4622), [anon_sym_DOT] = ACTIONS(4622), [anon_sym_AMP] = ACTIONS(4622), [anon_sym_DASH] = ACTIONS(4620), [anon_sym_DASH_DASH] = ACTIONS(4622), [anon_sym_PLUS] = ACTIONS(4620), [anon_sym_PLUS_PLUS] = ACTIONS(4622), [anon_sym_BANG] = ACTIONS(4622), [anon_sym_LPAREN] = ACTIONS(4622), [anon_sym_RPAREN] = ACTIONS(4622), [anon_sym_LBRACK] = ACTIONS(4622), [anon_sym_SEMI] = ACTIONS(4622), [anon_sym_DOLLAR] = ACTIONS(4622), [anon_sym_STAR] = ACTIONS(4622), [anon_sym_TILDE] = ACTIONS(4622), [sym_bool] = ACTIONS(4620), [sym_byte] = ACTIONS(4620), [sym_ubyte] = ACTIONS(4620), [sym_char] = ACTIONS(4620), [sym_short] = ACTIONS(4620), [sym_ushort] = ACTIONS(4620), [sym_int] = ACTIONS(4620), [sym_uint] = ACTIONS(4620), [sym_long] = ACTIONS(4620), [sym_ulong] = ACTIONS(4620), [sym_cent] = ACTIONS(4620), [sym_ucent] = ACTIONS(4620), [sym_wchar] = ACTIONS(4620), [sym_dchar] = ACTIONS(4620), [sym_float] = ACTIONS(4620), [sym_double] = ACTIONS(4620), [sym_real] = ACTIONS(4620), [sym_ifloat] = ACTIONS(4620), [sym_idouble] = ACTIONS(4620), [sym_ireal] = ACTIONS(4620), [sym_cfloat] = ACTIONS(4620), [sym_cdouble] = ACTIONS(4620), [sym_creal] = ACTIONS(4620), [sym_size_t] = ACTIONS(4620), [sym_ptrdiff_t] = ACTIONS(4620), [sym_string] = ACTIONS(4620), [sym_cstring] = ACTIONS(4620), [sym_dstring] = ACTIONS(4620), [sym_wstring] = ACTIONS(4620), [sym_noreturn] = ACTIONS(4620), [sym_true] = ACTIONS(4620), [sym_false] = ACTIONS(4620), [sym_null] = ACTIONS(4620), [sym_super] = ACTIONS(4620), [sym_this] = ACTIONS(4620), [sym_assert] = ACTIONS(4620), [sym_auto] = ACTIONS(4620), [sym_cast] = ACTIONS(4620), [sym_catch] = ACTIONS(4620), [sym_const] = ACTIONS(4620), [sym_delegate] = ACTIONS(4620), [sym_delete] = ACTIONS(4620), [sym_do] = ACTIONS(4620), [sym_else] = ACTIONS(4620), [sym_finally] = ACTIONS(4620), [sym_function] = ACTIONS(4620), [sym_immutable] = ACTIONS(4620), [sym_import] = ACTIONS(4620), [sym_in] = ACTIONS(4620), [sym_inout] = ACTIONS(4620), [sym_is] = ACTIONS(4620), [sym_mixin] = ACTIONS(4620), [sym_new] = ACTIONS(4620), [sym_out] = ACTIONS(4620), [sym_ref] = ACTIONS(4620), [sym_shared] = ACTIONS(4620), [sym_throw] = ACTIONS(4620), [sym_typeid] = ACTIONS(4620), [sym_typeof] = ACTIONS(4620), [sym_traits] = ACTIONS(4620), [sym_vector] = ACTIONS(4620), [sym_void] = ACTIONS(4620), [anon_sym_BQUOTE] = ACTIONS(4622), [anon_sym_r_DQUOTE] = ACTIONS(4622), [anon_sym_x_DQUOTE] = ACTIONS(4622), [anon_sym_DQUOTE] = ACTIONS(4622), [anon_sym_i_BQUOTE] = ACTIONS(4622), [anon_sym_i_DQUOTE] = ACTIONS(4622), [anon_sym_iq_LBRACE] = ACTIONS(4622), [aux_sym_char_literal_token1] = ACTIONS(4622), [anon_sym_SQUOTE] = ACTIONS(4620), [anon_sym___DATE__] = ACTIONS(4620), [anon_sym___FILE__] = ACTIONS(4620), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4620), [anon_sym___FUNCTION__] = ACTIONS(4620), [anon_sym___LINE__] = ACTIONS(4620), [anon_sym___MODULE__] = ACTIONS(4620), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4620), [anon_sym___TIME__] = ACTIONS(4620), [anon_sym___TIMESTAMP__] = ACTIONS(4620), [anon_sym___VENDOR__] = ACTIONS(4620), [anon_sym___VERSION__] = ACTIONS(4620), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4622), [sym_float_literal] = ACTIONS(4622), [sym__string] = ACTIONS(4622), }, [2307] = { [sym_identifier] = ACTIONS(4918), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4920), [anon_sym_LBRACE] = ACTIONS(4920), [anon_sym_DOT] = ACTIONS(4920), [anon_sym_AMP] = ACTIONS(4920), [anon_sym_DASH] = ACTIONS(4918), [anon_sym_DASH_DASH] = ACTIONS(4920), [anon_sym_PLUS] = ACTIONS(4918), [anon_sym_PLUS_PLUS] = ACTIONS(4920), [anon_sym_BANG] = ACTIONS(4920), [anon_sym_LPAREN] = ACTIONS(4920), [anon_sym_RPAREN] = ACTIONS(4920), [anon_sym_LBRACK] = ACTIONS(4920), [anon_sym_SEMI] = ACTIONS(4920), [anon_sym_DOLLAR] = ACTIONS(4920), [anon_sym_STAR] = ACTIONS(4920), [anon_sym_TILDE] = ACTIONS(4920), [sym_bool] = ACTIONS(4918), [sym_byte] = ACTIONS(4918), [sym_ubyte] = ACTIONS(4918), [sym_char] = ACTIONS(4918), [sym_short] = ACTIONS(4918), [sym_ushort] = ACTIONS(4918), [sym_int] = ACTIONS(4918), [sym_uint] = ACTIONS(4918), [sym_long] = ACTIONS(4918), [sym_ulong] = ACTIONS(4918), [sym_cent] = ACTIONS(4918), [sym_ucent] = ACTIONS(4918), [sym_wchar] = ACTIONS(4918), [sym_dchar] = ACTIONS(4918), [sym_float] = ACTIONS(4918), [sym_double] = ACTIONS(4918), [sym_real] = ACTIONS(4918), [sym_ifloat] = ACTIONS(4918), [sym_idouble] = ACTIONS(4918), [sym_ireal] = ACTIONS(4918), [sym_cfloat] = ACTIONS(4918), [sym_cdouble] = ACTIONS(4918), [sym_creal] = ACTIONS(4918), [sym_size_t] = ACTIONS(4918), [sym_ptrdiff_t] = ACTIONS(4918), [sym_string] = ACTIONS(4918), [sym_cstring] = ACTIONS(4918), [sym_dstring] = ACTIONS(4918), [sym_wstring] = ACTIONS(4918), [sym_noreturn] = ACTIONS(4918), [sym_true] = ACTIONS(4918), [sym_false] = ACTIONS(4918), [sym_null] = ACTIONS(4918), [sym_super] = ACTIONS(4918), [sym_this] = ACTIONS(4918), [sym_assert] = ACTIONS(4918), [sym_auto] = ACTIONS(4918), [sym_cast] = ACTIONS(4918), [sym_catch] = ACTIONS(4918), [sym_const] = ACTIONS(4918), [sym_delegate] = ACTIONS(4918), [sym_delete] = ACTIONS(4918), [sym_do] = ACTIONS(4918), [sym_else] = ACTIONS(4918), [sym_finally] = ACTIONS(4918), [sym_function] = ACTIONS(4918), [sym_immutable] = ACTIONS(4918), [sym_import] = ACTIONS(4918), [sym_in] = ACTIONS(4918), [sym_inout] = ACTIONS(4918), [sym_is] = ACTIONS(4918), [sym_mixin] = ACTIONS(4918), [sym_new] = ACTIONS(4918), [sym_out] = ACTIONS(4918), [sym_ref] = ACTIONS(4918), [sym_shared] = ACTIONS(4918), [sym_throw] = ACTIONS(4918), [sym_typeid] = ACTIONS(4918), [sym_typeof] = ACTIONS(4918), [sym_traits] = ACTIONS(4918), [sym_vector] = ACTIONS(4918), [sym_void] = ACTIONS(4918), [anon_sym_BQUOTE] = ACTIONS(4920), [anon_sym_r_DQUOTE] = ACTIONS(4920), [anon_sym_x_DQUOTE] = ACTIONS(4920), [anon_sym_DQUOTE] = ACTIONS(4920), [anon_sym_i_BQUOTE] = ACTIONS(4920), [anon_sym_i_DQUOTE] = ACTIONS(4920), [anon_sym_iq_LBRACE] = ACTIONS(4920), [aux_sym_char_literal_token1] = ACTIONS(4920), [anon_sym_SQUOTE] = ACTIONS(4918), [anon_sym___DATE__] = ACTIONS(4918), [anon_sym___FILE__] = ACTIONS(4918), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4918), [anon_sym___FUNCTION__] = ACTIONS(4918), [anon_sym___LINE__] = ACTIONS(4918), [anon_sym___MODULE__] = ACTIONS(4918), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4918), [anon_sym___TIME__] = ACTIONS(4918), [anon_sym___TIMESTAMP__] = ACTIONS(4918), [anon_sym___VENDOR__] = ACTIONS(4918), [anon_sym___VERSION__] = ACTIONS(4918), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4920), [sym_float_literal] = ACTIONS(4920), [sym__string] = ACTIONS(4920), }, [2308] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_catch] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(6573), [sym_finally] = ACTIONS(4365), [sym_function] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [2309] = { [sym_identifier] = ACTIONS(4970), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4972), [anon_sym_LBRACE] = ACTIONS(4972), [anon_sym_DOT] = ACTIONS(4972), [anon_sym_AMP] = ACTIONS(4972), [anon_sym_DASH] = ACTIONS(4970), [anon_sym_DASH_DASH] = ACTIONS(4972), [anon_sym_PLUS] = ACTIONS(4970), [anon_sym_PLUS_PLUS] = ACTIONS(4972), [anon_sym_BANG] = ACTIONS(4972), [anon_sym_LPAREN] = ACTIONS(4972), [anon_sym_RPAREN] = ACTIONS(4972), [anon_sym_LBRACK] = ACTIONS(4972), [anon_sym_SEMI] = ACTIONS(4972), [anon_sym_DOLLAR] = ACTIONS(4972), [anon_sym_STAR] = ACTIONS(4972), [anon_sym_TILDE] = ACTIONS(4972), [sym_bool] = ACTIONS(4970), [sym_byte] = ACTIONS(4970), [sym_ubyte] = ACTIONS(4970), [sym_char] = ACTIONS(4970), [sym_short] = ACTIONS(4970), [sym_ushort] = ACTIONS(4970), [sym_int] = ACTIONS(4970), [sym_uint] = ACTIONS(4970), [sym_long] = ACTIONS(4970), [sym_ulong] = ACTIONS(4970), [sym_cent] = ACTIONS(4970), [sym_ucent] = ACTIONS(4970), [sym_wchar] = ACTIONS(4970), [sym_dchar] = ACTIONS(4970), [sym_float] = ACTIONS(4970), [sym_double] = ACTIONS(4970), [sym_real] = ACTIONS(4970), [sym_ifloat] = ACTIONS(4970), [sym_idouble] = ACTIONS(4970), [sym_ireal] = ACTIONS(4970), [sym_cfloat] = ACTIONS(4970), [sym_cdouble] = ACTIONS(4970), [sym_creal] = ACTIONS(4970), [sym_size_t] = ACTIONS(4970), [sym_ptrdiff_t] = ACTIONS(4970), [sym_string] = ACTIONS(4970), [sym_cstring] = ACTIONS(4970), [sym_dstring] = ACTIONS(4970), [sym_wstring] = ACTIONS(4970), [sym_noreturn] = ACTIONS(4970), [sym_true] = ACTIONS(4970), [sym_false] = ACTIONS(4970), [sym_null] = ACTIONS(4970), [sym_super] = ACTIONS(4970), [sym_this] = ACTIONS(4970), [sym_assert] = ACTIONS(4970), [sym_auto] = ACTIONS(4970), [sym_cast] = ACTIONS(4970), [sym_catch] = ACTIONS(4970), [sym_const] = ACTIONS(4970), [sym_delegate] = ACTIONS(4970), [sym_delete] = ACTIONS(4970), [sym_do] = ACTIONS(4970), [sym_else] = ACTIONS(4970), [sym_finally] = ACTIONS(4970), [sym_function] = ACTIONS(4970), [sym_immutable] = ACTIONS(4970), [sym_import] = ACTIONS(4970), [sym_in] = ACTIONS(4970), [sym_inout] = ACTIONS(4970), [sym_is] = ACTIONS(4970), [sym_mixin] = ACTIONS(4970), [sym_new] = ACTIONS(4970), [sym_out] = ACTIONS(4970), [sym_ref] = ACTIONS(4970), [sym_shared] = ACTIONS(4970), [sym_throw] = ACTIONS(4970), [sym_typeid] = ACTIONS(4970), [sym_typeof] = ACTIONS(4970), [sym_traits] = ACTIONS(4970), [sym_vector] = ACTIONS(4970), [sym_void] = ACTIONS(4970), [anon_sym_BQUOTE] = ACTIONS(4972), [anon_sym_r_DQUOTE] = ACTIONS(4972), [anon_sym_x_DQUOTE] = ACTIONS(4972), [anon_sym_DQUOTE] = ACTIONS(4972), [anon_sym_i_BQUOTE] = ACTIONS(4972), [anon_sym_i_DQUOTE] = ACTIONS(4972), [anon_sym_iq_LBRACE] = ACTIONS(4972), [aux_sym_char_literal_token1] = ACTIONS(4972), [anon_sym_SQUOTE] = ACTIONS(4970), [anon_sym___DATE__] = ACTIONS(4970), [anon_sym___FILE__] = ACTIONS(4970), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4970), [anon_sym___FUNCTION__] = ACTIONS(4970), [anon_sym___LINE__] = ACTIONS(4970), [anon_sym___MODULE__] = ACTIONS(4970), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4970), [anon_sym___TIME__] = ACTIONS(4970), [anon_sym___TIMESTAMP__] = ACTIONS(4970), [anon_sym___VENDOR__] = ACTIONS(4970), [anon_sym___VERSION__] = ACTIONS(4970), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4972), [sym_float_literal] = ACTIONS(4972), [sym__string] = ACTIONS(4972), }, [2310] = { [sym_identifier] = ACTIONS(5076), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5078), [anon_sym_LBRACE] = ACTIONS(5078), [anon_sym_DOT] = ACTIONS(5078), [anon_sym_AMP] = ACTIONS(5078), [anon_sym_DASH] = ACTIONS(5076), [anon_sym_DASH_DASH] = ACTIONS(5078), [anon_sym_PLUS] = ACTIONS(5076), [anon_sym_PLUS_PLUS] = ACTIONS(5078), [anon_sym_BANG] = ACTIONS(5078), [anon_sym_LPAREN] = ACTIONS(5078), [anon_sym_RPAREN] = ACTIONS(5078), [anon_sym_LBRACK] = ACTIONS(5078), [anon_sym_SEMI] = ACTIONS(5078), [anon_sym_DOLLAR] = ACTIONS(5078), [anon_sym_STAR] = ACTIONS(5078), [anon_sym_TILDE] = ACTIONS(5078), [sym_bool] = ACTIONS(5076), [sym_byte] = ACTIONS(5076), [sym_ubyte] = ACTIONS(5076), [sym_char] = ACTIONS(5076), [sym_short] = ACTIONS(5076), [sym_ushort] = ACTIONS(5076), [sym_int] = ACTIONS(5076), [sym_uint] = ACTIONS(5076), [sym_long] = ACTIONS(5076), [sym_ulong] = ACTIONS(5076), [sym_cent] = ACTIONS(5076), [sym_ucent] = ACTIONS(5076), [sym_wchar] = ACTIONS(5076), [sym_dchar] = ACTIONS(5076), [sym_float] = ACTIONS(5076), [sym_double] = ACTIONS(5076), [sym_real] = ACTIONS(5076), [sym_ifloat] = ACTIONS(5076), [sym_idouble] = ACTIONS(5076), [sym_ireal] = ACTIONS(5076), [sym_cfloat] = ACTIONS(5076), [sym_cdouble] = ACTIONS(5076), [sym_creal] = ACTIONS(5076), [sym_size_t] = ACTIONS(5076), [sym_ptrdiff_t] = ACTIONS(5076), [sym_string] = ACTIONS(5076), [sym_cstring] = ACTIONS(5076), [sym_dstring] = ACTIONS(5076), [sym_wstring] = ACTIONS(5076), [sym_noreturn] = ACTIONS(5076), [sym_true] = ACTIONS(5076), [sym_false] = ACTIONS(5076), [sym_null] = ACTIONS(5076), [sym_super] = ACTIONS(5076), [sym_this] = ACTIONS(5076), [sym_assert] = ACTIONS(5076), [sym_auto] = ACTIONS(5076), [sym_cast] = ACTIONS(5076), [sym_catch] = ACTIONS(5076), [sym_const] = ACTIONS(5076), [sym_delegate] = ACTIONS(5076), [sym_delete] = ACTIONS(5076), [sym_do] = ACTIONS(5076), [sym_else] = ACTIONS(5076), [sym_finally] = ACTIONS(5076), [sym_function] = ACTIONS(5076), [sym_immutable] = ACTIONS(5076), [sym_import] = ACTIONS(5076), [sym_in] = ACTIONS(5076), [sym_inout] = ACTIONS(5076), [sym_is] = ACTIONS(5076), [sym_mixin] = ACTIONS(5076), [sym_new] = ACTIONS(5076), [sym_out] = ACTIONS(5076), [sym_ref] = ACTIONS(5076), [sym_shared] = ACTIONS(5076), [sym_throw] = ACTIONS(5076), [sym_typeid] = ACTIONS(5076), [sym_typeof] = ACTIONS(5076), [sym_traits] = ACTIONS(5076), [sym_vector] = ACTIONS(5076), [sym_void] = ACTIONS(5076), [anon_sym_BQUOTE] = ACTIONS(5078), [anon_sym_r_DQUOTE] = ACTIONS(5078), [anon_sym_x_DQUOTE] = ACTIONS(5078), [anon_sym_DQUOTE] = ACTIONS(5078), [anon_sym_i_BQUOTE] = ACTIONS(5078), [anon_sym_i_DQUOTE] = ACTIONS(5078), [anon_sym_iq_LBRACE] = ACTIONS(5078), [aux_sym_char_literal_token1] = ACTIONS(5078), [anon_sym_SQUOTE] = ACTIONS(5076), [anon_sym___DATE__] = ACTIONS(5076), [anon_sym___FILE__] = ACTIONS(5076), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5076), [anon_sym___FUNCTION__] = ACTIONS(5076), [anon_sym___LINE__] = ACTIONS(5076), [anon_sym___MODULE__] = ACTIONS(5076), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5076), [anon_sym___TIME__] = ACTIONS(5076), [anon_sym___TIMESTAMP__] = ACTIONS(5076), [anon_sym___VENDOR__] = ACTIONS(5076), [anon_sym___VERSION__] = ACTIONS(5076), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5078), [sym_float_literal] = ACTIONS(5078), [sym__string] = ACTIONS(5078), }, [2311] = { [sym_identifier] = ACTIONS(4978), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4980), [anon_sym_LBRACE] = ACTIONS(4980), [anon_sym_DOT] = ACTIONS(4980), [anon_sym_AMP] = ACTIONS(4980), [anon_sym_DASH] = ACTIONS(4978), [anon_sym_DASH_DASH] = ACTIONS(4980), [anon_sym_PLUS] = ACTIONS(4978), [anon_sym_PLUS_PLUS] = ACTIONS(4980), [anon_sym_BANG] = ACTIONS(4980), [anon_sym_LPAREN] = ACTIONS(4980), [anon_sym_RPAREN] = ACTIONS(4980), [anon_sym_LBRACK] = ACTIONS(4980), [anon_sym_SEMI] = ACTIONS(4980), [anon_sym_DOLLAR] = ACTIONS(4980), [anon_sym_STAR] = ACTIONS(4980), [anon_sym_TILDE] = ACTIONS(4980), [sym_bool] = ACTIONS(4978), [sym_byte] = ACTIONS(4978), [sym_ubyte] = ACTIONS(4978), [sym_char] = ACTIONS(4978), [sym_short] = ACTIONS(4978), [sym_ushort] = ACTIONS(4978), [sym_int] = ACTIONS(4978), [sym_uint] = ACTIONS(4978), [sym_long] = ACTIONS(4978), [sym_ulong] = ACTIONS(4978), [sym_cent] = ACTIONS(4978), [sym_ucent] = ACTIONS(4978), [sym_wchar] = ACTIONS(4978), [sym_dchar] = ACTIONS(4978), [sym_float] = ACTIONS(4978), [sym_double] = ACTIONS(4978), [sym_real] = ACTIONS(4978), [sym_ifloat] = ACTIONS(4978), [sym_idouble] = ACTIONS(4978), [sym_ireal] = ACTIONS(4978), [sym_cfloat] = ACTIONS(4978), [sym_cdouble] = ACTIONS(4978), [sym_creal] = ACTIONS(4978), [sym_size_t] = ACTIONS(4978), [sym_ptrdiff_t] = ACTIONS(4978), [sym_string] = ACTIONS(4978), [sym_cstring] = ACTIONS(4978), [sym_dstring] = ACTIONS(4978), [sym_wstring] = ACTIONS(4978), [sym_noreturn] = ACTIONS(4978), [sym_true] = ACTIONS(4978), [sym_false] = ACTIONS(4978), [sym_null] = ACTIONS(4978), [sym_super] = ACTIONS(4978), [sym_this] = ACTIONS(4978), [sym_assert] = ACTIONS(4978), [sym_auto] = ACTIONS(4978), [sym_cast] = ACTIONS(4978), [sym_catch] = ACTIONS(4978), [sym_const] = ACTIONS(4978), [sym_delegate] = ACTIONS(4978), [sym_delete] = ACTIONS(4978), [sym_do] = ACTIONS(4978), [sym_else] = ACTIONS(4978), [sym_finally] = ACTIONS(4978), [sym_function] = ACTIONS(4978), [sym_immutable] = ACTIONS(4978), [sym_import] = ACTIONS(4978), [sym_in] = ACTIONS(4978), [sym_inout] = ACTIONS(4978), [sym_is] = ACTIONS(4978), [sym_mixin] = ACTIONS(4978), [sym_new] = ACTIONS(4978), [sym_out] = ACTIONS(4978), [sym_ref] = ACTIONS(4978), [sym_shared] = ACTIONS(4978), [sym_throw] = ACTIONS(4978), [sym_typeid] = ACTIONS(4978), [sym_typeof] = ACTIONS(4978), [sym_traits] = ACTIONS(4978), [sym_vector] = ACTIONS(4978), [sym_void] = ACTIONS(4978), [anon_sym_BQUOTE] = ACTIONS(4980), [anon_sym_r_DQUOTE] = ACTIONS(4980), [anon_sym_x_DQUOTE] = ACTIONS(4980), [anon_sym_DQUOTE] = ACTIONS(4980), [anon_sym_i_BQUOTE] = ACTIONS(4980), [anon_sym_i_DQUOTE] = ACTIONS(4980), [anon_sym_iq_LBRACE] = ACTIONS(4980), [aux_sym_char_literal_token1] = ACTIONS(4980), [anon_sym_SQUOTE] = ACTIONS(4978), [anon_sym___DATE__] = ACTIONS(4978), [anon_sym___FILE__] = ACTIONS(4978), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4978), [anon_sym___FUNCTION__] = ACTIONS(4978), [anon_sym___LINE__] = ACTIONS(4978), [anon_sym___MODULE__] = ACTIONS(4978), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4978), [anon_sym___TIME__] = ACTIONS(4978), [anon_sym___TIMESTAMP__] = ACTIONS(4978), [anon_sym___VENDOR__] = ACTIONS(4978), [anon_sym___VERSION__] = ACTIONS(4978), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4980), [sym_float_literal] = ACTIONS(4980), [sym__string] = ACTIONS(4980), }, [2312] = { [sym_identifier] = ACTIONS(4982), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4984), [anon_sym_LBRACE] = ACTIONS(4984), [anon_sym_DOT] = ACTIONS(4984), [anon_sym_AMP] = ACTIONS(4984), [anon_sym_DASH] = ACTIONS(4982), [anon_sym_DASH_DASH] = ACTIONS(4984), [anon_sym_PLUS] = ACTIONS(4982), [anon_sym_PLUS_PLUS] = ACTIONS(4984), [anon_sym_BANG] = ACTIONS(4984), [anon_sym_LPAREN] = ACTIONS(4984), [anon_sym_RPAREN] = ACTIONS(4984), [anon_sym_LBRACK] = ACTIONS(4984), [anon_sym_SEMI] = ACTIONS(4984), [anon_sym_DOLLAR] = ACTIONS(4984), [anon_sym_STAR] = ACTIONS(4984), [anon_sym_TILDE] = ACTIONS(4984), [sym_bool] = ACTIONS(4982), [sym_byte] = ACTIONS(4982), [sym_ubyte] = ACTIONS(4982), [sym_char] = ACTIONS(4982), [sym_short] = ACTIONS(4982), [sym_ushort] = ACTIONS(4982), [sym_int] = ACTIONS(4982), [sym_uint] = ACTIONS(4982), [sym_long] = ACTIONS(4982), [sym_ulong] = ACTIONS(4982), [sym_cent] = ACTIONS(4982), [sym_ucent] = ACTIONS(4982), [sym_wchar] = ACTIONS(4982), [sym_dchar] = ACTIONS(4982), [sym_float] = ACTIONS(4982), [sym_double] = ACTIONS(4982), [sym_real] = ACTIONS(4982), [sym_ifloat] = ACTIONS(4982), [sym_idouble] = ACTIONS(4982), [sym_ireal] = ACTIONS(4982), [sym_cfloat] = ACTIONS(4982), [sym_cdouble] = ACTIONS(4982), [sym_creal] = ACTIONS(4982), [sym_size_t] = ACTIONS(4982), [sym_ptrdiff_t] = ACTIONS(4982), [sym_string] = ACTIONS(4982), [sym_cstring] = ACTIONS(4982), [sym_dstring] = ACTIONS(4982), [sym_wstring] = ACTIONS(4982), [sym_noreturn] = ACTIONS(4982), [sym_true] = ACTIONS(4982), [sym_false] = ACTIONS(4982), [sym_null] = ACTIONS(4982), [sym_super] = ACTIONS(4982), [sym_this] = ACTIONS(4982), [sym_assert] = ACTIONS(4982), [sym_auto] = ACTIONS(4982), [sym_cast] = ACTIONS(4982), [sym_catch] = ACTIONS(4982), [sym_const] = ACTIONS(4982), [sym_delegate] = ACTIONS(4982), [sym_delete] = ACTIONS(4982), [sym_do] = ACTIONS(4982), [sym_else] = ACTIONS(4982), [sym_finally] = ACTIONS(4982), [sym_function] = ACTIONS(4982), [sym_immutable] = ACTIONS(4982), [sym_import] = ACTIONS(4982), [sym_in] = ACTIONS(4982), [sym_inout] = ACTIONS(4982), [sym_is] = ACTIONS(4982), [sym_mixin] = ACTIONS(4982), [sym_new] = ACTIONS(4982), [sym_out] = ACTIONS(4982), [sym_ref] = ACTIONS(4982), [sym_shared] = ACTIONS(4982), [sym_throw] = ACTIONS(4982), [sym_typeid] = ACTIONS(4982), [sym_typeof] = ACTIONS(4982), [sym_traits] = ACTIONS(4982), [sym_vector] = ACTIONS(4982), [sym_void] = ACTIONS(4982), [anon_sym_BQUOTE] = ACTIONS(4984), [anon_sym_r_DQUOTE] = ACTIONS(4984), [anon_sym_x_DQUOTE] = ACTIONS(4984), [anon_sym_DQUOTE] = ACTIONS(4984), [anon_sym_i_BQUOTE] = ACTIONS(4984), [anon_sym_i_DQUOTE] = ACTIONS(4984), [anon_sym_iq_LBRACE] = ACTIONS(4984), [aux_sym_char_literal_token1] = ACTIONS(4984), [anon_sym_SQUOTE] = ACTIONS(4982), [anon_sym___DATE__] = ACTIONS(4982), [anon_sym___FILE__] = ACTIONS(4982), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4982), [anon_sym___FUNCTION__] = ACTIONS(4982), [anon_sym___LINE__] = ACTIONS(4982), [anon_sym___MODULE__] = ACTIONS(4982), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4982), [anon_sym___TIME__] = ACTIONS(4982), [anon_sym___TIMESTAMP__] = ACTIONS(4982), [anon_sym___VENDOR__] = ACTIONS(4982), [anon_sym___VERSION__] = ACTIONS(4982), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4984), [sym_float_literal] = ACTIONS(4984), [sym__string] = ACTIONS(4984), }, [2313] = { [sym_identifier] = ACTIONS(4986), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4988), [anon_sym_LBRACE] = ACTIONS(4988), [anon_sym_DOT] = ACTIONS(4988), [anon_sym_AMP] = ACTIONS(4988), [anon_sym_DASH] = ACTIONS(4986), [anon_sym_DASH_DASH] = ACTIONS(4988), [anon_sym_PLUS] = ACTIONS(4986), [anon_sym_PLUS_PLUS] = ACTIONS(4988), [anon_sym_BANG] = ACTIONS(4988), [anon_sym_LPAREN] = ACTIONS(4988), [anon_sym_RPAREN] = ACTIONS(4988), [anon_sym_LBRACK] = ACTIONS(4988), [anon_sym_SEMI] = ACTIONS(4988), [anon_sym_DOLLAR] = ACTIONS(4988), [anon_sym_STAR] = ACTIONS(4988), [anon_sym_TILDE] = ACTIONS(4988), [sym_bool] = ACTIONS(4986), [sym_byte] = ACTIONS(4986), [sym_ubyte] = ACTIONS(4986), [sym_char] = ACTIONS(4986), [sym_short] = ACTIONS(4986), [sym_ushort] = ACTIONS(4986), [sym_int] = ACTIONS(4986), [sym_uint] = ACTIONS(4986), [sym_long] = ACTIONS(4986), [sym_ulong] = ACTIONS(4986), [sym_cent] = ACTIONS(4986), [sym_ucent] = ACTIONS(4986), [sym_wchar] = ACTIONS(4986), [sym_dchar] = ACTIONS(4986), [sym_float] = ACTIONS(4986), [sym_double] = ACTIONS(4986), [sym_real] = ACTIONS(4986), [sym_ifloat] = ACTIONS(4986), [sym_idouble] = ACTIONS(4986), [sym_ireal] = ACTIONS(4986), [sym_cfloat] = ACTIONS(4986), [sym_cdouble] = ACTIONS(4986), [sym_creal] = ACTIONS(4986), [sym_size_t] = ACTIONS(4986), [sym_ptrdiff_t] = ACTIONS(4986), [sym_string] = ACTIONS(4986), [sym_cstring] = ACTIONS(4986), [sym_dstring] = ACTIONS(4986), [sym_wstring] = ACTIONS(4986), [sym_noreturn] = ACTIONS(4986), [sym_true] = ACTIONS(4986), [sym_false] = ACTIONS(4986), [sym_null] = ACTIONS(4986), [sym_super] = ACTIONS(4986), [sym_this] = ACTIONS(4986), [sym_assert] = ACTIONS(4986), [sym_auto] = ACTIONS(4986), [sym_cast] = ACTIONS(4986), [sym_catch] = ACTIONS(4986), [sym_const] = ACTIONS(4986), [sym_delegate] = ACTIONS(4986), [sym_delete] = ACTIONS(4986), [sym_do] = ACTIONS(4986), [sym_else] = ACTIONS(4986), [sym_finally] = ACTIONS(4986), [sym_function] = ACTIONS(4986), [sym_immutable] = ACTIONS(4986), [sym_import] = ACTIONS(4986), [sym_in] = ACTIONS(4986), [sym_inout] = ACTIONS(4986), [sym_is] = ACTIONS(4986), [sym_mixin] = ACTIONS(4986), [sym_new] = ACTIONS(4986), [sym_out] = ACTIONS(4986), [sym_ref] = ACTIONS(4986), [sym_shared] = ACTIONS(4986), [sym_throw] = ACTIONS(4986), [sym_typeid] = ACTIONS(4986), [sym_typeof] = ACTIONS(4986), [sym_traits] = ACTIONS(4986), [sym_vector] = ACTIONS(4986), [sym_void] = ACTIONS(4986), [anon_sym_BQUOTE] = ACTIONS(4988), [anon_sym_r_DQUOTE] = ACTIONS(4988), [anon_sym_x_DQUOTE] = ACTIONS(4988), [anon_sym_DQUOTE] = ACTIONS(4988), [anon_sym_i_BQUOTE] = ACTIONS(4988), [anon_sym_i_DQUOTE] = ACTIONS(4988), [anon_sym_iq_LBRACE] = ACTIONS(4988), [aux_sym_char_literal_token1] = ACTIONS(4988), [anon_sym_SQUOTE] = ACTIONS(4986), [anon_sym___DATE__] = ACTIONS(4986), [anon_sym___FILE__] = ACTIONS(4986), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4986), [anon_sym___FUNCTION__] = ACTIONS(4986), [anon_sym___LINE__] = ACTIONS(4986), [anon_sym___MODULE__] = ACTIONS(4986), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4986), [anon_sym___TIME__] = ACTIONS(4986), [anon_sym___TIMESTAMP__] = ACTIONS(4986), [anon_sym___VENDOR__] = ACTIONS(4986), [anon_sym___VERSION__] = ACTIONS(4986), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4988), [sym_float_literal] = ACTIONS(4988), [sym__string] = ACTIONS(4988), }, [2314] = { [sym_identifier] = ACTIONS(4990), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4992), [anon_sym_LBRACE] = ACTIONS(4992), [anon_sym_DOT] = ACTIONS(4992), [anon_sym_AMP] = ACTIONS(4992), [anon_sym_DASH] = ACTIONS(4990), [anon_sym_DASH_DASH] = ACTIONS(4992), [anon_sym_PLUS] = ACTIONS(4990), [anon_sym_PLUS_PLUS] = ACTIONS(4992), [anon_sym_BANG] = ACTIONS(4992), [anon_sym_LPAREN] = ACTIONS(4992), [anon_sym_RPAREN] = ACTIONS(4992), [anon_sym_LBRACK] = ACTIONS(4992), [anon_sym_SEMI] = ACTIONS(4992), [anon_sym_DOLLAR] = ACTIONS(4992), [anon_sym_STAR] = ACTIONS(4992), [anon_sym_TILDE] = ACTIONS(4992), [sym_bool] = ACTIONS(4990), [sym_byte] = ACTIONS(4990), [sym_ubyte] = ACTIONS(4990), [sym_char] = ACTIONS(4990), [sym_short] = ACTIONS(4990), [sym_ushort] = ACTIONS(4990), [sym_int] = ACTIONS(4990), [sym_uint] = ACTIONS(4990), [sym_long] = ACTIONS(4990), [sym_ulong] = ACTIONS(4990), [sym_cent] = ACTIONS(4990), [sym_ucent] = ACTIONS(4990), [sym_wchar] = ACTIONS(4990), [sym_dchar] = ACTIONS(4990), [sym_float] = ACTIONS(4990), [sym_double] = ACTIONS(4990), [sym_real] = ACTIONS(4990), [sym_ifloat] = ACTIONS(4990), [sym_idouble] = ACTIONS(4990), [sym_ireal] = ACTIONS(4990), [sym_cfloat] = ACTIONS(4990), [sym_cdouble] = ACTIONS(4990), [sym_creal] = ACTIONS(4990), [sym_size_t] = ACTIONS(4990), [sym_ptrdiff_t] = ACTIONS(4990), [sym_string] = ACTIONS(4990), [sym_cstring] = ACTIONS(4990), [sym_dstring] = ACTIONS(4990), [sym_wstring] = ACTIONS(4990), [sym_noreturn] = ACTIONS(4990), [sym_true] = ACTIONS(4990), [sym_false] = ACTIONS(4990), [sym_null] = ACTIONS(4990), [sym_super] = ACTIONS(4990), [sym_this] = ACTIONS(4990), [sym_assert] = ACTIONS(4990), [sym_auto] = ACTIONS(4990), [sym_cast] = ACTIONS(4990), [sym_catch] = ACTIONS(4990), [sym_const] = ACTIONS(4990), [sym_delegate] = ACTIONS(4990), [sym_delete] = ACTIONS(4990), [sym_do] = ACTIONS(4990), [sym_else] = ACTIONS(4990), [sym_finally] = ACTIONS(4990), [sym_function] = ACTIONS(4990), [sym_immutable] = ACTIONS(4990), [sym_import] = ACTIONS(4990), [sym_in] = ACTIONS(4990), [sym_inout] = ACTIONS(4990), [sym_is] = ACTIONS(4990), [sym_mixin] = ACTIONS(4990), [sym_new] = ACTIONS(4990), [sym_out] = ACTIONS(4990), [sym_ref] = ACTIONS(4990), [sym_shared] = ACTIONS(4990), [sym_throw] = ACTIONS(4990), [sym_typeid] = ACTIONS(4990), [sym_typeof] = ACTIONS(4990), [sym_traits] = ACTIONS(4990), [sym_vector] = ACTIONS(4990), [sym_void] = ACTIONS(4990), [anon_sym_BQUOTE] = ACTIONS(4992), [anon_sym_r_DQUOTE] = ACTIONS(4992), [anon_sym_x_DQUOTE] = ACTIONS(4992), [anon_sym_DQUOTE] = ACTIONS(4992), [anon_sym_i_BQUOTE] = ACTIONS(4992), [anon_sym_i_DQUOTE] = ACTIONS(4992), [anon_sym_iq_LBRACE] = ACTIONS(4992), [aux_sym_char_literal_token1] = ACTIONS(4992), [anon_sym_SQUOTE] = ACTIONS(4990), [anon_sym___DATE__] = ACTIONS(4990), [anon_sym___FILE__] = ACTIONS(4990), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4990), [anon_sym___FUNCTION__] = ACTIONS(4990), [anon_sym___LINE__] = ACTIONS(4990), [anon_sym___MODULE__] = ACTIONS(4990), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4990), [anon_sym___TIME__] = ACTIONS(4990), [anon_sym___TIMESTAMP__] = ACTIONS(4990), [anon_sym___VENDOR__] = ACTIONS(4990), [anon_sym___VERSION__] = ACTIONS(4990), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4992), [sym_float_literal] = ACTIONS(4992), [sym__string] = ACTIONS(4992), }, [2315] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(4618), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_AMP] = ACTIONS(4618), [anon_sym_DASH] = ACTIONS(4616), [anon_sym_DASH_DASH] = ACTIONS(4618), [anon_sym_PLUS] = ACTIONS(4616), [anon_sym_PLUS_PLUS] = ACTIONS(4618), [anon_sym_BANG] = ACTIONS(4618), [anon_sym_LPAREN] = ACTIONS(4618), [anon_sym_RPAREN] = ACTIONS(4618), [anon_sym_LBRACK] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4618), [anon_sym_DOLLAR] = ACTIONS(4618), [anon_sym_STAR] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_true] = ACTIONS(4616), [sym_false] = ACTIONS(4616), [sym_null] = ACTIONS(4616), [sym_super] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_assert] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_cast] = ACTIONS(4616), [sym_catch] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_delegate] = ACTIONS(4616), [sym_delete] = ACTIONS(4616), [sym_do] = ACTIONS(4616), [sym_else] = ACTIONS(4616), [sym_finally] = ACTIONS(4616), [sym_function] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(4616), [sym_inout] = ACTIONS(4616), [sym_is] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_new] = ACTIONS(4616), [sym_out] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_throw] = ACTIONS(4616), [sym_typeid] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [anon_sym_BQUOTE] = ACTIONS(4618), [anon_sym_r_DQUOTE] = ACTIONS(4618), [anon_sym_x_DQUOTE] = ACTIONS(4618), [anon_sym_DQUOTE] = ACTIONS(4618), [anon_sym_i_BQUOTE] = ACTIONS(4618), [anon_sym_i_DQUOTE] = ACTIONS(4618), [anon_sym_iq_LBRACE] = ACTIONS(4618), [aux_sym_char_literal_token1] = ACTIONS(4618), [anon_sym_SQUOTE] = ACTIONS(4616), [anon_sym___DATE__] = ACTIONS(4616), [anon_sym___FILE__] = ACTIONS(4616), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4616), [anon_sym___FUNCTION__] = ACTIONS(4616), [anon_sym___LINE__] = ACTIONS(4616), [anon_sym___MODULE__] = ACTIONS(4616), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4616), [anon_sym___TIME__] = ACTIONS(4616), [anon_sym___TIMESTAMP__] = ACTIONS(4616), [anon_sym___VENDOR__] = ACTIONS(4616), [anon_sym___VERSION__] = ACTIONS(4616), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4618), [sym_float_literal] = ACTIONS(4618), [sym__string] = ACTIONS(4618), }, [2316] = { [sym_identifier] = ACTIONS(4610), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4612), [anon_sym_LBRACE] = ACTIONS(4612), [anon_sym_DOT] = ACTIONS(4612), [anon_sym_AMP] = ACTIONS(4612), [anon_sym_DASH] = ACTIONS(4610), [anon_sym_DASH_DASH] = ACTIONS(4612), [anon_sym_PLUS] = ACTIONS(4610), [anon_sym_PLUS_PLUS] = ACTIONS(4612), [anon_sym_BANG] = ACTIONS(4612), [anon_sym_LPAREN] = ACTIONS(4612), [anon_sym_RPAREN] = ACTIONS(4612), [anon_sym_LBRACK] = ACTIONS(4612), [anon_sym_SEMI] = ACTIONS(4612), [anon_sym_DOLLAR] = ACTIONS(4612), [anon_sym_STAR] = ACTIONS(4612), [anon_sym_TILDE] = ACTIONS(4612), [sym_bool] = ACTIONS(4610), [sym_byte] = ACTIONS(4610), [sym_ubyte] = ACTIONS(4610), [sym_char] = ACTIONS(4610), [sym_short] = ACTIONS(4610), [sym_ushort] = ACTIONS(4610), [sym_int] = ACTIONS(4610), [sym_uint] = ACTIONS(4610), [sym_long] = ACTIONS(4610), [sym_ulong] = ACTIONS(4610), [sym_cent] = ACTIONS(4610), [sym_ucent] = ACTIONS(4610), [sym_wchar] = ACTIONS(4610), [sym_dchar] = ACTIONS(4610), [sym_float] = ACTIONS(4610), [sym_double] = ACTIONS(4610), [sym_real] = ACTIONS(4610), [sym_ifloat] = ACTIONS(4610), [sym_idouble] = ACTIONS(4610), [sym_ireal] = ACTIONS(4610), [sym_cfloat] = ACTIONS(4610), [sym_cdouble] = ACTIONS(4610), [sym_creal] = ACTIONS(4610), [sym_size_t] = ACTIONS(4610), [sym_ptrdiff_t] = ACTIONS(4610), [sym_string] = ACTIONS(4610), [sym_cstring] = ACTIONS(4610), [sym_dstring] = ACTIONS(4610), [sym_wstring] = ACTIONS(4610), [sym_noreturn] = ACTIONS(4610), [sym_true] = ACTIONS(4610), [sym_false] = ACTIONS(4610), [sym_null] = ACTIONS(4610), [sym_super] = ACTIONS(4610), [sym_this] = ACTIONS(4610), [sym_assert] = ACTIONS(4610), [sym_auto] = ACTIONS(4610), [sym_cast] = ACTIONS(4610), [sym_catch] = ACTIONS(4610), [sym_const] = ACTIONS(4610), [sym_delegate] = ACTIONS(4610), [sym_delete] = ACTIONS(4610), [sym_do] = ACTIONS(4610), [sym_else] = ACTIONS(4610), [sym_finally] = ACTIONS(4610), [sym_function] = ACTIONS(4610), [sym_immutable] = ACTIONS(4610), [sym_import] = ACTIONS(4610), [sym_in] = ACTIONS(4610), [sym_inout] = ACTIONS(4610), [sym_is] = ACTIONS(4610), [sym_mixin] = ACTIONS(4610), [sym_new] = ACTIONS(4610), [sym_out] = ACTIONS(4610), [sym_ref] = ACTIONS(4610), [sym_shared] = ACTIONS(4610), [sym_throw] = ACTIONS(4610), [sym_typeid] = ACTIONS(4610), [sym_typeof] = ACTIONS(4610), [sym_traits] = ACTIONS(4610), [sym_vector] = ACTIONS(4610), [sym_void] = ACTIONS(4610), [anon_sym_BQUOTE] = ACTIONS(4612), [anon_sym_r_DQUOTE] = ACTIONS(4612), [anon_sym_x_DQUOTE] = ACTIONS(4612), [anon_sym_DQUOTE] = ACTIONS(4612), [anon_sym_i_BQUOTE] = ACTIONS(4612), [anon_sym_i_DQUOTE] = ACTIONS(4612), [anon_sym_iq_LBRACE] = ACTIONS(4612), [aux_sym_char_literal_token1] = ACTIONS(4612), [anon_sym_SQUOTE] = ACTIONS(4610), [anon_sym___DATE__] = ACTIONS(4610), [anon_sym___FILE__] = ACTIONS(4610), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4610), [anon_sym___FUNCTION__] = ACTIONS(4610), [anon_sym___LINE__] = ACTIONS(4610), [anon_sym___MODULE__] = ACTIONS(4610), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4610), [anon_sym___TIME__] = ACTIONS(4610), [anon_sym___TIMESTAMP__] = ACTIONS(4610), [anon_sym___VENDOR__] = ACTIONS(4610), [anon_sym___VERSION__] = ACTIONS(4610), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4612), [sym_float_literal] = ACTIONS(4612), [sym__string] = ACTIONS(4612), }, [2317] = { [sym_identifier] = ACTIONS(4496), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4498), [anon_sym_LBRACE] = ACTIONS(4498), [anon_sym_DOT] = ACTIONS(4498), [anon_sym_AMP] = ACTIONS(4498), [anon_sym_DASH] = ACTIONS(4496), [anon_sym_DASH_DASH] = ACTIONS(4498), [anon_sym_PLUS] = ACTIONS(4496), [anon_sym_PLUS_PLUS] = ACTIONS(4498), [anon_sym_BANG] = ACTIONS(4498), [anon_sym_LPAREN] = ACTIONS(4498), [anon_sym_RPAREN] = ACTIONS(4498), [anon_sym_LBRACK] = ACTIONS(4498), [anon_sym_SEMI] = ACTIONS(4498), [anon_sym_DOLLAR] = ACTIONS(4498), [anon_sym_STAR] = ACTIONS(4498), [anon_sym_TILDE] = ACTIONS(4498), [sym_bool] = ACTIONS(4496), [sym_byte] = ACTIONS(4496), [sym_ubyte] = ACTIONS(4496), [sym_char] = ACTIONS(4496), [sym_short] = ACTIONS(4496), [sym_ushort] = ACTIONS(4496), [sym_int] = ACTIONS(4496), [sym_uint] = ACTIONS(4496), [sym_long] = ACTIONS(4496), [sym_ulong] = ACTIONS(4496), [sym_cent] = ACTIONS(4496), [sym_ucent] = ACTIONS(4496), [sym_wchar] = ACTIONS(4496), [sym_dchar] = ACTIONS(4496), [sym_float] = ACTIONS(4496), [sym_double] = ACTIONS(4496), [sym_real] = ACTIONS(4496), [sym_ifloat] = ACTIONS(4496), [sym_idouble] = ACTIONS(4496), [sym_ireal] = ACTIONS(4496), [sym_cfloat] = ACTIONS(4496), [sym_cdouble] = ACTIONS(4496), [sym_creal] = ACTIONS(4496), [sym_size_t] = ACTIONS(4496), [sym_ptrdiff_t] = ACTIONS(4496), [sym_string] = ACTIONS(4496), [sym_cstring] = ACTIONS(4496), [sym_dstring] = ACTIONS(4496), [sym_wstring] = ACTIONS(4496), [sym_noreturn] = ACTIONS(4496), [sym_true] = ACTIONS(4496), [sym_false] = ACTIONS(4496), [sym_null] = ACTIONS(4496), [sym_super] = ACTIONS(4496), [sym_this] = ACTIONS(4496), [sym_assert] = ACTIONS(4496), [sym_auto] = ACTIONS(4496), [sym_cast] = ACTIONS(4496), [sym_catch] = ACTIONS(4496), [sym_const] = ACTIONS(4496), [sym_delegate] = ACTIONS(4496), [sym_delete] = ACTIONS(4496), [sym_do] = ACTIONS(4496), [sym_else] = ACTIONS(4496), [sym_finally] = ACTIONS(4496), [sym_function] = ACTIONS(4496), [sym_immutable] = ACTIONS(4496), [sym_import] = ACTIONS(4496), [sym_in] = ACTIONS(4496), [sym_inout] = ACTIONS(4496), [sym_is] = ACTIONS(4496), [sym_mixin] = ACTIONS(4496), [sym_new] = ACTIONS(4496), [sym_out] = ACTIONS(4496), [sym_ref] = ACTIONS(4496), [sym_shared] = ACTIONS(4496), [sym_throw] = ACTIONS(4496), [sym_typeid] = ACTIONS(4496), [sym_typeof] = ACTIONS(4496), [sym_traits] = ACTIONS(4496), [sym_vector] = ACTIONS(4496), [sym_void] = ACTIONS(4496), [anon_sym_BQUOTE] = ACTIONS(4498), [anon_sym_r_DQUOTE] = ACTIONS(4498), [anon_sym_x_DQUOTE] = ACTIONS(4498), [anon_sym_DQUOTE] = ACTIONS(4498), [anon_sym_i_BQUOTE] = ACTIONS(4498), [anon_sym_i_DQUOTE] = ACTIONS(4498), [anon_sym_iq_LBRACE] = ACTIONS(4498), [aux_sym_char_literal_token1] = ACTIONS(4498), [anon_sym_SQUOTE] = ACTIONS(4496), [anon_sym___DATE__] = ACTIONS(4496), [anon_sym___FILE__] = ACTIONS(4496), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4496), [anon_sym___FUNCTION__] = ACTIONS(4496), [anon_sym___LINE__] = ACTIONS(4496), [anon_sym___MODULE__] = ACTIONS(4496), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4496), [anon_sym___TIME__] = ACTIONS(4496), [anon_sym___TIMESTAMP__] = ACTIONS(4496), [anon_sym___VENDOR__] = ACTIONS(4496), [anon_sym___VERSION__] = ACTIONS(4496), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4498), [sym_float_literal] = ACTIONS(4498), [sym__string] = ACTIONS(4498), }, [2318] = { [sym_identifier] = ACTIONS(4792), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4795), [anon_sym_LBRACE] = ACTIONS(4795), [anon_sym_DOT] = ACTIONS(4795), [anon_sym_AMP] = ACTIONS(4795), [anon_sym_DASH] = ACTIONS(4792), [anon_sym_DASH_DASH] = ACTIONS(4795), [anon_sym_PLUS] = ACTIONS(4792), [anon_sym_PLUS_PLUS] = ACTIONS(4795), [anon_sym_BANG] = ACTIONS(4795), [anon_sym_LPAREN] = ACTIONS(4795), [anon_sym_RPAREN] = ACTIONS(4795), [anon_sym_LBRACK] = ACTIONS(4795), [anon_sym_SEMI] = ACTIONS(4795), [anon_sym_DOLLAR] = ACTIONS(4795), [anon_sym_STAR] = ACTIONS(4795), [anon_sym_TILDE] = ACTIONS(4795), [sym_bool] = ACTIONS(4792), [sym_byte] = ACTIONS(4792), [sym_ubyte] = ACTIONS(4792), [sym_char] = ACTIONS(4792), [sym_short] = ACTIONS(4792), [sym_ushort] = ACTIONS(4792), [sym_int] = ACTIONS(4792), [sym_uint] = ACTIONS(4792), [sym_long] = ACTIONS(4792), [sym_ulong] = ACTIONS(4792), [sym_cent] = ACTIONS(4792), [sym_ucent] = ACTIONS(4792), [sym_wchar] = ACTIONS(4792), [sym_dchar] = ACTIONS(4792), [sym_float] = ACTIONS(4792), [sym_double] = ACTIONS(4792), [sym_real] = ACTIONS(4792), [sym_ifloat] = ACTIONS(4792), [sym_idouble] = ACTIONS(4792), [sym_ireal] = ACTIONS(4792), [sym_cfloat] = ACTIONS(4792), [sym_cdouble] = ACTIONS(4792), [sym_creal] = ACTIONS(4792), [sym_size_t] = ACTIONS(4792), [sym_ptrdiff_t] = ACTIONS(4792), [sym_string] = ACTIONS(4792), [sym_cstring] = ACTIONS(4792), [sym_dstring] = ACTIONS(4792), [sym_wstring] = ACTIONS(4792), [sym_noreturn] = ACTIONS(4792), [sym_true] = ACTIONS(4792), [sym_false] = ACTIONS(4792), [sym_null] = ACTIONS(4792), [sym_super] = ACTIONS(4792), [sym_this] = ACTIONS(4792), [sym_assert] = ACTIONS(4792), [sym_auto] = ACTIONS(4792), [sym_cast] = ACTIONS(4792), [sym_catch] = ACTIONS(4792), [sym_const] = ACTIONS(4792), [sym_delegate] = ACTIONS(4792), [sym_delete] = ACTIONS(4792), [sym_do] = ACTIONS(4792), [sym_else] = ACTIONS(4792), [sym_finally] = ACTIONS(4792), [sym_function] = ACTIONS(4792), [sym_immutable] = ACTIONS(4792), [sym_import] = ACTIONS(4792), [sym_in] = ACTIONS(4792), [sym_inout] = ACTIONS(4792), [sym_is] = ACTIONS(4792), [sym_mixin] = ACTIONS(4792), [sym_new] = ACTIONS(4792), [sym_out] = ACTIONS(4792), [sym_ref] = ACTIONS(4792), [sym_shared] = ACTIONS(4792), [sym_throw] = ACTIONS(4792), [sym_typeid] = ACTIONS(4792), [sym_typeof] = ACTIONS(4792), [sym_traits] = ACTIONS(4792), [sym_vector] = ACTIONS(4792), [sym_void] = ACTIONS(4792), [anon_sym_BQUOTE] = ACTIONS(4795), [anon_sym_r_DQUOTE] = ACTIONS(4795), [anon_sym_x_DQUOTE] = ACTIONS(4795), [anon_sym_DQUOTE] = ACTIONS(4795), [anon_sym_i_BQUOTE] = ACTIONS(4795), [anon_sym_i_DQUOTE] = ACTIONS(4795), [anon_sym_iq_LBRACE] = ACTIONS(4795), [aux_sym_char_literal_token1] = ACTIONS(4795), [anon_sym_SQUOTE] = ACTIONS(4792), [anon_sym___DATE__] = ACTIONS(4792), [anon_sym___FILE__] = ACTIONS(4792), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4792), [anon_sym___FUNCTION__] = ACTIONS(4792), [anon_sym___LINE__] = ACTIONS(4792), [anon_sym___MODULE__] = ACTIONS(4792), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4792), [anon_sym___TIME__] = ACTIONS(4792), [anon_sym___TIMESTAMP__] = ACTIONS(4792), [anon_sym___VENDOR__] = ACTIONS(4792), [anon_sym___VERSION__] = ACTIONS(4792), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4795), [sym_float_literal] = ACTIONS(4795), [sym__string] = ACTIONS(4795), }, [2319] = { [sym_identifier] = ACTIONS(5020), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5022), [anon_sym_LBRACE] = ACTIONS(5022), [anon_sym_DOT] = ACTIONS(5022), [anon_sym_AMP] = ACTIONS(5022), [anon_sym_DASH] = ACTIONS(5020), [anon_sym_DASH_DASH] = ACTIONS(5022), [anon_sym_PLUS] = ACTIONS(5020), [anon_sym_PLUS_PLUS] = ACTIONS(5022), [anon_sym_BANG] = ACTIONS(5022), [anon_sym_LPAREN] = ACTIONS(5022), [anon_sym_RPAREN] = ACTIONS(5022), [anon_sym_LBRACK] = ACTIONS(5022), [anon_sym_SEMI] = ACTIONS(5022), [anon_sym_DOLLAR] = ACTIONS(5022), [anon_sym_STAR] = ACTIONS(5022), [anon_sym_TILDE] = ACTIONS(5022), [sym_bool] = ACTIONS(5020), [sym_byte] = ACTIONS(5020), [sym_ubyte] = ACTIONS(5020), [sym_char] = ACTIONS(5020), [sym_short] = ACTIONS(5020), [sym_ushort] = ACTIONS(5020), [sym_int] = ACTIONS(5020), [sym_uint] = ACTIONS(5020), [sym_long] = ACTIONS(5020), [sym_ulong] = ACTIONS(5020), [sym_cent] = ACTIONS(5020), [sym_ucent] = ACTIONS(5020), [sym_wchar] = ACTIONS(5020), [sym_dchar] = ACTIONS(5020), [sym_float] = ACTIONS(5020), [sym_double] = ACTIONS(5020), [sym_real] = ACTIONS(5020), [sym_ifloat] = ACTIONS(5020), [sym_idouble] = ACTIONS(5020), [sym_ireal] = ACTIONS(5020), [sym_cfloat] = ACTIONS(5020), [sym_cdouble] = ACTIONS(5020), [sym_creal] = ACTIONS(5020), [sym_size_t] = ACTIONS(5020), [sym_ptrdiff_t] = ACTIONS(5020), [sym_string] = ACTIONS(5020), [sym_cstring] = ACTIONS(5020), [sym_dstring] = ACTIONS(5020), [sym_wstring] = ACTIONS(5020), [sym_noreturn] = ACTIONS(5020), [sym_true] = ACTIONS(5020), [sym_false] = ACTIONS(5020), [sym_null] = ACTIONS(5020), [sym_super] = ACTIONS(5020), [sym_this] = ACTIONS(5020), [sym_assert] = ACTIONS(5020), [sym_auto] = ACTIONS(5020), [sym_cast] = ACTIONS(5020), [sym_catch] = ACTIONS(5020), [sym_const] = ACTIONS(5020), [sym_delegate] = ACTIONS(5020), [sym_delete] = ACTIONS(5020), [sym_do] = ACTIONS(5020), [sym_else] = ACTIONS(5020), [sym_finally] = ACTIONS(5020), [sym_function] = ACTIONS(5020), [sym_immutable] = ACTIONS(5020), [sym_import] = ACTIONS(5020), [sym_in] = ACTIONS(5020), [sym_inout] = ACTIONS(5020), [sym_is] = ACTIONS(5020), [sym_mixin] = ACTIONS(5020), [sym_new] = ACTIONS(5020), [sym_out] = ACTIONS(5020), [sym_ref] = ACTIONS(5020), [sym_shared] = ACTIONS(5020), [sym_throw] = ACTIONS(5020), [sym_typeid] = ACTIONS(5020), [sym_typeof] = ACTIONS(5020), [sym_traits] = ACTIONS(5020), [sym_vector] = ACTIONS(5020), [sym_void] = ACTIONS(5020), [anon_sym_BQUOTE] = ACTIONS(5022), [anon_sym_r_DQUOTE] = ACTIONS(5022), [anon_sym_x_DQUOTE] = ACTIONS(5022), [anon_sym_DQUOTE] = ACTIONS(5022), [anon_sym_i_BQUOTE] = ACTIONS(5022), [anon_sym_i_DQUOTE] = ACTIONS(5022), [anon_sym_iq_LBRACE] = ACTIONS(5022), [aux_sym_char_literal_token1] = ACTIONS(5022), [anon_sym_SQUOTE] = ACTIONS(5020), [anon_sym___DATE__] = ACTIONS(5020), [anon_sym___FILE__] = ACTIONS(5020), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5020), [anon_sym___FUNCTION__] = ACTIONS(5020), [anon_sym___LINE__] = ACTIONS(5020), [anon_sym___MODULE__] = ACTIONS(5020), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5020), [anon_sym___TIME__] = ACTIONS(5020), [anon_sym___TIMESTAMP__] = ACTIONS(5020), [anon_sym___VENDOR__] = ACTIONS(5020), [anon_sym___VERSION__] = ACTIONS(5020), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5022), [sym_float_literal] = ACTIONS(5022), [sym__string] = ACTIONS(5022), }, [2320] = { [sym_identifier] = ACTIONS(5032), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5034), [anon_sym_LBRACE] = ACTIONS(5034), [anon_sym_DOT] = ACTIONS(5034), [anon_sym_AMP] = ACTIONS(5034), [anon_sym_DASH] = ACTIONS(5032), [anon_sym_DASH_DASH] = ACTIONS(5034), [anon_sym_PLUS] = ACTIONS(5032), [anon_sym_PLUS_PLUS] = ACTIONS(5034), [anon_sym_BANG] = ACTIONS(5034), [anon_sym_LPAREN] = ACTIONS(5034), [anon_sym_RPAREN] = ACTIONS(5034), [anon_sym_LBRACK] = ACTIONS(5034), [anon_sym_SEMI] = ACTIONS(5034), [anon_sym_DOLLAR] = ACTIONS(5034), [anon_sym_STAR] = ACTIONS(5034), [anon_sym_TILDE] = ACTIONS(5034), [sym_bool] = ACTIONS(5032), [sym_byte] = ACTIONS(5032), [sym_ubyte] = ACTIONS(5032), [sym_char] = ACTIONS(5032), [sym_short] = ACTIONS(5032), [sym_ushort] = ACTIONS(5032), [sym_int] = ACTIONS(5032), [sym_uint] = ACTIONS(5032), [sym_long] = ACTIONS(5032), [sym_ulong] = ACTIONS(5032), [sym_cent] = ACTIONS(5032), [sym_ucent] = ACTIONS(5032), [sym_wchar] = ACTIONS(5032), [sym_dchar] = ACTIONS(5032), [sym_float] = ACTIONS(5032), [sym_double] = ACTIONS(5032), [sym_real] = ACTIONS(5032), [sym_ifloat] = ACTIONS(5032), [sym_idouble] = ACTIONS(5032), [sym_ireal] = ACTIONS(5032), [sym_cfloat] = ACTIONS(5032), [sym_cdouble] = ACTIONS(5032), [sym_creal] = ACTIONS(5032), [sym_size_t] = ACTIONS(5032), [sym_ptrdiff_t] = ACTIONS(5032), [sym_string] = ACTIONS(5032), [sym_cstring] = ACTIONS(5032), [sym_dstring] = ACTIONS(5032), [sym_wstring] = ACTIONS(5032), [sym_noreturn] = ACTIONS(5032), [sym_true] = ACTIONS(5032), [sym_false] = ACTIONS(5032), [sym_null] = ACTIONS(5032), [sym_super] = ACTIONS(5032), [sym_this] = ACTIONS(5032), [sym_assert] = ACTIONS(5032), [sym_auto] = ACTIONS(5032), [sym_cast] = ACTIONS(5032), [sym_catch] = ACTIONS(5032), [sym_const] = ACTIONS(5032), [sym_delegate] = ACTIONS(5032), [sym_delete] = ACTIONS(5032), [sym_do] = ACTIONS(5032), [sym_else] = ACTIONS(5032), [sym_finally] = ACTIONS(5032), [sym_function] = ACTIONS(5032), [sym_immutable] = ACTIONS(5032), [sym_import] = ACTIONS(5032), [sym_in] = ACTIONS(5032), [sym_inout] = ACTIONS(5032), [sym_is] = ACTIONS(5032), [sym_mixin] = ACTIONS(5032), [sym_new] = ACTIONS(5032), [sym_out] = ACTIONS(5032), [sym_ref] = ACTIONS(5032), [sym_shared] = ACTIONS(5032), [sym_throw] = ACTIONS(5032), [sym_typeid] = ACTIONS(5032), [sym_typeof] = ACTIONS(5032), [sym_traits] = ACTIONS(5032), [sym_vector] = ACTIONS(5032), [sym_void] = ACTIONS(5032), [anon_sym_BQUOTE] = ACTIONS(5034), [anon_sym_r_DQUOTE] = ACTIONS(5034), [anon_sym_x_DQUOTE] = ACTIONS(5034), [anon_sym_DQUOTE] = ACTIONS(5034), [anon_sym_i_BQUOTE] = ACTIONS(5034), [anon_sym_i_DQUOTE] = ACTIONS(5034), [anon_sym_iq_LBRACE] = ACTIONS(5034), [aux_sym_char_literal_token1] = ACTIONS(5034), [anon_sym_SQUOTE] = ACTIONS(5032), [anon_sym___DATE__] = ACTIONS(5032), [anon_sym___FILE__] = ACTIONS(5032), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5032), [anon_sym___FUNCTION__] = ACTIONS(5032), [anon_sym___LINE__] = ACTIONS(5032), [anon_sym___MODULE__] = ACTIONS(5032), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5032), [anon_sym___TIME__] = ACTIONS(5032), [anon_sym___TIMESTAMP__] = ACTIONS(5032), [anon_sym___VENDOR__] = ACTIONS(5032), [anon_sym___VERSION__] = ACTIONS(5032), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5034), [sym_float_literal] = ACTIONS(5034), [sym__string] = ACTIONS(5034), }, [2321] = { [sym_identifier] = ACTIONS(4944), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4946), [anon_sym_LBRACE] = ACTIONS(4946), [anon_sym_DOT] = ACTIONS(4946), [anon_sym_AMP] = ACTIONS(4946), [anon_sym_DASH] = ACTIONS(4944), [anon_sym_DASH_DASH] = ACTIONS(4946), [anon_sym_PLUS] = ACTIONS(4944), [anon_sym_PLUS_PLUS] = ACTIONS(4946), [anon_sym_BANG] = ACTIONS(4946), [anon_sym_LPAREN] = ACTIONS(4946), [anon_sym_RPAREN] = ACTIONS(4946), [anon_sym_LBRACK] = ACTIONS(4946), [anon_sym_SEMI] = ACTIONS(4946), [anon_sym_DOLLAR] = ACTIONS(4946), [anon_sym_STAR] = ACTIONS(4946), [anon_sym_TILDE] = ACTIONS(4946), [sym_bool] = ACTIONS(4944), [sym_byte] = ACTIONS(4944), [sym_ubyte] = ACTIONS(4944), [sym_char] = ACTIONS(4944), [sym_short] = ACTIONS(4944), [sym_ushort] = ACTIONS(4944), [sym_int] = ACTIONS(4944), [sym_uint] = ACTIONS(4944), [sym_long] = ACTIONS(4944), [sym_ulong] = ACTIONS(4944), [sym_cent] = ACTIONS(4944), [sym_ucent] = ACTIONS(4944), [sym_wchar] = ACTIONS(4944), [sym_dchar] = ACTIONS(4944), [sym_float] = ACTIONS(4944), [sym_double] = ACTIONS(4944), [sym_real] = ACTIONS(4944), [sym_ifloat] = ACTIONS(4944), [sym_idouble] = ACTIONS(4944), [sym_ireal] = ACTIONS(4944), [sym_cfloat] = ACTIONS(4944), [sym_cdouble] = ACTIONS(4944), [sym_creal] = ACTIONS(4944), [sym_size_t] = ACTIONS(4944), [sym_ptrdiff_t] = ACTIONS(4944), [sym_string] = ACTIONS(4944), [sym_cstring] = ACTIONS(4944), [sym_dstring] = ACTIONS(4944), [sym_wstring] = ACTIONS(4944), [sym_noreturn] = ACTIONS(4944), [sym_true] = ACTIONS(4944), [sym_false] = ACTIONS(4944), [sym_null] = ACTIONS(4944), [sym_super] = ACTIONS(4944), [sym_this] = ACTIONS(4944), [sym_assert] = ACTIONS(4944), [sym_auto] = ACTIONS(4944), [sym_cast] = ACTIONS(4944), [sym_catch] = ACTIONS(4944), [sym_const] = ACTIONS(4944), [sym_delegate] = ACTIONS(4944), [sym_delete] = ACTIONS(4944), [sym_do] = ACTIONS(4944), [sym_else] = ACTIONS(4944), [sym_finally] = ACTIONS(4944), [sym_function] = ACTIONS(4944), [sym_immutable] = ACTIONS(4944), [sym_import] = ACTIONS(4944), [sym_in] = ACTIONS(4944), [sym_inout] = ACTIONS(4944), [sym_is] = ACTIONS(4944), [sym_mixin] = ACTIONS(4944), [sym_new] = ACTIONS(4944), [sym_out] = ACTIONS(4944), [sym_ref] = ACTIONS(4944), [sym_shared] = ACTIONS(4944), [sym_throw] = ACTIONS(4944), [sym_typeid] = ACTIONS(4944), [sym_typeof] = ACTIONS(4944), [sym_traits] = ACTIONS(4944), [sym_vector] = ACTIONS(4944), [sym_void] = ACTIONS(4944), [anon_sym_BQUOTE] = ACTIONS(4946), [anon_sym_r_DQUOTE] = ACTIONS(4946), [anon_sym_x_DQUOTE] = ACTIONS(4946), [anon_sym_DQUOTE] = ACTIONS(4946), [anon_sym_i_BQUOTE] = ACTIONS(4946), [anon_sym_i_DQUOTE] = ACTIONS(4946), [anon_sym_iq_LBRACE] = ACTIONS(4946), [aux_sym_char_literal_token1] = ACTIONS(4946), [anon_sym_SQUOTE] = ACTIONS(4944), [anon_sym___DATE__] = ACTIONS(4944), [anon_sym___FILE__] = ACTIONS(4944), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4944), [anon_sym___FUNCTION__] = ACTIONS(4944), [anon_sym___LINE__] = ACTIONS(4944), [anon_sym___MODULE__] = ACTIONS(4944), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4944), [anon_sym___TIME__] = ACTIONS(4944), [anon_sym___TIMESTAMP__] = ACTIONS(4944), [anon_sym___VENDOR__] = ACTIONS(4944), [anon_sym___VERSION__] = ACTIONS(4944), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4946), [sym_float_literal] = ACTIONS(4946), [sym__string] = ACTIONS(4946), }, [2322] = { [sym_identifier] = ACTIONS(4952), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4954), [anon_sym_LBRACE] = ACTIONS(4954), [anon_sym_DOT] = ACTIONS(4954), [anon_sym_AMP] = ACTIONS(4954), [anon_sym_DASH] = ACTIONS(4952), [anon_sym_DASH_DASH] = ACTIONS(4954), [anon_sym_PLUS] = ACTIONS(4952), [anon_sym_PLUS_PLUS] = ACTIONS(4954), [anon_sym_BANG] = ACTIONS(4954), [anon_sym_LPAREN] = ACTIONS(4954), [anon_sym_RPAREN] = ACTIONS(4954), [anon_sym_LBRACK] = ACTIONS(4954), [anon_sym_SEMI] = ACTIONS(4954), [anon_sym_DOLLAR] = ACTIONS(4954), [anon_sym_STAR] = ACTIONS(4954), [anon_sym_TILDE] = ACTIONS(4954), [sym_bool] = ACTIONS(4952), [sym_byte] = ACTIONS(4952), [sym_ubyte] = ACTIONS(4952), [sym_char] = ACTIONS(4952), [sym_short] = ACTIONS(4952), [sym_ushort] = ACTIONS(4952), [sym_int] = ACTIONS(4952), [sym_uint] = ACTIONS(4952), [sym_long] = ACTIONS(4952), [sym_ulong] = ACTIONS(4952), [sym_cent] = ACTIONS(4952), [sym_ucent] = ACTIONS(4952), [sym_wchar] = ACTIONS(4952), [sym_dchar] = ACTIONS(4952), [sym_float] = ACTIONS(4952), [sym_double] = ACTIONS(4952), [sym_real] = ACTIONS(4952), [sym_ifloat] = ACTIONS(4952), [sym_idouble] = ACTIONS(4952), [sym_ireal] = ACTIONS(4952), [sym_cfloat] = ACTIONS(4952), [sym_cdouble] = ACTIONS(4952), [sym_creal] = ACTIONS(4952), [sym_size_t] = ACTIONS(4952), [sym_ptrdiff_t] = ACTIONS(4952), [sym_string] = ACTIONS(4952), [sym_cstring] = ACTIONS(4952), [sym_dstring] = ACTIONS(4952), [sym_wstring] = ACTIONS(4952), [sym_noreturn] = ACTIONS(4952), [sym_true] = ACTIONS(4952), [sym_false] = ACTIONS(4952), [sym_null] = ACTIONS(4952), [sym_super] = ACTIONS(4952), [sym_this] = ACTIONS(4952), [sym_assert] = ACTIONS(4952), [sym_auto] = ACTIONS(4952), [sym_cast] = ACTIONS(4952), [sym_catch] = ACTIONS(4952), [sym_const] = ACTIONS(4952), [sym_delegate] = ACTIONS(4952), [sym_delete] = ACTIONS(4952), [sym_do] = ACTIONS(4952), [sym_else] = ACTIONS(4952), [sym_finally] = ACTIONS(4952), [sym_function] = ACTIONS(4952), [sym_immutable] = ACTIONS(4952), [sym_import] = ACTIONS(4952), [sym_in] = ACTIONS(4952), [sym_inout] = ACTIONS(4952), [sym_is] = ACTIONS(4952), [sym_mixin] = ACTIONS(4952), [sym_new] = ACTIONS(4952), [sym_out] = ACTIONS(4952), [sym_ref] = ACTIONS(4952), [sym_shared] = ACTIONS(4952), [sym_throw] = ACTIONS(4952), [sym_typeid] = ACTIONS(4952), [sym_typeof] = ACTIONS(4952), [sym_traits] = ACTIONS(4952), [sym_vector] = ACTIONS(4952), [sym_void] = ACTIONS(4952), [anon_sym_BQUOTE] = ACTIONS(4954), [anon_sym_r_DQUOTE] = ACTIONS(4954), [anon_sym_x_DQUOTE] = ACTIONS(4954), [anon_sym_DQUOTE] = ACTIONS(4954), [anon_sym_i_BQUOTE] = ACTIONS(4954), [anon_sym_i_DQUOTE] = ACTIONS(4954), [anon_sym_iq_LBRACE] = ACTIONS(4954), [aux_sym_char_literal_token1] = ACTIONS(4954), [anon_sym_SQUOTE] = ACTIONS(4952), [anon_sym___DATE__] = ACTIONS(4952), [anon_sym___FILE__] = ACTIONS(4952), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4952), [anon_sym___FUNCTION__] = ACTIONS(4952), [anon_sym___LINE__] = ACTIONS(4952), [anon_sym___MODULE__] = ACTIONS(4952), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4952), [anon_sym___TIME__] = ACTIONS(4952), [anon_sym___TIMESTAMP__] = ACTIONS(4952), [anon_sym___VENDOR__] = ACTIONS(4952), [anon_sym___VERSION__] = ACTIONS(4952), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4954), [sym_float_literal] = ACTIONS(4954), [sym__string] = ACTIONS(4954), }, [2323] = { [sym_identifier] = ACTIONS(5048), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5050), [anon_sym_LBRACE] = ACTIONS(5050), [anon_sym_DOT] = ACTIONS(5050), [anon_sym_AMP] = ACTIONS(5050), [anon_sym_DASH] = ACTIONS(5048), [anon_sym_DASH_DASH] = ACTIONS(5050), [anon_sym_PLUS] = ACTIONS(5048), [anon_sym_PLUS_PLUS] = ACTIONS(5050), [anon_sym_BANG] = ACTIONS(5050), [anon_sym_LPAREN] = ACTIONS(5050), [anon_sym_RPAREN] = ACTIONS(5050), [anon_sym_LBRACK] = ACTIONS(5050), [anon_sym_SEMI] = ACTIONS(5050), [anon_sym_DOLLAR] = ACTIONS(5050), [anon_sym_STAR] = ACTIONS(5050), [anon_sym_TILDE] = ACTIONS(5050), [sym_bool] = ACTIONS(5048), [sym_byte] = ACTIONS(5048), [sym_ubyte] = ACTIONS(5048), [sym_char] = ACTIONS(5048), [sym_short] = ACTIONS(5048), [sym_ushort] = ACTIONS(5048), [sym_int] = ACTIONS(5048), [sym_uint] = ACTIONS(5048), [sym_long] = ACTIONS(5048), [sym_ulong] = ACTIONS(5048), [sym_cent] = ACTIONS(5048), [sym_ucent] = ACTIONS(5048), [sym_wchar] = ACTIONS(5048), [sym_dchar] = ACTIONS(5048), [sym_float] = ACTIONS(5048), [sym_double] = ACTIONS(5048), [sym_real] = ACTIONS(5048), [sym_ifloat] = ACTIONS(5048), [sym_idouble] = ACTIONS(5048), [sym_ireal] = ACTIONS(5048), [sym_cfloat] = ACTIONS(5048), [sym_cdouble] = ACTIONS(5048), [sym_creal] = ACTIONS(5048), [sym_size_t] = ACTIONS(5048), [sym_ptrdiff_t] = ACTIONS(5048), [sym_string] = ACTIONS(5048), [sym_cstring] = ACTIONS(5048), [sym_dstring] = ACTIONS(5048), [sym_wstring] = ACTIONS(5048), [sym_noreturn] = ACTIONS(5048), [sym_true] = ACTIONS(5048), [sym_false] = ACTIONS(5048), [sym_null] = ACTIONS(5048), [sym_super] = ACTIONS(5048), [sym_this] = ACTIONS(5048), [sym_assert] = ACTIONS(5048), [sym_auto] = ACTIONS(5048), [sym_cast] = ACTIONS(5048), [sym_catch] = ACTIONS(5048), [sym_const] = ACTIONS(5048), [sym_delegate] = ACTIONS(5048), [sym_delete] = ACTIONS(5048), [sym_do] = ACTIONS(5048), [sym_else] = ACTIONS(5048), [sym_finally] = ACTIONS(5048), [sym_function] = ACTIONS(5048), [sym_immutable] = ACTIONS(5048), [sym_import] = ACTIONS(5048), [sym_in] = ACTIONS(5048), [sym_inout] = ACTIONS(5048), [sym_is] = ACTIONS(5048), [sym_mixin] = ACTIONS(5048), [sym_new] = ACTIONS(5048), [sym_out] = ACTIONS(5048), [sym_ref] = ACTIONS(5048), [sym_shared] = ACTIONS(5048), [sym_throw] = ACTIONS(5048), [sym_typeid] = ACTIONS(5048), [sym_typeof] = ACTIONS(5048), [sym_traits] = ACTIONS(5048), [sym_vector] = ACTIONS(5048), [sym_void] = ACTIONS(5048), [anon_sym_BQUOTE] = ACTIONS(5050), [anon_sym_r_DQUOTE] = ACTIONS(5050), [anon_sym_x_DQUOTE] = ACTIONS(5050), [anon_sym_DQUOTE] = ACTIONS(5050), [anon_sym_i_BQUOTE] = ACTIONS(5050), [anon_sym_i_DQUOTE] = ACTIONS(5050), [anon_sym_iq_LBRACE] = ACTIONS(5050), [aux_sym_char_literal_token1] = ACTIONS(5050), [anon_sym_SQUOTE] = ACTIONS(5048), [anon_sym___DATE__] = ACTIONS(5048), [anon_sym___FILE__] = ACTIONS(5048), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5048), [anon_sym___FUNCTION__] = ACTIONS(5048), [anon_sym___LINE__] = ACTIONS(5048), [anon_sym___MODULE__] = ACTIONS(5048), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5048), [anon_sym___TIME__] = ACTIONS(5048), [anon_sym___TIMESTAMP__] = ACTIONS(5048), [anon_sym___VENDOR__] = ACTIONS(5048), [anon_sym___VERSION__] = ACTIONS(5048), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5050), [sym_float_literal] = ACTIONS(5050), [sym__string] = ACTIONS(5050), }, [2324] = { [sym_identifier] = ACTIONS(5068), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5070), [anon_sym_LBRACE] = ACTIONS(5070), [anon_sym_DOT] = ACTIONS(5070), [anon_sym_AMP] = ACTIONS(5070), [anon_sym_DASH] = ACTIONS(5068), [anon_sym_DASH_DASH] = ACTIONS(5070), [anon_sym_PLUS] = ACTIONS(5068), [anon_sym_PLUS_PLUS] = ACTIONS(5070), [anon_sym_BANG] = ACTIONS(5070), [anon_sym_LPAREN] = ACTIONS(5070), [anon_sym_RPAREN] = ACTIONS(5070), [anon_sym_LBRACK] = ACTIONS(5070), [anon_sym_SEMI] = ACTIONS(5070), [anon_sym_DOLLAR] = ACTIONS(5070), [anon_sym_STAR] = ACTIONS(5070), [anon_sym_TILDE] = ACTIONS(5070), [sym_bool] = ACTIONS(5068), [sym_byte] = ACTIONS(5068), [sym_ubyte] = ACTIONS(5068), [sym_char] = ACTIONS(5068), [sym_short] = ACTIONS(5068), [sym_ushort] = ACTIONS(5068), [sym_int] = ACTIONS(5068), [sym_uint] = ACTIONS(5068), [sym_long] = ACTIONS(5068), [sym_ulong] = ACTIONS(5068), [sym_cent] = ACTIONS(5068), [sym_ucent] = ACTIONS(5068), [sym_wchar] = ACTIONS(5068), [sym_dchar] = ACTIONS(5068), [sym_float] = ACTIONS(5068), [sym_double] = ACTIONS(5068), [sym_real] = ACTIONS(5068), [sym_ifloat] = ACTIONS(5068), [sym_idouble] = ACTIONS(5068), [sym_ireal] = ACTIONS(5068), [sym_cfloat] = ACTIONS(5068), [sym_cdouble] = ACTIONS(5068), [sym_creal] = ACTIONS(5068), [sym_size_t] = ACTIONS(5068), [sym_ptrdiff_t] = ACTIONS(5068), [sym_string] = ACTIONS(5068), [sym_cstring] = ACTIONS(5068), [sym_dstring] = ACTIONS(5068), [sym_wstring] = ACTIONS(5068), [sym_noreturn] = ACTIONS(5068), [sym_true] = ACTIONS(5068), [sym_false] = ACTIONS(5068), [sym_null] = ACTIONS(5068), [sym_super] = ACTIONS(5068), [sym_this] = ACTIONS(5068), [sym_assert] = ACTIONS(5068), [sym_auto] = ACTIONS(5068), [sym_cast] = ACTIONS(5068), [sym_catch] = ACTIONS(5068), [sym_const] = ACTIONS(5068), [sym_delegate] = ACTIONS(5068), [sym_delete] = ACTIONS(5068), [sym_do] = ACTIONS(5068), [sym_else] = ACTIONS(5068), [sym_finally] = ACTIONS(5068), [sym_function] = ACTIONS(5068), [sym_immutable] = ACTIONS(5068), [sym_import] = ACTIONS(5068), [sym_in] = ACTIONS(5068), [sym_inout] = ACTIONS(5068), [sym_is] = ACTIONS(5068), [sym_mixin] = ACTIONS(5068), [sym_new] = ACTIONS(5068), [sym_out] = ACTIONS(5068), [sym_ref] = ACTIONS(5068), [sym_shared] = ACTIONS(5068), [sym_throw] = ACTIONS(5068), [sym_typeid] = ACTIONS(5068), [sym_typeof] = ACTIONS(5068), [sym_traits] = ACTIONS(5068), [sym_vector] = ACTIONS(5068), [sym_void] = ACTIONS(5068), [anon_sym_BQUOTE] = ACTIONS(5070), [anon_sym_r_DQUOTE] = ACTIONS(5070), [anon_sym_x_DQUOTE] = ACTIONS(5070), [anon_sym_DQUOTE] = ACTIONS(5070), [anon_sym_i_BQUOTE] = ACTIONS(5070), [anon_sym_i_DQUOTE] = ACTIONS(5070), [anon_sym_iq_LBRACE] = ACTIONS(5070), [aux_sym_char_literal_token1] = ACTIONS(5070), [anon_sym_SQUOTE] = ACTIONS(5068), [anon_sym___DATE__] = ACTIONS(5068), [anon_sym___FILE__] = ACTIONS(5068), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5068), [anon_sym___FUNCTION__] = ACTIONS(5068), [anon_sym___LINE__] = ACTIONS(5068), [anon_sym___MODULE__] = ACTIONS(5068), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5068), [anon_sym___TIME__] = ACTIONS(5068), [anon_sym___TIMESTAMP__] = ACTIONS(5068), [anon_sym___VENDOR__] = ACTIONS(5068), [anon_sym___VERSION__] = ACTIONS(5068), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5070), [sym_float_literal] = ACTIONS(5070), [sym__string] = ACTIONS(5070), }, [2325] = { [sym_identifier] = ACTIONS(5080), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5082), [anon_sym_LBRACE] = ACTIONS(5082), [anon_sym_DOT] = ACTIONS(5082), [anon_sym_AMP] = ACTIONS(5082), [anon_sym_DASH] = ACTIONS(5080), [anon_sym_DASH_DASH] = ACTIONS(5082), [anon_sym_PLUS] = ACTIONS(5080), [anon_sym_PLUS_PLUS] = ACTIONS(5082), [anon_sym_BANG] = ACTIONS(5082), [anon_sym_LPAREN] = ACTIONS(5082), [anon_sym_RPAREN] = ACTIONS(5082), [anon_sym_LBRACK] = ACTIONS(5082), [anon_sym_SEMI] = ACTIONS(5082), [anon_sym_DOLLAR] = ACTIONS(5082), [anon_sym_STAR] = ACTIONS(5082), [anon_sym_TILDE] = ACTIONS(5082), [sym_bool] = ACTIONS(5080), [sym_byte] = ACTIONS(5080), [sym_ubyte] = ACTIONS(5080), [sym_char] = ACTIONS(5080), [sym_short] = ACTIONS(5080), [sym_ushort] = ACTIONS(5080), [sym_int] = ACTIONS(5080), [sym_uint] = ACTIONS(5080), [sym_long] = ACTIONS(5080), [sym_ulong] = ACTIONS(5080), [sym_cent] = ACTIONS(5080), [sym_ucent] = ACTIONS(5080), [sym_wchar] = ACTIONS(5080), [sym_dchar] = ACTIONS(5080), [sym_float] = ACTIONS(5080), [sym_double] = ACTIONS(5080), [sym_real] = ACTIONS(5080), [sym_ifloat] = ACTIONS(5080), [sym_idouble] = ACTIONS(5080), [sym_ireal] = ACTIONS(5080), [sym_cfloat] = ACTIONS(5080), [sym_cdouble] = ACTIONS(5080), [sym_creal] = ACTIONS(5080), [sym_size_t] = ACTIONS(5080), [sym_ptrdiff_t] = ACTIONS(5080), [sym_string] = ACTIONS(5080), [sym_cstring] = ACTIONS(5080), [sym_dstring] = ACTIONS(5080), [sym_wstring] = ACTIONS(5080), [sym_noreturn] = ACTIONS(5080), [sym_true] = ACTIONS(5080), [sym_false] = ACTIONS(5080), [sym_null] = ACTIONS(5080), [sym_super] = ACTIONS(5080), [sym_this] = ACTIONS(5080), [sym_assert] = ACTIONS(5080), [sym_auto] = ACTIONS(5080), [sym_cast] = ACTIONS(5080), [sym_catch] = ACTIONS(5080), [sym_const] = ACTIONS(5080), [sym_delegate] = ACTIONS(5080), [sym_delete] = ACTIONS(5080), [sym_do] = ACTIONS(5080), [sym_else] = ACTIONS(5080), [sym_finally] = ACTIONS(5080), [sym_function] = ACTIONS(5080), [sym_immutable] = ACTIONS(5080), [sym_import] = ACTIONS(5080), [sym_in] = ACTIONS(5080), [sym_inout] = ACTIONS(5080), [sym_is] = ACTIONS(5080), [sym_mixin] = ACTIONS(5080), [sym_new] = ACTIONS(5080), [sym_out] = ACTIONS(5080), [sym_ref] = ACTIONS(5080), [sym_shared] = ACTIONS(5080), [sym_throw] = ACTIONS(5080), [sym_typeid] = ACTIONS(5080), [sym_typeof] = ACTIONS(5080), [sym_traits] = ACTIONS(5080), [sym_vector] = ACTIONS(5080), [sym_void] = ACTIONS(5080), [anon_sym_BQUOTE] = ACTIONS(5082), [anon_sym_r_DQUOTE] = ACTIONS(5082), [anon_sym_x_DQUOTE] = ACTIONS(5082), [anon_sym_DQUOTE] = ACTIONS(5082), [anon_sym_i_BQUOTE] = ACTIONS(5082), [anon_sym_i_DQUOTE] = ACTIONS(5082), [anon_sym_iq_LBRACE] = ACTIONS(5082), [aux_sym_char_literal_token1] = ACTIONS(5082), [anon_sym_SQUOTE] = ACTIONS(5080), [anon_sym___DATE__] = ACTIONS(5080), [anon_sym___FILE__] = ACTIONS(5080), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5080), [anon_sym___FUNCTION__] = ACTIONS(5080), [anon_sym___LINE__] = ACTIONS(5080), [anon_sym___MODULE__] = ACTIONS(5080), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5080), [anon_sym___TIME__] = ACTIONS(5080), [anon_sym___TIMESTAMP__] = ACTIONS(5080), [anon_sym___VENDOR__] = ACTIONS(5080), [anon_sym___VERSION__] = ACTIONS(5080), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5082), [sym_float_literal] = ACTIONS(5082), [sym__string] = ACTIONS(5082), }, [2326] = { [sym_identifier] = ACTIONS(4355), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4357), [anon_sym_LBRACE] = ACTIONS(4357), [anon_sym_DOT] = ACTIONS(4357), [anon_sym_AMP] = ACTIONS(4357), [anon_sym_DASH] = ACTIONS(4355), [anon_sym_DASH_DASH] = ACTIONS(4357), [anon_sym_PLUS] = ACTIONS(4355), [anon_sym_PLUS_PLUS] = ACTIONS(4357), [anon_sym_BANG] = ACTIONS(4357), [anon_sym_LPAREN] = ACTIONS(4357), [anon_sym_RPAREN] = ACTIONS(4357), [anon_sym_LBRACK] = ACTIONS(4357), [anon_sym_SEMI] = ACTIONS(4357), [anon_sym_DOLLAR] = ACTIONS(4357), [anon_sym_STAR] = ACTIONS(4357), [anon_sym_TILDE] = ACTIONS(4357), [sym_bool] = ACTIONS(4355), [sym_byte] = ACTIONS(4355), [sym_ubyte] = ACTIONS(4355), [sym_char] = ACTIONS(4355), [sym_short] = ACTIONS(4355), [sym_ushort] = ACTIONS(4355), [sym_int] = ACTIONS(4355), [sym_uint] = ACTIONS(4355), [sym_long] = ACTIONS(4355), [sym_ulong] = ACTIONS(4355), [sym_cent] = ACTIONS(4355), [sym_ucent] = ACTIONS(4355), [sym_wchar] = ACTIONS(4355), [sym_dchar] = ACTIONS(4355), [sym_float] = ACTIONS(4355), [sym_double] = ACTIONS(4355), [sym_real] = ACTIONS(4355), [sym_ifloat] = ACTIONS(4355), [sym_idouble] = ACTIONS(4355), [sym_ireal] = ACTIONS(4355), [sym_cfloat] = ACTIONS(4355), [sym_cdouble] = ACTIONS(4355), [sym_creal] = ACTIONS(4355), [sym_size_t] = ACTIONS(4355), [sym_ptrdiff_t] = ACTIONS(4355), [sym_string] = ACTIONS(4355), [sym_cstring] = ACTIONS(4355), [sym_dstring] = ACTIONS(4355), [sym_wstring] = ACTIONS(4355), [sym_noreturn] = ACTIONS(4355), [sym_true] = ACTIONS(4355), [sym_false] = ACTIONS(4355), [sym_null] = ACTIONS(4355), [sym_super] = ACTIONS(4355), [sym_this] = ACTIONS(4355), [sym_assert] = ACTIONS(4355), [sym_auto] = ACTIONS(4355), [sym_cast] = ACTIONS(4355), [sym_catch] = ACTIONS(4355), [sym_const] = ACTIONS(4355), [sym_delegate] = ACTIONS(4355), [sym_delete] = ACTIONS(4355), [sym_do] = ACTIONS(4355), [sym_else] = ACTIONS(4355), [sym_finally] = ACTIONS(4355), [sym_function] = ACTIONS(4355), [sym_immutable] = ACTIONS(4355), [sym_import] = ACTIONS(4355), [sym_in] = ACTIONS(4355), [sym_inout] = ACTIONS(4355), [sym_is] = ACTIONS(4355), [sym_mixin] = ACTIONS(4355), [sym_new] = ACTIONS(4355), [sym_out] = ACTIONS(4355), [sym_ref] = ACTIONS(4355), [sym_shared] = ACTIONS(4355), [sym_throw] = ACTIONS(4355), [sym_typeid] = ACTIONS(4355), [sym_typeof] = ACTIONS(4355), [sym_traits] = ACTIONS(4355), [sym_vector] = ACTIONS(4355), [sym_void] = ACTIONS(4355), [anon_sym_BQUOTE] = ACTIONS(4357), [anon_sym_r_DQUOTE] = ACTIONS(4357), [anon_sym_x_DQUOTE] = ACTIONS(4357), [anon_sym_DQUOTE] = ACTIONS(4357), [anon_sym_i_BQUOTE] = ACTIONS(4357), [anon_sym_i_DQUOTE] = ACTIONS(4357), [anon_sym_iq_LBRACE] = ACTIONS(4357), [aux_sym_char_literal_token1] = ACTIONS(4357), [anon_sym_SQUOTE] = ACTIONS(4355), [anon_sym___DATE__] = ACTIONS(4355), [anon_sym___FILE__] = ACTIONS(4355), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4355), [anon_sym___FUNCTION__] = ACTIONS(4355), [anon_sym___LINE__] = ACTIONS(4355), [anon_sym___MODULE__] = ACTIONS(4355), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4355), [anon_sym___TIME__] = ACTIONS(4355), [anon_sym___TIMESTAMP__] = ACTIONS(4355), [anon_sym___VENDOR__] = ACTIONS(4355), [anon_sym___VERSION__] = ACTIONS(4355), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4357), [sym_float_literal] = ACTIONS(4357), [sym__string] = ACTIONS(4357), }, [2327] = { [sym_identifier] = ACTIONS(4335), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4337), [anon_sym_LBRACE] = ACTIONS(4337), [anon_sym_DOT] = ACTIONS(4337), [anon_sym_AMP] = ACTIONS(4337), [anon_sym_DASH] = ACTIONS(4335), [anon_sym_DASH_DASH] = ACTIONS(4337), [anon_sym_PLUS] = ACTIONS(4335), [anon_sym_PLUS_PLUS] = ACTIONS(4337), [anon_sym_BANG] = ACTIONS(4337), [anon_sym_LPAREN] = ACTIONS(4337), [anon_sym_RPAREN] = ACTIONS(4337), [anon_sym_LBRACK] = ACTIONS(4337), [anon_sym_SEMI] = ACTIONS(4337), [anon_sym_DOLLAR] = ACTIONS(4337), [anon_sym_STAR] = ACTIONS(4337), [anon_sym_TILDE] = ACTIONS(4337), [sym_bool] = ACTIONS(4335), [sym_byte] = ACTIONS(4335), [sym_ubyte] = ACTIONS(4335), [sym_char] = ACTIONS(4335), [sym_short] = ACTIONS(4335), [sym_ushort] = ACTIONS(4335), [sym_int] = ACTIONS(4335), [sym_uint] = ACTIONS(4335), [sym_long] = ACTIONS(4335), [sym_ulong] = ACTIONS(4335), [sym_cent] = ACTIONS(4335), [sym_ucent] = ACTIONS(4335), [sym_wchar] = ACTIONS(4335), [sym_dchar] = ACTIONS(4335), [sym_float] = ACTIONS(4335), [sym_double] = ACTIONS(4335), [sym_real] = ACTIONS(4335), [sym_ifloat] = ACTIONS(4335), [sym_idouble] = ACTIONS(4335), [sym_ireal] = ACTIONS(4335), [sym_cfloat] = ACTIONS(4335), [sym_cdouble] = ACTIONS(4335), [sym_creal] = ACTIONS(4335), [sym_size_t] = ACTIONS(4335), [sym_ptrdiff_t] = ACTIONS(4335), [sym_string] = ACTIONS(4335), [sym_cstring] = ACTIONS(4335), [sym_dstring] = ACTIONS(4335), [sym_wstring] = ACTIONS(4335), [sym_noreturn] = ACTIONS(4335), [sym_true] = ACTIONS(4335), [sym_false] = ACTIONS(4335), [sym_null] = ACTIONS(4335), [sym_super] = ACTIONS(4335), [sym_this] = ACTIONS(4335), [sym_assert] = ACTIONS(4335), [sym_auto] = ACTIONS(4335), [sym_cast] = ACTIONS(4335), [sym_catch] = ACTIONS(4335), [sym_const] = ACTIONS(4335), [sym_delegate] = ACTIONS(4335), [sym_delete] = ACTIONS(4335), [sym_do] = ACTIONS(4335), [sym_else] = ACTIONS(4335), [sym_finally] = ACTIONS(4335), [sym_function] = ACTIONS(4335), [sym_immutable] = ACTIONS(4335), [sym_import] = ACTIONS(4335), [sym_in] = ACTIONS(4335), [sym_inout] = ACTIONS(4335), [sym_is] = ACTIONS(4335), [sym_mixin] = ACTIONS(4335), [sym_new] = ACTIONS(4335), [sym_out] = ACTIONS(4335), [sym_ref] = ACTIONS(4335), [sym_shared] = ACTIONS(4335), [sym_throw] = ACTIONS(4335), [sym_typeid] = ACTIONS(4335), [sym_typeof] = ACTIONS(4335), [sym_traits] = ACTIONS(4335), [sym_vector] = ACTIONS(4335), [sym_void] = ACTIONS(4335), [anon_sym_BQUOTE] = ACTIONS(4337), [anon_sym_r_DQUOTE] = ACTIONS(4337), [anon_sym_x_DQUOTE] = ACTIONS(4337), [anon_sym_DQUOTE] = ACTIONS(4337), [anon_sym_i_BQUOTE] = ACTIONS(4337), [anon_sym_i_DQUOTE] = ACTIONS(4337), [anon_sym_iq_LBRACE] = ACTIONS(4337), [aux_sym_char_literal_token1] = ACTIONS(4337), [anon_sym_SQUOTE] = ACTIONS(4335), [anon_sym___DATE__] = ACTIONS(4335), [anon_sym___FILE__] = ACTIONS(4335), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4335), [anon_sym___FUNCTION__] = ACTIONS(4335), [anon_sym___LINE__] = ACTIONS(4335), [anon_sym___MODULE__] = ACTIONS(4335), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4335), [anon_sym___TIME__] = ACTIONS(4335), [anon_sym___TIMESTAMP__] = ACTIONS(4335), [anon_sym___VENDOR__] = ACTIONS(4335), [anon_sym___VERSION__] = ACTIONS(4335), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4337), [sym_float_literal] = ACTIONS(4337), [sym__string] = ACTIONS(4337), }, [2328] = { [sym_identifier] = ACTIONS(4351), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4353), [anon_sym_LBRACE] = ACTIONS(4353), [anon_sym_DOT] = ACTIONS(4353), [anon_sym_AMP] = ACTIONS(4353), [anon_sym_DASH] = ACTIONS(4351), [anon_sym_DASH_DASH] = ACTIONS(4353), [anon_sym_PLUS] = ACTIONS(4351), [anon_sym_PLUS_PLUS] = ACTIONS(4353), [anon_sym_BANG] = ACTIONS(4353), [anon_sym_LPAREN] = ACTIONS(4353), [anon_sym_RPAREN] = ACTIONS(4353), [anon_sym_LBRACK] = ACTIONS(4353), [anon_sym_SEMI] = ACTIONS(4353), [anon_sym_DOLLAR] = ACTIONS(4353), [anon_sym_STAR] = ACTIONS(4353), [anon_sym_TILDE] = ACTIONS(4353), [sym_bool] = ACTIONS(4351), [sym_byte] = ACTIONS(4351), [sym_ubyte] = ACTIONS(4351), [sym_char] = ACTIONS(4351), [sym_short] = ACTIONS(4351), [sym_ushort] = ACTIONS(4351), [sym_int] = ACTIONS(4351), [sym_uint] = ACTIONS(4351), [sym_long] = ACTIONS(4351), [sym_ulong] = ACTIONS(4351), [sym_cent] = ACTIONS(4351), [sym_ucent] = ACTIONS(4351), [sym_wchar] = ACTIONS(4351), [sym_dchar] = ACTIONS(4351), [sym_float] = ACTIONS(4351), [sym_double] = ACTIONS(4351), [sym_real] = ACTIONS(4351), [sym_ifloat] = ACTIONS(4351), [sym_idouble] = ACTIONS(4351), [sym_ireal] = ACTIONS(4351), [sym_cfloat] = ACTIONS(4351), [sym_cdouble] = ACTIONS(4351), [sym_creal] = ACTIONS(4351), [sym_size_t] = ACTIONS(4351), [sym_ptrdiff_t] = ACTIONS(4351), [sym_string] = ACTIONS(4351), [sym_cstring] = ACTIONS(4351), [sym_dstring] = ACTIONS(4351), [sym_wstring] = ACTIONS(4351), [sym_noreturn] = ACTIONS(4351), [sym_true] = ACTIONS(4351), [sym_false] = ACTIONS(4351), [sym_null] = ACTIONS(4351), [sym_super] = ACTIONS(4351), [sym_this] = ACTIONS(4351), [sym_assert] = ACTIONS(4351), [sym_auto] = ACTIONS(4351), [sym_cast] = ACTIONS(4351), [sym_catch] = ACTIONS(4351), [sym_const] = ACTIONS(4351), [sym_delegate] = ACTIONS(4351), [sym_delete] = ACTIONS(4351), [sym_do] = ACTIONS(4351), [sym_else] = ACTIONS(4351), [sym_finally] = ACTIONS(4351), [sym_function] = ACTIONS(4351), [sym_immutable] = ACTIONS(4351), [sym_import] = ACTIONS(4351), [sym_in] = ACTIONS(4351), [sym_inout] = ACTIONS(4351), [sym_is] = ACTIONS(4351), [sym_mixin] = ACTIONS(4351), [sym_new] = ACTIONS(4351), [sym_out] = ACTIONS(4351), [sym_ref] = ACTIONS(4351), [sym_shared] = ACTIONS(4351), [sym_throw] = ACTIONS(4351), [sym_typeid] = ACTIONS(4351), [sym_typeof] = ACTIONS(4351), [sym_traits] = ACTIONS(4351), [sym_vector] = ACTIONS(4351), [sym_void] = ACTIONS(4351), [anon_sym_BQUOTE] = ACTIONS(4353), [anon_sym_r_DQUOTE] = ACTIONS(4353), [anon_sym_x_DQUOTE] = ACTIONS(4353), [anon_sym_DQUOTE] = ACTIONS(4353), [anon_sym_i_BQUOTE] = ACTIONS(4353), [anon_sym_i_DQUOTE] = ACTIONS(4353), [anon_sym_iq_LBRACE] = ACTIONS(4353), [aux_sym_char_literal_token1] = ACTIONS(4353), [anon_sym_SQUOTE] = ACTIONS(4351), [anon_sym___DATE__] = ACTIONS(4351), [anon_sym___FILE__] = ACTIONS(4351), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4351), [anon_sym___FUNCTION__] = ACTIONS(4351), [anon_sym___LINE__] = ACTIONS(4351), [anon_sym___MODULE__] = ACTIONS(4351), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4351), [anon_sym___TIME__] = ACTIONS(4351), [anon_sym___TIMESTAMP__] = ACTIONS(4351), [anon_sym___VENDOR__] = ACTIONS(4351), [anon_sym___VERSION__] = ACTIONS(4351), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4353), [sym_float_literal] = ACTIONS(4353), [sym__string] = ACTIONS(4353), }, [2329] = { [sym_identifier] = ACTIONS(4321), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4324), [anon_sym_LBRACE] = ACTIONS(4324), [anon_sym_DOT] = ACTIONS(4324), [anon_sym_AMP] = ACTIONS(4324), [anon_sym_DASH] = ACTIONS(4321), [anon_sym_DASH_DASH] = ACTIONS(4324), [anon_sym_PLUS] = ACTIONS(4321), [anon_sym_PLUS_PLUS] = ACTIONS(4324), [anon_sym_BANG] = ACTIONS(4324), [anon_sym_LPAREN] = ACTIONS(4324), [anon_sym_RPAREN] = ACTIONS(4324), [anon_sym_LBRACK] = ACTIONS(4324), [anon_sym_SEMI] = ACTIONS(4324), [anon_sym_DOLLAR] = ACTIONS(4324), [anon_sym_STAR] = ACTIONS(4324), [anon_sym_TILDE] = ACTIONS(4324), [sym_bool] = ACTIONS(4321), [sym_byte] = ACTIONS(4321), [sym_ubyte] = ACTIONS(4321), [sym_char] = ACTIONS(4321), [sym_short] = ACTIONS(4321), [sym_ushort] = ACTIONS(4321), [sym_int] = ACTIONS(4321), [sym_uint] = ACTIONS(4321), [sym_long] = ACTIONS(4321), [sym_ulong] = ACTIONS(4321), [sym_cent] = ACTIONS(4321), [sym_ucent] = ACTIONS(4321), [sym_wchar] = ACTIONS(4321), [sym_dchar] = ACTIONS(4321), [sym_float] = ACTIONS(4321), [sym_double] = ACTIONS(4321), [sym_real] = ACTIONS(4321), [sym_ifloat] = ACTIONS(4321), [sym_idouble] = ACTIONS(4321), [sym_ireal] = ACTIONS(4321), [sym_cfloat] = ACTIONS(4321), [sym_cdouble] = ACTIONS(4321), [sym_creal] = ACTIONS(4321), [sym_size_t] = ACTIONS(4321), [sym_ptrdiff_t] = ACTIONS(4321), [sym_string] = ACTIONS(4321), [sym_cstring] = ACTIONS(4321), [sym_dstring] = ACTIONS(4321), [sym_wstring] = ACTIONS(4321), [sym_noreturn] = ACTIONS(4321), [sym_true] = ACTIONS(4321), [sym_false] = ACTIONS(4321), [sym_null] = ACTIONS(4321), [sym_super] = ACTIONS(4321), [sym_this] = ACTIONS(4321), [sym_assert] = ACTIONS(4321), [sym_auto] = ACTIONS(4321), [sym_cast] = ACTIONS(4321), [sym_catch] = ACTIONS(4321), [sym_const] = ACTIONS(4321), [sym_delegate] = ACTIONS(4321), [sym_delete] = ACTIONS(4321), [sym_do] = ACTIONS(4321), [sym_else] = ACTIONS(4321), [sym_finally] = ACTIONS(4321), [sym_function] = ACTIONS(4321), [sym_immutable] = ACTIONS(4321), [sym_import] = ACTIONS(4321), [sym_in] = ACTIONS(4321), [sym_inout] = ACTIONS(4321), [sym_is] = ACTIONS(4321), [sym_mixin] = ACTIONS(4321), [sym_new] = ACTIONS(4321), [sym_out] = ACTIONS(4321), [sym_ref] = ACTIONS(4321), [sym_shared] = ACTIONS(4321), [sym_throw] = ACTIONS(4321), [sym_typeid] = ACTIONS(4321), [sym_typeof] = ACTIONS(4321), [sym_traits] = ACTIONS(4321), [sym_vector] = ACTIONS(4321), [sym_void] = ACTIONS(4321), [anon_sym_BQUOTE] = ACTIONS(4324), [anon_sym_r_DQUOTE] = ACTIONS(4324), [anon_sym_x_DQUOTE] = ACTIONS(4324), [anon_sym_DQUOTE] = ACTIONS(4324), [anon_sym_i_BQUOTE] = ACTIONS(4324), [anon_sym_i_DQUOTE] = ACTIONS(4324), [anon_sym_iq_LBRACE] = ACTIONS(4324), [aux_sym_char_literal_token1] = ACTIONS(4324), [anon_sym_SQUOTE] = ACTIONS(4321), [anon_sym___DATE__] = ACTIONS(4321), [anon_sym___FILE__] = ACTIONS(4321), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4321), [anon_sym___FUNCTION__] = ACTIONS(4321), [anon_sym___LINE__] = ACTIONS(4321), [anon_sym___MODULE__] = ACTIONS(4321), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4321), [anon_sym___TIME__] = ACTIONS(4321), [anon_sym___TIMESTAMP__] = ACTIONS(4321), [anon_sym___VENDOR__] = ACTIONS(4321), [anon_sym___VERSION__] = ACTIONS(4321), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4324), [sym_float_literal] = ACTIONS(4324), [sym__string] = ACTIONS(4324), }, [2330] = { [sym_identifier] = ACTIONS(4309), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4311), [anon_sym_LBRACE] = ACTIONS(4311), [anon_sym_DOT] = ACTIONS(4311), [anon_sym_AMP] = ACTIONS(4311), [anon_sym_DASH] = ACTIONS(4309), [anon_sym_DASH_DASH] = ACTIONS(4311), [anon_sym_PLUS] = ACTIONS(4309), [anon_sym_PLUS_PLUS] = ACTIONS(4311), [anon_sym_BANG] = ACTIONS(4311), [anon_sym_LPAREN] = ACTIONS(4311), [anon_sym_RPAREN] = ACTIONS(4311), [anon_sym_LBRACK] = ACTIONS(4311), [anon_sym_SEMI] = ACTIONS(4311), [anon_sym_DOLLAR] = ACTIONS(4311), [anon_sym_STAR] = ACTIONS(4311), [anon_sym_TILDE] = ACTIONS(4311), [sym_bool] = ACTIONS(4309), [sym_byte] = ACTIONS(4309), [sym_ubyte] = ACTIONS(4309), [sym_char] = ACTIONS(4309), [sym_short] = ACTIONS(4309), [sym_ushort] = ACTIONS(4309), [sym_int] = ACTIONS(4309), [sym_uint] = ACTIONS(4309), [sym_long] = ACTIONS(4309), [sym_ulong] = ACTIONS(4309), [sym_cent] = ACTIONS(4309), [sym_ucent] = ACTIONS(4309), [sym_wchar] = ACTIONS(4309), [sym_dchar] = ACTIONS(4309), [sym_float] = ACTIONS(4309), [sym_double] = ACTIONS(4309), [sym_real] = ACTIONS(4309), [sym_ifloat] = ACTIONS(4309), [sym_idouble] = ACTIONS(4309), [sym_ireal] = ACTIONS(4309), [sym_cfloat] = ACTIONS(4309), [sym_cdouble] = ACTIONS(4309), [sym_creal] = ACTIONS(4309), [sym_size_t] = ACTIONS(4309), [sym_ptrdiff_t] = ACTIONS(4309), [sym_string] = ACTIONS(4309), [sym_cstring] = ACTIONS(4309), [sym_dstring] = ACTIONS(4309), [sym_wstring] = ACTIONS(4309), [sym_noreturn] = ACTIONS(4309), [sym_true] = ACTIONS(4309), [sym_false] = ACTIONS(4309), [sym_null] = ACTIONS(4309), [sym_super] = ACTIONS(4309), [sym_this] = ACTIONS(4309), [sym_assert] = ACTIONS(4309), [sym_auto] = ACTIONS(4309), [sym_cast] = ACTIONS(4309), [sym_catch] = ACTIONS(4309), [sym_const] = ACTIONS(4309), [sym_delegate] = ACTIONS(4309), [sym_delete] = ACTIONS(4309), [sym_do] = ACTIONS(4309), [sym_else] = ACTIONS(4309), [sym_finally] = ACTIONS(4309), [sym_function] = ACTIONS(4309), [sym_immutable] = ACTIONS(4309), [sym_import] = ACTIONS(4309), [sym_in] = ACTIONS(4309), [sym_inout] = ACTIONS(4309), [sym_is] = ACTIONS(4309), [sym_mixin] = ACTIONS(4309), [sym_new] = ACTIONS(4309), [sym_out] = ACTIONS(4309), [sym_ref] = ACTIONS(4309), [sym_shared] = ACTIONS(4309), [sym_throw] = ACTIONS(4309), [sym_typeid] = ACTIONS(4309), [sym_typeof] = ACTIONS(4309), [sym_traits] = ACTIONS(4309), [sym_vector] = ACTIONS(4309), [sym_void] = ACTIONS(4309), [anon_sym_BQUOTE] = ACTIONS(4311), [anon_sym_r_DQUOTE] = ACTIONS(4311), [anon_sym_x_DQUOTE] = ACTIONS(4311), [anon_sym_DQUOTE] = ACTIONS(4311), [anon_sym_i_BQUOTE] = ACTIONS(4311), [anon_sym_i_DQUOTE] = ACTIONS(4311), [anon_sym_iq_LBRACE] = ACTIONS(4311), [aux_sym_char_literal_token1] = ACTIONS(4311), [anon_sym_SQUOTE] = ACTIONS(4309), [anon_sym___DATE__] = ACTIONS(4309), [anon_sym___FILE__] = ACTIONS(4309), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4309), [anon_sym___FUNCTION__] = ACTIONS(4309), [anon_sym___LINE__] = ACTIONS(4309), [anon_sym___MODULE__] = ACTIONS(4309), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4309), [anon_sym___TIME__] = ACTIONS(4309), [anon_sym___TIMESTAMP__] = ACTIONS(4309), [anon_sym___VENDOR__] = ACTIONS(4309), [anon_sym___VERSION__] = ACTIONS(4309), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4311), [sym_float_literal] = ACTIONS(4311), [sym__string] = ACTIONS(4311), }, [2331] = { [sym_identifier] = ACTIONS(5008), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5010), [anon_sym_LBRACE] = ACTIONS(5010), [anon_sym_DOT] = ACTIONS(5010), [anon_sym_AMP] = ACTIONS(5010), [anon_sym_DASH] = ACTIONS(5008), [anon_sym_DASH_DASH] = ACTIONS(5010), [anon_sym_PLUS] = ACTIONS(5008), [anon_sym_PLUS_PLUS] = ACTIONS(5010), [anon_sym_BANG] = ACTIONS(5010), [anon_sym_LPAREN] = ACTIONS(5010), [anon_sym_RPAREN] = ACTIONS(5010), [anon_sym_LBRACK] = ACTIONS(5010), [anon_sym_SEMI] = ACTIONS(5010), [anon_sym_DOLLAR] = ACTIONS(5010), [anon_sym_STAR] = ACTIONS(5010), [anon_sym_TILDE] = ACTIONS(5010), [sym_bool] = ACTIONS(5008), [sym_byte] = ACTIONS(5008), [sym_ubyte] = ACTIONS(5008), [sym_char] = ACTIONS(5008), [sym_short] = ACTIONS(5008), [sym_ushort] = ACTIONS(5008), [sym_int] = ACTIONS(5008), [sym_uint] = ACTIONS(5008), [sym_long] = ACTIONS(5008), [sym_ulong] = ACTIONS(5008), [sym_cent] = ACTIONS(5008), [sym_ucent] = ACTIONS(5008), [sym_wchar] = ACTIONS(5008), [sym_dchar] = ACTIONS(5008), [sym_float] = ACTIONS(5008), [sym_double] = ACTIONS(5008), [sym_real] = ACTIONS(5008), [sym_ifloat] = ACTIONS(5008), [sym_idouble] = ACTIONS(5008), [sym_ireal] = ACTIONS(5008), [sym_cfloat] = ACTIONS(5008), [sym_cdouble] = ACTIONS(5008), [sym_creal] = ACTIONS(5008), [sym_size_t] = ACTIONS(5008), [sym_ptrdiff_t] = ACTIONS(5008), [sym_string] = ACTIONS(5008), [sym_cstring] = ACTIONS(5008), [sym_dstring] = ACTIONS(5008), [sym_wstring] = ACTIONS(5008), [sym_noreturn] = ACTIONS(5008), [sym_true] = ACTIONS(5008), [sym_false] = ACTIONS(5008), [sym_null] = ACTIONS(5008), [sym_super] = ACTIONS(5008), [sym_this] = ACTIONS(5008), [sym_assert] = ACTIONS(5008), [sym_auto] = ACTIONS(5008), [sym_cast] = ACTIONS(5008), [sym_catch] = ACTIONS(5008), [sym_const] = ACTIONS(5008), [sym_delegate] = ACTIONS(5008), [sym_delete] = ACTIONS(5008), [sym_do] = ACTIONS(5008), [sym_else] = ACTIONS(5008), [sym_finally] = ACTIONS(5008), [sym_function] = ACTIONS(5008), [sym_immutable] = ACTIONS(5008), [sym_import] = ACTIONS(5008), [sym_in] = ACTIONS(5008), [sym_inout] = ACTIONS(5008), [sym_is] = ACTIONS(5008), [sym_mixin] = ACTIONS(5008), [sym_new] = ACTIONS(5008), [sym_out] = ACTIONS(5008), [sym_ref] = ACTIONS(5008), [sym_shared] = ACTIONS(5008), [sym_throw] = ACTIONS(5008), [sym_typeid] = ACTIONS(5008), [sym_typeof] = ACTIONS(5008), [sym_traits] = ACTIONS(5008), [sym_vector] = ACTIONS(5008), [sym_void] = ACTIONS(5008), [anon_sym_BQUOTE] = ACTIONS(5010), [anon_sym_r_DQUOTE] = ACTIONS(5010), [anon_sym_x_DQUOTE] = ACTIONS(5010), [anon_sym_DQUOTE] = ACTIONS(5010), [anon_sym_i_BQUOTE] = ACTIONS(5010), [anon_sym_i_DQUOTE] = ACTIONS(5010), [anon_sym_iq_LBRACE] = ACTIONS(5010), [aux_sym_char_literal_token1] = ACTIONS(5010), [anon_sym_SQUOTE] = ACTIONS(5008), [anon_sym___DATE__] = ACTIONS(5008), [anon_sym___FILE__] = ACTIONS(5008), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5008), [anon_sym___FUNCTION__] = ACTIONS(5008), [anon_sym___LINE__] = ACTIONS(5008), [anon_sym___MODULE__] = ACTIONS(5008), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5008), [anon_sym___TIME__] = ACTIONS(5008), [anon_sym___TIMESTAMP__] = ACTIONS(5008), [anon_sym___VENDOR__] = ACTIONS(5008), [anon_sym___VERSION__] = ACTIONS(5008), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5010), [sym_float_literal] = ACTIONS(5010), [sym__string] = ACTIONS(5010), }, [2332] = { [sym_identifier] = ACTIONS(5000), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5002), [anon_sym_LBRACE] = ACTIONS(5002), [anon_sym_DOT] = ACTIONS(5002), [anon_sym_AMP] = ACTIONS(5002), [anon_sym_DASH] = ACTIONS(5000), [anon_sym_DASH_DASH] = ACTIONS(5002), [anon_sym_PLUS] = ACTIONS(5000), [anon_sym_PLUS_PLUS] = ACTIONS(5002), [anon_sym_BANG] = ACTIONS(5002), [anon_sym_LPAREN] = ACTIONS(5002), [anon_sym_RPAREN] = ACTIONS(5002), [anon_sym_LBRACK] = ACTIONS(5002), [anon_sym_SEMI] = ACTIONS(5002), [anon_sym_DOLLAR] = ACTIONS(5002), [anon_sym_STAR] = ACTIONS(5002), [anon_sym_TILDE] = ACTIONS(5002), [sym_bool] = ACTIONS(5000), [sym_byte] = ACTIONS(5000), [sym_ubyte] = ACTIONS(5000), [sym_char] = ACTIONS(5000), [sym_short] = ACTIONS(5000), [sym_ushort] = ACTIONS(5000), [sym_int] = ACTIONS(5000), [sym_uint] = ACTIONS(5000), [sym_long] = ACTIONS(5000), [sym_ulong] = ACTIONS(5000), [sym_cent] = ACTIONS(5000), [sym_ucent] = ACTIONS(5000), [sym_wchar] = ACTIONS(5000), [sym_dchar] = ACTIONS(5000), [sym_float] = ACTIONS(5000), [sym_double] = ACTIONS(5000), [sym_real] = ACTIONS(5000), [sym_ifloat] = ACTIONS(5000), [sym_idouble] = ACTIONS(5000), [sym_ireal] = ACTIONS(5000), [sym_cfloat] = ACTIONS(5000), [sym_cdouble] = ACTIONS(5000), [sym_creal] = ACTIONS(5000), [sym_size_t] = ACTIONS(5000), [sym_ptrdiff_t] = ACTIONS(5000), [sym_string] = ACTIONS(5000), [sym_cstring] = ACTIONS(5000), [sym_dstring] = ACTIONS(5000), [sym_wstring] = ACTIONS(5000), [sym_noreturn] = ACTIONS(5000), [sym_true] = ACTIONS(5000), [sym_false] = ACTIONS(5000), [sym_null] = ACTIONS(5000), [sym_super] = ACTIONS(5000), [sym_this] = ACTIONS(5000), [sym_assert] = ACTIONS(5000), [sym_auto] = ACTIONS(5000), [sym_cast] = ACTIONS(5000), [sym_catch] = ACTIONS(5000), [sym_const] = ACTIONS(5000), [sym_delegate] = ACTIONS(5000), [sym_delete] = ACTIONS(5000), [sym_do] = ACTIONS(5000), [sym_else] = ACTIONS(5000), [sym_finally] = ACTIONS(5000), [sym_function] = ACTIONS(5000), [sym_immutable] = ACTIONS(5000), [sym_import] = ACTIONS(5000), [sym_in] = ACTIONS(5000), [sym_inout] = ACTIONS(5000), [sym_is] = ACTIONS(5000), [sym_mixin] = ACTIONS(5000), [sym_new] = ACTIONS(5000), [sym_out] = ACTIONS(5000), [sym_ref] = ACTIONS(5000), [sym_shared] = ACTIONS(5000), [sym_throw] = ACTIONS(5000), [sym_typeid] = ACTIONS(5000), [sym_typeof] = ACTIONS(5000), [sym_traits] = ACTIONS(5000), [sym_vector] = ACTIONS(5000), [sym_void] = ACTIONS(5000), [anon_sym_BQUOTE] = ACTIONS(5002), [anon_sym_r_DQUOTE] = ACTIONS(5002), [anon_sym_x_DQUOTE] = ACTIONS(5002), [anon_sym_DQUOTE] = ACTIONS(5002), [anon_sym_i_BQUOTE] = ACTIONS(5002), [anon_sym_i_DQUOTE] = ACTIONS(5002), [anon_sym_iq_LBRACE] = ACTIONS(5002), [aux_sym_char_literal_token1] = ACTIONS(5002), [anon_sym_SQUOTE] = ACTIONS(5000), [anon_sym___DATE__] = ACTIONS(5000), [anon_sym___FILE__] = ACTIONS(5000), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5000), [anon_sym___FUNCTION__] = ACTIONS(5000), [anon_sym___LINE__] = ACTIONS(5000), [anon_sym___MODULE__] = ACTIONS(5000), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5000), [anon_sym___TIME__] = ACTIONS(5000), [anon_sym___TIMESTAMP__] = ACTIONS(5000), [anon_sym___VENDOR__] = ACTIONS(5000), [anon_sym___VERSION__] = ACTIONS(5000), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5002), [sym_float_literal] = ACTIONS(5002), [sym__string] = ACTIONS(5002), }, [2333] = { [sym_identifier] = ACTIONS(4770), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4772), [anon_sym_LBRACE] = ACTIONS(4772), [anon_sym_DOT] = ACTIONS(4772), [anon_sym_AMP] = ACTIONS(4772), [anon_sym_DASH] = ACTIONS(4770), [anon_sym_DASH_DASH] = ACTIONS(4772), [anon_sym_PLUS] = ACTIONS(4770), [anon_sym_PLUS_PLUS] = ACTIONS(4772), [anon_sym_BANG] = ACTIONS(4772), [anon_sym_LPAREN] = ACTIONS(4772), [anon_sym_RPAREN] = ACTIONS(4772), [anon_sym_LBRACK] = ACTIONS(4772), [anon_sym_SEMI] = ACTIONS(4772), [anon_sym_DOLLAR] = ACTIONS(4772), [anon_sym_STAR] = ACTIONS(4772), [anon_sym_TILDE] = ACTIONS(4772), [sym_bool] = ACTIONS(4770), [sym_byte] = ACTIONS(4770), [sym_ubyte] = ACTIONS(4770), [sym_char] = ACTIONS(4770), [sym_short] = ACTIONS(4770), [sym_ushort] = ACTIONS(4770), [sym_int] = ACTIONS(4770), [sym_uint] = ACTIONS(4770), [sym_long] = ACTIONS(4770), [sym_ulong] = ACTIONS(4770), [sym_cent] = ACTIONS(4770), [sym_ucent] = ACTIONS(4770), [sym_wchar] = ACTIONS(4770), [sym_dchar] = ACTIONS(4770), [sym_float] = ACTIONS(4770), [sym_double] = ACTIONS(4770), [sym_real] = ACTIONS(4770), [sym_ifloat] = ACTIONS(4770), [sym_idouble] = ACTIONS(4770), [sym_ireal] = ACTIONS(4770), [sym_cfloat] = ACTIONS(4770), [sym_cdouble] = ACTIONS(4770), [sym_creal] = ACTIONS(4770), [sym_size_t] = ACTIONS(4770), [sym_ptrdiff_t] = ACTIONS(4770), [sym_string] = ACTIONS(4770), [sym_cstring] = ACTIONS(4770), [sym_dstring] = ACTIONS(4770), [sym_wstring] = ACTIONS(4770), [sym_noreturn] = ACTIONS(4770), [sym_true] = ACTIONS(4770), [sym_false] = ACTIONS(4770), [sym_null] = ACTIONS(4770), [sym_super] = ACTIONS(4770), [sym_this] = ACTIONS(4770), [sym_assert] = ACTIONS(4770), [sym_auto] = ACTIONS(4770), [sym_cast] = ACTIONS(4770), [sym_catch] = ACTIONS(4770), [sym_const] = ACTIONS(4770), [sym_delegate] = ACTIONS(4770), [sym_delete] = ACTIONS(4770), [sym_do] = ACTIONS(4770), [sym_else] = ACTIONS(4770), [sym_finally] = ACTIONS(4770), [sym_function] = ACTIONS(4770), [sym_immutable] = ACTIONS(4770), [sym_import] = ACTIONS(4770), [sym_in] = ACTIONS(4770), [sym_inout] = ACTIONS(4770), [sym_is] = ACTIONS(4770), [sym_mixin] = ACTIONS(4770), [sym_new] = ACTIONS(4770), [sym_out] = ACTIONS(4770), [sym_ref] = ACTIONS(4770), [sym_shared] = ACTIONS(4770), [sym_throw] = ACTIONS(4770), [sym_typeid] = ACTIONS(4770), [sym_typeof] = ACTIONS(4770), [sym_traits] = ACTIONS(4770), [sym_vector] = ACTIONS(4770), [sym_void] = ACTIONS(4770), [anon_sym_BQUOTE] = ACTIONS(4772), [anon_sym_r_DQUOTE] = ACTIONS(4772), [anon_sym_x_DQUOTE] = ACTIONS(4772), [anon_sym_DQUOTE] = ACTIONS(4772), [anon_sym_i_BQUOTE] = ACTIONS(4772), [anon_sym_i_DQUOTE] = ACTIONS(4772), [anon_sym_iq_LBRACE] = ACTIONS(4772), [aux_sym_char_literal_token1] = ACTIONS(4772), [anon_sym_SQUOTE] = ACTIONS(4770), [anon_sym___DATE__] = ACTIONS(4770), [anon_sym___FILE__] = ACTIONS(4770), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4770), [anon_sym___FUNCTION__] = ACTIONS(4770), [anon_sym___LINE__] = ACTIONS(4770), [anon_sym___MODULE__] = ACTIONS(4770), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4770), [anon_sym___TIME__] = ACTIONS(4770), [anon_sym___TIMESTAMP__] = ACTIONS(4770), [anon_sym___VENDOR__] = ACTIONS(4770), [anon_sym___VERSION__] = ACTIONS(4770), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4772), [sym_float_literal] = ACTIONS(4772), [sym__string] = ACTIONS(4772), }, [2334] = { [sym_identifier] = ACTIONS(4974), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4976), [anon_sym_LBRACE] = ACTIONS(4976), [anon_sym_DOT] = ACTIONS(4976), [anon_sym_AMP] = ACTIONS(4976), [anon_sym_DASH] = ACTIONS(4974), [anon_sym_DASH_DASH] = ACTIONS(4976), [anon_sym_PLUS] = ACTIONS(4974), [anon_sym_PLUS_PLUS] = ACTIONS(4976), [anon_sym_BANG] = ACTIONS(4976), [anon_sym_LPAREN] = ACTIONS(4976), [anon_sym_RPAREN] = ACTIONS(4976), [anon_sym_LBRACK] = ACTIONS(4976), [anon_sym_SEMI] = ACTIONS(4976), [anon_sym_DOLLAR] = ACTIONS(4976), [anon_sym_STAR] = ACTIONS(4976), [anon_sym_TILDE] = ACTIONS(4976), [sym_bool] = ACTIONS(4974), [sym_byte] = ACTIONS(4974), [sym_ubyte] = ACTIONS(4974), [sym_char] = ACTIONS(4974), [sym_short] = ACTIONS(4974), [sym_ushort] = ACTIONS(4974), [sym_int] = ACTIONS(4974), [sym_uint] = ACTIONS(4974), [sym_long] = ACTIONS(4974), [sym_ulong] = ACTIONS(4974), [sym_cent] = ACTIONS(4974), [sym_ucent] = ACTIONS(4974), [sym_wchar] = ACTIONS(4974), [sym_dchar] = ACTIONS(4974), [sym_float] = ACTIONS(4974), [sym_double] = ACTIONS(4974), [sym_real] = ACTIONS(4974), [sym_ifloat] = ACTIONS(4974), [sym_idouble] = ACTIONS(4974), [sym_ireal] = ACTIONS(4974), [sym_cfloat] = ACTIONS(4974), [sym_cdouble] = ACTIONS(4974), [sym_creal] = ACTIONS(4974), [sym_size_t] = ACTIONS(4974), [sym_ptrdiff_t] = ACTIONS(4974), [sym_string] = ACTIONS(4974), [sym_cstring] = ACTIONS(4974), [sym_dstring] = ACTIONS(4974), [sym_wstring] = ACTIONS(4974), [sym_noreturn] = ACTIONS(4974), [sym_true] = ACTIONS(4974), [sym_false] = ACTIONS(4974), [sym_null] = ACTIONS(4974), [sym_super] = ACTIONS(4974), [sym_this] = ACTIONS(4974), [sym_assert] = ACTIONS(4974), [sym_auto] = ACTIONS(4974), [sym_cast] = ACTIONS(4974), [sym_catch] = ACTIONS(4974), [sym_const] = ACTIONS(4974), [sym_delegate] = ACTIONS(4974), [sym_delete] = ACTIONS(4974), [sym_do] = ACTIONS(4974), [sym_else] = ACTIONS(4974), [sym_finally] = ACTIONS(4974), [sym_function] = ACTIONS(4974), [sym_immutable] = ACTIONS(4974), [sym_import] = ACTIONS(4974), [sym_in] = ACTIONS(4974), [sym_inout] = ACTIONS(4974), [sym_is] = ACTIONS(4974), [sym_mixin] = ACTIONS(4974), [sym_new] = ACTIONS(4974), [sym_out] = ACTIONS(4974), [sym_ref] = ACTIONS(4974), [sym_shared] = ACTIONS(4974), [sym_throw] = ACTIONS(4974), [sym_typeid] = ACTIONS(4974), [sym_typeof] = ACTIONS(4974), [sym_traits] = ACTIONS(4974), [sym_vector] = ACTIONS(4974), [sym_void] = ACTIONS(4974), [anon_sym_BQUOTE] = ACTIONS(4976), [anon_sym_r_DQUOTE] = ACTIONS(4976), [anon_sym_x_DQUOTE] = ACTIONS(4976), [anon_sym_DQUOTE] = ACTIONS(4976), [anon_sym_i_BQUOTE] = ACTIONS(4976), [anon_sym_i_DQUOTE] = ACTIONS(4976), [anon_sym_iq_LBRACE] = ACTIONS(4976), [aux_sym_char_literal_token1] = ACTIONS(4976), [anon_sym_SQUOTE] = ACTIONS(4974), [anon_sym___DATE__] = ACTIONS(4974), [anon_sym___FILE__] = ACTIONS(4974), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4974), [anon_sym___FUNCTION__] = ACTIONS(4974), [anon_sym___LINE__] = ACTIONS(4974), [anon_sym___MODULE__] = ACTIONS(4974), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4974), [anon_sym___TIME__] = ACTIONS(4974), [anon_sym___TIMESTAMP__] = ACTIONS(4974), [anon_sym___VENDOR__] = ACTIONS(4974), [anon_sym___VERSION__] = ACTIONS(4974), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4976), [sym_float_literal] = ACTIONS(4976), [sym__string] = ACTIONS(4976), }, [2335] = { [sym_identifier] = ACTIONS(4305), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4307), [anon_sym_LBRACE] = ACTIONS(4307), [anon_sym_DOT] = ACTIONS(4307), [anon_sym_AMP] = ACTIONS(4307), [anon_sym_DASH] = ACTIONS(4305), [anon_sym_DASH_DASH] = ACTIONS(4307), [anon_sym_PLUS] = ACTIONS(4305), [anon_sym_PLUS_PLUS] = ACTIONS(4307), [anon_sym_BANG] = ACTIONS(4307), [anon_sym_LPAREN] = ACTIONS(4307), [anon_sym_RPAREN] = ACTIONS(4307), [anon_sym_LBRACK] = ACTIONS(4307), [anon_sym_SEMI] = ACTIONS(4307), [anon_sym_DOLLAR] = ACTIONS(4307), [anon_sym_STAR] = ACTIONS(4307), [anon_sym_TILDE] = ACTIONS(4307), [sym_bool] = ACTIONS(4305), [sym_byte] = ACTIONS(4305), [sym_ubyte] = ACTIONS(4305), [sym_char] = ACTIONS(4305), [sym_short] = ACTIONS(4305), [sym_ushort] = ACTIONS(4305), [sym_int] = ACTIONS(4305), [sym_uint] = ACTIONS(4305), [sym_long] = ACTIONS(4305), [sym_ulong] = ACTIONS(4305), [sym_cent] = ACTIONS(4305), [sym_ucent] = ACTIONS(4305), [sym_wchar] = ACTIONS(4305), [sym_dchar] = ACTIONS(4305), [sym_float] = ACTIONS(4305), [sym_double] = ACTIONS(4305), [sym_real] = ACTIONS(4305), [sym_ifloat] = ACTIONS(4305), [sym_idouble] = ACTIONS(4305), [sym_ireal] = ACTIONS(4305), [sym_cfloat] = ACTIONS(4305), [sym_cdouble] = ACTIONS(4305), [sym_creal] = ACTIONS(4305), [sym_size_t] = ACTIONS(4305), [sym_ptrdiff_t] = ACTIONS(4305), [sym_string] = ACTIONS(4305), [sym_cstring] = ACTIONS(4305), [sym_dstring] = ACTIONS(4305), [sym_wstring] = ACTIONS(4305), [sym_noreturn] = ACTIONS(4305), [sym_true] = ACTIONS(4305), [sym_false] = ACTIONS(4305), [sym_null] = ACTIONS(4305), [sym_super] = ACTIONS(4305), [sym_this] = ACTIONS(4305), [sym_assert] = ACTIONS(4305), [sym_auto] = ACTIONS(4305), [sym_cast] = ACTIONS(4305), [sym_catch] = ACTIONS(4305), [sym_const] = ACTIONS(4305), [sym_delegate] = ACTIONS(4305), [sym_delete] = ACTIONS(4305), [sym_do] = ACTIONS(4305), [sym_else] = ACTIONS(4305), [sym_finally] = ACTIONS(4305), [sym_function] = ACTIONS(4305), [sym_immutable] = ACTIONS(4305), [sym_import] = ACTIONS(4305), [sym_in] = ACTIONS(4305), [sym_inout] = ACTIONS(4305), [sym_is] = ACTIONS(4305), [sym_mixin] = ACTIONS(4305), [sym_new] = ACTIONS(4305), [sym_out] = ACTIONS(4305), [sym_ref] = ACTIONS(4305), [sym_shared] = ACTIONS(4305), [sym_throw] = ACTIONS(4305), [sym_typeid] = ACTIONS(4305), [sym_typeof] = ACTIONS(4305), [sym_traits] = ACTIONS(4305), [sym_vector] = ACTIONS(4305), [sym_void] = ACTIONS(4305), [anon_sym_BQUOTE] = ACTIONS(4307), [anon_sym_r_DQUOTE] = ACTIONS(4307), [anon_sym_x_DQUOTE] = ACTIONS(4307), [anon_sym_DQUOTE] = ACTIONS(4307), [anon_sym_i_BQUOTE] = ACTIONS(4307), [anon_sym_i_DQUOTE] = ACTIONS(4307), [anon_sym_iq_LBRACE] = ACTIONS(4307), [aux_sym_char_literal_token1] = ACTIONS(4307), [anon_sym_SQUOTE] = ACTIONS(4305), [anon_sym___DATE__] = ACTIONS(4305), [anon_sym___FILE__] = ACTIONS(4305), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4305), [anon_sym___FUNCTION__] = ACTIONS(4305), [anon_sym___LINE__] = ACTIONS(4305), [anon_sym___MODULE__] = ACTIONS(4305), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4305), [anon_sym___TIME__] = ACTIONS(4305), [anon_sym___TIMESTAMP__] = ACTIONS(4305), [anon_sym___VENDOR__] = ACTIONS(4305), [anon_sym___VERSION__] = ACTIONS(4305), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4307), [sym_float_literal] = ACTIONS(4307), [sym__string] = ACTIONS(4307), }, [2336] = { [sym_identifier] = ACTIONS(4966), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4968), [anon_sym_LBRACE] = ACTIONS(4968), [anon_sym_DOT] = ACTIONS(4968), [anon_sym_AMP] = ACTIONS(4968), [anon_sym_DASH] = ACTIONS(4966), [anon_sym_DASH_DASH] = ACTIONS(4968), [anon_sym_PLUS] = ACTIONS(4966), [anon_sym_PLUS_PLUS] = ACTIONS(4968), [anon_sym_BANG] = ACTIONS(4968), [anon_sym_LPAREN] = ACTIONS(4968), [anon_sym_RPAREN] = ACTIONS(4968), [anon_sym_LBRACK] = ACTIONS(4968), [anon_sym_SEMI] = ACTIONS(4968), [anon_sym_DOLLAR] = ACTIONS(4968), [anon_sym_STAR] = ACTIONS(4968), [anon_sym_TILDE] = ACTIONS(4968), [sym_bool] = ACTIONS(4966), [sym_byte] = ACTIONS(4966), [sym_ubyte] = ACTIONS(4966), [sym_char] = ACTIONS(4966), [sym_short] = ACTIONS(4966), [sym_ushort] = ACTIONS(4966), [sym_int] = ACTIONS(4966), [sym_uint] = ACTIONS(4966), [sym_long] = ACTIONS(4966), [sym_ulong] = ACTIONS(4966), [sym_cent] = ACTIONS(4966), [sym_ucent] = ACTIONS(4966), [sym_wchar] = ACTIONS(4966), [sym_dchar] = ACTIONS(4966), [sym_float] = ACTIONS(4966), [sym_double] = ACTIONS(4966), [sym_real] = ACTIONS(4966), [sym_ifloat] = ACTIONS(4966), [sym_idouble] = ACTIONS(4966), [sym_ireal] = ACTIONS(4966), [sym_cfloat] = ACTIONS(4966), [sym_cdouble] = ACTIONS(4966), [sym_creal] = ACTIONS(4966), [sym_size_t] = ACTIONS(4966), [sym_ptrdiff_t] = ACTIONS(4966), [sym_string] = ACTIONS(4966), [sym_cstring] = ACTIONS(4966), [sym_dstring] = ACTIONS(4966), [sym_wstring] = ACTIONS(4966), [sym_noreturn] = ACTIONS(4966), [sym_true] = ACTIONS(4966), [sym_false] = ACTIONS(4966), [sym_null] = ACTIONS(4966), [sym_super] = ACTIONS(4966), [sym_this] = ACTIONS(4966), [sym_assert] = ACTIONS(4966), [sym_auto] = ACTIONS(4966), [sym_cast] = ACTIONS(4966), [sym_catch] = ACTIONS(4966), [sym_const] = ACTIONS(4966), [sym_delegate] = ACTIONS(4966), [sym_delete] = ACTIONS(4966), [sym_do] = ACTIONS(4966), [sym_else] = ACTIONS(4966), [sym_finally] = ACTIONS(4966), [sym_function] = ACTIONS(4966), [sym_immutable] = ACTIONS(4966), [sym_import] = ACTIONS(4966), [sym_in] = ACTIONS(4966), [sym_inout] = ACTIONS(4966), [sym_is] = ACTIONS(4966), [sym_mixin] = ACTIONS(4966), [sym_new] = ACTIONS(4966), [sym_out] = ACTIONS(4966), [sym_ref] = ACTIONS(4966), [sym_shared] = ACTIONS(4966), [sym_throw] = ACTIONS(4966), [sym_typeid] = ACTIONS(4966), [sym_typeof] = ACTIONS(4966), [sym_traits] = ACTIONS(4966), [sym_vector] = ACTIONS(4966), [sym_void] = ACTIONS(4966), [anon_sym_BQUOTE] = ACTIONS(4968), [anon_sym_r_DQUOTE] = ACTIONS(4968), [anon_sym_x_DQUOTE] = ACTIONS(4968), [anon_sym_DQUOTE] = ACTIONS(4968), [anon_sym_i_BQUOTE] = ACTIONS(4968), [anon_sym_i_DQUOTE] = ACTIONS(4968), [anon_sym_iq_LBRACE] = ACTIONS(4968), [aux_sym_char_literal_token1] = ACTIONS(4968), [anon_sym_SQUOTE] = ACTIONS(4966), [anon_sym___DATE__] = ACTIONS(4966), [anon_sym___FILE__] = ACTIONS(4966), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4966), [anon_sym___FUNCTION__] = ACTIONS(4966), [anon_sym___LINE__] = ACTIONS(4966), [anon_sym___MODULE__] = ACTIONS(4966), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4966), [anon_sym___TIME__] = ACTIONS(4966), [anon_sym___TIMESTAMP__] = ACTIONS(4966), [anon_sym___VENDOR__] = ACTIONS(4966), [anon_sym___VERSION__] = ACTIONS(4966), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4968), [sym_float_literal] = ACTIONS(4968), [sym__string] = ACTIONS(4968), }, [2337] = { [sym_identifier] = ACTIONS(4856), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4858), [anon_sym_LBRACE] = ACTIONS(4858), [anon_sym_DOT] = ACTIONS(4858), [anon_sym_AMP] = ACTIONS(4858), [anon_sym_DASH] = ACTIONS(4856), [anon_sym_DASH_DASH] = ACTIONS(4858), [anon_sym_PLUS] = ACTIONS(4856), [anon_sym_PLUS_PLUS] = ACTIONS(4858), [anon_sym_BANG] = ACTIONS(4858), [anon_sym_LPAREN] = ACTIONS(4858), [anon_sym_RPAREN] = ACTIONS(4858), [anon_sym_LBRACK] = ACTIONS(4858), [anon_sym_SEMI] = ACTIONS(4858), [anon_sym_DOLLAR] = ACTIONS(4858), [anon_sym_STAR] = ACTIONS(4858), [anon_sym_TILDE] = ACTIONS(4858), [sym_bool] = ACTIONS(4856), [sym_byte] = ACTIONS(4856), [sym_ubyte] = ACTIONS(4856), [sym_char] = ACTIONS(4856), [sym_short] = ACTIONS(4856), [sym_ushort] = ACTIONS(4856), [sym_int] = ACTIONS(4856), [sym_uint] = ACTIONS(4856), [sym_long] = ACTIONS(4856), [sym_ulong] = ACTIONS(4856), [sym_cent] = ACTIONS(4856), [sym_ucent] = ACTIONS(4856), [sym_wchar] = ACTIONS(4856), [sym_dchar] = ACTIONS(4856), [sym_float] = ACTIONS(4856), [sym_double] = ACTIONS(4856), [sym_real] = ACTIONS(4856), [sym_ifloat] = ACTIONS(4856), [sym_idouble] = ACTIONS(4856), [sym_ireal] = ACTIONS(4856), [sym_cfloat] = ACTIONS(4856), [sym_cdouble] = ACTIONS(4856), [sym_creal] = ACTIONS(4856), [sym_size_t] = ACTIONS(4856), [sym_ptrdiff_t] = ACTIONS(4856), [sym_string] = ACTIONS(4856), [sym_cstring] = ACTIONS(4856), [sym_dstring] = ACTIONS(4856), [sym_wstring] = ACTIONS(4856), [sym_noreturn] = ACTIONS(4856), [sym_true] = ACTIONS(4856), [sym_false] = ACTIONS(4856), [sym_null] = ACTIONS(4856), [sym_super] = ACTIONS(4856), [sym_this] = ACTIONS(4856), [sym_assert] = ACTIONS(4856), [sym_auto] = ACTIONS(4856), [sym_cast] = ACTIONS(4856), [sym_catch] = ACTIONS(4856), [sym_const] = ACTIONS(4856), [sym_delegate] = ACTIONS(4856), [sym_delete] = ACTIONS(4856), [sym_do] = ACTIONS(4856), [sym_else] = ACTIONS(4856), [sym_finally] = ACTIONS(4856), [sym_function] = ACTIONS(4856), [sym_immutable] = ACTIONS(4856), [sym_import] = ACTIONS(4856), [sym_in] = ACTIONS(4856), [sym_inout] = ACTIONS(4856), [sym_is] = ACTIONS(4856), [sym_mixin] = ACTIONS(4856), [sym_new] = ACTIONS(4856), [sym_out] = ACTIONS(4856), [sym_ref] = ACTIONS(4856), [sym_shared] = ACTIONS(4856), [sym_throw] = ACTIONS(4856), [sym_typeid] = ACTIONS(4856), [sym_typeof] = ACTIONS(4856), [sym_traits] = ACTIONS(4856), [sym_vector] = ACTIONS(4856), [sym_void] = ACTIONS(4856), [anon_sym_BQUOTE] = ACTIONS(4858), [anon_sym_r_DQUOTE] = ACTIONS(4858), [anon_sym_x_DQUOTE] = ACTIONS(4858), [anon_sym_DQUOTE] = ACTIONS(4858), [anon_sym_i_BQUOTE] = ACTIONS(4858), [anon_sym_i_DQUOTE] = ACTIONS(4858), [anon_sym_iq_LBRACE] = ACTIONS(4858), [aux_sym_char_literal_token1] = ACTIONS(4858), [anon_sym_SQUOTE] = ACTIONS(4856), [anon_sym___DATE__] = ACTIONS(4856), [anon_sym___FILE__] = ACTIONS(4856), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4856), [anon_sym___FUNCTION__] = ACTIONS(4856), [anon_sym___LINE__] = ACTIONS(4856), [anon_sym___MODULE__] = ACTIONS(4856), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4856), [anon_sym___TIME__] = ACTIONS(4856), [anon_sym___TIMESTAMP__] = ACTIONS(4856), [anon_sym___VENDOR__] = ACTIONS(4856), [anon_sym___VERSION__] = ACTIONS(4856), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4858), [sym_float_literal] = ACTIONS(4858), [sym__string] = ACTIONS(4858), }, [2338] = { [sym_identifier] = ACTIONS(5052), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5054), [anon_sym_LBRACE] = ACTIONS(5054), [anon_sym_DOT] = ACTIONS(5054), [anon_sym_AMP] = ACTIONS(5054), [anon_sym_DASH] = ACTIONS(5052), [anon_sym_DASH_DASH] = ACTIONS(5054), [anon_sym_PLUS] = ACTIONS(5052), [anon_sym_PLUS_PLUS] = ACTIONS(5054), [anon_sym_BANG] = ACTIONS(5054), [anon_sym_LPAREN] = ACTIONS(5054), [anon_sym_RPAREN] = ACTIONS(5054), [anon_sym_LBRACK] = ACTIONS(5054), [anon_sym_SEMI] = ACTIONS(5054), [anon_sym_DOLLAR] = ACTIONS(5054), [anon_sym_STAR] = ACTIONS(5054), [anon_sym_TILDE] = ACTIONS(5054), [sym_bool] = ACTIONS(5052), [sym_byte] = ACTIONS(5052), [sym_ubyte] = ACTIONS(5052), [sym_char] = ACTIONS(5052), [sym_short] = ACTIONS(5052), [sym_ushort] = ACTIONS(5052), [sym_int] = ACTIONS(5052), [sym_uint] = ACTIONS(5052), [sym_long] = ACTIONS(5052), [sym_ulong] = ACTIONS(5052), [sym_cent] = ACTIONS(5052), [sym_ucent] = ACTIONS(5052), [sym_wchar] = ACTIONS(5052), [sym_dchar] = ACTIONS(5052), [sym_float] = ACTIONS(5052), [sym_double] = ACTIONS(5052), [sym_real] = ACTIONS(5052), [sym_ifloat] = ACTIONS(5052), [sym_idouble] = ACTIONS(5052), [sym_ireal] = ACTIONS(5052), [sym_cfloat] = ACTIONS(5052), [sym_cdouble] = ACTIONS(5052), [sym_creal] = ACTIONS(5052), [sym_size_t] = ACTIONS(5052), [sym_ptrdiff_t] = ACTIONS(5052), [sym_string] = ACTIONS(5052), [sym_cstring] = ACTIONS(5052), [sym_dstring] = ACTIONS(5052), [sym_wstring] = ACTIONS(5052), [sym_noreturn] = ACTIONS(5052), [sym_true] = ACTIONS(5052), [sym_false] = ACTIONS(5052), [sym_null] = ACTIONS(5052), [sym_super] = ACTIONS(5052), [sym_this] = ACTIONS(5052), [sym_assert] = ACTIONS(5052), [sym_auto] = ACTIONS(5052), [sym_cast] = ACTIONS(5052), [sym_catch] = ACTIONS(5052), [sym_const] = ACTIONS(5052), [sym_delegate] = ACTIONS(5052), [sym_delete] = ACTIONS(5052), [sym_do] = ACTIONS(5052), [sym_else] = ACTIONS(5052), [sym_finally] = ACTIONS(5052), [sym_function] = ACTIONS(5052), [sym_immutable] = ACTIONS(5052), [sym_import] = ACTIONS(5052), [sym_in] = ACTIONS(5052), [sym_inout] = ACTIONS(5052), [sym_is] = ACTIONS(5052), [sym_mixin] = ACTIONS(5052), [sym_new] = ACTIONS(5052), [sym_out] = ACTIONS(5052), [sym_ref] = ACTIONS(5052), [sym_shared] = ACTIONS(5052), [sym_throw] = ACTIONS(5052), [sym_typeid] = ACTIONS(5052), [sym_typeof] = ACTIONS(5052), [sym_traits] = ACTIONS(5052), [sym_vector] = ACTIONS(5052), [sym_void] = ACTIONS(5052), [anon_sym_BQUOTE] = ACTIONS(5054), [anon_sym_r_DQUOTE] = ACTIONS(5054), [anon_sym_x_DQUOTE] = ACTIONS(5054), [anon_sym_DQUOTE] = ACTIONS(5054), [anon_sym_i_BQUOTE] = ACTIONS(5054), [anon_sym_i_DQUOTE] = ACTIONS(5054), [anon_sym_iq_LBRACE] = ACTIONS(5054), [aux_sym_char_literal_token1] = ACTIONS(5054), [anon_sym_SQUOTE] = ACTIONS(5052), [anon_sym___DATE__] = ACTIONS(5052), [anon_sym___FILE__] = ACTIONS(5052), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5052), [anon_sym___FUNCTION__] = ACTIONS(5052), [anon_sym___LINE__] = ACTIONS(5052), [anon_sym___MODULE__] = ACTIONS(5052), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5052), [anon_sym___TIME__] = ACTIONS(5052), [anon_sym___TIMESTAMP__] = ACTIONS(5052), [anon_sym___VENDOR__] = ACTIONS(5052), [anon_sym___VERSION__] = ACTIONS(5052), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5054), [sym_float_literal] = ACTIONS(5054), [sym__string] = ACTIONS(5054), }, [2339] = { [sym_identifier] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4448), [anon_sym_LBRACE] = ACTIONS(4448), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_AMP] = ACTIONS(4448), [anon_sym_DASH] = ACTIONS(4446), [anon_sym_DASH_DASH] = ACTIONS(4448), [anon_sym_PLUS] = ACTIONS(4446), [anon_sym_PLUS_PLUS] = ACTIONS(4448), [anon_sym_BANG] = ACTIONS(4448), [anon_sym_LPAREN] = ACTIONS(4448), [anon_sym_RPAREN] = ACTIONS(4448), [anon_sym_LBRACK] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_DOLLAR] = ACTIONS(4448), [anon_sym_STAR] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_true] = ACTIONS(4446), [sym_false] = ACTIONS(4446), [sym_null] = ACTIONS(4446), [sym_super] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_assert] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_cast] = ACTIONS(4446), [sym_catch] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_delegate] = ACTIONS(4446), [sym_delete] = ACTIONS(4446), [sym_do] = ACTIONS(4446), [sym_else] = ACTIONS(6576), [sym_finally] = ACTIONS(4446), [sym_function] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_in] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_is] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_new] = ACTIONS(4446), [sym_out] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_throw] = ACTIONS(4446), [sym_typeid] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [anon_sym_BQUOTE] = ACTIONS(4448), [anon_sym_r_DQUOTE] = ACTIONS(4448), [anon_sym_x_DQUOTE] = ACTIONS(4448), [anon_sym_DQUOTE] = ACTIONS(4448), [anon_sym_i_BQUOTE] = ACTIONS(4448), [anon_sym_i_DQUOTE] = ACTIONS(4448), [anon_sym_iq_LBRACE] = ACTIONS(4448), [aux_sym_char_literal_token1] = ACTIONS(4448), [anon_sym_SQUOTE] = ACTIONS(4446), [anon_sym___DATE__] = ACTIONS(4446), [anon_sym___FILE__] = ACTIONS(4446), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4446), [anon_sym___FUNCTION__] = ACTIONS(4446), [anon_sym___LINE__] = ACTIONS(4446), [anon_sym___MODULE__] = ACTIONS(4446), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4446), [anon_sym___TIME__] = ACTIONS(4446), [anon_sym___TIMESTAMP__] = ACTIONS(4446), [anon_sym___VENDOR__] = ACTIONS(4446), [anon_sym___VERSION__] = ACTIONS(4446), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4448), [sym_float_literal] = ACTIONS(4448), [sym__string] = ACTIONS(4448), }, [2340] = { [sym_identifier] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2782), [anon_sym_LBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_AMP] = ACTIONS(2782), [anon_sym_DASH] = ACTIONS(2784), [anon_sym_DASH_DASH] = ACTIONS(2782), [anon_sym_PLUS] = ACTIONS(2784), [anon_sym_PLUS_PLUS] = ACTIONS(2782), [anon_sym_BANG] = ACTIONS(2782), [anon_sym_LPAREN] = ACTIONS(2782), [anon_sym_RPAREN] = ACTIONS(2782), [anon_sym_LBRACK] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_DOLLAR] = ACTIONS(2782), [anon_sym_STAR] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_true] = ACTIONS(2784), [sym_false] = ACTIONS(2784), [sym_null] = ACTIONS(2784), [sym_super] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_assert] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_cast] = ACTIONS(2784), [sym_catch] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_delegate] = ACTIONS(2784), [sym_delete] = ACTIONS(2784), [sym_do] = ACTIONS(2784), [sym_else] = ACTIONS(6578), [sym_finally] = ACTIONS(2784), [sym_function] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_in] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_is] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_new] = ACTIONS(2784), [sym_out] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_throw] = ACTIONS(2784), [sym_typeid] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [anon_sym_BQUOTE] = ACTIONS(2782), [anon_sym_r_DQUOTE] = ACTIONS(2782), [anon_sym_x_DQUOTE] = ACTIONS(2782), [anon_sym_DQUOTE] = ACTIONS(2782), [anon_sym_i_BQUOTE] = ACTIONS(2782), [anon_sym_i_DQUOTE] = ACTIONS(2782), [anon_sym_iq_LBRACE] = ACTIONS(2782), [aux_sym_char_literal_token1] = ACTIONS(2782), [anon_sym_SQUOTE] = ACTIONS(2784), [anon_sym___DATE__] = ACTIONS(2784), [anon_sym___FILE__] = ACTIONS(2784), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2784), [anon_sym___FUNCTION__] = ACTIONS(2784), [anon_sym___LINE__] = ACTIONS(2784), [anon_sym___MODULE__] = ACTIONS(2784), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2784), [anon_sym___TIME__] = ACTIONS(2784), [anon_sym___TIMESTAMP__] = ACTIONS(2784), [anon_sym___VENDOR__] = ACTIONS(2784), [anon_sym___VERSION__] = ACTIONS(2784), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2782), [sym_float_literal] = ACTIONS(2782), [sym__string] = ACTIONS(2782), }, [2341] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(6580), [sym_finally] = ACTIONS(2665), [sym_function] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [2342] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(6582), [sym_finally] = ACTIONS(2798), [sym_function] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [2343] = { [sym_identifier] = ACTIONS(4996), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4998), [anon_sym_LBRACE] = ACTIONS(4998), [anon_sym_DOT] = ACTIONS(4998), [anon_sym_AMP] = ACTIONS(4998), [anon_sym_DASH] = ACTIONS(4996), [anon_sym_DASH_DASH] = ACTIONS(4998), [anon_sym_PLUS] = ACTIONS(4996), [anon_sym_PLUS_PLUS] = ACTIONS(4998), [anon_sym_BANG] = ACTIONS(4998), [anon_sym_LPAREN] = ACTIONS(4998), [anon_sym_RPAREN] = ACTIONS(4998), [anon_sym_LBRACK] = ACTIONS(4998), [anon_sym_SEMI] = ACTIONS(4998), [anon_sym_DOLLAR] = ACTIONS(4998), [anon_sym_STAR] = ACTIONS(4998), [anon_sym_TILDE] = ACTIONS(4998), [sym_bool] = ACTIONS(4996), [sym_byte] = ACTIONS(4996), [sym_ubyte] = ACTIONS(4996), [sym_char] = ACTIONS(4996), [sym_short] = ACTIONS(4996), [sym_ushort] = ACTIONS(4996), [sym_int] = ACTIONS(4996), [sym_uint] = ACTIONS(4996), [sym_long] = ACTIONS(4996), [sym_ulong] = ACTIONS(4996), [sym_cent] = ACTIONS(4996), [sym_ucent] = ACTIONS(4996), [sym_wchar] = ACTIONS(4996), [sym_dchar] = ACTIONS(4996), [sym_float] = ACTIONS(4996), [sym_double] = ACTIONS(4996), [sym_real] = ACTIONS(4996), [sym_ifloat] = ACTIONS(4996), [sym_idouble] = ACTIONS(4996), [sym_ireal] = ACTIONS(4996), [sym_cfloat] = ACTIONS(4996), [sym_cdouble] = ACTIONS(4996), [sym_creal] = ACTIONS(4996), [sym_size_t] = ACTIONS(4996), [sym_ptrdiff_t] = ACTIONS(4996), [sym_string] = ACTIONS(4996), [sym_cstring] = ACTIONS(4996), [sym_dstring] = ACTIONS(4996), [sym_wstring] = ACTIONS(4996), [sym_noreturn] = ACTIONS(4996), [sym_true] = ACTIONS(4996), [sym_false] = ACTIONS(4996), [sym_null] = ACTIONS(4996), [sym_super] = ACTIONS(4996), [sym_this] = ACTIONS(4996), [sym_assert] = ACTIONS(4996), [sym_auto] = ACTIONS(4996), [sym_cast] = ACTIONS(4996), [sym_catch] = ACTIONS(4996), [sym_const] = ACTIONS(4996), [sym_delegate] = ACTIONS(4996), [sym_delete] = ACTIONS(4996), [sym_do] = ACTIONS(4996), [sym_else] = ACTIONS(4996), [sym_finally] = ACTIONS(4996), [sym_function] = ACTIONS(4996), [sym_immutable] = ACTIONS(4996), [sym_import] = ACTIONS(4996), [sym_in] = ACTIONS(4996), [sym_inout] = ACTIONS(4996), [sym_is] = ACTIONS(4996), [sym_mixin] = ACTIONS(4996), [sym_new] = ACTIONS(4996), [sym_out] = ACTIONS(4996), [sym_ref] = ACTIONS(4996), [sym_shared] = ACTIONS(4996), [sym_throw] = ACTIONS(4996), [sym_typeid] = ACTIONS(4996), [sym_typeof] = ACTIONS(4996), [sym_traits] = ACTIONS(4996), [sym_vector] = ACTIONS(4996), [sym_void] = ACTIONS(4996), [anon_sym_BQUOTE] = ACTIONS(4998), [anon_sym_r_DQUOTE] = ACTIONS(4998), [anon_sym_x_DQUOTE] = ACTIONS(4998), [anon_sym_DQUOTE] = ACTIONS(4998), [anon_sym_i_BQUOTE] = ACTIONS(4998), [anon_sym_i_DQUOTE] = ACTIONS(4998), [anon_sym_iq_LBRACE] = ACTIONS(4998), [aux_sym_char_literal_token1] = ACTIONS(4998), [anon_sym_SQUOTE] = ACTIONS(4996), [anon_sym___DATE__] = ACTIONS(4996), [anon_sym___FILE__] = ACTIONS(4996), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4996), [anon_sym___FUNCTION__] = ACTIONS(4996), [anon_sym___LINE__] = ACTIONS(4996), [anon_sym___MODULE__] = ACTIONS(4996), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4996), [anon_sym___TIME__] = ACTIONS(4996), [anon_sym___TIMESTAMP__] = ACTIONS(4996), [anon_sym___VENDOR__] = ACTIONS(4996), [anon_sym___VERSION__] = ACTIONS(4996), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4998), [sym_float_literal] = ACTIONS(4998), [sym__string] = ACTIONS(4998), }, [2344] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_catch] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(6584), [sym_finally] = ACTIONS(4359), [sym_function] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [2345] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_catch] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(6586), [sym_finally] = ACTIONS(4640), [sym_function] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [2346] = { [sym_identifier] = ACTIONS(4932), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4934), [anon_sym_LBRACE] = ACTIONS(4934), [anon_sym_DOT] = ACTIONS(4934), [anon_sym_AMP] = ACTIONS(4934), [anon_sym_DASH] = ACTIONS(4932), [anon_sym_DASH_DASH] = ACTIONS(4934), [anon_sym_PLUS] = ACTIONS(4932), [anon_sym_PLUS_PLUS] = ACTIONS(4934), [anon_sym_BANG] = ACTIONS(4934), [anon_sym_LPAREN] = ACTIONS(4934), [anon_sym_RPAREN] = ACTIONS(4934), [anon_sym_LBRACK] = ACTIONS(4934), [anon_sym_SEMI] = ACTIONS(4934), [anon_sym_DOLLAR] = ACTIONS(4934), [anon_sym_STAR] = ACTIONS(4934), [anon_sym_TILDE] = ACTIONS(4934), [sym_bool] = ACTIONS(4932), [sym_byte] = ACTIONS(4932), [sym_ubyte] = ACTIONS(4932), [sym_char] = ACTIONS(4932), [sym_short] = ACTIONS(4932), [sym_ushort] = ACTIONS(4932), [sym_int] = ACTIONS(4932), [sym_uint] = ACTIONS(4932), [sym_long] = ACTIONS(4932), [sym_ulong] = ACTIONS(4932), [sym_cent] = ACTIONS(4932), [sym_ucent] = ACTIONS(4932), [sym_wchar] = ACTIONS(4932), [sym_dchar] = ACTIONS(4932), [sym_float] = ACTIONS(4932), [sym_double] = ACTIONS(4932), [sym_real] = ACTIONS(4932), [sym_ifloat] = ACTIONS(4932), [sym_idouble] = ACTIONS(4932), [sym_ireal] = ACTIONS(4932), [sym_cfloat] = ACTIONS(4932), [sym_cdouble] = ACTIONS(4932), [sym_creal] = ACTIONS(4932), [sym_size_t] = ACTIONS(4932), [sym_ptrdiff_t] = ACTIONS(4932), [sym_string] = ACTIONS(4932), [sym_cstring] = ACTIONS(4932), [sym_dstring] = ACTIONS(4932), [sym_wstring] = ACTIONS(4932), [sym_noreturn] = ACTIONS(4932), [sym_true] = ACTIONS(4932), [sym_false] = ACTIONS(4932), [sym_null] = ACTIONS(4932), [sym_super] = ACTIONS(4932), [sym_this] = ACTIONS(4932), [sym_assert] = ACTIONS(4932), [sym_auto] = ACTIONS(4932), [sym_cast] = ACTIONS(4932), [sym_catch] = ACTIONS(4932), [sym_const] = ACTIONS(4932), [sym_delegate] = ACTIONS(4932), [sym_delete] = ACTIONS(4932), [sym_do] = ACTIONS(4932), [sym_else] = ACTIONS(4932), [sym_finally] = ACTIONS(4932), [sym_function] = ACTIONS(4932), [sym_immutable] = ACTIONS(4932), [sym_import] = ACTIONS(4932), [sym_in] = ACTIONS(4932), [sym_inout] = ACTIONS(4932), [sym_is] = ACTIONS(4932), [sym_mixin] = ACTIONS(4932), [sym_new] = ACTIONS(4932), [sym_out] = ACTIONS(4932), [sym_ref] = ACTIONS(4932), [sym_shared] = ACTIONS(4932), [sym_throw] = ACTIONS(4932), [sym_typeid] = ACTIONS(4932), [sym_typeof] = ACTIONS(4932), [sym_traits] = ACTIONS(4932), [sym_vector] = ACTIONS(4932), [sym_void] = ACTIONS(4932), [anon_sym_BQUOTE] = ACTIONS(4934), [anon_sym_r_DQUOTE] = ACTIONS(4934), [anon_sym_x_DQUOTE] = ACTIONS(4934), [anon_sym_DQUOTE] = ACTIONS(4934), [anon_sym_i_BQUOTE] = ACTIONS(4934), [anon_sym_i_DQUOTE] = ACTIONS(4934), [anon_sym_iq_LBRACE] = ACTIONS(4934), [aux_sym_char_literal_token1] = ACTIONS(4934), [anon_sym_SQUOTE] = ACTIONS(4932), [anon_sym___DATE__] = ACTIONS(4932), [anon_sym___FILE__] = ACTIONS(4932), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4932), [anon_sym___FUNCTION__] = ACTIONS(4932), [anon_sym___LINE__] = ACTIONS(4932), [anon_sym___MODULE__] = ACTIONS(4932), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4932), [anon_sym___TIME__] = ACTIONS(4932), [anon_sym___TIMESTAMP__] = ACTIONS(4932), [anon_sym___VENDOR__] = ACTIONS(4932), [anon_sym___VERSION__] = ACTIONS(4932), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4934), [sym_float_literal] = ACTIONS(4934), [sym__string] = ACTIONS(4934), }, [2347] = { [sym_identifier] = ACTIONS(4936), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4938), [anon_sym_LBRACE] = ACTIONS(4938), [anon_sym_DOT] = ACTIONS(4938), [anon_sym_AMP] = ACTIONS(4938), [anon_sym_DASH] = ACTIONS(4936), [anon_sym_DASH_DASH] = ACTIONS(4938), [anon_sym_PLUS] = ACTIONS(4936), [anon_sym_PLUS_PLUS] = ACTIONS(4938), [anon_sym_BANG] = ACTIONS(4938), [anon_sym_LPAREN] = ACTIONS(4938), [anon_sym_RPAREN] = ACTIONS(4938), [anon_sym_LBRACK] = ACTIONS(4938), [anon_sym_SEMI] = ACTIONS(4938), [anon_sym_DOLLAR] = ACTIONS(4938), [anon_sym_STAR] = ACTIONS(4938), [anon_sym_TILDE] = ACTIONS(4938), [sym_bool] = ACTIONS(4936), [sym_byte] = ACTIONS(4936), [sym_ubyte] = ACTIONS(4936), [sym_char] = ACTIONS(4936), [sym_short] = ACTIONS(4936), [sym_ushort] = ACTIONS(4936), [sym_int] = ACTIONS(4936), [sym_uint] = ACTIONS(4936), [sym_long] = ACTIONS(4936), [sym_ulong] = ACTIONS(4936), [sym_cent] = ACTIONS(4936), [sym_ucent] = ACTIONS(4936), [sym_wchar] = ACTIONS(4936), [sym_dchar] = ACTIONS(4936), [sym_float] = ACTIONS(4936), [sym_double] = ACTIONS(4936), [sym_real] = ACTIONS(4936), [sym_ifloat] = ACTIONS(4936), [sym_idouble] = ACTIONS(4936), [sym_ireal] = ACTIONS(4936), [sym_cfloat] = ACTIONS(4936), [sym_cdouble] = ACTIONS(4936), [sym_creal] = ACTIONS(4936), [sym_size_t] = ACTIONS(4936), [sym_ptrdiff_t] = ACTIONS(4936), [sym_string] = ACTIONS(4936), [sym_cstring] = ACTIONS(4936), [sym_dstring] = ACTIONS(4936), [sym_wstring] = ACTIONS(4936), [sym_noreturn] = ACTIONS(4936), [sym_true] = ACTIONS(4936), [sym_false] = ACTIONS(4936), [sym_null] = ACTIONS(4936), [sym_super] = ACTIONS(4936), [sym_this] = ACTIONS(4936), [sym_assert] = ACTIONS(4936), [sym_auto] = ACTIONS(4936), [sym_cast] = ACTIONS(4936), [sym_catch] = ACTIONS(4936), [sym_const] = ACTIONS(4936), [sym_delegate] = ACTIONS(4936), [sym_delete] = ACTIONS(4936), [sym_do] = ACTIONS(4936), [sym_else] = ACTIONS(4936), [sym_finally] = ACTIONS(4936), [sym_function] = ACTIONS(4936), [sym_immutable] = ACTIONS(4936), [sym_import] = ACTIONS(4936), [sym_in] = ACTIONS(4936), [sym_inout] = ACTIONS(4936), [sym_is] = ACTIONS(4936), [sym_mixin] = ACTIONS(4936), [sym_new] = ACTIONS(4936), [sym_out] = ACTIONS(4936), [sym_ref] = ACTIONS(4936), [sym_shared] = ACTIONS(4936), [sym_throw] = ACTIONS(4936), [sym_typeid] = ACTIONS(4936), [sym_typeof] = ACTIONS(4936), [sym_traits] = ACTIONS(4936), [sym_vector] = ACTIONS(4936), [sym_void] = ACTIONS(4936), [anon_sym_BQUOTE] = ACTIONS(4938), [anon_sym_r_DQUOTE] = ACTIONS(4938), [anon_sym_x_DQUOTE] = ACTIONS(4938), [anon_sym_DQUOTE] = ACTIONS(4938), [anon_sym_i_BQUOTE] = ACTIONS(4938), [anon_sym_i_DQUOTE] = ACTIONS(4938), [anon_sym_iq_LBRACE] = ACTIONS(4938), [aux_sym_char_literal_token1] = ACTIONS(4938), [anon_sym_SQUOTE] = ACTIONS(4936), [anon_sym___DATE__] = ACTIONS(4936), [anon_sym___FILE__] = ACTIONS(4936), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4936), [anon_sym___FUNCTION__] = ACTIONS(4936), [anon_sym___LINE__] = ACTIONS(4936), [anon_sym___MODULE__] = ACTIONS(4936), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4936), [anon_sym___TIME__] = ACTIONS(4936), [anon_sym___TIMESTAMP__] = ACTIONS(4936), [anon_sym___VENDOR__] = ACTIONS(4936), [anon_sym___VERSION__] = ACTIONS(4936), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4938), [sym_float_literal] = ACTIONS(4938), [sym__string] = ACTIONS(4938), }, [2348] = { [sym_identifier] = ACTIONS(5040), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5042), [anon_sym_LBRACE] = ACTIONS(5042), [anon_sym_DOT] = ACTIONS(5042), [anon_sym_AMP] = ACTIONS(5042), [anon_sym_DASH] = ACTIONS(5040), [anon_sym_DASH_DASH] = ACTIONS(5042), [anon_sym_PLUS] = ACTIONS(5040), [anon_sym_PLUS_PLUS] = ACTIONS(5042), [anon_sym_BANG] = ACTIONS(5042), [anon_sym_LPAREN] = ACTIONS(5042), [anon_sym_RPAREN] = ACTIONS(5042), [anon_sym_LBRACK] = ACTIONS(5042), [anon_sym_SEMI] = ACTIONS(5042), [anon_sym_DOLLAR] = ACTIONS(5042), [anon_sym_STAR] = ACTIONS(5042), [anon_sym_TILDE] = ACTIONS(5042), [sym_bool] = ACTIONS(5040), [sym_byte] = ACTIONS(5040), [sym_ubyte] = ACTIONS(5040), [sym_char] = ACTIONS(5040), [sym_short] = ACTIONS(5040), [sym_ushort] = ACTIONS(5040), [sym_int] = ACTIONS(5040), [sym_uint] = ACTIONS(5040), [sym_long] = ACTIONS(5040), [sym_ulong] = ACTIONS(5040), [sym_cent] = ACTIONS(5040), [sym_ucent] = ACTIONS(5040), [sym_wchar] = ACTIONS(5040), [sym_dchar] = ACTIONS(5040), [sym_float] = ACTIONS(5040), [sym_double] = ACTIONS(5040), [sym_real] = ACTIONS(5040), [sym_ifloat] = ACTIONS(5040), [sym_idouble] = ACTIONS(5040), [sym_ireal] = ACTIONS(5040), [sym_cfloat] = ACTIONS(5040), [sym_cdouble] = ACTIONS(5040), [sym_creal] = ACTIONS(5040), [sym_size_t] = ACTIONS(5040), [sym_ptrdiff_t] = ACTIONS(5040), [sym_string] = ACTIONS(5040), [sym_cstring] = ACTIONS(5040), [sym_dstring] = ACTIONS(5040), [sym_wstring] = ACTIONS(5040), [sym_noreturn] = ACTIONS(5040), [sym_true] = ACTIONS(5040), [sym_false] = ACTIONS(5040), [sym_null] = ACTIONS(5040), [sym_super] = ACTIONS(5040), [sym_this] = ACTIONS(5040), [sym_assert] = ACTIONS(5040), [sym_auto] = ACTIONS(5040), [sym_cast] = ACTIONS(5040), [sym_catch] = ACTIONS(5040), [sym_const] = ACTIONS(5040), [sym_delegate] = ACTIONS(5040), [sym_delete] = ACTIONS(5040), [sym_do] = ACTIONS(5040), [sym_else] = ACTIONS(5040), [sym_finally] = ACTIONS(5040), [sym_function] = ACTIONS(5040), [sym_immutable] = ACTIONS(5040), [sym_import] = ACTIONS(5040), [sym_in] = ACTIONS(5040), [sym_inout] = ACTIONS(5040), [sym_is] = ACTIONS(5040), [sym_mixin] = ACTIONS(5040), [sym_new] = ACTIONS(5040), [sym_out] = ACTIONS(5040), [sym_ref] = ACTIONS(5040), [sym_shared] = ACTIONS(5040), [sym_throw] = ACTIONS(5040), [sym_typeid] = ACTIONS(5040), [sym_typeof] = ACTIONS(5040), [sym_traits] = ACTIONS(5040), [sym_vector] = ACTIONS(5040), [sym_void] = ACTIONS(5040), [anon_sym_BQUOTE] = ACTIONS(5042), [anon_sym_r_DQUOTE] = ACTIONS(5042), [anon_sym_x_DQUOTE] = ACTIONS(5042), [anon_sym_DQUOTE] = ACTIONS(5042), [anon_sym_i_BQUOTE] = ACTIONS(5042), [anon_sym_i_DQUOTE] = ACTIONS(5042), [anon_sym_iq_LBRACE] = ACTIONS(5042), [aux_sym_char_literal_token1] = ACTIONS(5042), [anon_sym_SQUOTE] = ACTIONS(5040), [anon_sym___DATE__] = ACTIONS(5040), [anon_sym___FILE__] = ACTIONS(5040), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5040), [anon_sym___FUNCTION__] = ACTIONS(5040), [anon_sym___LINE__] = ACTIONS(5040), [anon_sym___MODULE__] = ACTIONS(5040), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5040), [anon_sym___TIME__] = ACTIONS(5040), [anon_sym___TIMESTAMP__] = ACTIONS(5040), [anon_sym___VENDOR__] = ACTIONS(5040), [anon_sym___VERSION__] = ACTIONS(5040), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5042), [sym_float_literal] = ACTIONS(5042), [sym__string] = ACTIONS(5042), }, [2349] = { [sym_identifier] = ACTIONS(4480), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4482), [anon_sym_LBRACE] = ACTIONS(4482), [anon_sym_DOT] = ACTIONS(4482), [anon_sym_AMP] = ACTIONS(4482), [anon_sym_DASH] = ACTIONS(4480), [anon_sym_DASH_DASH] = ACTIONS(4482), [anon_sym_PLUS] = ACTIONS(4480), [anon_sym_PLUS_PLUS] = ACTIONS(4482), [anon_sym_BANG] = ACTIONS(4482), [anon_sym_LPAREN] = ACTIONS(4482), [anon_sym_RPAREN] = ACTIONS(4482), [anon_sym_LBRACK] = ACTIONS(4482), [anon_sym_SEMI] = ACTIONS(4482), [anon_sym_DOLLAR] = ACTIONS(4482), [anon_sym_STAR] = ACTIONS(4482), [anon_sym_TILDE] = ACTIONS(4482), [sym_bool] = ACTIONS(4480), [sym_byte] = ACTIONS(4480), [sym_ubyte] = ACTIONS(4480), [sym_char] = ACTIONS(4480), [sym_short] = ACTIONS(4480), [sym_ushort] = ACTIONS(4480), [sym_int] = ACTIONS(4480), [sym_uint] = ACTIONS(4480), [sym_long] = ACTIONS(4480), [sym_ulong] = ACTIONS(4480), [sym_cent] = ACTIONS(4480), [sym_ucent] = ACTIONS(4480), [sym_wchar] = ACTIONS(4480), [sym_dchar] = ACTIONS(4480), [sym_float] = ACTIONS(4480), [sym_double] = ACTIONS(4480), [sym_real] = ACTIONS(4480), [sym_ifloat] = ACTIONS(4480), [sym_idouble] = ACTIONS(4480), [sym_ireal] = ACTIONS(4480), [sym_cfloat] = ACTIONS(4480), [sym_cdouble] = ACTIONS(4480), [sym_creal] = ACTIONS(4480), [sym_size_t] = ACTIONS(4480), [sym_ptrdiff_t] = ACTIONS(4480), [sym_string] = ACTIONS(4480), [sym_cstring] = ACTIONS(4480), [sym_dstring] = ACTIONS(4480), [sym_wstring] = ACTIONS(4480), [sym_noreturn] = ACTIONS(4480), [sym_true] = ACTIONS(4480), [sym_false] = ACTIONS(4480), [sym_null] = ACTIONS(4480), [sym_super] = ACTIONS(4480), [sym_this] = ACTIONS(4480), [sym_assert] = ACTIONS(4480), [sym_auto] = ACTIONS(4480), [sym_cast] = ACTIONS(4480), [sym_catch] = ACTIONS(4480), [sym_const] = ACTIONS(4480), [sym_delegate] = ACTIONS(4480), [sym_delete] = ACTIONS(4480), [sym_do] = ACTIONS(4480), [sym_else] = ACTIONS(4480), [sym_finally] = ACTIONS(4480), [sym_function] = ACTIONS(4480), [sym_immutable] = ACTIONS(4480), [sym_import] = ACTIONS(4480), [sym_in] = ACTIONS(4480), [sym_inout] = ACTIONS(4480), [sym_is] = ACTIONS(4480), [sym_mixin] = ACTIONS(4480), [sym_new] = ACTIONS(4480), [sym_out] = ACTIONS(4480), [sym_ref] = ACTIONS(4480), [sym_shared] = ACTIONS(4480), [sym_throw] = ACTIONS(4480), [sym_typeid] = ACTIONS(4480), [sym_typeof] = ACTIONS(4480), [sym_traits] = ACTIONS(4480), [sym_vector] = ACTIONS(4480), [sym_void] = ACTIONS(4480), [anon_sym_BQUOTE] = ACTIONS(4482), [anon_sym_r_DQUOTE] = ACTIONS(4482), [anon_sym_x_DQUOTE] = ACTIONS(4482), [anon_sym_DQUOTE] = ACTIONS(4482), [anon_sym_i_BQUOTE] = ACTIONS(4482), [anon_sym_i_DQUOTE] = ACTIONS(4482), [anon_sym_iq_LBRACE] = ACTIONS(4482), [aux_sym_char_literal_token1] = ACTIONS(4482), [anon_sym_SQUOTE] = ACTIONS(4480), [anon_sym___DATE__] = ACTIONS(4480), [anon_sym___FILE__] = ACTIONS(4480), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4480), [anon_sym___FUNCTION__] = ACTIONS(4480), [anon_sym___LINE__] = ACTIONS(4480), [anon_sym___MODULE__] = ACTIONS(4480), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4480), [anon_sym___TIME__] = ACTIONS(4480), [anon_sym___TIMESTAMP__] = ACTIONS(4480), [anon_sym___VENDOR__] = ACTIONS(4480), [anon_sym___VERSION__] = ACTIONS(4480), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4482), [sym_float_literal] = ACTIONS(4482), [sym__string] = ACTIONS(4482), }, [2350] = { [sym_identifier] = ACTIONS(5044), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5046), [anon_sym_LBRACE] = ACTIONS(5046), [anon_sym_DOT] = ACTIONS(5046), [anon_sym_AMP] = ACTIONS(5046), [anon_sym_DASH] = ACTIONS(5044), [anon_sym_DASH_DASH] = ACTIONS(5046), [anon_sym_PLUS] = ACTIONS(5044), [anon_sym_PLUS_PLUS] = ACTIONS(5046), [anon_sym_BANG] = ACTIONS(5046), [anon_sym_LPAREN] = ACTIONS(5046), [anon_sym_RPAREN] = ACTIONS(5046), [anon_sym_LBRACK] = ACTIONS(5046), [anon_sym_SEMI] = ACTIONS(5046), [anon_sym_DOLLAR] = ACTIONS(5046), [anon_sym_STAR] = ACTIONS(5046), [anon_sym_TILDE] = ACTIONS(5046), [sym_bool] = ACTIONS(5044), [sym_byte] = ACTIONS(5044), [sym_ubyte] = ACTIONS(5044), [sym_char] = ACTIONS(5044), [sym_short] = ACTIONS(5044), [sym_ushort] = ACTIONS(5044), [sym_int] = ACTIONS(5044), [sym_uint] = ACTIONS(5044), [sym_long] = ACTIONS(5044), [sym_ulong] = ACTIONS(5044), [sym_cent] = ACTIONS(5044), [sym_ucent] = ACTIONS(5044), [sym_wchar] = ACTIONS(5044), [sym_dchar] = ACTIONS(5044), [sym_float] = ACTIONS(5044), [sym_double] = ACTIONS(5044), [sym_real] = ACTIONS(5044), [sym_ifloat] = ACTIONS(5044), [sym_idouble] = ACTIONS(5044), [sym_ireal] = ACTIONS(5044), [sym_cfloat] = ACTIONS(5044), [sym_cdouble] = ACTIONS(5044), [sym_creal] = ACTIONS(5044), [sym_size_t] = ACTIONS(5044), [sym_ptrdiff_t] = ACTIONS(5044), [sym_string] = ACTIONS(5044), [sym_cstring] = ACTIONS(5044), [sym_dstring] = ACTIONS(5044), [sym_wstring] = ACTIONS(5044), [sym_noreturn] = ACTIONS(5044), [sym_true] = ACTIONS(5044), [sym_false] = ACTIONS(5044), [sym_null] = ACTIONS(5044), [sym_super] = ACTIONS(5044), [sym_this] = ACTIONS(5044), [sym_assert] = ACTIONS(5044), [sym_auto] = ACTIONS(5044), [sym_cast] = ACTIONS(5044), [sym_catch] = ACTIONS(5044), [sym_const] = ACTIONS(5044), [sym_delegate] = ACTIONS(5044), [sym_delete] = ACTIONS(5044), [sym_do] = ACTIONS(5044), [sym_else] = ACTIONS(5044), [sym_finally] = ACTIONS(5044), [sym_function] = ACTIONS(5044), [sym_immutable] = ACTIONS(5044), [sym_import] = ACTIONS(5044), [sym_in] = ACTIONS(5044), [sym_inout] = ACTIONS(5044), [sym_is] = ACTIONS(5044), [sym_mixin] = ACTIONS(5044), [sym_new] = ACTIONS(5044), [sym_out] = ACTIONS(5044), [sym_ref] = ACTIONS(5044), [sym_shared] = ACTIONS(5044), [sym_throw] = ACTIONS(5044), [sym_typeid] = ACTIONS(5044), [sym_typeof] = ACTIONS(5044), [sym_traits] = ACTIONS(5044), [sym_vector] = ACTIONS(5044), [sym_void] = ACTIONS(5044), [anon_sym_BQUOTE] = ACTIONS(5046), [anon_sym_r_DQUOTE] = ACTIONS(5046), [anon_sym_x_DQUOTE] = ACTIONS(5046), [anon_sym_DQUOTE] = ACTIONS(5046), [anon_sym_i_BQUOTE] = ACTIONS(5046), [anon_sym_i_DQUOTE] = ACTIONS(5046), [anon_sym_iq_LBRACE] = ACTIONS(5046), [aux_sym_char_literal_token1] = ACTIONS(5046), [anon_sym_SQUOTE] = ACTIONS(5044), [anon_sym___DATE__] = ACTIONS(5044), [anon_sym___FILE__] = ACTIONS(5044), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5044), [anon_sym___FUNCTION__] = ACTIONS(5044), [anon_sym___LINE__] = ACTIONS(5044), [anon_sym___MODULE__] = ACTIONS(5044), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5044), [anon_sym___TIME__] = ACTIONS(5044), [anon_sym___TIMESTAMP__] = ACTIONS(5044), [anon_sym___VENDOR__] = ACTIONS(5044), [anon_sym___VERSION__] = ACTIONS(5044), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5046), [sym_float_literal] = ACTIONS(5046), [sym__string] = ACTIONS(5046), }, [2351] = { [sym_identifier] = ACTIONS(5056), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(5058), [anon_sym_LBRACE] = ACTIONS(5058), [anon_sym_DOT] = ACTIONS(5058), [anon_sym_AMP] = ACTIONS(5058), [anon_sym_DASH] = ACTIONS(5056), [anon_sym_DASH_DASH] = ACTIONS(5058), [anon_sym_PLUS] = ACTIONS(5056), [anon_sym_PLUS_PLUS] = ACTIONS(5058), [anon_sym_BANG] = ACTIONS(5058), [anon_sym_LPAREN] = ACTIONS(5058), [anon_sym_RPAREN] = ACTIONS(5058), [anon_sym_LBRACK] = ACTIONS(5058), [anon_sym_SEMI] = ACTIONS(5058), [anon_sym_DOLLAR] = ACTIONS(5058), [anon_sym_STAR] = ACTIONS(5058), [anon_sym_TILDE] = ACTIONS(5058), [sym_bool] = ACTIONS(5056), [sym_byte] = ACTIONS(5056), [sym_ubyte] = ACTIONS(5056), [sym_char] = ACTIONS(5056), [sym_short] = ACTIONS(5056), [sym_ushort] = ACTIONS(5056), [sym_int] = ACTIONS(5056), [sym_uint] = ACTIONS(5056), [sym_long] = ACTIONS(5056), [sym_ulong] = ACTIONS(5056), [sym_cent] = ACTIONS(5056), [sym_ucent] = ACTIONS(5056), [sym_wchar] = ACTIONS(5056), [sym_dchar] = ACTIONS(5056), [sym_float] = ACTIONS(5056), [sym_double] = ACTIONS(5056), [sym_real] = ACTIONS(5056), [sym_ifloat] = ACTIONS(5056), [sym_idouble] = ACTIONS(5056), [sym_ireal] = ACTIONS(5056), [sym_cfloat] = ACTIONS(5056), [sym_cdouble] = ACTIONS(5056), [sym_creal] = ACTIONS(5056), [sym_size_t] = ACTIONS(5056), [sym_ptrdiff_t] = ACTIONS(5056), [sym_string] = ACTIONS(5056), [sym_cstring] = ACTIONS(5056), [sym_dstring] = ACTIONS(5056), [sym_wstring] = ACTIONS(5056), [sym_noreturn] = ACTIONS(5056), [sym_true] = ACTIONS(5056), [sym_false] = ACTIONS(5056), [sym_null] = ACTIONS(5056), [sym_super] = ACTIONS(5056), [sym_this] = ACTIONS(5056), [sym_assert] = ACTIONS(5056), [sym_auto] = ACTIONS(5056), [sym_cast] = ACTIONS(5056), [sym_catch] = ACTIONS(5056), [sym_const] = ACTIONS(5056), [sym_delegate] = ACTIONS(5056), [sym_delete] = ACTIONS(5056), [sym_do] = ACTIONS(5056), [sym_else] = ACTIONS(5056), [sym_finally] = ACTIONS(5056), [sym_function] = ACTIONS(5056), [sym_immutable] = ACTIONS(5056), [sym_import] = ACTIONS(5056), [sym_in] = ACTIONS(5056), [sym_inout] = ACTIONS(5056), [sym_is] = ACTIONS(5056), [sym_mixin] = ACTIONS(5056), [sym_new] = ACTIONS(5056), [sym_out] = ACTIONS(5056), [sym_ref] = ACTIONS(5056), [sym_shared] = ACTIONS(5056), [sym_throw] = ACTIONS(5056), [sym_typeid] = ACTIONS(5056), [sym_typeof] = ACTIONS(5056), [sym_traits] = ACTIONS(5056), [sym_vector] = ACTIONS(5056), [sym_void] = ACTIONS(5056), [anon_sym_BQUOTE] = ACTIONS(5058), [anon_sym_r_DQUOTE] = ACTIONS(5058), [anon_sym_x_DQUOTE] = ACTIONS(5058), [anon_sym_DQUOTE] = ACTIONS(5058), [anon_sym_i_BQUOTE] = ACTIONS(5058), [anon_sym_i_DQUOTE] = ACTIONS(5058), [anon_sym_iq_LBRACE] = ACTIONS(5058), [aux_sym_char_literal_token1] = ACTIONS(5058), [anon_sym_SQUOTE] = ACTIONS(5056), [anon_sym___DATE__] = ACTIONS(5056), [anon_sym___FILE__] = ACTIONS(5056), [anon_sym___FILE_FULL_PATH__] = ACTIONS(5056), [anon_sym___FUNCTION__] = ACTIONS(5056), [anon_sym___LINE__] = ACTIONS(5056), [anon_sym___MODULE__] = ACTIONS(5056), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(5056), [anon_sym___TIME__] = ACTIONS(5056), [anon_sym___TIMESTAMP__] = ACTIONS(5056), [anon_sym___VENDOR__] = ACTIONS(5056), [anon_sym___VERSION__] = ACTIONS(5056), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(5058), [sym_float_literal] = ACTIONS(5058), [sym__string] = ACTIONS(5058), }, [2352] = { [sym_identifier] = ACTIONS(4566), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4568), [anon_sym_LBRACE] = ACTIONS(4568), [anon_sym_DOT] = ACTIONS(4568), [anon_sym_AMP] = ACTIONS(4568), [anon_sym_DASH] = ACTIONS(4566), [anon_sym_DASH_DASH] = ACTIONS(4568), [anon_sym_PLUS] = ACTIONS(4566), [anon_sym_PLUS_PLUS] = ACTIONS(4568), [anon_sym_BANG] = ACTIONS(4568), [anon_sym_LPAREN] = ACTIONS(4568), [anon_sym_RPAREN] = ACTIONS(4568), [anon_sym_LBRACK] = ACTIONS(4568), [anon_sym_SEMI] = ACTIONS(4568), [anon_sym_DOLLAR] = ACTIONS(4568), [anon_sym_STAR] = ACTIONS(4568), [anon_sym_TILDE] = ACTIONS(4568), [sym_bool] = ACTIONS(4566), [sym_byte] = ACTIONS(4566), [sym_ubyte] = ACTIONS(4566), [sym_char] = ACTIONS(4566), [sym_short] = ACTIONS(4566), [sym_ushort] = ACTIONS(4566), [sym_int] = ACTIONS(4566), [sym_uint] = ACTIONS(4566), [sym_long] = ACTIONS(4566), [sym_ulong] = ACTIONS(4566), [sym_cent] = ACTIONS(4566), [sym_ucent] = ACTIONS(4566), [sym_wchar] = ACTIONS(4566), [sym_dchar] = ACTIONS(4566), [sym_float] = ACTIONS(4566), [sym_double] = ACTIONS(4566), [sym_real] = ACTIONS(4566), [sym_ifloat] = ACTIONS(4566), [sym_idouble] = ACTIONS(4566), [sym_ireal] = ACTIONS(4566), [sym_cfloat] = ACTIONS(4566), [sym_cdouble] = ACTIONS(4566), [sym_creal] = ACTIONS(4566), [sym_size_t] = ACTIONS(4566), [sym_ptrdiff_t] = ACTIONS(4566), [sym_string] = ACTIONS(4566), [sym_cstring] = ACTIONS(4566), [sym_dstring] = ACTIONS(4566), [sym_wstring] = ACTIONS(4566), [sym_noreturn] = ACTIONS(4566), [sym_true] = ACTIONS(4566), [sym_false] = ACTIONS(4566), [sym_null] = ACTIONS(4566), [sym_super] = ACTIONS(4566), [sym_this] = ACTIONS(4566), [sym_assert] = ACTIONS(4566), [sym_auto] = ACTIONS(4566), [sym_cast] = ACTIONS(4566), [sym_catch] = ACTIONS(4566), [sym_const] = ACTIONS(4566), [sym_delegate] = ACTIONS(4566), [sym_delete] = ACTIONS(4566), [sym_do] = ACTIONS(4566), [sym_else] = ACTIONS(4566), [sym_finally] = ACTIONS(4566), [sym_function] = ACTIONS(4566), [sym_immutable] = ACTIONS(4566), [sym_import] = ACTIONS(4566), [sym_in] = ACTIONS(4566), [sym_inout] = ACTIONS(4566), [sym_is] = ACTIONS(4566), [sym_mixin] = ACTIONS(4566), [sym_new] = ACTIONS(4566), [sym_out] = ACTIONS(4566), [sym_ref] = ACTIONS(4566), [sym_shared] = ACTIONS(4566), [sym_throw] = ACTIONS(4566), [sym_typeid] = ACTIONS(4566), [sym_typeof] = ACTIONS(4566), [sym_traits] = ACTIONS(4566), [sym_vector] = ACTIONS(4566), [sym_void] = ACTIONS(4566), [anon_sym_BQUOTE] = ACTIONS(4568), [anon_sym_r_DQUOTE] = ACTIONS(4568), [anon_sym_x_DQUOTE] = ACTIONS(4568), [anon_sym_DQUOTE] = ACTIONS(4568), [anon_sym_i_BQUOTE] = ACTIONS(4568), [anon_sym_i_DQUOTE] = ACTIONS(4568), [anon_sym_iq_LBRACE] = ACTIONS(4568), [aux_sym_char_literal_token1] = ACTIONS(4568), [anon_sym_SQUOTE] = ACTIONS(4566), [anon_sym___DATE__] = ACTIONS(4566), [anon_sym___FILE__] = ACTIONS(4566), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4566), [anon_sym___FUNCTION__] = ACTIONS(4566), [anon_sym___LINE__] = ACTIONS(4566), [anon_sym___MODULE__] = ACTIONS(4566), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4566), [anon_sym___TIME__] = ACTIONS(4566), [anon_sym___TIMESTAMP__] = ACTIONS(4566), [anon_sym___VENDOR__] = ACTIONS(4566), [anon_sym___VERSION__] = ACTIONS(4566), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4568), [sym_float_literal] = ACTIONS(4568), [sym__string] = ACTIONS(4568), }, [2353] = { [sym_identifier] = ACTIONS(4578), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4580), [anon_sym_LBRACE] = ACTIONS(4580), [anon_sym_DOT] = ACTIONS(4580), [anon_sym_AMP] = ACTIONS(4580), [anon_sym_DASH] = ACTIONS(4578), [anon_sym_DASH_DASH] = ACTIONS(4580), [anon_sym_PLUS] = ACTIONS(4578), [anon_sym_PLUS_PLUS] = ACTIONS(4580), [anon_sym_BANG] = ACTIONS(4580), [anon_sym_LPAREN] = ACTIONS(4580), [anon_sym_RPAREN] = ACTIONS(4580), [anon_sym_LBRACK] = ACTIONS(4580), [anon_sym_SEMI] = ACTIONS(4580), [anon_sym_DOLLAR] = ACTIONS(4580), [anon_sym_STAR] = ACTIONS(4580), [anon_sym_TILDE] = ACTIONS(4580), [sym_bool] = ACTIONS(4578), [sym_byte] = ACTIONS(4578), [sym_ubyte] = ACTIONS(4578), [sym_char] = ACTIONS(4578), [sym_short] = ACTIONS(4578), [sym_ushort] = ACTIONS(4578), [sym_int] = ACTIONS(4578), [sym_uint] = ACTIONS(4578), [sym_long] = ACTIONS(4578), [sym_ulong] = ACTIONS(4578), [sym_cent] = ACTIONS(4578), [sym_ucent] = ACTIONS(4578), [sym_wchar] = ACTIONS(4578), [sym_dchar] = ACTIONS(4578), [sym_float] = ACTIONS(4578), [sym_double] = ACTIONS(4578), [sym_real] = ACTIONS(4578), [sym_ifloat] = ACTIONS(4578), [sym_idouble] = ACTIONS(4578), [sym_ireal] = ACTIONS(4578), [sym_cfloat] = ACTIONS(4578), [sym_cdouble] = ACTIONS(4578), [sym_creal] = ACTIONS(4578), [sym_size_t] = ACTIONS(4578), [sym_ptrdiff_t] = ACTIONS(4578), [sym_string] = ACTIONS(4578), [sym_cstring] = ACTIONS(4578), [sym_dstring] = ACTIONS(4578), [sym_wstring] = ACTIONS(4578), [sym_noreturn] = ACTIONS(4578), [sym_true] = ACTIONS(4578), [sym_false] = ACTIONS(4578), [sym_null] = ACTIONS(4578), [sym_super] = ACTIONS(4578), [sym_this] = ACTIONS(4578), [sym_assert] = ACTIONS(4578), [sym_auto] = ACTIONS(4578), [sym_cast] = ACTIONS(4578), [sym_catch] = ACTIONS(4578), [sym_const] = ACTIONS(4578), [sym_delegate] = ACTIONS(4578), [sym_delete] = ACTIONS(4578), [sym_do] = ACTIONS(4578), [sym_else] = ACTIONS(4578), [sym_finally] = ACTIONS(4578), [sym_function] = ACTIONS(4578), [sym_immutable] = ACTIONS(4578), [sym_import] = ACTIONS(4578), [sym_in] = ACTIONS(4578), [sym_inout] = ACTIONS(4578), [sym_is] = ACTIONS(4578), [sym_mixin] = ACTIONS(4578), [sym_new] = ACTIONS(4578), [sym_out] = ACTIONS(4578), [sym_ref] = ACTIONS(4578), [sym_shared] = ACTIONS(4578), [sym_throw] = ACTIONS(4578), [sym_typeid] = ACTIONS(4578), [sym_typeof] = ACTIONS(4578), [sym_traits] = ACTIONS(4578), [sym_vector] = ACTIONS(4578), [sym_void] = ACTIONS(4578), [anon_sym_BQUOTE] = ACTIONS(4580), [anon_sym_r_DQUOTE] = ACTIONS(4580), [anon_sym_x_DQUOTE] = ACTIONS(4580), [anon_sym_DQUOTE] = ACTIONS(4580), [anon_sym_i_BQUOTE] = ACTIONS(4580), [anon_sym_i_DQUOTE] = ACTIONS(4580), [anon_sym_iq_LBRACE] = ACTIONS(4580), [aux_sym_char_literal_token1] = ACTIONS(4580), [anon_sym_SQUOTE] = ACTIONS(4578), [anon_sym___DATE__] = ACTIONS(4578), [anon_sym___FILE__] = ACTIONS(4578), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4578), [anon_sym___FUNCTION__] = ACTIONS(4578), [anon_sym___LINE__] = ACTIONS(4578), [anon_sym___MODULE__] = ACTIONS(4578), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4578), [anon_sym___TIME__] = ACTIONS(4578), [anon_sym___TIMESTAMP__] = ACTIONS(4578), [anon_sym___VENDOR__] = ACTIONS(4578), [anon_sym___VERSION__] = ACTIONS(4578), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4580), [sym_float_literal] = ACTIONS(4580), [sym__string] = ACTIONS(4580), }, [2354] = { [sym_identifier] = ACTIONS(4860), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4862), [anon_sym_LBRACE] = ACTIONS(4862), [anon_sym_DOT] = ACTIONS(4862), [anon_sym_AMP] = ACTIONS(4862), [anon_sym_DASH] = ACTIONS(4860), [anon_sym_DASH_DASH] = ACTIONS(4862), [anon_sym_PLUS] = ACTIONS(4860), [anon_sym_PLUS_PLUS] = ACTIONS(4862), [anon_sym_BANG] = ACTIONS(4862), [anon_sym_LPAREN] = ACTIONS(4862), [anon_sym_RPAREN] = ACTIONS(4862), [anon_sym_LBRACK] = ACTIONS(4862), [anon_sym_SEMI] = ACTIONS(4862), [anon_sym_DOLLAR] = ACTIONS(4862), [anon_sym_STAR] = ACTIONS(4862), [anon_sym_TILDE] = ACTIONS(4862), [sym_bool] = ACTIONS(4860), [sym_byte] = ACTIONS(4860), [sym_ubyte] = ACTIONS(4860), [sym_char] = ACTIONS(4860), [sym_short] = ACTIONS(4860), [sym_ushort] = ACTIONS(4860), [sym_int] = ACTIONS(4860), [sym_uint] = ACTIONS(4860), [sym_long] = ACTIONS(4860), [sym_ulong] = ACTIONS(4860), [sym_cent] = ACTIONS(4860), [sym_ucent] = ACTIONS(4860), [sym_wchar] = ACTIONS(4860), [sym_dchar] = ACTIONS(4860), [sym_float] = ACTIONS(4860), [sym_double] = ACTIONS(4860), [sym_real] = ACTIONS(4860), [sym_ifloat] = ACTIONS(4860), [sym_idouble] = ACTIONS(4860), [sym_ireal] = ACTIONS(4860), [sym_cfloat] = ACTIONS(4860), [sym_cdouble] = ACTIONS(4860), [sym_creal] = ACTIONS(4860), [sym_size_t] = ACTIONS(4860), [sym_ptrdiff_t] = ACTIONS(4860), [sym_string] = ACTIONS(4860), [sym_cstring] = ACTIONS(4860), [sym_dstring] = ACTIONS(4860), [sym_wstring] = ACTIONS(4860), [sym_noreturn] = ACTIONS(4860), [sym_true] = ACTIONS(4860), [sym_false] = ACTIONS(4860), [sym_null] = ACTIONS(4860), [sym_super] = ACTIONS(4860), [sym_this] = ACTIONS(4860), [sym_assert] = ACTIONS(4860), [sym_auto] = ACTIONS(4860), [sym_cast] = ACTIONS(4860), [sym_catch] = ACTIONS(4860), [sym_const] = ACTIONS(4860), [sym_delegate] = ACTIONS(4860), [sym_delete] = ACTIONS(4860), [sym_do] = ACTIONS(4860), [sym_else] = ACTIONS(4860), [sym_finally] = ACTIONS(4860), [sym_function] = ACTIONS(4860), [sym_immutable] = ACTIONS(4860), [sym_import] = ACTIONS(4860), [sym_in] = ACTIONS(4860), [sym_inout] = ACTIONS(4860), [sym_is] = ACTIONS(4860), [sym_mixin] = ACTIONS(4860), [sym_new] = ACTIONS(4860), [sym_out] = ACTIONS(4860), [sym_ref] = ACTIONS(4860), [sym_shared] = ACTIONS(4860), [sym_throw] = ACTIONS(4860), [sym_typeid] = ACTIONS(4860), [sym_typeof] = ACTIONS(4860), [sym_traits] = ACTIONS(4860), [sym_vector] = ACTIONS(4860), [sym_void] = ACTIONS(4860), [anon_sym_BQUOTE] = ACTIONS(4862), [anon_sym_r_DQUOTE] = ACTIONS(4862), [anon_sym_x_DQUOTE] = ACTIONS(4862), [anon_sym_DQUOTE] = ACTIONS(4862), [anon_sym_i_BQUOTE] = ACTIONS(4862), [anon_sym_i_DQUOTE] = ACTIONS(4862), [anon_sym_iq_LBRACE] = ACTIONS(4862), [aux_sym_char_literal_token1] = ACTIONS(4862), [anon_sym_SQUOTE] = ACTIONS(4860), [anon_sym___DATE__] = ACTIONS(4860), [anon_sym___FILE__] = ACTIONS(4860), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4860), [anon_sym___FUNCTION__] = ACTIONS(4860), [anon_sym___LINE__] = ACTIONS(4860), [anon_sym___MODULE__] = ACTIONS(4860), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4860), [anon_sym___TIME__] = ACTIONS(4860), [anon_sym___TIMESTAMP__] = ACTIONS(4860), [anon_sym___VENDOR__] = ACTIONS(4860), [anon_sym___VERSION__] = ACTIONS(4860), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4862), [sym_float_literal] = ACTIONS(4862), [sym__string] = ACTIONS(4862), }, [2355] = { [sym_identifier] = ACTIONS(4558), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4560), [anon_sym_LBRACE] = ACTIONS(4560), [anon_sym_DOT] = ACTIONS(4560), [anon_sym_AMP] = ACTIONS(4560), [anon_sym_DASH] = ACTIONS(4558), [anon_sym_DASH_DASH] = ACTIONS(4560), [anon_sym_PLUS] = ACTIONS(4558), [anon_sym_PLUS_PLUS] = ACTIONS(4560), [anon_sym_BANG] = ACTIONS(4560), [anon_sym_LPAREN] = ACTIONS(4560), [anon_sym_RPAREN] = ACTIONS(4560), [anon_sym_LBRACK] = ACTIONS(4560), [anon_sym_SEMI] = ACTIONS(4560), [anon_sym_DOLLAR] = ACTIONS(4560), [anon_sym_STAR] = ACTIONS(4560), [anon_sym_TILDE] = ACTIONS(4560), [sym_bool] = ACTIONS(4558), [sym_byte] = ACTIONS(4558), [sym_ubyte] = ACTIONS(4558), [sym_char] = ACTIONS(4558), [sym_short] = ACTIONS(4558), [sym_ushort] = ACTIONS(4558), [sym_int] = ACTIONS(4558), [sym_uint] = ACTIONS(4558), [sym_long] = ACTIONS(4558), [sym_ulong] = ACTIONS(4558), [sym_cent] = ACTIONS(4558), [sym_ucent] = ACTIONS(4558), [sym_wchar] = ACTIONS(4558), [sym_dchar] = ACTIONS(4558), [sym_float] = ACTIONS(4558), [sym_double] = ACTIONS(4558), [sym_real] = ACTIONS(4558), [sym_ifloat] = ACTIONS(4558), [sym_idouble] = ACTIONS(4558), [sym_ireal] = ACTIONS(4558), [sym_cfloat] = ACTIONS(4558), [sym_cdouble] = ACTIONS(4558), [sym_creal] = ACTIONS(4558), [sym_size_t] = ACTIONS(4558), [sym_ptrdiff_t] = ACTIONS(4558), [sym_string] = ACTIONS(4558), [sym_cstring] = ACTIONS(4558), [sym_dstring] = ACTIONS(4558), [sym_wstring] = ACTIONS(4558), [sym_noreturn] = ACTIONS(4558), [sym_true] = ACTIONS(4558), [sym_false] = ACTIONS(4558), [sym_null] = ACTIONS(4558), [sym_super] = ACTIONS(4558), [sym_this] = ACTIONS(4558), [sym_assert] = ACTIONS(4558), [sym_auto] = ACTIONS(4558), [sym_cast] = ACTIONS(4558), [sym_catch] = ACTIONS(4558), [sym_const] = ACTIONS(4558), [sym_delegate] = ACTIONS(4558), [sym_delete] = ACTIONS(4558), [sym_do] = ACTIONS(4558), [sym_else] = ACTIONS(4558), [sym_finally] = ACTIONS(4558), [sym_function] = ACTIONS(4558), [sym_immutable] = ACTIONS(4558), [sym_import] = ACTIONS(4558), [sym_in] = ACTIONS(4558), [sym_inout] = ACTIONS(4558), [sym_is] = ACTIONS(4558), [sym_mixin] = ACTIONS(4558), [sym_new] = ACTIONS(4558), [sym_out] = ACTIONS(4558), [sym_ref] = ACTIONS(4558), [sym_shared] = ACTIONS(4558), [sym_throw] = ACTIONS(4558), [sym_typeid] = ACTIONS(4558), [sym_typeof] = ACTIONS(4558), [sym_traits] = ACTIONS(4558), [sym_vector] = ACTIONS(4558), [sym_void] = ACTIONS(4558), [anon_sym_BQUOTE] = ACTIONS(4560), [anon_sym_r_DQUOTE] = ACTIONS(4560), [anon_sym_x_DQUOTE] = ACTIONS(4560), [anon_sym_DQUOTE] = ACTIONS(4560), [anon_sym_i_BQUOTE] = ACTIONS(4560), [anon_sym_i_DQUOTE] = ACTIONS(4560), [anon_sym_iq_LBRACE] = ACTIONS(4560), [aux_sym_char_literal_token1] = ACTIONS(4560), [anon_sym_SQUOTE] = ACTIONS(4558), [anon_sym___DATE__] = ACTIONS(4558), [anon_sym___FILE__] = ACTIONS(4558), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4558), [anon_sym___FUNCTION__] = ACTIONS(4558), [anon_sym___LINE__] = ACTIONS(4558), [anon_sym___MODULE__] = ACTIONS(4558), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4558), [anon_sym___TIME__] = ACTIONS(4558), [anon_sym___TIMESTAMP__] = ACTIONS(4558), [anon_sym___VENDOR__] = ACTIONS(4558), [anon_sym___VERSION__] = ACTIONS(4558), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4560), [sym_float_literal] = ACTIONS(4560), [sym__string] = ACTIONS(4560), }, [2356] = { [sym_identifier] = ACTIONS(4852), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4854), [anon_sym_LBRACE] = ACTIONS(4854), [anon_sym_DOT] = ACTIONS(4854), [anon_sym_AMP] = ACTIONS(4854), [anon_sym_DASH] = ACTIONS(4852), [anon_sym_DASH_DASH] = ACTIONS(4854), [anon_sym_PLUS] = ACTIONS(4852), [anon_sym_PLUS_PLUS] = ACTIONS(4854), [anon_sym_BANG] = ACTIONS(4854), [anon_sym_LPAREN] = ACTIONS(4854), [anon_sym_RPAREN] = ACTIONS(4854), [anon_sym_LBRACK] = ACTIONS(4854), [anon_sym_SEMI] = ACTIONS(4854), [anon_sym_DOLLAR] = ACTIONS(4854), [anon_sym_STAR] = ACTIONS(4854), [anon_sym_TILDE] = ACTIONS(4854), [sym_bool] = ACTIONS(4852), [sym_byte] = ACTIONS(4852), [sym_ubyte] = ACTIONS(4852), [sym_char] = ACTIONS(4852), [sym_short] = ACTIONS(4852), [sym_ushort] = ACTIONS(4852), [sym_int] = ACTIONS(4852), [sym_uint] = ACTIONS(4852), [sym_long] = ACTIONS(4852), [sym_ulong] = ACTIONS(4852), [sym_cent] = ACTIONS(4852), [sym_ucent] = ACTIONS(4852), [sym_wchar] = ACTIONS(4852), [sym_dchar] = ACTIONS(4852), [sym_float] = ACTIONS(4852), [sym_double] = ACTIONS(4852), [sym_real] = ACTIONS(4852), [sym_ifloat] = ACTIONS(4852), [sym_idouble] = ACTIONS(4852), [sym_ireal] = ACTIONS(4852), [sym_cfloat] = ACTIONS(4852), [sym_cdouble] = ACTIONS(4852), [sym_creal] = ACTIONS(4852), [sym_size_t] = ACTIONS(4852), [sym_ptrdiff_t] = ACTIONS(4852), [sym_string] = ACTIONS(4852), [sym_cstring] = ACTIONS(4852), [sym_dstring] = ACTIONS(4852), [sym_wstring] = ACTIONS(4852), [sym_noreturn] = ACTIONS(4852), [sym_true] = ACTIONS(4852), [sym_false] = ACTIONS(4852), [sym_null] = ACTIONS(4852), [sym_super] = ACTIONS(4852), [sym_this] = ACTIONS(4852), [sym_assert] = ACTIONS(4852), [sym_auto] = ACTIONS(4852), [sym_cast] = ACTIONS(4852), [sym_catch] = ACTIONS(4852), [sym_const] = ACTIONS(4852), [sym_delegate] = ACTIONS(4852), [sym_delete] = ACTIONS(4852), [sym_do] = ACTIONS(4852), [sym_else] = ACTIONS(4852), [sym_finally] = ACTIONS(4852), [sym_function] = ACTIONS(4852), [sym_immutable] = ACTIONS(4852), [sym_import] = ACTIONS(4852), [sym_in] = ACTIONS(4852), [sym_inout] = ACTIONS(4852), [sym_is] = ACTIONS(4852), [sym_mixin] = ACTIONS(4852), [sym_new] = ACTIONS(4852), [sym_out] = ACTIONS(4852), [sym_ref] = ACTIONS(4852), [sym_shared] = ACTIONS(4852), [sym_throw] = ACTIONS(4852), [sym_typeid] = ACTIONS(4852), [sym_typeof] = ACTIONS(4852), [sym_traits] = ACTIONS(4852), [sym_vector] = ACTIONS(4852), [sym_void] = ACTIONS(4852), [anon_sym_BQUOTE] = ACTIONS(4854), [anon_sym_r_DQUOTE] = ACTIONS(4854), [anon_sym_x_DQUOTE] = ACTIONS(4854), [anon_sym_DQUOTE] = ACTIONS(4854), [anon_sym_i_BQUOTE] = ACTIONS(4854), [anon_sym_i_DQUOTE] = ACTIONS(4854), [anon_sym_iq_LBRACE] = ACTIONS(4854), [aux_sym_char_literal_token1] = ACTIONS(4854), [anon_sym_SQUOTE] = ACTIONS(4852), [anon_sym___DATE__] = ACTIONS(4852), [anon_sym___FILE__] = ACTIONS(4852), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4852), [anon_sym___FUNCTION__] = ACTIONS(4852), [anon_sym___LINE__] = ACTIONS(4852), [anon_sym___MODULE__] = ACTIONS(4852), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4852), [anon_sym___TIME__] = ACTIONS(4852), [anon_sym___TIMESTAMP__] = ACTIONS(4852), [anon_sym___VENDOR__] = ACTIONS(4852), [anon_sym___VERSION__] = ACTIONS(4852), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4854), [sym_float_literal] = ACTIONS(4854), [sym__string] = ACTIONS(4854), }, [2357] = { [sym_identifier] = ACTIONS(4798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4800), [anon_sym_LBRACE] = ACTIONS(4800), [anon_sym_DOT] = ACTIONS(4800), [anon_sym_AMP] = ACTIONS(4800), [anon_sym_DASH] = ACTIONS(4798), [anon_sym_DASH_DASH] = ACTIONS(4800), [anon_sym_PLUS] = ACTIONS(4798), [anon_sym_PLUS_PLUS] = ACTIONS(4800), [anon_sym_BANG] = ACTIONS(4800), [anon_sym_LPAREN] = ACTIONS(4800), [anon_sym_RPAREN] = ACTIONS(4800), [anon_sym_LBRACK] = ACTIONS(4800), [anon_sym_SEMI] = ACTIONS(4800), [anon_sym_DOLLAR] = ACTIONS(4800), [anon_sym_STAR] = ACTIONS(4800), [anon_sym_TILDE] = ACTIONS(4800), [sym_bool] = ACTIONS(4798), [sym_byte] = ACTIONS(4798), [sym_ubyte] = ACTIONS(4798), [sym_char] = ACTIONS(4798), [sym_short] = ACTIONS(4798), [sym_ushort] = ACTIONS(4798), [sym_int] = ACTIONS(4798), [sym_uint] = ACTIONS(4798), [sym_long] = ACTIONS(4798), [sym_ulong] = ACTIONS(4798), [sym_cent] = ACTIONS(4798), [sym_ucent] = ACTIONS(4798), [sym_wchar] = ACTIONS(4798), [sym_dchar] = ACTIONS(4798), [sym_float] = ACTIONS(4798), [sym_double] = ACTIONS(4798), [sym_real] = ACTIONS(4798), [sym_ifloat] = ACTIONS(4798), [sym_idouble] = ACTIONS(4798), [sym_ireal] = ACTIONS(4798), [sym_cfloat] = ACTIONS(4798), [sym_cdouble] = ACTIONS(4798), [sym_creal] = ACTIONS(4798), [sym_size_t] = ACTIONS(4798), [sym_ptrdiff_t] = ACTIONS(4798), [sym_string] = ACTIONS(4798), [sym_cstring] = ACTIONS(4798), [sym_dstring] = ACTIONS(4798), [sym_wstring] = ACTIONS(4798), [sym_noreturn] = ACTIONS(4798), [sym_true] = ACTIONS(4798), [sym_false] = ACTIONS(4798), [sym_null] = ACTIONS(4798), [sym_super] = ACTIONS(4798), [sym_this] = ACTIONS(4798), [sym_assert] = ACTIONS(4798), [sym_auto] = ACTIONS(4798), [sym_cast] = ACTIONS(4798), [sym_catch] = ACTIONS(4798), [sym_const] = ACTIONS(4798), [sym_delegate] = ACTIONS(4798), [sym_delete] = ACTIONS(4798), [sym_do] = ACTIONS(4798), [sym_else] = ACTIONS(4798), [sym_finally] = ACTIONS(4798), [sym_function] = ACTIONS(4798), [sym_immutable] = ACTIONS(4798), [sym_import] = ACTIONS(4798), [sym_in] = ACTIONS(4798), [sym_inout] = ACTIONS(4798), [sym_is] = ACTIONS(4798), [sym_mixin] = ACTIONS(4798), [sym_new] = ACTIONS(4798), [sym_out] = ACTIONS(4798), [sym_ref] = ACTIONS(4798), [sym_shared] = ACTIONS(4798), [sym_throw] = ACTIONS(4798), [sym_typeid] = ACTIONS(4798), [sym_typeof] = ACTIONS(4798), [sym_traits] = ACTIONS(4798), [sym_vector] = ACTIONS(4798), [sym_void] = ACTIONS(4798), [anon_sym_BQUOTE] = ACTIONS(4800), [anon_sym_r_DQUOTE] = ACTIONS(4800), [anon_sym_x_DQUOTE] = ACTIONS(4800), [anon_sym_DQUOTE] = ACTIONS(4800), [anon_sym_i_BQUOTE] = ACTIONS(4800), [anon_sym_i_DQUOTE] = ACTIONS(4800), [anon_sym_iq_LBRACE] = ACTIONS(4800), [aux_sym_char_literal_token1] = ACTIONS(4800), [anon_sym_SQUOTE] = ACTIONS(4798), [anon_sym___DATE__] = ACTIONS(4798), [anon_sym___FILE__] = ACTIONS(4798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4798), [anon_sym___FUNCTION__] = ACTIONS(4798), [anon_sym___LINE__] = ACTIONS(4798), [anon_sym___MODULE__] = ACTIONS(4798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4798), [anon_sym___TIME__] = ACTIONS(4798), [anon_sym___TIMESTAMP__] = ACTIONS(4798), [anon_sym___VENDOR__] = ACTIONS(4798), [anon_sym___VERSION__] = ACTIONS(4798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4800), [sym_float_literal] = ACTIONS(4800), [sym__string] = ACTIONS(4800), }, [2358] = { [sym_identifier] = ACTIONS(4778), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4780), [anon_sym_LBRACE] = ACTIONS(4780), [anon_sym_DOT] = ACTIONS(4780), [anon_sym_AMP] = ACTIONS(4780), [anon_sym_DASH] = ACTIONS(4778), [anon_sym_DASH_DASH] = ACTIONS(4780), [anon_sym_PLUS] = ACTIONS(4778), [anon_sym_PLUS_PLUS] = ACTIONS(4780), [anon_sym_BANG] = ACTIONS(4780), [anon_sym_LPAREN] = ACTIONS(4780), [anon_sym_RPAREN] = ACTIONS(4780), [anon_sym_LBRACK] = ACTIONS(4780), [anon_sym_SEMI] = ACTIONS(4780), [anon_sym_DOLLAR] = ACTIONS(4780), [anon_sym_STAR] = ACTIONS(4780), [anon_sym_TILDE] = ACTIONS(4780), [sym_bool] = ACTIONS(4778), [sym_byte] = ACTIONS(4778), [sym_ubyte] = ACTIONS(4778), [sym_char] = ACTIONS(4778), [sym_short] = ACTIONS(4778), [sym_ushort] = ACTIONS(4778), [sym_int] = ACTIONS(4778), [sym_uint] = ACTIONS(4778), [sym_long] = ACTIONS(4778), [sym_ulong] = ACTIONS(4778), [sym_cent] = ACTIONS(4778), [sym_ucent] = ACTIONS(4778), [sym_wchar] = ACTIONS(4778), [sym_dchar] = ACTIONS(4778), [sym_float] = ACTIONS(4778), [sym_double] = ACTIONS(4778), [sym_real] = ACTIONS(4778), [sym_ifloat] = ACTIONS(4778), [sym_idouble] = ACTIONS(4778), [sym_ireal] = ACTIONS(4778), [sym_cfloat] = ACTIONS(4778), [sym_cdouble] = ACTIONS(4778), [sym_creal] = ACTIONS(4778), [sym_size_t] = ACTIONS(4778), [sym_ptrdiff_t] = ACTIONS(4778), [sym_string] = ACTIONS(4778), [sym_cstring] = ACTIONS(4778), [sym_dstring] = ACTIONS(4778), [sym_wstring] = ACTIONS(4778), [sym_noreturn] = ACTIONS(4778), [sym_true] = ACTIONS(4778), [sym_false] = ACTIONS(4778), [sym_null] = ACTIONS(4778), [sym_super] = ACTIONS(4778), [sym_this] = ACTIONS(4778), [sym_assert] = ACTIONS(4778), [sym_auto] = ACTIONS(4778), [sym_cast] = ACTIONS(4778), [sym_catch] = ACTIONS(4778), [sym_const] = ACTIONS(4778), [sym_delegate] = ACTIONS(4778), [sym_delete] = ACTIONS(4778), [sym_do] = ACTIONS(4778), [sym_else] = ACTIONS(4778), [sym_finally] = ACTIONS(4778), [sym_function] = ACTIONS(4778), [sym_immutable] = ACTIONS(4778), [sym_import] = ACTIONS(4778), [sym_in] = ACTIONS(4778), [sym_inout] = ACTIONS(4778), [sym_is] = ACTIONS(4778), [sym_mixin] = ACTIONS(4778), [sym_new] = ACTIONS(4778), [sym_out] = ACTIONS(4778), [sym_ref] = ACTIONS(4778), [sym_shared] = ACTIONS(4778), [sym_throw] = ACTIONS(4778), [sym_typeid] = ACTIONS(4778), [sym_typeof] = ACTIONS(4778), [sym_traits] = ACTIONS(4778), [sym_vector] = ACTIONS(4778), [sym_void] = ACTIONS(4778), [anon_sym_BQUOTE] = ACTIONS(4780), [anon_sym_r_DQUOTE] = ACTIONS(4780), [anon_sym_x_DQUOTE] = ACTIONS(4780), [anon_sym_DQUOTE] = ACTIONS(4780), [anon_sym_i_BQUOTE] = ACTIONS(4780), [anon_sym_i_DQUOTE] = ACTIONS(4780), [anon_sym_iq_LBRACE] = ACTIONS(4780), [aux_sym_char_literal_token1] = ACTIONS(4780), [anon_sym_SQUOTE] = ACTIONS(4778), [anon_sym___DATE__] = ACTIONS(4778), [anon_sym___FILE__] = ACTIONS(4778), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4778), [anon_sym___FUNCTION__] = ACTIONS(4778), [anon_sym___LINE__] = ACTIONS(4778), [anon_sym___MODULE__] = ACTIONS(4778), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4778), [anon_sym___TIME__] = ACTIONS(4778), [anon_sym___TIMESTAMP__] = ACTIONS(4778), [anon_sym___VENDOR__] = ACTIONS(4778), [anon_sym___VERSION__] = ACTIONS(4778), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4780), [sym_float_literal] = ACTIONS(4780), [sym__string] = ACTIONS(4780), }, [2359] = { [sym_identifier] = ACTIONS(4554), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4556), [anon_sym_LBRACE] = ACTIONS(4556), [anon_sym_DOT] = ACTIONS(4556), [anon_sym_AMP] = ACTIONS(4556), [anon_sym_DASH] = ACTIONS(4554), [anon_sym_DASH_DASH] = ACTIONS(4556), [anon_sym_PLUS] = ACTIONS(4554), [anon_sym_PLUS_PLUS] = ACTIONS(4556), [anon_sym_BANG] = ACTIONS(4556), [anon_sym_LPAREN] = ACTIONS(4556), [anon_sym_RPAREN] = ACTIONS(4556), [anon_sym_LBRACK] = ACTIONS(4556), [anon_sym_SEMI] = ACTIONS(4556), [anon_sym_DOLLAR] = ACTIONS(4556), [anon_sym_STAR] = ACTIONS(4556), [anon_sym_TILDE] = ACTIONS(4556), [sym_bool] = ACTIONS(4554), [sym_byte] = ACTIONS(4554), [sym_ubyte] = ACTIONS(4554), [sym_char] = ACTIONS(4554), [sym_short] = ACTIONS(4554), [sym_ushort] = ACTIONS(4554), [sym_int] = ACTIONS(4554), [sym_uint] = ACTIONS(4554), [sym_long] = ACTIONS(4554), [sym_ulong] = ACTIONS(4554), [sym_cent] = ACTIONS(4554), [sym_ucent] = ACTIONS(4554), [sym_wchar] = ACTIONS(4554), [sym_dchar] = ACTIONS(4554), [sym_float] = ACTIONS(4554), [sym_double] = ACTIONS(4554), [sym_real] = ACTIONS(4554), [sym_ifloat] = ACTIONS(4554), [sym_idouble] = ACTIONS(4554), [sym_ireal] = ACTIONS(4554), [sym_cfloat] = ACTIONS(4554), [sym_cdouble] = ACTIONS(4554), [sym_creal] = ACTIONS(4554), [sym_size_t] = ACTIONS(4554), [sym_ptrdiff_t] = ACTIONS(4554), [sym_string] = ACTIONS(4554), [sym_cstring] = ACTIONS(4554), [sym_dstring] = ACTIONS(4554), [sym_wstring] = ACTIONS(4554), [sym_noreturn] = ACTIONS(4554), [sym_true] = ACTIONS(4554), [sym_false] = ACTIONS(4554), [sym_null] = ACTIONS(4554), [sym_super] = ACTIONS(4554), [sym_this] = ACTIONS(4554), [sym_assert] = ACTIONS(4554), [sym_auto] = ACTIONS(4554), [sym_cast] = ACTIONS(4554), [sym_catch] = ACTIONS(4554), [sym_const] = ACTIONS(4554), [sym_delegate] = ACTIONS(4554), [sym_delete] = ACTIONS(4554), [sym_do] = ACTIONS(4554), [sym_else] = ACTIONS(4554), [sym_finally] = ACTIONS(4554), [sym_function] = ACTIONS(4554), [sym_immutable] = ACTIONS(4554), [sym_import] = ACTIONS(4554), [sym_in] = ACTIONS(4554), [sym_inout] = ACTIONS(4554), [sym_is] = ACTIONS(4554), [sym_mixin] = ACTIONS(4554), [sym_new] = ACTIONS(4554), [sym_out] = ACTIONS(4554), [sym_ref] = ACTIONS(4554), [sym_shared] = ACTIONS(4554), [sym_throw] = ACTIONS(4554), [sym_typeid] = ACTIONS(4554), [sym_typeof] = ACTIONS(4554), [sym_traits] = ACTIONS(4554), [sym_vector] = ACTIONS(4554), [sym_void] = ACTIONS(4554), [anon_sym_BQUOTE] = ACTIONS(4556), [anon_sym_r_DQUOTE] = ACTIONS(4556), [anon_sym_x_DQUOTE] = ACTIONS(4556), [anon_sym_DQUOTE] = ACTIONS(4556), [anon_sym_i_BQUOTE] = ACTIONS(4556), [anon_sym_i_DQUOTE] = ACTIONS(4556), [anon_sym_iq_LBRACE] = ACTIONS(4556), [aux_sym_char_literal_token1] = ACTIONS(4556), [anon_sym_SQUOTE] = ACTIONS(4554), [anon_sym___DATE__] = ACTIONS(4554), [anon_sym___FILE__] = ACTIONS(4554), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4554), [anon_sym___FUNCTION__] = ACTIONS(4554), [anon_sym___LINE__] = ACTIONS(4554), [anon_sym___MODULE__] = ACTIONS(4554), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4554), [anon_sym___TIME__] = ACTIONS(4554), [anon_sym___TIMESTAMP__] = ACTIONS(4554), [anon_sym___VENDOR__] = ACTIONS(4554), [anon_sym___VERSION__] = ACTIONS(4554), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4556), [sym_float_literal] = ACTIONS(4556), [sym__string] = ACTIONS(4556), }, [2360] = { [sym_identifier] = ACTIONS(4766), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4768), [anon_sym_LBRACE] = ACTIONS(4768), [anon_sym_DOT] = ACTIONS(4768), [anon_sym_AMP] = ACTIONS(4768), [anon_sym_DASH] = ACTIONS(4766), [anon_sym_DASH_DASH] = ACTIONS(4768), [anon_sym_PLUS] = ACTIONS(4766), [anon_sym_PLUS_PLUS] = ACTIONS(4768), [anon_sym_BANG] = ACTIONS(4768), [anon_sym_LPAREN] = ACTIONS(4768), [anon_sym_RPAREN] = ACTIONS(4768), [anon_sym_LBRACK] = ACTIONS(4768), [anon_sym_SEMI] = ACTIONS(4768), [anon_sym_DOLLAR] = ACTIONS(4768), [anon_sym_STAR] = ACTIONS(4768), [anon_sym_TILDE] = ACTIONS(4768), [sym_bool] = ACTIONS(4766), [sym_byte] = ACTIONS(4766), [sym_ubyte] = ACTIONS(4766), [sym_char] = ACTIONS(4766), [sym_short] = ACTIONS(4766), [sym_ushort] = ACTIONS(4766), [sym_int] = ACTIONS(4766), [sym_uint] = ACTIONS(4766), [sym_long] = ACTIONS(4766), [sym_ulong] = ACTIONS(4766), [sym_cent] = ACTIONS(4766), [sym_ucent] = ACTIONS(4766), [sym_wchar] = ACTIONS(4766), [sym_dchar] = ACTIONS(4766), [sym_float] = ACTIONS(4766), [sym_double] = ACTIONS(4766), [sym_real] = ACTIONS(4766), [sym_ifloat] = ACTIONS(4766), [sym_idouble] = ACTIONS(4766), [sym_ireal] = ACTIONS(4766), [sym_cfloat] = ACTIONS(4766), [sym_cdouble] = ACTIONS(4766), [sym_creal] = ACTIONS(4766), [sym_size_t] = ACTIONS(4766), [sym_ptrdiff_t] = ACTIONS(4766), [sym_string] = ACTIONS(4766), [sym_cstring] = ACTIONS(4766), [sym_dstring] = ACTIONS(4766), [sym_wstring] = ACTIONS(4766), [sym_noreturn] = ACTIONS(4766), [sym_true] = ACTIONS(4766), [sym_false] = ACTIONS(4766), [sym_null] = ACTIONS(4766), [sym_super] = ACTIONS(4766), [sym_this] = ACTIONS(4766), [sym_assert] = ACTIONS(4766), [sym_auto] = ACTIONS(4766), [sym_cast] = ACTIONS(4766), [sym_catch] = ACTIONS(4766), [sym_const] = ACTIONS(4766), [sym_delegate] = ACTIONS(4766), [sym_delete] = ACTIONS(4766), [sym_do] = ACTIONS(4766), [sym_else] = ACTIONS(4766), [sym_finally] = ACTIONS(4766), [sym_function] = ACTIONS(4766), [sym_immutable] = ACTIONS(4766), [sym_import] = ACTIONS(4766), [sym_in] = ACTIONS(4766), [sym_inout] = ACTIONS(4766), [sym_is] = ACTIONS(4766), [sym_mixin] = ACTIONS(4766), [sym_new] = ACTIONS(4766), [sym_out] = ACTIONS(4766), [sym_ref] = ACTIONS(4766), [sym_shared] = ACTIONS(4766), [sym_throw] = ACTIONS(4766), [sym_typeid] = ACTIONS(4766), [sym_typeof] = ACTIONS(4766), [sym_traits] = ACTIONS(4766), [sym_vector] = ACTIONS(4766), [sym_void] = ACTIONS(4766), [anon_sym_BQUOTE] = ACTIONS(4768), [anon_sym_r_DQUOTE] = ACTIONS(4768), [anon_sym_x_DQUOTE] = ACTIONS(4768), [anon_sym_DQUOTE] = ACTIONS(4768), [anon_sym_i_BQUOTE] = ACTIONS(4768), [anon_sym_i_DQUOTE] = ACTIONS(4768), [anon_sym_iq_LBRACE] = ACTIONS(4768), [aux_sym_char_literal_token1] = ACTIONS(4768), [anon_sym_SQUOTE] = ACTIONS(4766), [anon_sym___DATE__] = ACTIONS(4766), [anon_sym___FILE__] = ACTIONS(4766), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4766), [anon_sym___FUNCTION__] = ACTIONS(4766), [anon_sym___LINE__] = ACTIONS(4766), [anon_sym___MODULE__] = ACTIONS(4766), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4766), [anon_sym___TIME__] = ACTIONS(4766), [anon_sym___TIMESTAMP__] = ACTIONS(4766), [anon_sym___VENDOR__] = ACTIONS(4766), [anon_sym___VERSION__] = ACTIONS(4766), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4768), [sym_float_literal] = ACTIONS(4768), [sym__string] = ACTIONS(4768), }, [2361] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(5084), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_AMP] = ACTIONS(4299), [anon_sym_DASH] = ACTIONS(4297), [anon_sym_DASH_DASH] = ACTIONS(4299), [anon_sym_PLUS] = ACTIONS(4297), [anon_sym_PLUS_PLUS] = ACTIONS(4299), [anon_sym_BANG] = ACTIONS(4299), [anon_sym_LPAREN] = ACTIONS(4299), [anon_sym_RPAREN] = ACTIONS(4299), [anon_sym_LBRACK] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(5084), [anon_sym_DOLLAR] = ACTIONS(4299), [anon_sym_STAR] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_true] = ACTIONS(4297), [sym_false] = ACTIONS(4297), [sym_null] = ACTIONS(4297), [sym_super] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_assert] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_cast] = ACTIONS(4297), [sym_catch] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_delegate] = ACTIONS(4297), [sym_delete] = ACTIONS(4297), [sym_do] = ACTIONS(5087), [sym_else] = ACTIONS(4297), [sym_finally] = ACTIONS(4297), [sym_function] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(5087), [sym_inout] = ACTIONS(4297), [sym_is] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_new] = ACTIONS(4297), [sym_out] = ACTIONS(5087), [sym_ref] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_throw] = ACTIONS(4297), [sym_typeid] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [anon_sym_BQUOTE] = ACTIONS(4299), [anon_sym_r_DQUOTE] = ACTIONS(4299), [anon_sym_x_DQUOTE] = ACTIONS(4299), [anon_sym_DQUOTE] = ACTIONS(4299), [anon_sym_i_BQUOTE] = ACTIONS(4299), [anon_sym_i_DQUOTE] = ACTIONS(4299), [anon_sym_iq_LBRACE] = ACTIONS(4299), [aux_sym_char_literal_token1] = ACTIONS(4299), [anon_sym_SQUOTE] = ACTIONS(4297), [anon_sym___DATE__] = ACTIONS(4297), [anon_sym___FILE__] = ACTIONS(4297), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4297), [anon_sym___FUNCTION__] = ACTIONS(4297), [anon_sym___LINE__] = ACTIONS(4297), [anon_sym___MODULE__] = ACTIONS(4297), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4297), [anon_sym___TIME__] = ACTIONS(4297), [anon_sym___TIMESTAMP__] = ACTIONS(4297), [anon_sym___VENDOR__] = ACTIONS(4297), [anon_sym___VERSION__] = ACTIONS(4297), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4299), [sym_float_literal] = ACTIONS(4299), [sym__string] = ACTIONS(4299), }, [2362] = { [sym_identifier] = ACTIONS(4570), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4572), [anon_sym_LBRACE] = ACTIONS(4572), [anon_sym_DOT] = ACTIONS(4572), [anon_sym_AMP] = ACTIONS(4572), [anon_sym_DASH] = ACTIONS(4570), [anon_sym_DASH_DASH] = ACTIONS(4572), [anon_sym_PLUS] = ACTIONS(4570), [anon_sym_PLUS_PLUS] = ACTIONS(4572), [anon_sym_BANG] = ACTIONS(4572), [anon_sym_LPAREN] = ACTIONS(4572), [anon_sym_RPAREN] = ACTIONS(4572), [anon_sym_LBRACK] = ACTIONS(4572), [anon_sym_SEMI] = ACTIONS(4572), [anon_sym_DOLLAR] = ACTIONS(4572), [anon_sym_STAR] = ACTIONS(4572), [anon_sym_TILDE] = ACTIONS(4572), [sym_bool] = ACTIONS(4570), [sym_byte] = ACTIONS(4570), [sym_ubyte] = ACTIONS(4570), [sym_char] = ACTIONS(4570), [sym_short] = ACTIONS(4570), [sym_ushort] = ACTIONS(4570), [sym_int] = ACTIONS(4570), [sym_uint] = ACTIONS(4570), [sym_long] = ACTIONS(4570), [sym_ulong] = ACTIONS(4570), [sym_cent] = ACTIONS(4570), [sym_ucent] = ACTIONS(4570), [sym_wchar] = ACTIONS(4570), [sym_dchar] = ACTIONS(4570), [sym_float] = ACTIONS(4570), [sym_double] = ACTIONS(4570), [sym_real] = ACTIONS(4570), [sym_ifloat] = ACTIONS(4570), [sym_idouble] = ACTIONS(4570), [sym_ireal] = ACTIONS(4570), [sym_cfloat] = ACTIONS(4570), [sym_cdouble] = ACTIONS(4570), [sym_creal] = ACTIONS(4570), [sym_size_t] = ACTIONS(4570), [sym_ptrdiff_t] = ACTIONS(4570), [sym_string] = ACTIONS(4570), [sym_cstring] = ACTIONS(4570), [sym_dstring] = ACTIONS(4570), [sym_wstring] = ACTIONS(4570), [sym_noreturn] = ACTIONS(4570), [sym_true] = ACTIONS(4570), [sym_false] = ACTIONS(4570), [sym_null] = ACTIONS(4570), [sym_super] = ACTIONS(4570), [sym_this] = ACTIONS(4570), [sym_assert] = ACTIONS(4570), [sym_auto] = ACTIONS(4570), [sym_cast] = ACTIONS(4570), [sym_catch] = ACTIONS(4570), [sym_const] = ACTIONS(4570), [sym_delegate] = ACTIONS(4570), [sym_delete] = ACTIONS(4570), [sym_do] = ACTIONS(4570), [sym_else] = ACTIONS(4570), [sym_finally] = ACTIONS(4570), [sym_function] = ACTIONS(4570), [sym_immutable] = ACTIONS(4570), [sym_import] = ACTIONS(4570), [sym_in] = ACTIONS(4570), [sym_inout] = ACTIONS(4570), [sym_is] = ACTIONS(4570), [sym_mixin] = ACTIONS(4570), [sym_new] = ACTIONS(4570), [sym_out] = ACTIONS(4570), [sym_ref] = ACTIONS(4570), [sym_shared] = ACTIONS(4570), [sym_throw] = ACTIONS(4570), [sym_typeid] = ACTIONS(4570), [sym_typeof] = ACTIONS(4570), [sym_traits] = ACTIONS(4570), [sym_vector] = ACTIONS(4570), [sym_void] = ACTIONS(4570), [anon_sym_BQUOTE] = ACTIONS(4572), [anon_sym_r_DQUOTE] = ACTIONS(4572), [anon_sym_x_DQUOTE] = ACTIONS(4572), [anon_sym_DQUOTE] = ACTIONS(4572), [anon_sym_i_BQUOTE] = ACTIONS(4572), [anon_sym_i_DQUOTE] = ACTIONS(4572), [anon_sym_iq_LBRACE] = ACTIONS(4572), [aux_sym_char_literal_token1] = ACTIONS(4572), [anon_sym_SQUOTE] = ACTIONS(4570), [anon_sym___DATE__] = ACTIONS(4570), [anon_sym___FILE__] = ACTIONS(4570), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4570), [anon_sym___FUNCTION__] = ACTIONS(4570), [anon_sym___LINE__] = ACTIONS(4570), [anon_sym___MODULE__] = ACTIONS(4570), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4570), [anon_sym___TIME__] = ACTIONS(4570), [anon_sym___TIMESTAMP__] = ACTIONS(4570), [anon_sym___VENDOR__] = ACTIONS(4570), [anon_sym___VERSION__] = ACTIONS(4570), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4572), [sym_float_literal] = ACTIONS(4572), [sym__string] = ACTIONS(4572), }, [2363] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(4299), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_AMP] = ACTIONS(4299), [anon_sym_DASH] = ACTIONS(4297), [anon_sym_DASH_DASH] = ACTIONS(4299), [anon_sym_PLUS] = ACTIONS(4297), [anon_sym_PLUS_PLUS] = ACTIONS(4299), [anon_sym_BANG] = ACTIONS(4299), [anon_sym_LPAREN] = ACTIONS(4299), [anon_sym_RPAREN] = ACTIONS(4299), [anon_sym_LBRACK] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(4299), [anon_sym_DOLLAR] = ACTIONS(4299), [anon_sym_STAR] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_true] = ACTIONS(4297), [sym_false] = ACTIONS(4297), [sym_null] = ACTIONS(4297), [sym_super] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_assert] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_cast] = ACTIONS(4297), [sym_catch] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_delegate] = ACTIONS(4297), [sym_delete] = ACTIONS(4297), [sym_do] = ACTIONS(4297), [sym_else] = ACTIONS(4297), [sym_finally] = ACTIONS(4297), [sym_function] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(4297), [sym_inout] = ACTIONS(4297), [sym_is] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_new] = ACTIONS(4297), [sym_out] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_throw] = ACTIONS(4297), [sym_typeid] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [anon_sym_BQUOTE] = ACTIONS(4299), [anon_sym_r_DQUOTE] = ACTIONS(4299), [anon_sym_x_DQUOTE] = ACTIONS(4299), [anon_sym_DQUOTE] = ACTIONS(4299), [anon_sym_i_BQUOTE] = ACTIONS(4299), [anon_sym_i_DQUOTE] = ACTIONS(4299), [anon_sym_iq_LBRACE] = ACTIONS(4299), [aux_sym_char_literal_token1] = ACTIONS(4299), [anon_sym_SQUOTE] = ACTIONS(4297), [anon_sym___DATE__] = ACTIONS(4297), [anon_sym___FILE__] = ACTIONS(4297), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4297), [anon_sym___FUNCTION__] = ACTIONS(4297), [anon_sym___LINE__] = ACTIONS(4297), [anon_sym___MODULE__] = ACTIONS(4297), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4297), [anon_sym___TIME__] = ACTIONS(4297), [anon_sym___TIMESTAMP__] = ACTIONS(4297), [anon_sym___VENDOR__] = ACTIONS(4297), [anon_sym___VERSION__] = ACTIONS(4297), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4299), [sym_float_literal] = ACTIONS(4299), [sym__string] = ACTIONS(4299), }, [2364] = { [sym_identifier] = ACTIONS(4347), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4349), [anon_sym_LBRACE] = ACTIONS(4349), [anon_sym_DOT] = ACTIONS(4349), [anon_sym_AMP] = ACTIONS(4349), [anon_sym_DASH] = ACTIONS(4347), [anon_sym_DASH_DASH] = ACTIONS(4349), [anon_sym_PLUS] = ACTIONS(4347), [anon_sym_PLUS_PLUS] = ACTIONS(4349), [anon_sym_BANG] = ACTIONS(4349), [anon_sym_LPAREN] = ACTIONS(4349), [anon_sym_RPAREN] = ACTIONS(4349), [anon_sym_LBRACK] = ACTIONS(4349), [anon_sym_SEMI] = ACTIONS(4349), [anon_sym_DOLLAR] = ACTIONS(4349), [anon_sym_STAR] = ACTIONS(4349), [anon_sym_TILDE] = ACTIONS(4349), [sym_bool] = ACTIONS(4347), [sym_byte] = ACTIONS(4347), [sym_ubyte] = ACTIONS(4347), [sym_char] = ACTIONS(4347), [sym_short] = ACTIONS(4347), [sym_ushort] = ACTIONS(4347), [sym_int] = ACTIONS(4347), [sym_uint] = ACTIONS(4347), [sym_long] = ACTIONS(4347), [sym_ulong] = ACTIONS(4347), [sym_cent] = ACTIONS(4347), [sym_ucent] = ACTIONS(4347), [sym_wchar] = ACTIONS(4347), [sym_dchar] = ACTIONS(4347), [sym_float] = ACTIONS(4347), [sym_double] = ACTIONS(4347), [sym_real] = ACTIONS(4347), [sym_ifloat] = ACTIONS(4347), [sym_idouble] = ACTIONS(4347), [sym_ireal] = ACTIONS(4347), [sym_cfloat] = ACTIONS(4347), [sym_cdouble] = ACTIONS(4347), [sym_creal] = ACTIONS(4347), [sym_size_t] = ACTIONS(4347), [sym_ptrdiff_t] = ACTIONS(4347), [sym_string] = ACTIONS(4347), [sym_cstring] = ACTIONS(4347), [sym_dstring] = ACTIONS(4347), [sym_wstring] = ACTIONS(4347), [sym_noreturn] = ACTIONS(4347), [sym_true] = ACTIONS(4347), [sym_false] = ACTIONS(4347), [sym_null] = ACTIONS(4347), [sym_super] = ACTIONS(4347), [sym_this] = ACTIONS(4347), [sym_assert] = ACTIONS(4347), [sym_auto] = ACTIONS(4347), [sym_cast] = ACTIONS(4347), [sym_catch] = ACTIONS(4347), [sym_const] = ACTIONS(4347), [sym_delegate] = ACTIONS(4347), [sym_delete] = ACTIONS(4347), [sym_do] = ACTIONS(4347), [sym_else] = ACTIONS(4347), [sym_finally] = ACTIONS(4347), [sym_function] = ACTIONS(4347), [sym_immutable] = ACTIONS(4347), [sym_import] = ACTIONS(4347), [sym_in] = ACTIONS(4347), [sym_inout] = ACTIONS(4347), [sym_is] = ACTIONS(4347), [sym_mixin] = ACTIONS(4347), [sym_new] = ACTIONS(4347), [sym_out] = ACTIONS(4347), [sym_ref] = ACTIONS(4347), [sym_shared] = ACTIONS(4347), [sym_throw] = ACTIONS(4347), [sym_typeid] = ACTIONS(4347), [sym_typeof] = ACTIONS(4347), [sym_traits] = ACTIONS(4347), [sym_vector] = ACTIONS(4347), [sym_void] = ACTIONS(4347), [anon_sym_BQUOTE] = ACTIONS(4349), [anon_sym_r_DQUOTE] = ACTIONS(4349), [anon_sym_x_DQUOTE] = ACTIONS(4349), [anon_sym_DQUOTE] = ACTIONS(4349), [anon_sym_i_BQUOTE] = ACTIONS(4349), [anon_sym_i_DQUOTE] = ACTIONS(4349), [anon_sym_iq_LBRACE] = ACTIONS(4349), [aux_sym_char_literal_token1] = ACTIONS(4349), [anon_sym_SQUOTE] = ACTIONS(4347), [anon_sym___DATE__] = ACTIONS(4347), [anon_sym___FILE__] = ACTIONS(4347), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4347), [anon_sym___FUNCTION__] = ACTIONS(4347), [anon_sym___LINE__] = ACTIONS(4347), [anon_sym___MODULE__] = ACTIONS(4347), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4347), [anon_sym___TIME__] = ACTIONS(4347), [anon_sym___TIMESTAMP__] = ACTIONS(4347), [anon_sym___VENDOR__] = ACTIONS(4347), [anon_sym___VERSION__] = ACTIONS(4347), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4349), [sym_float_literal] = ACTIONS(4349), [sym__string] = ACTIONS(4349), }, [2365] = { [sym_identifier] = ACTIONS(4550), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4552), [anon_sym_LBRACE] = ACTIONS(4552), [anon_sym_DOT] = ACTIONS(4552), [anon_sym_AMP] = ACTIONS(4552), [anon_sym_DASH] = ACTIONS(4550), [anon_sym_DASH_DASH] = ACTIONS(4552), [anon_sym_PLUS] = ACTIONS(4550), [anon_sym_PLUS_PLUS] = ACTIONS(4552), [anon_sym_BANG] = ACTIONS(4552), [anon_sym_LPAREN] = ACTIONS(4552), [anon_sym_RPAREN] = ACTIONS(4552), [anon_sym_LBRACK] = ACTIONS(4552), [anon_sym_SEMI] = ACTIONS(4552), [anon_sym_DOLLAR] = ACTIONS(4552), [anon_sym_STAR] = ACTIONS(4552), [anon_sym_TILDE] = ACTIONS(4552), [sym_bool] = ACTIONS(4550), [sym_byte] = ACTIONS(4550), [sym_ubyte] = ACTIONS(4550), [sym_char] = ACTIONS(4550), [sym_short] = ACTIONS(4550), [sym_ushort] = ACTIONS(4550), [sym_int] = ACTIONS(4550), [sym_uint] = ACTIONS(4550), [sym_long] = ACTIONS(4550), [sym_ulong] = ACTIONS(4550), [sym_cent] = ACTIONS(4550), [sym_ucent] = ACTIONS(4550), [sym_wchar] = ACTIONS(4550), [sym_dchar] = ACTIONS(4550), [sym_float] = ACTIONS(4550), [sym_double] = ACTIONS(4550), [sym_real] = ACTIONS(4550), [sym_ifloat] = ACTIONS(4550), [sym_idouble] = ACTIONS(4550), [sym_ireal] = ACTIONS(4550), [sym_cfloat] = ACTIONS(4550), [sym_cdouble] = ACTIONS(4550), [sym_creal] = ACTIONS(4550), [sym_size_t] = ACTIONS(4550), [sym_ptrdiff_t] = ACTIONS(4550), [sym_string] = ACTIONS(4550), [sym_cstring] = ACTIONS(4550), [sym_dstring] = ACTIONS(4550), [sym_wstring] = ACTIONS(4550), [sym_noreturn] = ACTIONS(4550), [sym_true] = ACTIONS(4550), [sym_false] = ACTIONS(4550), [sym_null] = ACTIONS(4550), [sym_super] = ACTIONS(4550), [sym_this] = ACTIONS(4550), [sym_assert] = ACTIONS(4550), [sym_auto] = ACTIONS(4550), [sym_cast] = ACTIONS(4550), [sym_catch] = ACTIONS(4550), [sym_const] = ACTIONS(4550), [sym_delegate] = ACTIONS(4550), [sym_delete] = ACTIONS(4550), [sym_do] = ACTIONS(4550), [sym_else] = ACTIONS(4550), [sym_finally] = ACTIONS(4550), [sym_function] = ACTIONS(4550), [sym_immutable] = ACTIONS(4550), [sym_import] = ACTIONS(4550), [sym_in] = ACTIONS(4550), [sym_inout] = ACTIONS(4550), [sym_is] = ACTIONS(4550), [sym_mixin] = ACTIONS(4550), [sym_new] = ACTIONS(4550), [sym_out] = ACTIONS(4550), [sym_ref] = ACTIONS(4550), [sym_shared] = ACTIONS(4550), [sym_throw] = ACTIONS(4550), [sym_typeid] = ACTIONS(4550), [sym_typeof] = ACTIONS(4550), [sym_traits] = ACTIONS(4550), [sym_vector] = ACTIONS(4550), [sym_void] = ACTIONS(4550), [anon_sym_BQUOTE] = ACTIONS(4552), [anon_sym_r_DQUOTE] = ACTIONS(4552), [anon_sym_x_DQUOTE] = ACTIONS(4552), [anon_sym_DQUOTE] = ACTIONS(4552), [anon_sym_i_BQUOTE] = ACTIONS(4552), [anon_sym_i_DQUOTE] = ACTIONS(4552), [anon_sym_iq_LBRACE] = ACTIONS(4552), [aux_sym_char_literal_token1] = ACTIONS(4552), [anon_sym_SQUOTE] = ACTIONS(4550), [anon_sym___DATE__] = ACTIONS(4550), [anon_sym___FILE__] = ACTIONS(4550), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4550), [anon_sym___FUNCTION__] = ACTIONS(4550), [anon_sym___LINE__] = ACTIONS(4550), [anon_sym___MODULE__] = ACTIONS(4550), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4550), [anon_sym___TIME__] = ACTIONS(4550), [anon_sym___TIMESTAMP__] = ACTIONS(4550), [anon_sym___VENDOR__] = ACTIONS(4550), [anon_sym___VERSION__] = ACTIONS(4550), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4552), [sym_float_literal] = ACTIONS(4552), [sym__string] = ACTIONS(4552), }, [2366] = { [sym_identifier] = ACTIONS(4542), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4544), [anon_sym_LBRACE] = ACTIONS(4544), [anon_sym_DOT] = ACTIONS(4544), [anon_sym_AMP] = ACTIONS(4544), [anon_sym_DASH] = ACTIONS(4542), [anon_sym_DASH_DASH] = ACTIONS(4544), [anon_sym_PLUS] = ACTIONS(4542), [anon_sym_PLUS_PLUS] = ACTIONS(4544), [anon_sym_BANG] = ACTIONS(4544), [anon_sym_LPAREN] = ACTIONS(4544), [anon_sym_RPAREN] = ACTIONS(4544), [anon_sym_LBRACK] = ACTIONS(4544), [anon_sym_SEMI] = ACTIONS(4544), [anon_sym_DOLLAR] = ACTIONS(4544), [anon_sym_STAR] = ACTIONS(4544), [anon_sym_TILDE] = ACTIONS(4544), [sym_bool] = ACTIONS(4542), [sym_byte] = ACTIONS(4542), [sym_ubyte] = ACTIONS(4542), [sym_char] = ACTIONS(4542), [sym_short] = ACTIONS(4542), [sym_ushort] = ACTIONS(4542), [sym_int] = ACTIONS(4542), [sym_uint] = ACTIONS(4542), [sym_long] = ACTIONS(4542), [sym_ulong] = ACTIONS(4542), [sym_cent] = ACTIONS(4542), [sym_ucent] = ACTIONS(4542), [sym_wchar] = ACTIONS(4542), [sym_dchar] = ACTIONS(4542), [sym_float] = ACTIONS(4542), [sym_double] = ACTIONS(4542), [sym_real] = ACTIONS(4542), [sym_ifloat] = ACTIONS(4542), [sym_idouble] = ACTIONS(4542), [sym_ireal] = ACTIONS(4542), [sym_cfloat] = ACTIONS(4542), [sym_cdouble] = ACTIONS(4542), [sym_creal] = ACTIONS(4542), [sym_size_t] = ACTIONS(4542), [sym_ptrdiff_t] = ACTIONS(4542), [sym_string] = ACTIONS(4542), [sym_cstring] = ACTIONS(4542), [sym_dstring] = ACTIONS(4542), [sym_wstring] = ACTIONS(4542), [sym_noreturn] = ACTIONS(4542), [sym_true] = ACTIONS(4542), [sym_false] = ACTIONS(4542), [sym_null] = ACTIONS(4542), [sym_super] = ACTIONS(4542), [sym_this] = ACTIONS(4542), [sym_assert] = ACTIONS(4542), [sym_auto] = ACTIONS(4542), [sym_cast] = ACTIONS(4542), [sym_catch] = ACTIONS(4542), [sym_const] = ACTIONS(4542), [sym_delegate] = ACTIONS(4542), [sym_delete] = ACTIONS(4542), [sym_do] = ACTIONS(4542), [sym_else] = ACTIONS(4542), [sym_finally] = ACTIONS(4542), [sym_function] = ACTIONS(4542), [sym_immutable] = ACTIONS(4542), [sym_import] = ACTIONS(4542), [sym_in] = ACTIONS(4542), [sym_inout] = ACTIONS(4542), [sym_is] = ACTIONS(4542), [sym_mixin] = ACTIONS(4542), [sym_new] = ACTIONS(4542), [sym_out] = ACTIONS(4542), [sym_ref] = ACTIONS(4542), [sym_shared] = ACTIONS(4542), [sym_throw] = ACTIONS(4542), [sym_typeid] = ACTIONS(4542), [sym_typeof] = ACTIONS(4542), [sym_traits] = ACTIONS(4542), [sym_vector] = ACTIONS(4542), [sym_void] = ACTIONS(4542), [anon_sym_BQUOTE] = ACTIONS(4544), [anon_sym_r_DQUOTE] = ACTIONS(4544), [anon_sym_x_DQUOTE] = ACTIONS(4544), [anon_sym_DQUOTE] = ACTIONS(4544), [anon_sym_i_BQUOTE] = ACTIONS(4544), [anon_sym_i_DQUOTE] = ACTIONS(4544), [anon_sym_iq_LBRACE] = ACTIONS(4544), [aux_sym_char_literal_token1] = ACTIONS(4544), [anon_sym_SQUOTE] = ACTIONS(4542), [anon_sym___DATE__] = ACTIONS(4542), [anon_sym___FILE__] = ACTIONS(4542), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4542), [anon_sym___FUNCTION__] = ACTIONS(4542), [anon_sym___LINE__] = ACTIONS(4542), [anon_sym___MODULE__] = ACTIONS(4542), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4542), [anon_sym___TIME__] = ACTIONS(4542), [anon_sym___TIMESTAMP__] = ACTIONS(4542), [anon_sym___VENDOR__] = ACTIONS(4542), [anon_sym___VERSION__] = ACTIONS(4542), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4544), [sym_float_literal] = ACTIONS(4544), [sym__string] = ACTIONS(4544), }, [2367] = { [sym_identifier] = ACTIONS(4598), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4600), [anon_sym_LBRACE] = ACTIONS(4600), [anon_sym_DOT] = ACTIONS(4600), [anon_sym_AMP] = ACTIONS(4600), [anon_sym_DASH] = ACTIONS(4598), [anon_sym_DASH_DASH] = ACTIONS(4600), [anon_sym_PLUS] = ACTIONS(4598), [anon_sym_PLUS_PLUS] = ACTIONS(4600), [anon_sym_BANG] = ACTIONS(4600), [anon_sym_LPAREN] = ACTIONS(4600), [anon_sym_RPAREN] = ACTIONS(4600), [anon_sym_LBRACK] = ACTIONS(4600), [anon_sym_SEMI] = ACTIONS(4600), [anon_sym_DOLLAR] = ACTIONS(4600), [anon_sym_STAR] = ACTIONS(4600), [anon_sym_TILDE] = ACTIONS(4600), [sym_bool] = ACTIONS(4598), [sym_byte] = ACTIONS(4598), [sym_ubyte] = ACTIONS(4598), [sym_char] = ACTIONS(4598), [sym_short] = ACTIONS(4598), [sym_ushort] = ACTIONS(4598), [sym_int] = ACTIONS(4598), [sym_uint] = ACTIONS(4598), [sym_long] = ACTIONS(4598), [sym_ulong] = ACTIONS(4598), [sym_cent] = ACTIONS(4598), [sym_ucent] = ACTIONS(4598), [sym_wchar] = ACTIONS(4598), [sym_dchar] = ACTIONS(4598), [sym_float] = ACTIONS(4598), [sym_double] = ACTIONS(4598), [sym_real] = ACTIONS(4598), [sym_ifloat] = ACTIONS(4598), [sym_idouble] = ACTIONS(4598), [sym_ireal] = ACTIONS(4598), [sym_cfloat] = ACTIONS(4598), [sym_cdouble] = ACTIONS(4598), [sym_creal] = ACTIONS(4598), [sym_size_t] = ACTIONS(4598), [sym_ptrdiff_t] = ACTIONS(4598), [sym_string] = ACTIONS(4598), [sym_cstring] = ACTIONS(4598), [sym_dstring] = ACTIONS(4598), [sym_wstring] = ACTIONS(4598), [sym_noreturn] = ACTIONS(4598), [sym_true] = ACTIONS(4598), [sym_false] = ACTIONS(4598), [sym_null] = ACTIONS(4598), [sym_super] = ACTIONS(4598), [sym_this] = ACTIONS(4598), [sym_assert] = ACTIONS(4598), [sym_auto] = ACTIONS(4598), [sym_cast] = ACTIONS(4598), [sym_catch] = ACTIONS(4598), [sym_const] = ACTIONS(4598), [sym_delegate] = ACTIONS(4598), [sym_delete] = ACTIONS(4598), [sym_do] = ACTIONS(4598), [sym_else] = ACTIONS(4598), [sym_finally] = ACTIONS(4598), [sym_function] = ACTIONS(4598), [sym_immutable] = ACTIONS(4598), [sym_import] = ACTIONS(4598), [sym_in] = ACTIONS(4598), [sym_inout] = ACTIONS(4598), [sym_is] = ACTIONS(4598), [sym_mixin] = ACTIONS(4598), [sym_new] = ACTIONS(4598), [sym_out] = ACTIONS(4598), [sym_ref] = ACTIONS(4598), [sym_shared] = ACTIONS(4598), [sym_throw] = ACTIONS(4598), [sym_typeid] = ACTIONS(4598), [sym_typeof] = ACTIONS(4598), [sym_traits] = ACTIONS(4598), [sym_vector] = ACTIONS(4598), [sym_void] = ACTIONS(4598), [anon_sym_BQUOTE] = ACTIONS(4600), [anon_sym_r_DQUOTE] = ACTIONS(4600), [anon_sym_x_DQUOTE] = ACTIONS(4600), [anon_sym_DQUOTE] = ACTIONS(4600), [anon_sym_i_BQUOTE] = ACTIONS(4600), [anon_sym_i_DQUOTE] = ACTIONS(4600), [anon_sym_iq_LBRACE] = ACTIONS(4600), [aux_sym_char_literal_token1] = ACTIONS(4600), [anon_sym_SQUOTE] = ACTIONS(4598), [anon_sym___DATE__] = ACTIONS(4598), [anon_sym___FILE__] = ACTIONS(4598), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4598), [anon_sym___FUNCTION__] = ACTIONS(4598), [anon_sym___LINE__] = ACTIONS(4598), [anon_sym___MODULE__] = ACTIONS(4598), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4598), [anon_sym___TIME__] = ACTIONS(4598), [anon_sym___TIMESTAMP__] = ACTIONS(4598), [anon_sym___VENDOR__] = ACTIONS(4598), [anon_sym___VERSION__] = ACTIONS(4598), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4600), [sym_float_literal] = ACTIONS(4600), [sym__string] = ACTIONS(4600), }, [2368] = { [sym_identifier] = ACTIONS(4508), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4510), [anon_sym_LBRACE] = ACTIONS(4510), [anon_sym_DOT] = ACTIONS(4510), [anon_sym_AMP] = ACTIONS(4510), [anon_sym_DASH] = ACTIONS(4508), [anon_sym_DASH_DASH] = ACTIONS(4510), [anon_sym_PLUS] = ACTIONS(4508), [anon_sym_PLUS_PLUS] = ACTIONS(4510), [anon_sym_BANG] = ACTIONS(4510), [anon_sym_LPAREN] = ACTIONS(4510), [anon_sym_RPAREN] = ACTIONS(4510), [anon_sym_LBRACK] = ACTIONS(4510), [anon_sym_SEMI] = ACTIONS(4510), [anon_sym_DOLLAR] = ACTIONS(4510), [anon_sym_STAR] = ACTIONS(4510), [anon_sym_TILDE] = ACTIONS(4510), [sym_bool] = ACTIONS(4508), [sym_byte] = ACTIONS(4508), [sym_ubyte] = ACTIONS(4508), [sym_char] = ACTIONS(4508), [sym_short] = ACTIONS(4508), [sym_ushort] = ACTIONS(4508), [sym_int] = ACTIONS(4508), [sym_uint] = ACTIONS(4508), [sym_long] = ACTIONS(4508), [sym_ulong] = ACTIONS(4508), [sym_cent] = ACTIONS(4508), [sym_ucent] = ACTIONS(4508), [sym_wchar] = ACTIONS(4508), [sym_dchar] = ACTIONS(4508), [sym_float] = ACTIONS(4508), [sym_double] = ACTIONS(4508), [sym_real] = ACTIONS(4508), [sym_ifloat] = ACTIONS(4508), [sym_idouble] = ACTIONS(4508), [sym_ireal] = ACTIONS(4508), [sym_cfloat] = ACTIONS(4508), [sym_cdouble] = ACTIONS(4508), [sym_creal] = ACTIONS(4508), [sym_size_t] = ACTIONS(4508), [sym_ptrdiff_t] = ACTIONS(4508), [sym_string] = ACTIONS(4508), [sym_cstring] = ACTIONS(4508), [sym_dstring] = ACTIONS(4508), [sym_wstring] = ACTIONS(4508), [sym_noreturn] = ACTIONS(4508), [sym_true] = ACTIONS(4508), [sym_false] = ACTIONS(4508), [sym_null] = ACTIONS(4508), [sym_super] = ACTIONS(4508), [sym_this] = ACTIONS(4508), [sym_assert] = ACTIONS(4508), [sym_auto] = ACTIONS(4508), [sym_cast] = ACTIONS(4508), [sym_catch] = ACTIONS(4508), [sym_const] = ACTIONS(4508), [sym_delegate] = ACTIONS(4508), [sym_delete] = ACTIONS(4508), [sym_do] = ACTIONS(4508), [sym_else] = ACTIONS(4508), [sym_finally] = ACTIONS(4508), [sym_function] = ACTIONS(4508), [sym_immutable] = ACTIONS(4508), [sym_import] = ACTIONS(4508), [sym_in] = ACTIONS(4508), [sym_inout] = ACTIONS(4508), [sym_is] = ACTIONS(4508), [sym_mixin] = ACTIONS(4508), [sym_new] = ACTIONS(4508), [sym_out] = ACTIONS(4508), [sym_ref] = ACTIONS(4508), [sym_shared] = ACTIONS(4508), [sym_throw] = ACTIONS(4508), [sym_typeid] = ACTIONS(4508), [sym_typeof] = ACTIONS(4508), [sym_traits] = ACTIONS(4508), [sym_vector] = ACTIONS(4508), [sym_void] = ACTIONS(4508), [anon_sym_BQUOTE] = ACTIONS(4510), [anon_sym_r_DQUOTE] = ACTIONS(4510), [anon_sym_x_DQUOTE] = ACTIONS(4510), [anon_sym_DQUOTE] = ACTIONS(4510), [anon_sym_i_BQUOTE] = ACTIONS(4510), [anon_sym_i_DQUOTE] = ACTIONS(4510), [anon_sym_iq_LBRACE] = ACTIONS(4510), [aux_sym_char_literal_token1] = ACTIONS(4510), [anon_sym_SQUOTE] = ACTIONS(4508), [anon_sym___DATE__] = ACTIONS(4508), [anon_sym___FILE__] = ACTIONS(4508), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4508), [anon_sym___FUNCTION__] = ACTIONS(4508), [anon_sym___LINE__] = ACTIONS(4508), [anon_sym___MODULE__] = ACTIONS(4508), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4508), [anon_sym___TIME__] = ACTIONS(4508), [anon_sym___TIMESTAMP__] = ACTIONS(4508), [anon_sym___VENDOR__] = ACTIONS(4508), [anon_sym___VERSION__] = ACTIONS(4508), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4510), [sym_float_literal] = ACTIONS(4510), [sym__string] = ACTIONS(4510), }, [2369] = { [sym_identifier] = ACTIONS(4516), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4518), [anon_sym_LBRACE] = ACTIONS(4518), [anon_sym_DOT] = ACTIONS(4518), [anon_sym_AMP] = ACTIONS(4518), [anon_sym_DASH] = ACTIONS(4516), [anon_sym_DASH_DASH] = ACTIONS(4518), [anon_sym_PLUS] = ACTIONS(4516), [anon_sym_PLUS_PLUS] = ACTIONS(4518), [anon_sym_BANG] = ACTIONS(4518), [anon_sym_LPAREN] = ACTIONS(4518), [anon_sym_RPAREN] = ACTIONS(4518), [anon_sym_LBRACK] = ACTIONS(4518), [anon_sym_SEMI] = ACTIONS(4518), [anon_sym_DOLLAR] = ACTIONS(4518), [anon_sym_STAR] = ACTIONS(4518), [anon_sym_TILDE] = ACTIONS(4518), [sym_bool] = ACTIONS(4516), [sym_byte] = ACTIONS(4516), [sym_ubyte] = ACTIONS(4516), [sym_char] = ACTIONS(4516), [sym_short] = ACTIONS(4516), [sym_ushort] = ACTIONS(4516), [sym_int] = ACTIONS(4516), [sym_uint] = ACTIONS(4516), [sym_long] = ACTIONS(4516), [sym_ulong] = ACTIONS(4516), [sym_cent] = ACTIONS(4516), [sym_ucent] = ACTIONS(4516), [sym_wchar] = ACTIONS(4516), [sym_dchar] = ACTIONS(4516), [sym_float] = ACTIONS(4516), [sym_double] = ACTIONS(4516), [sym_real] = ACTIONS(4516), [sym_ifloat] = ACTIONS(4516), [sym_idouble] = ACTIONS(4516), [sym_ireal] = ACTIONS(4516), [sym_cfloat] = ACTIONS(4516), [sym_cdouble] = ACTIONS(4516), [sym_creal] = ACTIONS(4516), [sym_size_t] = ACTIONS(4516), [sym_ptrdiff_t] = ACTIONS(4516), [sym_string] = ACTIONS(4516), [sym_cstring] = ACTIONS(4516), [sym_dstring] = ACTIONS(4516), [sym_wstring] = ACTIONS(4516), [sym_noreturn] = ACTIONS(4516), [sym_true] = ACTIONS(4516), [sym_false] = ACTIONS(4516), [sym_null] = ACTIONS(4516), [sym_super] = ACTIONS(4516), [sym_this] = ACTIONS(4516), [sym_assert] = ACTIONS(4516), [sym_auto] = ACTIONS(4516), [sym_cast] = ACTIONS(4516), [sym_catch] = ACTIONS(4516), [sym_const] = ACTIONS(4516), [sym_delegate] = ACTIONS(4516), [sym_delete] = ACTIONS(4516), [sym_do] = ACTIONS(4516), [sym_else] = ACTIONS(4516), [sym_finally] = ACTIONS(4516), [sym_function] = ACTIONS(4516), [sym_immutable] = ACTIONS(4516), [sym_import] = ACTIONS(4516), [sym_in] = ACTIONS(4516), [sym_inout] = ACTIONS(4516), [sym_is] = ACTIONS(4516), [sym_mixin] = ACTIONS(4516), [sym_new] = ACTIONS(4516), [sym_out] = ACTIONS(4516), [sym_ref] = ACTIONS(4516), [sym_shared] = ACTIONS(4516), [sym_throw] = ACTIONS(4516), [sym_typeid] = ACTIONS(4516), [sym_typeof] = ACTIONS(4516), [sym_traits] = ACTIONS(4516), [sym_vector] = ACTIONS(4516), [sym_void] = ACTIONS(4516), [anon_sym_BQUOTE] = ACTIONS(4518), [anon_sym_r_DQUOTE] = ACTIONS(4518), [anon_sym_x_DQUOTE] = ACTIONS(4518), [anon_sym_DQUOTE] = ACTIONS(4518), [anon_sym_i_BQUOTE] = ACTIONS(4518), [anon_sym_i_DQUOTE] = ACTIONS(4518), [anon_sym_iq_LBRACE] = ACTIONS(4518), [aux_sym_char_literal_token1] = ACTIONS(4518), [anon_sym_SQUOTE] = ACTIONS(4516), [anon_sym___DATE__] = ACTIONS(4516), [anon_sym___FILE__] = ACTIONS(4516), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4516), [anon_sym___FUNCTION__] = ACTIONS(4516), [anon_sym___LINE__] = ACTIONS(4516), [anon_sym___MODULE__] = ACTIONS(4516), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4516), [anon_sym___TIME__] = ACTIONS(4516), [anon_sym___TIMESTAMP__] = ACTIONS(4516), [anon_sym___VENDOR__] = ACTIONS(4516), [anon_sym___VERSION__] = ACTIONS(4516), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4518), [sym_float_literal] = ACTIONS(4518), [sym__string] = ACTIONS(4518), }, [2370] = { [sym_identifier] = ACTIONS(4528), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4531), [anon_sym_LBRACE] = ACTIONS(4531), [anon_sym_DOT] = ACTIONS(4531), [anon_sym_AMP] = ACTIONS(4531), [anon_sym_DASH] = ACTIONS(4528), [anon_sym_DASH_DASH] = ACTIONS(4531), [anon_sym_PLUS] = ACTIONS(4528), [anon_sym_PLUS_PLUS] = ACTIONS(4531), [anon_sym_BANG] = ACTIONS(4531), [anon_sym_LPAREN] = ACTIONS(4531), [anon_sym_RPAREN] = ACTIONS(4531), [anon_sym_LBRACK] = ACTIONS(4531), [anon_sym_SEMI] = ACTIONS(4531), [anon_sym_DOLLAR] = ACTIONS(4531), [anon_sym_STAR] = ACTIONS(4531), [anon_sym_TILDE] = ACTIONS(4531), [sym_bool] = ACTIONS(4528), [sym_byte] = ACTIONS(4528), [sym_ubyte] = ACTIONS(4528), [sym_char] = ACTIONS(4528), [sym_short] = ACTIONS(4528), [sym_ushort] = ACTIONS(4528), [sym_int] = ACTIONS(4528), [sym_uint] = ACTIONS(4528), [sym_long] = ACTIONS(4528), [sym_ulong] = ACTIONS(4528), [sym_cent] = ACTIONS(4528), [sym_ucent] = ACTIONS(4528), [sym_wchar] = ACTIONS(4528), [sym_dchar] = ACTIONS(4528), [sym_float] = ACTIONS(4528), [sym_double] = ACTIONS(4528), [sym_real] = ACTIONS(4528), [sym_ifloat] = ACTIONS(4528), [sym_idouble] = ACTIONS(4528), [sym_ireal] = ACTIONS(4528), [sym_cfloat] = ACTIONS(4528), [sym_cdouble] = ACTIONS(4528), [sym_creal] = ACTIONS(4528), [sym_size_t] = ACTIONS(4528), [sym_ptrdiff_t] = ACTIONS(4528), [sym_string] = ACTIONS(4528), [sym_cstring] = ACTIONS(4528), [sym_dstring] = ACTIONS(4528), [sym_wstring] = ACTIONS(4528), [sym_noreturn] = ACTIONS(4528), [sym_true] = ACTIONS(4528), [sym_false] = ACTIONS(4528), [sym_null] = ACTIONS(4528), [sym_super] = ACTIONS(4528), [sym_this] = ACTIONS(4528), [sym_assert] = ACTIONS(4528), [sym_auto] = ACTIONS(4528), [sym_cast] = ACTIONS(4528), [sym_catch] = ACTIONS(4528), [sym_const] = ACTIONS(4528), [sym_delegate] = ACTIONS(4528), [sym_delete] = ACTIONS(4528), [sym_do] = ACTIONS(4528), [sym_else] = ACTIONS(4528), [sym_finally] = ACTIONS(4528), [sym_function] = ACTIONS(4528), [sym_immutable] = ACTIONS(4528), [sym_import] = ACTIONS(4528), [sym_in] = ACTIONS(4528), [sym_inout] = ACTIONS(4528), [sym_is] = ACTIONS(4528), [sym_mixin] = ACTIONS(4528), [sym_new] = ACTIONS(4528), [sym_out] = ACTIONS(4528), [sym_ref] = ACTIONS(4528), [sym_shared] = ACTIONS(4528), [sym_throw] = ACTIONS(4528), [sym_typeid] = ACTIONS(4528), [sym_typeof] = ACTIONS(4528), [sym_traits] = ACTIONS(4528), [sym_vector] = ACTIONS(4528), [sym_void] = ACTIONS(4528), [anon_sym_BQUOTE] = ACTIONS(4531), [anon_sym_r_DQUOTE] = ACTIONS(4531), [anon_sym_x_DQUOTE] = ACTIONS(4531), [anon_sym_DQUOTE] = ACTIONS(4531), [anon_sym_i_BQUOTE] = ACTIONS(4531), [anon_sym_i_DQUOTE] = ACTIONS(4531), [anon_sym_iq_LBRACE] = ACTIONS(4531), [aux_sym_char_literal_token1] = ACTIONS(4531), [anon_sym_SQUOTE] = ACTIONS(4528), [anon_sym___DATE__] = ACTIONS(4528), [anon_sym___FILE__] = ACTIONS(4528), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4528), [anon_sym___FUNCTION__] = ACTIONS(4528), [anon_sym___LINE__] = ACTIONS(4528), [anon_sym___MODULE__] = ACTIONS(4528), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4528), [anon_sym___TIME__] = ACTIONS(4528), [anon_sym___TIMESTAMP__] = ACTIONS(4528), [anon_sym___VENDOR__] = ACTIONS(4528), [anon_sym___VERSION__] = ACTIONS(4528), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4531), [sym_float_literal] = ACTIONS(4531), [sym__string] = ACTIONS(4531), }, [2371] = { [sym_identifier] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2782), [anon_sym_LBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_AMP] = ACTIONS(2782), [anon_sym_DASH] = ACTIONS(2784), [anon_sym_DASH_DASH] = ACTIONS(2782), [anon_sym_PLUS] = ACTIONS(2784), [anon_sym_PLUS_PLUS] = ACTIONS(2782), [anon_sym_BANG] = ACTIONS(2782), [anon_sym_LPAREN] = ACTIONS(2782), [anon_sym_RPAREN] = ACTIONS(2782), [anon_sym_LBRACK] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_DOLLAR] = ACTIONS(2782), [anon_sym_STAR] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_true] = ACTIONS(2784), [sym_false] = ACTIONS(2784), [sym_null] = ACTIONS(2784), [sym_super] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_assert] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_cast] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_delegate] = ACTIONS(2784), [sym_delete] = ACTIONS(2784), [sym_do] = ACTIONS(2784), [sym_else] = ACTIONS(6588), [sym_function] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_in] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_is] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_new] = ACTIONS(2784), [sym_out] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_throw] = ACTIONS(2784), [sym_typeid] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [anon_sym_BQUOTE] = ACTIONS(2782), [anon_sym_r_DQUOTE] = ACTIONS(2782), [anon_sym_x_DQUOTE] = ACTIONS(2782), [anon_sym_DQUOTE] = ACTIONS(2782), [anon_sym_i_BQUOTE] = ACTIONS(2782), [anon_sym_i_DQUOTE] = ACTIONS(2782), [anon_sym_iq_LBRACE] = ACTIONS(2782), [aux_sym_char_literal_token1] = ACTIONS(2782), [anon_sym_SQUOTE] = ACTIONS(2784), [anon_sym___DATE__] = ACTIONS(2784), [anon_sym___FILE__] = ACTIONS(2784), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2784), [anon_sym___FUNCTION__] = ACTIONS(2784), [anon_sym___LINE__] = ACTIONS(2784), [anon_sym___MODULE__] = ACTIONS(2784), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2784), [anon_sym___TIME__] = ACTIONS(2784), [anon_sym___TIMESTAMP__] = ACTIONS(2784), [anon_sym___VENDOR__] = ACTIONS(2784), [anon_sym___VERSION__] = ACTIONS(2784), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2782), [sym_float_literal] = ACTIONS(2782), [sym__string] = ACTIONS(2782), }, [2372] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(6590), [sym_function] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [2373] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2663), [anon_sym_LBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_AMP] = ACTIONS(2663), [anon_sym_DASH] = ACTIONS(2665), [anon_sym_DASH_DASH] = ACTIONS(2663), [anon_sym_PLUS] = ACTIONS(2665), [anon_sym_PLUS_PLUS] = ACTIONS(2663), [anon_sym_BANG] = ACTIONS(2663), [anon_sym_LPAREN] = ACTIONS(2663), [anon_sym_RPAREN] = ACTIONS(2663), [anon_sym_LBRACK] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_DOLLAR] = ACTIONS(2663), [anon_sym_STAR] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_true] = ACTIONS(2665), [sym_false] = ACTIONS(2665), [sym_null] = ACTIONS(2665), [sym_super] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_assert] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_cast] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_delegate] = ACTIONS(2665), [sym_delete] = ACTIONS(2665), [sym_do] = ACTIONS(2665), [sym_else] = ACTIONS(6594), [sym_function] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_in] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_is] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_new] = ACTIONS(2665), [sym_out] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_throw] = ACTIONS(2665), [sym_typeid] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [anon_sym_BQUOTE] = ACTIONS(2663), [anon_sym_r_DQUOTE] = ACTIONS(2663), [anon_sym_x_DQUOTE] = ACTIONS(2663), [anon_sym_DQUOTE] = ACTIONS(2663), [anon_sym_i_BQUOTE] = ACTIONS(2663), [anon_sym_i_DQUOTE] = ACTIONS(2663), [anon_sym_iq_LBRACE] = ACTIONS(2663), [aux_sym_char_literal_token1] = ACTIONS(2663), [anon_sym_SQUOTE] = ACTIONS(2665), [anon_sym___DATE__] = ACTIONS(2665), [anon_sym___FILE__] = ACTIONS(2665), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2665), [anon_sym___FUNCTION__] = ACTIONS(2665), [anon_sym___LINE__] = ACTIONS(2665), [anon_sym___MODULE__] = ACTIONS(2665), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2665), [anon_sym___TIME__] = ACTIONS(2665), [anon_sym___TIMESTAMP__] = ACTIONS(2665), [anon_sym___VENDOR__] = ACTIONS(2665), [anon_sym___VERSION__] = ACTIONS(2665), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2663), [sym_float_literal] = ACTIONS(2663), [sym__string] = ACTIONS(2663), }, [2374] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(6596), [sym_function] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [2375] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(6598), [sym_function] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [2376] = { [sym_identifier] = ACTIONS(4640), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4642), [anon_sym_LBRACE] = ACTIONS(4642), [anon_sym_DOT] = ACTIONS(4642), [anon_sym_AMP] = ACTIONS(4642), [anon_sym_DASH] = ACTIONS(4640), [anon_sym_DASH_DASH] = ACTIONS(4642), [anon_sym_PLUS] = ACTIONS(4640), [anon_sym_PLUS_PLUS] = ACTIONS(4642), [anon_sym_BANG] = ACTIONS(4642), [anon_sym_LPAREN] = ACTIONS(4642), [anon_sym_RPAREN] = ACTIONS(4642), [anon_sym_LBRACK] = ACTIONS(4642), [anon_sym_SEMI] = ACTIONS(4642), [anon_sym_DOLLAR] = ACTIONS(4642), [anon_sym_STAR] = ACTIONS(4642), [anon_sym_TILDE] = ACTIONS(4642), [sym_bool] = ACTIONS(4640), [sym_byte] = ACTIONS(4640), [sym_ubyte] = ACTIONS(4640), [sym_char] = ACTIONS(4640), [sym_short] = ACTIONS(4640), [sym_ushort] = ACTIONS(4640), [sym_int] = ACTIONS(4640), [sym_uint] = ACTIONS(4640), [sym_long] = ACTIONS(4640), [sym_ulong] = ACTIONS(4640), [sym_cent] = ACTIONS(4640), [sym_ucent] = ACTIONS(4640), [sym_wchar] = ACTIONS(4640), [sym_dchar] = ACTIONS(4640), [sym_float] = ACTIONS(4640), [sym_double] = ACTIONS(4640), [sym_real] = ACTIONS(4640), [sym_ifloat] = ACTIONS(4640), [sym_idouble] = ACTIONS(4640), [sym_ireal] = ACTIONS(4640), [sym_cfloat] = ACTIONS(4640), [sym_cdouble] = ACTIONS(4640), [sym_creal] = ACTIONS(4640), [sym_size_t] = ACTIONS(4640), [sym_ptrdiff_t] = ACTIONS(4640), [sym_string] = ACTIONS(4640), [sym_cstring] = ACTIONS(4640), [sym_dstring] = ACTIONS(4640), [sym_wstring] = ACTIONS(4640), [sym_noreturn] = ACTIONS(4640), [sym_true] = ACTIONS(4640), [sym_false] = ACTIONS(4640), [sym_null] = ACTIONS(4640), [sym_super] = ACTIONS(4640), [sym_this] = ACTIONS(4640), [sym_assert] = ACTIONS(4640), [sym_auto] = ACTIONS(4640), [sym_cast] = ACTIONS(4640), [sym_const] = ACTIONS(4640), [sym_delegate] = ACTIONS(4640), [sym_delete] = ACTIONS(4640), [sym_do] = ACTIONS(4640), [sym_else] = ACTIONS(6600), [sym_function] = ACTIONS(4640), [sym_immutable] = ACTIONS(4640), [sym_import] = ACTIONS(4640), [sym_in] = ACTIONS(4640), [sym_inout] = ACTIONS(4640), [sym_is] = ACTIONS(4640), [sym_mixin] = ACTIONS(4640), [sym_new] = ACTIONS(4640), [sym_out] = ACTIONS(4640), [sym_ref] = ACTIONS(4640), [sym_shared] = ACTIONS(4640), [sym_throw] = ACTIONS(4640), [sym_typeid] = ACTIONS(4640), [sym_typeof] = ACTIONS(4640), [sym_traits] = ACTIONS(4640), [sym_vector] = ACTIONS(4640), [sym_void] = ACTIONS(4640), [anon_sym_BQUOTE] = ACTIONS(4642), [anon_sym_r_DQUOTE] = ACTIONS(4642), [anon_sym_x_DQUOTE] = ACTIONS(4642), [anon_sym_DQUOTE] = ACTIONS(4642), [anon_sym_i_BQUOTE] = ACTIONS(4642), [anon_sym_i_DQUOTE] = ACTIONS(4642), [anon_sym_iq_LBRACE] = ACTIONS(4642), [aux_sym_char_literal_token1] = ACTIONS(4642), [anon_sym_SQUOTE] = ACTIONS(4640), [anon_sym___DATE__] = ACTIONS(4640), [anon_sym___FILE__] = ACTIONS(4640), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4640), [anon_sym___FUNCTION__] = ACTIONS(4640), [anon_sym___LINE__] = ACTIONS(4640), [anon_sym___MODULE__] = ACTIONS(4640), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4640), [anon_sym___TIME__] = ACTIONS(4640), [anon_sym___TIMESTAMP__] = ACTIONS(4640), [anon_sym___VENDOR__] = ACTIONS(4640), [anon_sym___VERSION__] = ACTIONS(4640), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4642), [sym_float_literal] = ACTIONS(4642), [sym__string] = ACTIONS(4642), }, [2377] = { [sym_identifier] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4448), [anon_sym_LBRACE] = ACTIONS(4448), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_AMP] = ACTIONS(4448), [anon_sym_DASH] = ACTIONS(4446), [anon_sym_DASH_DASH] = ACTIONS(4448), [anon_sym_PLUS] = ACTIONS(4446), [anon_sym_PLUS_PLUS] = ACTIONS(4448), [anon_sym_BANG] = ACTIONS(4448), [anon_sym_LPAREN] = ACTIONS(4448), [anon_sym_RPAREN] = ACTIONS(4448), [anon_sym_LBRACK] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_DOLLAR] = ACTIONS(4448), [anon_sym_STAR] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_true] = ACTIONS(4446), [sym_false] = ACTIONS(4446), [sym_null] = ACTIONS(4446), [sym_super] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_assert] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_cast] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_delegate] = ACTIONS(4446), [sym_delete] = ACTIONS(4446), [sym_do] = ACTIONS(4446), [sym_else] = ACTIONS(6602), [sym_function] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_in] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_is] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_new] = ACTIONS(4446), [sym_out] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_throw] = ACTIONS(4446), [sym_typeid] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [anon_sym_BQUOTE] = ACTIONS(4448), [anon_sym_r_DQUOTE] = ACTIONS(4448), [anon_sym_x_DQUOTE] = ACTIONS(4448), [anon_sym_DQUOTE] = ACTIONS(4448), [anon_sym_i_BQUOTE] = ACTIONS(4448), [anon_sym_i_DQUOTE] = ACTIONS(4448), [anon_sym_iq_LBRACE] = ACTIONS(4448), [aux_sym_char_literal_token1] = ACTIONS(4448), [anon_sym_SQUOTE] = ACTIONS(4446), [anon_sym___DATE__] = ACTIONS(4446), [anon_sym___FILE__] = ACTIONS(4446), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4446), [anon_sym___FUNCTION__] = ACTIONS(4446), [anon_sym___LINE__] = ACTIONS(4446), [anon_sym___MODULE__] = ACTIONS(4446), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4446), [anon_sym___TIME__] = ACTIONS(4446), [anon_sym___TIMESTAMP__] = ACTIONS(4446), [anon_sym___VENDOR__] = ACTIONS(4446), [anon_sym___VERSION__] = ACTIONS(4446), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4448), [sym_float_literal] = ACTIONS(4448), [sym__string] = ACTIONS(4448), }, [2378] = { [sym_identifier] = ACTIONS(4359), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4361), [anon_sym_LBRACE] = ACTIONS(4361), [anon_sym_DOT] = ACTIONS(4361), [anon_sym_AMP] = ACTIONS(4361), [anon_sym_DASH] = ACTIONS(4359), [anon_sym_DASH_DASH] = ACTIONS(4361), [anon_sym_PLUS] = ACTIONS(4359), [anon_sym_PLUS_PLUS] = ACTIONS(4361), [anon_sym_BANG] = ACTIONS(4361), [anon_sym_LPAREN] = ACTIONS(4361), [anon_sym_RPAREN] = ACTIONS(4361), [anon_sym_LBRACK] = ACTIONS(4361), [anon_sym_SEMI] = ACTIONS(4361), [anon_sym_DOLLAR] = ACTIONS(4361), [anon_sym_STAR] = ACTIONS(4361), [anon_sym_TILDE] = ACTIONS(4361), [sym_bool] = ACTIONS(4359), [sym_byte] = ACTIONS(4359), [sym_ubyte] = ACTIONS(4359), [sym_char] = ACTIONS(4359), [sym_short] = ACTIONS(4359), [sym_ushort] = ACTIONS(4359), [sym_int] = ACTIONS(4359), [sym_uint] = ACTIONS(4359), [sym_long] = ACTIONS(4359), [sym_ulong] = ACTIONS(4359), [sym_cent] = ACTIONS(4359), [sym_ucent] = ACTIONS(4359), [sym_wchar] = ACTIONS(4359), [sym_dchar] = ACTIONS(4359), [sym_float] = ACTIONS(4359), [sym_double] = ACTIONS(4359), [sym_real] = ACTIONS(4359), [sym_ifloat] = ACTIONS(4359), [sym_idouble] = ACTIONS(4359), [sym_ireal] = ACTIONS(4359), [sym_cfloat] = ACTIONS(4359), [sym_cdouble] = ACTIONS(4359), [sym_creal] = ACTIONS(4359), [sym_size_t] = ACTIONS(4359), [sym_ptrdiff_t] = ACTIONS(4359), [sym_string] = ACTIONS(4359), [sym_cstring] = ACTIONS(4359), [sym_dstring] = ACTIONS(4359), [sym_wstring] = ACTIONS(4359), [sym_noreturn] = ACTIONS(4359), [sym_true] = ACTIONS(4359), [sym_false] = ACTIONS(4359), [sym_null] = ACTIONS(4359), [sym_super] = ACTIONS(4359), [sym_this] = ACTIONS(4359), [sym_assert] = ACTIONS(4359), [sym_auto] = ACTIONS(4359), [sym_cast] = ACTIONS(4359), [sym_const] = ACTIONS(4359), [sym_delegate] = ACTIONS(4359), [sym_delete] = ACTIONS(4359), [sym_do] = ACTIONS(4359), [sym_else] = ACTIONS(6604), [sym_function] = ACTIONS(4359), [sym_immutable] = ACTIONS(4359), [sym_import] = ACTIONS(4359), [sym_in] = ACTIONS(4359), [sym_inout] = ACTIONS(4359), [sym_is] = ACTIONS(4359), [sym_mixin] = ACTIONS(4359), [sym_new] = ACTIONS(4359), [sym_out] = ACTIONS(4359), [sym_ref] = ACTIONS(4359), [sym_shared] = ACTIONS(4359), [sym_throw] = ACTIONS(4359), [sym_typeid] = ACTIONS(4359), [sym_typeof] = ACTIONS(4359), [sym_traits] = ACTIONS(4359), [sym_vector] = ACTIONS(4359), [sym_void] = ACTIONS(4359), [anon_sym_BQUOTE] = ACTIONS(4361), [anon_sym_r_DQUOTE] = ACTIONS(4361), [anon_sym_x_DQUOTE] = ACTIONS(4361), [anon_sym_DQUOTE] = ACTIONS(4361), [anon_sym_i_BQUOTE] = ACTIONS(4361), [anon_sym_i_DQUOTE] = ACTIONS(4361), [anon_sym_iq_LBRACE] = ACTIONS(4361), [aux_sym_char_literal_token1] = ACTIONS(4361), [anon_sym_SQUOTE] = ACTIONS(4359), [anon_sym___DATE__] = ACTIONS(4359), [anon_sym___FILE__] = ACTIONS(4359), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4359), [anon_sym___FUNCTION__] = ACTIONS(4359), [anon_sym___LINE__] = ACTIONS(4359), [anon_sym___MODULE__] = ACTIONS(4359), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4359), [anon_sym___TIME__] = ACTIONS(4359), [anon_sym___TIMESTAMP__] = ACTIONS(4359), [anon_sym___VENDOR__] = ACTIONS(4359), [anon_sym___VERSION__] = ACTIONS(4359), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4361), [sym_float_literal] = ACTIONS(4361), [sym__string] = ACTIONS(4361), }, [2379] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(2796), [anon_sym_LBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_AMP] = ACTIONS(2796), [anon_sym_DASH] = ACTIONS(2798), [anon_sym_DASH_DASH] = ACTIONS(2796), [anon_sym_PLUS] = ACTIONS(2798), [anon_sym_PLUS_PLUS] = ACTIONS(2796), [anon_sym_BANG] = ACTIONS(2796), [anon_sym_LPAREN] = ACTIONS(2796), [anon_sym_RPAREN] = ACTIONS(2796), [anon_sym_LBRACK] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_DOLLAR] = ACTIONS(2796), [anon_sym_STAR] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_true] = ACTIONS(2798), [sym_false] = ACTIONS(2798), [sym_null] = ACTIONS(2798), [sym_super] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_assert] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_cast] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_delegate] = ACTIONS(2798), [sym_delete] = ACTIONS(2798), [sym_do] = ACTIONS(2798), [sym_else] = ACTIONS(6606), [sym_function] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_in] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_is] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_new] = ACTIONS(2798), [sym_out] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_throw] = ACTIONS(2798), [sym_typeid] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [anon_sym_BQUOTE] = ACTIONS(2796), [anon_sym_r_DQUOTE] = ACTIONS(2796), [anon_sym_x_DQUOTE] = ACTIONS(2796), [anon_sym_DQUOTE] = ACTIONS(2796), [anon_sym_i_BQUOTE] = ACTIONS(2796), [anon_sym_i_DQUOTE] = ACTIONS(2796), [anon_sym_iq_LBRACE] = ACTIONS(2796), [aux_sym_char_literal_token1] = ACTIONS(2796), [anon_sym_SQUOTE] = ACTIONS(2798), [anon_sym___DATE__] = ACTIONS(2798), [anon_sym___FILE__] = ACTIONS(2798), [anon_sym___FILE_FULL_PATH__] = ACTIONS(2798), [anon_sym___FUNCTION__] = ACTIONS(2798), [anon_sym___LINE__] = ACTIONS(2798), [anon_sym___MODULE__] = ACTIONS(2798), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(2798), [anon_sym___TIME__] = ACTIONS(2798), [anon_sym___TIMESTAMP__] = ACTIONS(2798), [anon_sym___VENDOR__] = ACTIONS(2798), [anon_sym___VERSION__] = ACTIONS(2798), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(2796), [sym_float_literal] = ACTIONS(2796), [sym__string] = ACTIONS(2796), }, [2380] = { [sym_identifier] = ACTIONS(4365), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(4368), [anon_sym_LBRACE] = ACTIONS(4368), [anon_sym_DOT] = ACTIONS(4368), [anon_sym_AMP] = ACTIONS(4368), [anon_sym_DASH] = ACTIONS(4365), [anon_sym_DASH_DASH] = ACTIONS(4368), [anon_sym_PLUS] = ACTIONS(4365), [anon_sym_PLUS_PLUS] = ACTIONS(4368), [anon_sym_BANG] = ACTIONS(4368), [anon_sym_LPAREN] = ACTIONS(4368), [anon_sym_RPAREN] = ACTIONS(4368), [anon_sym_LBRACK] = ACTIONS(4368), [anon_sym_SEMI] = ACTIONS(4368), [anon_sym_DOLLAR] = ACTIONS(4368), [anon_sym_STAR] = ACTIONS(4368), [anon_sym_TILDE] = ACTIONS(4368), [sym_bool] = ACTIONS(4365), [sym_byte] = ACTIONS(4365), [sym_ubyte] = ACTIONS(4365), [sym_char] = ACTIONS(4365), [sym_short] = ACTIONS(4365), [sym_ushort] = ACTIONS(4365), [sym_int] = ACTIONS(4365), [sym_uint] = ACTIONS(4365), [sym_long] = ACTIONS(4365), [sym_ulong] = ACTIONS(4365), [sym_cent] = ACTIONS(4365), [sym_ucent] = ACTIONS(4365), [sym_wchar] = ACTIONS(4365), [sym_dchar] = ACTIONS(4365), [sym_float] = ACTIONS(4365), [sym_double] = ACTIONS(4365), [sym_real] = ACTIONS(4365), [sym_ifloat] = ACTIONS(4365), [sym_idouble] = ACTIONS(4365), [sym_ireal] = ACTIONS(4365), [sym_cfloat] = ACTIONS(4365), [sym_cdouble] = ACTIONS(4365), [sym_creal] = ACTIONS(4365), [sym_size_t] = ACTIONS(4365), [sym_ptrdiff_t] = ACTIONS(4365), [sym_string] = ACTIONS(4365), [sym_cstring] = ACTIONS(4365), [sym_dstring] = ACTIONS(4365), [sym_wstring] = ACTIONS(4365), [sym_noreturn] = ACTIONS(4365), [sym_true] = ACTIONS(4365), [sym_false] = ACTIONS(4365), [sym_null] = ACTIONS(4365), [sym_super] = ACTIONS(4365), [sym_this] = ACTIONS(4365), [sym_assert] = ACTIONS(4365), [sym_auto] = ACTIONS(4365), [sym_cast] = ACTIONS(4365), [sym_const] = ACTIONS(4365), [sym_delegate] = ACTIONS(4365), [sym_delete] = ACTIONS(4365), [sym_do] = ACTIONS(4365), [sym_else] = ACTIONS(6608), [sym_function] = ACTIONS(4365), [sym_immutable] = ACTIONS(4365), [sym_import] = ACTIONS(4365), [sym_in] = ACTIONS(4365), [sym_inout] = ACTIONS(4365), [sym_is] = ACTIONS(4365), [sym_mixin] = ACTIONS(4365), [sym_new] = ACTIONS(4365), [sym_out] = ACTIONS(4365), [sym_ref] = ACTIONS(4365), [sym_shared] = ACTIONS(4365), [sym_throw] = ACTIONS(4365), [sym_typeid] = ACTIONS(4365), [sym_typeof] = ACTIONS(4365), [sym_traits] = ACTIONS(4365), [sym_vector] = ACTIONS(4365), [sym_void] = ACTIONS(4365), [anon_sym_BQUOTE] = ACTIONS(4368), [anon_sym_r_DQUOTE] = ACTIONS(4368), [anon_sym_x_DQUOTE] = ACTIONS(4368), [anon_sym_DQUOTE] = ACTIONS(4368), [anon_sym_i_BQUOTE] = ACTIONS(4368), [anon_sym_i_DQUOTE] = ACTIONS(4368), [anon_sym_iq_LBRACE] = ACTIONS(4368), [aux_sym_char_literal_token1] = ACTIONS(4368), [anon_sym_SQUOTE] = ACTIONS(4365), [anon_sym___DATE__] = ACTIONS(4365), [anon_sym___FILE__] = ACTIONS(4365), [anon_sym___FILE_FULL_PATH__] = ACTIONS(4365), [anon_sym___FUNCTION__] = ACTIONS(4365), [anon_sym___LINE__] = ACTIONS(4365), [anon_sym___MODULE__] = ACTIONS(4365), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(4365), [anon_sym___TIME__] = ACTIONS(4365), [anon_sym___TIMESTAMP__] = ACTIONS(4365), [anon_sym___VENDOR__] = ACTIONS(4365), [anon_sym___VERSION__] = ACTIONS(4365), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(4368), [sym_float_literal] = ACTIONS(4368), [sym__string] = ACTIONS(4368), }, [2381] = { [sym_storage_class] = STATE(3086), [sym_type] = STATE(5988), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(8059), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3086), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2382] = { [sym_storage_class] = STATE(2395), [sym_type] = STATE(5613), [sym_type_ctor] = STATE(3239), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(6564), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(2395), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6635), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6637), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2383] = { [sym_storage_class] = STATE(3069), [sym_type] = STATE(6102), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7786), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3069), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2384] = { [sym_storage_class] = STATE(3098), [sym_type] = STATE(6091), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7792), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3098), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2385] = { [sym_storage_class] = STATE(3157), [sym_type] = STATE(5728), [sym_type_ctor] = STATE(3239), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(6652), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3157), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6635), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6637), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2386] = { [sym_storage_class] = STATE(3094), [sym_type] = STATE(5787), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7977), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3094), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2387] = { [sym_storage_class] = STATE(3092), [sym_type] = STATE(5760), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7581), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3092), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2388] = { [sym_storage_class] = STATE(3078), [sym_type] = STATE(6134), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7216), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3078), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2389] = { [sym_storage_class] = STATE(3068), [sym_type] = STATE(5949), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7893), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3068), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2390] = { [sym_storage_class] = STATE(3096), [sym_type] = STATE(6075), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7116), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3096), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2391] = { [sym_storage_class] = STATE(3067), [sym_type] = STATE(6094), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7229), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3067), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2392] = { [sym_storage_class] = STATE(3070), [sym_type] = STATE(6381), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7429), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3070), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2393] = { [sym_storage_class] = STATE(2385), [sym_type] = STATE(5579), [sym_type_ctor] = STATE(3239), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(6822), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(2385), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6635), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6637), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2394] = { [sym_storage_class] = STATE(3085), [sym_type] = STATE(5953), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7040), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3085), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2395] = { [sym_storage_class] = STATE(3157), [sym_type] = STATE(5579), [sym_type_ctor] = STATE(3239), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(6822), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3157), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6635), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6637), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2396] = { [sym_storage_class] = STATE(3073), [sym_type] = STATE(6356), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_function_literal] = STATE(7602), [sym__parameter_with_member_attributes] = STATE(4893), [sym_block_statement] = STATE(6411), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6411), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3073), [aux_sym_type_repeat1] = STATE(3799), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(6611), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(13), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6621), [sym_const] = ACTIONS(2964), [sym_delegate] = ACTIONS(6623), [sym_deprecated] = ACTIONS(6617), [sym_do] = ACTIONS(6625), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_function] = ACTIONS(6629), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_out] = ACTIONS(167), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6633), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2397] = { [sym_identifier] = ACTIONS(3008), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3010), [anon_sym_DOT] = ACTIONS(3010), [anon_sym_BANG] = ACTIONS(3010), [anon_sym_LPAREN] = ACTIONS(3010), [anon_sym_RPAREN] = ACTIONS(3010), [anon_sym_LBRACK] = ACTIONS(3010), [anon_sym_RBRACK] = ACTIONS(3010), [anon_sym_COMMA] = ACTIONS(3010), [anon_sym_SEMI] = ACTIONS(3010), [anon_sym_COLON] = ACTIONS(3010), [anon_sym_EQ_EQ] = ACTIONS(3010), [anon_sym_STAR] = ACTIONS(3010), [anon_sym_TILDE] = ACTIONS(3010), [anon_sym_AT] = ACTIONS(3010), [sym_bool] = ACTIONS(3008), [sym_byte] = ACTIONS(3008), [sym_ubyte] = ACTIONS(3008), [sym_char] = ACTIONS(3008), [sym_short] = ACTIONS(3008), [sym_ushort] = ACTIONS(3008), [sym_int] = ACTIONS(3008), [sym_uint] = ACTIONS(3008), [sym_long] = ACTIONS(3008), [sym_ulong] = ACTIONS(3008), [sym_cent] = ACTIONS(3008), [sym_ucent] = ACTIONS(3008), [sym_wchar] = ACTIONS(3008), [sym_dchar] = ACTIONS(3008), [sym_float] = ACTIONS(3008), [sym_double] = ACTIONS(3008), [sym_real] = ACTIONS(3008), [sym_ifloat] = ACTIONS(3008), [sym_idouble] = ACTIONS(3008), [sym_ireal] = ACTIONS(3008), [sym_cfloat] = ACTIONS(3008), [sym_cdouble] = ACTIONS(3008), [sym_creal] = ACTIONS(3008), [sym_size_t] = ACTIONS(3008), [sym_ptrdiff_t] = ACTIONS(3008), [sym_string] = ACTIONS(3008), [sym_cstring] = ACTIONS(3008), [sym_dstring] = ACTIONS(3008), [sym_wstring] = ACTIONS(3008), [sym_noreturn] = ACTIONS(3008), [sym_this] = ACTIONS(3008), [sym_abstract] = ACTIONS(3008), [sym_alias] = ACTIONS(3008), [sym_align] = ACTIONS(3008), [sym_auto] = ACTIONS(3008), [sym_class] = ACTIONS(3008), [sym_const] = ACTIONS(3008), [sym_debug] = ACTIONS(3008), [sym_delegate] = ACTIONS(3008), [sym_deprecated] = ACTIONS(3008), [sym_enum] = ACTIONS(3008), [sym_export] = ACTIONS(3008), [sym_extern] = ACTIONS(3008), [sym_final] = ACTIONS(3008), [sym_function] = ACTIONS(3008), [sym_immutable] = ACTIONS(3008), [sym_import] = ACTIONS(3008), [sym_inout] = ACTIONS(3008), [sym_interface] = ACTIONS(3008), [sym_invariant] = ACTIONS(3008), [sym_mixin] = ACTIONS(3008), [sym_module] = ACTIONS(3008), [sym_nothrow] = ACTIONS(3008), [sym_override] = ACTIONS(3008), [sym_package] = ACTIONS(3008), [sym_pragma] = ACTIONS(3008), [sym_private] = ACTIONS(3008), [sym_protected] = ACTIONS(3008), [sym_public] = ACTIONS(3008), [sym_pure] = ACTIONS(3008), [sym_ref] = ACTIONS(3008), [sym_return] = ACTIONS(3008), [sym_scope] = ACTIONS(3008), [sym_shared] = ACTIONS(3008), [sym_static] = ACTIONS(3008), [sym_struct] = ACTIONS(3008), [sym_synchronized] = ACTIONS(3008), [sym_template] = ACTIONS(3008), [sym_typeof] = ACTIONS(3008), [sym_union] = ACTIONS(3008), [sym_unittest] = ACTIONS(3008), [sym_version] = ACTIONS(3008), [sym_gshared] = ACTIONS(3008), [sym_traits] = ACTIONS(3008), [sym_vector] = ACTIONS(3008), [sym_void] = ACTIONS(3008), [sym_directive] = ACTIONS(3), }, [2398] = { [sym_identifier] = ACTIONS(3056), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3058), [anon_sym_DOT] = ACTIONS(3058), [anon_sym_BANG] = ACTIONS(3058), [anon_sym_LPAREN] = ACTIONS(3058), [anon_sym_RPAREN] = ACTIONS(3058), [anon_sym_LBRACK] = ACTIONS(3058), [anon_sym_RBRACK] = ACTIONS(3058), [anon_sym_COMMA] = ACTIONS(3058), [anon_sym_SEMI] = ACTIONS(3058), [anon_sym_COLON] = ACTIONS(3058), [anon_sym_EQ_EQ] = ACTIONS(3058), [anon_sym_STAR] = ACTIONS(3058), [anon_sym_TILDE] = ACTIONS(3058), [anon_sym_AT] = ACTIONS(3058), [sym_bool] = ACTIONS(3056), [sym_byte] = ACTIONS(3056), [sym_ubyte] = ACTIONS(3056), [sym_char] = ACTIONS(3056), [sym_short] = ACTIONS(3056), [sym_ushort] = ACTIONS(3056), [sym_int] = ACTIONS(3056), [sym_uint] = ACTIONS(3056), [sym_long] = ACTIONS(3056), [sym_ulong] = ACTIONS(3056), [sym_cent] = ACTIONS(3056), [sym_ucent] = ACTIONS(3056), [sym_wchar] = ACTIONS(3056), [sym_dchar] = ACTIONS(3056), [sym_float] = ACTIONS(3056), [sym_double] = ACTIONS(3056), [sym_real] = ACTIONS(3056), [sym_ifloat] = ACTIONS(3056), [sym_idouble] = ACTIONS(3056), [sym_ireal] = ACTIONS(3056), [sym_cfloat] = ACTIONS(3056), [sym_cdouble] = ACTIONS(3056), [sym_creal] = ACTIONS(3056), [sym_size_t] = ACTIONS(3056), [sym_ptrdiff_t] = ACTIONS(3056), [sym_string] = ACTIONS(3056), [sym_cstring] = ACTIONS(3056), [sym_dstring] = ACTIONS(3056), [sym_wstring] = ACTIONS(3056), [sym_noreturn] = ACTIONS(3056), [sym_this] = ACTIONS(3056), [sym_abstract] = ACTIONS(3056), [sym_alias] = ACTIONS(3056), [sym_align] = ACTIONS(3056), [sym_auto] = ACTIONS(3056), [sym_class] = ACTIONS(3056), [sym_const] = ACTIONS(3056), [sym_debug] = ACTIONS(3056), [sym_delegate] = ACTIONS(3056), [sym_deprecated] = ACTIONS(3056), [sym_enum] = ACTIONS(3056), [sym_export] = ACTIONS(3056), [sym_extern] = ACTIONS(3056), [sym_final] = ACTIONS(3056), [sym_function] = ACTIONS(3056), [sym_immutable] = ACTIONS(3056), [sym_import] = ACTIONS(3056), [sym_inout] = ACTIONS(3056), [sym_interface] = ACTIONS(3056), [sym_invariant] = ACTIONS(3056), [sym_mixin] = ACTIONS(3056), [sym_module] = ACTIONS(3056), [sym_nothrow] = ACTIONS(3056), [sym_override] = ACTIONS(3056), [sym_package] = ACTIONS(3056), [sym_pragma] = ACTIONS(3056), [sym_private] = ACTIONS(3056), [sym_protected] = ACTIONS(3056), [sym_public] = ACTIONS(3056), [sym_pure] = ACTIONS(3056), [sym_ref] = ACTIONS(3056), [sym_return] = ACTIONS(3056), [sym_scope] = ACTIONS(3056), [sym_shared] = ACTIONS(3056), [sym_static] = ACTIONS(3056), [sym_struct] = ACTIONS(3056), [sym_synchronized] = ACTIONS(3056), [sym_template] = ACTIONS(3056), [sym_typeof] = ACTIONS(3056), [sym_union] = ACTIONS(3056), [sym_unittest] = ACTIONS(3056), [sym_version] = ACTIONS(3056), [sym_gshared] = ACTIONS(3056), [sym_traits] = ACTIONS(3056), [sym_vector] = ACTIONS(3056), [sym_void] = ACTIONS(3056), [sym_directive] = ACTIONS(3), }, [2399] = { [sym_identifier] = ACTIONS(6639), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6641), [anon_sym_DOT] = ACTIONS(6641), [anon_sym_BANG] = ACTIONS(6641), [anon_sym_LPAREN] = ACTIONS(6641), [anon_sym_RPAREN] = ACTIONS(6641), [anon_sym_LBRACK] = ACTIONS(6641), [anon_sym_RBRACK] = ACTIONS(6641), [anon_sym_COMMA] = ACTIONS(6641), [anon_sym_SEMI] = ACTIONS(6641), [anon_sym_COLON] = ACTIONS(6641), [anon_sym_EQ_EQ] = ACTIONS(6641), [anon_sym_STAR] = ACTIONS(6641), [anon_sym_TILDE] = ACTIONS(6641), [anon_sym_AT] = ACTIONS(6641), [sym_bool] = ACTIONS(6639), [sym_byte] = ACTIONS(6639), [sym_ubyte] = ACTIONS(6639), [sym_char] = ACTIONS(6639), [sym_short] = ACTIONS(6639), [sym_ushort] = ACTIONS(6639), [sym_int] = ACTIONS(6639), [sym_uint] = ACTIONS(6639), [sym_long] = ACTIONS(6639), [sym_ulong] = ACTIONS(6639), [sym_cent] = ACTIONS(6639), [sym_ucent] = ACTIONS(6639), [sym_wchar] = ACTIONS(6639), [sym_dchar] = ACTIONS(6639), [sym_float] = ACTIONS(6639), [sym_double] = ACTIONS(6639), [sym_real] = ACTIONS(6639), [sym_ifloat] = ACTIONS(6639), [sym_idouble] = ACTIONS(6639), [sym_ireal] = ACTIONS(6639), [sym_cfloat] = ACTIONS(6639), [sym_cdouble] = ACTIONS(6639), [sym_creal] = ACTIONS(6639), [sym_size_t] = ACTIONS(6639), [sym_ptrdiff_t] = ACTIONS(6639), [sym_string] = ACTIONS(6639), [sym_cstring] = ACTIONS(6639), [sym_dstring] = ACTIONS(6639), [sym_wstring] = ACTIONS(6639), [sym_noreturn] = ACTIONS(6639), [sym_this] = ACTIONS(6639), [sym_abstract] = ACTIONS(6639), [sym_alias] = ACTIONS(6639), [sym_align] = ACTIONS(6639), [sym_auto] = ACTIONS(6639), [sym_class] = ACTIONS(6639), [sym_const] = ACTIONS(6639), [sym_debug] = ACTIONS(6639), [sym_delegate] = ACTIONS(6639), [sym_deprecated] = ACTIONS(6639), [sym_enum] = ACTIONS(6639), [sym_export] = ACTIONS(6639), [sym_extern] = ACTIONS(6639), [sym_final] = ACTIONS(6639), [sym_function] = ACTIONS(6639), [sym_immutable] = ACTIONS(6639), [sym_import] = ACTIONS(6639), [sym_inout] = ACTIONS(6639), [sym_interface] = ACTIONS(6639), [sym_invariant] = ACTIONS(6639), [sym_mixin] = ACTIONS(6639), [sym_module] = ACTIONS(6639), [sym_nothrow] = ACTIONS(6639), [sym_override] = ACTIONS(6639), [sym_package] = ACTIONS(6639), [sym_pragma] = ACTIONS(6639), [sym_private] = ACTIONS(6639), [sym_protected] = ACTIONS(6639), [sym_public] = ACTIONS(6639), [sym_pure] = ACTIONS(6639), [sym_ref] = ACTIONS(6639), [sym_return] = ACTIONS(6639), [sym_scope] = ACTIONS(6639), [sym_shared] = ACTIONS(6639), [sym_static] = ACTIONS(6639), [sym_struct] = ACTIONS(6639), [sym_synchronized] = ACTIONS(6639), [sym_template] = ACTIONS(6639), [sym_typeof] = ACTIONS(6639), [sym_union] = ACTIONS(6639), [sym_unittest] = ACTIONS(6639), [sym_version] = ACTIONS(6639), [sym_gshared] = ACTIONS(6639), [sym_traits] = ACTIONS(6639), [sym_vector] = ACTIONS(6639), [sym_void] = ACTIONS(6639), [sym_directive] = ACTIONS(3), }, [2400] = { [sym_identifier] = ACTIONS(3036), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3038), [anon_sym_DOT] = ACTIONS(3038), [anon_sym_BANG] = ACTIONS(3038), [anon_sym_LPAREN] = ACTIONS(3038), [anon_sym_RPAREN] = ACTIONS(3038), [anon_sym_LBRACK] = ACTIONS(3038), [anon_sym_RBRACK] = ACTIONS(3038), [anon_sym_COMMA] = ACTIONS(3038), [anon_sym_SEMI] = ACTIONS(3038), [anon_sym_COLON] = ACTIONS(3038), [anon_sym_EQ_EQ] = ACTIONS(3038), [anon_sym_STAR] = ACTIONS(3038), [anon_sym_TILDE] = ACTIONS(3038), [anon_sym_AT] = ACTIONS(3038), [sym_bool] = ACTIONS(3036), [sym_byte] = ACTIONS(3036), [sym_ubyte] = ACTIONS(3036), [sym_char] = ACTIONS(3036), [sym_short] = ACTIONS(3036), [sym_ushort] = ACTIONS(3036), [sym_int] = ACTIONS(3036), [sym_uint] = ACTIONS(3036), [sym_long] = ACTIONS(3036), [sym_ulong] = ACTIONS(3036), [sym_cent] = ACTIONS(3036), [sym_ucent] = ACTIONS(3036), [sym_wchar] = ACTIONS(3036), [sym_dchar] = ACTIONS(3036), [sym_float] = ACTIONS(3036), [sym_double] = ACTIONS(3036), [sym_real] = ACTIONS(3036), [sym_ifloat] = ACTIONS(3036), [sym_idouble] = ACTIONS(3036), [sym_ireal] = ACTIONS(3036), [sym_cfloat] = ACTIONS(3036), [sym_cdouble] = ACTIONS(3036), [sym_creal] = ACTIONS(3036), [sym_size_t] = ACTIONS(3036), [sym_ptrdiff_t] = ACTIONS(3036), [sym_string] = ACTIONS(3036), [sym_cstring] = ACTIONS(3036), [sym_dstring] = ACTIONS(3036), [sym_wstring] = ACTIONS(3036), [sym_noreturn] = ACTIONS(3036), [sym_this] = ACTIONS(3036), [sym_abstract] = ACTIONS(3036), [sym_alias] = ACTIONS(3036), [sym_align] = ACTIONS(3036), [sym_auto] = ACTIONS(3036), [sym_class] = ACTIONS(3036), [sym_const] = ACTIONS(3036), [sym_debug] = ACTIONS(3036), [sym_delegate] = ACTIONS(3036), [sym_deprecated] = ACTIONS(3036), [sym_enum] = ACTIONS(3036), [sym_export] = ACTIONS(3036), [sym_extern] = ACTIONS(3036), [sym_final] = ACTIONS(3036), [sym_function] = ACTIONS(3036), [sym_immutable] = ACTIONS(3036), [sym_import] = ACTIONS(3036), [sym_inout] = ACTIONS(3036), [sym_interface] = ACTIONS(3036), [sym_invariant] = ACTIONS(3036), [sym_mixin] = ACTIONS(3036), [sym_module] = ACTIONS(3036), [sym_nothrow] = ACTIONS(3036), [sym_override] = ACTIONS(3036), [sym_package] = ACTIONS(3036), [sym_pragma] = ACTIONS(3036), [sym_private] = ACTIONS(3036), [sym_protected] = ACTIONS(3036), [sym_public] = ACTIONS(3036), [sym_pure] = ACTIONS(3036), [sym_ref] = ACTIONS(3036), [sym_return] = ACTIONS(3036), [sym_scope] = ACTIONS(3036), [sym_shared] = ACTIONS(3036), [sym_static] = ACTIONS(3036), [sym_struct] = ACTIONS(3036), [sym_synchronized] = ACTIONS(3036), [sym_template] = ACTIONS(3036), [sym_typeof] = ACTIONS(3036), [sym_union] = ACTIONS(3036), [sym_unittest] = ACTIONS(3036), [sym_version] = ACTIONS(3036), [sym_gshared] = ACTIONS(3036), [sym_traits] = ACTIONS(3036), [sym_vector] = ACTIONS(3036), [sym_void] = ACTIONS(3036), [sym_directive] = ACTIONS(3), }, [2401] = { [sym_identifier] = ACTIONS(3048), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3050), [anon_sym_DOT] = ACTIONS(3050), [anon_sym_BANG] = ACTIONS(3050), [anon_sym_LPAREN] = ACTIONS(3050), [anon_sym_RPAREN] = ACTIONS(3050), [anon_sym_LBRACK] = ACTIONS(3050), [anon_sym_RBRACK] = ACTIONS(3050), [anon_sym_COMMA] = ACTIONS(3050), [anon_sym_SEMI] = ACTIONS(3050), [anon_sym_COLON] = ACTIONS(3050), [anon_sym_EQ_EQ] = ACTIONS(3050), [anon_sym_STAR] = ACTIONS(3050), [anon_sym_TILDE] = ACTIONS(3050), [anon_sym_AT] = ACTIONS(3050), [sym_bool] = ACTIONS(3048), [sym_byte] = ACTIONS(3048), [sym_ubyte] = ACTIONS(3048), [sym_char] = ACTIONS(3048), [sym_short] = ACTIONS(3048), [sym_ushort] = ACTIONS(3048), [sym_int] = ACTIONS(3048), [sym_uint] = ACTIONS(3048), [sym_long] = ACTIONS(3048), [sym_ulong] = ACTIONS(3048), [sym_cent] = ACTIONS(3048), [sym_ucent] = ACTIONS(3048), [sym_wchar] = ACTIONS(3048), [sym_dchar] = ACTIONS(3048), [sym_float] = ACTIONS(3048), [sym_double] = ACTIONS(3048), [sym_real] = ACTIONS(3048), [sym_ifloat] = ACTIONS(3048), [sym_idouble] = ACTIONS(3048), [sym_ireal] = ACTIONS(3048), [sym_cfloat] = ACTIONS(3048), [sym_cdouble] = ACTIONS(3048), [sym_creal] = ACTIONS(3048), [sym_size_t] = ACTIONS(3048), [sym_ptrdiff_t] = ACTIONS(3048), [sym_string] = ACTIONS(3048), [sym_cstring] = ACTIONS(3048), [sym_dstring] = ACTIONS(3048), [sym_wstring] = ACTIONS(3048), [sym_noreturn] = ACTIONS(3048), [sym_this] = ACTIONS(3048), [sym_abstract] = ACTIONS(3048), [sym_alias] = ACTIONS(3048), [sym_align] = ACTIONS(3048), [sym_auto] = ACTIONS(3048), [sym_class] = ACTIONS(3048), [sym_const] = ACTIONS(3048), [sym_debug] = ACTIONS(3048), [sym_delegate] = ACTIONS(3048), [sym_deprecated] = ACTIONS(3048), [sym_enum] = ACTIONS(3048), [sym_export] = ACTIONS(3048), [sym_extern] = ACTIONS(3048), [sym_final] = ACTIONS(3048), [sym_function] = ACTIONS(3048), [sym_immutable] = ACTIONS(3048), [sym_import] = ACTIONS(3048), [sym_inout] = ACTIONS(3048), [sym_interface] = ACTIONS(3048), [sym_invariant] = ACTIONS(3048), [sym_mixin] = ACTIONS(3048), [sym_module] = ACTIONS(3048), [sym_nothrow] = ACTIONS(3048), [sym_override] = ACTIONS(3048), [sym_package] = ACTIONS(3048), [sym_pragma] = ACTIONS(3048), [sym_private] = ACTIONS(3048), [sym_protected] = ACTIONS(3048), [sym_public] = ACTIONS(3048), [sym_pure] = ACTIONS(3048), [sym_ref] = ACTIONS(3048), [sym_return] = ACTIONS(3048), [sym_scope] = ACTIONS(3048), [sym_shared] = ACTIONS(3048), [sym_static] = ACTIONS(3048), [sym_struct] = ACTIONS(3048), [sym_synchronized] = ACTIONS(3048), [sym_template] = ACTIONS(3048), [sym_typeof] = ACTIONS(3048), [sym_union] = ACTIONS(3048), [sym_unittest] = ACTIONS(3048), [sym_version] = ACTIONS(3048), [sym_gshared] = ACTIONS(3048), [sym_traits] = ACTIONS(3048), [sym_vector] = ACTIONS(3048), [sym_void] = ACTIONS(3048), [sym_directive] = ACTIONS(3), }, [2402] = { [sym_identifier] = ACTIONS(3016), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3018), [anon_sym_DOT] = ACTIONS(3018), [anon_sym_BANG] = ACTIONS(3018), [anon_sym_LPAREN] = ACTIONS(3018), [anon_sym_RPAREN] = ACTIONS(3018), [anon_sym_LBRACK] = ACTIONS(3018), [anon_sym_RBRACK] = ACTIONS(3018), [anon_sym_COMMA] = ACTIONS(3018), [anon_sym_SEMI] = ACTIONS(3018), [anon_sym_COLON] = ACTIONS(3018), [anon_sym_EQ_EQ] = ACTIONS(3018), [anon_sym_STAR] = ACTIONS(3018), [anon_sym_TILDE] = ACTIONS(3018), [anon_sym_AT] = ACTIONS(3018), [sym_bool] = ACTIONS(3016), [sym_byte] = ACTIONS(3016), [sym_ubyte] = ACTIONS(3016), [sym_char] = ACTIONS(3016), [sym_short] = ACTIONS(3016), [sym_ushort] = ACTIONS(3016), [sym_int] = ACTIONS(3016), [sym_uint] = ACTIONS(3016), [sym_long] = ACTIONS(3016), [sym_ulong] = ACTIONS(3016), [sym_cent] = ACTIONS(3016), [sym_ucent] = ACTIONS(3016), [sym_wchar] = ACTIONS(3016), [sym_dchar] = ACTIONS(3016), [sym_float] = ACTIONS(3016), [sym_double] = ACTIONS(3016), [sym_real] = ACTIONS(3016), [sym_ifloat] = ACTIONS(3016), [sym_idouble] = ACTIONS(3016), [sym_ireal] = ACTIONS(3016), [sym_cfloat] = ACTIONS(3016), [sym_cdouble] = ACTIONS(3016), [sym_creal] = ACTIONS(3016), [sym_size_t] = ACTIONS(3016), [sym_ptrdiff_t] = ACTIONS(3016), [sym_string] = ACTIONS(3016), [sym_cstring] = ACTIONS(3016), [sym_dstring] = ACTIONS(3016), [sym_wstring] = ACTIONS(3016), [sym_noreturn] = ACTIONS(3016), [sym_this] = ACTIONS(3016), [sym_abstract] = ACTIONS(3016), [sym_alias] = ACTIONS(3016), [sym_align] = ACTIONS(3016), [sym_auto] = ACTIONS(3016), [sym_class] = ACTIONS(3016), [sym_const] = ACTIONS(3016), [sym_debug] = ACTIONS(3016), [sym_delegate] = ACTIONS(3016), [sym_deprecated] = ACTIONS(3016), [sym_enum] = ACTIONS(3016), [sym_export] = ACTIONS(3016), [sym_extern] = ACTIONS(3016), [sym_final] = ACTIONS(3016), [sym_function] = ACTIONS(3016), [sym_immutable] = ACTIONS(3016), [sym_import] = ACTIONS(3016), [sym_inout] = ACTIONS(3016), [sym_interface] = ACTIONS(3016), [sym_invariant] = ACTIONS(3016), [sym_mixin] = ACTIONS(3016), [sym_module] = ACTIONS(3016), [sym_nothrow] = ACTIONS(3016), [sym_override] = ACTIONS(3016), [sym_package] = ACTIONS(3016), [sym_pragma] = ACTIONS(3016), [sym_private] = ACTIONS(3016), [sym_protected] = ACTIONS(3016), [sym_public] = ACTIONS(3016), [sym_pure] = ACTIONS(3016), [sym_ref] = ACTIONS(3016), [sym_return] = ACTIONS(3016), [sym_scope] = ACTIONS(3016), [sym_shared] = ACTIONS(3016), [sym_static] = ACTIONS(3016), [sym_struct] = ACTIONS(3016), [sym_synchronized] = ACTIONS(3016), [sym_template] = ACTIONS(3016), [sym_typeof] = ACTIONS(3016), [sym_union] = ACTIONS(3016), [sym_unittest] = ACTIONS(3016), [sym_version] = ACTIONS(3016), [sym_gshared] = ACTIONS(3016), [sym_traits] = ACTIONS(3016), [sym_vector] = ACTIONS(3016), [sym_void] = ACTIONS(3016), [sym_directive] = ACTIONS(3), }, [2403] = { [sym_identifier] = ACTIONS(2984), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(2986), [anon_sym_DOT] = ACTIONS(2986), [anon_sym_BANG] = ACTIONS(2986), [anon_sym_LPAREN] = ACTIONS(2986), [anon_sym_RPAREN] = ACTIONS(2986), [anon_sym_LBRACK] = ACTIONS(2986), [anon_sym_RBRACK] = ACTIONS(2986), [anon_sym_COMMA] = ACTIONS(2986), [anon_sym_SEMI] = ACTIONS(2986), [anon_sym_COLON] = ACTIONS(2986), [anon_sym_EQ_EQ] = ACTIONS(2986), [anon_sym_STAR] = ACTIONS(2986), [anon_sym_TILDE] = ACTIONS(2986), [anon_sym_AT] = ACTIONS(2986), [sym_bool] = ACTIONS(2984), [sym_byte] = ACTIONS(2984), [sym_ubyte] = ACTIONS(2984), [sym_char] = ACTIONS(2984), [sym_short] = ACTIONS(2984), [sym_ushort] = ACTIONS(2984), [sym_int] = ACTIONS(2984), [sym_uint] = ACTIONS(2984), [sym_long] = ACTIONS(2984), [sym_ulong] = ACTIONS(2984), [sym_cent] = ACTIONS(2984), [sym_ucent] = ACTIONS(2984), [sym_wchar] = ACTIONS(2984), [sym_dchar] = ACTIONS(2984), [sym_float] = ACTIONS(2984), [sym_double] = ACTIONS(2984), [sym_real] = ACTIONS(2984), [sym_ifloat] = ACTIONS(2984), [sym_idouble] = ACTIONS(2984), [sym_ireal] = ACTIONS(2984), [sym_cfloat] = ACTIONS(2984), [sym_cdouble] = ACTIONS(2984), [sym_creal] = ACTIONS(2984), [sym_size_t] = ACTIONS(2984), [sym_ptrdiff_t] = ACTIONS(2984), [sym_string] = ACTIONS(2984), [sym_cstring] = ACTIONS(2984), [sym_dstring] = ACTIONS(2984), [sym_wstring] = ACTIONS(2984), [sym_noreturn] = ACTIONS(2984), [sym_this] = ACTIONS(2984), [sym_abstract] = ACTIONS(2984), [sym_alias] = ACTIONS(2984), [sym_align] = ACTIONS(2984), [sym_auto] = ACTIONS(2984), [sym_class] = ACTIONS(2984), [sym_const] = ACTIONS(2984), [sym_debug] = ACTIONS(2984), [sym_delegate] = ACTIONS(2984), [sym_deprecated] = ACTIONS(2984), [sym_enum] = ACTIONS(2984), [sym_export] = ACTIONS(2984), [sym_extern] = ACTIONS(2984), [sym_final] = ACTIONS(2984), [sym_function] = ACTIONS(2984), [sym_immutable] = ACTIONS(2984), [sym_import] = ACTIONS(2984), [sym_inout] = ACTIONS(2984), [sym_interface] = ACTIONS(2984), [sym_invariant] = ACTIONS(2984), [sym_mixin] = ACTIONS(2984), [sym_module] = ACTIONS(2984), [sym_nothrow] = ACTIONS(2984), [sym_override] = ACTIONS(2984), [sym_package] = ACTIONS(2984), [sym_pragma] = ACTIONS(2984), [sym_private] = ACTIONS(2984), [sym_protected] = ACTIONS(2984), [sym_public] = ACTIONS(2984), [sym_pure] = ACTIONS(2984), [sym_ref] = ACTIONS(2984), [sym_return] = ACTIONS(2984), [sym_scope] = ACTIONS(2984), [sym_shared] = ACTIONS(2984), [sym_static] = ACTIONS(2984), [sym_struct] = ACTIONS(2984), [sym_synchronized] = ACTIONS(2984), [sym_template] = ACTIONS(2984), [sym_typeof] = ACTIONS(2984), [sym_union] = ACTIONS(2984), [sym_unittest] = ACTIONS(2984), [sym_version] = ACTIONS(2984), [sym_gshared] = ACTIONS(2984), [sym_traits] = ACTIONS(2984), [sym_vector] = ACTIONS(2984), [sym_void] = ACTIONS(2984), [sym_directive] = ACTIONS(3), }, [2404] = { [sym_identifier] = ACTIONS(3024), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3026), [anon_sym_DOT] = ACTIONS(3026), [anon_sym_BANG] = ACTIONS(3026), [anon_sym_LPAREN] = ACTIONS(3026), [anon_sym_RPAREN] = ACTIONS(3026), [anon_sym_LBRACK] = ACTIONS(3026), [anon_sym_RBRACK] = ACTIONS(3026), [anon_sym_COMMA] = ACTIONS(3026), [anon_sym_SEMI] = ACTIONS(3026), [anon_sym_COLON] = ACTIONS(3026), [anon_sym_EQ_EQ] = ACTIONS(3026), [anon_sym_STAR] = ACTIONS(3026), [anon_sym_TILDE] = ACTIONS(3026), [anon_sym_AT] = ACTIONS(3026), [sym_bool] = ACTIONS(3024), [sym_byte] = ACTIONS(3024), [sym_ubyte] = ACTIONS(3024), [sym_char] = ACTIONS(3024), [sym_short] = ACTIONS(3024), [sym_ushort] = ACTIONS(3024), [sym_int] = ACTIONS(3024), [sym_uint] = ACTIONS(3024), [sym_long] = ACTIONS(3024), [sym_ulong] = ACTIONS(3024), [sym_cent] = ACTIONS(3024), [sym_ucent] = ACTIONS(3024), [sym_wchar] = ACTIONS(3024), [sym_dchar] = ACTIONS(3024), [sym_float] = ACTIONS(3024), [sym_double] = ACTIONS(3024), [sym_real] = ACTIONS(3024), [sym_ifloat] = ACTIONS(3024), [sym_idouble] = ACTIONS(3024), [sym_ireal] = ACTIONS(3024), [sym_cfloat] = ACTIONS(3024), [sym_cdouble] = ACTIONS(3024), [sym_creal] = ACTIONS(3024), [sym_size_t] = ACTIONS(3024), [sym_ptrdiff_t] = ACTIONS(3024), [sym_string] = ACTIONS(3024), [sym_cstring] = ACTIONS(3024), [sym_dstring] = ACTIONS(3024), [sym_wstring] = ACTIONS(3024), [sym_noreturn] = ACTIONS(3024), [sym_this] = ACTIONS(3024), [sym_abstract] = ACTIONS(3024), [sym_alias] = ACTIONS(3024), [sym_align] = ACTIONS(3024), [sym_auto] = ACTIONS(3024), [sym_class] = ACTIONS(3024), [sym_const] = ACTIONS(3024), [sym_debug] = ACTIONS(3024), [sym_delegate] = ACTIONS(3024), [sym_deprecated] = ACTIONS(3024), [sym_enum] = ACTIONS(3024), [sym_export] = ACTIONS(3024), [sym_extern] = ACTIONS(3024), [sym_final] = ACTIONS(3024), [sym_function] = ACTIONS(3024), [sym_immutable] = ACTIONS(3024), [sym_import] = ACTIONS(3024), [sym_inout] = ACTIONS(3024), [sym_interface] = ACTIONS(3024), [sym_invariant] = ACTIONS(3024), [sym_mixin] = ACTIONS(3024), [sym_module] = ACTIONS(3024), [sym_nothrow] = ACTIONS(3024), [sym_override] = ACTIONS(3024), [sym_package] = ACTIONS(3024), [sym_pragma] = ACTIONS(3024), [sym_private] = ACTIONS(3024), [sym_protected] = ACTIONS(3024), [sym_public] = ACTIONS(3024), [sym_pure] = ACTIONS(3024), [sym_ref] = ACTIONS(3024), [sym_return] = ACTIONS(3024), [sym_scope] = ACTIONS(3024), [sym_shared] = ACTIONS(3024), [sym_static] = ACTIONS(3024), [sym_struct] = ACTIONS(3024), [sym_synchronized] = ACTIONS(3024), [sym_template] = ACTIONS(3024), [sym_typeof] = ACTIONS(3024), [sym_union] = ACTIONS(3024), [sym_unittest] = ACTIONS(3024), [sym_version] = ACTIONS(3024), [sym_gshared] = ACTIONS(3024), [sym_traits] = ACTIONS(3024), [sym_vector] = ACTIONS(3024), [sym_void] = ACTIONS(3024), [sym_directive] = ACTIONS(3), }, [2405] = { [sym_identifier] = ACTIONS(6643), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6645), [anon_sym_DOT] = ACTIONS(6645), [anon_sym_BANG] = ACTIONS(6645), [anon_sym_LPAREN] = ACTIONS(6645), [anon_sym_RPAREN] = ACTIONS(6645), [anon_sym_LBRACK] = ACTIONS(6645), [anon_sym_RBRACK] = ACTIONS(6645), [anon_sym_COMMA] = ACTIONS(6645), [anon_sym_SEMI] = ACTIONS(6645), [anon_sym_COLON] = ACTIONS(6645), [anon_sym_EQ_EQ] = ACTIONS(6645), [anon_sym_STAR] = ACTIONS(6645), [anon_sym_TILDE] = ACTIONS(6645), [anon_sym_AT] = ACTIONS(6645), [sym_bool] = ACTIONS(6643), [sym_byte] = ACTIONS(6643), [sym_ubyte] = ACTIONS(6643), [sym_char] = ACTIONS(6643), [sym_short] = ACTIONS(6643), [sym_ushort] = ACTIONS(6643), [sym_int] = ACTIONS(6643), [sym_uint] = ACTIONS(6643), [sym_long] = ACTIONS(6643), [sym_ulong] = ACTIONS(6643), [sym_cent] = ACTIONS(6643), [sym_ucent] = ACTIONS(6643), [sym_wchar] = ACTIONS(6643), [sym_dchar] = ACTIONS(6643), [sym_float] = ACTIONS(6643), [sym_double] = ACTIONS(6643), [sym_real] = ACTIONS(6643), [sym_ifloat] = ACTIONS(6643), [sym_idouble] = ACTIONS(6643), [sym_ireal] = ACTIONS(6643), [sym_cfloat] = ACTIONS(6643), [sym_cdouble] = ACTIONS(6643), [sym_creal] = ACTIONS(6643), [sym_size_t] = ACTIONS(6643), [sym_ptrdiff_t] = ACTIONS(6643), [sym_string] = ACTIONS(6643), [sym_cstring] = ACTIONS(6643), [sym_dstring] = ACTIONS(6643), [sym_wstring] = ACTIONS(6643), [sym_noreturn] = ACTIONS(6643), [sym_this] = ACTIONS(6643), [sym_abstract] = ACTIONS(6643), [sym_alias] = ACTIONS(6643), [sym_align] = ACTIONS(6643), [sym_auto] = ACTIONS(6643), [sym_class] = ACTIONS(6643), [sym_const] = ACTIONS(6643), [sym_debug] = ACTIONS(6643), [sym_delegate] = ACTIONS(6643), [sym_deprecated] = ACTIONS(6643), [sym_enum] = ACTIONS(6643), [sym_export] = ACTIONS(6643), [sym_extern] = ACTIONS(6643), [sym_final] = ACTIONS(6643), [sym_function] = ACTIONS(6643), [sym_immutable] = ACTIONS(6643), [sym_import] = ACTIONS(6643), [sym_inout] = ACTIONS(6643), [sym_interface] = ACTIONS(6643), [sym_invariant] = ACTIONS(6643), [sym_mixin] = ACTIONS(6643), [sym_module] = ACTIONS(6643), [sym_nothrow] = ACTIONS(6643), [sym_override] = ACTIONS(6643), [sym_package] = ACTIONS(6643), [sym_pragma] = ACTIONS(6643), [sym_private] = ACTIONS(6643), [sym_protected] = ACTIONS(6643), [sym_public] = ACTIONS(6643), [sym_pure] = ACTIONS(6643), [sym_ref] = ACTIONS(6643), [sym_return] = ACTIONS(6643), [sym_scope] = ACTIONS(6643), [sym_shared] = ACTIONS(6643), [sym_static] = ACTIONS(6643), [sym_struct] = ACTIONS(6643), [sym_synchronized] = ACTIONS(6643), [sym_template] = ACTIONS(6643), [sym_typeof] = ACTIONS(6643), [sym_union] = ACTIONS(6643), [sym_unittest] = ACTIONS(6643), [sym_version] = ACTIONS(6643), [sym_gshared] = ACTIONS(6643), [sym_traits] = ACTIONS(6643), [sym_vector] = ACTIONS(6643), [sym_void] = ACTIONS(6643), [sym_directive] = ACTIONS(3), }, [2406] = { [sym_arguments] = STATE(2420), [sym_identifier] = ACTIONS(6647), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6649), [anon_sym_LPAREN] = ACTIONS(6651), [anon_sym_RPAREN] = ACTIONS(6649), [anon_sym_LBRACK] = ACTIONS(6649), [anon_sym_RBRACK] = ACTIONS(6649), [anon_sym_COMMA] = ACTIONS(6649), [anon_sym_SEMI] = ACTIONS(6649), [anon_sym_COLON] = ACTIONS(6649), [anon_sym_EQ_EQ] = ACTIONS(6649), [anon_sym_STAR] = ACTIONS(6649), [anon_sym_TILDE] = ACTIONS(6649), [anon_sym_AT] = ACTIONS(6649), [sym_bool] = ACTIONS(6647), [sym_byte] = ACTIONS(6647), [sym_ubyte] = ACTIONS(6647), [sym_char] = ACTIONS(6647), [sym_short] = ACTIONS(6647), [sym_ushort] = ACTIONS(6647), [sym_int] = ACTIONS(6647), [sym_uint] = ACTIONS(6647), [sym_long] = ACTIONS(6647), [sym_ulong] = ACTIONS(6647), [sym_cent] = ACTIONS(6647), [sym_ucent] = ACTIONS(6647), [sym_wchar] = ACTIONS(6647), [sym_dchar] = ACTIONS(6647), [sym_float] = ACTIONS(6647), [sym_double] = ACTIONS(6647), [sym_real] = ACTIONS(6647), [sym_ifloat] = ACTIONS(6647), [sym_idouble] = ACTIONS(6647), [sym_ireal] = ACTIONS(6647), [sym_cfloat] = ACTIONS(6647), [sym_cdouble] = ACTIONS(6647), [sym_creal] = ACTIONS(6647), [sym_size_t] = ACTIONS(6647), [sym_ptrdiff_t] = ACTIONS(6647), [sym_string] = ACTIONS(6647), [sym_cstring] = ACTIONS(6647), [sym_dstring] = ACTIONS(6647), [sym_wstring] = ACTIONS(6647), [sym_noreturn] = ACTIONS(6647), [sym_this] = ACTIONS(6647), [sym_abstract] = ACTIONS(6647), [sym_alias] = ACTIONS(6647), [sym_align] = ACTIONS(6647), [sym_auto] = ACTIONS(6647), [sym_class] = ACTIONS(6647), [sym_const] = ACTIONS(6647), [sym_debug] = ACTIONS(6647), [sym_delegate] = ACTIONS(6647), [sym_deprecated] = ACTIONS(6647), [sym_enum] = ACTIONS(6647), [sym_export] = ACTIONS(6647), [sym_extern] = ACTIONS(6647), [sym_final] = ACTIONS(6647), [sym_function] = ACTIONS(6647), [sym_immutable] = ACTIONS(6647), [sym_import] = ACTIONS(6647), [sym_inout] = ACTIONS(6647), [sym_interface] = ACTIONS(6647), [sym_invariant] = ACTIONS(6647), [sym_mixin] = ACTIONS(6647), [sym_module] = ACTIONS(6647), [sym_nothrow] = ACTIONS(6647), [sym_override] = ACTIONS(6647), [sym_package] = ACTIONS(6647), [sym_pragma] = ACTIONS(6647), [sym_private] = ACTIONS(6647), [sym_protected] = ACTIONS(6647), [sym_public] = ACTIONS(6647), [sym_pure] = ACTIONS(6647), [sym_ref] = ACTIONS(6647), [sym_return] = ACTIONS(6647), [sym_scope] = ACTIONS(6647), [sym_shared] = ACTIONS(6647), [sym_static] = ACTIONS(6647), [sym_struct] = ACTIONS(6647), [sym_synchronized] = ACTIONS(6647), [sym_template] = ACTIONS(6647), [sym_typeof] = ACTIONS(6647), [sym_union] = ACTIONS(6647), [sym_unittest] = ACTIONS(6647), [sym_version] = ACTIONS(6647), [sym_gshared] = ACTIONS(6647), [sym_traits] = ACTIONS(6647), [sym_vector] = ACTIONS(6647), [sym_void] = ACTIONS(6647), [sym_directive] = ACTIONS(3), }, [2407] = { [sym_identifier] = ACTIONS(3004), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3006), [anon_sym_DOT] = ACTIONS(3006), [anon_sym_BANG] = ACTIONS(3006), [anon_sym_LPAREN] = ACTIONS(3006), [anon_sym_RPAREN] = ACTIONS(3006), [anon_sym_LBRACK] = ACTIONS(3006), [anon_sym_RBRACK] = ACTIONS(3006), [anon_sym_COMMA] = ACTIONS(3006), [anon_sym_SEMI] = ACTIONS(3006), [anon_sym_COLON] = ACTIONS(3006), [anon_sym_EQ_EQ] = ACTIONS(3006), [anon_sym_STAR] = ACTIONS(3006), [anon_sym_TILDE] = ACTIONS(3006), [anon_sym_AT] = ACTIONS(3006), [sym_bool] = ACTIONS(3004), [sym_byte] = ACTIONS(3004), [sym_ubyte] = ACTIONS(3004), [sym_char] = ACTIONS(3004), [sym_short] = ACTIONS(3004), [sym_ushort] = ACTIONS(3004), [sym_int] = ACTIONS(3004), [sym_uint] = ACTIONS(3004), [sym_long] = ACTIONS(3004), [sym_ulong] = ACTIONS(3004), [sym_cent] = ACTIONS(3004), [sym_ucent] = ACTIONS(3004), [sym_wchar] = ACTIONS(3004), [sym_dchar] = ACTIONS(3004), [sym_float] = ACTIONS(3004), [sym_double] = ACTIONS(3004), [sym_real] = ACTIONS(3004), [sym_ifloat] = ACTIONS(3004), [sym_idouble] = ACTIONS(3004), [sym_ireal] = ACTIONS(3004), [sym_cfloat] = ACTIONS(3004), [sym_cdouble] = ACTIONS(3004), [sym_creal] = ACTIONS(3004), [sym_size_t] = ACTIONS(3004), [sym_ptrdiff_t] = ACTIONS(3004), [sym_string] = ACTIONS(3004), [sym_cstring] = ACTIONS(3004), [sym_dstring] = ACTIONS(3004), [sym_wstring] = ACTIONS(3004), [sym_noreturn] = ACTIONS(3004), [sym_this] = ACTIONS(3004), [sym_abstract] = ACTIONS(3004), [sym_alias] = ACTIONS(3004), [sym_align] = ACTIONS(3004), [sym_auto] = ACTIONS(3004), [sym_class] = ACTIONS(3004), [sym_const] = ACTIONS(3004), [sym_debug] = ACTIONS(3004), [sym_delegate] = ACTIONS(3004), [sym_deprecated] = ACTIONS(3004), [sym_enum] = ACTIONS(3004), [sym_export] = ACTIONS(3004), [sym_extern] = ACTIONS(3004), [sym_final] = ACTIONS(3004), [sym_function] = ACTIONS(3004), [sym_immutable] = ACTIONS(3004), [sym_import] = ACTIONS(3004), [sym_inout] = ACTIONS(3004), [sym_interface] = ACTIONS(3004), [sym_invariant] = ACTIONS(3004), [sym_mixin] = ACTIONS(3004), [sym_module] = ACTIONS(3004), [sym_nothrow] = ACTIONS(3004), [sym_override] = ACTIONS(3004), [sym_package] = ACTIONS(3004), [sym_pragma] = ACTIONS(3004), [sym_private] = ACTIONS(3004), [sym_protected] = ACTIONS(3004), [sym_public] = ACTIONS(3004), [sym_pure] = ACTIONS(3004), [sym_ref] = ACTIONS(3004), [sym_return] = ACTIONS(3004), [sym_scope] = ACTIONS(3004), [sym_shared] = ACTIONS(3004), [sym_static] = ACTIONS(3004), [sym_struct] = ACTIONS(3004), [sym_synchronized] = ACTIONS(3004), [sym_template] = ACTIONS(3004), [sym_typeof] = ACTIONS(3004), [sym_union] = ACTIONS(3004), [sym_unittest] = ACTIONS(3004), [sym_version] = ACTIONS(3004), [sym_gshared] = ACTIONS(3004), [sym_traits] = ACTIONS(3004), [sym_vector] = ACTIONS(3004), [sym_void] = ACTIONS(3004), [sym_directive] = ACTIONS(3), }, [2408] = { [sym_identifier] = ACTIONS(3012), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3014), [anon_sym_DOT] = ACTIONS(3014), [anon_sym_BANG] = ACTIONS(3014), [anon_sym_LPAREN] = ACTIONS(3014), [anon_sym_RPAREN] = ACTIONS(3014), [anon_sym_LBRACK] = ACTIONS(3014), [anon_sym_RBRACK] = ACTIONS(3014), [anon_sym_COMMA] = ACTIONS(3014), [anon_sym_SEMI] = ACTIONS(3014), [anon_sym_COLON] = ACTIONS(3014), [anon_sym_EQ_EQ] = ACTIONS(3014), [anon_sym_STAR] = ACTIONS(3014), [anon_sym_TILDE] = ACTIONS(3014), [anon_sym_AT] = ACTIONS(3014), [sym_bool] = ACTIONS(3012), [sym_byte] = ACTIONS(3012), [sym_ubyte] = ACTIONS(3012), [sym_char] = ACTIONS(3012), [sym_short] = ACTIONS(3012), [sym_ushort] = ACTIONS(3012), [sym_int] = ACTIONS(3012), [sym_uint] = ACTIONS(3012), [sym_long] = ACTIONS(3012), [sym_ulong] = ACTIONS(3012), [sym_cent] = ACTIONS(3012), [sym_ucent] = ACTIONS(3012), [sym_wchar] = ACTIONS(3012), [sym_dchar] = ACTIONS(3012), [sym_float] = ACTIONS(3012), [sym_double] = ACTIONS(3012), [sym_real] = ACTIONS(3012), [sym_ifloat] = ACTIONS(3012), [sym_idouble] = ACTIONS(3012), [sym_ireal] = ACTIONS(3012), [sym_cfloat] = ACTIONS(3012), [sym_cdouble] = ACTIONS(3012), [sym_creal] = ACTIONS(3012), [sym_size_t] = ACTIONS(3012), [sym_ptrdiff_t] = ACTIONS(3012), [sym_string] = ACTIONS(3012), [sym_cstring] = ACTIONS(3012), [sym_dstring] = ACTIONS(3012), [sym_wstring] = ACTIONS(3012), [sym_noreturn] = ACTIONS(3012), [sym_this] = ACTIONS(3012), [sym_abstract] = ACTIONS(3012), [sym_alias] = ACTIONS(3012), [sym_align] = ACTIONS(3012), [sym_auto] = ACTIONS(3012), [sym_class] = ACTIONS(3012), [sym_const] = ACTIONS(3012), [sym_debug] = ACTIONS(3012), [sym_delegate] = ACTIONS(3012), [sym_deprecated] = ACTIONS(3012), [sym_enum] = ACTIONS(3012), [sym_export] = ACTIONS(3012), [sym_extern] = ACTIONS(3012), [sym_final] = ACTIONS(3012), [sym_function] = ACTIONS(3012), [sym_immutable] = ACTIONS(3012), [sym_import] = ACTIONS(3012), [sym_inout] = ACTIONS(3012), [sym_interface] = ACTIONS(3012), [sym_invariant] = ACTIONS(3012), [sym_mixin] = ACTIONS(3012), [sym_module] = ACTIONS(3012), [sym_nothrow] = ACTIONS(3012), [sym_override] = ACTIONS(3012), [sym_package] = ACTIONS(3012), [sym_pragma] = ACTIONS(3012), [sym_private] = ACTIONS(3012), [sym_protected] = ACTIONS(3012), [sym_public] = ACTIONS(3012), [sym_pure] = ACTIONS(3012), [sym_ref] = ACTIONS(3012), [sym_return] = ACTIONS(3012), [sym_scope] = ACTIONS(3012), [sym_shared] = ACTIONS(3012), [sym_static] = ACTIONS(3012), [sym_struct] = ACTIONS(3012), [sym_synchronized] = ACTIONS(3012), [sym_template] = ACTIONS(3012), [sym_typeof] = ACTIONS(3012), [sym_union] = ACTIONS(3012), [sym_unittest] = ACTIONS(3012), [sym_version] = ACTIONS(3012), [sym_gshared] = ACTIONS(3012), [sym_traits] = ACTIONS(3012), [sym_vector] = ACTIONS(3012), [sym_void] = ACTIONS(3012), [sym_directive] = ACTIONS(3), }, [2409] = { [sym_identifier] = ACTIONS(3028), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3030), [anon_sym_DOT] = ACTIONS(3030), [anon_sym_BANG] = ACTIONS(3030), [anon_sym_LPAREN] = ACTIONS(3030), [anon_sym_RPAREN] = ACTIONS(3030), [anon_sym_LBRACK] = ACTIONS(3030), [anon_sym_RBRACK] = ACTIONS(3030), [anon_sym_COMMA] = ACTIONS(3030), [anon_sym_SEMI] = ACTIONS(3030), [anon_sym_COLON] = ACTIONS(3030), [anon_sym_EQ_EQ] = ACTIONS(3030), [anon_sym_STAR] = ACTIONS(3030), [anon_sym_TILDE] = ACTIONS(3030), [anon_sym_AT] = ACTIONS(3030), [sym_bool] = ACTIONS(3028), [sym_byte] = ACTIONS(3028), [sym_ubyte] = ACTIONS(3028), [sym_char] = ACTIONS(3028), [sym_short] = ACTIONS(3028), [sym_ushort] = ACTIONS(3028), [sym_int] = ACTIONS(3028), [sym_uint] = ACTIONS(3028), [sym_long] = ACTIONS(3028), [sym_ulong] = ACTIONS(3028), [sym_cent] = ACTIONS(3028), [sym_ucent] = ACTIONS(3028), [sym_wchar] = ACTIONS(3028), [sym_dchar] = ACTIONS(3028), [sym_float] = ACTIONS(3028), [sym_double] = ACTIONS(3028), [sym_real] = ACTIONS(3028), [sym_ifloat] = ACTIONS(3028), [sym_idouble] = ACTIONS(3028), [sym_ireal] = ACTIONS(3028), [sym_cfloat] = ACTIONS(3028), [sym_cdouble] = ACTIONS(3028), [sym_creal] = ACTIONS(3028), [sym_size_t] = ACTIONS(3028), [sym_ptrdiff_t] = ACTIONS(3028), [sym_string] = ACTIONS(3028), [sym_cstring] = ACTIONS(3028), [sym_dstring] = ACTIONS(3028), [sym_wstring] = ACTIONS(3028), [sym_noreturn] = ACTIONS(3028), [sym_this] = ACTIONS(3028), [sym_abstract] = ACTIONS(3028), [sym_alias] = ACTIONS(3028), [sym_align] = ACTIONS(3028), [sym_auto] = ACTIONS(3028), [sym_class] = ACTIONS(3028), [sym_const] = ACTIONS(3028), [sym_debug] = ACTIONS(3028), [sym_delegate] = ACTIONS(3028), [sym_deprecated] = ACTIONS(3028), [sym_enum] = ACTIONS(3028), [sym_export] = ACTIONS(3028), [sym_extern] = ACTIONS(3028), [sym_final] = ACTIONS(3028), [sym_function] = ACTIONS(3028), [sym_immutable] = ACTIONS(3028), [sym_import] = ACTIONS(3028), [sym_inout] = ACTIONS(3028), [sym_interface] = ACTIONS(3028), [sym_invariant] = ACTIONS(3028), [sym_mixin] = ACTIONS(3028), [sym_module] = ACTIONS(3028), [sym_nothrow] = ACTIONS(3028), [sym_override] = ACTIONS(3028), [sym_package] = ACTIONS(3028), [sym_pragma] = ACTIONS(3028), [sym_private] = ACTIONS(3028), [sym_protected] = ACTIONS(3028), [sym_public] = ACTIONS(3028), [sym_pure] = ACTIONS(3028), [sym_ref] = ACTIONS(3028), [sym_return] = ACTIONS(3028), [sym_scope] = ACTIONS(3028), [sym_shared] = ACTIONS(3028), [sym_static] = ACTIONS(3028), [sym_struct] = ACTIONS(3028), [sym_synchronized] = ACTIONS(3028), [sym_template] = ACTIONS(3028), [sym_typeof] = ACTIONS(3028), [sym_union] = ACTIONS(3028), [sym_unittest] = ACTIONS(3028), [sym_version] = ACTIONS(3028), [sym_gshared] = ACTIONS(3028), [sym_traits] = ACTIONS(3028), [sym_vector] = ACTIONS(3028), [sym_void] = ACTIONS(3028), [sym_directive] = ACTIONS(3), }, [2410] = { [sym_identifier] = ACTIONS(2992), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(2994), [anon_sym_DOT] = ACTIONS(2994), [anon_sym_BANG] = ACTIONS(2994), [anon_sym_LPAREN] = ACTIONS(2994), [anon_sym_RPAREN] = ACTIONS(2994), [anon_sym_LBRACK] = ACTIONS(2994), [anon_sym_RBRACK] = ACTIONS(2994), [anon_sym_COMMA] = ACTIONS(2994), [anon_sym_SEMI] = ACTIONS(2994), [anon_sym_COLON] = ACTIONS(2994), [anon_sym_EQ_EQ] = ACTIONS(2994), [anon_sym_STAR] = ACTIONS(2994), [anon_sym_TILDE] = ACTIONS(2994), [anon_sym_AT] = ACTIONS(2994), [sym_bool] = ACTIONS(2992), [sym_byte] = ACTIONS(2992), [sym_ubyte] = ACTIONS(2992), [sym_char] = ACTIONS(2992), [sym_short] = ACTIONS(2992), [sym_ushort] = ACTIONS(2992), [sym_int] = ACTIONS(2992), [sym_uint] = ACTIONS(2992), [sym_long] = ACTIONS(2992), [sym_ulong] = ACTIONS(2992), [sym_cent] = ACTIONS(2992), [sym_ucent] = ACTIONS(2992), [sym_wchar] = ACTIONS(2992), [sym_dchar] = ACTIONS(2992), [sym_float] = ACTIONS(2992), [sym_double] = ACTIONS(2992), [sym_real] = ACTIONS(2992), [sym_ifloat] = ACTIONS(2992), [sym_idouble] = ACTIONS(2992), [sym_ireal] = ACTIONS(2992), [sym_cfloat] = ACTIONS(2992), [sym_cdouble] = ACTIONS(2992), [sym_creal] = ACTIONS(2992), [sym_size_t] = ACTIONS(2992), [sym_ptrdiff_t] = ACTIONS(2992), [sym_string] = ACTIONS(2992), [sym_cstring] = ACTIONS(2992), [sym_dstring] = ACTIONS(2992), [sym_wstring] = ACTIONS(2992), [sym_noreturn] = ACTIONS(2992), [sym_this] = ACTIONS(2992), [sym_abstract] = ACTIONS(2992), [sym_alias] = ACTIONS(2992), [sym_align] = ACTIONS(2992), [sym_auto] = ACTIONS(2992), [sym_class] = ACTIONS(2992), [sym_const] = ACTIONS(2992), [sym_debug] = ACTIONS(2992), [sym_delegate] = ACTIONS(2992), [sym_deprecated] = ACTIONS(2992), [sym_enum] = ACTIONS(2992), [sym_export] = ACTIONS(2992), [sym_extern] = ACTIONS(2992), [sym_final] = ACTIONS(2992), [sym_function] = ACTIONS(2992), [sym_immutable] = ACTIONS(2992), [sym_import] = ACTIONS(2992), [sym_inout] = ACTIONS(2992), [sym_interface] = ACTIONS(2992), [sym_invariant] = ACTIONS(2992), [sym_mixin] = ACTIONS(2992), [sym_module] = ACTIONS(2992), [sym_nothrow] = ACTIONS(2992), [sym_override] = ACTIONS(2992), [sym_package] = ACTIONS(2992), [sym_pragma] = ACTIONS(2992), [sym_private] = ACTIONS(2992), [sym_protected] = ACTIONS(2992), [sym_public] = ACTIONS(2992), [sym_pure] = ACTIONS(2992), [sym_ref] = ACTIONS(2992), [sym_return] = ACTIONS(2992), [sym_scope] = ACTIONS(2992), [sym_shared] = ACTIONS(2992), [sym_static] = ACTIONS(2992), [sym_struct] = ACTIONS(2992), [sym_synchronized] = ACTIONS(2992), [sym_template] = ACTIONS(2992), [sym_typeof] = ACTIONS(2992), [sym_union] = ACTIONS(2992), [sym_unittest] = ACTIONS(2992), [sym_version] = ACTIONS(2992), [sym_gshared] = ACTIONS(2992), [sym_traits] = ACTIONS(2992), [sym_vector] = ACTIONS(2992), [sym_void] = ACTIONS(2992), [sym_directive] = ACTIONS(3), }, [2411] = { [sym_identifier] = ACTIONS(6653), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6655), [anon_sym_DOT] = ACTIONS(6655), [anon_sym_BANG] = ACTIONS(6655), [anon_sym_LPAREN] = ACTIONS(6655), [anon_sym_RPAREN] = ACTIONS(6655), [anon_sym_LBRACK] = ACTIONS(6655), [anon_sym_RBRACK] = ACTIONS(6655), [anon_sym_COMMA] = ACTIONS(6655), [anon_sym_SEMI] = ACTIONS(6655), [anon_sym_COLON] = ACTIONS(6655), [anon_sym_EQ_EQ] = ACTIONS(6655), [anon_sym_STAR] = ACTIONS(6655), [anon_sym_TILDE] = ACTIONS(6655), [anon_sym_AT] = ACTIONS(6655), [sym_bool] = ACTIONS(6653), [sym_byte] = ACTIONS(6653), [sym_ubyte] = ACTIONS(6653), [sym_char] = ACTIONS(6653), [sym_short] = ACTIONS(6653), [sym_ushort] = ACTIONS(6653), [sym_int] = ACTIONS(6653), [sym_uint] = ACTIONS(6653), [sym_long] = ACTIONS(6653), [sym_ulong] = ACTIONS(6653), [sym_cent] = ACTIONS(6653), [sym_ucent] = ACTIONS(6653), [sym_wchar] = ACTIONS(6653), [sym_dchar] = ACTIONS(6653), [sym_float] = ACTIONS(6653), [sym_double] = ACTIONS(6653), [sym_real] = ACTIONS(6653), [sym_ifloat] = ACTIONS(6653), [sym_idouble] = ACTIONS(6653), [sym_ireal] = ACTIONS(6653), [sym_cfloat] = ACTIONS(6653), [sym_cdouble] = ACTIONS(6653), [sym_creal] = ACTIONS(6653), [sym_size_t] = ACTIONS(6653), [sym_ptrdiff_t] = ACTIONS(6653), [sym_string] = ACTIONS(6653), [sym_cstring] = ACTIONS(6653), [sym_dstring] = ACTIONS(6653), [sym_wstring] = ACTIONS(6653), [sym_noreturn] = ACTIONS(6653), [sym_this] = ACTIONS(6653), [sym_abstract] = ACTIONS(6653), [sym_alias] = ACTIONS(6653), [sym_align] = ACTIONS(6653), [sym_auto] = ACTIONS(6653), [sym_class] = ACTIONS(6653), [sym_const] = ACTIONS(6653), [sym_debug] = ACTIONS(6653), [sym_delegate] = ACTIONS(6653), [sym_deprecated] = ACTIONS(6653), [sym_enum] = ACTIONS(6653), [sym_export] = ACTIONS(6653), [sym_extern] = ACTIONS(6653), [sym_final] = ACTIONS(6653), [sym_function] = ACTIONS(6653), [sym_immutable] = ACTIONS(6653), [sym_import] = ACTIONS(6653), [sym_inout] = ACTIONS(6653), [sym_interface] = ACTIONS(6653), [sym_invariant] = ACTIONS(6653), [sym_mixin] = ACTIONS(6653), [sym_module] = ACTIONS(6653), [sym_nothrow] = ACTIONS(6653), [sym_override] = ACTIONS(6653), [sym_package] = ACTIONS(6653), [sym_pragma] = ACTIONS(6653), [sym_private] = ACTIONS(6653), [sym_protected] = ACTIONS(6653), [sym_public] = ACTIONS(6653), [sym_pure] = ACTIONS(6653), [sym_ref] = ACTIONS(6653), [sym_return] = ACTIONS(6653), [sym_scope] = ACTIONS(6653), [sym_shared] = ACTIONS(6653), [sym_static] = ACTIONS(6653), [sym_struct] = ACTIONS(6653), [sym_synchronized] = ACTIONS(6653), [sym_template] = ACTIONS(6653), [sym_typeof] = ACTIONS(6653), [sym_union] = ACTIONS(6653), [sym_unittest] = ACTIONS(6653), [sym_version] = ACTIONS(6653), [sym_gshared] = ACTIONS(6653), [sym_traits] = ACTIONS(6653), [sym_vector] = ACTIONS(6653), [sym_void] = ACTIONS(6653), [sym_directive] = ACTIONS(3), }, [2412] = { [sym_identifier] = ACTIONS(3020), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3022), [anon_sym_DOT] = ACTIONS(3022), [anon_sym_BANG] = ACTIONS(3022), [anon_sym_LPAREN] = ACTIONS(3022), [anon_sym_RPAREN] = ACTIONS(3022), [anon_sym_LBRACK] = ACTIONS(3022), [anon_sym_RBRACK] = ACTIONS(3022), [anon_sym_COMMA] = ACTIONS(3022), [anon_sym_SEMI] = ACTIONS(3022), [anon_sym_COLON] = ACTIONS(3022), [anon_sym_EQ_EQ] = ACTIONS(3022), [anon_sym_STAR] = ACTIONS(3022), [anon_sym_TILDE] = ACTIONS(3022), [anon_sym_AT] = ACTIONS(3022), [sym_bool] = ACTIONS(3020), [sym_byte] = ACTIONS(3020), [sym_ubyte] = ACTIONS(3020), [sym_char] = ACTIONS(3020), [sym_short] = ACTIONS(3020), [sym_ushort] = ACTIONS(3020), [sym_int] = ACTIONS(3020), [sym_uint] = ACTIONS(3020), [sym_long] = ACTIONS(3020), [sym_ulong] = ACTIONS(3020), [sym_cent] = ACTIONS(3020), [sym_ucent] = ACTIONS(3020), [sym_wchar] = ACTIONS(3020), [sym_dchar] = ACTIONS(3020), [sym_float] = ACTIONS(3020), [sym_double] = ACTIONS(3020), [sym_real] = ACTIONS(3020), [sym_ifloat] = ACTIONS(3020), [sym_idouble] = ACTIONS(3020), [sym_ireal] = ACTIONS(3020), [sym_cfloat] = ACTIONS(3020), [sym_cdouble] = ACTIONS(3020), [sym_creal] = ACTIONS(3020), [sym_size_t] = ACTIONS(3020), [sym_ptrdiff_t] = ACTIONS(3020), [sym_string] = ACTIONS(3020), [sym_cstring] = ACTIONS(3020), [sym_dstring] = ACTIONS(3020), [sym_wstring] = ACTIONS(3020), [sym_noreturn] = ACTIONS(3020), [sym_this] = ACTIONS(3020), [sym_abstract] = ACTIONS(3020), [sym_alias] = ACTIONS(3020), [sym_align] = ACTIONS(3020), [sym_auto] = ACTIONS(3020), [sym_class] = ACTIONS(3020), [sym_const] = ACTIONS(3020), [sym_debug] = ACTIONS(3020), [sym_delegate] = ACTIONS(3020), [sym_deprecated] = ACTIONS(3020), [sym_enum] = ACTIONS(3020), [sym_export] = ACTIONS(3020), [sym_extern] = ACTIONS(3020), [sym_final] = ACTIONS(3020), [sym_function] = ACTIONS(3020), [sym_immutable] = ACTIONS(3020), [sym_import] = ACTIONS(3020), [sym_inout] = ACTIONS(3020), [sym_interface] = ACTIONS(3020), [sym_invariant] = ACTIONS(3020), [sym_mixin] = ACTIONS(3020), [sym_module] = ACTIONS(3020), [sym_nothrow] = ACTIONS(3020), [sym_override] = ACTIONS(3020), [sym_package] = ACTIONS(3020), [sym_pragma] = ACTIONS(3020), [sym_private] = ACTIONS(3020), [sym_protected] = ACTIONS(3020), [sym_public] = ACTIONS(3020), [sym_pure] = ACTIONS(3020), [sym_ref] = ACTIONS(3020), [sym_return] = ACTIONS(3020), [sym_scope] = ACTIONS(3020), [sym_shared] = ACTIONS(3020), [sym_static] = ACTIONS(3020), [sym_struct] = ACTIONS(3020), [sym_synchronized] = ACTIONS(3020), [sym_template] = ACTIONS(3020), [sym_typeof] = ACTIONS(3020), [sym_union] = ACTIONS(3020), [sym_unittest] = ACTIONS(3020), [sym_version] = ACTIONS(3020), [sym_gshared] = ACTIONS(3020), [sym_traits] = ACTIONS(3020), [sym_vector] = ACTIONS(3020), [sym_void] = ACTIONS(3020), [sym_directive] = ACTIONS(3), }, [2413] = { [sym_identifier] = ACTIONS(3044), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3046), [anon_sym_DOT] = ACTIONS(3046), [anon_sym_BANG] = ACTIONS(3046), [anon_sym_LPAREN] = ACTIONS(3046), [anon_sym_RPAREN] = ACTIONS(3046), [anon_sym_LBRACK] = ACTIONS(3046), [anon_sym_RBRACK] = ACTIONS(3046), [anon_sym_COMMA] = ACTIONS(3046), [anon_sym_SEMI] = ACTIONS(3046), [anon_sym_COLON] = ACTIONS(3046), [anon_sym_EQ_EQ] = ACTIONS(3046), [anon_sym_STAR] = ACTIONS(3046), [anon_sym_TILDE] = ACTIONS(3046), [anon_sym_AT] = ACTIONS(3046), [sym_bool] = ACTIONS(3044), [sym_byte] = ACTIONS(3044), [sym_ubyte] = ACTIONS(3044), [sym_char] = ACTIONS(3044), [sym_short] = ACTIONS(3044), [sym_ushort] = ACTIONS(3044), [sym_int] = ACTIONS(3044), [sym_uint] = ACTIONS(3044), [sym_long] = ACTIONS(3044), [sym_ulong] = ACTIONS(3044), [sym_cent] = ACTIONS(3044), [sym_ucent] = ACTIONS(3044), [sym_wchar] = ACTIONS(3044), [sym_dchar] = ACTIONS(3044), [sym_float] = ACTIONS(3044), [sym_double] = ACTIONS(3044), [sym_real] = ACTIONS(3044), [sym_ifloat] = ACTIONS(3044), [sym_idouble] = ACTIONS(3044), [sym_ireal] = ACTIONS(3044), [sym_cfloat] = ACTIONS(3044), [sym_cdouble] = ACTIONS(3044), [sym_creal] = ACTIONS(3044), [sym_size_t] = ACTIONS(3044), [sym_ptrdiff_t] = ACTIONS(3044), [sym_string] = ACTIONS(3044), [sym_cstring] = ACTIONS(3044), [sym_dstring] = ACTIONS(3044), [sym_wstring] = ACTIONS(3044), [sym_noreturn] = ACTIONS(3044), [sym_this] = ACTIONS(3044), [sym_abstract] = ACTIONS(3044), [sym_alias] = ACTIONS(3044), [sym_align] = ACTIONS(3044), [sym_auto] = ACTIONS(3044), [sym_class] = ACTIONS(3044), [sym_const] = ACTIONS(3044), [sym_debug] = ACTIONS(3044), [sym_delegate] = ACTIONS(3044), [sym_deprecated] = ACTIONS(3044), [sym_enum] = ACTIONS(3044), [sym_export] = ACTIONS(3044), [sym_extern] = ACTIONS(3044), [sym_final] = ACTIONS(3044), [sym_function] = ACTIONS(3044), [sym_immutable] = ACTIONS(3044), [sym_import] = ACTIONS(3044), [sym_inout] = ACTIONS(3044), [sym_interface] = ACTIONS(3044), [sym_invariant] = ACTIONS(3044), [sym_mixin] = ACTIONS(3044), [sym_module] = ACTIONS(3044), [sym_nothrow] = ACTIONS(3044), [sym_override] = ACTIONS(3044), [sym_package] = ACTIONS(3044), [sym_pragma] = ACTIONS(3044), [sym_private] = ACTIONS(3044), [sym_protected] = ACTIONS(3044), [sym_public] = ACTIONS(3044), [sym_pure] = ACTIONS(3044), [sym_ref] = ACTIONS(3044), [sym_return] = ACTIONS(3044), [sym_scope] = ACTIONS(3044), [sym_shared] = ACTIONS(3044), [sym_static] = ACTIONS(3044), [sym_struct] = ACTIONS(3044), [sym_synchronized] = ACTIONS(3044), [sym_template] = ACTIONS(3044), [sym_typeof] = ACTIONS(3044), [sym_union] = ACTIONS(3044), [sym_unittest] = ACTIONS(3044), [sym_version] = ACTIONS(3044), [sym_gshared] = ACTIONS(3044), [sym_traits] = ACTIONS(3044), [sym_vector] = ACTIONS(3044), [sym_void] = ACTIONS(3044), [sym_directive] = ACTIONS(3), }, [2414] = { [sym_identifier] = ACTIONS(3032), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3034), [anon_sym_DOT] = ACTIONS(3034), [anon_sym_BANG] = ACTIONS(3034), [anon_sym_LPAREN] = ACTIONS(3034), [anon_sym_RPAREN] = ACTIONS(3034), [anon_sym_LBRACK] = ACTIONS(3034), [anon_sym_RBRACK] = ACTIONS(3034), [anon_sym_COMMA] = ACTIONS(3034), [anon_sym_SEMI] = ACTIONS(3034), [anon_sym_COLON] = ACTIONS(3034), [anon_sym_EQ_EQ] = ACTIONS(3034), [anon_sym_STAR] = ACTIONS(3034), [anon_sym_TILDE] = ACTIONS(3034), [anon_sym_AT] = ACTIONS(3034), [sym_bool] = ACTIONS(3032), [sym_byte] = ACTIONS(3032), [sym_ubyte] = ACTIONS(3032), [sym_char] = ACTIONS(3032), [sym_short] = ACTIONS(3032), [sym_ushort] = ACTIONS(3032), [sym_int] = ACTIONS(3032), [sym_uint] = ACTIONS(3032), [sym_long] = ACTIONS(3032), [sym_ulong] = ACTIONS(3032), [sym_cent] = ACTIONS(3032), [sym_ucent] = ACTIONS(3032), [sym_wchar] = ACTIONS(3032), [sym_dchar] = ACTIONS(3032), [sym_float] = ACTIONS(3032), [sym_double] = ACTIONS(3032), [sym_real] = ACTIONS(3032), [sym_ifloat] = ACTIONS(3032), [sym_idouble] = ACTIONS(3032), [sym_ireal] = ACTIONS(3032), [sym_cfloat] = ACTIONS(3032), [sym_cdouble] = ACTIONS(3032), [sym_creal] = ACTIONS(3032), [sym_size_t] = ACTIONS(3032), [sym_ptrdiff_t] = ACTIONS(3032), [sym_string] = ACTIONS(3032), [sym_cstring] = ACTIONS(3032), [sym_dstring] = ACTIONS(3032), [sym_wstring] = ACTIONS(3032), [sym_noreturn] = ACTIONS(3032), [sym_this] = ACTIONS(3032), [sym_abstract] = ACTIONS(3032), [sym_alias] = ACTIONS(3032), [sym_align] = ACTIONS(3032), [sym_auto] = ACTIONS(3032), [sym_class] = ACTIONS(3032), [sym_const] = ACTIONS(3032), [sym_debug] = ACTIONS(3032), [sym_delegate] = ACTIONS(3032), [sym_deprecated] = ACTIONS(3032), [sym_enum] = ACTIONS(3032), [sym_export] = ACTIONS(3032), [sym_extern] = ACTIONS(3032), [sym_final] = ACTIONS(3032), [sym_function] = ACTIONS(3032), [sym_immutable] = ACTIONS(3032), [sym_import] = ACTIONS(3032), [sym_inout] = ACTIONS(3032), [sym_interface] = ACTIONS(3032), [sym_invariant] = ACTIONS(3032), [sym_mixin] = ACTIONS(3032), [sym_module] = ACTIONS(3032), [sym_nothrow] = ACTIONS(3032), [sym_override] = ACTIONS(3032), [sym_package] = ACTIONS(3032), [sym_pragma] = ACTIONS(3032), [sym_private] = ACTIONS(3032), [sym_protected] = ACTIONS(3032), [sym_public] = ACTIONS(3032), [sym_pure] = ACTIONS(3032), [sym_ref] = ACTIONS(3032), [sym_return] = ACTIONS(3032), [sym_scope] = ACTIONS(3032), [sym_shared] = ACTIONS(3032), [sym_static] = ACTIONS(3032), [sym_struct] = ACTIONS(3032), [sym_synchronized] = ACTIONS(3032), [sym_template] = ACTIONS(3032), [sym_typeof] = ACTIONS(3032), [sym_union] = ACTIONS(3032), [sym_unittest] = ACTIONS(3032), [sym_version] = ACTIONS(3032), [sym_gshared] = ACTIONS(3032), [sym_traits] = ACTIONS(3032), [sym_vector] = ACTIONS(3032), [sym_void] = ACTIONS(3032), [sym_directive] = ACTIONS(3), }, [2415] = { [sym_identifier] = ACTIONS(3000), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3002), [anon_sym_DOT] = ACTIONS(3002), [anon_sym_BANG] = ACTIONS(3002), [anon_sym_LPAREN] = ACTIONS(3002), [anon_sym_RPAREN] = ACTIONS(3002), [anon_sym_LBRACK] = ACTIONS(3002), [anon_sym_RBRACK] = ACTIONS(3002), [anon_sym_COMMA] = ACTIONS(3002), [anon_sym_SEMI] = ACTIONS(3002), [anon_sym_COLON] = ACTIONS(3002), [anon_sym_EQ_EQ] = ACTIONS(3002), [anon_sym_STAR] = ACTIONS(3002), [anon_sym_TILDE] = ACTIONS(3002), [anon_sym_AT] = ACTIONS(3002), [sym_bool] = ACTIONS(3000), [sym_byte] = ACTIONS(3000), [sym_ubyte] = ACTIONS(3000), [sym_char] = ACTIONS(3000), [sym_short] = ACTIONS(3000), [sym_ushort] = ACTIONS(3000), [sym_int] = ACTIONS(3000), [sym_uint] = ACTIONS(3000), [sym_long] = ACTIONS(3000), [sym_ulong] = ACTIONS(3000), [sym_cent] = ACTIONS(3000), [sym_ucent] = ACTIONS(3000), [sym_wchar] = ACTIONS(3000), [sym_dchar] = ACTIONS(3000), [sym_float] = ACTIONS(3000), [sym_double] = ACTIONS(3000), [sym_real] = ACTIONS(3000), [sym_ifloat] = ACTIONS(3000), [sym_idouble] = ACTIONS(3000), [sym_ireal] = ACTIONS(3000), [sym_cfloat] = ACTIONS(3000), [sym_cdouble] = ACTIONS(3000), [sym_creal] = ACTIONS(3000), [sym_size_t] = ACTIONS(3000), [sym_ptrdiff_t] = ACTIONS(3000), [sym_string] = ACTIONS(3000), [sym_cstring] = ACTIONS(3000), [sym_dstring] = ACTIONS(3000), [sym_wstring] = ACTIONS(3000), [sym_noreturn] = ACTIONS(3000), [sym_this] = ACTIONS(3000), [sym_abstract] = ACTIONS(3000), [sym_alias] = ACTIONS(3000), [sym_align] = ACTIONS(3000), [sym_auto] = ACTIONS(3000), [sym_class] = ACTIONS(3000), [sym_const] = ACTIONS(3000), [sym_debug] = ACTIONS(3000), [sym_delegate] = ACTIONS(3000), [sym_deprecated] = ACTIONS(3000), [sym_enum] = ACTIONS(3000), [sym_export] = ACTIONS(3000), [sym_extern] = ACTIONS(3000), [sym_final] = ACTIONS(3000), [sym_function] = ACTIONS(3000), [sym_immutable] = ACTIONS(3000), [sym_import] = ACTIONS(3000), [sym_inout] = ACTIONS(3000), [sym_interface] = ACTIONS(3000), [sym_invariant] = ACTIONS(3000), [sym_mixin] = ACTIONS(3000), [sym_module] = ACTIONS(3000), [sym_nothrow] = ACTIONS(3000), [sym_override] = ACTIONS(3000), [sym_package] = ACTIONS(3000), [sym_pragma] = ACTIONS(3000), [sym_private] = ACTIONS(3000), [sym_protected] = ACTIONS(3000), [sym_public] = ACTIONS(3000), [sym_pure] = ACTIONS(3000), [sym_ref] = ACTIONS(3000), [sym_return] = ACTIONS(3000), [sym_scope] = ACTIONS(3000), [sym_shared] = ACTIONS(3000), [sym_static] = ACTIONS(3000), [sym_struct] = ACTIONS(3000), [sym_synchronized] = ACTIONS(3000), [sym_template] = ACTIONS(3000), [sym_typeof] = ACTIONS(3000), [sym_union] = ACTIONS(3000), [sym_unittest] = ACTIONS(3000), [sym_version] = ACTIONS(3000), [sym_gshared] = ACTIONS(3000), [sym_traits] = ACTIONS(3000), [sym_vector] = ACTIONS(3000), [sym_void] = ACTIONS(3000), [sym_directive] = ACTIONS(3), }, [2416] = { [sym_identifier] = ACTIONS(6657), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6659), [anon_sym_DOT] = ACTIONS(6659), [anon_sym_BANG] = ACTIONS(6659), [anon_sym_LPAREN] = ACTIONS(6659), [anon_sym_RPAREN] = ACTIONS(6659), [anon_sym_LBRACK] = ACTIONS(6659), [anon_sym_RBRACK] = ACTIONS(6659), [anon_sym_COMMA] = ACTIONS(6659), [anon_sym_SEMI] = ACTIONS(6659), [anon_sym_COLON] = ACTIONS(6659), [anon_sym_EQ_EQ] = ACTIONS(6659), [anon_sym_STAR] = ACTIONS(6659), [anon_sym_TILDE] = ACTIONS(6659), [anon_sym_AT] = ACTIONS(6659), [sym_bool] = ACTIONS(6657), [sym_byte] = ACTIONS(6657), [sym_ubyte] = ACTIONS(6657), [sym_char] = ACTIONS(6657), [sym_short] = ACTIONS(6657), [sym_ushort] = ACTIONS(6657), [sym_int] = ACTIONS(6657), [sym_uint] = ACTIONS(6657), [sym_long] = ACTIONS(6657), [sym_ulong] = ACTIONS(6657), [sym_cent] = ACTIONS(6657), [sym_ucent] = ACTIONS(6657), [sym_wchar] = ACTIONS(6657), [sym_dchar] = ACTIONS(6657), [sym_float] = ACTIONS(6657), [sym_double] = ACTIONS(6657), [sym_real] = ACTIONS(6657), [sym_ifloat] = ACTIONS(6657), [sym_idouble] = ACTIONS(6657), [sym_ireal] = ACTIONS(6657), [sym_cfloat] = ACTIONS(6657), [sym_cdouble] = ACTIONS(6657), [sym_creal] = ACTIONS(6657), [sym_size_t] = ACTIONS(6657), [sym_ptrdiff_t] = ACTIONS(6657), [sym_string] = ACTIONS(6657), [sym_cstring] = ACTIONS(6657), [sym_dstring] = ACTIONS(6657), [sym_wstring] = ACTIONS(6657), [sym_noreturn] = ACTIONS(6657), [sym_this] = ACTIONS(6657), [sym_abstract] = ACTIONS(6657), [sym_alias] = ACTIONS(6657), [sym_align] = ACTIONS(6657), [sym_auto] = ACTIONS(6657), [sym_class] = ACTIONS(6657), [sym_const] = ACTIONS(6657), [sym_debug] = ACTIONS(6657), [sym_delegate] = ACTIONS(6657), [sym_deprecated] = ACTIONS(6657), [sym_enum] = ACTIONS(6657), [sym_export] = ACTIONS(6657), [sym_extern] = ACTIONS(6657), [sym_final] = ACTIONS(6657), [sym_function] = ACTIONS(6657), [sym_immutable] = ACTIONS(6657), [sym_import] = ACTIONS(6657), [sym_inout] = ACTIONS(6657), [sym_interface] = ACTIONS(6657), [sym_invariant] = ACTIONS(6657), [sym_mixin] = ACTIONS(6657), [sym_module] = ACTIONS(6657), [sym_nothrow] = ACTIONS(6657), [sym_override] = ACTIONS(6657), [sym_package] = ACTIONS(6657), [sym_pragma] = ACTIONS(6657), [sym_private] = ACTIONS(6657), [sym_protected] = ACTIONS(6657), [sym_public] = ACTIONS(6657), [sym_pure] = ACTIONS(6657), [sym_ref] = ACTIONS(6657), [sym_return] = ACTIONS(6657), [sym_scope] = ACTIONS(6657), [sym_shared] = ACTIONS(6657), [sym_static] = ACTIONS(6657), [sym_struct] = ACTIONS(6657), [sym_synchronized] = ACTIONS(6657), [sym_template] = ACTIONS(6657), [sym_typeof] = ACTIONS(6657), [sym_union] = ACTIONS(6657), [sym_unittest] = ACTIONS(6657), [sym_version] = ACTIONS(6657), [sym_gshared] = ACTIONS(6657), [sym_traits] = ACTIONS(6657), [sym_vector] = ACTIONS(6657), [sym_void] = ACTIONS(6657), [sym_directive] = ACTIONS(3), }, [2417] = { [sym_identifier] = ACTIONS(2996), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(2998), [anon_sym_DOT] = ACTIONS(2998), [anon_sym_BANG] = ACTIONS(2998), [anon_sym_LPAREN] = ACTIONS(2998), [anon_sym_RPAREN] = ACTIONS(2998), [anon_sym_LBRACK] = ACTIONS(2998), [anon_sym_RBRACK] = ACTIONS(2998), [anon_sym_COMMA] = ACTIONS(2998), [anon_sym_SEMI] = ACTIONS(2998), [anon_sym_COLON] = ACTIONS(2998), [anon_sym_EQ_EQ] = ACTIONS(2998), [anon_sym_STAR] = ACTIONS(2998), [anon_sym_TILDE] = ACTIONS(2998), [anon_sym_AT] = ACTIONS(2998), [sym_bool] = ACTIONS(2996), [sym_byte] = ACTIONS(2996), [sym_ubyte] = ACTIONS(2996), [sym_char] = ACTIONS(2996), [sym_short] = ACTIONS(2996), [sym_ushort] = ACTIONS(2996), [sym_int] = ACTIONS(2996), [sym_uint] = ACTIONS(2996), [sym_long] = ACTIONS(2996), [sym_ulong] = ACTIONS(2996), [sym_cent] = ACTIONS(2996), [sym_ucent] = ACTIONS(2996), [sym_wchar] = ACTIONS(2996), [sym_dchar] = ACTIONS(2996), [sym_float] = ACTIONS(2996), [sym_double] = ACTIONS(2996), [sym_real] = ACTIONS(2996), [sym_ifloat] = ACTIONS(2996), [sym_idouble] = ACTIONS(2996), [sym_ireal] = ACTIONS(2996), [sym_cfloat] = ACTIONS(2996), [sym_cdouble] = ACTIONS(2996), [sym_creal] = ACTIONS(2996), [sym_size_t] = ACTIONS(2996), [sym_ptrdiff_t] = ACTIONS(2996), [sym_string] = ACTIONS(2996), [sym_cstring] = ACTIONS(2996), [sym_dstring] = ACTIONS(2996), [sym_wstring] = ACTIONS(2996), [sym_noreturn] = ACTIONS(2996), [sym_this] = ACTIONS(2996), [sym_abstract] = ACTIONS(2996), [sym_alias] = ACTIONS(2996), [sym_align] = ACTIONS(2996), [sym_auto] = ACTIONS(2996), [sym_class] = ACTIONS(2996), [sym_const] = ACTIONS(2996), [sym_debug] = ACTIONS(2996), [sym_delegate] = ACTIONS(2996), [sym_deprecated] = ACTIONS(2996), [sym_enum] = ACTIONS(2996), [sym_export] = ACTIONS(2996), [sym_extern] = ACTIONS(2996), [sym_final] = ACTIONS(2996), [sym_function] = ACTIONS(2996), [sym_immutable] = ACTIONS(2996), [sym_import] = ACTIONS(2996), [sym_inout] = ACTIONS(2996), [sym_interface] = ACTIONS(2996), [sym_invariant] = ACTIONS(2996), [sym_mixin] = ACTIONS(2996), [sym_module] = ACTIONS(2996), [sym_nothrow] = ACTIONS(2996), [sym_override] = ACTIONS(2996), [sym_package] = ACTIONS(2996), [sym_pragma] = ACTIONS(2996), [sym_private] = ACTIONS(2996), [sym_protected] = ACTIONS(2996), [sym_public] = ACTIONS(2996), [sym_pure] = ACTIONS(2996), [sym_ref] = ACTIONS(2996), [sym_return] = ACTIONS(2996), [sym_scope] = ACTIONS(2996), [sym_shared] = ACTIONS(2996), [sym_static] = ACTIONS(2996), [sym_struct] = ACTIONS(2996), [sym_synchronized] = ACTIONS(2996), [sym_template] = ACTIONS(2996), [sym_typeof] = ACTIONS(2996), [sym_union] = ACTIONS(2996), [sym_unittest] = ACTIONS(2996), [sym_version] = ACTIONS(2996), [sym_gshared] = ACTIONS(2996), [sym_traits] = ACTIONS(2996), [sym_vector] = ACTIONS(2996), [sym_void] = ACTIONS(2996), [sym_directive] = ACTIONS(3), }, [2418] = { [sym_identifier] = ACTIONS(6661), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6663), [anon_sym_DOT] = ACTIONS(6663), [anon_sym_LPAREN] = ACTIONS(6663), [anon_sym_RPAREN] = ACTIONS(6663), [anon_sym_LBRACK] = ACTIONS(6663), [anon_sym_RBRACK] = ACTIONS(6663), [anon_sym_COMMA] = ACTIONS(6663), [anon_sym_SEMI] = ACTIONS(6663), [anon_sym_COLON] = ACTIONS(6663), [anon_sym_EQ_EQ] = ACTIONS(6663), [anon_sym_STAR] = ACTIONS(6663), [anon_sym_TILDE] = ACTIONS(6663), [anon_sym_AT] = ACTIONS(6663), [sym_bool] = ACTIONS(6661), [sym_byte] = ACTIONS(6661), [sym_ubyte] = ACTIONS(6661), [sym_char] = ACTIONS(6661), [sym_short] = ACTIONS(6661), [sym_ushort] = ACTIONS(6661), [sym_int] = ACTIONS(6661), [sym_uint] = ACTIONS(6661), [sym_long] = ACTIONS(6661), [sym_ulong] = ACTIONS(6661), [sym_cent] = ACTIONS(6661), [sym_ucent] = ACTIONS(6661), [sym_wchar] = ACTIONS(6661), [sym_dchar] = ACTIONS(6661), [sym_float] = ACTIONS(6661), [sym_double] = ACTIONS(6661), [sym_real] = ACTIONS(6661), [sym_ifloat] = ACTIONS(6661), [sym_idouble] = ACTIONS(6661), [sym_ireal] = ACTIONS(6661), [sym_cfloat] = ACTIONS(6661), [sym_cdouble] = ACTIONS(6661), [sym_creal] = ACTIONS(6661), [sym_size_t] = ACTIONS(6661), [sym_ptrdiff_t] = ACTIONS(6661), [sym_string] = ACTIONS(6661), [sym_cstring] = ACTIONS(6661), [sym_dstring] = ACTIONS(6661), [sym_wstring] = ACTIONS(6661), [sym_noreturn] = ACTIONS(6661), [sym_this] = ACTIONS(6661), [sym_abstract] = ACTIONS(6661), [sym_alias] = ACTIONS(6661), [sym_align] = ACTIONS(6661), [sym_auto] = ACTIONS(6661), [sym_class] = ACTIONS(6661), [sym_const] = ACTIONS(6661), [sym_debug] = ACTIONS(6661), [sym_delegate] = ACTIONS(6661), [sym_deprecated] = ACTIONS(6661), [sym_enum] = ACTIONS(6661), [sym_export] = ACTIONS(6661), [sym_extern] = ACTIONS(6661), [sym_final] = ACTIONS(6661), [sym_function] = ACTIONS(6661), [sym_immutable] = ACTIONS(6661), [sym_import] = ACTIONS(6661), [sym_inout] = ACTIONS(6661), [sym_interface] = ACTIONS(6661), [sym_invariant] = ACTIONS(6661), [sym_mixin] = ACTIONS(6661), [sym_module] = ACTIONS(6661), [sym_nothrow] = ACTIONS(6661), [sym_override] = ACTIONS(6661), [sym_package] = ACTIONS(6661), [sym_pragma] = ACTIONS(6661), [sym_private] = ACTIONS(6661), [sym_protected] = ACTIONS(6661), [sym_public] = ACTIONS(6661), [sym_pure] = ACTIONS(6661), [sym_ref] = ACTIONS(6661), [sym_return] = ACTIONS(6661), [sym_scope] = ACTIONS(6661), [sym_shared] = ACTIONS(6661), [sym_static] = ACTIONS(6661), [sym_struct] = ACTIONS(6661), [sym_synchronized] = ACTIONS(6661), [sym_template] = ACTIONS(6661), [sym_typeof] = ACTIONS(6661), [sym_union] = ACTIONS(6661), [sym_unittest] = ACTIONS(6661), [sym_version] = ACTIONS(6661), [sym_gshared] = ACTIONS(6661), [sym_traits] = ACTIONS(6661), [sym_vector] = ACTIONS(6661), [sym_void] = ACTIONS(6661), [sym_directive] = ACTIONS(3), }, [2419] = { [sym_identifier] = ACTIONS(6665), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6667), [anon_sym_DOT] = ACTIONS(6667), [anon_sym_LPAREN] = ACTIONS(6667), [anon_sym_RPAREN] = ACTIONS(6667), [anon_sym_LBRACK] = ACTIONS(6667), [anon_sym_RBRACK] = ACTIONS(6667), [anon_sym_COMMA] = ACTIONS(6667), [anon_sym_SEMI] = ACTIONS(6667), [anon_sym_COLON] = ACTIONS(6667), [anon_sym_EQ_EQ] = ACTIONS(6667), [anon_sym_STAR] = ACTIONS(6667), [anon_sym_TILDE] = ACTIONS(6667), [anon_sym_AT] = ACTIONS(6667), [sym_bool] = ACTIONS(6665), [sym_byte] = ACTIONS(6665), [sym_ubyte] = ACTIONS(6665), [sym_char] = ACTIONS(6665), [sym_short] = ACTIONS(6665), [sym_ushort] = ACTIONS(6665), [sym_int] = ACTIONS(6665), [sym_uint] = ACTIONS(6665), [sym_long] = ACTIONS(6665), [sym_ulong] = ACTIONS(6665), [sym_cent] = ACTIONS(6665), [sym_ucent] = ACTIONS(6665), [sym_wchar] = ACTIONS(6665), [sym_dchar] = ACTIONS(6665), [sym_float] = ACTIONS(6665), [sym_double] = ACTIONS(6665), [sym_real] = ACTIONS(6665), [sym_ifloat] = ACTIONS(6665), [sym_idouble] = ACTIONS(6665), [sym_ireal] = ACTIONS(6665), [sym_cfloat] = ACTIONS(6665), [sym_cdouble] = ACTIONS(6665), [sym_creal] = ACTIONS(6665), [sym_size_t] = ACTIONS(6665), [sym_ptrdiff_t] = ACTIONS(6665), [sym_string] = ACTIONS(6665), [sym_cstring] = ACTIONS(6665), [sym_dstring] = ACTIONS(6665), [sym_wstring] = ACTIONS(6665), [sym_noreturn] = ACTIONS(6665), [sym_this] = ACTIONS(6665), [sym_abstract] = ACTIONS(6665), [sym_alias] = ACTIONS(6665), [sym_align] = ACTIONS(6665), [sym_auto] = ACTIONS(6665), [sym_class] = ACTIONS(6665), [sym_const] = ACTIONS(6665), [sym_debug] = ACTIONS(6665), [sym_delegate] = ACTIONS(6665), [sym_deprecated] = ACTIONS(6665), [sym_enum] = ACTIONS(6665), [sym_export] = ACTIONS(6665), [sym_extern] = ACTIONS(6665), [sym_final] = ACTIONS(6665), [sym_function] = ACTIONS(6665), [sym_immutable] = ACTIONS(6665), [sym_import] = ACTIONS(6665), [sym_inout] = ACTIONS(6665), [sym_interface] = ACTIONS(6665), [sym_invariant] = ACTIONS(6665), [sym_mixin] = ACTIONS(6665), [sym_module] = ACTIONS(6665), [sym_nothrow] = ACTIONS(6665), [sym_override] = ACTIONS(6665), [sym_package] = ACTIONS(6665), [sym_pragma] = ACTIONS(6665), [sym_private] = ACTIONS(6665), [sym_protected] = ACTIONS(6665), [sym_public] = ACTIONS(6665), [sym_pure] = ACTIONS(6665), [sym_ref] = ACTIONS(6665), [sym_return] = ACTIONS(6665), [sym_scope] = ACTIONS(6665), [sym_shared] = ACTIONS(6665), [sym_static] = ACTIONS(6665), [sym_struct] = ACTIONS(6665), [sym_synchronized] = ACTIONS(6665), [sym_template] = ACTIONS(6665), [sym_typeof] = ACTIONS(6665), [sym_union] = ACTIONS(6665), [sym_unittest] = ACTIONS(6665), [sym_version] = ACTIONS(6665), [sym_gshared] = ACTIONS(6665), [sym_traits] = ACTIONS(6665), [sym_vector] = ACTIONS(6665), [sym_void] = ACTIONS(6665), [sym_directive] = ACTIONS(3), }, [2420] = { [sym_identifier] = ACTIONS(6669), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6671), [anon_sym_DOT] = ACTIONS(6671), [anon_sym_LPAREN] = ACTIONS(6671), [anon_sym_RPAREN] = ACTIONS(6671), [anon_sym_LBRACK] = ACTIONS(6671), [anon_sym_RBRACK] = ACTIONS(6671), [anon_sym_COMMA] = ACTIONS(6671), [anon_sym_SEMI] = ACTIONS(6671), [anon_sym_COLON] = ACTIONS(6671), [anon_sym_EQ_EQ] = ACTIONS(6671), [anon_sym_STAR] = ACTIONS(6671), [anon_sym_TILDE] = ACTIONS(6671), [anon_sym_AT] = ACTIONS(6671), [sym_bool] = ACTIONS(6669), [sym_byte] = ACTIONS(6669), [sym_ubyte] = ACTIONS(6669), [sym_char] = ACTIONS(6669), [sym_short] = ACTIONS(6669), [sym_ushort] = ACTIONS(6669), [sym_int] = ACTIONS(6669), [sym_uint] = ACTIONS(6669), [sym_long] = ACTIONS(6669), [sym_ulong] = ACTIONS(6669), [sym_cent] = ACTIONS(6669), [sym_ucent] = ACTIONS(6669), [sym_wchar] = ACTIONS(6669), [sym_dchar] = ACTIONS(6669), [sym_float] = ACTIONS(6669), [sym_double] = ACTIONS(6669), [sym_real] = ACTIONS(6669), [sym_ifloat] = ACTIONS(6669), [sym_idouble] = ACTIONS(6669), [sym_ireal] = ACTIONS(6669), [sym_cfloat] = ACTIONS(6669), [sym_cdouble] = ACTIONS(6669), [sym_creal] = ACTIONS(6669), [sym_size_t] = ACTIONS(6669), [sym_ptrdiff_t] = ACTIONS(6669), [sym_string] = ACTIONS(6669), [sym_cstring] = ACTIONS(6669), [sym_dstring] = ACTIONS(6669), [sym_wstring] = ACTIONS(6669), [sym_noreturn] = ACTIONS(6669), [sym_this] = ACTIONS(6669), [sym_abstract] = ACTIONS(6669), [sym_alias] = ACTIONS(6669), [sym_align] = ACTIONS(6669), [sym_auto] = ACTIONS(6669), [sym_class] = ACTIONS(6669), [sym_const] = ACTIONS(6669), [sym_debug] = ACTIONS(6669), [sym_delegate] = ACTIONS(6669), [sym_deprecated] = ACTIONS(6669), [sym_enum] = ACTIONS(6669), [sym_export] = ACTIONS(6669), [sym_extern] = ACTIONS(6669), [sym_final] = ACTIONS(6669), [sym_function] = ACTIONS(6669), [sym_immutable] = ACTIONS(6669), [sym_import] = ACTIONS(6669), [sym_inout] = ACTIONS(6669), [sym_interface] = ACTIONS(6669), [sym_invariant] = ACTIONS(6669), [sym_mixin] = ACTIONS(6669), [sym_module] = ACTIONS(6669), [sym_nothrow] = ACTIONS(6669), [sym_override] = ACTIONS(6669), [sym_package] = ACTIONS(6669), [sym_pragma] = ACTIONS(6669), [sym_private] = ACTIONS(6669), [sym_protected] = ACTIONS(6669), [sym_public] = ACTIONS(6669), [sym_pure] = ACTIONS(6669), [sym_ref] = ACTIONS(6669), [sym_return] = ACTIONS(6669), [sym_scope] = ACTIONS(6669), [sym_shared] = ACTIONS(6669), [sym_static] = ACTIONS(6669), [sym_struct] = ACTIONS(6669), [sym_synchronized] = ACTIONS(6669), [sym_template] = ACTIONS(6669), [sym_typeof] = ACTIONS(6669), [sym_union] = ACTIONS(6669), [sym_unittest] = ACTIONS(6669), [sym_version] = ACTIONS(6669), [sym_gshared] = ACTIONS(6669), [sym_traits] = ACTIONS(6669), [sym_vector] = ACTIONS(6669), [sym_void] = ACTIONS(6669), [sym_directive] = ACTIONS(3), }, [2421] = { [sym_arguments] = STATE(2420), [sym_template_arguments] = STATE(2416), [sym_identifier] = ACTIONS(6647), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6649), [anon_sym_BANG] = ACTIONS(6673), [anon_sym_LPAREN] = ACTIONS(6651), [anon_sym_RPAREN] = ACTIONS(6649), [anon_sym_LBRACK] = ACTIONS(6649), [anon_sym_COLON] = ACTIONS(6649), [anon_sym_EQ_EQ] = ACTIONS(6649), [anon_sym_STAR] = ACTIONS(6649), [anon_sym_TILDE] = ACTIONS(6649), [anon_sym_AT] = ACTIONS(6649), [sym_bool] = ACTIONS(6647), [sym_byte] = ACTIONS(6647), [sym_ubyte] = ACTIONS(6647), [sym_char] = ACTIONS(6647), [sym_short] = ACTIONS(6647), [sym_ushort] = ACTIONS(6647), [sym_int] = ACTIONS(6647), [sym_uint] = ACTIONS(6647), [sym_long] = ACTIONS(6647), [sym_ulong] = ACTIONS(6647), [sym_cent] = ACTIONS(6647), [sym_ucent] = ACTIONS(6647), [sym_wchar] = ACTIONS(6647), [sym_dchar] = ACTIONS(6647), [sym_float] = ACTIONS(6647), [sym_double] = ACTIONS(6647), [sym_real] = ACTIONS(6647), [sym_ifloat] = ACTIONS(6647), [sym_idouble] = ACTIONS(6647), [sym_ireal] = ACTIONS(6647), [sym_cfloat] = ACTIONS(6647), [sym_cdouble] = ACTIONS(6647), [sym_creal] = ACTIONS(6647), [sym_size_t] = ACTIONS(6647), [sym_ptrdiff_t] = ACTIONS(6647), [sym_string] = ACTIONS(6647), [sym_cstring] = ACTIONS(6647), [sym_dstring] = ACTIONS(6647), [sym_wstring] = ACTIONS(6647), [sym_noreturn] = ACTIONS(6647), [sym_this] = ACTIONS(6647), [sym_abstract] = ACTIONS(6647), [sym_alias] = ACTIONS(6647), [sym_align] = ACTIONS(6647), [sym_auto] = ACTIONS(6647), [sym_class] = ACTIONS(6647), [sym_const] = ACTIONS(6647), [sym_debug] = ACTIONS(6647), [sym_delegate] = ACTIONS(6647), [sym_deprecated] = ACTIONS(6647), [sym_enum] = ACTIONS(6647), [sym_export] = ACTIONS(6647), [sym_extern] = ACTIONS(6647), [sym_final] = ACTIONS(6647), [sym_function] = ACTIONS(6647), [sym_immutable] = ACTIONS(6647), [sym_import] = ACTIONS(6647), [sym_inout] = ACTIONS(6647), [sym_interface] = ACTIONS(6647), [sym_invariant] = ACTIONS(6647), [sym_mixin] = ACTIONS(6647), [sym_module] = ACTIONS(6647), [sym_nothrow] = ACTIONS(6647), [sym_override] = ACTIONS(6647), [sym_package] = ACTIONS(6647), [sym_pragma] = ACTIONS(6647), [sym_private] = ACTIONS(6647), [sym_protected] = ACTIONS(6647), [sym_public] = ACTIONS(6647), [sym_pure] = ACTIONS(6647), [sym_ref] = ACTIONS(6647), [sym_return] = ACTIONS(6647), [sym_scope] = ACTIONS(6647), [sym_shared] = ACTIONS(6647), [sym_static] = ACTIONS(6647), [sym_struct] = ACTIONS(6647), [sym_synchronized] = ACTIONS(6647), [sym_template] = ACTIONS(6647), [sym_typeof] = ACTIONS(6647), [sym_union] = ACTIONS(6647), [sym_unittest] = ACTIONS(6647), [sym_version] = ACTIONS(6647), [sym_gshared] = ACTIONS(6647), [sym_traits] = ACTIONS(6647), [sym_vector] = ACTIONS(6647), [sym_void] = ACTIONS(6647), [sym_directive] = ACTIONS(3), }, [2422] = { [sym_identifier] = ACTIONS(6675), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6677), [anon_sym_DOT] = ACTIONS(6677), [anon_sym_LPAREN] = ACTIONS(6677), [anon_sym_RPAREN] = ACTIONS(6677), [anon_sym_LBRACK] = ACTIONS(6677), [anon_sym_RBRACK] = ACTIONS(6677), [anon_sym_COMMA] = ACTIONS(6677), [anon_sym_SEMI] = ACTIONS(6677), [anon_sym_COLON] = ACTIONS(6677), [anon_sym_EQ_EQ] = ACTIONS(6677), [anon_sym_STAR] = ACTIONS(6677), [anon_sym_TILDE] = ACTIONS(6677), [anon_sym_AT] = ACTIONS(6677), [sym_bool] = ACTIONS(6675), [sym_byte] = ACTIONS(6675), [sym_ubyte] = ACTIONS(6675), [sym_char] = ACTIONS(6675), [sym_short] = ACTIONS(6675), [sym_ushort] = ACTIONS(6675), [sym_int] = ACTIONS(6675), [sym_uint] = ACTIONS(6675), [sym_long] = ACTIONS(6675), [sym_ulong] = ACTIONS(6675), [sym_cent] = ACTIONS(6675), [sym_ucent] = ACTIONS(6675), [sym_wchar] = ACTIONS(6675), [sym_dchar] = ACTIONS(6675), [sym_float] = ACTIONS(6675), [sym_double] = ACTIONS(6675), [sym_real] = ACTIONS(6675), [sym_ifloat] = ACTIONS(6675), [sym_idouble] = ACTIONS(6675), [sym_ireal] = ACTIONS(6675), [sym_cfloat] = ACTIONS(6675), [sym_cdouble] = ACTIONS(6675), [sym_creal] = ACTIONS(6675), [sym_size_t] = ACTIONS(6675), [sym_ptrdiff_t] = ACTIONS(6675), [sym_string] = ACTIONS(6675), [sym_cstring] = ACTIONS(6675), [sym_dstring] = ACTIONS(6675), [sym_wstring] = ACTIONS(6675), [sym_noreturn] = ACTIONS(6675), [sym_this] = ACTIONS(6675), [sym_abstract] = ACTIONS(6675), [sym_alias] = ACTIONS(6675), [sym_align] = ACTIONS(6675), [sym_auto] = ACTIONS(6675), [sym_class] = ACTIONS(6675), [sym_const] = ACTIONS(6675), [sym_debug] = ACTIONS(6675), [sym_delegate] = ACTIONS(6675), [sym_deprecated] = ACTIONS(6675), [sym_enum] = ACTIONS(6675), [sym_export] = ACTIONS(6675), [sym_extern] = ACTIONS(6675), [sym_final] = ACTIONS(6675), [sym_function] = ACTIONS(6675), [sym_immutable] = ACTIONS(6675), [sym_import] = ACTIONS(6675), [sym_inout] = ACTIONS(6675), [sym_interface] = ACTIONS(6675), [sym_invariant] = ACTIONS(6675), [sym_mixin] = ACTIONS(6675), [sym_module] = ACTIONS(6675), [sym_nothrow] = ACTIONS(6675), [sym_override] = ACTIONS(6675), [sym_package] = ACTIONS(6675), [sym_pragma] = ACTIONS(6675), [sym_private] = ACTIONS(6675), [sym_protected] = ACTIONS(6675), [sym_public] = ACTIONS(6675), [sym_pure] = ACTIONS(6675), [sym_ref] = ACTIONS(6675), [sym_return] = ACTIONS(6675), [sym_scope] = ACTIONS(6675), [sym_shared] = ACTIONS(6675), [sym_static] = ACTIONS(6675), [sym_struct] = ACTIONS(6675), [sym_synchronized] = ACTIONS(6675), [sym_template] = ACTIONS(6675), [sym_typeof] = ACTIONS(6675), [sym_union] = ACTIONS(6675), [sym_unittest] = ACTIONS(6675), [sym_version] = ACTIONS(6675), [sym_gshared] = ACTIONS(6675), [sym_traits] = ACTIONS(6675), [sym_vector] = ACTIONS(6675), [sym_void] = ACTIONS(6675), [sym_directive] = ACTIONS(3), }, [2423] = { [sym_type_ctor] = STATE(2423), [sym_align_attribute] = STATE(2423), [sym_deprecated_attribute] = STATE(2423), [sym__attribute] = STATE(2423), [sym_at_attribute] = STATE(2423), [sym__function_attribute_kwd] = STATE(2423), [sym_linkage_attribute] = STATE(2423), [sym_pragma_expression] = STATE(2423), [aux_sym_import_declaration_repeat1] = STATE(2423), [sym_identifier] = ACTIONS(6679), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6681), [anon_sym_DOT] = ACTIONS(6681), [anon_sym_COLON] = ACTIONS(6681), [anon_sym_TILDE] = ACTIONS(6681), [anon_sym_AT] = ACTIONS(6683), [sym_bool] = ACTIONS(6679), [sym_byte] = ACTIONS(6679), [sym_ubyte] = ACTIONS(6679), [sym_char] = ACTIONS(6679), [sym_short] = ACTIONS(6679), [sym_ushort] = ACTIONS(6679), [sym_int] = ACTIONS(6679), [sym_uint] = ACTIONS(6679), [sym_long] = ACTIONS(6679), [sym_ulong] = ACTIONS(6679), [sym_cent] = ACTIONS(6679), [sym_ucent] = ACTIONS(6679), [sym_wchar] = ACTIONS(6679), [sym_dchar] = ACTIONS(6679), [sym_float] = ACTIONS(6679), [sym_double] = ACTIONS(6679), [sym_real] = ACTIONS(6679), [sym_ifloat] = ACTIONS(6679), [sym_idouble] = ACTIONS(6679), [sym_ireal] = ACTIONS(6679), [sym_cfloat] = ACTIONS(6679), [sym_cdouble] = ACTIONS(6679), [sym_creal] = ACTIONS(6679), [sym_size_t] = ACTIONS(6679), [sym_ptrdiff_t] = ACTIONS(6679), [sym_string] = ACTIONS(6679), [sym_cstring] = ACTIONS(6679), [sym_dstring] = ACTIONS(6679), [sym_wstring] = ACTIONS(6679), [sym_noreturn] = ACTIONS(6679), [sym_this] = ACTIONS(6679), [sym_abstract] = ACTIONS(6686), [sym_alias] = ACTIONS(6679), [sym_align] = ACTIONS(6689), [sym_auto] = ACTIONS(6686), [sym_class] = ACTIONS(6679), [sym_const] = ACTIONS(6692), [sym_debug] = ACTIONS(6679), [sym_deprecated] = ACTIONS(6695), [sym_enum] = ACTIONS(6679), [sym_export] = ACTIONS(6686), [sym_extern] = ACTIONS(6698), [sym_final] = ACTIONS(6686), [sym_immutable] = ACTIONS(6692), [sym_import] = ACTIONS(6679), [sym_inout] = ACTIONS(6692), [sym_interface] = ACTIONS(6679), [sym_invariant] = ACTIONS(6679), [sym_mixin] = ACTIONS(6679), [sym_nothrow] = ACTIONS(6686), [sym_override] = ACTIONS(6686), [sym_package] = ACTIONS(6701), [sym_pragma] = ACTIONS(6704), [sym_private] = ACTIONS(6686), [sym_protected] = ACTIONS(6686), [sym_public] = ACTIONS(6686), [sym_pure] = ACTIONS(6686), [sym_ref] = ACTIONS(6686), [sym_return] = ACTIONS(6686), [sym_scope] = ACTIONS(6686), [sym_shared] = ACTIONS(6692), [sym_static] = ACTIONS(6686), [sym_struct] = ACTIONS(6679), [sym_synchronized] = ACTIONS(6686), [sym_template] = ACTIONS(6679), [sym_typeof] = ACTIONS(6679), [sym_union] = ACTIONS(6679), [sym_unittest] = ACTIONS(6679), [sym_version] = ACTIONS(6679), [sym_gshared] = ACTIONS(6686), [sym_traits] = ACTIONS(6679), [sym_vector] = ACTIONS(6679), [sym_void] = ACTIONS(6679), [sym_directive] = ACTIONS(3), }, [2424] = { [ts_builtin_sym_end] = ACTIONS(3072), [sym_identifier] = ACTIONS(3070), [sym_end_file] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_COMMA] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [sym_directive] = ACTIONS(3), }, [2425] = { [ts_builtin_sym_end] = ACTIONS(3104), [sym_identifier] = ACTIONS(3102), [sym_end_file] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_COMMA] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [sym_directive] = ACTIONS(3), }, [2426] = { [ts_builtin_sym_end] = ACTIONS(3100), [sym_identifier] = ACTIONS(3098), [sym_end_file] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_COMMA] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [sym_directive] = ACTIONS(3), }, [2427] = { [sym_identifier] = ACTIONS(4952), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(4954), [anon_sym_DOT] = ACTIONS(4954), [anon_sym_SEMI] = ACTIONS(4954), [anon_sym_TILDE] = ACTIONS(4954), [anon_sym_AT] = ACTIONS(4954), [sym_bool] = ACTIONS(4952), [sym_byte] = ACTIONS(4952), [sym_ubyte] = ACTIONS(4952), [sym_char] = ACTIONS(4952), [sym_short] = ACTIONS(4952), [sym_ushort] = ACTIONS(4952), [sym_int] = ACTIONS(4952), [sym_uint] = ACTIONS(4952), [sym_long] = ACTIONS(4952), [sym_ulong] = ACTIONS(4952), [sym_cent] = ACTIONS(4952), [sym_ucent] = ACTIONS(4952), [sym_wchar] = ACTIONS(4952), [sym_dchar] = ACTIONS(4952), [sym_float] = ACTIONS(4952), [sym_double] = ACTIONS(4952), [sym_real] = ACTIONS(4952), [sym_ifloat] = ACTIONS(4952), [sym_idouble] = ACTIONS(4952), [sym_ireal] = ACTIONS(4952), [sym_cfloat] = ACTIONS(4952), [sym_cdouble] = ACTIONS(4952), [sym_creal] = ACTIONS(4952), [sym_size_t] = ACTIONS(4952), [sym_ptrdiff_t] = ACTIONS(4952), [sym_string] = ACTIONS(4952), [sym_cstring] = ACTIONS(4952), [sym_dstring] = ACTIONS(4952), [sym_wstring] = ACTIONS(4952), [sym_noreturn] = ACTIONS(4952), [sym_this] = ACTIONS(4952), [sym_abstract] = ACTIONS(4952), [sym_alias] = ACTIONS(4952), [sym_align] = ACTIONS(4952), [sym_auto] = ACTIONS(4952), [sym_catch] = ACTIONS(4952), [sym_class] = ACTIONS(4952), [sym_const] = ACTIONS(4952), [sym_debug] = ACTIONS(4952), [sym_deprecated] = ACTIONS(4952), [sym_do] = ACTIONS(4952), [sym_else] = ACTIONS(4952), [sym_enum] = ACTIONS(4952), [sym_export] = ACTIONS(4952), [sym_extern] = ACTIONS(4952), [sym_final] = ACTIONS(4952), [sym_finally] = ACTIONS(4952), [sym_immutable] = ACTIONS(4952), [sym_import] = ACTIONS(4952), [sym_in] = ACTIONS(4952), [sym_inout] = ACTIONS(4952), [sym_interface] = ACTIONS(4952), [sym_invariant] = ACTIONS(4952), [sym_mixin] = ACTIONS(4952), [sym_nothrow] = ACTIONS(4952), [sym_out] = ACTIONS(4952), [sym_override] = ACTIONS(4952), [sym_package] = ACTIONS(4952), [sym_pragma] = ACTIONS(4952), [sym_private] = ACTIONS(4952), [sym_protected] = ACTIONS(4952), [sym_public] = ACTIONS(4952), [sym_pure] = ACTIONS(4952), [sym_ref] = ACTIONS(4952), [sym_return] = ACTIONS(4952), [sym_scope] = ACTIONS(4952), [sym_shared] = ACTIONS(4952), [sym_static] = ACTIONS(4952), [sym_struct] = ACTIONS(4952), [sym_synchronized] = ACTIONS(4952), [sym_template] = ACTIONS(4952), [sym_typeof] = ACTIONS(4952), [sym_union] = ACTIONS(4952), [sym_unittest] = ACTIONS(4952), [sym_version] = ACTIONS(4952), [sym_while] = ACTIONS(4952), [sym_gshared] = ACTIONS(4952), [sym_traits] = ACTIONS(4952), [sym_vector] = ACTIONS(4952), [sym_void] = ACTIONS(4952), [sym_directive] = ACTIONS(3), }, [2428] = { [sym_assert_expression] = STATE(7628), [sym__foreach] = STATE(7988), [sym_foreach_statement] = STATE(5595), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6396), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6713), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6717), [sym_foreach_reverse] = ACTIONS(6717), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2429] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6721), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(5084), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_catch] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(6723), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_finally] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(6723), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(6723), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [sym_directive] = ACTIONS(3), }, [2430] = { [sym_identifier] = ACTIONS(4402), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(4404), [anon_sym_DOT] = ACTIONS(4404), [anon_sym_SEMI] = ACTIONS(4404), [anon_sym_TILDE] = ACTIONS(4404), [anon_sym_AT] = ACTIONS(4404), [sym_bool] = ACTIONS(4402), [sym_byte] = ACTIONS(4402), [sym_ubyte] = ACTIONS(4402), [sym_char] = ACTIONS(4402), [sym_short] = ACTIONS(4402), [sym_ushort] = ACTIONS(4402), [sym_int] = ACTIONS(4402), [sym_uint] = ACTIONS(4402), [sym_long] = ACTIONS(4402), [sym_ulong] = ACTIONS(4402), [sym_cent] = ACTIONS(4402), [sym_ucent] = ACTIONS(4402), [sym_wchar] = ACTIONS(4402), [sym_dchar] = ACTIONS(4402), [sym_float] = ACTIONS(4402), [sym_double] = ACTIONS(4402), [sym_real] = ACTIONS(4402), [sym_ifloat] = ACTIONS(4402), [sym_idouble] = ACTIONS(4402), [sym_ireal] = ACTIONS(4402), [sym_cfloat] = ACTIONS(4402), [sym_cdouble] = ACTIONS(4402), [sym_creal] = ACTIONS(4402), [sym_size_t] = ACTIONS(4402), [sym_ptrdiff_t] = ACTIONS(4402), [sym_string] = ACTIONS(4402), [sym_cstring] = ACTIONS(4402), [sym_dstring] = ACTIONS(4402), [sym_wstring] = ACTIONS(4402), [sym_noreturn] = ACTIONS(4402), [sym_this] = ACTIONS(4402), [sym_abstract] = ACTIONS(4402), [sym_alias] = ACTIONS(4402), [sym_align] = ACTIONS(4402), [sym_auto] = ACTIONS(4402), [sym_catch] = ACTIONS(4402), [sym_class] = ACTIONS(4402), [sym_const] = ACTIONS(4402), [sym_debug] = ACTIONS(4402), [sym_deprecated] = ACTIONS(4402), [sym_do] = ACTIONS(4402), [sym_else] = ACTIONS(4402), [sym_enum] = ACTIONS(4402), [sym_export] = ACTIONS(4402), [sym_extern] = ACTIONS(4402), [sym_final] = ACTIONS(4402), [sym_finally] = ACTIONS(4402), [sym_immutable] = ACTIONS(4402), [sym_import] = ACTIONS(4402), [sym_in] = ACTIONS(4402), [sym_inout] = ACTIONS(4402), [sym_interface] = ACTIONS(4402), [sym_invariant] = ACTIONS(4402), [sym_mixin] = ACTIONS(4402), [sym_nothrow] = ACTIONS(4402), [sym_out] = ACTIONS(4402), [sym_override] = ACTIONS(4402), [sym_package] = ACTIONS(4402), [sym_pragma] = ACTIONS(4402), [sym_private] = ACTIONS(4402), [sym_protected] = ACTIONS(4402), [sym_public] = ACTIONS(4402), [sym_pure] = ACTIONS(4402), [sym_ref] = ACTIONS(4402), [sym_return] = ACTIONS(4402), [sym_scope] = ACTIONS(4402), [sym_shared] = ACTIONS(4402), [sym_static] = ACTIONS(4402), [sym_struct] = ACTIONS(4402), [sym_synchronized] = ACTIONS(4402), [sym_template] = ACTIONS(4402), [sym_typeof] = ACTIONS(4402), [sym_union] = ACTIONS(4402), [sym_unittest] = ACTIONS(4402), [sym_version] = ACTIONS(4402), [sym_while] = ACTIONS(4402), [sym_gshared] = ACTIONS(4402), [sym_traits] = ACTIONS(4402), [sym_vector] = ACTIONS(4402), [sym_void] = ACTIONS(4402), [sym_directive] = ACTIONS(3), }, [2431] = { [sym_assert_expression] = STATE(7252), [sym__foreach] = STATE(7481), [sym_foreach_statement] = STATE(1613), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6484), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6725), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6727), [sym_foreach_reverse] = ACTIONS(6727), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2432] = { [sym_assert_expression] = STATE(8001), [sym__foreach] = STATE(8044), [sym_foreach_statement] = STATE(2194), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6729), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6731), [sym_foreach_reverse] = ACTIONS(6731), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2433] = { [sym_assert_expression] = STATE(8001), [sym__foreach] = STATE(8054), [sym_foreach_statement] = STATE(2194), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6729), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6733), [sym_foreach_reverse] = ACTIONS(6733), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2434] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6721), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4926), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_catch] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(6723), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_finally] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(6723), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(6723), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [sym_directive] = ACTIONS(3), }, [2435] = { [sym_assert_expression] = STATE(8001), [sym__foreach] = STATE(8052), [sym_foreach_statement] = STATE(2194), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6729), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6735), [sym_foreach_reverse] = ACTIONS(6735), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2436] = { [sym_identifier] = ACTIONS(4944), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(4946), [anon_sym_DOT] = ACTIONS(4946), [anon_sym_SEMI] = ACTIONS(4946), [anon_sym_TILDE] = ACTIONS(4946), [anon_sym_AT] = ACTIONS(4946), [sym_bool] = ACTIONS(4944), [sym_byte] = ACTIONS(4944), [sym_ubyte] = ACTIONS(4944), [sym_char] = ACTIONS(4944), [sym_short] = ACTIONS(4944), [sym_ushort] = ACTIONS(4944), [sym_int] = ACTIONS(4944), [sym_uint] = ACTIONS(4944), [sym_long] = ACTIONS(4944), [sym_ulong] = ACTIONS(4944), [sym_cent] = ACTIONS(4944), [sym_ucent] = ACTIONS(4944), [sym_wchar] = ACTIONS(4944), [sym_dchar] = ACTIONS(4944), [sym_float] = ACTIONS(4944), [sym_double] = ACTIONS(4944), [sym_real] = ACTIONS(4944), [sym_ifloat] = ACTIONS(4944), [sym_idouble] = ACTIONS(4944), [sym_ireal] = ACTIONS(4944), [sym_cfloat] = ACTIONS(4944), [sym_cdouble] = ACTIONS(4944), [sym_creal] = ACTIONS(4944), [sym_size_t] = ACTIONS(4944), [sym_ptrdiff_t] = ACTIONS(4944), [sym_string] = ACTIONS(4944), [sym_cstring] = ACTIONS(4944), [sym_dstring] = ACTIONS(4944), [sym_wstring] = ACTIONS(4944), [sym_noreturn] = ACTIONS(4944), [sym_this] = ACTIONS(4944), [sym_abstract] = ACTIONS(4944), [sym_alias] = ACTIONS(4944), [sym_align] = ACTIONS(4944), [sym_auto] = ACTIONS(4944), [sym_catch] = ACTIONS(4944), [sym_class] = ACTIONS(4944), [sym_const] = ACTIONS(4944), [sym_debug] = ACTIONS(4944), [sym_deprecated] = ACTIONS(4944), [sym_do] = ACTIONS(4944), [sym_else] = ACTIONS(4944), [sym_enum] = ACTIONS(4944), [sym_export] = ACTIONS(4944), [sym_extern] = ACTIONS(4944), [sym_final] = ACTIONS(4944), [sym_finally] = ACTIONS(4944), [sym_immutable] = ACTIONS(4944), [sym_import] = ACTIONS(4944), [sym_in] = ACTIONS(4944), [sym_inout] = ACTIONS(4944), [sym_interface] = ACTIONS(4944), [sym_invariant] = ACTIONS(4944), [sym_mixin] = ACTIONS(4944), [sym_nothrow] = ACTIONS(4944), [sym_out] = ACTIONS(4944), [sym_override] = ACTIONS(4944), [sym_package] = ACTIONS(4944), [sym_pragma] = ACTIONS(4944), [sym_private] = ACTIONS(4944), [sym_protected] = ACTIONS(4944), [sym_public] = ACTIONS(4944), [sym_pure] = ACTIONS(4944), [sym_ref] = ACTIONS(4944), [sym_return] = ACTIONS(4944), [sym_scope] = ACTIONS(4944), [sym_shared] = ACTIONS(4944), [sym_static] = ACTIONS(4944), [sym_struct] = ACTIONS(4944), [sym_synchronized] = ACTIONS(4944), [sym_template] = ACTIONS(4944), [sym_typeof] = ACTIONS(4944), [sym_union] = ACTIONS(4944), [sym_unittest] = ACTIONS(4944), [sym_version] = ACTIONS(4944), [sym_while] = ACTIONS(4944), [sym_gshared] = ACTIONS(4944), [sym_traits] = ACTIONS(4944), [sym_vector] = ACTIONS(4944), [sym_void] = ACTIONS(4944), [sym_directive] = ACTIONS(3), }, [2437] = { [sym_assert_expression] = STATE(7407), [sym__foreach] = STATE(8036), [sym_foreach_statement] = STATE(1385), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6317), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6737), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6739), [sym_foreach_reverse] = ACTIONS(6739), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2438] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_catch] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_finally] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [sym_directive] = ACTIONS(3), }, [2439] = { [sym_assert_expression] = STATE(7628), [sym__foreach] = STATE(8005), [sym_foreach_statement] = STATE(5595), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6396), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6713), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6741), [sym_foreach_reverse] = ACTIONS(6741), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2440] = { [sym_assert_expression] = STATE(8001), [sym__foreach] = STATE(8050), [sym_foreach_statement] = STATE(2194), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6729), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6743), [sym_foreach_reverse] = ACTIONS(6743), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2441] = { [sym_assert_expression] = STATE(7252), [sym__foreach] = STATE(8040), [sym_foreach_statement] = STATE(1613), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6484), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6725), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6745), [sym_foreach_reverse] = ACTIONS(6745), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2442] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_catch] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_finally] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [sym_directive] = ACTIONS(3), }, [2443] = { [sym_assert_expression] = STATE(7407), [sym__foreach] = STATE(8046), [sym_foreach_statement] = STATE(1385), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6317), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6737), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6747), [sym_foreach_reverse] = ACTIONS(6747), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2444] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_catch] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_finally] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [sym_directive] = ACTIONS(3), }, [2445] = { [sym_assert_expression] = STATE(7768), [sym__foreach] = STATE(8048), [sym_foreach_statement] = STATE(5595), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6448), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6749), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6751), [sym_foreach_reverse] = ACTIONS(6751), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2446] = { [sym_assert_expression] = STATE(7768), [sym__foreach] = STATE(8042), [sym_foreach_statement] = STATE(5595), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6448), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6749), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6753), [sym_foreach_reverse] = ACTIONS(6753), [sym_if] = ACTIONS(6719), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2447] = { [ts_builtin_sym_end] = ACTIONS(4299), [sym_identifier] = ACTIONS(4297), [sym_end_file] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6721), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(5084), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(6723), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(6723), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(6723), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [sym_directive] = ACTIONS(3), }, [2448] = { [sym_assert_expression] = STATE(8001), [sym__foreach] = STATE(8026), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6729), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6755), [sym_foreach_reverse] = ACTIONS(6755), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2449] = { [sym_identifier] = ACTIONS(4944), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4946), [anon_sym_LBRACE] = ACTIONS(4946), [anon_sym_DOT] = ACTIONS(4946), [anon_sym_SEMI] = ACTIONS(4946), [anon_sym_TILDE] = ACTIONS(4946), [anon_sym_AT] = ACTIONS(4946), [sym_bool] = ACTIONS(4944), [sym_byte] = ACTIONS(4944), [sym_ubyte] = ACTIONS(4944), [sym_char] = ACTIONS(4944), [sym_short] = ACTIONS(4944), [sym_ushort] = ACTIONS(4944), [sym_int] = ACTIONS(4944), [sym_uint] = ACTIONS(4944), [sym_long] = ACTIONS(4944), [sym_ulong] = ACTIONS(4944), [sym_cent] = ACTIONS(4944), [sym_ucent] = ACTIONS(4944), [sym_wchar] = ACTIONS(4944), [sym_dchar] = ACTIONS(4944), [sym_float] = ACTIONS(4944), [sym_double] = ACTIONS(4944), [sym_real] = ACTIONS(4944), [sym_ifloat] = ACTIONS(4944), [sym_idouble] = ACTIONS(4944), [sym_ireal] = ACTIONS(4944), [sym_cfloat] = ACTIONS(4944), [sym_cdouble] = ACTIONS(4944), [sym_creal] = ACTIONS(4944), [sym_size_t] = ACTIONS(4944), [sym_ptrdiff_t] = ACTIONS(4944), [sym_string] = ACTIONS(4944), [sym_cstring] = ACTIONS(4944), [sym_dstring] = ACTIONS(4944), [sym_wstring] = ACTIONS(4944), [sym_noreturn] = ACTIONS(4944), [sym_this] = ACTIONS(4944), [sym_abstract] = ACTIONS(4944), [sym_alias] = ACTIONS(4944), [sym_align] = ACTIONS(4944), [sym_auto] = ACTIONS(4944), [sym_class] = ACTIONS(4944), [sym_const] = ACTIONS(4944), [sym_debug] = ACTIONS(4944), [sym_deprecated] = ACTIONS(4944), [sym_do] = ACTIONS(4944), [sym_else] = ACTIONS(4944), [sym_enum] = ACTIONS(4944), [sym_export] = ACTIONS(4944), [sym_extern] = ACTIONS(4944), [sym_final] = ACTIONS(4944), [sym_immutable] = ACTIONS(4944), [sym_import] = ACTIONS(4944), [sym_in] = ACTIONS(4944), [sym_inout] = ACTIONS(4944), [sym_interface] = ACTIONS(4944), [sym_invariant] = ACTIONS(4944), [sym_mixin] = ACTIONS(4944), [sym_nothrow] = ACTIONS(4944), [sym_out] = ACTIONS(4944), [sym_override] = ACTIONS(4944), [sym_package] = ACTIONS(4944), [sym_pragma] = ACTIONS(4944), [sym_private] = ACTIONS(4944), [sym_protected] = ACTIONS(4944), [sym_public] = ACTIONS(4944), [sym_pure] = ACTIONS(4944), [sym_ref] = ACTIONS(4944), [sym_return] = ACTIONS(4944), [sym_scope] = ACTIONS(4944), [sym_shared] = ACTIONS(4944), [sym_static] = ACTIONS(4944), [sym_struct] = ACTIONS(4944), [sym_synchronized] = ACTIONS(4944), [sym_template] = ACTIONS(4944), [sym_typeof] = ACTIONS(4944), [sym_union] = ACTIONS(4944), [sym_unittest] = ACTIONS(4944), [sym_version] = ACTIONS(4944), [sym_while] = ACTIONS(4944), [sym_gshared] = ACTIONS(4944), [sym_traits] = ACTIONS(4944), [sym_vector] = ACTIONS(4944), [sym_void] = ACTIONS(4944), [sym_directive] = ACTIONS(3), }, [2450] = { [sym_assert_expression] = STATE(7768), [sym__foreach] = STATE(8020), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6448), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6749), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6759), [sym_foreach_reverse] = ACTIONS(6759), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2451] = { [sym_identifier] = ACTIONS(4402), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4404), [anon_sym_LBRACE] = ACTIONS(4404), [anon_sym_DOT] = ACTIONS(4404), [anon_sym_SEMI] = ACTIONS(4404), [anon_sym_TILDE] = ACTIONS(4404), [anon_sym_AT] = ACTIONS(4404), [sym_bool] = ACTIONS(4402), [sym_byte] = ACTIONS(4402), [sym_ubyte] = ACTIONS(4402), [sym_char] = ACTIONS(4402), [sym_short] = ACTIONS(4402), [sym_ushort] = ACTIONS(4402), [sym_int] = ACTIONS(4402), [sym_uint] = ACTIONS(4402), [sym_long] = ACTIONS(4402), [sym_ulong] = ACTIONS(4402), [sym_cent] = ACTIONS(4402), [sym_ucent] = ACTIONS(4402), [sym_wchar] = ACTIONS(4402), [sym_dchar] = ACTIONS(4402), [sym_float] = ACTIONS(4402), [sym_double] = ACTIONS(4402), [sym_real] = ACTIONS(4402), [sym_ifloat] = ACTIONS(4402), [sym_idouble] = ACTIONS(4402), [sym_ireal] = ACTIONS(4402), [sym_cfloat] = ACTIONS(4402), [sym_cdouble] = ACTIONS(4402), [sym_creal] = ACTIONS(4402), [sym_size_t] = ACTIONS(4402), [sym_ptrdiff_t] = ACTIONS(4402), [sym_string] = ACTIONS(4402), [sym_cstring] = ACTIONS(4402), [sym_dstring] = ACTIONS(4402), [sym_wstring] = ACTIONS(4402), [sym_noreturn] = ACTIONS(4402), [sym_this] = ACTIONS(4402), [sym_abstract] = ACTIONS(4402), [sym_alias] = ACTIONS(4402), [sym_align] = ACTIONS(4402), [sym_auto] = ACTIONS(4402), [sym_class] = ACTIONS(4402), [sym_const] = ACTIONS(4402), [sym_debug] = ACTIONS(4402), [sym_deprecated] = ACTIONS(4402), [sym_do] = ACTIONS(4402), [sym_else] = ACTIONS(4402), [sym_enum] = ACTIONS(4402), [sym_export] = ACTIONS(4402), [sym_extern] = ACTIONS(4402), [sym_final] = ACTIONS(4402), [sym_immutable] = ACTIONS(4402), [sym_import] = ACTIONS(4402), [sym_in] = ACTIONS(4402), [sym_inout] = ACTIONS(4402), [sym_interface] = ACTIONS(4402), [sym_invariant] = ACTIONS(4402), [sym_mixin] = ACTIONS(4402), [sym_nothrow] = ACTIONS(4402), [sym_out] = ACTIONS(4402), [sym_override] = ACTIONS(4402), [sym_package] = ACTIONS(4402), [sym_pragma] = ACTIONS(4402), [sym_private] = ACTIONS(4402), [sym_protected] = ACTIONS(4402), [sym_public] = ACTIONS(4402), [sym_pure] = ACTIONS(4402), [sym_ref] = ACTIONS(4402), [sym_return] = ACTIONS(4402), [sym_scope] = ACTIONS(4402), [sym_shared] = ACTIONS(4402), [sym_static] = ACTIONS(4402), [sym_struct] = ACTIONS(4402), [sym_synchronized] = ACTIONS(4402), [sym_template] = ACTIONS(4402), [sym_typeof] = ACTIONS(4402), [sym_union] = ACTIONS(4402), [sym_unittest] = ACTIONS(4402), [sym_version] = ACTIONS(4402), [sym_while] = ACTIONS(4402), [sym_gshared] = ACTIONS(4402), [sym_traits] = ACTIONS(4402), [sym_vector] = ACTIONS(4402), [sym_void] = ACTIONS(4402), [sym_directive] = ACTIONS(3), }, [2452] = { [sym_assert_expression] = STATE(7252), [sym__foreach] = STATE(8000), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6484), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6725), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6761), [sym_foreach_reverse] = ACTIONS(6761), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2453] = { [ts_builtin_sym_end] = ACTIONS(4954), [sym_identifier] = ACTIONS(4952), [sym_end_file] = ACTIONS(4952), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(4954), [anon_sym_DOT] = ACTIONS(4954), [anon_sym_SEMI] = ACTIONS(4954), [anon_sym_TILDE] = ACTIONS(4954), [anon_sym_AT] = ACTIONS(4954), [sym_bool] = ACTIONS(4952), [sym_byte] = ACTIONS(4952), [sym_ubyte] = ACTIONS(4952), [sym_char] = ACTIONS(4952), [sym_short] = ACTIONS(4952), [sym_ushort] = ACTIONS(4952), [sym_int] = ACTIONS(4952), [sym_uint] = ACTIONS(4952), [sym_long] = ACTIONS(4952), [sym_ulong] = ACTIONS(4952), [sym_cent] = ACTIONS(4952), [sym_ucent] = ACTIONS(4952), [sym_wchar] = ACTIONS(4952), [sym_dchar] = ACTIONS(4952), [sym_float] = ACTIONS(4952), [sym_double] = ACTIONS(4952), [sym_real] = ACTIONS(4952), [sym_ifloat] = ACTIONS(4952), [sym_idouble] = ACTIONS(4952), [sym_ireal] = ACTIONS(4952), [sym_cfloat] = ACTIONS(4952), [sym_cdouble] = ACTIONS(4952), [sym_creal] = ACTIONS(4952), [sym_size_t] = ACTIONS(4952), [sym_ptrdiff_t] = ACTIONS(4952), [sym_string] = ACTIONS(4952), [sym_cstring] = ACTIONS(4952), [sym_dstring] = ACTIONS(4952), [sym_wstring] = ACTIONS(4952), [sym_noreturn] = ACTIONS(4952), [sym_this] = ACTIONS(4952), [sym_abstract] = ACTIONS(4952), [sym_alias] = ACTIONS(4952), [sym_align] = ACTIONS(4952), [sym_auto] = ACTIONS(4952), [sym_class] = ACTIONS(4952), [sym_const] = ACTIONS(4952), [sym_debug] = ACTIONS(4952), [sym_deprecated] = ACTIONS(4952), [sym_do] = ACTIONS(4952), [sym_else] = ACTIONS(4952), [sym_enum] = ACTIONS(4952), [sym_export] = ACTIONS(4952), [sym_extern] = ACTIONS(4952), [sym_final] = ACTIONS(4952), [sym_immutable] = ACTIONS(4952), [sym_import] = ACTIONS(4952), [sym_in] = ACTIONS(4952), [sym_inout] = ACTIONS(4952), [sym_interface] = ACTIONS(4952), [sym_invariant] = ACTIONS(4952), [sym_mixin] = ACTIONS(4952), [sym_nothrow] = ACTIONS(4952), [sym_out] = ACTIONS(4952), [sym_override] = ACTIONS(4952), [sym_package] = ACTIONS(4952), [sym_pragma] = ACTIONS(4952), [sym_private] = ACTIONS(4952), [sym_protected] = ACTIONS(4952), [sym_public] = ACTIONS(4952), [sym_pure] = ACTIONS(4952), [sym_ref] = ACTIONS(4952), [sym_return] = ACTIONS(4952), [sym_scope] = ACTIONS(4952), [sym_shared] = ACTIONS(4952), [sym_static] = ACTIONS(4952), [sym_struct] = ACTIONS(4952), [sym_synchronized] = ACTIONS(4952), [sym_template] = ACTIONS(4952), [sym_typeof] = ACTIONS(4952), [sym_union] = ACTIONS(4952), [sym_unittest] = ACTIONS(4952), [sym_version] = ACTIONS(4952), [sym_gshared] = ACTIONS(4952), [sym_traits] = ACTIONS(4952), [sym_vector] = ACTIONS(4952), [sym_void] = ACTIONS(4952), [sym_directive] = ACTIONS(3), }, [2454] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4618), [anon_sym_LBRACE] = ACTIONS(6721), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4926), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(6723), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(6723), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(6723), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [sym_directive] = ACTIONS(3), }, [2455] = { [sym_identifier] = ACTIONS(3098), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(3100), [anon_sym_LBRACE] = ACTIONS(3100), [anon_sym_DOT] = ACTIONS(3100), [anon_sym_SEMI] = ACTIONS(3100), [anon_sym_TILDE] = ACTIONS(3100), [anon_sym_AT] = ACTIONS(3100), [sym_bool] = ACTIONS(3098), [sym_byte] = ACTIONS(3098), [sym_ubyte] = ACTIONS(3098), [sym_char] = ACTIONS(3098), [sym_short] = ACTIONS(3098), [sym_ushort] = ACTIONS(3098), [sym_int] = ACTIONS(3098), [sym_uint] = ACTIONS(3098), [sym_long] = ACTIONS(3098), [sym_ulong] = ACTIONS(3098), [sym_cent] = ACTIONS(3098), [sym_ucent] = ACTIONS(3098), [sym_wchar] = ACTIONS(3098), [sym_dchar] = ACTIONS(3098), [sym_float] = ACTIONS(3098), [sym_double] = ACTIONS(3098), [sym_real] = ACTIONS(3098), [sym_ifloat] = ACTIONS(3098), [sym_idouble] = ACTIONS(3098), [sym_ireal] = ACTIONS(3098), [sym_cfloat] = ACTIONS(3098), [sym_cdouble] = ACTIONS(3098), [sym_creal] = ACTIONS(3098), [sym_size_t] = ACTIONS(3098), [sym_ptrdiff_t] = ACTIONS(3098), [sym_string] = ACTIONS(3098), [sym_cstring] = ACTIONS(3098), [sym_dstring] = ACTIONS(3098), [sym_wstring] = ACTIONS(3098), [sym_noreturn] = ACTIONS(3098), [sym_this] = ACTIONS(3098), [sym_abstract] = ACTIONS(3098), [sym_alias] = ACTIONS(3098), [sym_align] = ACTIONS(3098), [sym_auto] = ACTIONS(3098), [sym_class] = ACTIONS(3098), [sym_const] = ACTIONS(3098), [sym_debug] = ACTIONS(3098), [sym_deprecated] = ACTIONS(3098), [sym_do] = ACTIONS(3098), [sym_else] = ACTIONS(3098), [sym_enum] = ACTIONS(3098), [sym_export] = ACTIONS(3098), [sym_extern] = ACTIONS(3098), [sym_final] = ACTIONS(3098), [sym_immutable] = ACTIONS(3098), [sym_import] = ACTIONS(3098), [sym_in] = ACTIONS(3098), [sym_inout] = ACTIONS(3098), [sym_interface] = ACTIONS(3098), [sym_invariant] = ACTIONS(3098), [sym_mixin] = ACTIONS(3098), [sym_nothrow] = ACTIONS(3098), [sym_out] = ACTIONS(3098), [sym_override] = ACTIONS(3098), [sym_package] = ACTIONS(3098), [sym_pragma] = ACTIONS(3098), [sym_private] = ACTIONS(3098), [sym_protected] = ACTIONS(3098), [sym_public] = ACTIONS(3098), [sym_pure] = ACTIONS(3098), [sym_ref] = ACTIONS(3098), [sym_return] = ACTIONS(3098), [sym_scope] = ACTIONS(3098), [sym_shared] = ACTIONS(3098), [sym_static] = ACTIONS(3098), [sym_struct] = ACTIONS(3098), [sym_synchronized] = ACTIONS(3098), [sym_template] = ACTIONS(3098), [sym_typeof] = ACTIONS(3098), [sym_union] = ACTIONS(3098), [sym_unittest] = ACTIONS(3098), [sym_version] = ACTIONS(3098), [sym_while] = ACTIONS(3098), [sym_gshared] = ACTIONS(3098), [sym_traits] = ACTIONS(3098), [sym_vector] = ACTIONS(3098), [sym_void] = ACTIONS(3098), [sym_directive] = ACTIONS(3), }, [2456] = { [sym_assert_expression] = STATE(7768), [sym__foreach] = STATE(8016), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6550), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6763), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6765), [sym_foreach_reverse] = ACTIONS(6765), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2457] = { [ts_builtin_sym_end] = ACTIONS(4618), [sym_identifier] = ACTIONS(4616), [sym_end_file] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6721), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4926), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_do] = ACTIONS(6723), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_in] = ACTIONS(6723), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_out] = ACTIONS(6723), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [sym_directive] = ACTIONS(3), }, [2458] = { [ts_builtin_sym_end] = ACTIONS(4946), [sym_identifier] = ACTIONS(4944), [sym_end_file] = ACTIONS(4944), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(4946), [anon_sym_DOT] = ACTIONS(4946), [anon_sym_SEMI] = ACTIONS(4946), [anon_sym_TILDE] = ACTIONS(4946), [anon_sym_AT] = ACTIONS(4946), [sym_bool] = ACTIONS(4944), [sym_byte] = ACTIONS(4944), [sym_ubyte] = ACTIONS(4944), [sym_char] = ACTIONS(4944), [sym_short] = ACTIONS(4944), [sym_ushort] = ACTIONS(4944), [sym_int] = ACTIONS(4944), [sym_uint] = ACTIONS(4944), [sym_long] = ACTIONS(4944), [sym_ulong] = ACTIONS(4944), [sym_cent] = ACTIONS(4944), [sym_ucent] = ACTIONS(4944), [sym_wchar] = ACTIONS(4944), [sym_dchar] = ACTIONS(4944), [sym_float] = ACTIONS(4944), [sym_double] = ACTIONS(4944), [sym_real] = ACTIONS(4944), [sym_ifloat] = ACTIONS(4944), [sym_idouble] = ACTIONS(4944), [sym_ireal] = ACTIONS(4944), [sym_cfloat] = ACTIONS(4944), [sym_cdouble] = ACTIONS(4944), [sym_creal] = ACTIONS(4944), [sym_size_t] = ACTIONS(4944), [sym_ptrdiff_t] = ACTIONS(4944), [sym_string] = ACTIONS(4944), [sym_cstring] = ACTIONS(4944), [sym_dstring] = ACTIONS(4944), [sym_wstring] = ACTIONS(4944), [sym_noreturn] = ACTIONS(4944), [sym_this] = ACTIONS(4944), [sym_abstract] = ACTIONS(4944), [sym_alias] = ACTIONS(4944), [sym_align] = ACTIONS(4944), [sym_auto] = ACTIONS(4944), [sym_class] = ACTIONS(4944), [sym_const] = ACTIONS(4944), [sym_debug] = ACTIONS(4944), [sym_deprecated] = ACTIONS(4944), [sym_do] = ACTIONS(4944), [sym_else] = ACTIONS(4944), [sym_enum] = ACTIONS(4944), [sym_export] = ACTIONS(4944), [sym_extern] = ACTIONS(4944), [sym_final] = ACTIONS(4944), [sym_immutable] = ACTIONS(4944), [sym_import] = ACTIONS(4944), [sym_in] = ACTIONS(4944), [sym_inout] = ACTIONS(4944), [sym_interface] = ACTIONS(4944), [sym_invariant] = ACTIONS(4944), [sym_mixin] = ACTIONS(4944), [sym_nothrow] = ACTIONS(4944), [sym_out] = ACTIONS(4944), [sym_override] = ACTIONS(4944), [sym_package] = ACTIONS(4944), [sym_pragma] = ACTIONS(4944), [sym_private] = ACTIONS(4944), [sym_protected] = ACTIONS(4944), [sym_public] = ACTIONS(4944), [sym_pure] = ACTIONS(4944), [sym_ref] = ACTIONS(4944), [sym_return] = ACTIONS(4944), [sym_scope] = ACTIONS(4944), [sym_shared] = ACTIONS(4944), [sym_static] = ACTIONS(4944), [sym_struct] = ACTIONS(4944), [sym_synchronized] = ACTIONS(4944), [sym_template] = ACTIONS(4944), [sym_typeof] = ACTIONS(4944), [sym_union] = ACTIONS(4944), [sym_unittest] = ACTIONS(4944), [sym_version] = ACTIONS(4944), [sym_gshared] = ACTIONS(4944), [sym_traits] = ACTIONS(4944), [sym_vector] = ACTIONS(4944), [sym_void] = ACTIONS(4944), [sym_directive] = ACTIONS(3), }, [2459] = { [sym_assert_expression] = STATE(7078), [sym__foreach] = STATE(7980), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6410), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6767), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6769), [sym_foreach_reverse] = ACTIONS(6769), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2460] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4299), [anon_sym_LBRACE] = ACTIONS(6721), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(5084), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_do] = ACTIONS(6723), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_in] = ACTIONS(6723), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_out] = ACTIONS(6723), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [sym_directive] = ACTIONS(3), }, [2461] = { [ts_builtin_sym_end] = ACTIONS(4404), [sym_identifier] = ACTIONS(4402), [sym_end_file] = ACTIONS(4402), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(4404), [anon_sym_DOT] = ACTIONS(4404), [anon_sym_SEMI] = ACTIONS(4404), [anon_sym_TILDE] = ACTIONS(4404), [anon_sym_AT] = ACTIONS(4404), [sym_bool] = ACTIONS(4402), [sym_byte] = ACTIONS(4402), [sym_ubyte] = ACTIONS(4402), [sym_char] = ACTIONS(4402), [sym_short] = ACTIONS(4402), [sym_ushort] = ACTIONS(4402), [sym_int] = ACTIONS(4402), [sym_uint] = ACTIONS(4402), [sym_long] = ACTIONS(4402), [sym_ulong] = ACTIONS(4402), [sym_cent] = ACTIONS(4402), [sym_ucent] = ACTIONS(4402), [sym_wchar] = ACTIONS(4402), [sym_dchar] = ACTIONS(4402), [sym_float] = ACTIONS(4402), [sym_double] = ACTIONS(4402), [sym_real] = ACTIONS(4402), [sym_ifloat] = ACTIONS(4402), [sym_idouble] = ACTIONS(4402), [sym_ireal] = ACTIONS(4402), [sym_cfloat] = ACTIONS(4402), [sym_cdouble] = ACTIONS(4402), [sym_creal] = ACTIONS(4402), [sym_size_t] = ACTIONS(4402), [sym_ptrdiff_t] = ACTIONS(4402), [sym_string] = ACTIONS(4402), [sym_cstring] = ACTIONS(4402), [sym_dstring] = ACTIONS(4402), [sym_wstring] = ACTIONS(4402), [sym_noreturn] = ACTIONS(4402), [sym_this] = ACTIONS(4402), [sym_abstract] = ACTIONS(4402), [sym_alias] = ACTIONS(4402), [sym_align] = ACTIONS(4402), [sym_auto] = ACTIONS(4402), [sym_class] = ACTIONS(4402), [sym_const] = ACTIONS(4402), [sym_debug] = ACTIONS(4402), [sym_deprecated] = ACTIONS(4402), [sym_do] = ACTIONS(4402), [sym_else] = ACTIONS(4402), [sym_enum] = ACTIONS(4402), [sym_export] = ACTIONS(4402), [sym_extern] = ACTIONS(4402), [sym_final] = ACTIONS(4402), [sym_immutable] = ACTIONS(4402), [sym_import] = ACTIONS(4402), [sym_in] = ACTIONS(4402), [sym_inout] = ACTIONS(4402), [sym_interface] = ACTIONS(4402), [sym_invariant] = ACTIONS(4402), [sym_mixin] = ACTIONS(4402), [sym_nothrow] = ACTIONS(4402), [sym_out] = ACTIONS(4402), [sym_override] = ACTIONS(4402), [sym_package] = ACTIONS(4402), [sym_pragma] = ACTIONS(4402), [sym_private] = ACTIONS(4402), [sym_protected] = ACTIONS(4402), [sym_public] = ACTIONS(4402), [sym_pure] = ACTIONS(4402), [sym_ref] = ACTIONS(4402), [sym_return] = ACTIONS(4402), [sym_scope] = ACTIONS(4402), [sym_shared] = ACTIONS(4402), [sym_static] = ACTIONS(4402), [sym_struct] = ACTIONS(4402), [sym_synchronized] = ACTIONS(4402), [sym_template] = ACTIONS(4402), [sym_typeof] = ACTIONS(4402), [sym_union] = ACTIONS(4402), [sym_unittest] = ACTIONS(4402), [sym_version] = ACTIONS(4402), [sym_gshared] = ACTIONS(4402), [sym_traits] = ACTIONS(4402), [sym_vector] = ACTIONS(4402), [sym_void] = ACTIONS(4402), [sym_directive] = ACTIONS(3), }, [2462] = { [sym_assert_expression] = STATE(7407), [sym__foreach] = STATE(8010), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6317), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6737), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6771), [sym_foreach_reverse] = ACTIONS(6771), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2463] = { [sym_assert_expression] = STATE(7628), [sym__foreach] = STATE(7629), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6366), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6773), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6775), [sym_foreach_reverse] = ACTIONS(6775), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2464] = { [sym_identifier] = ACTIONS(4952), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4954), [anon_sym_LBRACE] = ACTIONS(4954), [anon_sym_DOT] = ACTIONS(4954), [anon_sym_SEMI] = ACTIONS(4954), [anon_sym_TILDE] = ACTIONS(4954), [anon_sym_AT] = ACTIONS(4954), [sym_bool] = ACTIONS(4952), [sym_byte] = ACTIONS(4952), [sym_ubyte] = ACTIONS(4952), [sym_char] = ACTIONS(4952), [sym_short] = ACTIONS(4952), [sym_ushort] = ACTIONS(4952), [sym_int] = ACTIONS(4952), [sym_uint] = ACTIONS(4952), [sym_long] = ACTIONS(4952), [sym_ulong] = ACTIONS(4952), [sym_cent] = ACTIONS(4952), [sym_ucent] = ACTIONS(4952), [sym_wchar] = ACTIONS(4952), [sym_dchar] = ACTIONS(4952), [sym_float] = ACTIONS(4952), [sym_double] = ACTIONS(4952), [sym_real] = ACTIONS(4952), [sym_ifloat] = ACTIONS(4952), [sym_idouble] = ACTIONS(4952), [sym_ireal] = ACTIONS(4952), [sym_cfloat] = ACTIONS(4952), [sym_cdouble] = ACTIONS(4952), [sym_creal] = ACTIONS(4952), [sym_size_t] = ACTIONS(4952), [sym_ptrdiff_t] = ACTIONS(4952), [sym_string] = ACTIONS(4952), [sym_cstring] = ACTIONS(4952), [sym_dstring] = ACTIONS(4952), [sym_wstring] = ACTIONS(4952), [sym_noreturn] = ACTIONS(4952), [sym_this] = ACTIONS(4952), [sym_abstract] = ACTIONS(4952), [sym_alias] = ACTIONS(4952), [sym_align] = ACTIONS(4952), [sym_auto] = ACTIONS(4952), [sym_class] = ACTIONS(4952), [sym_const] = ACTIONS(4952), [sym_debug] = ACTIONS(4952), [sym_deprecated] = ACTIONS(4952), [sym_do] = ACTIONS(4952), [sym_else] = ACTIONS(4952), [sym_enum] = ACTIONS(4952), [sym_export] = ACTIONS(4952), [sym_extern] = ACTIONS(4952), [sym_final] = ACTIONS(4952), [sym_immutable] = ACTIONS(4952), [sym_import] = ACTIONS(4952), [sym_in] = ACTIONS(4952), [sym_inout] = ACTIONS(4952), [sym_interface] = ACTIONS(4952), [sym_invariant] = ACTIONS(4952), [sym_mixin] = ACTIONS(4952), [sym_nothrow] = ACTIONS(4952), [sym_out] = ACTIONS(4952), [sym_override] = ACTIONS(4952), [sym_package] = ACTIONS(4952), [sym_pragma] = ACTIONS(4952), [sym_private] = ACTIONS(4952), [sym_protected] = ACTIONS(4952), [sym_public] = ACTIONS(4952), [sym_pure] = ACTIONS(4952), [sym_ref] = ACTIONS(4952), [sym_return] = ACTIONS(4952), [sym_scope] = ACTIONS(4952), [sym_shared] = ACTIONS(4952), [sym_static] = ACTIONS(4952), [sym_struct] = ACTIONS(4952), [sym_synchronized] = ACTIONS(4952), [sym_template] = ACTIONS(4952), [sym_typeof] = ACTIONS(4952), [sym_union] = ACTIONS(4952), [sym_unittest] = ACTIONS(4952), [sym_version] = ACTIONS(4952), [sym_while] = ACTIONS(4952), [sym_gshared] = ACTIONS(4952), [sym_traits] = ACTIONS(4952), [sym_vector] = ACTIONS(4952), [sym_void] = ACTIONS(4952), [sym_directive] = ACTIONS(3), }, [2465] = { [sym_assert_expression] = STATE(8001), [sym__foreach] = STATE(8023), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6520), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6729), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6777), [sym_foreach_reverse] = ACTIONS(6777), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2466] = { [sym_identifier] = ACTIONS(3102), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(3104), [anon_sym_LBRACE] = ACTIONS(3104), [anon_sym_DOT] = ACTIONS(3104), [anon_sym_SEMI] = ACTIONS(3104), [anon_sym_TILDE] = ACTIONS(3104), [anon_sym_AT] = ACTIONS(3104), [sym_bool] = ACTIONS(3102), [sym_byte] = ACTIONS(3102), [sym_ubyte] = ACTIONS(3102), [sym_char] = ACTIONS(3102), [sym_short] = ACTIONS(3102), [sym_ushort] = ACTIONS(3102), [sym_int] = ACTIONS(3102), [sym_uint] = ACTIONS(3102), [sym_long] = ACTIONS(3102), [sym_ulong] = ACTIONS(3102), [sym_cent] = ACTIONS(3102), [sym_ucent] = ACTIONS(3102), [sym_wchar] = ACTIONS(3102), [sym_dchar] = ACTIONS(3102), [sym_float] = ACTIONS(3102), [sym_double] = ACTIONS(3102), [sym_real] = ACTIONS(3102), [sym_ifloat] = ACTIONS(3102), [sym_idouble] = ACTIONS(3102), [sym_ireal] = ACTIONS(3102), [sym_cfloat] = ACTIONS(3102), [sym_cdouble] = ACTIONS(3102), [sym_creal] = ACTIONS(3102), [sym_size_t] = ACTIONS(3102), [sym_ptrdiff_t] = ACTIONS(3102), [sym_string] = ACTIONS(3102), [sym_cstring] = ACTIONS(3102), [sym_dstring] = ACTIONS(3102), [sym_wstring] = ACTIONS(3102), [sym_noreturn] = ACTIONS(3102), [sym_this] = ACTIONS(3102), [sym_abstract] = ACTIONS(3102), [sym_alias] = ACTIONS(3102), [sym_align] = ACTIONS(3102), [sym_auto] = ACTIONS(3102), [sym_class] = ACTIONS(3102), [sym_const] = ACTIONS(3102), [sym_debug] = ACTIONS(3102), [sym_deprecated] = ACTIONS(3102), [sym_do] = ACTIONS(3102), [sym_else] = ACTIONS(3102), [sym_enum] = ACTIONS(3102), [sym_export] = ACTIONS(3102), [sym_extern] = ACTIONS(3102), [sym_final] = ACTIONS(3102), [sym_immutable] = ACTIONS(3102), [sym_import] = ACTIONS(3102), [sym_in] = ACTIONS(3102), [sym_inout] = ACTIONS(3102), [sym_interface] = ACTIONS(3102), [sym_invariant] = ACTIONS(3102), [sym_mixin] = ACTIONS(3102), [sym_nothrow] = ACTIONS(3102), [sym_out] = ACTIONS(3102), [sym_override] = ACTIONS(3102), [sym_package] = ACTIONS(3102), [sym_pragma] = ACTIONS(3102), [sym_private] = ACTIONS(3102), [sym_protected] = ACTIONS(3102), [sym_public] = ACTIONS(3102), [sym_pure] = ACTIONS(3102), [sym_ref] = ACTIONS(3102), [sym_return] = ACTIONS(3102), [sym_scope] = ACTIONS(3102), [sym_shared] = ACTIONS(3102), [sym_static] = ACTIONS(3102), [sym_struct] = ACTIONS(3102), [sym_synchronized] = ACTIONS(3102), [sym_template] = ACTIONS(3102), [sym_typeof] = ACTIONS(3102), [sym_union] = ACTIONS(3102), [sym_unittest] = ACTIONS(3102), [sym_version] = ACTIONS(3102), [sym_while] = ACTIONS(3102), [sym_gshared] = ACTIONS(3102), [sym_traits] = ACTIONS(3102), [sym_vector] = ACTIONS(3102), [sym_void] = ACTIONS(3102), [sym_directive] = ACTIONS(3), }, [2467] = { [sym_assert_expression] = STATE(7628), [sym__foreach] = STATE(8033), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6396), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6713), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_assert] = ACTIONS(6715), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_foreach] = ACTIONS(6779), [sym_foreach_reverse] = ACTIONS(6779), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2468] = { [sym_identifier] = ACTIONS(3070), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(3072), [anon_sym_LBRACE] = ACTIONS(3072), [anon_sym_DOT] = ACTIONS(3072), [anon_sym_SEMI] = ACTIONS(3072), [anon_sym_TILDE] = ACTIONS(3072), [anon_sym_AT] = ACTIONS(3072), [sym_bool] = ACTIONS(3070), [sym_byte] = ACTIONS(3070), [sym_ubyte] = ACTIONS(3070), [sym_char] = ACTIONS(3070), [sym_short] = ACTIONS(3070), [sym_ushort] = ACTIONS(3070), [sym_int] = ACTIONS(3070), [sym_uint] = ACTIONS(3070), [sym_long] = ACTIONS(3070), [sym_ulong] = ACTIONS(3070), [sym_cent] = ACTIONS(3070), [sym_ucent] = ACTIONS(3070), [sym_wchar] = ACTIONS(3070), [sym_dchar] = ACTIONS(3070), [sym_float] = ACTIONS(3070), [sym_double] = ACTIONS(3070), [sym_real] = ACTIONS(3070), [sym_ifloat] = ACTIONS(3070), [sym_idouble] = ACTIONS(3070), [sym_ireal] = ACTIONS(3070), [sym_cfloat] = ACTIONS(3070), [sym_cdouble] = ACTIONS(3070), [sym_creal] = ACTIONS(3070), [sym_size_t] = ACTIONS(3070), [sym_ptrdiff_t] = ACTIONS(3070), [sym_string] = ACTIONS(3070), [sym_cstring] = ACTIONS(3070), [sym_dstring] = ACTIONS(3070), [sym_wstring] = ACTIONS(3070), [sym_noreturn] = ACTIONS(3070), [sym_this] = ACTIONS(3070), [sym_abstract] = ACTIONS(3070), [sym_alias] = ACTIONS(3070), [sym_align] = ACTIONS(3070), [sym_auto] = ACTIONS(3070), [sym_class] = ACTIONS(3070), [sym_const] = ACTIONS(3070), [sym_debug] = ACTIONS(3070), [sym_deprecated] = ACTIONS(3070), [sym_do] = ACTIONS(3070), [sym_else] = ACTIONS(3070), [sym_enum] = ACTIONS(3070), [sym_export] = ACTIONS(3070), [sym_extern] = ACTIONS(3070), [sym_final] = ACTIONS(3070), [sym_immutable] = ACTIONS(3070), [sym_import] = ACTIONS(3070), [sym_in] = ACTIONS(3070), [sym_inout] = ACTIONS(3070), [sym_interface] = ACTIONS(3070), [sym_invariant] = ACTIONS(3070), [sym_mixin] = ACTIONS(3070), [sym_nothrow] = ACTIONS(3070), [sym_out] = ACTIONS(3070), [sym_override] = ACTIONS(3070), [sym_package] = ACTIONS(3070), [sym_pragma] = ACTIONS(3070), [sym_private] = ACTIONS(3070), [sym_protected] = ACTIONS(3070), [sym_public] = ACTIONS(3070), [sym_pure] = ACTIONS(3070), [sym_ref] = ACTIONS(3070), [sym_return] = ACTIONS(3070), [sym_scope] = ACTIONS(3070), [sym_shared] = ACTIONS(3070), [sym_static] = ACTIONS(3070), [sym_struct] = ACTIONS(3070), [sym_synchronized] = ACTIONS(3070), [sym_template] = ACTIONS(3070), [sym_typeof] = ACTIONS(3070), [sym_union] = ACTIONS(3070), [sym_unittest] = ACTIONS(3070), [sym_version] = ACTIONS(3070), [sym_while] = ACTIONS(3070), [sym_gshared] = ACTIONS(3070), [sym_traits] = ACTIONS(3070), [sym_vector] = ACTIONS(3070), [sym_void] = ACTIONS(3070), [sym_directive] = ACTIONS(3), }, [2469] = { [ts_builtin_sym_end] = ACTIONS(4898), [sym_identifier] = ACTIONS(4896), [sym_end_file] = ACTIONS(4896), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4898), [anon_sym_SEMI] = ACTIONS(4898), [anon_sym_TILDE] = ACTIONS(4898), [anon_sym_AT] = ACTIONS(4898), [sym_bool] = ACTIONS(4896), [sym_byte] = ACTIONS(4896), [sym_ubyte] = ACTIONS(4896), [sym_char] = ACTIONS(4896), [sym_short] = ACTIONS(4896), [sym_ushort] = ACTIONS(4896), [sym_int] = ACTIONS(4896), [sym_uint] = ACTIONS(4896), [sym_long] = ACTIONS(4896), [sym_ulong] = ACTIONS(4896), [sym_cent] = ACTIONS(4896), [sym_ucent] = ACTIONS(4896), [sym_wchar] = ACTIONS(4896), [sym_dchar] = ACTIONS(4896), [sym_float] = ACTIONS(4896), [sym_double] = ACTIONS(4896), [sym_real] = ACTIONS(4896), [sym_ifloat] = ACTIONS(4896), [sym_idouble] = ACTIONS(4896), [sym_ireal] = ACTIONS(4896), [sym_cfloat] = ACTIONS(4896), [sym_cdouble] = ACTIONS(4896), [sym_creal] = ACTIONS(4896), [sym_size_t] = ACTIONS(4896), [sym_ptrdiff_t] = ACTIONS(4896), [sym_string] = ACTIONS(4896), [sym_cstring] = ACTIONS(4896), [sym_dstring] = ACTIONS(4896), [sym_wstring] = ACTIONS(4896), [sym_noreturn] = ACTIONS(4896), [sym_this] = ACTIONS(4896), [sym_abstract] = ACTIONS(4896), [sym_alias] = ACTIONS(4896), [sym_align] = ACTIONS(4896), [sym_auto] = ACTIONS(4896), [sym_class] = ACTIONS(4896), [sym_const] = ACTIONS(4896), [sym_debug] = ACTIONS(4896), [sym_deprecated] = ACTIONS(4896), [sym_else] = ACTIONS(4896), [sym_enum] = ACTIONS(4896), [sym_export] = ACTIONS(4896), [sym_extern] = ACTIONS(4896), [sym_final] = ACTIONS(4896), [sym_immutable] = ACTIONS(4896), [sym_import] = ACTIONS(4896), [sym_inout] = ACTIONS(4896), [sym_interface] = ACTIONS(4896), [sym_invariant] = ACTIONS(4896), [sym_mixin] = ACTIONS(4896), [sym_nothrow] = ACTIONS(4896), [sym_override] = ACTIONS(4896), [sym_package] = ACTIONS(4896), [sym_pragma] = ACTIONS(4896), [sym_private] = ACTIONS(4896), [sym_protected] = ACTIONS(4896), [sym_public] = ACTIONS(4896), [sym_pure] = ACTIONS(4896), [sym_ref] = ACTIONS(4896), [sym_return] = ACTIONS(4896), [sym_scope] = ACTIONS(4896), [sym_shared] = ACTIONS(4896), [sym_static] = ACTIONS(4896), [sym_struct] = ACTIONS(4896), [sym_synchronized] = ACTIONS(4896), [sym_template] = ACTIONS(4896), [sym_typeof] = ACTIONS(4896), [sym_union] = ACTIONS(4896), [sym_unittest] = ACTIONS(4896), [sym_version] = ACTIONS(4896), [sym_while] = ACTIONS(4896), [sym_gshared] = ACTIONS(4896), [sym_traits] = ACTIONS(4896), [sym_vector] = ACTIONS(4896), [sym_void] = ACTIONS(4896), [sym_directive] = ACTIONS(3), }, [2470] = { [sym_identifier] = ACTIONS(4554), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4556), [anon_sym_SEMI] = ACTIONS(4556), [anon_sym_TILDE] = ACTIONS(4556), [anon_sym_AT] = ACTIONS(4556), [sym_bool] = ACTIONS(4554), [sym_byte] = ACTIONS(4554), [sym_ubyte] = ACTIONS(4554), [sym_char] = ACTIONS(4554), [sym_short] = ACTIONS(4554), [sym_ushort] = ACTIONS(4554), [sym_int] = ACTIONS(4554), [sym_uint] = ACTIONS(4554), [sym_long] = ACTIONS(4554), [sym_ulong] = ACTIONS(4554), [sym_cent] = ACTIONS(4554), [sym_ucent] = ACTIONS(4554), [sym_wchar] = ACTIONS(4554), [sym_dchar] = ACTIONS(4554), [sym_float] = ACTIONS(4554), [sym_double] = ACTIONS(4554), [sym_real] = ACTIONS(4554), [sym_ifloat] = ACTIONS(4554), [sym_idouble] = ACTIONS(4554), [sym_ireal] = ACTIONS(4554), [sym_cfloat] = ACTIONS(4554), [sym_cdouble] = ACTIONS(4554), [sym_creal] = ACTIONS(4554), [sym_size_t] = ACTIONS(4554), [sym_ptrdiff_t] = ACTIONS(4554), [sym_string] = ACTIONS(4554), [sym_cstring] = ACTIONS(4554), [sym_dstring] = ACTIONS(4554), [sym_wstring] = ACTIONS(4554), [sym_noreturn] = ACTIONS(4554), [sym_this] = ACTIONS(4554), [sym_abstract] = ACTIONS(4554), [sym_alias] = ACTIONS(4554), [sym_align] = ACTIONS(4554), [sym_auto] = ACTIONS(4554), [sym_catch] = ACTIONS(4554), [sym_class] = ACTIONS(4554), [sym_const] = ACTIONS(4554), [sym_debug] = ACTIONS(4554), [sym_deprecated] = ACTIONS(4554), [sym_else] = ACTIONS(4554), [sym_enum] = ACTIONS(4554), [sym_export] = ACTIONS(4554), [sym_extern] = ACTIONS(4554), [sym_final] = ACTIONS(4554), [sym_finally] = ACTIONS(4554), [sym_immutable] = ACTIONS(4554), [sym_import] = ACTIONS(4554), [sym_inout] = ACTIONS(4554), [sym_interface] = ACTIONS(4554), [sym_invariant] = ACTIONS(4554), [sym_mixin] = ACTIONS(4554), [sym_nothrow] = ACTIONS(4554), [sym_override] = ACTIONS(4554), [sym_package] = ACTIONS(4554), [sym_pragma] = ACTIONS(4554), [sym_private] = ACTIONS(4554), [sym_protected] = ACTIONS(4554), [sym_public] = ACTIONS(4554), [sym_pure] = ACTIONS(4554), [sym_ref] = ACTIONS(4554), [sym_return] = ACTIONS(4554), [sym_scope] = ACTIONS(4554), [sym_shared] = ACTIONS(4554), [sym_static] = ACTIONS(4554), [sym_struct] = ACTIONS(4554), [sym_synchronized] = ACTIONS(4554), [sym_template] = ACTIONS(4554), [sym_typeof] = ACTIONS(4554), [sym_union] = ACTIONS(4554), [sym_unittest] = ACTIONS(4554), [sym_version] = ACTIONS(4554), [sym_while] = ACTIONS(4554), [sym_gshared] = ACTIONS(4554), [sym_traits] = ACTIONS(4554), [sym_vector] = ACTIONS(4554), [sym_void] = ACTIONS(4554), [sym_directive] = ACTIONS(3), }, [2471] = { [sym_identifier] = ACTIONS(4464), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4466), [anon_sym_SEMI] = ACTIONS(4466), [anon_sym_TILDE] = ACTIONS(4466), [anon_sym_AT] = ACTIONS(4466), [sym_bool] = ACTIONS(4464), [sym_byte] = ACTIONS(4464), [sym_ubyte] = ACTIONS(4464), [sym_char] = ACTIONS(4464), [sym_short] = ACTIONS(4464), [sym_ushort] = ACTIONS(4464), [sym_int] = ACTIONS(4464), [sym_uint] = ACTIONS(4464), [sym_long] = ACTIONS(4464), [sym_ulong] = ACTIONS(4464), [sym_cent] = ACTIONS(4464), [sym_ucent] = ACTIONS(4464), [sym_wchar] = ACTIONS(4464), [sym_dchar] = ACTIONS(4464), [sym_float] = ACTIONS(4464), [sym_double] = ACTIONS(4464), [sym_real] = ACTIONS(4464), [sym_ifloat] = ACTIONS(4464), [sym_idouble] = ACTIONS(4464), [sym_ireal] = ACTIONS(4464), [sym_cfloat] = ACTIONS(4464), [sym_cdouble] = ACTIONS(4464), [sym_creal] = ACTIONS(4464), [sym_size_t] = ACTIONS(4464), [sym_ptrdiff_t] = ACTIONS(4464), [sym_string] = ACTIONS(4464), [sym_cstring] = ACTIONS(4464), [sym_dstring] = ACTIONS(4464), [sym_wstring] = ACTIONS(4464), [sym_noreturn] = ACTIONS(4464), [sym_this] = ACTIONS(4464), [sym_abstract] = ACTIONS(4464), [sym_alias] = ACTIONS(4464), [sym_align] = ACTIONS(4464), [sym_auto] = ACTIONS(4464), [sym_catch] = ACTIONS(4464), [sym_class] = ACTIONS(4464), [sym_const] = ACTIONS(4464), [sym_debug] = ACTIONS(4464), [sym_deprecated] = ACTIONS(4464), [sym_else] = ACTIONS(4464), [sym_enum] = ACTIONS(4464), [sym_export] = ACTIONS(4464), [sym_extern] = ACTIONS(4464), [sym_final] = ACTIONS(4464), [sym_finally] = ACTIONS(4464), [sym_immutable] = ACTIONS(4464), [sym_import] = ACTIONS(4464), [sym_inout] = ACTIONS(4464), [sym_interface] = ACTIONS(4464), [sym_invariant] = ACTIONS(4464), [sym_mixin] = ACTIONS(4464), [sym_nothrow] = ACTIONS(4464), [sym_override] = ACTIONS(4464), [sym_package] = ACTIONS(4464), [sym_pragma] = ACTIONS(4464), [sym_private] = ACTIONS(4464), [sym_protected] = ACTIONS(4464), [sym_public] = ACTIONS(4464), [sym_pure] = ACTIONS(4464), [sym_ref] = ACTIONS(4464), [sym_return] = ACTIONS(4464), [sym_scope] = ACTIONS(4464), [sym_shared] = ACTIONS(4464), [sym_static] = ACTIONS(4464), [sym_struct] = ACTIONS(4464), [sym_synchronized] = ACTIONS(4464), [sym_template] = ACTIONS(4464), [sym_typeof] = ACTIONS(4464), [sym_union] = ACTIONS(4464), [sym_unittest] = ACTIONS(4464), [sym_version] = ACTIONS(4464), [sym_while] = ACTIONS(4464), [sym_gshared] = ACTIONS(4464), [sym_traits] = ACTIONS(4464), [sym_vector] = ACTIONS(4464), [sym_void] = ACTIONS(4464), [sym_directive] = ACTIONS(3), }, [2472] = { [sym_identifier] = ACTIONS(4472), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4474), [anon_sym_SEMI] = ACTIONS(4474), [anon_sym_TILDE] = ACTIONS(4474), [anon_sym_AT] = ACTIONS(4474), [sym_bool] = ACTIONS(4472), [sym_byte] = ACTIONS(4472), [sym_ubyte] = ACTIONS(4472), [sym_char] = ACTIONS(4472), [sym_short] = ACTIONS(4472), [sym_ushort] = ACTIONS(4472), [sym_int] = ACTIONS(4472), [sym_uint] = ACTIONS(4472), [sym_long] = ACTIONS(4472), [sym_ulong] = ACTIONS(4472), [sym_cent] = ACTIONS(4472), [sym_ucent] = ACTIONS(4472), [sym_wchar] = ACTIONS(4472), [sym_dchar] = ACTIONS(4472), [sym_float] = ACTIONS(4472), [sym_double] = ACTIONS(4472), [sym_real] = ACTIONS(4472), [sym_ifloat] = ACTIONS(4472), [sym_idouble] = ACTIONS(4472), [sym_ireal] = ACTIONS(4472), [sym_cfloat] = ACTIONS(4472), [sym_cdouble] = ACTIONS(4472), [sym_creal] = ACTIONS(4472), [sym_size_t] = ACTIONS(4472), [sym_ptrdiff_t] = ACTIONS(4472), [sym_string] = ACTIONS(4472), [sym_cstring] = ACTIONS(4472), [sym_dstring] = ACTIONS(4472), [sym_wstring] = ACTIONS(4472), [sym_noreturn] = ACTIONS(4472), [sym_this] = ACTIONS(4472), [sym_abstract] = ACTIONS(4472), [sym_alias] = ACTIONS(4472), [sym_align] = ACTIONS(4472), [sym_auto] = ACTIONS(4472), [sym_catch] = ACTIONS(4472), [sym_class] = ACTIONS(4472), [sym_const] = ACTIONS(4472), [sym_debug] = ACTIONS(4472), [sym_deprecated] = ACTIONS(4472), [sym_else] = ACTIONS(4472), [sym_enum] = ACTIONS(4472), [sym_export] = ACTIONS(4472), [sym_extern] = ACTIONS(4472), [sym_final] = ACTIONS(4472), [sym_finally] = ACTIONS(4472), [sym_immutable] = ACTIONS(4472), [sym_import] = ACTIONS(4472), [sym_inout] = ACTIONS(4472), [sym_interface] = ACTIONS(4472), [sym_invariant] = ACTIONS(4472), [sym_mixin] = ACTIONS(4472), [sym_nothrow] = ACTIONS(4472), [sym_override] = ACTIONS(4472), [sym_package] = ACTIONS(4472), [sym_pragma] = ACTIONS(4472), [sym_private] = ACTIONS(4472), [sym_protected] = ACTIONS(4472), [sym_public] = ACTIONS(4472), [sym_pure] = ACTIONS(4472), [sym_ref] = ACTIONS(4472), [sym_return] = ACTIONS(4472), [sym_scope] = ACTIONS(4472), [sym_shared] = ACTIONS(4472), [sym_static] = ACTIONS(4472), [sym_struct] = ACTIONS(4472), [sym_synchronized] = ACTIONS(4472), [sym_template] = ACTIONS(4472), [sym_typeof] = ACTIONS(4472), [sym_union] = ACTIONS(4472), [sym_unittest] = ACTIONS(4472), [sym_version] = ACTIONS(4472), [sym_while] = ACTIONS(4472), [sym_gshared] = ACTIONS(4472), [sym_traits] = ACTIONS(4472), [sym_vector] = ACTIONS(4472), [sym_void] = ACTIONS(4472), [sym_directive] = ACTIONS(3), }, [2473] = { [sym_identifier] = ACTIONS(4496), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4498), [anon_sym_SEMI] = ACTIONS(4498), [anon_sym_TILDE] = ACTIONS(4498), [anon_sym_AT] = ACTIONS(4498), [sym_bool] = ACTIONS(4496), [sym_byte] = ACTIONS(4496), [sym_ubyte] = ACTIONS(4496), [sym_char] = ACTIONS(4496), [sym_short] = ACTIONS(4496), [sym_ushort] = ACTIONS(4496), [sym_int] = ACTIONS(4496), [sym_uint] = ACTIONS(4496), [sym_long] = ACTIONS(4496), [sym_ulong] = ACTIONS(4496), [sym_cent] = ACTIONS(4496), [sym_ucent] = ACTIONS(4496), [sym_wchar] = ACTIONS(4496), [sym_dchar] = ACTIONS(4496), [sym_float] = ACTIONS(4496), [sym_double] = ACTIONS(4496), [sym_real] = ACTIONS(4496), [sym_ifloat] = ACTIONS(4496), [sym_idouble] = ACTIONS(4496), [sym_ireal] = ACTIONS(4496), [sym_cfloat] = ACTIONS(4496), [sym_cdouble] = ACTIONS(4496), [sym_creal] = ACTIONS(4496), [sym_size_t] = ACTIONS(4496), [sym_ptrdiff_t] = ACTIONS(4496), [sym_string] = ACTIONS(4496), [sym_cstring] = ACTIONS(4496), [sym_dstring] = ACTIONS(4496), [sym_wstring] = ACTIONS(4496), [sym_noreturn] = ACTIONS(4496), [sym_this] = ACTIONS(4496), [sym_abstract] = ACTIONS(4496), [sym_alias] = ACTIONS(4496), [sym_align] = ACTIONS(4496), [sym_auto] = ACTIONS(4496), [sym_catch] = ACTIONS(4496), [sym_class] = ACTIONS(4496), [sym_const] = ACTIONS(4496), [sym_debug] = ACTIONS(4496), [sym_deprecated] = ACTIONS(4496), [sym_else] = ACTIONS(4496), [sym_enum] = ACTIONS(4496), [sym_export] = ACTIONS(4496), [sym_extern] = ACTIONS(4496), [sym_final] = ACTIONS(4496), [sym_finally] = ACTIONS(4496), [sym_immutable] = ACTIONS(4496), [sym_import] = ACTIONS(4496), [sym_inout] = ACTIONS(4496), [sym_interface] = ACTIONS(4496), [sym_invariant] = ACTIONS(4496), [sym_mixin] = ACTIONS(4496), [sym_nothrow] = ACTIONS(4496), [sym_override] = ACTIONS(4496), [sym_package] = ACTIONS(4496), [sym_pragma] = ACTIONS(4496), [sym_private] = ACTIONS(4496), [sym_protected] = ACTIONS(4496), [sym_public] = ACTIONS(4496), [sym_pure] = ACTIONS(4496), [sym_ref] = ACTIONS(4496), [sym_return] = ACTIONS(4496), [sym_scope] = ACTIONS(4496), [sym_shared] = ACTIONS(4496), [sym_static] = ACTIONS(4496), [sym_struct] = ACTIONS(4496), [sym_synchronized] = ACTIONS(4496), [sym_template] = ACTIONS(4496), [sym_typeof] = ACTIONS(4496), [sym_union] = ACTIONS(4496), [sym_unittest] = ACTIONS(4496), [sym_version] = ACTIONS(4496), [sym_while] = ACTIONS(4496), [sym_gshared] = ACTIONS(4496), [sym_traits] = ACTIONS(4496), [sym_vector] = ACTIONS(4496), [sym_void] = ACTIONS(4496), [sym_directive] = ACTIONS(3), }, [2474] = { [sym_identifier] = ACTIONS(4500), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4502), [anon_sym_SEMI] = ACTIONS(4502), [anon_sym_TILDE] = ACTIONS(4502), [anon_sym_AT] = ACTIONS(4502), [sym_bool] = ACTIONS(4500), [sym_byte] = ACTIONS(4500), [sym_ubyte] = ACTIONS(4500), [sym_char] = ACTIONS(4500), [sym_short] = ACTIONS(4500), [sym_ushort] = ACTIONS(4500), [sym_int] = ACTIONS(4500), [sym_uint] = ACTIONS(4500), [sym_long] = ACTIONS(4500), [sym_ulong] = ACTIONS(4500), [sym_cent] = ACTIONS(4500), [sym_ucent] = ACTIONS(4500), [sym_wchar] = ACTIONS(4500), [sym_dchar] = ACTIONS(4500), [sym_float] = ACTIONS(4500), [sym_double] = ACTIONS(4500), [sym_real] = ACTIONS(4500), [sym_ifloat] = ACTIONS(4500), [sym_idouble] = ACTIONS(4500), [sym_ireal] = ACTIONS(4500), [sym_cfloat] = ACTIONS(4500), [sym_cdouble] = ACTIONS(4500), [sym_creal] = ACTIONS(4500), [sym_size_t] = ACTIONS(4500), [sym_ptrdiff_t] = ACTIONS(4500), [sym_string] = ACTIONS(4500), [sym_cstring] = ACTIONS(4500), [sym_dstring] = ACTIONS(4500), [sym_wstring] = ACTIONS(4500), [sym_noreturn] = ACTIONS(4500), [sym_this] = ACTIONS(4500), [sym_abstract] = ACTIONS(4500), [sym_alias] = ACTIONS(4500), [sym_align] = ACTIONS(4500), [sym_auto] = ACTIONS(4500), [sym_catch] = ACTIONS(4500), [sym_class] = ACTIONS(4500), [sym_const] = ACTIONS(4500), [sym_debug] = ACTIONS(4500), [sym_deprecated] = ACTIONS(4500), [sym_else] = ACTIONS(4500), [sym_enum] = ACTIONS(4500), [sym_export] = ACTIONS(4500), [sym_extern] = ACTIONS(4500), [sym_final] = ACTIONS(4500), [sym_finally] = ACTIONS(4500), [sym_immutable] = ACTIONS(4500), [sym_import] = ACTIONS(4500), [sym_inout] = ACTIONS(4500), [sym_interface] = ACTIONS(4500), [sym_invariant] = ACTIONS(4500), [sym_mixin] = ACTIONS(4500), [sym_nothrow] = ACTIONS(4500), [sym_override] = ACTIONS(4500), [sym_package] = ACTIONS(4500), [sym_pragma] = ACTIONS(4500), [sym_private] = ACTIONS(4500), [sym_protected] = ACTIONS(4500), [sym_public] = ACTIONS(4500), [sym_pure] = ACTIONS(4500), [sym_ref] = ACTIONS(4500), [sym_return] = ACTIONS(4500), [sym_scope] = ACTIONS(4500), [sym_shared] = ACTIONS(4500), [sym_static] = ACTIONS(4500), [sym_struct] = ACTIONS(4500), [sym_synchronized] = ACTIONS(4500), [sym_template] = ACTIONS(4500), [sym_typeof] = ACTIONS(4500), [sym_union] = ACTIONS(4500), [sym_unittest] = ACTIONS(4500), [sym_version] = ACTIONS(4500), [sym_while] = ACTIONS(4500), [sym_gshared] = ACTIONS(4500), [sym_traits] = ACTIONS(4500), [sym_vector] = ACTIONS(4500), [sym_void] = ACTIONS(4500), [sym_directive] = ACTIONS(3), }, [2475] = { [sym_identifier] = ACTIONS(4512), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4514), [anon_sym_SEMI] = ACTIONS(4514), [anon_sym_TILDE] = ACTIONS(4514), [anon_sym_AT] = ACTIONS(4514), [sym_bool] = ACTIONS(4512), [sym_byte] = ACTIONS(4512), [sym_ubyte] = ACTIONS(4512), [sym_char] = ACTIONS(4512), [sym_short] = ACTIONS(4512), [sym_ushort] = ACTIONS(4512), [sym_int] = ACTIONS(4512), [sym_uint] = ACTIONS(4512), [sym_long] = ACTIONS(4512), [sym_ulong] = ACTIONS(4512), [sym_cent] = ACTIONS(4512), [sym_ucent] = ACTIONS(4512), [sym_wchar] = ACTIONS(4512), [sym_dchar] = ACTIONS(4512), [sym_float] = ACTIONS(4512), [sym_double] = ACTIONS(4512), [sym_real] = ACTIONS(4512), [sym_ifloat] = ACTIONS(4512), [sym_idouble] = ACTIONS(4512), [sym_ireal] = ACTIONS(4512), [sym_cfloat] = ACTIONS(4512), [sym_cdouble] = ACTIONS(4512), [sym_creal] = ACTIONS(4512), [sym_size_t] = ACTIONS(4512), [sym_ptrdiff_t] = ACTIONS(4512), [sym_string] = ACTIONS(4512), [sym_cstring] = ACTIONS(4512), [sym_dstring] = ACTIONS(4512), [sym_wstring] = ACTIONS(4512), [sym_noreturn] = ACTIONS(4512), [sym_this] = ACTIONS(4512), [sym_abstract] = ACTIONS(4512), [sym_alias] = ACTIONS(4512), [sym_align] = ACTIONS(4512), [sym_auto] = ACTIONS(4512), [sym_catch] = ACTIONS(4512), [sym_class] = ACTIONS(4512), [sym_const] = ACTIONS(4512), [sym_debug] = ACTIONS(4512), [sym_deprecated] = ACTIONS(4512), [sym_else] = ACTIONS(4512), [sym_enum] = ACTIONS(4512), [sym_export] = ACTIONS(4512), [sym_extern] = ACTIONS(4512), [sym_final] = ACTIONS(4512), [sym_finally] = ACTIONS(4512), [sym_immutable] = ACTIONS(4512), [sym_import] = ACTIONS(4512), [sym_inout] = ACTIONS(4512), [sym_interface] = ACTIONS(4512), [sym_invariant] = ACTIONS(4512), [sym_mixin] = ACTIONS(4512), [sym_nothrow] = ACTIONS(4512), [sym_override] = ACTIONS(4512), [sym_package] = ACTIONS(4512), [sym_pragma] = ACTIONS(4512), [sym_private] = ACTIONS(4512), [sym_protected] = ACTIONS(4512), [sym_public] = ACTIONS(4512), [sym_pure] = ACTIONS(4512), [sym_ref] = ACTIONS(4512), [sym_return] = ACTIONS(4512), [sym_scope] = ACTIONS(4512), [sym_shared] = ACTIONS(4512), [sym_static] = ACTIONS(4512), [sym_struct] = ACTIONS(4512), [sym_synchronized] = ACTIONS(4512), [sym_template] = ACTIONS(4512), [sym_typeof] = ACTIONS(4512), [sym_union] = ACTIONS(4512), [sym_unittest] = ACTIONS(4512), [sym_version] = ACTIONS(4512), [sym_while] = ACTIONS(4512), [sym_gshared] = ACTIONS(4512), [sym_traits] = ACTIONS(4512), [sym_vector] = ACTIONS(4512), [sym_void] = ACTIONS(4512), [sym_directive] = ACTIONS(3), }, [2476] = { [sym_identifier] = ACTIONS(4520), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4522), [anon_sym_SEMI] = ACTIONS(4522), [anon_sym_TILDE] = ACTIONS(4522), [anon_sym_AT] = ACTIONS(4522), [sym_bool] = ACTIONS(4520), [sym_byte] = ACTIONS(4520), [sym_ubyte] = ACTIONS(4520), [sym_char] = ACTIONS(4520), [sym_short] = ACTIONS(4520), [sym_ushort] = ACTIONS(4520), [sym_int] = ACTIONS(4520), [sym_uint] = ACTIONS(4520), [sym_long] = ACTIONS(4520), [sym_ulong] = ACTIONS(4520), [sym_cent] = ACTIONS(4520), [sym_ucent] = ACTIONS(4520), [sym_wchar] = ACTIONS(4520), [sym_dchar] = ACTIONS(4520), [sym_float] = ACTIONS(4520), [sym_double] = ACTIONS(4520), [sym_real] = ACTIONS(4520), [sym_ifloat] = ACTIONS(4520), [sym_idouble] = ACTIONS(4520), [sym_ireal] = ACTIONS(4520), [sym_cfloat] = ACTIONS(4520), [sym_cdouble] = ACTIONS(4520), [sym_creal] = ACTIONS(4520), [sym_size_t] = ACTIONS(4520), [sym_ptrdiff_t] = ACTIONS(4520), [sym_string] = ACTIONS(4520), [sym_cstring] = ACTIONS(4520), [sym_dstring] = ACTIONS(4520), [sym_wstring] = ACTIONS(4520), [sym_noreturn] = ACTIONS(4520), [sym_this] = ACTIONS(4520), [sym_abstract] = ACTIONS(4520), [sym_alias] = ACTIONS(4520), [sym_align] = ACTIONS(4520), [sym_auto] = ACTIONS(4520), [sym_catch] = ACTIONS(4520), [sym_class] = ACTIONS(4520), [sym_const] = ACTIONS(4520), [sym_debug] = ACTIONS(4520), [sym_deprecated] = ACTIONS(4520), [sym_else] = ACTIONS(4520), [sym_enum] = ACTIONS(4520), [sym_export] = ACTIONS(4520), [sym_extern] = ACTIONS(4520), [sym_final] = ACTIONS(4520), [sym_finally] = ACTIONS(4520), [sym_immutable] = ACTIONS(4520), [sym_import] = ACTIONS(4520), [sym_inout] = ACTIONS(4520), [sym_interface] = ACTIONS(4520), [sym_invariant] = ACTIONS(4520), [sym_mixin] = ACTIONS(4520), [sym_nothrow] = ACTIONS(4520), [sym_override] = ACTIONS(4520), [sym_package] = ACTIONS(4520), [sym_pragma] = ACTIONS(4520), [sym_private] = ACTIONS(4520), [sym_protected] = ACTIONS(4520), [sym_public] = ACTIONS(4520), [sym_pure] = ACTIONS(4520), [sym_ref] = ACTIONS(4520), [sym_return] = ACTIONS(4520), [sym_scope] = ACTIONS(4520), [sym_shared] = ACTIONS(4520), [sym_static] = ACTIONS(4520), [sym_struct] = ACTIONS(4520), [sym_synchronized] = ACTIONS(4520), [sym_template] = ACTIONS(4520), [sym_typeof] = ACTIONS(4520), [sym_union] = ACTIONS(4520), [sym_unittest] = ACTIONS(4520), [sym_version] = ACTIONS(4520), [sym_while] = ACTIONS(4520), [sym_gshared] = ACTIONS(4520), [sym_traits] = ACTIONS(4520), [sym_vector] = ACTIONS(4520), [sym_void] = ACTIONS(4520), [sym_directive] = ACTIONS(3), }, [2477] = { [ts_builtin_sym_end] = ACTIONS(4894), [sym_identifier] = ACTIONS(4892), [sym_end_file] = ACTIONS(4892), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4894), [anon_sym_SEMI] = ACTIONS(4894), [anon_sym_TILDE] = ACTIONS(4894), [anon_sym_AT] = ACTIONS(4894), [sym_bool] = ACTIONS(4892), [sym_byte] = ACTIONS(4892), [sym_ubyte] = ACTIONS(4892), [sym_char] = ACTIONS(4892), [sym_short] = ACTIONS(4892), [sym_ushort] = ACTIONS(4892), [sym_int] = ACTIONS(4892), [sym_uint] = ACTIONS(4892), [sym_long] = ACTIONS(4892), [sym_ulong] = ACTIONS(4892), [sym_cent] = ACTIONS(4892), [sym_ucent] = ACTIONS(4892), [sym_wchar] = ACTIONS(4892), [sym_dchar] = ACTIONS(4892), [sym_float] = ACTIONS(4892), [sym_double] = ACTIONS(4892), [sym_real] = ACTIONS(4892), [sym_ifloat] = ACTIONS(4892), [sym_idouble] = ACTIONS(4892), [sym_ireal] = ACTIONS(4892), [sym_cfloat] = ACTIONS(4892), [sym_cdouble] = ACTIONS(4892), [sym_creal] = ACTIONS(4892), [sym_size_t] = ACTIONS(4892), [sym_ptrdiff_t] = ACTIONS(4892), [sym_string] = ACTIONS(4892), [sym_cstring] = ACTIONS(4892), [sym_dstring] = ACTIONS(4892), [sym_wstring] = ACTIONS(4892), [sym_noreturn] = ACTIONS(4892), [sym_this] = ACTIONS(4892), [sym_abstract] = ACTIONS(4892), [sym_alias] = ACTIONS(4892), [sym_align] = ACTIONS(4892), [sym_auto] = ACTIONS(4892), [sym_class] = ACTIONS(4892), [sym_const] = ACTIONS(4892), [sym_debug] = ACTIONS(4892), [sym_deprecated] = ACTIONS(4892), [sym_else] = ACTIONS(4892), [sym_enum] = ACTIONS(4892), [sym_export] = ACTIONS(4892), [sym_extern] = ACTIONS(4892), [sym_final] = ACTIONS(4892), [sym_immutable] = ACTIONS(4892), [sym_import] = ACTIONS(4892), [sym_inout] = ACTIONS(4892), [sym_interface] = ACTIONS(4892), [sym_invariant] = ACTIONS(4892), [sym_mixin] = ACTIONS(4892), [sym_nothrow] = ACTIONS(4892), [sym_override] = ACTIONS(4892), [sym_package] = ACTIONS(4892), [sym_pragma] = ACTIONS(4892), [sym_private] = ACTIONS(4892), [sym_protected] = ACTIONS(4892), [sym_public] = ACTIONS(4892), [sym_pure] = ACTIONS(4892), [sym_ref] = ACTIONS(4892), [sym_return] = ACTIONS(4892), [sym_scope] = ACTIONS(4892), [sym_shared] = ACTIONS(4892), [sym_static] = ACTIONS(4892), [sym_struct] = ACTIONS(4892), [sym_synchronized] = ACTIONS(4892), [sym_template] = ACTIONS(4892), [sym_typeof] = ACTIONS(4892), [sym_union] = ACTIONS(4892), [sym_unittest] = ACTIONS(4892), [sym_version] = ACTIONS(4892), [sym_while] = ACTIONS(4892), [sym_gshared] = ACTIONS(4892), [sym_traits] = ACTIONS(4892), [sym_vector] = ACTIONS(4892), [sym_void] = ACTIONS(4892), [sym_directive] = ACTIONS(3), }, [2478] = { [sym_identifier] = ACTIONS(4534), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4536), [anon_sym_SEMI] = ACTIONS(4536), [anon_sym_TILDE] = ACTIONS(4536), [anon_sym_AT] = ACTIONS(4536), [sym_bool] = ACTIONS(4534), [sym_byte] = ACTIONS(4534), [sym_ubyte] = ACTIONS(4534), [sym_char] = ACTIONS(4534), [sym_short] = ACTIONS(4534), [sym_ushort] = ACTIONS(4534), [sym_int] = ACTIONS(4534), [sym_uint] = ACTIONS(4534), [sym_long] = ACTIONS(4534), [sym_ulong] = ACTIONS(4534), [sym_cent] = ACTIONS(4534), [sym_ucent] = ACTIONS(4534), [sym_wchar] = ACTIONS(4534), [sym_dchar] = ACTIONS(4534), [sym_float] = ACTIONS(4534), [sym_double] = ACTIONS(4534), [sym_real] = ACTIONS(4534), [sym_ifloat] = ACTIONS(4534), [sym_idouble] = ACTIONS(4534), [sym_ireal] = ACTIONS(4534), [sym_cfloat] = ACTIONS(4534), [sym_cdouble] = ACTIONS(4534), [sym_creal] = ACTIONS(4534), [sym_size_t] = ACTIONS(4534), [sym_ptrdiff_t] = ACTIONS(4534), [sym_string] = ACTIONS(4534), [sym_cstring] = ACTIONS(4534), [sym_dstring] = ACTIONS(4534), [sym_wstring] = ACTIONS(4534), [sym_noreturn] = ACTIONS(4534), [sym_this] = ACTIONS(4534), [sym_abstract] = ACTIONS(4534), [sym_alias] = ACTIONS(4534), [sym_align] = ACTIONS(4534), [sym_auto] = ACTIONS(4534), [sym_catch] = ACTIONS(4534), [sym_class] = ACTIONS(4534), [sym_const] = ACTIONS(4534), [sym_debug] = ACTIONS(4534), [sym_deprecated] = ACTIONS(4534), [sym_else] = ACTIONS(4534), [sym_enum] = ACTIONS(4534), [sym_export] = ACTIONS(4534), [sym_extern] = ACTIONS(4534), [sym_final] = ACTIONS(4534), [sym_finally] = ACTIONS(4534), [sym_immutable] = ACTIONS(4534), [sym_import] = ACTIONS(4534), [sym_inout] = ACTIONS(4534), [sym_interface] = ACTIONS(4534), [sym_invariant] = ACTIONS(4534), [sym_mixin] = ACTIONS(4534), [sym_nothrow] = ACTIONS(4534), [sym_override] = ACTIONS(4534), [sym_package] = ACTIONS(4534), [sym_pragma] = ACTIONS(4534), [sym_private] = ACTIONS(4534), [sym_protected] = ACTIONS(4534), [sym_public] = ACTIONS(4534), [sym_pure] = ACTIONS(4534), [sym_ref] = ACTIONS(4534), [sym_return] = ACTIONS(4534), [sym_scope] = ACTIONS(4534), [sym_shared] = ACTIONS(4534), [sym_static] = ACTIONS(4534), [sym_struct] = ACTIONS(4534), [sym_synchronized] = ACTIONS(4534), [sym_template] = ACTIONS(4534), [sym_typeof] = ACTIONS(4534), [sym_union] = ACTIONS(4534), [sym_unittest] = ACTIONS(4534), [sym_version] = ACTIONS(4534), [sym_while] = ACTIONS(4534), [sym_gshared] = ACTIONS(4534), [sym_traits] = ACTIONS(4534), [sym_vector] = ACTIONS(4534), [sym_void] = ACTIONS(4534), [sym_directive] = ACTIONS(3), }, [2479] = { [sym_identifier] = ACTIONS(4538), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4540), [anon_sym_SEMI] = ACTIONS(4540), [anon_sym_TILDE] = ACTIONS(4540), [anon_sym_AT] = ACTIONS(4540), [sym_bool] = ACTIONS(4538), [sym_byte] = ACTIONS(4538), [sym_ubyte] = ACTIONS(4538), [sym_char] = ACTIONS(4538), [sym_short] = ACTIONS(4538), [sym_ushort] = ACTIONS(4538), [sym_int] = ACTIONS(4538), [sym_uint] = ACTIONS(4538), [sym_long] = ACTIONS(4538), [sym_ulong] = ACTIONS(4538), [sym_cent] = ACTIONS(4538), [sym_ucent] = ACTIONS(4538), [sym_wchar] = ACTIONS(4538), [sym_dchar] = ACTIONS(4538), [sym_float] = ACTIONS(4538), [sym_double] = ACTIONS(4538), [sym_real] = ACTIONS(4538), [sym_ifloat] = ACTIONS(4538), [sym_idouble] = ACTIONS(4538), [sym_ireal] = ACTIONS(4538), [sym_cfloat] = ACTIONS(4538), [sym_cdouble] = ACTIONS(4538), [sym_creal] = ACTIONS(4538), [sym_size_t] = ACTIONS(4538), [sym_ptrdiff_t] = ACTIONS(4538), [sym_string] = ACTIONS(4538), [sym_cstring] = ACTIONS(4538), [sym_dstring] = ACTIONS(4538), [sym_wstring] = ACTIONS(4538), [sym_noreturn] = ACTIONS(4538), [sym_this] = ACTIONS(4538), [sym_abstract] = ACTIONS(4538), [sym_alias] = ACTIONS(4538), [sym_align] = ACTIONS(4538), [sym_auto] = ACTIONS(4538), [sym_catch] = ACTIONS(4538), [sym_class] = ACTIONS(4538), [sym_const] = ACTIONS(4538), [sym_debug] = ACTIONS(4538), [sym_deprecated] = ACTIONS(4538), [sym_else] = ACTIONS(4538), [sym_enum] = ACTIONS(4538), [sym_export] = ACTIONS(4538), [sym_extern] = ACTIONS(4538), [sym_final] = ACTIONS(4538), [sym_finally] = ACTIONS(4538), [sym_immutable] = ACTIONS(4538), [sym_import] = ACTIONS(4538), [sym_inout] = ACTIONS(4538), [sym_interface] = ACTIONS(4538), [sym_invariant] = ACTIONS(4538), [sym_mixin] = ACTIONS(4538), [sym_nothrow] = ACTIONS(4538), [sym_override] = ACTIONS(4538), [sym_package] = ACTIONS(4538), [sym_pragma] = ACTIONS(4538), [sym_private] = ACTIONS(4538), [sym_protected] = ACTIONS(4538), [sym_public] = ACTIONS(4538), [sym_pure] = ACTIONS(4538), [sym_ref] = ACTIONS(4538), [sym_return] = ACTIONS(4538), [sym_scope] = ACTIONS(4538), [sym_shared] = ACTIONS(4538), [sym_static] = ACTIONS(4538), [sym_struct] = ACTIONS(4538), [sym_synchronized] = ACTIONS(4538), [sym_template] = ACTIONS(4538), [sym_typeof] = ACTIONS(4538), [sym_union] = ACTIONS(4538), [sym_unittest] = ACTIONS(4538), [sym_version] = ACTIONS(4538), [sym_while] = ACTIONS(4538), [sym_gshared] = ACTIONS(4538), [sym_traits] = ACTIONS(4538), [sym_vector] = ACTIONS(4538), [sym_void] = ACTIONS(4538), [sym_directive] = ACTIONS(3), }, [2480] = { [ts_builtin_sym_end] = ACTIONS(2663), [sym_identifier] = ACTIONS(2665), [sym_end_file] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [sym_directive] = ACTIONS(3), }, [2481] = { [sym_identifier] = ACTIONS(4546), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4548), [anon_sym_SEMI] = ACTIONS(4548), [anon_sym_TILDE] = ACTIONS(4548), [anon_sym_AT] = ACTIONS(4548), [sym_bool] = ACTIONS(4546), [sym_byte] = ACTIONS(4546), [sym_ubyte] = ACTIONS(4546), [sym_char] = ACTIONS(4546), [sym_short] = ACTIONS(4546), [sym_ushort] = ACTIONS(4546), [sym_int] = ACTIONS(4546), [sym_uint] = ACTIONS(4546), [sym_long] = ACTIONS(4546), [sym_ulong] = ACTIONS(4546), [sym_cent] = ACTIONS(4546), [sym_ucent] = ACTIONS(4546), [sym_wchar] = ACTIONS(4546), [sym_dchar] = ACTIONS(4546), [sym_float] = ACTIONS(4546), [sym_double] = ACTIONS(4546), [sym_real] = ACTIONS(4546), [sym_ifloat] = ACTIONS(4546), [sym_idouble] = ACTIONS(4546), [sym_ireal] = ACTIONS(4546), [sym_cfloat] = ACTIONS(4546), [sym_cdouble] = ACTIONS(4546), [sym_creal] = ACTIONS(4546), [sym_size_t] = ACTIONS(4546), [sym_ptrdiff_t] = ACTIONS(4546), [sym_string] = ACTIONS(4546), [sym_cstring] = ACTIONS(4546), [sym_dstring] = ACTIONS(4546), [sym_wstring] = ACTIONS(4546), [sym_noreturn] = ACTIONS(4546), [sym_this] = ACTIONS(4546), [sym_abstract] = ACTIONS(4546), [sym_alias] = ACTIONS(4546), [sym_align] = ACTIONS(4546), [sym_auto] = ACTIONS(4546), [sym_catch] = ACTIONS(4546), [sym_class] = ACTIONS(4546), [sym_const] = ACTIONS(4546), [sym_debug] = ACTIONS(4546), [sym_deprecated] = ACTIONS(4546), [sym_else] = ACTIONS(4546), [sym_enum] = ACTIONS(4546), [sym_export] = ACTIONS(4546), [sym_extern] = ACTIONS(4546), [sym_final] = ACTIONS(4546), [sym_finally] = ACTIONS(4546), [sym_immutable] = ACTIONS(4546), [sym_import] = ACTIONS(4546), [sym_inout] = ACTIONS(4546), [sym_interface] = ACTIONS(4546), [sym_invariant] = ACTIONS(4546), [sym_mixin] = ACTIONS(4546), [sym_nothrow] = ACTIONS(4546), [sym_override] = ACTIONS(4546), [sym_package] = ACTIONS(4546), [sym_pragma] = ACTIONS(4546), [sym_private] = ACTIONS(4546), [sym_protected] = ACTIONS(4546), [sym_public] = ACTIONS(4546), [sym_pure] = ACTIONS(4546), [sym_ref] = ACTIONS(4546), [sym_return] = ACTIONS(4546), [sym_scope] = ACTIONS(4546), [sym_shared] = ACTIONS(4546), [sym_static] = ACTIONS(4546), [sym_struct] = ACTIONS(4546), [sym_synchronized] = ACTIONS(4546), [sym_template] = ACTIONS(4546), [sym_typeof] = ACTIONS(4546), [sym_union] = ACTIONS(4546), [sym_unittest] = ACTIONS(4546), [sym_version] = ACTIONS(4546), [sym_while] = ACTIONS(4546), [sym_gshared] = ACTIONS(4546), [sym_traits] = ACTIONS(4546), [sym_vector] = ACTIONS(4546), [sym_void] = ACTIONS(4546), [sym_directive] = ACTIONS(3), }, [2482] = { [sym_identifier] = ACTIONS(4562), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4564), [anon_sym_SEMI] = ACTIONS(4564), [anon_sym_TILDE] = ACTIONS(4564), [anon_sym_AT] = ACTIONS(4564), [sym_bool] = ACTIONS(4562), [sym_byte] = ACTIONS(4562), [sym_ubyte] = ACTIONS(4562), [sym_char] = ACTIONS(4562), [sym_short] = ACTIONS(4562), [sym_ushort] = ACTIONS(4562), [sym_int] = ACTIONS(4562), [sym_uint] = ACTIONS(4562), [sym_long] = ACTIONS(4562), [sym_ulong] = ACTIONS(4562), [sym_cent] = ACTIONS(4562), [sym_ucent] = ACTIONS(4562), [sym_wchar] = ACTIONS(4562), [sym_dchar] = ACTIONS(4562), [sym_float] = ACTIONS(4562), [sym_double] = ACTIONS(4562), [sym_real] = ACTIONS(4562), [sym_ifloat] = ACTIONS(4562), [sym_idouble] = ACTIONS(4562), [sym_ireal] = ACTIONS(4562), [sym_cfloat] = ACTIONS(4562), [sym_cdouble] = ACTIONS(4562), [sym_creal] = ACTIONS(4562), [sym_size_t] = ACTIONS(4562), [sym_ptrdiff_t] = ACTIONS(4562), [sym_string] = ACTIONS(4562), [sym_cstring] = ACTIONS(4562), [sym_dstring] = ACTIONS(4562), [sym_wstring] = ACTIONS(4562), [sym_noreturn] = ACTIONS(4562), [sym_this] = ACTIONS(4562), [sym_abstract] = ACTIONS(4562), [sym_alias] = ACTIONS(4562), [sym_align] = ACTIONS(4562), [sym_auto] = ACTIONS(4562), [sym_catch] = ACTIONS(4562), [sym_class] = ACTIONS(4562), [sym_const] = ACTIONS(4562), [sym_debug] = ACTIONS(4562), [sym_deprecated] = ACTIONS(4562), [sym_else] = ACTIONS(4562), [sym_enum] = ACTIONS(4562), [sym_export] = ACTIONS(4562), [sym_extern] = ACTIONS(4562), [sym_final] = ACTIONS(4562), [sym_finally] = ACTIONS(4562), [sym_immutable] = ACTIONS(4562), [sym_import] = ACTIONS(4562), [sym_inout] = ACTIONS(4562), [sym_interface] = ACTIONS(4562), [sym_invariant] = ACTIONS(4562), [sym_mixin] = ACTIONS(4562), [sym_nothrow] = ACTIONS(4562), [sym_override] = ACTIONS(4562), [sym_package] = ACTIONS(4562), [sym_pragma] = ACTIONS(4562), [sym_private] = ACTIONS(4562), [sym_protected] = ACTIONS(4562), [sym_public] = ACTIONS(4562), [sym_pure] = ACTIONS(4562), [sym_ref] = ACTIONS(4562), [sym_return] = ACTIONS(4562), [sym_scope] = ACTIONS(4562), [sym_shared] = ACTIONS(4562), [sym_static] = ACTIONS(4562), [sym_struct] = ACTIONS(4562), [sym_synchronized] = ACTIONS(4562), [sym_template] = ACTIONS(4562), [sym_typeof] = ACTIONS(4562), [sym_union] = ACTIONS(4562), [sym_unittest] = ACTIONS(4562), [sym_version] = ACTIONS(4562), [sym_while] = ACTIONS(4562), [sym_gshared] = ACTIONS(4562), [sym_traits] = ACTIONS(4562), [sym_vector] = ACTIONS(4562), [sym_void] = ACTIONS(4562), [sym_directive] = ACTIONS(3), }, [2483] = { [sym_identifier] = ACTIONS(4574), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4576), [anon_sym_SEMI] = ACTIONS(4576), [anon_sym_TILDE] = ACTIONS(4576), [anon_sym_AT] = ACTIONS(4576), [sym_bool] = ACTIONS(4574), [sym_byte] = ACTIONS(4574), [sym_ubyte] = ACTIONS(4574), [sym_char] = ACTIONS(4574), [sym_short] = ACTIONS(4574), [sym_ushort] = ACTIONS(4574), [sym_int] = ACTIONS(4574), [sym_uint] = ACTIONS(4574), [sym_long] = ACTIONS(4574), [sym_ulong] = ACTIONS(4574), [sym_cent] = ACTIONS(4574), [sym_ucent] = ACTIONS(4574), [sym_wchar] = ACTIONS(4574), [sym_dchar] = ACTIONS(4574), [sym_float] = ACTIONS(4574), [sym_double] = ACTIONS(4574), [sym_real] = ACTIONS(4574), [sym_ifloat] = ACTIONS(4574), [sym_idouble] = ACTIONS(4574), [sym_ireal] = ACTIONS(4574), [sym_cfloat] = ACTIONS(4574), [sym_cdouble] = ACTIONS(4574), [sym_creal] = ACTIONS(4574), [sym_size_t] = ACTIONS(4574), [sym_ptrdiff_t] = ACTIONS(4574), [sym_string] = ACTIONS(4574), [sym_cstring] = ACTIONS(4574), [sym_dstring] = ACTIONS(4574), [sym_wstring] = ACTIONS(4574), [sym_noreturn] = ACTIONS(4574), [sym_this] = ACTIONS(4574), [sym_abstract] = ACTIONS(4574), [sym_alias] = ACTIONS(4574), [sym_align] = ACTIONS(4574), [sym_auto] = ACTIONS(4574), [sym_catch] = ACTIONS(4574), [sym_class] = ACTIONS(4574), [sym_const] = ACTIONS(4574), [sym_debug] = ACTIONS(4574), [sym_deprecated] = ACTIONS(4574), [sym_else] = ACTIONS(4574), [sym_enum] = ACTIONS(4574), [sym_export] = ACTIONS(4574), [sym_extern] = ACTIONS(4574), [sym_final] = ACTIONS(4574), [sym_finally] = ACTIONS(4574), [sym_immutable] = ACTIONS(4574), [sym_import] = ACTIONS(4574), [sym_inout] = ACTIONS(4574), [sym_interface] = ACTIONS(4574), [sym_invariant] = ACTIONS(4574), [sym_mixin] = ACTIONS(4574), [sym_nothrow] = ACTIONS(4574), [sym_override] = ACTIONS(4574), [sym_package] = ACTIONS(4574), [sym_pragma] = ACTIONS(4574), [sym_private] = ACTIONS(4574), [sym_protected] = ACTIONS(4574), [sym_public] = ACTIONS(4574), [sym_pure] = ACTIONS(4574), [sym_ref] = ACTIONS(4574), [sym_return] = ACTIONS(4574), [sym_scope] = ACTIONS(4574), [sym_shared] = ACTIONS(4574), [sym_static] = ACTIONS(4574), [sym_struct] = ACTIONS(4574), [sym_synchronized] = ACTIONS(4574), [sym_template] = ACTIONS(4574), [sym_typeof] = ACTIONS(4574), [sym_union] = ACTIONS(4574), [sym_unittest] = ACTIONS(4574), [sym_version] = ACTIONS(4574), [sym_while] = ACTIONS(4574), [sym_gshared] = ACTIONS(4574), [sym_traits] = ACTIONS(4574), [sym_vector] = ACTIONS(4574), [sym_void] = ACTIONS(4574), [sym_directive] = ACTIONS(3), }, [2484] = { [ts_builtin_sym_end] = ACTIONS(4706), [sym_identifier] = ACTIONS(4704), [sym_end_file] = ACTIONS(4704), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4706), [anon_sym_SEMI] = ACTIONS(4706), [anon_sym_TILDE] = ACTIONS(4706), [anon_sym_AT] = ACTIONS(4706), [sym_bool] = ACTIONS(4704), [sym_byte] = ACTIONS(4704), [sym_ubyte] = ACTIONS(4704), [sym_char] = ACTIONS(4704), [sym_short] = ACTIONS(4704), [sym_ushort] = ACTIONS(4704), [sym_int] = ACTIONS(4704), [sym_uint] = ACTIONS(4704), [sym_long] = ACTIONS(4704), [sym_ulong] = ACTIONS(4704), [sym_cent] = ACTIONS(4704), [sym_ucent] = ACTIONS(4704), [sym_wchar] = ACTIONS(4704), [sym_dchar] = ACTIONS(4704), [sym_float] = ACTIONS(4704), [sym_double] = ACTIONS(4704), [sym_real] = ACTIONS(4704), [sym_ifloat] = ACTIONS(4704), [sym_idouble] = ACTIONS(4704), [sym_ireal] = ACTIONS(4704), [sym_cfloat] = ACTIONS(4704), [sym_cdouble] = ACTIONS(4704), [sym_creal] = ACTIONS(4704), [sym_size_t] = ACTIONS(4704), [sym_ptrdiff_t] = ACTIONS(4704), [sym_string] = ACTIONS(4704), [sym_cstring] = ACTIONS(4704), [sym_dstring] = ACTIONS(4704), [sym_wstring] = ACTIONS(4704), [sym_noreturn] = ACTIONS(4704), [sym_this] = ACTIONS(4704), [sym_abstract] = ACTIONS(4704), [sym_alias] = ACTIONS(4704), [sym_align] = ACTIONS(4704), [sym_auto] = ACTIONS(4704), [sym_class] = ACTIONS(4704), [sym_const] = ACTIONS(4704), [sym_debug] = ACTIONS(4704), [sym_deprecated] = ACTIONS(4704), [sym_else] = ACTIONS(4704), [sym_enum] = ACTIONS(4704), [sym_export] = ACTIONS(4704), [sym_extern] = ACTIONS(4704), [sym_final] = ACTIONS(4704), [sym_immutable] = ACTIONS(4704), [sym_import] = ACTIONS(4704), [sym_inout] = ACTIONS(4704), [sym_interface] = ACTIONS(4704), [sym_invariant] = ACTIONS(4704), [sym_mixin] = ACTIONS(4704), [sym_nothrow] = ACTIONS(4704), [sym_override] = ACTIONS(4704), [sym_package] = ACTIONS(4704), [sym_pragma] = ACTIONS(4704), [sym_private] = ACTIONS(4704), [sym_protected] = ACTIONS(4704), [sym_public] = ACTIONS(4704), [sym_pure] = ACTIONS(4704), [sym_ref] = ACTIONS(4704), [sym_return] = ACTIONS(4704), [sym_scope] = ACTIONS(4704), [sym_shared] = ACTIONS(4704), [sym_static] = ACTIONS(4704), [sym_struct] = ACTIONS(4704), [sym_synchronized] = ACTIONS(4704), [sym_template] = ACTIONS(4704), [sym_typeof] = ACTIONS(4704), [sym_union] = ACTIONS(4704), [sym_unittest] = ACTIONS(4704), [sym_version] = ACTIONS(4704), [sym_while] = ACTIONS(4704), [sym_gshared] = ACTIONS(4704), [sym_traits] = ACTIONS(4704), [sym_vector] = ACTIONS(4704), [sym_void] = ACTIONS(4704), [sym_directive] = ACTIONS(3), }, [2485] = { [ts_builtin_sym_end] = ACTIONS(4776), [sym_identifier] = ACTIONS(4774), [sym_end_file] = ACTIONS(4774), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4776), [anon_sym_SEMI] = ACTIONS(4776), [anon_sym_TILDE] = ACTIONS(4776), [anon_sym_AT] = ACTIONS(4776), [sym_bool] = ACTIONS(4774), [sym_byte] = ACTIONS(4774), [sym_ubyte] = ACTIONS(4774), [sym_char] = ACTIONS(4774), [sym_short] = ACTIONS(4774), [sym_ushort] = ACTIONS(4774), [sym_int] = ACTIONS(4774), [sym_uint] = ACTIONS(4774), [sym_long] = ACTIONS(4774), [sym_ulong] = ACTIONS(4774), [sym_cent] = ACTIONS(4774), [sym_ucent] = ACTIONS(4774), [sym_wchar] = ACTIONS(4774), [sym_dchar] = ACTIONS(4774), [sym_float] = ACTIONS(4774), [sym_double] = ACTIONS(4774), [sym_real] = ACTIONS(4774), [sym_ifloat] = ACTIONS(4774), [sym_idouble] = ACTIONS(4774), [sym_ireal] = ACTIONS(4774), [sym_cfloat] = ACTIONS(4774), [sym_cdouble] = ACTIONS(4774), [sym_creal] = ACTIONS(4774), [sym_size_t] = ACTIONS(4774), [sym_ptrdiff_t] = ACTIONS(4774), [sym_string] = ACTIONS(4774), [sym_cstring] = ACTIONS(4774), [sym_dstring] = ACTIONS(4774), [sym_wstring] = ACTIONS(4774), [sym_noreturn] = ACTIONS(4774), [sym_this] = ACTIONS(4774), [sym_abstract] = ACTIONS(4774), [sym_alias] = ACTIONS(4774), [sym_align] = ACTIONS(4774), [sym_auto] = ACTIONS(4774), [sym_class] = ACTIONS(4774), [sym_const] = ACTIONS(4774), [sym_debug] = ACTIONS(4774), [sym_deprecated] = ACTIONS(4774), [sym_else] = ACTIONS(4774), [sym_enum] = ACTIONS(4774), [sym_export] = ACTIONS(4774), [sym_extern] = ACTIONS(4774), [sym_final] = ACTIONS(4774), [sym_immutable] = ACTIONS(4774), [sym_import] = ACTIONS(4774), [sym_inout] = ACTIONS(4774), [sym_interface] = ACTIONS(4774), [sym_invariant] = ACTIONS(4774), [sym_mixin] = ACTIONS(4774), [sym_nothrow] = ACTIONS(4774), [sym_override] = ACTIONS(4774), [sym_package] = ACTIONS(4774), [sym_pragma] = ACTIONS(4774), [sym_private] = ACTIONS(4774), [sym_protected] = ACTIONS(4774), [sym_public] = ACTIONS(4774), [sym_pure] = ACTIONS(4774), [sym_ref] = ACTIONS(4774), [sym_return] = ACTIONS(4774), [sym_scope] = ACTIONS(4774), [sym_shared] = ACTIONS(4774), [sym_static] = ACTIONS(4774), [sym_struct] = ACTIONS(4774), [sym_synchronized] = ACTIONS(4774), [sym_template] = ACTIONS(4774), [sym_typeof] = ACTIONS(4774), [sym_union] = ACTIONS(4774), [sym_unittest] = ACTIONS(4774), [sym_version] = ACTIONS(4774), [sym_while] = ACTIONS(4774), [sym_gshared] = ACTIONS(4774), [sym_traits] = ACTIONS(4774), [sym_vector] = ACTIONS(4774), [sym_void] = ACTIONS(4774), [sym_directive] = ACTIONS(3), }, [2486] = { [sym_identifier] = ACTIONS(4418), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4420), [anon_sym_SEMI] = ACTIONS(4420), [anon_sym_TILDE] = ACTIONS(4420), [anon_sym_AT] = ACTIONS(4420), [sym_bool] = ACTIONS(4418), [sym_byte] = ACTIONS(4418), [sym_ubyte] = ACTIONS(4418), [sym_char] = ACTIONS(4418), [sym_short] = ACTIONS(4418), [sym_ushort] = ACTIONS(4418), [sym_int] = ACTIONS(4418), [sym_uint] = ACTIONS(4418), [sym_long] = ACTIONS(4418), [sym_ulong] = ACTIONS(4418), [sym_cent] = ACTIONS(4418), [sym_ucent] = ACTIONS(4418), [sym_wchar] = ACTIONS(4418), [sym_dchar] = ACTIONS(4418), [sym_float] = ACTIONS(4418), [sym_double] = ACTIONS(4418), [sym_real] = ACTIONS(4418), [sym_ifloat] = ACTIONS(4418), [sym_idouble] = ACTIONS(4418), [sym_ireal] = ACTIONS(4418), [sym_cfloat] = ACTIONS(4418), [sym_cdouble] = ACTIONS(4418), [sym_creal] = ACTIONS(4418), [sym_size_t] = ACTIONS(4418), [sym_ptrdiff_t] = ACTIONS(4418), [sym_string] = ACTIONS(4418), [sym_cstring] = ACTIONS(4418), [sym_dstring] = ACTIONS(4418), [sym_wstring] = ACTIONS(4418), [sym_noreturn] = ACTIONS(4418), [sym_this] = ACTIONS(4418), [sym_abstract] = ACTIONS(4418), [sym_alias] = ACTIONS(4418), [sym_align] = ACTIONS(4418), [sym_auto] = ACTIONS(4418), [sym_catch] = ACTIONS(4418), [sym_class] = ACTIONS(4418), [sym_const] = ACTIONS(4418), [sym_debug] = ACTIONS(4418), [sym_deprecated] = ACTIONS(4418), [sym_else] = ACTIONS(4418), [sym_enum] = ACTIONS(4418), [sym_export] = ACTIONS(4418), [sym_extern] = ACTIONS(4418), [sym_final] = ACTIONS(4418), [sym_finally] = ACTIONS(4418), [sym_immutable] = ACTIONS(4418), [sym_import] = ACTIONS(4418), [sym_inout] = ACTIONS(4418), [sym_interface] = ACTIONS(4418), [sym_invariant] = ACTIONS(4418), [sym_mixin] = ACTIONS(4418), [sym_nothrow] = ACTIONS(4418), [sym_override] = ACTIONS(4418), [sym_package] = ACTIONS(4418), [sym_pragma] = ACTIONS(4418), [sym_private] = ACTIONS(4418), [sym_protected] = ACTIONS(4418), [sym_public] = ACTIONS(4418), [sym_pure] = ACTIONS(4418), [sym_ref] = ACTIONS(4418), [sym_return] = ACTIONS(4418), [sym_scope] = ACTIONS(4418), [sym_shared] = ACTIONS(4418), [sym_static] = ACTIONS(4418), [sym_struct] = ACTIONS(4418), [sym_synchronized] = ACTIONS(4418), [sym_template] = ACTIONS(4418), [sym_typeof] = ACTIONS(4418), [sym_union] = ACTIONS(4418), [sym_unittest] = ACTIONS(4418), [sym_version] = ACTIONS(4418), [sym_while] = ACTIONS(4418), [sym_gshared] = ACTIONS(4418), [sym_traits] = ACTIONS(4418), [sym_vector] = ACTIONS(4418), [sym_void] = ACTIONS(4418), [sym_directive] = ACTIONS(3), }, [2487] = { [sym_identifier] = ACTIONS(4414), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4416), [anon_sym_SEMI] = ACTIONS(4416), [anon_sym_TILDE] = ACTIONS(4416), [anon_sym_AT] = ACTIONS(4416), [sym_bool] = ACTIONS(4414), [sym_byte] = ACTIONS(4414), [sym_ubyte] = ACTIONS(4414), [sym_char] = ACTIONS(4414), [sym_short] = ACTIONS(4414), [sym_ushort] = ACTIONS(4414), [sym_int] = ACTIONS(4414), [sym_uint] = ACTIONS(4414), [sym_long] = ACTIONS(4414), [sym_ulong] = ACTIONS(4414), [sym_cent] = ACTIONS(4414), [sym_ucent] = ACTIONS(4414), [sym_wchar] = ACTIONS(4414), [sym_dchar] = ACTIONS(4414), [sym_float] = ACTIONS(4414), [sym_double] = ACTIONS(4414), [sym_real] = ACTIONS(4414), [sym_ifloat] = ACTIONS(4414), [sym_idouble] = ACTIONS(4414), [sym_ireal] = ACTIONS(4414), [sym_cfloat] = ACTIONS(4414), [sym_cdouble] = ACTIONS(4414), [sym_creal] = ACTIONS(4414), [sym_size_t] = ACTIONS(4414), [sym_ptrdiff_t] = ACTIONS(4414), [sym_string] = ACTIONS(4414), [sym_cstring] = ACTIONS(4414), [sym_dstring] = ACTIONS(4414), [sym_wstring] = ACTIONS(4414), [sym_noreturn] = ACTIONS(4414), [sym_this] = ACTIONS(4414), [sym_abstract] = ACTIONS(4414), [sym_alias] = ACTIONS(4414), [sym_align] = ACTIONS(4414), [sym_auto] = ACTIONS(4414), [sym_catch] = ACTIONS(4414), [sym_class] = ACTIONS(4414), [sym_const] = ACTIONS(4414), [sym_debug] = ACTIONS(4414), [sym_deprecated] = ACTIONS(4414), [sym_else] = ACTIONS(4414), [sym_enum] = ACTIONS(4414), [sym_export] = ACTIONS(4414), [sym_extern] = ACTIONS(4414), [sym_final] = ACTIONS(4414), [sym_finally] = ACTIONS(4414), [sym_immutable] = ACTIONS(4414), [sym_import] = ACTIONS(4414), [sym_inout] = ACTIONS(4414), [sym_interface] = ACTIONS(4414), [sym_invariant] = ACTIONS(4414), [sym_mixin] = ACTIONS(4414), [sym_nothrow] = ACTIONS(4414), [sym_override] = ACTIONS(4414), [sym_package] = ACTIONS(4414), [sym_pragma] = ACTIONS(4414), [sym_private] = ACTIONS(4414), [sym_protected] = ACTIONS(4414), [sym_public] = ACTIONS(4414), [sym_pure] = ACTIONS(4414), [sym_ref] = ACTIONS(4414), [sym_return] = ACTIONS(4414), [sym_scope] = ACTIONS(4414), [sym_shared] = ACTIONS(4414), [sym_static] = ACTIONS(4414), [sym_struct] = ACTIONS(4414), [sym_synchronized] = ACTIONS(4414), [sym_template] = ACTIONS(4414), [sym_typeof] = ACTIONS(4414), [sym_union] = ACTIONS(4414), [sym_unittest] = ACTIONS(4414), [sym_version] = ACTIONS(4414), [sym_while] = ACTIONS(4414), [sym_gshared] = ACTIONS(4414), [sym_traits] = ACTIONS(4414), [sym_vector] = ACTIONS(4414), [sym_void] = ACTIONS(4414), [sym_directive] = ACTIONS(3), }, [2488] = { [sym_identifier] = ACTIONS(4339), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4341), [anon_sym_SEMI] = ACTIONS(4341), [anon_sym_TILDE] = ACTIONS(4341), [anon_sym_AT] = ACTIONS(4341), [sym_bool] = ACTIONS(4339), [sym_byte] = ACTIONS(4339), [sym_ubyte] = ACTIONS(4339), [sym_char] = ACTIONS(4339), [sym_short] = ACTIONS(4339), [sym_ushort] = ACTIONS(4339), [sym_int] = ACTIONS(4339), [sym_uint] = ACTIONS(4339), [sym_long] = ACTIONS(4339), [sym_ulong] = ACTIONS(4339), [sym_cent] = ACTIONS(4339), [sym_ucent] = ACTIONS(4339), [sym_wchar] = ACTIONS(4339), [sym_dchar] = ACTIONS(4339), [sym_float] = ACTIONS(4339), [sym_double] = ACTIONS(4339), [sym_real] = ACTIONS(4339), [sym_ifloat] = ACTIONS(4339), [sym_idouble] = ACTIONS(4339), [sym_ireal] = ACTIONS(4339), [sym_cfloat] = ACTIONS(4339), [sym_cdouble] = ACTIONS(4339), [sym_creal] = ACTIONS(4339), [sym_size_t] = ACTIONS(4339), [sym_ptrdiff_t] = ACTIONS(4339), [sym_string] = ACTIONS(4339), [sym_cstring] = ACTIONS(4339), [sym_dstring] = ACTIONS(4339), [sym_wstring] = ACTIONS(4339), [sym_noreturn] = ACTIONS(4339), [sym_this] = ACTIONS(4339), [sym_abstract] = ACTIONS(4339), [sym_alias] = ACTIONS(4339), [sym_align] = ACTIONS(4339), [sym_auto] = ACTIONS(4339), [sym_catch] = ACTIONS(4339), [sym_class] = ACTIONS(4339), [sym_const] = ACTIONS(4339), [sym_debug] = ACTIONS(4339), [sym_deprecated] = ACTIONS(4339), [sym_else] = ACTIONS(4339), [sym_enum] = ACTIONS(4339), [sym_export] = ACTIONS(4339), [sym_extern] = ACTIONS(4339), [sym_final] = ACTIONS(4339), [sym_finally] = ACTIONS(4339), [sym_immutable] = ACTIONS(4339), [sym_import] = ACTIONS(4339), [sym_inout] = ACTIONS(4339), [sym_interface] = ACTIONS(4339), [sym_invariant] = ACTIONS(4339), [sym_mixin] = ACTIONS(4339), [sym_nothrow] = ACTIONS(4339), [sym_override] = ACTIONS(4339), [sym_package] = ACTIONS(4339), [sym_pragma] = ACTIONS(4339), [sym_private] = ACTIONS(4339), [sym_protected] = ACTIONS(4339), [sym_public] = ACTIONS(4339), [sym_pure] = ACTIONS(4339), [sym_ref] = ACTIONS(4339), [sym_return] = ACTIONS(4339), [sym_scope] = ACTIONS(4339), [sym_shared] = ACTIONS(4339), [sym_static] = ACTIONS(4339), [sym_struct] = ACTIONS(4339), [sym_synchronized] = ACTIONS(4339), [sym_template] = ACTIONS(4339), [sym_typeof] = ACTIONS(4339), [sym_union] = ACTIONS(4339), [sym_unittest] = ACTIONS(4339), [sym_version] = ACTIONS(4339), [sym_while] = ACTIONS(4339), [sym_gshared] = ACTIONS(4339), [sym_traits] = ACTIONS(4339), [sym_vector] = ACTIONS(4339), [sym_void] = ACTIONS(4339), [sym_directive] = ACTIONS(3), }, [2489] = { [sym_identifier] = ACTIONS(4327), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4329), [anon_sym_SEMI] = ACTIONS(4329), [anon_sym_TILDE] = ACTIONS(4329), [anon_sym_AT] = ACTIONS(4329), [sym_bool] = ACTIONS(4327), [sym_byte] = ACTIONS(4327), [sym_ubyte] = ACTIONS(4327), [sym_char] = ACTIONS(4327), [sym_short] = ACTIONS(4327), [sym_ushort] = ACTIONS(4327), [sym_int] = ACTIONS(4327), [sym_uint] = ACTIONS(4327), [sym_long] = ACTIONS(4327), [sym_ulong] = ACTIONS(4327), [sym_cent] = ACTIONS(4327), [sym_ucent] = ACTIONS(4327), [sym_wchar] = ACTIONS(4327), [sym_dchar] = ACTIONS(4327), [sym_float] = ACTIONS(4327), [sym_double] = ACTIONS(4327), [sym_real] = ACTIONS(4327), [sym_ifloat] = ACTIONS(4327), [sym_idouble] = ACTIONS(4327), [sym_ireal] = ACTIONS(4327), [sym_cfloat] = ACTIONS(4327), [sym_cdouble] = ACTIONS(4327), [sym_creal] = ACTIONS(4327), [sym_size_t] = ACTIONS(4327), [sym_ptrdiff_t] = ACTIONS(4327), [sym_string] = ACTIONS(4327), [sym_cstring] = ACTIONS(4327), [sym_dstring] = ACTIONS(4327), [sym_wstring] = ACTIONS(4327), [sym_noreturn] = ACTIONS(4327), [sym_this] = ACTIONS(4327), [sym_abstract] = ACTIONS(4327), [sym_alias] = ACTIONS(4327), [sym_align] = ACTIONS(4327), [sym_auto] = ACTIONS(4327), [sym_catch] = ACTIONS(4327), [sym_class] = ACTIONS(4327), [sym_const] = ACTIONS(4327), [sym_debug] = ACTIONS(4327), [sym_deprecated] = ACTIONS(4327), [sym_else] = ACTIONS(4327), [sym_enum] = ACTIONS(4327), [sym_export] = ACTIONS(4327), [sym_extern] = ACTIONS(4327), [sym_final] = ACTIONS(4327), [sym_finally] = ACTIONS(4327), [sym_immutable] = ACTIONS(4327), [sym_import] = ACTIONS(4327), [sym_inout] = ACTIONS(4327), [sym_interface] = ACTIONS(4327), [sym_invariant] = ACTIONS(4327), [sym_mixin] = ACTIONS(4327), [sym_nothrow] = ACTIONS(4327), [sym_override] = ACTIONS(4327), [sym_package] = ACTIONS(4327), [sym_pragma] = ACTIONS(4327), [sym_private] = ACTIONS(4327), [sym_protected] = ACTIONS(4327), [sym_public] = ACTIONS(4327), [sym_pure] = ACTIONS(4327), [sym_ref] = ACTIONS(4327), [sym_return] = ACTIONS(4327), [sym_scope] = ACTIONS(4327), [sym_shared] = ACTIONS(4327), [sym_static] = ACTIONS(4327), [sym_struct] = ACTIONS(4327), [sym_synchronized] = ACTIONS(4327), [sym_template] = ACTIONS(4327), [sym_typeof] = ACTIONS(4327), [sym_union] = ACTIONS(4327), [sym_unittest] = ACTIONS(4327), [sym_version] = ACTIONS(4327), [sym_while] = ACTIONS(4327), [sym_gshared] = ACTIONS(4327), [sym_traits] = ACTIONS(4327), [sym_vector] = ACTIONS(4327), [sym_void] = ACTIONS(4327), [sym_directive] = ACTIONS(3), }, [2490] = { [sym_identifier] = ACTIONS(4313), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4315), [anon_sym_SEMI] = ACTIONS(4315), [anon_sym_TILDE] = ACTIONS(4315), [anon_sym_AT] = ACTIONS(4315), [sym_bool] = ACTIONS(4313), [sym_byte] = ACTIONS(4313), [sym_ubyte] = ACTIONS(4313), [sym_char] = ACTIONS(4313), [sym_short] = ACTIONS(4313), [sym_ushort] = ACTIONS(4313), [sym_int] = ACTIONS(4313), [sym_uint] = ACTIONS(4313), [sym_long] = ACTIONS(4313), [sym_ulong] = ACTIONS(4313), [sym_cent] = ACTIONS(4313), [sym_ucent] = ACTIONS(4313), [sym_wchar] = ACTIONS(4313), [sym_dchar] = ACTIONS(4313), [sym_float] = ACTIONS(4313), [sym_double] = ACTIONS(4313), [sym_real] = ACTIONS(4313), [sym_ifloat] = ACTIONS(4313), [sym_idouble] = ACTIONS(4313), [sym_ireal] = ACTIONS(4313), [sym_cfloat] = ACTIONS(4313), [sym_cdouble] = ACTIONS(4313), [sym_creal] = ACTIONS(4313), [sym_size_t] = ACTIONS(4313), [sym_ptrdiff_t] = ACTIONS(4313), [sym_string] = ACTIONS(4313), [sym_cstring] = ACTIONS(4313), [sym_dstring] = ACTIONS(4313), [sym_wstring] = ACTIONS(4313), [sym_noreturn] = ACTIONS(4313), [sym_this] = ACTIONS(4313), [sym_abstract] = ACTIONS(4313), [sym_alias] = ACTIONS(4313), [sym_align] = ACTIONS(4313), [sym_auto] = ACTIONS(4313), [sym_catch] = ACTIONS(4313), [sym_class] = ACTIONS(4313), [sym_const] = ACTIONS(4313), [sym_debug] = ACTIONS(4313), [sym_deprecated] = ACTIONS(4313), [sym_else] = ACTIONS(4313), [sym_enum] = ACTIONS(4313), [sym_export] = ACTIONS(4313), [sym_extern] = ACTIONS(4313), [sym_final] = ACTIONS(4313), [sym_finally] = ACTIONS(4313), [sym_immutable] = ACTIONS(4313), [sym_import] = ACTIONS(4313), [sym_inout] = ACTIONS(4313), [sym_interface] = ACTIONS(4313), [sym_invariant] = ACTIONS(4313), [sym_mixin] = ACTIONS(4313), [sym_nothrow] = ACTIONS(4313), [sym_override] = ACTIONS(4313), [sym_package] = ACTIONS(4313), [sym_pragma] = ACTIONS(4313), [sym_private] = ACTIONS(4313), [sym_protected] = ACTIONS(4313), [sym_public] = ACTIONS(4313), [sym_pure] = ACTIONS(4313), [sym_ref] = ACTIONS(4313), [sym_return] = ACTIONS(4313), [sym_scope] = ACTIONS(4313), [sym_shared] = ACTIONS(4313), [sym_static] = ACTIONS(4313), [sym_struct] = ACTIONS(4313), [sym_synchronized] = ACTIONS(4313), [sym_template] = ACTIONS(4313), [sym_typeof] = ACTIONS(4313), [sym_union] = ACTIONS(4313), [sym_unittest] = ACTIONS(4313), [sym_version] = ACTIONS(4313), [sym_while] = ACTIONS(4313), [sym_gshared] = ACTIONS(4313), [sym_traits] = ACTIONS(4313), [sym_vector] = ACTIONS(4313), [sym_void] = ACTIONS(4313), [sym_directive] = ACTIONS(3), }, [2491] = { [ts_builtin_sym_end] = ACTIONS(4824), [sym_identifier] = ACTIONS(4822), [sym_end_file] = ACTIONS(4822), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4824), [anon_sym_SEMI] = ACTIONS(4824), [anon_sym_TILDE] = ACTIONS(4824), [anon_sym_AT] = ACTIONS(4824), [sym_bool] = ACTIONS(4822), [sym_byte] = ACTIONS(4822), [sym_ubyte] = ACTIONS(4822), [sym_char] = ACTIONS(4822), [sym_short] = ACTIONS(4822), [sym_ushort] = ACTIONS(4822), [sym_int] = ACTIONS(4822), [sym_uint] = ACTIONS(4822), [sym_long] = ACTIONS(4822), [sym_ulong] = ACTIONS(4822), [sym_cent] = ACTIONS(4822), [sym_ucent] = ACTIONS(4822), [sym_wchar] = ACTIONS(4822), [sym_dchar] = ACTIONS(4822), [sym_float] = ACTIONS(4822), [sym_double] = ACTIONS(4822), [sym_real] = ACTIONS(4822), [sym_ifloat] = ACTIONS(4822), [sym_idouble] = ACTIONS(4822), [sym_ireal] = ACTIONS(4822), [sym_cfloat] = ACTIONS(4822), [sym_cdouble] = ACTIONS(4822), [sym_creal] = ACTIONS(4822), [sym_size_t] = ACTIONS(4822), [sym_ptrdiff_t] = ACTIONS(4822), [sym_string] = ACTIONS(4822), [sym_cstring] = ACTIONS(4822), [sym_dstring] = ACTIONS(4822), [sym_wstring] = ACTIONS(4822), [sym_noreturn] = ACTIONS(4822), [sym_this] = ACTIONS(4822), [sym_abstract] = ACTIONS(4822), [sym_alias] = ACTIONS(4822), [sym_align] = ACTIONS(4822), [sym_auto] = ACTIONS(4822), [sym_class] = ACTIONS(4822), [sym_const] = ACTIONS(4822), [sym_debug] = ACTIONS(4822), [sym_deprecated] = ACTIONS(4822), [sym_else] = ACTIONS(4822), [sym_enum] = ACTIONS(4822), [sym_export] = ACTIONS(4822), [sym_extern] = ACTIONS(4822), [sym_final] = ACTIONS(4822), [sym_immutable] = ACTIONS(4822), [sym_import] = ACTIONS(4822), [sym_inout] = ACTIONS(4822), [sym_interface] = ACTIONS(4822), [sym_invariant] = ACTIONS(4822), [sym_mixin] = ACTIONS(4822), [sym_nothrow] = ACTIONS(4822), [sym_override] = ACTIONS(4822), [sym_package] = ACTIONS(4822), [sym_pragma] = ACTIONS(4822), [sym_private] = ACTIONS(4822), [sym_protected] = ACTIONS(4822), [sym_public] = ACTIONS(4822), [sym_pure] = ACTIONS(4822), [sym_ref] = ACTIONS(4822), [sym_return] = ACTIONS(4822), [sym_scope] = ACTIONS(4822), [sym_shared] = ACTIONS(4822), [sym_static] = ACTIONS(4822), [sym_struct] = ACTIONS(4822), [sym_synchronized] = ACTIONS(4822), [sym_template] = ACTIONS(4822), [sym_typeof] = ACTIONS(4822), [sym_union] = ACTIONS(4822), [sym_unittest] = ACTIONS(4822), [sym_version] = ACTIONS(4822), [sym_while] = ACTIONS(4822), [sym_gshared] = ACTIONS(4822), [sym_traits] = ACTIONS(4822), [sym_vector] = ACTIONS(4822), [sym_void] = ACTIONS(4822), [sym_directive] = ACTIONS(3), }, [2492] = { [sym_identifier] = ACTIONS(4293), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4295), [anon_sym_SEMI] = ACTIONS(4295), [anon_sym_TILDE] = ACTIONS(4295), [anon_sym_AT] = ACTIONS(4295), [sym_bool] = ACTIONS(4293), [sym_byte] = ACTIONS(4293), [sym_ubyte] = ACTIONS(4293), [sym_char] = ACTIONS(4293), [sym_short] = ACTIONS(4293), [sym_ushort] = ACTIONS(4293), [sym_int] = ACTIONS(4293), [sym_uint] = ACTIONS(4293), [sym_long] = ACTIONS(4293), [sym_ulong] = ACTIONS(4293), [sym_cent] = ACTIONS(4293), [sym_ucent] = ACTIONS(4293), [sym_wchar] = ACTIONS(4293), [sym_dchar] = ACTIONS(4293), [sym_float] = ACTIONS(4293), [sym_double] = ACTIONS(4293), [sym_real] = ACTIONS(4293), [sym_ifloat] = ACTIONS(4293), [sym_idouble] = ACTIONS(4293), [sym_ireal] = ACTIONS(4293), [sym_cfloat] = ACTIONS(4293), [sym_cdouble] = ACTIONS(4293), [sym_creal] = ACTIONS(4293), [sym_size_t] = ACTIONS(4293), [sym_ptrdiff_t] = ACTIONS(4293), [sym_string] = ACTIONS(4293), [sym_cstring] = ACTIONS(4293), [sym_dstring] = ACTIONS(4293), [sym_wstring] = ACTIONS(4293), [sym_noreturn] = ACTIONS(4293), [sym_this] = ACTIONS(4293), [sym_abstract] = ACTIONS(4293), [sym_alias] = ACTIONS(4293), [sym_align] = ACTIONS(4293), [sym_auto] = ACTIONS(4293), [sym_catch] = ACTIONS(4293), [sym_class] = ACTIONS(4293), [sym_const] = ACTIONS(4293), [sym_debug] = ACTIONS(4293), [sym_deprecated] = ACTIONS(4293), [sym_else] = ACTIONS(4293), [sym_enum] = ACTIONS(4293), [sym_export] = ACTIONS(4293), [sym_extern] = ACTIONS(4293), [sym_final] = ACTIONS(4293), [sym_finally] = ACTIONS(4293), [sym_immutable] = ACTIONS(4293), [sym_import] = ACTIONS(4293), [sym_inout] = ACTIONS(4293), [sym_interface] = ACTIONS(4293), [sym_invariant] = ACTIONS(4293), [sym_mixin] = ACTIONS(4293), [sym_nothrow] = ACTIONS(4293), [sym_override] = ACTIONS(4293), [sym_package] = ACTIONS(4293), [sym_pragma] = ACTIONS(4293), [sym_private] = ACTIONS(4293), [sym_protected] = ACTIONS(4293), [sym_public] = ACTIONS(4293), [sym_pure] = ACTIONS(4293), [sym_ref] = ACTIONS(4293), [sym_return] = ACTIONS(4293), [sym_scope] = ACTIONS(4293), [sym_shared] = ACTIONS(4293), [sym_static] = ACTIONS(4293), [sym_struct] = ACTIONS(4293), [sym_synchronized] = ACTIONS(4293), [sym_template] = ACTIONS(4293), [sym_typeof] = ACTIONS(4293), [sym_union] = ACTIONS(4293), [sym_unittest] = ACTIONS(4293), [sym_version] = ACTIONS(4293), [sym_while] = ACTIONS(4293), [sym_gshared] = ACTIONS(4293), [sym_traits] = ACTIONS(4293), [sym_vector] = ACTIONS(4293), [sym_void] = ACTIONS(4293), [sym_directive] = ACTIONS(3), }, [2493] = { [ts_builtin_sym_end] = ACTIONS(4820), [sym_identifier] = ACTIONS(4818), [sym_end_file] = ACTIONS(4818), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4820), [anon_sym_SEMI] = ACTIONS(4820), [anon_sym_TILDE] = ACTIONS(4820), [anon_sym_AT] = ACTIONS(4820), [sym_bool] = ACTIONS(4818), [sym_byte] = ACTIONS(4818), [sym_ubyte] = ACTIONS(4818), [sym_char] = ACTIONS(4818), [sym_short] = ACTIONS(4818), [sym_ushort] = ACTIONS(4818), [sym_int] = ACTIONS(4818), [sym_uint] = ACTIONS(4818), [sym_long] = ACTIONS(4818), [sym_ulong] = ACTIONS(4818), [sym_cent] = ACTIONS(4818), [sym_ucent] = ACTIONS(4818), [sym_wchar] = ACTIONS(4818), [sym_dchar] = ACTIONS(4818), [sym_float] = ACTIONS(4818), [sym_double] = ACTIONS(4818), [sym_real] = ACTIONS(4818), [sym_ifloat] = ACTIONS(4818), [sym_idouble] = ACTIONS(4818), [sym_ireal] = ACTIONS(4818), [sym_cfloat] = ACTIONS(4818), [sym_cdouble] = ACTIONS(4818), [sym_creal] = ACTIONS(4818), [sym_size_t] = ACTIONS(4818), [sym_ptrdiff_t] = ACTIONS(4818), [sym_string] = ACTIONS(4818), [sym_cstring] = ACTIONS(4818), [sym_dstring] = ACTIONS(4818), [sym_wstring] = ACTIONS(4818), [sym_noreturn] = ACTIONS(4818), [sym_this] = ACTIONS(4818), [sym_abstract] = ACTIONS(4818), [sym_alias] = ACTIONS(4818), [sym_align] = ACTIONS(4818), [sym_auto] = ACTIONS(4818), [sym_class] = ACTIONS(4818), [sym_const] = ACTIONS(4818), [sym_debug] = ACTIONS(4818), [sym_deprecated] = ACTIONS(4818), [sym_else] = ACTIONS(4818), [sym_enum] = ACTIONS(4818), [sym_export] = ACTIONS(4818), [sym_extern] = ACTIONS(4818), [sym_final] = ACTIONS(4818), [sym_immutable] = ACTIONS(4818), [sym_import] = ACTIONS(4818), [sym_inout] = ACTIONS(4818), [sym_interface] = ACTIONS(4818), [sym_invariant] = ACTIONS(4818), [sym_mixin] = ACTIONS(4818), [sym_nothrow] = ACTIONS(4818), [sym_override] = ACTIONS(4818), [sym_package] = ACTIONS(4818), [sym_pragma] = ACTIONS(4818), [sym_private] = ACTIONS(4818), [sym_protected] = ACTIONS(4818), [sym_public] = ACTIONS(4818), [sym_pure] = ACTIONS(4818), [sym_ref] = ACTIONS(4818), [sym_return] = ACTIONS(4818), [sym_scope] = ACTIONS(4818), [sym_shared] = ACTIONS(4818), [sym_static] = ACTIONS(4818), [sym_struct] = ACTIONS(4818), [sym_synchronized] = ACTIONS(4818), [sym_template] = ACTIONS(4818), [sym_typeof] = ACTIONS(4818), [sym_union] = ACTIONS(4818), [sym_unittest] = ACTIONS(4818), [sym_version] = ACTIONS(4818), [sym_while] = ACTIONS(4818), [sym_gshared] = ACTIONS(4818), [sym_traits] = ACTIONS(4818), [sym_vector] = ACTIONS(4818), [sym_void] = ACTIONS(4818), [sym_directive] = ACTIONS(3), }, [2494] = { [ts_builtin_sym_end] = ACTIONS(5046), [sym_identifier] = ACTIONS(5044), [sym_end_file] = ACTIONS(5044), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5046), [anon_sym_SEMI] = ACTIONS(5046), [anon_sym_TILDE] = ACTIONS(5046), [anon_sym_AT] = ACTIONS(5046), [sym_bool] = ACTIONS(5044), [sym_byte] = ACTIONS(5044), [sym_ubyte] = ACTIONS(5044), [sym_char] = ACTIONS(5044), [sym_short] = ACTIONS(5044), [sym_ushort] = ACTIONS(5044), [sym_int] = ACTIONS(5044), [sym_uint] = ACTIONS(5044), [sym_long] = ACTIONS(5044), [sym_ulong] = ACTIONS(5044), [sym_cent] = ACTIONS(5044), [sym_ucent] = ACTIONS(5044), [sym_wchar] = ACTIONS(5044), [sym_dchar] = ACTIONS(5044), [sym_float] = ACTIONS(5044), [sym_double] = ACTIONS(5044), [sym_real] = ACTIONS(5044), [sym_ifloat] = ACTIONS(5044), [sym_idouble] = ACTIONS(5044), [sym_ireal] = ACTIONS(5044), [sym_cfloat] = ACTIONS(5044), [sym_cdouble] = ACTIONS(5044), [sym_creal] = ACTIONS(5044), [sym_size_t] = ACTIONS(5044), [sym_ptrdiff_t] = ACTIONS(5044), [sym_string] = ACTIONS(5044), [sym_cstring] = ACTIONS(5044), [sym_dstring] = ACTIONS(5044), [sym_wstring] = ACTIONS(5044), [sym_noreturn] = ACTIONS(5044), [sym_this] = ACTIONS(5044), [sym_abstract] = ACTIONS(5044), [sym_alias] = ACTIONS(5044), [sym_align] = ACTIONS(5044), [sym_auto] = ACTIONS(5044), [sym_class] = ACTIONS(5044), [sym_const] = ACTIONS(5044), [sym_debug] = ACTIONS(5044), [sym_deprecated] = ACTIONS(5044), [sym_else] = ACTIONS(5044), [sym_enum] = ACTIONS(5044), [sym_export] = ACTIONS(5044), [sym_extern] = ACTIONS(5044), [sym_final] = ACTIONS(5044), [sym_immutable] = ACTIONS(5044), [sym_import] = ACTIONS(5044), [sym_inout] = ACTIONS(5044), [sym_interface] = ACTIONS(5044), [sym_invariant] = ACTIONS(5044), [sym_mixin] = ACTIONS(5044), [sym_nothrow] = ACTIONS(5044), [sym_override] = ACTIONS(5044), [sym_package] = ACTIONS(5044), [sym_pragma] = ACTIONS(5044), [sym_private] = ACTIONS(5044), [sym_protected] = ACTIONS(5044), [sym_public] = ACTIONS(5044), [sym_pure] = ACTIONS(5044), [sym_ref] = ACTIONS(5044), [sym_return] = ACTIONS(5044), [sym_scope] = ACTIONS(5044), [sym_shared] = ACTIONS(5044), [sym_static] = ACTIONS(5044), [sym_struct] = ACTIONS(5044), [sym_synchronized] = ACTIONS(5044), [sym_template] = ACTIONS(5044), [sym_typeof] = ACTIONS(5044), [sym_union] = ACTIONS(5044), [sym_unittest] = ACTIONS(5044), [sym_version] = ACTIONS(5044), [sym_while] = ACTIONS(5044), [sym_gshared] = ACTIONS(5044), [sym_traits] = ACTIONS(5044), [sym_vector] = ACTIONS(5044), [sym_void] = ACTIONS(5044), [sym_directive] = ACTIONS(3), }, [2495] = { [ts_builtin_sym_end] = ACTIONS(2804), [sym_identifier] = ACTIONS(2806), [sym_end_file] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2804), [anon_sym_AT] = ACTIONS(2804), [sym_bool] = ACTIONS(2806), [sym_byte] = ACTIONS(2806), [sym_ubyte] = ACTIONS(2806), [sym_char] = ACTIONS(2806), [sym_short] = ACTIONS(2806), [sym_ushort] = ACTIONS(2806), [sym_int] = ACTIONS(2806), [sym_uint] = ACTIONS(2806), [sym_long] = ACTIONS(2806), [sym_ulong] = ACTIONS(2806), [sym_cent] = ACTIONS(2806), [sym_ucent] = ACTIONS(2806), [sym_wchar] = ACTIONS(2806), [sym_dchar] = ACTIONS(2806), [sym_float] = ACTIONS(2806), [sym_double] = ACTIONS(2806), [sym_real] = ACTIONS(2806), [sym_ifloat] = ACTIONS(2806), [sym_idouble] = ACTIONS(2806), [sym_ireal] = ACTIONS(2806), [sym_cfloat] = ACTIONS(2806), [sym_cdouble] = ACTIONS(2806), [sym_creal] = ACTIONS(2806), [sym_size_t] = ACTIONS(2806), [sym_ptrdiff_t] = ACTIONS(2806), [sym_string] = ACTIONS(2806), [sym_cstring] = ACTIONS(2806), [sym_dstring] = ACTIONS(2806), [sym_wstring] = ACTIONS(2806), [sym_noreturn] = ACTIONS(2806), [sym_this] = ACTIONS(2806), [sym_abstract] = ACTIONS(2806), [sym_alias] = ACTIONS(2806), [sym_align] = ACTIONS(2806), [sym_auto] = ACTIONS(2806), [sym_class] = ACTIONS(2806), [sym_const] = ACTIONS(2806), [sym_debug] = ACTIONS(2806), [sym_deprecated] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(2806), [sym_export] = ACTIONS(2806), [sym_extern] = ACTIONS(2806), [sym_final] = ACTIONS(2806), [sym_immutable] = ACTIONS(2806), [sym_import] = ACTIONS(2806), [sym_inout] = ACTIONS(2806), [sym_interface] = ACTIONS(2806), [sym_invariant] = ACTIONS(2806), [sym_mixin] = ACTIONS(2806), [sym_nothrow] = ACTIONS(2806), [sym_override] = ACTIONS(2806), [sym_package] = ACTIONS(2806), [sym_pragma] = ACTIONS(2806), [sym_private] = ACTIONS(2806), [sym_protected] = ACTIONS(2806), [sym_public] = ACTIONS(2806), [sym_pure] = ACTIONS(2806), [sym_ref] = ACTIONS(2806), [sym_return] = ACTIONS(2806), [sym_scope] = ACTIONS(2806), [sym_shared] = ACTIONS(2806), [sym_static] = ACTIONS(2806), [sym_struct] = ACTIONS(2806), [sym_synchronized] = ACTIONS(2806), [sym_template] = ACTIONS(2806), [sym_typeof] = ACTIONS(2806), [sym_union] = ACTIONS(2806), [sym_unittest] = ACTIONS(2806), [sym_version] = ACTIONS(2806), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(2806), [sym_traits] = ACTIONS(2806), [sym_vector] = ACTIONS(2806), [sym_void] = ACTIONS(2806), [sym_directive] = ACTIONS(3), }, [2496] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_finally] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [sym_directive] = ACTIONS(3), }, [2497] = { [ts_builtin_sym_end] = ACTIONS(4600), [sym_identifier] = ACTIONS(4598), [sym_end_file] = ACTIONS(4598), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4600), [anon_sym_SEMI] = ACTIONS(4600), [anon_sym_TILDE] = ACTIONS(4600), [anon_sym_AT] = ACTIONS(4600), [sym_bool] = ACTIONS(4598), [sym_byte] = ACTIONS(4598), [sym_ubyte] = ACTIONS(4598), [sym_char] = ACTIONS(4598), [sym_short] = ACTIONS(4598), [sym_ushort] = ACTIONS(4598), [sym_int] = ACTIONS(4598), [sym_uint] = ACTIONS(4598), [sym_long] = ACTIONS(4598), [sym_ulong] = ACTIONS(4598), [sym_cent] = ACTIONS(4598), [sym_ucent] = ACTIONS(4598), [sym_wchar] = ACTIONS(4598), [sym_dchar] = ACTIONS(4598), [sym_float] = ACTIONS(4598), [sym_double] = ACTIONS(4598), [sym_real] = ACTIONS(4598), [sym_ifloat] = ACTIONS(4598), [sym_idouble] = ACTIONS(4598), [sym_ireal] = ACTIONS(4598), [sym_cfloat] = ACTIONS(4598), [sym_cdouble] = ACTIONS(4598), [sym_creal] = ACTIONS(4598), [sym_size_t] = ACTIONS(4598), [sym_ptrdiff_t] = ACTIONS(4598), [sym_string] = ACTIONS(4598), [sym_cstring] = ACTIONS(4598), [sym_dstring] = ACTIONS(4598), [sym_wstring] = ACTIONS(4598), [sym_noreturn] = ACTIONS(4598), [sym_this] = ACTIONS(4598), [sym_abstract] = ACTIONS(4598), [sym_alias] = ACTIONS(4598), [sym_align] = ACTIONS(4598), [sym_auto] = ACTIONS(4598), [sym_class] = ACTIONS(4598), [sym_const] = ACTIONS(4598), [sym_debug] = ACTIONS(4598), [sym_deprecated] = ACTIONS(4598), [sym_else] = ACTIONS(4598), [sym_enum] = ACTIONS(4598), [sym_export] = ACTIONS(4598), [sym_extern] = ACTIONS(4598), [sym_final] = ACTIONS(4598), [sym_immutable] = ACTIONS(4598), [sym_import] = ACTIONS(4598), [sym_inout] = ACTIONS(4598), [sym_interface] = ACTIONS(4598), [sym_invariant] = ACTIONS(4598), [sym_mixin] = ACTIONS(4598), [sym_nothrow] = ACTIONS(4598), [sym_override] = ACTIONS(4598), [sym_package] = ACTIONS(4598), [sym_pragma] = ACTIONS(4598), [sym_private] = ACTIONS(4598), [sym_protected] = ACTIONS(4598), [sym_public] = ACTIONS(4598), [sym_pure] = ACTIONS(4598), [sym_ref] = ACTIONS(4598), [sym_return] = ACTIONS(4598), [sym_scope] = ACTIONS(4598), [sym_shared] = ACTIONS(4598), [sym_static] = ACTIONS(4598), [sym_struct] = ACTIONS(4598), [sym_synchronized] = ACTIONS(4598), [sym_template] = ACTIONS(4598), [sym_typeof] = ACTIONS(4598), [sym_union] = ACTIONS(4598), [sym_unittest] = ACTIONS(4598), [sym_version] = ACTIONS(4598), [sym_while] = ACTIONS(4598), [sym_gshared] = ACTIONS(4598), [sym_traits] = ACTIONS(4598), [sym_vector] = ACTIONS(4598), [sym_void] = ACTIONS(4598), [sym_directive] = ACTIONS(3), }, [2498] = { [ts_builtin_sym_end] = ACTIONS(4816), [sym_identifier] = ACTIONS(4814), [sym_end_file] = ACTIONS(4814), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4816), [anon_sym_SEMI] = ACTIONS(4816), [anon_sym_TILDE] = ACTIONS(4816), [anon_sym_AT] = ACTIONS(4816), [sym_bool] = ACTIONS(4814), [sym_byte] = ACTIONS(4814), [sym_ubyte] = ACTIONS(4814), [sym_char] = ACTIONS(4814), [sym_short] = ACTIONS(4814), [sym_ushort] = ACTIONS(4814), [sym_int] = ACTIONS(4814), [sym_uint] = ACTIONS(4814), [sym_long] = ACTIONS(4814), [sym_ulong] = ACTIONS(4814), [sym_cent] = ACTIONS(4814), [sym_ucent] = ACTIONS(4814), [sym_wchar] = ACTIONS(4814), [sym_dchar] = ACTIONS(4814), [sym_float] = ACTIONS(4814), [sym_double] = ACTIONS(4814), [sym_real] = ACTIONS(4814), [sym_ifloat] = ACTIONS(4814), [sym_idouble] = ACTIONS(4814), [sym_ireal] = ACTIONS(4814), [sym_cfloat] = ACTIONS(4814), [sym_cdouble] = ACTIONS(4814), [sym_creal] = ACTIONS(4814), [sym_size_t] = ACTIONS(4814), [sym_ptrdiff_t] = ACTIONS(4814), [sym_string] = ACTIONS(4814), [sym_cstring] = ACTIONS(4814), [sym_dstring] = ACTIONS(4814), [sym_wstring] = ACTIONS(4814), [sym_noreturn] = ACTIONS(4814), [sym_this] = ACTIONS(4814), [sym_abstract] = ACTIONS(4814), [sym_alias] = ACTIONS(4814), [sym_align] = ACTIONS(4814), [sym_auto] = ACTIONS(4814), [sym_class] = ACTIONS(4814), [sym_const] = ACTIONS(4814), [sym_debug] = ACTIONS(4814), [sym_deprecated] = ACTIONS(4814), [sym_else] = ACTIONS(4814), [sym_enum] = ACTIONS(4814), [sym_export] = ACTIONS(4814), [sym_extern] = ACTIONS(4814), [sym_final] = ACTIONS(4814), [sym_immutable] = ACTIONS(4814), [sym_import] = ACTIONS(4814), [sym_inout] = ACTIONS(4814), [sym_interface] = ACTIONS(4814), [sym_invariant] = ACTIONS(4814), [sym_mixin] = ACTIONS(4814), [sym_nothrow] = ACTIONS(4814), [sym_override] = ACTIONS(4814), [sym_package] = ACTIONS(4814), [sym_pragma] = ACTIONS(4814), [sym_private] = ACTIONS(4814), [sym_protected] = ACTIONS(4814), [sym_public] = ACTIONS(4814), [sym_pure] = ACTIONS(4814), [sym_ref] = ACTIONS(4814), [sym_return] = ACTIONS(4814), [sym_scope] = ACTIONS(4814), [sym_shared] = ACTIONS(4814), [sym_static] = ACTIONS(4814), [sym_struct] = ACTIONS(4814), [sym_synchronized] = ACTIONS(4814), [sym_template] = ACTIONS(4814), [sym_typeof] = ACTIONS(4814), [sym_union] = ACTIONS(4814), [sym_unittest] = ACTIONS(4814), [sym_version] = ACTIONS(4814), [sym_while] = ACTIONS(4814), [sym_gshared] = ACTIONS(4814), [sym_traits] = ACTIONS(4814), [sym_vector] = ACTIONS(4814), [sym_void] = ACTIONS(4814), [sym_directive] = ACTIONS(3), }, [2499] = { [ts_builtin_sym_end] = ACTIONS(4738), [sym_identifier] = ACTIONS(4736), [sym_end_file] = ACTIONS(4736), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4738), [anon_sym_SEMI] = ACTIONS(4738), [anon_sym_TILDE] = ACTIONS(4738), [anon_sym_AT] = ACTIONS(4738), [sym_bool] = ACTIONS(4736), [sym_byte] = ACTIONS(4736), [sym_ubyte] = ACTIONS(4736), [sym_char] = ACTIONS(4736), [sym_short] = ACTIONS(4736), [sym_ushort] = ACTIONS(4736), [sym_int] = ACTIONS(4736), [sym_uint] = ACTIONS(4736), [sym_long] = ACTIONS(4736), [sym_ulong] = ACTIONS(4736), [sym_cent] = ACTIONS(4736), [sym_ucent] = ACTIONS(4736), [sym_wchar] = ACTIONS(4736), [sym_dchar] = ACTIONS(4736), [sym_float] = ACTIONS(4736), [sym_double] = ACTIONS(4736), [sym_real] = ACTIONS(4736), [sym_ifloat] = ACTIONS(4736), [sym_idouble] = ACTIONS(4736), [sym_ireal] = ACTIONS(4736), [sym_cfloat] = ACTIONS(4736), [sym_cdouble] = ACTIONS(4736), [sym_creal] = ACTIONS(4736), [sym_size_t] = ACTIONS(4736), [sym_ptrdiff_t] = ACTIONS(4736), [sym_string] = ACTIONS(4736), [sym_cstring] = ACTIONS(4736), [sym_dstring] = ACTIONS(4736), [sym_wstring] = ACTIONS(4736), [sym_noreturn] = ACTIONS(4736), [sym_this] = ACTIONS(4736), [sym_abstract] = ACTIONS(4736), [sym_alias] = ACTIONS(4736), [sym_align] = ACTIONS(4736), [sym_auto] = ACTIONS(4736), [sym_class] = ACTIONS(4736), [sym_const] = ACTIONS(4736), [sym_debug] = ACTIONS(4736), [sym_deprecated] = ACTIONS(4736), [sym_else] = ACTIONS(4736), [sym_enum] = ACTIONS(4736), [sym_export] = ACTIONS(4736), [sym_extern] = ACTIONS(4736), [sym_final] = ACTIONS(4736), [sym_immutable] = ACTIONS(4736), [sym_import] = ACTIONS(4736), [sym_inout] = ACTIONS(4736), [sym_interface] = ACTIONS(4736), [sym_invariant] = ACTIONS(4736), [sym_mixin] = ACTIONS(4736), [sym_nothrow] = ACTIONS(4736), [sym_override] = ACTIONS(4736), [sym_package] = ACTIONS(4736), [sym_pragma] = ACTIONS(4736), [sym_private] = ACTIONS(4736), [sym_protected] = ACTIONS(4736), [sym_public] = ACTIONS(4736), [sym_pure] = ACTIONS(4736), [sym_ref] = ACTIONS(4736), [sym_return] = ACTIONS(4736), [sym_scope] = ACTIONS(4736), [sym_shared] = ACTIONS(4736), [sym_static] = ACTIONS(4736), [sym_struct] = ACTIONS(4736), [sym_synchronized] = ACTIONS(4736), [sym_template] = ACTIONS(4736), [sym_typeof] = ACTIONS(4736), [sym_union] = ACTIONS(4736), [sym_unittest] = ACTIONS(4736), [sym_version] = ACTIONS(4736), [sym_while] = ACTIONS(4736), [sym_gshared] = ACTIONS(4736), [sym_traits] = ACTIONS(4736), [sym_vector] = ACTIONS(4736), [sym_void] = ACTIONS(4736), [sym_directive] = ACTIONS(3), }, [2500] = { [ts_builtin_sym_end] = ACTIONS(4734), [sym_identifier] = ACTIONS(4732), [sym_end_file] = ACTIONS(4732), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4734), [anon_sym_SEMI] = ACTIONS(4734), [anon_sym_TILDE] = ACTIONS(4734), [anon_sym_AT] = ACTIONS(4734), [sym_bool] = ACTIONS(4732), [sym_byte] = ACTIONS(4732), [sym_ubyte] = ACTIONS(4732), [sym_char] = ACTIONS(4732), [sym_short] = ACTIONS(4732), [sym_ushort] = ACTIONS(4732), [sym_int] = ACTIONS(4732), [sym_uint] = ACTIONS(4732), [sym_long] = ACTIONS(4732), [sym_ulong] = ACTIONS(4732), [sym_cent] = ACTIONS(4732), [sym_ucent] = ACTIONS(4732), [sym_wchar] = ACTIONS(4732), [sym_dchar] = ACTIONS(4732), [sym_float] = ACTIONS(4732), [sym_double] = ACTIONS(4732), [sym_real] = ACTIONS(4732), [sym_ifloat] = ACTIONS(4732), [sym_idouble] = ACTIONS(4732), [sym_ireal] = ACTIONS(4732), [sym_cfloat] = ACTIONS(4732), [sym_cdouble] = ACTIONS(4732), [sym_creal] = ACTIONS(4732), [sym_size_t] = ACTIONS(4732), [sym_ptrdiff_t] = ACTIONS(4732), [sym_string] = ACTIONS(4732), [sym_cstring] = ACTIONS(4732), [sym_dstring] = ACTIONS(4732), [sym_wstring] = ACTIONS(4732), [sym_noreturn] = ACTIONS(4732), [sym_this] = ACTIONS(4732), [sym_abstract] = ACTIONS(4732), [sym_alias] = ACTIONS(4732), [sym_align] = ACTIONS(4732), [sym_auto] = ACTIONS(4732), [sym_class] = ACTIONS(4732), [sym_const] = ACTIONS(4732), [sym_debug] = ACTIONS(4732), [sym_deprecated] = ACTIONS(4732), [sym_else] = ACTIONS(4732), [sym_enum] = ACTIONS(4732), [sym_export] = ACTIONS(4732), [sym_extern] = ACTIONS(4732), [sym_final] = ACTIONS(4732), [sym_immutable] = ACTIONS(4732), [sym_import] = ACTIONS(4732), [sym_inout] = ACTIONS(4732), [sym_interface] = ACTIONS(4732), [sym_invariant] = ACTIONS(4732), [sym_mixin] = ACTIONS(4732), [sym_nothrow] = ACTIONS(4732), [sym_override] = ACTIONS(4732), [sym_package] = ACTIONS(4732), [sym_pragma] = ACTIONS(4732), [sym_private] = ACTIONS(4732), [sym_protected] = ACTIONS(4732), [sym_public] = ACTIONS(4732), [sym_pure] = ACTIONS(4732), [sym_ref] = ACTIONS(4732), [sym_return] = ACTIONS(4732), [sym_scope] = ACTIONS(4732), [sym_shared] = ACTIONS(4732), [sym_static] = ACTIONS(4732), [sym_struct] = ACTIONS(4732), [sym_synchronized] = ACTIONS(4732), [sym_template] = ACTIONS(4732), [sym_typeof] = ACTIONS(4732), [sym_union] = ACTIONS(4732), [sym_unittest] = ACTIONS(4732), [sym_version] = ACTIONS(4732), [sym_while] = ACTIONS(4732), [sym_gshared] = ACTIONS(4732), [sym_traits] = ACTIONS(4732), [sym_vector] = ACTIONS(4732), [sym_void] = ACTIONS(4732), [sym_directive] = ACTIONS(3), }, [2501] = { [ts_builtin_sym_end] = ACTIONS(4722), [sym_identifier] = ACTIONS(4720), [sym_end_file] = ACTIONS(4720), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4722), [anon_sym_SEMI] = ACTIONS(4722), [anon_sym_TILDE] = ACTIONS(4722), [anon_sym_AT] = ACTIONS(4722), [sym_bool] = ACTIONS(4720), [sym_byte] = ACTIONS(4720), [sym_ubyte] = ACTIONS(4720), [sym_char] = ACTIONS(4720), [sym_short] = ACTIONS(4720), [sym_ushort] = ACTIONS(4720), [sym_int] = ACTIONS(4720), [sym_uint] = ACTIONS(4720), [sym_long] = ACTIONS(4720), [sym_ulong] = ACTIONS(4720), [sym_cent] = ACTIONS(4720), [sym_ucent] = ACTIONS(4720), [sym_wchar] = ACTIONS(4720), [sym_dchar] = ACTIONS(4720), [sym_float] = ACTIONS(4720), [sym_double] = ACTIONS(4720), [sym_real] = ACTIONS(4720), [sym_ifloat] = ACTIONS(4720), [sym_idouble] = ACTIONS(4720), [sym_ireal] = ACTIONS(4720), [sym_cfloat] = ACTIONS(4720), [sym_cdouble] = ACTIONS(4720), [sym_creal] = ACTIONS(4720), [sym_size_t] = ACTIONS(4720), [sym_ptrdiff_t] = ACTIONS(4720), [sym_string] = ACTIONS(4720), [sym_cstring] = ACTIONS(4720), [sym_dstring] = ACTIONS(4720), [sym_wstring] = ACTIONS(4720), [sym_noreturn] = ACTIONS(4720), [sym_this] = ACTIONS(4720), [sym_abstract] = ACTIONS(4720), [sym_alias] = ACTIONS(4720), [sym_align] = ACTIONS(4720), [sym_auto] = ACTIONS(4720), [sym_class] = ACTIONS(4720), [sym_const] = ACTIONS(4720), [sym_debug] = ACTIONS(4720), [sym_deprecated] = ACTIONS(4720), [sym_else] = ACTIONS(4720), [sym_enum] = ACTIONS(4720), [sym_export] = ACTIONS(4720), [sym_extern] = ACTIONS(4720), [sym_final] = ACTIONS(4720), [sym_immutable] = ACTIONS(4720), [sym_import] = ACTIONS(4720), [sym_inout] = ACTIONS(4720), [sym_interface] = ACTIONS(4720), [sym_invariant] = ACTIONS(4720), [sym_mixin] = ACTIONS(4720), [sym_nothrow] = ACTIONS(4720), [sym_override] = ACTIONS(4720), [sym_package] = ACTIONS(4720), [sym_pragma] = ACTIONS(4720), [sym_private] = ACTIONS(4720), [sym_protected] = ACTIONS(4720), [sym_public] = ACTIONS(4720), [sym_pure] = ACTIONS(4720), [sym_ref] = ACTIONS(4720), [sym_return] = ACTIONS(4720), [sym_scope] = ACTIONS(4720), [sym_shared] = ACTIONS(4720), [sym_static] = ACTIONS(4720), [sym_struct] = ACTIONS(4720), [sym_synchronized] = ACTIONS(4720), [sym_template] = ACTIONS(4720), [sym_typeof] = ACTIONS(4720), [sym_union] = ACTIONS(4720), [sym_unittest] = ACTIONS(4720), [sym_version] = ACTIONS(4720), [sym_while] = ACTIONS(4720), [sym_gshared] = ACTIONS(4720), [sym_traits] = ACTIONS(4720), [sym_vector] = ACTIONS(4720), [sym_void] = ACTIONS(4720), [sym_directive] = ACTIONS(3), }, [2502] = { [sym_identifier] = ACTIONS(4848), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4850), [anon_sym_SEMI] = ACTIONS(4850), [anon_sym_TILDE] = ACTIONS(4850), [anon_sym_AT] = ACTIONS(4850), [sym_bool] = ACTIONS(4848), [sym_byte] = ACTIONS(4848), [sym_ubyte] = ACTIONS(4848), [sym_char] = ACTIONS(4848), [sym_short] = ACTIONS(4848), [sym_ushort] = ACTIONS(4848), [sym_int] = ACTIONS(4848), [sym_uint] = ACTIONS(4848), [sym_long] = ACTIONS(4848), [sym_ulong] = ACTIONS(4848), [sym_cent] = ACTIONS(4848), [sym_ucent] = ACTIONS(4848), [sym_wchar] = ACTIONS(4848), [sym_dchar] = ACTIONS(4848), [sym_float] = ACTIONS(4848), [sym_double] = ACTIONS(4848), [sym_real] = ACTIONS(4848), [sym_ifloat] = ACTIONS(4848), [sym_idouble] = ACTIONS(4848), [sym_ireal] = ACTIONS(4848), [sym_cfloat] = ACTIONS(4848), [sym_cdouble] = ACTIONS(4848), [sym_creal] = ACTIONS(4848), [sym_size_t] = ACTIONS(4848), [sym_ptrdiff_t] = ACTIONS(4848), [sym_string] = ACTIONS(4848), [sym_cstring] = ACTIONS(4848), [sym_dstring] = ACTIONS(4848), [sym_wstring] = ACTIONS(4848), [sym_noreturn] = ACTIONS(4848), [sym_this] = ACTIONS(4848), [sym_abstract] = ACTIONS(4848), [sym_alias] = ACTIONS(4848), [sym_align] = ACTIONS(4848), [sym_auto] = ACTIONS(4848), [sym_catch] = ACTIONS(4848), [sym_class] = ACTIONS(4848), [sym_const] = ACTIONS(4848), [sym_debug] = ACTIONS(4848), [sym_deprecated] = ACTIONS(4848), [sym_else] = ACTIONS(4848), [sym_enum] = ACTIONS(4848), [sym_export] = ACTIONS(4848), [sym_extern] = ACTIONS(4848), [sym_final] = ACTIONS(4848), [sym_finally] = ACTIONS(4848), [sym_immutable] = ACTIONS(4848), [sym_import] = ACTIONS(4848), [sym_inout] = ACTIONS(4848), [sym_interface] = ACTIONS(4848), [sym_invariant] = ACTIONS(4848), [sym_mixin] = ACTIONS(4848), [sym_nothrow] = ACTIONS(4848), [sym_override] = ACTIONS(4848), [sym_package] = ACTIONS(4848), [sym_pragma] = ACTIONS(4848), [sym_private] = ACTIONS(4848), [sym_protected] = ACTIONS(4848), [sym_public] = ACTIONS(4848), [sym_pure] = ACTIONS(4848), [sym_ref] = ACTIONS(4848), [sym_return] = ACTIONS(4848), [sym_scope] = ACTIONS(4848), [sym_shared] = ACTIONS(4848), [sym_static] = ACTIONS(4848), [sym_struct] = ACTIONS(4848), [sym_synchronized] = ACTIONS(4848), [sym_template] = ACTIONS(4848), [sym_typeof] = ACTIONS(4848), [sym_union] = ACTIONS(4848), [sym_unittest] = ACTIONS(4848), [sym_version] = ACTIONS(4848), [sym_while] = ACTIONS(4848), [sym_gshared] = ACTIONS(4848), [sym_traits] = ACTIONS(4848), [sym_vector] = ACTIONS(4848), [sym_void] = ACTIONS(4848), [sym_directive] = ACTIONS(3), }, [2503] = { [sym_identifier] = ACTIONS(5004), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5006), [anon_sym_SEMI] = ACTIONS(5006), [anon_sym_TILDE] = ACTIONS(5006), [anon_sym_AT] = ACTIONS(5006), [sym_bool] = ACTIONS(5004), [sym_byte] = ACTIONS(5004), [sym_ubyte] = ACTIONS(5004), [sym_char] = ACTIONS(5004), [sym_short] = ACTIONS(5004), [sym_ushort] = ACTIONS(5004), [sym_int] = ACTIONS(5004), [sym_uint] = ACTIONS(5004), [sym_long] = ACTIONS(5004), [sym_ulong] = ACTIONS(5004), [sym_cent] = ACTIONS(5004), [sym_ucent] = ACTIONS(5004), [sym_wchar] = ACTIONS(5004), [sym_dchar] = ACTIONS(5004), [sym_float] = ACTIONS(5004), [sym_double] = ACTIONS(5004), [sym_real] = ACTIONS(5004), [sym_ifloat] = ACTIONS(5004), [sym_idouble] = ACTIONS(5004), [sym_ireal] = ACTIONS(5004), [sym_cfloat] = ACTIONS(5004), [sym_cdouble] = ACTIONS(5004), [sym_creal] = ACTIONS(5004), [sym_size_t] = ACTIONS(5004), [sym_ptrdiff_t] = ACTIONS(5004), [sym_string] = ACTIONS(5004), [sym_cstring] = ACTIONS(5004), [sym_dstring] = ACTIONS(5004), [sym_wstring] = ACTIONS(5004), [sym_noreturn] = ACTIONS(5004), [sym_this] = ACTIONS(5004), [sym_abstract] = ACTIONS(5004), [sym_alias] = ACTIONS(5004), [sym_align] = ACTIONS(5004), [sym_auto] = ACTIONS(5004), [sym_catch] = ACTIONS(5004), [sym_class] = ACTIONS(5004), [sym_const] = ACTIONS(5004), [sym_debug] = ACTIONS(5004), [sym_deprecated] = ACTIONS(5004), [sym_else] = ACTIONS(5004), [sym_enum] = ACTIONS(5004), [sym_export] = ACTIONS(5004), [sym_extern] = ACTIONS(5004), [sym_final] = ACTIONS(5004), [sym_finally] = ACTIONS(5004), [sym_immutable] = ACTIONS(5004), [sym_import] = ACTIONS(5004), [sym_inout] = ACTIONS(5004), [sym_interface] = ACTIONS(5004), [sym_invariant] = ACTIONS(5004), [sym_mixin] = ACTIONS(5004), [sym_nothrow] = ACTIONS(5004), [sym_override] = ACTIONS(5004), [sym_package] = ACTIONS(5004), [sym_pragma] = ACTIONS(5004), [sym_private] = ACTIONS(5004), [sym_protected] = ACTIONS(5004), [sym_public] = ACTIONS(5004), [sym_pure] = ACTIONS(5004), [sym_ref] = ACTIONS(5004), [sym_return] = ACTIONS(5004), [sym_scope] = ACTIONS(5004), [sym_shared] = ACTIONS(5004), [sym_static] = ACTIONS(5004), [sym_struct] = ACTIONS(5004), [sym_synchronized] = ACTIONS(5004), [sym_template] = ACTIONS(5004), [sym_typeof] = ACTIONS(5004), [sym_union] = ACTIONS(5004), [sym_unittest] = ACTIONS(5004), [sym_version] = ACTIONS(5004), [sym_while] = ACTIONS(5004), [sym_gshared] = ACTIONS(5004), [sym_traits] = ACTIONS(5004), [sym_vector] = ACTIONS(5004), [sym_void] = ACTIONS(5004), [sym_directive] = ACTIONS(3), }, [2504] = { [sym_identifier] = ACTIONS(5028), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5030), [anon_sym_SEMI] = ACTIONS(5030), [anon_sym_TILDE] = ACTIONS(5030), [anon_sym_AT] = ACTIONS(5030), [sym_bool] = ACTIONS(5028), [sym_byte] = ACTIONS(5028), [sym_ubyte] = ACTIONS(5028), [sym_char] = ACTIONS(5028), [sym_short] = ACTIONS(5028), [sym_ushort] = ACTIONS(5028), [sym_int] = ACTIONS(5028), [sym_uint] = ACTIONS(5028), [sym_long] = ACTIONS(5028), [sym_ulong] = ACTIONS(5028), [sym_cent] = ACTIONS(5028), [sym_ucent] = ACTIONS(5028), [sym_wchar] = ACTIONS(5028), [sym_dchar] = ACTIONS(5028), [sym_float] = ACTIONS(5028), [sym_double] = ACTIONS(5028), [sym_real] = ACTIONS(5028), [sym_ifloat] = ACTIONS(5028), [sym_idouble] = ACTIONS(5028), [sym_ireal] = ACTIONS(5028), [sym_cfloat] = ACTIONS(5028), [sym_cdouble] = ACTIONS(5028), [sym_creal] = ACTIONS(5028), [sym_size_t] = ACTIONS(5028), [sym_ptrdiff_t] = ACTIONS(5028), [sym_string] = ACTIONS(5028), [sym_cstring] = ACTIONS(5028), [sym_dstring] = ACTIONS(5028), [sym_wstring] = ACTIONS(5028), [sym_noreturn] = ACTIONS(5028), [sym_this] = ACTIONS(5028), [sym_abstract] = ACTIONS(5028), [sym_alias] = ACTIONS(5028), [sym_align] = ACTIONS(5028), [sym_auto] = ACTIONS(5028), [sym_catch] = ACTIONS(5028), [sym_class] = ACTIONS(5028), [sym_const] = ACTIONS(5028), [sym_debug] = ACTIONS(5028), [sym_deprecated] = ACTIONS(5028), [sym_else] = ACTIONS(5028), [sym_enum] = ACTIONS(5028), [sym_export] = ACTIONS(5028), [sym_extern] = ACTIONS(5028), [sym_final] = ACTIONS(5028), [sym_finally] = ACTIONS(5028), [sym_immutable] = ACTIONS(5028), [sym_import] = ACTIONS(5028), [sym_inout] = ACTIONS(5028), [sym_interface] = ACTIONS(5028), [sym_invariant] = ACTIONS(5028), [sym_mixin] = ACTIONS(5028), [sym_nothrow] = ACTIONS(5028), [sym_override] = ACTIONS(5028), [sym_package] = ACTIONS(5028), [sym_pragma] = ACTIONS(5028), [sym_private] = ACTIONS(5028), [sym_protected] = ACTIONS(5028), [sym_public] = ACTIONS(5028), [sym_pure] = ACTIONS(5028), [sym_ref] = ACTIONS(5028), [sym_return] = ACTIONS(5028), [sym_scope] = ACTIONS(5028), [sym_shared] = ACTIONS(5028), [sym_static] = ACTIONS(5028), [sym_struct] = ACTIONS(5028), [sym_synchronized] = ACTIONS(5028), [sym_template] = ACTIONS(5028), [sym_typeof] = ACTIONS(5028), [sym_union] = ACTIONS(5028), [sym_unittest] = ACTIONS(5028), [sym_version] = ACTIONS(5028), [sym_while] = ACTIONS(5028), [sym_gshared] = ACTIONS(5028), [sym_traits] = ACTIONS(5028), [sym_vector] = ACTIONS(5028), [sym_void] = ACTIONS(5028), [sym_directive] = ACTIONS(3), }, [2505] = { [ts_builtin_sym_end] = ACTIONS(4714), [sym_identifier] = ACTIONS(4712), [sym_end_file] = ACTIONS(4712), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4714), [anon_sym_SEMI] = ACTIONS(4714), [anon_sym_TILDE] = ACTIONS(4714), [anon_sym_AT] = ACTIONS(4714), [sym_bool] = ACTIONS(4712), [sym_byte] = ACTIONS(4712), [sym_ubyte] = ACTIONS(4712), [sym_char] = ACTIONS(4712), [sym_short] = ACTIONS(4712), [sym_ushort] = ACTIONS(4712), [sym_int] = ACTIONS(4712), [sym_uint] = ACTIONS(4712), [sym_long] = ACTIONS(4712), [sym_ulong] = ACTIONS(4712), [sym_cent] = ACTIONS(4712), [sym_ucent] = ACTIONS(4712), [sym_wchar] = ACTIONS(4712), [sym_dchar] = ACTIONS(4712), [sym_float] = ACTIONS(4712), [sym_double] = ACTIONS(4712), [sym_real] = ACTIONS(4712), [sym_ifloat] = ACTIONS(4712), [sym_idouble] = ACTIONS(4712), [sym_ireal] = ACTIONS(4712), [sym_cfloat] = ACTIONS(4712), [sym_cdouble] = ACTIONS(4712), [sym_creal] = ACTIONS(4712), [sym_size_t] = ACTIONS(4712), [sym_ptrdiff_t] = ACTIONS(4712), [sym_string] = ACTIONS(4712), [sym_cstring] = ACTIONS(4712), [sym_dstring] = ACTIONS(4712), [sym_wstring] = ACTIONS(4712), [sym_noreturn] = ACTIONS(4712), [sym_this] = ACTIONS(4712), [sym_abstract] = ACTIONS(4712), [sym_alias] = ACTIONS(4712), [sym_align] = ACTIONS(4712), [sym_auto] = ACTIONS(4712), [sym_class] = ACTIONS(4712), [sym_const] = ACTIONS(4712), [sym_debug] = ACTIONS(4712), [sym_deprecated] = ACTIONS(4712), [sym_else] = ACTIONS(4712), [sym_enum] = ACTIONS(4712), [sym_export] = ACTIONS(4712), [sym_extern] = ACTIONS(4712), [sym_final] = ACTIONS(4712), [sym_immutable] = ACTIONS(4712), [sym_import] = ACTIONS(4712), [sym_inout] = ACTIONS(4712), [sym_interface] = ACTIONS(4712), [sym_invariant] = ACTIONS(4712), [sym_mixin] = ACTIONS(4712), [sym_nothrow] = ACTIONS(4712), [sym_override] = ACTIONS(4712), [sym_package] = ACTIONS(4712), [sym_pragma] = ACTIONS(4712), [sym_private] = ACTIONS(4712), [sym_protected] = ACTIONS(4712), [sym_public] = ACTIONS(4712), [sym_pure] = ACTIONS(4712), [sym_ref] = ACTIONS(4712), [sym_return] = ACTIONS(4712), [sym_scope] = ACTIONS(4712), [sym_shared] = ACTIONS(4712), [sym_static] = ACTIONS(4712), [sym_struct] = ACTIONS(4712), [sym_synchronized] = ACTIONS(4712), [sym_template] = ACTIONS(4712), [sym_typeof] = ACTIONS(4712), [sym_union] = ACTIONS(4712), [sym_unittest] = ACTIONS(4712), [sym_version] = ACTIONS(4712), [sym_while] = ACTIONS(4712), [sym_gshared] = ACTIONS(4712), [sym_traits] = ACTIONS(4712), [sym_vector] = ACTIONS(4712), [sym_void] = ACTIONS(4712), [sym_directive] = ACTIONS(3), }, [2506] = { [sym_identifier] = ACTIONS(4754), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4756), [anon_sym_SEMI] = ACTIONS(4756), [anon_sym_TILDE] = ACTIONS(4756), [anon_sym_AT] = ACTIONS(4756), [sym_bool] = ACTIONS(4754), [sym_byte] = ACTIONS(4754), [sym_ubyte] = ACTIONS(4754), [sym_char] = ACTIONS(4754), [sym_short] = ACTIONS(4754), [sym_ushort] = ACTIONS(4754), [sym_int] = ACTIONS(4754), [sym_uint] = ACTIONS(4754), [sym_long] = ACTIONS(4754), [sym_ulong] = ACTIONS(4754), [sym_cent] = ACTIONS(4754), [sym_ucent] = ACTIONS(4754), [sym_wchar] = ACTIONS(4754), [sym_dchar] = ACTIONS(4754), [sym_float] = ACTIONS(4754), [sym_double] = ACTIONS(4754), [sym_real] = ACTIONS(4754), [sym_ifloat] = ACTIONS(4754), [sym_idouble] = ACTIONS(4754), [sym_ireal] = ACTIONS(4754), [sym_cfloat] = ACTIONS(4754), [sym_cdouble] = ACTIONS(4754), [sym_creal] = ACTIONS(4754), [sym_size_t] = ACTIONS(4754), [sym_ptrdiff_t] = ACTIONS(4754), [sym_string] = ACTIONS(4754), [sym_cstring] = ACTIONS(4754), [sym_dstring] = ACTIONS(4754), [sym_wstring] = ACTIONS(4754), [sym_noreturn] = ACTIONS(4754), [sym_this] = ACTIONS(4754), [sym_abstract] = ACTIONS(4754), [sym_alias] = ACTIONS(4754), [sym_align] = ACTIONS(4754), [sym_auto] = ACTIONS(4754), [sym_catch] = ACTIONS(4754), [sym_class] = ACTIONS(4754), [sym_const] = ACTIONS(4754), [sym_debug] = ACTIONS(4754), [sym_deprecated] = ACTIONS(4754), [sym_else] = ACTIONS(4754), [sym_enum] = ACTIONS(4754), [sym_export] = ACTIONS(4754), [sym_extern] = ACTIONS(4754), [sym_final] = ACTIONS(4754), [sym_finally] = ACTIONS(4754), [sym_immutable] = ACTIONS(4754), [sym_import] = ACTIONS(4754), [sym_inout] = ACTIONS(4754), [sym_interface] = ACTIONS(4754), [sym_invariant] = ACTIONS(4754), [sym_mixin] = ACTIONS(4754), [sym_nothrow] = ACTIONS(4754), [sym_override] = ACTIONS(4754), [sym_package] = ACTIONS(4754), [sym_pragma] = ACTIONS(4754), [sym_private] = ACTIONS(4754), [sym_protected] = ACTIONS(4754), [sym_public] = ACTIONS(4754), [sym_pure] = ACTIONS(4754), [sym_ref] = ACTIONS(4754), [sym_return] = ACTIONS(4754), [sym_scope] = ACTIONS(4754), [sym_shared] = ACTIONS(4754), [sym_static] = ACTIONS(4754), [sym_struct] = ACTIONS(4754), [sym_synchronized] = ACTIONS(4754), [sym_template] = ACTIONS(4754), [sym_typeof] = ACTIONS(4754), [sym_union] = ACTIONS(4754), [sym_unittest] = ACTIONS(4754), [sym_version] = ACTIONS(4754), [sym_while] = ACTIONS(4754), [sym_gshared] = ACTIONS(4754), [sym_traits] = ACTIONS(4754), [sym_vector] = ACTIONS(4754), [sym_void] = ACTIONS(4754), [sym_directive] = ACTIONS(3), }, [2507] = { [sym_identifier] = ACTIONS(4814), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4816), [anon_sym_SEMI] = ACTIONS(4816), [anon_sym_TILDE] = ACTIONS(4816), [anon_sym_AT] = ACTIONS(4816), [sym_bool] = ACTIONS(4814), [sym_byte] = ACTIONS(4814), [sym_ubyte] = ACTIONS(4814), [sym_char] = ACTIONS(4814), [sym_short] = ACTIONS(4814), [sym_ushort] = ACTIONS(4814), [sym_int] = ACTIONS(4814), [sym_uint] = ACTIONS(4814), [sym_long] = ACTIONS(4814), [sym_ulong] = ACTIONS(4814), [sym_cent] = ACTIONS(4814), [sym_ucent] = ACTIONS(4814), [sym_wchar] = ACTIONS(4814), [sym_dchar] = ACTIONS(4814), [sym_float] = ACTIONS(4814), [sym_double] = ACTIONS(4814), [sym_real] = ACTIONS(4814), [sym_ifloat] = ACTIONS(4814), [sym_idouble] = ACTIONS(4814), [sym_ireal] = ACTIONS(4814), [sym_cfloat] = ACTIONS(4814), [sym_cdouble] = ACTIONS(4814), [sym_creal] = ACTIONS(4814), [sym_size_t] = ACTIONS(4814), [sym_ptrdiff_t] = ACTIONS(4814), [sym_string] = ACTIONS(4814), [sym_cstring] = ACTIONS(4814), [sym_dstring] = ACTIONS(4814), [sym_wstring] = ACTIONS(4814), [sym_noreturn] = ACTIONS(4814), [sym_this] = ACTIONS(4814), [sym_abstract] = ACTIONS(4814), [sym_alias] = ACTIONS(4814), [sym_align] = ACTIONS(4814), [sym_auto] = ACTIONS(4814), [sym_catch] = ACTIONS(4814), [sym_class] = ACTIONS(4814), [sym_const] = ACTIONS(4814), [sym_debug] = ACTIONS(4814), [sym_deprecated] = ACTIONS(4814), [sym_else] = ACTIONS(4814), [sym_enum] = ACTIONS(4814), [sym_export] = ACTIONS(4814), [sym_extern] = ACTIONS(4814), [sym_final] = ACTIONS(4814), [sym_finally] = ACTIONS(4814), [sym_immutable] = ACTIONS(4814), [sym_import] = ACTIONS(4814), [sym_inout] = ACTIONS(4814), [sym_interface] = ACTIONS(4814), [sym_invariant] = ACTIONS(4814), [sym_mixin] = ACTIONS(4814), [sym_nothrow] = ACTIONS(4814), [sym_override] = ACTIONS(4814), [sym_package] = ACTIONS(4814), [sym_pragma] = ACTIONS(4814), [sym_private] = ACTIONS(4814), [sym_protected] = ACTIONS(4814), [sym_public] = ACTIONS(4814), [sym_pure] = ACTIONS(4814), [sym_ref] = ACTIONS(4814), [sym_return] = ACTIONS(4814), [sym_scope] = ACTIONS(4814), [sym_shared] = ACTIONS(4814), [sym_static] = ACTIONS(4814), [sym_struct] = ACTIONS(4814), [sym_synchronized] = ACTIONS(4814), [sym_template] = ACTIONS(4814), [sym_typeof] = ACTIONS(4814), [sym_union] = ACTIONS(4814), [sym_unittest] = ACTIONS(4814), [sym_version] = ACTIONS(4814), [sym_while] = ACTIONS(4814), [sym_gshared] = ACTIONS(4814), [sym_traits] = ACTIONS(4814), [sym_vector] = ACTIONS(4814), [sym_void] = ACTIONS(4814), [sym_directive] = ACTIONS(3), }, [2508] = { [sym_identifier] = ACTIONS(4818), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4820), [anon_sym_SEMI] = ACTIONS(4820), [anon_sym_TILDE] = ACTIONS(4820), [anon_sym_AT] = ACTIONS(4820), [sym_bool] = ACTIONS(4818), [sym_byte] = ACTIONS(4818), [sym_ubyte] = ACTIONS(4818), [sym_char] = ACTIONS(4818), [sym_short] = ACTIONS(4818), [sym_ushort] = ACTIONS(4818), [sym_int] = ACTIONS(4818), [sym_uint] = ACTIONS(4818), [sym_long] = ACTIONS(4818), [sym_ulong] = ACTIONS(4818), [sym_cent] = ACTIONS(4818), [sym_ucent] = ACTIONS(4818), [sym_wchar] = ACTIONS(4818), [sym_dchar] = ACTIONS(4818), [sym_float] = ACTIONS(4818), [sym_double] = ACTIONS(4818), [sym_real] = ACTIONS(4818), [sym_ifloat] = ACTIONS(4818), [sym_idouble] = ACTIONS(4818), [sym_ireal] = ACTIONS(4818), [sym_cfloat] = ACTIONS(4818), [sym_cdouble] = ACTIONS(4818), [sym_creal] = ACTIONS(4818), [sym_size_t] = ACTIONS(4818), [sym_ptrdiff_t] = ACTIONS(4818), [sym_string] = ACTIONS(4818), [sym_cstring] = ACTIONS(4818), [sym_dstring] = ACTIONS(4818), [sym_wstring] = ACTIONS(4818), [sym_noreturn] = ACTIONS(4818), [sym_this] = ACTIONS(4818), [sym_abstract] = ACTIONS(4818), [sym_alias] = ACTIONS(4818), [sym_align] = ACTIONS(4818), [sym_auto] = ACTIONS(4818), [sym_catch] = ACTIONS(4818), [sym_class] = ACTIONS(4818), [sym_const] = ACTIONS(4818), [sym_debug] = ACTIONS(4818), [sym_deprecated] = ACTIONS(4818), [sym_else] = ACTIONS(4818), [sym_enum] = ACTIONS(4818), [sym_export] = ACTIONS(4818), [sym_extern] = ACTIONS(4818), [sym_final] = ACTIONS(4818), [sym_finally] = ACTIONS(4818), [sym_immutable] = ACTIONS(4818), [sym_import] = ACTIONS(4818), [sym_inout] = ACTIONS(4818), [sym_interface] = ACTIONS(4818), [sym_invariant] = ACTIONS(4818), [sym_mixin] = ACTIONS(4818), [sym_nothrow] = ACTIONS(4818), [sym_override] = ACTIONS(4818), [sym_package] = ACTIONS(4818), [sym_pragma] = ACTIONS(4818), [sym_private] = ACTIONS(4818), [sym_protected] = ACTIONS(4818), [sym_public] = ACTIONS(4818), [sym_pure] = ACTIONS(4818), [sym_ref] = ACTIONS(4818), [sym_return] = ACTIONS(4818), [sym_scope] = ACTIONS(4818), [sym_shared] = ACTIONS(4818), [sym_static] = ACTIONS(4818), [sym_struct] = ACTIONS(4818), [sym_synchronized] = ACTIONS(4818), [sym_template] = ACTIONS(4818), [sym_typeof] = ACTIONS(4818), [sym_union] = ACTIONS(4818), [sym_unittest] = ACTIONS(4818), [sym_version] = ACTIONS(4818), [sym_while] = ACTIONS(4818), [sym_gshared] = ACTIONS(4818), [sym_traits] = ACTIONS(4818), [sym_vector] = ACTIONS(4818), [sym_void] = ACTIONS(4818), [sym_directive] = ACTIONS(3), }, [2509] = { [sym_identifier] = ACTIONS(4694), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4696), [anon_sym_SEMI] = ACTIONS(4696), [anon_sym_TILDE] = ACTIONS(4696), [anon_sym_AT] = ACTIONS(4696), [sym_bool] = ACTIONS(4694), [sym_byte] = ACTIONS(4694), [sym_ubyte] = ACTIONS(4694), [sym_char] = ACTIONS(4694), [sym_short] = ACTIONS(4694), [sym_ushort] = ACTIONS(4694), [sym_int] = ACTIONS(4694), [sym_uint] = ACTIONS(4694), [sym_long] = ACTIONS(4694), [sym_ulong] = ACTIONS(4694), [sym_cent] = ACTIONS(4694), [sym_ucent] = ACTIONS(4694), [sym_wchar] = ACTIONS(4694), [sym_dchar] = ACTIONS(4694), [sym_float] = ACTIONS(4694), [sym_double] = ACTIONS(4694), [sym_real] = ACTIONS(4694), [sym_ifloat] = ACTIONS(4694), [sym_idouble] = ACTIONS(4694), [sym_ireal] = ACTIONS(4694), [sym_cfloat] = ACTIONS(4694), [sym_cdouble] = ACTIONS(4694), [sym_creal] = ACTIONS(4694), [sym_size_t] = ACTIONS(4694), [sym_ptrdiff_t] = ACTIONS(4694), [sym_string] = ACTIONS(4694), [sym_cstring] = ACTIONS(4694), [sym_dstring] = ACTIONS(4694), [sym_wstring] = ACTIONS(4694), [sym_noreturn] = ACTIONS(4694), [sym_this] = ACTIONS(4694), [sym_abstract] = ACTIONS(4694), [sym_alias] = ACTIONS(4694), [sym_align] = ACTIONS(4694), [sym_auto] = ACTIONS(4694), [sym_catch] = ACTIONS(4694), [sym_class] = ACTIONS(4694), [sym_const] = ACTIONS(4694), [sym_debug] = ACTIONS(4694), [sym_deprecated] = ACTIONS(4694), [sym_else] = ACTIONS(4694), [sym_enum] = ACTIONS(4694), [sym_export] = ACTIONS(4694), [sym_extern] = ACTIONS(4694), [sym_final] = ACTIONS(4694), [sym_finally] = ACTIONS(4694), [sym_immutable] = ACTIONS(4694), [sym_import] = ACTIONS(4694), [sym_inout] = ACTIONS(4694), [sym_interface] = ACTIONS(4694), [sym_invariant] = ACTIONS(4694), [sym_mixin] = ACTIONS(4694), [sym_nothrow] = ACTIONS(4694), [sym_override] = ACTIONS(4694), [sym_package] = ACTIONS(4694), [sym_pragma] = ACTIONS(4694), [sym_private] = ACTIONS(4694), [sym_protected] = ACTIONS(4694), [sym_public] = ACTIONS(4694), [sym_pure] = ACTIONS(4694), [sym_ref] = ACTIONS(4694), [sym_return] = ACTIONS(4694), [sym_scope] = ACTIONS(4694), [sym_shared] = ACTIONS(4694), [sym_static] = ACTIONS(4694), [sym_struct] = ACTIONS(4694), [sym_synchronized] = ACTIONS(4694), [sym_template] = ACTIONS(4694), [sym_typeof] = ACTIONS(4694), [sym_union] = ACTIONS(4694), [sym_unittest] = ACTIONS(4694), [sym_version] = ACTIONS(4694), [sym_while] = ACTIONS(4694), [sym_gshared] = ACTIONS(4694), [sym_traits] = ACTIONS(4694), [sym_vector] = ACTIONS(4694), [sym_void] = ACTIONS(4694), [sym_directive] = ACTIONS(3), }, [2510] = { [sym_identifier] = ACTIONS(4822), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4824), [anon_sym_SEMI] = ACTIONS(4824), [anon_sym_TILDE] = ACTIONS(4824), [anon_sym_AT] = ACTIONS(4824), [sym_bool] = ACTIONS(4822), [sym_byte] = ACTIONS(4822), [sym_ubyte] = ACTIONS(4822), [sym_char] = ACTIONS(4822), [sym_short] = ACTIONS(4822), [sym_ushort] = ACTIONS(4822), [sym_int] = ACTIONS(4822), [sym_uint] = ACTIONS(4822), [sym_long] = ACTIONS(4822), [sym_ulong] = ACTIONS(4822), [sym_cent] = ACTIONS(4822), [sym_ucent] = ACTIONS(4822), [sym_wchar] = ACTIONS(4822), [sym_dchar] = ACTIONS(4822), [sym_float] = ACTIONS(4822), [sym_double] = ACTIONS(4822), [sym_real] = ACTIONS(4822), [sym_ifloat] = ACTIONS(4822), [sym_idouble] = ACTIONS(4822), [sym_ireal] = ACTIONS(4822), [sym_cfloat] = ACTIONS(4822), [sym_cdouble] = ACTIONS(4822), [sym_creal] = ACTIONS(4822), [sym_size_t] = ACTIONS(4822), [sym_ptrdiff_t] = ACTIONS(4822), [sym_string] = ACTIONS(4822), [sym_cstring] = ACTIONS(4822), [sym_dstring] = ACTIONS(4822), [sym_wstring] = ACTIONS(4822), [sym_noreturn] = ACTIONS(4822), [sym_this] = ACTIONS(4822), [sym_abstract] = ACTIONS(4822), [sym_alias] = ACTIONS(4822), [sym_align] = ACTIONS(4822), [sym_auto] = ACTIONS(4822), [sym_catch] = ACTIONS(4822), [sym_class] = ACTIONS(4822), [sym_const] = ACTIONS(4822), [sym_debug] = ACTIONS(4822), [sym_deprecated] = ACTIONS(4822), [sym_else] = ACTIONS(4822), [sym_enum] = ACTIONS(4822), [sym_export] = ACTIONS(4822), [sym_extern] = ACTIONS(4822), [sym_final] = ACTIONS(4822), [sym_finally] = ACTIONS(4822), [sym_immutable] = ACTIONS(4822), [sym_import] = ACTIONS(4822), [sym_inout] = ACTIONS(4822), [sym_interface] = ACTIONS(4822), [sym_invariant] = ACTIONS(4822), [sym_mixin] = ACTIONS(4822), [sym_nothrow] = ACTIONS(4822), [sym_override] = ACTIONS(4822), [sym_package] = ACTIONS(4822), [sym_pragma] = ACTIONS(4822), [sym_private] = ACTIONS(4822), [sym_protected] = ACTIONS(4822), [sym_public] = ACTIONS(4822), [sym_pure] = ACTIONS(4822), [sym_ref] = ACTIONS(4822), [sym_return] = ACTIONS(4822), [sym_scope] = ACTIONS(4822), [sym_shared] = ACTIONS(4822), [sym_static] = ACTIONS(4822), [sym_struct] = ACTIONS(4822), [sym_synchronized] = ACTIONS(4822), [sym_template] = ACTIONS(4822), [sym_typeof] = ACTIONS(4822), [sym_union] = ACTIONS(4822), [sym_unittest] = ACTIONS(4822), [sym_version] = ACTIONS(4822), [sym_while] = ACTIONS(4822), [sym_gshared] = ACTIONS(4822), [sym_traits] = ACTIONS(4822), [sym_vector] = ACTIONS(4822), [sym_void] = ACTIONS(4822), [sym_directive] = ACTIONS(3), }, [2511] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_finally] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [sym_directive] = ACTIONS(3), }, [2512] = { [ts_builtin_sym_end] = ACTIONS(4834), [sym_identifier] = ACTIONS(4832), [sym_end_file] = ACTIONS(4832), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4834), [anon_sym_SEMI] = ACTIONS(4834), [anon_sym_TILDE] = ACTIONS(4834), [anon_sym_AT] = ACTIONS(4834), [sym_bool] = ACTIONS(4832), [sym_byte] = ACTIONS(4832), [sym_ubyte] = ACTIONS(4832), [sym_char] = ACTIONS(4832), [sym_short] = ACTIONS(4832), [sym_ushort] = ACTIONS(4832), [sym_int] = ACTIONS(4832), [sym_uint] = ACTIONS(4832), [sym_long] = ACTIONS(4832), [sym_ulong] = ACTIONS(4832), [sym_cent] = ACTIONS(4832), [sym_ucent] = ACTIONS(4832), [sym_wchar] = ACTIONS(4832), [sym_dchar] = ACTIONS(4832), [sym_float] = ACTIONS(4832), [sym_double] = ACTIONS(4832), [sym_real] = ACTIONS(4832), [sym_ifloat] = ACTIONS(4832), [sym_idouble] = ACTIONS(4832), [sym_ireal] = ACTIONS(4832), [sym_cfloat] = ACTIONS(4832), [sym_cdouble] = ACTIONS(4832), [sym_creal] = ACTIONS(4832), [sym_size_t] = ACTIONS(4832), [sym_ptrdiff_t] = ACTIONS(4832), [sym_string] = ACTIONS(4832), [sym_cstring] = ACTIONS(4832), [sym_dstring] = ACTIONS(4832), [sym_wstring] = ACTIONS(4832), [sym_noreturn] = ACTIONS(4832), [sym_this] = ACTIONS(4832), [sym_abstract] = ACTIONS(4832), [sym_alias] = ACTIONS(4832), [sym_align] = ACTIONS(4832), [sym_auto] = ACTIONS(4832), [sym_class] = ACTIONS(4832), [sym_const] = ACTIONS(4832), [sym_debug] = ACTIONS(4832), [sym_deprecated] = ACTIONS(4832), [sym_else] = ACTIONS(4832), [sym_enum] = ACTIONS(4832), [sym_export] = ACTIONS(4832), [sym_extern] = ACTIONS(4832), [sym_final] = ACTIONS(4832), [sym_immutable] = ACTIONS(4832), [sym_import] = ACTIONS(4832), [sym_inout] = ACTIONS(4832), [sym_interface] = ACTIONS(4832), [sym_invariant] = ACTIONS(4832), [sym_mixin] = ACTIONS(4832), [sym_nothrow] = ACTIONS(4832), [sym_override] = ACTIONS(4832), [sym_package] = ACTIONS(4832), [sym_pragma] = ACTIONS(4832), [sym_private] = ACTIONS(4832), [sym_protected] = ACTIONS(4832), [sym_public] = ACTIONS(4832), [sym_pure] = ACTIONS(4832), [sym_ref] = ACTIONS(4832), [sym_return] = ACTIONS(4832), [sym_scope] = ACTIONS(4832), [sym_shared] = ACTIONS(4832), [sym_static] = ACTIONS(4832), [sym_struct] = ACTIONS(4832), [sym_synchronized] = ACTIONS(4832), [sym_template] = ACTIONS(4832), [sym_typeof] = ACTIONS(4832), [sym_union] = ACTIONS(4832), [sym_unittest] = ACTIONS(4832), [sym_version] = ACTIONS(4832), [sym_while] = ACTIONS(4832), [sym_gshared] = ACTIONS(4832), [sym_traits] = ACTIONS(4832), [sym_vector] = ACTIONS(4832), [sym_void] = ACTIONS(4832), [sym_directive] = ACTIONS(3), }, [2513] = { [sym_identifier] = ACTIONS(4892), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4894), [anon_sym_SEMI] = ACTIONS(4894), [anon_sym_TILDE] = ACTIONS(4894), [anon_sym_AT] = ACTIONS(4894), [sym_bool] = ACTIONS(4892), [sym_byte] = ACTIONS(4892), [sym_ubyte] = ACTIONS(4892), [sym_char] = ACTIONS(4892), [sym_short] = ACTIONS(4892), [sym_ushort] = ACTIONS(4892), [sym_int] = ACTIONS(4892), [sym_uint] = ACTIONS(4892), [sym_long] = ACTIONS(4892), [sym_ulong] = ACTIONS(4892), [sym_cent] = ACTIONS(4892), [sym_ucent] = ACTIONS(4892), [sym_wchar] = ACTIONS(4892), [sym_dchar] = ACTIONS(4892), [sym_float] = ACTIONS(4892), [sym_double] = ACTIONS(4892), [sym_real] = ACTIONS(4892), [sym_ifloat] = ACTIONS(4892), [sym_idouble] = ACTIONS(4892), [sym_ireal] = ACTIONS(4892), [sym_cfloat] = ACTIONS(4892), [sym_cdouble] = ACTIONS(4892), [sym_creal] = ACTIONS(4892), [sym_size_t] = ACTIONS(4892), [sym_ptrdiff_t] = ACTIONS(4892), [sym_string] = ACTIONS(4892), [sym_cstring] = ACTIONS(4892), [sym_dstring] = ACTIONS(4892), [sym_wstring] = ACTIONS(4892), [sym_noreturn] = ACTIONS(4892), [sym_this] = ACTIONS(4892), [sym_abstract] = ACTIONS(4892), [sym_alias] = ACTIONS(4892), [sym_align] = ACTIONS(4892), [sym_auto] = ACTIONS(4892), [sym_catch] = ACTIONS(4892), [sym_class] = ACTIONS(4892), [sym_const] = ACTIONS(4892), [sym_debug] = ACTIONS(4892), [sym_deprecated] = ACTIONS(4892), [sym_else] = ACTIONS(4892), [sym_enum] = ACTIONS(4892), [sym_export] = ACTIONS(4892), [sym_extern] = ACTIONS(4892), [sym_final] = ACTIONS(4892), [sym_finally] = ACTIONS(4892), [sym_immutable] = ACTIONS(4892), [sym_import] = ACTIONS(4892), [sym_inout] = ACTIONS(4892), [sym_interface] = ACTIONS(4892), [sym_invariant] = ACTIONS(4892), [sym_mixin] = ACTIONS(4892), [sym_nothrow] = ACTIONS(4892), [sym_override] = ACTIONS(4892), [sym_package] = ACTIONS(4892), [sym_pragma] = ACTIONS(4892), [sym_private] = ACTIONS(4892), [sym_protected] = ACTIONS(4892), [sym_public] = ACTIONS(4892), [sym_pure] = ACTIONS(4892), [sym_ref] = ACTIONS(4892), [sym_return] = ACTIONS(4892), [sym_scope] = ACTIONS(4892), [sym_shared] = ACTIONS(4892), [sym_static] = ACTIONS(4892), [sym_struct] = ACTIONS(4892), [sym_synchronized] = ACTIONS(4892), [sym_template] = ACTIONS(4892), [sym_typeof] = ACTIONS(4892), [sym_union] = ACTIONS(4892), [sym_unittest] = ACTIONS(4892), [sym_version] = ACTIONS(4892), [sym_while] = ACTIONS(4892), [sym_gshared] = ACTIONS(4892), [sym_traits] = ACTIONS(4892), [sym_vector] = ACTIONS(4892), [sym_void] = ACTIONS(4892), [sym_directive] = ACTIONS(3), }, [2514] = { [ts_builtin_sym_end] = ACTIONS(4838), [sym_identifier] = ACTIONS(4836), [sym_end_file] = ACTIONS(4836), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4838), [anon_sym_SEMI] = ACTIONS(4838), [anon_sym_TILDE] = ACTIONS(4838), [anon_sym_AT] = ACTIONS(4838), [sym_bool] = ACTIONS(4836), [sym_byte] = ACTIONS(4836), [sym_ubyte] = ACTIONS(4836), [sym_char] = ACTIONS(4836), [sym_short] = ACTIONS(4836), [sym_ushort] = ACTIONS(4836), [sym_int] = ACTIONS(4836), [sym_uint] = ACTIONS(4836), [sym_long] = ACTIONS(4836), [sym_ulong] = ACTIONS(4836), [sym_cent] = ACTIONS(4836), [sym_ucent] = ACTIONS(4836), [sym_wchar] = ACTIONS(4836), [sym_dchar] = ACTIONS(4836), [sym_float] = ACTIONS(4836), [sym_double] = ACTIONS(4836), [sym_real] = ACTIONS(4836), [sym_ifloat] = ACTIONS(4836), [sym_idouble] = ACTIONS(4836), [sym_ireal] = ACTIONS(4836), [sym_cfloat] = ACTIONS(4836), [sym_cdouble] = ACTIONS(4836), [sym_creal] = ACTIONS(4836), [sym_size_t] = ACTIONS(4836), [sym_ptrdiff_t] = ACTIONS(4836), [sym_string] = ACTIONS(4836), [sym_cstring] = ACTIONS(4836), [sym_dstring] = ACTIONS(4836), [sym_wstring] = ACTIONS(4836), [sym_noreturn] = ACTIONS(4836), [sym_this] = ACTIONS(4836), [sym_abstract] = ACTIONS(4836), [sym_alias] = ACTIONS(4836), [sym_align] = ACTIONS(4836), [sym_auto] = ACTIONS(4836), [sym_class] = ACTIONS(4836), [sym_const] = ACTIONS(4836), [sym_debug] = ACTIONS(4836), [sym_deprecated] = ACTIONS(4836), [sym_else] = ACTIONS(4836), [sym_enum] = ACTIONS(4836), [sym_export] = ACTIONS(4836), [sym_extern] = ACTIONS(4836), [sym_final] = ACTIONS(4836), [sym_immutable] = ACTIONS(4836), [sym_import] = ACTIONS(4836), [sym_inout] = ACTIONS(4836), [sym_interface] = ACTIONS(4836), [sym_invariant] = ACTIONS(4836), [sym_mixin] = ACTIONS(4836), [sym_nothrow] = ACTIONS(4836), [sym_override] = ACTIONS(4836), [sym_package] = ACTIONS(4836), [sym_pragma] = ACTIONS(4836), [sym_private] = ACTIONS(4836), [sym_protected] = ACTIONS(4836), [sym_public] = ACTIONS(4836), [sym_pure] = ACTIONS(4836), [sym_ref] = ACTIONS(4836), [sym_return] = ACTIONS(4836), [sym_scope] = ACTIONS(4836), [sym_shared] = ACTIONS(4836), [sym_static] = ACTIONS(4836), [sym_struct] = ACTIONS(4836), [sym_synchronized] = ACTIONS(4836), [sym_template] = ACTIONS(4836), [sym_typeof] = ACTIONS(4836), [sym_union] = ACTIONS(4836), [sym_unittest] = ACTIONS(4836), [sym_version] = ACTIONS(4836), [sym_while] = ACTIONS(4836), [sym_gshared] = ACTIONS(4836), [sym_traits] = ACTIONS(4836), [sym_vector] = ACTIONS(4836), [sym_void] = ACTIONS(4836), [sym_directive] = ACTIONS(3), }, [2515] = { [ts_builtin_sym_end] = ACTIONS(4846), [sym_identifier] = ACTIONS(4844), [sym_end_file] = ACTIONS(4844), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4846), [anon_sym_SEMI] = ACTIONS(4846), [anon_sym_TILDE] = ACTIONS(4846), [anon_sym_AT] = ACTIONS(4846), [sym_bool] = ACTIONS(4844), [sym_byte] = ACTIONS(4844), [sym_ubyte] = ACTIONS(4844), [sym_char] = ACTIONS(4844), [sym_short] = ACTIONS(4844), [sym_ushort] = ACTIONS(4844), [sym_int] = ACTIONS(4844), [sym_uint] = ACTIONS(4844), [sym_long] = ACTIONS(4844), [sym_ulong] = ACTIONS(4844), [sym_cent] = ACTIONS(4844), [sym_ucent] = ACTIONS(4844), [sym_wchar] = ACTIONS(4844), [sym_dchar] = ACTIONS(4844), [sym_float] = ACTIONS(4844), [sym_double] = ACTIONS(4844), [sym_real] = ACTIONS(4844), [sym_ifloat] = ACTIONS(4844), [sym_idouble] = ACTIONS(4844), [sym_ireal] = ACTIONS(4844), [sym_cfloat] = ACTIONS(4844), [sym_cdouble] = ACTIONS(4844), [sym_creal] = ACTIONS(4844), [sym_size_t] = ACTIONS(4844), [sym_ptrdiff_t] = ACTIONS(4844), [sym_string] = ACTIONS(4844), [sym_cstring] = ACTIONS(4844), [sym_dstring] = ACTIONS(4844), [sym_wstring] = ACTIONS(4844), [sym_noreturn] = ACTIONS(4844), [sym_this] = ACTIONS(4844), [sym_abstract] = ACTIONS(4844), [sym_alias] = ACTIONS(4844), [sym_align] = ACTIONS(4844), [sym_auto] = ACTIONS(4844), [sym_class] = ACTIONS(4844), [sym_const] = ACTIONS(4844), [sym_debug] = ACTIONS(4844), [sym_deprecated] = ACTIONS(4844), [sym_else] = ACTIONS(4844), [sym_enum] = ACTIONS(4844), [sym_export] = ACTIONS(4844), [sym_extern] = ACTIONS(4844), [sym_final] = ACTIONS(4844), [sym_immutable] = ACTIONS(4844), [sym_import] = ACTIONS(4844), [sym_inout] = ACTIONS(4844), [sym_interface] = ACTIONS(4844), [sym_invariant] = ACTIONS(4844), [sym_mixin] = ACTIONS(4844), [sym_nothrow] = ACTIONS(4844), [sym_override] = ACTIONS(4844), [sym_package] = ACTIONS(4844), [sym_pragma] = ACTIONS(4844), [sym_private] = ACTIONS(4844), [sym_protected] = ACTIONS(4844), [sym_public] = ACTIONS(4844), [sym_pure] = ACTIONS(4844), [sym_ref] = ACTIONS(4844), [sym_return] = ACTIONS(4844), [sym_scope] = ACTIONS(4844), [sym_shared] = ACTIONS(4844), [sym_static] = ACTIONS(4844), [sym_struct] = ACTIONS(4844), [sym_synchronized] = ACTIONS(4844), [sym_template] = ACTIONS(4844), [sym_typeof] = ACTIONS(4844), [sym_union] = ACTIONS(4844), [sym_unittest] = ACTIONS(4844), [sym_version] = ACTIONS(4844), [sym_while] = ACTIONS(4844), [sym_gshared] = ACTIONS(4844), [sym_traits] = ACTIONS(4844), [sym_vector] = ACTIONS(4844), [sym_void] = ACTIONS(4844), [sym_directive] = ACTIONS(3), }, [2516] = { [ts_builtin_sym_end] = ACTIONS(5042), [sym_identifier] = ACTIONS(5040), [sym_end_file] = ACTIONS(5040), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5042), [anon_sym_SEMI] = ACTIONS(5042), [anon_sym_TILDE] = ACTIONS(5042), [anon_sym_AT] = ACTIONS(5042), [sym_bool] = ACTIONS(5040), [sym_byte] = ACTIONS(5040), [sym_ubyte] = ACTIONS(5040), [sym_char] = ACTIONS(5040), [sym_short] = ACTIONS(5040), [sym_ushort] = ACTIONS(5040), [sym_int] = ACTIONS(5040), [sym_uint] = ACTIONS(5040), [sym_long] = ACTIONS(5040), [sym_ulong] = ACTIONS(5040), [sym_cent] = ACTIONS(5040), [sym_ucent] = ACTIONS(5040), [sym_wchar] = ACTIONS(5040), [sym_dchar] = ACTIONS(5040), [sym_float] = ACTIONS(5040), [sym_double] = ACTIONS(5040), [sym_real] = ACTIONS(5040), [sym_ifloat] = ACTIONS(5040), [sym_idouble] = ACTIONS(5040), [sym_ireal] = ACTIONS(5040), [sym_cfloat] = ACTIONS(5040), [sym_cdouble] = ACTIONS(5040), [sym_creal] = ACTIONS(5040), [sym_size_t] = ACTIONS(5040), [sym_ptrdiff_t] = ACTIONS(5040), [sym_string] = ACTIONS(5040), [sym_cstring] = ACTIONS(5040), [sym_dstring] = ACTIONS(5040), [sym_wstring] = ACTIONS(5040), [sym_noreturn] = ACTIONS(5040), [sym_this] = ACTIONS(5040), [sym_abstract] = ACTIONS(5040), [sym_alias] = ACTIONS(5040), [sym_align] = ACTIONS(5040), [sym_auto] = ACTIONS(5040), [sym_class] = ACTIONS(5040), [sym_const] = ACTIONS(5040), [sym_debug] = ACTIONS(5040), [sym_deprecated] = ACTIONS(5040), [sym_else] = ACTIONS(5040), [sym_enum] = ACTIONS(5040), [sym_export] = ACTIONS(5040), [sym_extern] = ACTIONS(5040), [sym_final] = ACTIONS(5040), [sym_immutable] = ACTIONS(5040), [sym_import] = ACTIONS(5040), [sym_inout] = ACTIONS(5040), [sym_interface] = ACTIONS(5040), [sym_invariant] = ACTIONS(5040), [sym_mixin] = ACTIONS(5040), [sym_nothrow] = ACTIONS(5040), [sym_override] = ACTIONS(5040), [sym_package] = ACTIONS(5040), [sym_pragma] = ACTIONS(5040), [sym_private] = ACTIONS(5040), [sym_protected] = ACTIONS(5040), [sym_public] = ACTIONS(5040), [sym_pure] = ACTIONS(5040), [sym_ref] = ACTIONS(5040), [sym_return] = ACTIONS(5040), [sym_scope] = ACTIONS(5040), [sym_shared] = ACTIONS(5040), [sym_static] = ACTIONS(5040), [sym_struct] = ACTIONS(5040), [sym_synchronized] = ACTIONS(5040), [sym_template] = ACTIONS(5040), [sym_typeof] = ACTIONS(5040), [sym_union] = ACTIONS(5040), [sym_unittest] = ACTIONS(5040), [sym_version] = ACTIONS(5040), [sym_while] = ACTIONS(5040), [sym_gshared] = ACTIONS(5040), [sym_traits] = ACTIONS(5040), [sym_vector] = ACTIONS(5040), [sym_void] = ACTIONS(5040), [sym_directive] = ACTIONS(3), }, [2517] = { [sym_identifier] = ACTIONS(4960), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4962), [anon_sym_SEMI] = ACTIONS(4962), [anon_sym_TILDE] = ACTIONS(4962), [anon_sym_AT] = ACTIONS(4962), [sym_bool] = ACTIONS(4960), [sym_byte] = ACTIONS(4960), [sym_ubyte] = ACTIONS(4960), [sym_char] = ACTIONS(4960), [sym_short] = ACTIONS(4960), [sym_ushort] = ACTIONS(4960), [sym_int] = ACTIONS(4960), [sym_uint] = ACTIONS(4960), [sym_long] = ACTIONS(4960), [sym_ulong] = ACTIONS(4960), [sym_cent] = ACTIONS(4960), [sym_ucent] = ACTIONS(4960), [sym_wchar] = ACTIONS(4960), [sym_dchar] = ACTIONS(4960), [sym_float] = ACTIONS(4960), [sym_double] = ACTIONS(4960), [sym_real] = ACTIONS(4960), [sym_ifloat] = ACTIONS(4960), [sym_idouble] = ACTIONS(4960), [sym_ireal] = ACTIONS(4960), [sym_cfloat] = ACTIONS(4960), [sym_cdouble] = ACTIONS(4960), [sym_creal] = ACTIONS(4960), [sym_size_t] = ACTIONS(4960), [sym_ptrdiff_t] = ACTIONS(4960), [sym_string] = ACTIONS(4960), [sym_cstring] = ACTIONS(4960), [sym_dstring] = ACTIONS(4960), [sym_wstring] = ACTIONS(4960), [sym_noreturn] = ACTIONS(4960), [sym_this] = ACTIONS(4960), [sym_abstract] = ACTIONS(4960), [sym_alias] = ACTIONS(4960), [sym_align] = ACTIONS(4960), [sym_auto] = ACTIONS(4960), [sym_catch] = ACTIONS(4960), [sym_class] = ACTIONS(4960), [sym_const] = ACTIONS(4960), [sym_debug] = ACTIONS(4960), [sym_deprecated] = ACTIONS(4960), [sym_else] = ACTIONS(4960), [sym_enum] = ACTIONS(4960), [sym_export] = ACTIONS(4960), [sym_extern] = ACTIONS(4960), [sym_final] = ACTIONS(4960), [sym_finally] = ACTIONS(4960), [sym_immutable] = ACTIONS(4960), [sym_import] = ACTIONS(4960), [sym_inout] = ACTIONS(4960), [sym_interface] = ACTIONS(4960), [sym_invariant] = ACTIONS(4960), [sym_mixin] = ACTIONS(4960), [sym_nothrow] = ACTIONS(4960), [sym_override] = ACTIONS(4960), [sym_package] = ACTIONS(4960), [sym_pragma] = ACTIONS(4960), [sym_private] = ACTIONS(4960), [sym_protected] = ACTIONS(4960), [sym_public] = ACTIONS(4960), [sym_pure] = ACTIONS(4960), [sym_ref] = ACTIONS(4960), [sym_return] = ACTIONS(4960), [sym_scope] = ACTIONS(4960), [sym_shared] = ACTIONS(4960), [sym_static] = ACTIONS(4960), [sym_struct] = ACTIONS(4960), [sym_synchronized] = ACTIONS(4960), [sym_template] = ACTIONS(4960), [sym_typeof] = ACTIONS(4960), [sym_union] = ACTIONS(4960), [sym_unittest] = ACTIONS(4960), [sym_version] = ACTIONS(4960), [sym_while] = ACTIONS(4960), [sym_gshared] = ACTIONS(4960), [sym_traits] = ACTIONS(4960), [sym_vector] = ACTIONS(4960), [sym_void] = ACTIONS(4960), [sym_directive] = ACTIONS(3), }, [2518] = { [sym_at_attribute] = STATE(5569), [aux_sym_module_declaration_repeat1] = STATE(5569), [sym_identifier] = ACTIONS(2960), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(686), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6781), [sym_bool] = ACTIONS(2960), [sym_byte] = ACTIONS(2960), [sym_ubyte] = ACTIONS(2960), [sym_char] = ACTIONS(2960), [sym_short] = ACTIONS(2960), [sym_ushort] = ACTIONS(2960), [sym_int] = ACTIONS(2960), [sym_uint] = ACTIONS(2960), [sym_long] = ACTIONS(2960), [sym_ulong] = ACTIONS(2960), [sym_cent] = ACTIONS(2960), [sym_ucent] = ACTIONS(2960), [sym_wchar] = ACTIONS(2960), [sym_dchar] = ACTIONS(2960), [sym_float] = ACTIONS(2960), [sym_double] = ACTIONS(2960), [sym_real] = ACTIONS(2960), [sym_ifloat] = ACTIONS(2960), [sym_idouble] = ACTIONS(2960), [sym_ireal] = ACTIONS(2960), [sym_cfloat] = ACTIONS(2960), [sym_cdouble] = ACTIONS(2960), [sym_creal] = ACTIONS(2960), [sym_size_t] = ACTIONS(2960), [sym_ptrdiff_t] = ACTIONS(2960), [sym_string] = ACTIONS(2960), [sym_cstring] = ACTIONS(2960), [sym_dstring] = ACTIONS(2960), [sym_wstring] = ACTIONS(2960), [sym_noreturn] = ACTIONS(2960), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_auto] = ACTIONS(2960), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2960), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(2960), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_immutable] = ACTIONS(2960), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(2960), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(2960), [sym_module] = ACTIONS(6783), [sym_nothrow] = ACTIONS(2960), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2960), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2960), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(2960), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(2960), [sym_vector] = ACTIONS(2960), [sym_void] = ACTIONS(2960), [sym_directive] = ACTIONS(3), }, [2519] = { [ts_builtin_sym_end] = ACTIONS(4866), [sym_identifier] = ACTIONS(4864), [sym_end_file] = ACTIONS(4864), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4866), [anon_sym_SEMI] = ACTIONS(4866), [anon_sym_TILDE] = ACTIONS(4866), [anon_sym_AT] = ACTIONS(4866), [sym_bool] = ACTIONS(4864), [sym_byte] = ACTIONS(4864), [sym_ubyte] = ACTIONS(4864), [sym_char] = ACTIONS(4864), [sym_short] = ACTIONS(4864), [sym_ushort] = ACTIONS(4864), [sym_int] = ACTIONS(4864), [sym_uint] = ACTIONS(4864), [sym_long] = ACTIONS(4864), [sym_ulong] = ACTIONS(4864), [sym_cent] = ACTIONS(4864), [sym_ucent] = ACTIONS(4864), [sym_wchar] = ACTIONS(4864), [sym_dchar] = ACTIONS(4864), [sym_float] = ACTIONS(4864), [sym_double] = ACTIONS(4864), [sym_real] = ACTIONS(4864), [sym_ifloat] = ACTIONS(4864), [sym_idouble] = ACTIONS(4864), [sym_ireal] = ACTIONS(4864), [sym_cfloat] = ACTIONS(4864), [sym_cdouble] = ACTIONS(4864), [sym_creal] = ACTIONS(4864), [sym_size_t] = ACTIONS(4864), [sym_ptrdiff_t] = ACTIONS(4864), [sym_string] = ACTIONS(4864), [sym_cstring] = ACTIONS(4864), [sym_dstring] = ACTIONS(4864), [sym_wstring] = ACTIONS(4864), [sym_noreturn] = ACTIONS(4864), [sym_this] = ACTIONS(4864), [sym_abstract] = ACTIONS(4864), [sym_alias] = ACTIONS(4864), [sym_align] = ACTIONS(4864), [sym_auto] = ACTIONS(4864), [sym_class] = ACTIONS(4864), [sym_const] = ACTIONS(4864), [sym_debug] = ACTIONS(4864), [sym_deprecated] = ACTIONS(4864), [sym_else] = ACTIONS(4864), [sym_enum] = ACTIONS(4864), [sym_export] = ACTIONS(4864), [sym_extern] = ACTIONS(4864), [sym_final] = ACTIONS(4864), [sym_immutable] = ACTIONS(4864), [sym_import] = ACTIONS(4864), [sym_inout] = ACTIONS(4864), [sym_interface] = ACTIONS(4864), [sym_invariant] = ACTIONS(4864), [sym_mixin] = ACTIONS(4864), [sym_nothrow] = ACTIONS(4864), [sym_override] = ACTIONS(4864), [sym_package] = ACTIONS(4864), [sym_pragma] = ACTIONS(4864), [sym_private] = ACTIONS(4864), [sym_protected] = ACTIONS(4864), [sym_public] = ACTIONS(4864), [sym_pure] = ACTIONS(4864), [sym_ref] = ACTIONS(4864), [sym_return] = ACTIONS(4864), [sym_scope] = ACTIONS(4864), [sym_shared] = ACTIONS(4864), [sym_static] = ACTIONS(4864), [sym_struct] = ACTIONS(4864), [sym_synchronized] = ACTIONS(4864), [sym_template] = ACTIONS(4864), [sym_typeof] = ACTIONS(4864), [sym_union] = ACTIONS(4864), [sym_unittest] = ACTIONS(4864), [sym_version] = ACTIONS(4864), [sym_while] = ACTIONS(4864), [sym_gshared] = ACTIONS(4864), [sym_traits] = ACTIONS(4864), [sym_vector] = ACTIONS(4864), [sym_void] = ACTIONS(4864), [sym_directive] = ACTIONS(3), }, [2520] = { [sym_identifier] = ACTIONS(4758), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4760), [anon_sym_SEMI] = ACTIONS(4760), [anon_sym_TILDE] = ACTIONS(4760), [anon_sym_AT] = ACTIONS(4760), [sym_bool] = ACTIONS(4758), [sym_byte] = ACTIONS(4758), [sym_ubyte] = ACTIONS(4758), [sym_char] = ACTIONS(4758), [sym_short] = ACTIONS(4758), [sym_ushort] = ACTIONS(4758), [sym_int] = ACTIONS(4758), [sym_uint] = ACTIONS(4758), [sym_long] = ACTIONS(4758), [sym_ulong] = ACTIONS(4758), [sym_cent] = ACTIONS(4758), [sym_ucent] = ACTIONS(4758), [sym_wchar] = ACTIONS(4758), [sym_dchar] = ACTIONS(4758), [sym_float] = ACTIONS(4758), [sym_double] = ACTIONS(4758), [sym_real] = ACTIONS(4758), [sym_ifloat] = ACTIONS(4758), [sym_idouble] = ACTIONS(4758), [sym_ireal] = ACTIONS(4758), [sym_cfloat] = ACTIONS(4758), [sym_cdouble] = ACTIONS(4758), [sym_creal] = ACTIONS(4758), [sym_size_t] = ACTIONS(4758), [sym_ptrdiff_t] = ACTIONS(4758), [sym_string] = ACTIONS(4758), [sym_cstring] = ACTIONS(4758), [sym_dstring] = ACTIONS(4758), [sym_wstring] = ACTIONS(4758), [sym_noreturn] = ACTIONS(4758), [sym_this] = ACTIONS(4758), [sym_abstract] = ACTIONS(4758), [sym_alias] = ACTIONS(4758), [sym_align] = ACTIONS(4758), [sym_auto] = ACTIONS(4758), [sym_catch] = ACTIONS(4758), [sym_class] = ACTIONS(4758), [sym_const] = ACTIONS(4758), [sym_debug] = ACTIONS(4758), [sym_deprecated] = ACTIONS(4758), [sym_else] = ACTIONS(4758), [sym_enum] = ACTIONS(4758), [sym_export] = ACTIONS(4758), [sym_extern] = ACTIONS(4758), [sym_final] = ACTIONS(4758), [sym_finally] = ACTIONS(4758), [sym_immutable] = ACTIONS(4758), [sym_import] = ACTIONS(4758), [sym_inout] = ACTIONS(4758), [sym_interface] = ACTIONS(4758), [sym_invariant] = ACTIONS(4758), [sym_mixin] = ACTIONS(4758), [sym_nothrow] = ACTIONS(4758), [sym_override] = ACTIONS(4758), [sym_package] = ACTIONS(4758), [sym_pragma] = ACTIONS(4758), [sym_private] = ACTIONS(4758), [sym_protected] = ACTIONS(4758), [sym_public] = ACTIONS(4758), [sym_pure] = ACTIONS(4758), [sym_ref] = ACTIONS(4758), [sym_return] = ACTIONS(4758), [sym_scope] = ACTIONS(4758), [sym_shared] = ACTIONS(4758), [sym_static] = ACTIONS(4758), [sym_struct] = ACTIONS(4758), [sym_synchronized] = ACTIONS(4758), [sym_template] = ACTIONS(4758), [sym_typeof] = ACTIONS(4758), [sym_union] = ACTIONS(4758), [sym_unittest] = ACTIONS(4758), [sym_version] = ACTIONS(4758), [sym_while] = ACTIONS(4758), [sym_gshared] = ACTIONS(4758), [sym_traits] = ACTIONS(4758), [sym_vector] = ACTIONS(4758), [sym_void] = ACTIONS(4758), [sym_directive] = ACTIONS(3), }, [2521] = { [ts_builtin_sym_end] = ACTIONS(4870), [sym_identifier] = ACTIONS(4868), [sym_end_file] = ACTIONS(4868), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4870), [anon_sym_SEMI] = ACTIONS(4870), [anon_sym_TILDE] = ACTIONS(4870), [anon_sym_AT] = ACTIONS(4870), [sym_bool] = ACTIONS(4868), [sym_byte] = ACTIONS(4868), [sym_ubyte] = ACTIONS(4868), [sym_char] = ACTIONS(4868), [sym_short] = ACTIONS(4868), [sym_ushort] = ACTIONS(4868), [sym_int] = ACTIONS(4868), [sym_uint] = ACTIONS(4868), [sym_long] = ACTIONS(4868), [sym_ulong] = ACTIONS(4868), [sym_cent] = ACTIONS(4868), [sym_ucent] = ACTIONS(4868), [sym_wchar] = ACTIONS(4868), [sym_dchar] = ACTIONS(4868), [sym_float] = ACTIONS(4868), [sym_double] = ACTIONS(4868), [sym_real] = ACTIONS(4868), [sym_ifloat] = ACTIONS(4868), [sym_idouble] = ACTIONS(4868), [sym_ireal] = ACTIONS(4868), [sym_cfloat] = ACTIONS(4868), [sym_cdouble] = ACTIONS(4868), [sym_creal] = ACTIONS(4868), [sym_size_t] = ACTIONS(4868), [sym_ptrdiff_t] = ACTIONS(4868), [sym_string] = ACTIONS(4868), [sym_cstring] = ACTIONS(4868), [sym_dstring] = ACTIONS(4868), [sym_wstring] = ACTIONS(4868), [sym_noreturn] = ACTIONS(4868), [sym_this] = ACTIONS(4868), [sym_abstract] = ACTIONS(4868), [sym_alias] = ACTIONS(4868), [sym_align] = ACTIONS(4868), [sym_auto] = ACTIONS(4868), [sym_class] = ACTIONS(4868), [sym_const] = ACTIONS(4868), [sym_debug] = ACTIONS(4868), [sym_deprecated] = ACTIONS(4868), [sym_else] = ACTIONS(4868), [sym_enum] = ACTIONS(4868), [sym_export] = ACTIONS(4868), [sym_extern] = ACTIONS(4868), [sym_final] = ACTIONS(4868), [sym_immutable] = ACTIONS(4868), [sym_import] = ACTIONS(4868), [sym_inout] = ACTIONS(4868), [sym_interface] = ACTIONS(4868), [sym_invariant] = ACTIONS(4868), [sym_mixin] = ACTIONS(4868), [sym_nothrow] = ACTIONS(4868), [sym_override] = ACTIONS(4868), [sym_package] = ACTIONS(4868), [sym_pragma] = ACTIONS(4868), [sym_private] = ACTIONS(4868), [sym_protected] = ACTIONS(4868), [sym_public] = ACTIONS(4868), [sym_pure] = ACTIONS(4868), [sym_ref] = ACTIONS(4868), [sym_return] = ACTIONS(4868), [sym_scope] = ACTIONS(4868), [sym_shared] = ACTIONS(4868), [sym_static] = ACTIONS(4868), [sym_struct] = ACTIONS(4868), [sym_synchronized] = ACTIONS(4868), [sym_template] = ACTIONS(4868), [sym_typeof] = ACTIONS(4868), [sym_union] = ACTIONS(4868), [sym_unittest] = ACTIONS(4868), [sym_version] = ACTIONS(4868), [sym_while] = ACTIONS(4868), [sym_gshared] = ACTIONS(4868), [sym_traits] = ACTIONS(4868), [sym_vector] = ACTIONS(4868), [sym_void] = ACTIONS(4868), [sym_directive] = ACTIONS(3), }, [2522] = { [ts_builtin_sym_end] = ACTIONS(4874), [sym_identifier] = ACTIONS(4872), [sym_end_file] = ACTIONS(4872), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4874), [anon_sym_SEMI] = ACTIONS(4874), [anon_sym_TILDE] = ACTIONS(4874), [anon_sym_AT] = ACTIONS(4874), [sym_bool] = ACTIONS(4872), [sym_byte] = ACTIONS(4872), [sym_ubyte] = ACTIONS(4872), [sym_char] = ACTIONS(4872), [sym_short] = ACTIONS(4872), [sym_ushort] = ACTIONS(4872), [sym_int] = ACTIONS(4872), [sym_uint] = ACTIONS(4872), [sym_long] = ACTIONS(4872), [sym_ulong] = ACTIONS(4872), [sym_cent] = ACTIONS(4872), [sym_ucent] = ACTIONS(4872), [sym_wchar] = ACTIONS(4872), [sym_dchar] = ACTIONS(4872), [sym_float] = ACTIONS(4872), [sym_double] = ACTIONS(4872), [sym_real] = ACTIONS(4872), [sym_ifloat] = ACTIONS(4872), [sym_idouble] = ACTIONS(4872), [sym_ireal] = ACTIONS(4872), [sym_cfloat] = ACTIONS(4872), [sym_cdouble] = ACTIONS(4872), [sym_creal] = ACTIONS(4872), [sym_size_t] = ACTIONS(4872), [sym_ptrdiff_t] = ACTIONS(4872), [sym_string] = ACTIONS(4872), [sym_cstring] = ACTIONS(4872), [sym_dstring] = ACTIONS(4872), [sym_wstring] = ACTIONS(4872), [sym_noreturn] = ACTIONS(4872), [sym_this] = ACTIONS(4872), [sym_abstract] = ACTIONS(4872), [sym_alias] = ACTIONS(4872), [sym_align] = ACTIONS(4872), [sym_auto] = ACTIONS(4872), [sym_class] = ACTIONS(4872), [sym_const] = ACTIONS(4872), [sym_debug] = ACTIONS(4872), [sym_deprecated] = ACTIONS(4872), [sym_else] = ACTIONS(4872), [sym_enum] = ACTIONS(4872), [sym_export] = ACTIONS(4872), [sym_extern] = ACTIONS(4872), [sym_final] = ACTIONS(4872), [sym_immutable] = ACTIONS(4872), [sym_import] = ACTIONS(4872), [sym_inout] = ACTIONS(4872), [sym_interface] = ACTIONS(4872), [sym_invariant] = ACTIONS(4872), [sym_mixin] = ACTIONS(4872), [sym_nothrow] = ACTIONS(4872), [sym_override] = ACTIONS(4872), [sym_package] = ACTIONS(4872), [sym_pragma] = ACTIONS(4872), [sym_private] = ACTIONS(4872), [sym_protected] = ACTIONS(4872), [sym_public] = ACTIONS(4872), [sym_pure] = ACTIONS(4872), [sym_ref] = ACTIONS(4872), [sym_return] = ACTIONS(4872), [sym_scope] = ACTIONS(4872), [sym_shared] = ACTIONS(4872), [sym_static] = ACTIONS(4872), [sym_struct] = ACTIONS(4872), [sym_synchronized] = ACTIONS(4872), [sym_template] = ACTIONS(4872), [sym_typeof] = ACTIONS(4872), [sym_union] = ACTIONS(4872), [sym_unittest] = ACTIONS(4872), [sym_version] = ACTIONS(4872), [sym_while] = ACTIONS(4872), [sym_gshared] = ACTIONS(4872), [sym_traits] = ACTIONS(4872), [sym_vector] = ACTIONS(4872), [sym_void] = ACTIONS(4872), [sym_directive] = ACTIONS(3), }, [2523] = { [sym_identifier] = ACTIONS(4750), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4752), [anon_sym_SEMI] = ACTIONS(4752), [anon_sym_TILDE] = ACTIONS(4752), [anon_sym_AT] = ACTIONS(4752), [sym_bool] = ACTIONS(4750), [sym_byte] = ACTIONS(4750), [sym_ubyte] = ACTIONS(4750), [sym_char] = ACTIONS(4750), [sym_short] = ACTIONS(4750), [sym_ushort] = ACTIONS(4750), [sym_int] = ACTIONS(4750), [sym_uint] = ACTIONS(4750), [sym_long] = ACTIONS(4750), [sym_ulong] = ACTIONS(4750), [sym_cent] = ACTIONS(4750), [sym_ucent] = ACTIONS(4750), [sym_wchar] = ACTIONS(4750), [sym_dchar] = ACTIONS(4750), [sym_float] = ACTIONS(4750), [sym_double] = ACTIONS(4750), [sym_real] = ACTIONS(4750), [sym_ifloat] = ACTIONS(4750), [sym_idouble] = ACTIONS(4750), [sym_ireal] = ACTIONS(4750), [sym_cfloat] = ACTIONS(4750), [sym_cdouble] = ACTIONS(4750), [sym_creal] = ACTIONS(4750), [sym_size_t] = ACTIONS(4750), [sym_ptrdiff_t] = ACTIONS(4750), [sym_string] = ACTIONS(4750), [sym_cstring] = ACTIONS(4750), [sym_dstring] = ACTIONS(4750), [sym_wstring] = ACTIONS(4750), [sym_noreturn] = ACTIONS(4750), [sym_this] = ACTIONS(4750), [sym_abstract] = ACTIONS(4750), [sym_alias] = ACTIONS(4750), [sym_align] = ACTIONS(4750), [sym_auto] = ACTIONS(4750), [sym_catch] = ACTIONS(4750), [sym_class] = ACTIONS(4750), [sym_const] = ACTIONS(4750), [sym_debug] = ACTIONS(4750), [sym_deprecated] = ACTIONS(4750), [sym_else] = ACTIONS(4750), [sym_enum] = ACTIONS(4750), [sym_export] = ACTIONS(4750), [sym_extern] = ACTIONS(4750), [sym_final] = ACTIONS(4750), [sym_finally] = ACTIONS(4750), [sym_immutable] = ACTIONS(4750), [sym_import] = ACTIONS(4750), [sym_inout] = ACTIONS(4750), [sym_interface] = ACTIONS(4750), [sym_invariant] = ACTIONS(4750), [sym_mixin] = ACTIONS(4750), [sym_nothrow] = ACTIONS(4750), [sym_override] = ACTIONS(4750), [sym_package] = ACTIONS(4750), [sym_pragma] = ACTIONS(4750), [sym_private] = ACTIONS(4750), [sym_protected] = ACTIONS(4750), [sym_public] = ACTIONS(4750), [sym_pure] = ACTIONS(4750), [sym_ref] = ACTIONS(4750), [sym_return] = ACTIONS(4750), [sym_scope] = ACTIONS(4750), [sym_shared] = ACTIONS(4750), [sym_static] = ACTIONS(4750), [sym_struct] = ACTIONS(4750), [sym_synchronized] = ACTIONS(4750), [sym_template] = ACTIONS(4750), [sym_typeof] = ACTIONS(4750), [sym_union] = ACTIONS(4750), [sym_unittest] = ACTIONS(4750), [sym_version] = ACTIONS(4750), [sym_while] = ACTIONS(4750), [sym_gshared] = ACTIONS(4750), [sym_traits] = ACTIONS(4750), [sym_vector] = ACTIONS(4750), [sym_void] = ACTIONS(4750), [sym_directive] = ACTIONS(3), }, [2524] = { [sym_identifier] = ACTIONS(4746), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4748), [anon_sym_SEMI] = ACTIONS(4748), [anon_sym_TILDE] = ACTIONS(4748), [anon_sym_AT] = ACTIONS(4748), [sym_bool] = ACTIONS(4746), [sym_byte] = ACTIONS(4746), [sym_ubyte] = ACTIONS(4746), [sym_char] = ACTIONS(4746), [sym_short] = ACTIONS(4746), [sym_ushort] = ACTIONS(4746), [sym_int] = ACTIONS(4746), [sym_uint] = ACTIONS(4746), [sym_long] = ACTIONS(4746), [sym_ulong] = ACTIONS(4746), [sym_cent] = ACTIONS(4746), [sym_ucent] = ACTIONS(4746), [sym_wchar] = ACTIONS(4746), [sym_dchar] = ACTIONS(4746), [sym_float] = ACTIONS(4746), [sym_double] = ACTIONS(4746), [sym_real] = ACTIONS(4746), [sym_ifloat] = ACTIONS(4746), [sym_idouble] = ACTIONS(4746), [sym_ireal] = ACTIONS(4746), [sym_cfloat] = ACTIONS(4746), [sym_cdouble] = ACTIONS(4746), [sym_creal] = ACTIONS(4746), [sym_size_t] = ACTIONS(4746), [sym_ptrdiff_t] = ACTIONS(4746), [sym_string] = ACTIONS(4746), [sym_cstring] = ACTIONS(4746), [sym_dstring] = ACTIONS(4746), [sym_wstring] = ACTIONS(4746), [sym_noreturn] = ACTIONS(4746), [sym_this] = ACTIONS(4746), [sym_abstract] = ACTIONS(4746), [sym_alias] = ACTIONS(4746), [sym_align] = ACTIONS(4746), [sym_auto] = ACTIONS(4746), [sym_catch] = ACTIONS(4746), [sym_class] = ACTIONS(4746), [sym_const] = ACTIONS(4746), [sym_debug] = ACTIONS(4746), [sym_deprecated] = ACTIONS(4746), [sym_else] = ACTIONS(4746), [sym_enum] = ACTIONS(4746), [sym_export] = ACTIONS(4746), [sym_extern] = ACTIONS(4746), [sym_final] = ACTIONS(4746), [sym_finally] = ACTIONS(4746), [sym_immutable] = ACTIONS(4746), [sym_import] = ACTIONS(4746), [sym_inout] = ACTIONS(4746), [sym_interface] = ACTIONS(4746), [sym_invariant] = ACTIONS(4746), [sym_mixin] = ACTIONS(4746), [sym_nothrow] = ACTIONS(4746), [sym_override] = ACTIONS(4746), [sym_package] = ACTIONS(4746), [sym_pragma] = ACTIONS(4746), [sym_private] = ACTIONS(4746), [sym_protected] = ACTIONS(4746), [sym_public] = ACTIONS(4746), [sym_pure] = ACTIONS(4746), [sym_ref] = ACTIONS(4746), [sym_return] = ACTIONS(4746), [sym_scope] = ACTIONS(4746), [sym_shared] = ACTIONS(4746), [sym_static] = ACTIONS(4746), [sym_struct] = ACTIONS(4746), [sym_synchronized] = ACTIONS(4746), [sym_template] = ACTIONS(4746), [sym_typeof] = ACTIONS(4746), [sym_union] = ACTIONS(4746), [sym_unittest] = ACTIONS(4746), [sym_version] = ACTIONS(4746), [sym_while] = ACTIONS(4746), [sym_gshared] = ACTIONS(4746), [sym_traits] = ACTIONS(4746), [sym_vector] = ACTIONS(4746), [sym_void] = ACTIONS(4746), [sym_directive] = ACTIONS(3), }, [2525] = { [sym_identifier] = ACTIONS(4606), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4608), [anon_sym_SEMI] = ACTIONS(4608), [anon_sym_TILDE] = ACTIONS(4608), [anon_sym_AT] = ACTIONS(4608), [sym_bool] = ACTIONS(4606), [sym_byte] = ACTIONS(4606), [sym_ubyte] = ACTIONS(4606), [sym_char] = ACTIONS(4606), [sym_short] = ACTIONS(4606), [sym_ushort] = ACTIONS(4606), [sym_int] = ACTIONS(4606), [sym_uint] = ACTIONS(4606), [sym_long] = ACTIONS(4606), [sym_ulong] = ACTIONS(4606), [sym_cent] = ACTIONS(4606), [sym_ucent] = ACTIONS(4606), [sym_wchar] = ACTIONS(4606), [sym_dchar] = ACTIONS(4606), [sym_float] = ACTIONS(4606), [sym_double] = ACTIONS(4606), [sym_real] = ACTIONS(4606), [sym_ifloat] = ACTIONS(4606), [sym_idouble] = ACTIONS(4606), [sym_ireal] = ACTIONS(4606), [sym_cfloat] = ACTIONS(4606), [sym_cdouble] = ACTIONS(4606), [sym_creal] = ACTIONS(4606), [sym_size_t] = ACTIONS(4606), [sym_ptrdiff_t] = ACTIONS(4606), [sym_string] = ACTIONS(4606), [sym_cstring] = ACTIONS(4606), [sym_dstring] = ACTIONS(4606), [sym_wstring] = ACTIONS(4606), [sym_noreturn] = ACTIONS(4606), [sym_this] = ACTIONS(4606), [sym_abstract] = ACTIONS(4606), [sym_alias] = ACTIONS(4606), [sym_align] = ACTIONS(4606), [sym_auto] = ACTIONS(4606), [sym_catch] = ACTIONS(4606), [sym_class] = ACTIONS(4606), [sym_const] = ACTIONS(4606), [sym_debug] = ACTIONS(4606), [sym_deprecated] = ACTIONS(4606), [sym_else] = ACTIONS(4606), [sym_enum] = ACTIONS(4606), [sym_export] = ACTIONS(4606), [sym_extern] = ACTIONS(4606), [sym_final] = ACTIONS(4606), [sym_finally] = ACTIONS(4606), [sym_immutable] = ACTIONS(4606), [sym_import] = ACTIONS(4606), [sym_inout] = ACTIONS(4606), [sym_interface] = ACTIONS(4606), [sym_invariant] = ACTIONS(4606), [sym_mixin] = ACTIONS(4606), [sym_nothrow] = ACTIONS(4606), [sym_override] = ACTIONS(4606), [sym_package] = ACTIONS(4606), [sym_pragma] = ACTIONS(4606), [sym_private] = ACTIONS(4606), [sym_protected] = ACTIONS(4606), [sym_public] = ACTIONS(4606), [sym_pure] = ACTIONS(4606), [sym_ref] = ACTIONS(4606), [sym_return] = ACTIONS(4606), [sym_scope] = ACTIONS(4606), [sym_shared] = ACTIONS(4606), [sym_static] = ACTIONS(4606), [sym_struct] = ACTIONS(4606), [sym_synchronized] = ACTIONS(4606), [sym_template] = ACTIONS(4606), [sym_typeof] = ACTIONS(4606), [sym_union] = ACTIONS(4606), [sym_unittest] = ACTIONS(4606), [sym_version] = ACTIONS(4606), [sym_while] = ACTIONS(4606), [sym_gshared] = ACTIONS(4606), [sym_traits] = ACTIONS(4606), [sym_vector] = ACTIONS(4606), [sym_void] = ACTIONS(4606), [sym_directive] = ACTIONS(3), }, [2526] = { [sym_identifier] = ACTIONS(4724), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4726), [anon_sym_SEMI] = ACTIONS(4726), [anon_sym_TILDE] = ACTIONS(4726), [anon_sym_AT] = ACTIONS(4726), [sym_bool] = ACTIONS(4724), [sym_byte] = ACTIONS(4724), [sym_ubyte] = ACTIONS(4724), [sym_char] = ACTIONS(4724), [sym_short] = ACTIONS(4724), [sym_ushort] = ACTIONS(4724), [sym_int] = ACTIONS(4724), [sym_uint] = ACTIONS(4724), [sym_long] = ACTIONS(4724), [sym_ulong] = ACTIONS(4724), [sym_cent] = ACTIONS(4724), [sym_ucent] = ACTIONS(4724), [sym_wchar] = ACTIONS(4724), [sym_dchar] = ACTIONS(4724), [sym_float] = ACTIONS(4724), [sym_double] = ACTIONS(4724), [sym_real] = ACTIONS(4724), [sym_ifloat] = ACTIONS(4724), [sym_idouble] = ACTIONS(4724), [sym_ireal] = ACTIONS(4724), [sym_cfloat] = ACTIONS(4724), [sym_cdouble] = ACTIONS(4724), [sym_creal] = ACTIONS(4724), [sym_size_t] = ACTIONS(4724), [sym_ptrdiff_t] = ACTIONS(4724), [sym_string] = ACTIONS(4724), [sym_cstring] = ACTIONS(4724), [sym_dstring] = ACTIONS(4724), [sym_wstring] = ACTIONS(4724), [sym_noreturn] = ACTIONS(4724), [sym_this] = ACTIONS(4724), [sym_abstract] = ACTIONS(4724), [sym_alias] = ACTIONS(4724), [sym_align] = ACTIONS(4724), [sym_auto] = ACTIONS(4724), [sym_catch] = ACTIONS(4724), [sym_class] = ACTIONS(4724), [sym_const] = ACTIONS(4724), [sym_debug] = ACTIONS(4724), [sym_deprecated] = ACTIONS(4724), [sym_else] = ACTIONS(4724), [sym_enum] = ACTIONS(4724), [sym_export] = ACTIONS(4724), [sym_extern] = ACTIONS(4724), [sym_final] = ACTIONS(4724), [sym_finally] = ACTIONS(4724), [sym_immutable] = ACTIONS(4724), [sym_import] = ACTIONS(4724), [sym_inout] = ACTIONS(4724), [sym_interface] = ACTIONS(4724), [sym_invariant] = ACTIONS(4724), [sym_mixin] = ACTIONS(4724), [sym_nothrow] = ACTIONS(4724), [sym_override] = ACTIONS(4724), [sym_package] = ACTIONS(4724), [sym_pragma] = ACTIONS(4724), [sym_private] = ACTIONS(4724), [sym_protected] = ACTIONS(4724), [sym_public] = ACTIONS(4724), [sym_pure] = ACTIONS(4724), [sym_ref] = ACTIONS(4724), [sym_return] = ACTIONS(4724), [sym_scope] = ACTIONS(4724), [sym_shared] = ACTIONS(4724), [sym_static] = ACTIONS(4724), [sym_struct] = ACTIONS(4724), [sym_synchronized] = ACTIONS(4724), [sym_template] = ACTIONS(4724), [sym_typeof] = ACTIONS(4724), [sym_union] = ACTIONS(4724), [sym_unittest] = ACTIONS(4724), [sym_version] = ACTIONS(4724), [sym_while] = ACTIONS(4724), [sym_gshared] = ACTIONS(4724), [sym_traits] = ACTIONS(4724), [sym_vector] = ACTIONS(4724), [sym_void] = ACTIONS(4724), [sym_directive] = ACTIONS(3), }, [2527] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5121), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2528] = { [ts_builtin_sym_end] = ACTIONS(2810), [sym_identifier] = ACTIONS(2812), [sym_end_file] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2810), [anon_sym_AT] = ACTIONS(2810), [sym_bool] = ACTIONS(2812), [sym_byte] = ACTIONS(2812), [sym_ubyte] = ACTIONS(2812), [sym_char] = ACTIONS(2812), [sym_short] = ACTIONS(2812), [sym_ushort] = ACTIONS(2812), [sym_int] = ACTIONS(2812), [sym_uint] = ACTIONS(2812), [sym_long] = ACTIONS(2812), [sym_ulong] = ACTIONS(2812), [sym_cent] = ACTIONS(2812), [sym_ucent] = ACTIONS(2812), [sym_wchar] = ACTIONS(2812), [sym_dchar] = ACTIONS(2812), [sym_float] = ACTIONS(2812), [sym_double] = ACTIONS(2812), [sym_real] = ACTIONS(2812), [sym_ifloat] = ACTIONS(2812), [sym_idouble] = ACTIONS(2812), [sym_ireal] = ACTIONS(2812), [sym_cfloat] = ACTIONS(2812), [sym_cdouble] = ACTIONS(2812), [sym_creal] = ACTIONS(2812), [sym_size_t] = ACTIONS(2812), [sym_ptrdiff_t] = ACTIONS(2812), [sym_string] = ACTIONS(2812), [sym_cstring] = ACTIONS(2812), [sym_dstring] = ACTIONS(2812), [sym_wstring] = ACTIONS(2812), [sym_noreturn] = ACTIONS(2812), [sym_this] = ACTIONS(2812), [sym_abstract] = ACTIONS(2812), [sym_alias] = ACTIONS(2812), [sym_align] = ACTIONS(2812), [sym_auto] = ACTIONS(2812), [sym_class] = ACTIONS(2812), [sym_const] = ACTIONS(2812), [sym_debug] = ACTIONS(2812), [sym_deprecated] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(2812), [sym_export] = ACTIONS(2812), [sym_extern] = ACTIONS(2812), [sym_final] = ACTIONS(2812), [sym_immutable] = ACTIONS(2812), [sym_import] = ACTIONS(2812), [sym_inout] = ACTIONS(2812), [sym_interface] = ACTIONS(2812), [sym_invariant] = ACTIONS(2812), [sym_mixin] = ACTIONS(2812), [sym_nothrow] = ACTIONS(2812), [sym_override] = ACTIONS(2812), [sym_package] = ACTIONS(2812), [sym_pragma] = ACTIONS(2812), [sym_private] = ACTIONS(2812), [sym_protected] = ACTIONS(2812), [sym_public] = ACTIONS(2812), [sym_pure] = ACTIONS(2812), [sym_ref] = ACTIONS(2812), [sym_return] = ACTIONS(2812), [sym_scope] = ACTIONS(2812), [sym_shared] = ACTIONS(2812), [sym_static] = ACTIONS(2812), [sym_struct] = ACTIONS(2812), [sym_synchronized] = ACTIONS(2812), [sym_template] = ACTIONS(2812), [sym_typeof] = ACTIONS(2812), [sym_union] = ACTIONS(2812), [sym_unittest] = ACTIONS(2812), [sym_version] = ACTIONS(2812), [sym_while] = ACTIONS(2812), [sym_gshared] = ACTIONS(2812), [sym_traits] = ACTIONS(2812), [sym_vector] = ACTIONS(2812), [sym_void] = ACTIONS(2812), [sym_directive] = ACTIONS(3), }, [2529] = { [sym_identifier] = ACTIONS(4716), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4718), [anon_sym_SEMI] = ACTIONS(4718), [anon_sym_TILDE] = ACTIONS(4718), [anon_sym_AT] = ACTIONS(4718), [sym_bool] = ACTIONS(4716), [sym_byte] = ACTIONS(4716), [sym_ubyte] = ACTIONS(4716), [sym_char] = ACTIONS(4716), [sym_short] = ACTIONS(4716), [sym_ushort] = ACTIONS(4716), [sym_int] = ACTIONS(4716), [sym_uint] = ACTIONS(4716), [sym_long] = ACTIONS(4716), [sym_ulong] = ACTIONS(4716), [sym_cent] = ACTIONS(4716), [sym_ucent] = ACTIONS(4716), [sym_wchar] = ACTIONS(4716), [sym_dchar] = ACTIONS(4716), [sym_float] = ACTIONS(4716), [sym_double] = ACTIONS(4716), [sym_real] = ACTIONS(4716), [sym_ifloat] = ACTIONS(4716), [sym_idouble] = ACTIONS(4716), [sym_ireal] = ACTIONS(4716), [sym_cfloat] = ACTIONS(4716), [sym_cdouble] = ACTIONS(4716), [sym_creal] = ACTIONS(4716), [sym_size_t] = ACTIONS(4716), [sym_ptrdiff_t] = ACTIONS(4716), [sym_string] = ACTIONS(4716), [sym_cstring] = ACTIONS(4716), [sym_dstring] = ACTIONS(4716), [sym_wstring] = ACTIONS(4716), [sym_noreturn] = ACTIONS(4716), [sym_this] = ACTIONS(4716), [sym_abstract] = ACTIONS(4716), [sym_alias] = ACTIONS(4716), [sym_align] = ACTIONS(4716), [sym_auto] = ACTIONS(4716), [sym_catch] = ACTIONS(4716), [sym_class] = ACTIONS(4716), [sym_const] = ACTIONS(4716), [sym_debug] = ACTIONS(4716), [sym_deprecated] = ACTIONS(4716), [sym_else] = ACTIONS(4716), [sym_enum] = ACTIONS(4716), [sym_export] = ACTIONS(4716), [sym_extern] = ACTIONS(4716), [sym_final] = ACTIONS(4716), [sym_finally] = ACTIONS(4716), [sym_immutable] = ACTIONS(4716), [sym_import] = ACTIONS(4716), [sym_inout] = ACTIONS(4716), [sym_interface] = ACTIONS(4716), [sym_invariant] = ACTIONS(4716), [sym_mixin] = ACTIONS(4716), [sym_nothrow] = ACTIONS(4716), [sym_override] = ACTIONS(4716), [sym_package] = ACTIONS(4716), [sym_pragma] = ACTIONS(4716), [sym_private] = ACTIONS(4716), [sym_protected] = ACTIONS(4716), [sym_public] = ACTIONS(4716), [sym_pure] = ACTIONS(4716), [sym_ref] = ACTIONS(4716), [sym_return] = ACTIONS(4716), [sym_scope] = ACTIONS(4716), [sym_shared] = ACTIONS(4716), [sym_static] = ACTIONS(4716), [sym_struct] = ACTIONS(4716), [sym_synchronized] = ACTIONS(4716), [sym_template] = ACTIONS(4716), [sym_typeof] = ACTIONS(4716), [sym_union] = ACTIONS(4716), [sym_unittest] = ACTIONS(4716), [sym_version] = ACTIONS(4716), [sym_while] = ACTIONS(4716), [sym_gshared] = ACTIONS(4716), [sym_traits] = ACTIONS(4716), [sym_vector] = ACTIONS(4716), [sym_void] = ACTIONS(4716), [sym_directive] = ACTIONS(3), }, [2530] = { [sym_identifier] = ACTIONS(4289), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4291), [anon_sym_SEMI] = ACTIONS(4291), [anon_sym_TILDE] = ACTIONS(4291), [anon_sym_AT] = ACTIONS(4291), [sym_bool] = ACTIONS(4289), [sym_byte] = ACTIONS(4289), [sym_ubyte] = ACTIONS(4289), [sym_char] = ACTIONS(4289), [sym_short] = ACTIONS(4289), [sym_ushort] = ACTIONS(4289), [sym_int] = ACTIONS(4289), [sym_uint] = ACTIONS(4289), [sym_long] = ACTIONS(4289), [sym_ulong] = ACTIONS(4289), [sym_cent] = ACTIONS(4289), [sym_ucent] = ACTIONS(4289), [sym_wchar] = ACTIONS(4289), [sym_dchar] = ACTIONS(4289), [sym_float] = ACTIONS(4289), [sym_double] = ACTIONS(4289), [sym_real] = ACTIONS(4289), [sym_ifloat] = ACTIONS(4289), [sym_idouble] = ACTIONS(4289), [sym_ireal] = ACTIONS(4289), [sym_cfloat] = ACTIONS(4289), [sym_cdouble] = ACTIONS(4289), [sym_creal] = ACTIONS(4289), [sym_size_t] = ACTIONS(4289), [sym_ptrdiff_t] = ACTIONS(4289), [sym_string] = ACTIONS(4289), [sym_cstring] = ACTIONS(4289), [sym_dstring] = ACTIONS(4289), [sym_wstring] = ACTIONS(4289), [sym_noreturn] = ACTIONS(4289), [sym_this] = ACTIONS(4289), [sym_abstract] = ACTIONS(4289), [sym_alias] = ACTIONS(4289), [sym_align] = ACTIONS(4289), [sym_auto] = ACTIONS(4289), [sym_catch] = ACTIONS(4289), [sym_class] = ACTIONS(4289), [sym_const] = ACTIONS(4289), [sym_debug] = ACTIONS(4289), [sym_deprecated] = ACTIONS(4289), [sym_else] = ACTIONS(4289), [sym_enum] = ACTIONS(4289), [sym_export] = ACTIONS(4289), [sym_extern] = ACTIONS(4289), [sym_final] = ACTIONS(4289), [sym_finally] = ACTIONS(4289), [sym_immutable] = ACTIONS(4289), [sym_import] = ACTIONS(4289), [sym_inout] = ACTIONS(4289), [sym_interface] = ACTIONS(4289), [sym_invariant] = ACTIONS(4289), [sym_mixin] = ACTIONS(4289), [sym_nothrow] = ACTIONS(4289), [sym_override] = ACTIONS(4289), [sym_package] = ACTIONS(4289), [sym_pragma] = ACTIONS(4289), [sym_private] = ACTIONS(4289), [sym_protected] = ACTIONS(4289), [sym_public] = ACTIONS(4289), [sym_pure] = ACTIONS(4289), [sym_ref] = ACTIONS(4289), [sym_return] = ACTIONS(4289), [sym_scope] = ACTIONS(4289), [sym_shared] = ACTIONS(4289), [sym_static] = ACTIONS(4289), [sym_struct] = ACTIONS(4289), [sym_synchronized] = ACTIONS(4289), [sym_template] = ACTIONS(4289), [sym_typeof] = ACTIONS(4289), [sym_union] = ACTIONS(4289), [sym_unittest] = ACTIONS(4289), [sym_version] = ACTIONS(4289), [sym_while] = ACTIONS(4289), [sym_gshared] = ACTIONS(4289), [sym_traits] = ACTIONS(4289), [sym_vector] = ACTIONS(4289), [sym_void] = ACTIONS(4289), [sym_directive] = ACTIONS(3), }, [2531] = { [ts_builtin_sym_end] = ACTIONS(4890), [sym_identifier] = ACTIONS(4888), [sym_end_file] = ACTIONS(4888), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4890), [anon_sym_SEMI] = ACTIONS(4890), [anon_sym_TILDE] = ACTIONS(4890), [anon_sym_AT] = ACTIONS(4890), [sym_bool] = ACTIONS(4888), [sym_byte] = ACTIONS(4888), [sym_ubyte] = ACTIONS(4888), [sym_char] = ACTIONS(4888), [sym_short] = ACTIONS(4888), [sym_ushort] = ACTIONS(4888), [sym_int] = ACTIONS(4888), [sym_uint] = ACTIONS(4888), [sym_long] = ACTIONS(4888), [sym_ulong] = ACTIONS(4888), [sym_cent] = ACTIONS(4888), [sym_ucent] = ACTIONS(4888), [sym_wchar] = ACTIONS(4888), [sym_dchar] = ACTIONS(4888), [sym_float] = ACTIONS(4888), [sym_double] = ACTIONS(4888), [sym_real] = ACTIONS(4888), [sym_ifloat] = ACTIONS(4888), [sym_idouble] = ACTIONS(4888), [sym_ireal] = ACTIONS(4888), [sym_cfloat] = ACTIONS(4888), [sym_cdouble] = ACTIONS(4888), [sym_creal] = ACTIONS(4888), [sym_size_t] = ACTIONS(4888), [sym_ptrdiff_t] = ACTIONS(4888), [sym_string] = ACTIONS(4888), [sym_cstring] = ACTIONS(4888), [sym_dstring] = ACTIONS(4888), [sym_wstring] = ACTIONS(4888), [sym_noreturn] = ACTIONS(4888), [sym_this] = ACTIONS(4888), [sym_abstract] = ACTIONS(4888), [sym_alias] = ACTIONS(4888), [sym_align] = ACTIONS(4888), [sym_auto] = ACTIONS(4888), [sym_class] = ACTIONS(4888), [sym_const] = ACTIONS(4888), [sym_debug] = ACTIONS(4888), [sym_deprecated] = ACTIONS(4888), [sym_else] = ACTIONS(4888), [sym_enum] = ACTIONS(4888), [sym_export] = ACTIONS(4888), [sym_extern] = ACTIONS(4888), [sym_final] = ACTIONS(4888), [sym_immutable] = ACTIONS(4888), [sym_import] = ACTIONS(4888), [sym_inout] = ACTIONS(4888), [sym_interface] = ACTIONS(4888), [sym_invariant] = ACTIONS(4888), [sym_mixin] = ACTIONS(4888), [sym_nothrow] = ACTIONS(4888), [sym_override] = ACTIONS(4888), [sym_package] = ACTIONS(4888), [sym_pragma] = ACTIONS(4888), [sym_private] = ACTIONS(4888), [sym_protected] = ACTIONS(4888), [sym_public] = ACTIONS(4888), [sym_pure] = ACTIONS(4888), [sym_ref] = ACTIONS(4888), [sym_return] = ACTIONS(4888), [sym_scope] = ACTIONS(4888), [sym_shared] = ACTIONS(4888), [sym_static] = ACTIONS(4888), [sym_struct] = ACTIONS(4888), [sym_synchronized] = ACTIONS(4888), [sym_template] = ACTIONS(4888), [sym_typeof] = ACTIONS(4888), [sym_union] = ACTIONS(4888), [sym_unittest] = ACTIONS(4888), [sym_version] = ACTIONS(4888), [sym_while] = ACTIONS(4888), [sym_gshared] = ACTIONS(4888), [sym_traits] = ACTIONS(4888), [sym_vector] = ACTIONS(4888), [sym_void] = ACTIONS(4888), [sym_directive] = ACTIONS(3), }, [2532] = { [sym_identifier] = ACTIONS(4690), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4692), [anon_sym_SEMI] = ACTIONS(4692), [anon_sym_TILDE] = ACTIONS(4692), [anon_sym_AT] = ACTIONS(4692), [sym_bool] = ACTIONS(4690), [sym_byte] = ACTIONS(4690), [sym_ubyte] = ACTIONS(4690), [sym_char] = ACTIONS(4690), [sym_short] = ACTIONS(4690), [sym_ushort] = ACTIONS(4690), [sym_int] = ACTIONS(4690), [sym_uint] = ACTIONS(4690), [sym_long] = ACTIONS(4690), [sym_ulong] = ACTIONS(4690), [sym_cent] = ACTIONS(4690), [sym_ucent] = ACTIONS(4690), [sym_wchar] = ACTIONS(4690), [sym_dchar] = ACTIONS(4690), [sym_float] = ACTIONS(4690), [sym_double] = ACTIONS(4690), [sym_real] = ACTIONS(4690), [sym_ifloat] = ACTIONS(4690), [sym_idouble] = ACTIONS(4690), [sym_ireal] = ACTIONS(4690), [sym_cfloat] = ACTIONS(4690), [sym_cdouble] = ACTIONS(4690), [sym_creal] = ACTIONS(4690), [sym_size_t] = ACTIONS(4690), [sym_ptrdiff_t] = ACTIONS(4690), [sym_string] = ACTIONS(4690), [sym_cstring] = ACTIONS(4690), [sym_dstring] = ACTIONS(4690), [sym_wstring] = ACTIONS(4690), [sym_noreturn] = ACTIONS(4690), [sym_this] = ACTIONS(4690), [sym_abstract] = ACTIONS(4690), [sym_alias] = ACTIONS(4690), [sym_align] = ACTIONS(4690), [sym_auto] = ACTIONS(4690), [sym_catch] = ACTIONS(4690), [sym_class] = ACTIONS(4690), [sym_const] = ACTIONS(4690), [sym_debug] = ACTIONS(4690), [sym_deprecated] = ACTIONS(4690), [sym_else] = ACTIONS(4690), [sym_enum] = ACTIONS(4690), [sym_export] = ACTIONS(4690), [sym_extern] = ACTIONS(4690), [sym_final] = ACTIONS(4690), [sym_finally] = ACTIONS(4690), [sym_immutable] = ACTIONS(4690), [sym_import] = ACTIONS(4690), [sym_inout] = ACTIONS(4690), [sym_interface] = ACTIONS(4690), [sym_invariant] = ACTIONS(4690), [sym_mixin] = ACTIONS(4690), [sym_nothrow] = ACTIONS(4690), [sym_override] = ACTIONS(4690), [sym_package] = ACTIONS(4690), [sym_pragma] = ACTIONS(4690), [sym_private] = ACTIONS(4690), [sym_protected] = ACTIONS(4690), [sym_public] = ACTIONS(4690), [sym_pure] = ACTIONS(4690), [sym_ref] = ACTIONS(4690), [sym_return] = ACTIONS(4690), [sym_scope] = ACTIONS(4690), [sym_shared] = ACTIONS(4690), [sym_static] = ACTIONS(4690), [sym_struct] = ACTIONS(4690), [sym_synchronized] = ACTIONS(4690), [sym_template] = ACTIONS(4690), [sym_typeof] = ACTIONS(4690), [sym_union] = ACTIONS(4690), [sym_unittest] = ACTIONS(4690), [sym_version] = ACTIONS(4690), [sym_while] = ACTIONS(4690), [sym_gshared] = ACTIONS(4690), [sym_traits] = ACTIONS(4690), [sym_vector] = ACTIONS(4690), [sym_void] = ACTIONS(4690), [sym_directive] = ACTIONS(3), }, [2533] = { [sym_identifier] = ACTIONS(4658), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4660), [anon_sym_SEMI] = ACTIONS(4660), [anon_sym_TILDE] = ACTIONS(4660), [anon_sym_AT] = ACTIONS(4660), [sym_bool] = ACTIONS(4658), [sym_byte] = ACTIONS(4658), [sym_ubyte] = ACTIONS(4658), [sym_char] = ACTIONS(4658), [sym_short] = ACTIONS(4658), [sym_ushort] = ACTIONS(4658), [sym_int] = ACTIONS(4658), [sym_uint] = ACTIONS(4658), [sym_long] = ACTIONS(4658), [sym_ulong] = ACTIONS(4658), [sym_cent] = ACTIONS(4658), [sym_ucent] = ACTIONS(4658), [sym_wchar] = ACTIONS(4658), [sym_dchar] = ACTIONS(4658), [sym_float] = ACTIONS(4658), [sym_double] = ACTIONS(4658), [sym_real] = ACTIONS(4658), [sym_ifloat] = ACTIONS(4658), [sym_idouble] = ACTIONS(4658), [sym_ireal] = ACTIONS(4658), [sym_cfloat] = ACTIONS(4658), [sym_cdouble] = ACTIONS(4658), [sym_creal] = ACTIONS(4658), [sym_size_t] = ACTIONS(4658), [sym_ptrdiff_t] = ACTIONS(4658), [sym_string] = ACTIONS(4658), [sym_cstring] = ACTIONS(4658), [sym_dstring] = ACTIONS(4658), [sym_wstring] = ACTIONS(4658), [sym_noreturn] = ACTIONS(4658), [sym_this] = ACTIONS(4658), [sym_abstract] = ACTIONS(4658), [sym_alias] = ACTIONS(4658), [sym_align] = ACTIONS(4658), [sym_auto] = ACTIONS(4658), [sym_catch] = ACTIONS(4658), [sym_class] = ACTIONS(4658), [sym_const] = ACTIONS(4658), [sym_debug] = ACTIONS(4658), [sym_deprecated] = ACTIONS(4658), [sym_else] = ACTIONS(4658), [sym_enum] = ACTIONS(4658), [sym_export] = ACTIONS(4658), [sym_extern] = ACTIONS(4658), [sym_final] = ACTIONS(4658), [sym_finally] = ACTIONS(4658), [sym_immutable] = ACTIONS(4658), [sym_import] = ACTIONS(4658), [sym_inout] = ACTIONS(4658), [sym_interface] = ACTIONS(4658), [sym_invariant] = ACTIONS(4658), [sym_mixin] = ACTIONS(4658), [sym_nothrow] = ACTIONS(4658), [sym_override] = ACTIONS(4658), [sym_package] = ACTIONS(4658), [sym_pragma] = ACTIONS(4658), [sym_private] = ACTIONS(4658), [sym_protected] = ACTIONS(4658), [sym_public] = ACTIONS(4658), [sym_pure] = ACTIONS(4658), [sym_ref] = ACTIONS(4658), [sym_return] = ACTIONS(4658), [sym_scope] = ACTIONS(4658), [sym_shared] = ACTIONS(4658), [sym_static] = ACTIONS(4658), [sym_struct] = ACTIONS(4658), [sym_synchronized] = ACTIONS(4658), [sym_template] = ACTIONS(4658), [sym_typeof] = ACTIONS(4658), [sym_union] = ACTIONS(4658), [sym_unittest] = ACTIONS(4658), [sym_version] = ACTIONS(4658), [sym_while] = ACTIONS(4658), [sym_gshared] = ACTIONS(4658), [sym_traits] = ACTIONS(4658), [sym_vector] = ACTIONS(4658), [sym_void] = ACTIONS(4658), [sym_directive] = ACTIONS(3), }, [2534] = { [sym_identifier] = ACTIONS(4654), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4656), [anon_sym_SEMI] = ACTIONS(4656), [anon_sym_TILDE] = ACTIONS(4656), [anon_sym_AT] = ACTIONS(4656), [sym_bool] = ACTIONS(4654), [sym_byte] = ACTIONS(4654), [sym_ubyte] = ACTIONS(4654), [sym_char] = ACTIONS(4654), [sym_short] = ACTIONS(4654), [sym_ushort] = ACTIONS(4654), [sym_int] = ACTIONS(4654), [sym_uint] = ACTIONS(4654), [sym_long] = ACTIONS(4654), [sym_ulong] = ACTIONS(4654), [sym_cent] = ACTIONS(4654), [sym_ucent] = ACTIONS(4654), [sym_wchar] = ACTIONS(4654), [sym_dchar] = ACTIONS(4654), [sym_float] = ACTIONS(4654), [sym_double] = ACTIONS(4654), [sym_real] = ACTIONS(4654), [sym_ifloat] = ACTIONS(4654), [sym_idouble] = ACTIONS(4654), [sym_ireal] = ACTIONS(4654), [sym_cfloat] = ACTIONS(4654), [sym_cdouble] = ACTIONS(4654), [sym_creal] = ACTIONS(4654), [sym_size_t] = ACTIONS(4654), [sym_ptrdiff_t] = ACTIONS(4654), [sym_string] = ACTIONS(4654), [sym_cstring] = ACTIONS(4654), [sym_dstring] = ACTIONS(4654), [sym_wstring] = ACTIONS(4654), [sym_noreturn] = ACTIONS(4654), [sym_this] = ACTIONS(4654), [sym_abstract] = ACTIONS(4654), [sym_alias] = ACTIONS(4654), [sym_align] = ACTIONS(4654), [sym_auto] = ACTIONS(4654), [sym_catch] = ACTIONS(4654), [sym_class] = ACTIONS(4654), [sym_const] = ACTIONS(4654), [sym_debug] = ACTIONS(4654), [sym_deprecated] = ACTIONS(4654), [sym_else] = ACTIONS(4654), [sym_enum] = ACTIONS(4654), [sym_export] = ACTIONS(4654), [sym_extern] = ACTIONS(4654), [sym_final] = ACTIONS(4654), [sym_finally] = ACTIONS(4654), [sym_immutable] = ACTIONS(4654), [sym_import] = ACTIONS(4654), [sym_inout] = ACTIONS(4654), [sym_interface] = ACTIONS(4654), [sym_invariant] = ACTIONS(4654), [sym_mixin] = ACTIONS(4654), [sym_nothrow] = ACTIONS(4654), [sym_override] = ACTIONS(4654), [sym_package] = ACTIONS(4654), [sym_pragma] = ACTIONS(4654), [sym_private] = ACTIONS(4654), [sym_protected] = ACTIONS(4654), [sym_public] = ACTIONS(4654), [sym_pure] = ACTIONS(4654), [sym_ref] = ACTIONS(4654), [sym_return] = ACTIONS(4654), [sym_scope] = ACTIONS(4654), [sym_shared] = ACTIONS(4654), [sym_static] = ACTIONS(4654), [sym_struct] = ACTIONS(4654), [sym_synchronized] = ACTIONS(4654), [sym_template] = ACTIONS(4654), [sym_typeof] = ACTIONS(4654), [sym_union] = ACTIONS(4654), [sym_unittest] = ACTIONS(4654), [sym_version] = ACTIONS(4654), [sym_while] = ACTIONS(4654), [sym_gshared] = ACTIONS(4654), [sym_traits] = ACTIONS(4654), [sym_vector] = ACTIONS(4654), [sym_void] = ACTIONS(4654), [sym_directive] = ACTIONS(3), }, [2535] = { [sym_identifier] = ACTIONS(4636), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4638), [anon_sym_SEMI] = ACTIONS(4638), [anon_sym_TILDE] = ACTIONS(4638), [anon_sym_AT] = ACTIONS(4638), [sym_bool] = ACTIONS(4636), [sym_byte] = ACTIONS(4636), [sym_ubyte] = ACTIONS(4636), [sym_char] = ACTIONS(4636), [sym_short] = ACTIONS(4636), [sym_ushort] = ACTIONS(4636), [sym_int] = ACTIONS(4636), [sym_uint] = ACTIONS(4636), [sym_long] = ACTIONS(4636), [sym_ulong] = ACTIONS(4636), [sym_cent] = ACTIONS(4636), [sym_ucent] = ACTIONS(4636), [sym_wchar] = ACTIONS(4636), [sym_dchar] = ACTIONS(4636), [sym_float] = ACTIONS(4636), [sym_double] = ACTIONS(4636), [sym_real] = ACTIONS(4636), [sym_ifloat] = ACTIONS(4636), [sym_idouble] = ACTIONS(4636), [sym_ireal] = ACTIONS(4636), [sym_cfloat] = ACTIONS(4636), [sym_cdouble] = ACTIONS(4636), [sym_creal] = ACTIONS(4636), [sym_size_t] = ACTIONS(4636), [sym_ptrdiff_t] = ACTIONS(4636), [sym_string] = ACTIONS(4636), [sym_cstring] = ACTIONS(4636), [sym_dstring] = ACTIONS(4636), [sym_wstring] = ACTIONS(4636), [sym_noreturn] = ACTIONS(4636), [sym_this] = ACTIONS(4636), [sym_abstract] = ACTIONS(4636), [sym_alias] = ACTIONS(4636), [sym_align] = ACTIONS(4636), [sym_auto] = ACTIONS(4636), [sym_catch] = ACTIONS(4636), [sym_class] = ACTIONS(4636), [sym_const] = ACTIONS(4636), [sym_debug] = ACTIONS(4636), [sym_deprecated] = ACTIONS(4636), [sym_else] = ACTIONS(4636), [sym_enum] = ACTIONS(4636), [sym_export] = ACTIONS(4636), [sym_extern] = ACTIONS(4636), [sym_final] = ACTIONS(4636), [sym_finally] = ACTIONS(4636), [sym_immutable] = ACTIONS(4636), [sym_import] = ACTIONS(4636), [sym_inout] = ACTIONS(4636), [sym_interface] = ACTIONS(4636), [sym_invariant] = ACTIONS(4636), [sym_mixin] = ACTIONS(4636), [sym_nothrow] = ACTIONS(4636), [sym_override] = ACTIONS(4636), [sym_package] = ACTIONS(4636), [sym_pragma] = ACTIONS(4636), [sym_private] = ACTIONS(4636), [sym_protected] = ACTIONS(4636), [sym_public] = ACTIONS(4636), [sym_pure] = ACTIONS(4636), [sym_ref] = ACTIONS(4636), [sym_return] = ACTIONS(4636), [sym_scope] = ACTIONS(4636), [sym_shared] = ACTIONS(4636), [sym_static] = ACTIONS(4636), [sym_struct] = ACTIONS(4636), [sym_synchronized] = ACTIONS(4636), [sym_template] = ACTIONS(4636), [sym_typeof] = ACTIONS(4636), [sym_union] = ACTIONS(4636), [sym_unittest] = ACTIONS(4636), [sym_version] = ACTIONS(4636), [sym_while] = ACTIONS(4636), [sym_gshared] = ACTIONS(4636), [sym_traits] = ACTIONS(4636), [sym_vector] = ACTIONS(4636), [sym_void] = ACTIONS(4636), [sym_directive] = ACTIONS(3), }, [2536] = { [sym_identifier] = ACTIONS(4632), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4634), [anon_sym_SEMI] = ACTIONS(4634), [anon_sym_TILDE] = ACTIONS(4634), [anon_sym_AT] = ACTIONS(4634), [sym_bool] = ACTIONS(4632), [sym_byte] = ACTIONS(4632), [sym_ubyte] = ACTIONS(4632), [sym_char] = ACTIONS(4632), [sym_short] = ACTIONS(4632), [sym_ushort] = ACTIONS(4632), [sym_int] = ACTIONS(4632), [sym_uint] = ACTIONS(4632), [sym_long] = ACTIONS(4632), [sym_ulong] = ACTIONS(4632), [sym_cent] = ACTIONS(4632), [sym_ucent] = ACTIONS(4632), [sym_wchar] = ACTIONS(4632), [sym_dchar] = ACTIONS(4632), [sym_float] = ACTIONS(4632), [sym_double] = ACTIONS(4632), [sym_real] = ACTIONS(4632), [sym_ifloat] = ACTIONS(4632), [sym_idouble] = ACTIONS(4632), [sym_ireal] = ACTIONS(4632), [sym_cfloat] = ACTIONS(4632), [sym_cdouble] = ACTIONS(4632), [sym_creal] = ACTIONS(4632), [sym_size_t] = ACTIONS(4632), [sym_ptrdiff_t] = ACTIONS(4632), [sym_string] = ACTIONS(4632), [sym_cstring] = ACTIONS(4632), [sym_dstring] = ACTIONS(4632), [sym_wstring] = ACTIONS(4632), [sym_noreturn] = ACTIONS(4632), [sym_this] = ACTIONS(4632), [sym_abstract] = ACTIONS(4632), [sym_alias] = ACTIONS(4632), [sym_align] = ACTIONS(4632), [sym_auto] = ACTIONS(4632), [sym_catch] = ACTIONS(4632), [sym_class] = ACTIONS(4632), [sym_const] = ACTIONS(4632), [sym_debug] = ACTIONS(4632), [sym_deprecated] = ACTIONS(4632), [sym_else] = ACTIONS(4632), [sym_enum] = ACTIONS(4632), [sym_export] = ACTIONS(4632), [sym_extern] = ACTIONS(4632), [sym_final] = ACTIONS(4632), [sym_finally] = ACTIONS(4632), [sym_immutable] = ACTIONS(4632), [sym_import] = ACTIONS(4632), [sym_inout] = ACTIONS(4632), [sym_interface] = ACTIONS(4632), [sym_invariant] = ACTIONS(4632), [sym_mixin] = ACTIONS(4632), [sym_nothrow] = ACTIONS(4632), [sym_override] = ACTIONS(4632), [sym_package] = ACTIONS(4632), [sym_pragma] = ACTIONS(4632), [sym_private] = ACTIONS(4632), [sym_protected] = ACTIONS(4632), [sym_public] = ACTIONS(4632), [sym_pure] = ACTIONS(4632), [sym_ref] = ACTIONS(4632), [sym_return] = ACTIONS(4632), [sym_scope] = ACTIONS(4632), [sym_shared] = ACTIONS(4632), [sym_static] = ACTIONS(4632), [sym_struct] = ACTIONS(4632), [sym_synchronized] = ACTIONS(4632), [sym_template] = ACTIONS(4632), [sym_typeof] = ACTIONS(4632), [sym_union] = ACTIONS(4632), [sym_unittest] = ACTIONS(4632), [sym_version] = ACTIONS(4632), [sym_while] = ACTIONS(4632), [sym_gshared] = ACTIONS(4632), [sym_traits] = ACTIONS(4632), [sym_vector] = ACTIONS(4632), [sym_void] = ACTIONS(4632), [sym_directive] = ACTIONS(3), }, [2537] = { [sym_identifier] = ACTIONS(4628), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4630), [anon_sym_SEMI] = ACTIONS(4630), [anon_sym_TILDE] = ACTIONS(4630), [anon_sym_AT] = ACTIONS(4630), [sym_bool] = ACTIONS(4628), [sym_byte] = ACTIONS(4628), [sym_ubyte] = ACTIONS(4628), [sym_char] = ACTIONS(4628), [sym_short] = ACTIONS(4628), [sym_ushort] = ACTIONS(4628), [sym_int] = ACTIONS(4628), [sym_uint] = ACTIONS(4628), [sym_long] = ACTIONS(4628), [sym_ulong] = ACTIONS(4628), [sym_cent] = ACTIONS(4628), [sym_ucent] = ACTIONS(4628), [sym_wchar] = ACTIONS(4628), [sym_dchar] = ACTIONS(4628), [sym_float] = ACTIONS(4628), [sym_double] = ACTIONS(4628), [sym_real] = ACTIONS(4628), [sym_ifloat] = ACTIONS(4628), [sym_idouble] = ACTIONS(4628), [sym_ireal] = ACTIONS(4628), [sym_cfloat] = ACTIONS(4628), [sym_cdouble] = ACTIONS(4628), [sym_creal] = ACTIONS(4628), [sym_size_t] = ACTIONS(4628), [sym_ptrdiff_t] = ACTIONS(4628), [sym_string] = ACTIONS(4628), [sym_cstring] = ACTIONS(4628), [sym_dstring] = ACTIONS(4628), [sym_wstring] = ACTIONS(4628), [sym_noreturn] = ACTIONS(4628), [sym_this] = ACTIONS(4628), [sym_abstract] = ACTIONS(4628), [sym_alias] = ACTIONS(4628), [sym_align] = ACTIONS(4628), [sym_auto] = ACTIONS(4628), [sym_catch] = ACTIONS(4628), [sym_class] = ACTIONS(4628), [sym_const] = ACTIONS(4628), [sym_debug] = ACTIONS(4628), [sym_deprecated] = ACTIONS(4628), [sym_else] = ACTIONS(4628), [sym_enum] = ACTIONS(4628), [sym_export] = ACTIONS(4628), [sym_extern] = ACTIONS(4628), [sym_final] = ACTIONS(4628), [sym_finally] = ACTIONS(4628), [sym_immutable] = ACTIONS(4628), [sym_import] = ACTIONS(4628), [sym_inout] = ACTIONS(4628), [sym_interface] = ACTIONS(4628), [sym_invariant] = ACTIONS(4628), [sym_mixin] = ACTIONS(4628), [sym_nothrow] = ACTIONS(4628), [sym_override] = ACTIONS(4628), [sym_package] = ACTIONS(4628), [sym_pragma] = ACTIONS(4628), [sym_private] = ACTIONS(4628), [sym_protected] = ACTIONS(4628), [sym_public] = ACTIONS(4628), [sym_pure] = ACTIONS(4628), [sym_ref] = ACTIONS(4628), [sym_return] = ACTIONS(4628), [sym_scope] = ACTIONS(4628), [sym_shared] = ACTIONS(4628), [sym_static] = ACTIONS(4628), [sym_struct] = ACTIONS(4628), [sym_synchronized] = ACTIONS(4628), [sym_template] = ACTIONS(4628), [sym_typeof] = ACTIONS(4628), [sym_union] = ACTIONS(4628), [sym_unittest] = ACTIONS(4628), [sym_version] = ACTIONS(4628), [sym_while] = ACTIONS(4628), [sym_gshared] = ACTIONS(4628), [sym_traits] = ACTIONS(4628), [sym_vector] = ACTIONS(4628), [sym_void] = ACTIONS(4628), [sym_directive] = ACTIONS(3), }, [2538] = { [sym_identifier] = ACTIONS(4624), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4626), [anon_sym_SEMI] = ACTIONS(4626), [anon_sym_TILDE] = ACTIONS(4626), [anon_sym_AT] = ACTIONS(4626), [sym_bool] = ACTIONS(4624), [sym_byte] = ACTIONS(4624), [sym_ubyte] = ACTIONS(4624), [sym_char] = ACTIONS(4624), [sym_short] = ACTIONS(4624), [sym_ushort] = ACTIONS(4624), [sym_int] = ACTIONS(4624), [sym_uint] = ACTIONS(4624), [sym_long] = ACTIONS(4624), [sym_ulong] = ACTIONS(4624), [sym_cent] = ACTIONS(4624), [sym_ucent] = ACTIONS(4624), [sym_wchar] = ACTIONS(4624), [sym_dchar] = ACTIONS(4624), [sym_float] = ACTIONS(4624), [sym_double] = ACTIONS(4624), [sym_real] = ACTIONS(4624), [sym_ifloat] = ACTIONS(4624), [sym_idouble] = ACTIONS(4624), [sym_ireal] = ACTIONS(4624), [sym_cfloat] = ACTIONS(4624), [sym_cdouble] = ACTIONS(4624), [sym_creal] = ACTIONS(4624), [sym_size_t] = ACTIONS(4624), [sym_ptrdiff_t] = ACTIONS(4624), [sym_string] = ACTIONS(4624), [sym_cstring] = ACTIONS(4624), [sym_dstring] = ACTIONS(4624), [sym_wstring] = ACTIONS(4624), [sym_noreturn] = ACTIONS(4624), [sym_this] = ACTIONS(4624), [sym_abstract] = ACTIONS(4624), [sym_alias] = ACTIONS(4624), [sym_align] = ACTIONS(4624), [sym_auto] = ACTIONS(4624), [sym_catch] = ACTIONS(4624), [sym_class] = ACTIONS(4624), [sym_const] = ACTIONS(4624), [sym_debug] = ACTIONS(4624), [sym_deprecated] = ACTIONS(4624), [sym_else] = ACTIONS(4624), [sym_enum] = ACTIONS(4624), [sym_export] = ACTIONS(4624), [sym_extern] = ACTIONS(4624), [sym_final] = ACTIONS(4624), [sym_finally] = ACTIONS(4624), [sym_immutable] = ACTIONS(4624), [sym_import] = ACTIONS(4624), [sym_inout] = ACTIONS(4624), [sym_interface] = ACTIONS(4624), [sym_invariant] = ACTIONS(4624), [sym_mixin] = ACTIONS(4624), [sym_nothrow] = ACTIONS(4624), [sym_override] = ACTIONS(4624), [sym_package] = ACTIONS(4624), [sym_pragma] = ACTIONS(4624), [sym_private] = ACTIONS(4624), [sym_protected] = ACTIONS(4624), [sym_public] = ACTIONS(4624), [sym_pure] = ACTIONS(4624), [sym_ref] = ACTIONS(4624), [sym_return] = ACTIONS(4624), [sym_scope] = ACTIONS(4624), [sym_shared] = ACTIONS(4624), [sym_static] = ACTIONS(4624), [sym_struct] = ACTIONS(4624), [sym_synchronized] = ACTIONS(4624), [sym_template] = ACTIONS(4624), [sym_typeof] = ACTIONS(4624), [sym_union] = ACTIONS(4624), [sym_unittest] = ACTIONS(4624), [sym_version] = ACTIONS(4624), [sym_while] = ACTIONS(4624), [sym_gshared] = ACTIONS(4624), [sym_traits] = ACTIONS(4624), [sym_vector] = ACTIONS(4624), [sym_void] = ACTIONS(4624), [sym_directive] = ACTIONS(3), }, [2539] = { [sym_identifier] = ACTIONS(4590), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4592), [anon_sym_SEMI] = ACTIONS(4592), [anon_sym_TILDE] = ACTIONS(4592), [anon_sym_AT] = ACTIONS(4592), [sym_bool] = ACTIONS(4590), [sym_byte] = ACTIONS(4590), [sym_ubyte] = ACTIONS(4590), [sym_char] = ACTIONS(4590), [sym_short] = ACTIONS(4590), [sym_ushort] = ACTIONS(4590), [sym_int] = ACTIONS(4590), [sym_uint] = ACTIONS(4590), [sym_long] = ACTIONS(4590), [sym_ulong] = ACTIONS(4590), [sym_cent] = ACTIONS(4590), [sym_ucent] = ACTIONS(4590), [sym_wchar] = ACTIONS(4590), [sym_dchar] = ACTIONS(4590), [sym_float] = ACTIONS(4590), [sym_double] = ACTIONS(4590), [sym_real] = ACTIONS(4590), [sym_ifloat] = ACTIONS(4590), [sym_idouble] = ACTIONS(4590), [sym_ireal] = ACTIONS(4590), [sym_cfloat] = ACTIONS(4590), [sym_cdouble] = ACTIONS(4590), [sym_creal] = ACTIONS(4590), [sym_size_t] = ACTIONS(4590), [sym_ptrdiff_t] = ACTIONS(4590), [sym_string] = ACTIONS(4590), [sym_cstring] = ACTIONS(4590), [sym_dstring] = ACTIONS(4590), [sym_wstring] = ACTIONS(4590), [sym_noreturn] = ACTIONS(4590), [sym_this] = ACTIONS(4590), [sym_abstract] = ACTIONS(4590), [sym_alias] = ACTIONS(4590), [sym_align] = ACTIONS(4590), [sym_auto] = ACTIONS(4590), [sym_catch] = ACTIONS(4590), [sym_class] = ACTIONS(4590), [sym_const] = ACTIONS(4590), [sym_debug] = ACTIONS(4590), [sym_deprecated] = ACTIONS(4590), [sym_else] = ACTIONS(4590), [sym_enum] = ACTIONS(4590), [sym_export] = ACTIONS(4590), [sym_extern] = ACTIONS(4590), [sym_final] = ACTIONS(4590), [sym_finally] = ACTIONS(4590), [sym_immutable] = ACTIONS(4590), [sym_import] = ACTIONS(4590), [sym_inout] = ACTIONS(4590), [sym_interface] = ACTIONS(4590), [sym_invariant] = ACTIONS(4590), [sym_mixin] = ACTIONS(4590), [sym_nothrow] = ACTIONS(4590), [sym_override] = ACTIONS(4590), [sym_package] = ACTIONS(4590), [sym_pragma] = ACTIONS(4590), [sym_private] = ACTIONS(4590), [sym_protected] = ACTIONS(4590), [sym_public] = ACTIONS(4590), [sym_pure] = ACTIONS(4590), [sym_ref] = ACTIONS(4590), [sym_return] = ACTIONS(4590), [sym_scope] = ACTIONS(4590), [sym_shared] = ACTIONS(4590), [sym_static] = ACTIONS(4590), [sym_struct] = ACTIONS(4590), [sym_synchronized] = ACTIONS(4590), [sym_template] = ACTIONS(4590), [sym_typeof] = ACTIONS(4590), [sym_union] = ACTIONS(4590), [sym_unittest] = ACTIONS(4590), [sym_version] = ACTIONS(4590), [sym_while] = ACTIONS(4590), [sym_gshared] = ACTIONS(4590), [sym_traits] = ACTIONS(4590), [sym_vector] = ACTIONS(4590), [sym_void] = ACTIONS(4590), [sym_directive] = ACTIONS(3), }, [2540] = { [ts_builtin_sym_end] = ACTIONS(5058), [sym_identifier] = ACTIONS(5056), [sym_end_file] = ACTIONS(5056), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5058), [anon_sym_SEMI] = ACTIONS(5058), [anon_sym_TILDE] = ACTIONS(5058), [anon_sym_AT] = ACTIONS(5058), [sym_bool] = ACTIONS(5056), [sym_byte] = ACTIONS(5056), [sym_ubyte] = ACTIONS(5056), [sym_char] = ACTIONS(5056), [sym_short] = ACTIONS(5056), [sym_ushort] = ACTIONS(5056), [sym_int] = ACTIONS(5056), [sym_uint] = ACTIONS(5056), [sym_long] = ACTIONS(5056), [sym_ulong] = ACTIONS(5056), [sym_cent] = ACTIONS(5056), [sym_ucent] = ACTIONS(5056), [sym_wchar] = ACTIONS(5056), [sym_dchar] = ACTIONS(5056), [sym_float] = ACTIONS(5056), [sym_double] = ACTIONS(5056), [sym_real] = ACTIONS(5056), [sym_ifloat] = ACTIONS(5056), [sym_idouble] = ACTIONS(5056), [sym_ireal] = ACTIONS(5056), [sym_cfloat] = ACTIONS(5056), [sym_cdouble] = ACTIONS(5056), [sym_creal] = ACTIONS(5056), [sym_size_t] = ACTIONS(5056), [sym_ptrdiff_t] = ACTIONS(5056), [sym_string] = ACTIONS(5056), [sym_cstring] = ACTIONS(5056), [sym_dstring] = ACTIONS(5056), [sym_wstring] = ACTIONS(5056), [sym_noreturn] = ACTIONS(5056), [sym_this] = ACTIONS(5056), [sym_abstract] = ACTIONS(5056), [sym_alias] = ACTIONS(5056), [sym_align] = ACTIONS(5056), [sym_auto] = ACTIONS(5056), [sym_class] = ACTIONS(5056), [sym_const] = ACTIONS(5056), [sym_debug] = ACTIONS(5056), [sym_deprecated] = ACTIONS(5056), [sym_else] = ACTIONS(5056), [sym_enum] = ACTIONS(5056), [sym_export] = ACTIONS(5056), [sym_extern] = ACTIONS(5056), [sym_final] = ACTIONS(5056), [sym_immutable] = ACTIONS(5056), [sym_import] = ACTIONS(5056), [sym_inout] = ACTIONS(5056), [sym_interface] = ACTIONS(5056), [sym_invariant] = ACTIONS(5056), [sym_mixin] = ACTIONS(5056), [sym_nothrow] = ACTIONS(5056), [sym_override] = ACTIONS(5056), [sym_package] = ACTIONS(5056), [sym_pragma] = ACTIONS(5056), [sym_private] = ACTIONS(5056), [sym_protected] = ACTIONS(5056), [sym_public] = ACTIONS(5056), [sym_pure] = ACTIONS(5056), [sym_ref] = ACTIONS(5056), [sym_return] = ACTIONS(5056), [sym_scope] = ACTIONS(5056), [sym_shared] = ACTIONS(5056), [sym_static] = ACTIONS(5056), [sym_struct] = ACTIONS(5056), [sym_synchronized] = ACTIONS(5056), [sym_template] = ACTIONS(5056), [sym_typeof] = ACTIONS(5056), [sym_union] = ACTIONS(5056), [sym_unittest] = ACTIONS(5056), [sym_version] = ACTIONS(5056), [sym_while] = ACTIONS(5056), [sym_gshared] = ACTIONS(5056), [sym_traits] = ACTIONS(5056), [sym_vector] = ACTIONS(5056), [sym_void] = ACTIONS(5056), [sym_directive] = ACTIONS(3), }, [2541] = { [sym_identifier] = ACTIONS(4586), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4588), [anon_sym_SEMI] = ACTIONS(4588), [anon_sym_TILDE] = ACTIONS(4588), [anon_sym_AT] = ACTIONS(4588), [sym_bool] = ACTIONS(4586), [sym_byte] = ACTIONS(4586), [sym_ubyte] = ACTIONS(4586), [sym_char] = ACTIONS(4586), [sym_short] = ACTIONS(4586), [sym_ushort] = ACTIONS(4586), [sym_int] = ACTIONS(4586), [sym_uint] = ACTIONS(4586), [sym_long] = ACTIONS(4586), [sym_ulong] = ACTIONS(4586), [sym_cent] = ACTIONS(4586), [sym_ucent] = ACTIONS(4586), [sym_wchar] = ACTIONS(4586), [sym_dchar] = ACTIONS(4586), [sym_float] = ACTIONS(4586), [sym_double] = ACTIONS(4586), [sym_real] = ACTIONS(4586), [sym_ifloat] = ACTIONS(4586), [sym_idouble] = ACTIONS(4586), [sym_ireal] = ACTIONS(4586), [sym_cfloat] = ACTIONS(4586), [sym_cdouble] = ACTIONS(4586), [sym_creal] = ACTIONS(4586), [sym_size_t] = ACTIONS(4586), [sym_ptrdiff_t] = ACTIONS(4586), [sym_string] = ACTIONS(4586), [sym_cstring] = ACTIONS(4586), [sym_dstring] = ACTIONS(4586), [sym_wstring] = ACTIONS(4586), [sym_noreturn] = ACTIONS(4586), [sym_this] = ACTIONS(4586), [sym_abstract] = ACTIONS(4586), [sym_alias] = ACTIONS(4586), [sym_align] = ACTIONS(4586), [sym_auto] = ACTIONS(4586), [sym_catch] = ACTIONS(4586), [sym_class] = ACTIONS(4586), [sym_const] = ACTIONS(4586), [sym_debug] = ACTIONS(4586), [sym_deprecated] = ACTIONS(4586), [sym_else] = ACTIONS(4586), [sym_enum] = ACTIONS(4586), [sym_export] = ACTIONS(4586), [sym_extern] = ACTIONS(4586), [sym_final] = ACTIONS(4586), [sym_finally] = ACTIONS(4586), [sym_immutable] = ACTIONS(4586), [sym_import] = ACTIONS(4586), [sym_inout] = ACTIONS(4586), [sym_interface] = ACTIONS(4586), [sym_invariant] = ACTIONS(4586), [sym_mixin] = ACTIONS(4586), [sym_nothrow] = ACTIONS(4586), [sym_override] = ACTIONS(4586), [sym_package] = ACTIONS(4586), [sym_pragma] = ACTIONS(4586), [sym_private] = ACTIONS(4586), [sym_protected] = ACTIONS(4586), [sym_public] = ACTIONS(4586), [sym_pure] = ACTIONS(4586), [sym_ref] = ACTIONS(4586), [sym_return] = ACTIONS(4586), [sym_scope] = ACTIONS(4586), [sym_shared] = ACTIONS(4586), [sym_static] = ACTIONS(4586), [sym_struct] = ACTIONS(4586), [sym_synchronized] = ACTIONS(4586), [sym_template] = ACTIONS(4586), [sym_typeof] = ACTIONS(4586), [sym_union] = ACTIONS(4586), [sym_unittest] = ACTIONS(4586), [sym_version] = ACTIONS(4586), [sym_while] = ACTIONS(4586), [sym_gshared] = ACTIONS(4586), [sym_traits] = ACTIONS(4586), [sym_vector] = ACTIONS(4586), [sym_void] = ACTIONS(4586), [sym_directive] = ACTIONS(3), }, [2542] = { [sym_identifier] = ACTIONS(4620), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4622), [anon_sym_SEMI] = ACTIONS(4622), [anon_sym_TILDE] = ACTIONS(4622), [anon_sym_AT] = ACTIONS(4622), [sym_bool] = ACTIONS(4620), [sym_byte] = ACTIONS(4620), [sym_ubyte] = ACTIONS(4620), [sym_char] = ACTIONS(4620), [sym_short] = ACTIONS(4620), [sym_ushort] = ACTIONS(4620), [sym_int] = ACTIONS(4620), [sym_uint] = ACTIONS(4620), [sym_long] = ACTIONS(4620), [sym_ulong] = ACTIONS(4620), [sym_cent] = ACTIONS(4620), [sym_ucent] = ACTIONS(4620), [sym_wchar] = ACTIONS(4620), [sym_dchar] = ACTIONS(4620), [sym_float] = ACTIONS(4620), [sym_double] = ACTIONS(4620), [sym_real] = ACTIONS(4620), [sym_ifloat] = ACTIONS(4620), [sym_idouble] = ACTIONS(4620), [sym_ireal] = ACTIONS(4620), [sym_cfloat] = ACTIONS(4620), [sym_cdouble] = ACTIONS(4620), [sym_creal] = ACTIONS(4620), [sym_size_t] = ACTIONS(4620), [sym_ptrdiff_t] = ACTIONS(4620), [sym_string] = ACTIONS(4620), [sym_cstring] = ACTIONS(4620), [sym_dstring] = ACTIONS(4620), [sym_wstring] = ACTIONS(4620), [sym_noreturn] = ACTIONS(4620), [sym_this] = ACTIONS(4620), [sym_abstract] = ACTIONS(4620), [sym_alias] = ACTIONS(4620), [sym_align] = ACTIONS(4620), [sym_auto] = ACTIONS(4620), [sym_catch] = ACTIONS(4620), [sym_class] = ACTIONS(4620), [sym_const] = ACTIONS(4620), [sym_debug] = ACTIONS(4620), [sym_deprecated] = ACTIONS(4620), [sym_else] = ACTIONS(4620), [sym_enum] = ACTIONS(4620), [sym_export] = ACTIONS(4620), [sym_extern] = ACTIONS(4620), [sym_final] = ACTIONS(4620), [sym_finally] = ACTIONS(4620), [sym_immutable] = ACTIONS(4620), [sym_import] = ACTIONS(4620), [sym_inout] = ACTIONS(4620), [sym_interface] = ACTIONS(4620), [sym_invariant] = ACTIONS(4620), [sym_mixin] = ACTIONS(4620), [sym_nothrow] = ACTIONS(4620), [sym_override] = ACTIONS(4620), [sym_package] = ACTIONS(4620), [sym_pragma] = ACTIONS(4620), [sym_private] = ACTIONS(4620), [sym_protected] = ACTIONS(4620), [sym_public] = ACTIONS(4620), [sym_pure] = ACTIONS(4620), [sym_ref] = ACTIONS(4620), [sym_return] = ACTIONS(4620), [sym_scope] = ACTIONS(4620), [sym_shared] = ACTIONS(4620), [sym_static] = ACTIONS(4620), [sym_struct] = ACTIONS(4620), [sym_synchronized] = ACTIONS(4620), [sym_template] = ACTIONS(4620), [sym_typeof] = ACTIONS(4620), [sym_union] = ACTIONS(4620), [sym_unittest] = ACTIONS(4620), [sym_version] = ACTIONS(4620), [sym_while] = ACTIONS(4620), [sym_gshared] = ACTIONS(4620), [sym_traits] = ACTIONS(4620), [sym_vector] = ACTIONS(4620), [sym_void] = ACTIONS(4620), [sym_directive] = ACTIONS(3), }, [2543] = { [ts_builtin_sym_end] = ACTIONS(4337), [sym_identifier] = ACTIONS(4335), [sym_end_file] = ACTIONS(4335), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4337), [anon_sym_SEMI] = ACTIONS(4337), [anon_sym_TILDE] = ACTIONS(4337), [anon_sym_AT] = ACTIONS(4337), [sym_bool] = ACTIONS(4335), [sym_byte] = ACTIONS(4335), [sym_ubyte] = ACTIONS(4335), [sym_char] = ACTIONS(4335), [sym_short] = ACTIONS(4335), [sym_ushort] = ACTIONS(4335), [sym_int] = ACTIONS(4335), [sym_uint] = ACTIONS(4335), [sym_long] = ACTIONS(4335), [sym_ulong] = ACTIONS(4335), [sym_cent] = ACTIONS(4335), [sym_ucent] = ACTIONS(4335), [sym_wchar] = ACTIONS(4335), [sym_dchar] = ACTIONS(4335), [sym_float] = ACTIONS(4335), [sym_double] = ACTIONS(4335), [sym_real] = ACTIONS(4335), [sym_ifloat] = ACTIONS(4335), [sym_idouble] = ACTIONS(4335), [sym_ireal] = ACTIONS(4335), [sym_cfloat] = ACTIONS(4335), [sym_cdouble] = ACTIONS(4335), [sym_creal] = ACTIONS(4335), [sym_size_t] = ACTIONS(4335), [sym_ptrdiff_t] = ACTIONS(4335), [sym_string] = ACTIONS(4335), [sym_cstring] = ACTIONS(4335), [sym_dstring] = ACTIONS(4335), [sym_wstring] = ACTIONS(4335), [sym_noreturn] = ACTIONS(4335), [sym_this] = ACTIONS(4335), [sym_abstract] = ACTIONS(4335), [sym_alias] = ACTIONS(4335), [sym_align] = ACTIONS(4335), [sym_auto] = ACTIONS(4335), [sym_class] = ACTIONS(4335), [sym_const] = ACTIONS(4335), [sym_debug] = ACTIONS(4335), [sym_deprecated] = ACTIONS(4335), [sym_else] = ACTIONS(4335), [sym_enum] = ACTIONS(4335), [sym_export] = ACTIONS(4335), [sym_extern] = ACTIONS(4335), [sym_final] = ACTIONS(4335), [sym_immutable] = ACTIONS(4335), [sym_import] = ACTIONS(4335), [sym_inout] = ACTIONS(4335), [sym_interface] = ACTIONS(4335), [sym_invariant] = ACTIONS(4335), [sym_mixin] = ACTIONS(4335), [sym_nothrow] = ACTIONS(4335), [sym_override] = ACTIONS(4335), [sym_package] = ACTIONS(4335), [sym_pragma] = ACTIONS(4335), [sym_private] = ACTIONS(4335), [sym_protected] = ACTIONS(4335), [sym_public] = ACTIONS(4335), [sym_pure] = ACTIONS(4335), [sym_ref] = ACTIONS(4335), [sym_return] = ACTIONS(4335), [sym_scope] = ACTIONS(4335), [sym_shared] = ACTIONS(4335), [sym_static] = ACTIONS(4335), [sym_struct] = ACTIONS(4335), [sym_synchronized] = ACTIONS(4335), [sym_template] = ACTIONS(4335), [sym_typeof] = ACTIONS(4335), [sym_union] = ACTIONS(4335), [sym_unittest] = ACTIONS(4335), [sym_version] = ACTIONS(4335), [sym_while] = ACTIONS(4335), [sym_gshared] = ACTIONS(4335), [sym_traits] = ACTIONS(4335), [sym_vector] = ACTIONS(4335), [sym_void] = ACTIONS(4335), [sym_directive] = ACTIONS(3), }, [2544] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_catch] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_finally] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [sym_directive] = ACTIONS(3), }, [2545] = { [sym_identifier] = ACTIONS(4708), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4710), [anon_sym_SEMI] = ACTIONS(4710), [anon_sym_TILDE] = ACTIONS(4710), [anon_sym_AT] = ACTIONS(4710), [sym_bool] = ACTIONS(4708), [sym_byte] = ACTIONS(4708), [sym_ubyte] = ACTIONS(4708), [sym_char] = ACTIONS(4708), [sym_short] = ACTIONS(4708), [sym_ushort] = ACTIONS(4708), [sym_int] = ACTIONS(4708), [sym_uint] = ACTIONS(4708), [sym_long] = ACTIONS(4708), [sym_ulong] = ACTIONS(4708), [sym_cent] = ACTIONS(4708), [sym_ucent] = ACTIONS(4708), [sym_wchar] = ACTIONS(4708), [sym_dchar] = ACTIONS(4708), [sym_float] = ACTIONS(4708), [sym_double] = ACTIONS(4708), [sym_real] = ACTIONS(4708), [sym_ifloat] = ACTIONS(4708), [sym_idouble] = ACTIONS(4708), [sym_ireal] = ACTIONS(4708), [sym_cfloat] = ACTIONS(4708), [sym_cdouble] = ACTIONS(4708), [sym_creal] = ACTIONS(4708), [sym_size_t] = ACTIONS(4708), [sym_ptrdiff_t] = ACTIONS(4708), [sym_string] = ACTIONS(4708), [sym_cstring] = ACTIONS(4708), [sym_dstring] = ACTIONS(4708), [sym_wstring] = ACTIONS(4708), [sym_noreturn] = ACTIONS(4708), [sym_this] = ACTIONS(4708), [sym_abstract] = ACTIONS(4708), [sym_alias] = ACTIONS(4708), [sym_align] = ACTIONS(4708), [sym_auto] = ACTIONS(4708), [sym_catch] = ACTIONS(4708), [sym_class] = ACTIONS(4708), [sym_const] = ACTIONS(4708), [sym_debug] = ACTIONS(4708), [sym_deprecated] = ACTIONS(4708), [sym_else] = ACTIONS(4708), [sym_enum] = ACTIONS(4708), [sym_export] = ACTIONS(4708), [sym_extern] = ACTIONS(4708), [sym_final] = ACTIONS(4708), [sym_finally] = ACTIONS(4708), [sym_immutable] = ACTIONS(4708), [sym_import] = ACTIONS(4708), [sym_inout] = ACTIONS(4708), [sym_interface] = ACTIONS(4708), [sym_invariant] = ACTIONS(4708), [sym_mixin] = ACTIONS(4708), [sym_nothrow] = ACTIONS(4708), [sym_override] = ACTIONS(4708), [sym_package] = ACTIONS(4708), [sym_pragma] = ACTIONS(4708), [sym_private] = ACTIONS(4708), [sym_protected] = ACTIONS(4708), [sym_public] = ACTIONS(4708), [sym_pure] = ACTIONS(4708), [sym_ref] = ACTIONS(4708), [sym_return] = ACTIONS(4708), [sym_scope] = ACTIONS(4708), [sym_shared] = ACTIONS(4708), [sym_static] = ACTIONS(4708), [sym_struct] = ACTIONS(4708), [sym_synchronized] = ACTIONS(4708), [sym_template] = ACTIONS(4708), [sym_typeof] = ACTIONS(4708), [sym_union] = ACTIONS(4708), [sym_unittest] = ACTIONS(4708), [sym_version] = ACTIONS(4708), [sym_while] = ACTIONS(4708), [sym_gshared] = ACTIONS(4708), [sym_traits] = ACTIONS(4708), [sym_vector] = ACTIONS(4708), [sym_void] = ACTIONS(4708), [sym_directive] = ACTIONS(3), }, [2546] = { [sym_identifier] = ACTIONS(4301), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4303), [anon_sym_SEMI] = ACTIONS(4303), [anon_sym_TILDE] = ACTIONS(4303), [anon_sym_AT] = ACTIONS(4303), [sym_bool] = ACTIONS(4301), [sym_byte] = ACTIONS(4301), [sym_ubyte] = ACTIONS(4301), [sym_char] = ACTIONS(4301), [sym_short] = ACTIONS(4301), [sym_ushort] = ACTIONS(4301), [sym_int] = ACTIONS(4301), [sym_uint] = ACTIONS(4301), [sym_long] = ACTIONS(4301), [sym_ulong] = ACTIONS(4301), [sym_cent] = ACTIONS(4301), [sym_ucent] = ACTIONS(4301), [sym_wchar] = ACTIONS(4301), [sym_dchar] = ACTIONS(4301), [sym_float] = ACTIONS(4301), [sym_double] = ACTIONS(4301), [sym_real] = ACTIONS(4301), [sym_ifloat] = ACTIONS(4301), [sym_idouble] = ACTIONS(4301), [sym_ireal] = ACTIONS(4301), [sym_cfloat] = ACTIONS(4301), [sym_cdouble] = ACTIONS(4301), [sym_creal] = ACTIONS(4301), [sym_size_t] = ACTIONS(4301), [sym_ptrdiff_t] = ACTIONS(4301), [sym_string] = ACTIONS(4301), [sym_cstring] = ACTIONS(4301), [sym_dstring] = ACTIONS(4301), [sym_wstring] = ACTIONS(4301), [sym_noreturn] = ACTIONS(4301), [sym_this] = ACTIONS(4301), [sym_abstract] = ACTIONS(4301), [sym_alias] = ACTIONS(4301), [sym_align] = ACTIONS(4301), [sym_auto] = ACTIONS(4301), [sym_catch] = ACTIONS(4301), [sym_class] = ACTIONS(4301), [sym_const] = ACTIONS(4301), [sym_debug] = ACTIONS(4301), [sym_deprecated] = ACTIONS(4301), [sym_else] = ACTIONS(4301), [sym_enum] = ACTIONS(4301), [sym_export] = ACTIONS(4301), [sym_extern] = ACTIONS(4301), [sym_final] = ACTIONS(4301), [sym_finally] = ACTIONS(4301), [sym_immutable] = ACTIONS(4301), [sym_import] = ACTIONS(4301), [sym_inout] = ACTIONS(4301), [sym_interface] = ACTIONS(4301), [sym_invariant] = ACTIONS(4301), [sym_mixin] = ACTIONS(4301), [sym_nothrow] = ACTIONS(4301), [sym_override] = ACTIONS(4301), [sym_package] = ACTIONS(4301), [sym_pragma] = ACTIONS(4301), [sym_private] = ACTIONS(4301), [sym_protected] = ACTIONS(4301), [sym_public] = ACTIONS(4301), [sym_pure] = ACTIONS(4301), [sym_ref] = ACTIONS(4301), [sym_return] = ACTIONS(4301), [sym_scope] = ACTIONS(4301), [sym_shared] = ACTIONS(4301), [sym_static] = ACTIONS(4301), [sym_struct] = ACTIONS(4301), [sym_synchronized] = ACTIONS(4301), [sym_template] = ACTIONS(4301), [sym_typeof] = ACTIONS(4301), [sym_union] = ACTIONS(4301), [sym_unittest] = ACTIONS(4301), [sym_version] = ACTIONS(4301), [sym_while] = ACTIONS(4301), [sym_gshared] = ACTIONS(4301), [sym_traits] = ACTIONS(4301), [sym_vector] = ACTIONS(4301), [sym_void] = ACTIONS(4301), [sym_directive] = ACTIONS(3), }, [2547] = { [sym_identifier] = ACTIONS(4317), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4319), [anon_sym_SEMI] = ACTIONS(4319), [anon_sym_TILDE] = ACTIONS(4319), [anon_sym_AT] = ACTIONS(4319), [sym_bool] = ACTIONS(4317), [sym_byte] = ACTIONS(4317), [sym_ubyte] = ACTIONS(4317), [sym_char] = ACTIONS(4317), [sym_short] = ACTIONS(4317), [sym_ushort] = ACTIONS(4317), [sym_int] = ACTIONS(4317), [sym_uint] = ACTIONS(4317), [sym_long] = ACTIONS(4317), [sym_ulong] = ACTIONS(4317), [sym_cent] = ACTIONS(4317), [sym_ucent] = ACTIONS(4317), [sym_wchar] = ACTIONS(4317), [sym_dchar] = ACTIONS(4317), [sym_float] = ACTIONS(4317), [sym_double] = ACTIONS(4317), [sym_real] = ACTIONS(4317), [sym_ifloat] = ACTIONS(4317), [sym_idouble] = ACTIONS(4317), [sym_ireal] = ACTIONS(4317), [sym_cfloat] = ACTIONS(4317), [sym_cdouble] = ACTIONS(4317), [sym_creal] = ACTIONS(4317), [sym_size_t] = ACTIONS(4317), [sym_ptrdiff_t] = ACTIONS(4317), [sym_string] = ACTIONS(4317), [sym_cstring] = ACTIONS(4317), [sym_dstring] = ACTIONS(4317), [sym_wstring] = ACTIONS(4317), [sym_noreturn] = ACTIONS(4317), [sym_this] = ACTIONS(4317), [sym_abstract] = ACTIONS(4317), [sym_alias] = ACTIONS(4317), [sym_align] = ACTIONS(4317), [sym_auto] = ACTIONS(4317), [sym_catch] = ACTIONS(4317), [sym_class] = ACTIONS(4317), [sym_const] = ACTIONS(4317), [sym_debug] = ACTIONS(4317), [sym_deprecated] = ACTIONS(4317), [sym_else] = ACTIONS(4317), [sym_enum] = ACTIONS(4317), [sym_export] = ACTIONS(4317), [sym_extern] = ACTIONS(4317), [sym_final] = ACTIONS(4317), [sym_finally] = ACTIONS(4317), [sym_immutable] = ACTIONS(4317), [sym_import] = ACTIONS(4317), [sym_inout] = ACTIONS(4317), [sym_interface] = ACTIONS(4317), [sym_invariant] = ACTIONS(4317), [sym_mixin] = ACTIONS(4317), [sym_nothrow] = ACTIONS(4317), [sym_override] = ACTIONS(4317), [sym_package] = ACTIONS(4317), [sym_pragma] = ACTIONS(4317), [sym_private] = ACTIONS(4317), [sym_protected] = ACTIONS(4317), [sym_public] = ACTIONS(4317), [sym_pure] = ACTIONS(4317), [sym_ref] = ACTIONS(4317), [sym_return] = ACTIONS(4317), [sym_scope] = ACTIONS(4317), [sym_shared] = ACTIONS(4317), [sym_static] = ACTIONS(4317), [sym_struct] = ACTIONS(4317), [sym_synchronized] = ACTIONS(4317), [sym_template] = ACTIONS(4317), [sym_typeof] = ACTIONS(4317), [sym_union] = ACTIONS(4317), [sym_unittest] = ACTIONS(4317), [sym_version] = ACTIONS(4317), [sym_while] = ACTIONS(4317), [sym_gshared] = ACTIONS(4317), [sym_traits] = ACTIONS(4317), [sym_vector] = ACTIONS(4317), [sym_void] = ACTIONS(4317), [sym_directive] = ACTIONS(3), }, [2548] = { [sym_identifier] = ACTIONS(4331), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4333), [anon_sym_SEMI] = ACTIONS(4333), [anon_sym_TILDE] = ACTIONS(4333), [anon_sym_AT] = ACTIONS(4333), [sym_bool] = ACTIONS(4331), [sym_byte] = ACTIONS(4331), [sym_ubyte] = ACTIONS(4331), [sym_char] = ACTIONS(4331), [sym_short] = ACTIONS(4331), [sym_ushort] = ACTIONS(4331), [sym_int] = ACTIONS(4331), [sym_uint] = ACTIONS(4331), [sym_long] = ACTIONS(4331), [sym_ulong] = ACTIONS(4331), [sym_cent] = ACTIONS(4331), [sym_ucent] = ACTIONS(4331), [sym_wchar] = ACTIONS(4331), [sym_dchar] = ACTIONS(4331), [sym_float] = ACTIONS(4331), [sym_double] = ACTIONS(4331), [sym_real] = ACTIONS(4331), [sym_ifloat] = ACTIONS(4331), [sym_idouble] = ACTIONS(4331), [sym_ireal] = ACTIONS(4331), [sym_cfloat] = ACTIONS(4331), [sym_cdouble] = ACTIONS(4331), [sym_creal] = ACTIONS(4331), [sym_size_t] = ACTIONS(4331), [sym_ptrdiff_t] = ACTIONS(4331), [sym_string] = ACTIONS(4331), [sym_cstring] = ACTIONS(4331), [sym_dstring] = ACTIONS(4331), [sym_wstring] = ACTIONS(4331), [sym_noreturn] = ACTIONS(4331), [sym_this] = ACTIONS(4331), [sym_abstract] = ACTIONS(4331), [sym_alias] = ACTIONS(4331), [sym_align] = ACTIONS(4331), [sym_auto] = ACTIONS(4331), [sym_catch] = ACTIONS(4331), [sym_class] = ACTIONS(4331), [sym_const] = ACTIONS(4331), [sym_debug] = ACTIONS(4331), [sym_deprecated] = ACTIONS(4331), [sym_else] = ACTIONS(4331), [sym_enum] = ACTIONS(4331), [sym_export] = ACTIONS(4331), [sym_extern] = ACTIONS(4331), [sym_final] = ACTIONS(4331), [sym_finally] = ACTIONS(4331), [sym_immutable] = ACTIONS(4331), [sym_import] = ACTIONS(4331), [sym_inout] = ACTIONS(4331), [sym_interface] = ACTIONS(4331), [sym_invariant] = ACTIONS(4331), [sym_mixin] = ACTIONS(4331), [sym_nothrow] = ACTIONS(4331), [sym_override] = ACTIONS(4331), [sym_package] = ACTIONS(4331), [sym_pragma] = ACTIONS(4331), [sym_private] = ACTIONS(4331), [sym_protected] = ACTIONS(4331), [sym_public] = ACTIONS(4331), [sym_pure] = ACTIONS(4331), [sym_ref] = ACTIONS(4331), [sym_return] = ACTIONS(4331), [sym_scope] = ACTIONS(4331), [sym_shared] = ACTIONS(4331), [sym_static] = ACTIONS(4331), [sym_struct] = ACTIONS(4331), [sym_synchronized] = ACTIONS(4331), [sym_template] = ACTIONS(4331), [sym_typeof] = ACTIONS(4331), [sym_union] = ACTIONS(4331), [sym_unittest] = ACTIONS(4331), [sym_version] = ACTIONS(4331), [sym_while] = ACTIONS(4331), [sym_gshared] = ACTIONS(4331), [sym_traits] = ACTIONS(4331), [sym_vector] = ACTIONS(4331), [sym_void] = ACTIONS(4331), [sym_directive] = ACTIONS(3), }, [2549] = { [sym_identifier] = ACTIONS(4610), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4612), [anon_sym_SEMI] = ACTIONS(4612), [anon_sym_TILDE] = ACTIONS(4612), [anon_sym_AT] = ACTIONS(4612), [sym_bool] = ACTIONS(4610), [sym_byte] = ACTIONS(4610), [sym_ubyte] = ACTIONS(4610), [sym_char] = ACTIONS(4610), [sym_short] = ACTIONS(4610), [sym_ushort] = ACTIONS(4610), [sym_int] = ACTIONS(4610), [sym_uint] = ACTIONS(4610), [sym_long] = ACTIONS(4610), [sym_ulong] = ACTIONS(4610), [sym_cent] = ACTIONS(4610), [sym_ucent] = ACTIONS(4610), [sym_wchar] = ACTIONS(4610), [sym_dchar] = ACTIONS(4610), [sym_float] = ACTIONS(4610), [sym_double] = ACTIONS(4610), [sym_real] = ACTIONS(4610), [sym_ifloat] = ACTIONS(4610), [sym_idouble] = ACTIONS(4610), [sym_ireal] = ACTIONS(4610), [sym_cfloat] = ACTIONS(4610), [sym_cdouble] = ACTIONS(4610), [sym_creal] = ACTIONS(4610), [sym_size_t] = ACTIONS(4610), [sym_ptrdiff_t] = ACTIONS(4610), [sym_string] = ACTIONS(4610), [sym_cstring] = ACTIONS(4610), [sym_dstring] = ACTIONS(4610), [sym_wstring] = ACTIONS(4610), [sym_noreturn] = ACTIONS(4610), [sym_this] = ACTIONS(4610), [sym_abstract] = ACTIONS(4610), [sym_alias] = ACTIONS(4610), [sym_align] = ACTIONS(4610), [sym_auto] = ACTIONS(4610), [sym_catch] = ACTIONS(4610), [sym_class] = ACTIONS(4610), [sym_const] = ACTIONS(4610), [sym_debug] = ACTIONS(4610), [sym_deprecated] = ACTIONS(4610), [sym_else] = ACTIONS(4610), [sym_enum] = ACTIONS(4610), [sym_export] = ACTIONS(4610), [sym_extern] = ACTIONS(4610), [sym_final] = ACTIONS(4610), [sym_finally] = ACTIONS(4610), [sym_immutable] = ACTIONS(4610), [sym_import] = ACTIONS(4610), [sym_inout] = ACTIONS(4610), [sym_interface] = ACTIONS(4610), [sym_invariant] = ACTIONS(4610), [sym_mixin] = ACTIONS(4610), [sym_nothrow] = ACTIONS(4610), [sym_override] = ACTIONS(4610), [sym_package] = ACTIONS(4610), [sym_pragma] = ACTIONS(4610), [sym_private] = ACTIONS(4610), [sym_protected] = ACTIONS(4610), [sym_public] = ACTIONS(4610), [sym_pure] = ACTIONS(4610), [sym_ref] = ACTIONS(4610), [sym_return] = ACTIONS(4610), [sym_scope] = ACTIONS(4610), [sym_shared] = ACTIONS(4610), [sym_static] = ACTIONS(4610), [sym_struct] = ACTIONS(4610), [sym_synchronized] = ACTIONS(4610), [sym_template] = ACTIONS(4610), [sym_typeof] = ACTIONS(4610), [sym_union] = ACTIONS(4610), [sym_unittest] = ACTIONS(4610), [sym_version] = ACTIONS(4610), [sym_while] = ACTIONS(4610), [sym_gshared] = ACTIONS(4610), [sym_traits] = ACTIONS(4610), [sym_vector] = ACTIONS(4610), [sym_void] = ACTIONS(4610), [sym_directive] = ACTIONS(3), }, [2550] = { [sym_identifier] = ACTIONS(4343), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4345), [anon_sym_SEMI] = ACTIONS(4345), [anon_sym_TILDE] = ACTIONS(4345), [anon_sym_AT] = ACTIONS(4345), [sym_bool] = ACTIONS(4343), [sym_byte] = ACTIONS(4343), [sym_ubyte] = ACTIONS(4343), [sym_char] = ACTIONS(4343), [sym_short] = ACTIONS(4343), [sym_ushort] = ACTIONS(4343), [sym_int] = ACTIONS(4343), [sym_uint] = ACTIONS(4343), [sym_long] = ACTIONS(4343), [sym_ulong] = ACTIONS(4343), [sym_cent] = ACTIONS(4343), [sym_ucent] = ACTIONS(4343), [sym_wchar] = ACTIONS(4343), [sym_dchar] = ACTIONS(4343), [sym_float] = ACTIONS(4343), [sym_double] = ACTIONS(4343), [sym_real] = ACTIONS(4343), [sym_ifloat] = ACTIONS(4343), [sym_idouble] = ACTIONS(4343), [sym_ireal] = ACTIONS(4343), [sym_cfloat] = ACTIONS(4343), [sym_cdouble] = ACTIONS(4343), [sym_creal] = ACTIONS(4343), [sym_size_t] = ACTIONS(4343), [sym_ptrdiff_t] = ACTIONS(4343), [sym_string] = ACTIONS(4343), [sym_cstring] = ACTIONS(4343), [sym_dstring] = ACTIONS(4343), [sym_wstring] = ACTIONS(4343), [sym_noreturn] = ACTIONS(4343), [sym_this] = ACTIONS(4343), [sym_abstract] = ACTIONS(4343), [sym_alias] = ACTIONS(4343), [sym_align] = ACTIONS(4343), [sym_auto] = ACTIONS(4343), [sym_catch] = ACTIONS(4343), [sym_class] = ACTIONS(4343), [sym_const] = ACTIONS(4343), [sym_debug] = ACTIONS(4343), [sym_deprecated] = ACTIONS(4343), [sym_else] = ACTIONS(4343), [sym_enum] = ACTIONS(4343), [sym_export] = ACTIONS(4343), [sym_extern] = ACTIONS(4343), [sym_final] = ACTIONS(4343), [sym_finally] = ACTIONS(4343), [sym_immutable] = ACTIONS(4343), [sym_import] = ACTIONS(4343), [sym_inout] = ACTIONS(4343), [sym_interface] = ACTIONS(4343), [sym_invariant] = ACTIONS(4343), [sym_mixin] = ACTIONS(4343), [sym_nothrow] = ACTIONS(4343), [sym_override] = ACTIONS(4343), [sym_package] = ACTIONS(4343), [sym_pragma] = ACTIONS(4343), [sym_private] = ACTIONS(4343), [sym_protected] = ACTIONS(4343), [sym_public] = ACTIONS(4343), [sym_pure] = ACTIONS(4343), [sym_ref] = ACTIONS(4343), [sym_return] = ACTIONS(4343), [sym_scope] = ACTIONS(4343), [sym_shared] = ACTIONS(4343), [sym_static] = ACTIONS(4343), [sym_struct] = ACTIONS(4343), [sym_synchronized] = ACTIONS(4343), [sym_template] = ACTIONS(4343), [sym_typeof] = ACTIONS(4343), [sym_union] = ACTIONS(4343), [sym_unittest] = ACTIONS(4343), [sym_version] = ACTIONS(4343), [sym_while] = ACTIONS(4343), [sym_gshared] = ACTIONS(4343), [sym_traits] = ACTIONS(4343), [sym_vector] = ACTIONS(4343), [sym_void] = ACTIONS(4343), [sym_directive] = ACTIONS(3), }, [2551] = { [ts_builtin_sym_end] = ACTIONS(4902), [sym_identifier] = ACTIONS(4900), [sym_end_file] = ACTIONS(4900), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4902), [anon_sym_SEMI] = ACTIONS(4902), [anon_sym_TILDE] = ACTIONS(4902), [anon_sym_AT] = ACTIONS(4902), [sym_bool] = ACTIONS(4900), [sym_byte] = ACTIONS(4900), [sym_ubyte] = ACTIONS(4900), [sym_char] = ACTIONS(4900), [sym_short] = ACTIONS(4900), [sym_ushort] = ACTIONS(4900), [sym_int] = ACTIONS(4900), [sym_uint] = ACTIONS(4900), [sym_long] = ACTIONS(4900), [sym_ulong] = ACTIONS(4900), [sym_cent] = ACTIONS(4900), [sym_ucent] = ACTIONS(4900), [sym_wchar] = ACTIONS(4900), [sym_dchar] = ACTIONS(4900), [sym_float] = ACTIONS(4900), [sym_double] = ACTIONS(4900), [sym_real] = ACTIONS(4900), [sym_ifloat] = ACTIONS(4900), [sym_idouble] = ACTIONS(4900), [sym_ireal] = ACTIONS(4900), [sym_cfloat] = ACTIONS(4900), [sym_cdouble] = ACTIONS(4900), [sym_creal] = ACTIONS(4900), [sym_size_t] = ACTIONS(4900), [sym_ptrdiff_t] = ACTIONS(4900), [sym_string] = ACTIONS(4900), [sym_cstring] = ACTIONS(4900), [sym_dstring] = ACTIONS(4900), [sym_wstring] = ACTIONS(4900), [sym_noreturn] = ACTIONS(4900), [sym_this] = ACTIONS(4900), [sym_abstract] = ACTIONS(4900), [sym_alias] = ACTIONS(4900), [sym_align] = ACTIONS(4900), [sym_auto] = ACTIONS(4900), [sym_class] = ACTIONS(4900), [sym_const] = ACTIONS(4900), [sym_debug] = ACTIONS(4900), [sym_deprecated] = ACTIONS(4900), [sym_else] = ACTIONS(4900), [sym_enum] = ACTIONS(4900), [sym_export] = ACTIONS(4900), [sym_extern] = ACTIONS(4900), [sym_final] = ACTIONS(4900), [sym_immutable] = ACTIONS(4900), [sym_import] = ACTIONS(4900), [sym_inout] = ACTIONS(4900), [sym_interface] = ACTIONS(4900), [sym_invariant] = ACTIONS(4900), [sym_mixin] = ACTIONS(4900), [sym_nothrow] = ACTIONS(4900), [sym_override] = ACTIONS(4900), [sym_package] = ACTIONS(4900), [sym_pragma] = ACTIONS(4900), [sym_private] = ACTIONS(4900), [sym_protected] = ACTIONS(4900), [sym_public] = ACTIONS(4900), [sym_pure] = ACTIONS(4900), [sym_ref] = ACTIONS(4900), [sym_return] = ACTIONS(4900), [sym_scope] = ACTIONS(4900), [sym_shared] = ACTIONS(4900), [sym_static] = ACTIONS(4900), [sym_struct] = ACTIONS(4900), [sym_synchronized] = ACTIONS(4900), [sym_template] = ACTIONS(4900), [sym_typeof] = ACTIONS(4900), [sym_union] = ACTIONS(4900), [sym_unittest] = ACTIONS(4900), [sym_version] = ACTIONS(4900), [sym_while] = ACTIONS(4900), [sym_gshared] = ACTIONS(4900), [sym_traits] = ACTIONS(4900), [sym_vector] = ACTIONS(4900), [sym_void] = ACTIONS(4900), [sym_directive] = ACTIONS(3), }, [2552] = { [ts_builtin_sym_end] = ACTIONS(4906), [sym_identifier] = ACTIONS(4904), [sym_end_file] = ACTIONS(4904), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4906), [anon_sym_SEMI] = ACTIONS(4906), [anon_sym_TILDE] = ACTIONS(4906), [anon_sym_AT] = ACTIONS(4906), [sym_bool] = ACTIONS(4904), [sym_byte] = ACTIONS(4904), [sym_ubyte] = ACTIONS(4904), [sym_char] = ACTIONS(4904), [sym_short] = ACTIONS(4904), [sym_ushort] = ACTIONS(4904), [sym_int] = ACTIONS(4904), [sym_uint] = ACTIONS(4904), [sym_long] = ACTIONS(4904), [sym_ulong] = ACTIONS(4904), [sym_cent] = ACTIONS(4904), [sym_ucent] = ACTIONS(4904), [sym_wchar] = ACTIONS(4904), [sym_dchar] = ACTIONS(4904), [sym_float] = ACTIONS(4904), [sym_double] = ACTIONS(4904), [sym_real] = ACTIONS(4904), [sym_ifloat] = ACTIONS(4904), [sym_idouble] = ACTIONS(4904), [sym_ireal] = ACTIONS(4904), [sym_cfloat] = ACTIONS(4904), [sym_cdouble] = ACTIONS(4904), [sym_creal] = ACTIONS(4904), [sym_size_t] = ACTIONS(4904), [sym_ptrdiff_t] = ACTIONS(4904), [sym_string] = ACTIONS(4904), [sym_cstring] = ACTIONS(4904), [sym_dstring] = ACTIONS(4904), [sym_wstring] = ACTIONS(4904), [sym_noreturn] = ACTIONS(4904), [sym_this] = ACTIONS(4904), [sym_abstract] = ACTIONS(4904), [sym_alias] = ACTIONS(4904), [sym_align] = ACTIONS(4904), [sym_auto] = ACTIONS(4904), [sym_class] = ACTIONS(4904), [sym_const] = ACTIONS(4904), [sym_debug] = ACTIONS(4904), [sym_deprecated] = ACTIONS(4904), [sym_else] = ACTIONS(4904), [sym_enum] = ACTIONS(4904), [sym_export] = ACTIONS(4904), [sym_extern] = ACTIONS(4904), [sym_final] = ACTIONS(4904), [sym_immutable] = ACTIONS(4904), [sym_import] = ACTIONS(4904), [sym_inout] = ACTIONS(4904), [sym_interface] = ACTIONS(4904), [sym_invariant] = ACTIONS(4904), [sym_mixin] = ACTIONS(4904), [sym_nothrow] = ACTIONS(4904), [sym_override] = ACTIONS(4904), [sym_package] = ACTIONS(4904), [sym_pragma] = ACTIONS(4904), [sym_private] = ACTIONS(4904), [sym_protected] = ACTIONS(4904), [sym_public] = ACTIONS(4904), [sym_pure] = ACTIONS(4904), [sym_ref] = ACTIONS(4904), [sym_return] = ACTIONS(4904), [sym_scope] = ACTIONS(4904), [sym_shared] = ACTIONS(4904), [sym_static] = ACTIONS(4904), [sym_struct] = ACTIONS(4904), [sym_synchronized] = ACTIONS(4904), [sym_template] = ACTIONS(4904), [sym_typeof] = ACTIONS(4904), [sym_union] = ACTIONS(4904), [sym_unittest] = ACTIONS(4904), [sym_version] = ACTIONS(4904), [sym_while] = ACTIONS(4904), [sym_gshared] = ACTIONS(4904), [sym_traits] = ACTIONS(4904), [sym_vector] = ACTIONS(4904), [sym_void] = ACTIONS(4904), [sym_directive] = ACTIONS(3), }, [2553] = { [sym_identifier] = ACTIONS(4386), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4388), [anon_sym_SEMI] = ACTIONS(4388), [anon_sym_TILDE] = ACTIONS(4388), [anon_sym_AT] = ACTIONS(4388), [sym_bool] = ACTIONS(4386), [sym_byte] = ACTIONS(4386), [sym_ubyte] = ACTIONS(4386), [sym_char] = ACTIONS(4386), [sym_short] = ACTIONS(4386), [sym_ushort] = ACTIONS(4386), [sym_int] = ACTIONS(4386), [sym_uint] = ACTIONS(4386), [sym_long] = ACTIONS(4386), [sym_ulong] = ACTIONS(4386), [sym_cent] = ACTIONS(4386), [sym_ucent] = ACTIONS(4386), [sym_wchar] = ACTIONS(4386), [sym_dchar] = ACTIONS(4386), [sym_float] = ACTIONS(4386), [sym_double] = ACTIONS(4386), [sym_real] = ACTIONS(4386), [sym_ifloat] = ACTIONS(4386), [sym_idouble] = ACTIONS(4386), [sym_ireal] = ACTIONS(4386), [sym_cfloat] = ACTIONS(4386), [sym_cdouble] = ACTIONS(4386), [sym_creal] = ACTIONS(4386), [sym_size_t] = ACTIONS(4386), [sym_ptrdiff_t] = ACTIONS(4386), [sym_string] = ACTIONS(4386), [sym_cstring] = ACTIONS(4386), [sym_dstring] = ACTIONS(4386), [sym_wstring] = ACTIONS(4386), [sym_noreturn] = ACTIONS(4386), [sym_this] = ACTIONS(4386), [sym_abstract] = ACTIONS(4386), [sym_alias] = ACTIONS(4386), [sym_align] = ACTIONS(4386), [sym_auto] = ACTIONS(4386), [sym_catch] = ACTIONS(4386), [sym_class] = ACTIONS(4386), [sym_const] = ACTIONS(4386), [sym_debug] = ACTIONS(4386), [sym_deprecated] = ACTIONS(4386), [sym_else] = ACTIONS(4386), [sym_enum] = ACTIONS(4386), [sym_export] = ACTIONS(4386), [sym_extern] = ACTIONS(4386), [sym_final] = ACTIONS(4386), [sym_finally] = ACTIONS(4386), [sym_immutable] = ACTIONS(4386), [sym_import] = ACTIONS(4386), [sym_inout] = ACTIONS(4386), [sym_interface] = ACTIONS(4386), [sym_invariant] = ACTIONS(4386), [sym_mixin] = ACTIONS(4386), [sym_nothrow] = ACTIONS(4386), [sym_override] = ACTIONS(4386), [sym_package] = ACTIONS(4386), [sym_pragma] = ACTIONS(4386), [sym_private] = ACTIONS(4386), [sym_protected] = ACTIONS(4386), [sym_public] = ACTIONS(4386), [sym_pure] = ACTIONS(4386), [sym_ref] = ACTIONS(4386), [sym_return] = ACTIONS(4386), [sym_scope] = ACTIONS(4386), [sym_shared] = ACTIONS(4386), [sym_static] = ACTIONS(4386), [sym_struct] = ACTIONS(4386), [sym_synchronized] = ACTIONS(4386), [sym_template] = ACTIONS(4386), [sym_typeof] = ACTIONS(4386), [sym_union] = ACTIONS(4386), [sym_unittest] = ACTIONS(4386), [sym_version] = ACTIONS(4386), [sym_while] = ACTIONS(4386), [sym_gshared] = ACTIONS(4386), [sym_traits] = ACTIONS(4386), [sym_vector] = ACTIONS(4386), [sym_void] = ACTIONS(4386), [sym_directive] = ACTIONS(3), }, [2554] = { [ts_builtin_sym_end] = ACTIONS(4618), [sym_identifier] = ACTIONS(4616), [sym_end_file] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [sym_directive] = ACTIONS(3), }, [2555] = { [ts_builtin_sym_end] = ACTIONS(4914), [sym_identifier] = ACTIONS(4912), [sym_end_file] = ACTIONS(4912), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4914), [anon_sym_SEMI] = ACTIONS(4914), [anon_sym_TILDE] = ACTIONS(4914), [anon_sym_AT] = ACTIONS(4914), [sym_bool] = ACTIONS(4912), [sym_byte] = ACTIONS(4912), [sym_ubyte] = ACTIONS(4912), [sym_char] = ACTIONS(4912), [sym_short] = ACTIONS(4912), [sym_ushort] = ACTIONS(4912), [sym_int] = ACTIONS(4912), [sym_uint] = ACTIONS(4912), [sym_long] = ACTIONS(4912), [sym_ulong] = ACTIONS(4912), [sym_cent] = ACTIONS(4912), [sym_ucent] = ACTIONS(4912), [sym_wchar] = ACTIONS(4912), [sym_dchar] = ACTIONS(4912), [sym_float] = ACTIONS(4912), [sym_double] = ACTIONS(4912), [sym_real] = ACTIONS(4912), [sym_ifloat] = ACTIONS(4912), [sym_idouble] = ACTIONS(4912), [sym_ireal] = ACTIONS(4912), [sym_cfloat] = ACTIONS(4912), [sym_cdouble] = ACTIONS(4912), [sym_creal] = ACTIONS(4912), [sym_size_t] = ACTIONS(4912), [sym_ptrdiff_t] = ACTIONS(4912), [sym_string] = ACTIONS(4912), [sym_cstring] = ACTIONS(4912), [sym_dstring] = ACTIONS(4912), [sym_wstring] = ACTIONS(4912), [sym_noreturn] = ACTIONS(4912), [sym_this] = ACTIONS(4912), [sym_abstract] = ACTIONS(4912), [sym_alias] = ACTIONS(4912), [sym_align] = ACTIONS(4912), [sym_auto] = ACTIONS(4912), [sym_class] = ACTIONS(4912), [sym_const] = ACTIONS(4912), [sym_debug] = ACTIONS(4912), [sym_deprecated] = ACTIONS(4912), [sym_else] = ACTIONS(4912), [sym_enum] = ACTIONS(4912), [sym_export] = ACTIONS(4912), [sym_extern] = ACTIONS(4912), [sym_final] = ACTIONS(4912), [sym_immutable] = ACTIONS(4912), [sym_import] = ACTIONS(4912), [sym_inout] = ACTIONS(4912), [sym_interface] = ACTIONS(4912), [sym_invariant] = ACTIONS(4912), [sym_mixin] = ACTIONS(4912), [sym_nothrow] = ACTIONS(4912), [sym_override] = ACTIONS(4912), [sym_package] = ACTIONS(4912), [sym_pragma] = ACTIONS(4912), [sym_private] = ACTIONS(4912), [sym_protected] = ACTIONS(4912), [sym_public] = ACTIONS(4912), [sym_pure] = ACTIONS(4912), [sym_ref] = ACTIONS(4912), [sym_return] = ACTIONS(4912), [sym_scope] = ACTIONS(4912), [sym_shared] = ACTIONS(4912), [sym_static] = ACTIONS(4912), [sym_struct] = ACTIONS(4912), [sym_synchronized] = ACTIONS(4912), [sym_template] = ACTIONS(4912), [sym_typeof] = ACTIONS(4912), [sym_union] = ACTIONS(4912), [sym_unittest] = ACTIONS(4912), [sym_version] = ACTIONS(4912), [sym_while] = ACTIONS(4912), [sym_gshared] = ACTIONS(4912), [sym_traits] = ACTIONS(4912), [sym_vector] = ACTIONS(4912), [sym_void] = ACTIONS(4912), [sym_directive] = ACTIONS(3), }, [2556] = { [ts_builtin_sym_end] = ACTIONS(4920), [sym_identifier] = ACTIONS(4918), [sym_end_file] = ACTIONS(4918), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4920), [anon_sym_SEMI] = ACTIONS(4920), [anon_sym_TILDE] = ACTIONS(4920), [anon_sym_AT] = ACTIONS(4920), [sym_bool] = ACTIONS(4918), [sym_byte] = ACTIONS(4918), [sym_ubyte] = ACTIONS(4918), [sym_char] = ACTIONS(4918), [sym_short] = ACTIONS(4918), [sym_ushort] = ACTIONS(4918), [sym_int] = ACTIONS(4918), [sym_uint] = ACTIONS(4918), [sym_long] = ACTIONS(4918), [sym_ulong] = ACTIONS(4918), [sym_cent] = ACTIONS(4918), [sym_ucent] = ACTIONS(4918), [sym_wchar] = ACTIONS(4918), [sym_dchar] = ACTIONS(4918), [sym_float] = ACTIONS(4918), [sym_double] = ACTIONS(4918), [sym_real] = ACTIONS(4918), [sym_ifloat] = ACTIONS(4918), [sym_idouble] = ACTIONS(4918), [sym_ireal] = ACTIONS(4918), [sym_cfloat] = ACTIONS(4918), [sym_cdouble] = ACTIONS(4918), [sym_creal] = ACTIONS(4918), [sym_size_t] = ACTIONS(4918), [sym_ptrdiff_t] = ACTIONS(4918), [sym_string] = ACTIONS(4918), [sym_cstring] = ACTIONS(4918), [sym_dstring] = ACTIONS(4918), [sym_wstring] = ACTIONS(4918), [sym_noreturn] = ACTIONS(4918), [sym_this] = ACTIONS(4918), [sym_abstract] = ACTIONS(4918), [sym_alias] = ACTIONS(4918), [sym_align] = ACTIONS(4918), [sym_auto] = ACTIONS(4918), [sym_class] = ACTIONS(4918), [sym_const] = ACTIONS(4918), [sym_debug] = ACTIONS(4918), [sym_deprecated] = ACTIONS(4918), [sym_else] = ACTIONS(4918), [sym_enum] = ACTIONS(4918), [sym_export] = ACTIONS(4918), [sym_extern] = ACTIONS(4918), [sym_final] = ACTIONS(4918), [sym_immutable] = ACTIONS(4918), [sym_import] = ACTIONS(4918), [sym_inout] = ACTIONS(4918), [sym_interface] = ACTIONS(4918), [sym_invariant] = ACTIONS(4918), [sym_mixin] = ACTIONS(4918), [sym_nothrow] = ACTIONS(4918), [sym_override] = ACTIONS(4918), [sym_package] = ACTIONS(4918), [sym_pragma] = ACTIONS(4918), [sym_private] = ACTIONS(4918), [sym_protected] = ACTIONS(4918), [sym_public] = ACTIONS(4918), [sym_pure] = ACTIONS(4918), [sym_ref] = ACTIONS(4918), [sym_return] = ACTIONS(4918), [sym_scope] = ACTIONS(4918), [sym_shared] = ACTIONS(4918), [sym_static] = ACTIONS(4918), [sym_struct] = ACTIONS(4918), [sym_synchronized] = ACTIONS(4918), [sym_template] = ACTIONS(4918), [sym_typeof] = ACTIONS(4918), [sym_union] = ACTIONS(4918), [sym_unittest] = ACTIONS(4918), [sym_version] = ACTIONS(4918), [sym_while] = ACTIONS(4918), [sym_gshared] = ACTIONS(4918), [sym_traits] = ACTIONS(4918), [sym_vector] = ACTIONS(4918), [sym_void] = ACTIONS(4918), [sym_directive] = ACTIONS(3), }, [2557] = { [sym_identifier] = ACTIONS(4398), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4400), [anon_sym_SEMI] = ACTIONS(4400), [anon_sym_TILDE] = ACTIONS(4400), [anon_sym_AT] = ACTIONS(4400), [sym_bool] = ACTIONS(4398), [sym_byte] = ACTIONS(4398), [sym_ubyte] = ACTIONS(4398), [sym_char] = ACTIONS(4398), [sym_short] = ACTIONS(4398), [sym_ushort] = ACTIONS(4398), [sym_int] = ACTIONS(4398), [sym_uint] = ACTIONS(4398), [sym_long] = ACTIONS(4398), [sym_ulong] = ACTIONS(4398), [sym_cent] = ACTIONS(4398), [sym_ucent] = ACTIONS(4398), [sym_wchar] = ACTIONS(4398), [sym_dchar] = ACTIONS(4398), [sym_float] = ACTIONS(4398), [sym_double] = ACTIONS(4398), [sym_real] = ACTIONS(4398), [sym_ifloat] = ACTIONS(4398), [sym_idouble] = ACTIONS(4398), [sym_ireal] = ACTIONS(4398), [sym_cfloat] = ACTIONS(4398), [sym_cdouble] = ACTIONS(4398), [sym_creal] = ACTIONS(4398), [sym_size_t] = ACTIONS(4398), [sym_ptrdiff_t] = ACTIONS(4398), [sym_string] = ACTIONS(4398), [sym_cstring] = ACTIONS(4398), [sym_dstring] = ACTIONS(4398), [sym_wstring] = ACTIONS(4398), [sym_noreturn] = ACTIONS(4398), [sym_this] = ACTIONS(4398), [sym_abstract] = ACTIONS(4398), [sym_alias] = ACTIONS(4398), [sym_align] = ACTIONS(4398), [sym_auto] = ACTIONS(4398), [sym_catch] = ACTIONS(4398), [sym_class] = ACTIONS(4398), [sym_const] = ACTIONS(4398), [sym_debug] = ACTIONS(4398), [sym_deprecated] = ACTIONS(4398), [sym_else] = ACTIONS(4398), [sym_enum] = ACTIONS(4398), [sym_export] = ACTIONS(4398), [sym_extern] = ACTIONS(4398), [sym_final] = ACTIONS(4398), [sym_finally] = ACTIONS(4398), [sym_immutable] = ACTIONS(4398), [sym_import] = ACTIONS(4398), [sym_inout] = ACTIONS(4398), [sym_interface] = ACTIONS(4398), [sym_invariant] = ACTIONS(4398), [sym_mixin] = ACTIONS(4398), [sym_nothrow] = ACTIONS(4398), [sym_override] = ACTIONS(4398), [sym_package] = ACTIONS(4398), [sym_pragma] = ACTIONS(4398), [sym_private] = ACTIONS(4398), [sym_protected] = ACTIONS(4398), [sym_public] = ACTIONS(4398), [sym_pure] = ACTIONS(4398), [sym_ref] = ACTIONS(4398), [sym_return] = ACTIONS(4398), [sym_scope] = ACTIONS(4398), [sym_shared] = ACTIONS(4398), [sym_static] = ACTIONS(4398), [sym_struct] = ACTIONS(4398), [sym_synchronized] = ACTIONS(4398), [sym_template] = ACTIONS(4398), [sym_typeof] = ACTIONS(4398), [sym_union] = ACTIONS(4398), [sym_unittest] = ACTIONS(4398), [sym_version] = ACTIONS(4398), [sym_while] = ACTIONS(4398), [sym_gshared] = ACTIONS(4398), [sym_traits] = ACTIONS(4398), [sym_vector] = ACTIONS(4398), [sym_void] = ACTIONS(4398), [sym_directive] = ACTIONS(3), }, [2558] = { [sym_identifier] = ACTIONS(4406), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4408), [anon_sym_SEMI] = ACTIONS(4408), [anon_sym_TILDE] = ACTIONS(4408), [anon_sym_AT] = ACTIONS(4408), [sym_bool] = ACTIONS(4406), [sym_byte] = ACTIONS(4406), [sym_ubyte] = ACTIONS(4406), [sym_char] = ACTIONS(4406), [sym_short] = ACTIONS(4406), [sym_ushort] = ACTIONS(4406), [sym_int] = ACTIONS(4406), [sym_uint] = ACTIONS(4406), [sym_long] = ACTIONS(4406), [sym_ulong] = ACTIONS(4406), [sym_cent] = ACTIONS(4406), [sym_ucent] = ACTIONS(4406), [sym_wchar] = ACTIONS(4406), [sym_dchar] = ACTIONS(4406), [sym_float] = ACTIONS(4406), [sym_double] = ACTIONS(4406), [sym_real] = ACTIONS(4406), [sym_ifloat] = ACTIONS(4406), [sym_idouble] = ACTIONS(4406), [sym_ireal] = ACTIONS(4406), [sym_cfloat] = ACTIONS(4406), [sym_cdouble] = ACTIONS(4406), [sym_creal] = ACTIONS(4406), [sym_size_t] = ACTIONS(4406), [sym_ptrdiff_t] = ACTIONS(4406), [sym_string] = ACTIONS(4406), [sym_cstring] = ACTIONS(4406), [sym_dstring] = ACTIONS(4406), [sym_wstring] = ACTIONS(4406), [sym_noreturn] = ACTIONS(4406), [sym_this] = ACTIONS(4406), [sym_abstract] = ACTIONS(4406), [sym_alias] = ACTIONS(4406), [sym_align] = ACTIONS(4406), [sym_auto] = ACTIONS(4406), [sym_catch] = ACTIONS(4406), [sym_class] = ACTIONS(4406), [sym_const] = ACTIONS(4406), [sym_debug] = ACTIONS(4406), [sym_deprecated] = ACTIONS(4406), [sym_else] = ACTIONS(4406), [sym_enum] = ACTIONS(4406), [sym_export] = ACTIONS(4406), [sym_extern] = ACTIONS(4406), [sym_final] = ACTIONS(4406), [sym_finally] = ACTIONS(4406), [sym_immutable] = ACTIONS(4406), [sym_import] = ACTIONS(4406), [sym_inout] = ACTIONS(4406), [sym_interface] = ACTIONS(4406), [sym_invariant] = ACTIONS(4406), [sym_mixin] = ACTIONS(4406), [sym_nothrow] = ACTIONS(4406), [sym_override] = ACTIONS(4406), [sym_package] = ACTIONS(4406), [sym_pragma] = ACTIONS(4406), [sym_private] = ACTIONS(4406), [sym_protected] = ACTIONS(4406), [sym_public] = ACTIONS(4406), [sym_pure] = ACTIONS(4406), [sym_ref] = ACTIONS(4406), [sym_return] = ACTIONS(4406), [sym_scope] = ACTIONS(4406), [sym_shared] = ACTIONS(4406), [sym_static] = ACTIONS(4406), [sym_struct] = ACTIONS(4406), [sym_synchronized] = ACTIONS(4406), [sym_template] = ACTIONS(4406), [sym_typeof] = ACTIONS(4406), [sym_union] = ACTIONS(4406), [sym_unittest] = ACTIONS(4406), [sym_version] = ACTIONS(4406), [sym_while] = ACTIONS(4406), [sym_gshared] = ACTIONS(4406), [sym_traits] = ACTIONS(4406), [sym_vector] = ACTIONS(4406), [sym_void] = ACTIONS(4406), [sym_directive] = ACTIONS(3), }, [2559] = { [sym_identifier] = ACTIONS(4434), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4436), [anon_sym_SEMI] = ACTIONS(4436), [anon_sym_TILDE] = ACTIONS(4436), [anon_sym_AT] = ACTIONS(4436), [sym_bool] = ACTIONS(4434), [sym_byte] = ACTIONS(4434), [sym_ubyte] = ACTIONS(4434), [sym_char] = ACTIONS(4434), [sym_short] = ACTIONS(4434), [sym_ushort] = ACTIONS(4434), [sym_int] = ACTIONS(4434), [sym_uint] = ACTIONS(4434), [sym_long] = ACTIONS(4434), [sym_ulong] = ACTIONS(4434), [sym_cent] = ACTIONS(4434), [sym_ucent] = ACTIONS(4434), [sym_wchar] = ACTIONS(4434), [sym_dchar] = ACTIONS(4434), [sym_float] = ACTIONS(4434), [sym_double] = ACTIONS(4434), [sym_real] = ACTIONS(4434), [sym_ifloat] = ACTIONS(4434), [sym_idouble] = ACTIONS(4434), [sym_ireal] = ACTIONS(4434), [sym_cfloat] = ACTIONS(4434), [sym_cdouble] = ACTIONS(4434), [sym_creal] = ACTIONS(4434), [sym_size_t] = ACTIONS(4434), [sym_ptrdiff_t] = ACTIONS(4434), [sym_string] = ACTIONS(4434), [sym_cstring] = ACTIONS(4434), [sym_dstring] = ACTIONS(4434), [sym_wstring] = ACTIONS(4434), [sym_noreturn] = ACTIONS(4434), [sym_this] = ACTIONS(4434), [sym_abstract] = ACTIONS(4434), [sym_alias] = ACTIONS(4434), [sym_align] = ACTIONS(4434), [sym_auto] = ACTIONS(4434), [sym_catch] = ACTIONS(4434), [sym_class] = ACTIONS(4434), [sym_const] = ACTIONS(4434), [sym_debug] = ACTIONS(4434), [sym_deprecated] = ACTIONS(4434), [sym_else] = ACTIONS(4434), [sym_enum] = ACTIONS(4434), [sym_export] = ACTIONS(4434), [sym_extern] = ACTIONS(4434), [sym_final] = ACTIONS(4434), [sym_finally] = ACTIONS(4434), [sym_immutable] = ACTIONS(4434), [sym_import] = ACTIONS(4434), [sym_inout] = ACTIONS(4434), [sym_interface] = ACTIONS(4434), [sym_invariant] = ACTIONS(4434), [sym_mixin] = ACTIONS(4434), [sym_nothrow] = ACTIONS(4434), [sym_override] = ACTIONS(4434), [sym_package] = ACTIONS(4434), [sym_pragma] = ACTIONS(4434), [sym_private] = ACTIONS(4434), [sym_protected] = ACTIONS(4434), [sym_public] = ACTIONS(4434), [sym_pure] = ACTIONS(4434), [sym_ref] = ACTIONS(4434), [sym_return] = ACTIONS(4434), [sym_scope] = ACTIONS(4434), [sym_shared] = ACTIONS(4434), [sym_static] = ACTIONS(4434), [sym_struct] = ACTIONS(4434), [sym_synchronized] = ACTIONS(4434), [sym_template] = ACTIONS(4434), [sym_typeof] = ACTIONS(4434), [sym_union] = ACTIONS(4434), [sym_unittest] = ACTIONS(4434), [sym_version] = ACTIONS(4434), [sym_while] = ACTIONS(4434), [sym_gshared] = ACTIONS(4434), [sym_traits] = ACTIONS(4434), [sym_vector] = ACTIONS(4434), [sym_void] = ACTIONS(4434), [sym_directive] = ACTIONS(3), }, [2560] = { [sym_identifier] = ACTIONS(4460), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4462), [anon_sym_SEMI] = ACTIONS(4462), [anon_sym_TILDE] = ACTIONS(4462), [anon_sym_AT] = ACTIONS(4462), [sym_bool] = ACTIONS(4460), [sym_byte] = ACTIONS(4460), [sym_ubyte] = ACTIONS(4460), [sym_char] = ACTIONS(4460), [sym_short] = ACTIONS(4460), [sym_ushort] = ACTIONS(4460), [sym_int] = ACTIONS(4460), [sym_uint] = ACTIONS(4460), [sym_long] = ACTIONS(4460), [sym_ulong] = ACTIONS(4460), [sym_cent] = ACTIONS(4460), [sym_ucent] = ACTIONS(4460), [sym_wchar] = ACTIONS(4460), [sym_dchar] = ACTIONS(4460), [sym_float] = ACTIONS(4460), [sym_double] = ACTIONS(4460), [sym_real] = ACTIONS(4460), [sym_ifloat] = ACTIONS(4460), [sym_idouble] = ACTIONS(4460), [sym_ireal] = ACTIONS(4460), [sym_cfloat] = ACTIONS(4460), [sym_cdouble] = ACTIONS(4460), [sym_creal] = ACTIONS(4460), [sym_size_t] = ACTIONS(4460), [sym_ptrdiff_t] = ACTIONS(4460), [sym_string] = ACTIONS(4460), [sym_cstring] = ACTIONS(4460), [sym_dstring] = ACTIONS(4460), [sym_wstring] = ACTIONS(4460), [sym_noreturn] = ACTIONS(4460), [sym_this] = ACTIONS(4460), [sym_abstract] = ACTIONS(4460), [sym_alias] = ACTIONS(4460), [sym_align] = ACTIONS(4460), [sym_auto] = ACTIONS(4460), [sym_catch] = ACTIONS(4460), [sym_class] = ACTIONS(4460), [sym_const] = ACTIONS(4460), [sym_debug] = ACTIONS(4460), [sym_deprecated] = ACTIONS(4460), [sym_else] = ACTIONS(4460), [sym_enum] = ACTIONS(4460), [sym_export] = ACTIONS(4460), [sym_extern] = ACTIONS(4460), [sym_final] = ACTIONS(4460), [sym_finally] = ACTIONS(4460), [sym_immutable] = ACTIONS(4460), [sym_import] = ACTIONS(4460), [sym_inout] = ACTIONS(4460), [sym_interface] = ACTIONS(4460), [sym_invariant] = ACTIONS(4460), [sym_mixin] = ACTIONS(4460), [sym_nothrow] = ACTIONS(4460), [sym_override] = ACTIONS(4460), [sym_package] = ACTIONS(4460), [sym_pragma] = ACTIONS(4460), [sym_private] = ACTIONS(4460), [sym_protected] = ACTIONS(4460), [sym_public] = ACTIONS(4460), [sym_pure] = ACTIONS(4460), [sym_ref] = ACTIONS(4460), [sym_return] = ACTIONS(4460), [sym_scope] = ACTIONS(4460), [sym_shared] = ACTIONS(4460), [sym_static] = ACTIONS(4460), [sym_struct] = ACTIONS(4460), [sym_synchronized] = ACTIONS(4460), [sym_template] = ACTIONS(4460), [sym_typeof] = ACTIONS(4460), [sym_union] = ACTIONS(4460), [sym_unittest] = ACTIONS(4460), [sym_version] = ACTIONS(4460), [sym_while] = ACTIONS(4460), [sym_gshared] = ACTIONS(4460), [sym_traits] = ACTIONS(4460), [sym_vector] = ACTIONS(4460), [sym_void] = ACTIONS(4460), [sym_directive] = ACTIONS(3), }, [2561] = { [sym_identifier] = ACTIONS(4355), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4357), [anon_sym_SEMI] = ACTIONS(4357), [anon_sym_TILDE] = ACTIONS(4357), [anon_sym_AT] = ACTIONS(4357), [sym_bool] = ACTIONS(4355), [sym_byte] = ACTIONS(4355), [sym_ubyte] = ACTIONS(4355), [sym_char] = ACTIONS(4355), [sym_short] = ACTIONS(4355), [sym_ushort] = ACTIONS(4355), [sym_int] = ACTIONS(4355), [sym_uint] = ACTIONS(4355), [sym_long] = ACTIONS(4355), [sym_ulong] = ACTIONS(4355), [sym_cent] = ACTIONS(4355), [sym_ucent] = ACTIONS(4355), [sym_wchar] = ACTIONS(4355), [sym_dchar] = ACTIONS(4355), [sym_float] = ACTIONS(4355), [sym_double] = ACTIONS(4355), [sym_real] = ACTIONS(4355), [sym_ifloat] = ACTIONS(4355), [sym_idouble] = ACTIONS(4355), [sym_ireal] = ACTIONS(4355), [sym_cfloat] = ACTIONS(4355), [sym_cdouble] = ACTIONS(4355), [sym_creal] = ACTIONS(4355), [sym_size_t] = ACTIONS(4355), [sym_ptrdiff_t] = ACTIONS(4355), [sym_string] = ACTIONS(4355), [sym_cstring] = ACTIONS(4355), [sym_dstring] = ACTIONS(4355), [sym_wstring] = ACTIONS(4355), [sym_noreturn] = ACTIONS(4355), [sym_this] = ACTIONS(4355), [sym_abstract] = ACTIONS(4355), [sym_alias] = ACTIONS(4355), [sym_align] = ACTIONS(4355), [sym_auto] = ACTIONS(4355), [sym_catch] = ACTIONS(4355), [sym_class] = ACTIONS(4355), [sym_const] = ACTIONS(4355), [sym_debug] = ACTIONS(4355), [sym_deprecated] = ACTIONS(4355), [sym_else] = ACTIONS(4355), [sym_enum] = ACTIONS(4355), [sym_export] = ACTIONS(4355), [sym_extern] = ACTIONS(4355), [sym_final] = ACTIONS(4355), [sym_finally] = ACTIONS(4355), [sym_immutable] = ACTIONS(4355), [sym_import] = ACTIONS(4355), [sym_inout] = ACTIONS(4355), [sym_interface] = ACTIONS(4355), [sym_invariant] = ACTIONS(4355), [sym_mixin] = ACTIONS(4355), [sym_nothrow] = ACTIONS(4355), [sym_override] = ACTIONS(4355), [sym_package] = ACTIONS(4355), [sym_pragma] = ACTIONS(4355), [sym_private] = ACTIONS(4355), [sym_protected] = ACTIONS(4355), [sym_public] = ACTIONS(4355), [sym_pure] = ACTIONS(4355), [sym_ref] = ACTIONS(4355), [sym_return] = ACTIONS(4355), [sym_scope] = ACTIONS(4355), [sym_shared] = ACTIONS(4355), [sym_static] = ACTIONS(4355), [sym_struct] = ACTIONS(4355), [sym_synchronized] = ACTIONS(4355), [sym_template] = ACTIONS(4355), [sym_typeof] = ACTIONS(4355), [sym_union] = ACTIONS(4355), [sym_unittest] = ACTIONS(4355), [sym_version] = ACTIONS(4355), [sym_while] = ACTIONS(4355), [sym_gshared] = ACTIONS(4355), [sym_traits] = ACTIONS(4355), [sym_vector] = ACTIONS(4355), [sym_void] = ACTIONS(4355), [sym_directive] = ACTIONS(3), }, [2562] = { [sym_identifier] = ACTIONS(4335), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4337), [anon_sym_SEMI] = ACTIONS(4337), [anon_sym_TILDE] = ACTIONS(4337), [anon_sym_AT] = ACTIONS(4337), [sym_bool] = ACTIONS(4335), [sym_byte] = ACTIONS(4335), [sym_ubyte] = ACTIONS(4335), [sym_char] = ACTIONS(4335), [sym_short] = ACTIONS(4335), [sym_ushort] = ACTIONS(4335), [sym_int] = ACTIONS(4335), [sym_uint] = ACTIONS(4335), [sym_long] = ACTIONS(4335), [sym_ulong] = ACTIONS(4335), [sym_cent] = ACTIONS(4335), [sym_ucent] = ACTIONS(4335), [sym_wchar] = ACTIONS(4335), [sym_dchar] = ACTIONS(4335), [sym_float] = ACTIONS(4335), [sym_double] = ACTIONS(4335), [sym_real] = ACTIONS(4335), [sym_ifloat] = ACTIONS(4335), [sym_idouble] = ACTIONS(4335), [sym_ireal] = ACTIONS(4335), [sym_cfloat] = ACTIONS(4335), [sym_cdouble] = ACTIONS(4335), [sym_creal] = ACTIONS(4335), [sym_size_t] = ACTIONS(4335), [sym_ptrdiff_t] = ACTIONS(4335), [sym_string] = ACTIONS(4335), [sym_cstring] = ACTIONS(4335), [sym_dstring] = ACTIONS(4335), [sym_wstring] = ACTIONS(4335), [sym_noreturn] = ACTIONS(4335), [sym_this] = ACTIONS(4335), [sym_abstract] = ACTIONS(4335), [sym_alias] = ACTIONS(4335), [sym_align] = ACTIONS(4335), [sym_auto] = ACTIONS(4335), [sym_catch] = ACTIONS(4335), [sym_class] = ACTIONS(4335), [sym_const] = ACTIONS(4335), [sym_debug] = ACTIONS(4335), [sym_deprecated] = ACTIONS(4335), [sym_else] = ACTIONS(4335), [sym_enum] = ACTIONS(4335), [sym_export] = ACTIONS(4335), [sym_extern] = ACTIONS(4335), [sym_final] = ACTIONS(4335), [sym_finally] = ACTIONS(4335), [sym_immutable] = ACTIONS(4335), [sym_import] = ACTIONS(4335), [sym_inout] = ACTIONS(4335), [sym_interface] = ACTIONS(4335), [sym_invariant] = ACTIONS(4335), [sym_mixin] = ACTIONS(4335), [sym_nothrow] = ACTIONS(4335), [sym_override] = ACTIONS(4335), [sym_package] = ACTIONS(4335), [sym_pragma] = ACTIONS(4335), [sym_private] = ACTIONS(4335), [sym_protected] = ACTIONS(4335), [sym_public] = ACTIONS(4335), [sym_pure] = ACTIONS(4335), [sym_ref] = ACTIONS(4335), [sym_return] = ACTIONS(4335), [sym_scope] = ACTIONS(4335), [sym_shared] = ACTIONS(4335), [sym_static] = ACTIONS(4335), [sym_struct] = ACTIONS(4335), [sym_synchronized] = ACTIONS(4335), [sym_template] = ACTIONS(4335), [sym_typeof] = ACTIONS(4335), [sym_union] = ACTIONS(4335), [sym_unittest] = ACTIONS(4335), [sym_version] = ACTIONS(4335), [sym_while] = ACTIONS(4335), [sym_gshared] = ACTIONS(4335), [sym_traits] = ACTIONS(4335), [sym_vector] = ACTIONS(4335), [sym_void] = ACTIONS(4335), [sym_directive] = ACTIONS(3), }, [2563] = { [sym_identifier] = ACTIONS(4321), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4324), [anon_sym_SEMI] = ACTIONS(4324), [anon_sym_TILDE] = ACTIONS(4324), [anon_sym_AT] = ACTIONS(4324), [sym_bool] = ACTIONS(4321), [sym_byte] = ACTIONS(4321), [sym_ubyte] = ACTIONS(4321), [sym_char] = ACTIONS(4321), [sym_short] = ACTIONS(4321), [sym_ushort] = ACTIONS(4321), [sym_int] = ACTIONS(4321), [sym_uint] = ACTIONS(4321), [sym_long] = ACTIONS(4321), [sym_ulong] = ACTIONS(4321), [sym_cent] = ACTIONS(4321), [sym_ucent] = ACTIONS(4321), [sym_wchar] = ACTIONS(4321), [sym_dchar] = ACTIONS(4321), [sym_float] = ACTIONS(4321), [sym_double] = ACTIONS(4321), [sym_real] = ACTIONS(4321), [sym_ifloat] = ACTIONS(4321), [sym_idouble] = ACTIONS(4321), [sym_ireal] = ACTIONS(4321), [sym_cfloat] = ACTIONS(4321), [sym_cdouble] = ACTIONS(4321), [sym_creal] = ACTIONS(4321), [sym_size_t] = ACTIONS(4321), [sym_ptrdiff_t] = ACTIONS(4321), [sym_string] = ACTIONS(4321), [sym_cstring] = ACTIONS(4321), [sym_dstring] = ACTIONS(4321), [sym_wstring] = ACTIONS(4321), [sym_noreturn] = ACTIONS(4321), [sym_this] = ACTIONS(4321), [sym_abstract] = ACTIONS(4321), [sym_alias] = ACTIONS(4321), [sym_align] = ACTIONS(4321), [sym_auto] = ACTIONS(4321), [sym_catch] = ACTIONS(4321), [sym_class] = ACTIONS(4321), [sym_const] = ACTIONS(4321), [sym_debug] = ACTIONS(4321), [sym_deprecated] = ACTIONS(4321), [sym_else] = ACTIONS(4321), [sym_enum] = ACTIONS(4321), [sym_export] = ACTIONS(4321), [sym_extern] = ACTIONS(4321), [sym_final] = ACTIONS(4321), [sym_finally] = ACTIONS(4321), [sym_immutable] = ACTIONS(4321), [sym_import] = ACTIONS(4321), [sym_inout] = ACTIONS(4321), [sym_interface] = ACTIONS(4321), [sym_invariant] = ACTIONS(4321), [sym_mixin] = ACTIONS(4321), [sym_nothrow] = ACTIONS(4321), [sym_override] = ACTIONS(4321), [sym_package] = ACTIONS(4321), [sym_pragma] = ACTIONS(4321), [sym_private] = ACTIONS(4321), [sym_protected] = ACTIONS(4321), [sym_public] = ACTIONS(4321), [sym_pure] = ACTIONS(4321), [sym_ref] = ACTIONS(4321), [sym_return] = ACTIONS(4321), [sym_scope] = ACTIONS(4321), [sym_shared] = ACTIONS(4321), [sym_static] = ACTIONS(4321), [sym_struct] = ACTIONS(4321), [sym_synchronized] = ACTIONS(4321), [sym_template] = ACTIONS(4321), [sym_typeof] = ACTIONS(4321), [sym_union] = ACTIONS(4321), [sym_unittest] = ACTIONS(4321), [sym_version] = ACTIONS(4321), [sym_while] = ACTIONS(4321), [sym_gshared] = ACTIONS(4321), [sym_traits] = ACTIONS(4321), [sym_vector] = ACTIONS(4321), [sym_void] = ACTIONS(4321), [sym_directive] = ACTIONS(3), }, [2564] = { [sym_identifier] = ACTIONS(4309), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4311), [anon_sym_SEMI] = ACTIONS(4311), [anon_sym_TILDE] = ACTIONS(4311), [anon_sym_AT] = ACTIONS(4311), [sym_bool] = ACTIONS(4309), [sym_byte] = ACTIONS(4309), [sym_ubyte] = ACTIONS(4309), [sym_char] = ACTIONS(4309), [sym_short] = ACTIONS(4309), [sym_ushort] = ACTIONS(4309), [sym_int] = ACTIONS(4309), [sym_uint] = ACTIONS(4309), [sym_long] = ACTIONS(4309), [sym_ulong] = ACTIONS(4309), [sym_cent] = ACTIONS(4309), [sym_ucent] = ACTIONS(4309), [sym_wchar] = ACTIONS(4309), [sym_dchar] = ACTIONS(4309), [sym_float] = ACTIONS(4309), [sym_double] = ACTIONS(4309), [sym_real] = ACTIONS(4309), [sym_ifloat] = ACTIONS(4309), [sym_idouble] = ACTIONS(4309), [sym_ireal] = ACTIONS(4309), [sym_cfloat] = ACTIONS(4309), [sym_cdouble] = ACTIONS(4309), [sym_creal] = ACTIONS(4309), [sym_size_t] = ACTIONS(4309), [sym_ptrdiff_t] = ACTIONS(4309), [sym_string] = ACTIONS(4309), [sym_cstring] = ACTIONS(4309), [sym_dstring] = ACTIONS(4309), [sym_wstring] = ACTIONS(4309), [sym_noreturn] = ACTIONS(4309), [sym_this] = ACTIONS(4309), [sym_abstract] = ACTIONS(4309), [sym_alias] = ACTIONS(4309), [sym_align] = ACTIONS(4309), [sym_auto] = ACTIONS(4309), [sym_catch] = ACTIONS(4309), [sym_class] = ACTIONS(4309), [sym_const] = ACTIONS(4309), [sym_debug] = ACTIONS(4309), [sym_deprecated] = ACTIONS(4309), [sym_else] = ACTIONS(4309), [sym_enum] = ACTIONS(4309), [sym_export] = ACTIONS(4309), [sym_extern] = ACTIONS(4309), [sym_final] = ACTIONS(4309), [sym_finally] = ACTIONS(4309), [sym_immutable] = ACTIONS(4309), [sym_import] = ACTIONS(4309), [sym_inout] = ACTIONS(4309), [sym_interface] = ACTIONS(4309), [sym_invariant] = ACTIONS(4309), [sym_mixin] = ACTIONS(4309), [sym_nothrow] = ACTIONS(4309), [sym_override] = ACTIONS(4309), [sym_package] = ACTIONS(4309), [sym_pragma] = ACTIONS(4309), [sym_private] = ACTIONS(4309), [sym_protected] = ACTIONS(4309), [sym_public] = ACTIONS(4309), [sym_pure] = ACTIONS(4309), [sym_ref] = ACTIONS(4309), [sym_return] = ACTIONS(4309), [sym_scope] = ACTIONS(4309), [sym_shared] = ACTIONS(4309), [sym_static] = ACTIONS(4309), [sym_struct] = ACTIONS(4309), [sym_synchronized] = ACTIONS(4309), [sym_template] = ACTIONS(4309), [sym_typeof] = ACTIONS(4309), [sym_union] = ACTIONS(4309), [sym_unittest] = ACTIONS(4309), [sym_version] = ACTIONS(4309), [sym_while] = ACTIONS(4309), [sym_gshared] = ACTIONS(4309), [sym_traits] = ACTIONS(4309), [sym_vector] = ACTIONS(4309), [sym_void] = ACTIONS(4309), [sym_directive] = ACTIONS(3), }, [2565] = { [sym_identifier] = ACTIONS(4305), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4307), [anon_sym_SEMI] = ACTIONS(4307), [anon_sym_TILDE] = ACTIONS(4307), [anon_sym_AT] = ACTIONS(4307), [sym_bool] = ACTIONS(4305), [sym_byte] = ACTIONS(4305), [sym_ubyte] = ACTIONS(4305), [sym_char] = ACTIONS(4305), [sym_short] = ACTIONS(4305), [sym_ushort] = ACTIONS(4305), [sym_int] = ACTIONS(4305), [sym_uint] = ACTIONS(4305), [sym_long] = ACTIONS(4305), [sym_ulong] = ACTIONS(4305), [sym_cent] = ACTIONS(4305), [sym_ucent] = ACTIONS(4305), [sym_wchar] = ACTIONS(4305), [sym_dchar] = ACTIONS(4305), [sym_float] = ACTIONS(4305), [sym_double] = ACTIONS(4305), [sym_real] = ACTIONS(4305), [sym_ifloat] = ACTIONS(4305), [sym_idouble] = ACTIONS(4305), [sym_ireal] = ACTIONS(4305), [sym_cfloat] = ACTIONS(4305), [sym_cdouble] = ACTIONS(4305), [sym_creal] = ACTIONS(4305), [sym_size_t] = ACTIONS(4305), [sym_ptrdiff_t] = ACTIONS(4305), [sym_string] = ACTIONS(4305), [sym_cstring] = ACTIONS(4305), [sym_dstring] = ACTIONS(4305), [sym_wstring] = ACTIONS(4305), [sym_noreturn] = ACTIONS(4305), [sym_this] = ACTIONS(4305), [sym_abstract] = ACTIONS(4305), [sym_alias] = ACTIONS(4305), [sym_align] = ACTIONS(4305), [sym_auto] = ACTIONS(4305), [sym_catch] = ACTIONS(4305), [sym_class] = ACTIONS(4305), [sym_const] = ACTIONS(4305), [sym_debug] = ACTIONS(4305), [sym_deprecated] = ACTIONS(4305), [sym_else] = ACTIONS(4305), [sym_enum] = ACTIONS(4305), [sym_export] = ACTIONS(4305), [sym_extern] = ACTIONS(4305), [sym_final] = ACTIONS(4305), [sym_finally] = ACTIONS(4305), [sym_immutable] = ACTIONS(4305), [sym_import] = ACTIONS(4305), [sym_inout] = ACTIONS(4305), [sym_interface] = ACTIONS(4305), [sym_invariant] = ACTIONS(4305), [sym_mixin] = ACTIONS(4305), [sym_nothrow] = ACTIONS(4305), [sym_override] = ACTIONS(4305), [sym_package] = ACTIONS(4305), [sym_pragma] = ACTIONS(4305), [sym_private] = ACTIONS(4305), [sym_protected] = ACTIONS(4305), [sym_public] = ACTIONS(4305), [sym_pure] = ACTIONS(4305), [sym_ref] = ACTIONS(4305), [sym_return] = ACTIONS(4305), [sym_scope] = ACTIONS(4305), [sym_shared] = ACTIONS(4305), [sym_static] = ACTIONS(4305), [sym_struct] = ACTIONS(4305), [sym_synchronized] = ACTIONS(4305), [sym_template] = ACTIONS(4305), [sym_typeof] = ACTIONS(4305), [sym_union] = ACTIONS(4305), [sym_unittest] = ACTIONS(4305), [sym_version] = ACTIONS(4305), [sym_while] = ACTIONS(4305), [sym_gshared] = ACTIONS(4305), [sym_traits] = ACTIONS(4305), [sym_vector] = ACTIONS(4305), [sym_void] = ACTIONS(4305), [sym_directive] = ACTIONS(3), }, [2566] = { [ts_builtin_sym_end] = ACTIONS(4638), [sym_identifier] = ACTIONS(4636), [sym_end_file] = ACTIONS(4636), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4638), [anon_sym_SEMI] = ACTIONS(4638), [anon_sym_TILDE] = ACTIONS(4638), [anon_sym_AT] = ACTIONS(4638), [sym_bool] = ACTIONS(4636), [sym_byte] = ACTIONS(4636), [sym_ubyte] = ACTIONS(4636), [sym_char] = ACTIONS(4636), [sym_short] = ACTIONS(4636), [sym_ushort] = ACTIONS(4636), [sym_int] = ACTIONS(4636), [sym_uint] = ACTIONS(4636), [sym_long] = ACTIONS(4636), [sym_ulong] = ACTIONS(4636), [sym_cent] = ACTIONS(4636), [sym_ucent] = ACTIONS(4636), [sym_wchar] = ACTIONS(4636), [sym_dchar] = ACTIONS(4636), [sym_float] = ACTIONS(4636), [sym_double] = ACTIONS(4636), [sym_real] = ACTIONS(4636), [sym_ifloat] = ACTIONS(4636), [sym_idouble] = ACTIONS(4636), [sym_ireal] = ACTIONS(4636), [sym_cfloat] = ACTIONS(4636), [sym_cdouble] = ACTIONS(4636), [sym_creal] = ACTIONS(4636), [sym_size_t] = ACTIONS(4636), [sym_ptrdiff_t] = ACTIONS(4636), [sym_string] = ACTIONS(4636), [sym_cstring] = ACTIONS(4636), [sym_dstring] = ACTIONS(4636), [sym_wstring] = ACTIONS(4636), [sym_noreturn] = ACTIONS(4636), [sym_this] = ACTIONS(4636), [sym_abstract] = ACTIONS(4636), [sym_alias] = ACTIONS(4636), [sym_align] = ACTIONS(4636), [sym_auto] = ACTIONS(4636), [sym_class] = ACTIONS(4636), [sym_const] = ACTIONS(4636), [sym_debug] = ACTIONS(4636), [sym_deprecated] = ACTIONS(4636), [sym_else] = ACTIONS(4636), [sym_enum] = ACTIONS(4636), [sym_export] = ACTIONS(4636), [sym_extern] = ACTIONS(4636), [sym_final] = ACTIONS(4636), [sym_immutable] = ACTIONS(4636), [sym_import] = ACTIONS(4636), [sym_inout] = ACTIONS(4636), [sym_interface] = ACTIONS(4636), [sym_invariant] = ACTIONS(4636), [sym_mixin] = ACTIONS(4636), [sym_nothrow] = ACTIONS(4636), [sym_override] = ACTIONS(4636), [sym_package] = ACTIONS(4636), [sym_pragma] = ACTIONS(4636), [sym_private] = ACTIONS(4636), [sym_protected] = ACTIONS(4636), [sym_public] = ACTIONS(4636), [sym_pure] = ACTIONS(4636), [sym_ref] = ACTIONS(4636), [sym_return] = ACTIONS(4636), [sym_scope] = ACTIONS(4636), [sym_shared] = ACTIONS(4636), [sym_static] = ACTIONS(4636), [sym_struct] = ACTIONS(4636), [sym_synchronized] = ACTIONS(4636), [sym_template] = ACTIONS(4636), [sym_typeof] = ACTIONS(4636), [sym_union] = ACTIONS(4636), [sym_unittest] = ACTIONS(4636), [sym_version] = ACTIONS(4636), [sym_while] = ACTIONS(4636), [sym_gshared] = ACTIONS(4636), [sym_traits] = ACTIONS(4636), [sym_vector] = ACTIONS(4636), [sym_void] = ACTIONS(4636), [sym_directive] = ACTIONS(3), }, [2567] = { [sym_identifier] = ACTIONS(4856), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4858), [anon_sym_SEMI] = ACTIONS(4858), [anon_sym_TILDE] = ACTIONS(4858), [anon_sym_AT] = ACTIONS(4858), [sym_bool] = ACTIONS(4856), [sym_byte] = ACTIONS(4856), [sym_ubyte] = ACTIONS(4856), [sym_char] = ACTIONS(4856), [sym_short] = ACTIONS(4856), [sym_ushort] = ACTIONS(4856), [sym_int] = ACTIONS(4856), [sym_uint] = ACTIONS(4856), [sym_long] = ACTIONS(4856), [sym_ulong] = ACTIONS(4856), [sym_cent] = ACTIONS(4856), [sym_ucent] = ACTIONS(4856), [sym_wchar] = ACTIONS(4856), [sym_dchar] = ACTIONS(4856), [sym_float] = ACTIONS(4856), [sym_double] = ACTIONS(4856), [sym_real] = ACTIONS(4856), [sym_ifloat] = ACTIONS(4856), [sym_idouble] = ACTIONS(4856), [sym_ireal] = ACTIONS(4856), [sym_cfloat] = ACTIONS(4856), [sym_cdouble] = ACTIONS(4856), [sym_creal] = ACTIONS(4856), [sym_size_t] = ACTIONS(4856), [sym_ptrdiff_t] = ACTIONS(4856), [sym_string] = ACTIONS(4856), [sym_cstring] = ACTIONS(4856), [sym_dstring] = ACTIONS(4856), [sym_wstring] = ACTIONS(4856), [sym_noreturn] = ACTIONS(4856), [sym_this] = ACTIONS(4856), [sym_abstract] = ACTIONS(4856), [sym_alias] = ACTIONS(4856), [sym_align] = ACTIONS(4856), [sym_auto] = ACTIONS(4856), [sym_catch] = ACTIONS(4856), [sym_class] = ACTIONS(4856), [sym_const] = ACTIONS(4856), [sym_debug] = ACTIONS(4856), [sym_deprecated] = ACTIONS(4856), [sym_else] = ACTIONS(4856), [sym_enum] = ACTIONS(4856), [sym_export] = ACTIONS(4856), [sym_extern] = ACTIONS(4856), [sym_final] = ACTIONS(4856), [sym_finally] = ACTIONS(4856), [sym_immutable] = ACTIONS(4856), [sym_import] = ACTIONS(4856), [sym_inout] = ACTIONS(4856), [sym_interface] = ACTIONS(4856), [sym_invariant] = ACTIONS(4856), [sym_mixin] = ACTIONS(4856), [sym_nothrow] = ACTIONS(4856), [sym_override] = ACTIONS(4856), [sym_package] = ACTIONS(4856), [sym_pragma] = ACTIONS(4856), [sym_private] = ACTIONS(4856), [sym_protected] = ACTIONS(4856), [sym_public] = ACTIONS(4856), [sym_pure] = ACTIONS(4856), [sym_ref] = ACTIONS(4856), [sym_return] = ACTIONS(4856), [sym_scope] = ACTIONS(4856), [sym_shared] = ACTIONS(4856), [sym_static] = ACTIONS(4856), [sym_struct] = ACTIONS(4856), [sym_synchronized] = ACTIONS(4856), [sym_template] = ACTIONS(4856), [sym_typeof] = ACTIONS(4856), [sym_union] = ACTIONS(4856), [sym_unittest] = ACTIONS(4856), [sym_version] = ACTIONS(4856), [sym_while] = ACTIONS(4856), [sym_gshared] = ACTIONS(4856), [sym_traits] = ACTIONS(4856), [sym_vector] = ACTIONS(4856), [sym_void] = ACTIONS(4856), [sym_directive] = ACTIONS(3), }, [2568] = { [sym_identifier] = ACTIONS(4876), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4878), [anon_sym_SEMI] = ACTIONS(4878), [anon_sym_TILDE] = ACTIONS(4878), [anon_sym_AT] = ACTIONS(4878), [sym_bool] = ACTIONS(4876), [sym_byte] = ACTIONS(4876), [sym_ubyte] = ACTIONS(4876), [sym_char] = ACTIONS(4876), [sym_short] = ACTIONS(4876), [sym_ushort] = ACTIONS(4876), [sym_int] = ACTIONS(4876), [sym_uint] = ACTIONS(4876), [sym_long] = ACTIONS(4876), [sym_ulong] = ACTIONS(4876), [sym_cent] = ACTIONS(4876), [sym_ucent] = ACTIONS(4876), [sym_wchar] = ACTIONS(4876), [sym_dchar] = ACTIONS(4876), [sym_float] = ACTIONS(4876), [sym_double] = ACTIONS(4876), [sym_real] = ACTIONS(4876), [sym_ifloat] = ACTIONS(4876), [sym_idouble] = ACTIONS(4876), [sym_ireal] = ACTIONS(4876), [sym_cfloat] = ACTIONS(4876), [sym_cdouble] = ACTIONS(4876), [sym_creal] = ACTIONS(4876), [sym_size_t] = ACTIONS(4876), [sym_ptrdiff_t] = ACTIONS(4876), [sym_string] = ACTIONS(4876), [sym_cstring] = ACTIONS(4876), [sym_dstring] = ACTIONS(4876), [sym_wstring] = ACTIONS(4876), [sym_noreturn] = ACTIONS(4876), [sym_this] = ACTIONS(4876), [sym_abstract] = ACTIONS(4876), [sym_alias] = ACTIONS(4876), [sym_align] = ACTIONS(4876), [sym_auto] = ACTIONS(4876), [sym_catch] = ACTIONS(4876), [sym_class] = ACTIONS(4876), [sym_const] = ACTIONS(4876), [sym_debug] = ACTIONS(4876), [sym_deprecated] = ACTIONS(4876), [sym_else] = ACTIONS(4876), [sym_enum] = ACTIONS(4876), [sym_export] = ACTIONS(4876), [sym_extern] = ACTIONS(4876), [sym_final] = ACTIONS(4876), [sym_finally] = ACTIONS(4876), [sym_immutable] = ACTIONS(4876), [sym_import] = ACTIONS(4876), [sym_inout] = ACTIONS(4876), [sym_interface] = ACTIONS(4876), [sym_invariant] = ACTIONS(4876), [sym_mixin] = ACTIONS(4876), [sym_nothrow] = ACTIONS(4876), [sym_override] = ACTIONS(4876), [sym_package] = ACTIONS(4876), [sym_pragma] = ACTIONS(4876), [sym_private] = ACTIONS(4876), [sym_protected] = ACTIONS(4876), [sym_public] = ACTIONS(4876), [sym_pure] = ACTIONS(4876), [sym_ref] = ACTIONS(4876), [sym_return] = ACTIONS(4876), [sym_scope] = ACTIONS(4876), [sym_shared] = ACTIONS(4876), [sym_static] = ACTIONS(4876), [sym_struct] = ACTIONS(4876), [sym_synchronized] = ACTIONS(4876), [sym_template] = ACTIONS(4876), [sym_typeof] = ACTIONS(4876), [sym_union] = ACTIONS(4876), [sym_unittest] = ACTIONS(4876), [sym_version] = ACTIONS(4876), [sym_while] = ACTIONS(4876), [sym_gshared] = ACTIONS(4876), [sym_traits] = ACTIONS(4876), [sym_vector] = ACTIONS(4876), [sym_void] = ACTIONS(4876), [sym_directive] = ACTIONS(3), }, [2569] = { [sym_identifier] = ACTIONS(4932), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4934), [anon_sym_SEMI] = ACTIONS(4934), [anon_sym_TILDE] = ACTIONS(4934), [anon_sym_AT] = ACTIONS(4934), [sym_bool] = ACTIONS(4932), [sym_byte] = ACTIONS(4932), [sym_ubyte] = ACTIONS(4932), [sym_char] = ACTIONS(4932), [sym_short] = ACTIONS(4932), [sym_ushort] = ACTIONS(4932), [sym_int] = ACTIONS(4932), [sym_uint] = ACTIONS(4932), [sym_long] = ACTIONS(4932), [sym_ulong] = ACTIONS(4932), [sym_cent] = ACTIONS(4932), [sym_ucent] = ACTIONS(4932), [sym_wchar] = ACTIONS(4932), [sym_dchar] = ACTIONS(4932), [sym_float] = ACTIONS(4932), [sym_double] = ACTIONS(4932), [sym_real] = ACTIONS(4932), [sym_ifloat] = ACTIONS(4932), [sym_idouble] = ACTIONS(4932), [sym_ireal] = ACTIONS(4932), [sym_cfloat] = ACTIONS(4932), [sym_cdouble] = ACTIONS(4932), [sym_creal] = ACTIONS(4932), [sym_size_t] = ACTIONS(4932), [sym_ptrdiff_t] = ACTIONS(4932), [sym_string] = ACTIONS(4932), [sym_cstring] = ACTIONS(4932), [sym_dstring] = ACTIONS(4932), [sym_wstring] = ACTIONS(4932), [sym_noreturn] = ACTIONS(4932), [sym_this] = ACTIONS(4932), [sym_abstract] = ACTIONS(4932), [sym_alias] = ACTIONS(4932), [sym_align] = ACTIONS(4932), [sym_auto] = ACTIONS(4932), [sym_catch] = ACTIONS(4932), [sym_class] = ACTIONS(4932), [sym_const] = ACTIONS(4932), [sym_debug] = ACTIONS(4932), [sym_deprecated] = ACTIONS(4932), [sym_else] = ACTIONS(4932), [sym_enum] = ACTIONS(4932), [sym_export] = ACTIONS(4932), [sym_extern] = ACTIONS(4932), [sym_final] = ACTIONS(4932), [sym_finally] = ACTIONS(4932), [sym_immutable] = ACTIONS(4932), [sym_import] = ACTIONS(4932), [sym_inout] = ACTIONS(4932), [sym_interface] = ACTIONS(4932), [sym_invariant] = ACTIONS(4932), [sym_mixin] = ACTIONS(4932), [sym_nothrow] = ACTIONS(4932), [sym_override] = ACTIONS(4932), [sym_package] = ACTIONS(4932), [sym_pragma] = ACTIONS(4932), [sym_private] = ACTIONS(4932), [sym_protected] = ACTIONS(4932), [sym_public] = ACTIONS(4932), [sym_pure] = ACTIONS(4932), [sym_ref] = ACTIONS(4932), [sym_return] = ACTIONS(4932), [sym_scope] = ACTIONS(4932), [sym_shared] = ACTIONS(4932), [sym_static] = ACTIONS(4932), [sym_struct] = ACTIONS(4932), [sym_synchronized] = ACTIONS(4932), [sym_template] = ACTIONS(4932), [sym_typeof] = ACTIONS(4932), [sym_union] = ACTIONS(4932), [sym_unittest] = ACTIONS(4932), [sym_version] = ACTIONS(4932), [sym_while] = ACTIONS(4932), [sym_gshared] = ACTIONS(4932), [sym_traits] = ACTIONS(4932), [sym_vector] = ACTIONS(4932), [sym_void] = ACTIONS(4932), [sym_directive] = ACTIONS(3), }, [2570] = { [ts_builtin_sym_end] = ACTIONS(4688), [sym_identifier] = ACTIONS(4686), [sym_end_file] = ACTIONS(4686), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4688), [anon_sym_SEMI] = ACTIONS(4688), [anon_sym_TILDE] = ACTIONS(4688), [anon_sym_AT] = ACTIONS(4688), [sym_bool] = ACTIONS(4686), [sym_byte] = ACTIONS(4686), [sym_ubyte] = ACTIONS(4686), [sym_char] = ACTIONS(4686), [sym_short] = ACTIONS(4686), [sym_ushort] = ACTIONS(4686), [sym_int] = ACTIONS(4686), [sym_uint] = ACTIONS(4686), [sym_long] = ACTIONS(4686), [sym_ulong] = ACTIONS(4686), [sym_cent] = ACTIONS(4686), [sym_ucent] = ACTIONS(4686), [sym_wchar] = ACTIONS(4686), [sym_dchar] = ACTIONS(4686), [sym_float] = ACTIONS(4686), [sym_double] = ACTIONS(4686), [sym_real] = ACTIONS(4686), [sym_ifloat] = ACTIONS(4686), [sym_idouble] = ACTIONS(4686), [sym_ireal] = ACTIONS(4686), [sym_cfloat] = ACTIONS(4686), [sym_cdouble] = ACTIONS(4686), [sym_creal] = ACTIONS(4686), [sym_size_t] = ACTIONS(4686), [sym_ptrdiff_t] = ACTIONS(4686), [sym_string] = ACTIONS(4686), [sym_cstring] = ACTIONS(4686), [sym_dstring] = ACTIONS(4686), [sym_wstring] = ACTIONS(4686), [sym_noreturn] = ACTIONS(4686), [sym_this] = ACTIONS(4686), [sym_abstract] = ACTIONS(4686), [sym_alias] = ACTIONS(4686), [sym_align] = ACTIONS(4686), [sym_auto] = ACTIONS(4686), [sym_class] = ACTIONS(4686), [sym_const] = ACTIONS(4686), [sym_debug] = ACTIONS(4686), [sym_deprecated] = ACTIONS(4686), [sym_else] = ACTIONS(4686), [sym_enum] = ACTIONS(4686), [sym_export] = ACTIONS(4686), [sym_extern] = ACTIONS(4686), [sym_final] = ACTIONS(4686), [sym_immutable] = ACTIONS(4686), [sym_import] = ACTIONS(4686), [sym_inout] = ACTIONS(4686), [sym_interface] = ACTIONS(4686), [sym_invariant] = ACTIONS(4686), [sym_mixin] = ACTIONS(4686), [sym_nothrow] = ACTIONS(4686), [sym_override] = ACTIONS(4686), [sym_package] = ACTIONS(4686), [sym_pragma] = ACTIONS(4686), [sym_private] = ACTIONS(4686), [sym_protected] = ACTIONS(4686), [sym_public] = ACTIONS(4686), [sym_pure] = ACTIONS(4686), [sym_ref] = ACTIONS(4686), [sym_return] = ACTIONS(4686), [sym_scope] = ACTIONS(4686), [sym_shared] = ACTIONS(4686), [sym_static] = ACTIONS(4686), [sym_struct] = ACTIONS(4686), [sym_synchronized] = ACTIONS(4686), [sym_template] = ACTIONS(4686), [sym_typeof] = ACTIONS(4686), [sym_union] = ACTIONS(4686), [sym_unittest] = ACTIONS(4686), [sym_version] = ACTIONS(4686), [sym_while] = ACTIONS(4686), [sym_gshared] = ACTIONS(4686), [sym_traits] = ACTIONS(4686), [sym_vector] = ACTIONS(4686), [sym_void] = ACTIONS(4686), [sym_directive] = ACTIONS(3), }, [2571] = { [sym_identifier] = ACTIONS(4468), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4470), [anon_sym_SEMI] = ACTIONS(4470), [anon_sym_TILDE] = ACTIONS(4470), [anon_sym_AT] = ACTIONS(4470), [sym_bool] = ACTIONS(4468), [sym_byte] = ACTIONS(4468), [sym_ubyte] = ACTIONS(4468), [sym_char] = ACTIONS(4468), [sym_short] = ACTIONS(4468), [sym_ushort] = ACTIONS(4468), [sym_int] = ACTIONS(4468), [sym_uint] = ACTIONS(4468), [sym_long] = ACTIONS(4468), [sym_ulong] = ACTIONS(4468), [sym_cent] = ACTIONS(4468), [sym_ucent] = ACTIONS(4468), [sym_wchar] = ACTIONS(4468), [sym_dchar] = ACTIONS(4468), [sym_float] = ACTIONS(4468), [sym_double] = ACTIONS(4468), [sym_real] = ACTIONS(4468), [sym_ifloat] = ACTIONS(4468), [sym_idouble] = ACTIONS(4468), [sym_ireal] = ACTIONS(4468), [sym_cfloat] = ACTIONS(4468), [sym_cdouble] = ACTIONS(4468), [sym_creal] = ACTIONS(4468), [sym_size_t] = ACTIONS(4468), [sym_ptrdiff_t] = ACTIONS(4468), [sym_string] = ACTIONS(4468), [sym_cstring] = ACTIONS(4468), [sym_dstring] = ACTIONS(4468), [sym_wstring] = ACTIONS(4468), [sym_noreturn] = ACTIONS(4468), [sym_this] = ACTIONS(4468), [sym_abstract] = ACTIONS(4468), [sym_alias] = ACTIONS(4468), [sym_align] = ACTIONS(4468), [sym_auto] = ACTIONS(4468), [sym_catch] = ACTIONS(4468), [sym_class] = ACTIONS(4468), [sym_const] = ACTIONS(4468), [sym_debug] = ACTIONS(4468), [sym_deprecated] = ACTIONS(4468), [sym_else] = ACTIONS(4468), [sym_enum] = ACTIONS(4468), [sym_export] = ACTIONS(4468), [sym_extern] = ACTIONS(4468), [sym_final] = ACTIONS(4468), [sym_finally] = ACTIONS(4468), [sym_immutable] = ACTIONS(4468), [sym_import] = ACTIONS(4468), [sym_inout] = ACTIONS(4468), [sym_interface] = ACTIONS(4468), [sym_invariant] = ACTIONS(4468), [sym_mixin] = ACTIONS(4468), [sym_nothrow] = ACTIONS(4468), [sym_override] = ACTIONS(4468), [sym_package] = ACTIONS(4468), [sym_pragma] = ACTIONS(4468), [sym_private] = ACTIONS(4468), [sym_protected] = ACTIONS(4468), [sym_public] = ACTIONS(4468), [sym_pure] = ACTIONS(4468), [sym_ref] = ACTIONS(4468), [sym_return] = ACTIONS(4468), [sym_scope] = ACTIONS(4468), [sym_shared] = ACTIONS(4468), [sym_static] = ACTIONS(4468), [sym_struct] = ACTIONS(4468), [sym_synchronized] = ACTIONS(4468), [sym_template] = ACTIONS(4468), [sym_typeof] = ACTIONS(4468), [sym_union] = ACTIONS(4468), [sym_unittest] = ACTIONS(4468), [sym_version] = ACTIONS(4468), [sym_while] = ACTIONS(4468), [sym_gshared] = ACTIONS(4468), [sym_traits] = ACTIONS(4468), [sym_vector] = ACTIONS(4468), [sym_void] = ACTIONS(4468), [sym_directive] = ACTIONS(3), }, [2572] = { [sym_identifier] = ACTIONS(4936), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4938), [anon_sym_SEMI] = ACTIONS(4938), [anon_sym_TILDE] = ACTIONS(4938), [anon_sym_AT] = ACTIONS(4938), [sym_bool] = ACTIONS(4936), [sym_byte] = ACTIONS(4936), [sym_ubyte] = ACTIONS(4936), [sym_char] = ACTIONS(4936), [sym_short] = ACTIONS(4936), [sym_ushort] = ACTIONS(4936), [sym_int] = ACTIONS(4936), [sym_uint] = ACTIONS(4936), [sym_long] = ACTIONS(4936), [sym_ulong] = ACTIONS(4936), [sym_cent] = ACTIONS(4936), [sym_ucent] = ACTIONS(4936), [sym_wchar] = ACTIONS(4936), [sym_dchar] = ACTIONS(4936), [sym_float] = ACTIONS(4936), [sym_double] = ACTIONS(4936), [sym_real] = ACTIONS(4936), [sym_ifloat] = ACTIONS(4936), [sym_idouble] = ACTIONS(4936), [sym_ireal] = ACTIONS(4936), [sym_cfloat] = ACTIONS(4936), [sym_cdouble] = ACTIONS(4936), [sym_creal] = ACTIONS(4936), [sym_size_t] = ACTIONS(4936), [sym_ptrdiff_t] = ACTIONS(4936), [sym_string] = ACTIONS(4936), [sym_cstring] = ACTIONS(4936), [sym_dstring] = ACTIONS(4936), [sym_wstring] = ACTIONS(4936), [sym_noreturn] = ACTIONS(4936), [sym_this] = ACTIONS(4936), [sym_abstract] = ACTIONS(4936), [sym_alias] = ACTIONS(4936), [sym_align] = ACTIONS(4936), [sym_auto] = ACTIONS(4936), [sym_catch] = ACTIONS(4936), [sym_class] = ACTIONS(4936), [sym_const] = ACTIONS(4936), [sym_debug] = ACTIONS(4936), [sym_deprecated] = ACTIONS(4936), [sym_else] = ACTIONS(4936), [sym_enum] = ACTIONS(4936), [sym_export] = ACTIONS(4936), [sym_extern] = ACTIONS(4936), [sym_final] = ACTIONS(4936), [sym_finally] = ACTIONS(4936), [sym_immutable] = ACTIONS(4936), [sym_import] = ACTIONS(4936), [sym_inout] = ACTIONS(4936), [sym_interface] = ACTIONS(4936), [sym_invariant] = ACTIONS(4936), [sym_mixin] = ACTIONS(4936), [sym_nothrow] = ACTIONS(4936), [sym_override] = ACTIONS(4936), [sym_package] = ACTIONS(4936), [sym_pragma] = ACTIONS(4936), [sym_private] = ACTIONS(4936), [sym_protected] = ACTIONS(4936), [sym_public] = ACTIONS(4936), [sym_pure] = ACTIONS(4936), [sym_ref] = ACTIONS(4936), [sym_return] = ACTIONS(4936), [sym_scope] = ACTIONS(4936), [sym_shared] = ACTIONS(4936), [sym_static] = ACTIONS(4936), [sym_struct] = ACTIONS(4936), [sym_synchronized] = ACTIONS(4936), [sym_template] = ACTIONS(4936), [sym_typeof] = ACTIONS(4936), [sym_union] = ACTIONS(4936), [sym_unittest] = ACTIONS(4936), [sym_version] = ACTIONS(4936), [sym_while] = ACTIONS(4936), [sym_gshared] = ACTIONS(4936), [sym_traits] = ACTIONS(4936), [sym_vector] = ACTIONS(4936), [sym_void] = ACTIONS(4936), [sym_directive] = ACTIONS(3), }, [2573] = { [ts_builtin_sym_end] = ACTIONS(4349), [sym_identifier] = ACTIONS(4347), [sym_end_file] = ACTIONS(4347), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4349), [anon_sym_SEMI] = ACTIONS(4349), [anon_sym_TILDE] = ACTIONS(4349), [anon_sym_AT] = ACTIONS(4349), [sym_bool] = ACTIONS(4347), [sym_byte] = ACTIONS(4347), [sym_ubyte] = ACTIONS(4347), [sym_char] = ACTIONS(4347), [sym_short] = ACTIONS(4347), [sym_ushort] = ACTIONS(4347), [sym_int] = ACTIONS(4347), [sym_uint] = ACTIONS(4347), [sym_long] = ACTIONS(4347), [sym_ulong] = ACTIONS(4347), [sym_cent] = ACTIONS(4347), [sym_ucent] = ACTIONS(4347), [sym_wchar] = ACTIONS(4347), [sym_dchar] = ACTIONS(4347), [sym_float] = ACTIONS(4347), [sym_double] = ACTIONS(4347), [sym_real] = ACTIONS(4347), [sym_ifloat] = ACTIONS(4347), [sym_idouble] = ACTIONS(4347), [sym_ireal] = ACTIONS(4347), [sym_cfloat] = ACTIONS(4347), [sym_cdouble] = ACTIONS(4347), [sym_creal] = ACTIONS(4347), [sym_size_t] = ACTIONS(4347), [sym_ptrdiff_t] = ACTIONS(4347), [sym_string] = ACTIONS(4347), [sym_cstring] = ACTIONS(4347), [sym_dstring] = ACTIONS(4347), [sym_wstring] = ACTIONS(4347), [sym_noreturn] = ACTIONS(4347), [sym_this] = ACTIONS(4347), [sym_abstract] = ACTIONS(4347), [sym_alias] = ACTIONS(4347), [sym_align] = ACTIONS(4347), [sym_auto] = ACTIONS(4347), [sym_class] = ACTIONS(4347), [sym_const] = ACTIONS(4347), [sym_debug] = ACTIONS(4347), [sym_deprecated] = ACTIONS(4347), [sym_else] = ACTIONS(4347), [sym_enum] = ACTIONS(4347), [sym_export] = ACTIONS(4347), [sym_extern] = ACTIONS(4347), [sym_final] = ACTIONS(4347), [sym_immutable] = ACTIONS(4347), [sym_import] = ACTIONS(4347), [sym_inout] = ACTIONS(4347), [sym_interface] = ACTIONS(4347), [sym_invariant] = ACTIONS(4347), [sym_mixin] = ACTIONS(4347), [sym_nothrow] = ACTIONS(4347), [sym_override] = ACTIONS(4347), [sym_package] = ACTIONS(4347), [sym_pragma] = ACTIONS(4347), [sym_private] = ACTIONS(4347), [sym_protected] = ACTIONS(4347), [sym_public] = ACTIONS(4347), [sym_pure] = ACTIONS(4347), [sym_ref] = ACTIONS(4347), [sym_return] = ACTIONS(4347), [sym_scope] = ACTIONS(4347), [sym_shared] = ACTIONS(4347), [sym_static] = ACTIONS(4347), [sym_struct] = ACTIONS(4347), [sym_synchronized] = ACTIONS(4347), [sym_template] = ACTIONS(4347), [sym_typeof] = ACTIONS(4347), [sym_union] = ACTIONS(4347), [sym_unittest] = ACTIONS(4347), [sym_version] = ACTIONS(4347), [sym_while] = ACTIONS(4347), [sym_gshared] = ACTIONS(4347), [sym_traits] = ACTIONS(4347), [sym_vector] = ACTIONS(4347), [sym_void] = ACTIONS(4347), [sym_directive] = ACTIONS(3), }, [2574] = { [sym_identifier] = ACTIONS(5040), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5042), [anon_sym_SEMI] = ACTIONS(5042), [anon_sym_TILDE] = ACTIONS(5042), [anon_sym_AT] = ACTIONS(5042), [sym_bool] = ACTIONS(5040), [sym_byte] = ACTIONS(5040), [sym_ubyte] = ACTIONS(5040), [sym_char] = ACTIONS(5040), [sym_short] = ACTIONS(5040), [sym_ushort] = ACTIONS(5040), [sym_int] = ACTIONS(5040), [sym_uint] = ACTIONS(5040), [sym_long] = ACTIONS(5040), [sym_ulong] = ACTIONS(5040), [sym_cent] = ACTIONS(5040), [sym_ucent] = ACTIONS(5040), [sym_wchar] = ACTIONS(5040), [sym_dchar] = ACTIONS(5040), [sym_float] = ACTIONS(5040), [sym_double] = ACTIONS(5040), [sym_real] = ACTIONS(5040), [sym_ifloat] = ACTIONS(5040), [sym_idouble] = ACTIONS(5040), [sym_ireal] = ACTIONS(5040), [sym_cfloat] = ACTIONS(5040), [sym_cdouble] = ACTIONS(5040), [sym_creal] = ACTIONS(5040), [sym_size_t] = ACTIONS(5040), [sym_ptrdiff_t] = ACTIONS(5040), [sym_string] = ACTIONS(5040), [sym_cstring] = ACTIONS(5040), [sym_dstring] = ACTIONS(5040), [sym_wstring] = ACTIONS(5040), [sym_noreturn] = ACTIONS(5040), [sym_this] = ACTIONS(5040), [sym_abstract] = ACTIONS(5040), [sym_alias] = ACTIONS(5040), [sym_align] = ACTIONS(5040), [sym_auto] = ACTIONS(5040), [sym_catch] = ACTIONS(5040), [sym_class] = ACTIONS(5040), [sym_const] = ACTIONS(5040), [sym_debug] = ACTIONS(5040), [sym_deprecated] = ACTIONS(5040), [sym_else] = ACTIONS(5040), [sym_enum] = ACTIONS(5040), [sym_export] = ACTIONS(5040), [sym_extern] = ACTIONS(5040), [sym_final] = ACTIONS(5040), [sym_finally] = ACTIONS(5040), [sym_immutable] = ACTIONS(5040), [sym_import] = ACTIONS(5040), [sym_inout] = ACTIONS(5040), [sym_interface] = ACTIONS(5040), [sym_invariant] = ACTIONS(5040), [sym_mixin] = ACTIONS(5040), [sym_nothrow] = ACTIONS(5040), [sym_override] = ACTIONS(5040), [sym_package] = ACTIONS(5040), [sym_pragma] = ACTIONS(5040), [sym_private] = ACTIONS(5040), [sym_protected] = ACTIONS(5040), [sym_public] = ACTIONS(5040), [sym_pure] = ACTIONS(5040), [sym_ref] = ACTIONS(5040), [sym_return] = ACTIONS(5040), [sym_scope] = ACTIONS(5040), [sym_shared] = ACTIONS(5040), [sym_static] = ACTIONS(5040), [sym_struct] = ACTIONS(5040), [sym_synchronized] = ACTIONS(5040), [sym_template] = ACTIONS(5040), [sym_typeof] = ACTIONS(5040), [sym_union] = ACTIONS(5040), [sym_unittest] = ACTIONS(5040), [sym_version] = ACTIONS(5040), [sym_while] = ACTIONS(5040), [sym_gshared] = ACTIONS(5040), [sym_traits] = ACTIONS(5040), [sym_vector] = ACTIONS(5040), [sym_void] = ACTIONS(5040), [sym_directive] = ACTIONS(3), }, [2575] = { [sym_identifier] = ACTIONS(4476), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4478), [anon_sym_SEMI] = ACTIONS(4478), [anon_sym_TILDE] = ACTIONS(4478), [anon_sym_AT] = ACTIONS(4478), [sym_bool] = ACTIONS(4476), [sym_byte] = ACTIONS(4476), [sym_ubyte] = ACTIONS(4476), [sym_char] = ACTIONS(4476), [sym_short] = ACTIONS(4476), [sym_ushort] = ACTIONS(4476), [sym_int] = ACTIONS(4476), [sym_uint] = ACTIONS(4476), [sym_long] = ACTIONS(4476), [sym_ulong] = ACTIONS(4476), [sym_cent] = ACTIONS(4476), [sym_ucent] = ACTIONS(4476), [sym_wchar] = ACTIONS(4476), [sym_dchar] = ACTIONS(4476), [sym_float] = ACTIONS(4476), [sym_double] = ACTIONS(4476), [sym_real] = ACTIONS(4476), [sym_ifloat] = ACTIONS(4476), [sym_idouble] = ACTIONS(4476), [sym_ireal] = ACTIONS(4476), [sym_cfloat] = ACTIONS(4476), [sym_cdouble] = ACTIONS(4476), [sym_creal] = ACTIONS(4476), [sym_size_t] = ACTIONS(4476), [sym_ptrdiff_t] = ACTIONS(4476), [sym_string] = ACTIONS(4476), [sym_cstring] = ACTIONS(4476), [sym_dstring] = ACTIONS(4476), [sym_wstring] = ACTIONS(4476), [sym_noreturn] = ACTIONS(4476), [sym_this] = ACTIONS(4476), [sym_abstract] = ACTIONS(4476), [sym_alias] = ACTIONS(4476), [sym_align] = ACTIONS(4476), [sym_auto] = ACTIONS(4476), [sym_catch] = ACTIONS(4476), [sym_class] = ACTIONS(4476), [sym_const] = ACTIONS(4476), [sym_debug] = ACTIONS(4476), [sym_deprecated] = ACTIONS(4476), [sym_else] = ACTIONS(4476), [sym_enum] = ACTIONS(4476), [sym_export] = ACTIONS(4476), [sym_extern] = ACTIONS(4476), [sym_final] = ACTIONS(4476), [sym_finally] = ACTIONS(4476), [sym_immutable] = ACTIONS(4476), [sym_import] = ACTIONS(4476), [sym_inout] = ACTIONS(4476), [sym_interface] = ACTIONS(4476), [sym_invariant] = ACTIONS(4476), [sym_mixin] = ACTIONS(4476), [sym_nothrow] = ACTIONS(4476), [sym_override] = ACTIONS(4476), [sym_package] = ACTIONS(4476), [sym_pragma] = ACTIONS(4476), [sym_private] = ACTIONS(4476), [sym_protected] = ACTIONS(4476), [sym_public] = ACTIONS(4476), [sym_pure] = ACTIONS(4476), [sym_ref] = ACTIONS(4476), [sym_return] = ACTIONS(4476), [sym_scope] = ACTIONS(4476), [sym_shared] = ACTIONS(4476), [sym_static] = ACTIONS(4476), [sym_struct] = ACTIONS(4476), [sym_synchronized] = ACTIONS(4476), [sym_template] = ACTIONS(4476), [sym_typeof] = ACTIONS(4476), [sym_union] = ACTIONS(4476), [sym_unittest] = ACTIONS(4476), [sym_version] = ACTIONS(4476), [sym_while] = ACTIONS(4476), [sym_gshared] = ACTIONS(4476), [sym_traits] = ACTIONS(4476), [sym_vector] = ACTIONS(4476), [sym_void] = ACTIONS(4476), [sym_directive] = ACTIONS(3), }, [2576] = { [ts_builtin_sym_end] = ACTIONS(4800), [sym_identifier] = ACTIONS(4798), [sym_end_file] = ACTIONS(4798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4800), [anon_sym_SEMI] = ACTIONS(4800), [anon_sym_TILDE] = ACTIONS(4800), [anon_sym_AT] = ACTIONS(4800), [sym_bool] = ACTIONS(4798), [sym_byte] = ACTIONS(4798), [sym_ubyte] = ACTIONS(4798), [sym_char] = ACTIONS(4798), [sym_short] = ACTIONS(4798), [sym_ushort] = ACTIONS(4798), [sym_int] = ACTIONS(4798), [sym_uint] = ACTIONS(4798), [sym_long] = ACTIONS(4798), [sym_ulong] = ACTIONS(4798), [sym_cent] = ACTIONS(4798), [sym_ucent] = ACTIONS(4798), [sym_wchar] = ACTIONS(4798), [sym_dchar] = ACTIONS(4798), [sym_float] = ACTIONS(4798), [sym_double] = ACTIONS(4798), [sym_real] = ACTIONS(4798), [sym_ifloat] = ACTIONS(4798), [sym_idouble] = ACTIONS(4798), [sym_ireal] = ACTIONS(4798), [sym_cfloat] = ACTIONS(4798), [sym_cdouble] = ACTIONS(4798), [sym_creal] = ACTIONS(4798), [sym_size_t] = ACTIONS(4798), [sym_ptrdiff_t] = ACTIONS(4798), [sym_string] = ACTIONS(4798), [sym_cstring] = ACTIONS(4798), [sym_dstring] = ACTIONS(4798), [sym_wstring] = ACTIONS(4798), [sym_noreturn] = ACTIONS(4798), [sym_this] = ACTIONS(4798), [sym_abstract] = ACTIONS(4798), [sym_alias] = ACTIONS(4798), [sym_align] = ACTIONS(4798), [sym_auto] = ACTIONS(4798), [sym_class] = ACTIONS(4798), [sym_const] = ACTIONS(4798), [sym_debug] = ACTIONS(4798), [sym_deprecated] = ACTIONS(4798), [sym_else] = ACTIONS(4798), [sym_enum] = ACTIONS(4798), [sym_export] = ACTIONS(4798), [sym_extern] = ACTIONS(4798), [sym_final] = ACTIONS(4798), [sym_immutable] = ACTIONS(4798), [sym_import] = ACTIONS(4798), [sym_inout] = ACTIONS(4798), [sym_interface] = ACTIONS(4798), [sym_invariant] = ACTIONS(4798), [sym_mixin] = ACTIONS(4798), [sym_nothrow] = ACTIONS(4798), [sym_override] = ACTIONS(4798), [sym_package] = ACTIONS(4798), [sym_pragma] = ACTIONS(4798), [sym_private] = ACTIONS(4798), [sym_protected] = ACTIONS(4798), [sym_public] = ACTIONS(4798), [sym_pure] = ACTIONS(4798), [sym_ref] = ACTIONS(4798), [sym_return] = ACTIONS(4798), [sym_scope] = ACTIONS(4798), [sym_shared] = ACTIONS(4798), [sym_static] = ACTIONS(4798), [sym_struct] = ACTIONS(4798), [sym_synchronized] = ACTIONS(4798), [sym_template] = ACTIONS(4798), [sym_typeof] = ACTIONS(4798), [sym_union] = ACTIONS(4798), [sym_unittest] = ACTIONS(4798), [sym_version] = ACTIONS(4798), [sym_while] = ACTIONS(4798), [sym_gshared] = ACTIONS(4798), [sym_traits] = ACTIONS(4798), [sym_vector] = ACTIONS(4798), [sym_void] = ACTIONS(4798), [sym_directive] = ACTIONS(3), }, [2577] = { [sym_identifier] = ACTIONS(5044), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5046), [anon_sym_SEMI] = ACTIONS(5046), [anon_sym_TILDE] = ACTIONS(5046), [anon_sym_AT] = ACTIONS(5046), [sym_bool] = ACTIONS(5044), [sym_byte] = ACTIONS(5044), [sym_ubyte] = ACTIONS(5044), [sym_char] = ACTIONS(5044), [sym_short] = ACTIONS(5044), [sym_ushort] = ACTIONS(5044), [sym_int] = ACTIONS(5044), [sym_uint] = ACTIONS(5044), [sym_long] = ACTIONS(5044), [sym_ulong] = ACTIONS(5044), [sym_cent] = ACTIONS(5044), [sym_ucent] = ACTIONS(5044), [sym_wchar] = ACTIONS(5044), [sym_dchar] = ACTIONS(5044), [sym_float] = ACTIONS(5044), [sym_double] = ACTIONS(5044), [sym_real] = ACTIONS(5044), [sym_ifloat] = ACTIONS(5044), [sym_idouble] = ACTIONS(5044), [sym_ireal] = ACTIONS(5044), [sym_cfloat] = ACTIONS(5044), [sym_cdouble] = ACTIONS(5044), [sym_creal] = ACTIONS(5044), [sym_size_t] = ACTIONS(5044), [sym_ptrdiff_t] = ACTIONS(5044), [sym_string] = ACTIONS(5044), [sym_cstring] = ACTIONS(5044), [sym_dstring] = ACTIONS(5044), [sym_wstring] = ACTIONS(5044), [sym_noreturn] = ACTIONS(5044), [sym_this] = ACTIONS(5044), [sym_abstract] = ACTIONS(5044), [sym_alias] = ACTIONS(5044), [sym_align] = ACTIONS(5044), [sym_auto] = ACTIONS(5044), [sym_catch] = ACTIONS(5044), [sym_class] = ACTIONS(5044), [sym_const] = ACTIONS(5044), [sym_debug] = ACTIONS(5044), [sym_deprecated] = ACTIONS(5044), [sym_else] = ACTIONS(5044), [sym_enum] = ACTIONS(5044), [sym_export] = ACTIONS(5044), [sym_extern] = ACTIONS(5044), [sym_final] = ACTIONS(5044), [sym_finally] = ACTIONS(5044), [sym_immutable] = ACTIONS(5044), [sym_import] = ACTIONS(5044), [sym_inout] = ACTIONS(5044), [sym_interface] = ACTIONS(5044), [sym_invariant] = ACTIONS(5044), [sym_mixin] = ACTIONS(5044), [sym_nothrow] = ACTIONS(5044), [sym_override] = ACTIONS(5044), [sym_package] = ACTIONS(5044), [sym_pragma] = ACTIONS(5044), [sym_private] = ACTIONS(5044), [sym_protected] = ACTIONS(5044), [sym_public] = ACTIONS(5044), [sym_pure] = ACTIONS(5044), [sym_ref] = ACTIONS(5044), [sym_return] = ACTIONS(5044), [sym_scope] = ACTIONS(5044), [sym_shared] = ACTIONS(5044), [sym_static] = ACTIONS(5044), [sym_struct] = ACTIONS(5044), [sym_synchronized] = ACTIONS(5044), [sym_template] = ACTIONS(5044), [sym_typeof] = ACTIONS(5044), [sym_union] = ACTIONS(5044), [sym_unittest] = ACTIONS(5044), [sym_version] = ACTIONS(5044), [sym_while] = ACTIONS(5044), [sym_gshared] = ACTIONS(5044), [sym_traits] = ACTIONS(5044), [sym_vector] = ACTIONS(5044), [sym_void] = ACTIONS(5044), [sym_directive] = ACTIONS(3), }, [2578] = { [sym_identifier] = ACTIONS(5056), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5058), [anon_sym_SEMI] = ACTIONS(5058), [anon_sym_TILDE] = ACTIONS(5058), [anon_sym_AT] = ACTIONS(5058), [sym_bool] = ACTIONS(5056), [sym_byte] = ACTIONS(5056), [sym_ubyte] = ACTIONS(5056), [sym_char] = ACTIONS(5056), [sym_short] = ACTIONS(5056), [sym_ushort] = ACTIONS(5056), [sym_int] = ACTIONS(5056), [sym_uint] = ACTIONS(5056), [sym_long] = ACTIONS(5056), [sym_ulong] = ACTIONS(5056), [sym_cent] = ACTIONS(5056), [sym_ucent] = ACTIONS(5056), [sym_wchar] = ACTIONS(5056), [sym_dchar] = ACTIONS(5056), [sym_float] = ACTIONS(5056), [sym_double] = ACTIONS(5056), [sym_real] = ACTIONS(5056), [sym_ifloat] = ACTIONS(5056), [sym_idouble] = ACTIONS(5056), [sym_ireal] = ACTIONS(5056), [sym_cfloat] = ACTIONS(5056), [sym_cdouble] = ACTIONS(5056), [sym_creal] = ACTIONS(5056), [sym_size_t] = ACTIONS(5056), [sym_ptrdiff_t] = ACTIONS(5056), [sym_string] = ACTIONS(5056), [sym_cstring] = ACTIONS(5056), [sym_dstring] = ACTIONS(5056), [sym_wstring] = ACTIONS(5056), [sym_noreturn] = ACTIONS(5056), [sym_this] = ACTIONS(5056), [sym_abstract] = ACTIONS(5056), [sym_alias] = ACTIONS(5056), [sym_align] = ACTIONS(5056), [sym_auto] = ACTIONS(5056), [sym_catch] = ACTIONS(5056), [sym_class] = ACTIONS(5056), [sym_const] = ACTIONS(5056), [sym_debug] = ACTIONS(5056), [sym_deprecated] = ACTIONS(5056), [sym_else] = ACTIONS(5056), [sym_enum] = ACTIONS(5056), [sym_export] = ACTIONS(5056), [sym_extern] = ACTIONS(5056), [sym_final] = ACTIONS(5056), [sym_finally] = ACTIONS(5056), [sym_immutable] = ACTIONS(5056), [sym_import] = ACTIONS(5056), [sym_inout] = ACTIONS(5056), [sym_interface] = ACTIONS(5056), [sym_invariant] = ACTIONS(5056), [sym_mixin] = ACTIONS(5056), [sym_nothrow] = ACTIONS(5056), [sym_override] = ACTIONS(5056), [sym_package] = ACTIONS(5056), [sym_pragma] = ACTIONS(5056), [sym_private] = ACTIONS(5056), [sym_protected] = ACTIONS(5056), [sym_public] = ACTIONS(5056), [sym_pure] = ACTIONS(5056), [sym_ref] = ACTIONS(5056), [sym_return] = ACTIONS(5056), [sym_scope] = ACTIONS(5056), [sym_shared] = ACTIONS(5056), [sym_static] = ACTIONS(5056), [sym_struct] = ACTIONS(5056), [sym_synchronized] = ACTIONS(5056), [sym_template] = ACTIONS(5056), [sym_typeof] = ACTIONS(5056), [sym_union] = ACTIONS(5056), [sym_unittest] = ACTIONS(5056), [sym_version] = ACTIONS(5056), [sym_while] = ACTIONS(5056), [sym_gshared] = ACTIONS(5056), [sym_traits] = ACTIONS(5056), [sym_vector] = ACTIONS(5056), [sym_void] = ACTIONS(5056), [sym_directive] = ACTIONS(3), }, [2579] = { [sym_identifier] = ACTIONS(4578), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4580), [anon_sym_SEMI] = ACTIONS(4580), [anon_sym_TILDE] = ACTIONS(4580), [anon_sym_AT] = ACTIONS(4580), [sym_bool] = ACTIONS(4578), [sym_byte] = ACTIONS(4578), [sym_ubyte] = ACTIONS(4578), [sym_char] = ACTIONS(4578), [sym_short] = ACTIONS(4578), [sym_ushort] = ACTIONS(4578), [sym_int] = ACTIONS(4578), [sym_uint] = ACTIONS(4578), [sym_long] = ACTIONS(4578), [sym_ulong] = ACTIONS(4578), [sym_cent] = ACTIONS(4578), [sym_ucent] = ACTIONS(4578), [sym_wchar] = ACTIONS(4578), [sym_dchar] = ACTIONS(4578), [sym_float] = ACTIONS(4578), [sym_double] = ACTIONS(4578), [sym_real] = ACTIONS(4578), [sym_ifloat] = ACTIONS(4578), [sym_idouble] = ACTIONS(4578), [sym_ireal] = ACTIONS(4578), [sym_cfloat] = ACTIONS(4578), [sym_cdouble] = ACTIONS(4578), [sym_creal] = ACTIONS(4578), [sym_size_t] = ACTIONS(4578), [sym_ptrdiff_t] = ACTIONS(4578), [sym_string] = ACTIONS(4578), [sym_cstring] = ACTIONS(4578), [sym_dstring] = ACTIONS(4578), [sym_wstring] = ACTIONS(4578), [sym_noreturn] = ACTIONS(4578), [sym_this] = ACTIONS(4578), [sym_abstract] = ACTIONS(4578), [sym_alias] = ACTIONS(4578), [sym_align] = ACTIONS(4578), [sym_auto] = ACTIONS(4578), [sym_catch] = ACTIONS(4578), [sym_class] = ACTIONS(4578), [sym_const] = ACTIONS(4578), [sym_debug] = ACTIONS(4578), [sym_deprecated] = ACTIONS(4578), [sym_else] = ACTIONS(4578), [sym_enum] = ACTIONS(4578), [sym_export] = ACTIONS(4578), [sym_extern] = ACTIONS(4578), [sym_final] = ACTIONS(4578), [sym_finally] = ACTIONS(4578), [sym_immutable] = ACTIONS(4578), [sym_import] = ACTIONS(4578), [sym_inout] = ACTIONS(4578), [sym_interface] = ACTIONS(4578), [sym_invariant] = ACTIONS(4578), [sym_mixin] = ACTIONS(4578), [sym_nothrow] = ACTIONS(4578), [sym_override] = ACTIONS(4578), [sym_package] = ACTIONS(4578), [sym_pragma] = ACTIONS(4578), [sym_private] = ACTIONS(4578), [sym_protected] = ACTIONS(4578), [sym_public] = ACTIONS(4578), [sym_pure] = ACTIONS(4578), [sym_ref] = ACTIONS(4578), [sym_return] = ACTIONS(4578), [sym_scope] = ACTIONS(4578), [sym_shared] = ACTIONS(4578), [sym_static] = ACTIONS(4578), [sym_struct] = ACTIONS(4578), [sym_synchronized] = ACTIONS(4578), [sym_template] = ACTIONS(4578), [sym_typeof] = ACTIONS(4578), [sym_union] = ACTIONS(4578), [sym_unittest] = ACTIONS(4578), [sym_version] = ACTIONS(4578), [sym_while] = ACTIONS(4578), [sym_gshared] = ACTIONS(4578), [sym_traits] = ACTIONS(4578), [sym_vector] = ACTIONS(4578), [sym_void] = ACTIONS(4578), [sym_directive] = ACTIONS(3), }, [2580] = { [sym_identifier] = ACTIONS(4860), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4862), [anon_sym_SEMI] = ACTIONS(4862), [anon_sym_TILDE] = ACTIONS(4862), [anon_sym_AT] = ACTIONS(4862), [sym_bool] = ACTIONS(4860), [sym_byte] = ACTIONS(4860), [sym_ubyte] = ACTIONS(4860), [sym_char] = ACTIONS(4860), [sym_short] = ACTIONS(4860), [sym_ushort] = ACTIONS(4860), [sym_int] = ACTIONS(4860), [sym_uint] = ACTIONS(4860), [sym_long] = ACTIONS(4860), [sym_ulong] = ACTIONS(4860), [sym_cent] = ACTIONS(4860), [sym_ucent] = ACTIONS(4860), [sym_wchar] = ACTIONS(4860), [sym_dchar] = ACTIONS(4860), [sym_float] = ACTIONS(4860), [sym_double] = ACTIONS(4860), [sym_real] = ACTIONS(4860), [sym_ifloat] = ACTIONS(4860), [sym_idouble] = ACTIONS(4860), [sym_ireal] = ACTIONS(4860), [sym_cfloat] = ACTIONS(4860), [sym_cdouble] = ACTIONS(4860), [sym_creal] = ACTIONS(4860), [sym_size_t] = ACTIONS(4860), [sym_ptrdiff_t] = ACTIONS(4860), [sym_string] = ACTIONS(4860), [sym_cstring] = ACTIONS(4860), [sym_dstring] = ACTIONS(4860), [sym_wstring] = ACTIONS(4860), [sym_noreturn] = ACTIONS(4860), [sym_this] = ACTIONS(4860), [sym_abstract] = ACTIONS(4860), [sym_alias] = ACTIONS(4860), [sym_align] = ACTIONS(4860), [sym_auto] = ACTIONS(4860), [sym_catch] = ACTIONS(4860), [sym_class] = ACTIONS(4860), [sym_const] = ACTIONS(4860), [sym_debug] = ACTIONS(4860), [sym_deprecated] = ACTIONS(4860), [sym_else] = ACTIONS(4860), [sym_enum] = ACTIONS(4860), [sym_export] = ACTIONS(4860), [sym_extern] = ACTIONS(4860), [sym_final] = ACTIONS(4860), [sym_finally] = ACTIONS(4860), [sym_immutable] = ACTIONS(4860), [sym_import] = ACTIONS(4860), [sym_inout] = ACTIONS(4860), [sym_interface] = ACTIONS(4860), [sym_invariant] = ACTIONS(4860), [sym_mixin] = ACTIONS(4860), [sym_nothrow] = ACTIONS(4860), [sym_override] = ACTIONS(4860), [sym_package] = ACTIONS(4860), [sym_pragma] = ACTIONS(4860), [sym_private] = ACTIONS(4860), [sym_protected] = ACTIONS(4860), [sym_public] = ACTIONS(4860), [sym_pure] = ACTIONS(4860), [sym_ref] = ACTIONS(4860), [sym_return] = ACTIONS(4860), [sym_scope] = ACTIONS(4860), [sym_shared] = ACTIONS(4860), [sym_static] = ACTIONS(4860), [sym_struct] = ACTIONS(4860), [sym_synchronized] = ACTIONS(4860), [sym_template] = ACTIONS(4860), [sym_typeof] = ACTIONS(4860), [sym_union] = ACTIONS(4860), [sym_unittest] = ACTIONS(4860), [sym_version] = ACTIONS(4860), [sym_while] = ACTIONS(4860), [sym_gshared] = ACTIONS(4860), [sym_traits] = ACTIONS(4860), [sym_vector] = ACTIONS(4860), [sym_void] = ACTIONS(4860), [sym_directive] = ACTIONS(3), }, [2581] = { [sym_identifier] = ACTIONS(4852), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4854), [anon_sym_SEMI] = ACTIONS(4854), [anon_sym_TILDE] = ACTIONS(4854), [anon_sym_AT] = ACTIONS(4854), [sym_bool] = ACTIONS(4852), [sym_byte] = ACTIONS(4852), [sym_ubyte] = ACTIONS(4852), [sym_char] = ACTIONS(4852), [sym_short] = ACTIONS(4852), [sym_ushort] = ACTIONS(4852), [sym_int] = ACTIONS(4852), [sym_uint] = ACTIONS(4852), [sym_long] = ACTIONS(4852), [sym_ulong] = ACTIONS(4852), [sym_cent] = ACTIONS(4852), [sym_ucent] = ACTIONS(4852), [sym_wchar] = ACTIONS(4852), [sym_dchar] = ACTIONS(4852), [sym_float] = ACTIONS(4852), [sym_double] = ACTIONS(4852), [sym_real] = ACTIONS(4852), [sym_ifloat] = ACTIONS(4852), [sym_idouble] = ACTIONS(4852), [sym_ireal] = ACTIONS(4852), [sym_cfloat] = ACTIONS(4852), [sym_cdouble] = ACTIONS(4852), [sym_creal] = ACTIONS(4852), [sym_size_t] = ACTIONS(4852), [sym_ptrdiff_t] = ACTIONS(4852), [sym_string] = ACTIONS(4852), [sym_cstring] = ACTIONS(4852), [sym_dstring] = ACTIONS(4852), [sym_wstring] = ACTIONS(4852), [sym_noreturn] = ACTIONS(4852), [sym_this] = ACTIONS(4852), [sym_abstract] = ACTIONS(4852), [sym_alias] = ACTIONS(4852), [sym_align] = ACTIONS(4852), [sym_auto] = ACTIONS(4852), [sym_catch] = ACTIONS(4852), [sym_class] = ACTIONS(4852), [sym_const] = ACTIONS(4852), [sym_debug] = ACTIONS(4852), [sym_deprecated] = ACTIONS(4852), [sym_else] = ACTIONS(4852), [sym_enum] = ACTIONS(4852), [sym_export] = ACTIONS(4852), [sym_extern] = ACTIONS(4852), [sym_final] = ACTIONS(4852), [sym_finally] = ACTIONS(4852), [sym_immutable] = ACTIONS(4852), [sym_import] = ACTIONS(4852), [sym_inout] = ACTIONS(4852), [sym_interface] = ACTIONS(4852), [sym_invariant] = ACTIONS(4852), [sym_mixin] = ACTIONS(4852), [sym_nothrow] = ACTIONS(4852), [sym_override] = ACTIONS(4852), [sym_package] = ACTIONS(4852), [sym_pragma] = ACTIONS(4852), [sym_private] = ACTIONS(4852), [sym_protected] = ACTIONS(4852), [sym_public] = ACTIONS(4852), [sym_pure] = ACTIONS(4852), [sym_ref] = ACTIONS(4852), [sym_return] = ACTIONS(4852), [sym_scope] = ACTIONS(4852), [sym_shared] = ACTIONS(4852), [sym_static] = ACTIONS(4852), [sym_struct] = ACTIONS(4852), [sym_synchronized] = ACTIONS(4852), [sym_template] = ACTIONS(4852), [sym_typeof] = ACTIONS(4852), [sym_union] = ACTIONS(4852), [sym_unittest] = ACTIONS(4852), [sym_version] = ACTIONS(4852), [sym_while] = ACTIONS(4852), [sym_gshared] = ACTIONS(4852), [sym_traits] = ACTIONS(4852), [sym_vector] = ACTIONS(4852), [sym_void] = ACTIONS(4852), [sym_directive] = ACTIONS(3), }, [2582] = { [sym_identifier] = ACTIONS(4798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4800), [anon_sym_SEMI] = ACTIONS(4800), [anon_sym_TILDE] = ACTIONS(4800), [anon_sym_AT] = ACTIONS(4800), [sym_bool] = ACTIONS(4798), [sym_byte] = ACTIONS(4798), [sym_ubyte] = ACTIONS(4798), [sym_char] = ACTIONS(4798), [sym_short] = ACTIONS(4798), [sym_ushort] = ACTIONS(4798), [sym_int] = ACTIONS(4798), [sym_uint] = ACTIONS(4798), [sym_long] = ACTIONS(4798), [sym_ulong] = ACTIONS(4798), [sym_cent] = ACTIONS(4798), [sym_ucent] = ACTIONS(4798), [sym_wchar] = ACTIONS(4798), [sym_dchar] = ACTIONS(4798), [sym_float] = ACTIONS(4798), [sym_double] = ACTIONS(4798), [sym_real] = ACTIONS(4798), [sym_ifloat] = ACTIONS(4798), [sym_idouble] = ACTIONS(4798), [sym_ireal] = ACTIONS(4798), [sym_cfloat] = ACTIONS(4798), [sym_cdouble] = ACTIONS(4798), [sym_creal] = ACTIONS(4798), [sym_size_t] = ACTIONS(4798), [sym_ptrdiff_t] = ACTIONS(4798), [sym_string] = ACTIONS(4798), [sym_cstring] = ACTIONS(4798), [sym_dstring] = ACTIONS(4798), [sym_wstring] = ACTIONS(4798), [sym_noreturn] = ACTIONS(4798), [sym_this] = ACTIONS(4798), [sym_abstract] = ACTIONS(4798), [sym_alias] = ACTIONS(4798), [sym_align] = ACTIONS(4798), [sym_auto] = ACTIONS(4798), [sym_catch] = ACTIONS(4798), [sym_class] = ACTIONS(4798), [sym_const] = ACTIONS(4798), [sym_debug] = ACTIONS(4798), [sym_deprecated] = ACTIONS(4798), [sym_else] = ACTIONS(4798), [sym_enum] = ACTIONS(4798), [sym_export] = ACTIONS(4798), [sym_extern] = ACTIONS(4798), [sym_final] = ACTIONS(4798), [sym_finally] = ACTIONS(4798), [sym_immutable] = ACTIONS(4798), [sym_import] = ACTIONS(4798), [sym_inout] = ACTIONS(4798), [sym_interface] = ACTIONS(4798), [sym_invariant] = ACTIONS(4798), [sym_mixin] = ACTIONS(4798), [sym_nothrow] = ACTIONS(4798), [sym_override] = ACTIONS(4798), [sym_package] = ACTIONS(4798), [sym_pragma] = ACTIONS(4798), [sym_private] = ACTIONS(4798), [sym_protected] = ACTIONS(4798), [sym_public] = ACTIONS(4798), [sym_pure] = ACTIONS(4798), [sym_ref] = ACTIONS(4798), [sym_return] = ACTIONS(4798), [sym_scope] = ACTIONS(4798), [sym_shared] = ACTIONS(4798), [sym_static] = ACTIONS(4798), [sym_struct] = ACTIONS(4798), [sym_synchronized] = ACTIONS(4798), [sym_template] = ACTIONS(4798), [sym_typeof] = ACTIONS(4798), [sym_union] = ACTIONS(4798), [sym_unittest] = ACTIONS(4798), [sym_version] = ACTIONS(4798), [sym_while] = ACTIONS(4798), [sym_gshared] = ACTIONS(4798), [sym_traits] = ACTIONS(4798), [sym_vector] = ACTIONS(4798), [sym_void] = ACTIONS(4798), [sym_directive] = ACTIONS(3), }, [2583] = { [sym_identifier] = ACTIONS(4778), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4780), [anon_sym_SEMI] = ACTIONS(4780), [anon_sym_TILDE] = ACTIONS(4780), [anon_sym_AT] = ACTIONS(4780), [sym_bool] = ACTIONS(4778), [sym_byte] = ACTIONS(4778), [sym_ubyte] = ACTIONS(4778), [sym_char] = ACTIONS(4778), [sym_short] = ACTIONS(4778), [sym_ushort] = ACTIONS(4778), [sym_int] = ACTIONS(4778), [sym_uint] = ACTIONS(4778), [sym_long] = ACTIONS(4778), [sym_ulong] = ACTIONS(4778), [sym_cent] = ACTIONS(4778), [sym_ucent] = ACTIONS(4778), [sym_wchar] = ACTIONS(4778), [sym_dchar] = ACTIONS(4778), [sym_float] = ACTIONS(4778), [sym_double] = ACTIONS(4778), [sym_real] = ACTIONS(4778), [sym_ifloat] = ACTIONS(4778), [sym_idouble] = ACTIONS(4778), [sym_ireal] = ACTIONS(4778), [sym_cfloat] = ACTIONS(4778), [sym_cdouble] = ACTIONS(4778), [sym_creal] = ACTIONS(4778), [sym_size_t] = ACTIONS(4778), [sym_ptrdiff_t] = ACTIONS(4778), [sym_string] = ACTIONS(4778), [sym_cstring] = ACTIONS(4778), [sym_dstring] = ACTIONS(4778), [sym_wstring] = ACTIONS(4778), [sym_noreturn] = ACTIONS(4778), [sym_this] = ACTIONS(4778), [sym_abstract] = ACTIONS(4778), [sym_alias] = ACTIONS(4778), [sym_align] = ACTIONS(4778), [sym_auto] = ACTIONS(4778), [sym_catch] = ACTIONS(4778), [sym_class] = ACTIONS(4778), [sym_const] = ACTIONS(4778), [sym_debug] = ACTIONS(4778), [sym_deprecated] = ACTIONS(4778), [sym_else] = ACTIONS(4778), [sym_enum] = ACTIONS(4778), [sym_export] = ACTIONS(4778), [sym_extern] = ACTIONS(4778), [sym_final] = ACTIONS(4778), [sym_finally] = ACTIONS(4778), [sym_immutable] = ACTIONS(4778), [sym_import] = ACTIONS(4778), [sym_inout] = ACTIONS(4778), [sym_interface] = ACTIONS(4778), [sym_invariant] = ACTIONS(4778), [sym_mixin] = ACTIONS(4778), [sym_nothrow] = ACTIONS(4778), [sym_override] = ACTIONS(4778), [sym_package] = ACTIONS(4778), [sym_pragma] = ACTIONS(4778), [sym_private] = ACTIONS(4778), [sym_protected] = ACTIONS(4778), [sym_public] = ACTIONS(4778), [sym_pure] = ACTIONS(4778), [sym_ref] = ACTIONS(4778), [sym_return] = ACTIONS(4778), [sym_scope] = ACTIONS(4778), [sym_shared] = ACTIONS(4778), [sym_static] = ACTIONS(4778), [sym_struct] = ACTIONS(4778), [sym_synchronized] = ACTIONS(4778), [sym_template] = ACTIONS(4778), [sym_typeof] = ACTIONS(4778), [sym_union] = ACTIONS(4778), [sym_unittest] = ACTIONS(4778), [sym_version] = ACTIONS(4778), [sym_while] = ACTIONS(4778), [sym_gshared] = ACTIONS(4778), [sym_traits] = ACTIONS(4778), [sym_vector] = ACTIONS(4778), [sym_void] = ACTIONS(4778), [sym_directive] = ACTIONS(3), }, [2584] = { [sym_identifier] = ACTIONS(4770), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4772), [anon_sym_SEMI] = ACTIONS(4772), [anon_sym_TILDE] = ACTIONS(4772), [anon_sym_AT] = ACTIONS(4772), [sym_bool] = ACTIONS(4770), [sym_byte] = ACTIONS(4770), [sym_ubyte] = ACTIONS(4770), [sym_char] = ACTIONS(4770), [sym_short] = ACTIONS(4770), [sym_ushort] = ACTIONS(4770), [sym_int] = ACTIONS(4770), [sym_uint] = ACTIONS(4770), [sym_long] = ACTIONS(4770), [sym_ulong] = ACTIONS(4770), [sym_cent] = ACTIONS(4770), [sym_ucent] = ACTIONS(4770), [sym_wchar] = ACTIONS(4770), [sym_dchar] = ACTIONS(4770), [sym_float] = ACTIONS(4770), [sym_double] = ACTIONS(4770), [sym_real] = ACTIONS(4770), [sym_ifloat] = ACTIONS(4770), [sym_idouble] = ACTIONS(4770), [sym_ireal] = ACTIONS(4770), [sym_cfloat] = ACTIONS(4770), [sym_cdouble] = ACTIONS(4770), [sym_creal] = ACTIONS(4770), [sym_size_t] = ACTIONS(4770), [sym_ptrdiff_t] = ACTIONS(4770), [sym_string] = ACTIONS(4770), [sym_cstring] = ACTIONS(4770), [sym_dstring] = ACTIONS(4770), [sym_wstring] = ACTIONS(4770), [sym_noreturn] = ACTIONS(4770), [sym_this] = ACTIONS(4770), [sym_abstract] = ACTIONS(4770), [sym_alias] = ACTIONS(4770), [sym_align] = ACTIONS(4770), [sym_auto] = ACTIONS(4770), [sym_catch] = ACTIONS(4770), [sym_class] = ACTIONS(4770), [sym_const] = ACTIONS(4770), [sym_debug] = ACTIONS(4770), [sym_deprecated] = ACTIONS(4770), [sym_else] = ACTIONS(4770), [sym_enum] = ACTIONS(4770), [sym_export] = ACTIONS(4770), [sym_extern] = ACTIONS(4770), [sym_final] = ACTIONS(4770), [sym_finally] = ACTIONS(4770), [sym_immutable] = ACTIONS(4770), [sym_import] = ACTIONS(4770), [sym_inout] = ACTIONS(4770), [sym_interface] = ACTIONS(4770), [sym_invariant] = ACTIONS(4770), [sym_mixin] = ACTIONS(4770), [sym_nothrow] = ACTIONS(4770), [sym_override] = ACTIONS(4770), [sym_package] = ACTIONS(4770), [sym_pragma] = ACTIONS(4770), [sym_private] = ACTIONS(4770), [sym_protected] = ACTIONS(4770), [sym_public] = ACTIONS(4770), [sym_pure] = ACTIONS(4770), [sym_ref] = ACTIONS(4770), [sym_return] = ACTIONS(4770), [sym_scope] = ACTIONS(4770), [sym_shared] = ACTIONS(4770), [sym_static] = ACTIONS(4770), [sym_struct] = ACTIONS(4770), [sym_synchronized] = ACTIONS(4770), [sym_template] = ACTIONS(4770), [sym_typeof] = ACTIONS(4770), [sym_union] = ACTIONS(4770), [sym_unittest] = ACTIONS(4770), [sym_version] = ACTIONS(4770), [sym_while] = ACTIONS(4770), [sym_gshared] = ACTIONS(4770), [sym_traits] = ACTIONS(4770), [sym_vector] = ACTIONS(4770), [sym_void] = ACTIONS(4770), [sym_directive] = ACTIONS(3), }, [2585] = { [sym_identifier] = ACTIONS(4766), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4768), [anon_sym_SEMI] = ACTIONS(4768), [anon_sym_TILDE] = ACTIONS(4768), [anon_sym_AT] = ACTIONS(4768), [sym_bool] = ACTIONS(4766), [sym_byte] = ACTIONS(4766), [sym_ubyte] = ACTIONS(4766), [sym_char] = ACTIONS(4766), [sym_short] = ACTIONS(4766), [sym_ushort] = ACTIONS(4766), [sym_int] = ACTIONS(4766), [sym_uint] = ACTIONS(4766), [sym_long] = ACTIONS(4766), [sym_ulong] = ACTIONS(4766), [sym_cent] = ACTIONS(4766), [sym_ucent] = ACTIONS(4766), [sym_wchar] = ACTIONS(4766), [sym_dchar] = ACTIONS(4766), [sym_float] = ACTIONS(4766), [sym_double] = ACTIONS(4766), [sym_real] = ACTIONS(4766), [sym_ifloat] = ACTIONS(4766), [sym_idouble] = ACTIONS(4766), [sym_ireal] = ACTIONS(4766), [sym_cfloat] = ACTIONS(4766), [sym_cdouble] = ACTIONS(4766), [sym_creal] = ACTIONS(4766), [sym_size_t] = ACTIONS(4766), [sym_ptrdiff_t] = ACTIONS(4766), [sym_string] = ACTIONS(4766), [sym_cstring] = ACTIONS(4766), [sym_dstring] = ACTIONS(4766), [sym_wstring] = ACTIONS(4766), [sym_noreturn] = ACTIONS(4766), [sym_this] = ACTIONS(4766), [sym_abstract] = ACTIONS(4766), [sym_alias] = ACTIONS(4766), [sym_align] = ACTIONS(4766), [sym_auto] = ACTIONS(4766), [sym_catch] = ACTIONS(4766), [sym_class] = ACTIONS(4766), [sym_const] = ACTIONS(4766), [sym_debug] = ACTIONS(4766), [sym_deprecated] = ACTIONS(4766), [sym_else] = ACTIONS(4766), [sym_enum] = ACTIONS(4766), [sym_export] = ACTIONS(4766), [sym_extern] = ACTIONS(4766), [sym_final] = ACTIONS(4766), [sym_finally] = ACTIONS(4766), [sym_immutable] = ACTIONS(4766), [sym_import] = ACTIONS(4766), [sym_inout] = ACTIONS(4766), [sym_interface] = ACTIONS(4766), [sym_invariant] = ACTIONS(4766), [sym_mixin] = ACTIONS(4766), [sym_nothrow] = ACTIONS(4766), [sym_override] = ACTIONS(4766), [sym_package] = ACTIONS(4766), [sym_pragma] = ACTIONS(4766), [sym_private] = ACTIONS(4766), [sym_protected] = ACTIONS(4766), [sym_public] = ACTIONS(4766), [sym_pure] = ACTIONS(4766), [sym_ref] = ACTIONS(4766), [sym_return] = ACTIONS(4766), [sym_scope] = ACTIONS(4766), [sym_shared] = ACTIONS(4766), [sym_static] = ACTIONS(4766), [sym_struct] = ACTIONS(4766), [sym_synchronized] = ACTIONS(4766), [sym_template] = ACTIONS(4766), [sym_typeof] = ACTIONS(4766), [sym_union] = ACTIONS(4766), [sym_unittest] = ACTIONS(4766), [sym_version] = ACTIONS(4766), [sym_while] = ACTIONS(4766), [sym_gshared] = ACTIONS(4766), [sym_traits] = ACTIONS(4766), [sym_vector] = ACTIONS(4766), [sym_void] = ACTIONS(4766), [sym_directive] = ACTIONS(3), }, [2586] = { [ts_builtin_sym_end] = ACTIONS(4790), [sym_identifier] = ACTIONS(4788), [sym_end_file] = ACTIONS(4788), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4790), [anon_sym_SEMI] = ACTIONS(4790), [anon_sym_TILDE] = ACTIONS(4790), [anon_sym_AT] = ACTIONS(4790), [sym_bool] = ACTIONS(4788), [sym_byte] = ACTIONS(4788), [sym_ubyte] = ACTIONS(4788), [sym_char] = ACTIONS(4788), [sym_short] = ACTIONS(4788), [sym_ushort] = ACTIONS(4788), [sym_int] = ACTIONS(4788), [sym_uint] = ACTIONS(4788), [sym_long] = ACTIONS(4788), [sym_ulong] = ACTIONS(4788), [sym_cent] = ACTIONS(4788), [sym_ucent] = ACTIONS(4788), [sym_wchar] = ACTIONS(4788), [sym_dchar] = ACTIONS(4788), [sym_float] = ACTIONS(4788), [sym_double] = ACTIONS(4788), [sym_real] = ACTIONS(4788), [sym_ifloat] = ACTIONS(4788), [sym_idouble] = ACTIONS(4788), [sym_ireal] = ACTIONS(4788), [sym_cfloat] = ACTIONS(4788), [sym_cdouble] = ACTIONS(4788), [sym_creal] = ACTIONS(4788), [sym_size_t] = ACTIONS(4788), [sym_ptrdiff_t] = ACTIONS(4788), [sym_string] = ACTIONS(4788), [sym_cstring] = ACTIONS(4788), [sym_dstring] = ACTIONS(4788), [sym_wstring] = ACTIONS(4788), [sym_noreturn] = ACTIONS(4788), [sym_this] = ACTIONS(4788), [sym_abstract] = ACTIONS(4788), [sym_alias] = ACTIONS(4788), [sym_align] = ACTIONS(4788), [sym_auto] = ACTIONS(4788), [sym_class] = ACTIONS(4788), [sym_const] = ACTIONS(4788), [sym_debug] = ACTIONS(4788), [sym_deprecated] = ACTIONS(4788), [sym_else] = ACTIONS(4788), [sym_enum] = ACTIONS(4788), [sym_export] = ACTIONS(4788), [sym_extern] = ACTIONS(4788), [sym_final] = ACTIONS(4788), [sym_immutable] = ACTIONS(4788), [sym_import] = ACTIONS(4788), [sym_inout] = ACTIONS(4788), [sym_interface] = ACTIONS(4788), [sym_invariant] = ACTIONS(4788), [sym_mixin] = ACTIONS(4788), [sym_nothrow] = ACTIONS(4788), [sym_override] = ACTIONS(4788), [sym_package] = ACTIONS(4788), [sym_pragma] = ACTIONS(4788), [sym_private] = ACTIONS(4788), [sym_protected] = ACTIONS(4788), [sym_public] = ACTIONS(4788), [sym_pure] = ACTIONS(4788), [sym_ref] = ACTIONS(4788), [sym_return] = ACTIONS(4788), [sym_scope] = ACTIONS(4788), [sym_shared] = ACTIONS(4788), [sym_static] = ACTIONS(4788), [sym_struct] = ACTIONS(4788), [sym_synchronized] = ACTIONS(4788), [sym_template] = ACTIONS(4788), [sym_typeof] = ACTIONS(4788), [sym_union] = ACTIONS(4788), [sym_unittest] = ACTIONS(4788), [sym_version] = ACTIONS(4788), [sym_while] = ACTIONS(4788), [sym_gshared] = ACTIONS(4788), [sym_traits] = ACTIONS(4788), [sym_vector] = ACTIONS(4788), [sym_void] = ACTIONS(4788), [sym_directive] = ACTIONS(3), }, [2587] = { [ts_builtin_sym_end] = ACTIONS(4718), [sym_identifier] = ACTIONS(4716), [sym_end_file] = ACTIONS(4716), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4718), [anon_sym_SEMI] = ACTIONS(4718), [anon_sym_TILDE] = ACTIONS(4718), [anon_sym_AT] = ACTIONS(4718), [sym_bool] = ACTIONS(4716), [sym_byte] = ACTIONS(4716), [sym_ubyte] = ACTIONS(4716), [sym_char] = ACTIONS(4716), [sym_short] = ACTIONS(4716), [sym_ushort] = ACTIONS(4716), [sym_int] = ACTIONS(4716), [sym_uint] = ACTIONS(4716), [sym_long] = ACTIONS(4716), [sym_ulong] = ACTIONS(4716), [sym_cent] = ACTIONS(4716), [sym_ucent] = ACTIONS(4716), [sym_wchar] = ACTIONS(4716), [sym_dchar] = ACTIONS(4716), [sym_float] = ACTIONS(4716), [sym_double] = ACTIONS(4716), [sym_real] = ACTIONS(4716), [sym_ifloat] = ACTIONS(4716), [sym_idouble] = ACTIONS(4716), [sym_ireal] = ACTIONS(4716), [sym_cfloat] = ACTIONS(4716), [sym_cdouble] = ACTIONS(4716), [sym_creal] = ACTIONS(4716), [sym_size_t] = ACTIONS(4716), [sym_ptrdiff_t] = ACTIONS(4716), [sym_string] = ACTIONS(4716), [sym_cstring] = ACTIONS(4716), [sym_dstring] = ACTIONS(4716), [sym_wstring] = ACTIONS(4716), [sym_noreturn] = ACTIONS(4716), [sym_this] = ACTIONS(4716), [sym_abstract] = ACTIONS(4716), [sym_alias] = ACTIONS(4716), [sym_align] = ACTIONS(4716), [sym_auto] = ACTIONS(4716), [sym_class] = ACTIONS(4716), [sym_const] = ACTIONS(4716), [sym_debug] = ACTIONS(4716), [sym_deprecated] = ACTIONS(4716), [sym_else] = ACTIONS(4716), [sym_enum] = ACTIONS(4716), [sym_export] = ACTIONS(4716), [sym_extern] = ACTIONS(4716), [sym_final] = ACTIONS(4716), [sym_immutable] = ACTIONS(4716), [sym_import] = ACTIONS(4716), [sym_inout] = ACTIONS(4716), [sym_interface] = ACTIONS(4716), [sym_invariant] = ACTIONS(4716), [sym_mixin] = ACTIONS(4716), [sym_nothrow] = ACTIONS(4716), [sym_override] = ACTIONS(4716), [sym_package] = ACTIONS(4716), [sym_pragma] = ACTIONS(4716), [sym_private] = ACTIONS(4716), [sym_protected] = ACTIONS(4716), [sym_public] = ACTIONS(4716), [sym_pure] = ACTIONS(4716), [sym_ref] = ACTIONS(4716), [sym_return] = ACTIONS(4716), [sym_scope] = ACTIONS(4716), [sym_shared] = ACTIONS(4716), [sym_static] = ACTIONS(4716), [sym_struct] = ACTIONS(4716), [sym_synchronized] = ACTIONS(4716), [sym_template] = ACTIONS(4716), [sym_typeof] = ACTIONS(4716), [sym_union] = ACTIONS(4716), [sym_unittest] = ACTIONS(4716), [sym_version] = ACTIONS(4716), [sym_while] = ACTIONS(4716), [sym_gshared] = ACTIONS(4716), [sym_traits] = ACTIONS(4716), [sym_vector] = ACTIONS(4716), [sym_void] = ACTIONS(4716), [sym_directive] = ACTIONS(3), }, [2588] = { [sym_identifier] = ACTIONS(4570), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4572), [anon_sym_SEMI] = ACTIONS(4572), [anon_sym_TILDE] = ACTIONS(4572), [anon_sym_AT] = ACTIONS(4572), [sym_bool] = ACTIONS(4570), [sym_byte] = ACTIONS(4570), [sym_ubyte] = ACTIONS(4570), [sym_char] = ACTIONS(4570), [sym_short] = ACTIONS(4570), [sym_ushort] = ACTIONS(4570), [sym_int] = ACTIONS(4570), [sym_uint] = ACTIONS(4570), [sym_long] = ACTIONS(4570), [sym_ulong] = ACTIONS(4570), [sym_cent] = ACTIONS(4570), [sym_ucent] = ACTIONS(4570), [sym_wchar] = ACTIONS(4570), [sym_dchar] = ACTIONS(4570), [sym_float] = ACTIONS(4570), [sym_double] = ACTIONS(4570), [sym_real] = ACTIONS(4570), [sym_ifloat] = ACTIONS(4570), [sym_idouble] = ACTIONS(4570), [sym_ireal] = ACTIONS(4570), [sym_cfloat] = ACTIONS(4570), [sym_cdouble] = ACTIONS(4570), [sym_creal] = ACTIONS(4570), [sym_size_t] = ACTIONS(4570), [sym_ptrdiff_t] = ACTIONS(4570), [sym_string] = ACTIONS(4570), [sym_cstring] = ACTIONS(4570), [sym_dstring] = ACTIONS(4570), [sym_wstring] = ACTIONS(4570), [sym_noreturn] = ACTIONS(4570), [sym_this] = ACTIONS(4570), [sym_abstract] = ACTIONS(4570), [sym_alias] = ACTIONS(4570), [sym_align] = ACTIONS(4570), [sym_auto] = ACTIONS(4570), [sym_catch] = ACTIONS(4570), [sym_class] = ACTIONS(4570), [sym_const] = ACTIONS(4570), [sym_debug] = ACTIONS(4570), [sym_deprecated] = ACTIONS(4570), [sym_else] = ACTIONS(4570), [sym_enum] = ACTIONS(4570), [sym_export] = ACTIONS(4570), [sym_extern] = ACTIONS(4570), [sym_final] = ACTIONS(4570), [sym_finally] = ACTIONS(4570), [sym_immutable] = ACTIONS(4570), [sym_import] = ACTIONS(4570), [sym_inout] = ACTIONS(4570), [sym_interface] = ACTIONS(4570), [sym_invariant] = ACTIONS(4570), [sym_mixin] = ACTIONS(4570), [sym_nothrow] = ACTIONS(4570), [sym_override] = ACTIONS(4570), [sym_package] = ACTIONS(4570), [sym_pragma] = ACTIONS(4570), [sym_private] = ACTIONS(4570), [sym_protected] = ACTIONS(4570), [sym_public] = ACTIONS(4570), [sym_pure] = ACTIONS(4570), [sym_ref] = ACTIONS(4570), [sym_return] = ACTIONS(4570), [sym_scope] = ACTIONS(4570), [sym_shared] = ACTIONS(4570), [sym_static] = ACTIONS(4570), [sym_struct] = ACTIONS(4570), [sym_synchronized] = ACTIONS(4570), [sym_template] = ACTIONS(4570), [sym_typeof] = ACTIONS(4570), [sym_union] = ACTIONS(4570), [sym_unittest] = ACTIONS(4570), [sym_version] = ACTIONS(4570), [sym_while] = ACTIONS(4570), [sym_gshared] = ACTIONS(4570), [sym_traits] = ACTIONS(4570), [sym_vector] = ACTIONS(4570), [sym_void] = ACTIONS(4570), [sym_directive] = ACTIONS(3), }, [2589] = { [sym_identifier] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2643), [anon_sym_AT] = ACTIONS(2643), [sym_bool] = ACTIONS(2645), [sym_byte] = ACTIONS(2645), [sym_ubyte] = ACTIONS(2645), [sym_char] = ACTIONS(2645), [sym_short] = ACTIONS(2645), [sym_ushort] = ACTIONS(2645), [sym_int] = ACTIONS(2645), [sym_uint] = ACTIONS(2645), [sym_long] = ACTIONS(2645), [sym_ulong] = ACTIONS(2645), [sym_cent] = ACTIONS(2645), [sym_ucent] = ACTIONS(2645), [sym_wchar] = ACTIONS(2645), [sym_dchar] = ACTIONS(2645), [sym_float] = ACTIONS(2645), [sym_double] = ACTIONS(2645), [sym_real] = ACTIONS(2645), [sym_ifloat] = ACTIONS(2645), [sym_idouble] = ACTIONS(2645), [sym_ireal] = ACTIONS(2645), [sym_cfloat] = ACTIONS(2645), [sym_cdouble] = ACTIONS(2645), [sym_creal] = ACTIONS(2645), [sym_size_t] = ACTIONS(2645), [sym_ptrdiff_t] = ACTIONS(2645), [sym_string] = ACTIONS(2645), [sym_cstring] = ACTIONS(2645), [sym_dstring] = ACTIONS(2645), [sym_wstring] = ACTIONS(2645), [sym_noreturn] = ACTIONS(2645), [sym_this] = ACTIONS(2645), [sym_abstract] = ACTIONS(2645), [sym_alias] = ACTIONS(2645), [sym_align] = ACTIONS(2645), [sym_auto] = ACTIONS(2645), [sym_catch] = ACTIONS(2645), [sym_class] = ACTIONS(2645), [sym_const] = ACTIONS(2645), [sym_debug] = ACTIONS(2645), [sym_deprecated] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(2645), [sym_export] = ACTIONS(2645), [sym_extern] = ACTIONS(2645), [sym_final] = ACTIONS(2645), [sym_finally] = ACTIONS(2645), [sym_immutable] = ACTIONS(2645), [sym_import] = ACTIONS(2645), [sym_inout] = ACTIONS(2645), [sym_interface] = ACTIONS(2645), [sym_invariant] = ACTIONS(2645), [sym_mixin] = ACTIONS(2645), [sym_nothrow] = ACTIONS(2645), [sym_override] = ACTIONS(2645), [sym_package] = ACTIONS(2645), [sym_pragma] = ACTIONS(2645), [sym_private] = ACTIONS(2645), [sym_protected] = ACTIONS(2645), [sym_public] = ACTIONS(2645), [sym_pure] = ACTIONS(2645), [sym_ref] = ACTIONS(2645), [sym_return] = ACTIONS(2645), [sym_scope] = ACTIONS(2645), [sym_shared] = ACTIONS(2645), [sym_static] = ACTIONS(2645), [sym_struct] = ACTIONS(2645), [sym_synchronized] = ACTIONS(2645), [sym_template] = ACTIONS(2645), [sym_typeof] = ACTIONS(2645), [sym_union] = ACTIONS(2645), [sym_unittest] = ACTIONS(2645), [sym_version] = ACTIONS(2645), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(2645), [sym_traits] = ACTIONS(2645), [sym_vector] = ACTIONS(2645), [sym_void] = ACTIONS(2645), [sym_directive] = ACTIONS(3), }, [2590] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_catch] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_finally] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [sym_directive] = ACTIONS(3), }, [2591] = { [ts_builtin_sym_end] = ACTIONS(5030), [sym_identifier] = ACTIONS(5028), [sym_end_file] = ACTIONS(5028), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5030), [anon_sym_SEMI] = ACTIONS(5030), [anon_sym_TILDE] = ACTIONS(5030), [anon_sym_AT] = ACTIONS(5030), [sym_bool] = ACTIONS(5028), [sym_byte] = ACTIONS(5028), [sym_ubyte] = ACTIONS(5028), [sym_char] = ACTIONS(5028), [sym_short] = ACTIONS(5028), [sym_ushort] = ACTIONS(5028), [sym_int] = ACTIONS(5028), [sym_uint] = ACTIONS(5028), [sym_long] = ACTIONS(5028), [sym_ulong] = ACTIONS(5028), [sym_cent] = ACTIONS(5028), [sym_ucent] = ACTIONS(5028), [sym_wchar] = ACTIONS(5028), [sym_dchar] = ACTIONS(5028), [sym_float] = ACTIONS(5028), [sym_double] = ACTIONS(5028), [sym_real] = ACTIONS(5028), [sym_ifloat] = ACTIONS(5028), [sym_idouble] = ACTIONS(5028), [sym_ireal] = ACTIONS(5028), [sym_cfloat] = ACTIONS(5028), [sym_cdouble] = ACTIONS(5028), [sym_creal] = ACTIONS(5028), [sym_size_t] = ACTIONS(5028), [sym_ptrdiff_t] = ACTIONS(5028), [sym_string] = ACTIONS(5028), [sym_cstring] = ACTIONS(5028), [sym_dstring] = ACTIONS(5028), [sym_wstring] = ACTIONS(5028), [sym_noreturn] = ACTIONS(5028), [sym_this] = ACTIONS(5028), [sym_abstract] = ACTIONS(5028), [sym_alias] = ACTIONS(5028), [sym_align] = ACTIONS(5028), [sym_auto] = ACTIONS(5028), [sym_class] = ACTIONS(5028), [sym_const] = ACTIONS(5028), [sym_debug] = ACTIONS(5028), [sym_deprecated] = ACTIONS(5028), [sym_else] = ACTIONS(5028), [sym_enum] = ACTIONS(5028), [sym_export] = ACTIONS(5028), [sym_extern] = ACTIONS(5028), [sym_final] = ACTIONS(5028), [sym_immutable] = ACTIONS(5028), [sym_import] = ACTIONS(5028), [sym_inout] = ACTIONS(5028), [sym_interface] = ACTIONS(5028), [sym_invariant] = ACTIONS(5028), [sym_mixin] = ACTIONS(5028), [sym_nothrow] = ACTIONS(5028), [sym_override] = ACTIONS(5028), [sym_package] = ACTIONS(5028), [sym_pragma] = ACTIONS(5028), [sym_private] = ACTIONS(5028), [sym_protected] = ACTIONS(5028), [sym_public] = ACTIONS(5028), [sym_pure] = ACTIONS(5028), [sym_ref] = ACTIONS(5028), [sym_return] = ACTIONS(5028), [sym_scope] = ACTIONS(5028), [sym_shared] = ACTIONS(5028), [sym_static] = ACTIONS(5028), [sym_struct] = ACTIONS(5028), [sym_synchronized] = ACTIONS(5028), [sym_template] = ACTIONS(5028), [sym_typeof] = ACTIONS(5028), [sym_union] = ACTIONS(5028), [sym_unittest] = ACTIONS(5028), [sym_version] = ACTIONS(5028), [sym_while] = ACTIONS(5028), [sym_gshared] = ACTIONS(5028), [sym_traits] = ACTIONS(5028), [sym_vector] = ACTIONS(5028), [sym_void] = ACTIONS(5028), [sym_directive] = ACTIONS(3), }, [2592] = { [ts_builtin_sym_end] = ACTIONS(4972), [sym_identifier] = ACTIONS(4970), [sym_end_file] = ACTIONS(4970), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4972), [anon_sym_SEMI] = ACTIONS(4972), [anon_sym_TILDE] = ACTIONS(4972), [anon_sym_AT] = ACTIONS(4972), [sym_bool] = ACTIONS(4970), [sym_byte] = ACTIONS(4970), [sym_ubyte] = ACTIONS(4970), [sym_char] = ACTIONS(4970), [sym_short] = ACTIONS(4970), [sym_ushort] = ACTIONS(4970), [sym_int] = ACTIONS(4970), [sym_uint] = ACTIONS(4970), [sym_long] = ACTIONS(4970), [sym_ulong] = ACTIONS(4970), [sym_cent] = ACTIONS(4970), [sym_ucent] = ACTIONS(4970), [sym_wchar] = ACTIONS(4970), [sym_dchar] = ACTIONS(4970), [sym_float] = ACTIONS(4970), [sym_double] = ACTIONS(4970), [sym_real] = ACTIONS(4970), [sym_ifloat] = ACTIONS(4970), [sym_idouble] = ACTIONS(4970), [sym_ireal] = ACTIONS(4970), [sym_cfloat] = ACTIONS(4970), [sym_cdouble] = ACTIONS(4970), [sym_creal] = ACTIONS(4970), [sym_size_t] = ACTIONS(4970), [sym_ptrdiff_t] = ACTIONS(4970), [sym_string] = ACTIONS(4970), [sym_cstring] = ACTIONS(4970), [sym_dstring] = ACTIONS(4970), [sym_wstring] = ACTIONS(4970), [sym_noreturn] = ACTIONS(4970), [sym_this] = ACTIONS(4970), [sym_abstract] = ACTIONS(4970), [sym_alias] = ACTIONS(4970), [sym_align] = ACTIONS(4970), [sym_auto] = ACTIONS(4970), [sym_class] = ACTIONS(4970), [sym_const] = ACTIONS(4970), [sym_debug] = ACTIONS(4970), [sym_deprecated] = ACTIONS(4970), [sym_else] = ACTIONS(4970), [sym_enum] = ACTIONS(4970), [sym_export] = ACTIONS(4970), [sym_extern] = ACTIONS(4970), [sym_final] = ACTIONS(4970), [sym_immutable] = ACTIONS(4970), [sym_import] = ACTIONS(4970), [sym_inout] = ACTIONS(4970), [sym_interface] = ACTIONS(4970), [sym_invariant] = ACTIONS(4970), [sym_mixin] = ACTIONS(4970), [sym_nothrow] = ACTIONS(4970), [sym_override] = ACTIONS(4970), [sym_package] = ACTIONS(4970), [sym_pragma] = ACTIONS(4970), [sym_private] = ACTIONS(4970), [sym_protected] = ACTIONS(4970), [sym_public] = ACTIONS(4970), [sym_pure] = ACTIONS(4970), [sym_ref] = ACTIONS(4970), [sym_return] = ACTIONS(4970), [sym_scope] = ACTIONS(4970), [sym_shared] = ACTIONS(4970), [sym_static] = ACTIONS(4970), [sym_struct] = ACTIONS(4970), [sym_synchronized] = ACTIONS(4970), [sym_template] = ACTIONS(4970), [sym_typeof] = ACTIONS(4970), [sym_union] = ACTIONS(4970), [sym_unittest] = ACTIONS(4970), [sym_version] = ACTIONS(4970), [sym_while] = ACTIONS(4970), [sym_gshared] = ACTIONS(4970), [sym_traits] = ACTIONS(4970), [sym_vector] = ACTIONS(4970), [sym_void] = ACTIONS(4970), [sym_directive] = ACTIONS(3), }, [2593] = { [ts_builtin_sym_end] = ACTIONS(4980), [sym_identifier] = ACTIONS(4978), [sym_end_file] = ACTIONS(4978), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4980), [anon_sym_SEMI] = ACTIONS(4980), [anon_sym_TILDE] = ACTIONS(4980), [anon_sym_AT] = ACTIONS(4980), [sym_bool] = ACTIONS(4978), [sym_byte] = ACTIONS(4978), [sym_ubyte] = ACTIONS(4978), [sym_char] = ACTIONS(4978), [sym_short] = ACTIONS(4978), [sym_ushort] = ACTIONS(4978), [sym_int] = ACTIONS(4978), [sym_uint] = ACTIONS(4978), [sym_long] = ACTIONS(4978), [sym_ulong] = ACTIONS(4978), [sym_cent] = ACTIONS(4978), [sym_ucent] = ACTIONS(4978), [sym_wchar] = ACTIONS(4978), [sym_dchar] = ACTIONS(4978), [sym_float] = ACTIONS(4978), [sym_double] = ACTIONS(4978), [sym_real] = ACTIONS(4978), [sym_ifloat] = ACTIONS(4978), [sym_idouble] = ACTIONS(4978), [sym_ireal] = ACTIONS(4978), [sym_cfloat] = ACTIONS(4978), [sym_cdouble] = ACTIONS(4978), [sym_creal] = ACTIONS(4978), [sym_size_t] = ACTIONS(4978), [sym_ptrdiff_t] = ACTIONS(4978), [sym_string] = ACTIONS(4978), [sym_cstring] = ACTIONS(4978), [sym_dstring] = ACTIONS(4978), [sym_wstring] = ACTIONS(4978), [sym_noreturn] = ACTIONS(4978), [sym_this] = ACTIONS(4978), [sym_abstract] = ACTIONS(4978), [sym_alias] = ACTIONS(4978), [sym_align] = ACTIONS(4978), [sym_auto] = ACTIONS(4978), [sym_class] = ACTIONS(4978), [sym_const] = ACTIONS(4978), [sym_debug] = ACTIONS(4978), [sym_deprecated] = ACTIONS(4978), [sym_else] = ACTIONS(4978), [sym_enum] = ACTIONS(4978), [sym_export] = ACTIONS(4978), [sym_extern] = ACTIONS(4978), [sym_final] = ACTIONS(4978), [sym_immutable] = ACTIONS(4978), [sym_import] = ACTIONS(4978), [sym_inout] = ACTIONS(4978), [sym_interface] = ACTIONS(4978), [sym_invariant] = ACTIONS(4978), [sym_mixin] = ACTIONS(4978), [sym_nothrow] = ACTIONS(4978), [sym_override] = ACTIONS(4978), [sym_package] = ACTIONS(4978), [sym_pragma] = ACTIONS(4978), [sym_private] = ACTIONS(4978), [sym_protected] = ACTIONS(4978), [sym_public] = ACTIONS(4978), [sym_pure] = ACTIONS(4978), [sym_ref] = ACTIONS(4978), [sym_return] = ACTIONS(4978), [sym_scope] = ACTIONS(4978), [sym_shared] = ACTIONS(4978), [sym_static] = ACTIONS(4978), [sym_struct] = ACTIONS(4978), [sym_synchronized] = ACTIONS(4978), [sym_template] = ACTIONS(4978), [sym_typeof] = ACTIONS(4978), [sym_union] = ACTIONS(4978), [sym_unittest] = ACTIONS(4978), [sym_version] = ACTIONS(4978), [sym_while] = ACTIONS(4978), [sym_gshared] = ACTIONS(4978), [sym_traits] = ACTIONS(4978), [sym_vector] = ACTIONS(4978), [sym_void] = ACTIONS(4978), [sym_directive] = ACTIONS(3), }, [2594] = { [ts_builtin_sym_end] = ACTIONS(4984), [sym_identifier] = ACTIONS(4982), [sym_end_file] = ACTIONS(4982), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4984), [anon_sym_SEMI] = ACTIONS(4984), [anon_sym_TILDE] = ACTIONS(4984), [anon_sym_AT] = ACTIONS(4984), [sym_bool] = ACTIONS(4982), [sym_byte] = ACTIONS(4982), [sym_ubyte] = ACTIONS(4982), [sym_char] = ACTIONS(4982), [sym_short] = ACTIONS(4982), [sym_ushort] = ACTIONS(4982), [sym_int] = ACTIONS(4982), [sym_uint] = ACTIONS(4982), [sym_long] = ACTIONS(4982), [sym_ulong] = ACTIONS(4982), [sym_cent] = ACTIONS(4982), [sym_ucent] = ACTIONS(4982), [sym_wchar] = ACTIONS(4982), [sym_dchar] = ACTIONS(4982), [sym_float] = ACTIONS(4982), [sym_double] = ACTIONS(4982), [sym_real] = ACTIONS(4982), [sym_ifloat] = ACTIONS(4982), [sym_idouble] = ACTIONS(4982), [sym_ireal] = ACTIONS(4982), [sym_cfloat] = ACTIONS(4982), [sym_cdouble] = ACTIONS(4982), [sym_creal] = ACTIONS(4982), [sym_size_t] = ACTIONS(4982), [sym_ptrdiff_t] = ACTIONS(4982), [sym_string] = ACTIONS(4982), [sym_cstring] = ACTIONS(4982), [sym_dstring] = ACTIONS(4982), [sym_wstring] = ACTIONS(4982), [sym_noreturn] = ACTIONS(4982), [sym_this] = ACTIONS(4982), [sym_abstract] = ACTIONS(4982), [sym_alias] = ACTIONS(4982), [sym_align] = ACTIONS(4982), [sym_auto] = ACTIONS(4982), [sym_class] = ACTIONS(4982), [sym_const] = ACTIONS(4982), [sym_debug] = ACTIONS(4982), [sym_deprecated] = ACTIONS(4982), [sym_else] = ACTIONS(4982), [sym_enum] = ACTIONS(4982), [sym_export] = ACTIONS(4982), [sym_extern] = ACTIONS(4982), [sym_final] = ACTIONS(4982), [sym_immutable] = ACTIONS(4982), [sym_import] = ACTIONS(4982), [sym_inout] = ACTIONS(4982), [sym_interface] = ACTIONS(4982), [sym_invariant] = ACTIONS(4982), [sym_mixin] = ACTIONS(4982), [sym_nothrow] = ACTIONS(4982), [sym_override] = ACTIONS(4982), [sym_package] = ACTIONS(4982), [sym_pragma] = ACTIONS(4982), [sym_private] = ACTIONS(4982), [sym_protected] = ACTIONS(4982), [sym_public] = ACTIONS(4982), [sym_pure] = ACTIONS(4982), [sym_ref] = ACTIONS(4982), [sym_return] = ACTIONS(4982), [sym_scope] = ACTIONS(4982), [sym_shared] = ACTIONS(4982), [sym_static] = ACTIONS(4982), [sym_struct] = ACTIONS(4982), [sym_synchronized] = ACTIONS(4982), [sym_template] = ACTIONS(4982), [sym_typeof] = ACTIONS(4982), [sym_union] = ACTIONS(4982), [sym_unittest] = ACTIONS(4982), [sym_version] = ACTIONS(4982), [sym_while] = ACTIONS(4982), [sym_gshared] = ACTIONS(4982), [sym_traits] = ACTIONS(4982), [sym_vector] = ACTIONS(4982), [sym_void] = ACTIONS(4982), [sym_directive] = ACTIONS(3), }, [2595] = { [ts_builtin_sym_end] = ACTIONS(4988), [sym_identifier] = ACTIONS(4986), [sym_end_file] = ACTIONS(4986), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4988), [anon_sym_SEMI] = ACTIONS(4988), [anon_sym_TILDE] = ACTIONS(4988), [anon_sym_AT] = ACTIONS(4988), [sym_bool] = ACTIONS(4986), [sym_byte] = ACTIONS(4986), [sym_ubyte] = ACTIONS(4986), [sym_char] = ACTIONS(4986), [sym_short] = ACTIONS(4986), [sym_ushort] = ACTIONS(4986), [sym_int] = ACTIONS(4986), [sym_uint] = ACTIONS(4986), [sym_long] = ACTIONS(4986), [sym_ulong] = ACTIONS(4986), [sym_cent] = ACTIONS(4986), [sym_ucent] = ACTIONS(4986), [sym_wchar] = ACTIONS(4986), [sym_dchar] = ACTIONS(4986), [sym_float] = ACTIONS(4986), [sym_double] = ACTIONS(4986), [sym_real] = ACTIONS(4986), [sym_ifloat] = ACTIONS(4986), [sym_idouble] = ACTIONS(4986), [sym_ireal] = ACTIONS(4986), [sym_cfloat] = ACTIONS(4986), [sym_cdouble] = ACTIONS(4986), [sym_creal] = ACTIONS(4986), [sym_size_t] = ACTIONS(4986), [sym_ptrdiff_t] = ACTIONS(4986), [sym_string] = ACTIONS(4986), [sym_cstring] = ACTIONS(4986), [sym_dstring] = ACTIONS(4986), [sym_wstring] = ACTIONS(4986), [sym_noreturn] = ACTIONS(4986), [sym_this] = ACTIONS(4986), [sym_abstract] = ACTIONS(4986), [sym_alias] = ACTIONS(4986), [sym_align] = ACTIONS(4986), [sym_auto] = ACTIONS(4986), [sym_class] = ACTIONS(4986), [sym_const] = ACTIONS(4986), [sym_debug] = ACTIONS(4986), [sym_deprecated] = ACTIONS(4986), [sym_else] = ACTIONS(4986), [sym_enum] = ACTIONS(4986), [sym_export] = ACTIONS(4986), [sym_extern] = ACTIONS(4986), [sym_final] = ACTIONS(4986), [sym_immutable] = ACTIONS(4986), [sym_import] = ACTIONS(4986), [sym_inout] = ACTIONS(4986), [sym_interface] = ACTIONS(4986), [sym_invariant] = ACTIONS(4986), [sym_mixin] = ACTIONS(4986), [sym_nothrow] = ACTIONS(4986), [sym_override] = ACTIONS(4986), [sym_package] = ACTIONS(4986), [sym_pragma] = ACTIONS(4986), [sym_private] = ACTIONS(4986), [sym_protected] = ACTIONS(4986), [sym_public] = ACTIONS(4986), [sym_pure] = ACTIONS(4986), [sym_ref] = ACTIONS(4986), [sym_return] = ACTIONS(4986), [sym_scope] = ACTIONS(4986), [sym_shared] = ACTIONS(4986), [sym_static] = ACTIONS(4986), [sym_struct] = ACTIONS(4986), [sym_synchronized] = ACTIONS(4986), [sym_template] = ACTIONS(4986), [sym_typeof] = ACTIONS(4986), [sym_union] = ACTIONS(4986), [sym_unittest] = ACTIONS(4986), [sym_version] = ACTIONS(4986), [sym_while] = ACTIONS(4986), [sym_gshared] = ACTIONS(4986), [sym_traits] = ACTIONS(4986), [sym_vector] = ACTIONS(4986), [sym_void] = ACTIONS(4986), [sym_directive] = ACTIONS(3), }, [2596] = { [ts_builtin_sym_end] = ACTIONS(4634), [sym_identifier] = ACTIONS(4632), [sym_end_file] = ACTIONS(4632), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4634), [anon_sym_SEMI] = ACTIONS(4634), [anon_sym_TILDE] = ACTIONS(4634), [anon_sym_AT] = ACTIONS(4634), [sym_bool] = ACTIONS(4632), [sym_byte] = ACTIONS(4632), [sym_ubyte] = ACTIONS(4632), [sym_char] = ACTIONS(4632), [sym_short] = ACTIONS(4632), [sym_ushort] = ACTIONS(4632), [sym_int] = ACTIONS(4632), [sym_uint] = ACTIONS(4632), [sym_long] = ACTIONS(4632), [sym_ulong] = ACTIONS(4632), [sym_cent] = ACTIONS(4632), [sym_ucent] = ACTIONS(4632), [sym_wchar] = ACTIONS(4632), [sym_dchar] = ACTIONS(4632), [sym_float] = ACTIONS(4632), [sym_double] = ACTIONS(4632), [sym_real] = ACTIONS(4632), [sym_ifloat] = ACTIONS(4632), [sym_idouble] = ACTIONS(4632), [sym_ireal] = ACTIONS(4632), [sym_cfloat] = ACTIONS(4632), [sym_cdouble] = ACTIONS(4632), [sym_creal] = ACTIONS(4632), [sym_size_t] = ACTIONS(4632), [sym_ptrdiff_t] = ACTIONS(4632), [sym_string] = ACTIONS(4632), [sym_cstring] = ACTIONS(4632), [sym_dstring] = ACTIONS(4632), [sym_wstring] = ACTIONS(4632), [sym_noreturn] = ACTIONS(4632), [sym_this] = ACTIONS(4632), [sym_abstract] = ACTIONS(4632), [sym_alias] = ACTIONS(4632), [sym_align] = ACTIONS(4632), [sym_auto] = ACTIONS(4632), [sym_class] = ACTIONS(4632), [sym_const] = ACTIONS(4632), [sym_debug] = ACTIONS(4632), [sym_deprecated] = ACTIONS(4632), [sym_else] = ACTIONS(4632), [sym_enum] = ACTIONS(4632), [sym_export] = ACTIONS(4632), [sym_extern] = ACTIONS(4632), [sym_final] = ACTIONS(4632), [sym_immutable] = ACTIONS(4632), [sym_import] = ACTIONS(4632), [sym_inout] = ACTIONS(4632), [sym_interface] = ACTIONS(4632), [sym_invariant] = ACTIONS(4632), [sym_mixin] = ACTIONS(4632), [sym_nothrow] = ACTIONS(4632), [sym_override] = ACTIONS(4632), [sym_package] = ACTIONS(4632), [sym_pragma] = ACTIONS(4632), [sym_private] = ACTIONS(4632), [sym_protected] = ACTIONS(4632), [sym_public] = ACTIONS(4632), [sym_pure] = ACTIONS(4632), [sym_ref] = ACTIONS(4632), [sym_return] = ACTIONS(4632), [sym_scope] = ACTIONS(4632), [sym_shared] = ACTIONS(4632), [sym_static] = ACTIONS(4632), [sym_struct] = ACTIONS(4632), [sym_synchronized] = ACTIONS(4632), [sym_template] = ACTIONS(4632), [sym_typeof] = ACTIONS(4632), [sym_union] = ACTIONS(4632), [sym_unittest] = ACTIONS(4632), [sym_version] = ACTIONS(4632), [sym_while] = ACTIONS(4632), [sym_gshared] = ACTIONS(4632), [sym_traits] = ACTIONS(4632), [sym_vector] = ACTIONS(4632), [sym_void] = ACTIONS(4632), [sym_directive] = ACTIONS(3), }, [2597] = { [ts_builtin_sym_end] = ACTIONS(4684), [sym_identifier] = ACTIONS(4682), [sym_end_file] = ACTIONS(4682), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4684), [anon_sym_SEMI] = ACTIONS(4684), [anon_sym_TILDE] = ACTIONS(4684), [anon_sym_AT] = ACTIONS(4684), [sym_bool] = ACTIONS(4682), [sym_byte] = ACTIONS(4682), [sym_ubyte] = ACTIONS(4682), [sym_char] = ACTIONS(4682), [sym_short] = ACTIONS(4682), [sym_ushort] = ACTIONS(4682), [sym_int] = ACTIONS(4682), [sym_uint] = ACTIONS(4682), [sym_long] = ACTIONS(4682), [sym_ulong] = ACTIONS(4682), [sym_cent] = ACTIONS(4682), [sym_ucent] = ACTIONS(4682), [sym_wchar] = ACTIONS(4682), [sym_dchar] = ACTIONS(4682), [sym_float] = ACTIONS(4682), [sym_double] = ACTIONS(4682), [sym_real] = ACTIONS(4682), [sym_ifloat] = ACTIONS(4682), [sym_idouble] = ACTIONS(4682), [sym_ireal] = ACTIONS(4682), [sym_cfloat] = ACTIONS(4682), [sym_cdouble] = ACTIONS(4682), [sym_creal] = ACTIONS(4682), [sym_size_t] = ACTIONS(4682), [sym_ptrdiff_t] = ACTIONS(4682), [sym_string] = ACTIONS(4682), [sym_cstring] = ACTIONS(4682), [sym_dstring] = ACTIONS(4682), [sym_wstring] = ACTIONS(4682), [sym_noreturn] = ACTIONS(4682), [sym_this] = ACTIONS(4682), [sym_abstract] = ACTIONS(4682), [sym_alias] = ACTIONS(4682), [sym_align] = ACTIONS(4682), [sym_auto] = ACTIONS(4682), [sym_class] = ACTIONS(4682), [sym_const] = ACTIONS(4682), [sym_debug] = ACTIONS(4682), [sym_deprecated] = ACTIONS(4682), [sym_else] = ACTIONS(4682), [sym_enum] = ACTIONS(4682), [sym_export] = ACTIONS(4682), [sym_extern] = ACTIONS(4682), [sym_final] = ACTIONS(4682), [sym_immutable] = ACTIONS(4682), [sym_import] = ACTIONS(4682), [sym_inout] = ACTIONS(4682), [sym_interface] = ACTIONS(4682), [sym_invariant] = ACTIONS(4682), [sym_mixin] = ACTIONS(4682), [sym_nothrow] = ACTIONS(4682), [sym_override] = ACTIONS(4682), [sym_package] = ACTIONS(4682), [sym_pragma] = ACTIONS(4682), [sym_private] = ACTIONS(4682), [sym_protected] = ACTIONS(4682), [sym_public] = ACTIONS(4682), [sym_pure] = ACTIONS(4682), [sym_ref] = ACTIONS(4682), [sym_return] = ACTIONS(4682), [sym_scope] = ACTIONS(4682), [sym_shared] = ACTIONS(4682), [sym_static] = ACTIONS(4682), [sym_struct] = ACTIONS(4682), [sym_synchronized] = ACTIONS(4682), [sym_template] = ACTIONS(4682), [sym_typeof] = ACTIONS(4682), [sym_union] = ACTIONS(4682), [sym_unittest] = ACTIONS(4682), [sym_version] = ACTIONS(4682), [sym_while] = ACTIONS(4682), [sym_gshared] = ACTIONS(4682), [sym_traits] = ACTIONS(4682), [sym_vector] = ACTIONS(4682), [sym_void] = ACTIONS(4682), [sym_directive] = ACTIONS(3), }, [2598] = { [ts_builtin_sym_end] = ACTIONS(4622), [sym_identifier] = ACTIONS(4620), [sym_end_file] = ACTIONS(4620), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4622), [anon_sym_SEMI] = ACTIONS(4622), [anon_sym_TILDE] = ACTIONS(4622), [anon_sym_AT] = ACTIONS(4622), [sym_bool] = ACTIONS(4620), [sym_byte] = ACTIONS(4620), [sym_ubyte] = ACTIONS(4620), [sym_char] = ACTIONS(4620), [sym_short] = ACTIONS(4620), [sym_ushort] = ACTIONS(4620), [sym_int] = ACTIONS(4620), [sym_uint] = ACTIONS(4620), [sym_long] = ACTIONS(4620), [sym_ulong] = ACTIONS(4620), [sym_cent] = ACTIONS(4620), [sym_ucent] = ACTIONS(4620), [sym_wchar] = ACTIONS(4620), [sym_dchar] = ACTIONS(4620), [sym_float] = ACTIONS(4620), [sym_double] = ACTIONS(4620), [sym_real] = ACTIONS(4620), [sym_ifloat] = ACTIONS(4620), [sym_idouble] = ACTIONS(4620), [sym_ireal] = ACTIONS(4620), [sym_cfloat] = ACTIONS(4620), [sym_cdouble] = ACTIONS(4620), [sym_creal] = ACTIONS(4620), [sym_size_t] = ACTIONS(4620), [sym_ptrdiff_t] = ACTIONS(4620), [sym_string] = ACTIONS(4620), [sym_cstring] = ACTIONS(4620), [sym_dstring] = ACTIONS(4620), [sym_wstring] = ACTIONS(4620), [sym_noreturn] = ACTIONS(4620), [sym_this] = ACTIONS(4620), [sym_abstract] = ACTIONS(4620), [sym_alias] = ACTIONS(4620), [sym_align] = ACTIONS(4620), [sym_auto] = ACTIONS(4620), [sym_class] = ACTIONS(4620), [sym_const] = ACTIONS(4620), [sym_debug] = ACTIONS(4620), [sym_deprecated] = ACTIONS(4620), [sym_else] = ACTIONS(4620), [sym_enum] = ACTIONS(4620), [sym_export] = ACTIONS(4620), [sym_extern] = ACTIONS(4620), [sym_final] = ACTIONS(4620), [sym_immutable] = ACTIONS(4620), [sym_import] = ACTIONS(4620), [sym_inout] = ACTIONS(4620), [sym_interface] = ACTIONS(4620), [sym_invariant] = ACTIONS(4620), [sym_mixin] = ACTIONS(4620), [sym_nothrow] = ACTIONS(4620), [sym_override] = ACTIONS(4620), [sym_package] = ACTIONS(4620), [sym_pragma] = ACTIONS(4620), [sym_private] = ACTIONS(4620), [sym_protected] = ACTIONS(4620), [sym_public] = ACTIONS(4620), [sym_pure] = ACTIONS(4620), [sym_ref] = ACTIONS(4620), [sym_return] = ACTIONS(4620), [sym_scope] = ACTIONS(4620), [sym_shared] = ACTIONS(4620), [sym_static] = ACTIONS(4620), [sym_struct] = ACTIONS(4620), [sym_synchronized] = ACTIONS(4620), [sym_template] = ACTIONS(4620), [sym_typeof] = ACTIONS(4620), [sym_union] = ACTIONS(4620), [sym_unittest] = ACTIONS(4620), [sym_version] = ACTIONS(4620), [sym_while] = ACTIONS(4620), [sym_gshared] = ACTIONS(4620), [sym_traits] = ACTIONS(4620), [sym_vector] = ACTIONS(4620), [sym_void] = ACTIONS(4620), [sym_directive] = ACTIONS(3), }, [2599] = { [ts_builtin_sym_end] = ACTIONS(4357), [sym_identifier] = ACTIONS(4355), [sym_end_file] = ACTIONS(4355), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4357), [anon_sym_SEMI] = ACTIONS(4357), [anon_sym_TILDE] = ACTIONS(4357), [anon_sym_AT] = ACTIONS(4357), [sym_bool] = ACTIONS(4355), [sym_byte] = ACTIONS(4355), [sym_ubyte] = ACTIONS(4355), [sym_char] = ACTIONS(4355), [sym_short] = ACTIONS(4355), [sym_ushort] = ACTIONS(4355), [sym_int] = ACTIONS(4355), [sym_uint] = ACTIONS(4355), [sym_long] = ACTIONS(4355), [sym_ulong] = ACTIONS(4355), [sym_cent] = ACTIONS(4355), [sym_ucent] = ACTIONS(4355), [sym_wchar] = ACTIONS(4355), [sym_dchar] = ACTIONS(4355), [sym_float] = ACTIONS(4355), [sym_double] = ACTIONS(4355), [sym_real] = ACTIONS(4355), [sym_ifloat] = ACTIONS(4355), [sym_idouble] = ACTIONS(4355), [sym_ireal] = ACTIONS(4355), [sym_cfloat] = ACTIONS(4355), [sym_cdouble] = ACTIONS(4355), [sym_creal] = ACTIONS(4355), [sym_size_t] = ACTIONS(4355), [sym_ptrdiff_t] = ACTIONS(4355), [sym_string] = ACTIONS(4355), [sym_cstring] = ACTIONS(4355), [sym_dstring] = ACTIONS(4355), [sym_wstring] = ACTIONS(4355), [sym_noreturn] = ACTIONS(4355), [sym_this] = ACTIONS(4355), [sym_abstract] = ACTIONS(4355), [sym_alias] = ACTIONS(4355), [sym_align] = ACTIONS(4355), [sym_auto] = ACTIONS(4355), [sym_class] = ACTIONS(4355), [sym_const] = ACTIONS(4355), [sym_debug] = ACTIONS(4355), [sym_deprecated] = ACTIONS(4355), [sym_else] = ACTIONS(4355), [sym_enum] = ACTIONS(4355), [sym_export] = ACTIONS(4355), [sym_extern] = ACTIONS(4355), [sym_final] = ACTIONS(4355), [sym_immutable] = ACTIONS(4355), [sym_import] = ACTIONS(4355), [sym_inout] = ACTIONS(4355), [sym_interface] = ACTIONS(4355), [sym_invariant] = ACTIONS(4355), [sym_mixin] = ACTIONS(4355), [sym_nothrow] = ACTIONS(4355), [sym_override] = ACTIONS(4355), [sym_package] = ACTIONS(4355), [sym_pragma] = ACTIONS(4355), [sym_private] = ACTIONS(4355), [sym_protected] = ACTIONS(4355), [sym_public] = ACTIONS(4355), [sym_pure] = ACTIONS(4355), [sym_ref] = ACTIONS(4355), [sym_return] = ACTIONS(4355), [sym_scope] = ACTIONS(4355), [sym_shared] = ACTIONS(4355), [sym_static] = ACTIONS(4355), [sym_struct] = ACTIONS(4355), [sym_synchronized] = ACTIONS(4355), [sym_template] = ACTIONS(4355), [sym_typeof] = ACTIONS(4355), [sym_union] = ACTIONS(4355), [sym_unittest] = ACTIONS(4355), [sym_version] = ACTIONS(4355), [sym_while] = ACTIONS(4355), [sym_gshared] = ACTIONS(4355), [sym_traits] = ACTIONS(4355), [sym_vector] = ACTIONS(4355), [sym_void] = ACTIONS(4355), [sym_directive] = ACTIONS(3), }, [2600] = { [ts_builtin_sym_end] = ACTIONS(4992), [sym_identifier] = ACTIONS(4990), [sym_end_file] = ACTIONS(4990), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4992), [anon_sym_SEMI] = ACTIONS(4992), [anon_sym_TILDE] = ACTIONS(4992), [anon_sym_AT] = ACTIONS(4992), [sym_bool] = ACTIONS(4990), [sym_byte] = ACTIONS(4990), [sym_ubyte] = ACTIONS(4990), [sym_char] = ACTIONS(4990), [sym_short] = ACTIONS(4990), [sym_ushort] = ACTIONS(4990), [sym_int] = ACTIONS(4990), [sym_uint] = ACTIONS(4990), [sym_long] = ACTIONS(4990), [sym_ulong] = ACTIONS(4990), [sym_cent] = ACTIONS(4990), [sym_ucent] = ACTIONS(4990), [sym_wchar] = ACTIONS(4990), [sym_dchar] = ACTIONS(4990), [sym_float] = ACTIONS(4990), [sym_double] = ACTIONS(4990), [sym_real] = ACTIONS(4990), [sym_ifloat] = ACTIONS(4990), [sym_idouble] = ACTIONS(4990), [sym_ireal] = ACTIONS(4990), [sym_cfloat] = ACTIONS(4990), [sym_cdouble] = ACTIONS(4990), [sym_creal] = ACTIONS(4990), [sym_size_t] = ACTIONS(4990), [sym_ptrdiff_t] = ACTIONS(4990), [sym_string] = ACTIONS(4990), [sym_cstring] = ACTIONS(4990), [sym_dstring] = ACTIONS(4990), [sym_wstring] = ACTIONS(4990), [sym_noreturn] = ACTIONS(4990), [sym_this] = ACTIONS(4990), [sym_abstract] = ACTIONS(4990), [sym_alias] = ACTIONS(4990), [sym_align] = ACTIONS(4990), [sym_auto] = ACTIONS(4990), [sym_class] = ACTIONS(4990), [sym_const] = ACTIONS(4990), [sym_debug] = ACTIONS(4990), [sym_deprecated] = ACTIONS(4990), [sym_else] = ACTIONS(4990), [sym_enum] = ACTIONS(4990), [sym_export] = ACTIONS(4990), [sym_extern] = ACTIONS(4990), [sym_final] = ACTIONS(4990), [sym_immutable] = ACTIONS(4990), [sym_import] = ACTIONS(4990), [sym_inout] = ACTIONS(4990), [sym_interface] = ACTIONS(4990), [sym_invariant] = ACTIONS(4990), [sym_mixin] = ACTIONS(4990), [sym_nothrow] = ACTIONS(4990), [sym_override] = ACTIONS(4990), [sym_package] = ACTIONS(4990), [sym_pragma] = ACTIONS(4990), [sym_private] = ACTIONS(4990), [sym_protected] = ACTIONS(4990), [sym_public] = ACTIONS(4990), [sym_pure] = ACTIONS(4990), [sym_ref] = ACTIONS(4990), [sym_return] = ACTIONS(4990), [sym_scope] = ACTIONS(4990), [sym_shared] = ACTIONS(4990), [sym_static] = ACTIONS(4990), [sym_struct] = ACTIONS(4990), [sym_synchronized] = ACTIONS(4990), [sym_template] = ACTIONS(4990), [sym_typeof] = ACTIONS(4990), [sym_union] = ACTIONS(4990), [sym_unittest] = ACTIONS(4990), [sym_version] = ACTIONS(4990), [sym_while] = ACTIONS(4990), [sym_gshared] = ACTIONS(4990), [sym_traits] = ACTIONS(4990), [sym_vector] = ACTIONS(4990), [sym_void] = ACTIONS(4990), [sym_directive] = ACTIONS(3), }, [2601] = { [ts_builtin_sym_end] = ACTIONS(4676), [sym_identifier] = ACTIONS(4674), [sym_end_file] = ACTIONS(4674), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4676), [anon_sym_SEMI] = ACTIONS(4676), [anon_sym_TILDE] = ACTIONS(4676), [anon_sym_AT] = ACTIONS(4676), [sym_bool] = ACTIONS(4674), [sym_byte] = ACTIONS(4674), [sym_ubyte] = ACTIONS(4674), [sym_char] = ACTIONS(4674), [sym_short] = ACTIONS(4674), [sym_ushort] = ACTIONS(4674), [sym_int] = ACTIONS(4674), [sym_uint] = ACTIONS(4674), [sym_long] = ACTIONS(4674), [sym_ulong] = ACTIONS(4674), [sym_cent] = ACTIONS(4674), [sym_ucent] = ACTIONS(4674), [sym_wchar] = ACTIONS(4674), [sym_dchar] = ACTIONS(4674), [sym_float] = ACTIONS(4674), [sym_double] = ACTIONS(4674), [sym_real] = ACTIONS(4674), [sym_ifloat] = ACTIONS(4674), [sym_idouble] = ACTIONS(4674), [sym_ireal] = ACTIONS(4674), [sym_cfloat] = ACTIONS(4674), [sym_cdouble] = ACTIONS(4674), [sym_creal] = ACTIONS(4674), [sym_size_t] = ACTIONS(4674), [sym_ptrdiff_t] = ACTIONS(4674), [sym_string] = ACTIONS(4674), [sym_cstring] = ACTIONS(4674), [sym_dstring] = ACTIONS(4674), [sym_wstring] = ACTIONS(4674), [sym_noreturn] = ACTIONS(4674), [sym_this] = ACTIONS(4674), [sym_abstract] = ACTIONS(4674), [sym_alias] = ACTIONS(4674), [sym_align] = ACTIONS(4674), [sym_auto] = ACTIONS(4674), [sym_class] = ACTIONS(4674), [sym_const] = ACTIONS(4674), [sym_debug] = ACTIONS(4674), [sym_deprecated] = ACTIONS(4674), [sym_else] = ACTIONS(4674), [sym_enum] = ACTIONS(4674), [sym_export] = ACTIONS(4674), [sym_extern] = ACTIONS(4674), [sym_final] = ACTIONS(4674), [sym_immutable] = ACTIONS(4674), [sym_import] = ACTIONS(4674), [sym_inout] = ACTIONS(4674), [sym_interface] = ACTIONS(4674), [sym_invariant] = ACTIONS(4674), [sym_mixin] = ACTIONS(4674), [sym_nothrow] = ACTIONS(4674), [sym_override] = ACTIONS(4674), [sym_package] = ACTIONS(4674), [sym_pragma] = ACTIONS(4674), [sym_private] = ACTIONS(4674), [sym_protected] = ACTIONS(4674), [sym_public] = ACTIONS(4674), [sym_pure] = ACTIONS(4674), [sym_ref] = ACTIONS(4674), [sym_return] = ACTIONS(4674), [sym_scope] = ACTIONS(4674), [sym_shared] = ACTIONS(4674), [sym_static] = ACTIONS(4674), [sym_struct] = ACTIONS(4674), [sym_synchronized] = ACTIONS(4674), [sym_template] = ACTIONS(4674), [sym_typeof] = ACTIONS(4674), [sym_union] = ACTIONS(4674), [sym_unittest] = ACTIONS(4674), [sym_version] = ACTIONS(4674), [sym_while] = ACTIONS(4674), [sym_gshared] = ACTIONS(4674), [sym_traits] = ACTIONS(4674), [sym_vector] = ACTIONS(4674), [sym_void] = ACTIONS(4674), [sym_directive] = ACTIONS(3), }, [2602] = { [ts_builtin_sym_end] = ACTIONS(5018), [sym_identifier] = ACTIONS(5016), [sym_end_file] = ACTIONS(5016), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5018), [anon_sym_SEMI] = ACTIONS(5018), [anon_sym_TILDE] = ACTIONS(5018), [anon_sym_AT] = ACTIONS(5018), [sym_bool] = ACTIONS(5016), [sym_byte] = ACTIONS(5016), [sym_ubyte] = ACTIONS(5016), [sym_char] = ACTIONS(5016), [sym_short] = ACTIONS(5016), [sym_ushort] = ACTIONS(5016), [sym_int] = ACTIONS(5016), [sym_uint] = ACTIONS(5016), [sym_long] = ACTIONS(5016), [sym_ulong] = ACTIONS(5016), [sym_cent] = ACTIONS(5016), [sym_ucent] = ACTIONS(5016), [sym_wchar] = ACTIONS(5016), [sym_dchar] = ACTIONS(5016), [sym_float] = ACTIONS(5016), [sym_double] = ACTIONS(5016), [sym_real] = ACTIONS(5016), [sym_ifloat] = ACTIONS(5016), [sym_idouble] = ACTIONS(5016), [sym_ireal] = ACTIONS(5016), [sym_cfloat] = ACTIONS(5016), [sym_cdouble] = ACTIONS(5016), [sym_creal] = ACTIONS(5016), [sym_size_t] = ACTIONS(5016), [sym_ptrdiff_t] = ACTIONS(5016), [sym_string] = ACTIONS(5016), [sym_cstring] = ACTIONS(5016), [sym_dstring] = ACTIONS(5016), [sym_wstring] = ACTIONS(5016), [sym_noreturn] = ACTIONS(5016), [sym_this] = ACTIONS(5016), [sym_abstract] = ACTIONS(5016), [sym_alias] = ACTIONS(5016), [sym_align] = ACTIONS(5016), [sym_auto] = ACTIONS(5016), [sym_class] = ACTIONS(5016), [sym_const] = ACTIONS(5016), [sym_debug] = ACTIONS(5016), [sym_deprecated] = ACTIONS(5016), [sym_else] = ACTIONS(5016), [sym_enum] = ACTIONS(5016), [sym_export] = ACTIONS(5016), [sym_extern] = ACTIONS(5016), [sym_final] = ACTIONS(5016), [sym_immutable] = ACTIONS(5016), [sym_import] = ACTIONS(5016), [sym_inout] = ACTIONS(5016), [sym_interface] = ACTIONS(5016), [sym_invariant] = ACTIONS(5016), [sym_mixin] = ACTIONS(5016), [sym_nothrow] = ACTIONS(5016), [sym_override] = ACTIONS(5016), [sym_package] = ACTIONS(5016), [sym_pragma] = ACTIONS(5016), [sym_private] = ACTIONS(5016), [sym_protected] = ACTIONS(5016), [sym_public] = ACTIONS(5016), [sym_pure] = ACTIONS(5016), [sym_ref] = ACTIONS(5016), [sym_return] = ACTIONS(5016), [sym_scope] = ACTIONS(5016), [sym_shared] = ACTIONS(5016), [sym_static] = ACTIONS(5016), [sym_struct] = ACTIONS(5016), [sym_synchronized] = ACTIONS(5016), [sym_template] = ACTIONS(5016), [sym_typeof] = ACTIONS(5016), [sym_union] = ACTIONS(5016), [sym_unittest] = ACTIONS(5016), [sym_version] = ACTIONS(5016), [sym_while] = ACTIONS(5016), [sym_gshared] = ACTIONS(5016), [sym_traits] = ACTIONS(5016), [sym_vector] = ACTIONS(5016), [sym_void] = ACTIONS(5016), [sym_directive] = ACTIONS(3), }, [2603] = { [sym_identifier] = ACTIONS(4347), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4349), [anon_sym_SEMI] = ACTIONS(4349), [anon_sym_TILDE] = ACTIONS(4349), [anon_sym_AT] = ACTIONS(4349), [sym_bool] = ACTIONS(4347), [sym_byte] = ACTIONS(4347), [sym_ubyte] = ACTIONS(4347), [sym_char] = ACTIONS(4347), [sym_short] = ACTIONS(4347), [sym_ushort] = ACTIONS(4347), [sym_int] = ACTIONS(4347), [sym_uint] = ACTIONS(4347), [sym_long] = ACTIONS(4347), [sym_ulong] = ACTIONS(4347), [sym_cent] = ACTIONS(4347), [sym_ucent] = ACTIONS(4347), [sym_wchar] = ACTIONS(4347), [sym_dchar] = ACTIONS(4347), [sym_float] = ACTIONS(4347), [sym_double] = ACTIONS(4347), [sym_real] = ACTIONS(4347), [sym_ifloat] = ACTIONS(4347), [sym_idouble] = ACTIONS(4347), [sym_ireal] = ACTIONS(4347), [sym_cfloat] = ACTIONS(4347), [sym_cdouble] = ACTIONS(4347), [sym_creal] = ACTIONS(4347), [sym_size_t] = ACTIONS(4347), [sym_ptrdiff_t] = ACTIONS(4347), [sym_string] = ACTIONS(4347), [sym_cstring] = ACTIONS(4347), [sym_dstring] = ACTIONS(4347), [sym_wstring] = ACTIONS(4347), [sym_noreturn] = ACTIONS(4347), [sym_this] = ACTIONS(4347), [sym_abstract] = ACTIONS(4347), [sym_alias] = ACTIONS(4347), [sym_align] = ACTIONS(4347), [sym_auto] = ACTIONS(4347), [sym_catch] = ACTIONS(4347), [sym_class] = ACTIONS(4347), [sym_const] = ACTIONS(4347), [sym_debug] = ACTIONS(4347), [sym_deprecated] = ACTIONS(4347), [sym_else] = ACTIONS(4347), [sym_enum] = ACTIONS(4347), [sym_export] = ACTIONS(4347), [sym_extern] = ACTIONS(4347), [sym_final] = ACTIONS(4347), [sym_finally] = ACTIONS(4347), [sym_immutable] = ACTIONS(4347), [sym_import] = ACTIONS(4347), [sym_inout] = ACTIONS(4347), [sym_interface] = ACTIONS(4347), [sym_invariant] = ACTIONS(4347), [sym_mixin] = ACTIONS(4347), [sym_nothrow] = ACTIONS(4347), [sym_override] = ACTIONS(4347), [sym_package] = ACTIONS(4347), [sym_pragma] = ACTIONS(4347), [sym_private] = ACTIONS(4347), [sym_protected] = ACTIONS(4347), [sym_public] = ACTIONS(4347), [sym_pure] = ACTIONS(4347), [sym_ref] = ACTIONS(4347), [sym_return] = ACTIONS(4347), [sym_scope] = ACTIONS(4347), [sym_shared] = ACTIONS(4347), [sym_static] = ACTIONS(4347), [sym_struct] = ACTIONS(4347), [sym_synchronized] = ACTIONS(4347), [sym_template] = ACTIONS(4347), [sym_typeof] = ACTIONS(4347), [sym_union] = ACTIONS(4347), [sym_unittest] = ACTIONS(4347), [sym_version] = ACTIONS(4347), [sym_while] = ACTIONS(4347), [sym_gshared] = ACTIONS(4347), [sym_traits] = ACTIONS(4347), [sym_vector] = ACTIONS(4347), [sym_void] = ACTIONS(4347), [sym_directive] = ACTIONS(3), }, [2604] = { [ts_builtin_sym_end] = ACTIONS(5006), [sym_identifier] = ACTIONS(5004), [sym_end_file] = ACTIONS(5004), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5006), [anon_sym_SEMI] = ACTIONS(5006), [anon_sym_TILDE] = ACTIONS(5006), [anon_sym_AT] = ACTIONS(5006), [sym_bool] = ACTIONS(5004), [sym_byte] = ACTIONS(5004), [sym_ubyte] = ACTIONS(5004), [sym_char] = ACTIONS(5004), [sym_short] = ACTIONS(5004), [sym_ushort] = ACTIONS(5004), [sym_int] = ACTIONS(5004), [sym_uint] = ACTIONS(5004), [sym_long] = ACTIONS(5004), [sym_ulong] = ACTIONS(5004), [sym_cent] = ACTIONS(5004), [sym_ucent] = ACTIONS(5004), [sym_wchar] = ACTIONS(5004), [sym_dchar] = ACTIONS(5004), [sym_float] = ACTIONS(5004), [sym_double] = ACTIONS(5004), [sym_real] = ACTIONS(5004), [sym_ifloat] = ACTIONS(5004), [sym_idouble] = ACTIONS(5004), [sym_ireal] = ACTIONS(5004), [sym_cfloat] = ACTIONS(5004), [sym_cdouble] = ACTIONS(5004), [sym_creal] = ACTIONS(5004), [sym_size_t] = ACTIONS(5004), [sym_ptrdiff_t] = ACTIONS(5004), [sym_string] = ACTIONS(5004), [sym_cstring] = ACTIONS(5004), [sym_dstring] = ACTIONS(5004), [sym_wstring] = ACTIONS(5004), [sym_noreturn] = ACTIONS(5004), [sym_this] = ACTIONS(5004), [sym_abstract] = ACTIONS(5004), [sym_alias] = ACTIONS(5004), [sym_align] = ACTIONS(5004), [sym_auto] = ACTIONS(5004), [sym_class] = ACTIONS(5004), [sym_const] = ACTIONS(5004), [sym_debug] = ACTIONS(5004), [sym_deprecated] = ACTIONS(5004), [sym_else] = ACTIONS(5004), [sym_enum] = ACTIONS(5004), [sym_export] = ACTIONS(5004), [sym_extern] = ACTIONS(5004), [sym_final] = ACTIONS(5004), [sym_immutable] = ACTIONS(5004), [sym_import] = ACTIONS(5004), [sym_inout] = ACTIONS(5004), [sym_interface] = ACTIONS(5004), [sym_invariant] = ACTIONS(5004), [sym_mixin] = ACTIONS(5004), [sym_nothrow] = ACTIONS(5004), [sym_override] = ACTIONS(5004), [sym_package] = ACTIONS(5004), [sym_pragma] = ACTIONS(5004), [sym_private] = ACTIONS(5004), [sym_protected] = ACTIONS(5004), [sym_public] = ACTIONS(5004), [sym_pure] = ACTIONS(5004), [sym_ref] = ACTIONS(5004), [sym_return] = ACTIONS(5004), [sym_scope] = ACTIONS(5004), [sym_shared] = ACTIONS(5004), [sym_static] = ACTIONS(5004), [sym_struct] = ACTIONS(5004), [sym_synchronized] = ACTIONS(5004), [sym_template] = ACTIONS(5004), [sym_typeof] = ACTIONS(5004), [sym_union] = ACTIONS(5004), [sym_unittest] = ACTIONS(5004), [sym_version] = ACTIONS(5004), [sym_while] = ACTIONS(5004), [sym_gshared] = ACTIONS(5004), [sym_traits] = ACTIONS(5004), [sym_vector] = ACTIONS(5004), [sym_void] = ACTIONS(5004), [sym_directive] = ACTIONS(3), }, [2605] = { [ts_builtin_sym_end] = ACTIONS(5022), [sym_identifier] = ACTIONS(5020), [sym_end_file] = ACTIONS(5020), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5022), [anon_sym_SEMI] = ACTIONS(5022), [anon_sym_TILDE] = ACTIONS(5022), [anon_sym_AT] = ACTIONS(5022), [sym_bool] = ACTIONS(5020), [sym_byte] = ACTIONS(5020), [sym_ubyte] = ACTIONS(5020), [sym_char] = ACTIONS(5020), [sym_short] = ACTIONS(5020), [sym_ushort] = ACTIONS(5020), [sym_int] = ACTIONS(5020), [sym_uint] = ACTIONS(5020), [sym_long] = ACTIONS(5020), [sym_ulong] = ACTIONS(5020), [sym_cent] = ACTIONS(5020), [sym_ucent] = ACTIONS(5020), [sym_wchar] = ACTIONS(5020), [sym_dchar] = ACTIONS(5020), [sym_float] = ACTIONS(5020), [sym_double] = ACTIONS(5020), [sym_real] = ACTIONS(5020), [sym_ifloat] = ACTIONS(5020), [sym_idouble] = ACTIONS(5020), [sym_ireal] = ACTIONS(5020), [sym_cfloat] = ACTIONS(5020), [sym_cdouble] = ACTIONS(5020), [sym_creal] = ACTIONS(5020), [sym_size_t] = ACTIONS(5020), [sym_ptrdiff_t] = ACTIONS(5020), [sym_string] = ACTIONS(5020), [sym_cstring] = ACTIONS(5020), [sym_dstring] = ACTIONS(5020), [sym_wstring] = ACTIONS(5020), [sym_noreturn] = ACTIONS(5020), [sym_this] = ACTIONS(5020), [sym_abstract] = ACTIONS(5020), [sym_alias] = ACTIONS(5020), [sym_align] = ACTIONS(5020), [sym_auto] = ACTIONS(5020), [sym_class] = ACTIONS(5020), [sym_const] = ACTIONS(5020), [sym_debug] = ACTIONS(5020), [sym_deprecated] = ACTIONS(5020), [sym_else] = ACTIONS(5020), [sym_enum] = ACTIONS(5020), [sym_export] = ACTIONS(5020), [sym_extern] = ACTIONS(5020), [sym_final] = ACTIONS(5020), [sym_immutable] = ACTIONS(5020), [sym_import] = ACTIONS(5020), [sym_inout] = ACTIONS(5020), [sym_interface] = ACTIONS(5020), [sym_invariant] = ACTIONS(5020), [sym_mixin] = ACTIONS(5020), [sym_nothrow] = ACTIONS(5020), [sym_override] = ACTIONS(5020), [sym_package] = ACTIONS(5020), [sym_pragma] = ACTIONS(5020), [sym_private] = ACTIONS(5020), [sym_protected] = ACTIONS(5020), [sym_public] = ACTIONS(5020), [sym_pure] = ACTIONS(5020), [sym_ref] = ACTIONS(5020), [sym_return] = ACTIONS(5020), [sym_scope] = ACTIONS(5020), [sym_shared] = ACTIONS(5020), [sym_static] = ACTIONS(5020), [sym_struct] = ACTIONS(5020), [sym_synchronized] = ACTIONS(5020), [sym_template] = ACTIONS(5020), [sym_typeof] = ACTIONS(5020), [sym_union] = ACTIONS(5020), [sym_unittest] = ACTIONS(5020), [sym_version] = ACTIONS(5020), [sym_while] = ACTIONS(5020), [sym_gshared] = ACTIONS(5020), [sym_traits] = ACTIONS(5020), [sym_vector] = ACTIONS(5020), [sym_void] = ACTIONS(5020), [sym_directive] = ACTIONS(3), }, [2606] = { [sym_identifier] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [anon_sym_AT] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_abstract] = ACTIONS(4446), [sym_alias] = ACTIONS(4446), [sym_align] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_catch] = ACTIONS(4446), [sym_class] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_debug] = ACTIONS(4446), [sym_deprecated] = ACTIONS(4446), [sym_else] = ACTIONS(6787), [sym_enum] = ACTIONS(4446), [sym_export] = ACTIONS(4446), [sym_extern] = ACTIONS(4446), [sym_final] = ACTIONS(4446), [sym_finally] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_interface] = ACTIONS(4446), [sym_invariant] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_nothrow] = ACTIONS(4446), [sym_override] = ACTIONS(4446), [sym_package] = ACTIONS(4446), [sym_pragma] = ACTIONS(4446), [sym_private] = ACTIONS(4446), [sym_protected] = ACTIONS(4446), [sym_public] = ACTIONS(4446), [sym_pure] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_return] = ACTIONS(4446), [sym_scope] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_static] = ACTIONS(4446), [sym_struct] = ACTIONS(4446), [sym_synchronized] = ACTIONS(4446), [sym_template] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_union] = ACTIONS(4446), [sym_unittest] = ACTIONS(4446), [sym_version] = ACTIONS(4446), [sym_while] = ACTIONS(4446), [sym_gshared] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [sym_directive] = ACTIONS(3), }, [2607] = { [sym_identifier] = ACTIONS(4484), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4486), [anon_sym_SEMI] = ACTIONS(4486), [anon_sym_TILDE] = ACTIONS(4486), [anon_sym_AT] = ACTIONS(4486), [sym_bool] = ACTIONS(4484), [sym_byte] = ACTIONS(4484), [sym_ubyte] = ACTIONS(4484), [sym_char] = ACTIONS(4484), [sym_short] = ACTIONS(4484), [sym_ushort] = ACTIONS(4484), [sym_int] = ACTIONS(4484), [sym_uint] = ACTIONS(4484), [sym_long] = ACTIONS(4484), [sym_ulong] = ACTIONS(4484), [sym_cent] = ACTIONS(4484), [sym_ucent] = ACTIONS(4484), [sym_wchar] = ACTIONS(4484), [sym_dchar] = ACTIONS(4484), [sym_float] = ACTIONS(4484), [sym_double] = ACTIONS(4484), [sym_real] = ACTIONS(4484), [sym_ifloat] = ACTIONS(4484), [sym_idouble] = ACTIONS(4484), [sym_ireal] = ACTIONS(4484), [sym_cfloat] = ACTIONS(4484), [sym_cdouble] = ACTIONS(4484), [sym_creal] = ACTIONS(4484), [sym_size_t] = ACTIONS(4484), [sym_ptrdiff_t] = ACTIONS(4484), [sym_string] = ACTIONS(4484), [sym_cstring] = ACTIONS(4484), [sym_dstring] = ACTIONS(4484), [sym_wstring] = ACTIONS(4484), [sym_noreturn] = ACTIONS(4484), [sym_this] = ACTIONS(4484), [sym_abstract] = ACTIONS(4484), [sym_alias] = ACTIONS(4484), [sym_align] = ACTIONS(4484), [sym_auto] = ACTIONS(4484), [sym_catch] = ACTIONS(4484), [sym_class] = ACTIONS(4484), [sym_const] = ACTIONS(4484), [sym_debug] = ACTIONS(4484), [sym_deprecated] = ACTIONS(4484), [sym_else] = ACTIONS(4484), [sym_enum] = ACTIONS(4484), [sym_export] = ACTIONS(4484), [sym_extern] = ACTIONS(4484), [sym_final] = ACTIONS(4484), [sym_finally] = ACTIONS(4484), [sym_immutable] = ACTIONS(4484), [sym_import] = ACTIONS(4484), [sym_inout] = ACTIONS(4484), [sym_interface] = ACTIONS(4484), [sym_invariant] = ACTIONS(4484), [sym_mixin] = ACTIONS(4484), [sym_nothrow] = ACTIONS(4484), [sym_override] = ACTIONS(4484), [sym_package] = ACTIONS(4484), [sym_pragma] = ACTIONS(4484), [sym_private] = ACTIONS(4484), [sym_protected] = ACTIONS(4484), [sym_public] = ACTIONS(4484), [sym_pure] = ACTIONS(4484), [sym_ref] = ACTIONS(4484), [sym_return] = ACTIONS(4484), [sym_scope] = ACTIONS(4484), [sym_shared] = ACTIONS(4484), [sym_static] = ACTIONS(4484), [sym_struct] = ACTIONS(4484), [sym_synchronized] = ACTIONS(4484), [sym_template] = ACTIONS(4484), [sym_typeof] = ACTIONS(4484), [sym_union] = ACTIONS(4484), [sym_unittest] = ACTIONS(4484), [sym_version] = ACTIONS(4484), [sym_while] = ACTIONS(4484), [sym_gshared] = ACTIONS(4484), [sym_traits] = ACTIONS(4484), [sym_vector] = ACTIONS(4484), [sym_void] = ACTIONS(4484), [sym_directive] = ACTIONS(3), }, [2608] = { [sym_identifier] = ACTIONS(4508), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4510), [anon_sym_SEMI] = ACTIONS(4510), [anon_sym_TILDE] = ACTIONS(4510), [anon_sym_AT] = ACTIONS(4510), [sym_bool] = ACTIONS(4508), [sym_byte] = ACTIONS(4508), [sym_ubyte] = ACTIONS(4508), [sym_char] = ACTIONS(4508), [sym_short] = ACTIONS(4508), [sym_ushort] = ACTIONS(4508), [sym_int] = ACTIONS(4508), [sym_uint] = ACTIONS(4508), [sym_long] = ACTIONS(4508), [sym_ulong] = ACTIONS(4508), [sym_cent] = ACTIONS(4508), [sym_ucent] = ACTIONS(4508), [sym_wchar] = ACTIONS(4508), [sym_dchar] = ACTIONS(4508), [sym_float] = ACTIONS(4508), [sym_double] = ACTIONS(4508), [sym_real] = ACTIONS(4508), [sym_ifloat] = ACTIONS(4508), [sym_idouble] = ACTIONS(4508), [sym_ireal] = ACTIONS(4508), [sym_cfloat] = ACTIONS(4508), [sym_cdouble] = ACTIONS(4508), [sym_creal] = ACTIONS(4508), [sym_size_t] = ACTIONS(4508), [sym_ptrdiff_t] = ACTIONS(4508), [sym_string] = ACTIONS(4508), [sym_cstring] = ACTIONS(4508), [sym_dstring] = ACTIONS(4508), [sym_wstring] = ACTIONS(4508), [sym_noreturn] = ACTIONS(4508), [sym_this] = ACTIONS(4508), [sym_abstract] = ACTIONS(4508), [sym_alias] = ACTIONS(4508), [sym_align] = ACTIONS(4508), [sym_auto] = ACTIONS(4508), [sym_catch] = ACTIONS(4508), [sym_class] = ACTIONS(4508), [sym_const] = ACTIONS(4508), [sym_debug] = ACTIONS(4508), [sym_deprecated] = ACTIONS(4508), [sym_else] = ACTIONS(4508), [sym_enum] = ACTIONS(4508), [sym_export] = ACTIONS(4508), [sym_extern] = ACTIONS(4508), [sym_final] = ACTIONS(4508), [sym_finally] = ACTIONS(4508), [sym_immutable] = ACTIONS(4508), [sym_import] = ACTIONS(4508), [sym_inout] = ACTIONS(4508), [sym_interface] = ACTIONS(4508), [sym_invariant] = ACTIONS(4508), [sym_mixin] = ACTIONS(4508), [sym_nothrow] = ACTIONS(4508), [sym_override] = ACTIONS(4508), [sym_package] = ACTIONS(4508), [sym_pragma] = ACTIONS(4508), [sym_private] = ACTIONS(4508), [sym_protected] = ACTIONS(4508), [sym_public] = ACTIONS(4508), [sym_pure] = ACTIONS(4508), [sym_ref] = ACTIONS(4508), [sym_return] = ACTIONS(4508), [sym_scope] = ACTIONS(4508), [sym_shared] = ACTIONS(4508), [sym_static] = ACTIONS(4508), [sym_struct] = ACTIONS(4508), [sym_synchronized] = ACTIONS(4508), [sym_template] = ACTIONS(4508), [sym_typeof] = ACTIONS(4508), [sym_union] = ACTIONS(4508), [sym_unittest] = ACTIONS(4508), [sym_version] = ACTIONS(4508), [sym_while] = ACTIONS(4508), [sym_gshared] = ACTIONS(4508), [sym_traits] = ACTIONS(4508), [sym_vector] = ACTIONS(4508), [sym_void] = ACTIONS(4508), [sym_directive] = ACTIONS(3), }, [2609] = { [sym_identifier] = ACTIONS(4516), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4518), [anon_sym_SEMI] = ACTIONS(4518), [anon_sym_TILDE] = ACTIONS(4518), [anon_sym_AT] = ACTIONS(4518), [sym_bool] = ACTIONS(4516), [sym_byte] = ACTIONS(4516), [sym_ubyte] = ACTIONS(4516), [sym_char] = ACTIONS(4516), [sym_short] = ACTIONS(4516), [sym_ushort] = ACTIONS(4516), [sym_int] = ACTIONS(4516), [sym_uint] = ACTIONS(4516), [sym_long] = ACTIONS(4516), [sym_ulong] = ACTIONS(4516), [sym_cent] = ACTIONS(4516), [sym_ucent] = ACTIONS(4516), [sym_wchar] = ACTIONS(4516), [sym_dchar] = ACTIONS(4516), [sym_float] = ACTIONS(4516), [sym_double] = ACTIONS(4516), [sym_real] = ACTIONS(4516), [sym_ifloat] = ACTIONS(4516), [sym_idouble] = ACTIONS(4516), [sym_ireal] = ACTIONS(4516), [sym_cfloat] = ACTIONS(4516), [sym_cdouble] = ACTIONS(4516), [sym_creal] = ACTIONS(4516), [sym_size_t] = ACTIONS(4516), [sym_ptrdiff_t] = ACTIONS(4516), [sym_string] = ACTIONS(4516), [sym_cstring] = ACTIONS(4516), [sym_dstring] = ACTIONS(4516), [sym_wstring] = ACTIONS(4516), [sym_noreturn] = ACTIONS(4516), [sym_this] = ACTIONS(4516), [sym_abstract] = ACTIONS(4516), [sym_alias] = ACTIONS(4516), [sym_align] = ACTIONS(4516), [sym_auto] = ACTIONS(4516), [sym_catch] = ACTIONS(4516), [sym_class] = ACTIONS(4516), [sym_const] = ACTIONS(4516), [sym_debug] = ACTIONS(4516), [sym_deprecated] = ACTIONS(4516), [sym_else] = ACTIONS(4516), [sym_enum] = ACTIONS(4516), [sym_export] = ACTIONS(4516), [sym_extern] = ACTIONS(4516), [sym_final] = ACTIONS(4516), [sym_finally] = ACTIONS(4516), [sym_immutable] = ACTIONS(4516), [sym_import] = ACTIONS(4516), [sym_inout] = ACTIONS(4516), [sym_interface] = ACTIONS(4516), [sym_invariant] = ACTIONS(4516), [sym_mixin] = ACTIONS(4516), [sym_nothrow] = ACTIONS(4516), [sym_override] = ACTIONS(4516), [sym_package] = ACTIONS(4516), [sym_pragma] = ACTIONS(4516), [sym_private] = ACTIONS(4516), [sym_protected] = ACTIONS(4516), [sym_public] = ACTIONS(4516), [sym_pure] = ACTIONS(4516), [sym_ref] = ACTIONS(4516), [sym_return] = ACTIONS(4516), [sym_scope] = ACTIONS(4516), [sym_shared] = ACTIONS(4516), [sym_static] = ACTIONS(4516), [sym_struct] = ACTIONS(4516), [sym_synchronized] = ACTIONS(4516), [sym_template] = ACTIONS(4516), [sym_typeof] = ACTIONS(4516), [sym_union] = ACTIONS(4516), [sym_unittest] = ACTIONS(4516), [sym_version] = ACTIONS(4516), [sym_while] = ACTIONS(4516), [sym_gshared] = ACTIONS(4516), [sym_traits] = ACTIONS(4516), [sym_vector] = ACTIONS(4516), [sym_void] = ACTIONS(4516), [sym_directive] = ACTIONS(3), }, [2610] = { [sym_identifier] = ACTIONS(4528), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4531), [anon_sym_SEMI] = ACTIONS(4531), [anon_sym_TILDE] = ACTIONS(4531), [anon_sym_AT] = ACTIONS(4531), [sym_bool] = ACTIONS(4528), [sym_byte] = ACTIONS(4528), [sym_ubyte] = ACTIONS(4528), [sym_char] = ACTIONS(4528), [sym_short] = ACTIONS(4528), [sym_ushort] = ACTIONS(4528), [sym_int] = ACTIONS(4528), [sym_uint] = ACTIONS(4528), [sym_long] = ACTIONS(4528), [sym_ulong] = ACTIONS(4528), [sym_cent] = ACTIONS(4528), [sym_ucent] = ACTIONS(4528), [sym_wchar] = ACTIONS(4528), [sym_dchar] = ACTIONS(4528), [sym_float] = ACTIONS(4528), [sym_double] = ACTIONS(4528), [sym_real] = ACTIONS(4528), [sym_ifloat] = ACTIONS(4528), [sym_idouble] = ACTIONS(4528), [sym_ireal] = ACTIONS(4528), [sym_cfloat] = ACTIONS(4528), [sym_cdouble] = ACTIONS(4528), [sym_creal] = ACTIONS(4528), [sym_size_t] = ACTIONS(4528), [sym_ptrdiff_t] = ACTIONS(4528), [sym_string] = ACTIONS(4528), [sym_cstring] = ACTIONS(4528), [sym_dstring] = ACTIONS(4528), [sym_wstring] = ACTIONS(4528), [sym_noreturn] = ACTIONS(4528), [sym_this] = ACTIONS(4528), [sym_abstract] = ACTIONS(4528), [sym_alias] = ACTIONS(4528), [sym_align] = ACTIONS(4528), [sym_auto] = ACTIONS(4528), [sym_catch] = ACTIONS(4528), [sym_class] = ACTIONS(4528), [sym_const] = ACTIONS(4528), [sym_debug] = ACTIONS(4528), [sym_deprecated] = ACTIONS(4528), [sym_else] = ACTIONS(4528), [sym_enum] = ACTIONS(4528), [sym_export] = ACTIONS(4528), [sym_extern] = ACTIONS(4528), [sym_final] = ACTIONS(4528), [sym_finally] = ACTIONS(4528), [sym_immutable] = ACTIONS(4528), [sym_import] = ACTIONS(4528), [sym_inout] = ACTIONS(4528), [sym_interface] = ACTIONS(4528), [sym_invariant] = ACTIONS(4528), [sym_mixin] = ACTIONS(4528), [sym_nothrow] = ACTIONS(4528), [sym_override] = ACTIONS(4528), [sym_package] = ACTIONS(4528), [sym_pragma] = ACTIONS(4528), [sym_private] = ACTIONS(4528), [sym_protected] = ACTIONS(4528), [sym_public] = ACTIONS(4528), [sym_pure] = ACTIONS(4528), [sym_ref] = ACTIONS(4528), [sym_return] = ACTIONS(4528), [sym_scope] = ACTIONS(4528), [sym_shared] = ACTIONS(4528), [sym_static] = ACTIONS(4528), [sym_struct] = ACTIONS(4528), [sym_synchronized] = ACTIONS(4528), [sym_template] = ACTIONS(4528), [sym_typeof] = ACTIONS(4528), [sym_union] = ACTIONS(4528), [sym_unittest] = ACTIONS(4528), [sym_version] = ACTIONS(4528), [sym_while] = ACTIONS(4528), [sym_gshared] = ACTIONS(4528), [sym_traits] = ACTIONS(4528), [sym_vector] = ACTIONS(4528), [sym_void] = ACTIONS(4528), [sym_directive] = ACTIONS(3), }, [2611] = { [sym_identifier] = ACTIONS(4488), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4490), [anon_sym_SEMI] = ACTIONS(4490), [anon_sym_TILDE] = ACTIONS(4490), [anon_sym_AT] = ACTIONS(4490), [sym_bool] = ACTIONS(4488), [sym_byte] = ACTIONS(4488), [sym_ubyte] = ACTIONS(4488), [sym_char] = ACTIONS(4488), [sym_short] = ACTIONS(4488), [sym_ushort] = ACTIONS(4488), [sym_int] = ACTIONS(4488), [sym_uint] = ACTIONS(4488), [sym_long] = ACTIONS(4488), [sym_ulong] = ACTIONS(4488), [sym_cent] = ACTIONS(4488), [sym_ucent] = ACTIONS(4488), [sym_wchar] = ACTIONS(4488), [sym_dchar] = ACTIONS(4488), [sym_float] = ACTIONS(4488), [sym_double] = ACTIONS(4488), [sym_real] = ACTIONS(4488), [sym_ifloat] = ACTIONS(4488), [sym_idouble] = ACTIONS(4488), [sym_ireal] = ACTIONS(4488), [sym_cfloat] = ACTIONS(4488), [sym_cdouble] = ACTIONS(4488), [sym_creal] = ACTIONS(4488), [sym_size_t] = ACTIONS(4488), [sym_ptrdiff_t] = ACTIONS(4488), [sym_string] = ACTIONS(4488), [sym_cstring] = ACTIONS(4488), [sym_dstring] = ACTIONS(4488), [sym_wstring] = ACTIONS(4488), [sym_noreturn] = ACTIONS(4488), [sym_this] = ACTIONS(4488), [sym_abstract] = ACTIONS(4488), [sym_alias] = ACTIONS(4488), [sym_align] = ACTIONS(4488), [sym_auto] = ACTIONS(4488), [sym_catch] = ACTIONS(4488), [sym_class] = ACTIONS(4488), [sym_const] = ACTIONS(4488), [sym_debug] = ACTIONS(4488), [sym_deprecated] = ACTIONS(4488), [sym_else] = ACTIONS(4488), [sym_enum] = ACTIONS(4488), [sym_export] = ACTIONS(4488), [sym_extern] = ACTIONS(4488), [sym_final] = ACTIONS(4488), [sym_finally] = ACTIONS(4488), [sym_immutable] = ACTIONS(4488), [sym_import] = ACTIONS(4488), [sym_inout] = ACTIONS(4488), [sym_interface] = ACTIONS(4488), [sym_invariant] = ACTIONS(4488), [sym_mixin] = ACTIONS(4488), [sym_nothrow] = ACTIONS(4488), [sym_override] = ACTIONS(4488), [sym_package] = ACTIONS(4488), [sym_pragma] = ACTIONS(4488), [sym_private] = ACTIONS(4488), [sym_protected] = ACTIONS(4488), [sym_public] = ACTIONS(4488), [sym_pure] = ACTIONS(4488), [sym_ref] = ACTIONS(4488), [sym_return] = ACTIONS(4488), [sym_scope] = ACTIONS(4488), [sym_shared] = ACTIONS(4488), [sym_static] = ACTIONS(4488), [sym_struct] = ACTIONS(4488), [sym_synchronized] = ACTIONS(4488), [sym_template] = ACTIONS(4488), [sym_typeof] = ACTIONS(4488), [sym_union] = ACTIONS(4488), [sym_unittest] = ACTIONS(4488), [sym_version] = ACTIONS(4488), [sym_while] = ACTIONS(4488), [sym_gshared] = ACTIONS(4488), [sym_traits] = ACTIONS(4488), [sym_vector] = ACTIONS(4488), [sym_void] = ACTIONS(4488), [sym_directive] = ACTIONS(3), }, [2612] = { [sym_identifier] = ACTIONS(4542), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4544), [anon_sym_SEMI] = ACTIONS(4544), [anon_sym_TILDE] = ACTIONS(4544), [anon_sym_AT] = ACTIONS(4544), [sym_bool] = ACTIONS(4542), [sym_byte] = ACTIONS(4542), [sym_ubyte] = ACTIONS(4542), [sym_char] = ACTIONS(4542), [sym_short] = ACTIONS(4542), [sym_ushort] = ACTIONS(4542), [sym_int] = ACTIONS(4542), [sym_uint] = ACTIONS(4542), [sym_long] = ACTIONS(4542), [sym_ulong] = ACTIONS(4542), [sym_cent] = ACTIONS(4542), [sym_ucent] = ACTIONS(4542), [sym_wchar] = ACTIONS(4542), [sym_dchar] = ACTIONS(4542), [sym_float] = ACTIONS(4542), [sym_double] = ACTIONS(4542), [sym_real] = ACTIONS(4542), [sym_ifloat] = ACTIONS(4542), [sym_idouble] = ACTIONS(4542), [sym_ireal] = ACTIONS(4542), [sym_cfloat] = ACTIONS(4542), [sym_cdouble] = ACTIONS(4542), [sym_creal] = ACTIONS(4542), [sym_size_t] = ACTIONS(4542), [sym_ptrdiff_t] = ACTIONS(4542), [sym_string] = ACTIONS(4542), [sym_cstring] = ACTIONS(4542), [sym_dstring] = ACTIONS(4542), [sym_wstring] = ACTIONS(4542), [sym_noreturn] = ACTIONS(4542), [sym_this] = ACTIONS(4542), [sym_abstract] = ACTIONS(4542), [sym_alias] = ACTIONS(4542), [sym_align] = ACTIONS(4542), [sym_auto] = ACTIONS(4542), [sym_catch] = ACTIONS(4542), [sym_class] = ACTIONS(4542), [sym_const] = ACTIONS(4542), [sym_debug] = ACTIONS(4542), [sym_deprecated] = ACTIONS(4542), [sym_else] = ACTIONS(4542), [sym_enum] = ACTIONS(4542), [sym_export] = ACTIONS(4542), [sym_extern] = ACTIONS(4542), [sym_final] = ACTIONS(4542), [sym_finally] = ACTIONS(4542), [sym_immutable] = ACTIONS(4542), [sym_import] = ACTIONS(4542), [sym_inout] = ACTIONS(4542), [sym_interface] = ACTIONS(4542), [sym_invariant] = ACTIONS(4542), [sym_mixin] = ACTIONS(4542), [sym_nothrow] = ACTIONS(4542), [sym_override] = ACTIONS(4542), [sym_package] = ACTIONS(4542), [sym_pragma] = ACTIONS(4542), [sym_private] = ACTIONS(4542), [sym_protected] = ACTIONS(4542), [sym_public] = ACTIONS(4542), [sym_pure] = ACTIONS(4542), [sym_ref] = ACTIONS(4542), [sym_return] = ACTIONS(4542), [sym_scope] = ACTIONS(4542), [sym_shared] = ACTIONS(4542), [sym_static] = ACTIONS(4542), [sym_struct] = ACTIONS(4542), [sym_synchronized] = ACTIONS(4542), [sym_template] = ACTIONS(4542), [sym_typeof] = ACTIONS(4542), [sym_union] = ACTIONS(4542), [sym_unittest] = ACTIONS(4542), [sym_version] = ACTIONS(4542), [sym_while] = ACTIONS(4542), [sym_gshared] = ACTIONS(4542), [sym_traits] = ACTIONS(4542), [sym_vector] = ACTIONS(4542), [sym_void] = ACTIONS(4542), [sym_directive] = ACTIONS(3), }, [2613] = { [sym_identifier] = ACTIONS(4550), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4552), [anon_sym_SEMI] = ACTIONS(4552), [anon_sym_TILDE] = ACTIONS(4552), [anon_sym_AT] = ACTIONS(4552), [sym_bool] = ACTIONS(4550), [sym_byte] = ACTIONS(4550), [sym_ubyte] = ACTIONS(4550), [sym_char] = ACTIONS(4550), [sym_short] = ACTIONS(4550), [sym_ushort] = ACTIONS(4550), [sym_int] = ACTIONS(4550), [sym_uint] = ACTIONS(4550), [sym_long] = ACTIONS(4550), [sym_ulong] = ACTIONS(4550), [sym_cent] = ACTIONS(4550), [sym_ucent] = ACTIONS(4550), [sym_wchar] = ACTIONS(4550), [sym_dchar] = ACTIONS(4550), [sym_float] = ACTIONS(4550), [sym_double] = ACTIONS(4550), [sym_real] = ACTIONS(4550), [sym_ifloat] = ACTIONS(4550), [sym_idouble] = ACTIONS(4550), [sym_ireal] = ACTIONS(4550), [sym_cfloat] = ACTIONS(4550), [sym_cdouble] = ACTIONS(4550), [sym_creal] = ACTIONS(4550), [sym_size_t] = ACTIONS(4550), [sym_ptrdiff_t] = ACTIONS(4550), [sym_string] = ACTIONS(4550), [sym_cstring] = ACTIONS(4550), [sym_dstring] = ACTIONS(4550), [sym_wstring] = ACTIONS(4550), [sym_noreturn] = ACTIONS(4550), [sym_this] = ACTIONS(4550), [sym_abstract] = ACTIONS(4550), [sym_alias] = ACTIONS(4550), [sym_align] = ACTIONS(4550), [sym_auto] = ACTIONS(4550), [sym_catch] = ACTIONS(4550), [sym_class] = ACTIONS(4550), [sym_const] = ACTIONS(4550), [sym_debug] = ACTIONS(4550), [sym_deprecated] = ACTIONS(4550), [sym_else] = ACTIONS(4550), [sym_enum] = ACTIONS(4550), [sym_export] = ACTIONS(4550), [sym_extern] = ACTIONS(4550), [sym_final] = ACTIONS(4550), [sym_finally] = ACTIONS(4550), [sym_immutable] = ACTIONS(4550), [sym_import] = ACTIONS(4550), [sym_inout] = ACTIONS(4550), [sym_interface] = ACTIONS(4550), [sym_invariant] = ACTIONS(4550), [sym_mixin] = ACTIONS(4550), [sym_nothrow] = ACTIONS(4550), [sym_override] = ACTIONS(4550), [sym_package] = ACTIONS(4550), [sym_pragma] = ACTIONS(4550), [sym_private] = ACTIONS(4550), [sym_protected] = ACTIONS(4550), [sym_public] = ACTIONS(4550), [sym_pure] = ACTIONS(4550), [sym_ref] = ACTIONS(4550), [sym_return] = ACTIONS(4550), [sym_scope] = ACTIONS(4550), [sym_shared] = ACTIONS(4550), [sym_static] = ACTIONS(4550), [sym_struct] = ACTIONS(4550), [sym_synchronized] = ACTIONS(4550), [sym_template] = ACTIONS(4550), [sym_typeof] = ACTIONS(4550), [sym_union] = ACTIONS(4550), [sym_unittest] = ACTIONS(4550), [sym_version] = ACTIONS(4550), [sym_while] = ACTIONS(4550), [sym_gshared] = ACTIONS(4550), [sym_traits] = ACTIONS(4550), [sym_vector] = ACTIONS(4550), [sym_void] = ACTIONS(4550), [sym_directive] = ACTIONS(3), }, [2614] = { [sym_identifier] = ACTIONS(4456), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4458), [anon_sym_SEMI] = ACTIONS(4458), [anon_sym_TILDE] = ACTIONS(4458), [anon_sym_AT] = ACTIONS(4458), [sym_bool] = ACTIONS(4456), [sym_byte] = ACTIONS(4456), [sym_ubyte] = ACTIONS(4456), [sym_char] = ACTIONS(4456), [sym_short] = ACTIONS(4456), [sym_ushort] = ACTIONS(4456), [sym_int] = ACTIONS(4456), [sym_uint] = ACTIONS(4456), [sym_long] = ACTIONS(4456), [sym_ulong] = ACTIONS(4456), [sym_cent] = ACTIONS(4456), [sym_ucent] = ACTIONS(4456), [sym_wchar] = ACTIONS(4456), [sym_dchar] = ACTIONS(4456), [sym_float] = ACTIONS(4456), [sym_double] = ACTIONS(4456), [sym_real] = ACTIONS(4456), [sym_ifloat] = ACTIONS(4456), [sym_idouble] = ACTIONS(4456), [sym_ireal] = ACTIONS(4456), [sym_cfloat] = ACTIONS(4456), [sym_cdouble] = ACTIONS(4456), [sym_creal] = ACTIONS(4456), [sym_size_t] = ACTIONS(4456), [sym_ptrdiff_t] = ACTIONS(4456), [sym_string] = ACTIONS(4456), [sym_cstring] = ACTIONS(4456), [sym_dstring] = ACTIONS(4456), [sym_wstring] = ACTIONS(4456), [sym_noreturn] = ACTIONS(4456), [sym_this] = ACTIONS(4456), [sym_abstract] = ACTIONS(4456), [sym_alias] = ACTIONS(4456), [sym_align] = ACTIONS(4456), [sym_auto] = ACTIONS(4456), [sym_catch] = ACTIONS(4456), [sym_class] = ACTIONS(4456), [sym_const] = ACTIONS(4456), [sym_debug] = ACTIONS(4456), [sym_deprecated] = ACTIONS(4456), [sym_else] = ACTIONS(4456), [sym_enum] = ACTIONS(4456), [sym_export] = ACTIONS(4456), [sym_extern] = ACTIONS(4456), [sym_final] = ACTIONS(4456), [sym_finally] = ACTIONS(4456), [sym_immutable] = ACTIONS(4456), [sym_import] = ACTIONS(4456), [sym_inout] = ACTIONS(4456), [sym_interface] = ACTIONS(4456), [sym_invariant] = ACTIONS(4456), [sym_mixin] = ACTIONS(4456), [sym_nothrow] = ACTIONS(4456), [sym_override] = ACTIONS(4456), [sym_package] = ACTIONS(4456), [sym_pragma] = ACTIONS(4456), [sym_private] = ACTIONS(4456), [sym_protected] = ACTIONS(4456), [sym_public] = ACTIONS(4456), [sym_pure] = ACTIONS(4456), [sym_ref] = ACTIONS(4456), [sym_return] = ACTIONS(4456), [sym_scope] = ACTIONS(4456), [sym_shared] = ACTIONS(4456), [sym_static] = ACTIONS(4456), [sym_struct] = ACTIONS(4456), [sym_synchronized] = ACTIONS(4456), [sym_template] = ACTIONS(4456), [sym_typeof] = ACTIONS(4456), [sym_union] = ACTIONS(4456), [sym_unittest] = ACTIONS(4456), [sym_version] = ACTIONS(4456), [sym_while] = ACTIONS(4456), [sym_gshared] = ACTIONS(4456), [sym_traits] = ACTIONS(4456), [sym_vector] = ACTIONS(4456), [sym_void] = ACTIONS(4456), [sym_directive] = ACTIONS(3), }, [2615] = { [sym_identifier] = ACTIONS(4558), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4560), [anon_sym_SEMI] = ACTIONS(4560), [anon_sym_TILDE] = ACTIONS(4560), [anon_sym_AT] = ACTIONS(4560), [sym_bool] = ACTIONS(4558), [sym_byte] = ACTIONS(4558), [sym_ubyte] = ACTIONS(4558), [sym_char] = ACTIONS(4558), [sym_short] = ACTIONS(4558), [sym_ushort] = ACTIONS(4558), [sym_int] = ACTIONS(4558), [sym_uint] = ACTIONS(4558), [sym_long] = ACTIONS(4558), [sym_ulong] = ACTIONS(4558), [sym_cent] = ACTIONS(4558), [sym_ucent] = ACTIONS(4558), [sym_wchar] = ACTIONS(4558), [sym_dchar] = ACTIONS(4558), [sym_float] = ACTIONS(4558), [sym_double] = ACTIONS(4558), [sym_real] = ACTIONS(4558), [sym_ifloat] = ACTIONS(4558), [sym_idouble] = ACTIONS(4558), [sym_ireal] = ACTIONS(4558), [sym_cfloat] = ACTIONS(4558), [sym_cdouble] = ACTIONS(4558), [sym_creal] = ACTIONS(4558), [sym_size_t] = ACTIONS(4558), [sym_ptrdiff_t] = ACTIONS(4558), [sym_string] = ACTIONS(4558), [sym_cstring] = ACTIONS(4558), [sym_dstring] = ACTIONS(4558), [sym_wstring] = ACTIONS(4558), [sym_noreturn] = ACTIONS(4558), [sym_this] = ACTIONS(4558), [sym_abstract] = ACTIONS(4558), [sym_alias] = ACTIONS(4558), [sym_align] = ACTIONS(4558), [sym_auto] = ACTIONS(4558), [sym_catch] = ACTIONS(4558), [sym_class] = ACTIONS(4558), [sym_const] = ACTIONS(4558), [sym_debug] = ACTIONS(4558), [sym_deprecated] = ACTIONS(4558), [sym_else] = ACTIONS(4558), [sym_enum] = ACTIONS(4558), [sym_export] = ACTIONS(4558), [sym_extern] = ACTIONS(4558), [sym_final] = ACTIONS(4558), [sym_finally] = ACTIONS(4558), [sym_immutable] = ACTIONS(4558), [sym_import] = ACTIONS(4558), [sym_inout] = ACTIONS(4558), [sym_interface] = ACTIONS(4558), [sym_invariant] = ACTIONS(4558), [sym_mixin] = ACTIONS(4558), [sym_nothrow] = ACTIONS(4558), [sym_override] = ACTIONS(4558), [sym_package] = ACTIONS(4558), [sym_pragma] = ACTIONS(4558), [sym_private] = ACTIONS(4558), [sym_protected] = ACTIONS(4558), [sym_public] = ACTIONS(4558), [sym_pure] = ACTIONS(4558), [sym_ref] = ACTIONS(4558), [sym_return] = ACTIONS(4558), [sym_scope] = ACTIONS(4558), [sym_shared] = ACTIONS(4558), [sym_static] = ACTIONS(4558), [sym_struct] = ACTIONS(4558), [sym_synchronized] = ACTIONS(4558), [sym_template] = ACTIONS(4558), [sym_typeof] = ACTIONS(4558), [sym_union] = ACTIONS(4558), [sym_unittest] = ACTIONS(4558), [sym_version] = ACTIONS(4558), [sym_while] = ACTIONS(4558), [sym_gshared] = ACTIONS(4558), [sym_traits] = ACTIONS(4558), [sym_vector] = ACTIONS(4558), [sym_void] = ACTIONS(4558), [sym_directive] = ACTIONS(3), }, [2616] = { [sym_identifier] = ACTIONS(4566), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4568), [anon_sym_SEMI] = ACTIONS(4568), [anon_sym_TILDE] = ACTIONS(4568), [anon_sym_AT] = ACTIONS(4568), [sym_bool] = ACTIONS(4566), [sym_byte] = ACTIONS(4566), [sym_ubyte] = ACTIONS(4566), [sym_char] = ACTIONS(4566), [sym_short] = ACTIONS(4566), [sym_ushort] = ACTIONS(4566), [sym_int] = ACTIONS(4566), [sym_uint] = ACTIONS(4566), [sym_long] = ACTIONS(4566), [sym_ulong] = ACTIONS(4566), [sym_cent] = ACTIONS(4566), [sym_ucent] = ACTIONS(4566), [sym_wchar] = ACTIONS(4566), [sym_dchar] = ACTIONS(4566), [sym_float] = ACTIONS(4566), [sym_double] = ACTIONS(4566), [sym_real] = ACTIONS(4566), [sym_ifloat] = ACTIONS(4566), [sym_idouble] = ACTIONS(4566), [sym_ireal] = ACTIONS(4566), [sym_cfloat] = ACTIONS(4566), [sym_cdouble] = ACTIONS(4566), [sym_creal] = ACTIONS(4566), [sym_size_t] = ACTIONS(4566), [sym_ptrdiff_t] = ACTIONS(4566), [sym_string] = ACTIONS(4566), [sym_cstring] = ACTIONS(4566), [sym_dstring] = ACTIONS(4566), [sym_wstring] = ACTIONS(4566), [sym_noreturn] = ACTIONS(4566), [sym_this] = ACTIONS(4566), [sym_abstract] = ACTIONS(4566), [sym_alias] = ACTIONS(4566), [sym_align] = ACTIONS(4566), [sym_auto] = ACTIONS(4566), [sym_catch] = ACTIONS(4566), [sym_class] = ACTIONS(4566), [sym_const] = ACTIONS(4566), [sym_debug] = ACTIONS(4566), [sym_deprecated] = ACTIONS(4566), [sym_else] = ACTIONS(4566), [sym_enum] = ACTIONS(4566), [sym_export] = ACTIONS(4566), [sym_extern] = ACTIONS(4566), [sym_final] = ACTIONS(4566), [sym_finally] = ACTIONS(4566), [sym_immutable] = ACTIONS(4566), [sym_import] = ACTIONS(4566), [sym_inout] = ACTIONS(4566), [sym_interface] = ACTIONS(4566), [sym_invariant] = ACTIONS(4566), [sym_mixin] = ACTIONS(4566), [sym_nothrow] = ACTIONS(4566), [sym_override] = ACTIONS(4566), [sym_package] = ACTIONS(4566), [sym_pragma] = ACTIONS(4566), [sym_private] = ACTIONS(4566), [sym_protected] = ACTIONS(4566), [sym_public] = ACTIONS(4566), [sym_pure] = ACTIONS(4566), [sym_ref] = ACTIONS(4566), [sym_return] = ACTIONS(4566), [sym_scope] = ACTIONS(4566), [sym_shared] = ACTIONS(4566), [sym_static] = ACTIONS(4566), [sym_struct] = ACTIONS(4566), [sym_synchronized] = ACTIONS(4566), [sym_template] = ACTIONS(4566), [sym_typeof] = ACTIONS(4566), [sym_union] = ACTIONS(4566), [sym_unittest] = ACTIONS(4566), [sym_version] = ACTIONS(4566), [sym_while] = ACTIONS(4566), [sym_gshared] = ACTIONS(4566), [sym_traits] = ACTIONS(4566), [sym_vector] = ACTIONS(4566), [sym_void] = ACTIONS(4566), [sym_directive] = ACTIONS(3), }, [2617] = { [ts_builtin_sym_end] = ACTIONS(4510), [sym_identifier] = ACTIONS(4508), [sym_end_file] = ACTIONS(4508), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4510), [anon_sym_SEMI] = ACTIONS(4510), [anon_sym_TILDE] = ACTIONS(4510), [anon_sym_AT] = ACTIONS(4510), [sym_bool] = ACTIONS(4508), [sym_byte] = ACTIONS(4508), [sym_ubyte] = ACTIONS(4508), [sym_char] = ACTIONS(4508), [sym_short] = ACTIONS(4508), [sym_ushort] = ACTIONS(4508), [sym_int] = ACTIONS(4508), [sym_uint] = ACTIONS(4508), [sym_long] = ACTIONS(4508), [sym_ulong] = ACTIONS(4508), [sym_cent] = ACTIONS(4508), [sym_ucent] = ACTIONS(4508), [sym_wchar] = ACTIONS(4508), [sym_dchar] = ACTIONS(4508), [sym_float] = ACTIONS(4508), [sym_double] = ACTIONS(4508), [sym_real] = ACTIONS(4508), [sym_ifloat] = ACTIONS(4508), [sym_idouble] = ACTIONS(4508), [sym_ireal] = ACTIONS(4508), [sym_cfloat] = ACTIONS(4508), [sym_cdouble] = ACTIONS(4508), [sym_creal] = ACTIONS(4508), [sym_size_t] = ACTIONS(4508), [sym_ptrdiff_t] = ACTIONS(4508), [sym_string] = ACTIONS(4508), [sym_cstring] = ACTIONS(4508), [sym_dstring] = ACTIONS(4508), [sym_wstring] = ACTIONS(4508), [sym_noreturn] = ACTIONS(4508), [sym_this] = ACTIONS(4508), [sym_abstract] = ACTIONS(4508), [sym_alias] = ACTIONS(4508), [sym_align] = ACTIONS(4508), [sym_auto] = ACTIONS(4508), [sym_class] = ACTIONS(4508), [sym_const] = ACTIONS(4508), [sym_debug] = ACTIONS(4508), [sym_deprecated] = ACTIONS(4508), [sym_else] = ACTIONS(4508), [sym_enum] = ACTIONS(4508), [sym_export] = ACTIONS(4508), [sym_extern] = ACTIONS(4508), [sym_final] = ACTIONS(4508), [sym_immutable] = ACTIONS(4508), [sym_import] = ACTIONS(4508), [sym_inout] = ACTIONS(4508), [sym_interface] = ACTIONS(4508), [sym_invariant] = ACTIONS(4508), [sym_mixin] = ACTIONS(4508), [sym_nothrow] = ACTIONS(4508), [sym_override] = ACTIONS(4508), [sym_package] = ACTIONS(4508), [sym_pragma] = ACTIONS(4508), [sym_private] = ACTIONS(4508), [sym_protected] = ACTIONS(4508), [sym_public] = ACTIONS(4508), [sym_pure] = ACTIONS(4508), [sym_ref] = ACTIONS(4508), [sym_return] = ACTIONS(4508), [sym_scope] = ACTIONS(4508), [sym_shared] = ACTIONS(4508), [sym_static] = ACTIONS(4508), [sym_struct] = ACTIONS(4508), [sym_synchronized] = ACTIONS(4508), [sym_template] = ACTIONS(4508), [sym_typeof] = ACTIONS(4508), [sym_union] = ACTIONS(4508), [sym_unittest] = ACTIONS(4508), [sym_version] = ACTIONS(4508), [sym_while] = ACTIONS(4508), [sym_gshared] = ACTIONS(4508), [sym_traits] = ACTIONS(4508), [sym_vector] = ACTIONS(4508), [sym_void] = ACTIONS(4508), [sym_directive] = ACTIONS(3), }, [2618] = { [sym_identifier] = ACTIONS(4492), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4494), [anon_sym_SEMI] = ACTIONS(4494), [anon_sym_TILDE] = ACTIONS(4494), [anon_sym_AT] = ACTIONS(4494), [sym_bool] = ACTIONS(4492), [sym_byte] = ACTIONS(4492), [sym_ubyte] = ACTIONS(4492), [sym_char] = ACTIONS(4492), [sym_short] = ACTIONS(4492), [sym_ushort] = ACTIONS(4492), [sym_int] = ACTIONS(4492), [sym_uint] = ACTIONS(4492), [sym_long] = ACTIONS(4492), [sym_ulong] = ACTIONS(4492), [sym_cent] = ACTIONS(4492), [sym_ucent] = ACTIONS(4492), [sym_wchar] = ACTIONS(4492), [sym_dchar] = ACTIONS(4492), [sym_float] = ACTIONS(4492), [sym_double] = ACTIONS(4492), [sym_real] = ACTIONS(4492), [sym_ifloat] = ACTIONS(4492), [sym_idouble] = ACTIONS(4492), [sym_ireal] = ACTIONS(4492), [sym_cfloat] = ACTIONS(4492), [sym_cdouble] = ACTIONS(4492), [sym_creal] = ACTIONS(4492), [sym_size_t] = ACTIONS(4492), [sym_ptrdiff_t] = ACTIONS(4492), [sym_string] = ACTIONS(4492), [sym_cstring] = ACTIONS(4492), [sym_dstring] = ACTIONS(4492), [sym_wstring] = ACTIONS(4492), [sym_noreturn] = ACTIONS(4492), [sym_this] = ACTIONS(4492), [sym_abstract] = ACTIONS(4492), [sym_alias] = ACTIONS(4492), [sym_align] = ACTIONS(4492), [sym_auto] = ACTIONS(4492), [sym_catch] = ACTIONS(4492), [sym_class] = ACTIONS(4492), [sym_const] = ACTIONS(4492), [sym_debug] = ACTIONS(4492), [sym_deprecated] = ACTIONS(4492), [sym_else] = ACTIONS(4492), [sym_enum] = ACTIONS(4492), [sym_export] = ACTIONS(4492), [sym_extern] = ACTIONS(4492), [sym_final] = ACTIONS(4492), [sym_finally] = ACTIONS(4492), [sym_immutable] = ACTIONS(4492), [sym_import] = ACTIONS(4492), [sym_inout] = ACTIONS(4492), [sym_interface] = ACTIONS(4492), [sym_invariant] = ACTIONS(4492), [sym_mixin] = ACTIONS(4492), [sym_nothrow] = ACTIONS(4492), [sym_override] = ACTIONS(4492), [sym_package] = ACTIONS(4492), [sym_pragma] = ACTIONS(4492), [sym_private] = ACTIONS(4492), [sym_protected] = ACTIONS(4492), [sym_public] = ACTIONS(4492), [sym_pure] = ACTIONS(4492), [sym_ref] = ACTIONS(4492), [sym_return] = ACTIONS(4492), [sym_scope] = ACTIONS(4492), [sym_shared] = ACTIONS(4492), [sym_static] = ACTIONS(4492), [sym_struct] = ACTIONS(4492), [sym_synchronized] = ACTIONS(4492), [sym_template] = ACTIONS(4492), [sym_typeof] = ACTIONS(4492), [sym_union] = ACTIONS(4492), [sym_unittest] = ACTIONS(4492), [sym_version] = ACTIONS(4492), [sym_while] = ACTIONS(4492), [sym_gshared] = ACTIONS(4492), [sym_traits] = ACTIONS(4492), [sym_vector] = ACTIONS(4492), [sym_void] = ACTIONS(4492), [sym_directive] = ACTIONS(3), }, [2619] = { [sym_identifier] = ACTIONS(4504), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4506), [anon_sym_SEMI] = ACTIONS(4506), [anon_sym_TILDE] = ACTIONS(4506), [anon_sym_AT] = ACTIONS(4506), [sym_bool] = ACTIONS(4504), [sym_byte] = ACTIONS(4504), [sym_ubyte] = ACTIONS(4504), [sym_char] = ACTIONS(4504), [sym_short] = ACTIONS(4504), [sym_ushort] = ACTIONS(4504), [sym_int] = ACTIONS(4504), [sym_uint] = ACTIONS(4504), [sym_long] = ACTIONS(4504), [sym_ulong] = ACTIONS(4504), [sym_cent] = ACTIONS(4504), [sym_ucent] = ACTIONS(4504), [sym_wchar] = ACTIONS(4504), [sym_dchar] = ACTIONS(4504), [sym_float] = ACTIONS(4504), [sym_double] = ACTIONS(4504), [sym_real] = ACTIONS(4504), [sym_ifloat] = ACTIONS(4504), [sym_idouble] = ACTIONS(4504), [sym_ireal] = ACTIONS(4504), [sym_cfloat] = ACTIONS(4504), [sym_cdouble] = ACTIONS(4504), [sym_creal] = ACTIONS(4504), [sym_size_t] = ACTIONS(4504), [sym_ptrdiff_t] = ACTIONS(4504), [sym_string] = ACTIONS(4504), [sym_cstring] = ACTIONS(4504), [sym_dstring] = ACTIONS(4504), [sym_wstring] = ACTIONS(4504), [sym_noreturn] = ACTIONS(4504), [sym_this] = ACTIONS(4504), [sym_abstract] = ACTIONS(4504), [sym_alias] = ACTIONS(4504), [sym_align] = ACTIONS(4504), [sym_auto] = ACTIONS(4504), [sym_catch] = ACTIONS(4504), [sym_class] = ACTIONS(4504), [sym_const] = ACTIONS(4504), [sym_debug] = ACTIONS(4504), [sym_deprecated] = ACTIONS(4504), [sym_else] = ACTIONS(4504), [sym_enum] = ACTIONS(4504), [sym_export] = ACTIONS(4504), [sym_extern] = ACTIONS(4504), [sym_final] = ACTIONS(4504), [sym_finally] = ACTIONS(4504), [sym_immutable] = ACTIONS(4504), [sym_import] = ACTIONS(4504), [sym_inout] = ACTIONS(4504), [sym_interface] = ACTIONS(4504), [sym_invariant] = ACTIONS(4504), [sym_mixin] = ACTIONS(4504), [sym_nothrow] = ACTIONS(4504), [sym_override] = ACTIONS(4504), [sym_package] = ACTIONS(4504), [sym_pragma] = ACTIONS(4504), [sym_private] = ACTIONS(4504), [sym_protected] = ACTIONS(4504), [sym_public] = ACTIONS(4504), [sym_pure] = ACTIONS(4504), [sym_ref] = ACTIONS(4504), [sym_return] = ACTIONS(4504), [sym_scope] = ACTIONS(4504), [sym_shared] = ACTIONS(4504), [sym_static] = ACTIONS(4504), [sym_struct] = ACTIONS(4504), [sym_synchronized] = ACTIONS(4504), [sym_template] = ACTIONS(4504), [sym_typeof] = ACTIONS(4504), [sym_union] = ACTIONS(4504), [sym_unittest] = ACTIONS(4504), [sym_version] = ACTIONS(4504), [sym_while] = ACTIONS(4504), [sym_gshared] = ACTIONS(4504), [sym_traits] = ACTIONS(4504), [sym_vector] = ACTIONS(4504), [sym_void] = ACTIONS(4504), [sym_directive] = ACTIONS(3), }, [2620] = { [ts_builtin_sym_end] = ACTIONS(4672), [sym_identifier] = ACTIONS(4670), [sym_end_file] = ACTIONS(4670), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4672), [anon_sym_SEMI] = ACTIONS(4672), [anon_sym_TILDE] = ACTIONS(4672), [anon_sym_AT] = ACTIONS(4672), [sym_bool] = ACTIONS(4670), [sym_byte] = ACTIONS(4670), [sym_ubyte] = ACTIONS(4670), [sym_char] = ACTIONS(4670), [sym_short] = ACTIONS(4670), [sym_ushort] = ACTIONS(4670), [sym_int] = ACTIONS(4670), [sym_uint] = ACTIONS(4670), [sym_long] = ACTIONS(4670), [sym_ulong] = ACTIONS(4670), [sym_cent] = ACTIONS(4670), [sym_ucent] = ACTIONS(4670), [sym_wchar] = ACTIONS(4670), [sym_dchar] = ACTIONS(4670), [sym_float] = ACTIONS(4670), [sym_double] = ACTIONS(4670), [sym_real] = ACTIONS(4670), [sym_ifloat] = ACTIONS(4670), [sym_idouble] = ACTIONS(4670), [sym_ireal] = ACTIONS(4670), [sym_cfloat] = ACTIONS(4670), [sym_cdouble] = ACTIONS(4670), [sym_creal] = ACTIONS(4670), [sym_size_t] = ACTIONS(4670), [sym_ptrdiff_t] = ACTIONS(4670), [sym_string] = ACTIONS(4670), [sym_cstring] = ACTIONS(4670), [sym_dstring] = ACTIONS(4670), [sym_wstring] = ACTIONS(4670), [sym_noreturn] = ACTIONS(4670), [sym_this] = ACTIONS(4670), [sym_abstract] = ACTIONS(4670), [sym_alias] = ACTIONS(4670), [sym_align] = ACTIONS(4670), [sym_auto] = ACTIONS(4670), [sym_class] = ACTIONS(4670), [sym_const] = ACTIONS(4670), [sym_debug] = ACTIONS(4670), [sym_deprecated] = ACTIONS(4670), [sym_else] = ACTIONS(4670), [sym_enum] = ACTIONS(4670), [sym_export] = ACTIONS(4670), [sym_extern] = ACTIONS(4670), [sym_final] = ACTIONS(4670), [sym_immutable] = ACTIONS(4670), [sym_import] = ACTIONS(4670), [sym_inout] = ACTIONS(4670), [sym_interface] = ACTIONS(4670), [sym_invariant] = ACTIONS(4670), [sym_mixin] = ACTIONS(4670), [sym_nothrow] = ACTIONS(4670), [sym_override] = ACTIONS(4670), [sym_package] = ACTIONS(4670), [sym_pragma] = ACTIONS(4670), [sym_private] = ACTIONS(4670), [sym_protected] = ACTIONS(4670), [sym_public] = ACTIONS(4670), [sym_pure] = ACTIONS(4670), [sym_ref] = ACTIONS(4670), [sym_return] = ACTIONS(4670), [sym_scope] = ACTIONS(4670), [sym_shared] = ACTIONS(4670), [sym_static] = ACTIONS(4670), [sym_struct] = ACTIONS(4670), [sym_synchronized] = ACTIONS(4670), [sym_template] = ACTIONS(4670), [sym_typeof] = ACTIONS(4670), [sym_union] = ACTIONS(4670), [sym_unittest] = ACTIONS(4670), [sym_version] = ACTIONS(4670), [sym_while] = ACTIONS(4670), [sym_gshared] = ACTIONS(4670), [sym_traits] = ACTIONS(4670), [sym_vector] = ACTIONS(4670), [sym_void] = ACTIONS(4670), [sym_directive] = ACTIONS(3), }, [2621] = { [ts_builtin_sym_end] = ACTIONS(4664), [sym_identifier] = ACTIONS(4662), [sym_end_file] = ACTIONS(4662), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4664), [anon_sym_SEMI] = ACTIONS(4664), [anon_sym_TILDE] = ACTIONS(4664), [anon_sym_AT] = ACTIONS(4664), [sym_bool] = ACTIONS(4662), [sym_byte] = ACTIONS(4662), [sym_ubyte] = ACTIONS(4662), [sym_char] = ACTIONS(4662), [sym_short] = ACTIONS(4662), [sym_ushort] = ACTIONS(4662), [sym_int] = ACTIONS(4662), [sym_uint] = ACTIONS(4662), [sym_long] = ACTIONS(4662), [sym_ulong] = ACTIONS(4662), [sym_cent] = ACTIONS(4662), [sym_ucent] = ACTIONS(4662), [sym_wchar] = ACTIONS(4662), [sym_dchar] = ACTIONS(4662), [sym_float] = ACTIONS(4662), [sym_double] = ACTIONS(4662), [sym_real] = ACTIONS(4662), [sym_ifloat] = ACTIONS(4662), [sym_idouble] = ACTIONS(4662), [sym_ireal] = ACTIONS(4662), [sym_cfloat] = ACTIONS(4662), [sym_cdouble] = ACTIONS(4662), [sym_creal] = ACTIONS(4662), [sym_size_t] = ACTIONS(4662), [sym_ptrdiff_t] = ACTIONS(4662), [sym_string] = ACTIONS(4662), [sym_cstring] = ACTIONS(4662), [sym_dstring] = ACTIONS(4662), [sym_wstring] = ACTIONS(4662), [sym_noreturn] = ACTIONS(4662), [sym_this] = ACTIONS(4662), [sym_abstract] = ACTIONS(4662), [sym_alias] = ACTIONS(4662), [sym_align] = ACTIONS(4662), [sym_auto] = ACTIONS(4662), [sym_class] = ACTIONS(4662), [sym_const] = ACTIONS(4662), [sym_debug] = ACTIONS(4662), [sym_deprecated] = ACTIONS(4662), [sym_else] = ACTIONS(4662), [sym_enum] = ACTIONS(4662), [sym_export] = ACTIONS(4662), [sym_extern] = ACTIONS(4662), [sym_final] = ACTIONS(4662), [sym_immutable] = ACTIONS(4662), [sym_import] = ACTIONS(4662), [sym_inout] = ACTIONS(4662), [sym_interface] = ACTIONS(4662), [sym_invariant] = ACTIONS(4662), [sym_mixin] = ACTIONS(4662), [sym_nothrow] = ACTIONS(4662), [sym_override] = ACTIONS(4662), [sym_package] = ACTIONS(4662), [sym_pragma] = ACTIONS(4662), [sym_private] = ACTIONS(4662), [sym_protected] = ACTIONS(4662), [sym_public] = ACTIONS(4662), [sym_pure] = ACTIONS(4662), [sym_ref] = ACTIONS(4662), [sym_return] = ACTIONS(4662), [sym_scope] = ACTIONS(4662), [sym_shared] = ACTIONS(4662), [sym_static] = ACTIONS(4662), [sym_struct] = ACTIONS(4662), [sym_synchronized] = ACTIONS(4662), [sym_template] = ACTIONS(4662), [sym_typeof] = ACTIONS(4662), [sym_union] = ACTIONS(4662), [sym_unittest] = ACTIONS(4662), [sym_version] = ACTIONS(4662), [sym_while] = ACTIONS(4662), [sym_gshared] = ACTIONS(4662), [sym_traits] = ACTIONS(4662), [sym_vector] = ACTIONS(4662), [sym_void] = ACTIONS(4662), [sym_directive] = ACTIONS(3), }, [2622] = { [ts_builtin_sym_end] = ACTIONS(4518), [sym_identifier] = ACTIONS(4516), [sym_end_file] = ACTIONS(4516), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4518), [anon_sym_SEMI] = ACTIONS(4518), [anon_sym_TILDE] = ACTIONS(4518), [anon_sym_AT] = ACTIONS(4518), [sym_bool] = ACTIONS(4516), [sym_byte] = ACTIONS(4516), [sym_ubyte] = ACTIONS(4516), [sym_char] = ACTIONS(4516), [sym_short] = ACTIONS(4516), [sym_ushort] = ACTIONS(4516), [sym_int] = ACTIONS(4516), [sym_uint] = ACTIONS(4516), [sym_long] = ACTIONS(4516), [sym_ulong] = ACTIONS(4516), [sym_cent] = ACTIONS(4516), [sym_ucent] = ACTIONS(4516), [sym_wchar] = ACTIONS(4516), [sym_dchar] = ACTIONS(4516), [sym_float] = ACTIONS(4516), [sym_double] = ACTIONS(4516), [sym_real] = ACTIONS(4516), [sym_ifloat] = ACTIONS(4516), [sym_idouble] = ACTIONS(4516), [sym_ireal] = ACTIONS(4516), [sym_cfloat] = ACTIONS(4516), [sym_cdouble] = ACTIONS(4516), [sym_creal] = ACTIONS(4516), [sym_size_t] = ACTIONS(4516), [sym_ptrdiff_t] = ACTIONS(4516), [sym_string] = ACTIONS(4516), [sym_cstring] = ACTIONS(4516), [sym_dstring] = ACTIONS(4516), [sym_wstring] = ACTIONS(4516), [sym_noreturn] = ACTIONS(4516), [sym_this] = ACTIONS(4516), [sym_abstract] = ACTIONS(4516), [sym_alias] = ACTIONS(4516), [sym_align] = ACTIONS(4516), [sym_auto] = ACTIONS(4516), [sym_class] = ACTIONS(4516), [sym_const] = ACTIONS(4516), [sym_debug] = ACTIONS(4516), [sym_deprecated] = ACTIONS(4516), [sym_else] = ACTIONS(4516), [sym_enum] = ACTIONS(4516), [sym_export] = ACTIONS(4516), [sym_extern] = ACTIONS(4516), [sym_final] = ACTIONS(4516), [sym_immutable] = ACTIONS(4516), [sym_import] = ACTIONS(4516), [sym_inout] = ACTIONS(4516), [sym_interface] = ACTIONS(4516), [sym_invariant] = ACTIONS(4516), [sym_mixin] = ACTIONS(4516), [sym_nothrow] = ACTIONS(4516), [sym_override] = ACTIONS(4516), [sym_package] = ACTIONS(4516), [sym_pragma] = ACTIONS(4516), [sym_private] = ACTIONS(4516), [sym_protected] = ACTIONS(4516), [sym_public] = ACTIONS(4516), [sym_pure] = ACTIONS(4516), [sym_ref] = ACTIONS(4516), [sym_return] = ACTIONS(4516), [sym_scope] = ACTIONS(4516), [sym_shared] = ACTIONS(4516), [sym_static] = ACTIONS(4516), [sym_struct] = ACTIONS(4516), [sym_synchronized] = ACTIONS(4516), [sym_template] = ACTIONS(4516), [sym_typeof] = ACTIONS(4516), [sym_union] = ACTIONS(4516), [sym_unittest] = ACTIONS(4516), [sym_version] = ACTIONS(4516), [sym_while] = ACTIONS(4516), [sym_gshared] = ACTIONS(4516), [sym_traits] = ACTIONS(4516), [sym_vector] = ACTIONS(4516), [sym_void] = ACTIONS(4516), [sym_directive] = ACTIONS(3), }, [2623] = { [sym_identifier] = ACTIONS(4524), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4526), [anon_sym_SEMI] = ACTIONS(4526), [anon_sym_TILDE] = ACTIONS(4526), [anon_sym_AT] = ACTIONS(4526), [sym_bool] = ACTIONS(4524), [sym_byte] = ACTIONS(4524), [sym_ubyte] = ACTIONS(4524), [sym_char] = ACTIONS(4524), [sym_short] = ACTIONS(4524), [sym_ushort] = ACTIONS(4524), [sym_int] = ACTIONS(4524), [sym_uint] = ACTIONS(4524), [sym_long] = ACTIONS(4524), [sym_ulong] = ACTIONS(4524), [sym_cent] = ACTIONS(4524), [sym_ucent] = ACTIONS(4524), [sym_wchar] = ACTIONS(4524), [sym_dchar] = ACTIONS(4524), [sym_float] = ACTIONS(4524), [sym_double] = ACTIONS(4524), [sym_real] = ACTIONS(4524), [sym_ifloat] = ACTIONS(4524), [sym_idouble] = ACTIONS(4524), [sym_ireal] = ACTIONS(4524), [sym_cfloat] = ACTIONS(4524), [sym_cdouble] = ACTIONS(4524), [sym_creal] = ACTIONS(4524), [sym_size_t] = ACTIONS(4524), [sym_ptrdiff_t] = ACTIONS(4524), [sym_string] = ACTIONS(4524), [sym_cstring] = ACTIONS(4524), [sym_dstring] = ACTIONS(4524), [sym_wstring] = ACTIONS(4524), [sym_noreturn] = ACTIONS(4524), [sym_this] = ACTIONS(4524), [sym_abstract] = ACTIONS(4524), [sym_alias] = ACTIONS(4524), [sym_align] = ACTIONS(4524), [sym_auto] = ACTIONS(4524), [sym_catch] = ACTIONS(4524), [sym_class] = ACTIONS(4524), [sym_const] = ACTIONS(4524), [sym_debug] = ACTIONS(4524), [sym_deprecated] = ACTIONS(4524), [sym_else] = ACTIONS(4524), [sym_enum] = ACTIONS(4524), [sym_export] = ACTIONS(4524), [sym_extern] = ACTIONS(4524), [sym_final] = ACTIONS(4524), [sym_finally] = ACTIONS(4524), [sym_immutable] = ACTIONS(4524), [sym_import] = ACTIONS(4524), [sym_inout] = ACTIONS(4524), [sym_interface] = ACTIONS(4524), [sym_invariant] = ACTIONS(4524), [sym_mixin] = ACTIONS(4524), [sym_nothrow] = ACTIONS(4524), [sym_override] = ACTIONS(4524), [sym_package] = ACTIONS(4524), [sym_pragma] = ACTIONS(4524), [sym_private] = ACTIONS(4524), [sym_protected] = ACTIONS(4524), [sym_public] = ACTIONS(4524), [sym_pure] = ACTIONS(4524), [sym_ref] = ACTIONS(4524), [sym_return] = ACTIONS(4524), [sym_scope] = ACTIONS(4524), [sym_shared] = ACTIONS(4524), [sym_static] = ACTIONS(4524), [sym_struct] = ACTIONS(4524), [sym_synchronized] = ACTIONS(4524), [sym_template] = ACTIONS(4524), [sym_typeof] = ACTIONS(4524), [sym_union] = ACTIONS(4524), [sym_unittest] = ACTIONS(4524), [sym_version] = ACTIONS(4524), [sym_while] = ACTIONS(4524), [sym_gshared] = ACTIONS(4524), [sym_traits] = ACTIONS(4524), [sym_vector] = ACTIONS(4524), [sym_void] = ACTIONS(4524), [sym_directive] = ACTIONS(3), }, [2624] = { [ts_builtin_sym_end] = ACTIONS(4652), [sym_identifier] = ACTIONS(4650), [sym_end_file] = ACTIONS(4650), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4652), [anon_sym_SEMI] = ACTIONS(4652), [anon_sym_TILDE] = ACTIONS(4652), [anon_sym_AT] = ACTIONS(4652), [sym_bool] = ACTIONS(4650), [sym_byte] = ACTIONS(4650), [sym_ubyte] = ACTIONS(4650), [sym_char] = ACTIONS(4650), [sym_short] = ACTIONS(4650), [sym_ushort] = ACTIONS(4650), [sym_int] = ACTIONS(4650), [sym_uint] = ACTIONS(4650), [sym_long] = ACTIONS(4650), [sym_ulong] = ACTIONS(4650), [sym_cent] = ACTIONS(4650), [sym_ucent] = ACTIONS(4650), [sym_wchar] = ACTIONS(4650), [sym_dchar] = ACTIONS(4650), [sym_float] = ACTIONS(4650), [sym_double] = ACTIONS(4650), [sym_real] = ACTIONS(4650), [sym_ifloat] = ACTIONS(4650), [sym_idouble] = ACTIONS(4650), [sym_ireal] = ACTIONS(4650), [sym_cfloat] = ACTIONS(4650), [sym_cdouble] = ACTIONS(4650), [sym_creal] = ACTIONS(4650), [sym_size_t] = ACTIONS(4650), [sym_ptrdiff_t] = ACTIONS(4650), [sym_string] = ACTIONS(4650), [sym_cstring] = ACTIONS(4650), [sym_dstring] = ACTIONS(4650), [sym_wstring] = ACTIONS(4650), [sym_noreturn] = ACTIONS(4650), [sym_this] = ACTIONS(4650), [sym_abstract] = ACTIONS(4650), [sym_alias] = ACTIONS(4650), [sym_align] = ACTIONS(4650), [sym_auto] = ACTIONS(4650), [sym_class] = ACTIONS(4650), [sym_const] = ACTIONS(4650), [sym_debug] = ACTIONS(4650), [sym_deprecated] = ACTIONS(4650), [sym_else] = ACTIONS(4650), [sym_enum] = ACTIONS(4650), [sym_export] = ACTIONS(4650), [sym_extern] = ACTIONS(4650), [sym_final] = ACTIONS(4650), [sym_immutable] = ACTIONS(4650), [sym_import] = ACTIONS(4650), [sym_inout] = ACTIONS(4650), [sym_interface] = ACTIONS(4650), [sym_invariant] = ACTIONS(4650), [sym_mixin] = ACTIONS(4650), [sym_nothrow] = ACTIONS(4650), [sym_override] = ACTIONS(4650), [sym_package] = ACTIONS(4650), [sym_pragma] = ACTIONS(4650), [sym_private] = ACTIONS(4650), [sym_protected] = ACTIONS(4650), [sym_public] = ACTIONS(4650), [sym_pure] = ACTIONS(4650), [sym_ref] = ACTIONS(4650), [sym_return] = ACTIONS(4650), [sym_scope] = ACTIONS(4650), [sym_shared] = ACTIONS(4650), [sym_static] = ACTIONS(4650), [sym_struct] = ACTIONS(4650), [sym_synchronized] = ACTIONS(4650), [sym_template] = ACTIONS(4650), [sym_typeof] = ACTIONS(4650), [sym_union] = ACTIONS(4650), [sym_unittest] = ACTIONS(4650), [sym_version] = ACTIONS(4650), [sym_while] = ACTIONS(4650), [sym_gshared] = ACTIONS(4650), [sym_traits] = ACTIONS(4650), [sym_vector] = ACTIONS(4650), [sym_void] = ACTIONS(4650), [sym_directive] = ACTIONS(3), }, [2625] = { [ts_builtin_sym_end] = ACTIONS(4531), [sym_identifier] = ACTIONS(4528), [sym_end_file] = ACTIONS(4528), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4531), [anon_sym_SEMI] = ACTIONS(4531), [anon_sym_TILDE] = ACTIONS(4531), [anon_sym_AT] = ACTIONS(4531), [sym_bool] = ACTIONS(4528), [sym_byte] = ACTIONS(4528), [sym_ubyte] = ACTIONS(4528), [sym_char] = ACTIONS(4528), [sym_short] = ACTIONS(4528), [sym_ushort] = ACTIONS(4528), [sym_int] = ACTIONS(4528), [sym_uint] = ACTIONS(4528), [sym_long] = ACTIONS(4528), [sym_ulong] = ACTIONS(4528), [sym_cent] = ACTIONS(4528), [sym_ucent] = ACTIONS(4528), [sym_wchar] = ACTIONS(4528), [sym_dchar] = ACTIONS(4528), [sym_float] = ACTIONS(4528), [sym_double] = ACTIONS(4528), [sym_real] = ACTIONS(4528), [sym_ifloat] = ACTIONS(4528), [sym_idouble] = ACTIONS(4528), [sym_ireal] = ACTIONS(4528), [sym_cfloat] = ACTIONS(4528), [sym_cdouble] = ACTIONS(4528), [sym_creal] = ACTIONS(4528), [sym_size_t] = ACTIONS(4528), [sym_ptrdiff_t] = ACTIONS(4528), [sym_string] = ACTIONS(4528), [sym_cstring] = ACTIONS(4528), [sym_dstring] = ACTIONS(4528), [sym_wstring] = ACTIONS(4528), [sym_noreturn] = ACTIONS(4528), [sym_this] = ACTIONS(4528), [sym_abstract] = ACTIONS(4528), [sym_alias] = ACTIONS(4528), [sym_align] = ACTIONS(4528), [sym_auto] = ACTIONS(4528), [sym_class] = ACTIONS(4528), [sym_const] = ACTIONS(4528), [sym_debug] = ACTIONS(4528), [sym_deprecated] = ACTIONS(4528), [sym_else] = ACTIONS(4528), [sym_enum] = ACTIONS(4528), [sym_export] = ACTIONS(4528), [sym_extern] = ACTIONS(4528), [sym_final] = ACTIONS(4528), [sym_immutable] = ACTIONS(4528), [sym_import] = ACTIONS(4528), [sym_inout] = ACTIONS(4528), [sym_interface] = ACTIONS(4528), [sym_invariant] = ACTIONS(4528), [sym_mixin] = ACTIONS(4528), [sym_nothrow] = ACTIONS(4528), [sym_override] = ACTIONS(4528), [sym_package] = ACTIONS(4528), [sym_pragma] = ACTIONS(4528), [sym_private] = ACTIONS(4528), [sym_protected] = ACTIONS(4528), [sym_public] = ACTIONS(4528), [sym_pure] = ACTIONS(4528), [sym_ref] = ACTIONS(4528), [sym_return] = ACTIONS(4528), [sym_scope] = ACTIONS(4528), [sym_shared] = ACTIONS(4528), [sym_static] = ACTIONS(4528), [sym_struct] = ACTIONS(4528), [sym_synchronized] = ACTIONS(4528), [sym_template] = ACTIONS(4528), [sym_typeof] = ACTIONS(4528), [sym_union] = ACTIONS(4528), [sym_unittest] = ACTIONS(4528), [sym_version] = ACTIONS(4528), [sym_while] = ACTIONS(4528), [sym_gshared] = ACTIONS(4528), [sym_traits] = ACTIONS(4528), [sym_vector] = ACTIONS(4528), [sym_void] = ACTIONS(4528), [sym_directive] = ACTIONS(3), }, [2626] = { [ts_builtin_sym_end] = ACTIONS(4291), [sym_identifier] = ACTIONS(4289), [sym_end_file] = ACTIONS(4289), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4291), [anon_sym_SEMI] = ACTIONS(4291), [anon_sym_TILDE] = ACTIONS(4291), [anon_sym_AT] = ACTIONS(4291), [sym_bool] = ACTIONS(4289), [sym_byte] = ACTIONS(4289), [sym_ubyte] = ACTIONS(4289), [sym_char] = ACTIONS(4289), [sym_short] = ACTIONS(4289), [sym_ushort] = ACTIONS(4289), [sym_int] = ACTIONS(4289), [sym_uint] = ACTIONS(4289), [sym_long] = ACTIONS(4289), [sym_ulong] = ACTIONS(4289), [sym_cent] = ACTIONS(4289), [sym_ucent] = ACTIONS(4289), [sym_wchar] = ACTIONS(4289), [sym_dchar] = ACTIONS(4289), [sym_float] = ACTIONS(4289), [sym_double] = ACTIONS(4289), [sym_real] = ACTIONS(4289), [sym_ifloat] = ACTIONS(4289), [sym_idouble] = ACTIONS(4289), [sym_ireal] = ACTIONS(4289), [sym_cfloat] = ACTIONS(4289), [sym_cdouble] = ACTIONS(4289), [sym_creal] = ACTIONS(4289), [sym_size_t] = ACTIONS(4289), [sym_ptrdiff_t] = ACTIONS(4289), [sym_string] = ACTIONS(4289), [sym_cstring] = ACTIONS(4289), [sym_dstring] = ACTIONS(4289), [sym_wstring] = ACTIONS(4289), [sym_noreturn] = ACTIONS(4289), [sym_this] = ACTIONS(4289), [sym_abstract] = ACTIONS(4289), [sym_alias] = ACTIONS(4289), [sym_align] = ACTIONS(4289), [sym_auto] = ACTIONS(4289), [sym_class] = ACTIONS(4289), [sym_const] = ACTIONS(4289), [sym_debug] = ACTIONS(4289), [sym_deprecated] = ACTIONS(4289), [sym_else] = ACTIONS(4289), [sym_enum] = ACTIONS(4289), [sym_export] = ACTIONS(4289), [sym_extern] = ACTIONS(4289), [sym_final] = ACTIONS(4289), [sym_immutable] = ACTIONS(4289), [sym_import] = ACTIONS(4289), [sym_inout] = ACTIONS(4289), [sym_interface] = ACTIONS(4289), [sym_invariant] = ACTIONS(4289), [sym_mixin] = ACTIONS(4289), [sym_nothrow] = ACTIONS(4289), [sym_override] = ACTIONS(4289), [sym_package] = ACTIONS(4289), [sym_pragma] = ACTIONS(4289), [sym_private] = ACTIONS(4289), [sym_protected] = ACTIONS(4289), [sym_public] = ACTIONS(4289), [sym_pure] = ACTIONS(4289), [sym_ref] = ACTIONS(4289), [sym_return] = ACTIONS(4289), [sym_scope] = ACTIONS(4289), [sym_shared] = ACTIONS(4289), [sym_static] = ACTIONS(4289), [sym_struct] = ACTIONS(4289), [sym_synchronized] = ACTIONS(4289), [sym_template] = ACTIONS(4289), [sym_typeof] = ACTIONS(4289), [sym_union] = ACTIONS(4289), [sym_unittest] = ACTIONS(4289), [sym_version] = ACTIONS(4289), [sym_while] = ACTIONS(4289), [sym_gshared] = ACTIONS(4289), [sym_traits] = ACTIONS(4289), [sym_vector] = ACTIONS(4289), [sym_void] = ACTIONS(4289), [sym_directive] = ACTIONS(3), }, [2627] = { [ts_builtin_sym_end] = ACTIONS(5034), [sym_identifier] = ACTIONS(5032), [sym_end_file] = ACTIONS(5032), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5034), [anon_sym_SEMI] = ACTIONS(5034), [anon_sym_TILDE] = ACTIONS(5034), [anon_sym_AT] = ACTIONS(5034), [sym_bool] = ACTIONS(5032), [sym_byte] = ACTIONS(5032), [sym_ubyte] = ACTIONS(5032), [sym_char] = ACTIONS(5032), [sym_short] = ACTIONS(5032), [sym_ushort] = ACTIONS(5032), [sym_int] = ACTIONS(5032), [sym_uint] = ACTIONS(5032), [sym_long] = ACTIONS(5032), [sym_ulong] = ACTIONS(5032), [sym_cent] = ACTIONS(5032), [sym_ucent] = ACTIONS(5032), [sym_wchar] = ACTIONS(5032), [sym_dchar] = ACTIONS(5032), [sym_float] = ACTIONS(5032), [sym_double] = ACTIONS(5032), [sym_real] = ACTIONS(5032), [sym_ifloat] = ACTIONS(5032), [sym_idouble] = ACTIONS(5032), [sym_ireal] = ACTIONS(5032), [sym_cfloat] = ACTIONS(5032), [sym_cdouble] = ACTIONS(5032), [sym_creal] = ACTIONS(5032), [sym_size_t] = ACTIONS(5032), [sym_ptrdiff_t] = ACTIONS(5032), [sym_string] = ACTIONS(5032), [sym_cstring] = ACTIONS(5032), [sym_dstring] = ACTIONS(5032), [sym_wstring] = ACTIONS(5032), [sym_noreturn] = ACTIONS(5032), [sym_this] = ACTIONS(5032), [sym_abstract] = ACTIONS(5032), [sym_alias] = ACTIONS(5032), [sym_align] = ACTIONS(5032), [sym_auto] = ACTIONS(5032), [sym_class] = ACTIONS(5032), [sym_const] = ACTIONS(5032), [sym_debug] = ACTIONS(5032), [sym_deprecated] = ACTIONS(5032), [sym_else] = ACTIONS(5032), [sym_enum] = ACTIONS(5032), [sym_export] = ACTIONS(5032), [sym_extern] = ACTIONS(5032), [sym_final] = ACTIONS(5032), [sym_immutable] = ACTIONS(5032), [sym_import] = ACTIONS(5032), [sym_inout] = ACTIONS(5032), [sym_interface] = ACTIONS(5032), [sym_invariant] = ACTIONS(5032), [sym_mixin] = ACTIONS(5032), [sym_nothrow] = ACTIONS(5032), [sym_override] = ACTIONS(5032), [sym_package] = ACTIONS(5032), [sym_pragma] = ACTIONS(5032), [sym_private] = ACTIONS(5032), [sym_protected] = ACTIONS(5032), [sym_public] = ACTIONS(5032), [sym_pure] = ACTIONS(5032), [sym_ref] = ACTIONS(5032), [sym_return] = ACTIONS(5032), [sym_scope] = ACTIONS(5032), [sym_shared] = ACTIONS(5032), [sym_static] = ACTIONS(5032), [sym_struct] = ACTIONS(5032), [sym_synchronized] = ACTIONS(5032), [sym_template] = ACTIONS(5032), [sym_typeof] = ACTIONS(5032), [sym_union] = ACTIONS(5032), [sym_unittest] = ACTIONS(5032), [sym_version] = ACTIONS(5032), [sym_while] = ACTIONS(5032), [sym_gshared] = ACTIONS(5032), [sym_traits] = ACTIONS(5032), [sym_vector] = ACTIONS(5032), [sym_void] = ACTIONS(5032), [sym_directive] = ACTIONS(3), }, [2628] = { [sym_identifier] = ACTIONS(4650), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4652), [anon_sym_SEMI] = ACTIONS(4652), [anon_sym_TILDE] = ACTIONS(4652), [anon_sym_AT] = ACTIONS(4652), [sym_bool] = ACTIONS(4650), [sym_byte] = ACTIONS(4650), [sym_ubyte] = ACTIONS(4650), [sym_char] = ACTIONS(4650), [sym_short] = ACTIONS(4650), [sym_ushort] = ACTIONS(4650), [sym_int] = ACTIONS(4650), [sym_uint] = ACTIONS(4650), [sym_long] = ACTIONS(4650), [sym_ulong] = ACTIONS(4650), [sym_cent] = ACTIONS(4650), [sym_ucent] = ACTIONS(4650), [sym_wchar] = ACTIONS(4650), [sym_dchar] = ACTIONS(4650), [sym_float] = ACTIONS(4650), [sym_double] = ACTIONS(4650), [sym_real] = ACTIONS(4650), [sym_ifloat] = ACTIONS(4650), [sym_idouble] = ACTIONS(4650), [sym_ireal] = ACTIONS(4650), [sym_cfloat] = ACTIONS(4650), [sym_cdouble] = ACTIONS(4650), [sym_creal] = ACTIONS(4650), [sym_size_t] = ACTIONS(4650), [sym_ptrdiff_t] = ACTIONS(4650), [sym_string] = ACTIONS(4650), [sym_cstring] = ACTIONS(4650), [sym_dstring] = ACTIONS(4650), [sym_wstring] = ACTIONS(4650), [sym_noreturn] = ACTIONS(4650), [sym_this] = ACTIONS(4650), [sym_abstract] = ACTIONS(4650), [sym_alias] = ACTIONS(4650), [sym_align] = ACTIONS(4650), [sym_auto] = ACTIONS(4650), [sym_catch] = ACTIONS(4650), [sym_class] = ACTIONS(4650), [sym_const] = ACTIONS(4650), [sym_debug] = ACTIONS(4650), [sym_deprecated] = ACTIONS(4650), [sym_else] = ACTIONS(4650), [sym_enum] = ACTIONS(4650), [sym_export] = ACTIONS(4650), [sym_extern] = ACTIONS(4650), [sym_final] = ACTIONS(4650), [sym_finally] = ACTIONS(4650), [sym_immutable] = ACTIONS(4650), [sym_import] = ACTIONS(4650), [sym_inout] = ACTIONS(4650), [sym_interface] = ACTIONS(4650), [sym_invariant] = ACTIONS(4650), [sym_mixin] = ACTIONS(4650), [sym_nothrow] = ACTIONS(4650), [sym_override] = ACTIONS(4650), [sym_package] = ACTIONS(4650), [sym_pragma] = ACTIONS(4650), [sym_private] = ACTIONS(4650), [sym_protected] = ACTIONS(4650), [sym_public] = ACTIONS(4650), [sym_pure] = ACTIONS(4650), [sym_ref] = ACTIONS(4650), [sym_return] = ACTIONS(4650), [sym_scope] = ACTIONS(4650), [sym_shared] = ACTIONS(4650), [sym_static] = ACTIONS(4650), [sym_struct] = ACTIONS(4650), [sym_synchronized] = ACTIONS(4650), [sym_template] = ACTIONS(4650), [sym_typeof] = ACTIONS(4650), [sym_union] = ACTIONS(4650), [sym_unittest] = ACTIONS(4650), [sym_version] = ACTIONS(4650), [sym_while] = ACTIONS(4650), [sym_gshared] = ACTIONS(4650), [sym_traits] = ACTIONS(4650), [sym_vector] = ACTIONS(4650), [sym_void] = ACTIONS(4650), [sym_directive] = ACTIONS(3), }, [2629] = { [sym_identifier] = ACTIONS(4662), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4664), [anon_sym_SEMI] = ACTIONS(4664), [anon_sym_TILDE] = ACTIONS(4664), [anon_sym_AT] = ACTIONS(4664), [sym_bool] = ACTIONS(4662), [sym_byte] = ACTIONS(4662), [sym_ubyte] = ACTIONS(4662), [sym_char] = ACTIONS(4662), [sym_short] = ACTIONS(4662), [sym_ushort] = ACTIONS(4662), [sym_int] = ACTIONS(4662), [sym_uint] = ACTIONS(4662), [sym_long] = ACTIONS(4662), [sym_ulong] = ACTIONS(4662), [sym_cent] = ACTIONS(4662), [sym_ucent] = ACTIONS(4662), [sym_wchar] = ACTIONS(4662), [sym_dchar] = ACTIONS(4662), [sym_float] = ACTIONS(4662), [sym_double] = ACTIONS(4662), [sym_real] = ACTIONS(4662), [sym_ifloat] = ACTIONS(4662), [sym_idouble] = ACTIONS(4662), [sym_ireal] = ACTIONS(4662), [sym_cfloat] = ACTIONS(4662), [sym_cdouble] = ACTIONS(4662), [sym_creal] = ACTIONS(4662), [sym_size_t] = ACTIONS(4662), [sym_ptrdiff_t] = ACTIONS(4662), [sym_string] = ACTIONS(4662), [sym_cstring] = ACTIONS(4662), [sym_dstring] = ACTIONS(4662), [sym_wstring] = ACTIONS(4662), [sym_noreturn] = ACTIONS(4662), [sym_this] = ACTIONS(4662), [sym_abstract] = ACTIONS(4662), [sym_alias] = ACTIONS(4662), [sym_align] = ACTIONS(4662), [sym_auto] = ACTIONS(4662), [sym_catch] = ACTIONS(4662), [sym_class] = ACTIONS(4662), [sym_const] = ACTIONS(4662), [sym_debug] = ACTIONS(4662), [sym_deprecated] = ACTIONS(4662), [sym_else] = ACTIONS(4662), [sym_enum] = ACTIONS(4662), [sym_export] = ACTIONS(4662), [sym_extern] = ACTIONS(4662), [sym_final] = ACTIONS(4662), [sym_finally] = ACTIONS(4662), [sym_immutable] = ACTIONS(4662), [sym_import] = ACTIONS(4662), [sym_inout] = ACTIONS(4662), [sym_interface] = ACTIONS(4662), [sym_invariant] = ACTIONS(4662), [sym_mixin] = ACTIONS(4662), [sym_nothrow] = ACTIONS(4662), [sym_override] = ACTIONS(4662), [sym_package] = ACTIONS(4662), [sym_pragma] = ACTIONS(4662), [sym_private] = ACTIONS(4662), [sym_protected] = ACTIONS(4662), [sym_public] = ACTIONS(4662), [sym_pure] = ACTIONS(4662), [sym_ref] = ACTIONS(4662), [sym_return] = ACTIONS(4662), [sym_scope] = ACTIONS(4662), [sym_shared] = ACTIONS(4662), [sym_static] = ACTIONS(4662), [sym_struct] = ACTIONS(4662), [sym_synchronized] = ACTIONS(4662), [sym_template] = ACTIONS(4662), [sym_typeof] = ACTIONS(4662), [sym_union] = ACTIONS(4662), [sym_unittest] = ACTIONS(4662), [sym_version] = ACTIONS(4662), [sym_while] = ACTIONS(4662), [sym_gshared] = ACTIONS(4662), [sym_traits] = ACTIONS(4662), [sym_vector] = ACTIONS(4662), [sym_void] = ACTIONS(4662), [sym_directive] = ACTIONS(3), }, [2630] = { [sym_identifier] = ACTIONS(4670), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4672), [anon_sym_SEMI] = ACTIONS(4672), [anon_sym_TILDE] = ACTIONS(4672), [anon_sym_AT] = ACTIONS(4672), [sym_bool] = ACTIONS(4670), [sym_byte] = ACTIONS(4670), [sym_ubyte] = ACTIONS(4670), [sym_char] = ACTIONS(4670), [sym_short] = ACTIONS(4670), [sym_ushort] = ACTIONS(4670), [sym_int] = ACTIONS(4670), [sym_uint] = ACTIONS(4670), [sym_long] = ACTIONS(4670), [sym_ulong] = ACTIONS(4670), [sym_cent] = ACTIONS(4670), [sym_ucent] = ACTIONS(4670), [sym_wchar] = ACTIONS(4670), [sym_dchar] = ACTIONS(4670), [sym_float] = ACTIONS(4670), [sym_double] = ACTIONS(4670), [sym_real] = ACTIONS(4670), [sym_ifloat] = ACTIONS(4670), [sym_idouble] = ACTIONS(4670), [sym_ireal] = ACTIONS(4670), [sym_cfloat] = ACTIONS(4670), [sym_cdouble] = ACTIONS(4670), [sym_creal] = ACTIONS(4670), [sym_size_t] = ACTIONS(4670), [sym_ptrdiff_t] = ACTIONS(4670), [sym_string] = ACTIONS(4670), [sym_cstring] = ACTIONS(4670), [sym_dstring] = ACTIONS(4670), [sym_wstring] = ACTIONS(4670), [sym_noreturn] = ACTIONS(4670), [sym_this] = ACTIONS(4670), [sym_abstract] = ACTIONS(4670), [sym_alias] = ACTIONS(4670), [sym_align] = ACTIONS(4670), [sym_auto] = ACTIONS(4670), [sym_catch] = ACTIONS(4670), [sym_class] = ACTIONS(4670), [sym_const] = ACTIONS(4670), [sym_debug] = ACTIONS(4670), [sym_deprecated] = ACTIONS(4670), [sym_else] = ACTIONS(4670), [sym_enum] = ACTIONS(4670), [sym_export] = ACTIONS(4670), [sym_extern] = ACTIONS(4670), [sym_final] = ACTIONS(4670), [sym_finally] = ACTIONS(4670), [sym_immutable] = ACTIONS(4670), [sym_import] = ACTIONS(4670), [sym_inout] = ACTIONS(4670), [sym_interface] = ACTIONS(4670), [sym_invariant] = ACTIONS(4670), [sym_mixin] = ACTIONS(4670), [sym_nothrow] = ACTIONS(4670), [sym_override] = ACTIONS(4670), [sym_package] = ACTIONS(4670), [sym_pragma] = ACTIONS(4670), [sym_private] = ACTIONS(4670), [sym_protected] = ACTIONS(4670), [sym_public] = ACTIONS(4670), [sym_pure] = ACTIONS(4670), [sym_ref] = ACTIONS(4670), [sym_return] = ACTIONS(4670), [sym_scope] = ACTIONS(4670), [sym_shared] = ACTIONS(4670), [sym_static] = ACTIONS(4670), [sym_struct] = ACTIONS(4670), [sym_synchronized] = ACTIONS(4670), [sym_template] = ACTIONS(4670), [sym_typeof] = ACTIONS(4670), [sym_union] = ACTIONS(4670), [sym_unittest] = ACTIONS(4670), [sym_version] = ACTIONS(4670), [sym_while] = ACTIONS(4670), [sym_gshared] = ACTIONS(4670), [sym_traits] = ACTIONS(4670), [sym_vector] = ACTIONS(4670), [sym_void] = ACTIONS(4670), [sym_directive] = ACTIONS(3), }, [2631] = { [sym_identifier] = ACTIONS(4674), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4676), [anon_sym_SEMI] = ACTIONS(4676), [anon_sym_TILDE] = ACTIONS(4676), [anon_sym_AT] = ACTIONS(4676), [sym_bool] = ACTIONS(4674), [sym_byte] = ACTIONS(4674), [sym_ubyte] = ACTIONS(4674), [sym_char] = ACTIONS(4674), [sym_short] = ACTIONS(4674), [sym_ushort] = ACTIONS(4674), [sym_int] = ACTIONS(4674), [sym_uint] = ACTIONS(4674), [sym_long] = ACTIONS(4674), [sym_ulong] = ACTIONS(4674), [sym_cent] = ACTIONS(4674), [sym_ucent] = ACTIONS(4674), [sym_wchar] = ACTIONS(4674), [sym_dchar] = ACTIONS(4674), [sym_float] = ACTIONS(4674), [sym_double] = ACTIONS(4674), [sym_real] = ACTIONS(4674), [sym_ifloat] = ACTIONS(4674), [sym_idouble] = ACTIONS(4674), [sym_ireal] = ACTIONS(4674), [sym_cfloat] = ACTIONS(4674), [sym_cdouble] = ACTIONS(4674), [sym_creal] = ACTIONS(4674), [sym_size_t] = ACTIONS(4674), [sym_ptrdiff_t] = ACTIONS(4674), [sym_string] = ACTIONS(4674), [sym_cstring] = ACTIONS(4674), [sym_dstring] = ACTIONS(4674), [sym_wstring] = ACTIONS(4674), [sym_noreturn] = ACTIONS(4674), [sym_this] = ACTIONS(4674), [sym_abstract] = ACTIONS(4674), [sym_alias] = ACTIONS(4674), [sym_align] = ACTIONS(4674), [sym_auto] = ACTIONS(4674), [sym_catch] = ACTIONS(4674), [sym_class] = ACTIONS(4674), [sym_const] = ACTIONS(4674), [sym_debug] = ACTIONS(4674), [sym_deprecated] = ACTIONS(4674), [sym_else] = ACTIONS(4674), [sym_enum] = ACTIONS(4674), [sym_export] = ACTIONS(4674), [sym_extern] = ACTIONS(4674), [sym_final] = ACTIONS(4674), [sym_finally] = ACTIONS(4674), [sym_immutable] = ACTIONS(4674), [sym_import] = ACTIONS(4674), [sym_inout] = ACTIONS(4674), [sym_interface] = ACTIONS(4674), [sym_invariant] = ACTIONS(4674), [sym_mixin] = ACTIONS(4674), [sym_nothrow] = ACTIONS(4674), [sym_override] = ACTIONS(4674), [sym_package] = ACTIONS(4674), [sym_pragma] = ACTIONS(4674), [sym_private] = ACTIONS(4674), [sym_protected] = ACTIONS(4674), [sym_public] = ACTIONS(4674), [sym_pure] = ACTIONS(4674), [sym_ref] = ACTIONS(4674), [sym_return] = ACTIONS(4674), [sym_scope] = ACTIONS(4674), [sym_shared] = ACTIONS(4674), [sym_static] = ACTIONS(4674), [sym_struct] = ACTIONS(4674), [sym_synchronized] = ACTIONS(4674), [sym_template] = ACTIONS(4674), [sym_typeof] = ACTIONS(4674), [sym_union] = ACTIONS(4674), [sym_unittest] = ACTIONS(4674), [sym_version] = ACTIONS(4674), [sym_while] = ACTIONS(4674), [sym_gshared] = ACTIONS(4674), [sym_traits] = ACTIONS(4674), [sym_vector] = ACTIONS(4674), [sym_void] = ACTIONS(4674), [sym_directive] = ACTIONS(3), }, [2632] = { [ts_builtin_sym_end] = ACTIONS(5050), [sym_identifier] = ACTIONS(5048), [sym_end_file] = ACTIONS(5048), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5050), [anon_sym_SEMI] = ACTIONS(5050), [anon_sym_TILDE] = ACTIONS(5050), [anon_sym_AT] = ACTIONS(5050), [sym_bool] = ACTIONS(5048), [sym_byte] = ACTIONS(5048), [sym_ubyte] = ACTIONS(5048), [sym_char] = ACTIONS(5048), [sym_short] = ACTIONS(5048), [sym_ushort] = ACTIONS(5048), [sym_int] = ACTIONS(5048), [sym_uint] = ACTIONS(5048), [sym_long] = ACTIONS(5048), [sym_ulong] = ACTIONS(5048), [sym_cent] = ACTIONS(5048), [sym_ucent] = ACTIONS(5048), [sym_wchar] = ACTIONS(5048), [sym_dchar] = ACTIONS(5048), [sym_float] = ACTIONS(5048), [sym_double] = ACTIONS(5048), [sym_real] = ACTIONS(5048), [sym_ifloat] = ACTIONS(5048), [sym_idouble] = ACTIONS(5048), [sym_ireal] = ACTIONS(5048), [sym_cfloat] = ACTIONS(5048), [sym_cdouble] = ACTIONS(5048), [sym_creal] = ACTIONS(5048), [sym_size_t] = ACTIONS(5048), [sym_ptrdiff_t] = ACTIONS(5048), [sym_string] = ACTIONS(5048), [sym_cstring] = ACTIONS(5048), [sym_dstring] = ACTIONS(5048), [sym_wstring] = ACTIONS(5048), [sym_noreturn] = ACTIONS(5048), [sym_this] = ACTIONS(5048), [sym_abstract] = ACTIONS(5048), [sym_alias] = ACTIONS(5048), [sym_align] = ACTIONS(5048), [sym_auto] = ACTIONS(5048), [sym_class] = ACTIONS(5048), [sym_const] = ACTIONS(5048), [sym_debug] = ACTIONS(5048), [sym_deprecated] = ACTIONS(5048), [sym_else] = ACTIONS(5048), [sym_enum] = ACTIONS(5048), [sym_export] = ACTIONS(5048), [sym_extern] = ACTIONS(5048), [sym_final] = ACTIONS(5048), [sym_immutable] = ACTIONS(5048), [sym_import] = ACTIONS(5048), [sym_inout] = ACTIONS(5048), [sym_interface] = ACTIONS(5048), [sym_invariant] = ACTIONS(5048), [sym_mixin] = ACTIONS(5048), [sym_nothrow] = ACTIONS(5048), [sym_override] = ACTIONS(5048), [sym_package] = ACTIONS(5048), [sym_pragma] = ACTIONS(5048), [sym_private] = ACTIONS(5048), [sym_protected] = ACTIONS(5048), [sym_public] = ACTIONS(5048), [sym_pure] = ACTIONS(5048), [sym_ref] = ACTIONS(5048), [sym_return] = ACTIONS(5048), [sym_scope] = ACTIONS(5048), [sym_shared] = ACTIONS(5048), [sym_static] = ACTIONS(5048), [sym_struct] = ACTIONS(5048), [sym_synchronized] = ACTIONS(5048), [sym_template] = ACTIONS(5048), [sym_typeof] = ACTIONS(5048), [sym_union] = ACTIONS(5048), [sym_unittest] = ACTIONS(5048), [sym_version] = ACTIONS(5048), [sym_while] = ACTIONS(5048), [sym_gshared] = ACTIONS(5048), [sym_traits] = ACTIONS(5048), [sym_vector] = ACTIONS(5048), [sym_void] = ACTIONS(5048), [sym_directive] = ACTIONS(3), }, [2633] = { [sym_identifier] = ACTIONS(4682), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4684), [anon_sym_SEMI] = ACTIONS(4684), [anon_sym_TILDE] = ACTIONS(4684), [anon_sym_AT] = ACTIONS(4684), [sym_bool] = ACTIONS(4682), [sym_byte] = ACTIONS(4682), [sym_ubyte] = ACTIONS(4682), [sym_char] = ACTIONS(4682), [sym_short] = ACTIONS(4682), [sym_ushort] = ACTIONS(4682), [sym_int] = ACTIONS(4682), [sym_uint] = ACTIONS(4682), [sym_long] = ACTIONS(4682), [sym_ulong] = ACTIONS(4682), [sym_cent] = ACTIONS(4682), [sym_ucent] = ACTIONS(4682), [sym_wchar] = ACTIONS(4682), [sym_dchar] = ACTIONS(4682), [sym_float] = ACTIONS(4682), [sym_double] = ACTIONS(4682), [sym_real] = ACTIONS(4682), [sym_ifloat] = ACTIONS(4682), [sym_idouble] = ACTIONS(4682), [sym_ireal] = ACTIONS(4682), [sym_cfloat] = ACTIONS(4682), [sym_cdouble] = ACTIONS(4682), [sym_creal] = ACTIONS(4682), [sym_size_t] = ACTIONS(4682), [sym_ptrdiff_t] = ACTIONS(4682), [sym_string] = ACTIONS(4682), [sym_cstring] = ACTIONS(4682), [sym_dstring] = ACTIONS(4682), [sym_wstring] = ACTIONS(4682), [sym_noreturn] = ACTIONS(4682), [sym_this] = ACTIONS(4682), [sym_abstract] = ACTIONS(4682), [sym_alias] = ACTIONS(4682), [sym_align] = ACTIONS(4682), [sym_auto] = ACTIONS(4682), [sym_catch] = ACTIONS(4682), [sym_class] = ACTIONS(4682), [sym_const] = ACTIONS(4682), [sym_debug] = ACTIONS(4682), [sym_deprecated] = ACTIONS(4682), [sym_else] = ACTIONS(4682), [sym_enum] = ACTIONS(4682), [sym_export] = ACTIONS(4682), [sym_extern] = ACTIONS(4682), [sym_final] = ACTIONS(4682), [sym_finally] = ACTIONS(4682), [sym_immutable] = ACTIONS(4682), [sym_import] = ACTIONS(4682), [sym_inout] = ACTIONS(4682), [sym_interface] = ACTIONS(4682), [sym_invariant] = ACTIONS(4682), [sym_mixin] = ACTIONS(4682), [sym_nothrow] = ACTIONS(4682), [sym_override] = ACTIONS(4682), [sym_package] = ACTIONS(4682), [sym_pragma] = ACTIONS(4682), [sym_private] = ACTIONS(4682), [sym_protected] = ACTIONS(4682), [sym_public] = ACTIONS(4682), [sym_pure] = ACTIONS(4682), [sym_ref] = ACTIONS(4682), [sym_return] = ACTIONS(4682), [sym_scope] = ACTIONS(4682), [sym_shared] = ACTIONS(4682), [sym_static] = ACTIONS(4682), [sym_struct] = ACTIONS(4682), [sym_synchronized] = ACTIONS(4682), [sym_template] = ACTIONS(4682), [sym_typeof] = ACTIONS(4682), [sym_union] = ACTIONS(4682), [sym_unittest] = ACTIONS(4682), [sym_version] = ACTIONS(4682), [sym_while] = ACTIONS(4682), [sym_gshared] = ACTIONS(4682), [sym_traits] = ACTIONS(4682), [sym_vector] = ACTIONS(4682), [sym_void] = ACTIONS(4682), [sym_directive] = ACTIONS(3), }, [2634] = { [ts_builtin_sym_end] = ACTIONS(5070), [sym_identifier] = ACTIONS(5068), [sym_end_file] = ACTIONS(5068), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5070), [anon_sym_SEMI] = ACTIONS(5070), [anon_sym_TILDE] = ACTIONS(5070), [anon_sym_AT] = ACTIONS(5070), [sym_bool] = ACTIONS(5068), [sym_byte] = ACTIONS(5068), [sym_ubyte] = ACTIONS(5068), [sym_char] = ACTIONS(5068), [sym_short] = ACTIONS(5068), [sym_ushort] = ACTIONS(5068), [sym_int] = ACTIONS(5068), [sym_uint] = ACTIONS(5068), [sym_long] = ACTIONS(5068), [sym_ulong] = ACTIONS(5068), [sym_cent] = ACTIONS(5068), [sym_ucent] = ACTIONS(5068), [sym_wchar] = ACTIONS(5068), [sym_dchar] = ACTIONS(5068), [sym_float] = ACTIONS(5068), [sym_double] = ACTIONS(5068), [sym_real] = ACTIONS(5068), [sym_ifloat] = ACTIONS(5068), [sym_idouble] = ACTIONS(5068), [sym_ireal] = ACTIONS(5068), [sym_cfloat] = ACTIONS(5068), [sym_cdouble] = ACTIONS(5068), [sym_creal] = ACTIONS(5068), [sym_size_t] = ACTIONS(5068), [sym_ptrdiff_t] = ACTIONS(5068), [sym_string] = ACTIONS(5068), [sym_cstring] = ACTIONS(5068), [sym_dstring] = ACTIONS(5068), [sym_wstring] = ACTIONS(5068), [sym_noreturn] = ACTIONS(5068), [sym_this] = ACTIONS(5068), [sym_abstract] = ACTIONS(5068), [sym_alias] = ACTIONS(5068), [sym_align] = ACTIONS(5068), [sym_auto] = ACTIONS(5068), [sym_class] = ACTIONS(5068), [sym_const] = ACTIONS(5068), [sym_debug] = ACTIONS(5068), [sym_deprecated] = ACTIONS(5068), [sym_else] = ACTIONS(5068), [sym_enum] = ACTIONS(5068), [sym_export] = ACTIONS(5068), [sym_extern] = ACTIONS(5068), [sym_final] = ACTIONS(5068), [sym_immutable] = ACTIONS(5068), [sym_import] = ACTIONS(5068), [sym_inout] = ACTIONS(5068), [sym_interface] = ACTIONS(5068), [sym_invariant] = ACTIONS(5068), [sym_mixin] = ACTIONS(5068), [sym_nothrow] = ACTIONS(5068), [sym_override] = ACTIONS(5068), [sym_package] = ACTIONS(5068), [sym_pragma] = ACTIONS(5068), [sym_private] = ACTIONS(5068), [sym_protected] = ACTIONS(5068), [sym_public] = ACTIONS(5068), [sym_pure] = ACTIONS(5068), [sym_ref] = ACTIONS(5068), [sym_return] = ACTIONS(5068), [sym_scope] = ACTIONS(5068), [sym_shared] = ACTIONS(5068), [sym_static] = ACTIONS(5068), [sym_struct] = ACTIONS(5068), [sym_synchronized] = ACTIONS(5068), [sym_template] = ACTIONS(5068), [sym_typeof] = ACTIONS(5068), [sym_union] = ACTIONS(5068), [sym_unittest] = ACTIONS(5068), [sym_version] = ACTIONS(5068), [sym_while] = ACTIONS(5068), [sym_gshared] = ACTIONS(5068), [sym_traits] = ACTIONS(5068), [sym_vector] = ACTIONS(5068), [sym_void] = ACTIONS(5068), [sym_directive] = ACTIONS(3), }, [2635] = { [sym_identifier] = ACTIONS(4686), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4688), [anon_sym_SEMI] = ACTIONS(4688), [anon_sym_TILDE] = ACTIONS(4688), [anon_sym_AT] = ACTIONS(4688), [sym_bool] = ACTIONS(4686), [sym_byte] = ACTIONS(4686), [sym_ubyte] = ACTIONS(4686), [sym_char] = ACTIONS(4686), [sym_short] = ACTIONS(4686), [sym_ushort] = ACTIONS(4686), [sym_int] = ACTIONS(4686), [sym_uint] = ACTIONS(4686), [sym_long] = ACTIONS(4686), [sym_ulong] = ACTIONS(4686), [sym_cent] = ACTIONS(4686), [sym_ucent] = ACTIONS(4686), [sym_wchar] = ACTIONS(4686), [sym_dchar] = ACTIONS(4686), [sym_float] = ACTIONS(4686), [sym_double] = ACTIONS(4686), [sym_real] = ACTIONS(4686), [sym_ifloat] = ACTIONS(4686), [sym_idouble] = ACTIONS(4686), [sym_ireal] = ACTIONS(4686), [sym_cfloat] = ACTIONS(4686), [sym_cdouble] = ACTIONS(4686), [sym_creal] = ACTIONS(4686), [sym_size_t] = ACTIONS(4686), [sym_ptrdiff_t] = ACTIONS(4686), [sym_string] = ACTIONS(4686), [sym_cstring] = ACTIONS(4686), [sym_dstring] = ACTIONS(4686), [sym_wstring] = ACTIONS(4686), [sym_noreturn] = ACTIONS(4686), [sym_this] = ACTIONS(4686), [sym_abstract] = ACTIONS(4686), [sym_alias] = ACTIONS(4686), [sym_align] = ACTIONS(4686), [sym_auto] = ACTIONS(4686), [sym_catch] = ACTIONS(4686), [sym_class] = ACTIONS(4686), [sym_const] = ACTIONS(4686), [sym_debug] = ACTIONS(4686), [sym_deprecated] = ACTIONS(4686), [sym_else] = ACTIONS(4686), [sym_enum] = ACTIONS(4686), [sym_export] = ACTIONS(4686), [sym_extern] = ACTIONS(4686), [sym_final] = ACTIONS(4686), [sym_finally] = ACTIONS(4686), [sym_immutable] = ACTIONS(4686), [sym_import] = ACTIONS(4686), [sym_inout] = ACTIONS(4686), [sym_interface] = ACTIONS(4686), [sym_invariant] = ACTIONS(4686), [sym_mixin] = ACTIONS(4686), [sym_nothrow] = ACTIONS(4686), [sym_override] = ACTIONS(4686), [sym_package] = ACTIONS(4686), [sym_pragma] = ACTIONS(4686), [sym_private] = ACTIONS(4686), [sym_protected] = ACTIONS(4686), [sym_public] = ACTIONS(4686), [sym_pure] = ACTIONS(4686), [sym_ref] = ACTIONS(4686), [sym_return] = ACTIONS(4686), [sym_scope] = ACTIONS(4686), [sym_shared] = ACTIONS(4686), [sym_static] = ACTIONS(4686), [sym_struct] = ACTIONS(4686), [sym_synchronized] = ACTIONS(4686), [sym_template] = ACTIONS(4686), [sym_typeof] = ACTIONS(4686), [sym_union] = ACTIONS(4686), [sym_unittest] = ACTIONS(4686), [sym_version] = ACTIONS(4686), [sym_while] = ACTIONS(4686), [sym_gshared] = ACTIONS(4686), [sym_traits] = ACTIONS(4686), [sym_vector] = ACTIONS(4686), [sym_void] = ACTIONS(4686), [sym_directive] = ACTIONS(3), }, [2636] = { [sym_identifier] = ACTIONS(4704), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4706), [anon_sym_SEMI] = ACTIONS(4706), [anon_sym_TILDE] = ACTIONS(4706), [anon_sym_AT] = ACTIONS(4706), [sym_bool] = ACTIONS(4704), [sym_byte] = ACTIONS(4704), [sym_ubyte] = ACTIONS(4704), [sym_char] = ACTIONS(4704), [sym_short] = ACTIONS(4704), [sym_ushort] = ACTIONS(4704), [sym_int] = ACTIONS(4704), [sym_uint] = ACTIONS(4704), [sym_long] = ACTIONS(4704), [sym_ulong] = ACTIONS(4704), [sym_cent] = ACTIONS(4704), [sym_ucent] = ACTIONS(4704), [sym_wchar] = ACTIONS(4704), [sym_dchar] = ACTIONS(4704), [sym_float] = ACTIONS(4704), [sym_double] = ACTIONS(4704), [sym_real] = ACTIONS(4704), [sym_ifloat] = ACTIONS(4704), [sym_idouble] = ACTIONS(4704), [sym_ireal] = ACTIONS(4704), [sym_cfloat] = ACTIONS(4704), [sym_cdouble] = ACTIONS(4704), [sym_creal] = ACTIONS(4704), [sym_size_t] = ACTIONS(4704), [sym_ptrdiff_t] = ACTIONS(4704), [sym_string] = ACTIONS(4704), [sym_cstring] = ACTIONS(4704), [sym_dstring] = ACTIONS(4704), [sym_wstring] = ACTIONS(4704), [sym_noreturn] = ACTIONS(4704), [sym_this] = ACTIONS(4704), [sym_abstract] = ACTIONS(4704), [sym_alias] = ACTIONS(4704), [sym_align] = ACTIONS(4704), [sym_auto] = ACTIONS(4704), [sym_catch] = ACTIONS(4704), [sym_class] = ACTIONS(4704), [sym_const] = ACTIONS(4704), [sym_debug] = ACTIONS(4704), [sym_deprecated] = ACTIONS(4704), [sym_else] = ACTIONS(4704), [sym_enum] = ACTIONS(4704), [sym_export] = ACTIONS(4704), [sym_extern] = ACTIONS(4704), [sym_final] = ACTIONS(4704), [sym_finally] = ACTIONS(4704), [sym_immutable] = ACTIONS(4704), [sym_import] = ACTIONS(4704), [sym_inout] = ACTIONS(4704), [sym_interface] = ACTIONS(4704), [sym_invariant] = ACTIONS(4704), [sym_mixin] = ACTIONS(4704), [sym_nothrow] = ACTIONS(4704), [sym_override] = ACTIONS(4704), [sym_package] = ACTIONS(4704), [sym_pragma] = ACTIONS(4704), [sym_private] = ACTIONS(4704), [sym_protected] = ACTIONS(4704), [sym_public] = ACTIONS(4704), [sym_pure] = ACTIONS(4704), [sym_ref] = ACTIONS(4704), [sym_return] = ACTIONS(4704), [sym_scope] = ACTIONS(4704), [sym_shared] = ACTIONS(4704), [sym_static] = ACTIONS(4704), [sym_struct] = ACTIONS(4704), [sym_synchronized] = ACTIONS(4704), [sym_template] = ACTIONS(4704), [sym_typeof] = ACTIONS(4704), [sym_union] = ACTIONS(4704), [sym_unittest] = ACTIONS(4704), [sym_version] = ACTIONS(4704), [sym_while] = ACTIONS(4704), [sym_gshared] = ACTIONS(4704), [sym_traits] = ACTIONS(4704), [sym_vector] = ACTIONS(4704), [sym_void] = ACTIONS(4704), [sym_directive] = ACTIONS(3), }, [2637] = { [ts_builtin_sym_end] = ACTIONS(4544), [sym_identifier] = ACTIONS(4542), [sym_end_file] = ACTIONS(4542), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4544), [anon_sym_SEMI] = ACTIONS(4544), [anon_sym_TILDE] = ACTIONS(4544), [anon_sym_AT] = ACTIONS(4544), [sym_bool] = ACTIONS(4542), [sym_byte] = ACTIONS(4542), [sym_ubyte] = ACTIONS(4542), [sym_char] = ACTIONS(4542), [sym_short] = ACTIONS(4542), [sym_ushort] = ACTIONS(4542), [sym_int] = ACTIONS(4542), [sym_uint] = ACTIONS(4542), [sym_long] = ACTIONS(4542), [sym_ulong] = ACTIONS(4542), [sym_cent] = ACTIONS(4542), [sym_ucent] = ACTIONS(4542), [sym_wchar] = ACTIONS(4542), [sym_dchar] = ACTIONS(4542), [sym_float] = ACTIONS(4542), [sym_double] = ACTIONS(4542), [sym_real] = ACTIONS(4542), [sym_ifloat] = ACTIONS(4542), [sym_idouble] = ACTIONS(4542), [sym_ireal] = ACTIONS(4542), [sym_cfloat] = ACTIONS(4542), [sym_cdouble] = ACTIONS(4542), [sym_creal] = ACTIONS(4542), [sym_size_t] = ACTIONS(4542), [sym_ptrdiff_t] = ACTIONS(4542), [sym_string] = ACTIONS(4542), [sym_cstring] = ACTIONS(4542), [sym_dstring] = ACTIONS(4542), [sym_wstring] = ACTIONS(4542), [sym_noreturn] = ACTIONS(4542), [sym_this] = ACTIONS(4542), [sym_abstract] = ACTIONS(4542), [sym_alias] = ACTIONS(4542), [sym_align] = ACTIONS(4542), [sym_auto] = ACTIONS(4542), [sym_class] = ACTIONS(4542), [sym_const] = ACTIONS(4542), [sym_debug] = ACTIONS(4542), [sym_deprecated] = ACTIONS(4542), [sym_else] = ACTIONS(4542), [sym_enum] = ACTIONS(4542), [sym_export] = ACTIONS(4542), [sym_extern] = ACTIONS(4542), [sym_final] = ACTIONS(4542), [sym_immutable] = ACTIONS(4542), [sym_import] = ACTIONS(4542), [sym_inout] = ACTIONS(4542), [sym_interface] = ACTIONS(4542), [sym_invariant] = ACTIONS(4542), [sym_mixin] = ACTIONS(4542), [sym_nothrow] = ACTIONS(4542), [sym_override] = ACTIONS(4542), [sym_package] = ACTIONS(4542), [sym_pragma] = ACTIONS(4542), [sym_private] = ACTIONS(4542), [sym_protected] = ACTIONS(4542), [sym_public] = ACTIONS(4542), [sym_pure] = ACTIONS(4542), [sym_ref] = ACTIONS(4542), [sym_return] = ACTIONS(4542), [sym_scope] = ACTIONS(4542), [sym_shared] = ACTIONS(4542), [sym_static] = ACTIONS(4542), [sym_struct] = ACTIONS(4542), [sym_synchronized] = ACTIONS(4542), [sym_template] = ACTIONS(4542), [sym_typeof] = ACTIONS(4542), [sym_union] = ACTIONS(4542), [sym_unittest] = ACTIONS(4542), [sym_version] = ACTIONS(4542), [sym_while] = ACTIONS(4542), [sym_gshared] = ACTIONS(4542), [sym_traits] = ACTIONS(4542), [sym_vector] = ACTIONS(4542), [sym_void] = ACTIONS(4542), [sym_directive] = ACTIONS(3), }, [2638] = { [sym_identifier] = ACTIONS(4712), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4714), [anon_sym_SEMI] = ACTIONS(4714), [anon_sym_TILDE] = ACTIONS(4714), [anon_sym_AT] = ACTIONS(4714), [sym_bool] = ACTIONS(4712), [sym_byte] = ACTIONS(4712), [sym_ubyte] = ACTIONS(4712), [sym_char] = ACTIONS(4712), [sym_short] = ACTIONS(4712), [sym_ushort] = ACTIONS(4712), [sym_int] = ACTIONS(4712), [sym_uint] = ACTIONS(4712), [sym_long] = ACTIONS(4712), [sym_ulong] = ACTIONS(4712), [sym_cent] = ACTIONS(4712), [sym_ucent] = ACTIONS(4712), [sym_wchar] = ACTIONS(4712), [sym_dchar] = ACTIONS(4712), [sym_float] = ACTIONS(4712), [sym_double] = ACTIONS(4712), [sym_real] = ACTIONS(4712), [sym_ifloat] = ACTIONS(4712), [sym_idouble] = ACTIONS(4712), [sym_ireal] = ACTIONS(4712), [sym_cfloat] = ACTIONS(4712), [sym_cdouble] = ACTIONS(4712), [sym_creal] = ACTIONS(4712), [sym_size_t] = ACTIONS(4712), [sym_ptrdiff_t] = ACTIONS(4712), [sym_string] = ACTIONS(4712), [sym_cstring] = ACTIONS(4712), [sym_dstring] = ACTIONS(4712), [sym_wstring] = ACTIONS(4712), [sym_noreturn] = ACTIONS(4712), [sym_this] = ACTIONS(4712), [sym_abstract] = ACTIONS(4712), [sym_alias] = ACTIONS(4712), [sym_align] = ACTIONS(4712), [sym_auto] = ACTIONS(4712), [sym_catch] = ACTIONS(4712), [sym_class] = ACTIONS(4712), [sym_const] = ACTIONS(4712), [sym_debug] = ACTIONS(4712), [sym_deprecated] = ACTIONS(4712), [sym_else] = ACTIONS(4712), [sym_enum] = ACTIONS(4712), [sym_export] = ACTIONS(4712), [sym_extern] = ACTIONS(4712), [sym_final] = ACTIONS(4712), [sym_finally] = ACTIONS(4712), [sym_immutable] = ACTIONS(4712), [sym_import] = ACTIONS(4712), [sym_inout] = ACTIONS(4712), [sym_interface] = ACTIONS(4712), [sym_invariant] = ACTIONS(4712), [sym_mixin] = ACTIONS(4712), [sym_nothrow] = ACTIONS(4712), [sym_override] = ACTIONS(4712), [sym_package] = ACTIONS(4712), [sym_pragma] = ACTIONS(4712), [sym_private] = ACTIONS(4712), [sym_protected] = ACTIONS(4712), [sym_public] = ACTIONS(4712), [sym_pure] = ACTIONS(4712), [sym_ref] = ACTIONS(4712), [sym_return] = ACTIONS(4712), [sym_scope] = ACTIONS(4712), [sym_shared] = ACTIONS(4712), [sym_static] = ACTIONS(4712), [sym_struct] = ACTIONS(4712), [sym_synchronized] = ACTIONS(4712), [sym_template] = ACTIONS(4712), [sym_typeof] = ACTIONS(4712), [sym_union] = ACTIONS(4712), [sym_unittest] = ACTIONS(4712), [sym_version] = ACTIONS(4712), [sym_while] = ACTIONS(4712), [sym_gshared] = ACTIONS(4712), [sym_traits] = ACTIONS(4712), [sym_vector] = ACTIONS(4712), [sym_void] = ACTIONS(4712), [sym_directive] = ACTIONS(3), }, [2639] = { [sym_identifier] = ACTIONS(4480), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4482), [anon_sym_SEMI] = ACTIONS(4482), [anon_sym_TILDE] = ACTIONS(4482), [anon_sym_AT] = ACTIONS(4482), [sym_bool] = ACTIONS(4480), [sym_byte] = ACTIONS(4480), [sym_ubyte] = ACTIONS(4480), [sym_char] = ACTIONS(4480), [sym_short] = ACTIONS(4480), [sym_ushort] = ACTIONS(4480), [sym_int] = ACTIONS(4480), [sym_uint] = ACTIONS(4480), [sym_long] = ACTIONS(4480), [sym_ulong] = ACTIONS(4480), [sym_cent] = ACTIONS(4480), [sym_ucent] = ACTIONS(4480), [sym_wchar] = ACTIONS(4480), [sym_dchar] = ACTIONS(4480), [sym_float] = ACTIONS(4480), [sym_double] = ACTIONS(4480), [sym_real] = ACTIONS(4480), [sym_ifloat] = ACTIONS(4480), [sym_idouble] = ACTIONS(4480), [sym_ireal] = ACTIONS(4480), [sym_cfloat] = ACTIONS(4480), [sym_cdouble] = ACTIONS(4480), [sym_creal] = ACTIONS(4480), [sym_size_t] = ACTIONS(4480), [sym_ptrdiff_t] = ACTIONS(4480), [sym_string] = ACTIONS(4480), [sym_cstring] = ACTIONS(4480), [sym_dstring] = ACTIONS(4480), [sym_wstring] = ACTIONS(4480), [sym_noreturn] = ACTIONS(4480), [sym_this] = ACTIONS(4480), [sym_abstract] = ACTIONS(4480), [sym_alias] = ACTIONS(4480), [sym_align] = ACTIONS(4480), [sym_auto] = ACTIONS(4480), [sym_catch] = ACTIONS(4480), [sym_class] = ACTIONS(4480), [sym_const] = ACTIONS(4480), [sym_debug] = ACTIONS(4480), [sym_deprecated] = ACTIONS(4480), [sym_else] = ACTIONS(4480), [sym_enum] = ACTIONS(4480), [sym_export] = ACTIONS(4480), [sym_extern] = ACTIONS(4480), [sym_final] = ACTIONS(4480), [sym_finally] = ACTIONS(4480), [sym_immutable] = ACTIONS(4480), [sym_import] = ACTIONS(4480), [sym_inout] = ACTIONS(4480), [sym_interface] = ACTIONS(4480), [sym_invariant] = ACTIONS(4480), [sym_mixin] = ACTIONS(4480), [sym_nothrow] = ACTIONS(4480), [sym_override] = ACTIONS(4480), [sym_package] = ACTIONS(4480), [sym_pragma] = ACTIONS(4480), [sym_private] = ACTIONS(4480), [sym_protected] = ACTIONS(4480), [sym_public] = ACTIONS(4480), [sym_pure] = ACTIONS(4480), [sym_ref] = ACTIONS(4480), [sym_return] = ACTIONS(4480), [sym_scope] = ACTIONS(4480), [sym_shared] = ACTIONS(4480), [sym_static] = ACTIONS(4480), [sym_struct] = ACTIONS(4480), [sym_synchronized] = ACTIONS(4480), [sym_template] = ACTIONS(4480), [sym_typeof] = ACTIONS(4480), [sym_union] = ACTIONS(4480), [sym_unittest] = ACTIONS(4480), [sym_version] = ACTIONS(4480), [sym_while] = ACTIONS(4480), [sym_gshared] = ACTIONS(4480), [sym_traits] = ACTIONS(4480), [sym_vector] = ACTIONS(4480), [sym_void] = ACTIONS(4480), [sym_directive] = ACTIONS(3), }, [2640] = { [sym_identifier] = ACTIONS(4720), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4722), [anon_sym_SEMI] = ACTIONS(4722), [anon_sym_TILDE] = ACTIONS(4722), [anon_sym_AT] = ACTIONS(4722), [sym_bool] = ACTIONS(4720), [sym_byte] = ACTIONS(4720), [sym_ubyte] = ACTIONS(4720), [sym_char] = ACTIONS(4720), [sym_short] = ACTIONS(4720), [sym_ushort] = ACTIONS(4720), [sym_int] = ACTIONS(4720), [sym_uint] = ACTIONS(4720), [sym_long] = ACTIONS(4720), [sym_ulong] = ACTIONS(4720), [sym_cent] = ACTIONS(4720), [sym_ucent] = ACTIONS(4720), [sym_wchar] = ACTIONS(4720), [sym_dchar] = ACTIONS(4720), [sym_float] = ACTIONS(4720), [sym_double] = ACTIONS(4720), [sym_real] = ACTIONS(4720), [sym_ifloat] = ACTIONS(4720), [sym_idouble] = ACTIONS(4720), [sym_ireal] = ACTIONS(4720), [sym_cfloat] = ACTIONS(4720), [sym_cdouble] = ACTIONS(4720), [sym_creal] = ACTIONS(4720), [sym_size_t] = ACTIONS(4720), [sym_ptrdiff_t] = ACTIONS(4720), [sym_string] = ACTIONS(4720), [sym_cstring] = ACTIONS(4720), [sym_dstring] = ACTIONS(4720), [sym_wstring] = ACTIONS(4720), [sym_noreturn] = ACTIONS(4720), [sym_this] = ACTIONS(4720), [sym_abstract] = ACTIONS(4720), [sym_alias] = ACTIONS(4720), [sym_align] = ACTIONS(4720), [sym_auto] = ACTIONS(4720), [sym_catch] = ACTIONS(4720), [sym_class] = ACTIONS(4720), [sym_const] = ACTIONS(4720), [sym_debug] = ACTIONS(4720), [sym_deprecated] = ACTIONS(4720), [sym_else] = ACTIONS(4720), [sym_enum] = ACTIONS(4720), [sym_export] = ACTIONS(4720), [sym_extern] = ACTIONS(4720), [sym_final] = ACTIONS(4720), [sym_finally] = ACTIONS(4720), [sym_immutable] = ACTIONS(4720), [sym_import] = ACTIONS(4720), [sym_inout] = ACTIONS(4720), [sym_interface] = ACTIONS(4720), [sym_invariant] = ACTIONS(4720), [sym_mixin] = ACTIONS(4720), [sym_nothrow] = ACTIONS(4720), [sym_override] = ACTIONS(4720), [sym_package] = ACTIONS(4720), [sym_pragma] = ACTIONS(4720), [sym_private] = ACTIONS(4720), [sym_protected] = ACTIONS(4720), [sym_public] = ACTIONS(4720), [sym_pure] = ACTIONS(4720), [sym_ref] = ACTIONS(4720), [sym_return] = ACTIONS(4720), [sym_scope] = ACTIONS(4720), [sym_shared] = ACTIONS(4720), [sym_static] = ACTIONS(4720), [sym_struct] = ACTIONS(4720), [sym_synchronized] = ACTIONS(4720), [sym_template] = ACTIONS(4720), [sym_typeof] = ACTIONS(4720), [sym_union] = ACTIONS(4720), [sym_unittest] = ACTIONS(4720), [sym_version] = ACTIONS(4720), [sym_while] = ACTIONS(4720), [sym_gshared] = ACTIONS(4720), [sym_traits] = ACTIONS(4720), [sym_vector] = ACTIONS(4720), [sym_void] = ACTIONS(4720), [sym_directive] = ACTIONS(3), }, [2641] = { [ts_builtin_sym_end] = ACTIONS(4552), [sym_identifier] = ACTIONS(4550), [sym_end_file] = ACTIONS(4550), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4552), [anon_sym_SEMI] = ACTIONS(4552), [anon_sym_TILDE] = ACTIONS(4552), [anon_sym_AT] = ACTIONS(4552), [sym_bool] = ACTIONS(4550), [sym_byte] = ACTIONS(4550), [sym_ubyte] = ACTIONS(4550), [sym_char] = ACTIONS(4550), [sym_short] = ACTIONS(4550), [sym_ushort] = ACTIONS(4550), [sym_int] = ACTIONS(4550), [sym_uint] = ACTIONS(4550), [sym_long] = ACTIONS(4550), [sym_ulong] = ACTIONS(4550), [sym_cent] = ACTIONS(4550), [sym_ucent] = ACTIONS(4550), [sym_wchar] = ACTIONS(4550), [sym_dchar] = ACTIONS(4550), [sym_float] = ACTIONS(4550), [sym_double] = ACTIONS(4550), [sym_real] = ACTIONS(4550), [sym_ifloat] = ACTIONS(4550), [sym_idouble] = ACTIONS(4550), [sym_ireal] = ACTIONS(4550), [sym_cfloat] = ACTIONS(4550), [sym_cdouble] = ACTIONS(4550), [sym_creal] = ACTIONS(4550), [sym_size_t] = ACTIONS(4550), [sym_ptrdiff_t] = ACTIONS(4550), [sym_string] = ACTIONS(4550), [sym_cstring] = ACTIONS(4550), [sym_dstring] = ACTIONS(4550), [sym_wstring] = ACTIONS(4550), [sym_noreturn] = ACTIONS(4550), [sym_this] = ACTIONS(4550), [sym_abstract] = ACTIONS(4550), [sym_alias] = ACTIONS(4550), [sym_align] = ACTIONS(4550), [sym_auto] = ACTIONS(4550), [sym_class] = ACTIONS(4550), [sym_const] = ACTIONS(4550), [sym_debug] = ACTIONS(4550), [sym_deprecated] = ACTIONS(4550), [sym_else] = ACTIONS(4550), [sym_enum] = ACTIONS(4550), [sym_export] = ACTIONS(4550), [sym_extern] = ACTIONS(4550), [sym_final] = ACTIONS(4550), [sym_immutable] = ACTIONS(4550), [sym_import] = ACTIONS(4550), [sym_inout] = ACTIONS(4550), [sym_interface] = ACTIONS(4550), [sym_invariant] = ACTIONS(4550), [sym_mixin] = ACTIONS(4550), [sym_nothrow] = ACTIONS(4550), [sym_override] = ACTIONS(4550), [sym_package] = ACTIONS(4550), [sym_pragma] = ACTIONS(4550), [sym_private] = ACTIONS(4550), [sym_protected] = ACTIONS(4550), [sym_public] = ACTIONS(4550), [sym_pure] = ACTIONS(4550), [sym_ref] = ACTIONS(4550), [sym_return] = ACTIONS(4550), [sym_scope] = ACTIONS(4550), [sym_shared] = ACTIONS(4550), [sym_static] = ACTIONS(4550), [sym_struct] = ACTIONS(4550), [sym_synchronized] = ACTIONS(4550), [sym_template] = ACTIONS(4550), [sym_typeof] = ACTIONS(4550), [sym_union] = ACTIONS(4550), [sym_unittest] = ACTIONS(4550), [sym_version] = ACTIONS(4550), [sym_while] = ACTIONS(4550), [sym_gshared] = ACTIONS(4550), [sym_traits] = ACTIONS(4550), [sym_vector] = ACTIONS(4550), [sym_void] = ACTIONS(4550), [sym_directive] = ACTIONS(3), }, [2642] = { [sym_identifier] = ACTIONS(4732), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4734), [anon_sym_SEMI] = ACTIONS(4734), [anon_sym_TILDE] = ACTIONS(4734), [anon_sym_AT] = ACTIONS(4734), [sym_bool] = ACTIONS(4732), [sym_byte] = ACTIONS(4732), [sym_ubyte] = ACTIONS(4732), [sym_char] = ACTIONS(4732), [sym_short] = ACTIONS(4732), [sym_ushort] = ACTIONS(4732), [sym_int] = ACTIONS(4732), [sym_uint] = ACTIONS(4732), [sym_long] = ACTIONS(4732), [sym_ulong] = ACTIONS(4732), [sym_cent] = ACTIONS(4732), [sym_ucent] = ACTIONS(4732), [sym_wchar] = ACTIONS(4732), [sym_dchar] = ACTIONS(4732), [sym_float] = ACTIONS(4732), [sym_double] = ACTIONS(4732), [sym_real] = ACTIONS(4732), [sym_ifloat] = ACTIONS(4732), [sym_idouble] = ACTIONS(4732), [sym_ireal] = ACTIONS(4732), [sym_cfloat] = ACTIONS(4732), [sym_cdouble] = ACTIONS(4732), [sym_creal] = ACTIONS(4732), [sym_size_t] = ACTIONS(4732), [sym_ptrdiff_t] = ACTIONS(4732), [sym_string] = ACTIONS(4732), [sym_cstring] = ACTIONS(4732), [sym_dstring] = ACTIONS(4732), [sym_wstring] = ACTIONS(4732), [sym_noreturn] = ACTIONS(4732), [sym_this] = ACTIONS(4732), [sym_abstract] = ACTIONS(4732), [sym_alias] = ACTIONS(4732), [sym_align] = ACTIONS(4732), [sym_auto] = ACTIONS(4732), [sym_catch] = ACTIONS(4732), [sym_class] = ACTIONS(4732), [sym_const] = ACTIONS(4732), [sym_debug] = ACTIONS(4732), [sym_deprecated] = ACTIONS(4732), [sym_else] = ACTIONS(4732), [sym_enum] = ACTIONS(4732), [sym_export] = ACTIONS(4732), [sym_extern] = ACTIONS(4732), [sym_final] = ACTIONS(4732), [sym_finally] = ACTIONS(4732), [sym_immutable] = ACTIONS(4732), [sym_import] = ACTIONS(4732), [sym_inout] = ACTIONS(4732), [sym_interface] = ACTIONS(4732), [sym_invariant] = ACTIONS(4732), [sym_mixin] = ACTIONS(4732), [sym_nothrow] = ACTIONS(4732), [sym_override] = ACTIONS(4732), [sym_package] = ACTIONS(4732), [sym_pragma] = ACTIONS(4732), [sym_private] = ACTIONS(4732), [sym_protected] = ACTIONS(4732), [sym_public] = ACTIONS(4732), [sym_pure] = ACTIONS(4732), [sym_ref] = ACTIONS(4732), [sym_return] = ACTIONS(4732), [sym_scope] = ACTIONS(4732), [sym_shared] = ACTIONS(4732), [sym_static] = ACTIONS(4732), [sym_struct] = ACTIONS(4732), [sym_synchronized] = ACTIONS(4732), [sym_template] = ACTIONS(4732), [sym_typeof] = ACTIONS(4732), [sym_union] = ACTIONS(4732), [sym_unittest] = ACTIONS(4732), [sym_version] = ACTIONS(4732), [sym_while] = ACTIONS(4732), [sym_gshared] = ACTIONS(4732), [sym_traits] = ACTIONS(4732), [sym_vector] = ACTIONS(4732), [sym_void] = ACTIONS(4732), [sym_directive] = ACTIONS(3), }, [2643] = { [sym_identifier] = ACTIONS(4736), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4738), [anon_sym_SEMI] = ACTIONS(4738), [anon_sym_TILDE] = ACTIONS(4738), [anon_sym_AT] = ACTIONS(4738), [sym_bool] = ACTIONS(4736), [sym_byte] = ACTIONS(4736), [sym_ubyte] = ACTIONS(4736), [sym_char] = ACTIONS(4736), [sym_short] = ACTIONS(4736), [sym_ushort] = ACTIONS(4736), [sym_int] = ACTIONS(4736), [sym_uint] = ACTIONS(4736), [sym_long] = ACTIONS(4736), [sym_ulong] = ACTIONS(4736), [sym_cent] = ACTIONS(4736), [sym_ucent] = ACTIONS(4736), [sym_wchar] = ACTIONS(4736), [sym_dchar] = ACTIONS(4736), [sym_float] = ACTIONS(4736), [sym_double] = ACTIONS(4736), [sym_real] = ACTIONS(4736), [sym_ifloat] = ACTIONS(4736), [sym_idouble] = ACTIONS(4736), [sym_ireal] = ACTIONS(4736), [sym_cfloat] = ACTIONS(4736), [sym_cdouble] = ACTIONS(4736), [sym_creal] = ACTIONS(4736), [sym_size_t] = ACTIONS(4736), [sym_ptrdiff_t] = ACTIONS(4736), [sym_string] = ACTIONS(4736), [sym_cstring] = ACTIONS(4736), [sym_dstring] = ACTIONS(4736), [sym_wstring] = ACTIONS(4736), [sym_noreturn] = ACTIONS(4736), [sym_this] = ACTIONS(4736), [sym_abstract] = ACTIONS(4736), [sym_alias] = ACTIONS(4736), [sym_align] = ACTIONS(4736), [sym_auto] = ACTIONS(4736), [sym_catch] = ACTIONS(4736), [sym_class] = ACTIONS(4736), [sym_const] = ACTIONS(4736), [sym_debug] = ACTIONS(4736), [sym_deprecated] = ACTIONS(4736), [sym_else] = ACTIONS(4736), [sym_enum] = ACTIONS(4736), [sym_export] = ACTIONS(4736), [sym_extern] = ACTIONS(4736), [sym_final] = ACTIONS(4736), [sym_finally] = ACTIONS(4736), [sym_immutable] = ACTIONS(4736), [sym_import] = ACTIONS(4736), [sym_inout] = ACTIONS(4736), [sym_interface] = ACTIONS(4736), [sym_invariant] = ACTIONS(4736), [sym_mixin] = ACTIONS(4736), [sym_nothrow] = ACTIONS(4736), [sym_override] = ACTIONS(4736), [sym_package] = ACTIONS(4736), [sym_pragma] = ACTIONS(4736), [sym_private] = ACTIONS(4736), [sym_protected] = ACTIONS(4736), [sym_public] = ACTIONS(4736), [sym_pure] = ACTIONS(4736), [sym_ref] = ACTIONS(4736), [sym_return] = ACTIONS(4736), [sym_scope] = ACTIONS(4736), [sym_shared] = ACTIONS(4736), [sym_static] = ACTIONS(4736), [sym_struct] = ACTIONS(4736), [sym_synchronized] = ACTIONS(4736), [sym_template] = ACTIONS(4736), [sym_typeof] = ACTIONS(4736), [sym_union] = ACTIONS(4736), [sym_unittest] = ACTIONS(4736), [sym_version] = ACTIONS(4736), [sym_while] = ACTIONS(4736), [sym_gshared] = ACTIONS(4736), [sym_traits] = ACTIONS(4736), [sym_vector] = ACTIONS(4736), [sym_void] = ACTIONS(4736), [sym_directive] = ACTIONS(3), }, [2644] = { [ts_builtin_sym_end] = ACTIONS(4854), [sym_identifier] = ACTIONS(4852), [sym_end_file] = ACTIONS(4852), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4854), [anon_sym_SEMI] = ACTIONS(4854), [anon_sym_TILDE] = ACTIONS(4854), [anon_sym_AT] = ACTIONS(4854), [sym_bool] = ACTIONS(4852), [sym_byte] = ACTIONS(4852), [sym_ubyte] = ACTIONS(4852), [sym_char] = ACTIONS(4852), [sym_short] = ACTIONS(4852), [sym_ushort] = ACTIONS(4852), [sym_int] = ACTIONS(4852), [sym_uint] = ACTIONS(4852), [sym_long] = ACTIONS(4852), [sym_ulong] = ACTIONS(4852), [sym_cent] = ACTIONS(4852), [sym_ucent] = ACTIONS(4852), [sym_wchar] = ACTIONS(4852), [sym_dchar] = ACTIONS(4852), [sym_float] = ACTIONS(4852), [sym_double] = ACTIONS(4852), [sym_real] = ACTIONS(4852), [sym_ifloat] = ACTIONS(4852), [sym_idouble] = ACTIONS(4852), [sym_ireal] = ACTIONS(4852), [sym_cfloat] = ACTIONS(4852), [sym_cdouble] = ACTIONS(4852), [sym_creal] = ACTIONS(4852), [sym_size_t] = ACTIONS(4852), [sym_ptrdiff_t] = ACTIONS(4852), [sym_string] = ACTIONS(4852), [sym_cstring] = ACTIONS(4852), [sym_dstring] = ACTIONS(4852), [sym_wstring] = ACTIONS(4852), [sym_noreturn] = ACTIONS(4852), [sym_this] = ACTIONS(4852), [sym_abstract] = ACTIONS(4852), [sym_alias] = ACTIONS(4852), [sym_align] = ACTIONS(4852), [sym_auto] = ACTIONS(4852), [sym_class] = ACTIONS(4852), [sym_const] = ACTIONS(4852), [sym_debug] = ACTIONS(4852), [sym_deprecated] = ACTIONS(4852), [sym_else] = ACTIONS(4852), [sym_enum] = ACTIONS(4852), [sym_export] = ACTIONS(4852), [sym_extern] = ACTIONS(4852), [sym_final] = ACTIONS(4852), [sym_immutable] = ACTIONS(4852), [sym_import] = ACTIONS(4852), [sym_inout] = ACTIONS(4852), [sym_interface] = ACTIONS(4852), [sym_invariant] = ACTIONS(4852), [sym_mixin] = ACTIONS(4852), [sym_nothrow] = ACTIONS(4852), [sym_override] = ACTIONS(4852), [sym_package] = ACTIONS(4852), [sym_pragma] = ACTIONS(4852), [sym_private] = ACTIONS(4852), [sym_protected] = ACTIONS(4852), [sym_public] = ACTIONS(4852), [sym_pure] = ACTIONS(4852), [sym_ref] = ACTIONS(4852), [sym_return] = ACTIONS(4852), [sym_scope] = ACTIONS(4852), [sym_shared] = ACTIONS(4852), [sym_static] = ACTIONS(4852), [sym_struct] = ACTIONS(4852), [sym_synchronized] = ACTIONS(4852), [sym_template] = ACTIONS(4852), [sym_typeof] = ACTIONS(4852), [sym_union] = ACTIONS(4852), [sym_unittest] = ACTIONS(4852), [sym_version] = ACTIONS(4852), [sym_while] = ACTIONS(4852), [sym_gshared] = ACTIONS(4852), [sym_traits] = ACTIONS(4852), [sym_vector] = ACTIONS(4852), [sym_void] = ACTIONS(4852), [sym_directive] = ACTIONS(3), }, [2645] = { [sym_identifier] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2804), [anon_sym_AT] = ACTIONS(2804), [sym_bool] = ACTIONS(2806), [sym_byte] = ACTIONS(2806), [sym_ubyte] = ACTIONS(2806), [sym_char] = ACTIONS(2806), [sym_short] = ACTIONS(2806), [sym_ushort] = ACTIONS(2806), [sym_int] = ACTIONS(2806), [sym_uint] = ACTIONS(2806), [sym_long] = ACTIONS(2806), [sym_ulong] = ACTIONS(2806), [sym_cent] = ACTIONS(2806), [sym_ucent] = ACTIONS(2806), [sym_wchar] = ACTIONS(2806), [sym_dchar] = ACTIONS(2806), [sym_float] = ACTIONS(2806), [sym_double] = ACTIONS(2806), [sym_real] = ACTIONS(2806), [sym_ifloat] = ACTIONS(2806), [sym_idouble] = ACTIONS(2806), [sym_ireal] = ACTIONS(2806), [sym_cfloat] = ACTIONS(2806), [sym_cdouble] = ACTIONS(2806), [sym_creal] = ACTIONS(2806), [sym_size_t] = ACTIONS(2806), [sym_ptrdiff_t] = ACTIONS(2806), [sym_string] = ACTIONS(2806), [sym_cstring] = ACTIONS(2806), [sym_dstring] = ACTIONS(2806), [sym_wstring] = ACTIONS(2806), [sym_noreturn] = ACTIONS(2806), [sym_this] = ACTIONS(2806), [sym_abstract] = ACTIONS(2806), [sym_alias] = ACTIONS(2806), [sym_align] = ACTIONS(2806), [sym_auto] = ACTIONS(2806), [sym_catch] = ACTIONS(2806), [sym_class] = ACTIONS(2806), [sym_const] = ACTIONS(2806), [sym_debug] = ACTIONS(2806), [sym_deprecated] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(2806), [sym_export] = ACTIONS(2806), [sym_extern] = ACTIONS(2806), [sym_final] = ACTIONS(2806), [sym_finally] = ACTIONS(2806), [sym_immutable] = ACTIONS(2806), [sym_import] = ACTIONS(2806), [sym_inout] = ACTIONS(2806), [sym_interface] = ACTIONS(2806), [sym_invariant] = ACTIONS(2806), [sym_mixin] = ACTIONS(2806), [sym_nothrow] = ACTIONS(2806), [sym_override] = ACTIONS(2806), [sym_package] = ACTIONS(2806), [sym_pragma] = ACTIONS(2806), [sym_private] = ACTIONS(2806), [sym_protected] = ACTIONS(2806), [sym_public] = ACTIONS(2806), [sym_pure] = ACTIONS(2806), [sym_ref] = ACTIONS(2806), [sym_return] = ACTIONS(2806), [sym_scope] = ACTIONS(2806), [sym_shared] = ACTIONS(2806), [sym_static] = ACTIONS(2806), [sym_struct] = ACTIONS(2806), [sym_synchronized] = ACTIONS(2806), [sym_template] = ACTIONS(2806), [sym_typeof] = ACTIONS(2806), [sym_union] = ACTIONS(2806), [sym_unittest] = ACTIONS(2806), [sym_version] = ACTIONS(2806), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(2806), [sym_traits] = ACTIONS(2806), [sym_vector] = ACTIONS(2806), [sym_void] = ACTIONS(2806), [sym_directive] = ACTIONS(3), }, [2646] = { [sym_identifier] = ACTIONS(4774), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4776), [anon_sym_SEMI] = ACTIONS(4776), [anon_sym_TILDE] = ACTIONS(4776), [anon_sym_AT] = ACTIONS(4776), [sym_bool] = ACTIONS(4774), [sym_byte] = ACTIONS(4774), [sym_ubyte] = ACTIONS(4774), [sym_char] = ACTIONS(4774), [sym_short] = ACTIONS(4774), [sym_ushort] = ACTIONS(4774), [sym_int] = ACTIONS(4774), [sym_uint] = ACTIONS(4774), [sym_long] = ACTIONS(4774), [sym_ulong] = ACTIONS(4774), [sym_cent] = ACTIONS(4774), [sym_ucent] = ACTIONS(4774), [sym_wchar] = ACTIONS(4774), [sym_dchar] = ACTIONS(4774), [sym_float] = ACTIONS(4774), [sym_double] = ACTIONS(4774), [sym_real] = ACTIONS(4774), [sym_ifloat] = ACTIONS(4774), [sym_idouble] = ACTIONS(4774), [sym_ireal] = ACTIONS(4774), [sym_cfloat] = ACTIONS(4774), [sym_cdouble] = ACTIONS(4774), [sym_creal] = ACTIONS(4774), [sym_size_t] = ACTIONS(4774), [sym_ptrdiff_t] = ACTIONS(4774), [sym_string] = ACTIONS(4774), [sym_cstring] = ACTIONS(4774), [sym_dstring] = ACTIONS(4774), [sym_wstring] = ACTIONS(4774), [sym_noreturn] = ACTIONS(4774), [sym_this] = ACTIONS(4774), [sym_abstract] = ACTIONS(4774), [sym_alias] = ACTIONS(4774), [sym_align] = ACTIONS(4774), [sym_auto] = ACTIONS(4774), [sym_catch] = ACTIONS(4774), [sym_class] = ACTIONS(4774), [sym_const] = ACTIONS(4774), [sym_debug] = ACTIONS(4774), [sym_deprecated] = ACTIONS(4774), [sym_else] = ACTIONS(4774), [sym_enum] = ACTIONS(4774), [sym_export] = ACTIONS(4774), [sym_extern] = ACTIONS(4774), [sym_final] = ACTIONS(4774), [sym_finally] = ACTIONS(4774), [sym_immutable] = ACTIONS(4774), [sym_import] = ACTIONS(4774), [sym_inout] = ACTIONS(4774), [sym_interface] = ACTIONS(4774), [sym_invariant] = ACTIONS(4774), [sym_mixin] = ACTIONS(4774), [sym_nothrow] = ACTIONS(4774), [sym_override] = ACTIONS(4774), [sym_package] = ACTIONS(4774), [sym_pragma] = ACTIONS(4774), [sym_private] = ACTIONS(4774), [sym_protected] = ACTIONS(4774), [sym_public] = ACTIONS(4774), [sym_pure] = ACTIONS(4774), [sym_ref] = ACTIONS(4774), [sym_return] = ACTIONS(4774), [sym_scope] = ACTIONS(4774), [sym_shared] = ACTIONS(4774), [sym_static] = ACTIONS(4774), [sym_struct] = ACTIONS(4774), [sym_synchronized] = ACTIONS(4774), [sym_template] = ACTIONS(4774), [sym_typeof] = ACTIONS(4774), [sym_union] = ACTIONS(4774), [sym_unittest] = ACTIONS(4774), [sym_version] = ACTIONS(4774), [sym_while] = ACTIONS(4774), [sym_gshared] = ACTIONS(4774), [sym_traits] = ACTIONS(4774), [sym_vector] = ACTIONS(4774), [sym_void] = ACTIONS(4774), [sym_directive] = ACTIONS(3), }, [2647] = { [sym_identifier] = ACTIONS(4788), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4790), [anon_sym_SEMI] = ACTIONS(4790), [anon_sym_TILDE] = ACTIONS(4790), [anon_sym_AT] = ACTIONS(4790), [sym_bool] = ACTIONS(4788), [sym_byte] = ACTIONS(4788), [sym_ubyte] = ACTIONS(4788), [sym_char] = ACTIONS(4788), [sym_short] = ACTIONS(4788), [sym_ushort] = ACTIONS(4788), [sym_int] = ACTIONS(4788), [sym_uint] = ACTIONS(4788), [sym_long] = ACTIONS(4788), [sym_ulong] = ACTIONS(4788), [sym_cent] = ACTIONS(4788), [sym_ucent] = ACTIONS(4788), [sym_wchar] = ACTIONS(4788), [sym_dchar] = ACTIONS(4788), [sym_float] = ACTIONS(4788), [sym_double] = ACTIONS(4788), [sym_real] = ACTIONS(4788), [sym_ifloat] = ACTIONS(4788), [sym_idouble] = ACTIONS(4788), [sym_ireal] = ACTIONS(4788), [sym_cfloat] = ACTIONS(4788), [sym_cdouble] = ACTIONS(4788), [sym_creal] = ACTIONS(4788), [sym_size_t] = ACTIONS(4788), [sym_ptrdiff_t] = ACTIONS(4788), [sym_string] = ACTIONS(4788), [sym_cstring] = ACTIONS(4788), [sym_dstring] = ACTIONS(4788), [sym_wstring] = ACTIONS(4788), [sym_noreturn] = ACTIONS(4788), [sym_this] = ACTIONS(4788), [sym_abstract] = ACTIONS(4788), [sym_alias] = ACTIONS(4788), [sym_align] = ACTIONS(4788), [sym_auto] = ACTIONS(4788), [sym_catch] = ACTIONS(4788), [sym_class] = ACTIONS(4788), [sym_const] = ACTIONS(4788), [sym_debug] = ACTIONS(4788), [sym_deprecated] = ACTIONS(4788), [sym_else] = ACTIONS(4788), [sym_enum] = ACTIONS(4788), [sym_export] = ACTIONS(4788), [sym_extern] = ACTIONS(4788), [sym_final] = ACTIONS(4788), [sym_finally] = ACTIONS(4788), [sym_immutable] = ACTIONS(4788), [sym_import] = ACTIONS(4788), [sym_inout] = ACTIONS(4788), [sym_interface] = ACTIONS(4788), [sym_invariant] = ACTIONS(4788), [sym_mixin] = ACTIONS(4788), [sym_nothrow] = ACTIONS(4788), [sym_override] = ACTIONS(4788), [sym_package] = ACTIONS(4788), [sym_pragma] = ACTIONS(4788), [sym_private] = ACTIONS(4788), [sym_protected] = ACTIONS(4788), [sym_public] = ACTIONS(4788), [sym_pure] = ACTIONS(4788), [sym_ref] = ACTIONS(4788), [sym_return] = ACTIONS(4788), [sym_scope] = ACTIONS(4788), [sym_shared] = ACTIONS(4788), [sym_static] = ACTIONS(4788), [sym_struct] = ACTIONS(4788), [sym_synchronized] = ACTIONS(4788), [sym_template] = ACTIONS(4788), [sym_typeof] = ACTIONS(4788), [sym_union] = ACTIONS(4788), [sym_unittest] = ACTIONS(4788), [sym_version] = ACTIONS(4788), [sym_while] = ACTIONS(4788), [sym_gshared] = ACTIONS(4788), [sym_traits] = ACTIONS(4788), [sym_vector] = ACTIONS(4788), [sym_void] = ACTIONS(4788), [sym_directive] = ACTIONS(3), }, [2648] = { [sym_identifier] = ACTIONS(4832), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4834), [anon_sym_SEMI] = ACTIONS(4834), [anon_sym_TILDE] = ACTIONS(4834), [anon_sym_AT] = ACTIONS(4834), [sym_bool] = ACTIONS(4832), [sym_byte] = ACTIONS(4832), [sym_ubyte] = ACTIONS(4832), [sym_char] = ACTIONS(4832), [sym_short] = ACTIONS(4832), [sym_ushort] = ACTIONS(4832), [sym_int] = ACTIONS(4832), [sym_uint] = ACTIONS(4832), [sym_long] = ACTIONS(4832), [sym_ulong] = ACTIONS(4832), [sym_cent] = ACTIONS(4832), [sym_ucent] = ACTIONS(4832), [sym_wchar] = ACTIONS(4832), [sym_dchar] = ACTIONS(4832), [sym_float] = ACTIONS(4832), [sym_double] = ACTIONS(4832), [sym_real] = ACTIONS(4832), [sym_ifloat] = ACTIONS(4832), [sym_idouble] = ACTIONS(4832), [sym_ireal] = ACTIONS(4832), [sym_cfloat] = ACTIONS(4832), [sym_cdouble] = ACTIONS(4832), [sym_creal] = ACTIONS(4832), [sym_size_t] = ACTIONS(4832), [sym_ptrdiff_t] = ACTIONS(4832), [sym_string] = ACTIONS(4832), [sym_cstring] = ACTIONS(4832), [sym_dstring] = ACTIONS(4832), [sym_wstring] = ACTIONS(4832), [sym_noreturn] = ACTIONS(4832), [sym_this] = ACTIONS(4832), [sym_abstract] = ACTIONS(4832), [sym_alias] = ACTIONS(4832), [sym_align] = ACTIONS(4832), [sym_auto] = ACTIONS(4832), [sym_catch] = ACTIONS(4832), [sym_class] = ACTIONS(4832), [sym_const] = ACTIONS(4832), [sym_debug] = ACTIONS(4832), [sym_deprecated] = ACTIONS(4832), [sym_else] = ACTIONS(4832), [sym_enum] = ACTIONS(4832), [sym_export] = ACTIONS(4832), [sym_extern] = ACTIONS(4832), [sym_final] = ACTIONS(4832), [sym_finally] = ACTIONS(4832), [sym_immutable] = ACTIONS(4832), [sym_import] = ACTIONS(4832), [sym_inout] = ACTIONS(4832), [sym_interface] = ACTIONS(4832), [sym_invariant] = ACTIONS(4832), [sym_mixin] = ACTIONS(4832), [sym_nothrow] = ACTIONS(4832), [sym_override] = ACTIONS(4832), [sym_package] = ACTIONS(4832), [sym_pragma] = ACTIONS(4832), [sym_private] = ACTIONS(4832), [sym_protected] = ACTIONS(4832), [sym_public] = ACTIONS(4832), [sym_pure] = ACTIONS(4832), [sym_ref] = ACTIONS(4832), [sym_return] = ACTIONS(4832), [sym_scope] = ACTIONS(4832), [sym_shared] = ACTIONS(4832), [sym_static] = ACTIONS(4832), [sym_struct] = ACTIONS(4832), [sym_synchronized] = ACTIONS(4832), [sym_template] = ACTIONS(4832), [sym_typeof] = ACTIONS(4832), [sym_union] = ACTIONS(4832), [sym_unittest] = ACTIONS(4832), [sym_version] = ACTIONS(4832), [sym_while] = ACTIONS(4832), [sym_gshared] = ACTIONS(4832), [sym_traits] = ACTIONS(4832), [sym_vector] = ACTIONS(4832), [sym_void] = ACTIONS(4832), [sym_directive] = ACTIONS(3), }, [2649] = { [sym_identifier] = ACTIONS(4836), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4838), [anon_sym_SEMI] = ACTIONS(4838), [anon_sym_TILDE] = ACTIONS(4838), [anon_sym_AT] = ACTIONS(4838), [sym_bool] = ACTIONS(4836), [sym_byte] = ACTIONS(4836), [sym_ubyte] = ACTIONS(4836), [sym_char] = ACTIONS(4836), [sym_short] = ACTIONS(4836), [sym_ushort] = ACTIONS(4836), [sym_int] = ACTIONS(4836), [sym_uint] = ACTIONS(4836), [sym_long] = ACTIONS(4836), [sym_ulong] = ACTIONS(4836), [sym_cent] = ACTIONS(4836), [sym_ucent] = ACTIONS(4836), [sym_wchar] = ACTIONS(4836), [sym_dchar] = ACTIONS(4836), [sym_float] = ACTIONS(4836), [sym_double] = ACTIONS(4836), [sym_real] = ACTIONS(4836), [sym_ifloat] = ACTIONS(4836), [sym_idouble] = ACTIONS(4836), [sym_ireal] = ACTIONS(4836), [sym_cfloat] = ACTIONS(4836), [sym_cdouble] = ACTIONS(4836), [sym_creal] = ACTIONS(4836), [sym_size_t] = ACTIONS(4836), [sym_ptrdiff_t] = ACTIONS(4836), [sym_string] = ACTIONS(4836), [sym_cstring] = ACTIONS(4836), [sym_dstring] = ACTIONS(4836), [sym_wstring] = ACTIONS(4836), [sym_noreturn] = ACTIONS(4836), [sym_this] = ACTIONS(4836), [sym_abstract] = ACTIONS(4836), [sym_alias] = ACTIONS(4836), [sym_align] = ACTIONS(4836), [sym_auto] = ACTIONS(4836), [sym_catch] = ACTIONS(4836), [sym_class] = ACTIONS(4836), [sym_const] = ACTIONS(4836), [sym_debug] = ACTIONS(4836), [sym_deprecated] = ACTIONS(4836), [sym_else] = ACTIONS(4836), [sym_enum] = ACTIONS(4836), [sym_export] = ACTIONS(4836), [sym_extern] = ACTIONS(4836), [sym_final] = ACTIONS(4836), [sym_finally] = ACTIONS(4836), [sym_immutable] = ACTIONS(4836), [sym_import] = ACTIONS(4836), [sym_inout] = ACTIONS(4836), [sym_interface] = ACTIONS(4836), [sym_invariant] = ACTIONS(4836), [sym_mixin] = ACTIONS(4836), [sym_nothrow] = ACTIONS(4836), [sym_override] = ACTIONS(4836), [sym_package] = ACTIONS(4836), [sym_pragma] = ACTIONS(4836), [sym_private] = ACTIONS(4836), [sym_protected] = ACTIONS(4836), [sym_public] = ACTIONS(4836), [sym_pure] = ACTIONS(4836), [sym_ref] = ACTIONS(4836), [sym_return] = ACTIONS(4836), [sym_scope] = ACTIONS(4836), [sym_shared] = ACTIONS(4836), [sym_static] = ACTIONS(4836), [sym_struct] = ACTIONS(4836), [sym_synchronized] = ACTIONS(4836), [sym_template] = ACTIONS(4836), [sym_typeof] = ACTIONS(4836), [sym_union] = ACTIONS(4836), [sym_unittest] = ACTIONS(4836), [sym_version] = ACTIONS(4836), [sym_while] = ACTIONS(4836), [sym_gshared] = ACTIONS(4836), [sym_traits] = ACTIONS(4836), [sym_vector] = ACTIONS(4836), [sym_void] = ACTIONS(4836), [sym_directive] = ACTIONS(3), }, [2650] = { [sym_identifier] = ACTIONS(4844), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4846), [anon_sym_SEMI] = ACTIONS(4846), [anon_sym_TILDE] = ACTIONS(4846), [anon_sym_AT] = ACTIONS(4846), [sym_bool] = ACTIONS(4844), [sym_byte] = ACTIONS(4844), [sym_ubyte] = ACTIONS(4844), [sym_char] = ACTIONS(4844), [sym_short] = ACTIONS(4844), [sym_ushort] = ACTIONS(4844), [sym_int] = ACTIONS(4844), [sym_uint] = ACTIONS(4844), [sym_long] = ACTIONS(4844), [sym_ulong] = ACTIONS(4844), [sym_cent] = ACTIONS(4844), [sym_ucent] = ACTIONS(4844), [sym_wchar] = ACTIONS(4844), [sym_dchar] = ACTIONS(4844), [sym_float] = ACTIONS(4844), [sym_double] = ACTIONS(4844), [sym_real] = ACTIONS(4844), [sym_ifloat] = ACTIONS(4844), [sym_idouble] = ACTIONS(4844), [sym_ireal] = ACTIONS(4844), [sym_cfloat] = ACTIONS(4844), [sym_cdouble] = ACTIONS(4844), [sym_creal] = ACTIONS(4844), [sym_size_t] = ACTIONS(4844), [sym_ptrdiff_t] = ACTIONS(4844), [sym_string] = ACTIONS(4844), [sym_cstring] = ACTIONS(4844), [sym_dstring] = ACTIONS(4844), [sym_wstring] = ACTIONS(4844), [sym_noreturn] = ACTIONS(4844), [sym_this] = ACTIONS(4844), [sym_abstract] = ACTIONS(4844), [sym_alias] = ACTIONS(4844), [sym_align] = ACTIONS(4844), [sym_auto] = ACTIONS(4844), [sym_catch] = ACTIONS(4844), [sym_class] = ACTIONS(4844), [sym_const] = ACTIONS(4844), [sym_debug] = ACTIONS(4844), [sym_deprecated] = ACTIONS(4844), [sym_else] = ACTIONS(4844), [sym_enum] = ACTIONS(4844), [sym_export] = ACTIONS(4844), [sym_extern] = ACTIONS(4844), [sym_final] = ACTIONS(4844), [sym_finally] = ACTIONS(4844), [sym_immutable] = ACTIONS(4844), [sym_import] = ACTIONS(4844), [sym_inout] = ACTIONS(4844), [sym_interface] = ACTIONS(4844), [sym_invariant] = ACTIONS(4844), [sym_mixin] = ACTIONS(4844), [sym_nothrow] = ACTIONS(4844), [sym_override] = ACTIONS(4844), [sym_package] = ACTIONS(4844), [sym_pragma] = ACTIONS(4844), [sym_private] = ACTIONS(4844), [sym_protected] = ACTIONS(4844), [sym_public] = ACTIONS(4844), [sym_pure] = ACTIONS(4844), [sym_ref] = ACTIONS(4844), [sym_return] = ACTIONS(4844), [sym_scope] = ACTIONS(4844), [sym_shared] = ACTIONS(4844), [sym_static] = ACTIONS(4844), [sym_struct] = ACTIONS(4844), [sym_synchronized] = ACTIONS(4844), [sym_template] = ACTIONS(4844), [sym_typeof] = ACTIONS(4844), [sym_union] = ACTIONS(4844), [sym_unittest] = ACTIONS(4844), [sym_version] = ACTIONS(4844), [sym_while] = ACTIONS(4844), [sym_gshared] = ACTIONS(4844), [sym_traits] = ACTIONS(4844), [sym_vector] = ACTIONS(4844), [sym_void] = ACTIONS(4844), [sym_directive] = ACTIONS(3), }, [2651] = { [sym_identifier] = ACTIONS(4864), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4866), [anon_sym_SEMI] = ACTIONS(4866), [anon_sym_TILDE] = ACTIONS(4866), [anon_sym_AT] = ACTIONS(4866), [sym_bool] = ACTIONS(4864), [sym_byte] = ACTIONS(4864), [sym_ubyte] = ACTIONS(4864), [sym_char] = ACTIONS(4864), [sym_short] = ACTIONS(4864), [sym_ushort] = ACTIONS(4864), [sym_int] = ACTIONS(4864), [sym_uint] = ACTIONS(4864), [sym_long] = ACTIONS(4864), [sym_ulong] = ACTIONS(4864), [sym_cent] = ACTIONS(4864), [sym_ucent] = ACTIONS(4864), [sym_wchar] = ACTIONS(4864), [sym_dchar] = ACTIONS(4864), [sym_float] = ACTIONS(4864), [sym_double] = ACTIONS(4864), [sym_real] = ACTIONS(4864), [sym_ifloat] = ACTIONS(4864), [sym_idouble] = ACTIONS(4864), [sym_ireal] = ACTIONS(4864), [sym_cfloat] = ACTIONS(4864), [sym_cdouble] = ACTIONS(4864), [sym_creal] = ACTIONS(4864), [sym_size_t] = ACTIONS(4864), [sym_ptrdiff_t] = ACTIONS(4864), [sym_string] = ACTIONS(4864), [sym_cstring] = ACTIONS(4864), [sym_dstring] = ACTIONS(4864), [sym_wstring] = ACTIONS(4864), [sym_noreturn] = ACTIONS(4864), [sym_this] = ACTIONS(4864), [sym_abstract] = ACTIONS(4864), [sym_alias] = ACTIONS(4864), [sym_align] = ACTIONS(4864), [sym_auto] = ACTIONS(4864), [sym_catch] = ACTIONS(4864), [sym_class] = ACTIONS(4864), [sym_const] = ACTIONS(4864), [sym_debug] = ACTIONS(4864), [sym_deprecated] = ACTIONS(4864), [sym_else] = ACTIONS(4864), [sym_enum] = ACTIONS(4864), [sym_export] = ACTIONS(4864), [sym_extern] = ACTIONS(4864), [sym_final] = ACTIONS(4864), [sym_finally] = ACTIONS(4864), [sym_immutable] = ACTIONS(4864), [sym_import] = ACTIONS(4864), [sym_inout] = ACTIONS(4864), [sym_interface] = ACTIONS(4864), [sym_invariant] = ACTIONS(4864), [sym_mixin] = ACTIONS(4864), [sym_nothrow] = ACTIONS(4864), [sym_override] = ACTIONS(4864), [sym_package] = ACTIONS(4864), [sym_pragma] = ACTIONS(4864), [sym_private] = ACTIONS(4864), [sym_protected] = ACTIONS(4864), [sym_public] = ACTIONS(4864), [sym_pure] = ACTIONS(4864), [sym_ref] = ACTIONS(4864), [sym_return] = ACTIONS(4864), [sym_scope] = ACTIONS(4864), [sym_shared] = ACTIONS(4864), [sym_static] = ACTIONS(4864), [sym_struct] = ACTIONS(4864), [sym_synchronized] = ACTIONS(4864), [sym_template] = ACTIONS(4864), [sym_typeof] = ACTIONS(4864), [sym_union] = ACTIONS(4864), [sym_unittest] = ACTIONS(4864), [sym_version] = ACTIONS(4864), [sym_while] = ACTIONS(4864), [sym_gshared] = ACTIONS(4864), [sym_traits] = ACTIONS(4864), [sym_vector] = ACTIONS(4864), [sym_void] = ACTIONS(4864), [sym_directive] = ACTIONS(3), }, [2652] = { [sym_identifier] = ACTIONS(4868), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4870), [anon_sym_SEMI] = ACTIONS(4870), [anon_sym_TILDE] = ACTIONS(4870), [anon_sym_AT] = ACTIONS(4870), [sym_bool] = ACTIONS(4868), [sym_byte] = ACTIONS(4868), [sym_ubyte] = ACTIONS(4868), [sym_char] = ACTIONS(4868), [sym_short] = ACTIONS(4868), [sym_ushort] = ACTIONS(4868), [sym_int] = ACTIONS(4868), [sym_uint] = ACTIONS(4868), [sym_long] = ACTIONS(4868), [sym_ulong] = ACTIONS(4868), [sym_cent] = ACTIONS(4868), [sym_ucent] = ACTIONS(4868), [sym_wchar] = ACTIONS(4868), [sym_dchar] = ACTIONS(4868), [sym_float] = ACTIONS(4868), [sym_double] = ACTIONS(4868), [sym_real] = ACTIONS(4868), [sym_ifloat] = ACTIONS(4868), [sym_idouble] = ACTIONS(4868), [sym_ireal] = ACTIONS(4868), [sym_cfloat] = ACTIONS(4868), [sym_cdouble] = ACTIONS(4868), [sym_creal] = ACTIONS(4868), [sym_size_t] = ACTIONS(4868), [sym_ptrdiff_t] = ACTIONS(4868), [sym_string] = ACTIONS(4868), [sym_cstring] = ACTIONS(4868), [sym_dstring] = ACTIONS(4868), [sym_wstring] = ACTIONS(4868), [sym_noreturn] = ACTIONS(4868), [sym_this] = ACTIONS(4868), [sym_abstract] = ACTIONS(4868), [sym_alias] = ACTIONS(4868), [sym_align] = ACTIONS(4868), [sym_auto] = ACTIONS(4868), [sym_catch] = ACTIONS(4868), [sym_class] = ACTIONS(4868), [sym_const] = ACTIONS(4868), [sym_debug] = ACTIONS(4868), [sym_deprecated] = ACTIONS(4868), [sym_else] = ACTIONS(4868), [sym_enum] = ACTIONS(4868), [sym_export] = ACTIONS(4868), [sym_extern] = ACTIONS(4868), [sym_final] = ACTIONS(4868), [sym_finally] = ACTIONS(4868), [sym_immutable] = ACTIONS(4868), [sym_import] = ACTIONS(4868), [sym_inout] = ACTIONS(4868), [sym_interface] = ACTIONS(4868), [sym_invariant] = ACTIONS(4868), [sym_mixin] = ACTIONS(4868), [sym_nothrow] = ACTIONS(4868), [sym_override] = ACTIONS(4868), [sym_package] = ACTIONS(4868), [sym_pragma] = ACTIONS(4868), [sym_private] = ACTIONS(4868), [sym_protected] = ACTIONS(4868), [sym_public] = ACTIONS(4868), [sym_pure] = ACTIONS(4868), [sym_ref] = ACTIONS(4868), [sym_return] = ACTIONS(4868), [sym_scope] = ACTIONS(4868), [sym_shared] = ACTIONS(4868), [sym_static] = ACTIONS(4868), [sym_struct] = ACTIONS(4868), [sym_synchronized] = ACTIONS(4868), [sym_template] = ACTIONS(4868), [sym_typeof] = ACTIONS(4868), [sym_union] = ACTIONS(4868), [sym_unittest] = ACTIONS(4868), [sym_version] = ACTIONS(4868), [sym_while] = ACTIONS(4868), [sym_gshared] = ACTIONS(4868), [sym_traits] = ACTIONS(4868), [sym_vector] = ACTIONS(4868), [sym_void] = ACTIONS(4868), [sym_directive] = ACTIONS(3), }, [2653] = { [sym_identifier] = ACTIONS(4872), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4874), [anon_sym_SEMI] = ACTIONS(4874), [anon_sym_TILDE] = ACTIONS(4874), [anon_sym_AT] = ACTIONS(4874), [sym_bool] = ACTIONS(4872), [sym_byte] = ACTIONS(4872), [sym_ubyte] = ACTIONS(4872), [sym_char] = ACTIONS(4872), [sym_short] = ACTIONS(4872), [sym_ushort] = ACTIONS(4872), [sym_int] = ACTIONS(4872), [sym_uint] = ACTIONS(4872), [sym_long] = ACTIONS(4872), [sym_ulong] = ACTIONS(4872), [sym_cent] = ACTIONS(4872), [sym_ucent] = ACTIONS(4872), [sym_wchar] = ACTIONS(4872), [sym_dchar] = ACTIONS(4872), [sym_float] = ACTIONS(4872), [sym_double] = ACTIONS(4872), [sym_real] = ACTIONS(4872), [sym_ifloat] = ACTIONS(4872), [sym_idouble] = ACTIONS(4872), [sym_ireal] = ACTIONS(4872), [sym_cfloat] = ACTIONS(4872), [sym_cdouble] = ACTIONS(4872), [sym_creal] = ACTIONS(4872), [sym_size_t] = ACTIONS(4872), [sym_ptrdiff_t] = ACTIONS(4872), [sym_string] = ACTIONS(4872), [sym_cstring] = ACTIONS(4872), [sym_dstring] = ACTIONS(4872), [sym_wstring] = ACTIONS(4872), [sym_noreturn] = ACTIONS(4872), [sym_this] = ACTIONS(4872), [sym_abstract] = ACTIONS(4872), [sym_alias] = ACTIONS(4872), [sym_align] = ACTIONS(4872), [sym_auto] = ACTIONS(4872), [sym_catch] = ACTIONS(4872), [sym_class] = ACTIONS(4872), [sym_const] = ACTIONS(4872), [sym_debug] = ACTIONS(4872), [sym_deprecated] = ACTIONS(4872), [sym_else] = ACTIONS(4872), [sym_enum] = ACTIONS(4872), [sym_export] = ACTIONS(4872), [sym_extern] = ACTIONS(4872), [sym_final] = ACTIONS(4872), [sym_finally] = ACTIONS(4872), [sym_immutable] = ACTIONS(4872), [sym_import] = ACTIONS(4872), [sym_inout] = ACTIONS(4872), [sym_interface] = ACTIONS(4872), [sym_invariant] = ACTIONS(4872), [sym_mixin] = ACTIONS(4872), [sym_nothrow] = ACTIONS(4872), [sym_override] = ACTIONS(4872), [sym_package] = ACTIONS(4872), [sym_pragma] = ACTIONS(4872), [sym_private] = ACTIONS(4872), [sym_protected] = ACTIONS(4872), [sym_public] = ACTIONS(4872), [sym_pure] = ACTIONS(4872), [sym_ref] = ACTIONS(4872), [sym_return] = ACTIONS(4872), [sym_scope] = ACTIONS(4872), [sym_shared] = ACTIONS(4872), [sym_static] = ACTIONS(4872), [sym_struct] = ACTIONS(4872), [sym_synchronized] = ACTIONS(4872), [sym_template] = ACTIONS(4872), [sym_typeof] = ACTIONS(4872), [sym_union] = ACTIONS(4872), [sym_unittest] = ACTIONS(4872), [sym_version] = ACTIONS(4872), [sym_while] = ACTIONS(4872), [sym_gshared] = ACTIONS(4872), [sym_traits] = ACTIONS(4872), [sym_vector] = ACTIONS(4872), [sym_void] = ACTIONS(4872), [sym_directive] = ACTIONS(3), }, [2654] = { [sym_identifier] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2810), [anon_sym_AT] = ACTIONS(2810), [sym_bool] = ACTIONS(2812), [sym_byte] = ACTIONS(2812), [sym_ubyte] = ACTIONS(2812), [sym_char] = ACTIONS(2812), [sym_short] = ACTIONS(2812), [sym_ushort] = ACTIONS(2812), [sym_int] = ACTIONS(2812), [sym_uint] = ACTIONS(2812), [sym_long] = ACTIONS(2812), [sym_ulong] = ACTIONS(2812), [sym_cent] = ACTIONS(2812), [sym_ucent] = ACTIONS(2812), [sym_wchar] = ACTIONS(2812), [sym_dchar] = ACTIONS(2812), [sym_float] = ACTIONS(2812), [sym_double] = ACTIONS(2812), [sym_real] = ACTIONS(2812), [sym_ifloat] = ACTIONS(2812), [sym_idouble] = ACTIONS(2812), [sym_ireal] = ACTIONS(2812), [sym_cfloat] = ACTIONS(2812), [sym_cdouble] = ACTIONS(2812), [sym_creal] = ACTIONS(2812), [sym_size_t] = ACTIONS(2812), [sym_ptrdiff_t] = ACTIONS(2812), [sym_string] = ACTIONS(2812), [sym_cstring] = ACTIONS(2812), [sym_dstring] = ACTIONS(2812), [sym_wstring] = ACTIONS(2812), [sym_noreturn] = ACTIONS(2812), [sym_this] = ACTIONS(2812), [sym_abstract] = ACTIONS(2812), [sym_alias] = ACTIONS(2812), [sym_align] = ACTIONS(2812), [sym_auto] = ACTIONS(2812), [sym_catch] = ACTIONS(2812), [sym_class] = ACTIONS(2812), [sym_const] = ACTIONS(2812), [sym_debug] = ACTIONS(2812), [sym_deprecated] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(2812), [sym_export] = ACTIONS(2812), [sym_extern] = ACTIONS(2812), [sym_final] = ACTIONS(2812), [sym_finally] = ACTIONS(2812), [sym_immutable] = ACTIONS(2812), [sym_import] = ACTIONS(2812), [sym_inout] = ACTIONS(2812), [sym_interface] = ACTIONS(2812), [sym_invariant] = ACTIONS(2812), [sym_mixin] = ACTIONS(2812), [sym_nothrow] = ACTIONS(2812), [sym_override] = ACTIONS(2812), [sym_package] = ACTIONS(2812), [sym_pragma] = ACTIONS(2812), [sym_private] = ACTIONS(2812), [sym_protected] = ACTIONS(2812), [sym_public] = ACTIONS(2812), [sym_pure] = ACTIONS(2812), [sym_ref] = ACTIONS(2812), [sym_return] = ACTIONS(2812), [sym_scope] = ACTIONS(2812), [sym_shared] = ACTIONS(2812), [sym_static] = ACTIONS(2812), [sym_struct] = ACTIONS(2812), [sym_synchronized] = ACTIONS(2812), [sym_template] = ACTIONS(2812), [sym_typeof] = ACTIONS(2812), [sym_union] = ACTIONS(2812), [sym_unittest] = ACTIONS(2812), [sym_version] = ACTIONS(2812), [sym_while] = ACTIONS(2812), [sym_gshared] = ACTIONS(2812), [sym_traits] = ACTIONS(2812), [sym_vector] = ACTIONS(2812), [sym_void] = ACTIONS(2812), [sym_directive] = ACTIONS(3), }, [2655] = { [sym_identifier] = ACTIONS(4888), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4890), [anon_sym_SEMI] = ACTIONS(4890), [anon_sym_TILDE] = ACTIONS(4890), [anon_sym_AT] = ACTIONS(4890), [sym_bool] = ACTIONS(4888), [sym_byte] = ACTIONS(4888), [sym_ubyte] = ACTIONS(4888), [sym_char] = ACTIONS(4888), [sym_short] = ACTIONS(4888), [sym_ushort] = ACTIONS(4888), [sym_int] = ACTIONS(4888), [sym_uint] = ACTIONS(4888), [sym_long] = ACTIONS(4888), [sym_ulong] = ACTIONS(4888), [sym_cent] = ACTIONS(4888), [sym_ucent] = ACTIONS(4888), [sym_wchar] = ACTIONS(4888), [sym_dchar] = ACTIONS(4888), [sym_float] = ACTIONS(4888), [sym_double] = ACTIONS(4888), [sym_real] = ACTIONS(4888), [sym_ifloat] = ACTIONS(4888), [sym_idouble] = ACTIONS(4888), [sym_ireal] = ACTIONS(4888), [sym_cfloat] = ACTIONS(4888), [sym_cdouble] = ACTIONS(4888), [sym_creal] = ACTIONS(4888), [sym_size_t] = ACTIONS(4888), [sym_ptrdiff_t] = ACTIONS(4888), [sym_string] = ACTIONS(4888), [sym_cstring] = ACTIONS(4888), [sym_dstring] = ACTIONS(4888), [sym_wstring] = ACTIONS(4888), [sym_noreturn] = ACTIONS(4888), [sym_this] = ACTIONS(4888), [sym_abstract] = ACTIONS(4888), [sym_alias] = ACTIONS(4888), [sym_align] = ACTIONS(4888), [sym_auto] = ACTIONS(4888), [sym_catch] = ACTIONS(4888), [sym_class] = ACTIONS(4888), [sym_const] = ACTIONS(4888), [sym_debug] = ACTIONS(4888), [sym_deprecated] = ACTIONS(4888), [sym_else] = ACTIONS(4888), [sym_enum] = ACTIONS(4888), [sym_export] = ACTIONS(4888), [sym_extern] = ACTIONS(4888), [sym_final] = ACTIONS(4888), [sym_finally] = ACTIONS(4888), [sym_immutable] = ACTIONS(4888), [sym_import] = ACTIONS(4888), [sym_inout] = ACTIONS(4888), [sym_interface] = ACTIONS(4888), [sym_invariant] = ACTIONS(4888), [sym_mixin] = ACTIONS(4888), [sym_nothrow] = ACTIONS(4888), [sym_override] = ACTIONS(4888), [sym_package] = ACTIONS(4888), [sym_pragma] = ACTIONS(4888), [sym_private] = ACTIONS(4888), [sym_protected] = ACTIONS(4888), [sym_public] = ACTIONS(4888), [sym_pure] = ACTIONS(4888), [sym_ref] = ACTIONS(4888), [sym_return] = ACTIONS(4888), [sym_scope] = ACTIONS(4888), [sym_shared] = ACTIONS(4888), [sym_static] = ACTIONS(4888), [sym_struct] = ACTIONS(4888), [sym_synchronized] = ACTIONS(4888), [sym_template] = ACTIONS(4888), [sym_typeof] = ACTIONS(4888), [sym_union] = ACTIONS(4888), [sym_unittest] = ACTIONS(4888), [sym_version] = ACTIONS(4888), [sym_while] = ACTIONS(4888), [sym_gshared] = ACTIONS(4888), [sym_traits] = ACTIONS(4888), [sym_vector] = ACTIONS(4888), [sym_void] = ACTIONS(4888), [sym_directive] = ACTIONS(3), }, [2656] = { [ts_builtin_sym_end] = ACTIONS(4556), [sym_identifier] = ACTIONS(4554), [sym_end_file] = ACTIONS(4554), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4556), [anon_sym_SEMI] = ACTIONS(4556), [anon_sym_TILDE] = ACTIONS(4556), [anon_sym_AT] = ACTIONS(4556), [sym_bool] = ACTIONS(4554), [sym_byte] = ACTIONS(4554), [sym_ubyte] = ACTIONS(4554), [sym_char] = ACTIONS(4554), [sym_short] = ACTIONS(4554), [sym_ushort] = ACTIONS(4554), [sym_int] = ACTIONS(4554), [sym_uint] = ACTIONS(4554), [sym_long] = ACTIONS(4554), [sym_ulong] = ACTIONS(4554), [sym_cent] = ACTIONS(4554), [sym_ucent] = ACTIONS(4554), [sym_wchar] = ACTIONS(4554), [sym_dchar] = ACTIONS(4554), [sym_float] = ACTIONS(4554), [sym_double] = ACTIONS(4554), [sym_real] = ACTIONS(4554), [sym_ifloat] = ACTIONS(4554), [sym_idouble] = ACTIONS(4554), [sym_ireal] = ACTIONS(4554), [sym_cfloat] = ACTIONS(4554), [sym_cdouble] = ACTIONS(4554), [sym_creal] = ACTIONS(4554), [sym_size_t] = ACTIONS(4554), [sym_ptrdiff_t] = ACTIONS(4554), [sym_string] = ACTIONS(4554), [sym_cstring] = ACTIONS(4554), [sym_dstring] = ACTIONS(4554), [sym_wstring] = ACTIONS(4554), [sym_noreturn] = ACTIONS(4554), [sym_this] = ACTIONS(4554), [sym_abstract] = ACTIONS(4554), [sym_alias] = ACTIONS(4554), [sym_align] = ACTIONS(4554), [sym_auto] = ACTIONS(4554), [sym_class] = ACTIONS(4554), [sym_const] = ACTIONS(4554), [sym_debug] = ACTIONS(4554), [sym_deprecated] = ACTIONS(4554), [sym_else] = ACTIONS(4554), [sym_enum] = ACTIONS(4554), [sym_export] = ACTIONS(4554), [sym_extern] = ACTIONS(4554), [sym_final] = ACTIONS(4554), [sym_immutable] = ACTIONS(4554), [sym_import] = ACTIONS(4554), [sym_inout] = ACTIONS(4554), [sym_interface] = ACTIONS(4554), [sym_invariant] = ACTIONS(4554), [sym_mixin] = ACTIONS(4554), [sym_nothrow] = ACTIONS(4554), [sym_override] = ACTIONS(4554), [sym_package] = ACTIONS(4554), [sym_pragma] = ACTIONS(4554), [sym_private] = ACTIONS(4554), [sym_protected] = ACTIONS(4554), [sym_public] = ACTIONS(4554), [sym_pure] = ACTIONS(4554), [sym_ref] = ACTIONS(4554), [sym_return] = ACTIONS(4554), [sym_scope] = ACTIONS(4554), [sym_shared] = ACTIONS(4554), [sym_static] = ACTIONS(4554), [sym_struct] = ACTIONS(4554), [sym_synchronized] = ACTIONS(4554), [sym_template] = ACTIONS(4554), [sym_typeof] = ACTIONS(4554), [sym_union] = ACTIONS(4554), [sym_unittest] = ACTIONS(4554), [sym_version] = ACTIONS(4554), [sym_while] = ACTIONS(4554), [sym_gshared] = ACTIONS(4554), [sym_traits] = ACTIONS(4554), [sym_vector] = ACTIONS(4554), [sym_void] = ACTIONS(4554), [sym_directive] = ACTIONS(3), }, [2657] = { [sym_identifier] = ACTIONS(4896), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4898), [anon_sym_SEMI] = ACTIONS(4898), [anon_sym_TILDE] = ACTIONS(4898), [anon_sym_AT] = ACTIONS(4898), [sym_bool] = ACTIONS(4896), [sym_byte] = ACTIONS(4896), [sym_ubyte] = ACTIONS(4896), [sym_char] = ACTIONS(4896), [sym_short] = ACTIONS(4896), [sym_ushort] = ACTIONS(4896), [sym_int] = ACTIONS(4896), [sym_uint] = ACTIONS(4896), [sym_long] = ACTIONS(4896), [sym_ulong] = ACTIONS(4896), [sym_cent] = ACTIONS(4896), [sym_ucent] = ACTIONS(4896), [sym_wchar] = ACTIONS(4896), [sym_dchar] = ACTIONS(4896), [sym_float] = ACTIONS(4896), [sym_double] = ACTIONS(4896), [sym_real] = ACTIONS(4896), [sym_ifloat] = ACTIONS(4896), [sym_idouble] = ACTIONS(4896), [sym_ireal] = ACTIONS(4896), [sym_cfloat] = ACTIONS(4896), [sym_cdouble] = ACTIONS(4896), [sym_creal] = ACTIONS(4896), [sym_size_t] = ACTIONS(4896), [sym_ptrdiff_t] = ACTIONS(4896), [sym_string] = ACTIONS(4896), [sym_cstring] = ACTIONS(4896), [sym_dstring] = ACTIONS(4896), [sym_wstring] = ACTIONS(4896), [sym_noreturn] = ACTIONS(4896), [sym_this] = ACTIONS(4896), [sym_abstract] = ACTIONS(4896), [sym_alias] = ACTIONS(4896), [sym_align] = ACTIONS(4896), [sym_auto] = ACTIONS(4896), [sym_catch] = ACTIONS(4896), [sym_class] = ACTIONS(4896), [sym_const] = ACTIONS(4896), [sym_debug] = ACTIONS(4896), [sym_deprecated] = ACTIONS(4896), [sym_else] = ACTIONS(4896), [sym_enum] = ACTIONS(4896), [sym_export] = ACTIONS(4896), [sym_extern] = ACTIONS(4896), [sym_final] = ACTIONS(4896), [sym_finally] = ACTIONS(4896), [sym_immutable] = ACTIONS(4896), [sym_import] = ACTIONS(4896), [sym_inout] = ACTIONS(4896), [sym_interface] = ACTIONS(4896), [sym_invariant] = ACTIONS(4896), [sym_mixin] = ACTIONS(4896), [sym_nothrow] = ACTIONS(4896), [sym_override] = ACTIONS(4896), [sym_package] = ACTIONS(4896), [sym_pragma] = ACTIONS(4896), [sym_private] = ACTIONS(4896), [sym_protected] = ACTIONS(4896), [sym_public] = ACTIONS(4896), [sym_pure] = ACTIONS(4896), [sym_ref] = ACTIONS(4896), [sym_return] = ACTIONS(4896), [sym_scope] = ACTIONS(4896), [sym_shared] = ACTIONS(4896), [sym_static] = ACTIONS(4896), [sym_struct] = ACTIONS(4896), [sym_synchronized] = ACTIONS(4896), [sym_template] = ACTIONS(4896), [sym_typeof] = ACTIONS(4896), [sym_union] = ACTIONS(4896), [sym_unittest] = ACTIONS(4896), [sym_version] = ACTIONS(4896), [sym_while] = ACTIONS(4896), [sym_gshared] = ACTIONS(4896), [sym_traits] = ACTIONS(4896), [sym_vector] = ACTIONS(4896), [sym_void] = ACTIONS(4896), [sym_directive] = ACTIONS(3), }, [2658] = { [sym_identifier] = ACTIONS(4900), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4902), [anon_sym_SEMI] = ACTIONS(4902), [anon_sym_TILDE] = ACTIONS(4902), [anon_sym_AT] = ACTIONS(4902), [sym_bool] = ACTIONS(4900), [sym_byte] = ACTIONS(4900), [sym_ubyte] = ACTIONS(4900), [sym_char] = ACTIONS(4900), [sym_short] = ACTIONS(4900), [sym_ushort] = ACTIONS(4900), [sym_int] = ACTIONS(4900), [sym_uint] = ACTIONS(4900), [sym_long] = ACTIONS(4900), [sym_ulong] = ACTIONS(4900), [sym_cent] = ACTIONS(4900), [sym_ucent] = ACTIONS(4900), [sym_wchar] = ACTIONS(4900), [sym_dchar] = ACTIONS(4900), [sym_float] = ACTIONS(4900), [sym_double] = ACTIONS(4900), [sym_real] = ACTIONS(4900), [sym_ifloat] = ACTIONS(4900), [sym_idouble] = ACTIONS(4900), [sym_ireal] = ACTIONS(4900), [sym_cfloat] = ACTIONS(4900), [sym_cdouble] = ACTIONS(4900), [sym_creal] = ACTIONS(4900), [sym_size_t] = ACTIONS(4900), [sym_ptrdiff_t] = ACTIONS(4900), [sym_string] = ACTIONS(4900), [sym_cstring] = ACTIONS(4900), [sym_dstring] = ACTIONS(4900), [sym_wstring] = ACTIONS(4900), [sym_noreturn] = ACTIONS(4900), [sym_this] = ACTIONS(4900), [sym_abstract] = ACTIONS(4900), [sym_alias] = ACTIONS(4900), [sym_align] = ACTIONS(4900), [sym_auto] = ACTIONS(4900), [sym_catch] = ACTIONS(4900), [sym_class] = ACTIONS(4900), [sym_const] = ACTIONS(4900), [sym_debug] = ACTIONS(4900), [sym_deprecated] = ACTIONS(4900), [sym_else] = ACTIONS(4900), [sym_enum] = ACTIONS(4900), [sym_export] = ACTIONS(4900), [sym_extern] = ACTIONS(4900), [sym_final] = ACTIONS(4900), [sym_finally] = ACTIONS(4900), [sym_immutable] = ACTIONS(4900), [sym_import] = ACTIONS(4900), [sym_inout] = ACTIONS(4900), [sym_interface] = ACTIONS(4900), [sym_invariant] = ACTIONS(4900), [sym_mixin] = ACTIONS(4900), [sym_nothrow] = ACTIONS(4900), [sym_override] = ACTIONS(4900), [sym_package] = ACTIONS(4900), [sym_pragma] = ACTIONS(4900), [sym_private] = ACTIONS(4900), [sym_protected] = ACTIONS(4900), [sym_public] = ACTIONS(4900), [sym_pure] = ACTIONS(4900), [sym_ref] = ACTIONS(4900), [sym_return] = ACTIONS(4900), [sym_scope] = ACTIONS(4900), [sym_shared] = ACTIONS(4900), [sym_static] = ACTIONS(4900), [sym_struct] = ACTIONS(4900), [sym_synchronized] = ACTIONS(4900), [sym_template] = ACTIONS(4900), [sym_typeof] = ACTIONS(4900), [sym_union] = ACTIONS(4900), [sym_unittest] = ACTIONS(4900), [sym_version] = ACTIONS(4900), [sym_while] = ACTIONS(4900), [sym_gshared] = ACTIONS(4900), [sym_traits] = ACTIONS(4900), [sym_vector] = ACTIONS(4900), [sym_void] = ACTIONS(4900), [sym_directive] = ACTIONS(3), }, [2659] = { [sym_identifier] = ACTIONS(4904), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4906), [anon_sym_SEMI] = ACTIONS(4906), [anon_sym_TILDE] = ACTIONS(4906), [anon_sym_AT] = ACTIONS(4906), [sym_bool] = ACTIONS(4904), [sym_byte] = ACTIONS(4904), [sym_ubyte] = ACTIONS(4904), [sym_char] = ACTIONS(4904), [sym_short] = ACTIONS(4904), [sym_ushort] = ACTIONS(4904), [sym_int] = ACTIONS(4904), [sym_uint] = ACTIONS(4904), [sym_long] = ACTIONS(4904), [sym_ulong] = ACTIONS(4904), [sym_cent] = ACTIONS(4904), [sym_ucent] = ACTIONS(4904), [sym_wchar] = ACTIONS(4904), [sym_dchar] = ACTIONS(4904), [sym_float] = ACTIONS(4904), [sym_double] = ACTIONS(4904), [sym_real] = ACTIONS(4904), [sym_ifloat] = ACTIONS(4904), [sym_idouble] = ACTIONS(4904), [sym_ireal] = ACTIONS(4904), [sym_cfloat] = ACTIONS(4904), [sym_cdouble] = ACTIONS(4904), [sym_creal] = ACTIONS(4904), [sym_size_t] = ACTIONS(4904), [sym_ptrdiff_t] = ACTIONS(4904), [sym_string] = ACTIONS(4904), [sym_cstring] = ACTIONS(4904), [sym_dstring] = ACTIONS(4904), [sym_wstring] = ACTIONS(4904), [sym_noreturn] = ACTIONS(4904), [sym_this] = ACTIONS(4904), [sym_abstract] = ACTIONS(4904), [sym_alias] = ACTIONS(4904), [sym_align] = ACTIONS(4904), [sym_auto] = ACTIONS(4904), [sym_catch] = ACTIONS(4904), [sym_class] = ACTIONS(4904), [sym_const] = ACTIONS(4904), [sym_debug] = ACTIONS(4904), [sym_deprecated] = ACTIONS(4904), [sym_else] = ACTIONS(4904), [sym_enum] = ACTIONS(4904), [sym_export] = ACTIONS(4904), [sym_extern] = ACTIONS(4904), [sym_final] = ACTIONS(4904), [sym_finally] = ACTIONS(4904), [sym_immutable] = ACTIONS(4904), [sym_import] = ACTIONS(4904), [sym_inout] = ACTIONS(4904), [sym_interface] = ACTIONS(4904), [sym_invariant] = ACTIONS(4904), [sym_mixin] = ACTIONS(4904), [sym_nothrow] = ACTIONS(4904), [sym_override] = ACTIONS(4904), [sym_package] = ACTIONS(4904), [sym_pragma] = ACTIONS(4904), [sym_private] = ACTIONS(4904), [sym_protected] = ACTIONS(4904), [sym_public] = ACTIONS(4904), [sym_pure] = ACTIONS(4904), [sym_ref] = ACTIONS(4904), [sym_return] = ACTIONS(4904), [sym_scope] = ACTIONS(4904), [sym_shared] = ACTIONS(4904), [sym_static] = ACTIONS(4904), [sym_struct] = ACTIONS(4904), [sym_synchronized] = ACTIONS(4904), [sym_template] = ACTIONS(4904), [sym_typeof] = ACTIONS(4904), [sym_union] = ACTIONS(4904), [sym_unittest] = ACTIONS(4904), [sym_version] = ACTIONS(4904), [sym_while] = ACTIONS(4904), [sym_gshared] = ACTIONS(4904), [sym_traits] = ACTIONS(4904), [sym_vector] = ACTIONS(4904), [sym_void] = ACTIONS(4904), [sym_directive] = ACTIONS(3), }, [2660] = { [sym_identifier] = ACTIONS(4912), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4914), [anon_sym_SEMI] = ACTIONS(4914), [anon_sym_TILDE] = ACTIONS(4914), [anon_sym_AT] = ACTIONS(4914), [sym_bool] = ACTIONS(4912), [sym_byte] = ACTIONS(4912), [sym_ubyte] = ACTIONS(4912), [sym_char] = ACTIONS(4912), [sym_short] = ACTIONS(4912), [sym_ushort] = ACTIONS(4912), [sym_int] = ACTIONS(4912), [sym_uint] = ACTIONS(4912), [sym_long] = ACTIONS(4912), [sym_ulong] = ACTIONS(4912), [sym_cent] = ACTIONS(4912), [sym_ucent] = ACTIONS(4912), [sym_wchar] = ACTIONS(4912), [sym_dchar] = ACTIONS(4912), [sym_float] = ACTIONS(4912), [sym_double] = ACTIONS(4912), [sym_real] = ACTIONS(4912), [sym_ifloat] = ACTIONS(4912), [sym_idouble] = ACTIONS(4912), [sym_ireal] = ACTIONS(4912), [sym_cfloat] = ACTIONS(4912), [sym_cdouble] = ACTIONS(4912), [sym_creal] = ACTIONS(4912), [sym_size_t] = ACTIONS(4912), [sym_ptrdiff_t] = ACTIONS(4912), [sym_string] = ACTIONS(4912), [sym_cstring] = ACTIONS(4912), [sym_dstring] = ACTIONS(4912), [sym_wstring] = ACTIONS(4912), [sym_noreturn] = ACTIONS(4912), [sym_this] = ACTIONS(4912), [sym_abstract] = ACTIONS(4912), [sym_alias] = ACTIONS(4912), [sym_align] = ACTIONS(4912), [sym_auto] = ACTIONS(4912), [sym_catch] = ACTIONS(4912), [sym_class] = ACTIONS(4912), [sym_const] = ACTIONS(4912), [sym_debug] = ACTIONS(4912), [sym_deprecated] = ACTIONS(4912), [sym_else] = ACTIONS(4912), [sym_enum] = ACTIONS(4912), [sym_export] = ACTIONS(4912), [sym_extern] = ACTIONS(4912), [sym_final] = ACTIONS(4912), [sym_finally] = ACTIONS(4912), [sym_immutable] = ACTIONS(4912), [sym_import] = ACTIONS(4912), [sym_inout] = ACTIONS(4912), [sym_interface] = ACTIONS(4912), [sym_invariant] = ACTIONS(4912), [sym_mixin] = ACTIONS(4912), [sym_nothrow] = ACTIONS(4912), [sym_override] = ACTIONS(4912), [sym_package] = ACTIONS(4912), [sym_pragma] = ACTIONS(4912), [sym_private] = ACTIONS(4912), [sym_protected] = ACTIONS(4912), [sym_public] = ACTIONS(4912), [sym_pure] = ACTIONS(4912), [sym_ref] = ACTIONS(4912), [sym_return] = ACTIONS(4912), [sym_scope] = ACTIONS(4912), [sym_shared] = ACTIONS(4912), [sym_static] = ACTIONS(4912), [sym_struct] = ACTIONS(4912), [sym_synchronized] = ACTIONS(4912), [sym_template] = ACTIONS(4912), [sym_typeof] = ACTIONS(4912), [sym_union] = ACTIONS(4912), [sym_unittest] = ACTIONS(4912), [sym_version] = ACTIONS(4912), [sym_while] = ACTIONS(4912), [sym_gshared] = ACTIONS(4912), [sym_traits] = ACTIONS(4912), [sym_vector] = ACTIONS(4912), [sym_void] = ACTIONS(4912), [sym_directive] = ACTIONS(3), }, [2661] = { [sym_identifier] = ACTIONS(4918), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4920), [anon_sym_SEMI] = ACTIONS(4920), [anon_sym_TILDE] = ACTIONS(4920), [anon_sym_AT] = ACTIONS(4920), [sym_bool] = ACTIONS(4918), [sym_byte] = ACTIONS(4918), [sym_ubyte] = ACTIONS(4918), [sym_char] = ACTIONS(4918), [sym_short] = ACTIONS(4918), [sym_ushort] = ACTIONS(4918), [sym_int] = ACTIONS(4918), [sym_uint] = ACTIONS(4918), [sym_long] = ACTIONS(4918), [sym_ulong] = ACTIONS(4918), [sym_cent] = ACTIONS(4918), [sym_ucent] = ACTIONS(4918), [sym_wchar] = ACTIONS(4918), [sym_dchar] = ACTIONS(4918), [sym_float] = ACTIONS(4918), [sym_double] = ACTIONS(4918), [sym_real] = ACTIONS(4918), [sym_ifloat] = ACTIONS(4918), [sym_idouble] = ACTIONS(4918), [sym_ireal] = ACTIONS(4918), [sym_cfloat] = ACTIONS(4918), [sym_cdouble] = ACTIONS(4918), [sym_creal] = ACTIONS(4918), [sym_size_t] = ACTIONS(4918), [sym_ptrdiff_t] = ACTIONS(4918), [sym_string] = ACTIONS(4918), [sym_cstring] = ACTIONS(4918), [sym_dstring] = ACTIONS(4918), [sym_wstring] = ACTIONS(4918), [sym_noreturn] = ACTIONS(4918), [sym_this] = ACTIONS(4918), [sym_abstract] = ACTIONS(4918), [sym_alias] = ACTIONS(4918), [sym_align] = ACTIONS(4918), [sym_auto] = ACTIONS(4918), [sym_catch] = ACTIONS(4918), [sym_class] = ACTIONS(4918), [sym_const] = ACTIONS(4918), [sym_debug] = ACTIONS(4918), [sym_deprecated] = ACTIONS(4918), [sym_else] = ACTIONS(4918), [sym_enum] = ACTIONS(4918), [sym_export] = ACTIONS(4918), [sym_extern] = ACTIONS(4918), [sym_final] = ACTIONS(4918), [sym_finally] = ACTIONS(4918), [sym_immutable] = ACTIONS(4918), [sym_import] = ACTIONS(4918), [sym_inout] = ACTIONS(4918), [sym_interface] = ACTIONS(4918), [sym_invariant] = ACTIONS(4918), [sym_mixin] = ACTIONS(4918), [sym_nothrow] = ACTIONS(4918), [sym_override] = ACTIONS(4918), [sym_package] = ACTIONS(4918), [sym_pragma] = ACTIONS(4918), [sym_private] = ACTIONS(4918), [sym_protected] = ACTIONS(4918), [sym_public] = ACTIONS(4918), [sym_pure] = ACTIONS(4918), [sym_ref] = ACTIONS(4918), [sym_return] = ACTIONS(4918), [sym_scope] = ACTIONS(4918), [sym_shared] = ACTIONS(4918), [sym_static] = ACTIONS(4918), [sym_struct] = ACTIONS(4918), [sym_synchronized] = ACTIONS(4918), [sym_template] = ACTIONS(4918), [sym_typeof] = ACTIONS(4918), [sym_union] = ACTIONS(4918), [sym_unittest] = ACTIONS(4918), [sym_version] = ACTIONS(4918), [sym_while] = ACTIONS(4918), [sym_gshared] = ACTIONS(4918), [sym_traits] = ACTIONS(4918), [sym_vector] = ACTIONS(4918), [sym_void] = ACTIONS(4918), [sym_directive] = ACTIONS(3), }, [2662] = { [ts_builtin_sym_end] = ACTIONS(4560), [sym_identifier] = ACTIONS(4558), [sym_end_file] = ACTIONS(4558), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4560), [anon_sym_SEMI] = ACTIONS(4560), [anon_sym_TILDE] = ACTIONS(4560), [anon_sym_AT] = ACTIONS(4560), [sym_bool] = ACTIONS(4558), [sym_byte] = ACTIONS(4558), [sym_ubyte] = ACTIONS(4558), [sym_char] = ACTIONS(4558), [sym_short] = ACTIONS(4558), [sym_ushort] = ACTIONS(4558), [sym_int] = ACTIONS(4558), [sym_uint] = ACTIONS(4558), [sym_long] = ACTIONS(4558), [sym_ulong] = ACTIONS(4558), [sym_cent] = ACTIONS(4558), [sym_ucent] = ACTIONS(4558), [sym_wchar] = ACTIONS(4558), [sym_dchar] = ACTIONS(4558), [sym_float] = ACTIONS(4558), [sym_double] = ACTIONS(4558), [sym_real] = ACTIONS(4558), [sym_ifloat] = ACTIONS(4558), [sym_idouble] = ACTIONS(4558), [sym_ireal] = ACTIONS(4558), [sym_cfloat] = ACTIONS(4558), [sym_cdouble] = ACTIONS(4558), [sym_creal] = ACTIONS(4558), [sym_size_t] = ACTIONS(4558), [sym_ptrdiff_t] = ACTIONS(4558), [sym_string] = ACTIONS(4558), [sym_cstring] = ACTIONS(4558), [sym_dstring] = ACTIONS(4558), [sym_wstring] = ACTIONS(4558), [sym_noreturn] = ACTIONS(4558), [sym_this] = ACTIONS(4558), [sym_abstract] = ACTIONS(4558), [sym_alias] = ACTIONS(4558), [sym_align] = ACTIONS(4558), [sym_auto] = ACTIONS(4558), [sym_class] = ACTIONS(4558), [sym_const] = ACTIONS(4558), [sym_debug] = ACTIONS(4558), [sym_deprecated] = ACTIONS(4558), [sym_else] = ACTIONS(4558), [sym_enum] = ACTIONS(4558), [sym_export] = ACTIONS(4558), [sym_extern] = ACTIONS(4558), [sym_final] = ACTIONS(4558), [sym_immutable] = ACTIONS(4558), [sym_import] = ACTIONS(4558), [sym_inout] = ACTIONS(4558), [sym_interface] = ACTIONS(4558), [sym_invariant] = ACTIONS(4558), [sym_mixin] = ACTIONS(4558), [sym_nothrow] = ACTIONS(4558), [sym_override] = ACTIONS(4558), [sym_package] = ACTIONS(4558), [sym_pragma] = ACTIONS(4558), [sym_private] = ACTIONS(4558), [sym_protected] = ACTIONS(4558), [sym_public] = ACTIONS(4558), [sym_pure] = ACTIONS(4558), [sym_ref] = ACTIONS(4558), [sym_return] = ACTIONS(4558), [sym_scope] = ACTIONS(4558), [sym_shared] = ACTIONS(4558), [sym_static] = ACTIONS(4558), [sym_struct] = ACTIONS(4558), [sym_synchronized] = ACTIONS(4558), [sym_template] = ACTIONS(4558), [sym_typeof] = ACTIONS(4558), [sym_union] = ACTIONS(4558), [sym_unittest] = ACTIONS(4558), [sym_version] = ACTIONS(4558), [sym_while] = ACTIONS(4558), [sym_gshared] = ACTIONS(4558), [sym_traits] = ACTIONS(4558), [sym_vector] = ACTIONS(4558), [sym_void] = ACTIONS(4558), [sym_directive] = ACTIONS(3), }, [2663] = { [sym_identifier] = ACTIONS(4970), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4972), [anon_sym_SEMI] = ACTIONS(4972), [anon_sym_TILDE] = ACTIONS(4972), [anon_sym_AT] = ACTIONS(4972), [sym_bool] = ACTIONS(4970), [sym_byte] = ACTIONS(4970), [sym_ubyte] = ACTIONS(4970), [sym_char] = ACTIONS(4970), [sym_short] = ACTIONS(4970), [sym_ushort] = ACTIONS(4970), [sym_int] = ACTIONS(4970), [sym_uint] = ACTIONS(4970), [sym_long] = ACTIONS(4970), [sym_ulong] = ACTIONS(4970), [sym_cent] = ACTIONS(4970), [sym_ucent] = ACTIONS(4970), [sym_wchar] = ACTIONS(4970), [sym_dchar] = ACTIONS(4970), [sym_float] = ACTIONS(4970), [sym_double] = ACTIONS(4970), [sym_real] = ACTIONS(4970), [sym_ifloat] = ACTIONS(4970), [sym_idouble] = ACTIONS(4970), [sym_ireal] = ACTIONS(4970), [sym_cfloat] = ACTIONS(4970), [sym_cdouble] = ACTIONS(4970), [sym_creal] = ACTIONS(4970), [sym_size_t] = ACTIONS(4970), [sym_ptrdiff_t] = ACTIONS(4970), [sym_string] = ACTIONS(4970), [sym_cstring] = ACTIONS(4970), [sym_dstring] = ACTIONS(4970), [sym_wstring] = ACTIONS(4970), [sym_noreturn] = ACTIONS(4970), [sym_this] = ACTIONS(4970), [sym_abstract] = ACTIONS(4970), [sym_alias] = ACTIONS(4970), [sym_align] = ACTIONS(4970), [sym_auto] = ACTIONS(4970), [sym_catch] = ACTIONS(4970), [sym_class] = ACTIONS(4970), [sym_const] = ACTIONS(4970), [sym_debug] = ACTIONS(4970), [sym_deprecated] = ACTIONS(4970), [sym_else] = ACTIONS(4970), [sym_enum] = ACTIONS(4970), [sym_export] = ACTIONS(4970), [sym_extern] = ACTIONS(4970), [sym_final] = ACTIONS(4970), [sym_finally] = ACTIONS(4970), [sym_immutable] = ACTIONS(4970), [sym_import] = ACTIONS(4970), [sym_inout] = ACTIONS(4970), [sym_interface] = ACTIONS(4970), [sym_invariant] = ACTIONS(4970), [sym_mixin] = ACTIONS(4970), [sym_nothrow] = ACTIONS(4970), [sym_override] = ACTIONS(4970), [sym_package] = ACTIONS(4970), [sym_pragma] = ACTIONS(4970), [sym_private] = ACTIONS(4970), [sym_protected] = ACTIONS(4970), [sym_public] = ACTIONS(4970), [sym_pure] = ACTIONS(4970), [sym_ref] = ACTIONS(4970), [sym_return] = ACTIONS(4970), [sym_scope] = ACTIONS(4970), [sym_shared] = ACTIONS(4970), [sym_static] = ACTIONS(4970), [sym_struct] = ACTIONS(4970), [sym_synchronized] = ACTIONS(4970), [sym_template] = ACTIONS(4970), [sym_typeof] = ACTIONS(4970), [sym_union] = ACTIONS(4970), [sym_unittest] = ACTIONS(4970), [sym_version] = ACTIONS(4970), [sym_while] = ACTIONS(4970), [sym_gshared] = ACTIONS(4970), [sym_traits] = ACTIONS(4970), [sym_vector] = ACTIONS(4970), [sym_void] = ACTIONS(4970), [sym_directive] = ACTIONS(3), }, [2664] = { [ts_builtin_sym_end] = ACTIONS(4568), [sym_identifier] = ACTIONS(4566), [sym_end_file] = ACTIONS(4566), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4568), [anon_sym_SEMI] = ACTIONS(4568), [anon_sym_TILDE] = ACTIONS(4568), [anon_sym_AT] = ACTIONS(4568), [sym_bool] = ACTIONS(4566), [sym_byte] = ACTIONS(4566), [sym_ubyte] = ACTIONS(4566), [sym_char] = ACTIONS(4566), [sym_short] = ACTIONS(4566), [sym_ushort] = ACTIONS(4566), [sym_int] = ACTIONS(4566), [sym_uint] = ACTIONS(4566), [sym_long] = ACTIONS(4566), [sym_ulong] = ACTIONS(4566), [sym_cent] = ACTIONS(4566), [sym_ucent] = ACTIONS(4566), [sym_wchar] = ACTIONS(4566), [sym_dchar] = ACTIONS(4566), [sym_float] = ACTIONS(4566), [sym_double] = ACTIONS(4566), [sym_real] = ACTIONS(4566), [sym_ifloat] = ACTIONS(4566), [sym_idouble] = ACTIONS(4566), [sym_ireal] = ACTIONS(4566), [sym_cfloat] = ACTIONS(4566), [sym_cdouble] = ACTIONS(4566), [sym_creal] = ACTIONS(4566), [sym_size_t] = ACTIONS(4566), [sym_ptrdiff_t] = ACTIONS(4566), [sym_string] = ACTIONS(4566), [sym_cstring] = ACTIONS(4566), [sym_dstring] = ACTIONS(4566), [sym_wstring] = ACTIONS(4566), [sym_noreturn] = ACTIONS(4566), [sym_this] = ACTIONS(4566), [sym_abstract] = ACTIONS(4566), [sym_alias] = ACTIONS(4566), [sym_align] = ACTIONS(4566), [sym_auto] = ACTIONS(4566), [sym_class] = ACTIONS(4566), [sym_const] = ACTIONS(4566), [sym_debug] = ACTIONS(4566), [sym_deprecated] = ACTIONS(4566), [sym_else] = ACTIONS(4566), [sym_enum] = ACTIONS(4566), [sym_export] = ACTIONS(4566), [sym_extern] = ACTIONS(4566), [sym_final] = ACTIONS(4566), [sym_immutable] = ACTIONS(4566), [sym_import] = ACTIONS(4566), [sym_inout] = ACTIONS(4566), [sym_interface] = ACTIONS(4566), [sym_invariant] = ACTIONS(4566), [sym_mixin] = ACTIONS(4566), [sym_nothrow] = ACTIONS(4566), [sym_override] = ACTIONS(4566), [sym_package] = ACTIONS(4566), [sym_pragma] = ACTIONS(4566), [sym_private] = ACTIONS(4566), [sym_protected] = ACTIONS(4566), [sym_public] = ACTIONS(4566), [sym_pure] = ACTIONS(4566), [sym_ref] = ACTIONS(4566), [sym_return] = ACTIONS(4566), [sym_scope] = ACTIONS(4566), [sym_shared] = ACTIONS(4566), [sym_static] = ACTIONS(4566), [sym_struct] = ACTIONS(4566), [sym_synchronized] = ACTIONS(4566), [sym_template] = ACTIONS(4566), [sym_typeof] = ACTIONS(4566), [sym_union] = ACTIONS(4566), [sym_unittest] = ACTIONS(4566), [sym_version] = ACTIONS(4566), [sym_while] = ACTIONS(4566), [sym_gshared] = ACTIONS(4566), [sym_traits] = ACTIONS(4566), [sym_vector] = ACTIONS(4566), [sym_void] = ACTIONS(4566), [sym_directive] = ACTIONS(3), }, [2665] = { [sym_identifier] = ACTIONS(4598), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4600), [anon_sym_SEMI] = ACTIONS(4600), [anon_sym_TILDE] = ACTIONS(4600), [anon_sym_AT] = ACTIONS(4600), [sym_bool] = ACTIONS(4598), [sym_byte] = ACTIONS(4598), [sym_ubyte] = ACTIONS(4598), [sym_char] = ACTIONS(4598), [sym_short] = ACTIONS(4598), [sym_ushort] = ACTIONS(4598), [sym_int] = ACTIONS(4598), [sym_uint] = ACTIONS(4598), [sym_long] = ACTIONS(4598), [sym_ulong] = ACTIONS(4598), [sym_cent] = ACTIONS(4598), [sym_ucent] = ACTIONS(4598), [sym_wchar] = ACTIONS(4598), [sym_dchar] = ACTIONS(4598), [sym_float] = ACTIONS(4598), [sym_double] = ACTIONS(4598), [sym_real] = ACTIONS(4598), [sym_ifloat] = ACTIONS(4598), [sym_idouble] = ACTIONS(4598), [sym_ireal] = ACTIONS(4598), [sym_cfloat] = ACTIONS(4598), [sym_cdouble] = ACTIONS(4598), [sym_creal] = ACTIONS(4598), [sym_size_t] = ACTIONS(4598), [sym_ptrdiff_t] = ACTIONS(4598), [sym_string] = ACTIONS(4598), [sym_cstring] = ACTIONS(4598), [sym_dstring] = ACTIONS(4598), [sym_wstring] = ACTIONS(4598), [sym_noreturn] = ACTIONS(4598), [sym_this] = ACTIONS(4598), [sym_abstract] = ACTIONS(4598), [sym_alias] = ACTIONS(4598), [sym_align] = ACTIONS(4598), [sym_auto] = ACTIONS(4598), [sym_catch] = ACTIONS(4598), [sym_class] = ACTIONS(4598), [sym_const] = ACTIONS(4598), [sym_debug] = ACTIONS(4598), [sym_deprecated] = ACTIONS(4598), [sym_else] = ACTIONS(4598), [sym_enum] = ACTIONS(4598), [sym_export] = ACTIONS(4598), [sym_extern] = ACTIONS(4598), [sym_final] = ACTIONS(4598), [sym_finally] = ACTIONS(4598), [sym_immutable] = ACTIONS(4598), [sym_import] = ACTIONS(4598), [sym_inout] = ACTIONS(4598), [sym_interface] = ACTIONS(4598), [sym_invariant] = ACTIONS(4598), [sym_mixin] = ACTIONS(4598), [sym_nothrow] = ACTIONS(4598), [sym_override] = ACTIONS(4598), [sym_package] = ACTIONS(4598), [sym_pragma] = ACTIONS(4598), [sym_private] = ACTIONS(4598), [sym_protected] = ACTIONS(4598), [sym_public] = ACTIONS(4598), [sym_pure] = ACTIONS(4598), [sym_ref] = ACTIONS(4598), [sym_return] = ACTIONS(4598), [sym_scope] = ACTIONS(4598), [sym_shared] = ACTIONS(4598), [sym_static] = ACTIONS(4598), [sym_struct] = ACTIONS(4598), [sym_synchronized] = ACTIONS(4598), [sym_template] = ACTIONS(4598), [sym_typeof] = ACTIONS(4598), [sym_union] = ACTIONS(4598), [sym_unittest] = ACTIONS(4598), [sym_version] = ACTIONS(4598), [sym_while] = ACTIONS(4598), [sym_gshared] = ACTIONS(4598), [sym_traits] = ACTIONS(4598), [sym_vector] = ACTIONS(4598), [sym_void] = ACTIONS(4598), [sym_directive] = ACTIONS(3), }, [2666] = { [sym_identifier] = ACTIONS(4978), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4980), [anon_sym_SEMI] = ACTIONS(4980), [anon_sym_TILDE] = ACTIONS(4980), [anon_sym_AT] = ACTIONS(4980), [sym_bool] = ACTIONS(4978), [sym_byte] = ACTIONS(4978), [sym_ubyte] = ACTIONS(4978), [sym_char] = ACTIONS(4978), [sym_short] = ACTIONS(4978), [sym_ushort] = ACTIONS(4978), [sym_int] = ACTIONS(4978), [sym_uint] = ACTIONS(4978), [sym_long] = ACTIONS(4978), [sym_ulong] = ACTIONS(4978), [sym_cent] = ACTIONS(4978), [sym_ucent] = ACTIONS(4978), [sym_wchar] = ACTIONS(4978), [sym_dchar] = ACTIONS(4978), [sym_float] = ACTIONS(4978), [sym_double] = ACTIONS(4978), [sym_real] = ACTIONS(4978), [sym_ifloat] = ACTIONS(4978), [sym_idouble] = ACTIONS(4978), [sym_ireal] = ACTIONS(4978), [sym_cfloat] = ACTIONS(4978), [sym_cdouble] = ACTIONS(4978), [sym_creal] = ACTIONS(4978), [sym_size_t] = ACTIONS(4978), [sym_ptrdiff_t] = ACTIONS(4978), [sym_string] = ACTIONS(4978), [sym_cstring] = ACTIONS(4978), [sym_dstring] = ACTIONS(4978), [sym_wstring] = ACTIONS(4978), [sym_noreturn] = ACTIONS(4978), [sym_this] = ACTIONS(4978), [sym_abstract] = ACTIONS(4978), [sym_alias] = ACTIONS(4978), [sym_align] = ACTIONS(4978), [sym_auto] = ACTIONS(4978), [sym_catch] = ACTIONS(4978), [sym_class] = ACTIONS(4978), [sym_const] = ACTIONS(4978), [sym_debug] = ACTIONS(4978), [sym_deprecated] = ACTIONS(4978), [sym_else] = ACTIONS(4978), [sym_enum] = ACTIONS(4978), [sym_export] = ACTIONS(4978), [sym_extern] = ACTIONS(4978), [sym_final] = ACTIONS(4978), [sym_finally] = ACTIONS(4978), [sym_immutable] = ACTIONS(4978), [sym_import] = ACTIONS(4978), [sym_inout] = ACTIONS(4978), [sym_interface] = ACTIONS(4978), [sym_invariant] = ACTIONS(4978), [sym_mixin] = ACTIONS(4978), [sym_nothrow] = ACTIONS(4978), [sym_override] = ACTIONS(4978), [sym_package] = ACTIONS(4978), [sym_pragma] = ACTIONS(4978), [sym_private] = ACTIONS(4978), [sym_protected] = ACTIONS(4978), [sym_public] = ACTIONS(4978), [sym_pure] = ACTIONS(4978), [sym_ref] = ACTIONS(4978), [sym_return] = ACTIONS(4978), [sym_scope] = ACTIONS(4978), [sym_shared] = ACTIONS(4978), [sym_static] = ACTIONS(4978), [sym_struct] = ACTIONS(4978), [sym_synchronized] = ACTIONS(4978), [sym_template] = ACTIONS(4978), [sym_typeof] = ACTIONS(4978), [sym_union] = ACTIONS(4978), [sym_unittest] = ACTIONS(4978), [sym_version] = ACTIONS(4978), [sym_while] = ACTIONS(4978), [sym_gshared] = ACTIONS(4978), [sym_traits] = ACTIONS(4978), [sym_vector] = ACTIONS(4978), [sym_void] = ACTIONS(4978), [sym_directive] = ACTIONS(3), }, [2667] = { [sym_identifier] = ACTIONS(4982), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4984), [anon_sym_SEMI] = ACTIONS(4984), [anon_sym_TILDE] = ACTIONS(4984), [anon_sym_AT] = ACTIONS(4984), [sym_bool] = ACTIONS(4982), [sym_byte] = ACTIONS(4982), [sym_ubyte] = ACTIONS(4982), [sym_char] = ACTIONS(4982), [sym_short] = ACTIONS(4982), [sym_ushort] = ACTIONS(4982), [sym_int] = ACTIONS(4982), [sym_uint] = ACTIONS(4982), [sym_long] = ACTIONS(4982), [sym_ulong] = ACTIONS(4982), [sym_cent] = ACTIONS(4982), [sym_ucent] = ACTIONS(4982), [sym_wchar] = ACTIONS(4982), [sym_dchar] = ACTIONS(4982), [sym_float] = ACTIONS(4982), [sym_double] = ACTIONS(4982), [sym_real] = ACTIONS(4982), [sym_ifloat] = ACTIONS(4982), [sym_idouble] = ACTIONS(4982), [sym_ireal] = ACTIONS(4982), [sym_cfloat] = ACTIONS(4982), [sym_cdouble] = ACTIONS(4982), [sym_creal] = ACTIONS(4982), [sym_size_t] = ACTIONS(4982), [sym_ptrdiff_t] = ACTIONS(4982), [sym_string] = ACTIONS(4982), [sym_cstring] = ACTIONS(4982), [sym_dstring] = ACTIONS(4982), [sym_wstring] = ACTIONS(4982), [sym_noreturn] = ACTIONS(4982), [sym_this] = ACTIONS(4982), [sym_abstract] = ACTIONS(4982), [sym_alias] = ACTIONS(4982), [sym_align] = ACTIONS(4982), [sym_auto] = ACTIONS(4982), [sym_catch] = ACTIONS(4982), [sym_class] = ACTIONS(4982), [sym_const] = ACTIONS(4982), [sym_debug] = ACTIONS(4982), [sym_deprecated] = ACTIONS(4982), [sym_else] = ACTIONS(4982), [sym_enum] = ACTIONS(4982), [sym_export] = ACTIONS(4982), [sym_extern] = ACTIONS(4982), [sym_final] = ACTIONS(4982), [sym_finally] = ACTIONS(4982), [sym_immutable] = ACTIONS(4982), [sym_import] = ACTIONS(4982), [sym_inout] = ACTIONS(4982), [sym_interface] = ACTIONS(4982), [sym_invariant] = ACTIONS(4982), [sym_mixin] = ACTIONS(4982), [sym_nothrow] = ACTIONS(4982), [sym_override] = ACTIONS(4982), [sym_package] = ACTIONS(4982), [sym_pragma] = ACTIONS(4982), [sym_private] = ACTIONS(4982), [sym_protected] = ACTIONS(4982), [sym_public] = ACTIONS(4982), [sym_pure] = ACTIONS(4982), [sym_ref] = ACTIONS(4982), [sym_return] = ACTIONS(4982), [sym_scope] = ACTIONS(4982), [sym_shared] = ACTIONS(4982), [sym_static] = ACTIONS(4982), [sym_struct] = ACTIONS(4982), [sym_synchronized] = ACTIONS(4982), [sym_template] = ACTIONS(4982), [sym_typeof] = ACTIONS(4982), [sym_union] = ACTIONS(4982), [sym_unittest] = ACTIONS(4982), [sym_version] = ACTIONS(4982), [sym_while] = ACTIONS(4982), [sym_gshared] = ACTIONS(4982), [sym_traits] = ACTIONS(4982), [sym_vector] = ACTIONS(4982), [sym_void] = ACTIONS(4982), [sym_directive] = ACTIONS(3), }, [2668] = { [sym_identifier] = ACTIONS(4986), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4988), [anon_sym_SEMI] = ACTIONS(4988), [anon_sym_TILDE] = ACTIONS(4988), [anon_sym_AT] = ACTIONS(4988), [sym_bool] = ACTIONS(4986), [sym_byte] = ACTIONS(4986), [sym_ubyte] = ACTIONS(4986), [sym_char] = ACTIONS(4986), [sym_short] = ACTIONS(4986), [sym_ushort] = ACTIONS(4986), [sym_int] = ACTIONS(4986), [sym_uint] = ACTIONS(4986), [sym_long] = ACTIONS(4986), [sym_ulong] = ACTIONS(4986), [sym_cent] = ACTIONS(4986), [sym_ucent] = ACTIONS(4986), [sym_wchar] = ACTIONS(4986), [sym_dchar] = ACTIONS(4986), [sym_float] = ACTIONS(4986), [sym_double] = ACTIONS(4986), [sym_real] = ACTIONS(4986), [sym_ifloat] = ACTIONS(4986), [sym_idouble] = ACTIONS(4986), [sym_ireal] = ACTIONS(4986), [sym_cfloat] = ACTIONS(4986), [sym_cdouble] = ACTIONS(4986), [sym_creal] = ACTIONS(4986), [sym_size_t] = ACTIONS(4986), [sym_ptrdiff_t] = ACTIONS(4986), [sym_string] = ACTIONS(4986), [sym_cstring] = ACTIONS(4986), [sym_dstring] = ACTIONS(4986), [sym_wstring] = ACTIONS(4986), [sym_noreturn] = ACTIONS(4986), [sym_this] = ACTIONS(4986), [sym_abstract] = ACTIONS(4986), [sym_alias] = ACTIONS(4986), [sym_align] = ACTIONS(4986), [sym_auto] = ACTIONS(4986), [sym_catch] = ACTIONS(4986), [sym_class] = ACTIONS(4986), [sym_const] = ACTIONS(4986), [sym_debug] = ACTIONS(4986), [sym_deprecated] = ACTIONS(4986), [sym_else] = ACTIONS(4986), [sym_enum] = ACTIONS(4986), [sym_export] = ACTIONS(4986), [sym_extern] = ACTIONS(4986), [sym_final] = ACTIONS(4986), [sym_finally] = ACTIONS(4986), [sym_immutable] = ACTIONS(4986), [sym_import] = ACTIONS(4986), [sym_inout] = ACTIONS(4986), [sym_interface] = ACTIONS(4986), [sym_invariant] = ACTIONS(4986), [sym_mixin] = ACTIONS(4986), [sym_nothrow] = ACTIONS(4986), [sym_override] = ACTIONS(4986), [sym_package] = ACTIONS(4986), [sym_pragma] = ACTIONS(4986), [sym_private] = ACTIONS(4986), [sym_protected] = ACTIONS(4986), [sym_public] = ACTIONS(4986), [sym_pure] = ACTIONS(4986), [sym_ref] = ACTIONS(4986), [sym_return] = ACTIONS(4986), [sym_scope] = ACTIONS(4986), [sym_shared] = ACTIONS(4986), [sym_static] = ACTIONS(4986), [sym_struct] = ACTIONS(4986), [sym_synchronized] = ACTIONS(4986), [sym_template] = ACTIONS(4986), [sym_typeof] = ACTIONS(4986), [sym_union] = ACTIONS(4986), [sym_unittest] = ACTIONS(4986), [sym_version] = ACTIONS(4986), [sym_while] = ACTIONS(4986), [sym_gshared] = ACTIONS(4986), [sym_traits] = ACTIONS(4986), [sym_vector] = ACTIONS(4986), [sym_void] = ACTIONS(4986), [sym_directive] = ACTIONS(3), }, [2669] = { [sym_identifier] = ACTIONS(4990), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4992), [anon_sym_SEMI] = ACTIONS(4992), [anon_sym_TILDE] = ACTIONS(4992), [anon_sym_AT] = ACTIONS(4992), [sym_bool] = ACTIONS(4990), [sym_byte] = ACTIONS(4990), [sym_ubyte] = ACTIONS(4990), [sym_char] = ACTIONS(4990), [sym_short] = ACTIONS(4990), [sym_ushort] = ACTIONS(4990), [sym_int] = ACTIONS(4990), [sym_uint] = ACTIONS(4990), [sym_long] = ACTIONS(4990), [sym_ulong] = ACTIONS(4990), [sym_cent] = ACTIONS(4990), [sym_ucent] = ACTIONS(4990), [sym_wchar] = ACTIONS(4990), [sym_dchar] = ACTIONS(4990), [sym_float] = ACTIONS(4990), [sym_double] = ACTIONS(4990), [sym_real] = ACTIONS(4990), [sym_ifloat] = ACTIONS(4990), [sym_idouble] = ACTIONS(4990), [sym_ireal] = ACTIONS(4990), [sym_cfloat] = ACTIONS(4990), [sym_cdouble] = ACTIONS(4990), [sym_creal] = ACTIONS(4990), [sym_size_t] = ACTIONS(4990), [sym_ptrdiff_t] = ACTIONS(4990), [sym_string] = ACTIONS(4990), [sym_cstring] = ACTIONS(4990), [sym_dstring] = ACTIONS(4990), [sym_wstring] = ACTIONS(4990), [sym_noreturn] = ACTIONS(4990), [sym_this] = ACTIONS(4990), [sym_abstract] = ACTIONS(4990), [sym_alias] = ACTIONS(4990), [sym_align] = ACTIONS(4990), [sym_auto] = ACTIONS(4990), [sym_catch] = ACTIONS(4990), [sym_class] = ACTIONS(4990), [sym_const] = ACTIONS(4990), [sym_debug] = ACTIONS(4990), [sym_deprecated] = ACTIONS(4990), [sym_else] = ACTIONS(4990), [sym_enum] = ACTIONS(4990), [sym_export] = ACTIONS(4990), [sym_extern] = ACTIONS(4990), [sym_final] = ACTIONS(4990), [sym_finally] = ACTIONS(4990), [sym_immutable] = ACTIONS(4990), [sym_import] = ACTIONS(4990), [sym_inout] = ACTIONS(4990), [sym_interface] = ACTIONS(4990), [sym_invariant] = ACTIONS(4990), [sym_mixin] = ACTIONS(4990), [sym_nothrow] = ACTIONS(4990), [sym_override] = ACTIONS(4990), [sym_package] = ACTIONS(4990), [sym_pragma] = ACTIONS(4990), [sym_private] = ACTIONS(4990), [sym_protected] = ACTIONS(4990), [sym_public] = ACTIONS(4990), [sym_pure] = ACTIONS(4990), [sym_ref] = ACTIONS(4990), [sym_return] = ACTIONS(4990), [sym_scope] = ACTIONS(4990), [sym_shared] = ACTIONS(4990), [sym_static] = ACTIONS(4990), [sym_struct] = ACTIONS(4990), [sym_synchronized] = ACTIONS(4990), [sym_template] = ACTIONS(4990), [sym_typeof] = ACTIONS(4990), [sym_union] = ACTIONS(4990), [sym_unittest] = ACTIONS(4990), [sym_version] = ACTIONS(4990), [sym_while] = ACTIONS(4990), [sym_gshared] = ACTIONS(4990), [sym_traits] = ACTIONS(4990), [sym_vector] = ACTIONS(4990), [sym_void] = ACTIONS(4990), [sym_directive] = ACTIONS(3), }, [2670] = { [sym_identifier] = ACTIONS(5016), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5018), [anon_sym_SEMI] = ACTIONS(5018), [anon_sym_TILDE] = ACTIONS(5018), [anon_sym_AT] = ACTIONS(5018), [sym_bool] = ACTIONS(5016), [sym_byte] = ACTIONS(5016), [sym_ubyte] = ACTIONS(5016), [sym_char] = ACTIONS(5016), [sym_short] = ACTIONS(5016), [sym_ushort] = ACTIONS(5016), [sym_int] = ACTIONS(5016), [sym_uint] = ACTIONS(5016), [sym_long] = ACTIONS(5016), [sym_ulong] = ACTIONS(5016), [sym_cent] = ACTIONS(5016), [sym_ucent] = ACTIONS(5016), [sym_wchar] = ACTIONS(5016), [sym_dchar] = ACTIONS(5016), [sym_float] = ACTIONS(5016), [sym_double] = ACTIONS(5016), [sym_real] = ACTIONS(5016), [sym_ifloat] = ACTIONS(5016), [sym_idouble] = ACTIONS(5016), [sym_ireal] = ACTIONS(5016), [sym_cfloat] = ACTIONS(5016), [sym_cdouble] = ACTIONS(5016), [sym_creal] = ACTIONS(5016), [sym_size_t] = ACTIONS(5016), [sym_ptrdiff_t] = ACTIONS(5016), [sym_string] = ACTIONS(5016), [sym_cstring] = ACTIONS(5016), [sym_dstring] = ACTIONS(5016), [sym_wstring] = ACTIONS(5016), [sym_noreturn] = ACTIONS(5016), [sym_this] = ACTIONS(5016), [sym_abstract] = ACTIONS(5016), [sym_alias] = ACTIONS(5016), [sym_align] = ACTIONS(5016), [sym_auto] = ACTIONS(5016), [sym_catch] = ACTIONS(5016), [sym_class] = ACTIONS(5016), [sym_const] = ACTIONS(5016), [sym_debug] = ACTIONS(5016), [sym_deprecated] = ACTIONS(5016), [sym_else] = ACTIONS(5016), [sym_enum] = ACTIONS(5016), [sym_export] = ACTIONS(5016), [sym_extern] = ACTIONS(5016), [sym_final] = ACTIONS(5016), [sym_finally] = ACTIONS(5016), [sym_immutable] = ACTIONS(5016), [sym_import] = ACTIONS(5016), [sym_inout] = ACTIONS(5016), [sym_interface] = ACTIONS(5016), [sym_invariant] = ACTIONS(5016), [sym_mixin] = ACTIONS(5016), [sym_nothrow] = ACTIONS(5016), [sym_override] = ACTIONS(5016), [sym_package] = ACTIONS(5016), [sym_pragma] = ACTIONS(5016), [sym_private] = ACTIONS(5016), [sym_protected] = ACTIONS(5016), [sym_public] = ACTIONS(5016), [sym_pure] = ACTIONS(5016), [sym_ref] = ACTIONS(5016), [sym_return] = ACTIONS(5016), [sym_scope] = ACTIONS(5016), [sym_shared] = ACTIONS(5016), [sym_static] = ACTIONS(5016), [sym_struct] = ACTIONS(5016), [sym_synchronized] = ACTIONS(5016), [sym_template] = ACTIONS(5016), [sym_typeof] = ACTIONS(5016), [sym_union] = ACTIONS(5016), [sym_unittest] = ACTIONS(5016), [sym_version] = ACTIONS(5016), [sym_while] = ACTIONS(5016), [sym_gshared] = ACTIONS(5016), [sym_traits] = ACTIONS(5016), [sym_vector] = ACTIONS(5016), [sym_void] = ACTIONS(5016), [sym_directive] = ACTIONS(3), }, [2671] = { [sym_identifier] = ACTIONS(5020), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5022), [anon_sym_SEMI] = ACTIONS(5022), [anon_sym_TILDE] = ACTIONS(5022), [anon_sym_AT] = ACTIONS(5022), [sym_bool] = ACTIONS(5020), [sym_byte] = ACTIONS(5020), [sym_ubyte] = ACTIONS(5020), [sym_char] = ACTIONS(5020), [sym_short] = ACTIONS(5020), [sym_ushort] = ACTIONS(5020), [sym_int] = ACTIONS(5020), [sym_uint] = ACTIONS(5020), [sym_long] = ACTIONS(5020), [sym_ulong] = ACTIONS(5020), [sym_cent] = ACTIONS(5020), [sym_ucent] = ACTIONS(5020), [sym_wchar] = ACTIONS(5020), [sym_dchar] = ACTIONS(5020), [sym_float] = ACTIONS(5020), [sym_double] = ACTIONS(5020), [sym_real] = ACTIONS(5020), [sym_ifloat] = ACTIONS(5020), [sym_idouble] = ACTIONS(5020), [sym_ireal] = ACTIONS(5020), [sym_cfloat] = ACTIONS(5020), [sym_cdouble] = ACTIONS(5020), [sym_creal] = ACTIONS(5020), [sym_size_t] = ACTIONS(5020), [sym_ptrdiff_t] = ACTIONS(5020), [sym_string] = ACTIONS(5020), [sym_cstring] = ACTIONS(5020), [sym_dstring] = ACTIONS(5020), [sym_wstring] = ACTIONS(5020), [sym_noreturn] = ACTIONS(5020), [sym_this] = ACTIONS(5020), [sym_abstract] = ACTIONS(5020), [sym_alias] = ACTIONS(5020), [sym_align] = ACTIONS(5020), [sym_auto] = ACTIONS(5020), [sym_catch] = ACTIONS(5020), [sym_class] = ACTIONS(5020), [sym_const] = ACTIONS(5020), [sym_debug] = ACTIONS(5020), [sym_deprecated] = ACTIONS(5020), [sym_else] = ACTIONS(5020), [sym_enum] = ACTIONS(5020), [sym_export] = ACTIONS(5020), [sym_extern] = ACTIONS(5020), [sym_final] = ACTIONS(5020), [sym_finally] = ACTIONS(5020), [sym_immutable] = ACTIONS(5020), [sym_import] = ACTIONS(5020), [sym_inout] = ACTIONS(5020), [sym_interface] = ACTIONS(5020), [sym_invariant] = ACTIONS(5020), [sym_mixin] = ACTIONS(5020), [sym_nothrow] = ACTIONS(5020), [sym_override] = ACTIONS(5020), [sym_package] = ACTIONS(5020), [sym_pragma] = ACTIONS(5020), [sym_private] = ACTIONS(5020), [sym_protected] = ACTIONS(5020), [sym_public] = ACTIONS(5020), [sym_pure] = ACTIONS(5020), [sym_ref] = ACTIONS(5020), [sym_return] = ACTIONS(5020), [sym_scope] = ACTIONS(5020), [sym_shared] = ACTIONS(5020), [sym_static] = ACTIONS(5020), [sym_struct] = ACTIONS(5020), [sym_synchronized] = ACTIONS(5020), [sym_template] = ACTIONS(5020), [sym_typeof] = ACTIONS(5020), [sym_union] = ACTIONS(5020), [sym_unittest] = ACTIONS(5020), [sym_version] = ACTIONS(5020), [sym_while] = ACTIONS(5020), [sym_gshared] = ACTIONS(5020), [sym_traits] = ACTIONS(5020), [sym_vector] = ACTIONS(5020), [sym_void] = ACTIONS(5020), [sym_directive] = ACTIONS(3), }, [2672] = { [sym_identifier] = ACTIONS(5032), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5034), [anon_sym_SEMI] = ACTIONS(5034), [anon_sym_TILDE] = ACTIONS(5034), [anon_sym_AT] = ACTIONS(5034), [sym_bool] = ACTIONS(5032), [sym_byte] = ACTIONS(5032), [sym_ubyte] = ACTIONS(5032), [sym_char] = ACTIONS(5032), [sym_short] = ACTIONS(5032), [sym_ushort] = ACTIONS(5032), [sym_int] = ACTIONS(5032), [sym_uint] = ACTIONS(5032), [sym_long] = ACTIONS(5032), [sym_ulong] = ACTIONS(5032), [sym_cent] = ACTIONS(5032), [sym_ucent] = ACTIONS(5032), [sym_wchar] = ACTIONS(5032), [sym_dchar] = ACTIONS(5032), [sym_float] = ACTIONS(5032), [sym_double] = ACTIONS(5032), [sym_real] = ACTIONS(5032), [sym_ifloat] = ACTIONS(5032), [sym_idouble] = ACTIONS(5032), [sym_ireal] = ACTIONS(5032), [sym_cfloat] = ACTIONS(5032), [sym_cdouble] = ACTIONS(5032), [sym_creal] = ACTIONS(5032), [sym_size_t] = ACTIONS(5032), [sym_ptrdiff_t] = ACTIONS(5032), [sym_string] = ACTIONS(5032), [sym_cstring] = ACTIONS(5032), [sym_dstring] = ACTIONS(5032), [sym_wstring] = ACTIONS(5032), [sym_noreturn] = ACTIONS(5032), [sym_this] = ACTIONS(5032), [sym_abstract] = ACTIONS(5032), [sym_alias] = ACTIONS(5032), [sym_align] = ACTIONS(5032), [sym_auto] = ACTIONS(5032), [sym_catch] = ACTIONS(5032), [sym_class] = ACTIONS(5032), [sym_const] = ACTIONS(5032), [sym_debug] = ACTIONS(5032), [sym_deprecated] = ACTIONS(5032), [sym_else] = ACTIONS(5032), [sym_enum] = ACTIONS(5032), [sym_export] = ACTIONS(5032), [sym_extern] = ACTIONS(5032), [sym_final] = ACTIONS(5032), [sym_finally] = ACTIONS(5032), [sym_immutable] = ACTIONS(5032), [sym_import] = ACTIONS(5032), [sym_inout] = ACTIONS(5032), [sym_interface] = ACTIONS(5032), [sym_invariant] = ACTIONS(5032), [sym_mixin] = ACTIONS(5032), [sym_nothrow] = ACTIONS(5032), [sym_override] = ACTIONS(5032), [sym_package] = ACTIONS(5032), [sym_pragma] = ACTIONS(5032), [sym_private] = ACTIONS(5032), [sym_protected] = ACTIONS(5032), [sym_public] = ACTIONS(5032), [sym_pure] = ACTIONS(5032), [sym_ref] = ACTIONS(5032), [sym_return] = ACTIONS(5032), [sym_scope] = ACTIONS(5032), [sym_shared] = ACTIONS(5032), [sym_static] = ACTIONS(5032), [sym_struct] = ACTIONS(5032), [sym_synchronized] = ACTIONS(5032), [sym_template] = ACTIONS(5032), [sym_typeof] = ACTIONS(5032), [sym_union] = ACTIONS(5032), [sym_unittest] = ACTIONS(5032), [sym_version] = ACTIONS(5032), [sym_while] = ACTIONS(5032), [sym_gshared] = ACTIONS(5032), [sym_traits] = ACTIONS(5032), [sym_vector] = ACTIONS(5032), [sym_void] = ACTIONS(5032), [sym_directive] = ACTIONS(3), }, [2673] = { [sym_identifier] = ACTIONS(5048), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5050), [anon_sym_SEMI] = ACTIONS(5050), [anon_sym_TILDE] = ACTIONS(5050), [anon_sym_AT] = ACTIONS(5050), [sym_bool] = ACTIONS(5048), [sym_byte] = ACTIONS(5048), [sym_ubyte] = ACTIONS(5048), [sym_char] = ACTIONS(5048), [sym_short] = ACTIONS(5048), [sym_ushort] = ACTIONS(5048), [sym_int] = ACTIONS(5048), [sym_uint] = ACTIONS(5048), [sym_long] = ACTIONS(5048), [sym_ulong] = ACTIONS(5048), [sym_cent] = ACTIONS(5048), [sym_ucent] = ACTIONS(5048), [sym_wchar] = ACTIONS(5048), [sym_dchar] = ACTIONS(5048), [sym_float] = ACTIONS(5048), [sym_double] = ACTIONS(5048), [sym_real] = ACTIONS(5048), [sym_ifloat] = ACTIONS(5048), [sym_idouble] = ACTIONS(5048), [sym_ireal] = ACTIONS(5048), [sym_cfloat] = ACTIONS(5048), [sym_cdouble] = ACTIONS(5048), [sym_creal] = ACTIONS(5048), [sym_size_t] = ACTIONS(5048), [sym_ptrdiff_t] = ACTIONS(5048), [sym_string] = ACTIONS(5048), [sym_cstring] = ACTIONS(5048), [sym_dstring] = ACTIONS(5048), [sym_wstring] = ACTIONS(5048), [sym_noreturn] = ACTIONS(5048), [sym_this] = ACTIONS(5048), [sym_abstract] = ACTIONS(5048), [sym_alias] = ACTIONS(5048), [sym_align] = ACTIONS(5048), [sym_auto] = ACTIONS(5048), [sym_catch] = ACTIONS(5048), [sym_class] = ACTIONS(5048), [sym_const] = ACTIONS(5048), [sym_debug] = ACTIONS(5048), [sym_deprecated] = ACTIONS(5048), [sym_else] = ACTIONS(5048), [sym_enum] = ACTIONS(5048), [sym_export] = ACTIONS(5048), [sym_extern] = ACTIONS(5048), [sym_final] = ACTIONS(5048), [sym_finally] = ACTIONS(5048), [sym_immutable] = ACTIONS(5048), [sym_import] = ACTIONS(5048), [sym_inout] = ACTIONS(5048), [sym_interface] = ACTIONS(5048), [sym_invariant] = ACTIONS(5048), [sym_mixin] = ACTIONS(5048), [sym_nothrow] = ACTIONS(5048), [sym_override] = ACTIONS(5048), [sym_package] = ACTIONS(5048), [sym_pragma] = ACTIONS(5048), [sym_private] = ACTIONS(5048), [sym_protected] = ACTIONS(5048), [sym_public] = ACTIONS(5048), [sym_pure] = ACTIONS(5048), [sym_ref] = ACTIONS(5048), [sym_return] = ACTIONS(5048), [sym_scope] = ACTIONS(5048), [sym_shared] = ACTIONS(5048), [sym_static] = ACTIONS(5048), [sym_struct] = ACTIONS(5048), [sym_synchronized] = ACTIONS(5048), [sym_template] = ACTIONS(5048), [sym_typeof] = ACTIONS(5048), [sym_union] = ACTIONS(5048), [sym_unittest] = ACTIONS(5048), [sym_version] = ACTIONS(5048), [sym_while] = ACTIONS(5048), [sym_gshared] = ACTIONS(5048), [sym_traits] = ACTIONS(5048), [sym_vector] = ACTIONS(5048), [sym_void] = ACTIONS(5048), [sym_directive] = ACTIONS(3), }, [2674] = { [ts_builtin_sym_end] = ACTIONS(4576), [sym_identifier] = ACTIONS(4574), [sym_end_file] = ACTIONS(4574), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4576), [anon_sym_SEMI] = ACTIONS(4576), [anon_sym_TILDE] = ACTIONS(4576), [anon_sym_AT] = ACTIONS(4576), [sym_bool] = ACTIONS(4574), [sym_byte] = ACTIONS(4574), [sym_ubyte] = ACTIONS(4574), [sym_char] = ACTIONS(4574), [sym_short] = ACTIONS(4574), [sym_ushort] = ACTIONS(4574), [sym_int] = ACTIONS(4574), [sym_uint] = ACTIONS(4574), [sym_long] = ACTIONS(4574), [sym_ulong] = ACTIONS(4574), [sym_cent] = ACTIONS(4574), [sym_ucent] = ACTIONS(4574), [sym_wchar] = ACTIONS(4574), [sym_dchar] = ACTIONS(4574), [sym_float] = ACTIONS(4574), [sym_double] = ACTIONS(4574), [sym_real] = ACTIONS(4574), [sym_ifloat] = ACTIONS(4574), [sym_idouble] = ACTIONS(4574), [sym_ireal] = ACTIONS(4574), [sym_cfloat] = ACTIONS(4574), [sym_cdouble] = ACTIONS(4574), [sym_creal] = ACTIONS(4574), [sym_size_t] = ACTIONS(4574), [sym_ptrdiff_t] = ACTIONS(4574), [sym_string] = ACTIONS(4574), [sym_cstring] = ACTIONS(4574), [sym_dstring] = ACTIONS(4574), [sym_wstring] = ACTIONS(4574), [sym_noreturn] = ACTIONS(4574), [sym_this] = ACTIONS(4574), [sym_abstract] = ACTIONS(4574), [sym_alias] = ACTIONS(4574), [sym_align] = ACTIONS(4574), [sym_auto] = ACTIONS(4574), [sym_class] = ACTIONS(4574), [sym_const] = ACTIONS(4574), [sym_debug] = ACTIONS(4574), [sym_deprecated] = ACTIONS(4574), [sym_else] = ACTIONS(4574), [sym_enum] = ACTIONS(4574), [sym_export] = ACTIONS(4574), [sym_extern] = ACTIONS(4574), [sym_final] = ACTIONS(4574), [sym_immutable] = ACTIONS(4574), [sym_import] = ACTIONS(4574), [sym_inout] = ACTIONS(4574), [sym_interface] = ACTIONS(4574), [sym_invariant] = ACTIONS(4574), [sym_mixin] = ACTIONS(4574), [sym_nothrow] = ACTIONS(4574), [sym_override] = ACTIONS(4574), [sym_package] = ACTIONS(4574), [sym_pragma] = ACTIONS(4574), [sym_private] = ACTIONS(4574), [sym_protected] = ACTIONS(4574), [sym_public] = ACTIONS(4574), [sym_pure] = ACTIONS(4574), [sym_ref] = ACTIONS(4574), [sym_return] = ACTIONS(4574), [sym_scope] = ACTIONS(4574), [sym_shared] = ACTIONS(4574), [sym_static] = ACTIONS(4574), [sym_struct] = ACTIONS(4574), [sym_synchronized] = ACTIONS(4574), [sym_template] = ACTIONS(4574), [sym_typeof] = ACTIONS(4574), [sym_union] = ACTIONS(4574), [sym_unittest] = ACTIONS(4574), [sym_version] = ACTIONS(4574), [sym_while] = ACTIONS(4574), [sym_gshared] = ACTIONS(4574), [sym_traits] = ACTIONS(4574), [sym_vector] = ACTIONS(4574), [sym_void] = ACTIONS(4574), [sym_directive] = ACTIONS(3), }, [2675] = { [ts_builtin_sym_end] = ACTIONS(4564), [sym_identifier] = ACTIONS(4562), [sym_end_file] = ACTIONS(4562), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4564), [anon_sym_SEMI] = ACTIONS(4564), [anon_sym_TILDE] = ACTIONS(4564), [anon_sym_AT] = ACTIONS(4564), [sym_bool] = ACTIONS(4562), [sym_byte] = ACTIONS(4562), [sym_ubyte] = ACTIONS(4562), [sym_char] = ACTIONS(4562), [sym_short] = ACTIONS(4562), [sym_ushort] = ACTIONS(4562), [sym_int] = ACTIONS(4562), [sym_uint] = ACTIONS(4562), [sym_long] = ACTIONS(4562), [sym_ulong] = ACTIONS(4562), [sym_cent] = ACTIONS(4562), [sym_ucent] = ACTIONS(4562), [sym_wchar] = ACTIONS(4562), [sym_dchar] = ACTIONS(4562), [sym_float] = ACTIONS(4562), [sym_double] = ACTIONS(4562), [sym_real] = ACTIONS(4562), [sym_ifloat] = ACTIONS(4562), [sym_idouble] = ACTIONS(4562), [sym_ireal] = ACTIONS(4562), [sym_cfloat] = ACTIONS(4562), [sym_cdouble] = ACTIONS(4562), [sym_creal] = ACTIONS(4562), [sym_size_t] = ACTIONS(4562), [sym_ptrdiff_t] = ACTIONS(4562), [sym_string] = ACTIONS(4562), [sym_cstring] = ACTIONS(4562), [sym_dstring] = ACTIONS(4562), [sym_wstring] = ACTIONS(4562), [sym_noreturn] = ACTIONS(4562), [sym_this] = ACTIONS(4562), [sym_abstract] = ACTIONS(4562), [sym_alias] = ACTIONS(4562), [sym_align] = ACTIONS(4562), [sym_auto] = ACTIONS(4562), [sym_class] = ACTIONS(4562), [sym_const] = ACTIONS(4562), [sym_debug] = ACTIONS(4562), [sym_deprecated] = ACTIONS(4562), [sym_else] = ACTIONS(4562), [sym_enum] = ACTIONS(4562), [sym_export] = ACTIONS(4562), [sym_extern] = ACTIONS(4562), [sym_final] = ACTIONS(4562), [sym_immutable] = ACTIONS(4562), [sym_import] = ACTIONS(4562), [sym_inout] = ACTIONS(4562), [sym_interface] = ACTIONS(4562), [sym_invariant] = ACTIONS(4562), [sym_mixin] = ACTIONS(4562), [sym_nothrow] = ACTIONS(4562), [sym_override] = ACTIONS(4562), [sym_package] = ACTIONS(4562), [sym_pragma] = ACTIONS(4562), [sym_private] = ACTIONS(4562), [sym_protected] = ACTIONS(4562), [sym_public] = ACTIONS(4562), [sym_pure] = ACTIONS(4562), [sym_ref] = ACTIONS(4562), [sym_return] = ACTIONS(4562), [sym_scope] = ACTIONS(4562), [sym_shared] = ACTIONS(4562), [sym_static] = ACTIONS(4562), [sym_struct] = ACTIONS(4562), [sym_synchronized] = ACTIONS(4562), [sym_template] = ACTIONS(4562), [sym_typeof] = ACTIONS(4562), [sym_union] = ACTIONS(4562), [sym_unittest] = ACTIONS(4562), [sym_version] = ACTIONS(4562), [sym_while] = ACTIONS(4562), [sym_gshared] = ACTIONS(4562), [sym_traits] = ACTIONS(4562), [sym_vector] = ACTIONS(4562), [sym_void] = ACTIONS(4562), [sym_directive] = ACTIONS(3), }, [2676] = { [sym_identifier] = ACTIONS(5068), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(5070), [anon_sym_SEMI] = ACTIONS(5070), [anon_sym_TILDE] = ACTIONS(5070), [anon_sym_AT] = ACTIONS(5070), [sym_bool] = ACTIONS(5068), [sym_byte] = ACTIONS(5068), [sym_ubyte] = ACTIONS(5068), [sym_char] = ACTIONS(5068), [sym_short] = ACTIONS(5068), [sym_ushort] = ACTIONS(5068), [sym_int] = ACTIONS(5068), [sym_uint] = ACTIONS(5068), [sym_long] = ACTIONS(5068), [sym_ulong] = ACTIONS(5068), [sym_cent] = ACTIONS(5068), [sym_ucent] = ACTIONS(5068), [sym_wchar] = ACTIONS(5068), [sym_dchar] = ACTIONS(5068), [sym_float] = ACTIONS(5068), [sym_double] = ACTIONS(5068), [sym_real] = ACTIONS(5068), [sym_ifloat] = ACTIONS(5068), [sym_idouble] = ACTIONS(5068), [sym_ireal] = ACTIONS(5068), [sym_cfloat] = ACTIONS(5068), [sym_cdouble] = ACTIONS(5068), [sym_creal] = ACTIONS(5068), [sym_size_t] = ACTIONS(5068), [sym_ptrdiff_t] = ACTIONS(5068), [sym_string] = ACTIONS(5068), [sym_cstring] = ACTIONS(5068), [sym_dstring] = ACTIONS(5068), [sym_wstring] = ACTIONS(5068), [sym_noreturn] = ACTIONS(5068), [sym_this] = ACTIONS(5068), [sym_abstract] = ACTIONS(5068), [sym_alias] = ACTIONS(5068), [sym_align] = ACTIONS(5068), [sym_auto] = ACTIONS(5068), [sym_catch] = ACTIONS(5068), [sym_class] = ACTIONS(5068), [sym_const] = ACTIONS(5068), [sym_debug] = ACTIONS(5068), [sym_deprecated] = ACTIONS(5068), [sym_else] = ACTIONS(5068), [sym_enum] = ACTIONS(5068), [sym_export] = ACTIONS(5068), [sym_extern] = ACTIONS(5068), [sym_final] = ACTIONS(5068), [sym_finally] = ACTIONS(5068), [sym_immutable] = ACTIONS(5068), [sym_import] = ACTIONS(5068), [sym_inout] = ACTIONS(5068), [sym_interface] = ACTIONS(5068), [sym_invariant] = ACTIONS(5068), [sym_mixin] = ACTIONS(5068), [sym_nothrow] = ACTIONS(5068), [sym_override] = ACTIONS(5068), [sym_package] = ACTIONS(5068), [sym_pragma] = ACTIONS(5068), [sym_private] = ACTIONS(5068), [sym_protected] = ACTIONS(5068), [sym_public] = ACTIONS(5068), [sym_pure] = ACTIONS(5068), [sym_ref] = ACTIONS(5068), [sym_return] = ACTIONS(5068), [sym_scope] = ACTIONS(5068), [sym_shared] = ACTIONS(5068), [sym_static] = ACTIONS(5068), [sym_struct] = ACTIONS(5068), [sym_synchronized] = ACTIONS(5068), [sym_template] = ACTIONS(5068), [sym_typeof] = ACTIONS(5068), [sym_union] = ACTIONS(5068), [sym_unittest] = ACTIONS(5068), [sym_version] = ACTIONS(5068), [sym_while] = ACTIONS(5068), [sym_gshared] = ACTIONS(5068), [sym_traits] = ACTIONS(5068), [sym_vector] = ACTIONS(5068), [sym_void] = ACTIONS(5068), [sym_directive] = ACTIONS(3), }, [2677] = { [ts_builtin_sym_end] = ACTIONS(4580), [sym_identifier] = ACTIONS(4578), [sym_end_file] = ACTIONS(4578), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4580), [anon_sym_SEMI] = ACTIONS(4580), [anon_sym_TILDE] = ACTIONS(4580), [anon_sym_AT] = ACTIONS(4580), [sym_bool] = ACTIONS(4578), [sym_byte] = ACTIONS(4578), [sym_ubyte] = ACTIONS(4578), [sym_char] = ACTIONS(4578), [sym_short] = ACTIONS(4578), [sym_ushort] = ACTIONS(4578), [sym_int] = ACTIONS(4578), [sym_uint] = ACTIONS(4578), [sym_long] = ACTIONS(4578), [sym_ulong] = ACTIONS(4578), [sym_cent] = ACTIONS(4578), [sym_ucent] = ACTIONS(4578), [sym_wchar] = ACTIONS(4578), [sym_dchar] = ACTIONS(4578), [sym_float] = ACTIONS(4578), [sym_double] = ACTIONS(4578), [sym_real] = ACTIONS(4578), [sym_ifloat] = ACTIONS(4578), [sym_idouble] = ACTIONS(4578), [sym_ireal] = ACTIONS(4578), [sym_cfloat] = ACTIONS(4578), [sym_cdouble] = ACTIONS(4578), [sym_creal] = ACTIONS(4578), [sym_size_t] = ACTIONS(4578), [sym_ptrdiff_t] = ACTIONS(4578), [sym_string] = ACTIONS(4578), [sym_cstring] = ACTIONS(4578), [sym_dstring] = ACTIONS(4578), [sym_wstring] = ACTIONS(4578), [sym_noreturn] = ACTIONS(4578), [sym_this] = ACTIONS(4578), [sym_abstract] = ACTIONS(4578), [sym_alias] = ACTIONS(4578), [sym_align] = ACTIONS(4578), [sym_auto] = ACTIONS(4578), [sym_class] = ACTIONS(4578), [sym_const] = ACTIONS(4578), [sym_debug] = ACTIONS(4578), [sym_deprecated] = ACTIONS(4578), [sym_else] = ACTIONS(4578), [sym_enum] = ACTIONS(4578), [sym_export] = ACTIONS(4578), [sym_extern] = ACTIONS(4578), [sym_final] = ACTIONS(4578), [sym_immutable] = ACTIONS(4578), [sym_import] = ACTIONS(4578), [sym_inout] = ACTIONS(4578), [sym_interface] = ACTIONS(4578), [sym_invariant] = ACTIONS(4578), [sym_mixin] = ACTIONS(4578), [sym_nothrow] = ACTIONS(4578), [sym_override] = ACTIONS(4578), [sym_package] = ACTIONS(4578), [sym_pragma] = ACTIONS(4578), [sym_private] = ACTIONS(4578), [sym_protected] = ACTIONS(4578), [sym_public] = ACTIONS(4578), [sym_pure] = ACTIONS(4578), [sym_ref] = ACTIONS(4578), [sym_return] = ACTIONS(4578), [sym_scope] = ACTIONS(4578), [sym_shared] = ACTIONS(4578), [sym_static] = ACTIONS(4578), [sym_struct] = ACTIONS(4578), [sym_synchronized] = ACTIONS(4578), [sym_template] = ACTIONS(4578), [sym_typeof] = ACTIONS(4578), [sym_union] = ACTIONS(4578), [sym_unittest] = ACTIONS(4578), [sym_version] = ACTIONS(4578), [sym_while] = ACTIONS(4578), [sym_gshared] = ACTIONS(4578), [sym_traits] = ACTIONS(4578), [sym_vector] = ACTIONS(4578), [sym_void] = ACTIONS(4578), [sym_directive] = ACTIONS(3), }, [2678] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5127), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2679] = { [ts_builtin_sym_end] = ACTIONS(4862), [sym_identifier] = ACTIONS(4860), [sym_end_file] = ACTIONS(4860), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4862), [anon_sym_SEMI] = ACTIONS(4862), [anon_sym_TILDE] = ACTIONS(4862), [anon_sym_AT] = ACTIONS(4862), [sym_bool] = ACTIONS(4860), [sym_byte] = ACTIONS(4860), [sym_ubyte] = ACTIONS(4860), [sym_char] = ACTIONS(4860), [sym_short] = ACTIONS(4860), [sym_ushort] = ACTIONS(4860), [sym_int] = ACTIONS(4860), [sym_uint] = ACTIONS(4860), [sym_long] = ACTIONS(4860), [sym_ulong] = ACTIONS(4860), [sym_cent] = ACTIONS(4860), [sym_ucent] = ACTIONS(4860), [sym_wchar] = ACTIONS(4860), [sym_dchar] = ACTIONS(4860), [sym_float] = ACTIONS(4860), [sym_double] = ACTIONS(4860), [sym_real] = ACTIONS(4860), [sym_ifloat] = ACTIONS(4860), [sym_idouble] = ACTIONS(4860), [sym_ireal] = ACTIONS(4860), [sym_cfloat] = ACTIONS(4860), [sym_cdouble] = ACTIONS(4860), [sym_creal] = ACTIONS(4860), [sym_size_t] = ACTIONS(4860), [sym_ptrdiff_t] = ACTIONS(4860), [sym_string] = ACTIONS(4860), [sym_cstring] = ACTIONS(4860), [sym_dstring] = ACTIONS(4860), [sym_wstring] = ACTIONS(4860), [sym_noreturn] = ACTIONS(4860), [sym_this] = ACTIONS(4860), [sym_abstract] = ACTIONS(4860), [sym_alias] = ACTIONS(4860), [sym_align] = ACTIONS(4860), [sym_auto] = ACTIONS(4860), [sym_class] = ACTIONS(4860), [sym_const] = ACTIONS(4860), [sym_debug] = ACTIONS(4860), [sym_deprecated] = ACTIONS(4860), [sym_else] = ACTIONS(4860), [sym_enum] = ACTIONS(4860), [sym_export] = ACTIONS(4860), [sym_extern] = ACTIONS(4860), [sym_final] = ACTIONS(4860), [sym_immutable] = ACTIONS(4860), [sym_import] = ACTIONS(4860), [sym_inout] = ACTIONS(4860), [sym_interface] = ACTIONS(4860), [sym_invariant] = ACTIONS(4860), [sym_mixin] = ACTIONS(4860), [sym_nothrow] = ACTIONS(4860), [sym_override] = ACTIONS(4860), [sym_package] = ACTIONS(4860), [sym_pragma] = ACTIONS(4860), [sym_private] = ACTIONS(4860), [sym_protected] = ACTIONS(4860), [sym_public] = ACTIONS(4860), [sym_pure] = ACTIONS(4860), [sym_ref] = ACTIONS(4860), [sym_return] = ACTIONS(4860), [sym_scope] = ACTIONS(4860), [sym_shared] = ACTIONS(4860), [sym_static] = ACTIONS(4860), [sym_struct] = ACTIONS(4860), [sym_synchronized] = ACTIONS(4860), [sym_template] = ACTIONS(4860), [sym_typeof] = ACTIONS(4860), [sym_union] = ACTIONS(4860), [sym_unittest] = ACTIONS(4860), [sym_version] = ACTIONS(4860), [sym_while] = ACTIONS(4860), [sym_gshared] = ACTIONS(4860), [sym_traits] = ACTIONS(4860), [sym_vector] = ACTIONS(4860), [sym_void] = ACTIONS(4860), [sym_directive] = ACTIONS(3), }, [2680] = { [ts_builtin_sym_end] = ACTIONS(4526), [sym_identifier] = ACTIONS(4524), [sym_end_file] = ACTIONS(4524), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4526), [anon_sym_SEMI] = ACTIONS(4526), [anon_sym_TILDE] = ACTIONS(4526), [anon_sym_AT] = ACTIONS(4526), [sym_bool] = ACTIONS(4524), [sym_byte] = ACTIONS(4524), [sym_ubyte] = ACTIONS(4524), [sym_char] = ACTIONS(4524), [sym_short] = ACTIONS(4524), [sym_ushort] = ACTIONS(4524), [sym_int] = ACTIONS(4524), [sym_uint] = ACTIONS(4524), [sym_long] = ACTIONS(4524), [sym_ulong] = ACTIONS(4524), [sym_cent] = ACTIONS(4524), [sym_ucent] = ACTIONS(4524), [sym_wchar] = ACTIONS(4524), [sym_dchar] = ACTIONS(4524), [sym_float] = ACTIONS(4524), [sym_double] = ACTIONS(4524), [sym_real] = ACTIONS(4524), [sym_ifloat] = ACTIONS(4524), [sym_idouble] = ACTIONS(4524), [sym_ireal] = ACTIONS(4524), [sym_cfloat] = ACTIONS(4524), [sym_cdouble] = ACTIONS(4524), [sym_creal] = ACTIONS(4524), [sym_size_t] = ACTIONS(4524), [sym_ptrdiff_t] = ACTIONS(4524), [sym_string] = ACTIONS(4524), [sym_cstring] = ACTIONS(4524), [sym_dstring] = ACTIONS(4524), [sym_wstring] = ACTIONS(4524), [sym_noreturn] = ACTIONS(4524), [sym_this] = ACTIONS(4524), [sym_abstract] = ACTIONS(4524), [sym_alias] = ACTIONS(4524), [sym_align] = ACTIONS(4524), [sym_auto] = ACTIONS(4524), [sym_class] = ACTIONS(4524), [sym_const] = ACTIONS(4524), [sym_debug] = ACTIONS(4524), [sym_deprecated] = ACTIONS(4524), [sym_else] = ACTIONS(4524), [sym_enum] = ACTIONS(4524), [sym_export] = ACTIONS(4524), [sym_extern] = ACTIONS(4524), [sym_final] = ACTIONS(4524), [sym_immutable] = ACTIONS(4524), [sym_import] = ACTIONS(4524), [sym_inout] = ACTIONS(4524), [sym_interface] = ACTIONS(4524), [sym_invariant] = ACTIONS(4524), [sym_mixin] = ACTIONS(4524), [sym_nothrow] = ACTIONS(4524), [sym_override] = ACTIONS(4524), [sym_package] = ACTIONS(4524), [sym_pragma] = ACTIONS(4524), [sym_private] = ACTIONS(4524), [sym_protected] = ACTIONS(4524), [sym_public] = ACTIONS(4524), [sym_pure] = ACTIONS(4524), [sym_ref] = ACTIONS(4524), [sym_return] = ACTIONS(4524), [sym_scope] = ACTIONS(4524), [sym_shared] = ACTIONS(4524), [sym_static] = ACTIONS(4524), [sym_struct] = ACTIONS(4524), [sym_synchronized] = ACTIONS(4524), [sym_template] = ACTIONS(4524), [sym_typeof] = ACTIONS(4524), [sym_union] = ACTIONS(4524), [sym_unittest] = ACTIONS(4524), [sym_version] = ACTIONS(4524), [sym_while] = ACTIONS(4524), [sym_gshared] = ACTIONS(4524), [sym_traits] = ACTIONS(4524), [sym_vector] = ACTIONS(4524), [sym_void] = ACTIONS(4524), [sym_directive] = ACTIONS(3), }, [2681] = { [ts_builtin_sym_end] = ACTIONS(4548), [sym_identifier] = ACTIONS(4546), [sym_end_file] = ACTIONS(4546), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4548), [anon_sym_SEMI] = ACTIONS(4548), [anon_sym_TILDE] = ACTIONS(4548), [anon_sym_AT] = ACTIONS(4548), [sym_bool] = ACTIONS(4546), [sym_byte] = ACTIONS(4546), [sym_ubyte] = ACTIONS(4546), [sym_char] = ACTIONS(4546), [sym_short] = ACTIONS(4546), [sym_ushort] = ACTIONS(4546), [sym_int] = ACTIONS(4546), [sym_uint] = ACTIONS(4546), [sym_long] = ACTIONS(4546), [sym_ulong] = ACTIONS(4546), [sym_cent] = ACTIONS(4546), [sym_ucent] = ACTIONS(4546), [sym_wchar] = ACTIONS(4546), [sym_dchar] = ACTIONS(4546), [sym_float] = ACTIONS(4546), [sym_double] = ACTIONS(4546), [sym_real] = ACTIONS(4546), [sym_ifloat] = ACTIONS(4546), [sym_idouble] = ACTIONS(4546), [sym_ireal] = ACTIONS(4546), [sym_cfloat] = ACTIONS(4546), [sym_cdouble] = ACTIONS(4546), [sym_creal] = ACTIONS(4546), [sym_size_t] = ACTIONS(4546), [sym_ptrdiff_t] = ACTIONS(4546), [sym_string] = ACTIONS(4546), [sym_cstring] = ACTIONS(4546), [sym_dstring] = ACTIONS(4546), [sym_wstring] = ACTIONS(4546), [sym_noreturn] = ACTIONS(4546), [sym_this] = ACTIONS(4546), [sym_abstract] = ACTIONS(4546), [sym_alias] = ACTIONS(4546), [sym_align] = ACTIONS(4546), [sym_auto] = ACTIONS(4546), [sym_class] = ACTIONS(4546), [sym_const] = ACTIONS(4546), [sym_debug] = ACTIONS(4546), [sym_deprecated] = ACTIONS(4546), [sym_else] = ACTIONS(4546), [sym_enum] = ACTIONS(4546), [sym_export] = ACTIONS(4546), [sym_extern] = ACTIONS(4546), [sym_final] = ACTIONS(4546), [sym_immutable] = ACTIONS(4546), [sym_import] = ACTIONS(4546), [sym_inout] = ACTIONS(4546), [sym_interface] = ACTIONS(4546), [sym_invariant] = ACTIONS(4546), [sym_mixin] = ACTIONS(4546), [sym_nothrow] = ACTIONS(4546), [sym_override] = ACTIONS(4546), [sym_package] = ACTIONS(4546), [sym_pragma] = ACTIONS(4546), [sym_private] = ACTIONS(4546), [sym_protected] = ACTIONS(4546), [sym_public] = ACTIONS(4546), [sym_pure] = ACTIONS(4546), [sym_ref] = ACTIONS(4546), [sym_return] = ACTIONS(4546), [sym_scope] = ACTIONS(4546), [sym_shared] = ACTIONS(4546), [sym_static] = ACTIONS(4546), [sym_struct] = ACTIONS(4546), [sym_synchronized] = ACTIONS(4546), [sym_template] = ACTIONS(4546), [sym_typeof] = ACTIONS(4546), [sym_union] = ACTIONS(4546), [sym_unittest] = ACTIONS(4546), [sym_version] = ACTIONS(4546), [sym_while] = ACTIONS(4546), [sym_gshared] = ACTIONS(4546), [sym_traits] = ACTIONS(4546), [sym_vector] = ACTIONS(4546), [sym_void] = ACTIONS(4546), [sym_directive] = ACTIONS(3), }, [2682] = { [ts_builtin_sym_end] = ACTIONS(4506), [sym_identifier] = ACTIONS(4504), [sym_end_file] = ACTIONS(4504), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4506), [anon_sym_SEMI] = ACTIONS(4506), [anon_sym_TILDE] = ACTIONS(4506), [anon_sym_AT] = ACTIONS(4506), [sym_bool] = ACTIONS(4504), [sym_byte] = ACTIONS(4504), [sym_ubyte] = ACTIONS(4504), [sym_char] = ACTIONS(4504), [sym_short] = ACTIONS(4504), [sym_ushort] = ACTIONS(4504), [sym_int] = ACTIONS(4504), [sym_uint] = ACTIONS(4504), [sym_long] = ACTIONS(4504), [sym_ulong] = ACTIONS(4504), [sym_cent] = ACTIONS(4504), [sym_ucent] = ACTIONS(4504), [sym_wchar] = ACTIONS(4504), [sym_dchar] = ACTIONS(4504), [sym_float] = ACTIONS(4504), [sym_double] = ACTIONS(4504), [sym_real] = ACTIONS(4504), [sym_ifloat] = ACTIONS(4504), [sym_idouble] = ACTIONS(4504), [sym_ireal] = ACTIONS(4504), [sym_cfloat] = ACTIONS(4504), [sym_cdouble] = ACTIONS(4504), [sym_creal] = ACTIONS(4504), [sym_size_t] = ACTIONS(4504), [sym_ptrdiff_t] = ACTIONS(4504), [sym_string] = ACTIONS(4504), [sym_cstring] = ACTIONS(4504), [sym_dstring] = ACTIONS(4504), [sym_wstring] = ACTIONS(4504), [sym_noreturn] = ACTIONS(4504), [sym_this] = ACTIONS(4504), [sym_abstract] = ACTIONS(4504), [sym_alias] = ACTIONS(4504), [sym_align] = ACTIONS(4504), [sym_auto] = ACTIONS(4504), [sym_class] = ACTIONS(4504), [sym_const] = ACTIONS(4504), [sym_debug] = ACTIONS(4504), [sym_deprecated] = ACTIONS(4504), [sym_else] = ACTIONS(4504), [sym_enum] = ACTIONS(4504), [sym_export] = ACTIONS(4504), [sym_extern] = ACTIONS(4504), [sym_final] = ACTIONS(4504), [sym_immutable] = ACTIONS(4504), [sym_import] = ACTIONS(4504), [sym_inout] = ACTIONS(4504), [sym_interface] = ACTIONS(4504), [sym_invariant] = ACTIONS(4504), [sym_mixin] = ACTIONS(4504), [sym_nothrow] = ACTIONS(4504), [sym_override] = ACTIONS(4504), [sym_package] = ACTIONS(4504), [sym_pragma] = ACTIONS(4504), [sym_private] = ACTIONS(4504), [sym_protected] = ACTIONS(4504), [sym_public] = ACTIONS(4504), [sym_pure] = ACTIONS(4504), [sym_ref] = ACTIONS(4504), [sym_return] = ACTIONS(4504), [sym_scope] = ACTIONS(4504), [sym_shared] = ACTIONS(4504), [sym_static] = ACTIONS(4504), [sym_struct] = ACTIONS(4504), [sym_synchronized] = ACTIONS(4504), [sym_template] = ACTIONS(4504), [sym_typeof] = ACTIONS(4504), [sym_union] = ACTIONS(4504), [sym_unittest] = ACTIONS(4504), [sym_version] = ACTIONS(4504), [sym_while] = ACTIONS(4504), [sym_gshared] = ACTIONS(4504), [sym_traits] = ACTIONS(4504), [sym_vector] = ACTIONS(4504), [sym_void] = ACTIONS(4504), [sym_directive] = ACTIONS(3), }, [2683] = { [ts_builtin_sym_end] = ACTIONS(4494), [sym_identifier] = ACTIONS(4492), [sym_end_file] = ACTIONS(4492), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4494), [anon_sym_SEMI] = ACTIONS(4494), [anon_sym_TILDE] = ACTIONS(4494), [anon_sym_AT] = ACTIONS(4494), [sym_bool] = ACTIONS(4492), [sym_byte] = ACTIONS(4492), [sym_ubyte] = ACTIONS(4492), [sym_char] = ACTIONS(4492), [sym_short] = ACTIONS(4492), [sym_ushort] = ACTIONS(4492), [sym_int] = ACTIONS(4492), [sym_uint] = ACTIONS(4492), [sym_long] = ACTIONS(4492), [sym_ulong] = ACTIONS(4492), [sym_cent] = ACTIONS(4492), [sym_ucent] = ACTIONS(4492), [sym_wchar] = ACTIONS(4492), [sym_dchar] = ACTIONS(4492), [sym_float] = ACTIONS(4492), [sym_double] = ACTIONS(4492), [sym_real] = ACTIONS(4492), [sym_ifloat] = ACTIONS(4492), [sym_idouble] = ACTIONS(4492), [sym_ireal] = ACTIONS(4492), [sym_cfloat] = ACTIONS(4492), [sym_cdouble] = ACTIONS(4492), [sym_creal] = ACTIONS(4492), [sym_size_t] = ACTIONS(4492), [sym_ptrdiff_t] = ACTIONS(4492), [sym_string] = ACTIONS(4492), [sym_cstring] = ACTIONS(4492), [sym_dstring] = ACTIONS(4492), [sym_wstring] = ACTIONS(4492), [sym_noreturn] = ACTIONS(4492), [sym_this] = ACTIONS(4492), [sym_abstract] = ACTIONS(4492), [sym_alias] = ACTIONS(4492), [sym_align] = ACTIONS(4492), [sym_auto] = ACTIONS(4492), [sym_class] = ACTIONS(4492), [sym_const] = ACTIONS(4492), [sym_debug] = ACTIONS(4492), [sym_deprecated] = ACTIONS(4492), [sym_else] = ACTIONS(4492), [sym_enum] = ACTIONS(4492), [sym_export] = ACTIONS(4492), [sym_extern] = ACTIONS(4492), [sym_final] = ACTIONS(4492), [sym_immutable] = ACTIONS(4492), [sym_import] = ACTIONS(4492), [sym_inout] = ACTIONS(4492), [sym_interface] = ACTIONS(4492), [sym_invariant] = ACTIONS(4492), [sym_mixin] = ACTIONS(4492), [sym_nothrow] = ACTIONS(4492), [sym_override] = ACTIONS(4492), [sym_package] = ACTIONS(4492), [sym_pragma] = ACTIONS(4492), [sym_private] = ACTIONS(4492), [sym_protected] = ACTIONS(4492), [sym_public] = ACTIONS(4492), [sym_pure] = ACTIONS(4492), [sym_ref] = ACTIONS(4492), [sym_return] = ACTIONS(4492), [sym_scope] = ACTIONS(4492), [sym_shared] = ACTIONS(4492), [sym_static] = ACTIONS(4492), [sym_struct] = ACTIONS(4492), [sym_synchronized] = ACTIONS(4492), [sym_template] = ACTIONS(4492), [sym_typeof] = ACTIONS(4492), [sym_union] = ACTIONS(4492), [sym_unittest] = ACTIONS(4492), [sym_version] = ACTIONS(4492), [sym_while] = ACTIONS(4492), [sym_gshared] = ACTIONS(4492), [sym_traits] = ACTIONS(4492), [sym_vector] = ACTIONS(4492), [sym_void] = ACTIONS(4492), [sym_directive] = ACTIONS(3), }, [2684] = { [ts_builtin_sym_end] = ACTIONS(4490), [sym_identifier] = ACTIONS(4488), [sym_end_file] = ACTIONS(4488), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4490), [anon_sym_SEMI] = ACTIONS(4490), [anon_sym_TILDE] = ACTIONS(4490), [anon_sym_AT] = ACTIONS(4490), [sym_bool] = ACTIONS(4488), [sym_byte] = ACTIONS(4488), [sym_ubyte] = ACTIONS(4488), [sym_char] = ACTIONS(4488), [sym_short] = ACTIONS(4488), [sym_ushort] = ACTIONS(4488), [sym_int] = ACTIONS(4488), [sym_uint] = ACTIONS(4488), [sym_long] = ACTIONS(4488), [sym_ulong] = ACTIONS(4488), [sym_cent] = ACTIONS(4488), [sym_ucent] = ACTIONS(4488), [sym_wchar] = ACTIONS(4488), [sym_dchar] = ACTIONS(4488), [sym_float] = ACTIONS(4488), [sym_double] = ACTIONS(4488), [sym_real] = ACTIONS(4488), [sym_ifloat] = ACTIONS(4488), [sym_idouble] = ACTIONS(4488), [sym_ireal] = ACTIONS(4488), [sym_cfloat] = ACTIONS(4488), [sym_cdouble] = ACTIONS(4488), [sym_creal] = ACTIONS(4488), [sym_size_t] = ACTIONS(4488), [sym_ptrdiff_t] = ACTIONS(4488), [sym_string] = ACTIONS(4488), [sym_cstring] = ACTIONS(4488), [sym_dstring] = ACTIONS(4488), [sym_wstring] = ACTIONS(4488), [sym_noreturn] = ACTIONS(4488), [sym_this] = ACTIONS(4488), [sym_abstract] = ACTIONS(4488), [sym_alias] = ACTIONS(4488), [sym_align] = ACTIONS(4488), [sym_auto] = ACTIONS(4488), [sym_class] = ACTIONS(4488), [sym_const] = ACTIONS(4488), [sym_debug] = ACTIONS(4488), [sym_deprecated] = ACTIONS(4488), [sym_else] = ACTIONS(4488), [sym_enum] = ACTIONS(4488), [sym_export] = ACTIONS(4488), [sym_extern] = ACTIONS(4488), [sym_final] = ACTIONS(4488), [sym_immutable] = ACTIONS(4488), [sym_import] = ACTIONS(4488), [sym_inout] = ACTIONS(4488), [sym_interface] = ACTIONS(4488), [sym_invariant] = ACTIONS(4488), [sym_mixin] = ACTIONS(4488), [sym_nothrow] = ACTIONS(4488), [sym_override] = ACTIONS(4488), [sym_package] = ACTIONS(4488), [sym_pragma] = ACTIONS(4488), [sym_private] = ACTIONS(4488), [sym_protected] = ACTIONS(4488), [sym_public] = ACTIONS(4488), [sym_pure] = ACTIONS(4488), [sym_ref] = ACTIONS(4488), [sym_return] = ACTIONS(4488), [sym_scope] = ACTIONS(4488), [sym_shared] = ACTIONS(4488), [sym_static] = ACTIONS(4488), [sym_struct] = ACTIONS(4488), [sym_synchronized] = ACTIONS(4488), [sym_template] = ACTIONS(4488), [sym_typeof] = ACTIONS(4488), [sym_union] = ACTIONS(4488), [sym_unittest] = ACTIONS(4488), [sym_version] = ACTIONS(4488), [sym_while] = ACTIONS(4488), [sym_gshared] = ACTIONS(4488), [sym_traits] = ACTIONS(4488), [sym_vector] = ACTIONS(4488), [sym_void] = ACTIONS(4488), [sym_directive] = ACTIONS(3), }, [2685] = { [ts_builtin_sym_end] = ACTIONS(4540), [sym_identifier] = ACTIONS(4538), [sym_end_file] = ACTIONS(4538), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4540), [anon_sym_SEMI] = ACTIONS(4540), [anon_sym_TILDE] = ACTIONS(4540), [anon_sym_AT] = ACTIONS(4540), [sym_bool] = ACTIONS(4538), [sym_byte] = ACTIONS(4538), [sym_ubyte] = ACTIONS(4538), [sym_char] = ACTIONS(4538), [sym_short] = ACTIONS(4538), [sym_ushort] = ACTIONS(4538), [sym_int] = ACTIONS(4538), [sym_uint] = ACTIONS(4538), [sym_long] = ACTIONS(4538), [sym_ulong] = ACTIONS(4538), [sym_cent] = ACTIONS(4538), [sym_ucent] = ACTIONS(4538), [sym_wchar] = ACTIONS(4538), [sym_dchar] = ACTIONS(4538), [sym_float] = ACTIONS(4538), [sym_double] = ACTIONS(4538), [sym_real] = ACTIONS(4538), [sym_ifloat] = ACTIONS(4538), [sym_idouble] = ACTIONS(4538), [sym_ireal] = ACTIONS(4538), [sym_cfloat] = ACTIONS(4538), [sym_cdouble] = ACTIONS(4538), [sym_creal] = ACTIONS(4538), [sym_size_t] = ACTIONS(4538), [sym_ptrdiff_t] = ACTIONS(4538), [sym_string] = ACTIONS(4538), [sym_cstring] = ACTIONS(4538), [sym_dstring] = ACTIONS(4538), [sym_wstring] = ACTIONS(4538), [sym_noreturn] = ACTIONS(4538), [sym_this] = ACTIONS(4538), [sym_abstract] = ACTIONS(4538), [sym_alias] = ACTIONS(4538), [sym_align] = ACTIONS(4538), [sym_auto] = ACTIONS(4538), [sym_class] = ACTIONS(4538), [sym_const] = ACTIONS(4538), [sym_debug] = ACTIONS(4538), [sym_deprecated] = ACTIONS(4538), [sym_else] = ACTIONS(4538), [sym_enum] = ACTIONS(4538), [sym_export] = ACTIONS(4538), [sym_extern] = ACTIONS(4538), [sym_final] = ACTIONS(4538), [sym_immutable] = ACTIONS(4538), [sym_import] = ACTIONS(4538), [sym_inout] = ACTIONS(4538), [sym_interface] = ACTIONS(4538), [sym_invariant] = ACTIONS(4538), [sym_mixin] = ACTIONS(4538), [sym_nothrow] = ACTIONS(4538), [sym_override] = ACTIONS(4538), [sym_package] = ACTIONS(4538), [sym_pragma] = ACTIONS(4538), [sym_private] = ACTIONS(4538), [sym_protected] = ACTIONS(4538), [sym_public] = ACTIONS(4538), [sym_pure] = ACTIONS(4538), [sym_ref] = ACTIONS(4538), [sym_return] = ACTIONS(4538), [sym_scope] = ACTIONS(4538), [sym_shared] = ACTIONS(4538), [sym_static] = ACTIONS(4538), [sym_struct] = ACTIONS(4538), [sym_synchronized] = ACTIONS(4538), [sym_template] = ACTIONS(4538), [sym_typeof] = ACTIONS(4538), [sym_union] = ACTIONS(4538), [sym_unittest] = ACTIONS(4538), [sym_version] = ACTIONS(4538), [sym_while] = ACTIONS(4538), [sym_gshared] = ACTIONS(4538), [sym_traits] = ACTIONS(4538), [sym_vector] = ACTIONS(4538), [sym_void] = ACTIONS(4538), [sym_directive] = ACTIONS(3), }, [2686] = { [ts_builtin_sym_end] = ACTIONS(4536), [sym_identifier] = ACTIONS(4534), [sym_end_file] = ACTIONS(4534), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4536), [anon_sym_SEMI] = ACTIONS(4536), [anon_sym_TILDE] = ACTIONS(4536), [anon_sym_AT] = ACTIONS(4536), [sym_bool] = ACTIONS(4534), [sym_byte] = ACTIONS(4534), [sym_ubyte] = ACTIONS(4534), [sym_char] = ACTIONS(4534), [sym_short] = ACTIONS(4534), [sym_ushort] = ACTIONS(4534), [sym_int] = ACTIONS(4534), [sym_uint] = ACTIONS(4534), [sym_long] = ACTIONS(4534), [sym_ulong] = ACTIONS(4534), [sym_cent] = ACTIONS(4534), [sym_ucent] = ACTIONS(4534), [sym_wchar] = ACTIONS(4534), [sym_dchar] = ACTIONS(4534), [sym_float] = ACTIONS(4534), [sym_double] = ACTIONS(4534), [sym_real] = ACTIONS(4534), [sym_ifloat] = ACTIONS(4534), [sym_idouble] = ACTIONS(4534), [sym_ireal] = ACTIONS(4534), [sym_cfloat] = ACTIONS(4534), [sym_cdouble] = ACTIONS(4534), [sym_creal] = ACTIONS(4534), [sym_size_t] = ACTIONS(4534), [sym_ptrdiff_t] = ACTIONS(4534), [sym_string] = ACTIONS(4534), [sym_cstring] = ACTIONS(4534), [sym_dstring] = ACTIONS(4534), [sym_wstring] = ACTIONS(4534), [sym_noreturn] = ACTIONS(4534), [sym_this] = ACTIONS(4534), [sym_abstract] = ACTIONS(4534), [sym_alias] = ACTIONS(4534), [sym_align] = ACTIONS(4534), [sym_auto] = ACTIONS(4534), [sym_class] = ACTIONS(4534), [sym_const] = ACTIONS(4534), [sym_debug] = ACTIONS(4534), [sym_deprecated] = ACTIONS(4534), [sym_else] = ACTIONS(4534), [sym_enum] = ACTIONS(4534), [sym_export] = ACTIONS(4534), [sym_extern] = ACTIONS(4534), [sym_final] = ACTIONS(4534), [sym_immutable] = ACTIONS(4534), [sym_import] = ACTIONS(4534), [sym_inout] = ACTIONS(4534), [sym_interface] = ACTIONS(4534), [sym_invariant] = ACTIONS(4534), [sym_mixin] = ACTIONS(4534), [sym_nothrow] = ACTIONS(4534), [sym_override] = ACTIONS(4534), [sym_package] = ACTIONS(4534), [sym_pragma] = ACTIONS(4534), [sym_private] = ACTIONS(4534), [sym_protected] = ACTIONS(4534), [sym_public] = ACTIONS(4534), [sym_pure] = ACTIONS(4534), [sym_ref] = ACTIONS(4534), [sym_return] = ACTIONS(4534), [sym_scope] = ACTIONS(4534), [sym_shared] = ACTIONS(4534), [sym_static] = ACTIONS(4534), [sym_struct] = ACTIONS(4534), [sym_synchronized] = ACTIONS(4534), [sym_template] = ACTIONS(4534), [sym_typeof] = ACTIONS(4534), [sym_union] = ACTIONS(4534), [sym_unittest] = ACTIONS(4534), [sym_version] = ACTIONS(4534), [sym_while] = ACTIONS(4534), [sym_gshared] = ACTIONS(4534), [sym_traits] = ACTIONS(4534), [sym_vector] = ACTIONS(4534), [sym_void] = ACTIONS(4534), [sym_directive] = ACTIONS(3), }, [2687] = { [sym__parameter_with_member_attributes] = STATE(4895), [sym__parameters] = STATE(4651), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6615), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2688] = { [ts_builtin_sym_end] = ACTIONS(4486), [sym_identifier] = ACTIONS(4484), [sym_end_file] = ACTIONS(4484), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4486), [anon_sym_SEMI] = ACTIONS(4486), [anon_sym_TILDE] = ACTIONS(4486), [anon_sym_AT] = ACTIONS(4486), [sym_bool] = ACTIONS(4484), [sym_byte] = ACTIONS(4484), [sym_ubyte] = ACTIONS(4484), [sym_char] = ACTIONS(4484), [sym_short] = ACTIONS(4484), [sym_ushort] = ACTIONS(4484), [sym_int] = ACTIONS(4484), [sym_uint] = ACTIONS(4484), [sym_long] = ACTIONS(4484), [sym_ulong] = ACTIONS(4484), [sym_cent] = ACTIONS(4484), [sym_ucent] = ACTIONS(4484), [sym_wchar] = ACTIONS(4484), [sym_dchar] = ACTIONS(4484), [sym_float] = ACTIONS(4484), [sym_double] = ACTIONS(4484), [sym_real] = ACTIONS(4484), [sym_ifloat] = ACTIONS(4484), [sym_idouble] = ACTIONS(4484), [sym_ireal] = ACTIONS(4484), [sym_cfloat] = ACTIONS(4484), [sym_cdouble] = ACTIONS(4484), [sym_creal] = ACTIONS(4484), [sym_size_t] = ACTIONS(4484), [sym_ptrdiff_t] = ACTIONS(4484), [sym_string] = ACTIONS(4484), [sym_cstring] = ACTIONS(4484), [sym_dstring] = ACTIONS(4484), [sym_wstring] = ACTIONS(4484), [sym_noreturn] = ACTIONS(4484), [sym_this] = ACTIONS(4484), [sym_abstract] = ACTIONS(4484), [sym_alias] = ACTIONS(4484), [sym_align] = ACTIONS(4484), [sym_auto] = ACTIONS(4484), [sym_class] = ACTIONS(4484), [sym_const] = ACTIONS(4484), [sym_debug] = ACTIONS(4484), [sym_deprecated] = ACTIONS(4484), [sym_else] = ACTIONS(4484), [sym_enum] = ACTIONS(4484), [sym_export] = ACTIONS(4484), [sym_extern] = ACTIONS(4484), [sym_final] = ACTIONS(4484), [sym_immutable] = ACTIONS(4484), [sym_import] = ACTIONS(4484), [sym_inout] = ACTIONS(4484), [sym_interface] = ACTIONS(4484), [sym_invariant] = ACTIONS(4484), [sym_mixin] = ACTIONS(4484), [sym_nothrow] = ACTIONS(4484), [sym_override] = ACTIONS(4484), [sym_package] = ACTIONS(4484), [sym_pragma] = ACTIONS(4484), [sym_private] = ACTIONS(4484), [sym_protected] = ACTIONS(4484), [sym_public] = ACTIONS(4484), [sym_pure] = ACTIONS(4484), [sym_ref] = ACTIONS(4484), [sym_return] = ACTIONS(4484), [sym_scope] = ACTIONS(4484), [sym_shared] = ACTIONS(4484), [sym_static] = ACTIONS(4484), [sym_struct] = ACTIONS(4484), [sym_synchronized] = ACTIONS(4484), [sym_template] = ACTIONS(4484), [sym_typeof] = ACTIONS(4484), [sym_union] = ACTIONS(4484), [sym_unittest] = ACTIONS(4484), [sym_version] = ACTIONS(4484), [sym_while] = ACTIONS(4484), [sym_gshared] = ACTIONS(4484), [sym_traits] = ACTIONS(4484), [sym_vector] = ACTIONS(4484), [sym_void] = ACTIONS(4484), [sym_directive] = ACTIONS(3), }, [2689] = { [ts_builtin_sym_end] = ACTIONS(4522), [sym_identifier] = ACTIONS(4520), [sym_end_file] = ACTIONS(4520), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4522), [anon_sym_SEMI] = ACTIONS(4522), [anon_sym_TILDE] = ACTIONS(4522), [anon_sym_AT] = ACTIONS(4522), [sym_bool] = ACTIONS(4520), [sym_byte] = ACTIONS(4520), [sym_ubyte] = ACTIONS(4520), [sym_char] = ACTIONS(4520), [sym_short] = ACTIONS(4520), [sym_ushort] = ACTIONS(4520), [sym_int] = ACTIONS(4520), [sym_uint] = ACTIONS(4520), [sym_long] = ACTIONS(4520), [sym_ulong] = ACTIONS(4520), [sym_cent] = ACTIONS(4520), [sym_ucent] = ACTIONS(4520), [sym_wchar] = ACTIONS(4520), [sym_dchar] = ACTIONS(4520), [sym_float] = ACTIONS(4520), [sym_double] = ACTIONS(4520), [sym_real] = ACTIONS(4520), [sym_ifloat] = ACTIONS(4520), [sym_idouble] = ACTIONS(4520), [sym_ireal] = ACTIONS(4520), [sym_cfloat] = ACTIONS(4520), [sym_cdouble] = ACTIONS(4520), [sym_creal] = ACTIONS(4520), [sym_size_t] = ACTIONS(4520), [sym_ptrdiff_t] = ACTIONS(4520), [sym_string] = ACTIONS(4520), [sym_cstring] = ACTIONS(4520), [sym_dstring] = ACTIONS(4520), [sym_wstring] = ACTIONS(4520), [sym_noreturn] = ACTIONS(4520), [sym_this] = ACTIONS(4520), [sym_abstract] = ACTIONS(4520), [sym_alias] = ACTIONS(4520), [sym_align] = ACTIONS(4520), [sym_auto] = ACTIONS(4520), [sym_class] = ACTIONS(4520), [sym_const] = ACTIONS(4520), [sym_debug] = ACTIONS(4520), [sym_deprecated] = ACTIONS(4520), [sym_else] = ACTIONS(4520), [sym_enum] = ACTIONS(4520), [sym_export] = ACTIONS(4520), [sym_extern] = ACTIONS(4520), [sym_final] = ACTIONS(4520), [sym_immutable] = ACTIONS(4520), [sym_import] = ACTIONS(4520), [sym_inout] = ACTIONS(4520), [sym_interface] = ACTIONS(4520), [sym_invariant] = ACTIONS(4520), [sym_mixin] = ACTIONS(4520), [sym_nothrow] = ACTIONS(4520), [sym_override] = ACTIONS(4520), [sym_package] = ACTIONS(4520), [sym_pragma] = ACTIONS(4520), [sym_private] = ACTIONS(4520), [sym_protected] = ACTIONS(4520), [sym_public] = ACTIONS(4520), [sym_pure] = ACTIONS(4520), [sym_ref] = ACTIONS(4520), [sym_return] = ACTIONS(4520), [sym_scope] = ACTIONS(4520), [sym_shared] = ACTIONS(4520), [sym_static] = ACTIONS(4520), [sym_struct] = ACTIONS(4520), [sym_synchronized] = ACTIONS(4520), [sym_template] = ACTIONS(4520), [sym_typeof] = ACTIONS(4520), [sym_union] = ACTIONS(4520), [sym_unittest] = ACTIONS(4520), [sym_version] = ACTIONS(4520), [sym_while] = ACTIONS(4520), [sym_gshared] = ACTIONS(4520), [sym_traits] = ACTIONS(4520), [sym_vector] = ACTIONS(4520), [sym_void] = ACTIONS(4520), [sym_directive] = ACTIONS(3), }, [2690] = { [ts_builtin_sym_end] = ACTIONS(2643), [sym_identifier] = ACTIONS(2645), [sym_end_file] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2643), [anon_sym_AT] = ACTIONS(2643), [sym_bool] = ACTIONS(2645), [sym_byte] = ACTIONS(2645), [sym_ubyte] = ACTIONS(2645), [sym_char] = ACTIONS(2645), [sym_short] = ACTIONS(2645), [sym_ushort] = ACTIONS(2645), [sym_int] = ACTIONS(2645), [sym_uint] = ACTIONS(2645), [sym_long] = ACTIONS(2645), [sym_ulong] = ACTIONS(2645), [sym_cent] = ACTIONS(2645), [sym_ucent] = ACTIONS(2645), [sym_wchar] = ACTIONS(2645), [sym_dchar] = ACTIONS(2645), [sym_float] = ACTIONS(2645), [sym_double] = ACTIONS(2645), [sym_real] = ACTIONS(2645), [sym_ifloat] = ACTIONS(2645), [sym_idouble] = ACTIONS(2645), [sym_ireal] = ACTIONS(2645), [sym_cfloat] = ACTIONS(2645), [sym_cdouble] = ACTIONS(2645), [sym_creal] = ACTIONS(2645), [sym_size_t] = ACTIONS(2645), [sym_ptrdiff_t] = ACTIONS(2645), [sym_string] = ACTIONS(2645), [sym_cstring] = ACTIONS(2645), [sym_dstring] = ACTIONS(2645), [sym_wstring] = ACTIONS(2645), [sym_noreturn] = ACTIONS(2645), [sym_this] = ACTIONS(2645), [sym_abstract] = ACTIONS(2645), [sym_alias] = ACTIONS(2645), [sym_align] = ACTIONS(2645), [sym_auto] = ACTIONS(2645), [sym_class] = ACTIONS(2645), [sym_const] = ACTIONS(2645), [sym_debug] = ACTIONS(2645), [sym_deprecated] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(2645), [sym_export] = ACTIONS(2645), [sym_extern] = ACTIONS(2645), [sym_final] = ACTIONS(2645), [sym_immutable] = ACTIONS(2645), [sym_import] = ACTIONS(2645), [sym_inout] = ACTIONS(2645), [sym_interface] = ACTIONS(2645), [sym_invariant] = ACTIONS(2645), [sym_mixin] = ACTIONS(2645), [sym_nothrow] = ACTIONS(2645), [sym_override] = ACTIONS(2645), [sym_package] = ACTIONS(2645), [sym_pragma] = ACTIONS(2645), [sym_private] = ACTIONS(2645), [sym_protected] = ACTIONS(2645), [sym_public] = ACTIONS(2645), [sym_pure] = ACTIONS(2645), [sym_ref] = ACTIONS(2645), [sym_return] = ACTIONS(2645), [sym_scope] = ACTIONS(2645), [sym_shared] = ACTIONS(2645), [sym_static] = ACTIONS(2645), [sym_struct] = ACTIONS(2645), [sym_synchronized] = ACTIONS(2645), [sym_template] = ACTIONS(2645), [sym_typeof] = ACTIONS(2645), [sym_union] = ACTIONS(2645), [sym_unittest] = ACTIONS(2645), [sym_version] = ACTIONS(2645), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(2645), [sym_traits] = ACTIONS(2645), [sym_vector] = ACTIONS(2645), [sym_void] = ACTIONS(2645), [sym_directive] = ACTIONS(3), }, [2691] = { [ts_builtin_sym_end] = ACTIONS(4478), [sym_identifier] = ACTIONS(4476), [sym_end_file] = ACTIONS(4476), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4478), [anon_sym_SEMI] = ACTIONS(4478), [anon_sym_TILDE] = ACTIONS(4478), [anon_sym_AT] = ACTIONS(4478), [sym_bool] = ACTIONS(4476), [sym_byte] = ACTIONS(4476), [sym_ubyte] = ACTIONS(4476), [sym_char] = ACTIONS(4476), [sym_short] = ACTIONS(4476), [sym_ushort] = ACTIONS(4476), [sym_int] = ACTIONS(4476), [sym_uint] = ACTIONS(4476), [sym_long] = ACTIONS(4476), [sym_ulong] = ACTIONS(4476), [sym_cent] = ACTIONS(4476), [sym_ucent] = ACTIONS(4476), [sym_wchar] = ACTIONS(4476), [sym_dchar] = ACTIONS(4476), [sym_float] = ACTIONS(4476), [sym_double] = ACTIONS(4476), [sym_real] = ACTIONS(4476), [sym_ifloat] = ACTIONS(4476), [sym_idouble] = ACTIONS(4476), [sym_ireal] = ACTIONS(4476), [sym_cfloat] = ACTIONS(4476), [sym_cdouble] = ACTIONS(4476), [sym_creal] = ACTIONS(4476), [sym_size_t] = ACTIONS(4476), [sym_ptrdiff_t] = ACTIONS(4476), [sym_string] = ACTIONS(4476), [sym_cstring] = ACTIONS(4476), [sym_dstring] = ACTIONS(4476), [sym_wstring] = ACTIONS(4476), [sym_noreturn] = ACTIONS(4476), [sym_this] = ACTIONS(4476), [sym_abstract] = ACTIONS(4476), [sym_alias] = ACTIONS(4476), [sym_align] = ACTIONS(4476), [sym_auto] = ACTIONS(4476), [sym_class] = ACTIONS(4476), [sym_const] = ACTIONS(4476), [sym_debug] = ACTIONS(4476), [sym_deprecated] = ACTIONS(4476), [sym_else] = ACTIONS(4476), [sym_enum] = ACTIONS(4476), [sym_export] = ACTIONS(4476), [sym_extern] = ACTIONS(4476), [sym_final] = ACTIONS(4476), [sym_immutable] = ACTIONS(4476), [sym_import] = ACTIONS(4476), [sym_inout] = ACTIONS(4476), [sym_interface] = ACTIONS(4476), [sym_invariant] = ACTIONS(4476), [sym_mixin] = ACTIONS(4476), [sym_nothrow] = ACTIONS(4476), [sym_override] = ACTIONS(4476), [sym_package] = ACTIONS(4476), [sym_pragma] = ACTIONS(4476), [sym_private] = ACTIONS(4476), [sym_protected] = ACTIONS(4476), [sym_public] = ACTIONS(4476), [sym_pure] = ACTIONS(4476), [sym_ref] = ACTIONS(4476), [sym_return] = ACTIONS(4476), [sym_scope] = ACTIONS(4476), [sym_shared] = ACTIONS(4476), [sym_static] = ACTIONS(4476), [sym_struct] = ACTIONS(4476), [sym_synchronized] = ACTIONS(4476), [sym_template] = ACTIONS(4476), [sym_typeof] = ACTIONS(4476), [sym_union] = ACTIONS(4476), [sym_unittest] = ACTIONS(4476), [sym_version] = ACTIONS(4476), [sym_while] = ACTIONS(4476), [sym_gshared] = ACTIONS(4476), [sym_traits] = ACTIONS(4476), [sym_vector] = ACTIONS(4476), [sym_void] = ACTIONS(4476), [sym_directive] = ACTIONS(3), }, [2692] = { [ts_builtin_sym_end] = ACTIONS(4470), [sym_identifier] = ACTIONS(4468), [sym_end_file] = ACTIONS(4468), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4470), [anon_sym_SEMI] = ACTIONS(4470), [anon_sym_TILDE] = ACTIONS(4470), [anon_sym_AT] = ACTIONS(4470), [sym_bool] = ACTIONS(4468), [sym_byte] = ACTIONS(4468), [sym_ubyte] = ACTIONS(4468), [sym_char] = ACTIONS(4468), [sym_short] = ACTIONS(4468), [sym_ushort] = ACTIONS(4468), [sym_int] = ACTIONS(4468), [sym_uint] = ACTIONS(4468), [sym_long] = ACTIONS(4468), [sym_ulong] = ACTIONS(4468), [sym_cent] = ACTIONS(4468), [sym_ucent] = ACTIONS(4468), [sym_wchar] = ACTIONS(4468), [sym_dchar] = ACTIONS(4468), [sym_float] = ACTIONS(4468), [sym_double] = ACTIONS(4468), [sym_real] = ACTIONS(4468), [sym_ifloat] = ACTIONS(4468), [sym_idouble] = ACTIONS(4468), [sym_ireal] = ACTIONS(4468), [sym_cfloat] = ACTIONS(4468), [sym_cdouble] = ACTIONS(4468), [sym_creal] = ACTIONS(4468), [sym_size_t] = ACTIONS(4468), [sym_ptrdiff_t] = ACTIONS(4468), [sym_string] = ACTIONS(4468), [sym_cstring] = ACTIONS(4468), [sym_dstring] = ACTIONS(4468), [sym_wstring] = ACTIONS(4468), [sym_noreturn] = ACTIONS(4468), [sym_this] = ACTIONS(4468), [sym_abstract] = ACTIONS(4468), [sym_alias] = ACTIONS(4468), [sym_align] = ACTIONS(4468), [sym_auto] = ACTIONS(4468), [sym_class] = ACTIONS(4468), [sym_const] = ACTIONS(4468), [sym_debug] = ACTIONS(4468), [sym_deprecated] = ACTIONS(4468), [sym_else] = ACTIONS(4468), [sym_enum] = ACTIONS(4468), [sym_export] = ACTIONS(4468), [sym_extern] = ACTIONS(4468), [sym_final] = ACTIONS(4468), [sym_immutable] = ACTIONS(4468), [sym_import] = ACTIONS(4468), [sym_inout] = ACTIONS(4468), [sym_interface] = ACTIONS(4468), [sym_invariant] = ACTIONS(4468), [sym_mixin] = ACTIONS(4468), [sym_nothrow] = ACTIONS(4468), [sym_override] = ACTIONS(4468), [sym_package] = ACTIONS(4468), [sym_pragma] = ACTIONS(4468), [sym_private] = ACTIONS(4468), [sym_protected] = ACTIONS(4468), [sym_public] = ACTIONS(4468), [sym_pure] = ACTIONS(4468), [sym_ref] = ACTIONS(4468), [sym_return] = ACTIONS(4468), [sym_scope] = ACTIONS(4468), [sym_shared] = ACTIONS(4468), [sym_static] = ACTIONS(4468), [sym_struct] = ACTIONS(4468), [sym_synchronized] = ACTIONS(4468), [sym_template] = ACTIONS(4468), [sym_typeof] = ACTIONS(4468), [sym_union] = ACTIONS(4468), [sym_unittest] = ACTIONS(4468), [sym_version] = ACTIONS(4468), [sym_while] = ACTIONS(4468), [sym_gshared] = ACTIONS(4468), [sym_traits] = ACTIONS(4468), [sym_vector] = ACTIONS(4468), [sym_void] = ACTIONS(4468), [sym_directive] = ACTIONS(3), }, [2693] = { [ts_builtin_sym_end] = ACTIONS(4462), [sym_identifier] = ACTIONS(4460), [sym_end_file] = ACTIONS(4460), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4462), [anon_sym_SEMI] = ACTIONS(4462), [anon_sym_TILDE] = ACTIONS(4462), [anon_sym_AT] = ACTIONS(4462), [sym_bool] = ACTIONS(4460), [sym_byte] = ACTIONS(4460), [sym_ubyte] = ACTIONS(4460), [sym_char] = ACTIONS(4460), [sym_short] = ACTIONS(4460), [sym_ushort] = ACTIONS(4460), [sym_int] = ACTIONS(4460), [sym_uint] = ACTIONS(4460), [sym_long] = ACTIONS(4460), [sym_ulong] = ACTIONS(4460), [sym_cent] = ACTIONS(4460), [sym_ucent] = ACTIONS(4460), [sym_wchar] = ACTIONS(4460), [sym_dchar] = ACTIONS(4460), [sym_float] = ACTIONS(4460), [sym_double] = ACTIONS(4460), [sym_real] = ACTIONS(4460), [sym_ifloat] = ACTIONS(4460), [sym_idouble] = ACTIONS(4460), [sym_ireal] = ACTIONS(4460), [sym_cfloat] = ACTIONS(4460), [sym_cdouble] = ACTIONS(4460), [sym_creal] = ACTIONS(4460), [sym_size_t] = ACTIONS(4460), [sym_ptrdiff_t] = ACTIONS(4460), [sym_string] = ACTIONS(4460), [sym_cstring] = ACTIONS(4460), [sym_dstring] = ACTIONS(4460), [sym_wstring] = ACTIONS(4460), [sym_noreturn] = ACTIONS(4460), [sym_this] = ACTIONS(4460), [sym_abstract] = ACTIONS(4460), [sym_alias] = ACTIONS(4460), [sym_align] = ACTIONS(4460), [sym_auto] = ACTIONS(4460), [sym_class] = ACTIONS(4460), [sym_const] = ACTIONS(4460), [sym_debug] = ACTIONS(4460), [sym_deprecated] = ACTIONS(4460), [sym_else] = ACTIONS(4460), [sym_enum] = ACTIONS(4460), [sym_export] = ACTIONS(4460), [sym_extern] = ACTIONS(4460), [sym_final] = ACTIONS(4460), [sym_immutable] = ACTIONS(4460), [sym_import] = ACTIONS(4460), [sym_inout] = ACTIONS(4460), [sym_interface] = ACTIONS(4460), [sym_invariant] = ACTIONS(4460), [sym_mixin] = ACTIONS(4460), [sym_nothrow] = ACTIONS(4460), [sym_override] = ACTIONS(4460), [sym_package] = ACTIONS(4460), [sym_pragma] = ACTIONS(4460), [sym_private] = ACTIONS(4460), [sym_protected] = ACTIONS(4460), [sym_public] = ACTIONS(4460), [sym_pure] = ACTIONS(4460), [sym_ref] = ACTIONS(4460), [sym_return] = ACTIONS(4460), [sym_scope] = ACTIONS(4460), [sym_shared] = ACTIONS(4460), [sym_static] = ACTIONS(4460), [sym_struct] = ACTIONS(4460), [sym_synchronized] = ACTIONS(4460), [sym_template] = ACTIONS(4460), [sym_typeof] = ACTIONS(4460), [sym_union] = ACTIONS(4460), [sym_unittest] = ACTIONS(4460), [sym_version] = ACTIONS(4460), [sym_while] = ACTIONS(4460), [sym_gshared] = ACTIONS(4460), [sym_traits] = ACTIONS(4460), [sym_vector] = ACTIONS(4460), [sym_void] = ACTIONS(4460), [sym_directive] = ACTIONS(3), }, [2694] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5125), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2695] = { [ts_builtin_sym_end] = ACTIONS(4726), [sym_identifier] = ACTIONS(4724), [sym_end_file] = ACTIONS(4724), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4726), [anon_sym_SEMI] = ACTIONS(4726), [anon_sym_TILDE] = ACTIONS(4726), [anon_sym_AT] = ACTIONS(4726), [sym_bool] = ACTIONS(4724), [sym_byte] = ACTIONS(4724), [sym_ubyte] = ACTIONS(4724), [sym_char] = ACTIONS(4724), [sym_short] = ACTIONS(4724), [sym_ushort] = ACTIONS(4724), [sym_int] = ACTIONS(4724), [sym_uint] = ACTIONS(4724), [sym_long] = ACTIONS(4724), [sym_ulong] = ACTIONS(4724), [sym_cent] = ACTIONS(4724), [sym_ucent] = ACTIONS(4724), [sym_wchar] = ACTIONS(4724), [sym_dchar] = ACTIONS(4724), [sym_float] = ACTIONS(4724), [sym_double] = ACTIONS(4724), [sym_real] = ACTIONS(4724), [sym_ifloat] = ACTIONS(4724), [sym_idouble] = ACTIONS(4724), [sym_ireal] = ACTIONS(4724), [sym_cfloat] = ACTIONS(4724), [sym_cdouble] = ACTIONS(4724), [sym_creal] = ACTIONS(4724), [sym_size_t] = ACTIONS(4724), [sym_ptrdiff_t] = ACTIONS(4724), [sym_string] = ACTIONS(4724), [sym_cstring] = ACTIONS(4724), [sym_dstring] = ACTIONS(4724), [sym_wstring] = ACTIONS(4724), [sym_noreturn] = ACTIONS(4724), [sym_this] = ACTIONS(4724), [sym_abstract] = ACTIONS(4724), [sym_alias] = ACTIONS(4724), [sym_align] = ACTIONS(4724), [sym_auto] = ACTIONS(4724), [sym_class] = ACTIONS(4724), [sym_const] = ACTIONS(4724), [sym_debug] = ACTIONS(4724), [sym_deprecated] = ACTIONS(4724), [sym_else] = ACTIONS(4724), [sym_enum] = ACTIONS(4724), [sym_export] = ACTIONS(4724), [sym_extern] = ACTIONS(4724), [sym_final] = ACTIONS(4724), [sym_immutable] = ACTIONS(4724), [sym_import] = ACTIONS(4724), [sym_inout] = ACTIONS(4724), [sym_interface] = ACTIONS(4724), [sym_invariant] = ACTIONS(4724), [sym_mixin] = ACTIONS(4724), [sym_nothrow] = ACTIONS(4724), [sym_override] = ACTIONS(4724), [sym_package] = ACTIONS(4724), [sym_pragma] = ACTIONS(4724), [sym_private] = ACTIONS(4724), [sym_protected] = ACTIONS(4724), [sym_public] = ACTIONS(4724), [sym_pure] = ACTIONS(4724), [sym_ref] = ACTIONS(4724), [sym_return] = ACTIONS(4724), [sym_scope] = ACTIONS(4724), [sym_shared] = ACTIONS(4724), [sym_static] = ACTIONS(4724), [sym_struct] = ACTIONS(4724), [sym_synchronized] = ACTIONS(4724), [sym_template] = ACTIONS(4724), [sym_typeof] = ACTIONS(4724), [sym_union] = ACTIONS(4724), [sym_unittest] = ACTIONS(4724), [sym_version] = ACTIONS(4724), [sym_while] = ACTIONS(4724), [sym_gshared] = ACTIONS(4724), [sym_traits] = ACTIONS(4724), [sym_vector] = ACTIONS(4724), [sym_void] = ACTIONS(4724), [sym_directive] = ACTIONS(3), }, [2696] = { [ts_builtin_sym_end] = ACTIONS(4482), [sym_identifier] = ACTIONS(4480), [sym_end_file] = ACTIONS(4480), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4482), [anon_sym_SEMI] = ACTIONS(4482), [anon_sym_TILDE] = ACTIONS(4482), [anon_sym_AT] = ACTIONS(4482), [sym_bool] = ACTIONS(4480), [sym_byte] = ACTIONS(4480), [sym_ubyte] = ACTIONS(4480), [sym_char] = ACTIONS(4480), [sym_short] = ACTIONS(4480), [sym_ushort] = ACTIONS(4480), [sym_int] = ACTIONS(4480), [sym_uint] = ACTIONS(4480), [sym_long] = ACTIONS(4480), [sym_ulong] = ACTIONS(4480), [sym_cent] = ACTIONS(4480), [sym_ucent] = ACTIONS(4480), [sym_wchar] = ACTIONS(4480), [sym_dchar] = ACTIONS(4480), [sym_float] = ACTIONS(4480), [sym_double] = ACTIONS(4480), [sym_real] = ACTIONS(4480), [sym_ifloat] = ACTIONS(4480), [sym_idouble] = ACTIONS(4480), [sym_ireal] = ACTIONS(4480), [sym_cfloat] = ACTIONS(4480), [sym_cdouble] = ACTIONS(4480), [sym_creal] = ACTIONS(4480), [sym_size_t] = ACTIONS(4480), [sym_ptrdiff_t] = ACTIONS(4480), [sym_string] = ACTIONS(4480), [sym_cstring] = ACTIONS(4480), [sym_dstring] = ACTIONS(4480), [sym_wstring] = ACTIONS(4480), [sym_noreturn] = ACTIONS(4480), [sym_this] = ACTIONS(4480), [sym_abstract] = ACTIONS(4480), [sym_alias] = ACTIONS(4480), [sym_align] = ACTIONS(4480), [sym_auto] = ACTIONS(4480), [sym_class] = ACTIONS(4480), [sym_const] = ACTIONS(4480), [sym_debug] = ACTIONS(4480), [sym_deprecated] = ACTIONS(4480), [sym_else] = ACTIONS(4480), [sym_enum] = ACTIONS(4480), [sym_export] = ACTIONS(4480), [sym_extern] = ACTIONS(4480), [sym_final] = ACTIONS(4480), [sym_immutable] = ACTIONS(4480), [sym_import] = ACTIONS(4480), [sym_inout] = ACTIONS(4480), [sym_interface] = ACTIONS(4480), [sym_invariant] = ACTIONS(4480), [sym_mixin] = ACTIONS(4480), [sym_nothrow] = ACTIONS(4480), [sym_override] = ACTIONS(4480), [sym_package] = ACTIONS(4480), [sym_pragma] = ACTIONS(4480), [sym_private] = ACTIONS(4480), [sym_protected] = ACTIONS(4480), [sym_public] = ACTIONS(4480), [sym_pure] = ACTIONS(4480), [sym_ref] = ACTIONS(4480), [sym_return] = ACTIONS(4480), [sym_scope] = ACTIONS(4480), [sym_shared] = ACTIONS(4480), [sym_static] = ACTIONS(4480), [sym_struct] = ACTIONS(4480), [sym_synchronized] = ACTIONS(4480), [sym_template] = ACTIONS(4480), [sym_typeof] = ACTIONS(4480), [sym_union] = ACTIONS(4480), [sym_unittest] = ACTIONS(4480), [sym_version] = ACTIONS(4480), [sym_while] = ACTIONS(4480), [sym_gshared] = ACTIONS(4480), [sym_traits] = ACTIONS(4480), [sym_vector] = ACTIONS(4480), [sym_void] = ACTIONS(4480), [sym_directive] = ACTIONS(3), }, [2697] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(6789), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2698] = { [ts_builtin_sym_end] = ACTIONS(4938), [sym_identifier] = ACTIONS(4936), [sym_end_file] = ACTIONS(4936), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4938), [anon_sym_SEMI] = ACTIONS(4938), [anon_sym_TILDE] = ACTIONS(4938), [anon_sym_AT] = ACTIONS(4938), [sym_bool] = ACTIONS(4936), [sym_byte] = ACTIONS(4936), [sym_ubyte] = ACTIONS(4936), [sym_char] = ACTIONS(4936), [sym_short] = ACTIONS(4936), [sym_ushort] = ACTIONS(4936), [sym_int] = ACTIONS(4936), [sym_uint] = ACTIONS(4936), [sym_long] = ACTIONS(4936), [sym_ulong] = ACTIONS(4936), [sym_cent] = ACTIONS(4936), [sym_ucent] = ACTIONS(4936), [sym_wchar] = ACTIONS(4936), [sym_dchar] = ACTIONS(4936), [sym_float] = ACTIONS(4936), [sym_double] = ACTIONS(4936), [sym_real] = ACTIONS(4936), [sym_ifloat] = ACTIONS(4936), [sym_idouble] = ACTIONS(4936), [sym_ireal] = ACTIONS(4936), [sym_cfloat] = ACTIONS(4936), [sym_cdouble] = ACTIONS(4936), [sym_creal] = ACTIONS(4936), [sym_size_t] = ACTIONS(4936), [sym_ptrdiff_t] = ACTIONS(4936), [sym_string] = ACTIONS(4936), [sym_cstring] = ACTIONS(4936), [sym_dstring] = ACTIONS(4936), [sym_wstring] = ACTIONS(4936), [sym_noreturn] = ACTIONS(4936), [sym_this] = ACTIONS(4936), [sym_abstract] = ACTIONS(4936), [sym_alias] = ACTIONS(4936), [sym_align] = ACTIONS(4936), [sym_auto] = ACTIONS(4936), [sym_class] = ACTIONS(4936), [sym_const] = ACTIONS(4936), [sym_debug] = ACTIONS(4936), [sym_deprecated] = ACTIONS(4936), [sym_else] = ACTIONS(4936), [sym_enum] = ACTIONS(4936), [sym_export] = ACTIONS(4936), [sym_extern] = ACTIONS(4936), [sym_final] = ACTIONS(4936), [sym_immutable] = ACTIONS(4936), [sym_import] = ACTIONS(4936), [sym_inout] = ACTIONS(4936), [sym_interface] = ACTIONS(4936), [sym_invariant] = ACTIONS(4936), [sym_mixin] = ACTIONS(4936), [sym_nothrow] = ACTIONS(4936), [sym_override] = ACTIONS(4936), [sym_package] = ACTIONS(4936), [sym_pragma] = ACTIONS(4936), [sym_private] = ACTIONS(4936), [sym_protected] = ACTIONS(4936), [sym_public] = ACTIONS(4936), [sym_pure] = ACTIONS(4936), [sym_ref] = ACTIONS(4936), [sym_return] = ACTIONS(4936), [sym_scope] = ACTIONS(4936), [sym_shared] = ACTIONS(4936), [sym_static] = ACTIONS(4936), [sym_struct] = ACTIONS(4936), [sym_synchronized] = ACTIONS(4936), [sym_template] = ACTIONS(4936), [sym_typeof] = ACTIONS(4936), [sym_union] = ACTIONS(4936), [sym_unittest] = ACTIONS(4936), [sym_version] = ACTIONS(4936), [sym_while] = ACTIONS(4936), [sym_gshared] = ACTIONS(4936), [sym_traits] = ACTIONS(4936), [sym_vector] = ACTIONS(4936), [sym_void] = ACTIONS(4936), [sym_directive] = ACTIONS(3), }, [2699] = { [ts_builtin_sym_end] = ACTIONS(4436), [sym_identifier] = ACTIONS(4434), [sym_end_file] = ACTIONS(4434), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4436), [anon_sym_SEMI] = ACTIONS(4436), [anon_sym_TILDE] = ACTIONS(4436), [anon_sym_AT] = ACTIONS(4436), [sym_bool] = ACTIONS(4434), [sym_byte] = ACTIONS(4434), [sym_ubyte] = ACTIONS(4434), [sym_char] = ACTIONS(4434), [sym_short] = ACTIONS(4434), [sym_ushort] = ACTIONS(4434), [sym_int] = ACTIONS(4434), [sym_uint] = ACTIONS(4434), [sym_long] = ACTIONS(4434), [sym_ulong] = ACTIONS(4434), [sym_cent] = ACTIONS(4434), [sym_ucent] = ACTIONS(4434), [sym_wchar] = ACTIONS(4434), [sym_dchar] = ACTIONS(4434), [sym_float] = ACTIONS(4434), [sym_double] = ACTIONS(4434), [sym_real] = ACTIONS(4434), [sym_ifloat] = ACTIONS(4434), [sym_idouble] = ACTIONS(4434), [sym_ireal] = ACTIONS(4434), [sym_cfloat] = ACTIONS(4434), [sym_cdouble] = ACTIONS(4434), [sym_creal] = ACTIONS(4434), [sym_size_t] = ACTIONS(4434), [sym_ptrdiff_t] = ACTIONS(4434), [sym_string] = ACTIONS(4434), [sym_cstring] = ACTIONS(4434), [sym_dstring] = ACTIONS(4434), [sym_wstring] = ACTIONS(4434), [sym_noreturn] = ACTIONS(4434), [sym_this] = ACTIONS(4434), [sym_abstract] = ACTIONS(4434), [sym_alias] = ACTIONS(4434), [sym_align] = ACTIONS(4434), [sym_auto] = ACTIONS(4434), [sym_class] = ACTIONS(4434), [sym_const] = ACTIONS(4434), [sym_debug] = ACTIONS(4434), [sym_deprecated] = ACTIONS(4434), [sym_else] = ACTIONS(4434), [sym_enum] = ACTIONS(4434), [sym_export] = ACTIONS(4434), [sym_extern] = ACTIONS(4434), [sym_final] = ACTIONS(4434), [sym_immutable] = ACTIONS(4434), [sym_import] = ACTIONS(4434), [sym_inout] = ACTIONS(4434), [sym_interface] = ACTIONS(4434), [sym_invariant] = ACTIONS(4434), [sym_mixin] = ACTIONS(4434), [sym_nothrow] = ACTIONS(4434), [sym_override] = ACTIONS(4434), [sym_package] = ACTIONS(4434), [sym_pragma] = ACTIONS(4434), [sym_private] = ACTIONS(4434), [sym_protected] = ACTIONS(4434), [sym_public] = ACTIONS(4434), [sym_pure] = ACTIONS(4434), [sym_ref] = ACTIONS(4434), [sym_return] = ACTIONS(4434), [sym_scope] = ACTIONS(4434), [sym_shared] = ACTIONS(4434), [sym_static] = ACTIONS(4434), [sym_struct] = ACTIONS(4434), [sym_synchronized] = ACTIONS(4434), [sym_template] = ACTIONS(4434), [sym_typeof] = ACTIONS(4434), [sym_union] = ACTIONS(4434), [sym_unittest] = ACTIONS(4434), [sym_version] = ACTIONS(4434), [sym_while] = ACTIONS(4434), [sym_gshared] = ACTIONS(4434), [sym_traits] = ACTIONS(4434), [sym_vector] = ACTIONS(4434), [sym_void] = ACTIONS(4434), [sym_directive] = ACTIONS(3), }, [2700] = { [ts_builtin_sym_end] = ACTIONS(4408), [sym_identifier] = ACTIONS(4406), [sym_end_file] = ACTIONS(4406), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4408), [anon_sym_SEMI] = ACTIONS(4408), [anon_sym_TILDE] = ACTIONS(4408), [anon_sym_AT] = ACTIONS(4408), [sym_bool] = ACTIONS(4406), [sym_byte] = ACTIONS(4406), [sym_ubyte] = ACTIONS(4406), [sym_char] = ACTIONS(4406), [sym_short] = ACTIONS(4406), [sym_ushort] = ACTIONS(4406), [sym_int] = ACTIONS(4406), [sym_uint] = ACTIONS(4406), [sym_long] = ACTIONS(4406), [sym_ulong] = ACTIONS(4406), [sym_cent] = ACTIONS(4406), [sym_ucent] = ACTIONS(4406), [sym_wchar] = ACTIONS(4406), [sym_dchar] = ACTIONS(4406), [sym_float] = ACTIONS(4406), [sym_double] = ACTIONS(4406), [sym_real] = ACTIONS(4406), [sym_ifloat] = ACTIONS(4406), [sym_idouble] = ACTIONS(4406), [sym_ireal] = ACTIONS(4406), [sym_cfloat] = ACTIONS(4406), [sym_cdouble] = ACTIONS(4406), [sym_creal] = ACTIONS(4406), [sym_size_t] = ACTIONS(4406), [sym_ptrdiff_t] = ACTIONS(4406), [sym_string] = ACTIONS(4406), [sym_cstring] = ACTIONS(4406), [sym_dstring] = ACTIONS(4406), [sym_wstring] = ACTIONS(4406), [sym_noreturn] = ACTIONS(4406), [sym_this] = ACTIONS(4406), [sym_abstract] = ACTIONS(4406), [sym_alias] = ACTIONS(4406), [sym_align] = ACTIONS(4406), [sym_auto] = ACTIONS(4406), [sym_class] = ACTIONS(4406), [sym_const] = ACTIONS(4406), [sym_debug] = ACTIONS(4406), [sym_deprecated] = ACTIONS(4406), [sym_else] = ACTIONS(4406), [sym_enum] = ACTIONS(4406), [sym_export] = ACTIONS(4406), [sym_extern] = ACTIONS(4406), [sym_final] = ACTIONS(4406), [sym_immutable] = ACTIONS(4406), [sym_import] = ACTIONS(4406), [sym_inout] = ACTIONS(4406), [sym_interface] = ACTIONS(4406), [sym_invariant] = ACTIONS(4406), [sym_mixin] = ACTIONS(4406), [sym_nothrow] = ACTIONS(4406), [sym_override] = ACTIONS(4406), [sym_package] = ACTIONS(4406), [sym_pragma] = ACTIONS(4406), [sym_private] = ACTIONS(4406), [sym_protected] = ACTIONS(4406), [sym_public] = ACTIONS(4406), [sym_pure] = ACTIONS(4406), [sym_ref] = ACTIONS(4406), [sym_return] = ACTIONS(4406), [sym_scope] = ACTIONS(4406), [sym_shared] = ACTIONS(4406), [sym_static] = ACTIONS(4406), [sym_struct] = ACTIONS(4406), [sym_synchronized] = ACTIONS(4406), [sym_template] = ACTIONS(4406), [sym_typeof] = ACTIONS(4406), [sym_union] = ACTIONS(4406), [sym_unittest] = ACTIONS(4406), [sym_version] = ACTIONS(4406), [sym_while] = ACTIONS(4406), [sym_gshared] = ACTIONS(4406), [sym_traits] = ACTIONS(4406), [sym_vector] = ACTIONS(4406), [sym_void] = ACTIONS(4406), [sym_directive] = ACTIONS(3), }, [2701] = { [ts_builtin_sym_end] = ACTIONS(4780), [sym_identifier] = ACTIONS(4778), [sym_end_file] = ACTIONS(4778), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4780), [anon_sym_SEMI] = ACTIONS(4780), [anon_sym_TILDE] = ACTIONS(4780), [anon_sym_AT] = ACTIONS(4780), [sym_bool] = ACTIONS(4778), [sym_byte] = ACTIONS(4778), [sym_ubyte] = ACTIONS(4778), [sym_char] = ACTIONS(4778), [sym_short] = ACTIONS(4778), [sym_ushort] = ACTIONS(4778), [sym_int] = ACTIONS(4778), [sym_uint] = ACTIONS(4778), [sym_long] = ACTIONS(4778), [sym_ulong] = ACTIONS(4778), [sym_cent] = ACTIONS(4778), [sym_ucent] = ACTIONS(4778), [sym_wchar] = ACTIONS(4778), [sym_dchar] = ACTIONS(4778), [sym_float] = ACTIONS(4778), [sym_double] = ACTIONS(4778), [sym_real] = ACTIONS(4778), [sym_ifloat] = ACTIONS(4778), [sym_idouble] = ACTIONS(4778), [sym_ireal] = ACTIONS(4778), [sym_cfloat] = ACTIONS(4778), [sym_cdouble] = ACTIONS(4778), [sym_creal] = ACTIONS(4778), [sym_size_t] = ACTIONS(4778), [sym_ptrdiff_t] = ACTIONS(4778), [sym_string] = ACTIONS(4778), [sym_cstring] = ACTIONS(4778), [sym_dstring] = ACTIONS(4778), [sym_wstring] = ACTIONS(4778), [sym_noreturn] = ACTIONS(4778), [sym_this] = ACTIONS(4778), [sym_abstract] = ACTIONS(4778), [sym_alias] = ACTIONS(4778), [sym_align] = ACTIONS(4778), [sym_auto] = ACTIONS(4778), [sym_class] = ACTIONS(4778), [sym_const] = ACTIONS(4778), [sym_debug] = ACTIONS(4778), [sym_deprecated] = ACTIONS(4778), [sym_else] = ACTIONS(4778), [sym_enum] = ACTIONS(4778), [sym_export] = ACTIONS(4778), [sym_extern] = ACTIONS(4778), [sym_final] = ACTIONS(4778), [sym_immutable] = ACTIONS(4778), [sym_import] = ACTIONS(4778), [sym_inout] = ACTIONS(4778), [sym_interface] = ACTIONS(4778), [sym_invariant] = ACTIONS(4778), [sym_mixin] = ACTIONS(4778), [sym_nothrow] = ACTIONS(4778), [sym_override] = ACTIONS(4778), [sym_package] = ACTIONS(4778), [sym_pragma] = ACTIONS(4778), [sym_private] = ACTIONS(4778), [sym_protected] = ACTIONS(4778), [sym_public] = ACTIONS(4778), [sym_pure] = ACTIONS(4778), [sym_ref] = ACTIONS(4778), [sym_return] = ACTIONS(4778), [sym_scope] = ACTIONS(4778), [sym_shared] = ACTIONS(4778), [sym_static] = ACTIONS(4778), [sym_struct] = ACTIONS(4778), [sym_synchronized] = ACTIONS(4778), [sym_template] = ACTIONS(4778), [sym_typeof] = ACTIONS(4778), [sym_union] = ACTIONS(4778), [sym_unittest] = ACTIONS(4778), [sym_version] = ACTIONS(4778), [sym_while] = ACTIONS(4778), [sym_gshared] = ACTIONS(4778), [sym_traits] = ACTIONS(4778), [sym_vector] = ACTIONS(4778), [sym_void] = ACTIONS(4778), [sym_directive] = ACTIONS(3), }, [2702] = { [ts_builtin_sym_end] = ACTIONS(4612), [sym_identifier] = ACTIONS(4610), [sym_end_file] = ACTIONS(4610), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4612), [anon_sym_SEMI] = ACTIONS(4612), [anon_sym_TILDE] = ACTIONS(4612), [anon_sym_AT] = ACTIONS(4612), [sym_bool] = ACTIONS(4610), [sym_byte] = ACTIONS(4610), [sym_ubyte] = ACTIONS(4610), [sym_char] = ACTIONS(4610), [sym_short] = ACTIONS(4610), [sym_ushort] = ACTIONS(4610), [sym_int] = ACTIONS(4610), [sym_uint] = ACTIONS(4610), [sym_long] = ACTIONS(4610), [sym_ulong] = ACTIONS(4610), [sym_cent] = ACTIONS(4610), [sym_ucent] = ACTIONS(4610), [sym_wchar] = ACTIONS(4610), [sym_dchar] = ACTIONS(4610), [sym_float] = ACTIONS(4610), [sym_double] = ACTIONS(4610), [sym_real] = ACTIONS(4610), [sym_ifloat] = ACTIONS(4610), [sym_idouble] = ACTIONS(4610), [sym_ireal] = ACTIONS(4610), [sym_cfloat] = ACTIONS(4610), [sym_cdouble] = ACTIONS(4610), [sym_creal] = ACTIONS(4610), [sym_size_t] = ACTIONS(4610), [sym_ptrdiff_t] = ACTIONS(4610), [sym_string] = ACTIONS(4610), [sym_cstring] = ACTIONS(4610), [sym_dstring] = ACTIONS(4610), [sym_wstring] = ACTIONS(4610), [sym_noreturn] = ACTIONS(4610), [sym_this] = ACTIONS(4610), [sym_abstract] = ACTIONS(4610), [sym_alias] = ACTIONS(4610), [sym_align] = ACTIONS(4610), [sym_auto] = ACTIONS(4610), [sym_class] = ACTIONS(4610), [sym_const] = ACTIONS(4610), [sym_debug] = ACTIONS(4610), [sym_deprecated] = ACTIONS(4610), [sym_else] = ACTIONS(4610), [sym_enum] = ACTIONS(4610), [sym_export] = ACTIONS(4610), [sym_extern] = ACTIONS(4610), [sym_final] = ACTIONS(4610), [sym_immutable] = ACTIONS(4610), [sym_import] = ACTIONS(4610), [sym_inout] = ACTIONS(4610), [sym_interface] = ACTIONS(4610), [sym_invariant] = ACTIONS(4610), [sym_mixin] = ACTIONS(4610), [sym_nothrow] = ACTIONS(4610), [sym_override] = ACTIONS(4610), [sym_package] = ACTIONS(4610), [sym_pragma] = ACTIONS(4610), [sym_private] = ACTIONS(4610), [sym_protected] = ACTIONS(4610), [sym_public] = ACTIONS(4610), [sym_pure] = ACTIONS(4610), [sym_ref] = ACTIONS(4610), [sym_return] = ACTIONS(4610), [sym_scope] = ACTIONS(4610), [sym_shared] = ACTIONS(4610), [sym_static] = ACTIONS(4610), [sym_struct] = ACTIONS(4610), [sym_synchronized] = ACTIONS(4610), [sym_template] = ACTIONS(4610), [sym_typeof] = ACTIONS(4610), [sym_union] = ACTIONS(4610), [sym_unittest] = ACTIONS(4610), [sym_version] = ACTIONS(4610), [sym_while] = ACTIONS(4610), [sym_gshared] = ACTIONS(4610), [sym_traits] = ACTIONS(4610), [sym_vector] = ACTIONS(4610), [sym_void] = ACTIONS(4610), [sym_directive] = ACTIONS(3), }, [2703] = { [ts_builtin_sym_end] = ACTIONS(4514), [sym_identifier] = ACTIONS(4512), [sym_end_file] = ACTIONS(4512), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4514), [anon_sym_SEMI] = ACTIONS(4514), [anon_sym_TILDE] = ACTIONS(4514), [anon_sym_AT] = ACTIONS(4514), [sym_bool] = ACTIONS(4512), [sym_byte] = ACTIONS(4512), [sym_ubyte] = ACTIONS(4512), [sym_char] = ACTIONS(4512), [sym_short] = ACTIONS(4512), [sym_ushort] = ACTIONS(4512), [sym_int] = ACTIONS(4512), [sym_uint] = ACTIONS(4512), [sym_long] = ACTIONS(4512), [sym_ulong] = ACTIONS(4512), [sym_cent] = ACTIONS(4512), [sym_ucent] = ACTIONS(4512), [sym_wchar] = ACTIONS(4512), [sym_dchar] = ACTIONS(4512), [sym_float] = ACTIONS(4512), [sym_double] = ACTIONS(4512), [sym_real] = ACTIONS(4512), [sym_ifloat] = ACTIONS(4512), [sym_idouble] = ACTIONS(4512), [sym_ireal] = ACTIONS(4512), [sym_cfloat] = ACTIONS(4512), [sym_cdouble] = ACTIONS(4512), [sym_creal] = ACTIONS(4512), [sym_size_t] = ACTIONS(4512), [sym_ptrdiff_t] = ACTIONS(4512), [sym_string] = ACTIONS(4512), [sym_cstring] = ACTIONS(4512), [sym_dstring] = ACTIONS(4512), [sym_wstring] = ACTIONS(4512), [sym_noreturn] = ACTIONS(4512), [sym_this] = ACTIONS(4512), [sym_abstract] = ACTIONS(4512), [sym_alias] = ACTIONS(4512), [sym_align] = ACTIONS(4512), [sym_auto] = ACTIONS(4512), [sym_class] = ACTIONS(4512), [sym_const] = ACTIONS(4512), [sym_debug] = ACTIONS(4512), [sym_deprecated] = ACTIONS(4512), [sym_else] = ACTIONS(4512), [sym_enum] = ACTIONS(4512), [sym_export] = ACTIONS(4512), [sym_extern] = ACTIONS(4512), [sym_final] = ACTIONS(4512), [sym_immutable] = ACTIONS(4512), [sym_import] = ACTIONS(4512), [sym_inout] = ACTIONS(4512), [sym_interface] = ACTIONS(4512), [sym_invariant] = ACTIONS(4512), [sym_mixin] = ACTIONS(4512), [sym_nothrow] = ACTIONS(4512), [sym_override] = ACTIONS(4512), [sym_package] = ACTIONS(4512), [sym_pragma] = ACTIONS(4512), [sym_private] = ACTIONS(4512), [sym_protected] = ACTIONS(4512), [sym_public] = ACTIONS(4512), [sym_pure] = ACTIONS(4512), [sym_ref] = ACTIONS(4512), [sym_return] = ACTIONS(4512), [sym_scope] = ACTIONS(4512), [sym_shared] = ACTIONS(4512), [sym_static] = ACTIONS(4512), [sym_struct] = ACTIONS(4512), [sym_synchronized] = ACTIONS(4512), [sym_template] = ACTIONS(4512), [sym_typeof] = ACTIONS(4512), [sym_union] = ACTIONS(4512), [sym_unittest] = ACTIONS(4512), [sym_version] = ACTIONS(4512), [sym_while] = ACTIONS(4512), [sym_gshared] = ACTIONS(4512), [sym_traits] = ACTIONS(4512), [sym_vector] = ACTIONS(4512), [sym_void] = ACTIONS(4512), [sym_directive] = ACTIONS(3), }, [2704] = { [ts_builtin_sym_end] = ACTIONS(4502), [sym_identifier] = ACTIONS(4500), [sym_end_file] = ACTIONS(4500), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4502), [anon_sym_SEMI] = ACTIONS(4502), [anon_sym_TILDE] = ACTIONS(4502), [anon_sym_AT] = ACTIONS(4502), [sym_bool] = ACTIONS(4500), [sym_byte] = ACTIONS(4500), [sym_ubyte] = ACTIONS(4500), [sym_char] = ACTIONS(4500), [sym_short] = ACTIONS(4500), [sym_ushort] = ACTIONS(4500), [sym_int] = ACTIONS(4500), [sym_uint] = ACTIONS(4500), [sym_long] = ACTIONS(4500), [sym_ulong] = ACTIONS(4500), [sym_cent] = ACTIONS(4500), [sym_ucent] = ACTIONS(4500), [sym_wchar] = ACTIONS(4500), [sym_dchar] = ACTIONS(4500), [sym_float] = ACTIONS(4500), [sym_double] = ACTIONS(4500), [sym_real] = ACTIONS(4500), [sym_ifloat] = ACTIONS(4500), [sym_idouble] = ACTIONS(4500), [sym_ireal] = ACTIONS(4500), [sym_cfloat] = ACTIONS(4500), [sym_cdouble] = ACTIONS(4500), [sym_creal] = ACTIONS(4500), [sym_size_t] = ACTIONS(4500), [sym_ptrdiff_t] = ACTIONS(4500), [sym_string] = ACTIONS(4500), [sym_cstring] = ACTIONS(4500), [sym_dstring] = ACTIONS(4500), [sym_wstring] = ACTIONS(4500), [sym_noreturn] = ACTIONS(4500), [sym_this] = ACTIONS(4500), [sym_abstract] = ACTIONS(4500), [sym_alias] = ACTIONS(4500), [sym_align] = ACTIONS(4500), [sym_auto] = ACTIONS(4500), [sym_class] = ACTIONS(4500), [sym_const] = ACTIONS(4500), [sym_debug] = ACTIONS(4500), [sym_deprecated] = ACTIONS(4500), [sym_else] = ACTIONS(4500), [sym_enum] = ACTIONS(4500), [sym_export] = ACTIONS(4500), [sym_extern] = ACTIONS(4500), [sym_final] = ACTIONS(4500), [sym_immutable] = ACTIONS(4500), [sym_import] = ACTIONS(4500), [sym_inout] = ACTIONS(4500), [sym_interface] = ACTIONS(4500), [sym_invariant] = ACTIONS(4500), [sym_mixin] = ACTIONS(4500), [sym_nothrow] = ACTIONS(4500), [sym_override] = ACTIONS(4500), [sym_package] = ACTIONS(4500), [sym_pragma] = ACTIONS(4500), [sym_private] = ACTIONS(4500), [sym_protected] = ACTIONS(4500), [sym_public] = ACTIONS(4500), [sym_pure] = ACTIONS(4500), [sym_ref] = ACTIONS(4500), [sym_return] = ACTIONS(4500), [sym_scope] = ACTIONS(4500), [sym_shared] = ACTIONS(4500), [sym_static] = ACTIONS(4500), [sym_struct] = ACTIONS(4500), [sym_synchronized] = ACTIONS(4500), [sym_template] = ACTIONS(4500), [sym_typeof] = ACTIONS(4500), [sym_union] = ACTIONS(4500), [sym_unittest] = ACTIONS(4500), [sym_version] = ACTIONS(4500), [sym_while] = ACTIONS(4500), [sym_gshared] = ACTIONS(4500), [sym_traits] = ACTIONS(4500), [sym_vector] = ACTIONS(4500), [sym_void] = ACTIONS(4500), [sym_directive] = ACTIONS(3), }, [2705] = { [ts_builtin_sym_end] = ACTIONS(4400), [sym_identifier] = ACTIONS(4398), [sym_end_file] = ACTIONS(4398), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4400), [anon_sym_SEMI] = ACTIONS(4400), [anon_sym_TILDE] = ACTIONS(4400), [anon_sym_AT] = ACTIONS(4400), [sym_bool] = ACTIONS(4398), [sym_byte] = ACTIONS(4398), [sym_ubyte] = ACTIONS(4398), [sym_char] = ACTIONS(4398), [sym_short] = ACTIONS(4398), [sym_ushort] = ACTIONS(4398), [sym_int] = ACTIONS(4398), [sym_uint] = ACTIONS(4398), [sym_long] = ACTIONS(4398), [sym_ulong] = ACTIONS(4398), [sym_cent] = ACTIONS(4398), [sym_ucent] = ACTIONS(4398), [sym_wchar] = ACTIONS(4398), [sym_dchar] = ACTIONS(4398), [sym_float] = ACTIONS(4398), [sym_double] = ACTIONS(4398), [sym_real] = ACTIONS(4398), [sym_ifloat] = ACTIONS(4398), [sym_idouble] = ACTIONS(4398), [sym_ireal] = ACTIONS(4398), [sym_cfloat] = ACTIONS(4398), [sym_cdouble] = ACTIONS(4398), [sym_creal] = ACTIONS(4398), [sym_size_t] = ACTIONS(4398), [sym_ptrdiff_t] = ACTIONS(4398), [sym_string] = ACTIONS(4398), [sym_cstring] = ACTIONS(4398), [sym_dstring] = ACTIONS(4398), [sym_wstring] = ACTIONS(4398), [sym_noreturn] = ACTIONS(4398), [sym_this] = ACTIONS(4398), [sym_abstract] = ACTIONS(4398), [sym_alias] = ACTIONS(4398), [sym_align] = ACTIONS(4398), [sym_auto] = ACTIONS(4398), [sym_class] = ACTIONS(4398), [sym_const] = ACTIONS(4398), [sym_debug] = ACTIONS(4398), [sym_deprecated] = ACTIONS(4398), [sym_else] = ACTIONS(4398), [sym_enum] = ACTIONS(4398), [sym_export] = ACTIONS(4398), [sym_extern] = ACTIONS(4398), [sym_final] = ACTIONS(4398), [sym_immutable] = ACTIONS(4398), [sym_import] = ACTIONS(4398), [sym_inout] = ACTIONS(4398), [sym_interface] = ACTIONS(4398), [sym_invariant] = ACTIONS(4398), [sym_mixin] = ACTIONS(4398), [sym_nothrow] = ACTIONS(4398), [sym_override] = ACTIONS(4398), [sym_package] = ACTIONS(4398), [sym_pragma] = ACTIONS(4398), [sym_private] = ACTIONS(4398), [sym_protected] = ACTIONS(4398), [sym_public] = ACTIONS(4398), [sym_pure] = ACTIONS(4398), [sym_ref] = ACTIONS(4398), [sym_return] = ACTIONS(4398), [sym_scope] = ACTIONS(4398), [sym_shared] = ACTIONS(4398), [sym_static] = ACTIONS(4398), [sym_struct] = ACTIONS(4398), [sym_synchronized] = ACTIONS(4398), [sym_template] = ACTIONS(4398), [sym_typeof] = ACTIONS(4398), [sym_union] = ACTIONS(4398), [sym_unittest] = ACTIONS(4398), [sym_version] = ACTIONS(4398), [sym_while] = ACTIONS(4398), [sym_gshared] = ACTIONS(4398), [sym_traits] = ACTIONS(4398), [sym_vector] = ACTIONS(4398), [sym_void] = ACTIONS(4398), [sym_directive] = ACTIONS(3), }, [2706] = { [ts_builtin_sym_end] = ACTIONS(4388), [sym_identifier] = ACTIONS(4386), [sym_end_file] = ACTIONS(4386), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4388), [anon_sym_SEMI] = ACTIONS(4388), [anon_sym_TILDE] = ACTIONS(4388), [anon_sym_AT] = ACTIONS(4388), [sym_bool] = ACTIONS(4386), [sym_byte] = ACTIONS(4386), [sym_ubyte] = ACTIONS(4386), [sym_char] = ACTIONS(4386), [sym_short] = ACTIONS(4386), [sym_ushort] = ACTIONS(4386), [sym_int] = ACTIONS(4386), [sym_uint] = ACTIONS(4386), [sym_long] = ACTIONS(4386), [sym_ulong] = ACTIONS(4386), [sym_cent] = ACTIONS(4386), [sym_ucent] = ACTIONS(4386), [sym_wchar] = ACTIONS(4386), [sym_dchar] = ACTIONS(4386), [sym_float] = ACTIONS(4386), [sym_double] = ACTIONS(4386), [sym_real] = ACTIONS(4386), [sym_ifloat] = ACTIONS(4386), [sym_idouble] = ACTIONS(4386), [sym_ireal] = ACTIONS(4386), [sym_cfloat] = ACTIONS(4386), [sym_cdouble] = ACTIONS(4386), [sym_creal] = ACTIONS(4386), [sym_size_t] = ACTIONS(4386), [sym_ptrdiff_t] = ACTIONS(4386), [sym_string] = ACTIONS(4386), [sym_cstring] = ACTIONS(4386), [sym_dstring] = ACTIONS(4386), [sym_wstring] = ACTIONS(4386), [sym_noreturn] = ACTIONS(4386), [sym_this] = ACTIONS(4386), [sym_abstract] = ACTIONS(4386), [sym_alias] = ACTIONS(4386), [sym_align] = ACTIONS(4386), [sym_auto] = ACTIONS(4386), [sym_class] = ACTIONS(4386), [sym_const] = ACTIONS(4386), [sym_debug] = ACTIONS(4386), [sym_deprecated] = ACTIONS(4386), [sym_else] = ACTIONS(4386), [sym_enum] = ACTIONS(4386), [sym_export] = ACTIONS(4386), [sym_extern] = ACTIONS(4386), [sym_final] = ACTIONS(4386), [sym_immutable] = ACTIONS(4386), [sym_import] = ACTIONS(4386), [sym_inout] = ACTIONS(4386), [sym_interface] = ACTIONS(4386), [sym_invariant] = ACTIONS(4386), [sym_mixin] = ACTIONS(4386), [sym_nothrow] = ACTIONS(4386), [sym_override] = ACTIONS(4386), [sym_package] = ACTIONS(4386), [sym_pragma] = ACTIONS(4386), [sym_private] = ACTIONS(4386), [sym_protected] = ACTIONS(4386), [sym_public] = ACTIONS(4386), [sym_pure] = ACTIONS(4386), [sym_ref] = ACTIONS(4386), [sym_return] = ACTIONS(4386), [sym_scope] = ACTIONS(4386), [sym_shared] = ACTIONS(4386), [sym_static] = ACTIONS(4386), [sym_struct] = ACTIONS(4386), [sym_synchronized] = ACTIONS(4386), [sym_template] = ACTIONS(4386), [sym_typeof] = ACTIONS(4386), [sym_union] = ACTIONS(4386), [sym_unittest] = ACTIONS(4386), [sym_version] = ACTIONS(4386), [sym_while] = ACTIONS(4386), [sym_gshared] = ACTIONS(4386), [sym_traits] = ACTIONS(4386), [sym_vector] = ACTIONS(4386), [sym_void] = ACTIONS(4386), [sym_directive] = ACTIONS(3), }, [2707] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5123), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2708] = { [ts_builtin_sym_end] = ACTIONS(4345), [sym_identifier] = ACTIONS(4343), [sym_end_file] = ACTIONS(4343), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4345), [anon_sym_SEMI] = ACTIONS(4345), [anon_sym_TILDE] = ACTIONS(4345), [anon_sym_AT] = ACTIONS(4345), [sym_bool] = ACTIONS(4343), [sym_byte] = ACTIONS(4343), [sym_ubyte] = ACTIONS(4343), [sym_char] = ACTIONS(4343), [sym_short] = ACTIONS(4343), [sym_ushort] = ACTIONS(4343), [sym_int] = ACTIONS(4343), [sym_uint] = ACTIONS(4343), [sym_long] = ACTIONS(4343), [sym_ulong] = ACTIONS(4343), [sym_cent] = ACTIONS(4343), [sym_ucent] = ACTIONS(4343), [sym_wchar] = ACTIONS(4343), [sym_dchar] = ACTIONS(4343), [sym_float] = ACTIONS(4343), [sym_double] = ACTIONS(4343), [sym_real] = ACTIONS(4343), [sym_ifloat] = ACTIONS(4343), [sym_idouble] = ACTIONS(4343), [sym_ireal] = ACTIONS(4343), [sym_cfloat] = ACTIONS(4343), [sym_cdouble] = ACTIONS(4343), [sym_creal] = ACTIONS(4343), [sym_size_t] = ACTIONS(4343), [sym_ptrdiff_t] = ACTIONS(4343), [sym_string] = ACTIONS(4343), [sym_cstring] = ACTIONS(4343), [sym_dstring] = ACTIONS(4343), [sym_wstring] = ACTIONS(4343), [sym_noreturn] = ACTIONS(4343), [sym_this] = ACTIONS(4343), [sym_abstract] = ACTIONS(4343), [sym_alias] = ACTIONS(4343), [sym_align] = ACTIONS(4343), [sym_auto] = ACTIONS(4343), [sym_class] = ACTIONS(4343), [sym_const] = ACTIONS(4343), [sym_debug] = ACTIONS(4343), [sym_deprecated] = ACTIONS(4343), [sym_else] = ACTIONS(4343), [sym_enum] = ACTIONS(4343), [sym_export] = ACTIONS(4343), [sym_extern] = ACTIONS(4343), [sym_final] = ACTIONS(4343), [sym_immutable] = ACTIONS(4343), [sym_import] = ACTIONS(4343), [sym_inout] = ACTIONS(4343), [sym_interface] = ACTIONS(4343), [sym_invariant] = ACTIONS(4343), [sym_mixin] = ACTIONS(4343), [sym_nothrow] = ACTIONS(4343), [sym_override] = ACTIONS(4343), [sym_package] = ACTIONS(4343), [sym_pragma] = ACTIONS(4343), [sym_private] = ACTIONS(4343), [sym_protected] = ACTIONS(4343), [sym_public] = ACTIONS(4343), [sym_pure] = ACTIONS(4343), [sym_ref] = ACTIONS(4343), [sym_return] = ACTIONS(4343), [sym_scope] = ACTIONS(4343), [sym_shared] = ACTIONS(4343), [sym_static] = ACTIONS(4343), [sym_struct] = ACTIONS(4343), [sym_synchronized] = ACTIONS(4343), [sym_template] = ACTIONS(4343), [sym_typeof] = ACTIONS(4343), [sym_union] = ACTIONS(4343), [sym_unittest] = ACTIONS(4343), [sym_version] = ACTIONS(4343), [sym_while] = ACTIONS(4343), [sym_gshared] = ACTIONS(4343), [sym_traits] = ACTIONS(4343), [sym_vector] = ACTIONS(4343), [sym_void] = ACTIONS(4343), [sym_directive] = ACTIONS(3), }, [2709] = { [ts_builtin_sym_end] = ACTIONS(4333), [sym_identifier] = ACTIONS(4331), [sym_end_file] = ACTIONS(4331), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4333), [anon_sym_SEMI] = ACTIONS(4333), [anon_sym_TILDE] = ACTIONS(4333), [anon_sym_AT] = ACTIONS(4333), [sym_bool] = ACTIONS(4331), [sym_byte] = ACTIONS(4331), [sym_ubyte] = ACTIONS(4331), [sym_char] = ACTIONS(4331), [sym_short] = ACTIONS(4331), [sym_ushort] = ACTIONS(4331), [sym_int] = ACTIONS(4331), [sym_uint] = ACTIONS(4331), [sym_long] = ACTIONS(4331), [sym_ulong] = ACTIONS(4331), [sym_cent] = ACTIONS(4331), [sym_ucent] = ACTIONS(4331), [sym_wchar] = ACTIONS(4331), [sym_dchar] = ACTIONS(4331), [sym_float] = ACTIONS(4331), [sym_double] = ACTIONS(4331), [sym_real] = ACTIONS(4331), [sym_ifloat] = ACTIONS(4331), [sym_idouble] = ACTIONS(4331), [sym_ireal] = ACTIONS(4331), [sym_cfloat] = ACTIONS(4331), [sym_cdouble] = ACTIONS(4331), [sym_creal] = ACTIONS(4331), [sym_size_t] = ACTIONS(4331), [sym_ptrdiff_t] = ACTIONS(4331), [sym_string] = ACTIONS(4331), [sym_cstring] = ACTIONS(4331), [sym_dstring] = ACTIONS(4331), [sym_wstring] = ACTIONS(4331), [sym_noreturn] = ACTIONS(4331), [sym_this] = ACTIONS(4331), [sym_abstract] = ACTIONS(4331), [sym_alias] = ACTIONS(4331), [sym_align] = ACTIONS(4331), [sym_auto] = ACTIONS(4331), [sym_class] = ACTIONS(4331), [sym_const] = ACTIONS(4331), [sym_debug] = ACTIONS(4331), [sym_deprecated] = ACTIONS(4331), [sym_else] = ACTIONS(4331), [sym_enum] = ACTIONS(4331), [sym_export] = ACTIONS(4331), [sym_extern] = ACTIONS(4331), [sym_final] = ACTIONS(4331), [sym_immutable] = ACTIONS(4331), [sym_import] = ACTIONS(4331), [sym_inout] = ACTIONS(4331), [sym_interface] = ACTIONS(4331), [sym_invariant] = ACTIONS(4331), [sym_mixin] = ACTIONS(4331), [sym_nothrow] = ACTIONS(4331), [sym_override] = ACTIONS(4331), [sym_package] = ACTIONS(4331), [sym_pragma] = ACTIONS(4331), [sym_private] = ACTIONS(4331), [sym_protected] = ACTIONS(4331), [sym_public] = ACTIONS(4331), [sym_pure] = ACTIONS(4331), [sym_ref] = ACTIONS(4331), [sym_return] = ACTIONS(4331), [sym_scope] = ACTIONS(4331), [sym_shared] = ACTIONS(4331), [sym_static] = ACTIONS(4331), [sym_struct] = ACTIONS(4331), [sym_synchronized] = ACTIONS(4331), [sym_template] = ACTIONS(4331), [sym_typeof] = ACTIONS(4331), [sym_union] = ACTIONS(4331), [sym_unittest] = ACTIONS(4331), [sym_version] = ACTIONS(4331), [sym_while] = ACTIONS(4331), [sym_gshared] = ACTIONS(4331), [sym_traits] = ACTIONS(4331), [sym_vector] = ACTIONS(4331), [sym_void] = ACTIONS(4331), [sym_directive] = ACTIONS(3), }, [2710] = { [ts_builtin_sym_end] = ACTIONS(4878), [sym_identifier] = ACTIONS(4876), [sym_end_file] = ACTIONS(4876), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4878), [anon_sym_SEMI] = ACTIONS(4878), [anon_sym_TILDE] = ACTIONS(4878), [anon_sym_AT] = ACTIONS(4878), [sym_bool] = ACTIONS(4876), [sym_byte] = ACTIONS(4876), [sym_ubyte] = ACTIONS(4876), [sym_char] = ACTIONS(4876), [sym_short] = ACTIONS(4876), [sym_ushort] = ACTIONS(4876), [sym_int] = ACTIONS(4876), [sym_uint] = ACTIONS(4876), [sym_long] = ACTIONS(4876), [sym_ulong] = ACTIONS(4876), [sym_cent] = ACTIONS(4876), [sym_ucent] = ACTIONS(4876), [sym_wchar] = ACTIONS(4876), [sym_dchar] = ACTIONS(4876), [sym_float] = ACTIONS(4876), [sym_double] = ACTIONS(4876), [sym_real] = ACTIONS(4876), [sym_ifloat] = ACTIONS(4876), [sym_idouble] = ACTIONS(4876), [sym_ireal] = ACTIONS(4876), [sym_cfloat] = ACTIONS(4876), [sym_cdouble] = ACTIONS(4876), [sym_creal] = ACTIONS(4876), [sym_size_t] = ACTIONS(4876), [sym_ptrdiff_t] = ACTIONS(4876), [sym_string] = ACTIONS(4876), [sym_cstring] = ACTIONS(4876), [sym_dstring] = ACTIONS(4876), [sym_wstring] = ACTIONS(4876), [sym_noreturn] = ACTIONS(4876), [sym_this] = ACTIONS(4876), [sym_abstract] = ACTIONS(4876), [sym_alias] = ACTIONS(4876), [sym_align] = ACTIONS(4876), [sym_auto] = ACTIONS(4876), [sym_class] = ACTIONS(4876), [sym_const] = ACTIONS(4876), [sym_debug] = ACTIONS(4876), [sym_deprecated] = ACTIONS(4876), [sym_else] = ACTIONS(4876), [sym_enum] = ACTIONS(4876), [sym_export] = ACTIONS(4876), [sym_extern] = ACTIONS(4876), [sym_final] = ACTIONS(4876), [sym_immutable] = ACTIONS(4876), [sym_import] = ACTIONS(4876), [sym_inout] = ACTIONS(4876), [sym_interface] = ACTIONS(4876), [sym_invariant] = ACTIONS(4876), [sym_mixin] = ACTIONS(4876), [sym_nothrow] = ACTIONS(4876), [sym_override] = ACTIONS(4876), [sym_package] = ACTIONS(4876), [sym_pragma] = ACTIONS(4876), [sym_private] = ACTIONS(4876), [sym_protected] = ACTIONS(4876), [sym_public] = ACTIONS(4876), [sym_pure] = ACTIONS(4876), [sym_ref] = ACTIONS(4876), [sym_return] = ACTIONS(4876), [sym_scope] = ACTIONS(4876), [sym_shared] = ACTIONS(4876), [sym_static] = ACTIONS(4876), [sym_struct] = ACTIONS(4876), [sym_synchronized] = ACTIONS(4876), [sym_template] = ACTIONS(4876), [sym_typeof] = ACTIONS(4876), [sym_union] = ACTIONS(4876), [sym_unittest] = ACTIONS(4876), [sym_version] = ACTIONS(4876), [sym_while] = ACTIONS(4876), [sym_gshared] = ACTIONS(4876), [sym_traits] = ACTIONS(4876), [sym_vector] = ACTIONS(4876), [sym_void] = ACTIONS(4876), [sym_directive] = ACTIONS(3), }, [2711] = { [ts_builtin_sym_end] = ACTIONS(4692), [sym_identifier] = ACTIONS(4690), [sym_end_file] = ACTIONS(4690), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4692), [anon_sym_SEMI] = ACTIONS(4692), [anon_sym_TILDE] = ACTIONS(4692), [anon_sym_AT] = ACTIONS(4692), [sym_bool] = ACTIONS(4690), [sym_byte] = ACTIONS(4690), [sym_ubyte] = ACTIONS(4690), [sym_char] = ACTIONS(4690), [sym_short] = ACTIONS(4690), [sym_ushort] = ACTIONS(4690), [sym_int] = ACTIONS(4690), [sym_uint] = ACTIONS(4690), [sym_long] = ACTIONS(4690), [sym_ulong] = ACTIONS(4690), [sym_cent] = ACTIONS(4690), [sym_ucent] = ACTIONS(4690), [sym_wchar] = ACTIONS(4690), [sym_dchar] = ACTIONS(4690), [sym_float] = ACTIONS(4690), [sym_double] = ACTIONS(4690), [sym_real] = ACTIONS(4690), [sym_ifloat] = ACTIONS(4690), [sym_idouble] = ACTIONS(4690), [sym_ireal] = ACTIONS(4690), [sym_cfloat] = ACTIONS(4690), [sym_cdouble] = ACTIONS(4690), [sym_creal] = ACTIONS(4690), [sym_size_t] = ACTIONS(4690), [sym_ptrdiff_t] = ACTIONS(4690), [sym_string] = ACTIONS(4690), [sym_cstring] = ACTIONS(4690), [sym_dstring] = ACTIONS(4690), [sym_wstring] = ACTIONS(4690), [sym_noreturn] = ACTIONS(4690), [sym_this] = ACTIONS(4690), [sym_abstract] = ACTIONS(4690), [sym_alias] = ACTIONS(4690), [sym_align] = ACTIONS(4690), [sym_auto] = ACTIONS(4690), [sym_class] = ACTIONS(4690), [sym_const] = ACTIONS(4690), [sym_debug] = ACTIONS(4690), [sym_deprecated] = ACTIONS(4690), [sym_else] = ACTIONS(4690), [sym_enum] = ACTIONS(4690), [sym_export] = ACTIONS(4690), [sym_extern] = ACTIONS(4690), [sym_final] = ACTIONS(4690), [sym_immutable] = ACTIONS(4690), [sym_import] = ACTIONS(4690), [sym_inout] = ACTIONS(4690), [sym_interface] = ACTIONS(4690), [sym_invariant] = ACTIONS(4690), [sym_mixin] = ACTIONS(4690), [sym_nothrow] = ACTIONS(4690), [sym_override] = ACTIONS(4690), [sym_package] = ACTIONS(4690), [sym_pragma] = ACTIONS(4690), [sym_private] = ACTIONS(4690), [sym_protected] = ACTIONS(4690), [sym_public] = ACTIONS(4690), [sym_pure] = ACTIONS(4690), [sym_ref] = ACTIONS(4690), [sym_return] = ACTIONS(4690), [sym_scope] = ACTIONS(4690), [sym_shared] = ACTIONS(4690), [sym_static] = ACTIONS(4690), [sym_struct] = ACTIONS(4690), [sym_synchronized] = ACTIONS(4690), [sym_template] = ACTIONS(4690), [sym_typeof] = ACTIONS(4690), [sym_union] = ACTIONS(4690), [sym_unittest] = ACTIONS(4690), [sym_version] = ACTIONS(4690), [sym_while] = ACTIONS(4690), [sym_gshared] = ACTIONS(4690), [sym_traits] = ACTIONS(4690), [sym_vector] = ACTIONS(4690), [sym_void] = ACTIONS(4690), [sym_directive] = ACTIONS(3), }, [2712] = { [ts_builtin_sym_end] = ACTIONS(4299), [sym_identifier] = ACTIONS(4297), [sym_end_file] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [sym_directive] = ACTIONS(3), }, [2713] = { [ts_builtin_sym_end] = ACTIONS(4498), [sym_identifier] = ACTIONS(4496), [sym_end_file] = ACTIONS(4496), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4498), [anon_sym_SEMI] = ACTIONS(4498), [anon_sym_TILDE] = ACTIONS(4498), [anon_sym_AT] = ACTIONS(4498), [sym_bool] = ACTIONS(4496), [sym_byte] = ACTIONS(4496), [sym_ubyte] = ACTIONS(4496), [sym_char] = ACTIONS(4496), [sym_short] = ACTIONS(4496), [sym_ushort] = ACTIONS(4496), [sym_int] = ACTIONS(4496), [sym_uint] = ACTIONS(4496), [sym_long] = ACTIONS(4496), [sym_ulong] = ACTIONS(4496), [sym_cent] = ACTIONS(4496), [sym_ucent] = ACTIONS(4496), [sym_wchar] = ACTIONS(4496), [sym_dchar] = ACTIONS(4496), [sym_float] = ACTIONS(4496), [sym_double] = ACTIONS(4496), [sym_real] = ACTIONS(4496), [sym_ifloat] = ACTIONS(4496), [sym_idouble] = ACTIONS(4496), [sym_ireal] = ACTIONS(4496), [sym_cfloat] = ACTIONS(4496), [sym_cdouble] = ACTIONS(4496), [sym_creal] = ACTIONS(4496), [sym_size_t] = ACTIONS(4496), [sym_ptrdiff_t] = ACTIONS(4496), [sym_string] = ACTIONS(4496), [sym_cstring] = ACTIONS(4496), [sym_dstring] = ACTIONS(4496), [sym_wstring] = ACTIONS(4496), [sym_noreturn] = ACTIONS(4496), [sym_this] = ACTIONS(4496), [sym_abstract] = ACTIONS(4496), [sym_alias] = ACTIONS(4496), [sym_align] = ACTIONS(4496), [sym_auto] = ACTIONS(4496), [sym_class] = ACTIONS(4496), [sym_const] = ACTIONS(4496), [sym_debug] = ACTIONS(4496), [sym_deprecated] = ACTIONS(4496), [sym_else] = ACTIONS(4496), [sym_enum] = ACTIONS(4496), [sym_export] = ACTIONS(4496), [sym_extern] = ACTIONS(4496), [sym_final] = ACTIONS(4496), [sym_immutable] = ACTIONS(4496), [sym_import] = ACTIONS(4496), [sym_inout] = ACTIONS(4496), [sym_interface] = ACTIONS(4496), [sym_invariant] = ACTIONS(4496), [sym_mixin] = ACTIONS(4496), [sym_nothrow] = ACTIONS(4496), [sym_override] = ACTIONS(4496), [sym_package] = ACTIONS(4496), [sym_pragma] = ACTIONS(4496), [sym_private] = ACTIONS(4496), [sym_protected] = ACTIONS(4496), [sym_public] = ACTIONS(4496), [sym_pure] = ACTIONS(4496), [sym_ref] = ACTIONS(4496), [sym_return] = ACTIONS(4496), [sym_scope] = ACTIONS(4496), [sym_shared] = ACTIONS(4496), [sym_static] = ACTIONS(4496), [sym_struct] = ACTIONS(4496), [sym_synchronized] = ACTIONS(4496), [sym_template] = ACTIONS(4496), [sym_typeof] = ACTIONS(4496), [sym_union] = ACTIONS(4496), [sym_unittest] = ACTIONS(4496), [sym_version] = ACTIONS(4496), [sym_while] = ACTIONS(4496), [sym_gshared] = ACTIONS(4496), [sym_traits] = ACTIONS(4496), [sym_vector] = ACTIONS(4496), [sym_void] = ACTIONS(4496), [sym_directive] = ACTIONS(3), }, [2714] = { [ts_builtin_sym_end] = ACTIONS(4319), [sym_identifier] = ACTIONS(4317), [sym_end_file] = ACTIONS(4317), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4319), [anon_sym_SEMI] = ACTIONS(4319), [anon_sym_TILDE] = ACTIONS(4319), [anon_sym_AT] = ACTIONS(4319), [sym_bool] = ACTIONS(4317), [sym_byte] = ACTIONS(4317), [sym_ubyte] = ACTIONS(4317), [sym_char] = ACTIONS(4317), [sym_short] = ACTIONS(4317), [sym_ushort] = ACTIONS(4317), [sym_int] = ACTIONS(4317), [sym_uint] = ACTIONS(4317), [sym_long] = ACTIONS(4317), [sym_ulong] = ACTIONS(4317), [sym_cent] = ACTIONS(4317), [sym_ucent] = ACTIONS(4317), [sym_wchar] = ACTIONS(4317), [sym_dchar] = ACTIONS(4317), [sym_float] = ACTIONS(4317), [sym_double] = ACTIONS(4317), [sym_real] = ACTIONS(4317), [sym_ifloat] = ACTIONS(4317), [sym_idouble] = ACTIONS(4317), [sym_ireal] = ACTIONS(4317), [sym_cfloat] = ACTIONS(4317), [sym_cdouble] = ACTIONS(4317), [sym_creal] = ACTIONS(4317), [sym_size_t] = ACTIONS(4317), [sym_ptrdiff_t] = ACTIONS(4317), [sym_string] = ACTIONS(4317), [sym_cstring] = ACTIONS(4317), [sym_dstring] = ACTIONS(4317), [sym_wstring] = ACTIONS(4317), [sym_noreturn] = ACTIONS(4317), [sym_this] = ACTIONS(4317), [sym_abstract] = ACTIONS(4317), [sym_alias] = ACTIONS(4317), [sym_align] = ACTIONS(4317), [sym_auto] = ACTIONS(4317), [sym_class] = ACTIONS(4317), [sym_const] = ACTIONS(4317), [sym_debug] = ACTIONS(4317), [sym_deprecated] = ACTIONS(4317), [sym_else] = ACTIONS(4317), [sym_enum] = ACTIONS(4317), [sym_export] = ACTIONS(4317), [sym_extern] = ACTIONS(4317), [sym_final] = ACTIONS(4317), [sym_immutable] = ACTIONS(4317), [sym_import] = ACTIONS(4317), [sym_inout] = ACTIONS(4317), [sym_interface] = ACTIONS(4317), [sym_invariant] = ACTIONS(4317), [sym_mixin] = ACTIONS(4317), [sym_nothrow] = ACTIONS(4317), [sym_override] = ACTIONS(4317), [sym_package] = ACTIONS(4317), [sym_pragma] = ACTIONS(4317), [sym_private] = ACTIONS(4317), [sym_protected] = ACTIONS(4317), [sym_public] = ACTIONS(4317), [sym_pure] = ACTIONS(4317), [sym_ref] = ACTIONS(4317), [sym_return] = ACTIONS(4317), [sym_scope] = ACTIONS(4317), [sym_shared] = ACTIONS(4317), [sym_static] = ACTIONS(4317), [sym_struct] = ACTIONS(4317), [sym_synchronized] = ACTIONS(4317), [sym_template] = ACTIONS(4317), [sym_typeof] = ACTIONS(4317), [sym_union] = ACTIONS(4317), [sym_unittest] = ACTIONS(4317), [sym_version] = ACTIONS(4317), [sym_while] = ACTIONS(4317), [sym_gshared] = ACTIONS(4317), [sym_traits] = ACTIONS(4317), [sym_vector] = ACTIONS(4317), [sym_void] = ACTIONS(4317), [sym_directive] = ACTIONS(3), }, [2715] = { [ts_builtin_sym_end] = ACTIONS(4303), [sym_identifier] = ACTIONS(4301), [sym_end_file] = ACTIONS(4301), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4303), [anon_sym_SEMI] = ACTIONS(4303), [anon_sym_TILDE] = ACTIONS(4303), [anon_sym_AT] = ACTIONS(4303), [sym_bool] = ACTIONS(4301), [sym_byte] = ACTIONS(4301), [sym_ubyte] = ACTIONS(4301), [sym_char] = ACTIONS(4301), [sym_short] = ACTIONS(4301), [sym_ushort] = ACTIONS(4301), [sym_int] = ACTIONS(4301), [sym_uint] = ACTIONS(4301), [sym_long] = ACTIONS(4301), [sym_ulong] = ACTIONS(4301), [sym_cent] = ACTIONS(4301), [sym_ucent] = ACTIONS(4301), [sym_wchar] = ACTIONS(4301), [sym_dchar] = ACTIONS(4301), [sym_float] = ACTIONS(4301), [sym_double] = ACTIONS(4301), [sym_real] = ACTIONS(4301), [sym_ifloat] = ACTIONS(4301), [sym_idouble] = ACTIONS(4301), [sym_ireal] = ACTIONS(4301), [sym_cfloat] = ACTIONS(4301), [sym_cdouble] = ACTIONS(4301), [sym_creal] = ACTIONS(4301), [sym_size_t] = ACTIONS(4301), [sym_ptrdiff_t] = ACTIONS(4301), [sym_string] = ACTIONS(4301), [sym_cstring] = ACTIONS(4301), [sym_dstring] = ACTIONS(4301), [sym_wstring] = ACTIONS(4301), [sym_noreturn] = ACTIONS(4301), [sym_this] = ACTIONS(4301), [sym_abstract] = ACTIONS(4301), [sym_alias] = ACTIONS(4301), [sym_align] = ACTIONS(4301), [sym_auto] = ACTIONS(4301), [sym_class] = ACTIONS(4301), [sym_const] = ACTIONS(4301), [sym_debug] = ACTIONS(4301), [sym_deprecated] = ACTIONS(4301), [sym_else] = ACTIONS(4301), [sym_enum] = ACTIONS(4301), [sym_export] = ACTIONS(4301), [sym_extern] = ACTIONS(4301), [sym_final] = ACTIONS(4301), [sym_immutable] = ACTIONS(4301), [sym_import] = ACTIONS(4301), [sym_inout] = ACTIONS(4301), [sym_interface] = ACTIONS(4301), [sym_invariant] = ACTIONS(4301), [sym_mixin] = ACTIONS(4301), [sym_nothrow] = ACTIONS(4301), [sym_override] = ACTIONS(4301), [sym_package] = ACTIONS(4301), [sym_pragma] = ACTIONS(4301), [sym_private] = ACTIONS(4301), [sym_protected] = ACTIONS(4301), [sym_public] = ACTIONS(4301), [sym_pure] = ACTIONS(4301), [sym_ref] = ACTIONS(4301), [sym_return] = ACTIONS(4301), [sym_scope] = ACTIONS(4301), [sym_shared] = ACTIONS(4301), [sym_static] = ACTIONS(4301), [sym_struct] = ACTIONS(4301), [sym_synchronized] = ACTIONS(4301), [sym_template] = ACTIONS(4301), [sym_typeof] = ACTIONS(4301), [sym_union] = ACTIONS(4301), [sym_unittest] = ACTIONS(4301), [sym_version] = ACTIONS(4301), [sym_while] = ACTIONS(4301), [sym_gshared] = ACTIONS(4301), [sym_traits] = ACTIONS(4301), [sym_vector] = ACTIONS(4301), [sym_void] = ACTIONS(4301), [sym_directive] = ACTIONS(3), }, [2716] = { [ts_builtin_sym_end] = ACTIONS(4572), [sym_identifier] = ACTIONS(4570), [sym_end_file] = ACTIONS(4570), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4572), [anon_sym_SEMI] = ACTIONS(4572), [anon_sym_TILDE] = ACTIONS(4572), [anon_sym_AT] = ACTIONS(4572), [sym_bool] = ACTIONS(4570), [sym_byte] = ACTIONS(4570), [sym_ubyte] = ACTIONS(4570), [sym_char] = ACTIONS(4570), [sym_short] = ACTIONS(4570), [sym_ushort] = ACTIONS(4570), [sym_int] = ACTIONS(4570), [sym_uint] = ACTIONS(4570), [sym_long] = ACTIONS(4570), [sym_ulong] = ACTIONS(4570), [sym_cent] = ACTIONS(4570), [sym_ucent] = ACTIONS(4570), [sym_wchar] = ACTIONS(4570), [sym_dchar] = ACTIONS(4570), [sym_float] = ACTIONS(4570), [sym_double] = ACTIONS(4570), [sym_real] = ACTIONS(4570), [sym_ifloat] = ACTIONS(4570), [sym_idouble] = ACTIONS(4570), [sym_ireal] = ACTIONS(4570), [sym_cfloat] = ACTIONS(4570), [sym_cdouble] = ACTIONS(4570), [sym_creal] = ACTIONS(4570), [sym_size_t] = ACTIONS(4570), [sym_ptrdiff_t] = ACTIONS(4570), [sym_string] = ACTIONS(4570), [sym_cstring] = ACTIONS(4570), [sym_dstring] = ACTIONS(4570), [sym_wstring] = ACTIONS(4570), [sym_noreturn] = ACTIONS(4570), [sym_this] = ACTIONS(4570), [sym_abstract] = ACTIONS(4570), [sym_alias] = ACTIONS(4570), [sym_align] = ACTIONS(4570), [sym_auto] = ACTIONS(4570), [sym_class] = ACTIONS(4570), [sym_const] = ACTIONS(4570), [sym_debug] = ACTIONS(4570), [sym_deprecated] = ACTIONS(4570), [sym_else] = ACTIONS(4570), [sym_enum] = ACTIONS(4570), [sym_export] = ACTIONS(4570), [sym_extern] = ACTIONS(4570), [sym_final] = ACTIONS(4570), [sym_immutable] = ACTIONS(4570), [sym_import] = ACTIONS(4570), [sym_inout] = ACTIONS(4570), [sym_interface] = ACTIONS(4570), [sym_invariant] = ACTIONS(4570), [sym_mixin] = ACTIONS(4570), [sym_nothrow] = ACTIONS(4570), [sym_override] = ACTIONS(4570), [sym_package] = ACTIONS(4570), [sym_pragma] = ACTIONS(4570), [sym_private] = ACTIONS(4570), [sym_protected] = ACTIONS(4570), [sym_public] = ACTIONS(4570), [sym_pure] = ACTIONS(4570), [sym_ref] = ACTIONS(4570), [sym_return] = ACTIONS(4570), [sym_scope] = ACTIONS(4570), [sym_shared] = ACTIONS(4570), [sym_static] = ACTIONS(4570), [sym_struct] = ACTIONS(4570), [sym_synchronized] = ACTIONS(4570), [sym_template] = ACTIONS(4570), [sym_typeof] = ACTIONS(4570), [sym_union] = ACTIONS(4570), [sym_unittest] = ACTIONS(4570), [sym_version] = ACTIONS(4570), [sym_while] = ACTIONS(4570), [sym_gshared] = ACTIONS(4570), [sym_traits] = ACTIONS(4570), [sym_vector] = ACTIONS(4570), [sym_void] = ACTIONS(4570), [sym_directive] = ACTIONS(3), }, [2717] = { [ts_builtin_sym_end] = ACTIONS(4710), [sym_identifier] = ACTIONS(4708), [sym_end_file] = ACTIONS(4708), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4710), [anon_sym_SEMI] = ACTIONS(4710), [anon_sym_TILDE] = ACTIONS(4710), [anon_sym_AT] = ACTIONS(4710), [sym_bool] = ACTIONS(4708), [sym_byte] = ACTIONS(4708), [sym_ubyte] = ACTIONS(4708), [sym_char] = ACTIONS(4708), [sym_short] = ACTIONS(4708), [sym_ushort] = ACTIONS(4708), [sym_int] = ACTIONS(4708), [sym_uint] = ACTIONS(4708), [sym_long] = ACTIONS(4708), [sym_ulong] = ACTIONS(4708), [sym_cent] = ACTIONS(4708), [sym_ucent] = ACTIONS(4708), [sym_wchar] = ACTIONS(4708), [sym_dchar] = ACTIONS(4708), [sym_float] = ACTIONS(4708), [sym_double] = ACTIONS(4708), [sym_real] = ACTIONS(4708), [sym_ifloat] = ACTIONS(4708), [sym_idouble] = ACTIONS(4708), [sym_ireal] = ACTIONS(4708), [sym_cfloat] = ACTIONS(4708), [sym_cdouble] = ACTIONS(4708), [sym_creal] = ACTIONS(4708), [sym_size_t] = ACTIONS(4708), [sym_ptrdiff_t] = ACTIONS(4708), [sym_string] = ACTIONS(4708), [sym_cstring] = ACTIONS(4708), [sym_dstring] = ACTIONS(4708), [sym_wstring] = ACTIONS(4708), [sym_noreturn] = ACTIONS(4708), [sym_this] = ACTIONS(4708), [sym_abstract] = ACTIONS(4708), [sym_alias] = ACTIONS(4708), [sym_align] = ACTIONS(4708), [sym_auto] = ACTIONS(4708), [sym_class] = ACTIONS(4708), [sym_const] = ACTIONS(4708), [sym_debug] = ACTIONS(4708), [sym_deprecated] = ACTIONS(4708), [sym_else] = ACTIONS(4708), [sym_enum] = ACTIONS(4708), [sym_export] = ACTIONS(4708), [sym_extern] = ACTIONS(4708), [sym_final] = ACTIONS(4708), [sym_immutable] = ACTIONS(4708), [sym_import] = ACTIONS(4708), [sym_inout] = ACTIONS(4708), [sym_interface] = ACTIONS(4708), [sym_invariant] = ACTIONS(4708), [sym_mixin] = ACTIONS(4708), [sym_nothrow] = ACTIONS(4708), [sym_override] = ACTIONS(4708), [sym_package] = ACTIONS(4708), [sym_pragma] = ACTIONS(4708), [sym_private] = ACTIONS(4708), [sym_protected] = ACTIONS(4708), [sym_public] = ACTIONS(4708), [sym_pure] = ACTIONS(4708), [sym_ref] = ACTIONS(4708), [sym_return] = ACTIONS(4708), [sym_scope] = ACTIONS(4708), [sym_shared] = ACTIONS(4708), [sym_static] = ACTIONS(4708), [sym_struct] = ACTIONS(4708), [sym_synchronized] = ACTIONS(4708), [sym_template] = ACTIONS(4708), [sym_typeof] = ACTIONS(4708), [sym_union] = ACTIONS(4708), [sym_unittest] = ACTIONS(4708), [sym_version] = ACTIONS(4708), [sym_while] = ACTIONS(4708), [sym_gshared] = ACTIONS(4708), [sym_traits] = ACTIONS(4708), [sym_vector] = ACTIONS(4708), [sym_void] = ACTIONS(4708), [sym_directive] = ACTIONS(3), }, [2718] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_EQ] = ACTIONS(5119), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2719] = { [ts_builtin_sym_end] = ACTIONS(4588), [sym_identifier] = ACTIONS(4586), [sym_end_file] = ACTIONS(4586), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4588), [anon_sym_SEMI] = ACTIONS(4588), [anon_sym_TILDE] = ACTIONS(4588), [anon_sym_AT] = ACTIONS(4588), [sym_bool] = ACTIONS(4586), [sym_byte] = ACTIONS(4586), [sym_ubyte] = ACTIONS(4586), [sym_char] = ACTIONS(4586), [sym_short] = ACTIONS(4586), [sym_ushort] = ACTIONS(4586), [sym_int] = ACTIONS(4586), [sym_uint] = ACTIONS(4586), [sym_long] = ACTIONS(4586), [sym_ulong] = ACTIONS(4586), [sym_cent] = ACTIONS(4586), [sym_ucent] = ACTIONS(4586), [sym_wchar] = ACTIONS(4586), [sym_dchar] = ACTIONS(4586), [sym_float] = ACTIONS(4586), [sym_double] = ACTIONS(4586), [sym_real] = ACTIONS(4586), [sym_ifloat] = ACTIONS(4586), [sym_idouble] = ACTIONS(4586), [sym_ireal] = ACTIONS(4586), [sym_cfloat] = ACTIONS(4586), [sym_cdouble] = ACTIONS(4586), [sym_creal] = ACTIONS(4586), [sym_size_t] = ACTIONS(4586), [sym_ptrdiff_t] = ACTIONS(4586), [sym_string] = ACTIONS(4586), [sym_cstring] = ACTIONS(4586), [sym_dstring] = ACTIONS(4586), [sym_wstring] = ACTIONS(4586), [sym_noreturn] = ACTIONS(4586), [sym_this] = ACTIONS(4586), [sym_abstract] = ACTIONS(4586), [sym_alias] = ACTIONS(4586), [sym_align] = ACTIONS(4586), [sym_auto] = ACTIONS(4586), [sym_class] = ACTIONS(4586), [sym_const] = ACTIONS(4586), [sym_debug] = ACTIONS(4586), [sym_deprecated] = ACTIONS(4586), [sym_else] = ACTIONS(4586), [sym_enum] = ACTIONS(4586), [sym_export] = ACTIONS(4586), [sym_extern] = ACTIONS(4586), [sym_final] = ACTIONS(4586), [sym_immutable] = ACTIONS(4586), [sym_import] = ACTIONS(4586), [sym_inout] = ACTIONS(4586), [sym_interface] = ACTIONS(4586), [sym_invariant] = ACTIONS(4586), [sym_mixin] = ACTIONS(4586), [sym_nothrow] = ACTIONS(4586), [sym_override] = ACTIONS(4586), [sym_package] = ACTIONS(4586), [sym_pragma] = ACTIONS(4586), [sym_private] = ACTIONS(4586), [sym_protected] = ACTIONS(4586), [sym_public] = ACTIONS(4586), [sym_pure] = ACTIONS(4586), [sym_ref] = ACTIONS(4586), [sym_return] = ACTIONS(4586), [sym_scope] = ACTIONS(4586), [sym_shared] = ACTIONS(4586), [sym_static] = ACTIONS(4586), [sym_struct] = ACTIONS(4586), [sym_synchronized] = ACTIONS(4586), [sym_template] = ACTIONS(4586), [sym_typeof] = ACTIONS(4586), [sym_union] = ACTIONS(4586), [sym_unittest] = ACTIONS(4586), [sym_version] = ACTIONS(4586), [sym_while] = ACTIONS(4586), [sym_gshared] = ACTIONS(4586), [sym_traits] = ACTIONS(4586), [sym_vector] = ACTIONS(4586), [sym_void] = ACTIONS(4586), [sym_directive] = ACTIONS(3), }, [2720] = { [ts_builtin_sym_end] = ACTIONS(4592), [sym_identifier] = ACTIONS(4590), [sym_end_file] = ACTIONS(4590), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4592), [anon_sym_SEMI] = ACTIONS(4592), [anon_sym_TILDE] = ACTIONS(4592), [anon_sym_AT] = ACTIONS(4592), [sym_bool] = ACTIONS(4590), [sym_byte] = ACTIONS(4590), [sym_ubyte] = ACTIONS(4590), [sym_char] = ACTIONS(4590), [sym_short] = ACTIONS(4590), [sym_ushort] = ACTIONS(4590), [sym_int] = ACTIONS(4590), [sym_uint] = ACTIONS(4590), [sym_long] = ACTIONS(4590), [sym_ulong] = ACTIONS(4590), [sym_cent] = ACTIONS(4590), [sym_ucent] = ACTIONS(4590), [sym_wchar] = ACTIONS(4590), [sym_dchar] = ACTIONS(4590), [sym_float] = ACTIONS(4590), [sym_double] = ACTIONS(4590), [sym_real] = ACTIONS(4590), [sym_ifloat] = ACTIONS(4590), [sym_idouble] = ACTIONS(4590), [sym_ireal] = ACTIONS(4590), [sym_cfloat] = ACTIONS(4590), [sym_cdouble] = ACTIONS(4590), [sym_creal] = ACTIONS(4590), [sym_size_t] = ACTIONS(4590), [sym_ptrdiff_t] = ACTIONS(4590), [sym_string] = ACTIONS(4590), [sym_cstring] = ACTIONS(4590), [sym_dstring] = ACTIONS(4590), [sym_wstring] = ACTIONS(4590), [sym_noreturn] = ACTIONS(4590), [sym_this] = ACTIONS(4590), [sym_abstract] = ACTIONS(4590), [sym_alias] = ACTIONS(4590), [sym_align] = ACTIONS(4590), [sym_auto] = ACTIONS(4590), [sym_class] = ACTIONS(4590), [sym_const] = ACTIONS(4590), [sym_debug] = ACTIONS(4590), [sym_deprecated] = ACTIONS(4590), [sym_else] = ACTIONS(4590), [sym_enum] = ACTIONS(4590), [sym_export] = ACTIONS(4590), [sym_extern] = ACTIONS(4590), [sym_final] = ACTIONS(4590), [sym_immutable] = ACTIONS(4590), [sym_import] = ACTIONS(4590), [sym_inout] = ACTIONS(4590), [sym_interface] = ACTIONS(4590), [sym_invariant] = ACTIONS(4590), [sym_mixin] = ACTIONS(4590), [sym_nothrow] = ACTIONS(4590), [sym_override] = ACTIONS(4590), [sym_package] = ACTIONS(4590), [sym_pragma] = ACTIONS(4590), [sym_private] = ACTIONS(4590), [sym_protected] = ACTIONS(4590), [sym_public] = ACTIONS(4590), [sym_pure] = ACTIONS(4590), [sym_ref] = ACTIONS(4590), [sym_return] = ACTIONS(4590), [sym_scope] = ACTIONS(4590), [sym_shared] = ACTIONS(4590), [sym_static] = ACTIONS(4590), [sym_struct] = ACTIONS(4590), [sym_synchronized] = ACTIONS(4590), [sym_template] = ACTIONS(4590), [sym_typeof] = ACTIONS(4590), [sym_union] = ACTIONS(4590), [sym_unittest] = ACTIONS(4590), [sym_version] = ACTIONS(4590), [sym_while] = ACTIONS(4590), [sym_gshared] = ACTIONS(4590), [sym_traits] = ACTIONS(4590), [sym_vector] = ACTIONS(4590), [sym_void] = ACTIONS(4590), [sym_directive] = ACTIONS(3), }, [2721] = { [ts_builtin_sym_end] = ACTIONS(4748), [sym_identifier] = ACTIONS(4746), [sym_end_file] = ACTIONS(4746), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4748), [anon_sym_SEMI] = ACTIONS(4748), [anon_sym_TILDE] = ACTIONS(4748), [anon_sym_AT] = ACTIONS(4748), [sym_bool] = ACTIONS(4746), [sym_byte] = ACTIONS(4746), [sym_ubyte] = ACTIONS(4746), [sym_char] = ACTIONS(4746), [sym_short] = ACTIONS(4746), [sym_ushort] = ACTIONS(4746), [sym_int] = ACTIONS(4746), [sym_uint] = ACTIONS(4746), [sym_long] = ACTIONS(4746), [sym_ulong] = ACTIONS(4746), [sym_cent] = ACTIONS(4746), [sym_ucent] = ACTIONS(4746), [sym_wchar] = ACTIONS(4746), [sym_dchar] = ACTIONS(4746), [sym_float] = ACTIONS(4746), [sym_double] = ACTIONS(4746), [sym_real] = ACTIONS(4746), [sym_ifloat] = ACTIONS(4746), [sym_idouble] = ACTIONS(4746), [sym_ireal] = ACTIONS(4746), [sym_cfloat] = ACTIONS(4746), [sym_cdouble] = ACTIONS(4746), [sym_creal] = ACTIONS(4746), [sym_size_t] = ACTIONS(4746), [sym_ptrdiff_t] = ACTIONS(4746), [sym_string] = ACTIONS(4746), [sym_cstring] = ACTIONS(4746), [sym_dstring] = ACTIONS(4746), [sym_wstring] = ACTIONS(4746), [sym_noreturn] = ACTIONS(4746), [sym_this] = ACTIONS(4746), [sym_abstract] = ACTIONS(4746), [sym_alias] = ACTIONS(4746), [sym_align] = ACTIONS(4746), [sym_auto] = ACTIONS(4746), [sym_class] = ACTIONS(4746), [sym_const] = ACTIONS(4746), [sym_debug] = ACTIONS(4746), [sym_deprecated] = ACTIONS(4746), [sym_else] = ACTIONS(4746), [sym_enum] = ACTIONS(4746), [sym_export] = ACTIONS(4746), [sym_extern] = ACTIONS(4746), [sym_final] = ACTIONS(4746), [sym_immutable] = ACTIONS(4746), [sym_import] = ACTIONS(4746), [sym_inout] = ACTIONS(4746), [sym_interface] = ACTIONS(4746), [sym_invariant] = ACTIONS(4746), [sym_mixin] = ACTIONS(4746), [sym_nothrow] = ACTIONS(4746), [sym_override] = ACTIONS(4746), [sym_package] = ACTIONS(4746), [sym_pragma] = ACTIONS(4746), [sym_private] = ACTIONS(4746), [sym_protected] = ACTIONS(4746), [sym_public] = ACTIONS(4746), [sym_pure] = ACTIONS(4746), [sym_ref] = ACTIONS(4746), [sym_return] = ACTIONS(4746), [sym_scope] = ACTIONS(4746), [sym_shared] = ACTIONS(4746), [sym_static] = ACTIONS(4746), [sym_struct] = ACTIONS(4746), [sym_synchronized] = ACTIONS(4746), [sym_template] = ACTIONS(4746), [sym_typeof] = ACTIONS(4746), [sym_union] = ACTIONS(4746), [sym_unittest] = ACTIONS(4746), [sym_version] = ACTIONS(4746), [sym_while] = ACTIONS(4746), [sym_gshared] = ACTIONS(4746), [sym_traits] = ACTIONS(4746), [sym_vector] = ACTIONS(4746), [sym_void] = ACTIONS(4746), [sym_directive] = ACTIONS(3), }, [2722] = { [ts_builtin_sym_end] = ACTIONS(4474), [sym_identifier] = ACTIONS(4472), [sym_end_file] = ACTIONS(4472), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4474), [anon_sym_SEMI] = ACTIONS(4474), [anon_sym_TILDE] = ACTIONS(4474), [anon_sym_AT] = ACTIONS(4474), [sym_bool] = ACTIONS(4472), [sym_byte] = ACTIONS(4472), [sym_ubyte] = ACTIONS(4472), [sym_char] = ACTIONS(4472), [sym_short] = ACTIONS(4472), [sym_ushort] = ACTIONS(4472), [sym_int] = ACTIONS(4472), [sym_uint] = ACTIONS(4472), [sym_long] = ACTIONS(4472), [sym_ulong] = ACTIONS(4472), [sym_cent] = ACTIONS(4472), [sym_ucent] = ACTIONS(4472), [sym_wchar] = ACTIONS(4472), [sym_dchar] = ACTIONS(4472), [sym_float] = ACTIONS(4472), [sym_double] = ACTIONS(4472), [sym_real] = ACTIONS(4472), [sym_ifloat] = ACTIONS(4472), [sym_idouble] = ACTIONS(4472), [sym_ireal] = ACTIONS(4472), [sym_cfloat] = ACTIONS(4472), [sym_cdouble] = ACTIONS(4472), [sym_creal] = ACTIONS(4472), [sym_size_t] = ACTIONS(4472), [sym_ptrdiff_t] = ACTIONS(4472), [sym_string] = ACTIONS(4472), [sym_cstring] = ACTIONS(4472), [sym_dstring] = ACTIONS(4472), [sym_wstring] = ACTIONS(4472), [sym_noreturn] = ACTIONS(4472), [sym_this] = ACTIONS(4472), [sym_abstract] = ACTIONS(4472), [sym_alias] = ACTIONS(4472), [sym_align] = ACTIONS(4472), [sym_auto] = ACTIONS(4472), [sym_class] = ACTIONS(4472), [sym_const] = ACTIONS(4472), [sym_debug] = ACTIONS(4472), [sym_deprecated] = ACTIONS(4472), [sym_else] = ACTIONS(4472), [sym_enum] = ACTIONS(4472), [sym_export] = ACTIONS(4472), [sym_extern] = ACTIONS(4472), [sym_final] = ACTIONS(4472), [sym_immutable] = ACTIONS(4472), [sym_import] = ACTIONS(4472), [sym_inout] = ACTIONS(4472), [sym_interface] = ACTIONS(4472), [sym_invariant] = ACTIONS(4472), [sym_mixin] = ACTIONS(4472), [sym_nothrow] = ACTIONS(4472), [sym_override] = ACTIONS(4472), [sym_package] = ACTIONS(4472), [sym_pragma] = ACTIONS(4472), [sym_private] = ACTIONS(4472), [sym_protected] = ACTIONS(4472), [sym_public] = ACTIONS(4472), [sym_pure] = ACTIONS(4472), [sym_ref] = ACTIONS(4472), [sym_return] = ACTIONS(4472), [sym_scope] = ACTIONS(4472), [sym_shared] = ACTIONS(4472), [sym_static] = ACTIONS(4472), [sym_struct] = ACTIONS(4472), [sym_synchronized] = ACTIONS(4472), [sym_template] = ACTIONS(4472), [sym_typeof] = ACTIONS(4472), [sym_union] = ACTIONS(4472), [sym_unittest] = ACTIONS(4472), [sym_version] = ACTIONS(4472), [sym_while] = ACTIONS(4472), [sym_gshared] = ACTIONS(4472), [sym_traits] = ACTIONS(4472), [sym_vector] = ACTIONS(4472), [sym_void] = ACTIONS(4472), [sym_directive] = ACTIONS(3), }, [2723] = { [ts_builtin_sym_end] = ACTIONS(4752), [sym_identifier] = ACTIONS(4750), [sym_end_file] = ACTIONS(4750), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4752), [anon_sym_SEMI] = ACTIONS(4752), [anon_sym_TILDE] = ACTIONS(4752), [anon_sym_AT] = ACTIONS(4752), [sym_bool] = ACTIONS(4750), [sym_byte] = ACTIONS(4750), [sym_ubyte] = ACTIONS(4750), [sym_char] = ACTIONS(4750), [sym_short] = ACTIONS(4750), [sym_ushort] = ACTIONS(4750), [sym_int] = ACTIONS(4750), [sym_uint] = ACTIONS(4750), [sym_long] = ACTIONS(4750), [sym_ulong] = ACTIONS(4750), [sym_cent] = ACTIONS(4750), [sym_ucent] = ACTIONS(4750), [sym_wchar] = ACTIONS(4750), [sym_dchar] = ACTIONS(4750), [sym_float] = ACTIONS(4750), [sym_double] = ACTIONS(4750), [sym_real] = ACTIONS(4750), [sym_ifloat] = ACTIONS(4750), [sym_idouble] = ACTIONS(4750), [sym_ireal] = ACTIONS(4750), [sym_cfloat] = ACTIONS(4750), [sym_cdouble] = ACTIONS(4750), [sym_creal] = ACTIONS(4750), [sym_size_t] = ACTIONS(4750), [sym_ptrdiff_t] = ACTIONS(4750), [sym_string] = ACTIONS(4750), [sym_cstring] = ACTIONS(4750), [sym_dstring] = ACTIONS(4750), [sym_wstring] = ACTIONS(4750), [sym_noreturn] = ACTIONS(4750), [sym_this] = ACTIONS(4750), [sym_abstract] = ACTIONS(4750), [sym_alias] = ACTIONS(4750), [sym_align] = ACTIONS(4750), [sym_auto] = ACTIONS(4750), [sym_class] = ACTIONS(4750), [sym_const] = ACTIONS(4750), [sym_debug] = ACTIONS(4750), [sym_deprecated] = ACTIONS(4750), [sym_else] = ACTIONS(4750), [sym_enum] = ACTIONS(4750), [sym_export] = ACTIONS(4750), [sym_extern] = ACTIONS(4750), [sym_final] = ACTIONS(4750), [sym_immutable] = ACTIONS(4750), [sym_import] = ACTIONS(4750), [sym_inout] = ACTIONS(4750), [sym_interface] = ACTIONS(4750), [sym_invariant] = ACTIONS(4750), [sym_mixin] = ACTIONS(4750), [sym_nothrow] = ACTIONS(4750), [sym_override] = ACTIONS(4750), [sym_package] = ACTIONS(4750), [sym_pragma] = ACTIONS(4750), [sym_private] = ACTIONS(4750), [sym_protected] = ACTIONS(4750), [sym_public] = ACTIONS(4750), [sym_pure] = ACTIONS(4750), [sym_ref] = ACTIONS(4750), [sym_return] = ACTIONS(4750), [sym_scope] = ACTIONS(4750), [sym_shared] = ACTIONS(4750), [sym_static] = ACTIONS(4750), [sym_struct] = ACTIONS(4750), [sym_synchronized] = ACTIONS(4750), [sym_template] = ACTIONS(4750), [sym_typeof] = ACTIONS(4750), [sym_union] = ACTIONS(4750), [sym_unittest] = ACTIONS(4750), [sym_version] = ACTIONS(4750), [sym_while] = ACTIONS(4750), [sym_gshared] = ACTIONS(4750), [sym_traits] = ACTIONS(4750), [sym_vector] = ACTIONS(4750), [sym_void] = ACTIONS(4750), [sym_directive] = ACTIONS(3), }, [2724] = { [ts_builtin_sym_end] = ACTIONS(4934), [sym_identifier] = ACTIONS(4932), [sym_end_file] = ACTIONS(4932), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4934), [anon_sym_SEMI] = ACTIONS(4934), [anon_sym_TILDE] = ACTIONS(4934), [anon_sym_AT] = ACTIONS(4934), [sym_bool] = ACTIONS(4932), [sym_byte] = ACTIONS(4932), [sym_ubyte] = ACTIONS(4932), [sym_char] = ACTIONS(4932), [sym_short] = ACTIONS(4932), [sym_ushort] = ACTIONS(4932), [sym_int] = ACTIONS(4932), [sym_uint] = ACTIONS(4932), [sym_long] = ACTIONS(4932), [sym_ulong] = ACTIONS(4932), [sym_cent] = ACTIONS(4932), [sym_ucent] = ACTIONS(4932), [sym_wchar] = ACTIONS(4932), [sym_dchar] = ACTIONS(4932), [sym_float] = ACTIONS(4932), [sym_double] = ACTIONS(4932), [sym_real] = ACTIONS(4932), [sym_ifloat] = ACTIONS(4932), [sym_idouble] = ACTIONS(4932), [sym_ireal] = ACTIONS(4932), [sym_cfloat] = ACTIONS(4932), [sym_cdouble] = ACTIONS(4932), [sym_creal] = ACTIONS(4932), [sym_size_t] = ACTIONS(4932), [sym_ptrdiff_t] = ACTIONS(4932), [sym_string] = ACTIONS(4932), [sym_cstring] = ACTIONS(4932), [sym_dstring] = ACTIONS(4932), [sym_wstring] = ACTIONS(4932), [sym_noreturn] = ACTIONS(4932), [sym_this] = ACTIONS(4932), [sym_abstract] = ACTIONS(4932), [sym_alias] = ACTIONS(4932), [sym_align] = ACTIONS(4932), [sym_auto] = ACTIONS(4932), [sym_class] = ACTIONS(4932), [sym_const] = ACTIONS(4932), [sym_debug] = ACTIONS(4932), [sym_deprecated] = ACTIONS(4932), [sym_else] = ACTIONS(4932), [sym_enum] = ACTIONS(4932), [sym_export] = ACTIONS(4932), [sym_extern] = ACTIONS(4932), [sym_final] = ACTIONS(4932), [sym_immutable] = ACTIONS(4932), [sym_import] = ACTIONS(4932), [sym_inout] = ACTIONS(4932), [sym_interface] = ACTIONS(4932), [sym_invariant] = ACTIONS(4932), [sym_mixin] = ACTIONS(4932), [sym_nothrow] = ACTIONS(4932), [sym_override] = ACTIONS(4932), [sym_package] = ACTIONS(4932), [sym_pragma] = ACTIONS(4932), [sym_private] = ACTIONS(4932), [sym_protected] = ACTIONS(4932), [sym_public] = ACTIONS(4932), [sym_pure] = ACTIONS(4932), [sym_ref] = ACTIONS(4932), [sym_return] = ACTIONS(4932), [sym_scope] = ACTIONS(4932), [sym_shared] = ACTIONS(4932), [sym_static] = ACTIONS(4932), [sym_struct] = ACTIONS(4932), [sym_synchronized] = ACTIONS(4932), [sym_template] = ACTIONS(4932), [sym_typeof] = ACTIONS(4932), [sym_union] = ACTIONS(4932), [sym_unittest] = ACTIONS(4932), [sym_version] = ACTIONS(4932), [sym_while] = ACTIONS(4932), [sym_gshared] = ACTIONS(4932), [sym_traits] = ACTIONS(4932), [sym_vector] = ACTIONS(4932), [sym_void] = ACTIONS(4932), [sym_directive] = ACTIONS(3), }, [2725] = { [ts_builtin_sym_end] = ACTIONS(4466), [sym_identifier] = ACTIONS(4464), [sym_end_file] = ACTIONS(4464), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4466), [anon_sym_SEMI] = ACTIONS(4466), [anon_sym_TILDE] = ACTIONS(4466), [anon_sym_AT] = ACTIONS(4466), [sym_bool] = ACTIONS(4464), [sym_byte] = ACTIONS(4464), [sym_ubyte] = ACTIONS(4464), [sym_char] = ACTIONS(4464), [sym_short] = ACTIONS(4464), [sym_ushort] = ACTIONS(4464), [sym_int] = ACTIONS(4464), [sym_uint] = ACTIONS(4464), [sym_long] = ACTIONS(4464), [sym_ulong] = ACTIONS(4464), [sym_cent] = ACTIONS(4464), [sym_ucent] = ACTIONS(4464), [sym_wchar] = ACTIONS(4464), [sym_dchar] = ACTIONS(4464), [sym_float] = ACTIONS(4464), [sym_double] = ACTIONS(4464), [sym_real] = ACTIONS(4464), [sym_ifloat] = ACTIONS(4464), [sym_idouble] = ACTIONS(4464), [sym_ireal] = ACTIONS(4464), [sym_cfloat] = ACTIONS(4464), [sym_cdouble] = ACTIONS(4464), [sym_creal] = ACTIONS(4464), [sym_size_t] = ACTIONS(4464), [sym_ptrdiff_t] = ACTIONS(4464), [sym_string] = ACTIONS(4464), [sym_cstring] = ACTIONS(4464), [sym_dstring] = ACTIONS(4464), [sym_wstring] = ACTIONS(4464), [sym_noreturn] = ACTIONS(4464), [sym_this] = ACTIONS(4464), [sym_abstract] = ACTIONS(4464), [sym_alias] = ACTIONS(4464), [sym_align] = ACTIONS(4464), [sym_auto] = ACTIONS(4464), [sym_class] = ACTIONS(4464), [sym_const] = ACTIONS(4464), [sym_debug] = ACTIONS(4464), [sym_deprecated] = ACTIONS(4464), [sym_else] = ACTIONS(4464), [sym_enum] = ACTIONS(4464), [sym_export] = ACTIONS(4464), [sym_extern] = ACTIONS(4464), [sym_final] = ACTIONS(4464), [sym_immutable] = ACTIONS(4464), [sym_import] = ACTIONS(4464), [sym_inout] = ACTIONS(4464), [sym_interface] = ACTIONS(4464), [sym_invariant] = ACTIONS(4464), [sym_mixin] = ACTIONS(4464), [sym_nothrow] = ACTIONS(4464), [sym_override] = ACTIONS(4464), [sym_package] = ACTIONS(4464), [sym_pragma] = ACTIONS(4464), [sym_private] = ACTIONS(4464), [sym_protected] = ACTIONS(4464), [sym_public] = ACTIONS(4464), [sym_pure] = ACTIONS(4464), [sym_ref] = ACTIONS(4464), [sym_return] = ACTIONS(4464), [sym_scope] = ACTIONS(4464), [sym_shared] = ACTIONS(4464), [sym_static] = ACTIONS(4464), [sym_struct] = ACTIONS(4464), [sym_synchronized] = ACTIONS(4464), [sym_template] = ACTIONS(4464), [sym_typeof] = ACTIONS(4464), [sym_union] = ACTIONS(4464), [sym_unittest] = ACTIONS(4464), [sym_version] = ACTIONS(4464), [sym_while] = ACTIONS(4464), [sym_gshared] = ACTIONS(4464), [sym_traits] = ACTIONS(4464), [sym_vector] = ACTIONS(4464), [sym_void] = ACTIONS(4464), [sym_directive] = ACTIONS(3), }, [2726] = { [ts_builtin_sym_end] = ACTIONS(4324), [sym_identifier] = ACTIONS(4321), [sym_end_file] = ACTIONS(4321), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4324), [anon_sym_SEMI] = ACTIONS(4324), [anon_sym_TILDE] = ACTIONS(4324), [anon_sym_AT] = ACTIONS(4324), [sym_bool] = ACTIONS(4321), [sym_byte] = ACTIONS(4321), [sym_ubyte] = ACTIONS(4321), [sym_char] = ACTIONS(4321), [sym_short] = ACTIONS(4321), [sym_ushort] = ACTIONS(4321), [sym_int] = ACTIONS(4321), [sym_uint] = ACTIONS(4321), [sym_long] = ACTIONS(4321), [sym_ulong] = ACTIONS(4321), [sym_cent] = ACTIONS(4321), [sym_ucent] = ACTIONS(4321), [sym_wchar] = ACTIONS(4321), [sym_dchar] = ACTIONS(4321), [sym_float] = ACTIONS(4321), [sym_double] = ACTIONS(4321), [sym_real] = ACTIONS(4321), [sym_ifloat] = ACTIONS(4321), [sym_idouble] = ACTIONS(4321), [sym_ireal] = ACTIONS(4321), [sym_cfloat] = ACTIONS(4321), [sym_cdouble] = ACTIONS(4321), [sym_creal] = ACTIONS(4321), [sym_size_t] = ACTIONS(4321), [sym_ptrdiff_t] = ACTIONS(4321), [sym_string] = ACTIONS(4321), [sym_cstring] = ACTIONS(4321), [sym_dstring] = ACTIONS(4321), [sym_wstring] = ACTIONS(4321), [sym_noreturn] = ACTIONS(4321), [sym_this] = ACTIONS(4321), [sym_abstract] = ACTIONS(4321), [sym_alias] = ACTIONS(4321), [sym_align] = ACTIONS(4321), [sym_auto] = ACTIONS(4321), [sym_class] = ACTIONS(4321), [sym_const] = ACTIONS(4321), [sym_debug] = ACTIONS(4321), [sym_deprecated] = ACTIONS(4321), [sym_else] = ACTIONS(4321), [sym_enum] = ACTIONS(4321), [sym_export] = ACTIONS(4321), [sym_extern] = ACTIONS(4321), [sym_final] = ACTIONS(4321), [sym_immutable] = ACTIONS(4321), [sym_import] = ACTIONS(4321), [sym_inout] = ACTIONS(4321), [sym_interface] = ACTIONS(4321), [sym_invariant] = ACTIONS(4321), [sym_mixin] = ACTIONS(4321), [sym_nothrow] = ACTIONS(4321), [sym_override] = ACTIONS(4321), [sym_package] = ACTIONS(4321), [sym_pragma] = ACTIONS(4321), [sym_private] = ACTIONS(4321), [sym_protected] = ACTIONS(4321), [sym_public] = ACTIONS(4321), [sym_pure] = ACTIONS(4321), [sym_ref] = ACTIONS(4321), [sym_return] = ACTIONS(4321), [sym_scope] = ACTIONS(4321), [sym_shared] = ACTIONS(4321), [sym_static] = ACTIONS(4321), [sym_struct] = ACTIONS(4321), [sym_synchronized] = ACTIONS(4321), [sym_template] = ACTIONS(4321), [sym_typeof] = ACTIONS(4321), [sym_union] = ACTIONS(4321), [sym_unittest] = ACTIONS(4321), [sym_version] = ACTIONS(4321), [sym_while] = ACTIONS(4321), [sym_gshared] = ACTIONS(4321), [sym_traits] = ACTIONS(4321), [sym_vector] = ACTIONS(4321), [sym_void] = ACTIONS(4321), [sym_directive] = ACTIONS(3), }, [2727] = { [ts_builtin_sym_end] = ACTIONS(4608), [sym_identifier] = ACTIONS(4606), [sym_end_file] = ACTIONS(4606), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4608), [anon_sym_SEMI] = ACTIONS(4608), [anon_sym_TILDE] = ACTIONS(4608), [anon_sym_AT] = ACTIONS(4608), [sym_bool] = ACTIONS(4606), [sym_byte] = ACTIONS(4606), [sym_ubyte] = ACTIONS(4606), [sym_char] = ACTIONS(4606), [sym_short] = ACTIONS(4606), [sym_ushort] = ACTIONS(4606), [sym_int] = ACTIONS(4606), [sym_uint] = ACTIONS(4606), [sym_long] = ACTIONS(4606), [sym_ulong] = ACTIONS(4606), [sym_cent] = ACTIONS(4606), [sym_ucent] = ACTIONS(4606), [sym_wchar] = ACTIONS(4606), [sym_dchar] = ACTIONS(4606), [sym_float] = ACTIONS(4606), [sym_double] = ACTIONS(4606), [sym_real] = ACTIONS(4606), [sym_ifloat] = ACTIONS(4606), [sym_idouble] = ACTIONS(4606), [sym_ireal] = ACTIONS(4606), [sym_cfloat] = ACTIONS(4606), [sym_cdouble] = ACTIONS(4606), [sym_creal] = ACTIONS(4606), [sym_size_t] = ACTIONS(4606), [sym_ptrdiff_t] = ACTIONS(4606), [sym_string] = ACTIONS(4606), [sym_cstring] = ACTIONS(4606), [sym_dstring] = ACTIONS(4606), [sym_wstring] = ACTIONS(4606), [sym_noreturn] = ACTIONS(4606), [sym_this] = ACTIONS(4606), [sym_abstract] = ACTIONS(4606), [sym_alias] = ACTIONS(4606), [sym_align] = ACTIONS(4606), [sym_auto] = ACTIONS(4606), [sym_class] = ACTIONS(4606), [sym_const] = ACTIONS(4606), [sym_debug] = ACTIONS(4606), [sym_deprecated] = ACTIONS(4606), [sym_else] = ACTIONS(4606), [sym_enum] = ACTIONS(4606), [sym_export] = ACTIONS(4606), [sym_extern] = ACTIONS(4606), [sym_final] = ACTIONS(4606), [sym_immutable] = ACTIONS(4606), [sym_import] = ACTIONS(4606), [sym_inout] = ACTIONS(4606), [sym_interface] = ACTIONS(4606), [sym_invariant] = ACTIONS(4606), [sym_mixin] = ACTIONS(4606), [sym_nothrow] = ACTIONS(4606), [sym_override] = ACTIONS(4606), [sym_package] = ACTIONS(4606), [sym_pragma] = ACTIONS(4606), [sym_private] = ACTIONS(4606), [sym_protected] = ACTIONS(4606), [sym_public] = ACTIONS(4606), [sym_pure] = ACTIONS(4606), [sym_ref] = ACTIONS(4606), [sym_return] = ACTIONS(4606), [sym_scope] = ACTIONS(4606), [sym_shared] = ACTIONS(4606), [sym_static] = ACTIONS(4606), [sym_struct] = ACTIONS(4606), [sym_synchronized] = ACTIONS(4606), [sym_template] = ACTIONS(4606), [sym_typeof] = ACTIONS(4606), [sym_union] = ACTIONS(4606), [sym_unittest] = ACTIONS(4606), [sym_version] = ACTIONS(4606), [sym_while] = ACTIONS(4606), [sym_gshared] = ACTIONS(4606), [sym_traits] = ACTIONS(4606), [sym_vector] = ACTIONS(4606), [sym_void] = ACTIONS(4606), [sym_directive] = ACTIONS(3), }, [2728] = { [ts_builtin_sym_end] = ACTIONS(4962), [sym_identifier] = ACTIONS(4960), [sym_end_file] = ACTIONS(4960), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4962), [anon_sym_SEMI] = ACTIONS(4962), [anon_sym_TILDE] = ACTIONS(4962), [anon_sym_AT] = ACTIONS(4962), [sym_bool] = ACTIONS(4960), [sym_byte] = ACTIONS(4960), [sym_ubyte] = ACTIONS(4960), [sym_char] = ACTIONS(4960), [sym_short] = ACTIONS(4960), [sym_ushort] = ACTIONS(4960), [sym_int] = ACTIONS(4960), [sym_uint] = ACTIONS(4960), [sym_long] = ACTIONS(4960), [sym_ulong] = ACTIONS(4960), [sym_cent] = ACTIONS(4960), [sym_ucent] = ACTIONS(4960), [sym_wchar] = ACTIONS(4960), [sym_dchar] = ACTIONS(4960), [sym_float] = ACTIONS(4960), [sym_double] = ACTIONS(4960), [sym_real] = ACTIONS(4960), [sym_ifloat] = ACTIONS(4960), [sym_idouble] = ACTIONS(4960), [sym_ireal] = ACTIONS(4960), [sym_cfloat] = ACTIONS(4960), [sym_cdouble] = ACTIONS(4960), [sym_creal] = ACTIONS(4960), [sym_size_t] = ACTIONS(4960), [sym_ptrdiff_t] = ACTIONS(4960), [sym_string] = ACTIONS(4960), [sym_cstring] = ACTIONS(4960), [sym_dstring] = ACTIONS(4960), [sym_wstring] = ACTIONS(4960), [sym_noreturn] = ACTIONS(4960), [sym_this] = ACTIONS(4960), [sym_abstract] = ACTIONS(4960), [sym_alias] = ACTIONS(4960), [sym_align] = ACTIONS(4960), [sym_auto] = ACTIONS(4960), [sym_class] = ACTIONS(4960), [sym_const] = ACTIONS(4960), [sym_debug] = ACTIONS(4960), [sym_deprecated] = ACTIONS(4960), [sym_else] = ACTIONS(4960), [sym_enum] = ACTIONS(4960), [sym_export] = ACTIONS(4960), [sym_extern] = ACTIONS(4960), [sym_final] = ACTIONS(4960), [sym_immutable] = ACTIONS(4960), [sym_import] = ACTIONS(4960), [sym_inout] = ACTIONS(4960), [sym_interface] = ACTIONS(4960), [sym_invariant] = ACTIONS(4960), [sym_mixin] = ACTIONS(4960), [sym_nothrow] = ACTIONS(4960), [sym_override] = ACTIONS(4960), [sym_package] = ACTIONS(4960), [sym_pragma] = ACTIONS(4960), [sym_private] = ACTIONS(4960), [sym_protected] = ACTIONS(4960), [sym_public] = ACTIONS(4960), [sym_pure] = ACTIONS(4960), [sym_ref] = ACTIONS(4960), [sym_return] = ACTIONS(4960), [sym_scope] = ACTIONS(4960), [sym_shared] = ACTIONS(4960), [sym_static] = ACTIONS(4960), [sym_struct] = ACTIONS(4960), [sym_synchronized] = ACTIONS(4960), [sym_template] = ACTIONS(4960), [sym_typeof] = ACTIONS(4960), [sym_union] = ACTIONS(4960), [sym_unittest] = ACTIONS(4960), [sym_version] = ACTIONS(4960), [sym_while] = ACTIONS(4960), [sym_gshared] = ACTIONS(4960), [sym_traits] = ACTIONS(4960), [sym_vector] = ACTIONS(4960), [sym_void] = ACTIONS(4960), [sym_directive] = ACTIONS(3), }, [2729] = { [ts_builtin_sym_end] = ACTIONS(4696), [sym_identifier] = ACTIONS(4694), [sym_end_file] = ACTIONS(4694), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4696), [anon_sym_SEMI] = ACTIONS(4696), [anon_sym_TILDE] = ACTIONS(4696), [anon_sym_AT] = ACTIONS(4696), [sym_bool] = ACTIONS(4694), [sym_byte] = ACTIONS(4694), [sym_ubyte] = ACTIONS(4694), [sym_char] = ACTIONS(4694), [sym_short] = ACTIONS(4694), [sym_ushort] = ACTIONS(4694), [sym_int] = ACTIONS(4694), [sym_uint] = ACTIONS(4694), [sym_long] = ACTIONS(4694), [sym_ulong] = ACTIONS(4694), [sym_cent] = ACTIONS(4694), [sym_ucent] = ACTIONS(4694), [sym_wchar] = ACTIONS(4694), [sym_dchar] = ACTIONS(4694), [sym_float] = ACTIONS(4694), [sym_double] = ACTIONS(4694), [sym_real] = ACTIONS(4694), [sym_ifloat] = ACTIONS(4694), [sym_idouble] = ACTIONS(4694), [sym_ireal] = ACTIONS(4694), [sym_cfloat] = ACTIONS(4694), [sym_cdouble] = ACTIONS(4694), [sym_creal] = ACTIONS(4694), [sym_size_t] = ACTIONS(4694), [sym_ptrdiff_t] = ACTIONS(4694), [sym_string] = ACTIONS(4694), [sym_cstring] = ACTIONS(4694), [sym_dstring] = ACTIONS(4694), [sym_wstring] = ACTIONS(4694), [sym_noreturn] = ACTIONS(4694), [sym_this] = ACTIONS(4694), [sym_abstract] = ACTIONS(4694), [sym_alias] = ACTIONS(4694), [sym_align] = ACTIONS(4694), [sym_auto] = ACTIONS(4694), [sym_class] = ACTIONS(4694), [sym_const] = ACTIONS(4694), [sym_debug] = ACTIONS(4694), [sym_deprecated] = ACTIONS(4694), [sym_else] = ACTIONS(4694), [sym_enum] = ACTIONS(4694), [sym_export] = ACTIONS(4694), [sym_extern] = ACTIONS(4694), [sym_final] = ACTIONS(4694), [sym_immutable] = ACTIONS(4694), [sym_import] = ACTIONS(4694), [sym_inout] = ACTIONS(4694), [sym_interface] = ACTIONS(4694), [sym_invariant] = ACTIONS(4694), [sym_mixin] = ACTIONS(4694), [sym_nothrow] = ACTIONS(4694), [sym_override] = ACTIONS(4694), [sym_package] = ACTIONS(4694), [sym_pragma] = ACTIONS(4694), [sym_private] = ACTIONS(4694), [sym_protected] = ACTIONS(4694), [sym_public] = ACTIONS(4694), [sym_pure] = ACTIONS(4694), [sym_ref] = ACTIONS(4694), [sym_return] = ACTIONS(4694), [sym_scope] = ACTIONS(4694), [sym_shared] = ACTIONS(4694), [sym_static] = ACTIONS(4694), [sym_struct] = ACTIONS(4694), [sym_synchronized] = ACTIONS(4694), [sym_template] = ACTIONS(4694), [sym_typeof] = ACTIONS(4694), [sym_union] = ACTIONS(4694), [sym_unittest] = ACTIONS(4694), [sym_version] = ACTIONS(4694), [sym_while] = ACTIONS(4694), [sym_gshared] = ACTIONS(4694), [sym_traits] = ACTIONS(4694), [sym_vector] = ACTIONS(4694), [sym_void] = ACTIONS(4694), [sym_directive] = ACTIONS(3), }, [2730] = { [ts_builtin_sym_end] = ACTIONS(4458), [sym_identifier] = ACTIONS(4456), [sym_end_file] = ACTIONS(4456), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4458), [anon_sym_SEMI] = ACTIONS(4458), [anon_sym_TILDE] = ACTIONS(4458), [anon_sym_AT] = ACTIONS(4458), [sym_bool] = ACTIONS(4456), [sym_byte] = ACTIONS(4456), [sym_ubyte] = ACTIONS(4456), [sym_char] = ACTIONS(4456), [sym_short] = ACTIONS(4456), [sym_ushort] = ACTIONS(4456), [sym_int] = ACTIONS(4456), [sym_uint] = ACTIONS(4456), [sym_long] = ACTIONS(4456), [sym_ulong] = ACTIONS(4456), [sym_cent] = ACTIONS(4456), [sym_ucent] = ACTIONS(4456), [sym_wchar] = ACTIONS(4456), [sym_dchar] = ACTIONS(4456), [sym_float] = ACTIONS(4456), [sym_double] = ACTIONS(4456), [sym_real] = ACTIONS(4456), [sym_ifloat] = ACTIONS(4456), [sym_idouble] = ACTIONS(4456), [sym_ireal] = ACTIONS(4456), [sym_cfloat] = ACTIONS(4456), [sym_cdouble] = ACTIONS(4456), [sym_creal] = ACTIONS(4456), [sym_size_t] = ACTIONS(4456), [sym_ptrdiff_t] = ACTIONS(4456), [sym_string] = ACTIONS(4456), [sym_cstring] = ACTIONS(4456), [sym_dstring] = ACTIONS(4456), [sym_wstring] = ACTIONS(4456), [sym_noreturn] = ACTIONS(4456), [sym_this] = ACTIONS(4456), [sym_abstract] = ACTIONS(4456), [sym_alias] = ACTIONS(4456), [sym_align] = ACTIONS(4456), [sym_auto] = ACTIONS(4456), [sym_class] = ACTIONS(4456), [sym_const] = ACTIONS(4456), [sym_debug] = ACTIONS(4456), [sym_deprecated] = ACTIONS(4456), [sym_else] = ACTIONS(4456), [sym_enum] = ACTIONS(4456), [sym_export] = ACTIONS(4456), [sym_extern] = ACTIONS(4456), [sym_final] = ACTIONS(4456), [sym_immutable] = ACTIONS(4456), [sym_import] = ACTIONS(4456), [sym_inout] = ACTIONS(4456), [sym_interface] = ACTIONS(4456), [sym_invariant] = ACTIONS(4456), [sym_mixin] = ACTIONS(4456), [sym_nothrow] = ACTIONS(4456), [sym_override] = ACTIONS(4456), [sym_package] = ACTIONS(4456), [sym_pragma] = ACTIONS(4456), [sym_private] = ACTIONS(4456), [sym_protected] = ACTIONS(4456), [sym_public] = ACTIONS(4456), [sym_pure] = ACTIONS(4456), [sym_ref] = ACTIONS(4456), [sym_return] = ACTIONS(4456), [sym_scope] = ACTIONS(4456), [sym_shared] = ACTIONS(4456), [sym_static] = ACTIONS(4456), [sym_struct] = ACTIONS(4456), [sym_synchronized] = ACTIONS(4456), [sym_template] = ACTIONS(4456), [sym_typeof] = ACTIONS(4456), [sym_union] = ACTIONS(4456), [sym_unittest] = ACTIONS(4456), [sym_version] = ACTIONS(4456), [sym_while] = ACTIONS(4456), [sym_gshared] = ACTIONS(4456), [sym_traits] = ACTIONS(4456), [sym_vector] = ACTIONS(4456), [sym_void] = ACTIONS(4456), [sym_directive] = ACTIONS(3), }, [2731] = { [ts_builtin_sym_end] = ACTIONS(4756), [sym_identifier] = ACTIONS(4754), [sym_end_file] = ACTIONS(4754), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4756), [anon_sym_SEMI] = ACTIONS(4756), [anon_sym_TILDE] = ACTIONS(4756), [anon_sym_AT] = ACTIONS(4756), [sym_bool] = ACTIONS(4754), [sym_byte] = ACTIONS(4754), [sym_ubyte] = ACTIONS(4754), [sym_char] = ACTIONS(4754), [sym_short] = ACTIONS(4754), [sym_ushort] = ACTIONS(4754), [sym_int] = ACTIONS(4754), [sym_uint] = ACTIONS(4754), [sym_long] = ACTIONS(4754), [sym_ulong] = ACTIONS(4754), [sym_cent] = ACTIONS(4754), [sym_ucent] = ACTIONS(4754), [sym_wchar] = ACTIONS(4754), [sym_dchar] = ACTIONS(4754), [sym_float] = ACTIONS(4754), [sym_double] = ACTIONS(4754), [sym_real] = ACTIONS(4754), [sym_ifloat] = ACTIONS(4754), [sym_idouble] = ACTIONS(4754), [sym_ireal] = ACTIONS(4754), [sym_cfloat] = ACTIONS(4754), [sym_cdouble] = ACTIONS(4754), [sym_creal] = ACTIONS(4754), [sym_size_t] = ACTIONS(4754), [sym_ptrdiff_t] = ACTIONS(4754), [sym_string] = ACTIONS(4754), [sym_cstring] = ACTIONS(4754), [sym_dstring] = ACTIONS(4754), [sym_wstring] = ACTIONS(4754), [sym_noreturn] = ACTIONS(4754), [sym_this] = ACTIONS(4754), [sym_abstract] = ACTIONS(4754), [sym_alias] = ACTIONS(4754), [sym_align] = ACTIONS(4754), [sym_auto] = ACTIONS(4754), [sym_class] = ACTIONS(4754), [sym_const] = ACTIONS(4754), [sym_debug] = ACTIONS(4754), [sym_deprecated] = ACTIONS(4754), [sym_else] = ACTIONS(4754), [sym_enum] = ACTIONS(4754), [sym_export] = ACTIONS(4754), [sym_extern] = ACTIONS(4754), [sym_final] = ACTIONS(4754), [sym_immutable] = ACTIONS(4754), [sym_import] = ACTIONS(4754), [sym_inout] = ACTIONS(4754), [sym_interface] = ACTIONS(4754), [sym_invariant] = ACTIONS(4754), [sym_mixin] = ACTIONS(4754), [sym_nothrow] = ACTIONS(4754), [sym_override] = ACTIONS(4754), [sym_package] = ACTIONS(4754), [sym_pragma] = ACTIONS(4754), [sym_private] = ACTIONS(4754), [sym_protected] = ACTIONS(4754), [sym_public] = ACTIONS(4754), [sym_pure] = ACTIONS(4754), [sym_ref] = ACTIONS(4754), [sym_return] = ACTIONS(4754), [sym_scope] = ACTIONS(4754), [sym_shared] = ACTIONS(4754), [sym_static] = ACTIONS(4754), [sym_struct] = ACTIONS(4754), [sym_synchronized] = ACTIONS(4754), [sym_template] = ACTIONS(4754), [sym_typeof] = ACTIONS(4754), [sym_union] = ACTIONS(4754), [sym_unittest] = ACTIONS(4754), [sym_version] = ACTIONS(4754), [sym_while] = ACTIONS(4754), [sym_gshared] = ACTIONS(4754), [sym_traits] = ACTIONS(4754), [sym_vector] = ACTIONS(4754), [sym_void] = ACTIONS(4754), [sym_directive] = ACTIONS(3), }, [2732] = { [ts_builtin_sym_end] = ACTIONS(4858), [sym_identifier] = ACTIONS(4856), [sym_end_file] = ACTIONS(4856), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4858), [anon_sym_SEMI] = ACTIONS(4858), [anon_sym_TILDE] = ACTIONS(4858), [anon_sym_AT] = ACTIONS(4858), [sym_bool] = ACTIONS(4856), [sym_byte] = ACTIONS(4856), [sym_ubyte] = ACTIONS(4856), [sym_char] = ACTIONS(4856), [sym_short] = ACTIONS(4856), [sym_ushort] = ACTIONS(4856), [sym_int] = ACTIONS(4856), [sym_uint] = ACTIONS(4856), [sym_long] = ACTIONS(4856), [sym_ulong] = ACTIONS(4856), [sym_cent] = ACTIONS(4856), [sym_ucent] = ACTIONS(4856), [sym_wchar] = ACTIONS(4856), [sym_dchar] = ACTIONS(4856), [sym_float] = ACTIONS(4856), [sym_double] = ACTIONS(4856), [sym_real] = ACTIONS(4856), [sym_ifloat] = ACTIONS(4856), [sym_idouble] = ACTIONS(4856), [sym_ireal] = ACTIONS(4856), [sym_cfloat] = ACTIONS(4856), [sym_cdouble] = ACTIONS(4856), [sym_creal] = ACTIONS(4856), [sym_size_t] = ACTIONS(4856), [sym_ptrdiff_t] = ACTIONS(4856), [sym_string] = ACTIONS(4856), [sym_cstring] = ACTIONS(4856), [sym_dstring] = ACTIONS(4856), [sym_wstring] = ACTIONS(4856), [sym_noreturn] = ACTIONS(4856), [sym_this] = ACTIONS(4856), [sym_abstract] = ACTIONS(4856), [sym_alias] = ACTIONS(4856), [sym_align] = ACTIONS(4856), [sym_auto] = ACTIONS(4856), [sym_class] = ACTIONS(4856), [sym_const] = ACTIONS(4856), [sym_debug] = ACTIONS(4856), [sym_deprecated] = ACTIONS(4856), [sym_else] = ACTIONS(4856), [sym_enum] = ACTIONS(4856), [sym_export] = ACTIONS(4856), [sym_extern] = ACTIONS(4856), [sym_final] = ACTIONS(4856), [sym_immutable] = ACTIONS(4856), [sym_import] = ACTIONS(4856), [sym_inout] = ACTIONS(4856), [sym_interface] = ACTIONS(4856), [sym_invariant] = ACTIONS(4856), [sym_mixin] = ACTIONS(4856), [sym_nothrow] = ACTIONS(4856), [sym_override] = ACTIONS(4856), [sym_package] = ACTIONS(4856), [sym_pragma] = ACTIONS(4856), [sym_private] = ACTIONS(4856), [sym_protected] = ACTIONS(4856), [sym_public] = ACTIONS(4856), [sym_pure] = ACTIONS(4856), [sym_ref] = ACTIONS(4856), [sym_return] = ACTIONS(4856), [sym_scope] = ACTIONS(4856), [sym_shared] = ACTIONS(4856), [sym_static] = ACTIONS(4856), [sym_struct] = ACTIONS(4856), [sym_synchronized] = ACTIONS(4856), [sym_template] = ACTIONS(4856), [sym_typeof] = ACTIONS(4856), [sym_union] = ACTIONS(4856), [sym_unittest] = ACTIONS(4856), [sym_version] = ACTIONS(4856), [sym_while] = ACTIONS(4856), [sym_gshared] = ACTIONS(4856), [sym_traits] = ACTIONS(4856), [sym_vector] = ACTIONS(4856), [sym_void] = ACTIONS(4856), [sym_directive] = ACTIONS(3), }, [2733] = { [ts_builtin_sym_end] = ACTIONS(4850), [sym_identifier] = ACTIONS(4848), [sym_end_file] = ACTIONS(4848), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4850), [anon_sym_SEMI] = ACTIONS(4850), [anon_sym_TILDE] = ACTIONS(4850), [anon_sym_AT] = ACTIONS(4850), [sym_bool] = ACTIONS(4848), [sym_byte] = ACTIONS(4848), [sym_ubyte] = ACTIONS(4848), [sym_char] = ACTIONS(4848), [sym_short] = ACTIONS(4848), [sym_ushort] = ACTIONS(4848), [sym_int] = ACTIONS(4848), [sym_uint] = ACTIONS(4848), [sym_long] = ACTIONS(4848), [sym_ulong] = ACTIONS(4848), [sym_cent] = ACTIONS(4848), [sym_ucent] = ACTIONS(4848), [sym_wchar] = ACTIONS(4848), [sym_dchar] = ACTIONS(4848), [sym_float] = ACTIONS(4848), [sym_double] = ACTIONS(4848), [sym_real] = ACTIONS(4848), [sym_ifloat] = ACTIONS(4848), [sym_idouble] = ACTIONS(4848), [sym_ireal] = ACTIONS(4848), [sym_cfloat] = ACTIONS(4848), [sym_cdouble] = ACTIONS(4848), [sym_creal] = ACTIONS(4848), [sym_size_t] = ACTIONS(4848), [sym_ptrdiff_t] = ACTIONS(4848), [sym_string] = ACTIONS(4848), [sym_cstring] = ACTIONS(4848), [sym_dstring] = ACTIONS(4848), [sym_wstring] = ACTIONS(4848), [sym_noreturn] = ACTIONS(4848), [sym_this] = ACTIONS(4848), [sym_abstract] = ACTIONS(4848), [sym_alias] = ACTIONS(4848), [sym_align] = ACTIONS(4848), [sym_auto] = ACTIONS(4848), [sym_class] = ACTIONS(4848), [sym_const] = ACTIONS(4848), [sym_debug] = ACTIONS(4848), [sym_deprecated] = ACTIONS(4848), [sym_else] = ACTIONS(4848), [sym_enum] = ACTIONS(4848), [sym_export] = ACTIONS(4848), [sym_extern] = ACTIONS(4848), [sym_final] = ACTIONS(4848), [sym_immutable] = ACTIONS(4848), [sym_import] = ACTIONS(4848), [sym_inout] = ACTIONS(4848), [sym_interface] = ACTIONS(4848), [sym_invariant] = ACTIONS(4848), [sym_mixin] = ACTIONS(4848), [sym_nothrow] = ACTIONS(4848), [sym_override] = ACTIONS(4848), [sym_package] = ACTIONS(4848), [sym_pragma] = ACTIONS(4848), [sym_private] = ACTIONS(4848), [sym_protected] = ACTIONS(4848), [sym_public] = ACTIONS(4848), [sym_pure] = ACTIONS(4848), [sym_ref] = ACTIONS(4848), [sym_return] = ACTIONS(4848), [sym_scope] = ACTIONS(4848), [sym_shared] = ACTIONS(4848), [sym_static] = ACTIONS(4848), [sym_struct] = ACTIONS(4848), [sym_synchronized] = ACTIONS(4848), [sym_template] = ACTIONS(4848), [sym_typeof] = ACTIONS(4848), [sym_union] = ACTIONS(4848), [sym_unittest] = ACTIONS(4848), [sym_version] = ACTIONS(4848), [sym_while] = ACTIONS(4848), [sym_gshared] = ACTIONS(4848), [sym_traits] = ACTIONS(4848), [sym_vector] = ACTIONS(4848), [sym_void] = ACTIONS(4848), [sym_directive] = ACTIONS(3), }, [2734] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_catch] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_else] = ACTIONS(6791), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_finally] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [sym_directive] = ACTIONS(3), }, [2735] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_catch] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_else] = ACTIONS(6793), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_finally] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [sym_directive] = ACTIONS(3), }, [2736] = { [sym_identifier] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [anon_sym_AT] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_abstract] = ACTIONS(2784), [sym_alias] = ACTIONS(2784), [sym_align] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_catch] = ACTIONS(2784), [sym_class] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_debug] = ACTIONS(2784), [sym_deprecated] = ACTIONS(2784), [sym_else] = ACTIONS(6795), [sym_enum] = ACTIONS(2784), [sym_export] = ACTIONS(2784), [sym_extern] = ACTIONS(2784), [sym_final] = ACTIONS(2784), [sym_finally] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_interface] = ACTIONS(2784), [sym_invariant] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_nothrow] = ACTIONS(2784), [sym_override] = ACTIONS(2784), [sym_package] = ACTIONS(2784), [sym_pragma] = ACTIONS(2784), [sym_private] = ACTIONS(2784), [sym_protected] = ACTIONS(2784), [sym_public] = ACTIONS(2784), [sym_pure] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_return] = ACTIONS(2784), [sym_scope] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_static] = ACTIONS(2784), [sym_struct] = ACTIONS(2784), [sym_synchronized] = ACTIONS(2784), [sym_template] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_union] = ACTIONS(2784), [sym_unittest] = ACTIONS(2784), [sym_version] = ACTIONS(2784), [sym_while] = ACTIONS(2784), [sym_gshared] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [sym_directive] = ACTIONS(3), }, [2737] = { [ts_builtin_sym_end] = ACTIONS(4660), [sym_identifier] = ACTIONS(4658), [sym_end_file] = ACTIONS(4658), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4660), [anon_sym_SEMI] = ACTIONS(4660), [anon_sym_TILDE] = ACTIONS(4660), [anon_sym_AT] = ACTIONS(4660), [sym_bool] = ACTIONS(4658), [sym_byte] = ACTIONS(4658), [sym_ubyte] = ACTIONS(4658), [sym_char] = ACTIONS(4658), [sym_short] = ACTIONS(4658), [sym_ushort] = ACTIONS(4658), [sym_int] = ACTIONS(4658), [sym_uint] = ACTIONS(4658), [sym_long] = ACTIONS(4658), [sym_ulong] = ACTIONS(4658), [sym_cent] = ACTIONS(4658), [sym_ucent] = ACTIONS(4658), [sym_wchar] = ACTIONS(4658), [sym_dchar] = ACTIONS(4658), [sym_float] = ACTIONS(4658), [sym_double] = ACTIONS(4658), [sym_real] = ACTIONS(4658), [sym_ifloat] = ACTIONS(4658), [sym_idouble] = ACTIONS(4658), [sym_ireal] = ACTIONS(4658), [sym_cfloat] = ACTIONS(4658), [sym_cdouble] = ACTIONS(4658), [sym_creal] = ACTIONS(4658), [sym_size_t] = ACTIONS(4658), [sym_ptrdiff_t] = ACTIONS(4658), [sym_string] = ACTIONS(4658), [sym_cstring] = ACTIONS(4658), [sym_dstring] = ACTIONS(4658), [sym_wstring] = ACTIONS(4658), [sym_noreturn] = ACTIONS(4658), [sym_this] = ACTIONS(4658), [sym_abstract] = ACTIONS(4658), [sym_alias] = ACTIONS(4658), [sym_align] = ACTIONS(4658), [sym_auto] = ACTIONS(4658), [sym_class] = ACTIONS(4658), [sym_const] = ACTIONS(4658), [sym_debug] = ACTIONS(4658), [sym_deprecated] = ACTIONS(4658), [sym_else] = ACTIONS(4658), [sym_enum] = ACTIONS(4658), [sym_export] = ACTIONS(4658), [sym_extern] = ACTIONS(4658), [sym_final] = ACTIONS(4658), [sym_immutable] = ACTIONS(4658), [sym_import] = ACTIONS(4658), [sym_inout] = ACTIONS(4658), [sym_interface] = ACTIONS(4658), [sym_invariant] = ACTIONS(4658), [sym_mixin] = ACTIONS(4658), [sym_nothrow] = ACTIONS(4658), [sym_override] = ACTIONS(4658), [sym_package] = ACTIONS(4658), [sym_pragma] = ACTIONS(4658), [sym_private] = ACTIONS(4658), [sym_protected] = ACTIONS(4658), [sym_public] = ACTIONS(4658), [sym_pure] = ACTIONS(4658), [sym_ref] = ACTIONS(4658), [sym_return] = ACTIONS(4658), [sym_scope] = ACTIONS(4658), [sym_shared] = ACTIONS(4658), [sym_static] = ACTIONS(4658), [sym_struct] = ACTIONS(4658), [sym_synchronized] = ACTIONS(4658), [sym_template] = ACTIONS(4658), [sym_typeof] = ACTIONS(4658), [sym_union] = ACTIONS(4658), [sym_unittest] = ACTIONS(4658), [sym_version] = ACTIONS(4658), [sym_while] = ACTIONS(4658), [sym_gshared] = ACTIONS(4658), [sym_traits] = ACTIONS(4658), [sym_vector] = ACTIONS(4658), [sym_void] = ACTIONS(4658), [sym_directive] = ACTIONS(3), }, [2738] = { [ts_builtin_sym_end] = ACTIONS(4307), [sym_identifier] = ACTIONS(4305), [sym_end_file] = ACTIONS(4305), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4307), [anon_sym_SEMI] = ACTIONS(4307), [anon_sym_TILDE] = ACTIONS(4307), [anon_sym_AT] = ACTIONS(4307), [sym_bool] = ACTIONS(4305), [sym_byte] = ACTIONS(4305), [sym_ubyte] = ACTIONS(4305), [sym_char] = ACTIONS(4305), [sym_short] = ACTIONS(4305), [sym_ushort] = ACTIONS(4305), [sym_int] = ACTIONS(4305), [sym_uint] = ACTIONS(4305), [sym_long] = ACTIONS(4305), [sym_ulong] = ACTIONS(4305), [sym_cent] = ACTIONS(4305), [sym_ucent] = ACTIONS(4305), [sym_wchar] = ACTIONS(4305), [sym_dchar] = ACTIONS(4305), [sym_float] = ACTIONS(4305), [sym_double] = ACTIONS(4305), [sym_real] = ACTIONS(4305), [sym_ifloat] = ACTIONS(4305), [sym_idouble] = ACTIONS(4305), [sym_ireal] = ACTIONS(4305), [sym_cfloat] = ACTIONS(4305), [sym_cdouble] = ACTIONS(4305), [sym_creal] = ACTIONS(4305), [sym_size_t] = ACTIONS(4305), [sym_ptrdiff_t] = ACTIONS(4305), [sym_string] = ACTIONS(4305), [sym_cstring] = ACTIONS(4305), [sym_dstring] = ACTIONS(4305), [sym_wstring] = ACTIONS(4305), [sym_noreturn] = ACTIONS(4305), [sym_this] = ACTIONS(4305), [sym_abstract] = ACTIONS(4305), [sym_alias] = ACTIONS(4305), [sym_align] = ACTIONS(4305), [sym_auto] = ACTIONS(4305), [sym_class] = ACTIONS(4305), [sym_const] = ACTIONS(4305), [sym_debug] = ACTIONS(4305), [sym_deprecated] = ACTIONS(4305), [sym_else] = ACTIONS(4305), [sym_enum] = ACTIONS(4305), [sym_export] = ACTIONS(4305), [sym_extern] = ACTIONS(4305), [sym_final] = ACTIONS(4305), [sym_immutable] = ACTIONS(4305), [sym_import] = ACTIONS(4305), [sym_inout] = ACTIONS(4305), [sym_interface] = ACTIONS(4305), [sym_invariant] = ACTIONS(4305), [sym_mixin] = ACTIONS(4305), [sym_nothrow] = ACTIONS(4305), [sym_override] = ACTIONS(4305), [sym_package] = ACTIONS(4305), [sym_pragma] = ACTIONS(4305), [sym_private] = ACTIONS(4305), [sym_protected] = ACTIONS(4305), [sym_public] = ACTIONS(4305), [sym_pure] = ACTIONS(4305), [sym_ref] = ACTIONS(4305), [sym_return] = ACTIONS(4305), [sym_scope] = ACTIONS(4305), [sym_shared] = ACTIONS(4305), [sym_static] = ACTIONS(4305), [sym_struct] = ACTIONS(4305), [sym_synchronized] = ACTIONS(4305), [sym_template] = ACTIONS(4305), [sym_typeof] = ACTIONS(4305), [sym_union] = ACTIONS(4305), [sym_unittest] = ACTIONS(4305), [sym_version] = ACTIONS(4305), [sym_while] = ACTIONS(4305), [sym_gshared] = ACTIONS(4305), [sym_traits] = ACTIONS(4305), [sym_vector] = ACTIONS(4305), [sym_void] = ACTIONS(4305), [sym_directive] = ACTIONS(3), }, [2739] = { [ts_builtin_sym_end] = ACTIONS(2796), [sym_identifier] = ACTIONS(2798), [sym_end_file] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [sym_directive] = ACTIONS(3), }, [2740] = { [ts_builtin_sym_end] = ACTIONS(4760), [sym_identifier] = ACTIONS(4758), [sym_end_file] = ACTIONS(4758), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4760), [anon_sym_SEMI] = ACTIONS(4760), [anon_sym_TILDE] = ACTIONS(4760), [anon_sym_AT] = ACTIONS(4760), [sym_bool] = ACTIONS(4758), [sym_byte] = ACTIONS(4758), [sym_ubyte] = ACTIONS(4758), [sym_char] = ACTIONS(4758), [sym_short] = ACTIONS(4758), [sym_ushort] = ACTIONS(4758), [sym_int] = ACTIONS(4758), [sym_uint] = ACTIONS(4758), [sym_long] = ACTIONS(4758), [sym_ulong] = ACTIONS(4758), [sym_cent] = ACTIONS(4758), [sym_ucent] = ACTIONS(4758), [sym_wchar] = ACTIONS(4758), [sym_dchar] = ACTIONS(4758), [sym_float] = ACTIONS(4758), [sym_double] = ACTIONS(4758), [sym_real] = ACTIONS(4758), [sym_ifloat] = ACTIONS(4758), [sym_idouble] = ACTIONS(4758), [sym_ireal] = ACTIONS(4758), [sym_cfloat] = ACTIONS(4758), [sym_cdouble] = ACTIONS(4758), [sym_creal] = ACTIONS(4758), [sym_size_t] = ACTIONS(4758), [sym_ptrdiff_t] = ACTIONS(4758), [sym_string] = ACTIONS(4758), [sym_cstring] = ACTIONS(4758), [sym_dstring] = ACTIONS(4758), [sym_wstring] = ACTIONS(4758), [sym_noreturn] = ACTIONS(4758), [sym_this] = ACTIONS(4758), [sym_abstract] = ACTIONS(4758), [sym_alias] = ACTIONS(4758), [sym_align] = ACTIONS(4758), [sym_auto] = ACTIONS(4758), [sym_class] = ACTIONS(4758), [sym_const] = ACTIONS(4758), [sym_debug] = ACTIONS(4758), [sym_deprecated] = ACTIONS(4758), [sym_else] = ACTIONS(4758), [sym_enum] = ACTIONS(4758), [sym_export] = ACTIONS(4758), [sym_extern] = ACTIONS(4758), [sym_final] = ACTIONS(4758), [sym_immutable] = ACTIONS(4758), [sym_import] = ACTIONS(4758), [sym_inout] = ACTIONS(4758), [sym_interface] = ACTIONS(4758), [sym_invariant] = ACTIONS(4758), [sym_mixin] = ACTIONS(4758), [sym_nothrow] = ACTIONS(4758), [sym_override] = ACTIONS(4758), [sym_package] = ACTIONS(4758), [sym_pragma] = ACTIONS(4758), [sym_private] = ACTIONS(4758), [sym_protected] = ACTIONS(4758), [sym_public] = ACTIONS(4758), [sym_pure] = ACTIONS(4758), [sym_ref] = ACTIONS(4758), [sym_return] = ACTIONS(4758), [sym_scope] = ACTIONS(4758), [sym_shared] = ACTIONS(4758), [sym_static] = ACTIONS(4758), [sym_struct] = ACTIONS(4758), [sym_synchronized] = ACTIONS(4758), [sym_template] = ACTIONS(4758), [sym_typeof] = ACTIONS(4758), [sym_union] = ACTIONS(4758), [sym_unittest] = ACTIONS(4758), [sym_version] = ACTIONS(4758), [sym_while] = ACTIONS(4758), [sym_gshared] = ACTIONS(4758), [sym_traits] = ACTIONS(4758), [sym_vector] = ACTIONS(4758), [sym_void] = ACTIONS(4758), [sym_directive] = ACTIONS(3), }, [2741] = { [ts_builtin_sym_end] = ACTIONS(4295), [sym_identifier] = ACTIONS(4293), [sym_end_file] = ACTIONS(4293), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4295), [anon_sym_SEMI] = ACTIONS(4295), [anon_sym_TILDE] = ACTIONS(4295), [anon_sym_AT] = ACTIONS(4295), [sym_bool] = ACTIONS(4293), [sym_byte] = ACTIONS(4293), [sym_ubyte] = ACTIONS(4293), [sym_char] = ACTIONS(4293), [sym_short] = ACTIONS(4293), [sym_ushort] = ACTIONS(4293), [sym_int] = ACTIONS(4293), [sym_uint] = ACTIONS(4293), [sym_long] = ACTIONS(4293), [sym_ulong] = ACTIONS(4293), [sym_cent] = ACTIONS(4293), [sym_ucent] = ACTIONS(4293), [sym_wchar] = ACTIONS(4293), [sym_dchar] = ACTIONS(4293), [sym_float] = ACTIONS(4293), [sym_double] = ACTIONS(4293), [sym_real] = ACTIONS(4293), [sym_ifloat] = ACTIONS(4293), [sym_idouble] = ACTIONS(4293), [sym_ireal] = ACTIONS(4293), [sym_cfloat] = ACTIONS(4293), [sym_cdouble] = ACTIONS(4293), [sym_creal] = ACTIONS(4293), [sym_size_t] = ACTIONS(4293), [sym_ptrdiff_t] = ACTIONS(4293), [sym_string] = ACTIONS(4293), [sym_cstring] = ACTIONS(4293), [sym_dstring] = ACTIONS(4293), [sym_wstring] = ACTIONS(4293), [sym_noreturn] = ACTIONS(4293), [sym_this] = ACTIONS(4293), [sym_abstract] = ACTIONS(4293), [sym_alias] = ACTIONS(4293), [sym_align] = ACTIONS(4293), [sym_auto] = ACTIONS(4293), [sym_class] = ACTIONS(4293), [sym_const] = ACTIONS(4293), [sym_debug] = ACTIONS(4293), [sym_deprecated] = ACTIONS(4293), [sym_else] = ACTIONS(4293), [sym_enum] = ACTIONS(4293), [sym_export] = ACTIONS(4293), [sym_extern] = ACTIONS(4293), [sym_final] = ACTIONS(4293), [sym_immutable] = ACTIONS(4293), [sym_import] = ACTIONS(4293), [sym_inout] = ACTIONS(4293), [sym_interface] = ACTIONS(4293), [sym_invariant] = ACTIONS(4293), [sym_mixin] = ACTIONS(4293), [sym_nothrow] = ACTIONS(4293), [sym_override] = ACTIONS(4293), [sym_package] = ACTIONS(4293), [sym_pragma] = ACTIONS(4293), [sym_private] = ACTIONS(4293), [sym_protected] = ACTIONS(4293), [sym_public] = ACTIONS(4293), [sym_pure] = ACTIONS(4293), [sym_ref] = ACTIONS(4293), [sym_return] = ACTIONS(4293), [sym_scope] = ACTIONS(4293), [sym_shared] = ACTIONS(4293), [sym_static] = ACTIONS(4293), [sym_struct] = ACTIONS(4293), [sym_synchronized] = ACTIONS(4293), [sym_template] = ACTIONS(4293), [sym_typeof] = ACTIONS(4293), [sym_union] = ACTIONS(4293), [sym_unittest] = ACTIONS(4293), [sym_version] = ACTIONS(4293), [sym_while] = ACTIONS(4293), [sym_gshared] = ACTIONS(4293), [sym_traits] = ACTIONS(4293), [sym_vector] = ACTIONS(4293), [sym_void] = ACTIONS(4293), [sym_directive] = ACTIONS(3), }, [2742] = { [ts_builtin_sym_end] = ACTIONS(4315), [sym_identifier] = ACTIONS(4313), [sym_end_file] = ACTIONS(4313), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4315), [anon_sym_SEMI] = ACTIONS(4315), [anon_sym_TILDE] = ACTIONS(4315), [anon_sym_AT] = ACTIONS(4315), [sym_bool] = ACTIONS(4313), [sym_byte] = ACTIONS(4313), [sym_ubyte] = ACTIONS(4313), [sym_char] = ACTIONS(4313), [sym_short] = ACTIONS(4313), [sym_ushort] = ACTIONS(4313), [sym_int] = ACTIONS(4313), [sym_uint] = ACTIONS(4313), [sym_long] = ACTIONS(4313), [sym_ulong] = ACTIONS(4313), [sym_cent] = ACTIONS(4313), [sym_ucent] = ACTIONS(4313), [sym_wchar] = ACTIONS(4313), [sym_dchar] = ACTIONS(4313), [sym_float] = ACTIONS(4313), [sym_double] = ACTIONS(4313), [sym_real] = ACTIONS(4313), [sym_ifloat] = ACTIONS(4313), [sym_idouble] = ACTIONS(4313), [sym_ireal] = ACTIONS(4313), [sym_cfloat] = ACTIONS(4313), [sym_cdouble] = ACTIONS(4313), [sym_creal] = ACTIONS(4313), [sym_size_t] = ACTIONS(4313), [sym_ptrdiff_t] = ACTIONS(4313), [sym_string] = ACTIONS(4313), [sym_cstring] = ACTIONS(4313), [sym_dstring] = ACTIONS(4313), [sym_wstring] = ACTIONS(4313), [sym_noreturn] = ACTIONS(4313), [sym_this] = ACTIONS(4313), [sym_abstract] = ACTIONS(4313), [sym_alias] = ACTIONS(4313), [sym_align] = ACTIONS(4313), [sym_auto] = ACTIONS(4313), [sym_class] = ACTIONS(4313), [sym_const] = ACTIONS(4313), [sym_debug] = ACTIONS(4313), [sym_deprecated] = ACTIONS(4313), [sym_else] = ACTIONS(4313), [sym_enum] = ACTIONS(4313), [sym_export] = ACTIONS(4313), [sym_extern] = ACTIONS(4313), [sym_final] = ACTIONS(4313), [sym_immutable] = ACTIONS(4313), [sym_import] = ACTIONS(4313), [sym_inout] = ACTIONS(4313), [sym_interface] = ACTIONS(4313), [sym_invariant] = ACTIONS(4313), [sym_mixin] = ACTIONS(4313), [sym_nothrow] = ACTIONS(4313), [sym_override] = ACTIONS(4313), [sym_package] = ACTIONS(4313), [sym_pragma] = ACTIONS(4313), [sym_private] = ACTIONS(4313), [sym_protected] = ACTIONS(4313), [sym_public] = ACTIONS(4313), [sym_pure] = ACTIONS(4313), [sym_ref] = ACTIONS(4313), [sym_return] = ACTIONS(4313), [sym_scope] = ACTIONS(4313), [sym_shared] = ACTIONS(4313), [sym_static] = ACTIONS(4313), [sym_struct] = ACTIONS(4313), [sym_synchronized] = ACTIONS(4313), [sym_template] = ACTIONS(4313), [sym_typeof] = ACTIONS(4313), [sym_union] = ACTIONS(4313), [sym_unittest] = ACTIONS(4313), [sym_version] = ACTIONS(4313), [sym_while] = ACTIONS(4313), [sym_gshared] = ACTIONS(4313), [sym_traits] = ACTIONS(4313), [sym_vector] = ACTIONS(4313), [sym_void] = ACTIONS(4313), [sym_directive] = ACTIONS(3), }, [2743] = { [ts_builtin_sym_end] = ACTIONS(4329), [sym_identifier] = ACTIONS(4327), [sym_end_file] = ACTIONS(4327), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4329), [anon_sym_SEMI] = ACTIONS(4329), [anon_sym_TILDE] = ACTIONS(4329), [anon_sym_AT] = ACTIONS(4329), [sym_bool] = ACTIONS(4327), [sym_byte] = ACTIONS(4327), [sym_ubyte] = ACTIONS(4327), [sym_char] = ACTIONS(4327), [sym_short] = ACTIONS(4327), [sym_ushort] = ACTIONS(4327), [sym_int] = ACTIONS(4327), [sym_uint] = ACTIONS(4327), [sym_long] = ACTIONS(4327), [sym_ulong] = ACTIONS(4327), [sym_cent] = ACTIONS(4327), [sym_ucent] = ACTIONS(4327), [sym_wchar] = ACTIONS(4327), [sym_dchar] = ACTIONS(4327), [sym_float] = ACTIONS(4327), [sym_double] = ACTIONS(4327), [sym_real] = ACTIONS(4327), [sym_ifloat] = ACTIONS(4327), [sym_idouble] = ACTIONS(4327), [sym_ireal] = ACTIONS(4327), [sym_cfloat] = ACTIONS(4327), [sym_cdouble] = ACTIONS(4327), [sym_creal] = ACTIONS(4327), [sym_size_t] = ACTIONS(4327), [sym_ptrdiff_t] = ACTIONS(4327), [sym_string] = ACTIONS(4327), [sym_cstring] = ACTIONS(4327), [sym_dstring] = ACTIONS(4327), [sym_wstring] = ACTIONS(4327), [sym_noreturn] = ACTIONS(4327), [sym_this] = ACTIONS(4327), [sym_abstract] = ACTIONS(4327), [sym_alias] = ACTIONS(4327), [sym_align] = ACTIONS(4327), [sym_auto] = ACTIONS(4327), [sym_class] = ACTIONS(4327), [sym_const] = ACTIONS(4327), [sym_debug] = ACTIONS(4327), [sym_deprecated] = ACTIONS(4327), [sym_else] = ACTIONS(4327), [sym_enum] = ACTIONS(4327), [sym_export] = ACTIONS(4327), [sym_extern] = ACTIONS(4327), [sym_final] = ACTIONS(4327), [sym_immutable] = ACTIONS(4327), [sym_import] = ACTIONS(4327), [sym_inout] = ACTIONS(4327), [sym_interface] = ACTIONS(4327), [sym_invariant] = ACTIONS(4327), [sym_mixin] = ACTIONS(4327), [sym_nothrow] = ACTIONS(4327), [sym_override] = ACTIONS(4327), [sym_package] = ACTIONS(4327), [sym_pragma] = ACTIONS(4327), [sym_private] = ACTIONS(4327), [sym_protected] = ACTIONS(4327), [sym_public] = ACTIONS(4327), [sym_pure] = ACTIONS(4327), [sym_ref] = ACTIONS(4327), [sym_return] = ACTIONS(4327), [sym_scope] = ACTIONS(4327), [sym_shared] = ACTIONS(4327), [sym_static] = ACTIONS(4327), [sym_struct] = ACTIONS(4327), [sym_synchronized] = ACTIONS(4327), [sym_template] = ACTIONS(4327), [sym_typeof] = ACTIONS(4327), [sym_union] = ACTIONS(4327), [sym_unittest] = ACTIONS(4327), [sym_version] = ACTIONS(4327), [sym_while] = ACTIONS(4327), [sym_gshared] = ACTIONS(4327), [sym_traits] = ACTIONS(4327), [sym_vector] = ACTIONS(4327), [sym_void] = ACTIONS(4327), [sym_directive] = ACTIONS(3), }, [2744] = { [ts_builtin_sym_end] = ACTIONS(4630), [sym_identifier] = ACTIONS(4628), [sym_end_file] = ACTIONS(4628), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4630), [anon_sym_SEMI] = ACTIONS(4630), [anon_sym_TILDE] = ACTIONS(4630), [anon_sym_AT] = ACTIONS(4630), [sym_bool] = ACTIONS(4628), [sym_byte] = ACTIONS(4628), [sym_ubyte] = ACTIONS(4628), [sym_char] = ACTIONS(4628), [sym_short] = ACTIONS(4628), [sym_ushort] = ACTIONS(4628), [sym_int] = ACTIONS(4628), [sym_uint] = ACTIONS(4628), [sym_long] = ACTIONS(4628), [sym_ulong] = ACTIONS(4628), [sym_cent] = ACTIONS(4628), [sym_ucent] = ACTIONS(4628), [sym_wchar] = ACTIONS(4628), [sym_dchar] = ACTIONS(4628), [sym_float] = ACTIONS(4628), [sym_double] = ACTIONS(4628), [sym_real] = ACTIONS(4628), [sym_ifloat] = ACTIONS(4628), [sym_idouble] = ACTIONS(4628), [sym_ireal] = ACTIONS(4628), [sym_cfloat] = ACTIONS(4628), [sym_cdouble] = ACTIONS(4628), [sym_creal] = ACTIONS(4628), [sym_size_t] = ACTIONS(4628), [sym_ptrdiff_t] = ACTIONS(4628), [sym_string] = ACTIONS(4628), [sym_cstring] = ACTIONS(4628), [sym_dstring] = ACTIONS(4628), [sym_wstring] = ACTIONS(4628), [sym_noreturn] = ACTIONS(4628), [sym_this] = ACTIONS(4628), [sym_abstract] = ACTIONS(4628), [sym_alias] = ACTIONS(4628), [sym_align] = ACTIONS(4628), [sym_auto] = ACTIONS(4628), [sym_class] = ACTIONS(4628), [sym_const] = ACTIONS(4628), [sym_debug] = ACTIONS(4628), [sym_deprecated] = ACTIONS(4628), [sym_else] = ACTIONS(4628), [sym_enum] = ACTIONS(4628), [sym_export] = ACTIONS(4628), [sym_extern] = ACTIONS(4628), [sym_final] = ACTIONS(4628), [sym_immutable] = ACTIONS(4628), [sym_import] = ACTIONS(4628), [sym_inout] = ACTIONS(4628), [sym_interface] = ACTIONS(4628), [sym_invariant] = ACTIONS(4628), [sym_mixin] = ACTIONS(4628), [sym_nothrow] = ACTIONS(4628), [sym_override] = ACTIONS(4628), [sym_package] = ACTIONS(4628), [sym_pragma] = ACTIONS(4628), [sym_private] = ACTIONS(4628), [sym_protected] = ACTIONS(4628), [sym_public] = ACTIONS(4628), [sym_pure] = ACTIONS(4628), [sym_ref] = ACTIONS(4628), [sym_return] = ACTIONS(4628), [sym_scope] = ACTIONS(4628), [sym_shared] = ACTIONS(4628), [sym_static] = ACTIONS(4628), [sym_struct] = ACTIONS(4628), [sym_synchronized] = ACTIONS(4628), [sym_template] = ACTIONS(4628), [sym_typeof] = ACTIONS(4628), [sym_union] = ACTIONS(4628), [sym_unittest] = ACTIONS(4628), [sym_version] = ACTIONS(4628), [sym_while] = ACTIONS(4628), [sym_gshared] = ACTIONS(4628), [sym_traits] = ACTIONS(4628), [sym_vector] = ACTIONS(4628), [sym_void] = ACTIONS(4628), [sym_directive] = ACTIONS(3), }, [2745] = { [ts_builtin_sym_end] = ACTIONS(4341), [sym_identifier] = ACTIONS(4339), [sym_end_file] = ACTIONS(4339), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4341), [anon_sym_SEMI] = ACTIONS(4341), [anon_sym_TILDE] = ACTIONS(4341), [anon_sym_AT] = ACTIONS(4341), [sym_bool] = ACTIONS(4339), [sym_byte] = ACTIONS(4339), [sym_ubyte] = ACTIONS(4339), [sym_char] = ACTIONS(4339), [sym_short] = ACTIONS(4339), [sym_ushort] = ACTIONS(4339), [sym_int] = ACTIONS(4339), [sym_uint] = ACTIONS(4339), [sym_long] = ACTIONS(4339), [sym_ulong] = ACTIONS(4339), [sym_cent] = ACTIONS(4339), [sym_ucent] = ACTIONS(4339), [sym_wchar] = ACTIONS(4339), [sym_dchar] = ACTIONS(4339), [sym_float] = ACTIONS(4339), [sym_double] = ACTIONS(4339), [sym_real] = ACTIONS(4339), [sym_ifloat] = ACTIONS(4339), [sym_idouble] = ACTIONS(4339), [sym_ireal] = ACTIONS(4339), [sym_cfloat] = ACTIONS(4339), [sym_cdouble] = ACTIONS(4339), [sym_creal] = ACTIONS(4339), [sym_size_t] = ACTIONS(4339), [sym_ptrdiff_t] = ACTIONS(4339), [sym_string] = ACTIONS(4339), [sym_cstring] = ACTIONS(4339), [sym_dstring] = ACTIONS(4339), [sym_wstring] = ACTIONS(4339), [sym_noreturn] = ACTIONS(4339), [sym_this] = ACTIONS(4339), [sym_abstract] = ACTIONS(4339), [sym_alias] = ACTIONS(4339), [sym_align] = ACTIONS(4339), [sym_auto] = ACTIONS(4339), [sym_class] = ACTIONS(4339), [sym_const] = ACTIONS(4339), [sym_debug] = ACTIONS(4339), [sym_deprecated] = ACTIONS(4339), [sym_else] = ACTIONS(4339), [sym_enum] = ACTIONS(4339), [sym_export] = ACTIONS(4339), [sym_extern] = ACTIONS(4339), [sym_final] = ACTIONS(4339), [sym_immutable] = ACTIONS(4339), [sym_import] = ACTIONS(4339), [sym_inout] = ACTIONS(4339), [sym_interface] = ACTIONS(4339), [sym_invariant] = ACTIONS(4339), [sym_mixin] = ACTIONS(4339), [sym_nothrow] = ACTIONS(4339), [sym_override] = ACTIONS(4339), [sym_package] = ACTIONS(4339), [sym_pragma] = ACTIONS(4339), [sym_private] = ACTIONS(4339), [sym_protected] = ACTIONS(4339), [sym_public] = ACTIONS(4339), [sym_pure] = ACTIONS(4339), [sym_ref] = ACTIONS(4339), [sym_return] = ACTIONS(4339), [sym_scope] = ACTIONS(4339), [sym_shared] = ACTIONS(4339), [sym_static] = ACTIONS(4339), [sym_struct] = ACTIONS(4339), [sym_synchronized] = ACTIONS(4339), [sym_template] = ACTIONS(4339), [sym_typeof] = ACTIONS(4339), [sym_union] = ACTIONS(4339), [sym_unittest] = ACTIONS(4339), [sym_version] = ACTIONS(4339), [sym_while] = ACTIONS(4339), [sym_gshared] = ACTIONS(4339), [sym_traits] = ACTIONS(4339), [sym_vector] = ACTIONS(4339), [sym_void] = ACTIONS(4339), [sym_directive] = ACTIONS(3), }, [2746] = { [ts_builtin_sym_end] = ACTIONS(4656), [sym_identifier] = ACTIONS(4654), [sym_end_file] = ACTIONS(4654), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4656), [anon_sym_SEMI] = ACTIONS(4656), [anon_sym_TILDE] = ACTIONS(4656), [anon_sym_AT] = ACTIONS(4656), [sym_bool] = ACTIONS(4654), [sym_byte] = ACTIONS(4654), [sym_ubyte] = ACTIONS(4654), [sym_char] = ACTIONS(4654), [sym_short] = ACTIONS(4654), [sym_ushort] = ACTIONS(4654), [sym_int] = ACTIONS(4654), [sym_uint] = ACTIONS(4654), [sym_long] = ACTIONS(4654), [sym_ulong] = ACTIONS(4654), [sym_cent] = ACTIONS(4654), [sym_ucent] = ACTIONS(4654), [sym_wchar] = ACTIONS(4654), [sym_dchar] = ACTIONS(4654), [sym_float] = ACTIONS(4654), [sym_double] = ACTIONS(4654), [sym_real] = ACTIONS(4654), [sym_ifloat] = ACTIONS(4654), [sym_idouble] = ACTIONS(4654), [sym_ireal] = ACTIONS(4654), [sym_cfloat] = ACTIONS(4654), [sym_cdouble] = ACTIONS(4654), [sym_creal] = ACTIONS(4654), [sym_size_t] = ACTIONS(4654), [sym_ptrdiff_t] = ACTIONS(4654), [sym_string] = ACTIONS(4654), [sym_cstring] = ACTIONS(4654), [sym_dstring] = ACTIONS(4654), [sym_wstring] = ACTIONS(4654), [sym_noreturn] = ACTIONS(4654), [sym_this] = ACTIONS(4654), [sym_abstract] = ACTIONS(4654), [sym_alias] = ACTIONS(4654), [sym_align] = ACTIONS(4654), [sym_auto] = ACTIONS(4654), [sym_class] = ACTIONS(4654), [sym_const] = ACTIONS(4654), [sym_debug] = ACTIONS(4654), [sym_deprecated] = ACTIONS(4654), [sym_else] = ACTIONS(4654), [sym_enum] = ACTIONS(4654), [sym_export] = ACTIONS(4654), [sym_extern] = ACTIONS(4654), [sym_final] = ACTIONS(4654), [sym_immutable] = ACTIONS(4654), [sym_import] = ACTIONS(4654), [sym_inout] = ACTIONS(4654), [sym_interface] = ACTIONS(4654), [sym_invariant] = ACTIONS(4654), [sym_mixin] = ACTIONS(4654), [sym_nothrow] = ACTIONS(4654), [sym_override] = ACTIONS(4654), [sym_package] = ACTIONS(4654), [sym_pragma] = ACTIONS(4654), [sym_private] = ACTIONS(4654), [sym_protected] = ACTIONS(4654), [sym_public] = ACTIONS(4654), [sym_pure] = ACTIONS(4654), [sym_ref] = ACTIONS(4654), [sym_return] = ACTIONS(4654), [sym_scope] = ACTIONS(4654), [sym_shared] = ACTIONS(4654), [sym_static] = ACTIONS(4654), [sym_struct] = ACTIONS(4654), [sym_synchronized] = ACTIONS(4654), [sym_template] = ACTIONS(4654), [sym_typeof] = ACTIONS(4654), [sym_union] = ACTIONS(4654), [sym_unittest] = ACTIONS(4654), [sym_version] = ACTIONS(4654), [sym_while] = ACTIONS(4654), [sym_gshared] = ACTIONS(4654), [sym_traits] = ACTIONS(4654), [sym_vector] = ACTIONS(4654), [sym_void] = ACTIONS(4654), [sym_directive] = ACTIONS(3), }, [2747] = { [ts_builtin_sym_end] = ACTIONS(4768), [sym_identifier] = ACTIONS(4766), [sym_end_file] = ACTIONS(4766), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4768), [anon_sym_SEMI] = ACTIONS(4768), [anon_sym_TILDE] = ACTIONS(4768), [anon_sym_AT] = ACTIONS(4768), [sym_bool] = ACTIONS(4766), [sym_byte] = ACTIONS(4766), [sym_ubyte] = ACTIONS(4766), [sym_char] = ACTIONS(4766), [sym_short] = ACTIONS(4766), [sym_ushort] = ACTIONS(4766), [sym_int] = ACTIONS(4766), [sym_uint] = ACTIONS(4766), [sym_long] = ACTIONS(4766), [sym_ulong] = ACTIONS(4766), [sym_cent] = ACTIONS(4766), [sym_ucent] = ACTIONS(4766), [sym_wchar] = ACTIONS(4766), [sym_dchar] = ACTIONS(4766), [sym_float] = ACTIONS(4766), [sym_double] = ACTIONS(4766), [sym_real] = ACTIONS(4766), [sym_ifloat] = ACTIONS(4766), [sym_idouble] = ACTIONS(4766), [sym_ireal] = ACTIONS(4766), [sym_cfloat] = ACTIONS(4766), [sym_cdouble] = ACTIONS(4766), [sym_creal] = ACTIONS(4766), [sym_size_t] = ACTIONS(4766), [sym_ptrdiff_t] = ACTIONS(4766), [sym_string] = ACTIONS(4766), [sym_cstring] = ACTIONS(4766), [sym_dstring] = ACTIONS(4766), [sym_wstring] = ACTIONS(4766), [sym_noreturn] = ACTIONS(4766), [sym_this] = ACTIONS(4766), [sym_abstract] = ACTIONS(4766), [sym_alias] = ACTIONS(4766), [sym_align] = ACTIONS(4766), [sym_auto] = ACTIONS(4766), [sym_class] = ACTIONS(4766), [sym_const] = ACTIONS(4766), [sym_debug] = ACTIONS(4766), [sym_deprecated] = ACTIONS(4766), [sym_else] = ACTIONS(4766), [sym_enum] = ACTIONS(4766), [sym_export] = ACTIONS(4766), [sym_extern] = ACTIONS(4766), [sym_final] = ACTIONS(4766), [sym_immutable] = ACTIONS(4766), [sym_import] = ACTIONS(4766), [sym_inout] = ACTIONS(4766), [sym_interface] = ACTIONS(4766), [sym_invariant] = ACTIONS(4766), [sym_mixin] = ACTIONS(4766), [sym_nothrow] = ACTIONS(4766), [sym_override] = ACTIONS(4766), [sym_package] = ACTIONS(4766), [sym_pragma] = ACTIONS(4766), [sym_private] = ACTIONS(4766), [sym_protected] = ACTIONS(4766), [sym_public] = ACTIONS(4766), [sym_pure] = ACTIONS(4766), [sym_ref] = ACTIONS(4766), [sym_return] = ACTIONS(4766), [sym_scope] = ACTIONS(4766), [sym_shared] = ACTIONS(4766), [sym_static] = ACTIONS(4766), [sym_struct] = ACTIONS(4766), [sym_synchronized] = ACTIONS(4766), [sym_template] = ACTIONS(4766), [sym_typeof] = ACTIONS(4766), [sym_union] = ACTIONS(4766), [sym_unittest] = ACTIONS(4766), [sym_version] = ACTIONS(4766), [sym_while] = ACTIONS(4766), [sym_gshared] = ACTIONS(4766), [sym_traits] = ACTIONS(4766), [sym_vector] = ACTIONS(4766), [sym_void] = ACTIONS(4766), [sym_directive] = ACTIONS(3), }, [2748] = { [ts_builtin_sym_end] = ACTIONS(4311), [sym_identifier] = ACTIONS(4309), [sym_end_file] = ACTIONS(4309), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4311), [anon_sym_SEMI] = ACTIONS(4311), [anon_sym_TILDE] = ACTIONS(4311), [anon_sym_AT] = ACTIONS(4311), [sym_bool] = ACTIONS(4309), [sym_byte] = ACTIONS(4309), [sym_ubyte] = ACTIONS(4309), [sym_char] = ACTIONS(4309), [sym_short] = ACTIONS(4309), [sym_ushort] = ACTIONS(4309), [sym_int] = ACTIONS(4309), [sym_uint] = ACTIONS(4309), [sym_long] = ACTIONS(4309), [sym_ulong] = ACTIONS(4309), [sym_cent] = ACTIONS(4309), [sym_ucent] = ACTIONS(4309), [sym_wchar] = ACTIONS(4309), [sym_dchar] = ACTIONS(4309), [sym_float] = ACTIONS(4309), [sym_double] = ACTIONS(4309), [sym_real] = ACTIONS(4309), [sym_ifloat] = ACTIONS(4309), [sym_idouble] = ACTIONS(4309), [sym_ireal] = ACTIONS(4309), [sym_cfloat] = ACTIONS(4309), [sym_cdouble] = ACTIONS(4309), [sym_creal] = ACTIONS(4309), [sym_size_t] = ACTIONS(4309), [sym_ptrdiff_t] = ACTIONS(4309), [sym_string] = ACTIONS(4309), [sym_cstring] = ACTIONS(4309), [sym_dstring] = ACTIONS(4309), [sym_wstring] = ACTIONS(4309), [sym_noreturn] = ACTIONS(4309), [sym_this] = ACTIONS(4309), [sym_abstract] = ACTIONS(4309), [sym_alias] = ACTIONS(4309), [sym_align] = ACTIONS(4309), [sym_auto] = ACTIONS(4309), [sym_class] = ACTIONS(4309), [sym_const] = ACTIONS(4309), [sym_debug] = ACTIONS(4309), [sym_deprecated] = ACTIONS(4309), [sym_else] = ACTIONS(4309), [sym_enum] = ACTIONS(4309), [sym_export] = ACTIONS(4309), [sym_extern] = ACTIONS(4309), [sym_final] = ACTIONS(4309), [sym_immutable] = ACTIONS(4309), [sym_import] = ACTIONS(4309), [sym_inout] = ACTIONS(4309), [sym_interface] = ACTIONS(4309), [sym_invariant] = ACTIONS(4309), [sym_mixin] = ACTIONS(4309), [sym_nothrow] = ACTIONS(4309), [sym_override] = ACTIONS(4309), [sym_package] = ACTIONS(4309), [sym_pragma] = ACTIONS(4309), [sym_private] = ACTIONS(4309), [sym_protected] = ACTIONS(4309), [sym_public] = ACTIONS(4309), [sym_pure] = ACTIONS(4309), [sym_ref] = ACTIONS(4309), [sym_return] = ACTIONS(4309), [sym_scope] = ACTIONS(4309), [sym_shared] = ACTIONS(4309), [sym_static] = ACTIONS(4309), [sym_struct] = ACTIONS(4309), [sym_synchronized] = ACTIONS(4309), [sym_template] = ACTIONS(4309), [sym_typeof] = ACTIONS(4309), [sym_union] = ACTIONS(4309), [sym_unittest] = ACTIONS(4309), [sym_version] = ACTIONS(4309), [sym_while] = ACTIONS(4309), [sym_gshared] = ACTIONS(4309), [sym_traits] = ACTIONS(4309), [sym_vector] = ACTIONS(4309), [sym_void] = ACTIONS(4309), [sym_directive] = ACTIONS(3), }, [2749] = { [ts_builtin_sym_end] = ACTIONS(4772), [sym_identifier] = ACTIONS(4770), [sym_end_file] = ACTIONS(4770), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4772), [anon_sym_SEMI] = ACTIONS(4772), [anon_sym_TILDE] = ACTIONS(4772), [anon_sym_AT] = ACTIONS(4772), [sym_bool] = ACTIONS(4770), [sym_byte] = ACTIONS(4770), [sym_ubyte] = ACTIONS(4770), [sym_char] = ACTIONS(4770), [sym_short] = ACTIONS(4770), [sym_ushort] = ACTIONS(4770), [sym_int] = ACTIONS(4770), [sym_uint] = ACTIONS(4770), [sym_long] = ACTIONS(4770), [sym_ulong] = ACTIONS(4770), [sym_cent] = ACTIONS(4770), [sym_ucent] = ACTIONS(4770), [sym_wchar] = ACTIONS(4770), [sym_dchar] = ACTIONS(4770), [sym_float] = ACTIONS(4770), [sym_double] = ACTIONS(4770), [sym_real] = ACTIONS(4770), [sym_ifloat] = ACTIONS(4770), [sym_idouble] = ACTIONS(4770), [sym_ireal] = ACTIONS(4770), [sym_cfloat] = ACTIONS(4770), [sym_cdouble] = ACTIONS(4770), [sym_creal] = ACTIONS(4770), [sym_size_t] = ACTIONS(4770), [sym_ptrdiff_t] = ACTIONS(4770), [sym_string] = ACTIONS(4770), [sym_cstring] = ACTIONS(4770), [sym_dstring] = ACTIONS(4770), [sym_wstring] = ACTIONS(4770), [sym_noreturn] = ACTIONS(4770), [sym_this] = ACTIONS(4770), [sym_abstract] = ACTIONS(4770), [sym_alias] = ACTIONS(4770), [sym_align] = ACTIONS(4770), [sym_auto] = ACTIONS(4770), [sym_class] = ACTIONS(4770), [sym_const] = ACTIONS(4770), [sym_debug] = ACTIONS(4770), [sym_deprecated] = ACTIONS(4770), [sym_else] = ACTIONS(4770), [sym_enum] = ACTIONS(4770), [sym_export] = ACTIONS(4770), [sym_extern] = ACTIONS(4770), [sym_final] = ACTIONS(4770), [sym_immutable] = ACTIONS(4770), [sym_import] = ACTIONS(4770), [sym_inout] = ACTIONS(4770), [sym_interface] = ACTIONS(4770), [sym_invariant] = ACTIONS(4770), [sym_mixin] = ACTIONS(4770), [sym_nothrow] = ACTIONS(4770), [sym_override] = ACTIONS(4770), [sym_package] = ACTIONS(4770), [sym_pragma] = ACTIONS(4770), [sym_private] = ACTIONS(4770), [sym_protected] = ACTIONS(4770), [sym_public] = ACTIONS(4770), [sym_pure] = ACTIONS(4770), [sym_ref] = ACTIONS(4770), [sym_return] = ACTIONS(4770), [sym_scope] = ACTIONS(4770), [sym_shared] = ACTIONS(4770), [sym_static] = ACTIONS(4770), [sym_struct] = ACTIONS(4770), [sym_synchronized] = ACTIONS(4770), [sym_template] = ACTIONS(4770), [sym_typeof] = ACTIONS(4770), [sym_union] = ACTIONS(4770), [sym_unittest] = ACTIONS(4770), [sym_version] = ACTIONS(4770), [sym_while] = ACTIONS(4770), [sym_gshared] = ACTIONS(4770), [sym_traits] = ACTIONS(4770), [sym_vector] = ACTIONS(4770), [sym_void] = ACTIONS(4770), [sym_directive] = ACTIONS(3), }, [2750] = { [ts_builtin_sym_end] = ACTIONS(4416), [sym_identifier] = ACTIONS(4414), [sym_end_file] = ACTIONS(4414), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4416), [anon_sym_SEMI] = ACTIONS(4416), [anon_sym_TILDE] = ACTIONS(4416), [anon_sym_AT] = ACTIONS(4416), [sym_bool] = ACTIONS(4414), [sym_byte] = ACTIONS(4414), [sym_ubyte] = ACTIONS(4414), [sym_char] = ACTIONS(4414), [sym_short] = ACTIONS(4414), [sym_ushort] = ACTIONS(4414), [sym_int] = ACTIONS(4414), [sym_uint] = ACTIONS(4414), [sym_long] = ACTIONS(4414), [sym_ulong] = ACTIONS(4414), [sym_cent] = ACTIONS(4414), [sym_ucent] = ACTIONS(4414), [sym_wchar] = ACTIONS(4414), [sym_dchar] = ACTIONS(4414), [sym_float] = ACTIONS(4414), [sym_double] = ACTIONS(4414), [sym_real] = ACTIONS(4414), [sym_ifloat] = ACTIONS(4414), [sym_idouble] = ACTIONS(4414), [sym_ireal] = ACTIONS(4414), [sym_cfloat] = ACTIONS(4414), [sym_cdouble] = ACTIONS(4414), [sym_creal] = ACTIONS(4414), [sym_size_t] = ACTIONS(4414), [sym_ptrdiff_t] = ACTIONS(4414), [sym_string] = ACTIONS(4414), [sym_cstring] = ACTIONS(4414), [sym_dstring] = ACTIONS(4414), [sym_wstring] = ACTIONS(4414), [sym_noreturn] = ACTIONS(4414), [sym_this] = ACTIONS(4414), [sym_abstract] = ACTIONS(4414), [sym_alias] = ACTIONS(4414), [sym_align] = ACTIONS(4414), [sym_auto] = ACTIONS(4414), [sym_class] = ACTIONS(4414), [sym_const] = ACTIONS(4414), [sym_debug] = ACTIONS(4414), [sym_deprecated] = ACTIONS(4414), [sym_else] = ACTIONS(4414), [sym_enum] = ACTIONS(4414), [sym_export] = ACTIONS(4414), [sym_extern] = ACTIONS(4414), [sym_final] = ACTIONS(4414), [sym_immutable] = ACTIONS(4414), [sym_import] = ACTIONS(4414), [sym_inout] = ACTIONS(4414), [sym_interface] = ACTIONS(4414), [sym_invariant] = ACTIONS(4414), [sym_mixin] = ACTIONS(4414), [sym_nothrow] = ACTIONS(4414), [sym_override] = ACTIONS(4414), [sym_package] = ACTIONS(4414), [sym_pragma] = ACTIONS(4414), [sym_private] = ACTIONS(4414), [sym_protected] = ACTIONS(4414), [sym_public] = ACTIONS(4414), [sym_pure] = ACTIONS(4414), [sym_ref] = ACTIONS(4414), [sym_return] = ACTIONS(4414), [sym_scope] = ACTIONS(4414), [sym_shared] = ACTIONS(4414), [sym_static] = ACTIONS(4414), [sym_struct] = ACTIONS(4414), [sym_synchronized] = ACTIONS(4414), [sym_template] = ACTIONS(4414), [sym_typeof] = ACTIONS(4414), [sym_union] = ACTIONS(4414), [sym_unittest] = ACTIONS(4414), [sym_version] = ACTIONS(4414), [sym_while] = ACTIONS(4414), [sym_gshared] = ACTIONS(4414), [sym_traits] = ACTIONS(4414), [sym_vector] = ACTIONS(4414), [sym_void] = ACTIONS(4414), [sym_directive] = ACTIONS(3), }, [2751] = { [ts_builtin_sym_end] = ACTIONS(4420), [sym_identifier] = ACTIONS(4418), [sym_end_file] = ACTIONS(4418), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4420), [anon_sym_SEMI] = ACTIONS(4420), [anon_sym_TILDE] = ACTIONS(4420), [anon_sym_AT] = ACTIONS(4420), [sym_bool] = ACTIONS(4418), [sym_byte] = ACTIONS(4418), [sym_ubyte] = ACTIONS(4418), [sym_char] = ACTIONS(4418), [sym_short] = ACTIONS(4418), [sym_ushort] = ACTIONS(4418), [sym_int] = ACTIONS(4418), [sym_uint] = ACTIONS(4418), [sym_long] = ACTIONS(4418), [sym_ulong] = ACTIONS(4418), [sym_cent] = ACTIONS(4418), [sym_ucent] = ACTIONS(4418), [sym_wchar] = ACTIONS(4418), [sym_dchar] = ACTIONS(4418), [sym_float] = ACTIONS(4418), [sym_double] = ACTIONS(4418), [sym_real] = ACTIONS(4418), [sym_ifloat] = ACTIONS(4418), [sym_idouble] = ACTIONS(4418), [sym_ireal] = ACTIONS(4418), [sym_cfloat] = ACTIONS(4418), [sym_cdouble] = ACTIONS(4418), [sym_creal] = ACTIONS(4418), [sym_size_t] = ACTIONS(4418), [sym_ptrdiff_t] = ACTIONS(4418), [sym_string] = ACTIONS(4418), [sym_cstring] = ACTIONS(4418), [sym_dstring] = ACTIONS(4418), [sym_wstring] = ACTIONS(4418), [sym_noreturn] = ACTIONS(4418), [sym_this] = ACTIONS(4418), [sym_abstract] = ACTIONS(4418), [sym_alias] = ACTIONS(4418), [sym_align] = ACTIONS(4418), [sym_auto] = ACTIONS(4418), [sym_class] = ACTIONS(4418), [sym_const] = ACTIONS(4418), [sym_debug] = ACTIONS(4418), [sym_deprecated] = ACTIONS(4418), [sym_else] = ACTIONS(4418), [sym_enum] = ACTIONS(4418), [sym_export] = ACTIONS(4418), [sym_extern] = ACTIONS(4418), [sym_final] = ACTIONS(4418), [sym_immutable] = ACTIONS(4418), [sym_import] = ACTIONS(4418), [sym_inout] = ACTIONS(4418), [sym_interface] = ACTIONS(4418), [sym_invariant] = ACTIONS(4418), [sym_mixin] = ACTIONS(4418), [sym_nothrow] = ACTIONS(4418), [sym_override] = ACTIONS(4418), [sym_package] = ACTIONS(4418), [sym_pragma] = ACTIONS(4418), [sym_private] = ACTIONS(4418), [sym_protected] = ACTIONS(4418), [sym_public] = ACTIONS(4418), [sym_pure] = ACTIONS(4418), [sym_ref] = ACTIONS(4418), [sym_return] = ACTIONS(4418), [sym_scope] = ACTIONS(4418), [sym_shared] = ACTIONS(4418), [sym_static] = ACTIONS(4418), [sym_struct] = ACTIONS(4418), [sym_synchronized] = ACTIONS(4418), [sym_template] = ACTIONS(4418), [sym_typeof] = ACTIONS(4418), [sym_union] = ACTIONS(4418), [sym_unittest] = ACTIONS(4418), [sym_version] = ACTIONS(4418), [sym_while] = ACTIONS(4418), [sym_gshared] = ACTIONS(4418), [sym_traits] = ACTIONS(4418), [sym_vector] = ACTIONS(4418), [sym_void] = ACTIONS(4418), [sym_directive] = ACTIONS(3), }, [2752] = { [ts_builtin_sym_end] = ACTIONS(4626), [sym_identifier] = ACTIONS(4624), [sym_end_file] = ACTIONS(4624), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4626), [anon_sym_SEMI] = ACTIONS(4626), [anon_sym_TILDE] = ACTIONS(4626), [anon_sym_AT] = ACTIONS(4626), [sym_bool] = ACTIONS(4624), [sym_byte] = ACTIONS(4624), [sym_ubyte] = ACTIONS(4624), [sym_char] = ACTIONS(4624), [sym_short] = ACTIONS(4624), [sym_ushort] = ACTIONS(4624), [sym_int] = ACTIONS(4624), [sym_uint] = ACTIONS(4624), [sym_long] = ACTIONS(4624), [sym_ulong] = ACTIONS(4624), [sym_cent] = ACTIONS(4624), [sym_ucent] = ACTIONS(4624), [sym_wchar] = ACTIONS(4624), [sym_dchar] = ACTIONS(4624), [sym_float] = ACTIONS(4624), [sym_double] = ACTIONS(4624), [sym_real] = ACTIONS(4624), [sym_ifloat] = ACTIONS(4624), [sym_idouble] = ACTIONS(4624), [sym_ireal] = ACTIONS(4624), [sym_cfloat] = ACTIONS(4624), [sym_cdouble] = ACTIONS(4624), [sym_creal] = ACTIONS(4624), [sym_size_t] = ACTIONS(4624), [sym_ptrdiff_t] = ACTIONS(4624), [sym_string] = ACTIONS(4624), [sym_cstring] = ACTIONS(4624), [sym_dstring] = ACTIONS(4624), [sym_wstring] = ACTIONS(4624), [sym_noreturn] = ACTIONS(4624), [sym_this] = ACTIONS(4624), [sym_abstract] = ACTIONS(4624), [sym_alias] = ACTIONS(4624), [sym_align] = ACTIONS(4624), [sym_auto] = ACTIONS(4624), [sym_class] = ACTIONS(4624), [sym_const] = ACTIONS(4624), [sym_debug] = ACTIONS(4624), [sym_deprecated] = ACTIONS(4624), [sym_else] = ACTIONS(4624), [sym_enum] = ACTIONS(4624), [sym_export] = ACTIONS(4624), [sym_extern] = ACTIONS(4624), [sym_final] = ACTIONS(4624), [sym_immutable] = ACTIONS(4624), [sym_import] = ACTIONS(4624), [sym_inout] = ACTIONS(4624), [sym_interface] = ACTIONS(4624), [sym_invariant] = ACTIONS(4624), [sym_mixin] = ACTIONS(4624), [sym_nothrow] = ACTIONS(4624), [sym_override] = ACTIONS(4624), [sym_package] = ACTIONS(4624), [sym_pragma] = ACTIONS(4624), [sym_private] = ACTIONS(4624), [sym_protected] = ACTIONS(4624), [sym_public] = ACTIONS(4624), [sym_pure] = ACTIONS(4624), [sym_ref] = ACTIONS(4624), [sym_return] = ACTIONS(4624), [sym_scope] = ACTIONS(4624), [sym_shared] = ACTIONS(4624), [sym_static] = ACTIONS(4624), [sym_struct] = ACTIONS(4624), [sym_synchronized] = ACTIONS(4624), [sym_template] = ACTIONS(4624), [sym_typeof] = ACTIONS(4624), [sym_union] = ACTIONS(4624), [sym_unittest] = ACTIONS(4624), [sym_version] = ACTIONS(4624), [sym_while] = ACTIONS(4624), [sym_gshared] = ACTIONS(4624), [sym_traits] = ACTIONS(4624), [sym_vector] = ACTIONS(4624), [sym_void] = ACTIONS(4624), [sym_directive] = ACTIONS(3), }, [2753] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_else] = ACTIONS(6797), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [sym_directive] = ACTIONS(3), }, [2754] = { [sym_identifier] = ACTIONS(4694), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4696), [anon_sym_DOT] = ACTIONS(4696), [anon_sym_SEMI] = ACTIONS(4696), [anon_sym_TILDE] = ACTIONS(4696), [anon_sym_AT] = ACTIONS(4696), [sym_bool] = ACTIONS(4694), [sym_byte] = ACTIONS(4694), [sym_ubyte] = ACTIONS(4694), [sym_char] = ACTIONS(4694), [sym_short] = ACTIONS(4694), [sym_ushort] = ACTIONS(4694), [sym_int] = ACTIONS(4694), [sym_uint] = ACTIONS(4694), [sym_long] = ACTIONS(4694), [sym_ulong] = ACTIONS(4694), [sym_cent] = ACTIONS(4694), [sym_ucent] = ACTIONS(4694), [sym_wchar] = ACTIONS(4694), [sym_dchar] = ACTIONS(4694), [sym_float] = ACTIONS(4694), [sym_double] = ACTIONS(4694), [sym_real] = ACTIONS(4694), [sym_ifloat] = ACTIONS(4694), [sym_idouble] = ACTIONS(4694), [sym_ireal] = ACTIONS(4694), [sym_cfloat] = ACTIONS(4694), [sym_cdouble] = ACTIONS(4694), [sym_creal] = ACTIONS(4694), [sym_size_t] = ACTIONS(4694), [sym_ptrdiff_t] = ACTIONS(4694), [sym_string] = ACTIONS(4694), [sym_cstring] = ACTIONS(4694), [sym_dstring] = ACTIONS(4694), [sym_wstring] = ACTIONS(4694), [sym_noreturn] = ACTIONS(4694), [sym_this] = ACTIONS(4694), [sym_abstract] = ACTIONS(4694), [sym_alias] = ACTIONS(4694), [sym_align] = ACTIONS(4694), [sym_auto] = ACTIONS(4694), [sym_class] = ACTIONS(4694), [sym_const] = ACTIONS(4694), [sym_debug] = ACTIONS(4694), [sym_deprecated] = ACTIONS(4694), [sym_else] = ACTIONS(4694), [sym_enum] = ACTIONS(4694), [sym_export] = ACTIONS(4694), [sym_extern] = ACTIONS(4694), [sym_final] = ACTIONS(4694), [sym_immutable] = ACTIONS(4694), [sym_import] = ACTIONS(4694), [sym_inout] = ACTIONS(4694), [sym_interface] = ACTIONS(4694), [sym_invariant] = ACTIONS(4694), [sym_mixin] = ACTIONS(4694), [sym_nothrow] = ACTIONS(4694), [sym_override] = ACTIONS(4694), [sym_package] = ACTIONS(4694), [sym_pragma] = ACTIONS(4694), [sym_private] = ACTIONS(4694), [sym_protected] = ACTIONS(4694), [sym_public] = ACTIONS(4694), [sym_pure] = ACTIONS(4694), [sym_ref] = ACTIONS(4694), [sym_return] = ACTIONS(4694), [sym_scope] = ACTIONS(4694), [sym_shared] = ACTIONS(4694), [sym_static] = ACTIONS(4694), [sym_struct] = ACTIONS(4694), [sym_synchronized] = ACTIONS(4694), [sym_template] = ACTIONS(4694), [sym_typeof] = ACTIONS(4694), [sym_union] = ACTIONS(4694), [sym_unittest] = ACTIONS(4694), [sym_version] = ACTIONS(4694), [sym_while] = ACTIONS(4694), [sym_gshared] = ACTIONS(4694), [sym_traits] = ACTIONS(4694), [sym_vector] = ACTIONS(4694), [sym_void] = ACTIONS(4694), [sym_directive] = ACTIONS(3), }, [2755] = { [sym_identifier] = ACTIONS(4524), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4526), [anon_sym_DOT] = ACTIONS(4526), [anon_sym_SEMI] = ACTIONS(4526), [anon_sym_TILDE] = ACTIONS(4526), [anon_sym_AT] = ACTIONS(4526), [sym_bool] = ACTIONS(4524), [sym_byte] = ACTIONS(4524), [sym_ubyte] = ACTIONS(4524), [sym_char] = ACTIONS(4524), [sym_short] = ACTIONS(4524), [sym_ushort] = ACTIONS(4524), [sym_int] = ACTIONS(4524), [sym_uint] = ACTIONS(4524), [sym_long] = ACTIONS(4524), [sym_ulong] = ACTIONS(4524), [sym_cent] = ACTIONS(4524), [sym_ucent] = ACTIONS(4524), [sym_wchar] = ACTIONS(4524), [sym_dchar] = ACTIONS(4524), [sym_float] = ACTIONS(4524), [sym_double] = ACTIONS(4524), [sym_real] = ACTIONS(4524), [sym_ifloat] = ACTIONS(4524), [sym_idouble] = ACTIONS(4524), [sym_ireal] = ACTIONS(4524), [sym_cfloat] = ACTIONS(4524), [sym_cdouble] = ACTIONS(4524), [sym_creal] = ACTIONS(4524), [sym_size_t] = ACTIONS(4524), [sym_ptrdiff_t] = ACTIONS(4524), [sym_string] = ACTIONS(4524), [sym_cstring] = ACTIONS(4524), [sym_dstring] = ACTIONS(4524), [sym_wstring] = ACTIONS(4524), [sym_noreturn] = ACTIONS(4524), [sym_this] = ACTIONS(4524), [sym_abstract] = ACTIONS(4524), [sym_alias] = ACTIONS(4524), [sym_align] = ACTIONS(4524), [sym_auto] = ACTIONS(4524), [sym_class] = ACTIONS(4524), [sym_const] = ACTIONS(4524), [sym_debug] = ACTIONS(4524), [sym_deprecated] = ACTIONS(4524), [sym_else] = ACTIONS(4524), [sym_enum] = ACTIONS(4524), [sym_export] = ACTIONS(4524), [sym_extern] = ACTIONS(4524), [sym_final] = ACTIONS(4524), [sym_immutable] = ACTIONS(4524), [sym_import] = ACTIONS(4524), [sym_inout] = ACTIONS(4524), [sym_interface] = ACTIONS(4524), [sym_invariant] = ACTIONS(4524), [sym_mixin] = ACTIONS(4524), [sym_nothrow] = ACTIONS(4524), [sym_override] = ACTIONS(4524), [sym_package] = ACTIONS(4524), [sym_pragma] = ACTIONS(4524), [sym_private] = ACTIONS(4524), [sym_protected] = ACTIONS(4524), [sym_public] = ACTIONS(4524), [sym_pure] = ACTIONS(4524), [sym_ref] = ACTIONS(4524), [sym_return] = ACTIONS(4524), [sym_scope] = ACTIONS(4524), [sym_shared] = ACTIONS(4524), [sym_static] = ACTIONS(4524), [sym_struct] = ACTIONS(4524), [sym_synchronized] = ACTIONS(4524), [sym_template] = ACTIONS(4524), [sym_typeof] = ACTIONS(4524), [sym_union] = ACTIONS(4524), [sym_unittest] = ACTIONS(4524), [sym_version] = ACTIONS(4524), [sym_while] = ACTIONS(4524), [sym_gshared] = ACTIONS(4524), [sym_traits] = ACTIONS(4524), [sym_vector] = ACTIONS(4524), [sym_void] = ACTIONS(4524), [sym_directive] = ACTIONS(3), }, [2756] = { [ts_builtin_sym_end] = ACTIONS(2663), [sym_identifier] = ACTIONS(2665), [sym_end_file] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_else] = ACTIONS(6799), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [sym_directive] = ACTIONS(3), }, [2757] = { [sym_identifier] = ACTIONS(4650), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4652), [anon_sym_DOT] = ACTIONS(4652), [anon_sym_SEMI] = ACTIONS(4652), [anon_sym_TILDE] = ACTIONS(4652), [anon_sym_AT] = ACTIONS(4652), [sym_bool] = ACTIONS(4650), [sym_byte] = ACTIONS(4650), [sym_ubyte] = ACTIONS(4650), [sym_char] = ACTIONS(4650), [sym_short] = ACTIONS(4650), [sym_ushort] = ACTIONS(4650), [sym_int] = ACTIONS(4650), [sym_uint] = ACTIONS(4650), [sym_long] = ACTIONS(4650), [sym_ulong] = ACTIONS(4650), [sym_cent] = ACTIONS(4650), [sym_ucent] = ACTIONS(4650), [sym_wchar] = ACTIONS(4650), [sym_dchar] = ACTIONS(4650), [sym_float] = ACTIONS(4650), [sym_double] = ACTIONS(4650), [sym_real] = ACTIONS(4650), [sym_ifloat] = ACTIONS(4650), [sym_idouble] = ACTIONS(4650), [sym_ireal] = ACTIONS(4650), [sym_cfloat] = ACTIONS(4650), [sym_cdouble] = ACTIONS(4650), [sym_creal] = ACTIONS(4650), [sym_size_t] = ACTIONS(4650), [sym_ptrdiff_t] = ACTIONS(4650), [sym_string] = ACTIONS(4650), [sym_cstring] = ACTIONS(4650), [sym_dstring] = ACTIONS(4650), [sym_wstring] = ACTIONS(4650), [sym_noreturn] = ACTIONS(4650), [sym_this] = ACTIONS(4650), [sym_abstract] = ACTIONS(4650), [sym_alias] = ACTIONS(4650), [sym_align] = ACTIONS(4650), [sym_auto] = ACTIONS(4650), [sym_class] = ACTIONS(4650), [sym_const] = ACTIONS(4650), [sym_debug] = ACTIONS(4650), [sym_deprecated] = ACTIONS(4650), [sym_else] = ACTIONS(4650), [sym_enum] = ACTIONS(4650), [sym_export] = ACTIONS(4650), [sym_extern] = ACTIONS(4650), [sym_final] = ACTIONS(4650), [sym_immutable] = ACTIONS(4650), [sym_import] = ACTIONS(4650), [sym_inout] = ACTIONS(4650), [sym_interface] = ACTIONS(4650), [sym_invariant] = ACTIONS(4650), [sym_mixin] = ACTIONS(4650), [sym_nothrow] = ACTIONS(4650), [sym_override] = ACTIONS(4650), [sym_package] = ACTIONS(4650), [sym_pragma] = ACTIONS(4650), [sym_private] = ACTIONS(4650), [sym_protected] = ACTIONS(4650), [sym_public] = ACTIONS(4650), [sym_pure] = ACTIONS(4650), [sym_ref] = ACTIONS(4650), [sym_return] = ACTIONS(4650), [sym_scope] = ACTIONS(4650), [sym_shared] = ACTIONS(4650), [sym_static] = ACTIONS(4650), [sym_struct] = ACTIONS(4650), [sym_synchronized] = ACTIONS(4650), [sym_template] = ACTIONS(4650), [sym_typeof] = ACTIONS(4650), [sym_union] = ACTIONS(4650), [sym_unittest] = ACTIONS(4650), [sym_version] = ACTIONS(4650), [sym_while] = ACTIONS(4650), [sym_gshared] = ACTIONS(4650), [sym_traits] = ACTIONS(4650), [sym_vector] = ACTIONS(4650), [sym_void] = ACTIONS(4650), [sym_directive] = ACTIONS(3), }, [2758] = { [sym_identifier] = ACTIONS(4662), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4664), [anon_sym_DOT] = ACTIONS(4664), [anon_sym_SEMI] = ACTIONS(4664), [anon_sym_TILDE] = ACTIONS(4664), [anon_sym_AT] = ACTIONS(4664), [sym_bool] = ACTIONS(4662), [sym_byte] = ACTIONS(4662), [sym_ubyte] = ACTIONS(4662), [sym_char] = ACTIONS(4662), [sym_short] = ACTIONS(4662), [sym_ushort] = ACTIONS(4662), [sym_int] = ACTIONS(4662), [sym_uint] = ACTIONS(4662), [sym_long] = ACTIONS(4662), [sym_ulong] = ACTIONS(4662), [sym_cent] = ACTIONS(4662), [sym_ucent] = ACTIONS(4662), [sym_wchar] = ACTIONS(4662), [sym_dchar] = ACTIONS(4662), [sym_float] = ACTIONS(4662), [sym_double] = ACTIONS(4662), [sym_real] = ACTIONS(4662), [sym_ifloat] = ACTIONS(4662), [sym_idouble] = ACTIONS(4662), [sym_ireal] = ACTIONS(4662), [sym_cfloat] = ACTIONS(4662), [sym_cdouble] = ACTIONS(4662), [sym_creal] = ACTIONS(4662), [sym_size_t] = ACTIONS(4662), [sym_ptrdiff_t] = ACTIONS(4662), [sym_string] = ACTIONS(4662), [sym_cstring] = ACTIONS(4662), [sym_dstring] = ACTIONS(4662), [sym_wstring] = ACTIONS(4662), [sym_noreturn] = ACTIONS(4662), [sym_this] = ACTIONS(4662), [sym_abstract] = ACTIONS(4662), [sym_alias] = ACTIONS(4662), [sym_align] = ACTIONS(4662), [sym_auto] = ACTIONS(4662), [sym_class] = ACTIONS(4662), [sym_const] = ACTIONS(4662), [sym_debug] = ACTIONS(4662), [sym_deprecated] = ACTIONS(4662), [sym_else] = ACTIONS(4662), [sym_enum] = ACTIONS(4662), [sym_export] = ACTIONS(4662), [sym_extern] = ACTIONS(4662), [sym_final] = ACTIONS(4662), [sym_immutable] = ACTIONS(4662), [sym_import] = ACTIONS(4662), [sym_inout] = ACTIONS(4662), [sym_interface] = ACTIONS(4662), [sym_invariant] = ACTIONS(4662), [sym_mixin] = ACTIONS(4662), [sym_nothrow] = ACTIONS(4662), [sym_override] = ACTIONS(4662), [sym_package] = ACTIONS(4662), [sym_pragma] = ACTIONS(4662), [sym_private] = ACTIONS(4662), [sym_protected] = ACTIONS(4662), [sym_public] = ACTIONS(4662), [sym_pure] = ACTIONS(4662), [sym_ref] = ACTIONS(4662), [sym_return] = ACTIONS(4662), [sym_scope] = ACTIONS(4662), [sym_shared] = ACTIONS(4662), [sym_static] = ACTIONS(4662), [sym_struct] = ACTIONS(4662), [sym_synchronized] = ACTIONS(4662), [sym_template] = ACTIONS(4662), [sym_typeof] = ACTIONS(4662), [sym_union] = ACTIONS(4662), [sym_unittest] = ACTIONS(4662), [sym_version] = ACTIONS(4662), [sym_while] = ACTIONS(4662), [sym_gshared] = ACTIONS(4662), [sym_traits] = ACTIONS(4662), [sym_vector] = ACTIONS(4662), [sym_void] = ACTIONS(4662), [sym_directive] = ACTIONS(3), }, [2759] = { [sym_identifier] = ACTIONS(4670), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4672), [anon_sym_DOT] = ACTIONS(4672), [anon_sym_SEMI] = ACTIONS(4672), [anon_sym_TILDE] = ACTIONS(4672), [anon_sym_AT] = ACTIONS(4672), [sym_bool] = ACTIONS(4670), [sym_byte] = ACTIONS(4670), [sym_ubyte] = ACTIONS(4670), [sym_char] = ACTIONS(4670), [sym_short] = ACTIONS(4670), [sym_ushort] = ACTIONS(4670), [sym_int] = ACTIONS(4670), [sym_uint] = ACTIONS(4670), [sym_long] = ACTIONS(4670), [sym_ulong] = ACTIONS(4670), [sym_cent] = ACTIONS(4670), [sym_ucent] = ACTIONS(4670), [sym_wchar] = ACTIONS(4670), [sym_dchar] = ACTIONS(4670), [sym_float] = ACTIONS(4670), [sym_double] = ACTIONS(4670), [sym_real] = ACTIONS(4670), [sym_ifloat] = ACTIONS(4670), [sym_idouble] = ACTIONS(4670), [sym_ireal] = ACTIONS(4670), [sym_cfloat] = ACTIONS(4670), [sym_cdouble] = ACTIONS(4670), [sym_creal] = ACTIONS(4670), [sym_size_t] = ACTIONS(4670), [sym_ptrdiff_t] = ACTIONS(4670), [sym_string] = ACTIONS(4670), [sym_cstring] = ACTIONS(4670), [sym_dstring] = ACTIONS(4670), [sym_wstring] = ACTIONS(4670), [sym_noreturn] = ACTIONS(4670), [sym_this] = ACTIONS(4670), [sym_abstract] = ACTIONS(4670), [sym_alias] = ACTIONS(4670), [sym_align] = ACTIONS(4670), [sym_auto] = ACTIONS(4670), [sym_class] = ACTIONS(4670), [sym_const] = ACTIONS(4670), [sym_debug] = ACTIONS(4670), [sym_deprecated] = ACTIONS(4670), [sym_else] = ACTIONS(4670), [sym_enum] = ACTIONS(4670), [sym_export] = ACTIONS(4670), [sym_extern] = ACTIONS(4670), [sym_final] = ACTIONS(4670), [sym_immutable] = ACTIONS(4670), [sym_import] = ACTIONS(4670), [sym_inout] = ACTIONS(4670), [sym_interface] = ACTIONS(4670), [sym_invariant] = ACTIONS(4670), [sym_mixin] = ACTIONS(4670), [sym_nothrow] = ACTIONS(4670), [sym_override] = ACTIONS(4670), [sym_package] = ACTIONS(4670), [sym_pragma] = ACTIONS(4670), [sym_private] = ACTIONS(4670), [sym_protected] = ACTIONS(4670), [sym_public] = ACTIONS(4670), [sym_pure] = ACTIONS(4670), [sym_ref] = ACTIONS(4670), [sym_return] = ACTIONS(4670), [sym_scope] = ACTIONS(4670), [sym_shared] = ACTIONS(4670), [sym_static] = ACTIONS(4670), [sym_struct] = ACTIONS(4670), [sym_synchronized] = ACTIONS(4670), [sym_template] = ACTIONS(4670), [sym_typeof] = ACTIONS(4670), [sym_union] = ACTIONS(4670), [sym_unittest] = ACTIONS(4670), [sym_version] = ACTIONS(4670), [sym_while] = ACTIONS(4670), [sym_gshared] = ACTIONS(4670), [sym_traits] = ACTIONS(4670), [sym_vector] = ACTIONS(4670), [sym_void] = ACTIONS(4670), [sym_directive] = ACTIONS(3), }, [2760] = { [sym_identifier] = ACTIONS(4674), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4676), [anon_sym_DOT] = ACTIONS(4676), [anon_sym_SEMI] = ACTIONS(4676), [anon_sym_TILDE] = ACTIONS(4676), [anon_sym_AT] = ACTIONS(4676), [sym_bool] = ACTIONS(4674), [sym_byte] = ACTIONS(4674), [sym_ubyte] = ACTIONS(4674), [sym_char] = ACTIONS(4674), [sym_short] = ACTIONS(4674), [sym_ushort] = ACTIONS(4674), [sym_int] = ACTIONS(4674), [sym_uint] = ACTIONS(4674), [sym_long] = ACTIONS(4674), [sym_ulong] = ACTIONS(4674), [sym_cent] = ACTIONS(4674), [sym_ucent] = ACTIONS(4674), [sym_wchar] = ACTIONS(4674), [sym_dchar] = ACTIONS(4674), [sym_float] = ACTIONS(4674), [sym_double] = ACTIONS(4674), [sym_real] = ACTIONS(4674), [sym_ifloat] = ACTIONS(4674), [sym_idouble] = ACTIONS(4674), [sym_ireal] = ACTIONS(4674), [sym_cfloat] = ACTIONS(4674), [sym_cdouble] = ACTIONS(4674), [sym_creal] = ACTIONS(4674), [sym_size_t] = ACTIONS(4674), [sym_ptrdiff_t] = ACTIONS(4674), [sym_string] = ACTIONS(4674), [sym_cstring] = ACTIONS(4674), [sym_dstring] = ACTIONS(4674), [sym_wstring] = ACTIONS(4674), [sym_noreturn] = ACTIONS(4674), [sym_this] = ACTIONS(4674), [sym_abstract] = ACTIONS(4674), [sym_alias] = ACTIONS(4674), [sym_align] = ACTIONS(4674), [sym_auto] = ACTIONS(4674), [sym_class] = ACTIONS(4674), [sym_const] = ACTIONS(4674), [sym_debug] = ACTIONS(4674), [sym_deprecated] = ACTIONS(4674), [sym_else] = ACTIONS(4674), [sym_enum] = ACTIONS(4674), [sym_export] = ACTIONS(4674), [sym_extern] = ACTIONS(4674), [sym_final] = ACTIONS(4674), [sym_immutable] = ACTIONS(4674), [sym_import] = ACTIONS(4674), [sym_inout] = ACTIONS(4674), [sym_interface] = ACTIONS(4674), [sym_invariant] = ACTIONS(4674), [sym_mixin] = ACTIONS(4674), [sym_nothrow] = ACTIONS(4674), [sym_override] = ACTIONS(4674), [sym_package] = ACTIONS(4674), [sym_pragma] = ACTIONS(4674), [sym_private] = ACTIONS(4674), [sym_protected] = ACTIONS(4674), [sym_public] = ACTIONS(4674), [sym_pure] = ACTIONS(4674), [sym_ref] = ACTIONS(4674), [sym_return] = ACTIONS(4674), [sym_scope] = ACTIONS(4674), [sym_shared] = ACTIONS(4674), [sym_static] = ACTIONS(4674), [sym_struct] = ACTIONS(4674), [sym_synchronized] = ACTIONS(4674), [sym_template] = ACTIONS(4674), [sym_typeof] = ACTIONS(4674), [sym_union] = ACTIONS(4674), [sym_unittest] = ACTIONS(4674), [sym_version] = ACTIONS(4674), [sym_while] = ACTIONS(4674), [sym_gshared] = ACTIONS(4674), [sym_traits] = ACTIONS(4674), [sym_vector] = ACTIONS(4674), [sym_void] = ACTIONS(4674), [sym_directive] = ACTIONS(3), }, [2761] = { [sym_identifier] = ACTIONS(4682), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4684), [anon_sym_DOT] = ACTIONS(4684), [anon_sym_SEMI] = ACTIONS(4684), [anon_sym_TILDE] = ACTIONS(4684), [anon_sym_AT] = ACTIONS(4684), [sym_bool] = ACTIONS(4682), [sym_byte] = ACTIONS(4682), [sym_ubyte] = ACTIONS(4682), [sym_char] = ACTIONS(4682), [sym_short] = ACTIONS(4682), [sym_ushort] = ACTIONS(4682), [sym_int] = ACTIONS(4682), [sym_uint] = ACTIONS(4682), [sym_long] = ACTIONS(4682), [sym_ulong] = ACTIONS(4682), [sym_cent] = ACTIONS(4682), [sym_ucent] = ACTIONS(4682), [sym_wchar] = ACTIONS(4682), [sym_dchar] = ACTIONS(4682), [sym_float] = ACTIONS(4682), [sym_double] = ACTIONS(4682), [sym_real] = ACTIONS(4682), [sym_ifloat] = ACTIONS(4682), [sym_idouble] = ACTIONS(4682), [sym_ireal] = ACTIONS(4682), [sym_cfloat] = ACTIONS(4682), [sym_cdouble] = ACTIONS(4682), [sym_creal] = ACTIONS(4682), [sym_size_t] = ACTIONS(4682), [sym_ptrdiff_t] = ACTIONS(4682), [sym_string] = ACTIONS(4682), [sym_cstring] = ACTIONS(4682), [sym_dstring] = ACTIONS(4682), [sym_wstring] = ACTIONS(4682), [sym_noreturn] = ACTIONS(4682), [sym_this] = ACTIONS(4682), [sym_abstract] = ACTIONS(4682), [sym_alias] = ACTIONS(4682), [sym_align] = ACTIONS(4682), [sym_auto] = ACTIONS(4682), [sym_class] = ACTIONS(4682), [sym_const] = ACTIONS(4682), [sym_debug] = ACTIONS(4682), [sym_deprecated] = ACTIONS(4682), [sym_else] = ACTIONS(4682), [sym_enum] = ACTIONS(4682), [sym_export] = ACTIONS(4682), [sym_extern] = ACTIONS(4682), [sym_final] = ACTIONS(4682), [sym_immutable] = ACTIONS(4682), [sym_import] = ACTIONS(4682), [sym_inout] = ACTIONS(4682), [sym_interface] = ACTIONS(4682), [sym_invariant] = ACTIONS(4682), [sym_mixin] = ACTIONS(4682), [sym_nothrow] = ACTIONS(4682), [sym_override] = ACTIONS(4682), [sym_package] = ACTIONS(4682), [sym_pragma] = ACTIONS(4682), [sym_private] = ACTIONS(4682), [sym_protected] = ACTIONS(4682), [sym_public] = ACTIONS(4682), [sym_pure] = ACTIONS(4682), [sym_ref] = ACTIONS(4682), [sym_return] = ACTIONS(4682), [sym_scope] = ACTIONS(4682), [sym_shared] = ACTIONS(4682), [sym_static] = ACTIONS(4682), [sym_struct] = ACTIONS(4682), [sym_synchronized] = ACTIONS(4682), [sym_template] = ACTIONS(4682), [sym_typeof] = ACTIONS(4682), [sym_union] = ACTIONS(4682), [sym_unittest] = ACTIONS(4682), [sym_version] = ACTIONS(4682), [sym_while] = ACTIONS(4682), [sym_gshared] = ACTIONS(4682), [sym_traits] = ACTIONS(4682), [sym_vector] = ACTIONS(4682), [sym_void] = ACTIONS(4682), [sym_directive] = ACTIONS(3), }, [2762] = { [sym_identifier] = ACTIONS(4686), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4688), [anon_sym_DOT] = ACTIONS(4688), [anon_sym_SEMI] = ACTIONS(4688), [anon_sym_TILDE] = ACTIONS(4688), [anon_sym_AT] = ACTIONS(4688), [sym_bool] = ACTIONS(4686), [sym_byte] = ACTIONS(4686), [sym_ubyte] = ACTIONS(4686), [sym_char] = ACTIONS(4686), [sym_short] = ACTIONS(4686), [sym_ushort] = ACTIONS(4686), [sym_int] = ACTIONS(4686), [sym_uint] = ACTIONS(4686), [sym_long] = ACTIONS(4686), [sym_ulong] = ACTIONS(4686), [sym_cent] = ACTIONS(4686), [sym_ucent] = ACTIONS(4686), [sym_wchar] = ACTIONS(4686), [sym_dchar] = ACTIONS(4686), [sym_float] = ACTIONS(4686), [sym_double] = ACTIONS(4686), [sym_real] = ACTIONS(4686), [sym_ifloat] = ACTIONS(4686), [sym_idouble] = ACTIONS(4686), [sym_ireal] = ACTIONS(4686), [sym_cfloat] = ACTIONS(4686), [sym_cdouble] = ACTIONS(4686), [sym_creal] = ACTIONS(4686), [sym_size_t] = ACTIONS(4686), [sym_ptrdiff_t] = ACTIONS(4686), [sym_string] = ACTIONS(4686), [sym_cstring] = ACTIONS(4686), [sym_dstring] = ACTIONS(4686), [sym_wstring] = ACTIONS(4686), [sym_noreturn] = ACTIONS(4686), [sym_this] = ACTIONS(4686), [sym_abstract] = ACTIONS(4686), [sym_alias] = ACTIONS(4686), [sym_align] = ACTIONS(4686), [sym_auto] = ACTIONS(4686), [sym_class] = ACTIONS(4686), [sym_const] = ACTIONS(4686), [sym_debug] = ACTIONS(4686), [sym_deprecated] = ACTIONS(4686), [sym_else] = ACTIONS(4686), [sym_enum] = ACTIONS(4686), [sym_export] = ACTIONS(4686), [sym_extern] = ACTIONS(4686), [sym_final] = ACTIONS(4686), [sym_immutable] = ACTIONS(4686), [sym_import] = ACTIONS(4686), [sym_inout] = ACTIONS(4686), [sym_interface] = ACTIONS(4686), [sym_invariant] = ACTIONS(4686), [sym_mixin] = ACTIONS(4686), [sym_nothrow] = ACTIONS(4686), [sym_override] = ACTIONS(4686), [sym_package] = ACTIONS(4686), [sym_pragma] = ACTIONS(4686), [sym_private] = ACTIONS(4686), [sym_protected] = ACTIONS(4686), [sym_public] = ACTIONS(4686), [sym_pure] = ACTIONS(4686), [sym_ref] = ACTIONS(4686), [sym_return] = ACTIONS(4686), [sym_scope] = ACTIONS(4686), [sym_shared] = ACTIONS(4686), [sym_static] = ACTIONS(4686), [sym_struct] = ACTIONS(4686), [sym_synchronized] = ACTIONS(4686), [sym_template] = ACTIONS(4686), [sym_typeof] = ACTIONS(4686), [sym_union] = ACTIONS(4686), [sym_unittest] = ACTIONS(4686), [sym_version] = ACTIONS(4686), [sym_while] = ACTIONS(4686), [sym_gshared] = ACTIONS(4686), [sym_traits] = ACTIONS(4686), [sym_vector] = ACTIONS(4686), [sym_void] = ACTIONS(4686), [sym_directive] = ACTIONS(3), }, [2763] = { [sym_identifier] = ACTIONS(4460), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4462), [anon_sym_DOT] = ACTIONS(4462), [anon_sym_SEMI] = ACTIONS(4462), [anon_sym_TILDE] = ACTIONS(4462), [anon_sym_AT] = ACTIONS(4462), [sym_bool] = ACTIONS(4460), [sym_byte] = ACTIONS(4460), [sym_ubyte] = ACTIONS(4460), [sym_char] = ACTIONS(4460), [sym_short] = ACTIONS(4460), [sym_ushort] = ACTIONS(4460), [sym_int] = ACTIONS(4460), [sym_uint] = ACTIONS(4460), [sym_long] = ACTIONS(4460), [sym_ulong] = ACTIONS(4460), [sym_cent] = ACTIONS(4460), [sym_ucent] = ACTIONS(4460), [sym_wchar] = ACTIONS(4460), [sym_dchar] = ACTIONS(4460), [sym_float] = ACTIONS(4460), [sym_double] = ACTIONS(4460), [sym_real] = ACTIONS(4460), [sym_ifloat] = ACTIONS(4460), [sym_idouble] = ACTIONS(4460), [sym_ireal] = ACTIONS(4460), [sym_cfloat] = ACTIONS(4460), [sym_cdouble] = ACTIONS(4460), [sym_creal] = ACTIONS(4460), [sym_size_t] = ACTIONS(4460), [sym_ptrdiff_t] = ACTIONS(4460), [sym_string] = ACTIONS(4460), [sym_cstring] = ACTIONS(4460), [sym_dstring] = ACTIONS(4460), [sym_wstring] = ACTIONS(4460), [sym_noreturn] = ACTIONS(4460), [sym_this] = ACTIONS(4460), [sym_abstract] = ACTIONS(4460), [sym_alias] = ACTIONS(4460), [sym_align] = ACTIONS(4460), [sym_auto] = ACTIONS(4460), [sym_class] = ACTIONS(4460), [sym_const] = ACTIONS(4460), [sym_debug] = ACTIONS(4460), [sym_deprecated] = ACTIONS(4460), [sym_else] = ACTIONS(4460), [sym_enum] = ACTIONS(4460), [sym_export] = ACTIONS(4460), [sym_extern] = ACTIONS(4460), [sym_final] = ACTIONS(4460), [sym_immutable] = ACTIONS(4460), [sym_import] = ACTIONS(4460), [sym_inout] = ACTIONS(4460), [sym_interface] = ACTIONS(4460), [sym_invariant] = ACTIONS(4460), [sym_mixin] = ACTIONS(4460), [sym_nothrow] = ACTIONS(4460), [sym_override] = ACTIONS(4460), [sym_package] = ACTIONS(4460), [sym_pragma] = ACTIONS(4460), [sym_private] = ACTIONS(4460), [sym_protected] = ACTIONS(4460), [sym_public] = ACTIONS(4460), [sym_pure] = ACTIONS(4460), [sym_ref] = ACTIONS(4460), [sym_return] = ACTIONS(4460), [sym_scope] = ACTIONS(4460), [sym_shared] = ACTIONS(4460), [sym_static] = ACTIONS(4460), [sym_struct] = ACTIONS(4460), [sym_synchronized] = ACTIONS(4460), [sym_template] = ACTIONS(4460), [sym_typeof] = ACTIONS(4460), [sym_union] = ACTIONS(4460), [sym_unittest] = ACTIONS(4460), [sym_version] = ACTIONS(4460), [sym_while] = ACTIONS(4460), [sym_gshared] = ACTIONS(4460), [sym_traits] = ACTIONS(4460), [sym_vector] = ACTIONS(4460), [sym_void] = ACTIONS(4460), [sym_directive] = ACTIONS(3), }, [2764] = { [sym_identifier] = ACTIONS(4492), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4494), [anon_sym_DOT] = ACTIONS(4494), [anon_sym_SEMI] = ACTIONS(4494), [anon_sym_TILDE] = ACTIONS(4494), [anon_sym_AT] = ACTIONS(4494), [sym_bool] = ACTIONS(4492), [sym_byte] = ACTIONS(4492), [sym_ubyte] = ACTIONS(4492), [sym_char] = ACTIONS(4492), [sym_short] = ACTIONS(4492), [sym_ushort] = ACTIONS(4492), [sym_int] = ACTIONS(4492), [sym_uint] = ACTIONS(4492), [sym_long] = ACTIONS(4492), [sym_ulong] = ACTIONS(4492), [sym_cent] = ACTIONS(4492), [sym_ucent] = ACTIONS(4492), [sym_wchar] = ACTIONS(4492), [sym_dchar] = ACTIONS(4492), [sym_float] = ACTIONS(4492), [sym_double] = ACTIONS(4492), [sym_real] = ACTIONS(4492), [sym_ifloat] = ACTIONS(4492), [sym_idouble] = ACTIONS(4492), [sym_ireal] = ACTIONS(4492), [sym_cfloat] = ACTIONS(4492), [sym_cdouble] = ACTIONS(4492), [sym_creal] = ACTIONS(4492), [sym_size_t] = ACTIONS(4492), [sym_ptrdiff_t] = ACTIONS(4492), [sym_string] = ACTIONS(4492), [sym_cstring] = ACTIONS(4492), [sym_dstring] = ACTIONS(4492), [sym_wstring] = ACTIONS(4492), [sym_noreturn] = ACTIONS(4492), [sym_this] = ACTIONS(4492), [sym_abstract] = ACTIONS(4492), [sym_alias] = ACTIONS(4492), [sym_align] = ACTIONS(4492), [sym_auto] = ACTIONS(4492), [sym_class] = ACTIONS(4492), [sym_const] = ACTIONS(4492), [sym_debug] = ACTIONS(4492), [sym_deprecated] = ACTIONS(4492), [sym_else] = ACTIONS(4492), [sym_enum] = ACTIONS(4492), [sym_export] = ACTIONS(4492), [sym_extern] = ACTIONS(4492), [sym_final] = ACTIONS(4492), [sym_immutable] = ACTIONS(4492), [sym_import] = ACTIONS(4492), [sym_inout] = ACTIONS(4492), [sym_interface] = ACTIONS(4492), [sym_invariant] = ACTIONS(4492), [sym_mixin] = ACTIONS(4492), [sym_nothrow] = ACTIONS(4492), [sym_override] = ACTIONS(4492), [sym_package] = ACTIONS(4492), [sym_pragma] = ACTIONS(4492), [sym_private] = ACTIONS(4492), [sym_protected] = ACTIONS(4492), [sym_public] = ACTIONS(4492), [sym_pure] = ACTIONS(4492), [sym_ref] = ACTIONS(4492), [sym_return] = ACTIONS(4492), [sym_scope] = ACTIONS(4492), [sym_shared] = ACTIONS(4492), [sym_static] = ACTIONS(4492), [sym_struct] = ACTIONS(4492), [sym_synchronized] = ACTIONS(4492), [sym_template] = ACTIONS(4492), [sym_typeof] = ACTIONS(4492), [sym_union] = ACTIONS(4492), [sym_unittest] = ACTIONS(4492), [sym_version] = ACTIONS(4492), [sym_while] = ACTIONS(4492), [sym_gshared] = ACTIONS(4492), [sym_traits] = ACTIONS(4492), [sym_vector] = ACTIONS(4492), [sym_void] = ACTIONS(4492), [sym_directive] = ACTIONS(3), }, [2765] = { [sym_identifier] = ACTIONS(4566), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4568), [anon_sym_DOT] = ACTIONS(4568), [anon_sym_SEMI] = ACTIONS(4568), [anon_sym_TILDE] = ACTIONS(4568), [anon_sym_AT] = ACTIONS(4568), [sym_bool] = ACTIONS(4566), [sym_byte] = ACTIONS(4566), [sym_ubyte] = ACTIONS(4566), [sym_char] = ACTIONS(4566), [sym_short] = ACTIONS(4566), [sym_ushort] = ACTIONS(4566), [sym_int] = ACTIONS(4566), [sym_uint] = ACTIONS(4566), [sym_long] = ACTIONS(4566), [sym_ulong] = ACTIONS(4566), [sym_cent] = ACTIONS(4566), [sym_ucent] = ACTIONS(4566), [sym_wchar] = ACTIONS(4566), [sym_dchar] = ACTIONS(4566), [sym_float] = ACTIONS(4566), [sym_double] = ACTIONS(4566), [sym_real] = ACTIONS(4566), [sym_ifloat] = ACTIONS(4566), [sym_idouble] = ACTIONS(4566), [sym_ireal] = ACTIONS(4566), [sym_cfloat] = ACTIONS(4566), [sym_cdouble] = ACTIONS(4566), [sym_creal] = ACTIONS(4566), [sym_size_t] = ACTIONS(4566), [sym_ptrdiff_t] = ACTIONS(4566), [sym_string] = ACTIONS(4566), [sym_cstring] = ACTIONS(4566), [sym_dstring] = ACTIONS(4566), [sym_wstring] = ACTIONS(4566), [sym_noreturn] = ACTIONS(4566), [sym_this] = ACTIONS(4566), [sym_abstract] = ACTIONS(4566), [sym_alias] = ACTIONS(4566), [sym_align] = ACTIONS(4566), [sym_auto] = ACTIONS(4566), [sym_class] = ACTIONS(4566), [sym_const] = ACTIONS(4566), [sym_debug] = ACTIONS(4566), [sym_deprecated] = ACTIONS(4566), [sym_else] = ACTIONS(4566), [sym_enum] = ACTIONS(4566), [sym_export] = ACTIONS(4566), [sym_extern] = ACTIONS(4566), [sym_final] = ACTIONS(4566), [sym_immutable] = ACTIONS(4566), [sym_import] = ACTIONS(4566), [sym_inout] = ACTIONS(4566), [sym_interface] = ACTIONS(4566), [sym_invariant] = ACTIONS(4566), [sym_mixin] = ACTIONS(4566), [sym_nothrow] = ACTIONS(4566), [sym_override] = ACTIONS(4566), [sym_package] = ACTIONS(4566), [sym_pragma] = ACTIONS(4566), [sym_private] = ACTIONS(4566), [sym_protected] = ACTIONS(4566), [sym_public] = ACTIONS(4566), [sym_pure] = ACTIONS(4566), [sym_ref] = ACTIONS(4566), [sym_return] = ACTIONS(4566), [sym_scope] = ACTIONS(4566), [sym_shared] = ACTIONS(4566), [sym_static] = ACTIONS(4566), [sym_struct] = ACTIONS(4566), [sym_synchronized] = ACTIONS(4566), [sym_template] = ACTIONS(4566), [sym_typeof] = ACTIONS(4566), [sym_union] = ACTIONS(4566), [sym_unittest] = ACTIONS(4566), [sym_version] = ACTIONS(4566), [sym_while] = ACTIONS(4566), [sym_gshared] = ACTIONS(4566), [sym_traits] = ACTIONS(4566), [sym_vector] = ACTIONS(4566), [sym_void] = ACTIONS(4566), [sym_directive] = ACTIONS(3), }, [2766] = { [sym_identifier] = ACTIONS(4558), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4560), [anon_sym_DOT] = ACTIONS(4560), [anon_sym_SEMI] = ACTIONS(4560), [anon_sym_TILDE] = ACTIONS(4560), [anon_sym_AT] = ACTIONS(4560), [sym_bool] = ACTIONS(4558), [sym_byte] = ACTIONS(4558), [sym_ubyte] = ACTIONS(4558), [sym_char] = ACTIONS(4558), [sym_short] = ACTIONS(4558), [sym_ushort] = ACTIONS(4558), [sym_int] = ACTIONS(4558), [sym_uint] = ACTIONS(4558), [sym_long] = ACTIONS(4558), [sym_ulong] = ACTIONS(4558), [sym_cent] = ACTIONS(4558), [sym_ucent] = ACTIONS(4558), [sym_wchar] = ACTIONS(4558), [sym_dchar] = ACTIONS(4558), [sym_float] = ACTIONS(4558), [sym_double] = ACTIONS(4558), [sym_real] = ACTIONS(4558), [sym_ifloat] = ACTIONS(4558), [sym_idouble] = ACTIONS(4558), [sym_ireal] = ACTIONS(4558), [sym_cfloat] = ACTIONS(4558), [sym_cdouble] = ACTIONS(4558), [sym_creal] = ACTIONS(4558), [sym_size_t] = ACTIONS(4558), [sym_ptrdiff_t] = ACTIONS(4558), [sym_string] = ACTIONS(4558), [sym_cstring] = ACTIONS(4558), [sym_dstring] = ACTIONS(4558), [sym_wstring] = ACTIONS(4558), [sym_noreturn] = ACTIONS(4558), [sym_this] = ACTIONS(4558), [sym_abstract] = ACTIONS(4558), [sym_alias] = ACTIONS(4558), [sym_align] = ACTIONS(4558), [sym_auto] = ACTIONS(4558), [sym_class] = ACTIONS(4558), [sym_const] = ACTIONS(4558), [sym_debug] = ACTIONS(4558), [sym_deprecated] = ACTIONS(4558), [sym_else] = ACTIONS(4558), [sym_enum] = ACTIONS(4558), [sym_export] = ACTIONS(4558), [sym_extern] = ACTIONS(4558), [sym_final] = ACTIONS(4558), [sym_immutable] = ACTIONS(4558), [sym_import] = ACTIONS(4558), [sym_inout] = ACTIONS(4558), [sym_interface] = ACTIONS(4558), [sym_invariant] = ACTIONS(4558), [sym_mixin] = ACTIONS(4558), [sym_nothrow] = ACTIONS(4558), [sym_override] = ACTIONS(4558), [sym_package] = ACTIONS(4558), [sym_pragma] = ACTIONS(4558), [sym_private] = ACTIONS(4558), [sym_protected] = ACTIONS(4558), [sym_public] = ACTIONS(4558), [sym_pure] = ACTIONS(4558), [sym_ref] = ACTIONS(4558), [sym_return] = ACTIONS(4558), [sym_scope] = ACTIONS(4558), [sym_shared] = ACTIONS(4558), [sym_static] = ACTIONS(4558), [sym_struct] = ACTIONS(4558), [sym_synchronized] = ACTIONS(4558), [sym_template] = ACTIONS(4558), [sym_typeof] = ACTIONS(4558), [sym_union] = ACTIONS(4558), [sym_unittest] = ACTIONS(4558), [sym_version] = ACTIONS(4558), [sym_while] = ACTIONS(4558), [sym_gshared] = ACTIONS(4558), [sym_traits] = ACTIONS(4558), [sym_vector] = ACTIONS(4558), [sym_void] = ACTIONS(4558), [sym_directive] = ACTIONS(3), }, [2767] = { [sym_identifier] = ACTIONS(4554), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4556), [anon_sym_DOT] = ACTIONS(4556), [anon_sym_SEMI] = ACTIONS(4556), [anon_sym_TILDE] = ACTIONS(4556), [anon_sym_AT] = ACTIONS(4556), [sym_bool] = ACTIONS(4554), [sym_byte] = ACTIONS(4554), [sym_ubyte] = ACTIONS(4554), [sym_char] = ACTIONS(4554), [sym_short] = ACTIONS(4554), [sym_ushort] = ACTIONS(4554), [sym_int] = ACTIONS(4554), [sym_uint] = ACTIONS(4554), [sym_long] = ACTIONS(4554), [sym_ulong] = ACTIONS(4554), [sym_cent] = ACTIONS(4554), [sym_ucent] = ACTIONS(4554), [sym_wchar] = ACTIONS(4554), [sym_dchar] = ACTIONS(4554), [sym_float] = ACTIONS(4554), [sym_double] = ACTIONS(4554), [sym_real] = ACTIONS(4554), [sym_ifloat] = ACTIONS(4554), [sym_idouble] = ACTIONS(4554), [sym_ireal] = ACTIONS(4554), [sym_cfloat] = ACTIONS(4554), [sym_cdouble] = ACTIONS(4554), [sym_creal] = ACTIONS(4554), [sym_size_t] = ACTIONS(4554), [sym_ptrdiff_t] = ACTIONS(4554), [sym_string] = ACTIONS(4554), [sym_cstring] = ACTIONS(4554), [sym_dstring] = ACTIONS(4554), [sym_wstring] = ACTIONS(4554), [sym_noreturn] = ACTIONS(4554), [sym_this] = ACTIONS(4554), [sym_abstract] = ACTIONS(4554), [sym_alias] = ACTIONS(4554), [sym_align] = ACTIONS(4554), [sym_auto] = ACTIONS(4554), [sym_class] = ACTIONS(4554), [sym_const] = ACTIONS(4554), [sym_debug] = ACTIONS(4554), [sym_deprecated] = ACTIONS(4554), [sym_else] = ACTIONS(4554), [sym_enum] = ACTIONS(4554), [sym_export] = ACTIONS(4554), [sym_extern] = ACTIONS(4554), [sym_final] = ACTIONS(4554), [sym_immutable] = ACTIONS(4554), [sym_import] = ACTIONS(4554), [sym_inout] = ACTIONS(4554), [sym_interface] = ACTIONS(4554), [sym_invariant] = ACTIONS(4554), [sym_mixin] = ACTIONS(4554), [sym_nothrow] = ACTIONS(4554), [sym_override] = ACTIONS(4554), [sym_package] = ACTIONS(4554), [sym_pragma] = ACTIONS(4554), [sym_private] = ACTIONS(4554), [sym_protected] = ACTIONS(4554), [sym_public] = ACTIONS(4554), [sym_pure] = ACTIONS(4554), [sym_ref] = ACTIONS(4554), [sym_return] = ACTIONS(4554), [sym_scope] = ACTIONS(4554), [sym_shared] = ACTIONS(4554), [sym_static] = ACTIONS(4554), [sym_struct] = ACTIONS(4554), [sym_synchronized] = ACTIONS(4554), [sym_template] = ACTIONS(4554), [sym_typeof] = ACTIONS(4554), [sym_union] = ACTIONS(4554), [sym_unittest] = ACTIONS(4554), [sym_version] = ACTIONS(4554), [sym_while] = ACTIONS(4554), [sym_gshared] = ACTIONS(4554), [sym_traits] = ACTIONS(4554), [sym_vector] = ACTIONS(4554), [sym_void] = ACTIONS(4554), [sym_directive] = ACTIONS(3), }, [2768] = { [sym_switch_statement] = STATE(5592), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(1448), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2769] = { [sym_identifier] = ACTIONS(4504), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4506), [anon_sym_DOT] = ACTIONS(4506), [anon_sym_SEMI] = ACTIONS(4506), [anon_sym_TILDE] = ACTIONS(4506), [anon_sym_AT] = ACTIONS(4506), [sym_bool] = ACTIONS(4504), [sym_byte] = ACTIONS(4504), [sym_ubyte] = ACTIONS(4504), [sym_char] = ACTIONS(4504), [sym_short] = ACTIONS(4504), [sym_ushort] = ACTIONS(4504), [sym_int] = ACTIONS(4504), [sym_uint] = ACTIONS(4504), [sym_long] = ACTIONS(4504), [sym_ulong] = ACTIONS(4504), [sym_cent] = ACTIONS(4504), [sym_ucent] = ACTIONS(4504), [sym_wchar] = ACTIONS(4504), [sym_dchar] = ACTIONS(4504), [sym_float] = ACTIONS(4504), [sym_double] = ACTIONS(4504), [sym_real] = ACTIONS(4504), [sym_ifloat] = ACTIONS(4504), [sym_idouble] = ACTIONS(4504), [sym_ireal] = ACTIONS(4504), [sym_cfloat] = ACTIONS(4504), [sym_cdouble] = ACTIONS(4504), [sym_creal] = ACTIONS(4504), [sym_size_t] = ACTIONS(4504), [sym_ptrdiff_t] = ACTIONS(4504), [sym_string] = ACTIONS(4504), [sym_cstring] = ACTIONS(4504), [sym_dstring] = ACTIONS(4504), [sym_wstring] = ACTIONS(4504), [sym_noreturn] = ACTIONS(4504), [sym_this] = ACTIONS(4504), [sym_abstract] = ACTIONS(4504), [sym_alias] = ACTIONS(4504), [sym_align] = ACTIONS(4504), [sym_auto] = ACTIONS(4504), [sym_class] = ACTIONS(4504), [sym_const] = ACTIONS(4504), [sym_debug] = ACTIONS(4504), [sym_deprecated] = ACTIONS(4504), [sym_else] = ACTIONS(4504), [sym_enum] = ACTIONS(4504), [sym_export] = ACTIONS(4504), [sym_extern] = ACTIONS(4504), [sym_final] = ACTIONS(4504), [sym_immutable] = ACTIONS(4504), [sym_import] = ACTIONS(4504), [sym_inout] = ACTIONS(4504), [sym_interface] = ACTIONS(4504), [sym_invariant] = ACTIONS(4504), [sym_mixin] = ACTIONS(4504), [sym_nothrow] = ACTIONS(4504), [sym_override] = ACTIONS(4504), [sym_package] = ACTIONS(4504), [sym_pragma] = ACTIONS(4504), [sym_private] = ACTIONS(4504), [sym_protected] = ACTIONS(4504), [sym_public] = ACTIONS(4504), [sym_pure] = ACTIONS(4504), [sym_ref] = ACTIONS(4504), [sym_return] = ACTIONS(4504), [sym_scope] = ACTIONS(4504), [sym_shared] = ACTIONS(4504), [sym_static] = ACTIONS(4504), [sym_struct] = ACTIONS(4504), [sym_synchronized] = ACTIONS(4504), [sym_template] = ACTIONS(4504), [sym_typeof] = ACTIONS(4504), [sym_union] = ACTIONS(4504), [sym_unittest] = ACTIONS(4504), [sym_version] = ACTIONS(4504), [sym_while] = ACTIONS(4504), [sym_gshared] = ACTIONS(4504), [sym_traits] = ACTIONS(4504), [sym_vector] = ACTIONS(4504), [sym_void] = ACTIONS(4504), [sym_directive] = ACTIONS(3), }, [2770] = { [sym_identifier] = ACTIONS(4970), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4972), [anon_sym_DOT] = ACTIONS(4972), [anon_sym_SEMI] = ACTIONS(4972), [anon_sym_TILDE] = ACTIONS(4972), [anon_sym_AT] = ACTIONS(4972), [sym_bool] = ACTIONS(4970), [sym_byte] = ACTIONS(4970), [sym_ubyte] = ACTIONS(4970), [sym_char] = ACTIONS(4970), [sym_short] = ACTIONS(4970), [sym_ushort] = ACTIONS(4970), [sym_int] = ACTIONS(4970), [sym_uint] = ACTIONS(4970), [sym_long] = ACTIONS(4970), [sym_ulong] = ACTIONS(4970), [sym_cent] = ACTIONS(4970), [sym_ucent] = ACTIONS(4970), [sym_wchar] = ACTIONS(4970), [sym_dchar] = ACTIONS(4970), [sym_float] = ACTIONS(4970), [sym_double] = ACTIONS(4970), [sym_real] = ACTIONS(4970), [sym_ifloat] = ACTIONS(4970), [sym_idouble] = ACTIONS(4970), [sym_ireal] = ACTIONS(4970), [sym_cfloat] = ACTIONS(4970), [sym_cdouble] = ACTIONS(4970), [sym_creal] = ACTIONS(4970), [sym_size_t] = ACTIONS(4970), [sym_ptrdiff_t] = ACTIONS(4970), [sym_string] = ACTIONS(4970), [sym_cstring] = ACTIONS(4970), [sym_dstring] = ACTIONS(4970), [sym_wstring] = ACTIONS(4970), [sym_noreturn] = ACTIONS(4970), [sym_this] = ACTIONS(4970), [sym_abstract] = ACTIONS(4970), [sym_alias] = ACTIONS(4970), [sym_align] = ACTIONS(4970), [sym_auto] = ACTIONS(4970), [sym_class] = ACTIONS(4970), [sym_const] = ACTIONS(4970), [sym_debug] = ACTIONS(4970), [sym_deprecated] = ACTIONS(4970), [sym_else] = ACTIONS(4970), [sym_enum] = ACTIONS(4970), [sym_export] = ACTIONS(4970), [sym_extern] = ACTIONS(4970), [sym_final] = ACTIONS(4970), [sym_immutable] = ACTIONS(4970), [sym_import] = ACTIONS(4970), [sym_inout] = ACTIONS(4970), [sym_interface] = ACTIONS(4970), [sym_invariant] = ACTIONS(4970), [sym_mixin] = ACTIONS(4970), [sym_nothrow] = ACTIONS(4970), [sym_override] = ACTIONS(4970), [sym_package] = ACTIONS(4970), [sym_pragma] = ACTIONS(4970), [sym_private] = ACTIONS(4970), [sym_protected] = ACTIONS(4970), [sym_public] = ACTIONS(4970), [sym_pure] = ACTIONS(4970), [sym_ref] = ACTIONS(4970), [sym_return] = ACTIONS(4970), [sym_scope] = ACTIONS(4970), [sym_shared] = ACTIONS(4970), [sym_static] = ACTIONS(4970), [sym_struct] = ACTIONS(4970), [sym_synchronized] = ACTIONS(4970), [sym_template] = ACTIONS(4970), [sym_typeof] = ACTIONS(4970), [sym_union] = ACTIONS(4970), [sym_unittest] = ACTIONS(4970), [sym_version] = ACTIONS(4970), [sym_while] = ACTIONS(4970), [sym_gshared] = ACTIONS(4970), [sym_traits] = ACTIONS(4970), [sym_vector] = ACTIONS(4970), [sym_void] = ACTIONS(4970), [sym_directive] = ACTIONS(3), }, [2771] = { [sym_identifier] = ACTIONS(4542), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4544), [anon_sym_DOT] = ACTIONS(4544), [anon_sym_SEMI] = ACTIONS(4544), [anon_sym_TILDE] = ACTIONS(4544), [anon_sym_AT] = ACTIONS(4544), [sym_bool] = ACTIONS(4542), [sym_byte] = ACTIONS(4542), [sym_ubyte] = ACTIONS(4542), [sym_char] = ACTIONS(4542), [sym_short] = ACTIONS(4542), [sym_ushort] = ACTIONS(4542), [sym_int] = ACTIONS(4542), [sym_uint] = ACTIONS(4542), [sym_long] = ACTIONS(4542), [sym_ulong] = ACTIONS(4542), [sym_cent] = ACTIONS(4542), [sym_ucent] = ACTIONS(4542), [sym_wchar] = ACTIONS(4542), [sym_dchar] = ACTIONS(4542), [sym_float] = ACTIONS(4542), [sym_double] = ACTIONS(4542), [sym_real] = ACTIONS(4542), [sym_ifloat] = ACTIONS(4542), [sym_idouble] = ACTIONS(4542), [sym_ireal] = ACTIONS(4542), [sym_cfloat] = ACTIONS(4542), [sym_cdouble] = ACTIONS(4542), [sym_creal] = ACTIONS(4542), [sym_size_t] = ACTIONS(4542), [sym_ptrdiff_t] = ACTIONS(4542), [sym_string] = ACTIONS(4542), [sym_cstring] = ACTIONS(4542), [sym_dstring] = ACTIONS(4542), [sym_wstring] = ACTIONS(4542), [sym_noreturn] = ACTIONS(4542), [sym_this] = ACTIONS(4542), [sym_abstract] = ACTIONS(4542), [sym_alias] = ACTIONS(4542), [sym_align] = ACTIONS(4542), [sym_auto] = ACTIONS(4542), [sym_class] = ACTIONS(4542), [sym_const] = ACTIONS(4542), [sym_debug] = ACTIONS(4542), [sym_deprecated] = ACTIONS(4542), [sym_else] = ACTIONS(4542), [sym_enum] = ACTIONS(4542), [sym_export] = ACTIONS(4542), [sym_extern] = ACTIONS(4542), [sym_final] = ACTIONS(4542), [sym_immutable] = ACTIONS(4542), [sym_import] = ACTIONS(4542), [sym_inout] = ACTIONS(4542), [sym_interface] = ACTIONS(4542), [sym_invariant] = ACTIONS(4542), [sym_mixin] = ACTIONS(4542), [sym_nothrow] = ACTIONS(4542), [sym_override] = ACTIONS(4542), [sym_package] = ACTIONS(4542), [sym_pragma] = ACTIONS(4542), [sym_private] = ACTIONS(4542), [sym_protected] = ACTIONS(4542), [sym_public] = ACTIONS(4542), [sym_pure] = ACTIONS(4542), [sym_ref] = ACTIONS(4542), [sym_return] = ACTIONS(4542), [sym_scope] = ACTIONS(4542), [sym_shared] = ACTIONS(4542), [sym_static] = ACTIONS(4542), [sym_struct] = ACTIONS(4542), [sym_synchronized] = ACTIONS(4542), [sym_template] = ACTIONS(4542), [sym_typeof] = ACTIONS(4542), [sym_union] = ACTIONS(4542), [sym_unittest] = ACTIONS(4542), [sym_version] = ACTIONS(4542), [sym_while] = ACTIONS(4542), [sym_gshared] = ACTIONS(4542), [sym_traits] = ACTIONS(4542), [sym_vector] = ACTIONS(4542), [sym_void] = ACTIONS(4542), [sym_directive] = ACTIONS(3), }, [2772] = { [sym_identifier] = ACTIONS(4488), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4490), [anon_sym_DOT] = ACTIONS(4490), [anon_sym_SEMI] = ACTIONS(4490), [anon_sym_TILDE] = ACTIONS(4490), [anon_sym_AT] = ACTIONS(4490), [sym_bool] = ACTIONS(4488), [sym_byte] = ACTIONS(4488), [sym_ubyte] = ACTIONS(4488), [sym_char] = ACTIONS(4488), [sym_short] = ACTIONS(4488), [sym_ushort] = ACTIONS(4488), [sym_int] = ACTIONS(4488), [sym_uint] = ACTIONS(4488), [sym_long] = ACTIONS(4488), [sym_ulong] = ACTIONS(4488), [sym_cent] = ACTIONS(4488), [sym_ucent] = ACTIONS(4488), [sym_wchar] = ACTIONS(4488), [sym_dchar] = ACTIONS(4488), [sym_float] = ACTIONS(4488), [sym_double] = ACTIONS(4488), [sym_real] = ACTIONS(4488), [sym_ifloat] = ACTIONS(4488), [sym_idouble] = ACTIONS(4488), [sym_ireal] = ACTIONS(4488), [sym_cfloat] = ACTIONS(4488), [sym_cdouble] = ACTIONS(4488), [sym_creal] = ACTIONS(4488), [sym_size_t] = ACTIONS(4488), [sym_ptrdiff_t] = ACTIONS(4488), [sym_string] = ACTIONS(4488), [sym_cstring] = ACTIONS(4488), [sym_dstring] = ACTIONS(4488), [sym_wstring] = ACTIONS(4488), [sym_noreturn] = ACTIONS(4488), [sym_this] = ACTIONS(4488), [sym_abstract] = ACTIONS(4488), [sym_alias] = ACTIONS(4488), [sym_align] = ACTIONS(4488), [sym_auto] = ACTIONS(4488), [sym_class] = ACTIONS(4488), [sym_const] = ACTIONS(4488), [sym_debug] = ACTIONS(4488), [sym_deprecated] = ACTIONS(4488), [sym_else] = ACTIONS(4488), [sym_enum] = ACTIONS(4488), [sym_export] = ACTIONS(4488), [sym_extern] = ACTIONS(4488), [sym_final] = ACTIONS(4488), [sym_immutable] = ACTIONS(4488), [sym_import] = ACTIONS(4488), [sym_inout] = ACTIONS(4488), [sym_interface] = ACTIONS(4488), [sym_invariant] = ACTIONS(4488), [sym_mixin] = ACTIONS(4488), [sym_nothrow] = ACTIONS(4488), [sym_override] = ACTIONS(4488), [sym_package] = ACTIONS(4488), [sym_pragma] = ACTIONS(4488), [sym_private] = ACTIONS(4488), [sym_protected] = ACTIONS(4488), [sym_public] = ACTIONS(4488), [sym_pure] = ACTIONS(4488), [sym_ref] = ACTIONS(4488), [sym_return] = ACTIONS(4488), [sym_scope] = ACTIONS(4488), [sym_shared] = ACTIONS(4488), [sym_static] = ACTIONS(4488), [sym_struct] = ACTIONS(4488), [sym_synchronized] = ACTIONS(4488), [sym_template] = ACTIONS(4488), [sym_typeof] = ACTIONS(4488), [sym_union] = ACTIONS(4488), [sym_unittest] = ACTIONS(4488), [sym_version] = ACTIONS(4488), [sym_while] = ACTIONS(4488), [sym_gshared] = ACTIONS(4488), [sym_traits] = ACTIONS(4488), [sym_vector] = ACTIONS(4488), [sym_void] = ACTIONS(4488), [sym_directive] = ACTIONS(3), }, [2773] = { [sym_identifier] = ACTIONS(4516), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4518), [anon_sym_DOT] = ACTIONS(4518), [anon_sym_SEMI] = ACTIONS(4518), [anon_sym_TILDE] = ACTIONS(4518), [anon_sym_AT] = ACTIONS(4518), [sym_bool] = ACTIONS(4516), [sym_byte] = ACTIONS(4516), [sym_ubyte] = ACTIONS(4516), [sym_char] = ACTIONS(4516), [sym_short] = ACTIONS(4516), [sym_ushort] = ACTIONS(4516), [sym_int] = ACTIONS(4516), [sym_uint] = ACTIONS(4516), [sym_long] = ACTIONS(4516), [sym_ulong] = ACTIONS(4516), [sym_cent] = ACTIONS(4516), [sym_ucent] = ACTIONS(4516), [sym_wchar] = ACTIONS(4516), [sym_dchar] = ACTIONS(4516), [sym_float] = ACTIONS(4516), [sym_double] = ACTIONS(4516), [sym_real] = ACTIONS(4516), [sym_ifloat] = ACTIONS(4516), [sym_idouble] = ACTIONS(4516), [sym_ireal] = ACTIONS(4516), [sym_cfloat] = ACTIONS(4516), [sym_cdouble] = ACTIONS(4516), [sym_creal] = ACTIONS(4516), [sym_size_t] = ACTIONS(4516), [sym_ptrdiff_t] = ACTIONS(4516), [sym_string] = ACTIONS(4516), [sym_cstring] = ACTIONS(4516), [sym_dstring] = ACTIONS(4516), [sym_wstring] = ACTIONS(4516), [sym_noreturn] = ACTIONS(4516), [sym_this] = ACTIONS(4516), [sym_abstract] = ACTIONS(4516), [sym_alias] = ACTIONS(4516), [sym_align] = ACTIONS(4516), [sym_auto] = ACTIONS(4516), [sym_class] = ACTIONS(4516), [sym_const] = ACTIONS(4516), [sym_debug] = ACTIONS(4516), [sym_deprecated] = ACTIONS(4516), [sym_else] = ACTIONS(4516), [sym_enum] = ACTIONS(4516), [sym_export] = ACTIONS(4516), [sym_extern] = ACTIONS(4516), [sym_final] = ACTIONS(4516), [sym_immutable] = ACTIONS(4516), [sym_import] = ACTIONS(4516), [sym_inout] = ACTIONS(4516), [sym_interface] = ACTIONS(4516), [sym_invariant] = ACTIONS(4516), [sym_mixin] = ACTIONS(4516), [sym_nothrow] = ACTIONS(4516), [sym_override] = ACTIONS(4516), [sym_package] = ACTIONS(4516), [sym_pragma] = ACTIONS(4516), [sym_private] = ACTIONS(4516), [sym_protected] = ACTIONS(4516), [sym_public] = ACTIONS(4516), [sym_pure] = ACTIONS(4516), [sym_ref] = ACTIONS(4516), [sym_return] = ACTIONS(4516), [sym_scope] = ACTIONS(4516), [sym_shared] = ACTIONS(4516), [sym_static] = ACTIONS(4516), [sym_struct] = ACTIONS(4516), [sym_synchronized] = ACTIONS(4516), [sym_template] = ACTIONS(4516), [sym_typeof] = ACTIONS(4516), [sym_union] = ACTIONS(4516), [sym_unittest] = ACTIONS(4516), [sym_version] = ACTIONS(4516), [sym_while] = ACTIONS(4516), [sym_gshared] = ACTIONS(4516), [sym_traits] = ACTIONS(4516), [sym_vector] = ACTIONS(4516), [sym_void] = ACTIONS(4516), [sym_directive] = ACTIONS(3), }, [2774] = { [sym_identifier] = ACTIONS(4508), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4510), [anon_sym_DOT] = ACTIONS(4510), [anon_sym_SEMI] = ACTIONS(4510), [anon_sym_TILDE] = ACTIONS(4510), [anon_sym_AT] = ACTIONS(4510), [sym_bool] = ACTIONS(4508), [sym_byte] = ACTIONS(4508), [sym_ubyte] = ACTIONS(4508), [sym_char] = ACTIONS(4508), [sym_short] = ACTIONS(4508), [sym_ushort] = ACTIONS(4508), [sym_int] = ACTIONS(4508), [sym_uint] = ACTIONS(4508), [sym_long] = ACTIONS(4508), [sym_ulong] = ACTIONS(4508), [sym_cent] = ACTIONS(4508), [sym_ucent] = ACTIONS(4508), [sym_wchar] = ACTIONS(4508), [sym_dchar] = ACTIONS(4508), [sym_float] = ACTIONS(4508), [sym_double] = ACTIONS(4508), [sym_real] = ACTIONS(4508), [sym_ifloat] = ACTIONS(4508), [sym_idouble] = ACTIONS(4508), [sym_ireal] = ACTIONS(4508), [sym_cfloat] = ACTIONS(4508), [sym_cdouble] = ACTIONS(4508), [sym_creal] = ACTIONS(4508), [sym_size_t] = ACTIONS(4508), [sym_ptrdiff_t] = ACTIONS(4508), [sym_string] = ACTIONS(4508), [sym_cstring] = ACTIONS(4508), [sym_dstring] = ACTIONS(4508), [sym_wstring] = ACTIONS(4508), [sym_noreturn] = ACTIONS(4508), [sym_this] = ACTIONS(4508), [sym_abstract] = ACTIONS(4508), [sym_alias] = ACTIONS(4508), [sym_align] = ACTIONS(4508), [sym_auto] = ACTIONS(4508), [sym_class] = ACTIONS(4508), [sym_const] = ACTIONS(4508), [sym_debug] = ACTIONS(4508), [sym_deprecated] = ACTIONS(4508), [sym_else] = ACTIONS(4508), [sym_enum] = ACTIONS(4508), [sym_export] = ACTIONS(4508), [sym_extern] = ACTIONS(4508), [sym_final] = ACTIONS(4508), [sym_immutable] = ACTIONS(4508), [sym_import] = ACTIONS(4508), [sym_inout] = ACTIONS(4508), [sym_interface] = ACTIONS(4508), [sym_invariant] = ACTIONS(4508), [sym_mixin] = ACTIONS(4508), [sym_nothrow] = ACTIONS(4508), [sym_override] = ACTIONS(4508), [sym_package] = ACTIONS(4508), [sym_pragma] = ACTIONS(4508), [sym_private] = ACTIONS(4508), [sym_protected] = ACTIONS(4508), [sym_public] = ACTIONS(4508), [sym_pure] = ACTIONS(4508), [sym_ref] = ACTIONS(4508), [sym_return] = ACTIONS(4508), [sym_scope] = ACTIONS(4508), [sym_shared] = ACTIONS(4508), [sym_static] = ACTIONS(4508), [sym_struct] = ACTIONS(4508), [sym_synchronized] = ACTIONS(4508), [sym_template] = ACTIONS(4508), [sym_typeof] = ACTIONS(4508), [sym_union] = ACTIONS(4508), [sym_unittest] = ACTIONS(4508), [sym_version] = ACTIONS(4508), [sym_while] = ACTIONS(4508), [sym_gshared] = ACTIONS(4508), [sym_traits] = ACTIONS(4508), [sym_vector] = ACTIONS(4508), [sym_void] = ACTIONS(4508), [sym_directive] = ACTIONS(3), }, [2775] = { [sym_identifier] = ACTIONS(4347), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4349), [anon_sym_DOT] = ACTIONS(4349), [anon_sym_SEMI] = ACTIONS(4349), [anon_sym_TILDE] = ACTIONS(4349), [anon_sym_AT] = ACTIONS(4349), [sym_bool] = ACTIONS(4347), [sym_byte] = ACTIONS(4347), [sym_ubyte] = ACTIONS(4347), [sym_char] = ACTIONS(4347), [sym_short] = ACTIONS(4347), [sym_ushort] = ACTIONS(4347), [sym_int] = ACTIONS(4347), [sym_uint] = ACTIONS(4347), [sym_long] = ACTIONS(4347), [sym_ulong] = ACTIONS(4347), [sym_cent] = ACTIONS(4347), [sym_ucent] = ACTIONS(4347), [sym_wchar] = ACTIONS(4347), [sym_dchar] = ACTIONS(4347), [sym_float] = ACTIONS(4347), [sym_double] = ACTIONS(4347), [sym_real] = ACTIONS(4347), [sym_ifloat] = ACTIONS(4347), [sym_idouble] = ACTIONS(4347), [sym_ireal] = ACTIONS(4347), [sym_cfloat] = ACTIONS(4347), [sym_cdouble] = ACTIONS(4347), [sym_creal] = ACTIONS(4347), [sym_size_t] = ACTIONS(4347), [sym_ptrdiff_t] = ACTIONS(4347), [sym_string] = ACTIONS(4347), [sym_cstring] = ACTIONS(4347), [sym_dstring] = ACTIONS(4347), [sym_wstring] = ACTIONS(4347), [sym_noreturn] = ACTIONS(4347), [sym_this] = ACTIONS(4347), [sym_abstract] = ACTIONS(4347), [sym_alias] = ACTIONS(4347), [sym_align] = ACTIONS(4347), [sym_auto] = ACTIONS(4347), [sym_class] = ACTIONS(4347), [sym_const] = ACTIONS(4347), [sym_debug] = ACTIONS(4347), [sym_deprecated] = ACTIONS(4347), [sym_else] = ACTIONS(4347), [sym_enum] = ACTIONS(4347), [sym_export] = ACTIONS(4347), [sym_extern] = ACTIONS(4347), [sym_final] = ACTIONS(4347), [sym_immutable] = ACTIONS(4347), [sym_import] = ACTIONS(4347), [sym_inout] = ACTIONS(4347), [sym_interface] = ACTIONS(4347), [sym_invariant] = ACTIONS(4347), [sym_mixin] = ACTIONS(4347), [sym_nothrow] = ACTIONS(4347), [sym_override] = ACTIONS(4347), [sym_package] = ACTIONS(4347), [sym_pragma] = ACTIONS(4347), [sym_private] = ACTIONS(4347), [sym_protected] = ACTIONS(4347), [sym_public] = ACTIONS(4347), [sym_pure] = ACTIONS(4347), [sym_ref] = ACTIONS(4347), [sym_return] = ACTIONS(4347), [sym_scope] = ACTIONS(4347), [sym_shared] = ACTIONS(4347), [sym_static] = ACTIONS(4347), [sym_struct] = ACTIONS(4347), [sym_synchronized] = ACTIONS(4347), [sym_template] = ACTIONS(4347), [sym_typeof] = ACTIONS(4347), [sym_union] = ACTIONS(4347), [sym_unittest] = ACTIONS(4347), [sym_version] = ACTIONS(4347), [sym_while] = ACTIONS(4347), [sym_gshared] = ACTIONS(4347), [sym_traits] = ACTIONS(4347), [sym_vector] = ACTIONS(4347), [sym_void] = ACTIONS(4347), [sym_directive] = ACTIONS(3), }, [2776] = { [sym_switch_statement] = STATE(5592), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(1314), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2777] = { [sym_identifier] = ACTIONS(4484), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4486), [anon_sym_DOT] = ACTIONS(4486), [anon_sym_SEMI] = ACTIONS(4486), [anon_sym_TILDE] = ACTIONS(4486), [anon_sym_AT] = ACTIONS(4486), [sym_bool] = ACTIONS(4484), [sym_byte] = ACTIONS(4484), [sym_ubyte] = ACTIONS(4484), [sym_char] = ACTIONS(4484), [sym_short] = ACTIONS(4484), [sym_ushort] = ACTIONS(4484), [sym_int] = ACTIONS(4484), [sym_uint] = ACTIONS(4484), [sym_long] = ACTIONS(4484), [sym_ulong] = ACTIONS(4484), [sym_cent] = ACTIONS(4484), [sym_ucent] = ACTIONS(4484), [sym_wchar] = ACTIONS(4484), [sym_dchar] = ACTIONS(4484), [sym_float] = ACTIONS(4484), [sym_double] = ACTIONS(4484), [sym_real] = ACTIONS(4484), [sym_ifloat] = ACTIONS(4484), [sym_idouble] = ACTIONS(4484), [sym_ireal] = ACTIONS(4484), [sym_cfloat] = ACTIONS(4484), [sym_cdouble] = ACTIONS(4484), [sym_creal] = ACTIONS(4484), [sym_size_t] = ACTIONS(4484), [sym_ptrdiff_t] = ACTIONS(4484), [sym_string] = ACTIONS(4484), [sym_cstring] = ACTIONS(4484), [sym_dstring] = ACTIONS(4484), [sym_wstring] = ACTIONS(4484), [sym_noreturn] = ACTIONS(4484), [sym_this] = ACTIONS(4484), [sym_abstract] = ACTIONS(4484), [sym_alias] = ACTIONS(4484), [sym_align] = ACTIONS(4484), [sym_auto] = ACTIONS(4484), [sym_class] = ACTIONS(4484), [sym_const] = ACTIONS(4484), [sym_debug] = ACTIONS(4484), [sym_deprecated] = ACTIONS(4484), [sym_else] = ACTIONS(4484), [sym_enum] = ACTIONS(4484), [sym_export] = ACTIONS(4484), [sym_extern] = ACTIONS(4484), [sym_final] = ACTIONS(4484), [sym_immutable] = ACTIONS(4484), [sym_import] = ACTIONS(4484), [sym_inout] = ACTIONS(4484), [sym_interface] = ACTIONS(4484), [sym_invariant] = ACTIONS(4484), [sym_mixin] = ACTIONS(4484), [sym_nothrow] = ACTIONS(4484), [sym_override] = ACTIONS(4484), [sym_package] = ACTIONS(4484), [sym_pragma] = ACTIONS(4484), [sym_private] = ACTIONS(4484), [sym_protected] = ACTIONS(4484), [sym_public] = ACTIONS(4484), [sym_pure] = ACTIONS(4484), [sym_ref] = ACTIONS(4484), [sym_return] = ACTIONS(4484), [sym_scope] = ACTIONS(4484), [sym_shared] = ACTIONS(4484), [sym_static] = ACTIONS(4484), [sym_struct] = ACTIONS(4484), [sym_synchronized] = ACTIONS(4484), [sym_template] = ACTIONS(4484), [sym_typeof] = ACTIONS(4484), [sym_union] = ACTIONS(4484), [sym_unittest] = ACTIONS(4484), [sym_version] = ACTIONS(4484), [sym_while] = ACTIONS(4484), [sym_gshared] = ACTIONS(4484), [sym_traits] = ACTIONS(4484), [sym_vector] = ACTIONS(4484), [sym_void] = ACTIONS(4484), [sym_directive] = ACTIONS(3), }, [2778] = { [sym_identifier] = ACTIONS(4872), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4874), [anon_sym_DOT] = ACTIONS(4874), [anon_sym_SEMI] = ACTIONS(4874), [anon_sym_TILDE] = ACTIONS(4874), [anon_sym_AT] = ACTIONS(4874), [sym_bool] = ACTIONS(4872), [sym_byte] = ACTIONS(4872), [sym_ubyte] = ACTIONS(4872), [sym_char] = ACTIONS(4872), [sym_short] = ACTIONS(4872), [sym_ushort] = ACTIONS(4872), [sym_int] = ACTIONS(4872), [sym_uint] = ACTIONS(4872), [sym_long] = ACTIONS(4872), [sym_ulong] = ACTIONS(4872), [sym_cent] = ACTIONS(4872), [sym_ucent] = ACTIONS(4872), [sym_wchar] = ACTIONS(4872), [sym_dchar] = ACTIONS(4872), [sym_float] = ACTIONS(4872), [sym_double] = ACTIONS(4872), [sym_real] = ACTIONS(4872), [sym_ifloat] = ACTIONS(4872), [sym_idouble] = ACTIONS(4872), [sym_ireal] = ACTIONS(4872), [sym_cfloat] = ACTIONS(4872), [sym_cdouble] = ACTIONS(4872), [sym_creal] = ACTIONS(4872), [sym_size_t] = ACTIONS(4872), [sym_ptrdiff_t] = ACTIONS(4872), [sym_string] = ACTIONS(4872), [sym_cstring] = ACTIONS(4872), [sym_dstring] = ACTIONS(4872), [sym_wstring] = ACTIONS(4872), [sym_noreturn] = ACTIONS(4872), [sym_this] = ACTIONS(4872), [sym_abstract] = ACTIONS(4872), [sym_alias] = ACTIONS(4872), [sym_align] = ACTIONS(4872), [sym_auto] = ACTIONS(4872), [sym_class] = ACTIONS(4872), [sym_const] = ACTIONS(4872), [sym_debug] = ACTIONS(4872), [sym_deprecated] = ACTIONS(4872), [sym_else] = ACTIONS(4872), [sym_enum] = ACTIONS(4872), [sym_export] = ACTIONS(4872), [sym_extern] = ACTIONS(4872), [sym_final] = ACTIONS(4872), [sym_immutable] = ACTIONS(4872), [sym_import] = ACTIONS(4872), [sym_inout] = ACTIONS(4872), [sym_interface] = ACTIONS(4872), [sym_invariant] = ACTIONS(4872), [sym_mixin] = ACTIONS(4872), [sym_nothrow] = ACTIONS(4872), [sym_override] = ACTIONS(4872), [sym_package] = ACTIONS(4872), [sym_pragma] = ACTIONS(4872), [sym_private] = ACTIONS(4872), [sym_protected] = ACTIONS(4872), [sym_public] = ACTIONS(4872), [sym_pure] = ACTIONS(4872), [sym_ref] = ACTIONS(4872), [sym_return] = ACTIONS(4872), [sym_scope] = ACTIONS(4872), [sym_shared] = ACTIONS(4872), [sym_static] = ACTIONS(4872), [sym_struct] = ACTIONS(4872), [sym_synchronized] = ACTIONS(4872), [sym_template] = ACTIONS(4872), [sym_typeof] = ACTIONS(4872), [sym_union] = ACTIONS(4872), [sym_unittest] = ACTIONS(4872), [sym_version] = ACTIONS(4872), [sym_while] = ACTIONS(4872), [sym_gshared] = ACTIONS(4872), [sym_traits] = ACTIONS(4872), [sym_vector] = ACTIONS(4872), [sym_void] = ACTIONS(4872), [sym_directive] = ACTIONS(3), }, [2779] = { [sym_identifier] = ACTIONS(2645), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2643), [anon_sym_DOT] = ACTIONS(2643), [anon_sym_SEMI] = ACTIONS(2643), [anon_sym_TILDE] = ACTIONS(2643), [anon_sym_AT] = ACTIONS(2643), [sym_bool] = ACTIONS(2645), [sym_byte] = ACTIONS(2645), [sym_ubyte] = ACTIONS(2645), [sym_char] = ACTIONS(2645), [sym_short] = ACTIONS(2645), [sym_ushort] = ACTIONS(2645), [sym_int] = ACTIONS(2645), [sym_uint] = ACTIONS(2645), [sym_long] = ACTIONS(2645), [sym_ulong] = ACTIONS(2645), [sym_cent] = ACTIONS(2645), [sym_ucent] = ACTIONS(2645), [sym_wchar] = ACTIONS(2645), [sym_dchar] = ACTIONS(2645), [sym_float] = ACTIONS(2645), [sym_double] = ACTIONS(2645), [sym_real] = ACTIONS(2645), [sym_ifloat] = ACTIONS(2645), [sym_idouble] = ACTIONS(2645), [sym_ireal] = ACTIONS(2645), [sym_cfloat] = ACTIONS(2645), [sym_cdouble] = ACTIONS(2645), [sym_creal] = ACTIONS(2645), [sym_size_t] = ACTIONS(2645), [sym_ptrdiff_t] = ACTIONS(2645), [sym_string] = ACTIONS(2645), [sym_cstring] = ACTIONS(2645), [sym_dstring] = ACTIONS(2645), [sym_wstring] = ACTIONS(2645), [sym_noreturn] = ACTIONS(2645), [sym_this] = ACTIONS(2645), [sym_abstract] = ACTIONS(2645), [sym_alias] = ACTIONS(2645), [sym_align] = ACTIONS(2645), [sym_auto] = ACTIONS(2645), [sym_class] = ACTIONS(2645), [sym_const] = ACTIONS(2645), [sym_debug] = ACTIONS(2645), [sym_deprecated] = ACTIONS(2645), [sym_else] = ACTIONS(2645), [sym_enum] = ACTIONS(2645), [sym_export] = ACTIONS(2645), [sym_extern] = ACTIONS(2645), [sym_final] = ACTIONS(2645), [sym_immutable] = ACTIONS(2645), [sym_import] = ACTIONS(2645), [sym_inout] = ACTIONS(2645), [sym_interface] = ACTIONS(2645), [sym_invariant] = ACTIONS(2645), [sym_mixin] = ACTIONS(2645), [sym_nothrow] = ACTIONS(2645), [sym_override] = ACTIONS(2645), [sym_package] = ACTIONS(2645), [sym_pragma] = ACTIONS(2645), [sym_private] = ACTIONS(2645), [sym_protected] = ACTIONS(2645), [sym_public] = ACTIONS(2645), [sym_pure] = ACTIONS(2645), [sym_ref] = ACTIONS(2645), [sym_return] = ACTIONS(2645), [sym_scope] = ACTIONS(2645), [sym_shared] = ACTIONS(2645), [sym_static] = ACTIONS(2645), [sym_struct] = ACTIONS(2645), [sym_synchronized] = ACTIONS(2645), [sym_template] = ACTIONS(2645), [sym_typeof] = ACTIONS(2645), [sym_union] = ACTIONS(2645), [sym_unittest] = ACTIONS(2645), [sym_version] = ACTIONS(2645), [sym_while] = ACTIONS(2645), [sym_gshared] = ACTIONS(2645), [sym_traits] = ACTIONS(2645), [sym_vector] = ACTIONS(2645), [sym_void] = ACTIONS(2645), [sym_directive] = ACTIONS(3), }, [2780] = { [sym_identifier] = ACTIONS(4704), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4706), [anon_sym_DOT] = ACTIONS(4706), [anon_sym_SEMI] = ACTIONS(4706), [anon_sym_TILDE] = ACTIONS(4706), [anon_sym_AT] = ACTIONS(4706), [sym_bool] = ACTIONS(4704), [sym_byte] = ACTIONS(4704), [sym_ubyte] = ACTIONS(4704), [sym_char] = ACTIONS(4704), [sym_short] = ACTIONS(4704), [sym_ushort] = ACTIONS(4704), [sym_int] = ACTIONS(4704), [sym_uint] = ACTIONS(4704), [sym_long] = ACTIONS(4704), [sym_ulong] = ACTIONS(4704), [sym_cent] = ACTIONS(4704), [sym_ucent] = ACTIONS(4704), [sym_wchar] = ACTIONS(4704), [sym_dchar] = ACTIONS(4704), [sym_float] = ACTIONS(4704), [sym_double] = ACTIONS(4704), [sym_real] = ACTIONS(4704), [sym_ifloat] = ACTIONS(4704), [sym_idouble] = ACTIONS(4704), [sym_ireal] = ACTIONS(4704), [sym_cfloat] = ACTIONS(4704), [sym_cdouble] = ACTIONS(4704), [sym_creal] = ACTIONS(4704), [sym_size_t] = ACTIONS(4704), [sym_ptrdiff_t] = ACTIONS(4704), [sym_string] = ACTIONS(4704), [sym_cstring] = ACTIONS(4704), [sym_dstring] = ACTIONS(4704), [sym_wstring] = ACTIONS(4704), [sym_noreturn] = ACTIONS(4704), [sym_this] = ACTIONS(4704), [sym_abstract] = ACTIONS(4704), [sym_alias] = ACTIONS(4704), [sym_align] = ACTIONS(4704), [sym_auto] = ACTIONS(4704), [sym_class] = ACTIONS(4704), [sym_const] = ACTIONS(4704), [sym_debug] = ACTIONS(4704), [sym_deprecated] = ACTIONS(4704), [sym_else] = ACTIONS(4704), [sym_enum] = ACTIONS(4704), [sym_export] = ACTIONS(4704), [sym_extern] = ACTIONS(4704), [sym_final] = ACTIONS(4704), [sym_immutable] = ACTIONS(4704), [sym_import] = ACTIONS(4704), [sym_inout] = ACTIONS(4704), [sym_interface] = ACTIONS(4704), [sym_invariant] = ACTIONS(4704), [sym_mixin] = ACTIONS(4704), [sym_nothrow] = ACTIONS(4704), [sym_override] = ACTIONS(4704), [sym_package] = ACTIONS(4704), [sym_pragma] = ACTIONS(4704), [sym_private] = ACTIONS(4704), [sym_protected] = ACTIONS(4704), [sym_public] = ACTIONS(4704), [sym_pure] = ACTIONS(4704), [sym_ref] = ACTIONS(4704), [sym_return] = ACTIONS(4704), [sym_scope] = ACTIONS(4704), [sym_shared] = ACTIONS(4704), [sym_static] = ACTIONS(4704), [sym_struct] = ACTIONS(4704), [sym_synchronized] = ACTIONS(4704), [sym_template] = ACTIONS(4704), [sym_typeof] = ACTIONS(4704), [sym_union] = ACTIONS(4704), [sym_unittest] = ACTIONS(4704), [sym_version] = ACTIONS(4704), [sym_while] = ACTIONS(4704), [sym_gshared] = ACTIONS(4704), [sym_traits] = ACTIONS(4704), [sym_vector] = ACTIONS(4704), [sym_void] = ACTIONS(4704), [sym_directive] = ACTIONS(3), }, [2781] = { [sym_identifier] = ACTIONS(4712), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4714), [anon_sym_DOT] = ACTIONS(4714), [anon_sym_SEMI] = ACTIONS(4714), [anon_sym_TILDE] = ACTIONS(4714), [anon_sym_AT] = ACTIONS(4714), [sym_bool] = ACTIONS(4712), [sym_byte] = ACTIONS(4712), [sym_ubyte] = ACTIONS(4712), [sym_char] = ACTIONS(4712), [sym_short] = ACTIONS(4712), [sym_ushort] = ACTIONS(4712), [sym_int] = ACTIONS(4712), [sym_uint] = ACTIONS(4712), [sym_long] = ACTIONS(4712), [sym_ulong] = ACTIONS(4712), [sym_cent] = ACTIONS(4712), [sym_ucent] = ACTIONS(4712), [sym_wchar] = ACTIONS(4712), [sym_dchar] = ACTIONS(4712), [sym_float] = ACTIONS(4712), [sym_double] = ACTIONS(4712), [sym_real] = ACTIONS(4712), [sym_ifloat] = ACTIONS(4712), [sym_idouble] = ACTIONS(4712), [sym_ireal] = ACTIONS(4712), [sym_cfloat] = ACTIONS(4712), [sym_cdouble] = ACTIONS(4712), [sym_creal] = ACTIONS(4712), [sym_size_t] = ACTIONS(4712), [sym_ptrdiff_t] = ACTIONS(4712), [sym_string] = ACTIONS(4712), [sym_cstring] = ACTIONS(4712), [sym_dstring] = ACTIONS(4712), [sym_wstring] = ACTIONS(4712), [sym_noreturn] = ACTIONS(4712), [sym_this] = ACTIONS(4712), [sym_abstract] = ACTIONS(4712), [sym_alias] = ACTIONS(4712), [sym_align] = ACTIONS(4712), [sym_auto] = ACTIONS(4712), [sym_class] = ACTIONS(4712), [sym_const] = ACTIONS(4712), [sym_debug] = ACTIONS(4712), [sym_deprecated] = ACTIONS(4712), [sym_else] = ACTIONS(4712), [sym_enum] = ACTIONS(4712), [sym_export] = ACTIONS(4712), [sym_extern] = ACTIONS(4712), [sym_final] = ACTIONS(4712), [sym_immutable] = ACTIONS(4712), [sym_import] = ACTIONS(4712), [sym_inout] = ACTIONS(4712), [sym_interface] = ACTIONS(4712), [sym_invariant] = ACTIONS(4712), [sym_mixin] = ACTIONS(4712), [sym_nothrow] = ACTIONS(4712), [sym_override] = ACTIONS(4712), [sym_package] = ACTIONS(4712), [sym_pragma] = ACTIONS(4712), [sym_private] = ACTIONS(4712), [sym_protected] = ACTIONS(4712), [sym_public] = ACTIONS(4712), [sym_pure] = ACTIONS(4712), [sym_ref] = ACTIONS(4712), [sym_return] = ACTIONS(4712), [sym_scope] = ACTIONS(4712), [sym_shared] = ACTIONS(4712), [sym_static] = ACTIONS(4712), [sym_struct] = ACTIONS(4712), [sym_synchronized] = ACTIONS(4712), [sym_template] = ACTIONS(4712), [sym_typeof] = ACTIONS(4712), [sym_union] = ACTIONS(4712), [sym_unittest] = ACTIONS(4712), [sym_version] = ACTIONS(4712), [sym_while] = ACTIONS(4712), [sym_gshared] = ACTIONS(4712), [sym_traits] = ACTIONS(4712), [sym_vector] = ACTIONS(4712), [sym_void] = ACTIONS(4712), [sym_directive] = ACTIONS(3), }, [2782] = { [ts_builtin_sym_end] = ACTIONS(2796), [sym_identifier] = ACTIONS(2798), [sym_end_file] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_else] = ACTIONS(6801), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [sym_directive] = ACTIONS(3), }, [2783] = { [sym_identifier] = ACTIONS(4476), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4478), [anon_sym_DOT] = ACTIONS(4478), [anon_sym_SEMI] = ACTIONS(4478), [anon_sym_TILDE] = ACTIONS(4478), [anon_sym_AT] = ACTIONS(4478), [sym_bool] = ACTIONS(4476), [sym_byte] = ACTIONS(4476), [sym_ubyte] = ACTIONS(4476), [sym_char] = ACTIONS(4476), [sym_short] = ACTIONS(4476), [sym_ushort] = ACTIONS(4476), [sym_int] = ACTIONS(4476), [sym_uint] = ACTIONS(4476), [sym_long] = ACTIONS(4476), [sym_ulong] = ACTIONS(4476), [sym_cent] = ACTIONS(4476), [sym_ucent] = ACTIONS(4476), [sym_wchar] = ACTIONS(4476), [sym_dchar] = ACTIONS(4476), [sym_float] = ACTIONS(4476), [sym_double] = ACTIONS(4476), [sym_real] = ACTIONS(4476), [sym_ifloat] = ACTIONS(4476), [sym_idouble] = ACTIONS(4476), [sym_ireal] = ACTIONS(4476), [sym_cfloat] = ACTIONS(4476), [sym_cdouble] = ACTIONS(4476), [sym_creal] = ACTIONS(4476), [sym_size_t] = ACTIONS(4476), [sym_ptrdiff_t] = ACTIONS(4476), [sym_string] = ACTIONS(4476), [sym_cstring] = ACTIONS(4476), [sym_dstring] = ACTIONS(4476), [sym_wstring] = ACTIONS(4476), [sym_noreturn] = ACTIONS(4476), [sym_this] = ACTIONS(4476), [sym_abstract] = ACTIONS(4476), [sym_alias] = ACTIONS(4476), [sym_align] = ACTIONS(4476), [sym_auto] = ACTIONS(4476), [sym_class] = ACTIONS(4476), [sym_const] = ACTIONS(4476), [sym_debug] = ACTIONS(4476), [sym_deprecated] = ACTIONS(4476), [sym_else] = ACTIONS(4476), [sym_enum] = ACTIONS(4476), [sym_export] = ACTIONS(4476), [sym_extern] = ACTIONS(4476), [sym_final] = ACTIONS(4476), [sym_immutable] = ACTIONS(4476), [sym_import] = ACTIONS(4476), [sym_inout] = ACTIONS(4476), [sym_interface] = ACTIONS(4476), [sym_invariant] = ACTIONS(4476), [sym_mixin] = ACTIONS(4476), [sym_nothrow] = ACTIONS(4476), [sym_override] = ACTIONS(4476), [sym_package] = ACTIONS(4476), [sym_pragma] = ACTIONS(4476), [sym_private] = ACTIONS(4476), [sym_protected] = ACTIONS(4476), [sym_public] = ACTIONS(4476), [sym_pure] = ACTIONS(4476), [sym_ref] = ACTIONS(4476), [sym_return] = ACTIONS(4476), [sym_scope] = ACTIONS(4476), [sym_shared] = ACTIONS(4476), [sym_static] = ACTIONS(4476), [sym_struct] = ACTIONS(4476), [sym_synchronized] = ACTIONS(4476), [sym_template] = ACTIONS(4476), [sym_typeof] = ACTIONS(4476), [sym_union] = ACTIONS(4476), [sym_unittest] = ACTIONS(4476), [sym_version] = ACTIONS(4476), [sym_while] = ACTIONS(4476), [sym_gshared] = ACTIONS(4476), [sym_traits] = ACTIONS(4476), [sym_vector] = ACTIONS(4476), [sym_void] = ACTIONS(4476), [sym_directive] = ACTIONS(3), }, [2784] = { [sym_identifier] = ACTIONS(4720), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4722), [anon_sym_DOT] = ACTIONS(4722), [anon_sym_SEMI] = ACTIONS(4722), [anon_sym_TILDE] = ACTIONS(4722), [anon_sym_AT] = ACTIONS(4722), [sym_bool] = ACTIONS(4720), [sym_byte] = ACTIONS(4720), [sym_ubyte] = ACTIONS(4720), [sym_char] = ACTIONS(4720), [sym_short] = ACTIONS(4720), [sym_ushort] = ACTIONS(4720), [sym_int] = ACTIONS(4720), [sym_uint] = ACTIONS(4720), [sym_long] = ACTIONS(4720), [sym_ulong] = ACTIONS(4720), [sym_cent] = ACTIONS(4720), [sym_ucent] = ACTIONS(4720), [sym_wchar] = ACTIONS(4720), [sym_dchar] = ACTIONS(4720), [sym_float] = ACTIONS(4720), [sym_double] = ACTIONS(4720), [sym_real] = ACTIONS(4720), [sym_ifloat] = ACTIONS(4720), [sym_idouble] = ACTIONS(4720), [sym_ireal] = ACTIONS(4720), [sym_cfloat] = ACTIONS(4720), [sym_cdouble] = ACTIONS(4720), [sym_creal] = ACTIONS(4720), [sym_size_t] = ACTIONS(4720), [sym_ptrdiff_t] = ACTIONS(4720), [sym_string] = ACTIONS(4720), [sym_cstring] = ACTIONS(4720), [sym_dstring] = ACTIONS(4720), [sym_wstring] = ACTIONS(4720), [sym_noreturn] = ACTIONS(4720), [sym_this] = ACTIONS(4720), [sym_abstract] = ACTIONS(4720), [sym_alias] = ACTIONS(4720), [sym_align] = ACTIONS(4720), [sym_auto] = ACTIONS(4720), [sym_class] = ACTIONS(4720), [sym_const] = ACTIONS(4720), [sym_debug] = ACTIONS(4720), [sym_deprecated] = ACTIONS(4720), [sym_else] = ACTIONS(4720), [sym_enum] = ACTIONS(4720), [sym_export] = ACTIONS(4720), [sym_extern] = ACTIONS(4720), [sym_final] = ACTIONS(4720), [sym_immutable] = ACTIONS(4720), [sym_import] = ACTIONS(4720), [sym_inout] = ACTIONS(4720), [sym_interface] = ACTIONS(4720), [sym_invariant] = ACTIONS(4720), [sym_mixin] = ACTIONS(4720), [sym_nothrow] = ACTIONS(4720), [sym_override] = ACTIONS(4720), [sym_package] = ACTIONS(4720), [sym_pragma] = ACTIONS(4720), [sym_private] = ACTIONS(4720), [sym_protected] = ACTIONS(4720), [sym_public] = ACTIONS(4720), [sym_pure] = ACTIONS(4720), [sym_ref] = ACTIONS(4720), [sym_return] = ACTIONS(4720), [sym_scope] = ACTIONS(4720), [sym_shared] = ACTIONS(4720), [sym_static] = ACTIONS(4720), [sym_struct] = ACTIONS(4720), [sym_synchronized] = ACTIONS(4720), [sym_template] = ACTIONS(4720), [sym_typeof] = ACTIONS(4720), [sym_union] = ACTIONS(4720), [sym_unittest] = ACTIONS(4720), [sym_version] = ACTIONS(4720), [sym_while] = ACTIONS(4720), [sym_gshared] = ACTIONS(4720), [sym_traits] = ACTIONS(4720), [sym_vector] = ACTIONS(4720), [sym_void] = ACTIONS(4720), [sym_directive] = ACTIONS(3), }, [2785] = { [sym_identifier] = ACTIONS(4732), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4734), [anon_sym_DOT] = ACTIONS(4734), [anon_sym_SEMI] = ACTIONS(4734), [anon_sym_TILDE] = ACTIONS(4734), [anon_sym_AT] = ACTIONS(4734), [sym_bool] = ACTIONS(4732), [sym_byte] = ACTIONS(4732), [sym_ubyte] = ACTIONS(4732), [sym_char] = ACTIONS(4732), [sym_short] = ACTIONS(4732), [sym_ushort] = ACTIONS(4732), [sym_int] = ACTIONS(4732), [sym_uint] = ACTIONS(4732), [sym_long] = ACTIONS(4732), [sym_ulong] = ACTIONS(4732), [sym_cent] = ACTIONS(4732), [sym_ucent] = ACTIONS(4732), [sym_wchar] = ACTIONS(4732), [sym_dchar] = ACTIONS(4732), [sym_float] = ACTIONS(4732), [sym_double] = ACTIONS(4732), [sym_real] = ACTIONS(4732), [sym_ifloat] = ACTIONS(4732), [sym_idouble] = ACTIONS(4732), [sym_ireal] = ACTIONS(4732), [sym_cfloat] = ACTIONS(4732), [sym_cdouble] = ACTIONS(4732), [sym_creal] = ACTIONS(4732), [sym_size_t] = ACTIONS(4732), [sym_ptrdiff_t] = ACTIONS(4732), [sym_string] = ACTIONS(4732), [sym_cstring] = ACTIONS(4732), [sym_dstring] = ACTIONS(4732), [sym_wstring] = ACTIONS(4732), [sym_noreturn] = ACTIONS(4732), [sym_this] = ACTIONS(4732), [sym_abstract] = ACTIONS(4732), [sym_alias] = ACTIONS(4732), [sym_align] = ACTIONS(4732), [sym_auto] = ACTIONS(4732), [sym_class] = ACTIONS(4732), [sym_const] = ACTIONS(4732), [sym_debug] = ACTIONS(4732), [sym_deprecated] = ACTIONS(4732), [sym_else] = ACTIONS(4732), [sym_enum] = ACTIONS(4732), [sym_export] = ACTIONS(4732), [sym_extern] = ACTIONS(4732), [sym_final] = ACTIONS(4732), [sym_immutable] = ACTIONS(4732), [sym_import] = ACTIONS(4732), [sym_inout] = ACTIONS(4732), [sym_interface] = ACTIONS(4732), [sym_invariant] = ACTIONS(4732), [sym_mixin] = ACTIONS(4732), [sym_nothrow] = ACTIONS(4732), [sym_override] = ACTIONS(4732), [sym_package] = ACTIONS(4732), [sym_pragma] = ACTIONS(4732), [sym_private] = ACTIONS(4732), [sym_protected] = ACTIONS(4732), [sym_public] = ACTIONS(4732), [sym_pure] = ACTIONS(4732), [sym_ref] = ACTIONS(4732), [sym_return] = ACTIONS(4732), [sym_scope] = ACTIONS(4732), [sym_shared] = ACTIONS(4732), [sym_static] = ACTIONS(4732), [sym_struct] = ACTIONS(4732), [sym_synchronized] = ACTIONS(4732), [sym_template] = ACTIONS(4732), [sym_typeof] = ACTIONS(4732), [sym_union] = ACTIONS(4732), [sym_unittest] = ACTIONS(4732), [sym_version] = ACTIONS(4732), [sym_while] = ACTIONS(4732), [sym_gshared] = ACTIONS(4732), [sym_traits] = ACTIONS(4732), [sym_vector] = ACTIONS(4732), [sym_void] = ACTIONS(4732), [sym_directive] = ACTIONS(3), }, [2786] = { [sym_identifier] = ACTIONS(4736), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4738), [anon_sym_DOT] = ACTIONS(4738), [anon_sym_SEMI] = ACTIONS(4738), [anon_sym_TILDE] = ACTIONS(4738), [anon_sym_AT] = ACTIONS(4738), [sym_bool] = ACTIONS(4736), [sym_byte] = ACTIONS(4736), [sym_ubyte] = ACTIONS(4736), [sym_char] = ACTIONS(4736), [sym_short] = ACTIONS(4736), [sym_ushort] = ACTIONS(4736), [sym_int] = ACTIONS(4736), [sym_uint] = ACTIONS(4736), [sym_long] = ACTIONS(4736), [sym_ulong] = ACTIONS(4736), [sym_cent] = ACTIONS(4736), [sym_ucent] = ACTIONS(4736), [sym_wchar] = ACTIONS(4736), [sym_dchar] = ACTIONS(4736), [sym_float] = ACTIONS(4736), [sym_double] = ACTIONS(4736), [sym_real] = ACTIONS(4736), [sym_ifloat] = ACTIONS(4736), [sym_idouble] = ACTIONS(4736), [sym_ireal] = ACTIONS(4736), [sym_cfloat] = ACTIONS(4736), [sym_cdouble] = ACTIONS(4736), [sym_creal] = ACTIONS(4736), [sym_size_t] = ACTIONS(4736), [sym_ptrdiff_t] = ACTIONS(4736), [sym_string] = ACTIONS(4736), [sym_cstring] = ACTIONS(4736), [sym_dstring] = ACTIONS(4736), [sym_wstring] = ACTIONS(4736), [sym_noreturn] = ACTIONS(4736), [sym_this] = ACTIONS(4736), [sym_abstract] = ACTIONS(4736), [sym_alias] = ACTIONS(4736), [sym_align] = ACTIONS(4736), [sym_auto] = ACTIONS(4736), [sym_class] = ACTIONS(4736), [sym_const] = ACTIONS(4736), [sym_debug] = ACTIONS(4736), [sym_deprecated] = ACTIONS(4736), [sym_else] = ACTIONS(4736), [sym_enum] = ACTIONS(4736), [sym_export] = ACTIONS(4736), [sym_extern] = ACTIONS(4736), [sym_final] = ACTIONS(4736), [sym_immutable] = ACTIONS(4736), [sym_import] = ACTIONS(4736), [sym_inout] = ACTIONS(4736), [sym_interface] = ACTIONS(4736), [sym_invariant] = ACTIONS(4736), [sym_mixin] = ACTIONS(4736), [sym_nothrow] = ACTIONS(4736), [sym_override] = ACTIONS(4736), [sym_package] = ACTIONS(4736), [sym_pragma] = ACTIONS(4736), [sym_private] = ACTIONS(4736), [sym_protected] = ACTIONS(4736), [sym_public] = ACTIONS(4736), [sym_pure] = ACTIONS(4736), [sym_ref] = ACTIONS(4736), [sym_return] = ACTIONS(4736), [sym_scope] = ACTIONS(4736), [sym_shared] = ACTIONS(4736), [sym_static] = ACTIONS(4736), [sym_struct] = ACTIONS(4736), [sym_synchronized] = ACTIONS(4736), [sym_template] = ACTIONS(4736), [sym_typeof] = ACTIONS(4736), [sym_union] = ACTIONS(4736), [sym_unittest] = ACTIONS(4736), [sym_version] = ACTIONS(4736), [sym_while] = ACTIONS(4736), [sym_gshared] = ACTIONS(4736), [sym_traits] = ACTIONS(4736), [sym_vector] = ACTIONS(4736), [sym_void] = ACTIONS(4736), [sym_directive] = ACTIONS(3), }, [2787] = { [sym_identifier] = ACTIONS(2806), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2804), [anon_sym_DOT] = ACTIONS(2804), [anon_sym_SEMI] = ACTIONS(2804), [anon_sym_TILDE] = ACTIONS(2804), [anon_sym_AT] = ACTIONS(2804), [sym_bool] = ACTIONS(2806), [sym_byte] = ACTIONS(2806), [sym_ubyte] = ACTIONS(2806), [sym_char] = ACTIONS(2806), [sym_short] = ACTIONS(2806), [sym_ushort] = ACTIONS(2806), [sym_int] = ACTIONS(2806), [sym_uint] = ACTIONS(2806), [sym_long] = ACTIONS(2806), [sym_ulong] = ACTIONS(2806), [sym_cent] = ACTIONS(2806), [sym_ucent] = ACTIONS(2806), [sym_wchar] = ACTIONS(2806), [sym_dchar] = ACTIONS(2806), [sym_float] = ACTIONS(2806), [sym_double] = ACTIONS(2806), [sym_real] = ACTIONS(2806), [sym_ifloat] = ACTIONS(2806), [sym_idouble] = ACTIONS(2806), [sym_ireal] = ACTIONS(2806), [sym_cfloat] = ACTIONS(2806), [sym_cdouble] = ACTIONS(2806), [sym_creal] = ACTIONS(2806), [sym_size_t] = ACTIONS(2806), [sym_ptrdiff_t] = ACTIONS(2806), [sym_string] = ACTIONS(2806), [sym_cstring] = ACTIONS(2806), [sym_dstring] = ACTIONS(2806), [sym_wstring] = ACTIONS(2806), [sym_noreturn] = ACTIONS(2806), [sym_this] = ACTIONS(2806), [sym_abstract] = ACTIONS(2806), [sym_alias] = ACTIONS(2806), [sym_align] = ACTIONS(2806), [sym_auto] = ACTIONS(2806), [sym_class] = ACTIONS(2806), [sym_const] = ACTIONS(2806), [sym_debug] = ACTIONS(2806), [sym_deprecated] = ACTIONS(2806), [sym_else] = ACTIONS(2806), [sym_enum] = ACTIONS(2806), [sym_export] = ACTIONS(2806), [sym_extern] = ACTIONS(2806), [sym_final] = ACTIONS(2806), [sym_immutable] = ACTIONS(2806), [sym_import] = ACTIONS(2806), [sym_inout] = ACTIONS(2806), [sym_interface] = ACTIONS(2806), [sym_invariant] = ACTIONS(2806), [sym_mixin] = ACTIONS(2806), [sym_nothrow] = ACTIONS(2806), [sym_override] = ACTIONS(2806), [sym_package] = ACTIONS(2806), [sym_pragma] = ACTIONS(2806), [sym_private] = ACTIONS(2806), [sym_protected] = ACTIONS(2806), [sym_public] = ACTIONS(2806), [sym_pure] = ACTIONS(2806), [sym_ref] = ACTIONS(2806), [sym_return] = ACTIONS(2806), [sym_scope] = ACTIONS(2806), [sym_shared] = ACTIONS(2806), [sym_static] = ACTIONS(2806), [sym_struct] = ACTIONS(2806), [sym_synchronized] = ACTIONS(2806), [sym_template] = ACTIONS(2806), [sym_typeof] = ACTIONS(2806), [sym_union] = ACTIONS(2806), [sym_unittest] = ACTIONS(2806), [sym_version] = ACTIONS(2806), [sym_while] = ACTIONS(2806), [sym_gshared] = ACTIONS(2806), [sym_traits] = ACTIONS(2806), [sym_vector] = ACTIONS(2806), [sym_void] = ACTIONS(2806), [sym_directive] = ACTIONS(3), }, [2788] = { [sym_identifier] = ACTIONS(4468), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4470), [anon_sym_DOT] = ACTIONS(4470), [anon_sym_SEMI] = ACTIONS(4470), [anon_sym_TILDE] = ACTIONS(4470), [anon_sym_AT] = ACTIONS(4470), [sym_bool] = ACTIONS(4468), [sym_byte] = ACTIONS(4468), [sym_ubyte] = ACTIONS(4468), [sym_char] = ACTIONS(4468), [sym_short] = ACTIONS(4468), [sym_ushort] = ACTIONS(4468), [sym_int] = ACTIONS(4468), [sym_uint] = ACTIONS(4468), [sym_long] = ACTIONS(4468), [sym_ulong] = ACTIONS(4468), [sym_cent] = ACTIONS(4468), [sym_ucent] = ACTIONS(4468), [sym_wchar] = ACTIONS(4468), [sym_dchar] = ACTIONS(4468), [sym_float] = ACTIONS(4468), [sym_double] = ACTIONS(4468), [sym_real] = ACTIONS(4468), [sym_ifloat] = ACTIONS(4468), [sym_idouble] = ACTIONS(4468), [sym_ireal] = ACTIONS(4468), [sym_cfloat] = ACTIONS(4468), [sym_cdouble] = ACTIONS(4468), [sym_creal] = ACTIONS(4468), [sym_size_t] = ACTIONS(4468), [sym_ptrdiff_t] = ACTIONS(4468), [sym_string] = ACTIONS(4468), [sym_cstring] = ACTIONS(4468), [sym_dstring] = ACTIONS(4468), [sym_wstring] = ACTIONS(4468), [sym_noreturn] = ACTIONS(4468), [sym_this] = ACTIONS(4468), [sym_abstract] = ACTIONS(4468), [sym_alias] = ACTIONS(4468), [sym_align] = ACTIONS(4468), [sym_auto] = ACTIONS(4468), [sym_class] = ACTIONS(4468), [sym_const] = ACTIONS(4468), [sym_debug] = ACTIONS(4468), [sym_deprecated] = ACTIONS(4468), [sym_else] = ACTIONS(4468), [sym_enum] = ACTIONS(4468), [sym_export] = ACTIONS(4468), [sym_extern] = ACTIONS(4468), [sym_final] = ACTIONS(4468), [sym_immutable] = ACTIONS(4468), [sym_import] = ACTIONS(4468), [sym_inout] = ACTIONS(4468), [sym_interface] = ACTIONS(4468), [sym_invariant] = ACTIONS(4468), [sym_mixin] = ACTIONS(4468), [sym_nothrow] = ACTIONS(4468), [sym_override] = ACTIONS(4468), [sym_package] = ACTIONS(4468), [sym_pragma] = ACTIONS(4468), [sym_private] = ACTIONS(4468), [sym_protected] = ACTIONS(4468), [sym_public] = ACTIONS(4468), [sym_pure] = ACTIONS(4468), [sym_ref] = ACTIONS(4468), [sym_return] = ACTIONS(4468), [sym_scope] = ACTIONS(4468), [sym_shared] = ACTIONS(4468), [sym_static] = ACTIONS(4468), [sym_struct] = ACTIONS(4468), [sym_synchronized] = ACTIONS(4468), [sym_template] = ACTIONS(4468), [sym_typeof] = ACTIONS(4468), [sym_union] = ACTIONS(4468), [sym_unittest] = ACTIONS(4468), [sym_version] = ACTIONS(4468), [sym_while] = ACTIONS(4468), [sym_gshared] = ACTIONS(4468), [sym_traits] = ACTIONS(4468), [sym_vector] = ACTIONS(4468), [sym_void] = ACTIONS(4468), [sym_directive] = ACTIONS(3), }, [2789] = { [sym_identifier] = ACTIONS(4774), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4776), [anon_sym_DOT] = ACTIONS(4776), [anon_sym_SEMI] = ACTIONS(4776), [anon_sym_TILDE] = ACTIONS(4776), [anon_sym_AT] = ACTIONS(4776), [sym_bool] = ACTIONS(4774), [sym_byte] = ACTIONS(4774), [sym_ubyte] = ACTIONS(4774), [sym_char] = ACTIONS(4774), [sym_short] = ACTIONS(4774), [sym_ushort] = ACTIONS(4774), [sym_int] = ACTIONS(4774), [sym_uint] = ACTIONS(4774), [sym_long] = ACTIONS(4774), [sym_ulong] = ACTIONS(4774), [sym_cent] = ACTIONS(4774), [sym_ucent] = ACTIONS(4774), [sym_wchar] = ACTIONS(4774), [sym_dchar] = ACTIONS(4774), [sym_float] = ACTIONS(4774), [sym_double] = ACTIONS(4774), [sym_real] = ACTIONS(4774), [sym_ifloat] = ACTIONS(4774), [sym_idouble] = ACTIONS(4774), [sym_ireal] = ACTIONS(4774), [sym_cfloat] = ACTIONS(4774), [sym_cdouble] = ACTIONS(4774), [sym_creal] = ACTIONS(4774), [sym_size_t] = ACTIONS(4774), [sym_ptrdiff_t] = ACTIONS(4774), [sym_string] = ACTIONS(4774), [sym_cstring] = ACTIONS(4774), [sym_dstring] = ACTIONS(4774), [sym_wstring] = ACTIONS(4774), [sym_noreturn] = ACTIONS(4774), [sym_this] = ACTIONS(4774), [sym_abstract] = ACTIONS(4774), [sym_alias] = ACTIONS(4774), [sym_align] = ACTIONS(4774), [sym_auto] = ACTIONS(4774), [sym_class] = ACTIONS(4774), [sym_const] = ACTIONS(4774), [sym_debug] = ACTIONS(4774), [sym_deprecated] = ACTIONS(4774), [sym_else] = ACTIONS(4774), [sym_enum] = ACTIONS(4774), [sym_export] = ACTIONS(4774), [sym_extern] = ACTIONS(4774), [sym_final] = ACTIONS(4774), [sym_immutable] = ACTIONS(4774), [sym_import] = ACTIONS(4774), [sym_inout] = ACTIONS(4774), [sym_interface] = ACTIONS(4774), [sym_invariant] = ACTIONS(4774), [sym_mixin] = ACTIONS(4774), [sym_nothrow] = ACTIONS(4774), [sym_override] = ACTIONS(4774), [sym_package] = ACTIONS(4774), [sym_pragma] = ACTIONS(4774), [sym_private] = ACTIONS(4774), [sym_protected] = ACTIONS(4774), [sym_public] = ACTIONS(4774), [sym_pure] = ACTIONS(4774), [sym_ref] = ACTIONS(4774), [sym_return] = ACTIONS(4774), [sym_scope] = ACTIONS(4774), [sym_shared] = ACTIONS(4774), [sym_static] = ACTIONS(4774), [sym_struct] = ACTIONS(4774), [sym_synchronized] = ACTIONS(4774), [sym_template] = ACTIONS(4774), [sym_typeof] = ACTIONS(4774), [sym_union] = ACTIONS(4774), [sym_unittest] = ACTIONS(4774), [sym_version] = ACTIONS(4774), [sym_while] = ACTIONS(4774), [sym_gshared] = ACTIONS(4774), [sym_traits] = ACTIONS(4774), [sym_vector] = ACTIONS(4774), [sym_void] = ACTIONS(4774), [sym_directive] = ACTIONS(3), }, [2790] = { [sym_identifier] = ACTIONS(4788), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4790), [anon_sym_DOT] = ACTIONS(4790), [anon_sym_SEMI] = ACTIONS(4790), [anon_sym_TILDE] = ACTIONS(4790), [anon_sym_AT] = ACTIONS(4790), [sym_bool] = ACTIONS(4788), [sym_byte] = ACTIONS(4788), [sym_ubyte] = ACTIONS(4788), [sym_char] = ACTIONS(4788), [sym_short] = ACTIONS(4788), [sym_ushort] = ACTIONS(4788), [sym_int] = ACTIONS(4788), [sym_uint] = ACTIONS(4788), [sym_long] = ACTIONS(4788), [sym_ulong] = ACTIONS(4788), [sym_cent] = ACTIONS(4788), [sym_ucent] = ACTIONS(4788), [sym_wchar] = ACTIONS(4788), [sym_dchar] = ACTIONS(4788), [sym_float] = ACTIONS(4788), [sym_double] = ACTIONS(4788), [sym_real] = ACTIONS(4788), [sym_ifloat] = ACTIONS(4788), [sym_idouble] = ACTIONS(4788), [sym_ireal] = ACTIONS(4788), [sym_cfloat] = ACTIONS(4788), [sym_cdouble] = ACTIONS(4788), [sym_creal] = ACTIONS(4788), [sym_size_t] = ACTIONS(4788), [sym_ptrdiff_t] = ACTIONS(4788), [sym_string] = ACTIONS(4788), [sym_cstring] = ACTIONS(4788), [sym_dstring] = ACTIONS(4788), [sym_wstring] = ACTIONS(4788), [sym_noreturn] = ACTIONS(4788), [sym_this] = ACTIONS(4788), [sym_abstract] = ACTIONS(4788), [sym_alias] = ACTIONS(4788), [sym_align] = ACTIONS(4788), [sym_auto] = ACTIONS(4788), [sym_class] = ACTIONS(4788), [sym_const] = ACTIONS(4788), [sym_debug] = ACTIONS(4788), [sym_deprecated] = ACTIONS(4788), [sym_else] = ACTIONS(4788), [sym_enum] = ACTIONS(4788), [sym_export] = ACTIONS(4788), [sym_extern] = ACTIONS(4788), [sym_final] = ACTIONS(4788), [sym_immutable] = ACTIONS(4788), [sym_import] = ACTIONS(4788), [sym_inout] = ACTIONS(4788), [sym_interface] = ACTIONS(4788), [sym_invariant] = ACTIONS(4788), [sym_mixin] = ACTIONS(4788), [sym_nothrow] = ACTIONS(4788), [sym_override] = ACTIONS(4788), [sym_package] = ACTIONS(4788), [sym_pragma] = ACTIONS(4788), [sym_private] = ACTIONS(4788), [sym_protected] = ACTIONS(4788), [sym_public] = ACTIONS(4788), [sym_pure] = ACTIONS(4788), [sym_ref] = ACTIONS(4788), [sym_return] = ACTIONS(4788), [sym_scope] = ACTIONS(4788), [sym_shared] = ACTIONS(4788), [sym_static] = ACTIONS(4788), [sym_struct] = ACTIONS(4788), [sym_synchronized] = ACTIONS(4788), [sym_template] = ACTIONS(4788), [sym_typeof] = ACTIONS(4788), [sym_union] = ACTIONS(4788), [sym_unittest] = ACTIONS(4788), [sym_version] = ACTIONS(4788), [sym_while] = ACTIONS(4788), [sym_gshared] = ACTIONS(4788), [sym_traits] = ACTIONS(4788), [sym_vector] = ACTIONS(4788), [sym_void] = ACTIONS(4788), [sym_directive] = ACTIONS(3), }, [2791] = { [sym_identifier] = ACTIONS(4297), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4299), [anon_sym_DOT] = ACTIONS(4299), [anon_sym_SEMI] = ACTIONS(4299), [anon_sym_TILDE] = ACTIONS(4299), [anon_sym_AT] = ACTIONS(4299), [sym_bool] = ACTIONS(4297), [sym_byte] = ACTIONS(4297), [sym_ubyte] = ACTIONS(4297), [sym_char] = ACTIONS(4297), [sym_short] = ACTIONS(4297), [sym_ushort] = ACTIONS(4297), [sym_int] = ACTIONS(4297), [sym_uint] = ACTIONS(4297), [sym_long] = ACTIONS(4297), [sym_ulong] = ACTIONS(4297), [sym_cent] = ACTIONS(4297), [sym_ucent] = ACTIONS(4297), [sym_wchar] = ACTIONS(4297), [sym_dchar] = ACTIONS(4297), [sym_float] = ACTIONS(4297), [sym_double] = ACTIONS(4297), [sym_real] = ACTIONS(4297), [sym_ifloat] = ACTIONS(4297), [sym_idouble] = ACTIONS(4297), [sym_ireal] = ACTIONS(4297), [sym_cfloat] = ACTIONS(4297), [sym_cdouble] = ACTIONS(4297), [sym_creal] = ACTIONS(4297), [sym_size_t] = ACTIONS(4297), [sym_ptrdiff_t] = ACTIONS(4297), [sym_string] = ACTIONS(4297), [sym_cstring] = ACTIONS(4297), [sym_dstring] = ACTIONS(4297), [sym_wstring] = ACTIONS(4297), [sym_noreturn] = ACTIONS(4297), [sym_this] = ACTIONS(4297), [sym_abstract] = ACTIONS(4297), [sym_alias] = ACTIONS(4297), [sym_align] = ACTIONS(4297), [sym_auto] = ACTIONS(4297), [sym_class] = ACTIONS(4297), [sym_const] = ACTIONS(4297), [sym_debug] = ACTIONS(4297), [sym_deprecated] = ACTIONS(4297), [sym_else] = ACTIONS(4297), [sym_enum] = ACTIONS(4297), [sym_export] = ACTIONS(4297), [sym_extern] = ACTIONS(4297), [sym_final] = ACTIONS(4297), [sym_immutable] = ACTIONS(4297), [sym_import] = ACTIONS(4297), [sym_inout] = ACTIONS(4297), [sym_interface] = ACTIONS(4297), [sym_invariant] = ACTIONS(4297), [sym_mixin] = ACTIONS(4297), [sym_nothrow] = ACTIONS(4297), [sym_override] = ACTIONS(4297), [sym_package] = ACTIONS(4297), [sym_pragma] = ACTIONS(4297), [sym_private] = ACTIONS(4297), [sym_protected] = ACTIONS(4297), [sym_public] = ACTIONS(4297), [sym_pure] = ACTIONS(4297), [sym_ref] = ACTIONS(4297), [sym_return] = ACTIONS(4297), [sym_scope] = ACTIONS(4297), [sym_shared] = ACTIONS(4297), [sym_static] = ACTIONS(4297), [sym_struct] = ACTIONS(4297), [sym_synchronized] = ACTIONS(4297), [sym_template] = ACTIONS(4297), [sym_typeof] = ACTIONS(4297), [sym_union] = ACTIONS(4297), [sym_unittest] = ACTIONS(4297), [sym_version] = ACTIONS(4297), [sym_while] = ACTIONS(4297), [sym_gshared] = ACTIONS(4297), [sym_traits] = ACTIONS(4297), [sym_vector] = ACTIONS(4297), [sym_void] = ACTIONS(4297), [sym_directive] = ACTIONS(3), }, [2792] = { [sym_identifier] = ACTIONS(4434), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4436), [anon_sym_DOT] = ACTIONS(4436), [anon_sym_SEMI] = ACTIONS(4436), [anon_sym_TILDE] = ACTIONS(4436), [anon_sym_AT] = ACTIONS(4436), [sym_bool] = ACTIONS(4434), [sym_byte] = ACTIONS(4434), [sym_ubyte] = ACTIONS(4434), [sym_char] = ACTIONS(4434), [sym_short] = ACTIONS(4434), [sym_ushort] = ACTIONS(4434), [sym_int] = ACTIONS(4434), [sym_uint] = ACTIONS(4434), [sym_long] = ACTIONS(4434), [sym_ulong] = ACTIONS(4434), [sym_cent] = ACTIONS(4434), [sym_ucent] = ACTIONS(4434), [sym_wchar] = ACTIONS(4434), [sym_dchar] = ACTIONS(4434), [sym_float] = ACTIONS(4434), [sym_double] = ACTIONS(4434), [sym_real] = ACTIONS(4434), [sym_ifloat] = ACTIONS(4434), [sym_idouble] = ACTIONS(4434), [sym_ireal] = ACTIONS(4434), [sym_cfloat] = ACTIONS(4434), [sym_cdouble] = ACTIONS(4434), [sym_creal] = ACTIONS(4434), [sym_size_t] = ACTIONS(4434), [sym_ptrdiff_t] = ACTIONS(4434), [sym_string] = ACTIONS(4434), [sym_cstring] = ACTIONS(4434), [sym_dstring] = ACTIONS(4434), [sym_wstring] = ACTIONS(4434), [sym_noreturn] = ACTIONS(4434), [sym_this] = ACTIONS(4434), [sym_abstract] = ACTIONS(4434), [sym_alias] = ACTIONS(4434), [sym_align] = ACTIONS(4434), [sym_auto] = ACTIONS(4434), [sym_class] = ACTIONS(4434), [sym_const] = ACTIONS(4434), [sym_debug] = ACTIONS(4434), [sym_deprecated] = ACTIONS(4434), [sym_else] = ACTIONS(4434), [sym_enum] = ACTIONS(4434), [sym_export] = ACTIONS(4434), [sym_extern] = ACTIONS(4434), [sym_final] = ACTIONS(4434), [sym_immutable] = ACTIONS(4434), [sym_import] = ACTIONS(4434), [sym_inout] = ACTIONS(4434), [sym_interface] = ACTIONS(4434), [sym_invariant] = ACTIONS(4434), [sym_mixin] = ACTIONS(4434), [sym_nothrow] = ACTIONS(4434), [sym_override] = ACTIONS(4434), [sym_package] = ACTIONS(4434), [sym_pragma] = ACTIONS(4434), [sym_private] = ACTIONS(4434), [sym_protected] = ACTIONS(4434), [sym_public] = ACTIONS(4434), [sym_pure] = ACTIONS(4434), [sym_ref] = ACTIONS(4434), [sym_return] = ACTIONS(4434), [sym_scope] = ACTIONS(4434), [sym_shared] = ACTIONS(4434), [sym_static] = ACTIONS(4434), [sym_struct] = ACTIONS(4434), [sym_synchronized] = ACTIONS(4434), [sym_template] = ACTIONS(4434), [sym_typeof] = ACTIONS(4434), [sym_union] = ACTIONS(4434), [sym_unittest] = ACTIONS(4434), [sym_version] = ACTIONS(4434), [sym_while] = ACTIONS(4434), [sym_gshared] = ACTIONS(4434), [sym_traits] = ACTIONS(4434), [sym_vector] = ACTIONS(4434), [sym_void] = ACTIONS(4434), [sym_directive] = ACTIONS(3), }, [2793] = { [sym_identifier] = ACTIONS(4406), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4408), [anon_sym_DOT] = ACTIONS(4408), [anon_sym_SEMI] = ACTIONS(4408), [anon_sym_TILDE] = ACTIONS(4408), [anon_sym_AT] = ACTIONS(4408), [sym_bool] = ACTIONS(4406), [sym_byte] = ACTIONS(4406), [sym_ubyte] = ACTIONS(4406), [sym_char] = ACTIONS(4406), [sym_short] = ACTIONS(4406), [sym_ushort] = ACTIONS(4406), [sym_int] = ACTIONS(4406), [sym_uint] = ACTIONS(4406), [sym_long] = ACTIONS(4406), [sym_ulong] = ACTIONS(4406), [sym_cent] = ACTIONS(4406), [sym_ucent] = ACTIONS(4406), [sym_wchar] = ACTIONS(4406), [sym_dchar] = ACTIONS(4406), [sym_float] = ACTIONS(4406), [sym_double] = ACTIONS(4406), [sym_real] = ACTIONS(4406), [sym_ifloat] = ACTIONS(4406), [sym_idouble] = ACTIONS(4406), [sym_ireal] = ACTIONS(4406), [sym_cfloat] = ACTIONS(4406), [sym_cdouble] = ACTIONS(4406), [sym_creal] = ACTIONS(4406), [sym_size_t] = ACTIONS(4406), [sym_ptrdiff_t] = ACTIONS(4406), [sym_string] = ACTIONS(4406), [sym_cstring] = ACTIONS(4406), [sym_dstring] = ACTIONS(4406), [sym_wstring] = ACTIONS(4406), [sym_noreturn] = ACTIONS(4406), [sym_this] = ACTIONS(4406), [sym_abstract] = ACTIONS(4406), [sym_alias] = ACTIONS(4406), [sym_align] = ACTIONS(4406), [sym_auto] = ACTIONS(4406), [sym_class] = ACTIONS(4406), [sym_const] = ACTIONS(4406), [sym_debug] = ACTIONS(4406), [sym_deprecated] = ACTIONS(4406), [sym_else] = ACTIONS(4406), [sym_enum] = ACTIONS(4406), [sym_export] = ACTIONS(4406), [sym_extern] = ACTIONS(4406), [sym_final] = ACTIONS(4406), [sym_immutable] = ACTIONS(4406), [sym_import] = ACTIONS(4406), [sym_inout] = ACTIONS(4406), [sym_interface] = ACTIONS(4406), [sym_invariant] = ACTIONS(4406), [sym_mixin] = ACTIONS(4406), [sym_nothrow] = ACTIONS(4406), [sym_override] = ACTIONS(4406), [sym_package] = ACTIONS(4406), [sym_pragma] = ACTIONS(4406), [sym_private] = ACTIONS(4406), [sym_protected] = ACTIONS(4406), [sym_public] = ACTIONS(4406), [sym_pure] = ACTIONS(4406), [sym_ref] = ACTIONS(4406), [sym_return] = ACTIONS(4406), [sym_scope] = ACTIONS(4406), [sym_shared] = ACTIONS(4406), [sym_static] = ACTIONS(4406), [sym_struct] = ACTIONS(4406), [sym_synchronized] = ACTIONS(4406), [sym_template] = ACTIONS(4406), [sym_typeof] = ACTIONS(4406), [sym_union] = ACTIONS(4406), [sym_unittest] = ACTIONS(4406), [sym_version] = ACTIONS(4406), [sym_while] = ACTIONS(4406), [sym_gshared] = ACTIONS(4406), [sym_traits] = ACTIONS(4406), [sym_vector] = ACTIONS(4406), [sym_void] = ACTIONS(4406), [sym_directive] = ACTIONS(3), }, [2794] = { [sym_identifier] = ACTIONS(4398), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4400), [anon_sym_DOT] = ACTIONS(4400), [anon_sym_SEMI] = ACTIONS(4400), [anon_sym_TILDE] = ACTIONS(4400), [anon_sym_AT] = ACTIONS(4400), [sym_bool] = ACTIONS(4398), [sym_byte] = ACTIONS(4398), [sym_ubyte] = ACTIONS(4398), [sym_char] = ACTIONS(4398), [sym_short] = ACTIONS(4398), [sym_ushort] = ACTIONS(4398), [sym_int] = ACTIONS(4398), [sym_uint] = ACTIONS(4398), [sym_long] = ACTIONS(4398), [sym_ulong] = ACTIONS(4398), [sym_cent] = ACTIONS(4398), [sym_ucent] = ACTIONS(4398), [sym_wchar] = ACTIONS(4398), [sym_dchar] = ACTIONS(4398), [sym_float] = ACTIONS(4398), [sym_double] = ACTIONS(4398), [sym_real] = ACTIONS(4398), [sym_ifloat] = ACTIONS(4398), [sym_idouble] = ACTIONS(4398), [sym_ireal] = ACTIONS(4398), [sym_cfloat] = ACTIONS(4398), [sym_cdouble] = ACTIONS(4398), [sym_creal] = ACTIONS(4398), [sym_size_t] = ACTIONS(4398), [sym_ptrdiff_t] = ACTIONS(4398), [sym_string] = ACTIONS(4398), [sym_cstring] = ACTIONS(4398), [sym_dstring] = ACTIONS(4398), [sym_wstring] = ACTIONS(4398), [sym_noreturn] = ACTIONS(4398), [sym_this] = ACTIONS(4398), [sym_abstract] = ACTIONS(4398), [sym_alias] = ACTIONS(4398), [sym_align] = ACTIONS(4398), [sym_auto] = ACTIONS(4398), [sym_class] = ACTIONS(4398), [sym_const] = ACTIONS(4398), [sym_debug] = ACTIONS(4398), [sym_deprecated] = ACTIONS(4398), [sym_else] = ACTIONS(4398), [sym_enum] = ACTIONS(4398), [sym_export] = ACTIONS(4398), [sym_extern] = ACTIONS(4398), [sym_final] = ACTIONS(4398), [sym_immutable] = ACTIONS(4398), [sym_import] = ACTIONS(4398), [sym_inout] = ACTIONS(4398), [sym_interface] = ACTIONS(4398), [sym_invariant] = ACTIONS(4398), [sym_mixin] = ACTIONS(4398), [sym_nothrow] = ACTIONS(4398), [sym_override] = ACTIONS(4398), [sym_package] = ACTIONS(4398), [sym_pragma] = ACTIONS(4398), [sym_private] = ACTIONS(4398), [sym_protected] = ACTIONS(4398), [sym_public] = ACTIONS(4398), [sym_pure] = ACTIONS(4398), [sym_ref] = ACTIONS(4398), [sym_return] = ACTIONS(4398), [sym_scope] = ACTIONS(4398), [sym_shared] = ACTIONS(4398), [sym_static] = ACTIONS(4398), [sym_struct] = ACTIONS(4398), [sym_synchronized] = ACTIONS(4398), [sym_template] = ACTIONS(4398), [sym_typeof] = ACTIONS(4398), [sym_union] = ACTIONS(4398), [sym_unittest] = ACTIONS(4398), [sym_version] = ACTIONS(4398), [sym_while] = ACTIONS(4398), [sym_gshared] = ACTIONS(4398), [sym_traits] = ACTIONS(4398), [sym_vector] = ACTIONS(4398), [sym_void] = ACTIONS(4398), [sym_directive] = ACTIONS(3), }, [2795] = { [sym_identifier] = ACTIONS(4570), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4572), [anon_sym_DOT] = ACTIONS(4572), [anon_sym_SEMI] = ACTIONS(4572), [anon_sym_TILDE] = ACTIONS(4572), [anon_sym_AT] = ACTIONS(4572), [sym_bool] = ACTIONS(4570), [sym_byte] = ACTIONS(4570), [sym_ubyte] = ACTIONS(4570), [sym_char] = ACTIONS(4570), [sym_short] = ACTIONS(4570), [sym_ushort] = ACTIONS(4570), [sym_int] = ACTIONS(4570), [sym_uint] = ACTIONS(4570), [sym_long] = ACTIONS(4570), [sym_ulong] = ACTIONS(4570), [sym_cent] = ACTIONS(4570), [sym_ucent] = ACTIONS(4570), [sym_wchar] = ACTIONS(4570), [sym_dchar] = ACTIONS(4570), [sym_float] = ACTIONS(4570), [sym_double] = ACTIONS(4570), [sym_real] = ACTIONS(4570), [sym_ifloat] = ACTIONS(4570), [sym_idouble] = ACTIONS(4570), [sym_ireal] = ACTIONS(4570), [sym_cfloat] = ACTIONS(4570), [sym_cdouble] = ACTIONS(4570), [sym_creal] = ACTIONS(4570), [sym_size_t] = ACTIONS(4570), [sym_ptrdiff_t] = ACTIONS(4570), [sym_string] = ACTIONS(4570), [sym_cstring] = ACTIONS(4570), [sym_dstring] = ACTIONS(4570), [sym_wstring] = ACTIONS(4570), [sym_noreturn] = ACTIONS(4570), [sym_this] = ACTIONS(4570), [sym_abstract] = ACTIONS(4570), [sym_alias] = ACTIONS(4570), [sym_align] = ACTIONS(4570), [sym_auto] = ACTIONS(4570), [sym_class] = ACTIONS(4570), [sym_const] = ACTIONS(4570), [sym_debug] = ACTIONS(4570), [sym_deprecated] = ACTIONS(4570), [sym_else] = ACTIONS(4570), [sym_enum] = ACTIONS(4570), [sym_export] = ACTIONS(4570), [sym_extern] = ACTIONS(4570), [sym_final] = ACTIONS(4570), [sym_immutable] = ACTIONS(4570), [sym_import] = ACTIONS(4570), [sym_inout] = ACTIONS(4570), [sym_interface] = ACTIONS(4570), [sym_invariant] = ACTIONS(4570), [sym_mixin] = ACTIONS(4570), [sym_nothrow] = ACTIONS(4570), [sym_override] = ACTIONS(4570), [sym_package] = ACTIONS(4570), [sym_pragma] = ACTIONS(4570), [sym_private] = ACTIONS(4570), [sym_protected] = ACTIONS(4570), [sym_public] = ACTIONS(4570), [sym_pure] = ACTIONS(4570), [sym_ref] = ACTIONS(4570), [sym_return] = ACTIONS(4570), [sym_scope] = ACTIONS(4570), [sym_shared] = ACTIONS(4570), [sym_static] = ACTIONS(4570), [sym_struct] = ACTIONS(4570), [sym_synchronized] = ACTIONS(4570), [sym_template] = ACTIONS(4570), [sym_typeof] = ACTIONS(4570), [sym_union] = ACTIONS(4570), [sym_unittest] = ACTIONS(4570), [sym_version] = ACTIONS(4570), [sym_while] = ACTIONS(4570), [sym_gshared] = ACTIONS(4570), [sym_traits] = ACTIONS(4570), [sym_vector] = ACTIONS(4570), [sym_void] = ACTIONS(4570), [sym_directive] = ACTIONS(3), }, [2796] = { [sym_identifier] = ACTIONS(4766), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4768), [anon_sym_DOT] = ACTIONS(4768), [anon_sym_SEMI] = ACTIONS(4768), [anon_sym_TILDE] = ACTIONS(4768), [anon_sym_AT] = ACTIONS(4768), [sym_bool] = ACTIONS(4766), [sym_byte] = ACTIONS(4766), [sym_ubyte] = ACTIONS(4766), [sym_char] = ACTIONS(4766), [sym_short] = ACTIONS(4766), [sym_ushort] = ACTIONS(4766), [sym_int] = ACTIONS(4766), [sym_uint] = ACTIONS(4766), [sym_long] = ACTIONS(4766), [sym_ulong] = ACTIONS(4766), [sym_cent] = ACTIONS(4766), [sym_ucent] = ACTIONS(4766), [sym_wchar] = ACTIONS(4766), [sym_dchar] = ACTIONS(4766), [sym_float] = ACTIONS(4766), [sym_double] = ACTIONS(4766), [sym_real] = ACTIONS(4766), [sym_ifloat] = ACTIONS(4766), [sym_idouble] = ACTIONS(4766), [sym_ireal] = ACTIONS(4766), [sym_cfloat] = ACTIONS(4766), [sym_cdouble] = ACTIONS(4766), [sym_creal] = ACTIONS(4766), [sym_size_t] = ACTIONS(4766), [sym_ptrdiff_t] = ACTIONS(4766), [sym_string] = ACTIONS(4766), [sym_cstring] = ACTIONS(4766), [sym_dstring] = ACTIONS(4766), [sym_wstring] = ACTIONS(4766), [sym_noreturn] = ACTIONS(4766), [sym_this] = ACTIONS(4766), [sym_abstract] = ACTIONS(4766), [sym_alias] = ACTIONS(4766), [sym_align] = ACTIONS(4766), [sym_auto] = ACTIONS(4766), [sym_class] = ACTIONS(4766), [sym_const] = ACTIONS(4766), [sym_debug] = ACTIONS(4766), [sym_deprecated] = ACTIONS(4766), [sym_else] = ACTIONS(4766), [sym_enum] = ACTIONS(4766), [sym_export] = ACTIONS(4766), [sym_extern] = ACTIONS(4766), [sym_final] = ACTIONS(4766), [sym_immutable] = ACTIONS(4766), [sym_import] = ACTIONS(4766), [sym_inout] = ACTIONS(4766), [sym_interface] = ACTIONS(4766), [sym_invariant] = ACTIONS(4766), [sym_mixin] = ACTIONS(4766), [sym_nothrow] = ACTIONS(4766), [sym_override] = ACTIONS(4766), [sym_package] = ACTIONS(4766), [sym_pragma] = ACTIONS(4766), [sym_private] = ACTIONS(4766), [sym_protected] = ACTIONS(4766), [sym_public] = ACTIONS(4766), [sym_pure] = ACTIONS(4766), [sym_ref] = ACTIONS(4766), [sym_return] = ACTIONS(4766), [sym_scope] = ACTIONS(4766), [sym_shared] = ACTIONS(4766), [sym_static] = ACTIONS(4766), [sym_struct] = ACTIONS(4766), [sym_synchronized] = ACTIONS(4766), [sym_template] = ACTIONS(4766), [sym_typeof] = ACTIONS(4766), [sym_union] = ACTIONS(4766), [sym_unittest] = ACTIONS(4766), [sym_version] = ACTIONS(4766), [sym_while] = ACTIONS(4766), [sym_gshared] = ACTIONS(4766), [sym_traits] = ACTIONS(4766), [sym_vector] = ACTIONS(4766), [sym_void] = ACTIONS(4766), [sym_directive] = ACTIONS(3), }, [2797] = { [sym_switch_statement] = STATE(1657), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(183), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2798] = { [sym_identifier] = ACTIONS(4770), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4772), [anon_sym_DOT] = ACTIONS(4772), [anon_sym_SEMI] = ACTIONS(4772), [anon_sym_TILDE] = ACTIONS(4772), [anon_sym_AT] = ACTIONS(4772), [sym_bool] = ACTIONS(4770), [sym_byte] = ACTIONS(4770), [sym_ubyte] = ACTIONS(4770), [sym_char] = ACTIONS(4770), [sym_short] = ACTIONS(4770), [sym_ushort] = ACTIONS(4770), [sym_int] = ACTIONS(4770), [sym_uint] = ACTIONS(4770), [sym_long] = ACTIONS(4770), [sym_ulong] = ACTIONS(4770), [sym_cent] = ACTIONS(4770), [sym_ucent] = ACTIONS(4770), [sym_wchar] = ACTIONS(4770), [sym_dchar] = ACTIONS(4770), [sym_float] = ACTIONS(4770), [sym_double] = ACTIONS(4770), [sym_real] = ACTIONS(4770), [sym_ifloat] = ACTIONS(4770), [sym_idouble] = ACTIONS(4770), [sym_ireal] = ACTIONS(4770), [sym_cfloat] = ACTIONS(4770), [sym_cdouble] = ACTIONS(4770), [sym_creal] = ACTIONS(4770), [sym_size_t] = ACTIONS(4770), [sym_ptrdiff_t] = ACTIONS(4770), [sym_string] = ACTIONS(4770), [sym_cstring] = ACTIONS(4770), [sym_dstring] = ACTIONS(4770), [sym_wstring] = ACTIONS(4770), [sym_noreturn] = ACTIONS(4770), [sym_this] = ACTIONS(4770), [sym_abstract] = ACTIONS(4770), [sym_alias] = ACTIONS(4770), [sym_align] = ACTIONS(4770), [sym_auto] = ACTIONS(4770), [sym_class] = ACTIONS(4770), [sym_const] = ACTIONS(4770), [sym_debug] = ACTIONS(4770), [sym_deprecated] = ACTIONS(4770), [sym_else] = ACTIONS(4770), [sym_enum] = ACTIONS(4770), [sym_export] = ACTIONS(4770), [sym_extern] = ACTIONS(4770), [sym_final] = ACTIONS(4770), [sym_immutable] = ACTIONS(4770), [sym_import] = ACTIONS(4770), [sym_inout] = ACTIONS(4770), [sym_interface] = ACTIONS(4770), [sym_invariant] = ACTIONS(4770), [sym_mixin] = ACTIONS(4770), [sym_nothrow] = ACTIONS(4770), [sym_override] = ACTIONS(4770), [sym_package] = ACTIONS(4770), [sym_pragma] = ACTIONS(4770), [sym_private] = ACTIONS(4770), [sym_protected] = ACTIONS(4770), [sym_public] = ACTIONS(4770), [sym_pure] = ACTIONS(4770), [sym_ref] = ACTIONS(4770), [sym_return] = ACTIONS(4770), [sym_scope] = ACTIONS(4770), [sym_shared] = ACTIONS(4770), [sym_static] = ACTIONS(4770), [sym_struct] = ACTIONS(4770), [sym_synchronized] = ACTIONS(4770), [sym_template] = ACTIONS(4770), [sym_typeof] = ACTIONS(4770), [sym_union] = ACTIONS(4770), [sym_unittest] = ACTIONS(4770), [sym_version] = ACTIONS(4770), [sym_while] = ACTIONS(4770), [sym_gshared] = ACTIONS(4770), [sym_traits] = ACTIONS(4770), [sym_vector] = ACTIONS(4770), [sym_void] = ACTIONS(4770), [sym_directive] = ACTIONS(3), }, [2799] = { [sym_identifier] = ACTIONS(4386), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4388), [anon_sym_DOT] = ACTIONS(4388), [anon_sym_SEMI] = ACTIONS(4388), [anon_sym_TILDE] = ACTIONS(4388), [anon_sym_AT] = ACTIONS(4388), [sym_bool] = ACTIONS(4386), [sym_byte] = ACTIONS(4386), [sym_ubyte] = ACTIONS(4386), [sym_char] = ACTIONS(4386), [sym_short] = ACTIONS(4386), [sym_ushort] = ACTIONS(4386), [sym_int] = ACTIONS(4386), [sym_uint] = ACTIONS(4386), [sym_long] = ACTIONS(4386), [sym_ulong] = ACTIONS(4386), [sym_cent] = ACTIONS(4386), [sym_ucent] = ACTIONS(4386), [sym_wchar] = ACTIONS(4386), [sym_dchar] = ACTIONS(4386), [sym_float] = ACTIONS(4386), [sym_double] = ACTIONS(4386), [sym_real] = ACTIONS(4386), [sym_ifloat] = ACTIONS(4386), [sym_idouble] = ACTIONS(4386), [sym_ireal] = ACTIONS(4386), [sym_cfloat] = ACTIONS(4386), [sym_cdouble] = ACTIONS(4386), [sym_creal] = ACTIONS(4386), [sym_size_t] = ACTIONS(4386), [sym_ptrdiff_t] = ACTIONS(4386), [sym_string] = ACTIONS(4386), [sym_cstring] = ACTIONS(4386), [sym_dstring] = ACTIONS(4386), [sym_wstring] = ACTIONS(4386), [sym_noreturn] = ACTIONS(4386), [sym_this] = ACTIONS(4386), [sym_abstract] = ACTIONS(4386), [sym_alias] = ACTIONS(4386), [sym_align] = ACTIONS(4386), [sym_auto] = ACTIONS(4386), [sym_class] = ACTIONS(4386), [sym_const] = ACTIONS(4386), [sym_debug] = ACTIONS(4386), [sym_deprecated] = ACTIONS(4386), [sym_else] = ACTIONS(4386), [sym_enum] = ACTIONS(4386), [sym_export] = ACTIONS(4386), [sym_extern] = ACTIONS(4386), [sym_final] = ACTIONS(4386), [sym_immutable] = ACTIONS(4386), [sym_import] = ACTIONS(4386), [sym_inout] = ACTIONS(4386), [sym_interface] = ACTIONS(4386), [sym_invariant] = ACTIONS(4386), [sym_mixin] = ACTIONS(4386), [sym_nothrow] = ACTIONS(4386), [sym_override] = ACTIONS(4386), [sym_package] = ACTIONS(4386), [sym_pragma] = ACTIONS(4386), [sym_private] = ACTIONS(4386), [sym_protected] = ACTIONS(4386), [sym_public] = ACTIONS(4386), [sym_pure] = ACTIONS(4386), [sym_ref] = ACTIONS(4386), [sym_return] = ACTIONS(4386), [sym_scope] = ACTIONS(4386), [sym_shared] = ACTIONS(4386), [sym_static] = ACTIONS(4386), [sym_struct] = ACTIONS(4386), [sym_synchronized] = ACTIONS(4386), [sym_template] = ACTIONS(4386), [sym_typeof] = ACTIONS(4386), [sym_union] = ACTIONS(4386), [sym_unittest] = ACTIONS(4386), [sym_version] = ACTIONS(4386), [sym_while] = ACTIONS(4386), [sym_gshared] = ACTIONS(4386), [sym_traits] = ACTIONS(4386), [sym_vector] = ACTIONS(4386), [sym_void] = ACTIONS(4386), [sym_directive] = ACTIONS(3), }, [2800] = { [sym_identifier] = ACTIONS(4343), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4345), [anon_sym_DOT] = ACTIONS(4345), [anon_sym_SEMI] = ACTIONS(4345), [anon_sym_TILDE] = ACTIONS(4345), [anon_sym_AT] = ACTIONS(4345), [sym_bool] = ACTIONS(4343), [sym_byte] = ACTIONS(4343), [sym_ubyte] = ACTIONS(4343), [sym_char] = ACTIONS(4343), [sym_short] = ACTIONS(4343), [sym_ushort] = ACTIONS(4343), [sym_int] = ACTIONS(4343), [sym_uint] = ACTIONS(4343), [sym_long] = ACTIONS(4343), [sym_ulong] = ACTIONS(4343), [sym_cent] = ACTIONS(4343), [sym_ucent] = ACTIONS(4343), [sym_wchar] = ACTIONS(4343), [sym_dchar] = ACTIONS(4343), [sym_float] = ACTIONS(4343), [sym_double] = ACTIONS(4343), [sym_real] = ACTIONS(4343), [sym_ifloat] = ACTIONS(4343), [sym_idouble] = ACTIONS(4343), [sym_ireal] = ACTIONS(4343), [sym_cfloat] = ACTIONS(4343), [sym_cdouble] = ACTIONS(4343), [sym_creal] = ACTIONS(4343), [sym_size_t] = ACTIONS(4343), [sym_ptrdiff_t] = ACTIONS(4343), [sym_string] = ACTIONS(4343), [sym_cstring] = ACTIONS(4343), [sym_dstring] = ACTIONS(4343), [sym_wstring] = ACTIONS(4343), [sym_noreturn] = ACTIONS(4343), [sym_this] = ACTIONS(4343), [sym_abstract] = ACTIONS(4343), [sym_alias] = ACTIONS(4343), [sym_align] = ACTIONS(4343), [sym_auto] = ACTIONS(4343), [sym_class] = ACTIONS(4343), [sym_const] = ACTIONS(4343), [sym_debug] = ACTIONS(4343), [sym_deprecated] = ACTIONS(4343), [sym_else] = ACTIONS(4343), [sym_enum] = ACTIONS(4343), [sym_export] = ACTIONS(4343), [sym_extern] = ACTIONS(4343), [sym_final] = ACTIONS(4343), [sym_immutable] = ACTIONS(4343), [sym_import] = ACTIONS(4343), [sym_inout] = ACTIONS(4343), [sym_interface] = ACTIONS(4343), [sym_invariant] = ACTIONS(4343), [sym_mixin] = ACTIONS(4343), [sym_nothrow] = ACTIONS(4343), [sym_override] = ACTIONS(4343), [sym_package] = ACTIONS(4343), [sym_pragma] = ACTIONS(4343), [sym_private] = ACTIONS(4343), [sym_protected] = ACTIONS(4343), [sym_public] = ACTIONS(4343), [sym_pure] = ACTIONS(4343), [sym_ref] = ACTIONS(4343), [sym_return] = ACTIONS(4343), [sym_scope] = ACTIONS(4343), [sym_shared] = ACTIONS(4343), [sym_static] = ACTIONS(4343), [sym_struct] = ACTIONS(4343), [sym_synchronized] = ACTIONS(4343), [sym_template] = ACTIONS(4343), [sym_typeof] = ACTIONS(4343), [sym_union] = ACTIONS(4343), [sym_unittest] = ACTIONS(4343), [sym_version] = ACTIONS(4343), [sym_while] = ACTIONS(4343), [sym_gshared] = ACTIONS(4343), [sym_traits] = ACTIONS(4343), [sym_vector] = ACTIONS(4343), [sym_void] = ACTIONS(4343), [sym_directive] = ACTIONS(3), }, [2801] = { [sym_identifier] = ACTIONS(4778), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4780), [anon_sym_DOT] = ACTIONS(4780), [anon_sym_SEMI] = ACTIONS(4780), [anon_sym_TILDE] = ACTIONS(4780), [anon_sym_AT] = ACTIONS(4780), [sym_bool] = ACTIONS(4778), [sym_byte] = ACTIONS(4778), [sym_ubyte] = ACTIONS(4778), [sym_char] = ACTIONS(4778), [sym_short] = ACTIONS(4778), [sym_ushort] = ACTIONS(4778), [sym_int] = ACTIONS(4778), [sym_uint] = ACTIONS(4778), [sym_long] = ACTIONS(4778), [sym_ulong] = ACTIONS(4778), [sym_cent] = ACTIONS(4778), [sym_ucent] = ACTIONS(4778), [sym_wchar] = ACTIONS(4778), [sym_dchar] = ACTIONS(4778), [sym_float] = ACTIONS(4778), [sym_double] = ACTIONS(4778), [sym_real] = ACTIONS(4778), [sym_ifloat] = ACTIONS(4778), [sym_idouble] = ACTIONS(4778), [sym_ireal] = ACTIONS(4778), [sym_cfloat] = ACTIONS(4778), [sym_cdouble] = ACTIONS(4778), [sym_creal] = ACTIONS(4778), [sym_size_t] = ACTIONS(4778), [sym_ptrdiff_t] = ACTIONS(4778), [sym_string] = ACTIONS(4778), [sym_cstring] = ACTIONS(4778), [sym_dstring] = ACTIONS(4778), [sym_wstring] = ACTIONS(4778), [sym_noreturn] = ACTIONS(4778), [sym_this] = ACTIONS(4778), [sym_abstract] = ACTIONS(4778), [sym_alias] = ACTIONS(4778), [sym_align] = ACTIONS(4778), [sym_auto] = ACTIONS(4778), [sym_class] = ACTIONS(4778), [sym_const] = ACTIONS(4778), [sym_debug] = ACTIONS(4778), [sym_deprecated] = ACTIONS(4778), [sym_else] = ACTIONS(4778), [sym_enum] = ACTIONS(4778), [sym_export] = ACTIONS(4778), [sym_extern] = ACTIONS(4778), [sym_final] = ACTIONS(4778), [sym_immutable] = ACTIONS(4778), [sym_import] = ACTIONS(4778), [sym_inout] = ACTIONS(4778), [sym_interface] = ACTIONS(4778), [sym_invariant] = ACTIONS(4778), [sym_mixin] = ACTIONS(4778), [sym_nothrow] = ACTIONS(4778), [sym_override] = ACTIONS(4778), [sym_package] = ACTIONS(4778), [sym_pragma] = ACTIONS(4778), [sym_private] = ACTIONS(4778), [sym_protected] = ACTIONS(4778), [sym_public] = ACTIONS(4778), [sym_pure] = ACTIONS(4778), [sym_ref] = ACTIONS(4778), [sym_return] = ACTIONS(4778), [sym_scope] = ACTIONS(4778), [sym_shared] = ACTIONS(4778), [sym_static] = ACTIONS(4778), [sym_struct] = ACTIONS(4778), [sym_synchronized] = ACTIONS(4778), [sym_template] = ACTIONS(4778), [sym_typeof] = ACTIONS(4778), [sym_union] = ACTIONS(4778), [sym_unittest] = ACTIONS(4778), [sym_version] = ACTIONS(4778), [sym_while] = ACTIONS(4778), [sym_gshared] = ACTIONS(4778), [sym_traits] = ACTIONS(4778), [sym_vector] = ACTIONS(4778), [sym_void] = ACTIONS(4778), [sym_directive] = ACTIONS(3), }, [2802] = { [sym_identifier] = ACTIONS(4798), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4800), [anon_sym_DOT] = ACTIONS(4800), [anon_sym_SEMI] = ACTIONS(4800), [anon_sym_TILDE] = ACTIONS(4800), [anon_sym_AT] = ACTIONS(4800), [sym_bool] = ACTIONS(4798), [sym_byte] = ACTIONS(4798), [sym_ubyte] = ACTIONS(4798), [sym_char] = ACTIONS(4798), [sym_short] = ACTIONS(4798), [sym_ushort] = ACTIONS(4798), [sym_int] = ACTIONS(4798), [sym_uint] = ACTIONS(4798), [sym_long] = ACTIONS(4798), [sym_ulong] = ACTIONS(4798), [sym_cent] = ACTIONS(4798), [sym_ucent] = ACTIONS(4798), [sym_wchar] = ACTIONS(4798), [sym_dchar] = ACTIONS(4798), [sym_float] = ACTIONS(4798), [sym_double] = ACTIONS(4798), [sym_real] = ACTIONS(4798), [sym_ifloat] = ACTIONS(4798), [sym_idouble] = ACTIONS(4798), [sym_ireal] = ACTIONS(4798), [sym_cfloat] = ACTIONS(4798), [sym_cdouble] = ACTIONS(4798), [sym_creal] = ACTIONS(4798), [sym_size_t] = ACTIONS(4798), [sym_ptrdiff_t] = ACTIONS(4798), [sym_string] = ACTIONS(4798), [sym_cstring] = ACTIONS(4798), [sym_dstring] = ACTIONS(4798), [sym_wstring] = ACTIONS(4798), [sym_noreturn] = ACTIONS(4798), [sym_this] = ACTIONS(4798), [sym_abstract] = ACTIONS(4798), [sym_alias] = ACTIONS(4798), [sym_align] = ACTIONS(4798), [sym_auto] = ACTIONS(4798), [sym_class] = ACTIONS(4798), [sym_const] = ACTIONS(4798), [sym_debug] = ACTIONS(4798), [sym_deprecated] = ACTIONS(4798), [sym_else] = ACTIONS(4798), [sym_enum] = ACTIONS(4798), [sym_export] = ACTIONS(4798), [sym_extern] = ACTIONS(4798), [sym_final] = ACTIONS(4798), [sym_immutable] = ACTIONS(4798), [sym_import] = ACTIONS(4798), [sym_inout] = ACTIONS(4798), [sym_interface] = ACTIONS(4798), [sym_invariant] = ACTIONS(4798), [sym_mixin] = ACTIONS(4798), [sym_nothrow] = ACTIONS(4798), [sym_override] = ACTIONS(4798), [sym_package] = ACTIONS(4798), [sym_pragma] = ACTIONS(4798), [sym_private] = ACTIONS(4798), [sym_protected] = ACTIONS(4798), [sym_public] = ACTIONS(4798), [sym_pure] = ACTIONS(4798), [sym_ref] = ACTIONS(4798), [sym_return] = ACTIONS(4798), [sym_scope] = ACTIONS(4798), [sym_shared] = ACTIONS(4798), [sym_static] = ACTIONS(4798), [sym_struct] = ACTIONS(4798), [sym_synchronized] = ACTIONS(4798), [sym_template] = ACTIONS(4798), [sym_typeof] = ACTIONS(4798), [sym_union] = ACTIONS(4798), [sym_unittest] = ACTIONS(4798), [sym_version] = ACTIONS(4798), [sym_while] = ACTIONS(4798), [sym_gshared] = ACTIONS(4798), [sym_traits] = ACTIONS(4798), [sym_vector] = ACTIONS(4798), [sym_void] = ACTIONS(4798), [sym_directive] = ACTIONS(3), }, [2803] = { [sym_identifier] = ACTIONS(4832), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4834), [anon_sym_DOT] = ACTIONS(4834), [anon_sym_SEMI] = ACTIONS(4834), [anon_sym_TILDE] = ACTIONS(4834), [anon_sym_AT] = ACTIONS(4834), [sym_bool] = ACTIONS(4832), [sym_byte] = ACTIONS(4832), [sym_ubyte] = ACTIONS(4832), [sym_char] = ACTIONS(4832), [sym_short] = ACTIONS(4832), [sym_ushort] = ACTIONS(4832), [sym_int] = ACTIONS(4832), [sym_uint] = ACTIONS(4832), [sym_long] = ACTIONS(4832), [sym_ulong] = ACTIONS(4832), [sym_cent] = ACTIONS(4832), [sym_ucent] = ACTIONS(4832), [sym_wchar] = ACTIONS(4832), [sym_dchar] = ACTIONS(4832), [sym_float] = ACTIONS(4832), [sym_double] = ACTIONS(4832), [sym_real] = ACTIONS(4832), [sym_ifloat] = ACTIONS(4832), [sym_idouble] = ACTIONS(4832), [sym_ireal] = ACTIONS(4832), [sym_cfloat] = ACTIONS(4832), [sym_cdouble] = ACTIONS(4832), [sym_creal] = ACTIONS(4832), [sym_size_t] = ACTIONS(4832), [sym_ptrdiff_t] = ACTIONS(4832), [sym_string] = ACTIONS(4832), [sym_cstring] = ACTIONS(4832), [sym_dstring] = ACTIONS(4832), [sym_wstring] = ACTIONS(4832), [sym_noreturn] = ACTIONS(4832), [sym_this] = ACTIONS(4832), [sym_abstract] = ACTIONS(4832), [sym_alias] = ACTIONS(4832), [sym_align] = ACTIONS(4832), [sym_auto] = ACTIONS(4832), [sym_class] = ACTIONS(4832), [sym_const] = ACTIONS(4832), [sym_debug] = ACTIONS(4832), [sym_deprecated] = ACTIONS(4832), [sym_else] = ACTIONS(4832), [sym_enum] = ACTIONS(4832), [sym_export] = ACTIONS(4832), [sym_extern] = ACTIONS(4832), [sym_final] = ACTIONS(4832), [sym_immutable] = ACTIONS(4832), [sym_import] = ACTIONS(4832), [sym_inout] = ACTIONS(4832), [sym_interface] = ACTIONS(4832), [sym_invariant] = ACTIONS(4832), [sym_mixin] = ACTIONS(4832), [sym_nothrow] = ACTIONS(4832), [sym_override] = ACTIONS(4832), [sym_package] = ACTIONS(4832), [sym_pragma] = ACTIONS(4832), [sym_private] = ACTIONS(4832), [sym_protected] = ACTIONS(4832), [sym_public] = ACTIONS(4832), [sym_pure] = ACTIONS(4832), [sym_ref] = ACTIONS(4832), [sym_return] = ACTIONS(4832), [sym_scope] = ACTIONS(4832), [sym_shared] = ACTIONS(4832), [sym_static] = ACTIONS(4832), [sym_struct] = ACTIONS(4832), [sym_synchronized] = ACTIONS(4832), [sym_template] = ACTIONS(4832), [sym_typeof] = ACTIONS(4832), [sym_union] = ACTIONS(4832), [sym_unittest] = ACTIONS(4832), [sym_version] = ACTIONS(4832), [sym_while] = ACTIONS(4832), [sym_gshared] = ACTIONS(4832), [sym_traits] = ACTIONS(4832), [sym_vector] = ACTIONS(4832), [sym_void] = ACTIONS(4832), [sym_directive] = ACTIONS(3), }, [2804] = { [sym_identifier] = ACTIONS(6803), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6806), [anon_sym_DOT] = ACTIONS(6808), [anon_sym_LPAREN] = ACTIONS(6811), [anon_sym_COLON] = ACTIONS(6806), [anon_sym_TILDE] = ACTIONS(6806), [anon_sym_AT] = ACTIONS(6808), [sym_bool] = ACTIONS(6803), [sym_byte] = ACTIONS(6803), [sym_ubyte] = ACTIONS(6803), [sym_char] = ACTIONS(6803), [sym_short] = ACTIONS(6803), [sym_ushort] = ACTIONS(6803), [sym_int] = ACTIONS(6803), [sym_uint] = ACTIONS(6803), [sym_long] = ACTIONS(6803), [sym_ulong] = ACTIONS(6803), [sym_cent] = ACTIONS(6803), [sym_ucent] = ACTIONS(6803), [sym_wchar] = ACTIONS(6803), [sym_dchar] = ACTIONS(6803), [sym_float] = ACTIONS(6803), [sym_double] = ACTIONS(6803), [sym_real] = ACTIONS(6803), [sym_ifloat] = ACTIONS(6803), [sym_idouble] = ACTIONS(6803), [sym_ireal] = ACTIONS(6803), [sym_cfloat] = ACTIONS(6803), [sym_cdouble] = ACTIONS(6803), [sym_creal] = ACTIONS(6803), [sym_size_t] = ACTIONS(6803), [sym_ptrdiff_t] = ACTIONS(6803), [sym_string] = ACTIONS(6803), [sym_cstring] = ACTIONS(6803), [sym_dstring] = ACTIONS(6803), [sym_wstring] = ACTIONS(6803), [sym_noreturn] = ACTIONS(6803), [sym_this] = ACTIONS(6813), [sym_abstract] = ACTIONS(6803), [sym_alias] = ACTIONS(6813), [sym_align] = ACTIONS(6803), [sym_auto] = ACTIONS(6803), [sym_class] = ACTIONS(6813), [sym_const] = ACTIONS(6803), [sym_debug] = ACTIONS(6813), [sym_deprecated] = ACTIONS(6803), [sym_enum] = ACTIONS(6803), [sym_export] = ACTIONS(6813), [sym_extern] = ACTIONS(6803), [sym_final] = ACTIONS(6803), [sym_immutable] = ACTIONS(6803), [sym_import] = ACTIONS(6813), [sym_inout] = ACTIONS(6803), [sym_interface] = ACTIONS(6813), [sym_invariant] = ACTIONS(6813), [sym_mixin] = ACTIONS(6803), [sym_module] = ACTIONS(6813), [sym_nothrow] = ACTIONS(6803), [sym_override] = ACTIONS(6803), [sym_package] = ACTIONS(6813), [sym_pragma] = ACTIONS(6813), [sym_private] = ACTIONS(6813), [sym_protected] = ACTIONS(6813), [sym_public] = ACTIONS(6813), [sym_pure] = ACTIONS(6803), [sym_ref] = ACTIONS(6803), [sym_return] = ACTIONS(6813), [sym_scope] = ACTIONS(6803), [sym_shared] = ACTIONS(6803), [sym_static] = ACTIONS(6803), [sym_struct] = ACTIONS(6813), [sym_synchronized] = ACTIONS(6803), [sym_template] = ACTIONS(6813), [sym_typeof] = ACTIONS(6803), [sym_union] = ACTIONS(6813), [sym_unittest] = ACTIONS(6813), [sym_version] = ACTIONS(6813), [sym_gshared] = ACTIONS(6803), [sym_traits] = ACTIONS(6803), [sym_vector] = ACTIONS(6803), [sym_void] = ACTIONS(6803), [sym_directive] = ACTIONS(3), }, [2805] = { [sym_identifier] = ACTIONS(4860), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4862), [anon_sym_DOT] = ACTIONS(4862), [anon_sym_SEMI] = ACTIONS(4862), [anon_sym_TILDE] = ACTIONS(4862), [anon_sym_AT] = ACTIONS(4862), [sym_bool] = ACTIONS(4860), [sym_byte] = ACTIONS(4860), [sym_ubyte] = ACTIONS(4860), [sym_char] = ACTIONS(4860), [sym_short] = ACTIONS(4860), [sym_ushort] = ACTIONS(4860), [sym_int] = ACTIONS(4860), [sym_uint] = ACTIONS(4860), [sym_long] = ACTIONS(4860), [sym_ulong] = ACTIONS(4860), [sym_cent] = ACTIONS(4860), [sym_ucent] = ACTIONS(4860), [sym_wchar] = ACTIONS(4860), [sym_dchar] = ACTIONS(4860), [sym_float] = ACTIONS(4860), [sym_double] = ACTIONS(4860), [sym_real] = ACTIONS(4860), [sym_ifloat] = ACTIONS(4860), [sym_idouble] = ACTIONS(4860), [sym_ireal] = ACTIONS(4860), [sym_cfloat] = ACTIONS(4860), [sym_cdouble] = ACTIONS(4860), [sym_creal] = ACTIONS(4860), [sym_size_t] = ACTIONS(4860), [sym_ptrdiff_t] = ACTIONS(4860), [sym_string] = ACTIONS(4860), [sym_cstring] = ACTIONS(4860), [sym_dstring] = ACTIONS(4860), [sym_wstring] = ACTIONS(4860), [sym_noreturn] = ACTIONS(4860), [sym_this] = ACTIONS(4860), [sym_abstract] = ACTIONS(4860), [sym_alias] = ACTIONS(4860), [sym_align] = ACTIONS(4860), [sym_auto] = ACTIONS(4860), [sym_class] = ACTIONS(4860), [sym_const] = ACTIONS(4860), [sym_debug] = ACTIONS(4860), [sym_deprecated] = ACTIONS(4860), [sym_else] = ACTIONS(4860), [sym_enum] = ACTIONS(4860), [sym_export] = ACTIONS(4860), [sym_extern] = ACTIONS(4860), [sym_final] = ACTIONS(4860), [sym_immutable] = ACTIONS(4860), [sym_import] = ACTIONS(4860), [sym_inout] = ACTIONS(4860), [sym_interface] = ACTIONS(4860), [sym_invariant] = ACTIONS(4860), [sym_mixin] = ACTIONS(4860), [sym_nothrow] = ACTIONS(4860), [sym_override] = ACTIONS(4860), [sym_package] = ACTIONS(4860), [sym_pragma] = ACTIONS(4860), [sym_private] = ACTIONS(4860), [sym_protected] = ACTIONS(4860), [sym_public] = ACTIONS(4860), [sym_pure] = ACTIONS(4860), [sym_ref] = ACTIONS(4860), [sym_return] = ACTIONS(4860), [sym_scope] = ACTIONS(4860), [sym_shared] = ACTIONS(4860), [sym_static] = ACTIONS(4860), [sym_struct] = ACTIONS(4860), [sym_synchronized] = ACTIONS(4860), [sym_template] = ACTIONS(4860), [sym_typeof] = ACTIONS(4860), [sym_union] = ACTIONS(4860), [sym_unittest] = ACTIONS(4860), [sym_version] = ACTIONS(4860), [sym_while] = ACTIONS(4860), [sym_gshared] = ACTIONS(4860), [sym_traits] = ACTIONS(4860), [sym_vector] = ACTIONS(4860), [sym_void] = ACTIONS(4860), [sym_directive] = ACTIONS(3), }, [2806] = { [sym_identifier] = ACTIONS(4836), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4838), [anon_sym_DOT] = ACTIONS(4838), [anon_sym_SEMI] = ACTIONS(4838), [anon_sym_TILDE] = ACTIONS(4838), [anon_sym_AT] = ACTIONS(4838), [sym_bool] = ACTIONS(4836), [sym_byte] = ACTIONS(4836), [sym_ubyte] = ACTIONS(4836), [sym_char] = ACTIONS(4836), [sym_short] = ACTIONS(4836), [sym_ushort] = ACTIONS(4836), [sym_int] = ACTIONS(4836), [sym_uint] = ACTIONS(4836), [sym_long] = ACTIONS(4836), [sym_ulong] = ACTIONS(4836), [sym_cent] = ACTIONS(4836), [sym_ucent] = ACTIONS(4836), [sym_wchar] = ACTIONS(4836), [sym_dchar] = ACTIONS(4836), [sym_float] = ACTIONS(4836), [sym_double] = ACTIONS(4836), [sym_real] = ACTIONS(4836), [sym_ifloat] = ACTIONS(4836), [sym_idouble] = ACTIONS(4836), [sym_ireal] = ACTIONS(4836), [sym_cfloat] = ACTIONS(4836), [sym_cdouble] = ACTIONS(4836), [sym_creal] = ACTIONS(4836), [sym_size_t] = ACTIONS(4836), [sym_ptrdiff_t] = ACTIONS(4836), [sym_string] = ACTIONS(4836), [sym_cstring] = ACTIONS(4836), [sym_dstring] = ACTIONS(4836), [sym_wstring] = ACTIONS(4836), [sym_noreturn] = ACTIONS(4836), [sym_this] = ACTIONS(4836), [sym_abstract] = ACTIONS(4836), [sym_alias] = ACTIONS(4836), [sym_align] = ACTIONS(4836), [sym_auto] = ACTIONS(4836), [sym_class] = ACTIONS(4836), [sym_const] = ACTIONS(4836), [sym_debug] = ACTIONS(4836), [sym_deprecated] = ACTIONS(4836), [sym_else] = ACTIONS(4836), [sym_enum] = ACTIONS(4836), [sym_export] = ACTIONS(4836), [sym_extern] = ACTIONS(4836), [sym_final] = ACTIONS(4836), [sym_immutable] = ACTIONS(4836), [sym_import] = ACTIONS(4836), [sym_inout] = ACTIONS(4836), [sym_interface] = ACTIONS(4836), [sym_invariant] = ACTIONS(4836), [sym_mixin] = ACTIONS(4836), [sym_nothrow] = ACTIONS(4836), [sym_override] = ACTIONS(4836), [sym_package] = ACTIONS(4836), [sym_pragma] = ACTIONS(4836), [sym_private] = ACTIONS(4836), [sym_protected] = ACTIONS(4836), [sym_public] = ACTIONS(4836), [sym_pure] = ACTIONS(4836), [sym_ref] = ACTIONS(4836), [sym_return] = ACTIONS(4836), [sym_scope] = ACTIONS(4836), [sym_shared] = ACTIONS(4836), [sym_static] = ACTIONS(4836), [sym_struct] = ACTIONS(4836), [sym_synchronized] = ACTIONS(4836), [sym_template] = ACTIONS(4836), [sym_typeof] = ACTIONS(4836), [sym_union] = ACTIONS(4836), [sym_unittest] = ACTIONS(4836), [sym_version] = ACTIONS(4836), [sym_while] = ACTIONS(4836), [sym_gshared] = ACTIONS(4836), [sym_traits] = ACTIONS(4836), [sym_vector] = ACTIONS(4836), [sym_void] = ACTIONS(4836), [sym_directive] = ACTIONS(3), }, [2807] = { [sym_identifier] = ACTIONS(4844), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4846), [anon_sym_DOT] = ACTIONS(4846), [anon_sym_SEMI] = ACTIONS(4846), [anon_sym_TILDE] = ACTIONS(4846), [anon_sym_AT] = ACTIONS(4846), [sym_bool] = ACTIONS(4844), [sym_byte] = ACTIONS(4844), [sym_ubyte] = ACTIONS(4844), [sym_char] = ACTIONS(4844), [sym_short] = ACTIONS(4844), [sym_ushort] = ACTIONS(4844), [sym_int] = ACTIONS(4844), [sym_uint] = ACTIONS(4844), [sym_long] = ACTIONS(4844), [sym_ulong] = ACTIONS(4844), [sym_cent] = ACTIONS(4844), [sym_ucent] = ACTIONS(4844), [sym_wchar] = ACTIONS(4844), [sym_dchar] = ACTIONS(4844), [sym_float] = ACTIONS(4844), [sym_double] = ACTIONS(4844), [sym_real] = ACTIONS(4844), [sym_ifloat] = ACTIONS(4844), [sym_idouble] = ACTIONS(4844), [sym_ireal] = ACTIONS(4844), [sym_cfloat] = ACTIONS(4844), [sym_cdouble] = ACTIONS(4844), [sym_creal] = ACTIONS(4844), [sym_size_t] = ACTIONS(4844), [sym_ptrdiff_t] = ACTIONS(4844), [sym_string] = ACTIONS(4844), [sym_cstring] = ACTIONS(4844), [sym_dstring] = ACTIONS(4844), [sym_wstring] = ACTIONS(4844), [sym_noreturn] = ACTIONS(4844), [sym_this] = ACTIONS(4844), [sym_abstract] = ACTIONS(4844), [sym_alias] = ACTIONS(4844), [sym_align] = ACTIONS(4844), [sym_auto] = ACTIONS(4844), [sym_class] = ACTIONS(4844), [sym_const] = ACTIONS(4844), [sym_debug] = ACTIONS(4844), [sym_deprecated] = ACTIONS(4844), [sym_else] = ACTIONS(4844), [sym_enum] = ACTIONS(4844), [sym_export] = ACTIONS(4844), [sym_extern] = ACTIONS(4844), [sym_final] = ACTIONS(4844), [sym_immutable] = ACTIONS(4844), [sym_import] = ACTIONS(4844), [sym_inout] = ACTIONS(4844), [sym_interface] = ACTIONS(4844), [sym_invariant] = ACTIONS(4844), [sym_mixin] = ACTIONS(4844), [sym_nothrow] = ACTIONS(4844), [sym_override] = ACTIONS(4844), [sym_package] = ACTIONS(4844), [sym_pragma] = ACTIONS(4844), [sym_private] = ACTIONS(4844), [sym_protected] = ACTIONS(4844), [sym_public] = ACTIONS(4844), [sym_pure] = ACTIONS(4844), [sym_ref] = ACTIONS(4844), [sym_return] = ACTIONS(4844), [sym_scope] = ACTIONS(4844), [sym_shared] = ACTIONS(4844), [sym_static] = ACTIONS(4844), [sym_struct] = ACTIONS(4844), [sym_synchronized] = ACTIONS(4844), [sym_template] = ACTIONS(4844), [sym_typeof] = ACTIONS(4844), [sym_union] = ACTIONS(4844), [sym_unittest] = ACTIONS(4844), [sym_version] = ACTIONS(4844), [sym_while] = ACTIONS(4844), [sym_gshared] = ACTIONS(4844), [sym_traits] = ACTIONS(4844), [sym_vector] = ACTIONS(4844), [sym_void] = ACTIONS(4844), [sym_directive] = ACTIONS(3), }, [2808] = { [sym_identifier] = ACTIONS(4331), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4333), [anon_sym_DOT] = ACTIONS(4333), [anon_sym_SEMI] = ACTIONS(4333), [anon_sym_TILDE] = ACTIONS(4333), [anon_sym_AT] = ACTIONS(4333), [sym_bool] = ACTIONS(4331), [sym_byte] = ACTIONS(4331), [sym_ubyte] = ACTIONS(4331), [sym_char] = ACTIONS(4331), [sym_short] = ACTIONS(4331), [sym_ushort] = ACTIONS(4331), [sym_int] = ACTIONS(4331), [sym_uint] = ACTIONS(4331), [sym_long] = ACTIONS(4331), [sym_ulong] = ACTIONS(4331), [sym_cent] = ACTIONS(4331), [sym_ucent] = ACTIONS(4331), [sym_wchar] = ACTIONS(4331), [sym_dchar] = ACTIONS(4331), [sym_float] = ACTIONS(4331), [sym_double] = ACTIONS(4331), [sym_real] = ACTIONS(4331), [sym_ifloat] = ACTIONS(4331), [sym_idouble] = ACTIONS(4331), [sym_ireal] = ACTIONS(4331), [sym_cfloat] = ACTIONS(4331), [sym_cdouble] = ACTIONS(4331), [sym_creal] = ACTIONS(4331), [sym_size_t] = ACTIONS(4331), [sym_ptrdiff_t] = ACTIONS(4331), [sym_string] = ACTIONS(4331), [sym_cstring] = ACTIONS(4331), [sym_dstring] = ACTIONS(4331), [sym_wstring] = ACTIONS(4331), [sym_noreturn] = ACTIONS(4331), [sym_this] = ACTIONS(4331), [sym_abstract] = ACTIONS(4331), [sym_alias] = ACTIONS(4331), [sym_align] = ACTIONS(4331), [sym_auto] = ACTIONS(4331), [sym_class] = ACTIONS(4331), [sym_const] = ACTIONS(4331), [sym_debug] = ACTIONS(4331), [sym_deprecated] = ACTIONS(4331), [sym_else] = ACTIONS(4331), [sym_enum] = ACTIONS(4331), [sym_export] = ACTIONS(4331), [sym_extern] = ACTIONS(4331), [sym_final] = ACTIONS(4331), [sym_immutable] = ACTIONS(4331), [sym_import] = ACTIONS(4331), [sym_inout] = ACTIONS(4331), [sym_interface] = ACTIONS(4331), [sym_invariant] = ACTIONS(4331), [sym_mixin] = ACTIONS(4331), [sym_nothrow] = ACTIONS(4331), [sym_override] = ACTIONS(4331), [sym_package] = ACTIONS(4331), [sym_pragma] = ACTIONS(4331), [sym_private] = ACTIONS(4331), [sym_protected] = ACTIONS(4331), [sym_public] = ACTIONS(4331), [sym_pure] = ACTIONS(4331), [sym_ref] = ACTIONS(4331), [sym_return] = ACTIONS(4331), [sym_scope] = ACTIONS(4331), [sym_shared] = ACTIONS(4331), [sym_static] = ACTIONS(4331), [sym_struct] = ACTIONS(4331), [sym_synchronized] = ACTIONS(4331), [sym_template] = ACTIONS(4331), [sym_typeof] = ACTIONS(4331), [sym_union] = ACTIONS(4331), [sym_unittest] = ACTIONS(4331), [sym_version] = ACTIONS(4331), [sym_while] = ACTIONS(4331), [sym_gshared] = ACTIONS(4331), [sym_traits] = ACTIONS(4331), [sym_vector] = ACTIONS(4331), [sym_void] = ACTIONS(4331), [sym_directive] = ACTIONS(3), }, [2809] = { [sym_identifier] = ACTIONS(4550), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4552), [anon_sym_DOT] = ACTIONS(4552), [anon_sym_SEMI] = ACTIONS(4552), [anon_sym_TILDE] = ACTIONS(4552), [anon_sym_AT] = ACTIONS(4552), [sym_bool] = ACTIONS(4550), [sym_byte] = ACTIONS(4550), [sym_ubyte] = ACTIONS(4550), [sym_char] = ACTIONS(4550), [sym_short] = ACTIONS(4550), [sym_ushort] = ACTIONS(4550), [sym_int] = ACTIONS(4550), [sym_uint] = ACTIONS(4550), [sym_long] = ACTIONS(4550), [sym_ulong] = ACTIONS(4550), [sym_cent] = ACTIONS(4550), [sym_ucent] = ACTIONS(4550), [sym_wchar] = ACTIONS(4550), [sym_dchar] = ACTIONS(4550), [sym_float] = ACTIONS(4550), [sym_double] = ACTIONS(4550), [sym_real] = ACTIONS(4550), [sym_ifloat] = ACTIONS(4550), [sym_idouble] = ACTIONS(4550), [sym_ireal] = ACTIONS(4550), [sym_cfloat] = ACTIONS(4550), [sym_cdouble] = ACTIONS(4550), [sym_creal] = ACTIONS(4550), [sym_size_t] = ACTIONS(4550), [sym_ptrdiff_t] = ACTIONS(4550), [sym_string] = ACTIONS(4550), [sym_cstring] = ACTIONS(4550), [sym_dstring] = ACTIONS(4550), [sym_wstring] = ACTIONS(4550), [sym_noreturn] = ACTIONS(4550), [sym_this] = ACTIONS(4550), [sym_abstract] = ACTIONS(4550), [sym_alias] = ACTIONS(4550), [sym_align] = ACTIONS(4550), [sym_auto] = ACTIONS(4550), [sym_class] = ACTIONS(4550), [sym_const] = ACTIONS(4550), [sym_debug] = ACTIONS(4550), [sym_deprecated] = ACTIONS(4550), [sym_else] = ACTIONS(4550), [sym_enum] = ACTIONS(4550), [sym_export] = ACTIONS(4550), [sym_extern] = ACTIONS(4550), [sym_final] = ACTIONS(4550), [sym_immutable] = ACTIONS(4550), [sym_import] = ACTIONS(4550), [sym_inout] = ACTIONS(4550), [sym_interface] = ACTIONS(4550), [sym_invariant] = ACTIONS(4550), [sym_mixin] = ACTIONS(4550), [sym_nothrow] = ACTIONS(4550), [sym_override] = ACTIONS(4550), [sym_package] = ACTIONS(4550), [sym_pragma] = ACTIONS(4550), [sym_private] = ACTIONS(4550), [sym_protected] = ACTIONS(4550), [sym_public] = ACTIONS(4550), [sym_pure] = ACTIONS(4550), [sym_ref] = ACTIONS(4550), [sym_return] = ACTIONS(4550), [sym_scope] = ACTIONS(4550), [sym_shared] = ACTIONS(4550), [sym_static] = ACTIONS(4550), [sym_struct] = ACTIONS(4550), [sym_synchronized] = ACTIONS(4550), [sym_template] = ACTIONS(4550), [sym_typeof] = ACTIONS(4550), [sym_union] = ACTIONS(4550), [sym_unittest] = ACTIONS(4550), [sym_version] = ACTIONS(4550), [sym_while] = ACTIONS(4550), [sym_gshared] = ACTIONS(4550), [sym_traits] = ACTIONS(4550), [sym_vector] = ACTIONS(4550), [sym_void] = ACTIONS(4550), [sym_directive] = ACTIONS(3), }, [2810] = { [sym_identifier] = ACTIONS(4317), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4319), [anon_sym_DOT] = ACTIONS(4319), [anon_sym_SEMI] = ACTIONS(4319), [anon_sym_TILDE] = ACTIONS(4319), [anon_sym_AT] = ACTIONS(4319), [sym_bool] = ACTIONS(4317), [sym_byte] = ACTIONS(4317), [sym_ubyte] = ACTIONS(4317), [sym_char] = ACTIONS(4317), [sym_short] = ACTIONS(4317), [sym_ushort] = ACTIONS(4317), [sym_int] = ACTIONS(4317), [sym_uint] = ACTIONS(4317), [sym_long] = ACTIONS(4317), [sym_ulong] = ACTIONS(4317), [sym_cent] = ACTIONS(4317), [sym_ucent] = ACTIONS(4317), [sym_wchar] = ACTIONS(4317), [sym_dchar] = ACTIONS(4317), [sym_float] = ACTIONS(4317), [sym_double] = ACTIONS(4317), [sym_real] = ACTIONS(4317), [sym_ifloat] = ACTIONS(4317), [sym_idouble] = ACTIONS(4317), [sym_ireal] = ACTIONS(4317), [sym_cfloat] = ACTIONS(4317), [sym_cdouble] = ACTIONS(4317), [sym_creal] = ACTIONS(4317), [sym_size_t] = ACTIONS(4317), [sym_ptrdiff_t] = ACTIONS(4317), [sym_string] = ACTIONS(4317), [sym_cstring] = ACTIONS(4317), [sym_dstring] = ACTIONS(4317), [sym_wstring] = ACTIONS(4317), [sym_noreturn] = ACTIONS(4317), [sym_this] = ACTIONS(4317), [sym_abstract] = ACTIONS(4317), [sym_alias] = ACTIONS(4317), [sym_align] = ACTIONS(4317), [sym_auto] = ACTIONS(4317), [sym_class] = ACTIONS(4317), [sym_const] = ACTIONS(4317), [sym_debug] = ACTIONS(4317), [sym_deprecated] = ACTIONS(4317), [sym_else] = ACTIONS(4317), [sym_enum] = ACTIONS(4317), [sym_export] = ACTIONS(4317), [sym_extern] = ACTIONS(4317), [sym_final] = ACTIONS(4317), [sym_immutable] = ACTIONS(4317), [sym_import] = ACTIONS(4317), [sym_inout] = ACTIONS(4317), [sym_interface] = ACTIONS(4317), [sym_invariant] = ACTIONS(4317), [sym_mixin] = ACTIONS(4317), [sym_nothrow] = ACTIONS(4317), [sym_override] = ACTIONS(4317), [sym_package] = ACTIONS(4317), [sym_pragma] = ACTIONS(4317), [sym_private] = ACTIONS(4317), [sym_protected] = ACTIONS(4317), [sym_public] = ACTIONS(4317), [sym_pure] = ACTIONS(4317), [sym_ref] = ACTIONS(4317), [sym_return] = ACTIONS(4317), [sym_scope] = ACTIONS(4317), [sym_shared] = ACTIONS(4317), [sym_static] = ACTIONS(4317), [sym_struct] = ACTIONS(4317), [sym_synchronized] = ACTIONS(4317), [sym_template] = ACTIONS(4317), [sym_typeof] = ACTIONS(4317), [sym_union] = ACTIONS(4317), [sym_unittest] = ACTIONS(4317), [sym_version] = ACTIONS(4317), [sym_while] = ACTIONS(4317), [sym_gshared] = ACTIONS(4317), [sym_traits] = ACTIONS(4317), [sym_vector] = ACTIONS(4317), [sym_void] = ACTIONS(4317), [sym_directive] = ACTIONS(3), }, [2811] = { [sym_identifier] = ACTIONS(4301), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4303), [anon_sym_DOT] = ACTIONS(4303), [anon_sym_SEMI] = ACTIONS(4303), [anon_sym_TILDE] = ACTIONS(4303), [anon_sym_AT] = ACTIONS(4303), [sym_bool] = ACTIONS(4301), [sym_byte] = ACTIONS(4301), [sym_ubyte] = ACTIONS(4301), [sym_char] = ACTIONS(4301), [sym_short] = ACTIONS(4301), [sym_ushort] = ACTIONS(4301), [sym_int] = ACTIONS(4301), [sym_uint] = ACTIONS(4301), [sym_long] = ACTIONS(4301), [sym_ulong] = ACTIONS(4301), [sym_cent] = ACTIONS(4301), [sym_ucent] = ACTIONS(4301), [sym_wchar] = ACTIONS(4301), [sym_dchar] = ACTIONS(4301), [sym_float] = ACTIONS(4301), [sym_double] = ACTIONS(4301), [sym_real] = ACTIONS(4301), [sym_ifloat] = ACTIONS(4301), [sym_idouble] = ACTIONS(4301), [sym_ireal] = ACTIONS(4301), [sym_cfloat] = ACTIONS(4301), [sym_cdouble] = ACTIONS(4301), [sym_creal] = ACTIONS(4301), [sym_size_t] = ACTIONS(4301), [sym_ptrdiff_t] = ACTIONS(4301), [sym_string] = ACTIONS(4301), [sym_cstring] = ACTIONS(4301), [sym_dstring] = ACTIONS(4301), [sym_wstring] = ACTIONS(4301), [sym_noreturn] = ACTIONS(4301), [sym_this] = ACTIONS(4301), [sym_abstract] = ACTIONS(4301), [sym_alias] = ACTIONS(4301), [sym_align] = ACTIONS(4301), [sym_auto] = ACTIONS(4301), [sym_class] = ACTIONS(4301), [sym_const] = ACTIONS(4301), [sym_debug] = ACTIONS(4301), [sym_deprecated] = ACTIONS(4301), [sym_else] = ACTIONS(4301), [sym_enum] = ACTIONS(4301), [sym_export] = ACTIONS(4301), [sym_extern] = ACTIONS(4301), [sym_final] = ACTIONS(4301), [sym_immutable] = ACTIONS(4301), [sym_import] = ACTIONS(4301), [sym_inout] = ACTIONS(4301), [sym_interface] = ACTIONS(4301), [sym_invariant] = ACTIONS(4301), [sym_mixin] = ACTIONS(4301), [sym_nothrow] = ACTIONS(4301), [sym_override] = ACTIONS(4301), [sym_package] = ACTIONS(4301), [sym_pragma] = ACTIONS(4301), [sym_private] = ACTIONS(4301), [sym_protected] = ACTIONS(4301), [sym_public] = ACTIONS(4301), [sym_pure] = ACTIONS(4301), [sym_ref] = ACTIONS(4301), [sym_return] = ACTIONS(4301), [sym_scope] = ACTIONS(4301), [sym_shared] = ACTIONS(4301), [sym_static] = ACTIONS(4301), [sym_struct] = ACTIONS(4301), [sym_synchronized] = ACTIONS(4301), [sym_template] = ACTIONS(4301), [sym_typeof] = ACTIONS(4301), [sym_union] = ACTIONS(4301), [sym_unittest] = ACTIONS(4301), [sym_version] = ACTIONS(4301), [sym_while] = ACTIONS(4301), [sym_gshared] = ACTIONS(4301), [sym_traits] = ACTIONS(4301), [sym_vector] = ACTIONS(4301), [sym_void] = ACTIONS(4301), [sym_directive] = ACTIONS(3), }, [2812] = { [sym_identifier] = ACTIONS(5056), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5058), [anon_sym_DOT] = ACTIONS(5058), [anon_sym_SEMI] = ACTIONS(5058), [anon_sym_TILDE] = ACTIONS(5058), [anon_sym_AT] = ACTIONS(5058), [sym_bool] = ACTIONS(5056), [sym_byte] = ACTIONS(5056), [sym_ubyte] = ACTIONS(5056), [sym_char] = ACTIONS(5056), [sym_short] = ACTIONS(5056), [sym_ushort] = ACTIONS(5056), [sym_int] = ACTIONS(5056), [sym_uint] = ACTIONS(5056), [sym_long] = ACTIONS(5056), [sym_ulong] = ACTIONS(5056), [sym_cent] = ACTIONS(5056), [sym_ucent] = ACTIONS(5056), [sym_wchar] = ACTIONS(5056), [sym_dchar] = ACTIONS(5056), [sym_float] = ACTIONS(5056), [sym_double] = ACTIONS(5056), [sym_real] = ACTIONS(5056), [sym_ifloat] = ACTIONS(5056), [sym_idouble] = ACTIONS(5056), [sym_ireal] = ACTIONS(5056), [sym_cfloat] = ACTIONS(5056), [sym_cdouble] = ACTIONS(5056), [sym_creal] = ACTIONS(5056), [sym_size_t] = ACTIONS(5056), [sym_ptrdiff_t] = ACTIONS(5056), [sym_string] = ACTIONS(5056), [sym_cstring] = ACTIONS(5056), [sym_dstring] = ACTIONS(5056), [sym_wstring] = ACTIONS(5056), [sym_noreturn] = ACTIONS(5056), [sym_this] = ACTIONS(5056), [sym_abstract] = ACTIONS(5056), [sym_alias] = ACTIONS(5056), [sym_align] = ACTIONS(5056), [sym_auto] = ACTIONS(5056), [sym_class] = ACTIONS(5056), [sym_const] = ACTIONS(5056), [sym_debug] = ACTIONS(5056), [sym_deprecated] = ACTIONS(5056), [sym_else] = ACTIONS(5056), [sym_enum] = ACTIONS(5056), [sym_export] = ACTIONS(5056), [sym_extern] = ACTIONS(5056), [sym_final] = ACTIONS(5056), [sym_immutable] = ACTIONS(5056), [sym_import] = ACTIONS(5056), [sym_inout] = ACTIONS(5056), [sym_interface] = ACTIONS(5056), [sym_invariant] = ACTIONS(5056), [sym_mixin] = ACTIONS(5056), [sym_nothrow] = ACTIONS(5056), [sym_override] = ACTIONS(5056), [sym_package] = ACTIONS(5056), [sym_pragma] = ACTIONS(5056), [sym_private] = ACTIONS(5056), [sym_protected] = ACTIONS(5056), [sym_public] = ACTIONS(5056), [sym_pure] = ACTIONS(5056), [sym_ref] = ACTIONS(5056), [sym_return] = ACTIONS(5056), [sym_scope] = ACTIONS(5056), [sym_shared] = ACTIONS(5056), [sym_static] = ACTIONS(5056), [sym_struct] = ACTIONS(5056), [sym_synchronized] = ACTIONS(5056), [sym_template] = ACTIONS(5056), [sym_typeof] = ACTIONS(5056), [sym_union] = ACTIONS(5056), [sym_unittest] = ACTIONS(5056), [sym_version] = ACTIONS(5056), [sym_while] = ACTIONS(5056), [sym_gshared] = ACTIONS(5056), [sym_traits] = ACTIONS(5056), [sym_vector] = ACTIONS(5056), [sym_void] = ACTIONS(5056), [sym_directive] = ACTIONS(3), }, [2813] = { [sym_identifier] = ACTIONS(4708), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4710), [anon_sym_DOT] = ACTIONS(4710), [anon_sym_SEMI] = ACTIONS(4710), [anon_sym_TILDE] = ACTIONS(4710), [anon_sym_AT] = ACTIONS(4710), [sym_bool] = ACTIONS(4708), [sym_byte] = ACTIONS(4708), [sym_ubyte] = ACTIONS(4708), [sym_char] = ACTIONS(4708), [sym_short] = ACTIONS(4708), [sym_ushort] = ACTIONS(4708), [sym_int] = ACTIONS(4708), [sym_uint] = ACTIONS(4708), [sym_long] = ACTIONS(4708), [sym_ulong] = ACTIONS(4708), [sym_cent] = ACTIONS(4708), [sym_ucent] = ACTIONS(4708), [sym_wchar] = ACTIONS(4708), [sym_dchar] = ACTIONS(4708), [sym_float] = ACTIONS(4708), [sym_double] = ACTIONS(4708), [sym_real] = ACTIONS(4708), [sym_ifloat] = ACTIONS(4708), [sym_idouble] = ACTIONS(4708), [sym_ireal] = ACTIONS(4708), [sym_cfloat] = ACTIONS(4708), [sym_cdouble] = ACTIONS(4708), [sym_creal] = ACTIONS(4708), [sym_size_t] = ACTIONS(4708), [sym_ptrdiff_t] = ACTIONS(4708), [sym_string] = ACTIONS(4708), [sym_cstring] = ACTIONS(4708), [sym_dstring] = ACTIONS(4708), [sym_wstring] = ACTIONS(4708), [sym_noreturn] = ACTIONS(4708), [sym_this] = ACTIONS(4708), [sym_abstract] = ACTIONS(4708), [sym_alias] = ACTIONS(4708), [sym_align] = ACTIONS(4708), [sym_auto] = ACTIONS(4708), [sym_class] = ACTIONS(4708), [sym_const] = ACTIONS(4708), [sym_debug] = ACTIONS(4708), [sym_deprecated] = ACTIONS(4708), [sym_else] = ACTIONS(4708), [sym_enum] = ACTIONS(4708), [sym_export] = ACTIONS(4708), [sym_extern] = ACTIONS(4708), [sym_final] = ACTIONS(4708), [sym_immutable] = ACTIONS(4708), [sym_import] = ACTIONS(4708), [sym_inout] = ACTIONS(4708), [sym_interface] = ACTIONS(4708), [sym_invariant] = ACTIONS(4708), [sym_mixin] = ACTIONS(4708), [sym_nothrow] = ACTIONS(4708), [sym_override] = ACTIONS(4708), [sym_package] = ACTIONS(4708), [sym_pragma] = ACTIONS(4708), [sym_private] = ACTIONS(4708), [sym_protected] = ACTIONS(4708), [sym_public] = ACTIONS(4708), [sym_pure] = ACTIONS(4708), [sym_ref] = ACTIONS(4708), [sym_return] = ACTIONS(4708), [sym_scope] = ACTIONS(4708), [sym_shared] = ACTIONS(4708), [sym_static] = ACTIONS(4708), [sym_struct] = ACTIONS(4708), [sym_synchronized] = ACTIONS(4708), [sym_template] = ACTIONS(4708), [sym_typeof] = ACTIONS(4708), [sym_union] = ACTIONS(4708), [sym_unittest] = ACTIONS(4708), [sym_version] = ACTIONS(4708), [sym_while] = ACTIONS(4708), [sym_gshared] = ACTIONS(4708), [sym_traits] = ACTIONS(4708), [sym_vector] = ACTIONS(4708), [sym_void] = ACTIONS(4708), [sym_directive] = ACTIONS(3), }, [2814] = { [sym_identifier] = ACTIONS(5044), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5046), [anon_sym_DOT] = ACTIONS(5046), [anon_sym_SEMI] = ACTIONS(5046), [anon_sym_TILDE] = ACTIONS(5046), [anon_sym_AT] = ACTIONS(5046), [sym_bool] = ACTIONS(5044), [sym_byte] = ACTIONS(5044), [sym_ubyte] = ACTIONS(5044), [sym_char] = ACTIONS(5044), [sym_short] = ACTIONS(5044), [sym_ushort] = ACTIONS(5044), [sym_int] = ACTIONS(5044), [sym_uint] = ACTIONS(5044), [sym_long] = ACTIONS(5044), [sym_ulong] = ACTIONS(5044), [sym_cent] = ACTIONS(5044), [sym_ucent] = ACTIONS(5044), [sym_wchar] = ACTIONS(5044), [sym_dchar] = ACTIONS(5044), [sym_float] = ACTIONS(5044), [sym_double] = ACTIONS(5044), [sym_real] = ACTIONS(5044), [sym_ifloat] = ACTIONS(5044), [sym_idouble] = ACTIONS(5044), [sym_ireal] = ACTIONS(5044), [sym_cfloat] = ACTIONS(5044), [sym_cdouble] = ACTIONS(5044), [sym_creal] = ACTIONS(5044), [sym_size_t] = ACTIONS(5044), [sym_ptrdiff_t] = ACTIONS(5044), [sym_string] = ACTIONS(5044), [sym_cstring] = ACTIONS(5044), [sym_dstring] = ACTIONS(5044), [sym_wstring] = ACTIONS(5044), [sym_noreturn] = ACTIONS(5044), [sym_this] = ACTIONS(5044), [sym_abstract] = ACTIONS(5044), [sym_alias] = ACTIONS(5044), [sym_align] = ACTIONS(5044), [sym_auto] = ACTIONS(5044), [sym_class] = ACTIONS(5044), [sym_const] = ACTIONS(5044), [sym_debug] = ACTIONS(5044), [sym_deprecated] = ACTIONS(5044), [sym_else] = ACTIONS(5044), [sym_enum] = ACTIONS(5044), [sym_export] = ACTIONS(5044), [sym_extern] = ACTIONS(5044), [sym_final] = ACTIONS(5044), [sym_immutable] = ACTIONS(5044), [sym_import] = ACTIONS(5044), [sym_inout] = ACTIONS(5044), [sym_interface] = ACTIONS(5044), [sym_invariant] = ACTIONS(5044), [sym_mixin] = ACTIONS(5044), [sym_nothrow] = ACTIONS(5044), [sym_override] = ACTIONS(5044), [sym_package] = ACTIONS(5044), [sym_pragma] = ACTIONS(5044), [sym_private] = ACTIONS(5044), [sym_protected] = ACTIONS(5044), [sym_public] = ACTIONS(5044), [sym_pure] = ACTIONS(5044), [sym_ref] = ACTIONS(5044), [sym_return] = ACTIONS(5044), [sym_scope] = ACTIONS(5044), [sym_shared] = ACTIONS(5044), [sym_static] = ACTIONS(5044), [sym_struct] = ACTIONS(5044), [sym_synchronized] = ACTIONS(5044), [sym_template] = ACTIONS(5044), [sym_typeof] = ACTIONS(5044), [sym_union] = ACTIONS(5044), [sym_unittest] = ACTIONS(5044), [sym_version] = ACTIONS(5044), [sym_while] = ACTIONS(5044), [sym_gshared] = ACTIONS(5044), [sym_traits] = ACTIONS(5044), [sym_vector] = ACTIONS(5044), [sym_void] = ACTIONS(5044), [sym_directive] = ACTIONS(3), }, [2815] = { [ts_builtin_sym_end] = ACTIONS(2782), [sym_identifier] = ACTIONS(2784), [sym_end_file] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [anon_sym_AT] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_abstract] = ACTIONS(2784), [sym_alias] = ACTIONS(2784), [sym_align] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_class] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_debug] = ACTIONS(2784), [sym_deprecated] = ACTIONS(2784), [sym_else] = ACTIONS(6815), [sym_enum] = ACTIONS(2784), [sym_export] = ACTIONS(2784), [sym_extern] = ACTIONS(2784), [sym_final] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_interface] = ACTIONS(2784), [sym_invariant] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_nothrow] = ACTIONS(2784), [sym_override] = ACTIONS(2784), [sym_package] = ACTIONS(2784), [sym_pragma] = ACTIONS(2784), [sym_private] = ACTIONS(2784), [sym_protected] = ACTIONS(2784), [sym_public] = ACTIONS(2784), [sym_pure] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_return] = ACTIONS(2784), [sym_scope] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_static] = ACTIONS(2784), [sym_struct] = ACTIONS(2784), [sym_synchronized] = ACTIONS(2784), [sym_template] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_union] = ACTIONS(2784), [sym_unittest] = ACTIONS(2784), [sym_version] = ACTIONS(2784), [sym_gshared] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [sym_directive] = ACTIONS(3), }, [2816] = { [sym_identifier] = ACTIONS(4864), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4866), [anon_sym_DOT] = ACTIONS(4866), [anon_sym_SEMI] = ACTIONS(4866), [anon_sym_TILDE] = ACTIONS(4866), [anon_sym_AT] = ACTIONS(4866), [sym_bool] = ACTIONS(4864), [sym_byte] = ACTIONS(4864), [sym_ubyte] = ACTIONS(4864), [sym_char] = ACTIONS(4864), [sym_short] = ACTIONS(4864), [sym_ushort] = ACTIONS(4864), [sym_int] = ACTIONS(4864), [sym_uint] = ACTIONS(4864), [sym_long] = ACTIONS(4864), [sym_ulong] = ACTIONS(4864), [sym_cent] = ACTIONS(4864), [sym_ucent] = ACTIONS(4864), [sym_wchar] = ACTIONS(4864), [sym_dchar] = ACTIONS(4864), [sym_float] = ACTIONS(4864), [sym_double] = ACTIONS(4864), [sym_real] = ACTIONS(4864), [sym_ifloat] = ACTIONS(4864), [sym_idouble] = ACTIONS(4864), [sym_ireal] = ACTIONS(4864), [sym_cfloat] = ACTIONS(4864), [sym_cdouble] = ACTIONS(4864), [sym_creal] = ACTIONS(4864), [sym_size_t] = ACTIONS(4864), [sym_ptrdiff_t] = ACTIONS(4864), [sym_string] = ACTIONS(4864), [sym_cstring] = ACTIONS(4864), [sym_dstring] = ACTIONS(4864), [sym_wstring] = ACTIONS(4864), [sym_noreturn] = ACTIONS(4864), [sym_this] = ACTIONS(4864), [sym_abstract] = ACTIONS(4864), [sym_alias] = ACTIONS(4864), [sym_align] = ACTIONS(4864), [sym_auto] = ACTIONS(4864), [sym_class] = ACTIONS(4864), [sym_const] = ACTIONS(4864), [sym_debug] = ACTIONS(4864), [sym_deprecated] = ACTIONS(4864), [sym_else] = ACTIONS(4864), [sym_enum] = ACTIONS(4864), [sym_export] = ACTIONS(4864), [sym_extern] = ACTIONS(4864), [sym_final] = ACTIONS(4864), [sym_immutable] = ACTIONS(4864), [sym_import] = ACTIONS(4864), [sym_inout] = ACTIONS(4864), [sym_interface] = ACTIONS(4864), [sym_invariant] = ACTIONS(4864), [sym_mixin] = ACTIONS(4864), [sym_nothrow] = ACTIONS(4864), [sym_override] = ACTIONS(4864), [sym_package] = ACTIONS(4864), [sym_pragma] = ACTIONS(4864), [sym_private] = ACTIONS(4864), [sym_protected] = ACTIONS(4864), [sym_public] = ACTIONS(4864), [sym_pure] = ACTIONS(4864), [sym_ref] = ACTIONS(4864), [sym_return] = ACTIONS(4864), [sym_scope] = ACTIONS(4864), [sym_shared] = ACTIONS(4864), [sym_static] = ACTIONS(4864), [sym_struct] = ACTIONS(4864), [sym_synchronized] = ACTIONS(4864), [sym_template] = ACTIONS(4864), [sym_typeof] = ACTIONS(4864), [sym_union] = ACTIONS(4864), [sym_unittest] = ACTIONS(4864), [sym_version] = ACTIONS(4864), [sym_while] = ACTIONS(4864), [sym_gshared] = ACTIONS(4864), [sym_traits] = ACTIONS(4864), [sym_vector] = ACTIONS(4864), [sym_void] = ACTIONS(4864), [sym_directive] = ACTIONS(3), }, [2817] = { [sym_identifier] = ACTIONS(4868), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4870), [anon_sym_DOT] = ACTIONS(4870), [anon_sym_SEMI] = ACTIONS(4870), [anon_sym_TILDE] = ACTIONS(4870), [anon_sym_AT] = ACTIONS(4870), [sym_bool] = ACTIONS(4868), [sym_byte] = ACTIONS(4868), [sym_ubyte] = ACTIONS(4868), [sym_char] = ACTIONS(4868), [sym_short] = ACTIONS(4868), [sym_ushort] = ACTIONS(4868), [sym_int] = ACTIONS(4868), [sym_uint] = ACTIONS(4868), [sym_long] = ACTIONS(4868), [sym_ulong] = ACTIONS(4868), [sym_cent] = ACTIONS(4868), [sym_ucent] = ACTIONS(4868), [sym_wchar] = ACTIONS(4868), [sym_dchar] = ACTIONS(4868), [sym_float] = ACTIONS(4868), [sym_double] = ACTIONS(4868), [sym_real] = ACTIONS(4868), [sym_ifloat] = ACTIONS(4868), [sym_idouble] = ACTIONS(4868), [sym_ireal] = ACTIONS(4868), [sym_cfloat] = ACTIONS(4868), [sym_cdouble] = ACTIONS(4868), [sym_creal] = ACTIONS(4868), [sym_size_t] = ACTIONS(4868), [sym_ptrdiff_t] = ACTIONS(4868), [sym_string] = ACTIONS(4868), [sym_cstring] = ACTIONS(4868), [sym_dstring] = ACTIONS(4868), [sym_wstring] = ACTIONS(4868), [sym_noreturn] = ACTIONS(4868), [sym_this] = ACTIONS(4868), [sym_abstract] = ACTIONS(4868), [sym_alias] = ACTIONS(4868), [sym_align] = ACTIONS(4868), [sym_auto] = ACTIONS(4868), [sym_class] = ACTIONS(4868), [sym_const] = ACTIONS(4868), [sym_debug] = ACTIONS(4868), [sym_deprecated] = ACTIONS(4868), [sym_else] = ACTIONS(4868), [sym_enum] = ACTIONS(4868), [sym_export] = ACTIONS(4868), [sym_extern] = ACTIONS(4868), [sym_final] = ACTIONS(4868), [sym_immutable] = ACTIONS(4868), [sym_import] = ACTIONS(4868), [sym_inout] = ACTIONS(4868), [sym_interface] = ACTIONS(4868), [sym_invariant] = ACTIONS(4868), [sym_mixin] = ACTIONS(4868), [sym_nothrow] = ACTIONS(4868), [sym_override] = ACTIONS(4868), [sym_package] = ACTIONS(4868), [sym_pragma] = ACTIONS(4868), [sym_private] = ACTIONS(4868), [sym_protected] = ACTIONS(4868), [sym_public] = ACTIONS(4868), [sym_pure] = ACTIONS(4868), [sym_ref] = ACTIONS(4868), [sym_return] = ACTIONS(4868), [sym_scope] = ACTIONS(4868), [sym_shared] = ACTIONS(4868), [sym_static] = ACTIONS(4868), [sym_struct] = ACTIONS(4868), [sym_synchronized] = ACTIONS(4868), [sym_template] = ACTIONS(4868), [sym_typeof] = ACTIONS(4868), [sym_union] = ACTIONS(4868), [sym_unittest] = ACTIONS(4868), [sym_version] = ACTIONS(4868), [sym_while] = ACTIONS(4868), [sym_gshared] = ACTIONS(4868), [sym_traits] = ACTIONS(4868), [sym_vector] = ACTIONS(4868), [sym_void] = ACTIONS(4868), [sym_directive] = ACTIONS(3), }, [2818] = { [sym_identifier] = ACTIONS(2665), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2663), [anon_sym_DOT] = ACTIONS(2663), [anon_sym_SEMI] = ACTIONS(2663), [anon_sym_TILDE] = ACTIONS(2663), [anon_sym_AT] = ACTIONS(2663), [sym_bool] = ACTIONS(2665), [sym_byte] = ACTIONS(2665), [sym_ubyte] = ACTIONS(2665), [sym_char] = ACTIONS(2665), [sym_short] = ACTIONS(2665), [sym_ushort] = ACTIONS(2665), [sym_int] = ACTIONS(2665), [sym_uint] = ACTIONS(2665), [sym_long] = ACTIONS(2665), [sym_ulong] = ACTIONS(2665), [sym_cent] = ACTIONS(2665), [sym_ucent] = ACTIONS(2665), [sym_wchar] = ACTIONS(2665), [sym_dchar] = ACTIONS(2665), [sym_float] = ACTIONS(2665), [sym_double] = ACTIONS(2665), [sym_real] = ACTIONS(2665), [sym_ifloat] = ACTIONS(2665), [sym_idouble] = ACTIONS(2665), [sym_ireal] = ACTIONS(2665), [sym_cfloat] = ACTIONS(2665), [sym_cdouble] = ACTIONS(2665), [sym_creal] = ACTIONS(2665), [sym_size_t] = ACTIONS(2665), [sym_ptrdiff_t] = ACTIONS(2665), [sym_string] = ACTIONS(2665), [sym_cstring] = ACTIONS(2665), [sym_dstring] = ACTIONS(2665), [sym_wstring] = ACTIONS(2665), [sym_noreturn] = ACTIONS(2665), [sym_this] = ACTIONS(2665), [sym_abstract] = ACTIONS(2665), [sym_alias] = ACTIONS(2665), [sym_align] = ACTIONS(2665), [sym_auto] = ACTIONS(2665), [sym_class] = ACTIONS(2665), [sym_const] = ACTIONS(2665), [sym_debug] = ACTIONS(2665), [sym_deprecated] = ACTIONS(2665), [sym_else] = ACTIONS(2665), [sym_enum] = ACTIONS(2665), [sym_export] = ACTIONS(2665), [sym_extern] = ACTIONS(2665), [sym_final] = ACTIONS(2665), [sym_immutable] = ACTIONS(2665), [sym_import] = ACTIONS(2665), [sym_inout] = ACTIONS(2665), [sym_interface] = ACTIONS(2665), [sym_invariant] = ACTIONS(2665), [sym_mixin] = ACTIONS(2665), [sym_nothrow] = ACTIONS(2665), [sym_override] = ACTIONS(2665), [sym_package] = ACTIONS(2665), [sym_pragma] = ACTIONS(2665), [sym_private] = ACTIONS(2665), [sym_protected] = ACTIONS(2665), [sym_public] = ACTIONS(2665), [sym_pure] = ACTIONS(2665), [sym_ref] = ACTIONS(2665), [sym_return] = ACTIONS(2665), [sym_scope] = ACTIONS(2665), [sym_shared] = ACTIONS(2665), [sym_static] = ACTIONS(2665), [sym_struct] = ACTIONS(2665), [sym_synchronized] = ACTIONS(2665), [sym_template] = ACTIONS(2665), [sym_typeof] = ACTIONS(2665), [sym_union] = ACTIONS(2665), [sym_unittest] = ACTIONS(2665), [sym_version] = ACTIONS(2665), [sym_while] = ACTIONS(2665), [sym_gshared] = ACTIONS(2665), [sym_traits] = ACTIONS(2665), [sym_vector] = ACTIONS(2665), [sym_void] = ACTIONS(2665), [sym_directive] = ACTIONS(3), }, [2819] = { [sym_identifier] = ACTIONS(4586), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4588), [anon_sym_DOT] = ACTIONS(4588), [anon_sym_SEMI] = ACTIONS(4588), [anon_sym_TILDE] = ACTIONS(4588), [anon_sym_AT] = ACTIONS(4588), [sym_bool] = ACTIONS(4586), [sym_byte] = ACTIONS(4586), [sym_ubyte] = ACTIONS(4586), [sym_char] = ACTIONS(4586), [sym_short] = ACTIONS(4586), [sym_ushort] = ACTIONS(4586), [sym_int] = ACTIONS(4586), [sym_uint] = ACTIONS(4586), [sym_long] = ACTIONS(4586), [sym_ulong] = ACTIONS(4586), [sym_cent] = ACTIONS(4586), [sym_ucent] = ACTIONS(4586), [sym_wchar] = ACTIONS(4586), [sym_dchar] = ACTIONS(4586), [sym_float] = ACTIONS(4586), [sym_double] = ACTIONS(4586), [sym_real] = ACTIONS(4586), [sym_ifloat] = ACTIONS(4586), [sym_idouble] = ACTIONS(4586), [sym_ireal] = ACTIONS(4586), [sym_cfloat] = ACTIONS(4586), [sym_cdouble] = ACTIONS(4586), [sym_creal] = ACTIONS(4586), [sym_size_t] = ACTIONS(4586), [sym_ptrdiff_t] = ACTIONS(4586), [sym_string] = ACTIONS(4586), [sym_cstring] = ACTIONS(4586), [sym_dstring] = ACTIONS(4586), [sym_wstring] = ACTIONS(4586), [sym_noreturn] = ACTIONS(4586), [sym_this] = ACTIONS(4586), [sym_abstract] = ACTIONS(4586), [sym_alias] = ACTIONS(4586), [sym_align] = ACTIONS(4586), [sym_auto] = ACTIONS(4586), [sym_class] = ACTIONS(4586), [sym_const] = ACTIONS(4586), [sym_debug] = ACTIONS(4586), [sym_deprecated] = ACTIONS(4586), [sym_else] = ACTIONS(4586), [sym_enum] = ACTIONS(4586), [sym_export] = ACTIONS(4586), [sym_extern] = ACTIONS(4586), [sym_final] = ACTIONS(4586), [sym_immutable] = ACTIONS(4586), [sym_import] = ACTIONS(4586), [sym_inout] = ACTIONS(4586), [sym_interface] = ACTIONS(4586), [sym_invariant] = ACTIONS(4586), [sym_mixin] = ACTIONS(4586), [sym_nothrow] = ACTIONS(4586), [sym_override] = ACTIONS(4586), [sym_package] = ACTIONS(4586), [sym_pragma] = ACTIONS(4586), [sym_private] = ACTIONS(4586), [sym_protected] = ACTIONS(4586), [sym_public] = ACTIONS(4586), [sym_pure] = ACTIONS(4586), [sym_ref] = ACTIONS(4586), [sym_return] = ACTIONS(4586), [sym_scope] = ACTIONS(4586), [sym_shared] = ACTIONS(4586), [sym_static] = ACTIONS(4586), [sym_struct] = ACTIONS(4586), [sym_synchronized] = ACTIONS(4586), [sym_template] = ACTIONS(4586), [sym_typeof] = ACTIONS(4586), [sym_union] = ACTIONS(4586), [sym_unittest] = ACTIONS(4586), [sym_version] = ACTIONS(4586), [sym_while] = ACTIONS(4586), [sym_gshared] = ACTIONS(4586), [sym_traits] = ACTIONS(4586), [sym_vector] = ACTIONS(4586), [sym_void] = ACTIONS(4586), [sym_directive] = ACTIONS(3), }, [2820] = { [sym_identifier] = ACTIONS(4590), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4592), [anon_sym_DOT] = ACTIONS(4592), [anon_sym_SEMI] = ACTIONS(4592), [anon_sym_TILDE] = ACTIONS(4592), [anon_sym_AT] = ACTIONS(4592), [sym_bool] = ACTIONS(4590), [sym_byte] = ACTIONS(4590), [sym_ubyte] = ACTIONS(4590), [sym_char] = ACTIONS(4590), [sym_short] = ACTIONS(4590), [sym_ushort] = ACTIONS(4590), [sym_int] = ACTIONS(4590), [sym_uint] = ACTIONS(4590), [sym_long] = ACTIONS(4590), [sym_ulong] = ACTIONS(4590), [sym_cent] = ACTIONS(4590), [sym_ucent] = ACTIONS(4590), [sym_wchar] = ACTIONS(4590), [sym_dchar] = ACTIONS(4590), [sym_float] = ACTIONS(4590), [sym_double] = ACTIONS(4590), [sym_real] = ACTIONS(4590), [sym_ifloat] = ACTIONS(4590), [sym_idouble] = ACTIONS(4590), [sym_ireal] = ACTIONS(4590), [sym_cfloat] = ACTIONS(4590), [sym_cdouble] = ACTIONS(4590), [sym_creal] = ACTIONS(4590), [sym_size_t] = ACTIONS(4590), [sym_ptrdiff_t] = ACTIONS(4590), [sym_string] = ACTIONS(4590), [sym_cstring] = ACTIONS(4590), [sym_dstring] = ACTIONS(4590), [sym_wstring] = ACTIONS(4590), [sym_noreturn] = ACTIONS(4590), [sym_this] = ACTIONS(4590), [sym_abstract] = ACTIONS(4590), [sym_alias] = ACTIONS(4590), [sym_align] = ACTIONS(4590), [sym_auto] = ACTIONS(4590), [sym_class] = ACTIONS(4590), [sym_const] = ACTIONS(4590), [sym_debug] = ACTIONS(4590), [sym_deprecated] = ACTIONS(4590), [sym_else] = ACTIONS(4590), [sym_enum] = ACTIONS(4590), [sym_export] = ACTIONS(4590), [sym_extern] = ACTIONS(4590), [sym_final] = ACTIONS(4590), [sym_immutable] = ACTIONS(4590), [sym_import] = ACTIONS(4590), [sym_inout] = ACTIONS(4590), [sym_interface] = ACTIONS(4590), [sym_invariant] = ACTIONS(4590), [sym_mixin] = ACTIONS(4590), [sym_nothrow] = ACTIONS(4590), [sym_override] = ACTIONS(4590), [sym_package] = ACTIONS(4590), [sym_pragma] = ACTIONS(4590), [sym_private] = ACTIONS(4590), [sym_protected] = ACTIONS(4590), [sym_public] = ACTIONS(4590), [sym_pure] = ACTIONS(4590), [sym_ref] = ACTIONS(4590), [sym_return] = ACTIONS(4590), [sym_scope] = ACTIONS(4590), [sym_shared] = ACTIONS(4590), [sym_static] = ACTIONS(4590), [sym_struct] = ACTIONS(4590), [sym_synchronized] = ACTIONS(4590), [sym_template] = ACTIONS(4590), [sym_typeof] = ACTIONS(4590), [sym_union] = ACTIONS(4590), [sym_unittest] = ACTIONS(4590), [sym_version] = ACTIONS(4590), [sym_while] = ACTIONS(4590), [sym_gshared] = ACTIONS(4590), [sym_traits] = ACTIONS(4590), [sym_vector] = ACTIONS(4590), [sym_void] = ACTIONS(4590), [sym_directive] = ACTIONS(3), }, [2821] = { [sym_identifier] = ACTIONS(5040), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5042), [anon_sym_DOT] = ACTIONS(5042), [anon_sym_SEMI] = ACTIONS(5042), [anon_sym_TILDE] = ACTIONS(5042), [anon_sym_AT] = ACTIONS(5042), [sym_bool] = ACTIONS(5040), [sym_byte] = ACTIONS(5040), [sym_ubyte] = ACTIONS(5040), [sym_char] = ACTIONS(5040), [sym_short] = ACTIONS(5040), [sym_ushort] = ACTIONS(5040), [sym_int] = ACTIONS(5040), [sym_uint] = ACTIONS(5040), [sym_long] = ACTIONS(5040), [sym_ulong] = ACTIONS(5040), [sym_cent] = ACTIONS(5040), [sym_ucent] = ACTIONS(5040), [sym_wchar] = ACTIONS(5040), [sym_dchar] = ACTIONS(5040), [sym_float] = ACTIONS(5040), [sym_double] = ACTIONS(5040), [sym_real] = ACTIONS(5040), [sym_ifloat] = ACTIONS(5040), [sym_idouble] = ACTIONS(5040), [sym_ireal] = ACTIONS(5040), [sym_cfloat] = ACTIONS(5040), [sym_cdouble] = ACTIONS(5040), [sym_creal] = ACTIONS(5040), [sym_size_t] = ACTIONS(5040), [sym_ptrdiff_t] = ACTIONS(5040), [sym_string] = ACTIONS(5040), [sym_cstring] = ACTIONS(5040), [sym_dstring] = ACTIONS(5040), [sym_wstring] = ACTIONS(5040), [sym_noreturn] = ACTIONS(5040), [sym_this] = ACTIONS(5040), [sym_abstract] = ACTIONS(5040), [sym_alias] = ACTIONS(5040), [sym_align] = ACTIONS(5040), [sym_auto] = ACTIONS(5040), [sym_class] = ACTIONS(5040), [sym_const] = ACTIONS(5040), [sym_debug] = ACTIONS(5040), [sym_deprecated] = ACTIONS(5040), [sym_else] = ACTIONS(5040), [sym_enum] = ACTIONS(5040), [sym_export] = ACTIONS(5040), [sym_extern] = ACTIONS(5040), [sym_final] = ACTIONS(5040), [sym_immutable] = ACTIONS(5040), [sym_import] = ACTIONS(5040), [sym_inout] = ACTIONS(5040), [sym_interface] = ACTIONS(5040), [sym_invariant] = ACTIONS(5040), [sym_mixin] = ACTIONS(5040), [sym_nothrow] = ACTIONS(5040), [sym_override] = ACTIONS(5040), [sym_package] = ACTIONS(5040), [sym_pragma] = ACTIONS(5040), [sym_private] = ACTIONS(5040), [sym_protected] = ACTIONS(5040), [sym_public] = ACTIONS(5040), [sym_pure] = ACTIONS(5040), [sym_ref] = ACTIONS(5040), [sym_return] = ACTIONS(5040), [sym_scope] = ACTIONS(5040), [sym_shared] = ACTIONS(5040), [sym_static] = ACTIONS(5040), [sym_struct] = ACTIONS(5040), [sym_synchronized] = ACTIONS(5040), [sym_template] = ACTIONS(5040), [sym_typeof] = ACTIONS(5040), [sym_union] = ACTIONS(5040), [sym_unittest] = ACTIONS(5040), [sym_version] = ACTIONS(5040), [sym_while] = ACTIONS(5040), [sym_gshared] = ACTIONS(5040), [sym_traits] = ACTIONS(5040), [sym_vector] = ACTIONS(5040), [sym_void] = ACTIONS(5040), [sym_directive] = ACTIONS(3), }, [2822] = { [sym_identifier] = ACTIONS(2812), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2810), [anon_sym_DOT] = ACTIONS(2810), [anon_sym_SEMI] = ACTIONS(2810), [anon_sym_TILDE] = ACTIONS(2810), [anon_sym_AT] = ACTIONS(2810), [sym_bool] = ACTIONS(2812), [sym_byte] = ACTIONS(2812), [sym_ubyte] = ACTIONS(2812), [sym_char] = ACTIONS(2812), [sym_short] = ACTIONS(2812), [sym_ushort] = ACTIONS(2812), [sym_int] = ACTIONS(2812), [sym_uint] = ACTIONS(2812), [sym_long] = ACTIONS(2812), [sym_ulong] = ACTIONS(2812), [sym_cent] = ACTIONS(2812), [sym_ucent] = ACTIONS(2812), [sym_wchar] = ACTIONS(2812), [sym_dchar] = ACTIONS(2812), [sym_float] = ACTIONS(2812), [sym_double] = ACTIONS(2812), [sym_real] = ACTIONS(2812), [sym_ifloat] = ACTIONS(2812), [sym_idouble] = ACTIONS(2812), [sym_ireal] = ACTIONS(2812), [sym_cfloat] = ACTIONS(2812), [sym_cdouble] = ACTIONS(2812), [sym_creal] = ACTIONS(2812), [sym_size_t] = ACTIONS(2812), [sym_ptrdiff_t] = ACTIONS(2812), [sym_string] = ACTIONS(2812), [sym_cstring] = ACTIONS(2812), [sym_dstring] = ACTIONS(2812), [sym_wstring] = ACTIONS(2812), [sym_noreturn] = ACTIONS(2812), [sym_this] = ACTIONS(2812), [sym_abstract] = ACTIONS(2812), [sym_alias] = ACTIONS(2812), [sym_align] = ACTIONS(2812), [sym_auto] = ACTIONS(2812), [sym_class] = ACTIONS(2812), [sym_const] = ACTIONS(2812), [sym_debug] = ACTIONS(2812), [sym_deprecated] = ACTIONS(2812), [sym_else] = ACTIONS(2812), [sym_enum] = ACTIONS(2812), [sym_export] = ACTIONS(2812), [sym_extern] = ACTIONS(2812), [sym_final] = ACTIONS(2812), [sym_immutable] = ACTIONS(2812), [sym_import] = ACTIONS(2812), [sym_inout] = ACTIONS(2812), [sym_interface] = ACTIONS(2812), [sym_invariant] = ACTIONS(2812), [sym_mixin] = ACTIONS(2812), [sym_nothrow] = ACTIONS(2812), [sym_override] = ACTIONS(2812), [sym_package] = ACTIONS(2812), [sym_pragma] = ACTIONS(2812), [sym_private] = ACTIONS(2812), [sym_protected] = ACTIONS(2812), [sym_public] = ACTIONS(2812), [sym_pure] = ACTIONS(2812), [sym_ref] = ACTIONS(2812), [sym_return] = ACTIONS(2812), [sym_scope] = ACTIONS(2812), [sym_shared] = ACTIONS(2812), [sym_static] = ACTIONS(2812), [sym_struct] = ACTIONS(2812), [sym_synchronized] = ACTIONS(2812), [sym_template] = ACTIONS(2812), [sym_typeof] = ACTIONS(2812), [sym_union] = ACTIONS(2812), [sym_unittest] = ACTIONS(2812), [sym_version] = ACTIONS(2812), [sym_while] = ACTIONS(2812), [sym_gshared] = ACTIONS(2812), [sym_traits] = ACTIONS(2812), [sym_vector] = ACTIONS(2812), [sym_void] = ACTIONS(2812), [sym_directive] = ACTIONS(3), }, [2823] = { [sym_identifier] = ACTIONS(4936), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4938), [anon_sym_DOT] = ACTIONS(4938), [anon_sym_SEMI] = ACTIONS(4938), [anon_sym_TILDE] = ACTIONS(4938), [anon_sym_AT] = ACTIONS(4938), [sym_bool] = ACTIONS(4936), [sym_byte] = ACTIONS(4936), [sym_ubyte] = ACTIONS(4936), [sym_char] = ACTIONS(4936), [sym_short] = ACTIONS(4936), [sym_ushort] = ACTIONS(4936), [sym_int] = ACTIONS(4936), [sym_uint] = ACTIONS(4936), [sym_long] = ACTIONS(4936), [sym_ulong] = ACTIONS(4936), [sym_cent] = ACTIONS(4936), [sym_ucent] = ACTIONS(4936), [sym_wchar] = ACTIONS(4936), [sym_dchar] = ACTIONS(4936), [sym_float] = ACTIONS(4936), [sym_double] = ACTIONS(4936), [sym_real] = ACTIONS(4936), [sym_ifloat] = ACTIONS(4936), [sym_idouble] = ACTIONS(4936), [sym_ireal] = ACTIONS(4936), [sym_cfloat] = ACTIONS(4936), [sym_cdouble] = ACTIONS(4936), [sym_creal] = ACTIONS(4936), [sym_size_t] = ACTIONS(4936), [sym_ptrdiff_t] = ACTIONS(4936), [sym_string] = ACTIONS(4936), [sym_cstring] = ACTIONS(4936), [sym_dstring] = ACTIONS(4936), [sym_wstring] = ACTIONS(4936), [sym_noreturn] = ACTIONS(4936), [sym_this] = ACTIONS(4936), [sym_abstract] = ACTIONS(4936), [sym_alias] = ACTIONS(4936), [sym_align] = ACTIONS(4936), [sym_auto] = ACTIONS(4936), [sym_class] = ACTIONS(4936), [sym_const] = ACTIONS(4936), [sym_debug] = ACTIONS(4936), [sym_deprecated] = ACTIONS(4936), [sym_else] = ACTIONS(4936), [sym_enum] = ACTIONS(4936), [sym_export] = ACTIONS(4936), [sym_extern] = ACTIONS(4936), [sym_final] = ACTIONS(4936), [sym_immutable] = ACTIONS(4936), [sym_import] = ACTIONS(4936), [sym_inout] = ACTIONS(4936), [sym_interface] = ACTIONS(4936), [sym_invariant] = ACTIONS(4936), [sym_mixin] = ACTIONS(4936), [sym_nothrow] = ACTIONS(4936), [sym_override] = ACTIONS(4936), [sym_package] = ACTIONS(4936), [sym_pragma] = ACTIONS(4936), [sym_private] = ACTIONS(4936), [sym_protected] = ACTIONS(4936), [sym_public] = ACTIONS(4936), [sym_pure] = ACTIONS(4936), [sym_ref] = ACTIONS(4936), [sym_return] = ACTIONS(4936), [sym_scope] = ACTIONS(4936), [sym_shared] = ACTIONS(4936), [sym_static] = ACTIONS(4936), [sym_struct] = ACTIONS(4936), [sym_synchronized] = ACTIONS(4936), [sym_template] = ACTIONS(4936), [sym_typeof] = ACTIONS(4936), [sym_union] = ACTIONS(4936), [sym_unittest] = ACTIONS(4936), [sym_version] = ACTIONS(4936), [sym_while] = ACTIONS(4936), [sym_gshared] = ACTIONS(4936), [sym_traits] = ACTIONS(4936), [sym_vector] = ACTIONS(4936), [sym_void] = ACTIONS(4936), [sym_directive] = ACTIONS(3), }, [2824] = { [sym_identifier] = ACTIONS(4888), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4890), [anon_sym_DOT] = ACTIONS(4890), [anon_sym_SEMI] = ACTIONS(4890), [anon_sym_TILDE] = ACTIONS(4890), [anon_sym_AT] = ACTIONS(4890), [sym_bool] = ACTIONS(4888), [sym_byte] = ACTIONS(4888), [sym_ubyte] = ACTIONS(4888), [sym_char] = ACTIONS(4888), [sym_short] = ACTIONS(4888), [sym_ushort] = ACTIONS(4888), [sym_int] = ACTIONS(4888), [sym_uint] = ACTIONS(4888), [sym_long] = ACTIONS(4888), [sym_ulong] = ACTIONS(4888), [sym_cent] = ACTIONS(4888), [sym_ucent] = ACTIONS(4888), [sym_wchar] = ACTIONS(4888), [sym_dchar] = ACTIONS(4888), [sym_float] = ACTIONS(4888), [sym_double] = ACTIONS(4888), [sym_real] = ACTIONS(4888), [sym_ifloat] = ACTIONS(4888), [sym_idouble] = ACTIONS(4888), [sym_ireal] = ACTIONS(4888), [sym_cfloat] = ACTIONS(4888), [sym_cdouble] = ACTIONS(4888), [sym_creal] = ACTIONS(4888), [sym_size_t] = ACTIONS(4888), [sym_ptrdiff_t] = ACTIONS(4888), [sym_string] = ACTIONS(4888), [sym_cstring] = ACTIONS(4888), [sym_dstring] = ACTIONS(4888), [sym_wstring] = ACTIONS(4888), [sym_noreturn] = ACTIONS(4888), [sym_this] = ACTIONS(4888), [sym_abstract] = ACTIONS(4888), [sym_alias] = ACTIONS(4888), [sym_align] = ACTIONS(4888), [sym_auto] = ACTIONS(4888), [sym_class] = ACTIONS(4888), [sym_const] = ACTIONS(4888), [sym_debug] = ACTIONS(4888), [sym_deprecated] = ACTIONS(4888), [sym_else] = ACTIONS(4888), [sym_enum] = ACTIONS(4888), [sym_export] = ACTIONS(4888), [sym_extern] = ACTIONS(4888), [sym_final] = ACTIONS(4888), [sym_immutable] = ACTIONS(4888), [sym_import] = ACTIONS(4888), [sym_inout] = ACTIONS(4888), [sym_interface] = ACTIONS(4888), [sym_invariant] = ACTIONS(4888), [sym_mixin] = ACTIONS(4888), [sym_nothrow] = ACTIONS(4888), [sym_override] = ACTIONS(4888), [sym_package] = ACTIONS(4888), [sym_pragma] = ACTIONS(4888), [sym_private] = ACTIONS(4888), [sym_protected] = ACTIONS(4888), [sym_public] = ACTIONS(4888), [sym_pure] = ACTIONS(4888), [sym_ref] = ACTIONS(4888), [sym_return] = ACTIONS(4888), [sym_scope] = ACTIONS(4888), [sym_shared] = ACTIONS(4888), [sym_static] = ACTIONS(4888), [sym_struct] = ACTIONS(4888), [sym_synchronized] = ACTIONS(4888), [sym_template] = ACTIONS(4888), [sym_typeof] = ACTIONS(4888), [sym_union] = ACTIONS(4888), [sym_unittest] = ACTIONS(4888), [sym_version] = ACTIONS(4888), [sym_while] = ACTIONS(4888), [sym_gshared] = ACTIONS(4888), [sym_traits] = ACTIONS(4888), [sym_vector] = ACTIONS(4888), [sym_void] = ACTIONS(4888), [sym_directive] = ACTIONS(3), }, [2825] = { [sym_identifier] = ACTIONS(4896), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4898), [anon_sym_DOT] = ACTIONS(4898), [anon_sym_SEMI] = ACTIONS(4898), [anon_sym_TILDE] = ACTIONS(4898), [anon_sym_AT] = ACTIONS(4898), [sym_bool] = ACTIONS(4896), [sym_byte] = ACTIONS(4896), [sym_ubyte] = ACTIONS(4896), [sym_char] = ACTIONS(4896), [sym_short] = ACTIONS(4896), [sym_ushort] = ACTIONS(4896), [sym_int] = ACTIONS(4896), [sym_uint] = ACTIONS(4896), [sym_long] = ACTIONS(4896), [sym_ulong] = ACTIONS(4896), [sym_cent] = ACTIONS(4896), [sym_ucent] = ACTIONS(4896), [sym_wchar] = ACTIONS(4896), [sym_dchar] = ACTIONS(4896), [sym_float] = ACTIONS(4896), [sym_double] = ACTIONS(4896), [sym_real] = ACTIONS(4896), [sym_ifloat] = ACTIONS(4896), [sym_idouble] = ACTIONS(4896), [sym_ireal] = ACTIONS(4896), [sym_cfloat] = ACTIONS(4896), [sym_cdouble] = ACTIONS(4896), [sym_creal] = ACTIONS(4896), [sym_size_t] = ACTIONS(4896), [sym_ptrdiff_t] = ACTIONS(4896), [sym_string] = ACTIONS(4896), [sym_cstring] = ACTIONS(4896), [sym_dstring] = ACTIONS(4896), [sym_wstring] = ACTIONS(4896), [sym_noreturn] = ACTIONS(4896), [sym_this] = ACTIONS(4896), [sym_abstract] = ACTIONS(4896), [sym_alias] = ACTIONS(4896), [sym_align] = ACTIONS(4896), [sym_auto] = ACTIONS(4896), [sym_class] = ACTIONS(4896), [sym_const] = ACTIONS(4896), [sym_debug] = ACTIONS(4896), [sym_deprecated] = ACTIONS(4896), [sym_else] = ACTIONS(4896), [sym_enum] = ACTIONS(4896), [sym_export] = ACTIONS(4896), [sym_extern] = ACTIONS(4896), [sym_final] = ACTIONS(4896), [sym_immutable] = ACTIONS(4896), [sym_import] = ACTIONS(4896), [sym_inout] = ACTIONS(4896), [sym_interface] = ACTIONS(4896), [sym_invariant] = ACTIONS(4896), [sym_mixin] = ACTIONS(4896), [sym_nothrow] = ACTIONS(4896), [sym_override] = ACTIONS(4896), [sym_package] = ACTIONS(4896), [sym_pragma] = ACTIONS(4896), [sym_private] = ACTIONS(4896), [sym_protected] = ACTIONS(4896), [sym_public] = ACTIONS(4896), [sym_pure] = ACTIONS(4896), [sym_ref] = ACTIONS(4896), [sym_return] = ACTIONS(4896), [sym_scope] = ACTIONS(4896), [sym_shared] = ACTIONS(4896), [sym_static] = ACTIONS(4896), [sym_struct] = ACTIONS(4896), [sym_synchronized] = ACTIONS(4896), [sym_template] = ACTIONS(4896), [sym_typeof] = ACTIONS(4896), [sym_union] = ACTIONS(4896), [sym_unittest] = ACTIONS(4896), [sym_version] = ACTIONS(4896), [sym_while] = ACTIONS(4896), [sym_gshared] = ACTIONS(4896), [sym_traits] = ACTIONS(4896), [sym_vector] = ACTIONS(4896), [sym_void] = ACTIONS(4896), [sym_directive] = ACTIONS(3), }, [2826] = { [sym_identifier] = ACTIONS(4900), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4902), [anon_sym_DOT] = ACTIONS(4902), [anon_sym_SEMI] = ACTIONS(4902), [anon_sym_TILDE] = ACTIONS(4902), [anon_sym_AT] = ACTIONS(4902), [sym_bool] = ACTIONS(4900), [sym_byte] = ACTIONS(4900), [sym_ubyte] = ACTIONS(4900), [sym_char] = ACTIONS(4900), [sym_short] = ACTIONS(4900), [sym_ushort] = ACTIONS(4900), [sym_int] = ACTIONS(4900), [sym_uint] = ACTIONS(4900), [sym_long] = ACTIONS(4900), [sym_ulong] = ACTIONS(4900), [sym_cent] = ACTIONS(4900), [sym_ucent] = ACTIONS(4900), [sym_wchar] = ACTIONS(4900), [sym_dchar] = ACTIONS(4900), [sym_float] = ACTIONS(4900), [sym_double] = ACTIONS(4900), [sym_real] = ACTIONS(4900), [sym_ifloat] = ACTIONS(4900), [sym_idouble] = ACTIONS(4900), [sym_ireal] = ACTIONS(4900), [sym_cfloat] = ACTIONS(4900), [sym_cdouble] = ACTIONS(4900), [sym_creal] = ACTIONS(4900), [sym_size_t] = ACTIONS(4900), [sym_ptrdiff_t] = ACTIONS(4900), [sym_string] = ACTIONS(4900), [sym_cstring] = ACTIONS(4900), [sym_dstring] = ACTIONS(4900), [sym_wstring] = ACTIONS(4900), [sym_noreturn] = ACTIONS(4900), [sym_this] = ACTIONS(4900), [sym_abstract] = ACTIONS(4900), [sym_alias] = ACTIONS(4900), [sym_align] = ACTIONS(4900), [sym_auto] = ACTIONS(4900), [sym_class] = ACTIONS(4900), [sym_const] = ACTIONS(4900), [sym_debug] = ACTIONS(4900), [sym_deprecated] = ACTIONS(4900), [sym_else] = ACTIONS(4900), [sym_enum] = ACTIONS(4900), [sym_export] = ACTIONS(4900), [sym_extern] = ACTIONS(4900), [sym_final] = ACTIONS(4900), [sym_immutable] = ACTIONS(4900), [sym_import] = ACTIONS(4900), [sym_inout] = ACTIONS(4900), [sym_interface] = ACTIONS(4900), [sym_invariant] = ACTIONS(4900), [sym_mixin] = ACTIONS(4900), [sym_nothrow] = ACTIONS(4900), [sym_override] = ACTIONS(4900), [sym_package] = ACTIONS(4900), [sym_pragma] = ACTIONS(4900), [sym_private] = ACTIONS(4900), [sym_protected] = ACTIONS(4900), [sym_public] = ACTIONS(4900), [sym_pure] = ACTIONS(4900), [sym_ref] = ACTIONS(4900), [sym_return] = ACTIONS(4900), [sym_scope] = ACTIONS(4900), [sym_shared] = ACTIONS(4900), [sym_static] = ACTIONS(4900), [sym_struct] = ACTIONS(4900), [sym_synchronized] = ACTIONS(4900), [sym_template] = ACTIONS(4900), [sym_typeof] = ACTIONS(4900), [sym_union] = ACTIONS(4900), [sym_unittest] = ACTIONS(4900), [sym_version] = ACTIONS(4900), [sym_while] = ACTIONS(4900), [sym_gshared] = ACTIONS(4900), [sym_traits] = ACTIONS(4900), [sym_vector] = ACTIONS(4900), [sym_void] = ACTIONS(4900), [sym_directive] = ACTIONS(3), }, [2827] = { [sym_identifier] = ACTIONS(4904), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4906), [anon_sym_DOT] = ACTIONS(4906), [anon_sym_SEMI] = ACTIONS(4906), [anon_sym_TILDE] = ACTIONS(4906), [anon_sym_AT] = ACTIONS(4906), [sym_bool] = ACTIONS(4904), [sym_byte] = ACTIONS(4904), [sym_ubyte] = ACTIONS(4904), [sym_char] = ACTIONS(4904), [sym_short] = ACTIONS(4904), [sym_ushort] = ACTIONS(4904), [sym_int] = ACTIONS(4904), [sym_uint] = ACTIONS(4904), [sym_long] = ACTIONS(4904), [sym_ulong] = ACTIONS(4904), [sym_cent] = ACTIONS(4904), [sym_ucent] = ACTIONS(4904), [sym_wchar] = ACTIONS(4904), [sym_dchar] = ACTIONS(4904), [sym_float] = ACTIONS(4904), [sym_double] = ACTIONS(4904), [sym_real] = ACTIONS(4904), [sym_ifloat] = ACTIONS(4904), [sym_idouble] = ACTIONS(4904), [sym_ireal] = ACTIONS(4904), [sym_cfloat] = ACTIONS(4904), [sym_cdouble] = ACTIONS(4904), [sym_creal] = ACTIONS(4904), [sym_size_t] = ACTIONS(4904), [sym_ptrdiff_t] = ACTIONS(4904), [sym_string] = ACTIONS(4904), [sym_cstring] = ACTIONS(4904), [sym_dstring] = ACTIONS(4904), [sym_wstring] = ACTIONS(4904), [sym_noreturn] = ACTIONS(4904), [sym_this] = ACTIONS(4904), [sym_abstract] = ACTIONS(4904), [sym_alias] = ACTIONS(4904), [sym_align] = ACTIONS(4904), [sym_auto] = ACTIONS(4904), [sym_class] = ACTIONS(4904), [sym_const] = ACTIONS(4904), [sym_debug] = ACTIONS(4904), [sym_deprecated] = ACTIONS(4904), [sym_else] = ACTIONS(4904), [sym_enum] = ACTIONS(4904), [sym_export] = ACTIONS(4904), [sym_extern] = ACTIONS(4904), [sym_final] = ACTIONS(4904), [sym_immutable] = ACTIONS(4904), [sym_import] = ACTIONS(4904), [sym_inout] = ACTIONS(4904), [sym_interface] = ACTIONS(4904), [sym_invariant] = ACTIONS(4904), [sym_mixin] = ACTIONS(4904), [sym_nothrow] = ACTIONS(4904), [sym_override] = ACTIONS(4904), [sym_package] = ACTIONS(4904), [sym_pragma] = ACTIONS(4904), [sym_private] = ACTIONS(4904), [sym_protected] = ACTIONS(4904), [sym_public] = ACTIONS(4904), [sym_pure] = ACTIONS(4904), [sym_ref] = ACTIONS(4904), [sym_return] = ACTIONS(4904), [sym_scope] = ACTIONS(4904), [sym_shared] = ACTIONS(4904), [sym_static] = ACTIONS(4904), [sym_struct] = ACTIONS(4904), [sym_synchronized] = ACTIONS(4904), [sym_template] = ACTIONS(4904), [sym_typeof] = ACTIONS(4904), [sym_union] = ACTIONS(4904), [sym_unittest] = ACTIONS(4904), [sym_version] = ACTIONS(4904), [sym_while] = ACTIONS(4904), [sym_gshared] = ACTIONS(4904), [sym_traits] = ACTIONS(4904), [sym_vector] = ACTIONS(4904), [sym_void] = ACTIONS(4904), [sym_directive] = ACTIONS(3), }, [2828] = { [sym_identifier] = ACTIONS(4932), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4934), [anon_sym_DOT] = ACTIONS(4934), [anon_sym_SEMI] = ACTIONS(4934), [anon_sym_TILDE] = ACTIONS(4934), [anon_sym_AT] = ACTIONS(4934), [sym_bool] = ACTIONS(4932), [sym_byte] = ACTIONS(4932), [sym_ubyte] = ACTIONS(4932), [sym_char] = ACTIONS(4932), [sym_short] = ACTIONS(4932), [sym_ushort] = ACTIONS(4932), [sym_int] = ACTIONS(4932), [sym_uint] = ACTIONS(4932), [sym_long] = ACTIONS(4932), [sym_ulong] = ACTIONS(4932), [sym_cent] = ACTIONS(4932), [sym_ucent] = ACTIONS(4932), [sym_wchar] = ACTIONS(4932), [sym_dchar] = ACTIONS(4932), [sym_float] = ACTIONS(4932), [sym_double] = ACTIONS(4932), [sym_real] = ACTIONS(4932), [sym_ifloat] = ACTIONS(4932), [sym_idouble] = ACTIONS(4932), [sym_ireal] = ACTIONS(4932), [sym_cfloat] = ACTIONS(4932), [sym_cdouble] = ACTIONS(4932), [sym_creal] = ACTIONS(4932), [sym_size_t] = ACTIONS(4932), [sym_ptrdiff_t] = ACTIONS(4932), [sym_string] = ACTIONS(4932), [sym_cstring] = ACTIONS(4932), [sym_dstring] = ACTIONS(4932), [sym_wstring] = ACTIONS(4932), [sym_noreturn] = ACTIONS(4932), [sym_this] = ACTIONS(4932), [sym_abstract] = ACTIONS(4932), [sym_alias] = ACTIONS(4932), [sym_align] = ACTIONS(4932), [sym_auto] = ACTIONS(4932), [sym_class] = ACTIONS(4932), [sym_const] = ACTIONS(4932), [sym_debug] = ACTIONS(4932), [sym_deprecated] = ACTIONS(4932), [sym_else] = ACTIONS(4932), [sym_enum] = ACTIONS(4932), [sym_export] = ACTIONS(4932), [sym_extern] = ACTIONS(4932), [sym_final] = ACTIONS(4932), [sym_immutable] = ACTIONS(4932), [sym_import] = ACTIONS(4932), [sym_inout] = ACTIONS(4932), [sym_interface] = ACTIONS(4932), [sym_invariant] = ACTIONS(4932), [sym_mixin] = ACTIONS(4932), [sym_nothrow] = ACTIONS(4932), [sym_override] = ACTIONS(4932), [sym_package] = ACTIONS(4932), [sym_pragma] = ACTIONS(4932), [sym_private] = ACTIONS(4932), [sym_protected] = ACTIONS(4932), [sym_public] = ACTIONS(4932), [sym_pure] = ACTIONS(4932), [sym_ref] = ACTIONS(4932), [sym_return] = ACTIONS(4932), [sym_scope] = ACTIONS(4932), [sym_shared] = ACTIONS(4932), [sym_static] = ACTIONS(4932), [sym_struct] = ACTIONS(4932), [sym_synchronized] = ACTIONS(4932), [sym_template] = ACTIONS(4932), [sym_typeof] = ACTIONS(4932), [sym_union] = ACTIONS(4932), [sym_unittest] = ACTIONS(4932), [sym_version] = ACTIONS(4932), [sym_while] = ACTIONS(4932), [sym_gshared] = ACTIONS(4932), [sym_traits] = ACTIONS(4932), [sym_vector] = ACTIONS(4932), [sym_void] = ACTIONS(4932), [sym_directive] = ACTIONS(3), }, [2829] = { [sym_identifier] = ACTIONS(2784), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2782), [anon_sym_DOT] = ACTIONS(2782), [anon_sym_SEMI] = ACTIONS(2782), [anon_sym_TILDE] = ACTIONS(2782), [anon_sym_AT] = ACTIONS(2782), [sym_bool] = ACTIONS(2784), [sym_byte] = ACTIONS(2784), [sym_ubyte] = ACTIONS(2784), [sym_char] = ACTIONS(2784), [sym_short] = ACTIONS(2784), [sym_ushort] = ACTIONS(2784), [sym_int] = ACTIONS(2784), [sym_uint] = ACTIONS(2784), [sym_long] = ACTIONS(2784), [sym_ulong] = ACTIONS(2784), [sym_cent] = ACTIONS(2784), [sym_ucent] = ACTIONS(2784), [sym_wchar] = ACTIONS(2784), [sym_dchar] = ACTIONS(2784), [sym_float] = ACTIONS(2784), [sym_double] = ACTIONS(2784), [sym_real] = ACTIONS(2784), [sym_ifloat] = ACTIONS(2784), [sym_idouble] = ACTIONS(2784), [sym_ireal] = ACTIONS(2784), [sym_cfloat] = ACTIONS(2784), [sym_cdouble] = ACTIONS(2784), [sym_creal] = ACTIONS(2784), [sym_size_t] = ACTIONS(2784), [sym_ptrdiff_t] = ACTIONS(2784), [sym_string] = ACTIONS(2784), [sym_cstring] = ACTIONS(2784), [sym_dstring] = ACTIONS(2784), [sym_wstring] = ACTIONS(2784), [sym_noreturn] = ACTIONS(2784), [sym_this] = ACTIONS(2784), [sym_abstract] = ACTIONS(2784), [sym_alias] = ACTIONS(2784), [sym_align] = ACTIONS(2784), [sym_auto] = ACTIONS(2784), [sym_class] = ACTIONS(2784), [sym_const] = ACTIONS(2784), [sym_debug] = ACTIONS(2784), [sym_deprecated] = ACTIONS(2784), [sym_else] = ACTIONS(6817), [sym_enum] = ACTIONS(2784), [sym_export] = ACTIONS(2784), [sym_extern] = ACTIONS(2784), [sym_final] = ACTIONS(2784), [sym_immutable] = ACTIONS(2784), [sym_import] = ACTIONS(2784), [sym_inout] = ACTIONS(2784), [sym_interface] = ACTIONS(2784), [sym_invariant] = ACTIONS(2784), [sym_mixin] = ACTIONS(2784), [sym_nothrow] = ACTIONS(2784), [sym_override] = ACTIONS(2784), [sym_package] = ACTIONS(2784), [sym_pragma] = ACTIONS(2784), [sym_private] = ACTIONS(2784), [sym_protected] = ACTIONS(2784), [sym_public] = ACTIONS(2784), [sym_pure] = ACTIONS(2784), [sym_ref] = ACTIONS(2784), [sym_return] = ACTIONS(2784), [sym_scope] = ACTIONS(2784), [sym_shared] = ACTIONS(2784), [sym_static] = ACTIONS(2784), [sym_struct] = ACTIONS(2784), [sym_synchronized] = ACTIONS(2784), [sym_template] = ACTIONS(2784), [sym_typeof] = ACTIONS(2784), [sym_union] = ACTIONS(2784), [sym_unittest] = ACTIONS(2784), [sym_version] = ACTIONS(2784), [sym_while] = ACTIONS(2784), [sym_gshared] = ACTIONS(2784), [sym_traits] = ACTIONS(2784), [sym_vector] = ACTIONS(2784), [sym_void] = ACTIONS(2784), [sym_directive] = ACTIONS(3), }, [2830] = { [sym_identifier] = ACTIONS(4912), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4914), [anon_sym_DOT] = ACTIONS(4914), [anon_sym_SEMI] = ACTIONS(4914), [anon_sym_TILDE] = ACTIONS(4914), [anon_sym_AT] = ACTIONS(4914), [sym_bool] = ACTIONS(4912), [sym_byte] = ACTIONS(4912), [sym_ubyte] = ACTIONS(4912), [sym_char] = ACTIONS(4912), [sym_short] = ACTIONS(4912), [sym_ushort] = ACTIONS(4912), [sym_int] = ACTIONS(4912), [sym_uint] = ACTIONS(4912), [sym_long] = ACTIONS(4912), [sym_ulong] = ACTIONS(4912), [sym_cent] = ACTIONS(4912), [sym_ucent] = ACTIONS(4912), [sym_wchar] = ACTIONS(4912), [sym_dchar] = ACTIONS(4912), [sym_float] = ACTIONS(4912), [sym_double] = ACTIONS(4912), [sym_real] = ACTIONS(4912), [sym_ifloat] = ACTIONS(4912), [sym_idouble] = ACTIONS(4912), [sym_ireal] = ACTIONS(4912), [sym_cfloat] = ACTIONS(4912), [sym_cdouble] = ACTIONS(4912), [sym_creal] = ACTIONS(4912), [sym_size_t] = ACTIONS(4912), [sym_ptrdiff_t] = ACTIONS(4912), [sym_string] = ACTIONS(4912), [sym_cstring] = ACTIONS(4912), [sym_dstring] = ACTIONS(4912), [sym_wstring] = ACTIONS(4912), [sym_noreturn] = ACTIONS(4912), [sym_this] = ACTIONS(4912), [sym_abstract] = ACTIONS(4912), [sym_alias] = ACTIONS(4912), [sym_align] = ACTIONS(4912), [sym_auto] = ACTIONS(4912), [sym_class] = ACTIONS(4912), [sym_const] = ACTIONS(4912), [sym_debug] = ACTIONS(4912), [sym_deprecated] = ACTIONS(4912), [sym_else] = ACTIONS(4912), [sym_enum] = ACTIONS(4912), [sym_export] = ACTIONS(4912), [sym_extern] = ACTIONS(4912), [sym_final] = ACTIONS(4912), [sym_immutable] = ACTIONS(4912), [sym_import] = ACTIONS(4912), [sym_inout] = ACTIONS(4912), [sym_interface] = ACTIONS(4912), [sym_invariant] = ACTIONS(4912), [sym_mixin] = ACTIONS(4912), [sym_nothrow] = ACTIONS(4912), [sym_override] = ACTIONS(4912), [sym_package] = ACTIONS(4912), [sym_pragma] = ACTIONS(4912), [sym_private] = ACTIONS(4912), [sym_protected] = ACTIONS(4912), [sym_public] = ACTIONS(4912), [sym_pure] = ACTIONS(4912), [sym_ref] = ACTIONS(4912), [sym_return] = ACTIONS(4912), [sym_scope] = ACTIONS(4912), [sym_shared] = ACTIONS(4912), [sym_static] = ACTIONS(4912), [sym_struct] = ACTIONS(4912), [sym_synchronized] = ACTIONS(4912), [sym_template] = ACTIONS(4912), [sym_typeof] = ACTIONS(4912), [sym_union] = ACTIONS(4912), [sym_unittest] = ACTIONS(4912), [sym_version] = ACTIONS(4912), [sym_while] = ACTIONS(4912), [sym_gshared] = ACTIONS(4912), [sym_traits] = ACTIONS(4912), [sym_vector] = ACTIONS(4912), [sym_void] = ACTIONS(4912), [sym_directive] = ACTIONS(3), }, [2831] = { [sym_identifier] = ACTIONS(4918), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4920), [anon_sym_DOT] = ACTIONS(4920), [anon_sym_SEMI] = ACTIONS(4920), [anon_sym_TILDE] = ACTIONS(4920), [anon_sym_AT] = ACTIONS(4920), [sym_bool] = ACTIONS(4918), [sym_byte] = ACTIONS(4918), [sym_ubyte] = ACTIONS(4918), [sym_char] = ACTIONS(4918), [sym_short] = ACTIONS(4918), [sym_ushort] = ACTIONS(4918), [sym_int] = ACTIONS(4918), [sym_uint] = ACTIONS(4918), [sym_long] = ACTIONS(4918), [sym_ulong] = ACTIONS(4918), [sym_cent] = ACTIONS(4918), [sym_ucent] = ACTIONS(4918), [sym_wchar] = ACTIONS(4918), [sym_dchar] = ACTIONS(4918), [sym_float] = ACTIONS(4918), [sym_double] = ACTIONS(4918), [sym_real] = ACTIONS(4918), [sym_ifloat] = ACTIONS(4918), [sym_idouble] = ACTIONS(4918), [sym_ireal] = ACTIONS(4918), [sym_cfloat] = ACTIONS(4918), [sym_cdouble] = ACTIONS(4918), [sym_creal] = ACTIONS(4918), [sym_size_t] = ACTIONS(4918), [sym_ptrdiff_t] = ACTIONS(4918), [sym_string] = ACTIONS(4918), [sym_cstring] = ACTIONS(4918), [sym_dstring] = ACTIONS(4918), [sym_wstring] = ACTIONS(4918), [sym_noreturn] = ACTIONS(4918), [sym_this] = ACTIONS(4918), [sym_abstract] = ACTIONS(4918), [sym_alias] = ACTIONS(4918), [sym_align] = ACTIONS(4918), [sym_auto] = ACTIONS(4918), [sym_class] = ACTIONS(4918), [sym_const] = ACTIONS(4918), [sym_debug] = ACTIONS(4918), [sym_deprecated] = ACTIONS(4918), [sym_else] = ACTIONS(4918), [sym_enum] = ACTIONS(4918), [sym_export] = ACTIONS(4918), [sym_extern] = ACTIONS(4918), [sym_final] = ACTIONS(4918), [sym_immutable] = ACTIONS(4918), [sym_import] = ACTIONS(4918), [sym_inout] = ACTIONS(4918), [sym_interface] = ACTIONS(4918), [sym_invariant] = ACTIONS(4918), [sym_mixin] = ACTIONS(4918), [sym_nothrow] = ACTIONS(4918), [sym_override] = ACTIONS(4918), [sym_package] = ACTIONS(4918), [sym_pragma] = ACTIONS(4918), [sym_private] = ACTIONS(4918), [sym_protected] = ACTIONS(4918), [sym_public] = ACTIONS(4918), [sym_pure] = ACTIONS(4918), [sym_ref] = ACTIONS(4918), [sym_return] = ACTIONS(4918), [sym_scope] = ACTIONS(4918), [sym_shared] = ACTIONS(4918), [sym_static] = ACTIONS(4918), [sym_struct] = ACTIONS(4918), [sym_synchronized] = ACTIONS(4918), [sym_template] = ACTIONS(4918), [sym_typeof] = ACTIONS(4918), [sym_union] = ACTIONS(4918), [sym_unittest] = ACTIONS(4918), [sym_version] = ACTIONS(4918), [sym_while] = ACTIONS(4918), [sym_gshared] = ACTIONS(4918), [sym_traits] = ACTIONS(4918), [sym_vector] = ACTIONS(4918), [sym_void] = ACTIONS(4918), [sym_directive] = ACTIONS(3), }, [2832] = { [sym_switch_statement] = STATE(1387), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(986), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2833] = { [sym_identifier] = ACTIONS(4606), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4608), [anon_sym_DOT] = ACTIONS(4608), [anon_sym_SEMI] = ACTIONS(4608), [anon_sym_TILDE] = ACTIONS(4608), [anon_sym_AT] = ACTIONS(4608), [sym_bool] = ACTIONS(4606), [sym_byte] = ACTIONS(4606), [sym_ubyte] = ACTIONS(4606), [sym_char] = ACTIONS(4606), [sym_short] = ACTIONS(4606), [sym_ushort] = ACTIONS(4606), [sym_int] = ACTIONS(4606), [sym_uint] = ACTIONS(4606), [sym_long] = ACTIONS(4606), [sym_ulong] = ACTIONS(4606), [sym_cent] = ACTIONS(4606), [sym_ucent] = ACTIONS(4606), [sym_wchar] = ACTIONS(4606), [sym_dchar] = ACTIONS(4606), [sym_float] = ACTIONS(4606), [sym_double] = ACTIONS(4606), [sym_real] = ACTIONS(4606), [sym_ifloat] = ACTIONS(4606), [sym_idouble] = ACTIONS(4606), [sym_ireal] = ACTIONS(4606), [sym_cfloat] = ACTIONS(4606), [sym_cdouble] = ACTIONS(4606), [sym_creal] = ACTIONS(4606), [sym_size_t] = ACTIONS(4606), [sym_ptrdiff_t] = ACTIONS(4606), [sym_string] = ACTIONS(4606), [sym_cstring] = ACTIONS(4606), [sym_dstring] = ACTIONS(4606), [sym_wstring] = ACTIONS(4606), [sym_noreturn] = ACTIONS(4606), [sym_this] = ACTIONS(4606), [sym_abstract] = ACTIONS(4606), [sym_alias] = ACTIONS(4606), [sym_align] = ACTIONS(4606), [sym_auto] = ACTIONS(4606), [sym_class] = ACTIONS(4606), [sym_const] = ACTIONS(4606), [sym_debug] = ACTIONS(4606), [sym_deprecated] = ACTIONS(4606), [sym_else] = ACTIONS(4606), [sym_enum] = ACTIONS(4606), [sym_export] = ACTIONS(4606), [sym_extern] = ACTIONS(4606), [sym_final] = ACTIONS(4606), [sym_immutable] = ACTIONS(4606), [sym_import] = ACTIONS(4606), [sym_inout] = ACTIONS(4606), [sym_interface] = ACTIONS(4606), [sym_invariant] = ACTIONS(4606), [sym_mixin] = ACTIONS(4606), [sym_nothrow] = ACTIONS(4606), [sym_override] = ACTIONS(4606), [sym_package] = ACTIONS(4606), [sym_pragma] = ACTIONS(4606), [sym_private] = ACTIONS(4606), [sym_protected] = ACTIONS(4606), [sym_public] = ACTIONS(4606), [sym_pure] = ACTIONS(4606), [sym_ref] = ACTIONS(4606), [sym_return] = ACTIONS(4606), [sym_scope] = ACTIONS(4606), [sym_shared] = ACTIONS(4606), [sym_static] = ACTIONS(4606), [sym_struct] = ACTIONS(4606), [sym_synchronized] = ACTIONS(4606), [sym_template] = ACTIONS(4606), [sym_typeof] = ACTIONS(4606), [sym_union] = ACTIONS(4606), [sym_unittest] = ACTIONS(4606), [sym_version] = ACTIONS(4606), [sym_while] = ACTIONS(4606), [sym_gshared] = ACTIONS(4606), [sym_traits] = ACTIONS(4606), [sym_vector] = ACTIONS(4606), [sym_void] = ACTIONS(4606), [sym_directive] = ACTIONS(3), }, [2834] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_else] = ACTIONS(6819), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [sym_directive] = ACTIONS(3), }, [2835] = { [sym_identifier] = ACTIONS(4876), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4878), [anon_sym_DOT] = ACTIONS(4878), [anon_sym_SEMI] = ACTIONS(4878), [anon_sym_TILDE] = ACTIONS(4878), [anon_sym_AT] = ACTIONS(4878), [sym_bool] = ACTIONS(4876), [sym_byte] = ACTIONS(4876), [sym_ubyte] = ACTIONS(4876), [sym_char] = ACTIONS(4876), [sym_short] = ACTIONS(4876), [sym_ushort] = ACTIONS(4876), [sym_int] = ACTIONS(4876), [sym_uint] = ACTIONS(4876), [sym_long] = ACTIONS(4876), [sym_ulong] = ACTIONS(4876), [sym_cent] = ACTIONS(4876), [sym_ucent] = ACTIONS(4876), [sym_wchar] = ACTIONS(4876), [sym_dchar] = ACTIONS(4876), [sym_float] = ACTIONS(4876), [sym_double] = ACTIONS(4876), [sym_real] = ACTIONS(4876), [sym_ifloat] = ACTIONS(4876), [sym_idouble] = ACTIONS(4876), [sym_ireal] = ACTIONS(4876), [sym_cfloat] = ACTIONS(4876), [sym_cdouble] = ACTIONS(4876), [sym_creal] = ACTIONS(4876), [sym_size_t] = ACTIONS(4876), [sym_ptrdiff_t] = ACTIONS(4876), [sym_string] = ACTIONS(4876), [sym_cstring] = ACTIONS(4876), [sym_dstring] = ACTIONS(4876), [sym_wstring] = ACTIONS(4876), [sym_noreturn] = ACTIONS(4876), [sym_this] = ACTIONS(4876), [sym_abstract] = ACTIONS(4876), [sym_alias] = ACTIONS(4876), [sym_align] = ACTIONS(4876), [sym_auto] = ACTIONS(4876), [sym_class] = ACTIONS(4876), [sym_const] = ACTIONS(4876), [sym_debug] = ACTIONS(4876), [sym_deprecated] = ACTIONS(4876), [sym_else] = ACTIONS(4876), [sym_enum] = ACTIONS(4876), [sym_export] = ACTIONS(4876), [sym_extern] = ACTIONS(4876), [sym_final] = ACTIONS(4876), [sym_immutable] = ACTIONS(4876), [sym_import] = ACTIONS(4876), [sym_inout] = ACTIONS(4876), [sym_interface] = ACTIONS(4876), [sym_invariant] = ACTIONS(4876), [sym_mixin] = ACTIONS(4876), [sym_nothrow] = ACTIONS(4876), [sym_override] = ACTIONS(4876), [sym_package] = ACTIONS(4876), [sym_pragma] = ACTIONS(4876), [sym_private] = ACTIONS(4876), [sym_protected] = ACTIONS(4876), [sym_public] = ACTIONS(4876), [sym_pure] = ACTIONS(4876), [sym_ref] = ACTIONS(4876), [sym_return] = ACTIONS(4876), [sym_scope] = ACTIONS(4876), [sym_shared] = ACTIONS(4876), [sym_static] = ACTIONS(4876), [sym_struct] = ACTIONS(4876), [sym_synchronized] = ACTIONS(4876), [sym_template] = ACTIONS(4876), [sym_typeof] = ACTIONS(4876), [sym_union] = ACTIONS(4876), [sym_unittest] = ACTIONS(4876), [sym_version] = ACTIONS(4876), [sym_while] = ACTIONS(4876), [sym_gshared] = ACTIONS(4876), [sym_traits] = ACTIONS(4876), [sym_vector] = ACTIONS(4876), [sym_void] = ACTIONS(4876), [sym_directive] = ACTIONS(3), }, [2836] = { [sym_identifier] = ACTIONS(4978), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4980), [anon_sym_DOT] = ACTIONS(4980), [anon_sym_SEMI] = ACTIONS(4980), [anon_sym_TILDE] = ACTIONS(4980), [anon_sym_AT] = ACTIONS(4980), [sym_bool] = ACTIONS(4978), [sym_byte] = ACTIONS(4978), [sym_ubyte] = ACTIONS(4978), [sym_char] = ACTIONS(4978), [sym_short] = ACTIONS(4978), [sym_ushort] = ACTIONS(4978), [sym_int] = ACTIONS(4978), [sym_uint] = ACTIONS(4978), [sym_long] = ACTIONS(4978), [sym_ulong] = ACTIONS(4978), [sym_cent] = ACTIONS(4978), [sym_ucent] = ACTIONS(4978), [sym_wchar] = ACTIONS(4978), [sym_dchar] = ACTIONS(4978), [sym_float] = ACTIONS(4978), [sym_double] = ACTIONS(4978), [sym_real] = ACTIONS(4978), [sym_ifloat] = ACTIONS(4978), [sym_idouble] = ACTIONS(4978), [sym_ireal] = ACTIONS(4978), [sym_cfloat] = ACTIONS(4978), [sym_cdouble] = ACTIONS(4978), [sym_creal] = ACTIONS(4978), [sym_size_t] = ACTIONS(4978), [sym_ptrdiff_t] = ACTIONS(4978), [sym_string] = ACTIONS(4978), [sym_cstring] = ACTIONS(4978), [sym_dstring] = ACTIONS(4978), [sym_wstring] = ACTIONS(4978), [sym_noreturn] = ACTIONS(4978), [sym_this] = ACTIONS(4978), [sym_abstract] = ACTIONS(4978), [sym_alias] = ACTIONS(4978), [sym_align] = ACTIONS(4978), [sym_auto] = ACTIONS(4978), [sym_class] = ACTIONS(4978), [sym_const] = ACTIONS(4978), [sym_debug] = ACTIONS(4978), [sym_deprecated] = ACTIONS(4978), [sym_else] = ACTIONS(4978), [sym_enum] = ACTIONS(4978), [sym_export] = ACTIONS(4978), [sym_extern] = ACTIONS(4978), [sym_final] = ACTIONS(4978), [sym_immutable] = ACTIONS(4978), [sym_import] = ACTIONS(4978), [sym_inout] = ACTIONS(4978), [sym_interface] = ACTIONS(4978), [sym_invariant] = ACTIONS(4978), [sym_mixin] = ACTIONS(4978), [sym_nothrow] = ACTIONS(4978), [sym_override] = ACTIONS(4978), [sym_package] = ACTIONS(4978), [sym_pragma] = ACTIONS(4978), [sym_private] = ACTIONS(4978), [sym_protected] = ACTIONS(4978), [sym_public] = ACTIONS(4978), [sym_pure] = ACTIONS(4978), [sym_ref] = ACTIONS(4978), [sym_return] = ACTIONS(4978), [sym_scope] = ACTIONS(4978), [sym_shared] = ACTIONS(4978), [sym_static] = ACTIONS(4978), [sym_struct] = ACTIONS(4978), [sym_synchronized] = ACTIONS(4978), [sym_template] = ACTIONS(4978), [sym_typeof] = ACTIONS(4978), [sym_union] = ACTIONS(4978), [sym_unittest] = ACTIONS(4978), [sym_version] = ACTIONS(4978), [sym_while] = ACTIONS(4978), [sym_gshared] = ACTIONS(4978), [sym_traits] = ACTIONS(4978), [sym_vector] = ACTIONS(4978), [sym_void] = ACTIONS(4978), [sym_directive] = ACTIONS(3), }, [2837] = { [sym_identifier] = ACTIONS(4982), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4984), [anon_sym_DOT] = ACTIONS(4984), [anon_sym_SEMI] = ACTIONS(4984), [anon_sym_TILDE] = ACTIONS(4984), [anon_sym_AT] = ACTIONS(4984), [sym_bool] = ACTIONS(4982), [sym_byte] = ACTIONS(4982), [sym_ubyte] = ACTIONS(4982), [sym_char] = ACTIONS(4982), [sym_short] = ACTIONS(4982), [sym_ushort] = ACTIONS(4982), [sym_int] = ACTIONS(4982), [sym_uint] = ACTIONS(4982), [sym_long] = ACTIONS(4982), [sym_ulong] = ACTIONS(4982), [sym_cent] = ACTIONS(4982), [sym_ucent] = ACTIONS(4982), [sym_wchar] = ACTIONS(4982), [sym_dchar] = ACTIONS(4982), [sym_float] = ACTIONS(4982), [sym_double] = ACTIONS(4982), [sym_real] = ACTIONS(4982), [sym_ifloat] = ACTIONS(4982), [sym_idouble] = ACTIONS(4982), [sym_ireal] = ACTIONS(4982), [sym_cfloat] = ACTIONS(4982), [sym_cdouble] = ACTIONS(4982), [sym_creal] = ACTIONS(4982), [sym_size_t] = ACTIONS(4982), [sym_ptrdiff_t] = ACTIONS(4982), [sym_string] = ACTIONS(4982), [sym_cstring] = ACTIONS(4982), [sym_dstring] = ACTIONS(4982), [sym_wstring] = ACTIONS(4982), [sym_noreturn] = ACTIONS(4982), [sym_this] = ACTIONS(4982), [sym_abstract] = ACTIONS(4982), [sym_alias] = ACTIONS(4982), [sym_align] = ACTIONS(4982), [sym_auto] = ACTIONS(4982), [sym_class] = ACTIONS(4982), [sym_const] = ACTIONS(4982), [sym_debug] = ACTIONS(4982), [sym_deprecated] = ACTIONS(4982), [sym_else] = ACTIONS(4982), [sym_enum] = ACTIONS(4982), [sym_export] = ACTIONS(4982), [sym_extern] = ACTIONS(4982), [sym_final] = ACTIONS(4982), [sym_immutable] = ACTIONS(4982), [sym_import] = ACTIONS(4982), [sym_inout] = ACTIONS(4982), [sym_interface] = ACTIONS(4982), [sym_invariant] = ACTIONS(4982), [sym_mixin] = ACTIONS(4982), [sym_nothrow] = ACTIONS(4982), [sym_override] = ACTIONS(4982), [sym_package] = ACTIONS(4982), [sym_pragma] = ACTIONS(4982), [sym_private] = ACTIONS(4982), [sym_protected] = ACTIONS(4982), [sym_public] = ACTIONS(4982), [sym_pure] = ACTIONS(4982), [sym_ref] = ACTIONS(4982), [sym_return] = ACTIONS(4982), [sym_scope] = ACTIONS(4982), [sym_shared] = ACTIONS(4982), [sym_static] = ACTIONS(4982), [sym_struct] = ACTIONS(4982), [sym_synchronized] = ACTIONS(4982), [sym_template] = ACTIONS(4982), [sym_typeof] = ACTIONS(4982), [sym_union] = ACTIONS(4982), [sym_unittest] = ACTIONS(4982), [sym_version] = ACTIONS(4982), [sym_while] = ACTIONS(4982), [sym_gshared] = ACTIONS(4982), [sym_traits] = ACTIONS(4982), [sym_vector] = ACTIONS(4982), [sym_void] = ACTIONS(4982), [sym_directive] = ACTIONS(3), }, [2838] = { [sym_identifier] = ACTIONS(4986), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4988), [anon_sym_DOT] = ACTIONS(4988), [anon_sym_SEMI] = ACTIONS(4988), [anon_sym_TILDE] = ACTIONS(4988), [anon_sym_AT] = ACTIONS(4988), [sym_bool] = ACTIONS(4986), [sym_byte] = ACTIONS(4986), [sym_ubyte] = ACTIONS(4986), [sym_char] = ACTIONS(4986), [sym_short] = ACTIONS(4986), [sym_ushort] = ACTIONS(4986), [sym_int] = ACTIONS(4986), [sym_uint] = ACTIONS(4986), [sym_long] = ACTIONS(4986), [sym_ulong] = ACTIONS(4986), [sym_cent] = ACTIONS(4986), [sym_ucent] = ACTIONS(4986), [sym_wchar] = ACTIONS(4986), [sym_dchar] = ACTIONS(4986), [sym_float] = ACTIONS(4986), [sym_double] = ACTIONS(4986), [sym_real] = ACTIONS(4986), [sym_ifloat] = ACTIONS(4986), [sym_idouble] = ACTIONS(4986), [sym_ireal] = ACTIONS(4986), [sym_cfloat] = ACTIONS(4986), [sym_cdouble] = ACTIONS(4986), [sym_creal] = ACTIONS(4986), [sym_size_t] = ACTIONS(4986), [sym_ptrdiff_t] = ACTIONS(4986), [sym_string] = ACTIONS(4986), [sym_cstring] = ACTIONS(4986), [sym_dstring] = ACTIONS(4986), [sym_wstring] = ACTIONS(4986), [sym_noreturn] = ACTIONS(4986), [sym_this] = ACTIONS(4986), [sym_abstract] = ACTIONS(4986), [sym_alias] = ACTIONS(4986), [sym_align] = ACTIONS(4986), [sym_auto] = ACTIONS(4986), [sym_class] = ACTIONS(4986), [sym_const] = ACTIONS(4986), [sym_debug] = ACTIONS(4986), [sym_deprecated] = ACTIONS(4986), [sym_else] = ACTIONS(4986), [sym_enum] = ACTIONS(4986), [sym_export] = ACTIONS(4986), [sym_extern] = ACTIONS(4986), [sym_final] = ACTIONS(4986), [sym_immutable] = ACTIONS(4986), [sym_import] = ACTIONS(4986), [sym_inout] = ACTIONS(4986), [sym_interface] = ACTIONS(4986), [sym_invariant] = ACTIONS(4986), [sym_mixin] = ACTIONS(4986), [sym_nothrow] = ACTIONS(4986), [sym_override] = ACTIONS(4986), [sym_package] = ACTIONS(4986), [sym_pragma] = ACTIONS(4986), [sym_private] = ACTIONS(4986), [sym_protected] = ACTIONS(4986), [sym_public] = ACTIONS(4986), [sym_pure] = ACTIONS(4986), [sym_ref] = ACTIONS(4986), [sym_return] = ACTIONS(4986), [sym_scope] = ACTIONS(4986), [sym_shared] = ACTIONS(4986), [sym_static] = ACTIONS(4986), [sym_struct] = ACTIONS(4986), [sym_synchronized] = ACTIONS(4986), [sym_template] = ACTIONS(4986), [sym_typeof] = ACTIONS(4986), [sym_union] = ACTIONS(4986), [sym_unittest] = ACTIONS(4986), [sym_version] = ACTIONS(4986), [sym_while] = ACTIONS(4986), [sym_gshared] = ACTIONS(4986), [sym_traits] = ACTIONS(4986), [sym_vector] = ACTIONS(4986), [sym_void] = ACTIONS(4986), [sym_directive] = ACTIONS(3), }, [2839] = { [sym_identifier] = ACTIONS(4990), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4992), [anon_sym_DOT] = ACTIONS(4992), [anon_sym_SEMI] = ACTIONS(4992), [anon_sym_TILDE] = ACTIONS(4992), [anon_sym_AT] = ACTIONS(4992), [sym_bool] = ACTIONS(4990), [sym_byte] = ACTIONS(4990), [sym_ubyte] = ACTIONS(4990), [sym_char] = ACTIONS(4990), [sym_short] = ACTIONS(4990), [sym_ushort] = ACTIONS(4990), [sym_int] = ACTIONS(4990), [sym_uint] = ACTIONS(4990), [sym_long] = ACTIONS(4990), [sym_ulong] = ACTIONS(4990), [sym_cent] = ACTIONS(4990), [sym_ucent] = ACTIONS(4990), [sym_wchar] = ACTIONS(4990), [sym_dchar] = ACTIONS(4990), [sym_float] = ACTIONS(4990), [sym_double] = ACTIONS(4990), [sym_real] = ACTIONS(4990), [sym_ifloat] = ACTIONS(4990), [sym_idouble] = ACTIONS(4990), [sym_ireal] = ACTIONS(4990), [sym_cfloat] = ACTIONS(4990), [sym_cdouble] = ACTIONS(4990), [sym_creal] = ACTIONS(4990), [sym_size_t] = ACTIONS(4990), [sym_ptrdiff_t] = ACTIONS(4990), [sym_string] = ACTIONS(4990), [sym_cstring] = ACTIONS(4990), [sym_dstring] = ACTIONS(4990), [sym_wstring] = ACTIONS(4990), [sym_noreturn] = ACTIONS(4990), [sym_this] = ACTIONS(4990), [sym_abstract] = ACTIONS(4990), [sym_alias] = ACTIONS(4990), [sym_align] = ACTIONS(4990), [sym_auto] = ACTIONS(4990), [sym_class] = ACTIONS(4990), [sym_const] = ACTIONS(4990), [sym_debug] = ACTIONS(4990), [sym_deprecated] = ACTIONS(4990), [sym_else] = ACTIONS(4990), [sym_enum] = ACTIONS(4990), [sym_export] = ACTIONS(4990), [sym_extern] = ACTIONS(4990), [sym_final] = ACTIONS(4990), [sym_immutable] = ACTIONS(4990), [sym_import] = ACTIONS(4990), [sym_inout] = ACTIONS(4990), [sym_interface] = ACTIONS(4990), [sym_invariant] = ACTIONS(4990), [sym_mixin] = ACTIONS(4990), [sym_nothrow] = ACTIONS(4990), [sym_override] = ACTIONS(4990), [sym_package] = ACTIONS(4990), [sym_pragma] = ACTIONS(4990), [sym_private] = ACTIONS(4990), [sym_protected] = ACTIONS(4990), [sym_public] = ACTIONS(4990), [sym_pure] = ACTIONS(4990), [sym_ref] = ACTIONS(4990), [sym_return] = ACTIONS(4990), [sym_scope] = ACTIONS(4990), [sym_shared] = ACTIONS(4990), [sym_static] = ACTIONS(4990), [sym_struct] = ACTIONS(4990), [sym_synchronized] = ACTIONS(4990), [sym_template] = ACTIONS(4990), [sym_typeof] = ACTIONS(4990), [sym_union] = ACTIONS(4990), [sym_unittest] = ACTIONS(4990), [sym_version] = ACTIONS(4990), [sym_while] = ACTIONS(4990), [sym_gshared] = ACTIONS(4990), [sym_traits] = ACTIONS(4990), [sym_vector] = ACTIONS(4990), [sym_void] = ACTIONS(4990), [sym_directive] = ACTIONS(3), }, [2840] = { [sym_identifier] = ACTIONS(5016), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5018), [anon_sym_DOT] = ACTIONS(5018), [anon_sym_SEMI] = ACTIONS(5018), [anon_sym_TILDE] = ACTIONS(5018), [anon_sym_AT] = ACTIONS(5018), [sym_bool] = ACTIONS(5016), [sym_byte] = ACTIONS(5016), [sym_ubyte] = ACTIONS(5016), [sym_char] = ACTIONS(5016), [sym_short] = ACTIONS(5016), [sym_ushort] = ACTIONS(5016), [sym_int] = ACTIONS(5016), [sym_uint] = ACTIONS(5016), [sym_long] = ACTIONS(5016), [sym_ulong] = ACTIONS(5016), [sym_cent] = ACTIONS(5016), [sym_ucent] = ACTIONS(5016), [sym_wchar] = ACTIONS(5016), [sym_dchar] = ACTIONS(5016), [sym_float] = ACTIONS(5016), [sym_double] = ACTIONS(5016), [sym_real] = ACTIONS(5016), [sym_ifloat] = ACTIONS(5016), [sym_idouble] = ACTIONS(5016), [sym_ireal] = ACTIONS(5016), [sym_cfloat] = ACTIONS(5016), [sym_cdouble] = ACTIONS(5016), [sym_creal] = ACTIONS(5016), [sym_size_t] = ACTIONS(5016), [sym_ptrdiff_t] = ACTIONS(5016), [sym_string] = ACTIONS(5016), [sym_cstring] = ACTIONS(5016), [sym_dstring] = ACTIONS(5016), [sym_wstring] = ACTIONS(5016), [sym_noreturn] = ACTIONS(5016), [sym_this] = ACTIONS(5016), [sym_abstract] = ACTIONS(5016), [sym_alias] = ACTIONS(5016), [sym_align] = ACTIONS(5016), [sym_auto] = ACTIONS(5016), [sym_class] = ACTIONS(5016), [sym_const] = ACTIONS(5016), [sym_debug] = ACTIONS(5016), [sym_deprecated] = ACTIONS(5016), [sym_else] = ACTIONS(5016), [sym_enum] = ACTIONS(5016), [sym_export] = ACTIONS(5016), [sym_extern] = ACTIONS(5016), [sym_final] = ACTIONS(5016), [sym_immutable] = ACTIONS(5016), [sym_import] = ACTIONS(5016), [sym_inout] = ACTIONS(5016), [sym_interface] = ACTIONS(5016), [sym_invariant] = ACTIONS(5016), [sym_mixin] = ACTIONS(5016), [sym_nothrow] = ACTIONS(5016), [sym_override] = ACTIONS(5016), [sym_package] = ACTIONS(5016), [sym_pragma] = ACTIONS(5016), [sym_private] = ACTIONS(5016), [sym_protected] = ACTIONS(5016), [sym_public] = ACTIONS(5016), [sym_pure] = ACTIONS(5016), [sym_ref] = ACTIONS(5016), [sym_return] = ACTIONS(5016), [sym_scope] = ACTIONS(5016), [sym_shared] = ACTIONS(5016), [sym_static] = ACTIONS(5016), [sym_struct] = ACTIONS(5016), [sym_synchronized] = ACTIONS(5016), [sym_template] = ACTIONS(5016), [sym_typeof] = ACTIONS(5016), [sym_union] = ACTIONS(5016), [sym_unittest] = ACTIONS(5016), [sym_version] = ACTIONS(5016), [sym_while] = ACTIONS(5016), [sym_gshared] = ACTIONS(5016), [sym_traits] = ACTIONS(5016), [sym_vector] = ACTIONS(5016), [sym_void] = ACTIONS(5016), [sym_directive] = ACTIONS(3), }, [2841] = { [sym_identifier] = ACTIONS(5020), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5022), [anon_sym_DOT] = ACTIONS(5022), [anon_sym_SEMI] = ACTIONS(5022), [anon_sym_TILDE] = ACTIONS(5022), [anon_sym_AT] = ACTIONS(5022), [sym_bool] = ACTIONS(5020), [sym_byte] = ACTIONS(5020), [sym_ubyte] = ACTIONS(5020), [sym_char] = ACTIONS(5020), [sym_short] = ACTIONS(5020), [sym_ushort] = ACTIONS(5020), [sym_int] = ACTIONS(5020), [sym_uint] = ACTIONS(5020), [sym_long] = ACTIONS(5020), [sym_ulong] = ACTIONS(5020), [sym_cent] = ACTIONS(5020), [sym_ucent] = ACTIONS(5020), [sym_wchar] = ACTIONS(5020), [sym_dchar] = ACTIONS(5020), [sym_float] = ACTIONS(5020), [sym_double] = ACTIONS(5020), [sym_real] = ACTIONS(5020), [sym_ifloat] = ACTIONS(5020), [sym_idouble] = ACTIONS(5020), [sym_ireal] = ACTIONS(5020), [sym_cfloat] = ACTIONS(5020), [sym_cdouble] = ACTIONS(5020), [sym_creal] = ACTIONS(5020), [sym_size_t] = ACTIONS(5020), [sym_ptrdiff_t] = ACTIONS(5020), [sym_string] = ACTIONS(5020), [sym_cstring] = ACTIONS(5020), [sym_dstring] = ACTIONS(5020), [sym_wstring] = ACTIONS(5020), [sym_noreturn] = ACTIONS(5020), [sym_this] = ACTIONS(5020), [sym_abstract] = ACTIONS(5020), [sym_alias] = ACTIONS(5020), [sym_align] = ACTIONS(5020), [sym_auto] = ACTIONS(5020), [sym_class] = ACTIONS(5020), [sym_const] = ACTIONS(5020), [sym_debug] = ACTIONS(5020), [sym_deprecated] = ACTIONS(5020), [sym_else] = ACTIONS(5020), [sym_enum] = ACTIONS(5020), [sym_export] = ACTIONS(5020), [sym_extern] = ACTIONS(5020), [sym_final] = ACTIONS(5020), [sym_immutable] = ACTIONS(5020), [sym_import] = ACTIONS(5020), [sym_inout] = ACTIONS(5020), [sym_interface] = ACTIONS(5020), [sym_invariant] = ACTIONS(5020), [sym_mixin] = ACTIONS(5020), [sym_nothrow] = ACTIONS(5020), [sym_override] = ACTIONS(5020), [sym_package] = ACTIONS(5020), [sym_pragma] = ACTIONS(5020), [sym_private] = ACTIONS(5020), [sym_protected] = ACTIONS(5020), [sym_public] = ACTIONS(5020), [sym_pure] = ACTIONS(5020), [sym_ref] = ACTIONS(5020), [sym_return] = ACTIONS(5020), [sym_scope] = ACTIONS(5020), [sym_shared] = ACTIONS(5020), [sym_static] = ACTIONS(5020), [sym_struct] = ACTIONS(5020), [sym_synchronized] = ACTIONS(5020), [sym_template] = ACTIONS(5020), [sym_typeof] = ACTIONS(5020), [sym_union] = ACTIONS(5020), [sym_unittest] = ACTIONS(5020), [sym_version] = ACTIONS(5020), [sym_while] = ACTIONS(5020), [sym_gshared] = ACTIONS(5020), [sym_traits] = ACTIONS(5020), [sym_vector] = ACTIONS(5020), [sym_void] = ACTIONS(5020), [sym_directive] = ACTIONS(3), }, [2842] = { [sym_identifier] = ACTIONS(4754), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4756), [anon_sym_DOT] = ACTIONS(4756), [anon_sym_SEMI] = ACTIONS(4756), [anon_sym_TILDE] = ACTIONS(4756), [anon_sym_AT] = ACTIONS(4756), [sym_bool] = ACTIONS(4754), [sym_byte] = ACTIONS(4754), [sym_ubyte] = ACTIONS(4754), [sym_char] = ACTIONS(4754), [sym_short] = ACTIONS(4754), [sym_ushort] = ACTIONS(4754), [sym_int] = ACTIONS(4754), [sym_uint] = ACTIONS(4754), [sym_long] = ACTIONS(4754), [sym_ulong] = ACTIONS(4754), [sym_cent] = ACTIONS(4754), [sym_ucent] = ACTIONS(4754), [sym_wchar] = ACTIONS(4754), [sym_dchar] = ACTIONS(4754), [sym_float] = ACTIONS(4754), [sym_double] = ACTIONS(4754), [sym_real] = ACTIONS(4754), [sym_ifloat] = ACTIONS(4754), [sym_idouble] = ACTIONS(4754), [sym_ireal] = ACTIONS(4754), [sym_cfloat] = ACTIONS(4754), [sym_cdouble] = ACTIONS(4754), [sym_creal] = ACTIONS(4754), [sym_size_t] = ACTIONS(4754), [sym_ptrdiff_t] = ACTIONS(4754), [sym_string] = ACTIONS(4754), [sym_cstring] = ACTIONS(4754), [sym_dstring] = ACTIONS(4754), [sym_wstring] = ACTIONS(4754), [sym_noreturn] = ACTIONS(4754), [sym_this] = ACTIONS(4754), [sym_abstract] = ACTIONS(4754), [sym_alias] = ACTIONS(4754), [sym_align] = ACTIONS(4754), [sym_auto] = ACTIONS(4754), [sym_class] = ACTIONS(4754), [sym_const] = ACTIONS(4754), [sym_debug] = ACTIONS(4754), [sym_deprecated] = ACTIONS(4754), [sym_else] = ACTIONS(4754), [sym_enum] = ACTIONS(4754), [sym_export] = ACTIONS(4754), [sym_extern] = ACTIONS(4754), [sym_final] = ACTIONS(4754), [sym_immutable] = ACTIONS(4754), [sym_import] = ACTIONS(4754), [sym_inout] = ACTIONS(4754), [sym_interface] = ACTIONS(4754), [sym_invariant] = ACTIONS(4754), [sym_mixin] = ACTIONS(4754), [sym_nothrow] = ACTIONS(4754), [sym_override] = ACTIONS(4754), [sym_package] = ACTIONS(4754), [sym_pragma] = ACTIONS(4754), [sym_private] = ACTIONS(4754), [sym_protected] = ACTIONS(4754), [sym_public] = ACTIONS(4754), [sym_pure] = ACTIONS(4754), [sym_ref] = ACTIONS(4754), [sym_return] = ACTIONS(4754), [sym_scope] = ACTIONS(4754), [sym_shared] = ACTIONS(4754), [sym_static] = ACTIONS(4754), [sym_struct] = ACTIONS(4754), [sym_synchronized] = ACTIONS(4754), [sym_template] = ACTIONS(4754), [sym_typeof] = ACTIONS(4754), [sym_union] = ACTIONS(4754), [sym_unittest] = ACTIONS(4754), [sym_version] = ACTIONS(4754), [sym_while] = ACTIONS(4754), [sym_gshared] = ACTIONS(4754), [sym_traits] = ACTIONS(4754), [sym_vector] = ACTIONS(4754), [sym_void] = ACTIONS(4754), [sym_directive] = ACTIONS(3), }, [2843] = { [sym_identifier] = ACTIONS(4848), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4850), [anon_sym_DOT] = ACTIONS(4850), [anon_sym_SEMI] = ACTIONS(4850), [anon_sym_TILDE] = ACTIONS(4850), [anon_sym_AT] = ACTIONS(4850), [sym_bool] = ACTIONS(4848), [sym_byte] = ACTIONS(4848), [sym_ubyte] = ACTIONS(4848), [sym_char] = ACTIONS(4848), [sym_short] = ACTIONS(4848), [sym_ushort] = ACTIONS(4848), [sym_int] = ACTIONS(4848), [sym_uint] = ACTIONS(4848), [sym_long] = ACTIONS(4848), [sym_ulong] = ACTIONS(4848), [sym_cent] = ACTIONS(4848), [sym_ucent] = ACTIONS(4848), [sym_wchar] = ACTIONS(4848), [sym_dchar] = ACTIONS(4848), [sym_float] = ACTIONS(4848), [sym_double] = ACTIONS(4848), [sym_real] = ACTIONS(4848), [sym_ifloat] = ACTIONS(4848), [sym_idouble] = ACTIONS(4848), [sym_ireal] = ACTIONS(4848), [sym_cfloat] = ACTIONS(4848), [sym_cdouble] = ACTIONS(4848), [sym_creal] = ACTIONS(4848), [sym_size_t] = ACTIONS(4848), [sym_ptrdiff_t] = ACTIONS(4848), [sym_string] = ACTIONS(4848), [sym_cstring] = ACTIONS(4848), [sym_dstring] = ACTIONS(4848), [sym_wstring] = ACTIONS(4848), [sym_noreturn] = ACTIONS(4848), [sym_this] = ACTIONS(4848), [sym_abstract] = ACTIONS(4848), [sym_alias] = ACTIONS(4848), [sym_align] = ACTIONS(4848), [sym_auto] = ACTIONS(4848), [sym_class] = ACTIONS(4848), [sym_const] = ACTIONS(4848), [sym_debug] = ACTIONS(4848), [sym_deprecated] = ACTIONS(4848), [sym_else] = ACTIONS(4848), [sym_enum] = ACTIONS(4848), [sym_export] = ACTIONS(4848), [sym_extern] = ACTIONS(4848), [sym_final] = ACTIONS(4848), [sym_immutable] = ACTIONS(4848), [sym_import] = ACTIONS(4848), [sym_inout] = ACTIONS(4848), [sym_interface] = ACTIONS(4848), [sym_invariant] = ACTIONS(4848), [sym_mixin] = ACTIONS(4848), [sym_nothrow] = ACTIONS(4848), [sym_override] = ACTIONS(4848), [sym_package] = ACTIONS(4848), [sym_pragma] = ACTIONS(4848), [sym_private] = ACTIONS(4848), [sym_protected] = ACTIONS(4848), [sym_public] = ACTIONS(4848), [sym_pure] = ACTIONS(4848), [sym_ref] = ACTIONS(4848), [sym_return] = ACTIONS(4848), [sym_scope] = ACTIONS(4848), [sym_shared] = ACTIONS(4848), [sym_static] = ACTIONS(4848), [sym_struct] = ACTIONS(4848), [sym_synchronized] = ACTIONS(4848), [sym_template] = ACTIONS(4848), [sym_typeof] = ACTIONS(4848), [sym_union] = ACTIONS(4848), [sym_unittest] = ACTIONS(4848), [sym_version] = ACTIONS(4848), [sym_while] = ACTIONS(4848), [sym_gshared] = ACTIONS(4848), [sym_traits] = ACTIONS(4848), [sym_vector] = ACTIONS(4848), [sym_void] = ACTIONS(4848), [sym_directive] = ACTIONS(3), }, [2844] = { [sym_identifier] = ACTIONS(2798), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(2796), [anon_sym_DOT] = ACTIONS(2796), [anon_sym_SEMI] = ACTIONS(2796), [anon_sym_TILDE] = ACTIONS(2796), [anon_sym_AT] = ACTIONS(2796), [sym_bool] = ACTIONS(2798), [sym_byte] = ACTIONS(2798), [sym_ubyte] = ACTIONS(2798), [sym_char] = ACTIONS(2798), [sym_short] = ACTIONS(2798), [sym_ushort] = ACTIONS(2798), [sym_int] = ACTIONS(2798), [sym_uint] = ACTIONS(2798), [sym_long] = ACTIONS(2798), [sym_ulong] = ACTIONS(2798), [sym_cent] = ACTIONS(2798), [sym_ucent] = ACTIONS(2798), [sym_wchar] = ACTIONS(2798), [sym_dchar] = ACTIONS(2798), [sym_float] = ACTIONS(2798), [sym_double] = ACTIONS(2798), [sym_real] = ACTIONS(2798), [sym_ifloat] = ACTIONS(2798), [sym_idouble] = ACTIONS(2798), [sym_ireal] = ACTIONS(2798), [sym_cfloat] = ACTIONS(2798), [sym_cdouble] = ACTIONS(2798), [sym_creal] = ACTIONS(2798), [sym_size_t] = ACTIONS(2798), [sym_ptrdiff_t] = ACTIONS(2798), [sym_string] = ACTIONS(2798), [sym_cstring] = ACTIONS(2798), [sym_dstring] = ACTIONS(2798), [sym_wstring] = ACTIONS(2798), [sym_noreturn] = ACTIONS(2798), [sym_this] = ACTIONS(2798), [sym_abstract] = ACTIONS(2798), [sym_alias] = ACTIONS(2798), [sym_align] = ACTIONS(2798), [sym_auto] = ACTIONS(2798), [sym_class] = ACTIONS(2798), [sym_const] = ACTIONS(2798), [sym_debug] = ACTIONS(2798), [sym_deprecated] = ACTIONS(2798), [sym_else] = ACTIONS(2798), [sym_enum] = ACTIONS(2798), [sym_export] = ACTIONS(2798), [sym_extern] = ACTIONS(2798), [sym_final] = ACTIONS(2798), [sym_immutable] = ACTIONS(2798), [sym_import] = ACTIONS(2798), [sym_inout] = ACTIONS(2798), [sym_interface] = ACTIONS(2798), [sym_invariant] = ACTIONS(2798), [sym_mixin] = ACTIONS(2798), [sym_nothrow] = ACTIONS(2798), [sym_override] = ACTIONS(2798), [sym_package] = ACTIONS(2798), [sym_pragma] = ACTIONS(2798), [sym_private] = ACTIONS(2798), [sym_protected] = ACTIONS(2798), [sym_public] = ACTIONS(2798), [sym_pure] = ACTIONS(2798), [sym_ref] = ACTIONS(2798), [sym_return] = ACTIONS(2798), [sym_scope] = ACTIONS(2798), [sym_shared] = ACTIONS(2798), [sym_static] = ACTIONS(2798), [sym_struct] = ACTIONS(2798), [sym_synchronized] = ACTIONS(2798), [sym_template] = ACTIONS(2798), [sym_typeof] = ACTIONS(2798), [sym_union] = ACTIONS(2798), [sym_unittest] = ACTIONS(2798), [sym_version] = ACTIONS(2798), [sym_while] = ACTIONS(2798), [sym_gshared] = ACTIONS(2798), [sym_traits] = ACTIONS(2798), [sym_vector] = ACTIONS(2798), [sym_void] = ACTIONS(2798), [sym_directive] = ACTIONS(3), }, [2845] = { [sym_identifier] = ACTIONS(4293), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4295), [anon_sym_DOT] = ACTIONS(4295), [anon_sym_SEMI] = ACTIONS(4295), [anon_sym_TILDE] = ACTIONS(4295), [anon_sym_AT] = ACTIONS(4295), [sym_bool] = ACTIONS(4293), [sym_byte] = ACTIONS(4293), [sym_ubyte] = ACTIONS(4293), [sym_char] = ACTIONS(4293), [sym_short] = ACTIONS(4293), [sym_ushort] = ACTIONS(4293), [sym_int] = ACTIONS(4293), [sym_uint] = ACTIONS(4293), [sym_long] = ACTIONS(4293), [sym_ulong] = ACTIONS(4293), [sym_cent] = ACTIONS(4293), [sym_ucent] = ACTIONS(4293), [sym_wchar] = ACTIONS(4293), [sym_dchar] = ACTIONS(4293), [sym_float] = ACTIONS(4293), [sym_double] = ACTIONS(4293), [sym_real] = ACTIONS(4293), [sym_ifloat] = ACTIONS(4293), [sym_idouble] = ACTIONS(4293), [sym_ireal] = ACTIONS(4293), [sym_cfloat] = ACTIONS(4293), [sym_cdouble] = ACTIONS(4293), [sym_creal] = ACTIONS(4293), [sym_size_t] = ACTIONS(4293), [sym_ptrdiff_t] = ACTIONS(4293), [sym_string] = ACTIONS(4293), [sym_cstring] = ACTIONS(4293), [sym_dstring] = ACTIONS(4293), [sym_wstring] = ACTIONS(4293), [sym_noreturn] = ACTIONS(4293), [sym_this] = ACTIONS(4293), [sym_abstract] = ACTIONS(4293), [sym_alias] = ACTIONS(4293), [sym_align] = ACTIONS(4293), [sym_auto] = ACTIONS(4293), [sym_class] = ACTIONS(4293), [sym_const] = ACTIONS(4293), [sym_debug] = ACTIONS(4293), [sym_deprecated] = ACTIONS(4293), [sym_else] = ACTIONS(4293), [sym_enum] = ACTIONS(4293), [sym_export] = ACTIONS(4293), [sym_extern] = ACTIONS(4293), [sym_final] = ACTIONS(4293), [sym_immutable] = ACTIONS(4293), [sym_import] = ACTIONS(4293), [sym_inout] = ACTIONS(4293), [sym_interface] = ACTIONS(4293), [sym_invariant] = ACTIONS(4293), [sym_mixin] = ACTIONS(4293), [sym_nothrow] = ACTIONS(4293), [sym_override] = ACTIONS(4293), [sym_package] = ACTIONS(4293), [sym_pragma] = ACTIONS(4293), [sym_private] = ACTIONS(4293), [sym_protected] = ACTIONS(4293), [sym_public] = ACTIONS(4293), [sym_pure] = ACTIONS(4293), [sym_ref] = ACTIONS(4293), [sym_return] = ACTIONS(4293), [sym_scope] = ACTIONS(4293), [sym_shared] = ACTIONS(4293), [sym_static] = ACTIONS(4293), [sym_struct] = ACTIONS(4293), [sym_synchronized] = ACTIONS(4293), [sym_template] = ACTIONS(4293), [sym_typeof] = ACTIONS(4293), [sym_union] = ACTIONS(4293), [sym_unittest] = ACTIONS(4293), [sym_version] = ACTIONS(4293), [sym_while] = ACTIONS(4293), [sym_gshared] = ACTIONS(4293), [sym_traits] = ACTIONS(4293), [sym_vector] = ACTIONS(4293), [sym_void] = ACTIONS(4293), [sym_directive] = ACTIONS(3), }, [2846] = { [sym_identifier] = ACTIONS(5032), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5034), [anon_sym_DOT] = ACTIONS(5034), [anon_sym_SEMI] = ACTIONS(5034), [anon_sym_TILDE] = ACTIONS(5034), [anon_sym_AT] = ACTIONS(5034), [sym_bool] = ACTIONS(5032), [sym_byte] = ACTIONS(5032), [sym_ubyte] = ACTIONS(5032), [sym_char] = ACTIONS(5032), [sym_short] = ACTIONS(5032), [sym_ushort] = ACTIONS(5032), [sym_int] = ACTIONS(5032), [sym_uint] = ACTIONS(5032), [sym_long] = ACTIONS(5032), [sym_ulong] = ACTIONS(5032), [sym_cent] = ACTIONS(5032), [sym_ucent] = ACTIONS(5032), [sym_wchar] = ACTIONS(5032), [sym_dchar] = ACTIONS(5032), [sym_float] = ACTIONS(5032), [sym_double] = ACTIONS(5032), [sym_real] = ACTIONS(5032), [sym_ifloat] = ACTIONS(5032), [sym_idouble] = ACTIONS(5032), [sym_ireal] = ACTIONS(5032), [sym_cfloat] = ACTIONS(5032), [sym_cdouble] = ACTIONS(5032), [sym_creal] = ACTIONS(5032), [sym_size_t] = ACTIONS(5032), [sym_ptrdiff_t] = ACTIONS(5032), [sym_string] = ACTIONS(5032), [sym_cstring] = ACTIONS(5032), [sym_dstring] = ACTIONS(5032), [sym_wstring] = ACTIONS(5032), [sym_noreturn] = ACTIONS(5032), [sym_this] = ACTIONS(5032), [sym_abstract] = ACTIONS(5032), [sym_alias] = ACTIONS(5032), [sym_align] = ACTIONS(5032), [sym_auto] = ACTIONS(5032), [sym_class] = ACTIONS(5032), [sym_const] = ACTIONS(5032), [sym_debug] = ACTIONS(5032), [sym_deprecated] = ACTIONS(5032), [sym_else] = ACTIONS(5032), [sym_enum] = ACTIONS(5032), [sym_export] = ACTIONS(5032), [sym_extern] = ACTIONS(5032), [sym_final] = ACTIONS(5032), [sym_immutable] = ACTIONS(5032), [sym_import] = ACTIONS(5032), [sym_inout] = ACTIONS(5032), [sym_interface] = ACTIONS(5032), [sym_invariant] = ACTIONS(5032), [sym_mixin] = ACTIONS(5032), [sym_nothrow] = ACTIONS(5032), [sym_override] = ACTIONS(5032), [sym_package] = ACTIONS(5032), [sym_pragma] = ACTIONS(5032), [sym_private] = ACTIONS(5032), [sym_protected] = ACTIONS(5032), [sym_public] = ACTIONS(5032), [sym_pure] = ACTIONS(5032), [sym_ref] = ACTIONS(5032), [sym_return] = ACTIONS(5032), [sym_scope] = ACTIONS(5032), [sym_shared] = ACTIONS(5032), [sym_static] = ACTIONS(5032), [sym_struct] = ACTIONS(5032), [sym_synchronized] = ACTIONS(5032), [sym_template] = ACTIONS(5032), [sym_typeof] = ACTIONS(5032), [sym_union] = ACTIONS(5032), [sym_unittest] = ACTIONS(5032), [sym_version] = ACTIONS(5032), [sym_while] = ACTIONS(5032), [sym_gshared] = ACTIONS(5032), [sym_traits] = ACTIONS(5032), [sym_vector] = ACTIONS(5032), [sym_void] = ACTIONS(5032), [sym_directive] = ACTIONS(3), }, [2847] = { [sym_identifier] = ACTIONS(4313), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4315), [anon_sym_DOT] = ACTIONS(4315), [anon_sym_SEMI] = ACTIONS(4315), [anon_sym_TILDE] = ACTIONS(4315), [anon_sym_AT] = ACTIONS(4315), [sym_bool] = ACTIONS(4313), [sym_byte] = ACTIONS(4313), [sym_ubyte] = ACTIONS(4313), [sym_char] = ACTIONS(4313), [sym_short] = ACTIONS(4313), [sym_ushort] = ACTIONS(4313), [sym_int] = ACTIONS(4313), [sym_uint] = ACTIONS(4313), [sym_long] = ACTIONS(4313), [sym_ulong] = ACTIONS(4313), [sym_cent] = ACTIONS(4313), [sym_ucent] = ACTIONS(4313), [sym_wchar] = ACTIONS(4313), [sym_dchar] = ACTIONS(4313), [sym_float] = ACTIONS(4313), [sym_double] = ACTIONS(4313), [sym_real] = ACTIONS(4313), [sym_ifloat] = ACTIONS(4313), [sym_idouble] = ACTIONS(4313), [sym_ireal] = ACTIONS(4313), [sym_cfloat] = ACTIONS(4313), [sym_cdouble] = ACTIONS(4313), [sym_creal] = ACTIONS(4313), [sym_size_t] = ACTIONS(4313), [sym_ptrdiff_t] = ACTIONS(4313), [sym_string] = ACTIONS(4313), [sym_cstring] = ACTIONS(4313), [sym_dstring] = ACTIONS(4313), [sym_wstring] = ACTIONS(4313), [sym_noreturn] = ACTIONS(4313), [sym_this] = ACTIONS(4313), [sym_abstract] = ACTIONS(4313), [sym_alias] = ACTIONS(4313), [sym_align] = ACTIONS(4313), [sym_auto] = ACTIONS(4313), [sym_class] = ACTIONS(4313), [sym_const] = ACTIONS(4313), [sym_debug] = ACTIONS(4313), [sym_deprecated] = ACTIONS(4313), [sym_else] = ACTIONS(4313), [sym_enum] = ACTIONS(4313), [sym_export] = ACTIONS(4313), [sym_extern] = ACTIONS(4313), [sym_final] = ACTIONS(4313), [sym_immutable] = ACTIONS(4313), [sym_import] = ACTIONS(4313), [sym_inout] = ACTIONS(4313), [sym_interface] = ACTIONS(4313), [sym_invariant] = ACTIONS(4313), [sym_mixin] = ACTIONS(4313), [sym_nothrow] = ACTIONS(4313), [sym_override] = ACTIONS(4313), [sym_package] = ACTIONS(4313), [sym_pragma] = ACTIONS(4313), [sym_private] = ACTIONS(4313), [sym_protected] = ACTIONS(4313), [sym_public] = ACTIONS(4313), [sym_pure] = ACTIONS(4313), [sym_ref] = ACTIONS(4313), [sym_return] = ACTIONS(4313), [sym_scope] = ACTIONS(4313), [sym_shared] = ACTIONS(4313), [sym_static] = ACTIONS(4313), [sym_struct] = ACTIONS(4313), [sym_synchronized] = ACTIONS(4313), [sym_template] = ACTIONS(4313), [sym_typeof] = ACTIONS(4313), [sym_union] = ACTIONS(4313), [sym_unittest] = ACTIONS(4313), [sym_version] = ACTIONS(4313), [sym_while] = ACTIONS(4313), [sym_gshared] = ACTIONS(4313), [sym_traits] = ACTIONS(4313), [sym_vector] = ACTIONS(4313), [sym_void] = ACTIONS(4313), [sym_directive] = ACTIONS(3), }, [2848] = { [sym_identifier] = ACTIONS(4856), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4858), [anon_sym_DOT] = ACTIONS(4858), [anon_sym_SEMI] = ACTIONS(4858), [anon_sym_TILDE] = ACTIONS(4858), [anon_sym_AT] = ACTIONS(4858), [sym_bool] = ACTIONS(4856), [sym_byte] = ACTIONS(4856), [sym_ubyte] = ACTIONS(4856), [sym_char] = ACTIONS(4856), [sym_short] = ACTIONS(4856), [sym_ushort] = ACTIONS(4856), [sym_int] = ACTIONS(4856), [sym_uint] = ACTIONS(4856), [sym_long] = ACTIONS(4856), [sym_ulong] = ACTIONS(4856), [sym_cent] = ACTIONS(4856), [sym_ucent] = ACTIONS(4856), [sym_wchar] = ACTIONS(4856), [sym_dchar] = ACTIONS(4856), [sym_float] = ACTIONS(4856), [sym_double] = ACTIONS(4856), [sym_real] = ACTIONS(4856), [sym_ifloat] = ACTIONS(4856), [sym_idouble] = ACTIONS(4856), [sym_ireal] = ACTIONS(4856), [sym_cfloat] = ACTIONS(4856), [sym_cdouble] = ACTIONS(4856), [sym_creal] = ACTIONS(4856), [sym_size_t] = ACTIONS(4856), [sym_ptrdiff_t] = ACTIONS(4856), [sym_string] = ACTIONS(4856), [sym_cstring] = ACTIONS(4856), [sym_dstring] = ACTIONS(4856), [sym_wstring] = ACTIONS(4856), [sym_noreturn] = ACTIONS(4856), [sym_this] = ACTIONS(4856), [sym_abstract] = ACTIONS(4856), [sym_alias] = ACTIONS(4856), [sym_align] = ACTIONS(4856), [sym_auto] = ACTIONS(4856), [sym_class] = ACTIONS(4856), [sym_const] = ACTIONS(4856), [sym_debug] = ACTIONS(4856), [sym_deprecated] = ACTIONS(4856), [sym_else] = ACTIONS(4856), [sym_enum] = ACTIONS(4856), [sym_export] = ACTIONS(4856), [sym_extern] = ACTIONS(4856), [sym_final] = ACTIONS(4856), [sym_immutable] = ACTIONS(4856), [sym_import] = ACTIONS(4856), [sym_inout] = ACTIONS(4856), [sym_interface] = ACTIONS(4856), [sym_invariant] = ACTIONS(4856), [sym_mixin] = ACTIONS(4856), [sym_nothrow] = ACTIONS(4856), [sym_override] = ACTIONS(4856), [sym_package] = ACTIONS(4856), [sym_pragma] = ACTIONS(4856), [sym_private] = ACTIONS(4856), [sym_protected] = ACTIONS(4856), [sym_public] = ACTIONS(4856), [sym_pure] = ACTIONS(4856), [sym_ref] = ACTIONS(4856), [sym_return] = ACTIONS(4856), [sym_scope] = ACTIONS(4856), [sym_shared] = ACTIONS(4856), [sym_static] = ACTIONS(4856), [sym_struct] = ACTIONS(4856), [sym_synchronized] = ACTIONS(4856), [sym_template] = ACTIONS(4856), [sym_typeof] = ACTIONS(4856), [sym_union] = ACTIONS(4856), [sym_unittest] = ACTIONS(4856), [sym_version] = ACTIONS(4856), [sym_while] = ACTIONS(4856), [sym_gshared] = ACTIONS(4856), [sym_traits] = ACTIONS(4856), [sym_vector] = ACTIONS(4856), [sym_void] = ACTIONS(4856), [sym_directive] = ACTIONS(3), }, [2849] = { [sym_identifier] = ACTIONS(4327), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4329), [anon_sym_DOT] = ACTIONS(4329), [anon_sym_SEMI] = ACTIONS(4329), [anon_sym_TILDE] = ACTIONS(4329), [anon_sym_AT] = ACTIONS(4329), [sym_bool] = ACTIONS(4327), [sym_byte] = ACTIONS(4327), [sym_ubyte] = ACTIONS(4327), [sym_char] = ACTIONS(4327), [sym_short] = ACTIONS(4327), [sym_ushort] = ACTIONS(4327), [sym_int] = ACTIONS(4327), [sym_uint] = ACTIONS(4327), [sym_long] = ACTIONS(4327), [sym_ulong] = ACTIONS(4327), [sym_cent] = ACTIONS(4327), [sym_ucent] = ACTIONS(4327), [sym_wchar] = ACTIONS(4327), [sym_dchar] = ACTIONS(4327), [sym_float] = ACTIONS(4327), [sym_double] = ACTIONS(4327), [sym_real] = ACTIONS(4327), [sym_ifloat] = ACTIONS(4327), [sym_idouble] = ACTIONS(4327), [sym_ireal] = ACTIONS(4327), [sym_cfloat] = ACTIONS(4327), [sym_cdouble] = ACTIONS(4327), [sym_creal] = ACTIONS(4327), [sym_size_t] = ACTIONS(4327), [sym_ptrdiff_t] = ACTIONS(4327), [sym_string] = ACTIONS(4327), [sym_cstring] = ACTIONS(4327), [sym_dstring] = ACTIONS(4327), [sym_wstring] = ACTIONS(4327), [sym_noreturn] = ACTIONS(4327), [sym_this] = ACTIONS(4327), [sym_abstract] = ACTIONS(4327), [sym_alias] = ACTIONS(4327), [sym_align] = ACTIONS(4327), [sym_auto] = ACTIONS(4327), [sym_class] = ACTIONS(4327), [sym_const] = ACTIONS(4327), [sym_debug] = ACTIONS(4327), [sym_deprecated] = ACTIONS(4327), [sym_else] = ACTIONS(4327), [sym_enum] = ACTIONS(4327), [sym_export] = ACTIONS(4327), [sym_extern] = ACTIONS(4327), [sym_final] = ACTIONS(4327), [sym_immutable] = ACTIONS(4327), [sym_import] = ACTIONS(4327), [sym_inout] = ACTIONS(4327), [sym_interface] = ACTIONS(4327), [sym_invariant] = ACTIONS(4327), [sym_mixin] = ACTIONS(4327), [sym_nothrow] = ACTIONS(4327), [sym_override] = ACTIONS(4327), [sym_package] = ACTIONS(4327), [sym_pragma] = ACTIONS(4327), [sym_private] = ACTIONS(4327), [sym_protected] = ACTIONS(4327), [sym_public] = ACTIONS(4327), [sym_pure] = ACTIONS(4327), [sym_ref] = ACTIONS(4327), [sym_return] = ACTIONS(4327), [sym_scope] = ACTIONS(4327), [sym_shared] = ACTIONS(4327), [sym_static] = ACTIONS(4327), [sym_struct] = ACTIONS(4327), [sym_synchronized] = ACTIONS(4327), [sym_template] = ACTIONS(4327), [sym_typeof] = ACTIONS(4327), [sym_union] = ACTIONS(4327), [sym_unittest] = ACTIONS(4327), [sym_version] = ACTIONS(4327), [sym_while] = ACTIONS(4327), [sym_gshared] = ACTIONS(4327), [sym_traits] = ACTIONS(4327), [sym_vector] = ACTIONS(4327), [sym_void] = ACTIONS(4327), [sym_directive] = ACTIONS(3), }, [2850] = { [sym_identifier] = ACTIONS(4305), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4307), [anon_sym_DOT] = ACTIONS(4307), [anon_sym_SEMI] = ACTIONS(4307), [anon_sym_TILDE] = ACTIONS(4307), [anon_sym_AT] = ACTIONS(4307), [sym_bool] = ACTIONS(4305), [sym_byte] = ACTIONS(4305), [sym_ubyte] = ACTIONS(4305), [sym_char] = ACTIONS(4305), [sym_short] = ACTIONS(4305), [sym_ushort] = ACTIONS(4305), [sym_int] = ACTIONS(4305), [sym_uint] = ACTIONS(4305), [sym_long] = ACTIONS(4305), [sym_ulong] = ACTIONS(4305), [sym_cent] = ACTIONS(4305), [sym_ucent] = ACTIONS(4305), [sym_wchar] = ACTIONS(4305), [sym_dchar] = ACTIONS(4305), [sym_float] = ACTIONS(4305), [sym_double] = ACTIONS(4305), [sym_real] = ACTIONS(4305), [sym_ifloat] = ACTIONS(4305), [sym_idouble] = ACTIONS(4305), [sym_ireal] = ACTIONS(4305), [sym_cfloat] = ACTIONS(4305), [sym_cdouble] = ACTIONS(4305), [sym_creal] = ACTIONS(4305), [sym_size_t] = ACTIONS(4305), [sym_ptrdiff_t] = ACTIONS(4305), [sym_string] = ACTIONS(4305), [sym_cstring] = ACTIONS(4305), [sym_dstring] = ACTIONS(4305), [sym_wstring] = ACTIONS(4305), [sym_noreturn] = ACTIONS(4305), [sym_this] = ACTIONS(4305), [sym_abstract] = ACTIONS(4305), [sym_alias] = ACTIONS(4305), [sym_align] = ACTIONS(4305), [sym_auto] = ACTIONS(4305), [sym_class] = ACTIONS(4305), [sym_const] = ACTIONS(4305), [sym_debug] = ACTIONS(4305), [sym_deprecated] = ACTIONS(4305), [sym_else] = ACTIONS(4305), [sym_enum] = ACTIONS(4305), [sym_export] = ACTIONS(4305), [sym_extern] = ACTIONS(4305), [sym_final] = ACTIONS(4305), [sym_immutable] = ACTIONS(4305), [sym_import] = ACTIONS(4305), [sym_inout] = ACTIONS(4305), [sym_interface] = ACTIONS(4305), [sym_invariant] = ACTIONS(4305), [sym_mixin] = ACTIONS(4305), [sym_nothrow] = ACTIONS(4305), [sym_override] = ACTIONS(4305), [sym_package] = ACTIONS(4305), [sym_pragma] = ACTIONS(4305), [sym_private] = ACTIONS(4305), [sym_protected] = ACTIONS(4305), [sym_public] = ACTIONS(4305), [sym_pure] = ACTIONS(4305), [sym_ref] = ACTIONS(4305), [sym_return] = ACTIONS(4305), [sym_scope] = ACTIONS(4305), [sym_shared] = ACTIONS(4305), [sym_static] = ACTIONS(4305), [sym_struct] = ACTIONS(4305), [sym_synchronized] = ACTIONS(4305), [sym_template] = ACTIONS(4305), [sym_typeof] = ACTIONS(4305), [sym_union] = ACTIONS(4305), [sym_unittest] = ACTIONS(4305), [sym_version] = ACTIONS(4305), [sym_while] = ACTIONS(4305), [sym_gshared] = ACTIONS(4305), [sym_traits] = ACTIONS(4305), [sym_vector] = ACTIONS(4305), [sym_void] = ACTIONS(4305), [sym_directive] = ACTIONS(3), }, [2851] = { [sym_identifier] = ACTIONS(4339), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4341), [anon_sym_DOT] = ACTIONS(4341), [anon_sym_SEMI] = ACTIONS(4341), [anon_sym_TILDE] = ACTIONS(4341), [anon_sym_AT] = ACTIONS(4341), [sym_bool] = ACTIONS(4339), [sym_byte] = ACTIONS(4339), [sym_ubyte] = ACTIONS(4339), [sym_char] = ACTIONS(4339), [sym_short] = ACTIONS(4339), [sym_ushort] = ACTIONS(4339), [sym_int] = ACTIONS(4339), [sym_uint] = ACTIONS(4339), [sym_long] = ACTIONS(4339), [sym_ulong] = ACTIONS(4339), [sym_cent] = ACTIONS(4339), [sym_ucent] = ACTIONS(4339), [sym_wchar] = ACTIONS(4339), [sym_dchar] = ACTIONS(4339), [sym_float] = ACTIONS(4339), [sym_double] = ACTIONS(4339), [sym_real] = ACTIONS(4339), [sym_ifloat] = ACTIONS(4339), [sym_idouble] = ACTIONS(4339), [sym_ireal] = ACTIONS(4339), [sym_cfloat] = ACTIONS(4339), [sym_cdouble] = ACTIONS(4339), [sym_creal] = ACTIONS(4339), [sym_size_t] = ACTIONS(4339), [sym_ptrdiff_t] = ACTIONS(4339), [sym_string] = ACTIONS(4339), [sym_cstring] = ACTIONS(4339), [sym_dstring] = ACTIONS(4339), [sym_wstring] = ACTIONS(4339), [sym_noreturn] = ACTIONS(4339), [sym_this] = ACTIONS(4339), [sym_abstract] = ACTIONS(4339), [sym_alias] = ACTIONS(4339), [sym_align] = ACTIONS(4339), [sym_auto] = ACTIONS(4339), [sym_class] = ACTIONS(4339), [sym_const] = ACTIONS(4339), [sym_debug] = ACTIONS(4339), [sym_deprecated] = ACTIONS(4339), [sym_else] = ACTIONS(4339), [sym_enum] = ACTIONS(4339), [sym_export] = ACTIONS(4339), [sym_extern] = ACTIONS(4339), [sym_final] = ACTIONS(4339), [sym_immutable] = ACTIONS(4339), [sym_import] = ACTIONS(4339), [sym_inout] = ACTIONS(4339), [sym_interface] = ACTIONS(4339), [sym_invariant] = ACTIONS(4339), [sym_mixin] = ACTIONS(4339), [sym_nothrow] = ACTIONS(4339), [sym_override] = ACTIONS(4339), [sym_package] = ACTIONS(4339), [sym_pragma] = ACTIONS(4339), [sym_private] = ACTIONS(4339), [sym_protected] = ACTIONS(4339), [sym_public] = ACTIONS(4339), [sym_pure] = ACTIONS(4339), [sym_ref] = ACTIONS(4339), [sym_return] = ACTIONS(4339), [sym_scope] = ACTIONS(4339), [sym_shared] = ACTIONS(4339), [sym_static] = ACTIONS(4339), [sym_struct] = ACTIONS(4339), [sym_synchronized] = ACTIONS(4339), [sym_template] = ACTIONS(4339), [sym_typeof] = ACTIONS(4339), [sym_union] = ACTIONS(4339), [sym_unittest] = ACTIONS(4339), [sym_version] = ACTIONS(4339), [sym_while] = ACTIONS(4339), [sym_gshared] = ACTIONS(4339), [sym_traits] = ACTIONS(4339), [sym_vector] = ACTIONS(4339), [sym_void] = ACTIONS(4339), [sym_directive] = ACTIONS(3), }, [2852] = { [sym_identifier] = ACTIONS(4309), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4311), [anon_sym_DOT] = ACTIONS(4311), [anon_sym_SEMI] = ACTIONS(4311), [anon_sym_TILDE] = ACTIONS(4311), [anon_sym_AT] = ACTIONS(4311), [sym_bool] = ACTIONS(4309), [sym_byte] = ACTIONS(4309), [sym_ubyte] = ACTIONS(4309), [sym_char] = ACTIONS(4309), [sym_short] = ACTIONS(4309), [sym_ushort] = ACTIONS(4309), [sym_int] = ACTIONS(4309), [sym_uint] = ACTIONS(4309), [sym_long] = ACTIONS(4309), [sym_ulong] = ACTIONS(4309), [sym_cent] = ACTIONS(4309), [sym_ucent] = ACTIONS(4309), [sym_wchar] = ACTIONS(4309), [sym_dchar] = ACTIONS(4309), [sym_float] = ACTIONS(4309), [sym_double] = ACTIONS(4309), [sym_real] = ACTIONS(4309), [sym_ifloat] = ACTIONS(4309), [sym_idouble] = ACTIONS(4309), [sym_ireal] = ACTIONS(4309), [sym_cfloat] = ACTIONS(4309), [sym_cdouble] = ACTIONS(4309), [sym_creal] = ACTIONS(4309), [sym_size_t] = ACTIONS(4309), [sym_ptrdiff_t] = ACTIONS(4309), [sym_string] = ACTIONS(4309), [sym_cstring] = ACTIONS(4309), [sym_dstring] = ACTIONS(4309), [sym_wstring] = ACTIONS(4309), [sym_noreturn] = ACTIONS(4309), [sym_this] = ACTIONS(4309), [sym_abstract] = ACTIONS(4309), [sym_alias] = ACTIONS(4309), [sym_align] = ACTIONS(4309), [sym_auto] = ACTIONS(4309), [sym_class] = ACTIONS(4309), [sym_const] = ACTIONS(4309), [sym_debug] = ACTIONS(4309), [sym_deprecated] = ACTIONS(4309), [sym_else] = ACTIONS(4309), [sym_enum] = ACTIONS(4309), [sym_export] = ACTIONS(4309), [sym_extern] = ACTIONS(4309), [sym_final] = ACTIONS(4309), [sym_immutable] = ACTIONS(4309), [sym_import] = ACTIONS(4309), [sym_inout] = ACTIONS(4309), [sym_interface] = ACTIONS(4309), [sym_invariant] = ACTIONS(4309), [sym_mixin] = ACTIONS(4309), [sym_nothrow] = ACTIONS(4309), [sym_override] = ACTIONS(4309), [sym_package] = ACTIONS(4309), [sym_pragma] = ACTIONS(4309), [sym_private] = ACTIONS(4309), [sym_protected] = ACTIONS(4309), [sym_public] = ACTIONS(4309), [sym_pure] = ACTIONS(4309), [sym_ref] = ACTIONS(4309), [sym_return] = ACTIONS(4309), [sym_scope] = ACTIONS(4309), [sym_shared] = ACTIONS(4309), [sym_static] = ACTIONS(4309), [sym_struct] = ACTIONS(4309), [sym_synchronized] = ACTIONS(4309), [sym_template] = ACTIONS(4309), [sym_typeof] = ACTIONS(4309), [sym_union] = ACTIONS(4309), [sym_unittest] = ACTIONS(4309), [sym_version] = ACTIONS(4309), [sym_while] = ACTIONS(4309), [sym_gshared] = ACTIONS(4309), [sym_traits] = ACTIONS(4309), [sym_vector] = ACTIONS(4309), [sym_void] = ACTIONS(4309), [sym_directive] = ACTIONS(3), }, [2853] = { [sym_identifier] = ACTIONS(5048), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5050), [anon_sym_DOT] = ACTIONS(5050), [anon_sym_SEMI] = ACTIONS(5050), [anon_sym_TILDE] = ACTIONS(5050), [anon_sym_AT] = ACTIONS(5050), [sym_bool] = ACTIONS(5048), [sym_byte] = ACTIONS(5048), [sym_ubyte] = ACTIONS(5048), [sym_char] = ACTIONS(5048), [sym_short] = ACTIONS(5048), [sym_ushort] = ACTIONS(5048), [sym_int] = ACTIONS(5048), [sym_uint] = ACTIONS(5048), [sym_long] = ACTIONS(5048), [sym_ulong] = ACTIONS(5048), [sym_cent] = ACTIONS(5048), [sym_ucent] = ACTIONS(5048), [sym_wchar] = ACTIONS(5048), [sym_dchar] = ACTIONS(5048), [sym_float] = ACTIONS(5048), [sym_double] = ACTIONS(5048), [sym_real] = ACTIONS(5048), [sym_ifloat] = ACTIONS(5048), [sym_idouble] = ACTIONS(5048), [sym_ireal] = ACTIONS(5048), [sym_cfloat] = ACTIONS(5048), [sym_cdouble] = ACTIONS(5048), [sym_creal] = ACTIONS(5048), [sym_size_t] = ACTIONS(5048), [sym_ptrdiff_t] = ACTIONS(5048), [sym_string] = ACTIONS(5048), [sym_cstring] = ACTIONS(5048), [sym_dstring] = ACTIONS(5048), [sym_wstring] = ACTIONS(5048), [sym_noreturn] = ACTIONS(5048), [sym_this] = ACTIONS(5048), [sym_abstract] = ACTIONS(5048), [sym_alias] = ACTIONS(5048), [sym_align] = ACTIONS(5048), [sym_auto] = ACTIONS(5048), [sym_class] = ACTIONS(5048), [sym_const] = ACTIONS(5048), [sym_debug] = ACTIONS(5048), [sym_deprecated] = ACTIONS(5048), [sym_else] = ACTIONS(5048), [sym_enum] = ACTIONS(5048), [sym_export] = ACTIONS(5048), [sym_extern] = ACTIONS(5048), [sym_final] = ACTIONS(5048), [sym_immutable] = ACTIONS(5048), [sym_import] = ACTIONS(5048), [sym_inout] = ACTIONS(5048), [sym_interface] = ACTIONS(5048), [sym_invariant] = ACTIONS(5048), [sym_mixin] = ACTIONS(5048), [sym_nothrow] = ACTIONS(5048), [sym_override] = ACTIONS(5048), [sym_package] = ACTIONS(5048), [sym_pragma] = ACTIONS(5048), [sym_private] = ACTIONS(5048), [sym_protected] = ACTIONS(5048), [sym_public] = ACTIONS(5048), [sym_pure] = ACTIONS(5048), [sym_ref] = ACTIONS(5048), [sym_return] = ACTIONS(5048), [sym_scope] = ACTIONS(5048), [sym_shared] = ACTIONS(5048), [sym_static] = ACTIONS(5048), [sym_struct] = ACTIONS(5048), [sym_synchronized] = ACTIONS(5048), [sym_template] = ACTIONS(5048), [sym_typeof] = ACTIONS(5048), [sym_union] = ACTIONS(5048), [sym_unittest] = ACTIONS(5048), [sym_version] = ACTIONS(5048), [sym_while] = ACTIONS(5048), [sym_gshared] = ACTIONS(5048), [sym_traits] = ACTIONS(5048), [sym_vector] = ACTIONS(5048), [sym_void] = ACTIONS(5048), [sym_directive] = ACTIONS(3), }, [2854] = { [sym_identifier] = ACTIONS(4321), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4324), [anon_sym_DOT] = ACTIONS(4324), [anon_sym_SEMI] = ACTIONS(4324), [anon_sym_TILDE] = ACTIONS(4324), [anon_sym_AT] = ACTIONS(4324), [sym_bool] = ACTIONS(4321), [sym_byte] = ACTIONS(4321), [sym_ubyte] = ACTIONS(4321), [sym_char] = ACTIONS(4321), [sym_short] = ACTIONS(4321), [sym_ushort] = ACTIONS(4321), [sym_int] = ACTIONS(4321), [sym_uint] = ACTIONS(4321), [sym_long] = ACTIONS(4321), [sym_ulong] = ACTIONS(4321), [sym_cent] = ACTIONS(4321), [sym_ucent] = ACTIONS(4321), [sym_wchar] = ACTIONS(4321), [sym_dchar] = ACTIONS(4321), [sym_float] = ACTIONS(4321), [sym_double] = ACTIONS(4321), [sym_real] = ACTIONS(4321), [sym_ifloat] = ACTIONS(4321), [sym_idouble] = ACTIONS(4321), [sym_ireal] = ACTIONS(4321), [sym_cfloat] = ACTIONS(4321), [sym_cdouble] = ACTIONS(4321), [sym_creal] = ACTIONS(4321), [sym_size_t] = ACTIONS(4321), [sym_ptrdiff_t] = ACTIONS(4321), [sym_string] = ACTIONS(4321), [sym_cstring] = ACTIONS(4321), [sym_dstring] = ACTIONS(4321), [sym_wstring] = ACTIONS(4321), [sym_noreturn] = ACTIONS(4321), [sym_this] = ACTIONS(4321), [sym_abstract] = ACTIONS(4321), [sym_alias] = ACTIONS(4321), [sym_align] = ACTIONS(4321), [sym_auto] = ACTIONS(4321), [sym_class] = ACTIONS(4321), [sym_const] = ACTIONS(4321), [sym_debug] = ACTIONS(4321), [sym_deprecated] = ACTIONS(4321), [sym_else] = ACTIONS(4321), [sym_enum] = ACTIONS(4321), [sym_export] = ACTIONS(4321), [sym_extern] = ACTIONS(4321), [sym_final] = ACTIONS(4321), [sym_immutable] = ACTIONS(4321), [sym_import] = ACTIONS(4321), [sym_inout] = ACTIONS(4321), [sym_interface] = ACTIONS(4321), [sym_invariant] = ACTIONS(4321), [sym_mixin] = ACTIONS(4321), [sym_nothrow] = ACTIONS(4321), [sym_override] = ACTIONS(4321), [sym_package] = ACTIONS(4321), [sym_pragma] = ACTIONS(4321), [sym_private] = ACTIONS(4321), [sym_protected] = ACTIONS(4321), [sym_public] = ACTIONS(4321), [sym_pure] = ACTIONS(4321), [sym_ref] = ACTIONS(4321), [sym_return] = ACTIONS(4321), [sym_scope] = ACTIONS(4321), [sym_shared] = ACTIONS(4321), [sym_static] = ACTIONS(4321), [sym_struct] = ACTIONS(4321), [sym_synchronized] = ACTIONS(4321), [sym_template] = ACTIONS(4321), [sym_typeof] = ACTIONS(4321), [sym_union] = ACTIONS(4321), [sym_unittest] = ACTIONS(4321), [sym_version] = ACTIONS(4321), [sym_while] = ACTIONS(4321), [sym_gshared] = ACTIONS(4321), [sym_traits] = ACTIONS(4321), [sym_vector] = ACTIONS(4321), [sym_void] = ACTIONS(4321), [sym_directive] = ACTIONS(3), }, [2855] = { [sym_identifier] = ACTIONS(4335), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4337), [anon_sym_DOT] = ACTIONS(4337), [anon_sym_SEMI] = ACTIONS(4337), [anon_sym_TILDE] = ACTIONS(4337), [anon_sym_AT] = ACTIONS(4337), [sym_bool] = ACTIONS(4335), [sym_byte] = ACTIONS(4335), [sym_ubyte] = ACTIONS(4335), [sym_char] = ACTIONS(4335), [sym_short] = ACTIONS(4335), [sym_ushort] = ACTIONS(4335), [sym_int] = ACTIONS(4335), [sym_uint] = ACTIONS(4335), [sym_long] = ACTIONS(4335), [sym_ulong] = ACTIONS(4335), [sym_cent] = ACTIONS(4335), [sym_ucent] = ACTIONS(4335), [sym_wchar] = ACTIONS(4335), [sym_dchar] = ACTIONS(4335), [sym_float] = ACTIONS(4335), [sym_double] = ACTIONS(4335), [sym_real] = ACTIONS(4335), [sym_ifloat] = ACTIONS(4335), [sym_idouble] = ACTIONS(4335), [sym_ireal] = ACTIONS(4335), [sym_cfloat] = ACTIONS(4335), [sym_cdouble] = ACTIONS(4335), [sym_creal] = ACTIONS(4335), [sym_size_t] = ACTIONS(4335), [sym_ptrdiff_t] = ACTIONS(4335), [sym_string] = ACTIONS(4335), [sym_cstring] = ACTIONS(4335), [sym_dstring] = ACTIONS(4335), [sym_wstring] = ACTIONS(4335), [sym_noreturn] = ACTIONS(4335), [sym_this] = ACTIONS(4335), [sym_abstract] = ACTIONS(4335), [sym_alias] = ACTIONS(4335), [sym_align] = ACTIONS(4335), [sym_auto] = ACTIONS(4335), [sym_class] = ACTIONS(4335), [sym_const] = ACTIONS(4335), [sym_debug] = ACTIONS(4335), [sym_deprecated] = ACTIONS(4335), [sym_else] = ACTIONS(4335), [sym_enum] = ACTIONS(4335), [sym_export] = ACTIONS(4335), [sym_extern] = ACTIONS(4335), [sym_final] = ACTIONS(4335), [sym_immutable] = ACTIONS(4335), [sym_import] = ACTIONS(4335), [sym_inout] = ACTIONS(4335), [sym_interface] = ACTIONS(4335), [sym_invariant] = ACTIONS(4335), [sym_mixin] = ACTIONS(4335), [sym_nothrow] = ACTIONS(4335), [sym_override] = ACTIONS(4335), [sym_package] = ACTIONS(4335), [sym_pragma] = ACTIONS(4335), [sym_private] = ACTIONS(4335), [sym_protected] = ACTIONS(4335), [sym_public] = ACTIONS(4335), [sym_pure] = ACTIONS(4335), [sym_ref] = ACTIONS(4335), [sym_return] = ACTIONS(4335), [sym_scope] = ACTIONS(4335), [sym_shared] = ACTIONS(4335), [sym_static] = ACTIONS(4335), [sym_struct] = ACTIONS(4335), [sym_synchronized] = ACTIONS(4335), [sym_template] = ACTIONS(4335), [sym_typeof] = ACTIONS(4335), [sym_union] = ACTIONS(4335), [sym_unittest] = ACTIONS(4335), [sym_version] = ACTIONS(4335), [sym_while] = ACTIONS(4335), [sym_gshared] = ACTIONS(4335), [sym_traits] = ACTIONS(4335), [sym_vector] = ACTIONS(4335), [sym_void] = ACTIONS(4335), [sym_directive] = ACTIONS(3), }, [2856] = { [sym_identifier] = ACTIONS(4355), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4357), [anon_sym_DOT] = ACTIONS(4357), [anon_sym_SEMI] = ACTIONS(4357), [anon_sym_TILDE] = ACTIONS(4357), [anon_sym_AT] = ACTIONS(4357), [sym_bool] = ACTIONS(4355), [sym_byte] = ACTIONS(4355), [sym_ubyte] = ACTIONS(4355), [sym_char] = ACTIONS(4355), [sym_short] = ACTIONS(4355), [sym_ushort] = ACTIONS(4355), [sym_int] = ACTIONS(4355), [sym_uint] = ACTIONS(4355), [sym_long] = ACTIONS(4355), [sym_ulong] = ACTIONS(4355), [sym_cent] = ACTIONS(4355), [sym_ucent] = ACTIONS(4355), [sym_wchar] = ACTIONS(4355), [sym_dchar] = ACTIONS(4355), [sym_float] = ACTIONS(4355), [sym_double] = ACTIONS(4355), [sym_real] = ACTIONS(4355), [sym_ifloat] = ACTIONS(4355), [sym_idouble] = ACTIONS(4355), [sym_ireal] = ACTIONS(4355), [sym_cfloat] = ACTIONS(4355), [sym_cdouble] = ACTIONS(4355), [sym_creal] = ACTIONS(4355), [sym_size_t] = ACTIONS(4355), [sym_ptrdiff_t] = ACTIONS(4355), [sym_string] = ACTIONS(4355), [sym_cstring] = ACTIONS(4355), [sym_dstring] = ACTIONS(4355), [sym_wstring] = ACTIONS(4355), [sym_noreturn] = ACTIONS(4355), [sym_this] = ACTIONS(4355), [sym_abstract] = ACTIONS(4355), [sym_alias] = ACTIONS(4355), [sym_align] = ACTIONS(4355), [sym_auto] = ACTIONS(4355), [sym_class] = ACTIONS(4355), [sym_const] = ACTIONS(4355), [sym_debug] = ACTIONS(4355), [sym_deprecated] = ACTIONS(4355), [sym_else] = ACTIONS(4355), [sym_enum] = ACTIONS(4355), [sym_export] = ACTIONS(4355), [sym_extern] = ACTIONS(4355), [sym_final] = ACTIONS(4355), [sym_immutable] = ACTIONS(4355), [sym_import] = ACTIONS(4355), [sym_inout] = ACTIONS(4355), [sym_interface] = ACTIONS(4355), [sym_invariant] = ACTIONS(4355), [sym_mixin] = ACTIONS(4355), [sym_nothrow] = ACTIONS(4355), [sym_override] = ACTIONS(4355), [sym_package] = ACTIONS(4355), [sym_pragma] = ACTIONS(4355), [sym_private] = ACTIONS(4355), [sym_protected] = ACTIONS(4355), [sym_public] = ACTIONS(4355), [sym_pure] = ACTIONS(4355), [sym_ref] = ACTIONS(4355), [sym_return] = ACTIONS(4355), [sym_scope] = ACTIONS(4355), [sym_shared] = ACTIONS(4355), [sym_static] = ACTIONS(4355), [sym_struct] = ACTIONS(4355), [sym_synchronized] = ACTIONS(4355), [sym_template] = ACTIONS(4355), [sym_typeof] = ACTIONS(4355), [sym_union] = ACTIONS(4355), [sym_unittest] = ACTIONS(4355), [sym_version] = ACTIONS(4355), [sym_while] = ACTIONS(4355), [sym_gshared] = ACTIONS(4355), [sym_traits] = ACTIONS(4355), [sym_vector] = ACTIONS(4355), [sym_void] = ACTIONS(4355), [sym_directive] = ACTIONS(3), }, [2857] = { [sym_identifier] = ACTIONS(5068), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5070), [anon_sym_DOT] = ACTIONS(5070), [anon_sym_SEMI] = ACTIONS(5070), [anon_sym_TILDE] = ACTIONS(5070), [anon_sym_AT] = ACTIONS(5070), [sym_bool] = ACTIONS(5068), [sym_byte] = ACTIONS(5068), [sym_ubyte] = ACTIONS(5068), [sym_char] = ACTIONS(5068), [sym_short] = ACTIONS(5068), [sym_ushort] = ACTIONS(5068), [sym_int] = ACTIONS(5068), [sym_uint] = ACTIONS(5068), [sym_long] = ACTIONS(5068), [sym_ulong] = ACTIONS(5068), [sym_cent] = ACTIONS(5068), [sym_ucent] = ACTIONS(5068), [sym_wchar] = ACTIONS(5068), [sym_dchar] = ACTIONS(5068), [sym_float] = ACTIONS(5068), [sym_double] = ACTIONS(5068), [sym_real] = ACTIONS(5068), [sym_ifloat] = ACTIONS(5068), [sym_idouble] = ACTIONS(5068), [sym_ireal] = ACTIONS(5068), [sym_cfloat] = ACTIONS(5068), [sym_cdouble] = ACTIONS(5068), [sym_creal] = ACTIONS(5068), [sym_size_t] = ACTIONS(5068), [sym_ptrdiff_t] = ACTIONS(5068), [sym_string] = ACTIONS(5068), [sym_cstring] = ACTIONS(5068), [sym_dstring] = ACTIONS(5068), [sym_wstring] = ACTIONS(5068), [sym_noreturn] = ACTIONS(5068), [sym_this] = ACTIONS(5068), [sym_abstract] = ACTIONS(5068), [sym_alias] = ACTIONS(5068), [sym_align] = ACTIONS(5068), [sym_auto] = ACTIONS(5068), [sym_class] = ACTIONS(5068), [sym_const] = ACTIONS(5068), [sym_debug] = ACTIONS(5068), [sym_deprecated] = ACTIONS(5068), [sym_else] = ACTIONS(5068), [sym_enum] = ACTIONS(5068), [sym_export] = ACTIONS(5068), [sym_extern] = ACTIONS(5068), [sym_final] = ACTIONS(5068), [sym_immutable] = ACTIONS(5068), [sym_import] = ACTIONS(5068), [sym_inout] = ACTIONS(5068), [sym_interface] = ACTIONS(5068), [sym_invariant] = ACTIONS(5068), [sym_mixin] = ACTIONS(5068), [sym_nothrow] = ACTIONS(5068), [sym_override] = ACTIONS(5068), [sym_package] = ACTIONS(5068), [sym_pragma] = ACTIONS(5068), [sym_private] = ACTIONS(5068), [sym_protected] = ACTIONS(5068), [sym_public] = ACTIONS(5068), [sym_pure] = ACTIONS(5068), [sym_ref] = ACTIONS(5068), [sym_return] = ACTIONS(5068), [sym_scope] = ACTIONS(5068), [sym_shared] = ACTIONS(5068), [sym_static] = ACTIONS(5068), [sym_struct] = ACTIONS(5068), [sym_synchronized] = ACTIONS(5068), [sym_template] = ACTIONS(5068), [sym_typeof] = ACTIONS(5068), [sym_union] = ACTIONS(5068), [sym_unittest] = ACTIONS(5068), [sym_version] = ACTIONS(5068), [sym_while] = ACTIONS(5068), [sym_gshared] = ACTIONS(5068), [sym_traits] = ACTIONS(5068), [sym_vector] = ACTIONS(5068), [sym_void] = ACTIONS(5068), [sym_directive] = ACTIONS(3), }, [2858] = { [sym_switch_statement] = STATE(2196), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(1248), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2859] = { [sym_identifier] = ACTIONS(5113), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5115), [anon_sym_DOT] = ACTIONS(5115), [anon_sym_LPAREN] = ACTIONS(6785), [anon_sym_SEMI] = ACTIONS(5115), [anon_sym_COLON] = ACTIONS(5115), [anon_sym_TILDE] = ACTIONS(5115), [anon_sym_AT] = ACTIONS(5115), [sym_bool] = ACTIONS(5113), [sym_byte] = ACTIONS(5113), [sym_ubyte] = ACTIONS(5113), [sym_char] = ACTIONS(5113), [sym_short] = ACTIONS(5113), [sym_ushort] = ACTIONS(5113), [sym_int] = ACTIONS(5113), [sym_uint] = ACTIONS(5113), [sym_long] = ACTIONS(5113), [sym_ulong] = ACTIONS(5113), [sym_cent] = ACTIONS(5113), [sym_ucent] = ACTIONS(5113), [sym_wchar] = ACTIONS(5113), [sym_dchar] = ACTIONS(5113), [sym_float] = ACTIONS(5113), [sym_double] = ACTIONS(5113), [sym_real] = ACTIONS(5113), [sym_ifloat] = ACTIONS(5113), [sym_idouble] = ACTIONS(5113), [sym_ireal] = ACTIONS(5113), [sym_cfloat] = ACTIONS(5113), [sym_cdouble] = ACTIONS(5113), [sym_creal] = ACTIONS(5113), [sym_size_t] = ACTIONS(5113), [sym_ptrdiff_t] = ACTIONS(5113), [sym_string] = ACTIONS(5113), [sym_cstring] = ACTIONS(5113), [sym_dstring] = ACTIONS(5113), [sym_wstring] = ACTIONS(5113), [sym_noreturn] = ACTIONS(5113), [sym_this] = ACTIONS(5113), [sym_abstract] = ACTIONS(5113), [sym_alias] = ACTIONS(5113), [sym_align] = ACTIONS(5113), [sym_auto] = ACTIONS(5113), [sym_class] = ACTIONS(5113), [sym_const] = ACTIONS(5113), [sym_debug] = ACTIONS(5113), [sym_deprecated] = ACTIONS(5113), [sym_enum] = ACTIONS(5113), [sym_export] = ACTIONS(5113), [sym_extern] = ACTIONS(5113), [sym_final] = ACTIONS(5113), [sym_immutable] = ACTIONS(5113), [sym_import] = ACTIONS(5113), [sym_inout] = ACTIONS(5113), [sym_interface] = ACTIONS(5113), [sym_invariant] = ACTIONS(5113), [sym_mixin] = ACTIONS(5113), [sym_nothrow] = ACTIONS(5113), [sym_override] = ACTIONS(5113), [sym_package] = ACTIONS(5113), [sym_pragma] = ACTIONS(5113), [sym_private] = ACTIONS(5113), [sym_protected] = ACTIONS(5113), [sym_public] = ACTIONS(5113), [sym_pure] = ACTIONS(5113), [sym_ref] = ACTIONS(5113), [sym_return] = ACTIONS(5113), [sym_scope] = ACTIONS(5113), [sym_shared] = ACTIONS(5113), [sym_static] = ACTIONS(5113), [sym_struct] = ACTIONS(5113), [sym_synchronized] = ACTIONS(5113), [sym_template] = ACTIONS(5113), [sym_typeof] = ACTIONS(5113), [sym_union] = ACTIONS(5113), [sym_unittest] = ACTIONS(5113), [sym_version] = ACTIONS(5113), [sym_gshared] = ACTIONS(5113), [sym_traits] = ACTIONS(5113), [sym_vector] = ACTIONS(5113), [sym_void] = ACTIONS(5113), [sym_directive] = ACTIONS(3), }, [2860] = { [sym_identifier] = ACTIONS(4414), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4416), [anon_sym_DOT] = ACTIONS(4416), [anon_sym_SEMI] = ACTIONS(4416), [anon_sym_TILDE] = ACTIONS(4416), [anon_sym_AT] = ACTIONS(4416), [sym_bool] = ACTIONS(4414), [sym_byte] = ACTIONS(4414), [sym_ubyte] = ACTIONS(4414), [sym_char] = ACTIONS(4414), [sym_short] = ACTIONS(4414), [sym_ushort] = ACTIONS(4414), [sym_int] = ACTIONS(4414), [sym_uint] = ACTIONS(4414), [sym_long] = ACTIONS(4414), [sym_ulong] = ACTIONS(4414), [sym_cent] = ACTIONS(4414), [sym_ucent] = ACTIONS(4414), [sym_wchar] = ACTIONS(4414), [sym_dchar] = ACTIONS(4414), [sym_float] = ACTIONS(4414), [sym_double] = ACTIONS(4414), [sym_real] = ACTIONS(4414), [sym_ifloat] = ACTIONS(4414), [sym_idouble] = ACTIONS(4414), [sym_ireal] = ACTIONS(4414), [sym_cfloat] = ACTIONS(4414), [sym_cdouble] = ACTIONS(4414), [sym_creal] = ACTIONS(4414), [sym_size_t] = ACTIONS(4414), [sym_ptrdiff_t] = ACTIONS(4414), [sym_string] = ACTIONS(4414), [sym_cstring] = ACTIONS(4414), [sym_dstring] = ACTIONS(4414), [sym_wstring] = ACTIONS(4414), [sym_noreturn] = ACTIONS(4414), [sym_this] = ACTIONS(4414), [sym_abstract] = ACTIONS(4414), [sym_alias] = ACTIONS(4414), [sym_align] = ACTIONS(4414), [sym_auto] = ACTIONS(4414), [sym_class] = ACTIONS(4414), [sym_const] = ACTIONS(4414), [sym_debug] = ACTIONS(4414), [sym_deprecated] = ACTIONS(4414), [sym_else] = ACTIONS(4414), [sym_enum] = ACTIONS(4414), [sym_export] = ACTIONS(4414), [sym_extern] = ACTIONS(4414), [sym_final] = ACTIONS(4414), [sym_immutable] = ACTIONS(4414), [sym_import] = ACTIONS(4414), [sym_inout] = ACTIONS(4414), [sym_interface] = ACTIONS(4414), [sym_invariant] = ACTIONS(4414), [sym_mixin] = ACTIONS(4414), [sym_nothrow] = ACTIONS(4414), [sym_override] = ACTIONS(4414), [sym_package] = ACTIONS(4414), [sym_pragma] = ACTIONS(4414), [sym_private] = ACTIONS(4414), [sym_protected] = ACTIONS(4414), [sym_public] = ACTIONS(4414), [sym_pure] = ACTIONS(4414), [sym_ref] = ACTIONS(4414), [sym_return] = ACTIONS(4414), [sym_scope] = ACTIONS(4414), [sym_shared] = ACTIONS(4414), [sym_static] = ACTIONS(4414), [sym_struct] = ACTIONS(4414), [sym_synchronized] = ACTIONS(4414), [sym_template] = ACTIONS(4414), [sym_typeof] = ACTIONS(4414), [sym_union] = ACTIONS(4414), [sym_unittest] = ACTIONS(4414), [sym_version] = ACTIONS(4414), [sym_while] = ACTIONS(4414), [sym_gshared] = ACTIONS(4414), [sym_traits] = ACTIONS(4414), [sym_vector] = ACTIONS(4414), [sym_void] = ACTIONS(4414), [sym_directive] = ACTIONS(3), }, [2861] = { [sym_identifier] = ACTIONS(4418), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4420), [anon_sym_DOT] = ACTIONS(4420), [anon_sym_SEMI] = ACTIONS(4420), [anon_sym_TILDE] = ACTIONS(4420), [anon_sym_AT] = ACTIONS(4420), [sym_bool] = ACTIONS(4418), [sym_byte] = ACTIONS(4418), [sym_ubyte] = ACTIONS(4418), [sym_char] = ACTIONS(4418), [sym_short] = ACTIONS(4418), [sym_ushort] = ACTIONS(4418), [sym_int] = ACTIONS(4418), [sym_uint] = ACTIONS(4418), [sym_long] = ACTIONS(4418), [sym_ulong] = ACTIONS(4418), [sym_cent] = ACTIONS(4418), [sym_ucent] = ACTIONS(4418), [sym_wchar] = ACTIONS(4418), [sym_dchar] = ACTIONS(4418), [sym_float] = ACTIONS(4418), [sym_double] = ACTIONS(4418), [sym_real] = ACTIONS(4418), [sym_ifloat] = ACTIONS(4418), [sym_idouble] = ACTIONS(4418), [sym_ireal] = ACTIONS(4418), [sym_cfloat] = ACTIONS(4418), [sym_cdouble] = ACTIONS(4418), [sym_creal] = ACTIONS(4418), [sym_size_t] = ACTIONS(4418), [sym_ptrdiff_t] = ACTIONS(4418), [sym_string] = ACTIONS(4418), [sym_cstring] = ACTIONS(4418), [sym_dstring] = ACTIONS(4418), [sym_wstring] = ACTIONS(4418), [sym_noreturn] = ACTIONS(4418), [sym_this] = ACTIONS(4418), [sym_abstract] = ACTIONS(4418), [sym_alias] = ACTIONS(4418), [sym_align] = ACTIONS(4418), [sym_auto] = ACTIONS(4418), [sym_class] = ACTIONS(4418), [sym_const] = ACTIONS(4418), [sym_debug] = ACTIONS(4418), [sym_deprecated] = ACTIONS(4418), [sym_else] = ACTIONS(4418), [sym_enum] = ACTIONS(4418), [sym_export] = ACTIONS(4418), [sym_extern] = ACTIONS(4418), [sym_final] = ACTIONS(4418), [sym_immutable] = ACTIONS(4418), [sym_import] = ACTIONS(4418), [sym_inout] = ACTIONS(4418), [sym_interface] = ACTIONS(4418), [sym_invariant] = ACTIONS(4418), [sym_mixin] = ACTIONS(4418), [sym_nothrow] = ACTIONS(4418), [sym_override] = ACTIONS(4418), [sym_package] = ACTIONS(4418), [sym_pragma] = ACTIONS(4418), [sym_private] = ACTIONS(4418), [sym_protected] = ACTIONS(4418), [sym_public] = ACTIONS(4418), [sym_pure] = ACTIONS(4418), [sym_ref] = ACTIONS(4418), [sym_return] = ACTIONS(4418), [sym_scope] = ACTIONS(4418), [sym_shared] = ACTIONS(4418), [sym_static] = ACTIONS(4418), [sym_struct] = ACTIONS(4418), [sym_synchronized] = ACTIONS(4418), [sym_template] = ACTIONS(4418), [sym_typeof] = ACTIONS(4418), [sym_union] = ACTIONS(4418), [sym_unittest] = ACTIONS(4418), [sym_version] = ACTIONS(4418), [sym_while] = ACTIONS(4418), [sym_gshared] = ACTIONS(4418), [sym_traits] = ACTIONS(4418), [sym_vector] = ACTIONS(4418), [sym_void] = ACTIONS(4418), [sym_directive] = ACTIONS(3), }, [2862] = { [sym_identifier] = ACTIONS(4456), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4458), [anon_sym_DOT] = ACTIONS(4458), [anon_sym_SEMI] = ACTIONS(4458), [anon_sym_TILDE] = ACTIONS(4458), [anon_sym_AT] = ACTIONS(4458), [sym_bool] = ACTIONS(4456), [sym_byte] = ACTIONS(4456), [sym_ubyte] = ACTIONS(4456), [sym_char] = ACTIONS(4456), [sym_short] = ACTIONS(4456), [sym_ushort] = ACTIONS(4456), [sym_int] = ACTIONS(4456), [sym_uint] = ACTIONS(4456), [sym_long] = ACTIONS(4456), [sym_ulong] = ACTIONS(4456), [sym_cent] = ACTIONS(4456), [sym_ucent] = ACTIONS(4456), [sym_wchar] = ACTIONS(4456), [sym_dchar] = ACTIONS(4456), [sym_float] = ACTIONS(4456), [sym_double] = ACTIONS(4456), [sym_real] = ACTIONS(4456), [sym_ifloat] = ACTIONS(4456), [sym_idouble] = ACTIONS(4456), [sym_ireal] = ACTIONS(4456), [sym_cfloat] = ACTIONS(4456), [sym_cdouble] = ACTIONS(4456), [sym_creal] = ACTIONS(4456), [sym_size_t] = ACTIONS(4456), [sym_ptrdiff_t] = ACTIONS(4456), [sym_string] = ACTIONS(4456), [sym_cstring] = ACTIONS(4456), [sym_dstring] = ACTIONS(4456), [sym_wstring] = ACTIONS(4456), [sym_noreturn] = ACTIONS(4456), [sym_this] = ACTIONS(4456), [sym_abstract] = ACTIONS(4456), [sym_alias] = ACTIONS(4456), [sym_align] = ACTIONS(4456), [sym_auto] = ACTIONS(4456), [sym_class] = ACTIONS(4456), [sym_const] = ACTIONS(4456), [sym_debug] = ACTIONS(4456), [sym_deprecated] = ACTIONS(4456), [sym_else] = ACTIONS(4456), [sym_enum] = ACTIONS(4456), [sym_export] = ACTIONS(4456), [sym_extern] = ACTIONS(4456), [sym_final] = ACTIONS(4456), [sym_immutable] = ACTIONS(4456), [sym_import] = ACTIONS(4456), [sym_inout] = ACTIONS(4456), [sym_interface] = ACTIONS(4456), [sym_invariant] = ACTIONS(4456), [sym_mixin] = ACTIONS(4456), [sym_nothrow] = ACTIONS(4456), [sym_override] = ACTIONS(4456), [sym_package] = ACTIONS(4456), [sym_pragma] = ACTIONS(4456), [sym_private] = ACTIONS(4456), [sym_protected] = ACTIONS(4456), [sym_public] = ACTIONS(4456), [sym_pure] = ACTIONS(4456), [sym_ref] = ACTIONS(4456), [sym_return] = ACTIONS(4456), [sym_scope] = ACTIONS(4456), [sym_shared] = ACTIONS(4456), [sym_static] = ACTIONS(4456), [sym_struct] = ACTIONS(4456), [sym_synchronized] = ACTIONS(4456), [sym_template] = ACTIONS(4456), [sym_typeof] = ACTIONS(4456), [sym_union] = ACTIONS(4456), [sym_unittest] = ACTIONS(4456), [sym_version] = ACTIONS(4456), [sym_while] = ACTIONS(4456), [sym_gshared] = ACTIONS(4456), [sym_traits] = ACTIONS(4456), [sym_vector] = ACTIONS(4456), [sym_void] = ACTIONS(4456), [sym_directive] = ACTIONS(3), }, [2863] = { [ts_builtin_sym_end] = ACTIONS(4448), [sym_identifier] = ACTIONS(4446), [sym_end_file] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [anon_sym_AT] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_abstract] = ACTIONS(4446), [sym_alias] = ACTIONS(4446), [sym_align] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_class] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_debug] = ACTIONS(4446), [sym_deprecated] = ACTIONS(4446), [sym_else] = ACTIONS(6821), [sym_enum] = ACTIONS(4446), [sym_export] = ACTIONS(4446), [sym_extern] = ACTIONS(4446), [sym_final] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_interface] = ACTIONS(4446), [sym_invariant] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_nothrow] = ACTIONS(4446), [sym_override] = ACTIONS(4446), [sym_package] = ACTIONS(4446), [sym_pragma] = ACTIONS(4446), [sym_private] = ACTIONS(4446), [sym_protected] = ACTIONS(4446), [sym_public] = ACTIONS(4446), [sym_pure] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_return] = ACTIONS(4446), [sym_scope] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_static] = ACTIONS(4446), [sym_struct] = ACTIONS(4446), [sym_synchronized] = ACTIONS(4446), [sym_template] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_union] = ACTIONS(4446), [sym_unittest] = ACTIONS(4446), [sym_version] = ACTIONS(4446), [sym_gshared] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [sym_directive] = ACTIONS(3), }, [2864] = { [sym_identifier] = ACTIONS(4464), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4466), [anon_sym_DOT] = ACTIONS(4466), [anon_sym_SEMI] = ACTIONS(4466), [anon_sym_TILDE] = ACTIONS(4466), [anon_sym_AT] = ACTIONS(4466), [sym_bool] = ACTIONS(4464), [sym_byte] = ACTIONS(4464), [sym_ubyte] = ACTIONS(4464), [sym_char] = ACTIONS(4464), [sym_short] = ACTIONS(4464), [sym_ushort] = ACTIONS(4464), [sym_int] = ACTIONS(4464), [sym_uint] = ACTIONS(4464), [sym_long] = ACTIONS(4464), [sym_ulong] = ACTIONS(4464), [sym_cent] = ACTIONS(4464), [sym_ucent] = ACTIONS(4464), [sym_wchar] = ACTIONS(4464), [sym_dchar] = ACTIONS(4464), [sym_float] = ACTIONS(4464), [sym_double] = ACTIONS(4464), [sym_real] = ACTIONS(4464), [sym_ifloat] = ACTIONS(4464), [sym_idouble] = ACTIONS(4464), [sym_ireal] = ACTIONS(4464), [sym_cfloat] = ACTIONS(4464), [sym_cdouble] = ACTIONS(4464), [sym_creal] = ACTIONS(4464), [sym_size_t] = ACTIONS(4464), [sym_ptrdiff_t] = ACTIONS(4464), [sym_string] = ACTIONS(4464), [sym_cstring] = ACTIONS(4464), [sym_dstring] = ACTIONS(4464), [sym_wstring] = ACTIONS(4464), [sym_noreturn] = ACTIONS(4464), [sym_this] = ACTIONS(4464), [sym_abstract] = ACTIONS(4464), [sym_alias] = ACTIONS(4464), [sym_align] = ACTIONS(4464), [sym_auto] = ACTIONS(4464), [sym_class] = ACTIONS(4464), [sym_const] = ACTIONS(4464), [sym_debug] = ACTIONS(4464), [sym_deprecated] = ACTIONS(4464), [sym_else] = ACTIONS(4464), [sym_enum] = ACTIONS(4464), [sym_export] = ACTIONS(4464), [sym_extern] = ACTIONS(4464), [sym_final] = ACTIONS(4464), [sym_immutable] = ACTIONS(4464), [sym_import] = ACTIONS(4464), [sym_inout] = ACTIONS(4464), [sym_interface] = ACTIONS(4464), [sym_invariant] = ACTIONS(4464), [sym_mixin] = ACTIONS(4464), [sym_nothrow] = ACTIONS(4464), [sym_override] = ACTIONS(4464), [sym_package] = ACTIONS(4464), [sym_pragma] = ACTIONS(4464), [sym_private] = ACTIONS(4464), [sym_protected] = ACTIONS(4464), [sym_public] = ACTIONS(4464), [sym_pure] = ACTIONS(4464), [sym_ref] = ACTIONS(4464), [sym_return] = ACTIONS(4464), [sym_scope] = ACTIONS(4464), [sym_shared] = ACTIONS(4464), [sym_static] = ACTIONS(4464), [sym_struct] = ACTIONS(4464), [sym_synchronized] = ACTIONS(4464), [sym_template] = ACTIONS(4464), [sym_typeof] = ACTIONS(4464), [sym_union] = ACTIONS(4464), [sym_unittest] = ACTIONS(4464), [sym_version] = ACTIONS(4464), [sym_while] = ACTIONS(4464), [sym_gshared] = ACTIONS(4464), [sym_traits] = ACTIONS(4464), [sym_vector] = ACTIONS(4464), [sym_void] = ACTIONS(4464), [sym_directive] = ACTIONS(3), }, [2865] = { [sym_identifier] = ACTIONS(4472), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4474), [anon_sym_DOT] = ACTIONS(4474), [anon_sym_SEMI] = ACTIONS(4474), [anon_sym_TILDE] = ACTIONS(4474), [anon_sym_AT] = ACTIONS(4474), [sym_bool] = ACTIONS(4472), [sym_byte] = ACTIONS(4472), [sym_ubyte] = ACTIONS(4472), [sym_char] = ACTIONS(4472), [sym_short] = ACTIONS(4472), [sym_ushort] = ACTIONS(4472), [sym_int] = ACTIONS(4472), [sym_uint] = ACTIONS(4472), [sym_long] = ACTIONS(4472), [sym_ulong] = ACTIONS(4472), [sym_cent] = ACTIONS(4472), [sym_ucent] = ACTIONS(4472), [sym_wchar] = ACTIONS(4472), [sym_dchar] = ACTIONS(4472), [sym_float] = ACTIONS(4472), [sym_double] = ACTIONS(4472), [sym_real] = ACTIONS(4472), [sym_ifloat] = ACTIONS(4472), [sym_idouble] = ACTIONS(4472), [sym_ireal] = ACTIONS(4472), [sym_cfloat] = ACTIONS(4472), [sym_cdouble] = ACTIONS(4472), [sym_creal] = ACTIONS(4472), [sym_size_t] = ACTIONS(4472), [sym_ptrdiff_t] = ACTIONS(4472), [sym_string] = ACTIONS(4472), [sym_cstring] = ACTIONS(4472), [sym_dstring] = ACTIONS(4472), [sym_wstring] = ACTIONS(4472), [sym_noreturn] = ACTIONS(4472), [sym_this] = ACTIONS(4472), [sym_abstract] = ACTIONS(4472), [sym_alias] = ACTIONS(4472), [sym_align] = ACTIONS(4472), [sym_auto] = ACTIONS(4472), [sym_class] = ACTIONS(4472), [sym_const] = ACTIONS(4472), [sym_debug] = ACTIONS(4472), [sym_deprecated] = ACTIONS(4472), [sym_else] = ACTIONS(4472), [sym_enum] = ACTIONS(4472), [sym_export] = ACTIONS(4472), [sym_extern] = ACTIONS(4472), [sym_final] = ACTIONS(4472), [sym_immutable] = ACTIONS(4472), [sym_import] = ACTIONS(4472), [sym_inout] = ACTIONS(4472), [sym_interface] = ACTIONS(4472), [sym_invariant] = ACTIONS(4472), [sym_mixin] = ACTIONS(4472), [sym_nothrow] = ACTIONS(4472), [sym_override] = ACTIONS(4472), [sym_package] = ACTIONS(4472), [sym_pragma] = ACTIONS(4472), [sym_private] = ACTIONS(4472), [sym_protected] = ACTIONS(4472), [sym_public] = ACTIONS(4472), [sym_pure] = ACTIONS(4472), [sym_ref] = ACTIONS(4472), [sym_return] = ACTIONS(4472), [sym_scope] = ACTIONS(4472), [sym_shared] = ACTIONS(4472), [sym_static] = ACTIONS(4472), [sym_struct] = ACTIONS(4472), [sym_synchronized] = ACTIONS(4472), [sym_template] = ACTIONS(4472), [sym_typeof] = ACTIONS(4472), [sym_union] = ACTIONS(4472), [sym_unittest] = ACTIONS(4472), [sym_version] = ACTIONS(4472), [sym_while] = ACTIONS(4472), [sym_gshared] = ACTIONS(4472), [sym_traits] = ACTIONS(4472), [sym_vector] = ACTIONS(4472), [sym_void] = ACTIONS(4472), [sym_directive] = ACTIONS(3), }, [2866] = { [sym_identifier] = ACTIONS(4496), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4498), [anon_sym_DOT] = ACTIONS(4498), [anon_sym_SEMI] = ACTIONS(4498), [anon_sym_TILDE] = ACTIONS(4498), [anon_sym_AT] = ACTIONS(4498), [sym_bool] = ACTIONS(4496), [sym_byte] = ACTIONS(4496), [sym_ubyte] = ACTIONS(4496), [sym_char] = ACTIONS(4496), [sym_short] = ACTIONS(4496), [sym_ushort] = ACTIONS(4496), [sym_int] = ACTIONS(4496), [sym_uint] = ACTIONS(4496), [sym_long] = ACTIONS(4496), [sym_ulong] = ACTIONS(4496), [sym_cent] = ACTIONS(4496), [sym_ucent] = ACTIONS(4496), [sym_wchar] = ACTIONS(4496), [sym_dchar] = ACTIONS(4496), [sym_float] = ACTIONS(4496), [sym_double] = ACTIONS(4496), [sym_real] = ACTIONS(4496), [sym_ifloat] = ACTIONS(4496), [sym_idouble] = ACTIONS(4496), [sym_ireal] = ACTIONS(4496), [sym_cfloat] = ACTIONS(4496), [sym_cdouble] = ACTIONS(4496), [sym_creal] = ACTIONS(4496), [sym_size_t] = ACTIONS(4496), [sym_ptrdiff_t] = ACTIONS(4496), [sym_string] = ACTIONS(4496), [sym_cstring] = ACTIONS(4496), [sym_dstring] = ACTIONS(4496), [sym_wstring] = ACTIONS(4496), [sym_noreturn] = ACTIONS(4496), [sym_this] = ACTIONS(4496), [sym_abstract] = ACTIONS(4496), [sym_alias] = ACTIONS(4496), [sym_align] = ACTIONS(4496), [sym_auto] = ACTIONS(4496), [sym_class] = ACTIONS(4496), [sym_const] = ACTIONS(4496), [sym_debug] = ACTIONS(4496), [sym_deprecated] = ACTIONS(4496), [sym_else] = ACTIONS(4496), [sym_enum] = ACTIONS(4496), [sym_export] = ACTIONS(4496), [sym_extern] = ACTIONS(4496), [sym_final] = ACTIONS(4496), [sym_immutable] = ACTIONS(4496), [sym_import] = ACTIONS(4496), [sym_inout] = ACTIONS(4496), [sym_interface] = ACTIONS(4496), [sym_invariant] = ACTIONS(4496), [sym_mixin] = ACTIONS(4496), [sym_nothrow] = ACTIONS(4496), [sym_override] = ACTIONS(4496), [sym_package] = ACTIONS(4496), [sym_pragma] = ACTIONS(4496), [sym_private] = ACTIONS(4496), [sym_protected] = ACTIONS(4496), [sym_public] = ACTIONS(4496), [sym_pure] = ACTIONS(4496), [sym_ref] = ACTIONS(4496), [sym_return] = ACTIONS(4496), [sym_scope] = ACTIONS(4496), [sym_shared] = ACTIONS(4496), [sym_static] = ACTIONS(4496), [sym_struct] = ACTIONS(4496), [sym_synchronized] = ACTIONS(4496), [sym_template] = ACTIONS(4496), [sym_typeof] = ACTIONS(4496), [sym_union] = ACTIONS(4496), [sym_unittest] = ACTIONS(4496), [sym_version] = ACTIONS(4496), [sym_while] = ACTIONS(4496), [sym_gshared] = ACTIONS(4496), [sym_traits] = ACTIONS(4496), [sym_vector] = ACTIONS(4496), [sym_void] = ACTIONS(4496), [sym_directive] = ACTIONS(3), }, [2867] = { [sym_identifier] = ACTIONS(4500), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4502), [anon_sym_DOT] = ACTIONS(4502), [anon_sym_SEMI] = ACTIONS(4502), [anon_sym_TILDE] = ACTIONS(4502), [anon_sym_AT] = ACTIONS(4502), [sym_bool] = ACTIONS(4500), [sym_byte] = ACTIONS(4500), [sym_ubyte] = ACTIONS(4500), [sym_char] = ACTIONS(4500), [sym_short] = ACTIONS(4500), [sym_ushort] = ACTIONS(4500), [sym_int] = ACTIONS(4500), [sym_uint] = ACTIONS(4500), [sym_long] = ACTIONS(4500), [sym_ulong] = ACTIONS(4500), [sym_cent] = ACTIONS(4500), [sym_ucent] = ACTIONS(4500), [sym_wchar] = ACTIONS(4500), [sym_dchar] = ACTIONS(4500), [sym_float] = ACTIONS(4500), [sym_double] = ACTIONS(4500), [sym_real] = ACTIONS(4500), [sym_ifloat] = ACTIONS(4500), [sym_idouble] = ACTIONS(4500), [sym_ireal] = ACTIONS(4500), [sym_cfloat] = ACTIONS(4500), [sym_cdouble] = ACTIONS(4500), [sym_creal] = ACTIONS(4500), [sym_size_t] = ACTIONS(4500), [sym_ptrdiff_t] = ACTIONS(4500), [sym_string] = ACTIONS(4500), [sym_cstring] = ACTIONS(4500), [sym_dstring] = ACTIONS(4500), [sym_wstring] = ACTIONS(4500), [sym_noreturn] = ACTIONS(4500), [sym_this] = ACTIONS(4500), [sym_abstract] = ACTIONS(4500), [sym_alias] = ACTIONS(4500), [sym_align] = ACTIONS(4500), [sym_auto] = ACTIONS(4500), [sym_class] = ACTIONS(4500), [sym_const] = ACTIONS(4500), [sym_debug] = ACTIONS(4500), [sym_deprecated] = ACTIONS(4500), [sym_else] = ACTIONS(4500), [sym_enum] = ACTIONS(4500), [sym_export] = ACTIONS(4500), [sym_extern] = ACTIONS(4500), [sym_final] = ACTIONS(4500), [sym_immutable] = ACTIONS(4500), [sym_import] = ACTIONS(4500), [sym_inout] = ACTIONS(4500), [sym_interface] = ACTIONS(4500), [sym_invariant] = ACTIONS(4500), [sym_mixin] = ACTIONS(4500), [sym_nothrow] = ACTIONS(4500), [sym_override] = ACTIONS(4500), [sym_package] = ACTIONS(4500), [sym_pragma] = ACTIONS(4500), [sym_private] = ACTIONS(4500), [sym_protected] = ACTIONS(4500), [sym_public] = ACTIONS(4500), [sym_pure] = ACTIONS(4500), [sym_ref] = ACTIONS(4500), [sym_return] = ACTIONS(4500), [sym_scope] = ACTIONS(4500), [sym_shared] = ACTIONS(4500), [sym_static] = ACTIONS(4500), [sym_struct] = ACTIONS(4500), [sym_synchronized] = ACTIONS(4500), [sym_template] = ACTIONS(4500), [sym_typeof] = ACTIONS(4500), [sym_union] = ACTIONS(4500), [sym_unittest] = ACTIONS(4500), [sym_version] = ACTIONS(4500), [sym_while] = ACTIONS(4500), [sym_gshared] = ACTIONS(4500), [sym_traits] = ACTIONS(4500), [sym_vector] = ACTIONS(4500), [sym_void] = ACTIONS(4500), [sym_directive] = ACTIONS(3), }, [2868] = { [sym_identifier] = ACTIONS(4512), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4514), [anon_sym_DOT] = ACTIONS(4514), [anon_sym_SEMI] = ACTIONS(4514), [anon_sym_TILDE] = ACTIONS(4514), [anon_sym_AT] = ACTIONS(4514), [sym_bool] = ACTIONS(4512), [sym_byte] = ACTIONS(4512), [sym_ubyte] = ACTIONS(4512), [sym_char] = ACTIONS(4512), [sym_short] = ACTIONS(4512), [sym_ushort] = ACTIONS(4512), [sym_int] = ACTIONS(4512), [sym_uint] = ACTIONS(4512), [sym_long] = ACTIONS(4512), [sym_ulong] = ACTIONS(4512), [sym_cent] = ACTIONS(4512), [sym_ucent] = ACTIONS(4512), [sym_wchar] = ACTIONS(4512), [sym_dchar] = ACTIONS(4512), [sym_float] = ACTIONS(4512), [sym_double] = ACTIONS(4512), [sym_real] = ACTIONS(4512), [sym_ifloat] = ACTIONS(4512), [sym_idouble] = ACTIONS(4512), [sym_ireal] = ACTIONS(4512), [sym_cfloat] = ACTIONS(4512), [sym_cdouble] = ACTIONS(4512), [sym_creal] = ACTIONS(4512), [sym_size_t] = ACTIONS(4512), [sym_ptrdiff_t] = ACTIONS(4512), [sym_string] = ACTIONS(4512), [sym_cstring] = ACTIONS(4512), [sym_dstring] = ACTIONS(4512), [sym_wstring] = ACTIONS(4512), [sym_noreturn] = ACTIONS(4512), [sym_this] = ACTIONS(4512), [sym_abstract] = ACTIONS(4512), [sym_alias] = ACTIONS(4512), [sym_align] = ACTIONS(4512), [sym_auto] = ACTIONS(4512), [sym_class] = ACTIONS(4512), [sym_const] = ACTIONS(4512), [sym_debug] = ACTIONS(4512), [sym_deprecated] = ACTIONS(4512), [sym_else] = ACTIONS(4512), [sym_enum] = ACTIONS(4512), [sym_export] = ACTIONS(4512), [sym_extern] = ACTIONS(4512), [sym_final] = ACTIONS(4512), [sym_immutable] = ACTIONS(4512), [sym_import] = ACTIONS(4512), [sym_inout] = ACTIONS(4512), [sym_interface] = ACTIONS(4512), [sym_invariant] = ACTIONS(4512), [sym_mixin] = ACTIONS(4512), [sym_nothrow] = ACTIONS(4512), [sym_override] = ACTIONS(4512), [sym_package] = ACTIONS(4512), [sym_pragma] = ACTIONS(4512), [sym_private] = ACTIONS(4512), [sym_protected] = ACTIONS(4512), [sym_public] = ACTIONS(4512), [sym_pure] = ACTIONS(4512), [sym_ref] = ACTIONS(4512), [sym_return] = ACTIONS(4512), [sym_scope] = ACTIONS(4512), [sym_shared] = ACTIONS(4512), [sym_static] = ACTIONS(4512), [sym_struct] = ACTIONS(4512), [sym_synchronized] = ACTIONS(4512), [sym_template] = ACTIONS(4512), [sym_typeof] = ACTIONS(4512), [sym_union] = ACTIONS(4512), [sym_unittest] = ACTIONS(4512), [sym_version] = ACTIONS(4512), [sym_while] = ACTIONS(4512), [sym_gshared] = ACTIONS(4512), [sym_traits] = ACTIONS(4512), [sym_vector] = ACTIONS(4512), [sym_void] = ACTIONS(4512), [sym_directive] = ACTIONS(3), }, [2869] = { [sym_identifier] = ACTIONS(4520), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4522), [anon_sym_DOT] = ACTIONS(4522), [anon_sym_SEMI] = ACTIONS(4522), [anon_sym_TILDE] = ACTIONS(4522), [anon_sym_AT] = ACTIONS(4522), [sym_bool] = ACTIONS(4520), [sym_byte] = ACTIONS(4520), [sym_ubyte] = ACTIONS(4520), [sym_char] = ACTIONS(4520), [sym_short] = ACTIONS(4520), [sym_ushort] = ACTIONS(4520), [sym_int] = ACTIONS(4520), [sym_uint] = ACTIONS(4520), [sym_long] = ACTIONS(4520), [sym_ulong] = ACTIONS(4520), [sym_cent] = ACTIONS(4520), [sym_ucent] = ACTIONS(4520), [sym_wchar] = ACTIONS(4520), [sym_dchar] = ACTIONS(4520), [sym_float] = ACTIONS(4520), [sym_double] = ACTIONS(4520), [sym_real] = ACTIONS(4520), [sym_ifloat] = ACTIONS(4520), [sym_idouble] = ACTIONS(4520), [sym_ireal] = ACTIONS(4520), [sym_cfloat] = ACTIONS(4520), [sym_cdouble] = ACTIONS(4520), [sym_creal] = ACTIONS(4520), [sym_size_t] = ACTIONS(4520), [sym_ptrdiff_t] = ACTIONS(4520), [sym_string] = ACTIONS(4520), [sym_cstring] = ACTIONS(4520), [sym_dstring] = ACTIONS(4520), [sym_wstring] = ACTIONS(4520), [sym_noreturn] = ACTIONS(4520), [sym_this] = ACTIONS(4520), [sym_abstract] = ACTIONS(4520), [sym_alias] = ACTIONS(4520), [sym_align] = ACTIONS(4520), [sym_auto] = ACTIONS(4520), [sym_class] = ACTIONS(4520), [sym_const] = ACTIONS(4520), [sym_debug] = ACTIONS(4520), [sym_deprecated] = ACTIONS(4520), [sym_else] = ACTIONS(4520), [sym_enum] = ACTIONS(4520), [sym_export] = ACTIONS(4520), [sym_extern] = ACTIONS(4520), [sym_final] = ACTIONS(4520), [sym_immutable] = ACTIONS(4520), [sym_import] = ACTIONS(4520), [sym_inout] = ACTIONS(4520), [sym_interface] = ACTIONS(4520), [sym_invariant] = ACTIONS(4520), [sym_mixin] = ACTIONS(4520), [sym_nothrow] = ACTIONS(4520), [sym_override] = ACTIONS(4520), [sym_package] = ACTIONS(4520), [sym_pragma] = ACTIONS(4520), [sym_private] = ACTIONS(4520), [sym_protected] = ACTIONS(4520), [sym_public] = ACTIONS(4520), [sym_pure] = ACTIONS(4520), [sym_ref] = ACTIONS(4520), [sym_return] = ACTIONS(4520), [sym_scope] = ACTIONS(4520), [sym_shared] = ACTIONS(4520), [sym_static] = ACTIONS(4520), [sym_struct] = ACTIONS(4520), [sym_synchronized] = ACTIONS(4520), [sym_template] = ACTIONS(4520), [sym_typeof] = ACTIONS(4520), [sym_union] = ACTIONS(4520), [sym_unittest] = ACTIONS(4520), [sym_version] = ACTIONS(4520), [sym_while] = ACTIONS(4520), [sym_gshared] = ACTIONS(4520), [sym_traits] = ACTIONS(4520), [sym_vector] = ACTIONS(4520), [sym_void] = ACTIONS(4520), [sym_directive] = ACTIONS(3), }, [2870] = { [sym_identifier] = ACTIONS(4534), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4536), [anon_sym_DOT] = ACTIONS(4536), [anon_sym_SEMI] = ACTIONS(4536), [anon_sym_TILDE] = ACTIONS(4536), [anon_sym_AT] = ACTIONS(4536), [sym_bool] = ACTIONS(4534), [sym_byte] = ACTIONS(4534), [sym_ubyte] = ACTIONS(4534), [sym_char] = ACTIONS(4534), [sym_short] = ACTIONS(4534), [sym_ushort] = ACTIONS(4534), [sym_int] = ACTIONS(4534), [sym_uint] = ACTIONS(4534), [sym_long] = ACTIONS(4534), [sym_ulong] = ACTIONS(4534), [sym_cent] = ACTIONS(4534), [sym_ucent] = ACTIONS(4534), [sym_wchar] = ACTIONS(4534), [sym_dchar] = ACTIONS(4534), [sym_float] = ACTIONS(4534), [sym_double] = ACTIONS(4534), [sym_real] = ACTIONS(4534), [sym_ifloat] = ACTIONS(4534), [sym_idouble] = ACTIONS(4534), [sym_ireal] = ACTIONS(4534), [sym_cfloat] = ACTIONS(4534), [sym_cdouble] = ACTIONS(4534), [sym_creal] = ACTIONS(4534), [sym_size_t] = ACTIONS(4534), [sym_ptrdiff_t] = ACTIONS(4534), [sym_string] = ACTIONS(4534), [sym_cstring] = ACTIONS(4534), [sym_dstring] = ACTIONS(4534), [sym_wstring] = ACTIONS(4534), [sym_noreturn] = ACTIONS(4534), [sym_this] = ACTIONS(4534), [sym_abstract] = ACTIONS(4534), [sym_alias] = ACTIONS(4534), [sym_align] = ACTIONS(4534), [sym_auto] = ACTIONS(4534), [sym_class] = ACTIONS(4534), [sym_const] = ACTIONS(4534), [sym_debug] = ACTIONS(4534), [sym_deprecated] = ACTIONS(4534), [sym_else] = ACTIONS(4534), [sym_enum] = ACTIONS(4534), [sym_export] = ACTIONS(4534), [sym_extern] = ACTIONS(4534), [sym_final] = ACTIONS(4534), [sym_immutable] = ACTIONS(4534), [sym_import] = ACTIONS(4534), [sym_inout] = ACTIONS(4534), [sym_interface] = ACTIONS(4534), [sym_invariant] = ACTIONS(4534), [sym_mixin] = ACTIONS(4534), [sym_nothrow] = ACTIONS(4534), [sym_override] = ACTIONS(4534), [sym_package] = ACTIONS(4534), [sym_pragma] = ACTIONS(4534), [sym_private] = ACTIONS(4534), [sym_protected] = ACTIONS(4534), [sym_public] = ACTIONS(4534), [sym_pure] = ACTIONS(4534), [sym_ref] = ACTIONS(4534), [sym_return] = ACTIONS(4534), [sym_scope] = ACTIONS(4534), [sym_shared] = ACTIONS(4534), [sym_static] = ACTIONS(4534), [sym_struct] = ACTIONS(4534), [sym_synchronized] = ACTIONS(4534), [sym_template] = ACTIONS(4534), [sym_typeof] = ACTIONS(4534), [sym_union] = ACTIONS(4534), [sym_unittest] = ACTIONS(4534), [sym_version] = ACTIONS(4534), [sym_while] = ACTIONS(4534), [sym_gshared] = ACTIONS(4534), [sym_traits] = ACTIONS(4534), [sym_vector] = ACTIONS(4534), [sym_void] = ACTIONS(4534), [sym_directive] = ACTIONS(3), }, [2871] = { [sym_identifier] = ACTIONS(4538), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4540), [anon_sym_DOT] = ACTIONS(4540), [anon_sym_SEMI] = ACTIONS(4540), [anon_sym_TILDE] = ACTIONS(4540), [anon_sym_AT] = ACTIONS(4540), [sym_bool] = ACTIONS(4538), [sym_byte] = ACTIONS(4538), [sym_ubyte] = ACTIONS(4538), [sym_char] = ACTIONS(4538), [sym_short] = ACTIONS(4538), [sym_ushort] = ACTIONS(4538), [sym_int] = ACTIONS(4538), [sym_uint] = ACTIONS(4538), [sym_long] = ACTIONS(4538), [sym_ulong] = ACTIONS(4538), [sym_cent] = ACTIONS(4538), [sym_ucent] = ACTIONS(4538), [sym_wchar] = ACTIONS(4538), [sym_dchar] = ACTIONS(4538), [sym_float] = ACTIONS(4538), [sym_double] = ACTIONS(4538), [sym_real] = ACTIONS(4538), [sym_ifloat] = ACTIONS(4538), [sym_idouble] = ACTIONS(4538), [sym_ireal] = ACTIONS(4538), [sym_cfloat] = ACTIONS(4538), [sym_cdouble] = ACTIONS(4538), [sym_creal] = ACTIONS(4538), [sym_size_t] = ACTIONS(4538), [sym_ptrdiff_t] = ACTIONS(4538), [sym_string] = ACTIONS(4538), [sym_cstring] = ACTIONS(4538), [sym_dstring] = ACTIONS(4538), [sym_wstring] = ACTIONS(4538), [sym_noreturn] = ACTIONS(4538), [sym_this] = ACTIONS(4538), [sym_abstract] = ACTIONS(4538), [sym_alias] = ACTIONS(4538), [sym_align] = ACTIONS(4538), [sym_auto] = ACTIONS(4538), [sym_class] = ACTIONS(4538), [sym_const] = ACTIONS(4538), [sym_debug] = ACTIONS(4538), [sym_deprecated] = ACTIONS(4538), [sym_else] = ACTIONS(4538), [sym_enum] = ACTIONS(4538), [sym_export] = ACTIONS(4538), [sym_extern] = ACTIONS(4538), [sym_final] = ACTIONS(4538), [sym_immutable] = ACTIONS(4538), [sym_import] = ACTIONS(4538), [sym_inout] = ACTIONS(4538), [sym_interface] = ACTIONS(4538), [sym_invariant] = ACTIONS(4538), [sym_mixin] = ACTIONS(4538), [sym_nothrow] = ACTIONS(4538), [sym_override] = ACTIONS(4538), [sym_package] = ACTIONS(4538), [sym_pragma] = ACTIONS(4538), [sym_private] = ACTIONS(4538), [sym_protected] = ACTIONS(4538), [sym_public] = ACTIONS(4538), [sym_pure] = ACTIONS(4538), [sym_ref] = ACTIONS(4538), [sym_return] = ACTIONS(4538), [sym_scope] = ACTIONS(4538), [sym_shared] = ACTIONS(4538), [sym_static] = ACTIONS(4538), [sym_struct] = ACTIONS(4538), [sym_synchronized] = ACTIONS(4538), [sym_template] = ACTIONS(4538), [sym_typeof] = ACTIONS(4538), [sym_union] = ACTIONS(4538), [sym_unittest] = ACTIONS(4538), [sym_version] = ACTIONS(4538), [sym_while] = ACTIONS(4538), [sym_gshared] = ACTIONS(4538), [sym_traits] = ACTIONS(4538), [sym_vector] = ACTIONS(4538), [sym_void] = ACTIONS(4538), [sym_directive] = ACTIONS(3), }, [2872] = { [sym_identifier] = ACTIONS(4546), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4548), [anon_sym_DOT] = ACTIONS(4548), [anon_sym_SEMI] = ACTIONS(4548), [anon_sym_TILDE] = ACTIONS(4548), [anon_sym_AT] = ACTIONS(4548), [sym_bool] = ACTIONS(4546), [sym_byte] = ACTIONS(4546), [sym_ubyte] = ACTIONS(4546), [sym_char] = ACTIONS(4546), [sym_short] = ACTIONS(4546), [sym_ushort] = ACTIONS(4546), [sym_int] = ACTIONS(4546), [sym_uint] = ACTIONS(4546), [sym_long] = ACTIONS(4546), [sym_ulong] = ACTIONS(4546), [sym_cent] = ACTIONS(4546), [sym_ucent] = ACTIONS(4546), [sym_wchar] = ACTIONS(4546), [sym_dchar] = ACTIONS(4546), [sym_float] = ACTIONS(4546), [sym_double] = ACTIONS(4546), [sym_real] = ACTIONS(4546), [sym_ifloat] = ACTIONS(4546), [sym_idouble] = ACTIONS(4546), [sym_ireal] = ACTIONS(4546), [sym_cfloat] = ACTIONS(4546), [sym_cdouble] = ACTIONS(4546), [sym_creal] = ACTIONS(4546), [sym_size_t] = ACTIONS(4546), [sym_ptrdiff_t] = ACTIONS(4546), [sym_string] = ACTIONS(4546), [sym_cstring] = ACTIONS(4546), [sym_dstring] = ACTIONS(4546), [sym_wstring] = ACTIONS(4546), [sym_noreturn] = ACTIONS(4546), [sym_this] = ACTIONS(4546), [sym_abstract] = ACTIONS(4546), [sym_alias] = ACTIONS(4546), [sym_align] = ACTIONS(4546), [sym_auto] = ACTIONS(4546), [sym_class] = ACTIONS(4546), [sym_const] = ACTIONS(4546), [sym_debug] = ACTIONS(4546), [sym_deprecated] = ACTIONS(4546), [sym_else] = ACTIONS(4546), [sym_enum] = ACTIONS(4546), [sym_export] = ACTIONS(4546), [sym_extern] = ACTIONS(4546), [sym_final] = ACTIONS(4546), [sym_immutable] = ACTIONS(4546), [sym_import] = ACTIONS(4546), [sym_inout] = ACTIONS(4546), [sym_interface] = ACTIONS(4546), [sym_invariant] = ACTIONS(4546), [sym_mixin] = ACTIONS(4546), [sym_nothrow] = ACTIONS(4546), [sym_override] = ACTIONS(4546), [sym_package] = ACTIONS(4546), [sym_pragma] = ACTIONS(4546), [sym_private] = ACTIONS(4546), [sym_protected] = ACTIONS(4546), [sym_public] = ACTIONS(4546), [sym_pure] = ACTIONS(4546), [sym_ref] = ACTIONS(4546), [sym_return] = ACTIONS(4546), [sym_scope] = ACTIONS(4546), [sym_shared] = ACTIONS(4546), [sym_static] = ACTIONS(4546), [sym_struct] = ACTIONS(4546), [sym_synchronized] = ACTIONS(4546), [sym_template] = ACTIONS(4546), [sym_typeof] = ACTIONS(4546), [sym_union] = ACTIONS(4546), [sym_unittest] = ACTIONS(4546), [sym_version] = ACTIONS(4546), [sym_while] = ACTIONS(4546), [sym_gshared] = ACTIONS(4546), [sym_traits] = ACTIONS(4546), [sym_vector] = ACTIONS(4546), [sym_void] = ACTIONS(4546), [sym_directive] = ACTIONS(3), }, [2873] = { [sym_identifier] = ACTIONS(4562), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4564), [anon_sym_DOT] = ACTIONS(4564), [anon_sym_SEMI] = ACTIONS(4564), [anon_sym_TILDE] = ACTIONS(4564), [anon_sym_AT] = ACTIONS(4564), [sym_bool] = ACTIONS(4562), [sym_byte] = ACTIONS(4562), [sym_ubyte] = ACTIONS(4562), [sym_char] = ACTIONS(4562), [sym_short] = ACTIONS(4562), [sym_ushort] = ACTIONS(4562), [sym_int] = ACTIONS(4562), [sym_uint] = ACTIONS(4562), [sym_long] = ACTIONS(4562), [sym_ulong] = ACTIONS(4562), [sym_cent] = ACTIONS(4562), [sym_ucent] = ACTIONS(4562), [sym_wchar] = ACTIONS(4562), [sym_dchar] = ACTIONS(4562), [sym_float] = ACTIONS(4562), [sym_double] = ACTIONS(4562), [sym_real] = ACTIONS(4562), [sym_ifloat] = ACTIONS(4562), [sym_idouble] = ACTIONS(4562), [sym_ireal] = ACTIONS(4562), [sym_cfloat] = ACTIONS(4562), [sym_cdouble] = ACTIONS(4562), [sym_creal] = ACTIONS(4562), [sym_size_t] = ACTIONS(4562), [sym_ptrdiff_t] = ACTIONS(4562), [sym_string] = ACTIONS(4562), [sym_cstring] = ACTIONS(4562), [sym_dstring] = ACTIONS(4562), [sym_wstring] = ACTIONS(4562), [sym_noreturn] = ACTIONS(4562), [sym_this] = ACTIONS(4562), [sym_abstract] = ACTIONS(4562), [sym_alias] = ACTIONS(4562), [sym_align] = ACTIONS(4562), [sym_auto] = ACTIONS(4562), [sym_class] = ACTIONS(4562), [sym_const] = ACTIONS(4562), [sym_debug] = ACTIONS(4562), [sym_deprecated] = ACTIONS(4562), [sym_else] = ACTIONS(4562), [sym_enum] = ACTIONS(4562), [sym_export] = ACTIONS(4562), [sym_extern] = ACTIONS(4562), [sym_final] = ACTIONS(4562), [sym_immutable] = ACTIONS(4562), [sym_import] = ACTIONS(4562), [sym_inout] = ACTIONS(4562), [sym_interface] = ACTIONS(4562), [sym_invariant] = ACTIONS(4562), [sym_mixin] = ACTIONS(4562), [sym_nothrow] = ACTIONS(4562), [sym_override] = ACTIONS(4562), [sym_package] = ACTIONS(4562), [sym_pragma] = ACTIONS(4562), [sym_private] = ACTIONS(4562), [sym_protected] = ACTIONS(4562), [sym_public] = ACTIONS(4562), [sym_pure] = ACTIONS(4562), [sym_ref] = ACTIONS(4562), [sym_return] = ACTIONS(4562), [sym_scope] = ACTIONS(4562), [sym_shared] = ACTIONS(4562), [sym_static] = ACTIONS(4562), [sym_struct] = ACTIONS(4562), [sym_synchronized] = ACTIONS(4562), [sym_template] = ACTIONS(4562), [sym_typeof] = ACTIONS(4562), [sym_union] = ACTIONS(4562), [sym_unittest] = ACTIONS(4562), [sym_version] = ACTIONS(4562), [sym_while] = ACTIONS(4562), [sym_gshared] = ACTIONS(4562), [sym_traits] = ACTIONS(4562), [sym_vector] = ACTIONS(4562), [sym_void] = ACTIONS(4562), [sym_directive] = ACTIONS(3), }, [2874] = { [sym_identifier] = ACTIONS(4574), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4576), [anon_sym_DOT] = ACTIONS(4576), [anon_sym_SEMI] = ACTIONS(4576), [anon_sym_TILDE] = ACTIONS(4576), [anon_sym_AT] = ACTIONS(4576), [sym_bool] = ACTIONS(4574), [sym_byte] = ACTIONS(4574), [sym_ubyte] = ACTIONS(4574), [sym_char] = ACTIONS(4574), [sym_short] = ACTIONS(4574), [sym_ushort] = ACTIONS(4574), [sym_int] = ACTIONS(4574), [sym_uint] = ACTIONS(4574), [sym_long] = ACTIONS(4574), [sym_ulong] = ACTIONS(4574), [sym_cent] = ACTIONS(4574), [sym_ucent] = ACTIONS(4574), [sym_wchar] = ACTIONS(4574), [sym_dchar] = ACTIONS(4574), [sym_float] = ACTIONS(4574), [sym_double] = ACTIONS(4574), [sym_real] = ACTIONS(4574), [sym_ifloat] = ACTIONS(4574), [sym_idouble] = ACTIONS(4574), [sym_ireal] = ACTIONS(4574), [sym_cfloat] = ACTIONS(4574), [sym_cdouble] = ACTIONS(4574), [sym_creal] = ACTIONS(4574), [sym_size_t] = ACTIONS(4574), [sym_ptrdiff_t] = ACTIONS(4574), [sym_string] = ACTIONS(4574), [sym_cstring] = ACTIONS(4574), [sym_dstring] = ACTIONS(4574), [sym_wstring] = ACTIONS(4574), [sym_noreturn] = ACTIONS(4574), [sym_this] = ACTIONS(4574), [sym_abstract] = ACTIONS(4574), [sym_alias] = ACTIONS(4574), [sym_align] = ACTIONS(4574), [sym_auto] = ACTIONS(4574), [sym_class] = ACTIONS(4574), [sym_const] = ACTIONS(4574), [sym_debug] = ACTIONS(4574), [sym_deprecated] = ACTIONS(4574), [sym_else] = ACTIONS(4574), [sym_enum] = ACTIONS(4574), [sym_export] = ACTIONS(4574), [sym_extern] = ACTIONS(4574), [sym_final] = ACTIONS(4574), [sym_immutable] = ACTIONS(4574), [sym_import] = ACTIONS(4574), [sym_inout] = ACTIONS(4574), [sym_interface] = ACTIONS(4574), [sym_invariant] = ACTIONS(4574), [sym_mixin] = ACTIONS(4574), [sym_nothrow] = ACTIONS(4574), [sym_override] = ACTIONS(4574), [sym_package] = ACTIONS(4574), [sym_pragma] = ACTIONS(4574), [sym_private] = ACTIONS(4574), [sym_protected] = ACTIONS(4574), [sym_public] = ACTIONS(4574), [sym_pure] = ACTIONS(4574), [sym_ref] = ACTIONS(4574), [sym_return] = ACTIONS(4574), [sym_scope] = ACTIONS(4574), [sym_shared] = ACTIONS(4574), [sym_static] = ACTIONS(4574), [sym_struct] = ACTIONS(4574), [sym_synchronized] = ACTIONS(4574), [sym_template] = ACTIONS(4574), [sym_typeof] = ACTIONS(4574), [sym_union] = ACTIONS(4574), [sym_unittest] = ACTIONS(4574), [sym_version] = ACTIONS(4574), [sym_while] = ACTIONS(4574), [sym_gshared] = ACTIONS(4574), [sym_traits] = ACTIONS(4574), [sym_vector] = ACTIONS(4574), [sym_void] = ACTIONS(4574), [sym_directive] = ACTIONS(3), }, [2875] = { [sym_switch_statement] = STATE(2196), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2876] = { [sym_switch_statement] = STATE(2196), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(890), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2877] = { [sym_identifier] = ACTIONS(4814), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4816), [anon_sym_DOT] = ACTIONS(4816), [anon_sym_SEMI] = ACTIONS(4816), [anon_sym_TILDE] = ACTIONS(4816), [anon_sym_AT] = ACTIONS(4816), [sym_bool] = ACTIONS(4814), [sym_byte] = ACTIONS(4814), [sym_ubyte] = ACTIONS(4814), [sym_char] = ACTIONS(4814), [sym_short] = ACTIONS(4814), [sym_ushort] = ACTIONS(4814), [sym_int] = ACTIONS(4814), [sym_uint] = ACTIONS(4814), [sym_long] = ACTIONS(4814), [sym_ulong] = ACTIONS(4814), [sym_cent] = ACTIONS(4814), [sym_ucent] = ACTIONS(4814), [sym_wchar] = ACTIONS(4814), [sym_dchar] = ACTIONS(4814), [sym_float] = ACTIONS(4814), [sym_double] = ACTIONS(4814), [sym_real] = ACTIONS(4814), [sym_ifloat] = ACTIONS(4814), [sym_idouble] = ACTIONS(4814), [sym_ireal] = ACTIONS(4814), [sym_cfloat] = ACTIONS(4814), [sym_cdouble] = ACTIONS(4814), [sym_creal] = ACTIONS(4814), [sym_size_t] = ACTIONS(4814), [sym_ptrdiff_t] = ACTIONS(4814), [sym_string] = ACTIONS(4814), [sym_cstring] = ACTIONS(4814), [sym_dstring] = ACTIONS(4814), [sym_wstring] = ACTIONS(4814), [sym_noreturn] = ACTIONS(4814), [sym_this] = ACTIONS(4814), [sym_abstract] = ACTIONS(4814), [sym_alias] = ACTIONS(4814), [sym_align] = ACTIONS(4814), [sym_auto] = ACTIONS(4814), [sym_class] = ACTIONS(4814), [sym_const] = ACTIONS(4814), [sym_debug] = ACTIONS(4814), [sym_deprecated] = ACTIONS(4814), [sym_else] = ACTIONS(4814), [sym_enum] = ACTIONS(4814), [sym_export] = ACTIONS(4814), [sym_extern] = ACTIONS(4814), [sym_final] = ACTIONS(4814), [sym_immutable] = ACTIONS(4814), [sym_import] = ACTIONS(4814), [sym_inout] = ACTIONS(4814), [sym_interface] = ACTIONS(4814), [sym_invariant] = ACTIONS(4814), [sym_mixin] = ACTIONS(4814), [sym_nothrow] = ACTIONS(4814), [sym_override] = ACTIONS(4814), [sym_package] = ACTIONS(4814), [sym_pragma] = ACTIONS(4814), [sym_private] = ACTIONS(4814), [sym_protected] = ACTIONS(4814), [sym_public] = ACTIONS(4814), [sym_pure] = ACTIONS(4814), [sym_ref] = ACTIONS(4814), [sym_return] = ACTIONS(4814), [sym_scope] = ACTIONS(4814), [sym_shared] = ACTIONS(4814), [sym_static] = ACTIONS(4814), [sym_struct] = ACTIONS(4814), [sym_synchronized] = ACTIONS(4814), [sym_template] = ACTIONS(4814), [sym_typeof] = ACTIONS(4814), [sym_union] = ACTIONS(4814), [sym_unittest] = ACTIONS(4814), [sym_version] = ACTIONS(4814), [sym_while] = ACTIONS(4814), [sym_gshared] = ACTIONS(4814), [sym_traits] = ACTIONS(4814), [sym_vector] = ACTIONS(4814), [sym_void] = ACTIONS(4814), [sym_directive] = ACTIONS(3), }, [2878] = { [sym_switch_statement] = STATE(5592), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(1100), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2879] = { [sym_switch_statement] = STATE(2196), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(790), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2880] = { [sym_switch_statement] = STATE(1387), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(309), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2881] = { [sym_identifier] = ACTIONS(5004), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5006), [anon_sym_DOT] = ACTIONS(5006), [anon_sym_SEMI] = ACTIONS(5006), [anon_sym_TILDE] = ACTIONS(5006), [anon_sym_AT] = ACTIONS(5006), [sym_bool] = ACTIONS(5004), [sym_byte] = ACTIONS(5004), [sym_ubyte] = ACTIONS(5004), [sym_char] = ACTIONS(5004), [sym_short] = ACTIONS(5004), [sym_ushort] = ACTIONS(5004), [sym_int] = ACTIONS(5004), [sym_uint] = ACTIONS(5004), [sym_long] = ACTIONS(5004), [sym_ulong] = ACTIONS(5004), [sym_cent] = ACTIONS(5004), [sym_ucent] = ACTIONS(5004), [sym_wchar] = ACTIONS(5004), [sym_dchar] = ACTIONS(5004), [sym_float] = ACTIONS(5004), [sym_double] = ACTIONS(5004), [sym_real] = ACTIONS(5004), [sym_ifloat] = ACTIONS(5004), [sym_idouble] = ACTIONS(5004), [sym_ireal] = ACTIONS(5004), [sym_cfloat] = ACTIONS(5004), [sym_cdouble] = ACTIONS(5004), [sym_creal] = ACTIONS(5004), [sym_size_t] = ACTIONS(5004), [sym_ptrdiff_t] = ACTIONS(5004), [sym_string] = ACTIONS(5004), [sym_cstring] = ACTIONS(5004), [sym_dstring] = ACTIONS(5004), [sym_wstring] = ACTIONS(5004), [sym_noreturn] = ACTIONS(5004), [sym_this] = ACTIONS(5004), [sym_abstract] = ACTIONS(5004), [sym_alias] = ACTIONS(5004), [sym_align] = ACTIONS(5004), [sym_auto] = ACTIONS(5004), [sym_class] = ACTIONS(5004), [sym_const] = ACTIONS(5004), [sym_debug] = ACTIONS(5004), [sym_deprecated] = ACTIONS(5004), [sym_else] = ACTIONS(5004), [sym_enum] = ACTIONS(5004), [sym_export] = ACTIONS(5004), [sym_extern] = ACTIONS(5004), [sym_final] = ACTIONS(5004), [sym_immutable] = ACTIONS(5004), [sym_import] = ACTIONS(5004), [sym_inout] = ACTIONS(5004), [sym_interface] = ACTIONS(5004), [sym_invariant] = ACTIONS(5004), [sym_mixin] = ACTIONS(5004), [sym_nothrow] = ACTIONS(5004), [sym_override] = ACTIONS(5004), [sym_package] = ACTIONS(5004), [sym_pragma] = ACTIONS(5004), [sym_private] = ACTIONS(5004), [sym_protected] = ACTIONS(5004), [sym_public] = ACTIONS(5004), [sym_pure] = ACTIONS(5004), [sym_ref] = ACTIONS(5004), [sym_return] = ACTIONS(5004), [sym_scope] = ACTIONS(5004), [sym_shared] = ACTIONS(5004), [sym_static] = ACTIONS(5004), [sym_struct] = ACTIONS(5004), [sym_synchronized] = ACTIONS(5004), [sym_template] = ACTIONS(5004), [sym_typeof] = ACTIONS(5004), [sym_union] = ACTIONS(5004), [sym_unittest] = ACTIONS(5004), [sym_version] = ACTIONS(5004), [sym_while] = ACTIONS(5004), [sym_gshared] = ACTIONS(5004), [sym_traits] = ACTIONS(5004), [sym_vector] = ACTIONS(5004), [sym_void] = ACTIONS(5004), [sym_directive] = ACTIONS(3), }, [2882] = { [sym_identifier] = ACTIONS(5028), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(5030), [anon_sym_DOT] = ACTIONS(5030), [anon_sym_SEMI] = ACTIONS(5030), [anon_sym_TILDE] = ACTIONS(5030), [anon_sym_AT] = ACTIONS(5030), [sym_bool] = ACTIONS(5028), [sym_byte] = ACTIONS(5028), [sym_ubyte] = ACTIONS(5028), [sym_char] = ACTIONS(5028), [sym_short] = ACTIONS(5028), [sym_ushort] = ACTIONS(5028), [sym_int] = ACTIONS(5028), [sym_uint] = ACTIONS(5028), [sym_long] = ACTIONS(5028), [sym_ulong] = ACTIONS(5028), [sym_cent] = ACTIONS(5028), [sym_ucent] = ACTIONS(5028), [sym_wchar] = ACTIONS(5028), [sym_dchar] = ACTIONS(5028), [sym_float] = ACTIONS(5028), [sym_double] = ACTIONS(5028), [sym_real] = ACTIONS(5028), [sym_ifloat] = ACTIONS(5028), [sym_idouble] = ACTIONS(5028), [sym_ireal] = ACTIONS(5028), [sym_cfloat] = ACTIONS(5028), [sym_cdouble] = ACTIONS(5028), [sym_creal] = ACTIONS(5028), [sym_size_t] = ACTIONS(5028), [sym_ptrdiff_t] = ACTIONS(5028), [sym_string] = ACTIONS(5028), [sym_cstring] = ACTIONS(5028), [sym_dstring] = ACTIONS(5028), [sym_wstring] = ACTIONS(5028), [sym_noreturn] = ACTIONS(5028), [sym_this] = ACTIONS(5028), [sym_abstract] = ACTIONS(5028), [sym_alias] = ACTIONS(5028), [sym_align] = ACTIONS(5028), [sym_auto] = ACTIONS(5028), [sym_class] = ACTIONS(5028), [sym_const] = ACTIONS(5028), [sym_debug] = ACTIONS(5028), [sym_deprecated] = ACTIONS(5028), [sym_else] = ACTIONS(5028), [sym_enum] = ACTIONS(5028), [sym_export] = ACTIONS(5028), [sym_extern] = ACTIONS(5028), [sym_final] = ACTIONS(5028), [sym_immutable] = ACTIONS(5028), [sym_import] = ACTIONS(5028), [sym_inout] = ACTIONS(5028), [sym_interface] = ACTIONS(5028), [sym_invariant] = ACTIONS(5028), [sym_mixin] = ACTIONS(5028), [sym_nothrow] = ACTIONS(5028), [sym_override] = ACTIONS(5028), [sym_package] = ACTIONS(5028), [sym_pragma] = ACTIONS(5028), [sym_private] = ACTIONS(5028), [sym_protected] = ACTIONS(5028), [sym_public] = ACTIONS(5028), [sym_pure] = ACTIONS(5028), [sym_ref] = ACTIONS(5028), [sym_return] = ACTIONS(5028), [sym_scope] = ACTIONS(5028), [sym_shared] = ACTIONS(5028), [sym_static] = ACTIONS(5028), [sym_struct] = ACTIONS(5028), [sym_synchronized] = ACTIONS(5028), [sym_template] = ACTIONS(5028), [sym_typeof] = ACTIONS(5028), [sym_union] = ACTIONS(5028), [sym_unittest] = ACTIONS(5028), [sym_version] = ACTIONS(5028), [sym_while] = ACTIONS(5028), [sym_gshared] = ACTIONS(5028), [sym_traits] = ACTIONS(5028), [sym_vector] = ACTIONS(5028), [sym_void] = ACTIONS(5028), [sym_directive] = ACTIONS(3), }, [2883] = { [sym_identifier] = ACTIONS(4578), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4580), [anon_sym_DOT] = ACTIONS(4580), [anon_sym_SEMI] = ACTIONS(4580), [anon_sym_TILDE] = ACTIONS(4580), [anon_sym_AT] = ACTIONS(4580), [sym_bool] = ACTIONS(4578), [sym_byte] = ACTIONS(4578), [sym_ubyte] = ACTIONS(4578), [sym_char] = ACTIONS(4578), [sym_short] = ACTIONS(4578), [sym_ushort] = ACTIONS(4578), [sym_int] = ACTIONS(4578), [sym_uint] = ACTIONS(4578), [sym_long] = ACTIONS(4578), [sym_ulong] = ACTIONS(4578), [sym_cent] = ACTIONS(4578), [sym_ucent] = ACTIONS(4578), [sym_wchar] = ACTIONS(4578), [sym_dchar] = ACTIONS(4578), [sym_float] = ACTIONS(4578), [sym_double] = ACTIONS(4578), [sym_real] = ACTIONS(4578), [sym_ifloat] = ACTIONS(4578), [sym_idouble] = ACTIONS(4578), [sym_ireal] = ACTIONS(4578), [sym_cfloat] = ACTIONS(4578), [sym_cdouble] = ACTIONS(4578), [sym_creal] = ACTIONS(4578), [sym_size_t] = ACTIONS(4578), [sym_ptrdiff_t] = ACTIONS(4578), [sym_string] = ACTIONS(4578), [sym_cstring] = ACTIONS(4578), [sym_dstring] = ACTIONS(4578), [sym_wstring] = ACTIONS(4578), [sym_noreturn] = ACTIONS(4578), [sym_this] = ACTIONS(4578), [sym_abstract] = ACTIONS(4578), [sym_alias] = ACTIONS(4578), [sym_align] = ACTIONS(4578), [sym_auto] = ACTIONS(4578), [sym_class] = ACTIONS(4578), [sym_const] = ACTIONS(4578), [sym_debug] = ACTIONS(4578), [sym_deprecated] = ACTIONS(4578), [sym_else] = ACTIONS(4578), [sym_enum] = ACTIONS(4578), [sym_export] = ACTIONS(4578), [sym_extern] = ACTIONS(4578), [sym_final] = ACTIONS(4578), [sym_immutable] = ACTIONS(4578), [sym_import] = ACTIONS(4578), [sym_inout] = ACTIONS(4578), [sym_interface] = ACTIONS(4578), [sym_invariant] = ACTIONS(4578), [sym_mixin] = ACTIONS(4578), [sym_nothrow] = ACTIONS(4578), [sym_override] = ACTIONS(4578), [sym_package] = ACTIONS(4578), [sym_pragma] = ACTIONS(4578), [sym_private] = ACTIONS(4578), [sym_protected] = ACTIONS(4578), [sym_public] = ACTIONS(4578), [sym_pure] = ACTIONS(4578), [sym_ref] = ACTIONS(4578), [sym_return] = ACTIONS(4578), [sym_scope] = ACTIONS(4578), [sym_shared] = ACTIONS(4578), [sym_static] = ACTIONS(4578), [sym_struct] = ACTIONS(4578), [sym_synchronized] = ACTIONS(4578), [sym_template] = ACTIONS(4578), [sym_typeof] = ACTIONS(4578), [sym_union] = ACTIONS(4578), [sym_unittest] = ACTIONS(4578), [sym_version] = ACTIONS(4578), [sym_while] = ACTIONS(4578), [sym_gshared] = ACTIONS(4578), [sym_traits] = ACTIONS(4578), [sym_vector] = ACTIONS(4578), [sym_void] = ACTIONS(4578), [sym_directive] = ACTIONS(3), }, [2884] = { [sym_identifier] = ACTIONS(4818), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4820), [anon_sym_DOT] = ACTIONS(4820), [anon_sym_SEMI] = ACTIONS(4820), [anon_sym_TILDE] = ACTIONS(4820), [anon_sym_AT] = ACTIONS(4820), [sym_bool] = ACTIONS(4818), [sym_byte] = ACTIONS(4818), [sym_ubyte] = ACTIONS(4818), [sym_char] = ACTIONS(4818), [sym_short] = ACTIONS(4818), [sym_ushort] = ACTIONS(4818), [sym_int] = ACTIONS(4818), [sym_uint] = ACTIONS(4818), [sym_long] = ACTIONS(4818), [sym_ulong] = ACTIONS(4818), [sym_cent] = ACTIONS(4818), [sym_ucent] = ACTIONS(4818), [sym_wchar] = ACTIONS(4818), [sym_dchar] = ACTIONS(4818), [sym_float] = ACTIONS(4818), [sym_double] = ACTIONS(4818), [sym_real] = ACTIONS(4818), [sym_ifloat] = ACTIONS(4818), [sym_idouble] = ACTIONS(4818), [sym_ireal] = ACTIONS(4818), [sym_cfloat] = ACTIONS(4818), [sym_cdouble] = ACTIONS(4818), [sym_creal] = ACTIONS(4818), [sym_size_t] = ACTIONS(4818), [sym_ptrdiff_t] = ACTIONS(4818), [sym_string] = ACTIONS(4818), [sym_cstring] = ACTIONS(4818), [sym_dstring] = ACTIONS(4818), [sym_wstring] = ACTIONS(4818), [sym_noreturn] = ACTIONS(4818), [sym_this] = ACTIONS(4818), [sym_abstract] = ACTIONS(4818), [sym_alias] = ACTIONS(4818), [sym_align] = ACTIONS(4818), [sym_auto] = ACTIONS(4818), [sym_class] = ACTIONS(4818), [sym_const] = ACTIONS(4818), [sym_debug] = ACTIONS(4818), [sym_deprecated] = ACTIONS(4818), [sym_else] = ACTIONS(4818), [sym_enum] = ACTIONS(4818), [sym_export] = ACTIONS(4818), [sym_extern] = ACTIONS(4818), [sym_final] = ACTIONS(4818), [sym_immutable] = ACTIONS(4818), [sym_import] = ACTIONS(4818), [sym_inout] = ACTIONS(4818), [sym_interface] = ACTIONS(4818), [sym_invariant] = ACTIONS(4818), [sym_mixin] = ACTIONS(4818), [sym_nothrow] = ACTIONS(4818), [sym_override] = ACTIONS(4818), [sym_package] = ACTIONS(4818), [sym_pragma] = ACTIONS(4818), [sym_private] = ACTIONS(4818), [sym_protected] = ACTIONS(4818), [sym_public] = ACTIONS(4818), [sym_pure] = ACTIONS(4818), [sym_ref] = ACTIONS(4818), [sym_return] = ACTIONS(4818), [sym_scope] = ACTIONS(4818), [sym_shared] = ACTIONS(4818), [sym_static] = ACTIONS(4818), [sym_struct] = ACTIONS(4818), [sym_synchronized] = ACTIONS(4818), [sym_template] = ACTIONS(4818), [sym_typeof] = ACTIONS(4818), [sym_union] = ACTIONS(4818), [sym_unittest] = ACTIONS(4818), [sym_version] = ACTIONS(4818), [sym_while] = ACTIONS(4818), [sym_gshared] = ACTIONS(4818), [sym_traits] = ACTIONS(4818), [sym_vector] = ACTIONS(4818), [sym_void] = ACTIONS(4818), [sym_directive] = ACTIONS(3), }, [2885] = { [sym_identifier] = ACTIONS(4822), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4824), [anon_sym_DOT] = ACTIONS(4824), [anon_sym_SEMI] = ACTIONS(4824), [anon_sym_TILDE] = ACTIONS(4824), [anon_sym_AT] = ACTIONS(4824), [sym_bool] = ACTIONS(4822), [sym_byte] = ACTIONS(4822), [sym_ubyte] = ACTIONS(4822), [sym_char] = ACTIONS(4822), [sym_short] = ACTIONS(4822), [sym_ushort] = ACTIONS(4822), [sym_int] = ACTIONS(4822), [sym_uint] = ACTIONS(4822), [sym_long] = ACTIONS(4822), [sym_ulong] = ACTIONS(4822), [sym_cent] = ACTIONS(4822), [sym_ucent] = ACTIONS(4822), [sym_wchar] = ACTIONS(4822), [sym_dchar] = ACTIONS(4822), [sym_float] = ACTIONS(4822), [sym_double] = ACTIONS(4822), [sym_real] = ACTIONS(4822), [sym_ifloat] = ACTIONS(4822), [sym_idouble] = ACTIONS(4822), [sym_ireal] = ACTIONS(4822), [sym_cfloat] = ACTIONS(4822), [sym_cdouble] = ACTIONS(4822), [sym_creal] = ACTIONS(4822), [sym_size_t] = ACTIONS(4822), [sym_ptrdiff_t] = ACTIONS(4822), [sym_string] = ACTIONS(4822), [sym_cstring] = ACTIONS(4822), [sym_dstring] = ACTIONS(4822), [sym_wstring] = ACTIONS(4822), [sym_noreturn] = ACTIONS(4822), [sym_this] = ACTIONS(4822), [sym_abstract] = ACTIONS(4822), [sym_alias] = ACTIONS(4822), [sym_align] = ACTIONS(4822), [sym_auto] = ACTIONS(4822), [sym_class] = ACTIONS(4822), [sym_const] = ACTIONS(4822), [sym_debug] = ACTIONS(4822), [sym_deprecated] = ACTIONS(4822), [sym_else] = ACTIONS(4822), [sym_enum] = ACTIONS(4822), [sym_export] = ACTIONS(4822), [sym_extern] = ACTIONS(4822), [sym_final] = ACTIONS(4822), [sym_immutable] = ACTIONS(4822), [sym_import] = ACTIONS(4822), [sym_inout] = ACTIONS(4822), [sym_interface] = ACTIONS(4822), [sym_invariant] = ACTIONS(4822), [sym_mixin] = ACTIONS(4822), [sym_nothrow] = ACTIONS(4822), [sym_override] = ACTIONS(4822), [sym_package] = ACTIONS(4822), [sym_pragma] = ACTIONS(4822), [sym_private] = ACTIONS(4822), [sym_protected] = ACTIONS(4822), [sym_public] = ACTIONS(4822), [sym_pure] = ACTIONS(4822), [sym_ref] = ACTIONS(4822), [sym_return] = ACTIONS(4822), [sym_scope] = ACTIONS(4822), [sym_shared] = ACTIONS(4822), [sym_static] = ACTIONS(4822), [sym_struct] = ACTIONS(4822), [sym_synchronized] = ACTIONS(4822), [sym_template] = ACTIONS(4822), [sym_typeof] = ACTIONS(4822), [sym_union] = ACTIONS(4822), [sym_unittest] = ACTIONS(4822), [sym_version] = ACTIONS(4822), [sym_while] = ACTIONS(4822), [sym_gshared] = ACTIONS(4822), [sym_traits] = ACTIONS(4822), [sym_vector] = ACTIONS(4822), [sym_void] = ACTIONS(4822), [sym_directive] = ACTIONS(3), }, [2886] = { [sym_identifier] = ACTIONS(4852), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4854), [anon_sym_DOT] = ACTIONS(4854), [anon_sym_SEMI] = ACTIONS(4854), [anon_sym_TILDE] = ACTIONS(4854), [anon_sym_AT] = ACTIONS(4854), [sym_bool] = ACTIONS(4852), [sym_byte] = ACTIONS(4852), [sym_ubyte] = ACTIONS(4852), [sym_char] = ACTIONS(4852), [sym_short] = ACTIONS(4852), [sym_ushort] = ACTIONS(4852), [sym_int] = ACTIONS(4852), [sym_uint] = ACTIONS(4852), [sym_long] = ACTIONS(4852), [sym_ulong] = ACTIONS(4852), [sym_cent] = ACTIONS(4852), [sym_ucent] = ACTIONS(4852), [sym_wchar] = ACTIONS(4852), [sym_dchar] = ACTIONS(4852), [sym_float] = ACTIONS(4852), [sym_double] = ACTIONS(4852), [sym_real] = ACTIONS(4852), [sym_ifloat] = ACTIONS(4852), [sym_idouble] = ACTIONS(4852), [sym_ireal] = ACTIONS(4852), [sym_cfloat] = ACTIONS(4852), [sym_cdouble] = ACTIONS(4852), [sym_creal] = ACTIONS(4852), [sym_size_t] = ACTIONS(4852), [sym_ptrdiff_t] = ACTIONS(4852), [sym_string] = ACTIONS(4852), [sym_cstring] = ACTIONS(4852), [sym_dstring] = ACTIONS(4852), [sym_wstring] = ACTIONS(4852), [sym_noreturn] = ACTIONS(4852), [sym_this] = ACTIONS(4852), [sym_abstract] = ACTIONS(4852), [sym_alias] = ACTIONS(4852), [sym_align] = ACTIONS(4852), [sym_auto] = ACTIONS(4852), [sym_class] = ACTIONS(4852), [sym_const] = ACTIONS(4852), [sym_debug] = ACTIONS(4852), [sym_deprecated] = ACTIONS(4852), [sym_else] = ACTIONS(4852), [sym_enum] = ACTIONS(4852), [sym_export] = ACTIONS(4852), [sym_extern] = ACTIONS(4852), [sym_final] = ACTIONS(4852), [sym_immutable] = ACTIONS(4852), [sym_import] = ACTIONS(4852), [sym_inout] = ACTIONS(4852), [sym_interface] = ACTIONS(4852), [sym_invariant] = ACTIONS(4852), [sym_mixin] = ACTIONS(4852), [sym_nothrow] = ACTIONS(4852), [sym_override] = ACTIONS(4852), [sym_package] = ACTIONS(4852), [sym_pragma] = ACTIONS(4852), [sym_private] = ACTIONS(4852), [sym_protected] = ACTIONS(4852), [sym_public] = ACTIONS(4852), [sym_pure] = ACTIONS(4852), [sym_ref] = ACTIONS(4852), [sym_return] = ACTIONS(4852), [sym_scope] = ACTIONS(4852), [sym_shared] = ACTIONS(4852), [sym_static] = ACTIONS(4852), [sym_struct] = ACTIONS(4852), [sym_synchronized] = ACTIONS(4852), [sym_template] = ACTIONS(4852), [sym_typeof] = ACTIONS(4852), [sym_union] = ACTIONS(4852), [sym_unittest] = ACTIONS(4852), [sym_version] = ACTIONS(4852), [sym_while] = ACTIONS(4852), [sym_gshared] = ACTIONS(4852), [sym_traits] = ACTIONS(4852), [sym_vector] = ACTIONS(4852), [sym_void] = ACTIONS(4852), [sym_directive] = ACTIONS(3), }, [2887] = { [sym_identifier] = ACTIONS(4598), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4600), [anon_sym_DOT] = ACTIONS(4600), [anon_sym_SEMI] = ACTIONS(4600), [anon_sym_TILDE] = ACTIONS(4600), [anon_sym_AT] = ACTIONS(4600), [sym_bool] = ACTIONS(4598), [sym_byte] = ACTIONS(4598), [sym_ubyte] = ACTIONS(4598), [sym_char] = ACTIONS(4598), [sym_short] = ACTIONS(4598), [sym_ushort] = ACTIONS(4598), [sym_int] = ACTIONS(4598), [sym_uint] = ACTIONS(4598), [sym_long] = ACTIONS(4598), [sym_ulong] = ACTIONS(4598), [sym_cent] = ACTIONS(4598), [sym_ucent] = ACTIONS(4598), [sym_wchar] = ACTIONS(4598), [sym_dchar] = ACTIONS(4598), [sym_float] = ACTIONS(4598), [sym_double] = ACTIONS(4598), [sym_real] = ACTIONS(4598), [sym_ifloat] = ACTIONS(4598), [sym_idouble] = ACTIONS(4598), [sym_ireal] = ACTIONS(4598), [sym_cfloat] = ACTIONS(4598), [sym_cdouble] = ACTIONS(4598), [sym_creal] = ACTIONS(4598), [sym_size_t] = ACTIONS(4598), [sym_ptrdiff_t] = ACTIONS(4598), [sym_string] = ACTIONS(4598), [sym_cstring] = ACTIONS(4598), [sym_dstring] = ACTIONS(4598), [sym_wstring] = ACTIONS(4598), [sym_noreturn] = ACTIONS(4598), [sym_this] = ACTIONS(4598), [sym_abstract] = ACTIONS(4598), [sym_alias] = ACTIONS(4598), [sym_align] = ACTIONS(4598), [sym_auto] = ACTIONS(4598), [sym_class] = ACTIONS(4598), [sym_const] = ACTIONS(4598), [sym_debug] = ACTIONS(4598), [sym_deprecated] = ACTIONS(4598), [sym_else] = ACTIONS(4598), [sym_enum] = ACTIONS(4598), [sym_export] = ACTIONS(4598), [sym_extern] = ACTIONS(4598), [sym_final] = ACTIONS(4598), [sym_immutable] = ACTIONS(4598), [sym_import] = ACTIONS(4598), [sym_inout] = ACTIONS(4598), [sym_interface] = ACTIONS(4598), [sym_invariant] = ACTIONS(4598), [sym_mixin] = ACTIONS(4598), [sym_nothrow] = ACTIONS(4598), [sym_override] = ACTIONS(4598), [sym_package] = ACTIONS(4598), [sym_pragma] = ACTIONS(4598), [sym_private] = ACTIONS(4598), [sym_protected] = ACTIONS(4598), [sym_public] = ACTIONS(4598), [sym_pure] = ACTIONS(4598), [sym_ref] = ACTIONS(4598), [sym_return] = ACTIONS(4598), [sym_scope] = ACTIONS(4598), [sym_shared] = ACTIONS(4598), [sym_static] = ACTIONS(4598), [sym_struct] = ACTIONS(4598), [sym_synchronized] = ACTIONS(4598), [sym_template] = ACTIONS(4598), [sym_typeof] = ACTIONS(4598), [sym_union] = ACTIONS(4598), [sym_unittest] = ACTIONS(4598), [sym_version] = ACTIONS(4598), [sym_while] = ACTIONS(4598), [sym_gshared] = ACTIONS(4598), [sym_traits] = ACTIONS(4598), [sym_vector] = ACTIONS(4598), [sym_void] = ACTIONS(4598), [sym_directive] = ACTIONS(3), }, [2888] = { [sym_identifier] = ACTIONS(4892), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4894), [anon_sym_DOT] = ACTIONS(4894), [anon_sym_SEMI] = ACTIONS(4894), [anon_sym_TILDE] = ACTIONS(4894), [anon_sym_AT] = ACTIONS(4894), [sym_bool] = ACTIONS(4892), [sym_byte] = ACTIONS(4892), [sym_ubyte] = ACTIONS(4892), [sym_char] = ACTIONS(4892), [sym_short] = ACTIONS(4892), [sym_ushort] = ACTIONS(4892), [sym_int] = ACTIONS(4892), [sym_uint] = ACTIONS(4892), [sym_long] = ACTIONS(4892), [sym_ulong] = ACTIONS(4892), [sym_cent] = ACTIONS(4892), [sym_ucent] = ACTIONS(4892), [sym_wchar] = ACTIONS(4892), [sym_dchar] = ACTIONS(4892), [sym_float] = ACTIONS(4892), [sym_double] = ACTIONS(4892), [sym_real] = ACTIONS(4892), [sym_ifloat] = ACTIONS(4892), [sym_idouble] = ACTIONS(4892), [sym_ireal] = ACTIONS(4892), [sym_cfloat] = ACTIONS(4892), [sym_cdouble] = ACTIONS(4892), [sym_creal] = ACTIONS(4892), [sym_size_t] = ACTIONS(4892), [sym_ptrdiff_t] = ACTIONS(4892), [sym_string] = ACTIONS(4892), [sym_cstring] = ACTIONS(4892), [sym_dstring] = ACTIONS(4892), [sym_wstring] = ACTIONS(4892), [sym_noreturn] = ACTIONS(4892), [sym_this] = ACTIONS(4892), [sym_abstract] = ACTIONS(4892), [sym_alias] = ACTIONS(4892), [sym_align] = ACTIONS(4892), [sym_auto] = ACTIONS(4892), [sym_class] = ACTIONS(4892), [sym_const] = ACTIONS(4892), [sym_debug] = ACTIONS(4892), [sym_deprecated] = ACTIONS(4892), [sym_else] = ACTIONS(4892), [sym_enum] = ACTIONS(4892), [sym_export] = ACTIONS(4892), [sym_extern] = ACTIONS(4892), [sym_final] = ACTIONS(4892), [sym_immutable] = ACTIONS(4892), [sym_import] = ACTIONS(4892), [sym_inout] = ACTIONS(4892), [sym_interface] = ACTIONS(4892), [sym_invariant] = ACTIONS(4892), [sym_mixin] = ACTIONS(4892), [sym_nothrow] = ACTIONS(4892), [sym_override] = ACTIONS(4892), [sym_package] = ACTIONS(4892), [sym_pragma] = ACTIONS(4892), [sym_private] = ACTIONS(4892), [sym_protected] = ACTIONS(4892), [sym_public] = ACTIONS(4892), [sym_pure] = ACTIONS(4892), [sym_ref] = ACTIONS(4892), [sym_return] = ACTIONS(4892), [sym_scope] = ACTIONS(4892), [sym_shared] = ACTIONS(4892), [sym_static] = ACTIONS(4892), [sym_struct] = ACTIONS(4892), [sym_synchronized] = ACTIONS(4892), [sym_template] = ACTIONS(4892), [sym_typeof] = ACTIONS(4892), [sym_union] = ACTIONS(4892), [sym_unittest] = ACTIONS(4892), [sym_version] = ACTIONS(4892), [sym_while] = ACTIONS(4892), [sym_gshared] = ACTIONS(4892), [sym_traits] = ACTIONS(4892), [sym_vector] = ACTIONS(4892), [sym_void] = ACTIONS(4892), [sym_directive] = ACTIONS(3), }, [2889] = { [sym_switch_statement] = STATE(1657), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(848), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2890] = { [sym_identifier] = ACTIONS(4960), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4962), [anon_sym_DOT] = ACTIONS(4962), [anon_sym_SEMI] = ACTIONS(4962), [anon_sym_TILDE] = ACTIONS(4962), [anon_sym_AT] = ACTIONS(4962), [sym_bool] = ACTIONS(4960), [sym_byte] = ACTIONS(4960), [sym_ubyte] = ACTIONS(4960), [sym_char] = ACTIONS(4960), [sym_short] = ACTIONS(4960), [sym_ushort] = ACTIONS(4960), [sym_int] = ACTIONS(4960), [sym_uint] = ACTIONS(4960), [sym_long] = ACTIONS(4960), [sym_ulong] = ACTIONS(4960), [sym_cent] = ACTIONS(4960), [sym_ucent] = ACTIONS(4960), [sym_wchar] = ACTIONS(4960), [sym_dchar] = ACTIONS(4960), [sym_float] = ACTIONS(4960), [sym_double] = ACTIONS(4960), [sym_real] = ACTIONS(4960), [sym_ifloat] = ACTIONS(4960), [sym_idouble] = ACTIONS(4960), [sym_ireal] = ACTIONS(4960), [sym_cfloat] = ACTIONS(4960), [sym_cdouble] = ACTIONS(4960), [sym_creal] = ACTIONS(4960), [sym_size_t] = ACTIONS(4960), [sym_ptrdiff_t] = ACTIONS(4960), [sym_string] = ACTIONS(4960), [sym_cstring] = ACTIONS(4960), [sym_dstring] = ACTIONS(4960), [sym_wstring] = ACTIONS(4960), [sym_noreturn] = ACTIONS(4960), [sym_this] = ACTIONS(4960), [sym_abstract] = ACTIONS(4960), [sym_alias] = ACTIONS(4960), [sym_align] = ACTIONS(4960), [sym_auto] = ACTIONS(4960), [sym_class] = ACTIONS(4960), [sym_const] = ACTIONS(4960), [sym_debug] = ACTIONS(4960), [sym_deprecated] = ACTIONS(4960), [sym_else] = ACTIONS(4960), [sym_enum] = ACTIONS(4960), [sym_export] = ACTIONS(4960), [sym_extern] = ACTIONS(4960), [sym_final] = ACTIONS(4960), [sym_immutable] = ACTIONS(4960), [sym_import] = ACTIONS(4960), [sym_inout] = ACTIONS(4960), [sym_interface] = ACTIONS(4960), [sym_invariant] = ACTIONS(4960), [sym_mixin] = ACTIONS(4960), [sym_nothrow] = ACTIONS(4960), [sym_override] = ACTIONS(4960), [sym_package] = ACTIONS(4960), [sym_pragma] = ACTIONS(4960), [sym_private] = ACTIONS(4960), [sym_protected] = ACTIONS(4960), [sym_public] = ACTIONS(4960), [sym_pure] = ACTIONS(4960), [sym_ref] = ACTIONS(4960), [sym_return] = ACTIONS(4960), [sym_scope] = ACTIONS(4960), [sym_shared] = ACTIONS(4960), [sym_static] = ACTIONS(4960), [sym_struct] = ACTIONS(4960), [sym_synchronized] = ACTIONS(4960), [sym_template] = ACTIONS(4960), [sym_typeof] = ACTIONS(4960), [sym_union] = ACTIONS(4960), [sym_unittest] = ACTIONS(4960), [sym_version] = ACTIONS(4960), [sym_while] = ACTIONS(4960), [sym_gshared] = ACTIONS(4960), [sym_traits] = ACTIONS(4960), [sym_vector] = ACTIONS(4960), [sym_void] = ACTIONS(4960), [sym_directive] = ACTIONS(3), }, [2891] = { [sym_identifier] = ACTIONS(4758), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4760), [anon_sym_DOT] = ACTIONS(4760), [anon_sym_SEMI] = ACTIONS(4760), [anon_sym_TILDE] = ACTIONS(4760), [anon_sym_AT] = ACTIONS(4760), [sym_bool] = ACTIONS(4758), [sym_byte] = ACTIONS(4758), [sym_ubyte] = ACTIONS(4758), [sym_char] = ACTIONS(4758), [sym_short] = ACTIONS(4758), [sym_ushort] = ACTIONS(4758), [sym_int] = ACTIONS(4758), [sym_uint] = ACTIONS(4758), [sym_long] = ACTIONS(4758), [sym_ulong] = ACTIONS(4758), [sym_cent] = ACTIONS(4758), [sym_ucent] = ACTIONS(4758), [sym_wchar] = ACTIONS(4758), [sym_dchar] = ACTIONS(4758), [sym_float] = ACTIONS(4758), [sym_double] = ACTIONS(4758), [sym_real] = ACTIONS(4758), [sym_ifloat] = ACTIONS(4758), [sym_idouble] = ACTIONS(4758), [sym_ireal] = ACTIONS(4758), [sym_cfloat] = ACTIONS(4758), [sym_cdouble] = ACTIONS(4758), [sym_creal] = ACTIONS(4758), [sym_size_t] = ACTIONS(4758), [sym_ptrdiff_t] = ACTIONS(4758), [sym_string] = ACTIONS(4758), [sym_cstring] = ACTIONS(4758), [sym_dstring] = ACTIONS(4758), [sym_wstring] = ACTIONS(4758), [sym_noreturn] = ACTIONS(4758), [sym_this] = ACTIONS(4758), [sym_abstract] = ACTIONS(4758), [sym_alias] = ACTIONS(4758), [sym_align] = ACTIONS(4758), [sym_auto] = ACTIONS(4758), [sym_class] = ACTIONS(4758), [sym_const] = ACTIONS(4758), [sym_debug] = ACTIONS(4758), [sym_deprecated] = ACTIONS(4758), [sym_else] = ACTIONS(4758), [sym_enum] = ACTIONS(4758), [sym_export] = ACTIONS(4758), [sym_extern] = ACTIONS(4758), [sym_final] = ACTIONS(4758), [sym_immutable] = ACTIONS(4758), [sym_import] = ACTIONS(4758), [sym_inout] = ACTIONS(4758), [sym_interface] = ACTIONS(4758), [sym_invariant] = ACTIONS(4758), [sym_mixin] = ACTIONS(4758), [sym_nothrow] = ACTIONS(4758), [sym_override] = ACTIONS(4758), [sym_package] = ACTIONS(4758), [sym_pragma] = ACTIONS(4758), [sym_private] = ACTIONS(4758), [sym_protected] = ACTIONS(4758), [sym_public] = ACTIONS(4758), [sym_pure] = ACTIONS(4758), [sym_ref] = ACTIONS(4758), [sym_return] = ACTIONS(4758), [sym_scope] = ACTIONS(4758), [sym_shared] = ACTIONS(4758), [sym_static] = ACTIONS(4758), [sym_struct] = ACTIONS(4758), [sym_synchronized] = ACTIONS(4758), [sym_template] = ACTIONS(4758), [sym_typeof] = ACTIONS(4758), [sym_union] = ACTIONS(4758), [sym_unittest] = ACTIONS(4758), [sym_version] = ACTIONS(4758), [sym_while] = ACTIONS(4758), [sym_gshared] = ACTIONS(4758), [sym_traits] = ACTIONS(4758), [sym_vector] = ACTIONS(4758), [sym_void] = ACTIONS(4758), [sym_directive] = ACTIONS(3), }, [2892] = { [sym_identifier] = ACTIONS(4750), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4752), [anon_sym_DOT] = ACTIONS(4752), [anon_sym_SEMI] = ACTIONS(4752), [anon_sym_TILDE] = ACTIONS(4752), [anon_sym_AT] = ACTIONS(4752), [sym_bool] = ACTIONS(4750), [sym_byte] = ACTIONS(4750), [sym_ubyte] = ACTIONS(4750), [sym_char] = ACTIONS(4750), [sym_short] = ACTIONS(4750), [sym_ushort] = ACTIONS(4750), [sym_int] = ACTIONS(4750), [sym_uint] = ACTIONS(4750), [sym_long] = ACTIONS(4750), [sym_ulong] = ACTIONS(4750), [sym_cent] = ACTIONS(4750), [sym_ucent] = ACTIONS(4750), [sym_wchar] = ACTIONS(4750), [sym_dchar] = ACTIONS(4750), [sym_float] = ACTIONS(4750), [sym_double] = ACTIONS(4750), [sym_real] = ACTIONS(4750), [sym_ifloat] = ACTIONS(4750), [sym_idouble] = ACTIONS(4750), [sym_ireal] = ACTIONS(4750), [sym_cfloat] = ACTIONS(4750), [sym_cdouble] = ACTIONS(4750), [sym_creal] = ACTIONS(4750), [sym_size_t] = ACTIONS(4750), [sym_ptrdiff_t] = ACTIONS(4750), [sym_string] = ACTIONS(4750), [sym_cstring] = ACTIONS(4750), [sym_dstring] = ACTIONS(4750), [sym_wstring] = ACTIONS(4750), [sym_noreturn] = ACTIONS(4750), [sym_this] = ACTIONS(4750), [sym_abstract] = ACTIONS(4750), [sym_alias] = ACTIONS(4750), [sym_align] = ACTIONS(4750), [sym_auto] = ACTIONS(4750), [sym_class] = ACTIONS(4750), [sym_const] = ACTIONS(4750), [sym_debug] = ACTIONS(4750), [sym_deprecated] = ACTIONS(4750), [sym_else] = ACTIONS(4750), [sym_enum] = ACTIONS(4750), [sym_export] = ACTIONS(4750), [sym_extern] = ACTIONS(4750), [sym_final] = ACTIONS(4750), [sym_immutable] = ACTIONS(4750), [sym_import] = ACTIONS(4750), [sym_inout] = ACTIONS(4750), [sym_interface] = ACTIONS(4750), [sym_invariant] = ACTIONS(4750), [sym_mixin] = ACTIONS(4750), [sym_nothrow] = ACTIONS(4750), [sym_override] = ACTIONS(4750), [sym_package] = ACTIONS(4750), [sym_pragma] = ACTIONS(4750), [sym_private] = ACTIONS(4750), [sym_protected] = ACTIONS(4750), [sym_public] = ACTIONS(4750), [sym_pure] = ACTIONS(4750), [sym_ref] = ACTIONS(4750), [sym_return] = ACTIONS(4750), [sym_scope] = ACTIONS(4750), [sym_shared] = ACTIONS(4750), [sym_static] = ACTIONS(4750), [sym_struct] = ACTIONS(4750), [sym_synchronized] = ACTIONS(4750), [sym_template] = ACTIONS(4750), [sym_typeof] = ACTIONS(4750), [sym_union] = ACTIONS(4750), [sym_unittest] = ACTIONS(4750), [sym_version] = ACTIONS(4750), [sym_while] = ACTIONS(4750), [sym_gshared] = ACTIONS(4750), [sym_traits] = ACTIONS(4750), [sym_vector] = ACTIONS(4750), [sym_void] = ACTIONS(4750), [sym_directive] = ACTIONS(3), }, [2893] = { [sym_identifier] = ACTIONS(4746), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4748), [anon_sym_DOT] = ACTIONS(4748), [anon_sym_SEMI] = ACTIONS(4748), [anon_sym_TILDE] = ACTIONS(4748), [anon_sym_AT] = ACTIONS(4748), [sym_bool] = ACTIONS(4746), [sym_byte] = ACTIONS(4746), [sym_ubyte] = ACTIONS(4746), [sym_char] = ACTIONS(4746), [sym_short] = ACTIONS(4746), [sym_ushort] = ACTIONS(4746), [sym_int] = ACTIONS(4746), [sym_uint] = ACTIONS(4746), [sym_long] = ACTIONS(4746), [sym_ulong] = ACTIONS(4746), [sym_cent] = ACTIONS(4746), [sym_ucent] = ACTIONS(4746), [sym_wchar] = ACTIONS(4746), [sym_dchar] = ACTIONS(4746), [sym_float] = ACTIONS(4746), [sym_double] = ACTIONS(4746), [sym_real] = ACTIONS(4746), [sym_ifloat] = ACTIONS(4746), [sym_idouble] = ACTIONS(4746), [sym_ireal] = ACTIONS(4746), [sym_cfloat] = ACTIONS(4746), [sym_cdouble] = ACTIONS(4746), [sym_creal] = ACTIONS(4746), [sym_size_t] = ACTIONS(4746), [sym_ptrdiff_t] = ACTIONS(4746), [sym_string] = ACTIONS(4746), [sym_cstring] = ACTIONS(4746), [sym_dstring] = ACTIONS(4746), [sym_wstring] = ACTIONS(4746), [sym_noreturn] = ACTIONS(4746), [sym_this] = ACTIONS(4746), [sym_abstract] = ACTIONS(4746), [sym_alias] = ACTIONS(4746), [sym_align] = ACTIONS(4746), [sym_auto] = ACTIONS(4746), [sym_class] = ACTIONS(4746), [sym_const] = ACTIONS(4746), [sym_debug] = ACTIONS(4746), [sym_deprecated] = ACTIONS(4746), [sym_else] = ACTIONS(4746), [sym_enum] = ACTIONS(4746), [sym_export] = ACTIONS(4746), [sym_extern] = ACTIONS(4746), [sym_final] = ACTIONS(4746), [sym_immutable] = ACTIONS(4746), [sym_import] = ACTIONS(4746), [sym_inout] = ACTIONS(4746), [sym_interface] = ACTIONS(4746), [sym_invariant] = ACTIONS(4746), [sym_mixin] = ACTIONS(4746), [sym_nothrow] = ACTIONS(4746), [sym_override] = ACTIONS(4746), [sym_package] = ACTIONS(4746), [sym_pragma] = ACTIONS(4746), [sym_private] = ACTIONS(4746), [sym_protected] = ACTIONS(4746), [sym_public] = ACTIONS(4746), [sym_pure] = ACTIONS(4746), [sym_ref] = ACTIONS(4746), [sym_return] = ACTIONS(4746), [sym_scope] = ACTIONS(4746), [sym_shared] = ACTIONS(4746), [sym_static] = ACTIONS(4746), [sym_struct] = ACTIONS(4746), [sym_synchronized] = ACTIONS(4746), [sym_template] = ACTIONS(4746), [sym_typeof] = ACTIONS(4746), [sym_union] = ACTIONS(4746), [sym_unittest] = ACTIONS(4746), [sym_version] = ACTIONS(4746), [sym_while] = ACTIONS(4746), [sym_gshared] = ACTIONS(4746), [sym_traits] = ACTIONS(4746), [sym_vector] = ACTIONS(4746), [sym_void] = ACTIONS(4746), [sym_directive] = ACTIONS(3), }, [2894] = { [sym_identifier] = ACTIONS(4528), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4531), [anon_sym_DOT] = ACTIONS(4531), [anon_sym_SEMI] = ACTIONS(4531), [anon_sym_TILDE] = ACTIONS(4531), [anon_sym_AT] = ACTIONS(4531), [sym_bool] = ACTIONS(4528), [sym_byte] = ACTIONS(4528), [sym_ubyte] = ACTIONS(4528), [sym_char] = ACTIONS(4528), [sym_short] = ACTIONS(4528), [sym_ushort] = ACTIONS(4528), [sym_int] = ACTIONS(4528), [sym_uint] = ACTIONS(4528), [sym_long] = ACTIONS(4528), [sym_ulong] = ACTIONS(4528), [sym_cent] = ACTIONS(4528), [sym_ucent] = ACTIONS(4528), [sym_wchar] = ACTIONS(4528), [sym_dchar] = ACTIONS(4528), [sym_float] = ACTIONS(4528), [sym_double] = ACTIONS(4528), [sym_real] = ACTIONS(4528), [sym_ifloat] = ACTIONS(4528), [sym_idouble] = ACTIONS(4528), [sym_ireal] = ACTIONS(4528), [sym_cfloat] = ACTIONS(4528), [sym_cdouble] = ACTIONS(4528), [sym_creal] = ACTIONS(4528), [sym_size_t] = ACTIONS(4528), [sym_ptrdiff_t] = ACTIONS(4528), [sym_string] = ACTIONS(4528), [sym_cstring] = ACTIONS(4528), [sym_dstring] = ACTIONS(4528), [sym_wstring] = ACTIONS(4528), [sym_noreturn] = ACTIONS(4528), [sym_this] = ACTIONS(4528), [sym_abstract] = ACTIONS(4528), [sym_alias] = ACTIONS(4528), [sym_align] = ACTIONS(4528), [sym_auto] = ACTIONS(4528), [sym_class] = ACTIONS(4528), [sym_const] = ACTIONS(4528), [sym_debug] = ACTIONS(4528), [sym_deprecated] = ACTIONS(4528), [sym_else] = ACTIONS(4528), [sym_enum] = ACTIONS(4528), [sym_export] = ACTIONS(4528), [sym_extern] = ACTIONS(4528), [sym_final] = ACTIONS(4528), [sym_immutable] = ACTIONS(4528), [sym_import] = ACTIONS(4528), [sym_inout] = ACTIONS(4528), [sym_interface] = ACTIONS(4528), [sym_invariant] = ACTIONS(4528), [sym_mixin] = ACTIONS(4528), [sym_nothrow] = ACTIONS(4528), [sym_override] = ACTIONS(4528), [sym_package] = ACTIONS(4528), [sym_pragma] = ACTIONS(4528), [sym_private] = ACTIONS(4528), [sym_protected] = ACTIONS(4528), [sym_public] = ACTIONS(4528), [sym_pure] = ACTIONS(4528), [sym_ref] = ACTIONS(4528), [sym_return] = ACTIONS(4528), [sym_scope] = ACTIONS(4528), [sym_shared] = ACTIONS(4528), [sym_static] = ACTIONS(4528), [sym_struct] = ACTIONS(4528), [sym_synchronized] = ACTIONS(4528), [sym_template] = ACTIONS(4528), [sym_typeof] = ACTIONS(4528), [sym_union] = ACTIONS(4528), [sym_unittest] = ACTIONS(4528), [sym_version] = ACTIONS(4528), [sym_while] = ACTIONS(4528), [sym_gshared] = ACTIONS(4528), [sym_traits] = ACTIONS(4528), [sym_vector] = ACTIONS(4528), [sym_void] = ACTIONS(4528), [sym_directive] = ACTIONS(3), }, [2895] = { [sym_identifier] = ACTIONS(4610), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4612), [anon_sym_DOT] = ACTIONS(4612), [anon_sym_SEMI] = ACTIONS(4612), [anon_sym_TILDE] = ACTIONS(4612), [anon_sym_AT] = ACTIONS(4612), [sym_bool] = ACTIONS(4610), [sym_byte] = ACTIONS(4610), [sym_ubyte] = ACTIONS(4610), [sym_char] = ACTIONS(4610), [sym_short] = ACTIONS(4610), [sym_ushort] = ACTIONS(4610), [sym_int] = ACTIONS(4610), [sym_uint] = ACTIONS(4610), [sym_long] = ACTIONS(4610), [sym_ulong] = ACTIONS(4610), [sym_cent] = ACTIONS(4610), [sym_ucent] = ACTIONS(4610), [sym_wchar] = ACTIONS(4610), [sym_dchar] = ACTIONS(4610), [sym_float] = ACTIONS(4610), [sym_double] = ACTIONS(4610), [sym_real] = ACTIONS(4610), [sym_ifloat] = ACTIONS(4610), [sym_idouble] = ACTIONS(4610), [sym_ireal] = ACTIONS(4610), [sym_cfloat] = ACTIONS(4610), [sym_cdouble] = ACTIONS(4610), [sym_creal] = ACTIONS(4610), [sym_size_t] = ACTIONS(4610), [sym_ptrdiff_t] = ACTIONS(4610), [sym_string] = ACTIONS(4610), [sym_cstring] = ACTIONS(4610), [sym_dstring] = ACTIONS(4610), [sym_wstring] = ACTIONS(4610), [sym_noreturn] = ACTIONS(4610), [sym_this] = ACTIONS(4610), [sym_abstract] = ACTIONS(4610), [sym_alias] = ACTIONS(4610), [sym_align] = ACTIONS(4610), [sym_auto] = ACTIONS(4610), [sym_class] = ACTIONS(4610), [sym_const] = ACTIONS(4610), [sym_debug] = ACTIONS(4610), [sym_deprecated] = ACTIONS(4610), [sym_else] = ACTIONS(4610), [sym_enum] = ACTIONS(4610), [sym_export] = ACTIONS(4610), [sym_extern] = ACTIONS(4610), [sym_final] = ACTIONS(4610), [sym_immutable] = ACTIONS(4610), [sym_import] = ACTIONS(4610), [sym_inout] = ACTIONS(4610), [sym_interface] = ACTIONS(4610), [sym_invariant] = ACTIONS(4610), [sym_mixin] = ACTIONS(4610), [sym_nothrow] = ACTIONS(4610), [sym_override] = ACTIONS(4610), [sym_package] = ACTIONS(4610), [sym_pragma] = ACTIONS(4610), [sym_private] = ACTIONS(4610), [sym_protected] = ACTIONS(4610), [sym_public] = ACTIONS(4610), [sym_pure] = ACTIONS(4610), [sym_ref] = ACTIONS(4610), [sym_return] = ACTIONS(4610), [sym_scope] = ACTIONS(4610), [sym_shared] = ACTIONS(4610), [sym_static] = ACTIONS(4610), [sym_struct] = ACTIONS(4610), [sym_synchronized] = ACTIONS(4610), [sym_template] = ACTIONS(4610), [sym_typeof] = ACTIONS(4610), [sym_union] = ACTIONS(4610), [sym_unittest] = ACTIONS(4610), [sym_version] = ACTIONS(4610), [sym_while] = ACTIONS(4610), [sym_gshared] = ACTIONS(4610), [sym_traits] = ACTIONS(4610), [sym_vector] = ACTIONS(4610), [sym_void] = ACTIONS(4610), [sym_directive] = ACTIONS(3), }, [2896] = { [sym_identifier] = ACTIONS(4446), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4448), [anon_sym_DOT] = ACTIONS(4448), [anon_sym_SEMI] = ACTIONS(4448), [anon_sym_TILDE] = ACTIONS(4448), [anon_sym_AT] = ACTIONS(4448), [sym_bool] = ACTIONS(4446), [sym_byte] = ACTIONS(4446), [sym_ubyte] = ACTIONS(4446), [sym_char] = ACTIONS(4446), [sym_short] = ACTIONS(4446), [sym_ushort] = ACTIONS(4446), [sym_int] = ACTIONS(4446), [sym_uint] = ACTIONS(4446), [sym_long] = ACTIONS(4446), [sym_ulong] = ACTIONS(4446), [sym_cent] = ACTIONS(4446), [sym_ucent] = ACTIONS(4446), [sym_wchar] = ACTIONS(4446), [sym_dchar] = ACTIONS(4446), [sym_float] = ACTIONS(4446), [sym_double] = ACTIONS(4446), [sym_real] = ACTIONS(4446), [sym_ifloat] = ACTIONS(4446), [sym_idouble] = ACTIONS(4446), [sym_ireal] = ACTIONS(4446), [sym_cfloat] = ACTIONS(4446), [sym_cdouble] = ACTIONS(4446), [sym_creal] = ACTIONS(4446), [sym_size_t] = ACTIONS(4446), [sym_ptrdiff_t] = ACTIONS(4446), [sym_string] = ACTIONS(4446), [sym_cstring] = ACTIONS(4446), [sym_dstring] = ACTIONS(4446), [sym_wstring] = ACTIONS(4446), [sym_noreturn] = ACTIONS(4446), [sym_this] = ACTIONS(4446), [sym_abstract] = ACTIONS(4446), [sym_alias] = ACTIONS(4446), [sym_align] = ACTIONS(4446), [sym_auto] = ACTIONS(4446), [sym_class] = ACTIONS(4446), [sym_const] = ACTIONS(4446), [sym_debug] = ACTIONS(4446), [sym_deprecated] = ACTIONS(4446), [sym_else] = ACTIONS(6823), [sym_enum] = ACTIONS(4446), [sym_export] = ACTIONS(4446), [sym_extern] = ACTIONS(4446), [sym_final] = ACTIONS(4446), [sym_immutable] = ACTIONS(4446), [sym_import] = ACTIONS(4446), [sym_inout] = ACTIONS(4446), [sym_interface] = ACTIONS(4446), [sym_invariant] = ACTIONS(4446), [sym_mixin] = ACTIONS(4446), [sym_nothrow] = ACTIONS(4446), [sym_override] = ACTIONS(4446), [sym_package] = ACTIONS(4446), [sym_pragma] = ACTIONS(4446), [sym_private] = ACTIONS(4446), [sym_protected] = ACTIONS(4446), [sym_public] = ACTIONS(4446), [sym_pure] = ACTIONS(4446), [sym_ref] = ACTIONS(4446), [sym_return] = ACTIONS(4446), [sym_scope] = ACTIONS(4446), [sym_shared] = ACTIONS(4446), [sym_static] = ACTIONS(4446), [sym_struct] = ACTIONS(4446), [sym_synchronized] = ACTIONS(4446), [sym_template] = ACTIONS(4446), [sym_typeof] = ACTIONS(4446), [sym_union] = ACTIONS(4446), [sym_unittest] = ACTIONS(4446), [sym_version] = ACTIONS(4446), [sym_while] = ACTIONS(4446), [sym_gshared] = ACTIONS(4446), [sym_traits] = ACTIONS(4446), [sym_vector] = ACTIONS(4446), [sym_void] = ACTIONS(4446), [sym_directive] = ACTIONS(3), }, [2897] = { [sym_identifier] = ACTIONS(4480), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4482), [anon_sym_DOT] = ACTIONS(4482), [anon_sym_SEMI] = ACTIONS(4482), [anon_sym_TILDE] = ACTIONS(4482), [anon_sym_AT] = ACTIONS(4482), [sym_bool] = ACTIONS(4480), [sym_byte] = ACTIONS(4480), [sym_ubyte] = ACTIONS(4480), [sym_char] = ACTIONS(4480), [sym_short] = ACTIONS(4480), [sym_ushort] = ACTIONS(4480), [sym_int] = ACTIONS(4480), [sym_uint] = ACTIONS(4480), [sym_long] = ACTIONS(4480), [sym_ulong] = ACTIONS(4480), [sym_cent] = ACTIONS(4480), [sym_ucent] = ACTIONS(4480), [sym_wchar] = ACTIONS(4480), [sym_dchar] = ACTIONS(4480), [sym_float] = ACTIONS(4480), [sym_double] = ACTIONS(4480), [sym_real] = ACTIONS(4480), [sym_ifloat] = ACTIONS(4480), [sym_idouble] = ACTIONS(4480), [sym_ireal] = ACTIONS(4480), [sym_cfloat] = ACTIONS(4480), [sym_cdouble] = ACTIONS(4480), [sym_creal] = ACTIONS(4480), [sym_size_t] = ACTIONS(4480), [sym_ptrdiff_t] = ACTIONS(4480), [sym_string] = ACTIONS(4480), [sym_cstring] = ACTIONS(4480), [sym_dstring] = ACTIONS(4480), [sym_wstring] = ACTIONS(4480), [sym_noreturn] = ACTIONS(4480), [sym_this] = ACTIONS(4480), [sym_abstract] = ACTIONS(4480), [sym_alias] = ACTIONS(4480), [sym_align] = ACTIONS(4480), [sym_auto] = ACTIONS(4480), [sym_class] = ACTIONS(4480), [sym_const] = ACTIONS(4480), [sym_debug] = ACTIONS(4480), [sym_deprecated] = ACTIONS(4480), [sym_else] = ACTIONS(4480), [sym_enum] = ACTIONS(4480), [sym_export] = ACTIONS(4480), [sym_extern] = ACTIONS(4480), [sym_final] = ACTIONS(4480), [sym_immutable] = ACTIONS(4480), [sym_import] = ACTIONS(4480), [sym_inout] = ACTIONS(4480), [sym_interface] = ACTIONS(4480), [sym_invariant] = ACTIONS(4480), [sym_mixin] = ACTIONS(4480), [sym_nothrow] = ACTIONS(4480), [sym_override] = ACTIONS(4480), [sym_package] = ACTIONS(4480), [sym_pragma] = ACTIONS(4480), [sym_private] = ACTIONS(4480), [sym_protected] = ACTIONS(4480), [sym_public] = ACTIONS(4480), [sym_pure] = ACTIONS(4480), [sym_ref] = ACTIONS(4480), [sym_return] = ACTIONS(4480), [sym_scope] = ACTIONS(4480), [sym_shared] = ACTIONS(4480), [sym_static] = ACTIONS(4480), [sym_struct] = ACTIONS(4480), [sym_synchronized] = ACTIONS(4480), [sym_template] = ACTIONS(4480), [sym_typeof] = ACTIONS(4480), [sym_union] = ACTIONS(4480), [sym_unittest] = ACTIONS(4480), [sym_version] = ACTIONS(4480), [sym_while] = ACTIONS(4480), [sym_gshared] = ACTIONS(4480), [sym_traits] = ACTIONS(4480), [sym_vector] = ACTIONS(4480), [sym_void] = ACTIONS(4480), [sym_directive] = ACTIONS(3), }, [2898] = { [sym_identifier] = ACTIONS(4616), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4618), [anon_sym_DOT] = ACTIONS(4618), [anon_sym_SEMI] = ACTIONS(4618), [anon_sym_TILDE] = ACTIONS(4618), [anon_sym_AT] = ACTIONS(4618), [sym_bool] = ACTIONS(4616), [sym_byte] = ACTIONS(4616), [sym_ubyte] = ACTIONS(4616), [sym_char] = ACTIONS(4616), [sym_short] = ACTIONS(4616), [sym_ushort] = ACTIONS(4616), [sym_int] = ACTIONS(4616), [sym_uint] = ACTIONS(4616), [sym_long] = ACTIONS(4616), [sym_ulong] = ACTIONS(4616), [sym_cent] = ACTIONS(4616), [sym_ucent] = ACTIONS(4616), [sym_wchar] = ACTIONS(4616), [sym_dchar] = ACTIONS(4616), [sym_float] = ACTIONS(4616), [sym_double] = ACTIONS(4616), [sym_real] = ACTIONS(4616), [sym_ifloat] = ACTIONS(4616), [sym_idouble] = ACTIONS(4616), [sym_ireal] = ACTIONS(4616), [sym_cfloat] = ACTIONS(4616), [sym_cdouble] = ACTIONS(4616), [sym_creal] = ACTIONS(4616), [sym_size_t] = ACTIONS(4616), [sym_ptrdiff_t] = ACTIONS(4616), [sym_string] = ACTIONS(4616), [sym_cstring] = ACTIONS(4616), [sym_dstring] = ACTIONS(4616), [sym_wstring] = ACTIONS(4616), [sym_noreturn] = ACTIONS(4616), [sym_this] = ACTIONS(4616), [sym_abstract] = ACTIONS(4616), [sym_alias] = ACTIONS(4616), [sym_align] = ACTIONS(4616), [sym_auto] = ACTIONS(4616), [sym_class] = ACTIONS(4616), [sym_const] = ACTIONS(4616), [sym_debug] = ACTIONS(4616), [sym_deprecated] = ACTIONS(4616), [sym_else] = ACTIONS(4616), [sym_enum] = ACTIONS(4616), [sym_export] = ACTIONS(4616), [sym_extern] = ACTIONS(4616), [sym_final] = ACTIONS(4616), [sym_immutable] = ACTIONS(4616), [sym_import] = ACTIONS(4616), [sym_inout] = ACTIONS(4616), [sym_interface] = ACTIONS(4616), [sym_invariant] = ACTIONS(4616), [sym_mixin] = ACTIONS(4616), [sym_nothrow] = ACTIONS(4616), [sym_override] = ACTIONS(4616), [sym_package] = ACTIONS(4616), [sym_pragma] = ACTIONS(4616), [sym_private] = ACTIONS(4616), [sym_protected] = ACTIONS(4616), [sym_public] = ACTIONS(4616), [sym_pure] = ACTIONS(4616), [sym_ref] = ACTIONS(4616), [sym_return] = ACTIONS(4616), [sym_scope] = ACTIONS(4616), [sym_shared] = ACTIONS(4616), [sym_static] = ACTIONS(4616), [sym_struct] = ACTIONS(4616), [sym_synchronized] = ACTIONS(4616), [sym_template] = ACTIONS(4616), [sym_typeof] = ACTIONS(4616), [sym_union] = ACTIONS(4616), [sym_unittest] = ACTIONS(4616), [sym_version] = ACTIONS(4616), [sym_while] = ACTIONS(4616), [sym_gshared] = ACTIONS(4616), [sym_traits] = ACTIONS(4616), [sym_vector] = ACTIONS(4616), [sym_void] = ACTIONS(4616), [sym_directive] = ACTIONS(3), }, [2899] = { [sym_identifier] = ACTIONS(4620), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4622), [anon_sym_DOT] = ACTIONS(4622), [anon_sym_SEMI] = ACTIONS(4622), [anon_sym_TILDE] = ACTIONS(4622), [anon_sym_AT] = ACTIONS(4622), [sym_bool] = ACTIONS(4620), [sym_byte] = ACTIONS(4620), [sym_ubyte] = ACTIONS(4620), [sym_char] = ACTIONS(4620), [sym_short] = ACTIONS(4620), [sym_ushort] = ACTIONS(4620), [sym_int] = ACTIONS(4620), [sym_uint] = ACTIONS(4620), [sym_long] = ACTIONS(4620), [sym_ulong] = ACTIONS(4620), [sym_cent] = ACTIONS(4620), [sym_ucent] = ACTIONS(4620), [sym_wchar] = ACTIONS(4620), [sym_dchar] = ACTIONS(4620), [sym_float] = ACTIONS(4620), [sym_double] = ACTIONS(4620), [sym_real] = ACTIONS(4620), [sym_ifloat] = ACTIONS(4620), [sym_idouble] = ACTIONS(4620), [sym_ireal] = ACTIONS(4620), [sym_cfloat] = ACTIONS(4620), [sym_cdouble] = ACTIONS(4620), [sym_creal] = ACTIONS(4620), [sym_size_t] = ACTIONS(4620), [sym_ptrdiff_t] = ACTIONS(4620), [sym_string] = ACTIONS(4620), [sym_cstring] = ACTIONS(4620), [sym_dstring] = ACTIONS(4620), [sym_wstring] = ACTIONS(4620), [sym_noreturn] = ACTIONS(4620), [sym_this] = ACTIONS(4620), [sym_abstract] = ACTIONS(4620), [sym_alias] = ACTIONS(4620), [sym_align] = ACTIONS(4620), [sym_auto] = ACTIONS(4620), [sym_class] = ACTIONS(4620), [sym_const] = ACTIONS(4620), [sym_debug] = ACTIONS(4620), [sym_deprecated] = ACTIONS(4620), [sym_else] = ACTIONS(4620), [sym_enum] = ACTIONS(4620), [sym_export] = ACTIONS(4620), [sym_extern] = ACTIONS(4620), [sym_final] = ACTIONS(4620), [sym_immutable] = ACTIONS(4620), [sym_import] = ACTIONS(4620), [sym_inout] = ACTIONS(4620), [sym_interface] = ACTIONS(4620), [sym_invariant] = ACTIONS(4620), [sym_mixin] = ACTIONS(4620), [sym_nothrow] = ACTIONS(4620), [sym_override] = ACTIONS(4620), [sym_package] = ACTIONS(4620), [sym_pragma] = ACTIONS(4620), [sym_private] = ACTIONS(4620), [sym_protected] = ACTIONS(4620), [sym_public] = ACTIONS(4620), [sym_pure] = ACTIONS(4620), [sym_ref] = ACTIONS(4620), [sym_return] = ACTIONS(4620), [sym_scope] = ACTIONS(4620), [sym_shared] = ACTIONS(4620), [sym_static] = ACTIONS(4620), [sym_struct] = ACTIONS(4620), [sym_synchronized] = ACTIONS(4620), [sym_template] = ACTIONS(4620), [sym_typeof] = ACTIONS(4620), [sym_union] = ACTIONS(4620), [sym_unittest] = ACTIONS(4620), [sym_version] = ACTIONS(4620), [sym_while] = ACTIONS(4620), [sym_gshared] = ACTIONS(4620), [sym_traits] = ACTIONS(4620), [sym_vector] = ACTIONS(4620), [sym_void] = ACTIONS(4620), [sym_directive] = ACTIONS(3), }, [2900] = { [sym_identifier] = ACTIONS(4724), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4726), [anon_sym_DOT] = ACTIONS(4726), [anon_sym_SEMI] = ACTIONS(4726), [anon_sym_TILDE] = ACTIONS(4726), [anon_sym_AT] = ACTIONS(4726), [sym_bool] = ACTIONS(4724), [sym_byte] = ACTIONS(4724), [sym_ubyte] = ACTIONS(4724), [sym_char] = ACTIONS(4724), [sym_short] = ACTIONS(4724), [sym_ushort] = ACTIONS(4724), [sym_int] = ACTIONS(4724), [sym_uint] = ACTIONS(4724), [sym_long] = ACTIONS(4724), [sym_ulong] = ACTIONS(4724), [sym_cent] = ACTIONS(4724), [sym_ucent] = ACTIONS(4724), [sym_wchar] = ACTIONS(4724), [sym_dchar] = ACTIONS(4724), [sym_float] = ACTIONS(4724), [sym_double] = ACTIONS(4724), [sym_real] = ACTIONS(4724), [sym_ifloat] = ACTIONS(4724), [sym_idouble] = ACTIONS(4724), [sym_ireal] = ACTIONS(4724), [sym_cfloat] = ACTIONS(4724), [sym_cdouble] = ACTIONS(4724), [sym_creal] = ACTIONS(4724), [sym_size_t] = ACTIONS(4724), [sym_ptrdiff_t] = ACTIONS(4724), [sym_string] = ACTIONS(4724), [sym_cstring] = ACTIONS(4724), [sym_dstring] = ACTIONS(4724), [sym_wstring] = ACTIONS(4724), [sym_noreturn] = ACTIONS(4724), [sym_this] = ACTIONS(4724), [sym_abstract] = ACTIONS(4724), [sym_alias] = ACTIONS(4724), [sym_align] = ACTIONS(4724), [sym_auto] = ACTIONS(4724), [sym_class] = ACTIONS(4724), [sym_const] = ACTIONS(4724), [sym_debug] = ACTIONS(4724), [sym_deprecated] = ACTIONS(4724), [sym_else] = ACTIONS(4724), [sym_enum] = ACTIONS(4724), [sym_export] = ACTIONS(4724), [sym_extern] = ACTIONS(4724), [sym_final] = ACTIONS(4724), [sym_immutable] = ACTIONS(4724), [sym_import] = ACTIONS(4724), [sym_inout] = ACTIONS(4724), [sym_interface] = ACTIONS(4724), [sym_invariant] = ACTIONS(4724), [sym_mixin] = ACTIONS(4724), [sym_nothrow] = ACTIONS(4724), [sym_override] = ACTIONS(4724), [sym_package] = ACTIONS(4724), [sym_pragma] = ACTIONS(4724), [sym_private] = ACTIONS(4724), [sym_protected] = ACTIONS(4724), [sym_public] = ACTIONS(4724), [sym_pure] = ACTIONS(4724), [sym_ref] = ACTIONS(4724), [sym_return] = ACTIONS(4724), [sym_scope] = ACTIONS(4724), [sym_shared] = ACTIONS(4724), [sym_static] = ACTIONS(4724), [sym_struct] = ACTIONS(4724), [sym_synchronized] = ACTIONS(4724), [sym_template] = ACTIONS(4724), [sym_typeof] = ACTIONS(4724), [sym_union] = ACTIONS(4724), [sym_unittest] = ACTIONS(4724), [sym_version] = ACTIONS(4724), [sym_while] = ACTIONS(4724), [sym_gshared] = ACTIONS(4724), [sym_traits] = ACTIONS(4724), [sym_vector] = ACTIONS(4724), [sym_void] = ACTIONS(4724), [sym_directive] = ACTIONS(3), }, [2901] = { [sym_identifier] = ACTIONS(4716), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4718), [anon_sym_DOT] = ACTIONS(4718), [anon_sym_SEMI] = ACTIONS(4718), [anon_sym_TILDE] = ACTIONS(4718), [anon_sym_AT] = ACTIONS(4718), [sym_bool] = ACTIONS(4716), [sym_byte] = ACTIONS(4716), [sym_ubyte] = ACTIONS(4716), [sym_char] = ACTIONS(4716), [sym_short] = ACTIONS(4716), [sym_ushort] = ACTIONS(4716), [sym_int] = ACTIONS(4716), [sym_uint] = ACTIONS(4716), [sym_long] = ACTIONS(4716), [sym_ulong] = ACTIONS(4716), [sym_cent] = ACTIONS(4716), [sym_ucent] = ACTIONS(4716), [sym_wchar] = ACTIONS(4716), [sym_dchar] = ACTIONS(4716), [sym_float] = ACTIONS(4716), [sym_double] = ACTIONS(4716), [sym_real] = ACTIONS(4716), [sym_ifloat] = ACTIONS(4716), [sym_idouble] = ACTIONS(4716), [sym_ireal] = ACTIONS(4716), [sym_cfloat] = ACTIONS(4716), [sym_cdouble] = ACTIONS(4716), [sym_creal] = ACTIONS(4716), [sym_size_t] = ACTIONS(4716), [sym_ptrdiff_t] = ACTIONS(4716), [sym_string] = ACTIONS(4716), [sym_cstring] = ACTIONS(4716), [sym_dstring] = ACTIONS(4716), [sym_wstring] = ACTIONS(4716), [sym_noreturn] = ACTIONS(4716), [sym_this] = ACTIONS(4716), [sym_abstract] = ACTIONS(4716), [sym_alias] = ACTIONS(4716), [sym_align] = ACTIONS(4716), [sym_auto] = ACTIONS(4716), [sym_class] = ACTIONS(4716), [sym_const] = ACTIONS(4716), [sym_debug] = ACTIONS(4716), [sym_deprecated] = ACTIONS(4716), [sym_else] = ACTIONS(4716), [sym_enum] = ACTIONS(4716), [sym_export] = ACTIONS(4716), [sym_extern] = ACTIONS(4716), [sym_final] = ACTIONS(4716), [sym_immutable] = ACTIONS(4716), [sym_import] = ACTIONS(4716), [sym_inout] = ACTIONS(4716), [sym_interface] = ACTIONS(4716), [sym_invariant] = ACTIONS(4716), [sym_mixin] = ACTIONS(4716), [sym_nothrow] = ACTIONS(4716), [sym_override] = ACTIONS(4716), [sym_package] = ACTIONS(4716), [sym_pragma] = ACTIONS(4716), [sym_private] = ACTIONS(4716), [sym_protected] = ACTIONS(4716), [sym_public] = ACTIONS(4716), [sym_pure] = ACTIONS(4716), [sym_ref] = ACTIONS(4716), [sym_return] = ACTIONS(4716), [sym_scope] = ACTIONS(4716), [sym_shared] = ACTIONS(4716), [sym_static] = ACTIONS(4716), [sym_struct] = ACTIONS(4716), [sym_synchronized] = ACTIONS(4716), [sym_template] = ACTIONS(4716), [sym_typeof] = ACTIONS(4716), [sym_union] = ACTIONS(4716), [sym_unittest] = ACTIONS(4716), [sym_version] = ACTIONS(4716), [sym_while] = ACTIONS(4716), [sym_gshared] = ACTIONS(4716), [sym_traits] = ACTIONS(4716), [sym_vector] = ACTIONS(4716), [sym_void] = ACTIONS(4716), [sym_directive] = ACTIONS(3), }, [2902] = { [sym_identifier] = ACTIONS(4289), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4291), [anon_sym_DOT] = ACTIONS(4291), [anon_sym_SEMI] = ACTIONS(4291), [anon_sym_TILDE] = ACTIONS(4291), [anon_sym_AT] = ACTIONS(4291), [sym_bool] = ACTIONS(4289), [sym_byte] = ACTIONS(4289), [sym_ubyte] = ACTIONS(4289), [sym_char] = ACTIONS(4289), [sym_short] = ACTIONS(4289), [sym_ushort] = ACTIONS(4289), [sym_int] = ACTIONS(4289), [sym_uint] = ACTIONS(4289), [sym_long] = ACTIONS(4289), [sym_ulong] = ACTIONS(4289), [sym_cent] = ACTIONS(4289), [sym_ucent] = ACTIONS(4289), [sym_wchar] = ACTIONS(4289), [sym_dchar] = ACTIONS(4289), [sym_float] = ACTIONS(4289), [sym_double] = ACTIONS(4289), [sym_real] = ACTIONS(4289), [sym_ifloat] = ACTIONS(4289), [sym_idouble] = ACTIONS(4289), [sym_ireal] = ACTIONS(4289), [sym_cfloat] = ACTIONS(4289), [sym_cdouble] = ACTIONS(4289), [sym_creal] = ACTIONS(4289), [sym_size_t] = ACTIONS(4289), [sym_ptrdiff_t] = ACTIONS(4289), [sym_string] = ACTIONS(4289), [sym_cstring] = ACTIONS(4289), [sym_dstring] = ACTIONS(4289), [sym_wstring] = ACTIONS(4289), [sym_noreturn] = ACTIONS(4289), [sym_this] = ACTIONS(4289), [sym_abstract] = ACTIONS(4289), [sym_alias] = ACTIONS(4289), [sym_align] = ACTIONS(4289), [sym_auto] = ACTIONS(4289), [sym_class] = ACTIONS(4289), [sym_const] = ACTIONS(4289), [sym_debug] = ACTIONS(4289), [sym_deprecated] = ACTIONS(4289), [sym_else] = ACTIONS(4289), [sym_enum] = ACTIONS(4289), [sym_export] = ACTIONS(4289), [sym_extern] = ACTIONS(4289), [sym_final] = ACTIONS(4289), [sym_immutable] = ACTIONS(4289), [sym_import] = ACTIONS(4289), [sym_inout] = ACTIONS(4289), [sym_interface] = ACTIONS(4289), [sym_invariant] = ACTIONS(4289), [sym_mixin] = ACTIONS(4289), [sym_nothrow] = ACTIONS(4289), [sym_override] = ACTIONS(4289), [sym_package] = ACTIONS(4289), [sym_pragma] = ACTIONS(4289), [sym_private] = ACTIONS(4289), [sym_protected] = ACTIONS(4289), [sym_public] = ACTIONS(4289), [sym_pure] = ACTIONS(4289), [sym_ref] = ACTIONS(4289), [sym_return] = ACTIONS(4289), [sym_scope] = ACTIONS(4289), [sym_shared] = ACTIONS(4289), [sym_static] = ACTIONS(4289), [sym_struct] = ACTIONS(4289), [sym_synchronized] = ACTIONS(4289), [sym_template] = ACTIONS(4289), [sym_typeof] = ACTIONS(4289), [sym_union] = ACTIONS(4289), [sym_unittest] = ACTIONS(4289), [sym_version] = ACTIONS(4289), [sym_while] = ACTIONS(4289), [sym_gshared] = ACTIONS(4289), [sym_traits] = ACTIONS(4289), [sym_vector] = ACTIONS(4289), [sym_void] = ACTIONS(4289), [sym_directive] = ACTIONS(3), }, [2903] = { [sym_identifier] = ACTIONS(4690), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4692), [anon_sym_DOT] = ACTIONS(4692), [anon_sym_SEMI] = ACTIONS(4692), [anon_sym_TILDE] = ACTIONS(4692), [anon_sym_AT] = ACTIONS(4692), [sym_bool] = ACTIONS(4690), [sym_byte] = ACTIONS(4690), [sym_ubyte] = ACTIONS(4690), [sym_char] = ACTIONS(4690), [sym_short] = ACTIONS(4690), [sym_ushort] = ACTIONS(4690), [sym_int] = ACTIONS(4690), [sym_uint] = ACTIONS(4690), [sym_long] = ACTIONS(4690), [sym_ulong] = ACTIONS(4690), [sym_cent] = ACTIONS(4690), [sym_ucent] = ACTIONS(4690), [sym_wchar] = ACTIONS(4690), [sym_dchar] = ACTIONS(4690), [sym_float] = ACTIONS(4690), [sym_double] = ACTIONS(4690), [sym_real] = ACTIONS(4690), [sym_ifloat] = ACTIONS(4690), [sym_idouble] = ACTIONS(4690), [sym_ireal] = ACTIONS(4690), [sym_cfloat] = ACTIONS(4690), [sym_cdouble] = ACTIONS(4690), [sym_creal] = ACTIONS(4690), [sym_size_t] = ACTIONS(4690), [sym_ptrdiff_t] = ACTIONS(4690), [sym_string] = ACTIONS(4690), [sym_cstring] = ACTIONS(4690), [sym_dstring] = ACTIONS(4690), [sym_wstring] = ACTIONS(4690), [sym_noreturn] = ACTIONS(4690), [sym_this] = ACTIONS(4690), [sym_abstract] = ACTIONS(4690), [sym_alias] = ACTIONS(4690), [sym_align] = ACTIONS(4690), [sym_auto] = ACTIONS(4690), [sym_class] = ACTIONS(4690), [sym_const] = ACTIONS(4690), [sym_debug] = ACTIONS(4690), [sym_deprecated] = ACTIONS(4690), [sym_else] = ACTIONS(4690), [sym_enum] = ACTIONS(4690), [sym_export] = ACTIONS(4690), [sym_extern] = ACTIONS(4690), [sym_final] = ACTIONS(4690), [sym_immutable] = ACTIONS(4690), [sym_import] = ACTIONS(4690), [sym_inout] = ACTIONS(4690), [sym_interface] = ACTIONS(4690), [sym_invariant] = ACTIONS(4690), [sym_mixin] = ACTIONS(4690), [sym_nothrow] = ACTIONS(4690), [sym_override] = ACTIONS(4690), [sym_package] = ACTIONS(4690), [sym_pragma] = ACTIONS(4690), [sym_private] = ACTIONS(4690), [sym_protected] = ACTIONS(4690), [sym_public] = ACTIONS(4690), [sym_pure] = ACTIONS(4690), [sym_ref] = ACTIONS(4690), [sym_return] = ACTIONS(4690), [sym_scope] = ACTIONS(4690), [sym_shared] = ACTIONS(4690), [sym_static] = ACTIONS(4690), [sym_struct] = ACTIONS(4690), [sym_synchronized] = ACTIONS(4690), [sym_template] = ACTIONS(4690), [sym_typeof] = ACTIONS(4690), [sym_union] = ACTIONS(4690), [sym_unittest] = ACTIONS(4690), [sym_version] = ACTIONS(4690), [sym_while] = ACTIONS(4690), [sym_gshared] = ACTIONS(4690), [sym_traits] = ACTIONS(4690), [sym_vector] = ACTIONS(4690), [sym_void] = ACTIONS(4690), [sym_directive] = ACTIONS(3), }, [2904] = { [sym_identifier] = ACTIONS(4624), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4626), [anon_sym_DOT] = ACTIONS(4626), [anon_sym_SEMI] = ACTIONS(4626), [anon_sym_TILDE] = ACTIONS(4626), [anon_sym_AT] = ACTIONS(4626), [sym_bool] = ACTIONS(4624), [sym_byte] = ACTIONS(4624), [sym_ubyte] = ACTIONS(4624), [sym_char] = ACTIONS(4624), [sym_short] = ACTIONS(4624), [sym_ushort] = ACTIONS(4624), [sym_int] = ACTIONS(4624), [sym_uint] = ACTIONS(4624), [sym_long] = ACTIONS(4624), [sym_ulong] = ACTIONS(4624), [sym_cent] = ACTIONS(4624), [sym_ucent] = ACTIONS(4624), [sym_wchar] = ACTIONS(4624), [sym_dchar] = ACTIONS(4624), [sym_float] = ACTIONS(4624), [sym_double] = ACTIONS(4624), [sym_real] = ACTIONS(4624), [sym_ifloat] = ACTIONS(4624), [sym_idouble] = ACTIONS(4624), [sym_ireal] = ACTIONS(4624), [sym_cfloat] = ACTIONS(4624), [sym_cdouble] = ACTIONS(4624), [sym_creal] = ACTIONS(4624), [sym_size_t] = ACTIONS(4624), [sym_ptrdiff_t] = ACTIONS(4624), [sym_string] = ACTIONS(4624), [sym_cstring] = ACTIONS(4624), [sym_dstring] = ACTIONS(4624), [sym_wstring] = ACTIONS(4624), [sym_noreturn] = ACTIONS(4624), [sym_this] = ACTIONS(4624), [sym_abstract] = ACTIONS(4624), [sym_alias] = ACTIONS(4624), [sym_align] = ACTIONS(4624), [sym_auto] = ACTIONS(4624), [sym_class] = ACTIONS(4624), [sym_const] = ACTIONS(4624), [sym_debug] = ACTIONS(4624), [sym_deprecated] = ACTIONS(4624), [sym_else] = ACTIONS(4624), [sym_enum] = ACTIONS(4624), [sym_export] = ACTIONS(4624), [sym_extern] = ACTIONS(4624), [sym_final] = ACTIONS(4624), [sym_immutable] = ACTIONS(4624), [sym_import] = ACTIONS(4624), [sym_inout] = ACTIONS(4624), [sym_interface] = ACTIONS(4624), [sym_invariant] = ACTIONS(4624), [sym_mixin] = ACTIONS(4624), [sym_nothrow] = ACTIONS(4624), [sym_override] = ACTIONS(4624), [sym_package] = ACTIONS(4624), [sym_pragma] = ACTIONS(4624), [sym_private] = ACTIONS(4624), [sym_protected] = ACTIONS(4624), [sym_public] = ACTIONS(4624), [sym_pure] = ACTIONS(4624), [sym_ref] = ACTIONS(4624), [sym_return] = ACTIONS(4624), [sym_scope] = ACTIONS(4624), [sym_shared] = ACTIONS(4624), [sym_static] = ACTIONS(4624), [sym_struct] = ACTIONS(4624), [sym_synchronized] = ACTIONS(4624), [sym_template] = ACTIONS(4624), [sym_typeof] = ACTIONS(4624), [sym_union] = ACTIONS(4624), [sym_unittest] = ACTIONS(4624), [sym_version] = ACTIONS(4624), [sym_while] = ACTIONS(4624), [sym_gshared] = ACTIONS(4624), [sym_traits] = ACTIONS(4624), [sym_vector] = ACTIONS(4624), [sym_void] = ACTIONS(4624), [sym_directive] = ACTIONS(3), }, [2905] = { [sym_identifier] = ACTIONS(6813), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6806), [anon_sym_DOT] = ACTIONS(6806), [anon_sym_LPAREN] = ACTIONS(6811), [anon_sym_COLON] = ACTIONS(6806), [anon_sym_TILDE] = ACTIONS(6806), [anon_sym_AT] = ACTIONS(6806), [sym_bool] = ACTIONS(6813), [sym_byte] = ACTIONS(6813), [sym_ubyte] = ACTIONS(6813), [sym_char] = ACTIONS(6813), [sym_short] = ACTIONS(6813), [sym_ushort] = ACTIONS(6813), [sym_int] = ACTIONS(6813), [sym_uint] = ACTIONS(6813), [sym_long] = ACTIONS(6813), [sym_ulong] = ACTIONS(6813), [sym_cent] = ACTIONS(6813), [sym_ucent] = ACTIONS(6813), [sym_wchar] = ACTIONS(6813), [sym_dchar] = ACTIONS(6813), [sym_float] = ACTIONS(6813), [sym_double] = ACTIONS(6813), [sym_real] = ACTIONS(6813), [sym_ifloat] = ACTIONS(6813), [sym_idouble] = ACTIONS(6813), [sym_ireal] = ACTIONS(6813), [sym_cfloat] = ACTIONS(6813), [sym_cdouble] = ACTIONS(6813), [sym_creal] = ACTIONS(6813), [sym_size_t] = ACTIONS(6813), [sym_ptrdiff_t] = ACTIONS(6813), [sym_string] = ACTIONS(6813), [sym_cstring] = ACTIONS(6813), [sym_dstring] = ACTIONS(6813), [sym_wstring] = ACTIONS(6813), [sym_noreturn] = ACTIONS(6813), [sym_this] = ACTIONS(6813), [sym_abstract] = ACTIONS(6813), [sym_alias] = ACTIONS(6813), [sym_align] = ACTIONS(6813), [sym_auto] = ACTIONS(6813), [sym_class] = ACTIONS(6813), [sym_const] = ACTIONS(6813), [sym_debug] = ACTIONS(6813), [sym_deprecated] = ACTIONS(6813), [sym_enum] = ACTIONS(6813), [sym_export] = ACTIONS(6813), [sym_extern] = ACTIONS(6813), [sym_final] = ACTIONS(6813), [sym_immutable] = ACTIONS(6813), [sym_import] = ACTIONS(6813), [sym_inout] = ACTIONS(6813), [sym_interface] = ACTIONS(6813), [sym_invariant] = ACTIONS(6813), [sym_mixin] = ACTIONS(6813), [sym_module] = ACTIONS(6813), [sym_nothrow] = ACTIONS(6813), [sym_override] = ACTIONS(6813), [sym_package] = ACTIONS(6813), [sym_pragma] = ACTIONS(6813), [sym_private] = ACTIONS(6813), [sym_protected] = ACTIONS(6813), [sym_public] = ACTIONS(6813), [sym_pure] = ACTIONS(6813), [sym_ref] = ACTIONS(6813), [sym_return] = ACTIONS(6813), [sym_scope] = ACTIONS(6813), [sym_shared] = ACTIONS(6813), [sym_static] = ACTIONS(6813), [sym_struct] = ACTIONS(6813), [sym_synchronized] = ACTIONS(6813), [sym_template] = ACTIONS(6813), [sym_typeof] = ACTIONS(6813), [sym_union] = ACTIONS(6813), [sym_unittest] = ACTIONS(6813), [sym_version] = ACTIONS(6813), [sym_gshared] = ACTIONS(6813), [sym_traits] = ACTIONS(6813), [sym_vector] = ACTIONS(6813), [sym_void] = ACTIONS(6813), [sym_directive] = ACTIONS(3), }, [2906] = { [sym_identifier] = ACTIONS(4658), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4660), [anon_sym_DOT] = ACTIONS(4660), [anon_sym_SEMI] = ACTIONS(4660), [anon_sym_TILDE] = ACTIONS(4660), [anon_sym_AT] = ACTIONS(4660), [sym_bool] = ACTIONS(4658), [sym_byte] = ACTIONS(4658), [sym_ubyte] = ACTIONS(4658), [sym_char] = ACTIONS(4658), [sym_short] = ACTIONS(4658), [sym_ushort] = ACTIONS(4658), [sym_int] = ACTIONS(4658), [sym_uint] = ACTIONS(4658), [sym_long] = ACTIONS(4658), [sym_ulong] = ACTIONS(4658), [sym_cent] = ACTIONS(4658), [sym_ucent] = ACTIONS(4658), [sym_wchar] = ACTIONS(4658), [sym_dchar] = ACTIONS(4658), [sym_float] = ACTIONS(4658), [sym_double] = ACTIONS(4658), [sym_real] = ACTIONS(4658), [sym_ifloat] = ACTIONS(4658), [sym_idouble] = ACTIONS(4658), [sym_ireal] = ACTIONS(4658), [sym_cfloat] = ACTIONS(4658), [sym_cdouble] = ACTIONS(4658), [sym_creal] = ACTIONS(4658), [sym_size_t] = ACTIONS(4658), [sym_ptrdiff_t] = ACTIONS(4658), [sym_string] = ACTIONS(4658), [sym_cstring] = ACTIONS(4658), [sym_dstring] = ACTIONS(4658), [sym_wstring] = ACTIONS(4658), [sym_noreturn] = ACTIONS(4658), [sym_this] = ACTIONS(4658), [sym_abstract] = ACTIONS(4658), [sym_alias] = ACTIONS(4658), [sym_align] = ACTIONS(4658), [sym_auto] = ACTIONS(4658), [sym_class] = ACTIONS(4658), [sym_const] = ACTIONS(4658), [sym_debug] = ACTIONS(4658), [sym_deprecated] = ACTIONS(4658), [sym_else] = ACTIONS(4658), [sym_enum] = ACTIONS(4658), [sym_export] = ACTIONS(4658), [sym_extern] = ACTIONS(4658), [sym_final] = ACTIONS(4658), [sym_immutable] = ACTIONS(4658), [sym_import] = ACTIONS(4658), [sym_inout] = ACTIONS(4658), [sym_interface] = ACTIONS(4658), [sym_invariant] = ACTIONS(4658), [sym_mixin] = ACTIONS(4658), [sym_nothrow] = ACTIONS(4658), [sym_override] = ACTIONS(4658), [sym_package] = ACTIONS(4658), [sym_pragma] = ACTIONS(4658), [sym_private] = ACTIONS(4658), [sym_protected] = ACTIONS(4658), [sym_public] = ACTIONS(4658), [sym_pure] = ACTIONS(4658), [sym_ref] = ACTIONS(4658), [sym_return] = ACTIONS(4658), [sym_scope] = ACTIONS(4658), [sym_shared] = ACTIONS(4658), [sym_static] = ACTIONS(4658), [sym_struct] = ACTIONS(4658), [sym_synchronized] = ACTIONS(4658), [sym_template] = ACTIONS(4658), [sym_typeof] = ACTIONS(4658), [sym_union] = ACTIONS(4658), [sym_unittest] = ACTIONS(4658), [sym_version] = ACTIONS(4658), [sym_while] = ACTIONS(4658), [sym_gshared] = ACTIONS(4658), [sym_traits] = ACTIONS(4658), [sym_vector] = ACTIONS(4658), [sym_void] = ACTIONS(4658), [sym_directive] = ACTIONS(3), }, [2907] = { [sym_switch_statement] = STATE(5592), [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_switch] = ACTIONS(1777), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2908] = { [sym_identifier] = ACTIONS(4654), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4656), [anon_sym_DOT] = ACTIONS(4656), [anon_sym_SEMI] = ACTIONS(4656), [anon_sym_TILDE] = ACTIONS(4656), [anon_sym_AT] = ACTIONS(4656), [sym_bool] = ACTIONS(4654), [sym_byte] = ACTIONS(4654), [sym_ubyte] = ACTIONS(4654), [sym_char] = ACTIONS(4654), [sym_short] = ACTIONS(4654), [sym_ushort] = ACTIONS(4654), [sym_int] = ACTIONS(4654), [sym_uint] = ACTIONS(4654), [sym_long] = ACTIONS(4654), [sym_ulong] = ACTIONS(4654), [sym_cent] = ACTIONS(4654), [sym_ucent] = ACTIONS(4654), [sym_wchar] = ACTIONS(4654), [sym_dchar] = ACTIONS(4654), [sym_float] = ACTIONS(4654), [sym_double] = ACTIONS(4654), [sym_real] = ACTIONS(4654), [sym_ifloat] = ACTIONS(4654), [sym_idouble] = ACTIONS(4654), [sym_ireal] = ACTIONS(4654), [sym_cfloat] = ACTIONS(4654), [sym_cdouble] = ACTIONS(4654), [sym_creal] = ACTIONS(4654), [sym_size_t] = ACTIONS(4654), [sym_ptrdiff_t] = ACTIONS(4654), [sym_string] = ACTIONS(4654), [sym_cstring] = ACTIONS(4654), [sym_dstring] = ACTIONS(4654), [sym_wstring] = ACTIONS(4654), [sym_noreturn] = ACTIONS(4654), [sym_this] = ACTIONS(4654), [sym_abstract] = ACTIONS(4654), [sym_alias] = ACTIONS(4654), [sym_align] = ACTIONS(4654), [sym_auto] = ACTIONS(4654), [sym_class] = ACTIONS(4654), [sym_const] = ACTIONS(4654), [sym_debug] = ACTIONS(4654), [sym_deprecated] = ACTIONS(4654), [sym_else] = ACTIONS(4654), [sym_enum] = ACTIONS(4654), [sym_export] = ACTIONS(4654), [sym_extern] = ACTIONS(4654), [sym_final] = ACTIONS(4654), [sym_immutable] = ACTIONS(4654), [sym_import] = ACTIONS(4654), [sym_inout] = ACTIONS(4654), [sym_interface] = ACTIONS(4654), [sym_invariant] = ACTIONS(4654), [sym_mixin] = ACTIONS(4654), [sym_nothrow] = ACTIONS(4654), [sym_override] = ACTIONS(4654), [sym_package] = ACTIONS(4654), [sym_pragma] = ACTIONS(4654), [sym_private] = ACTIONS(4654), [sym_protected] = ACTIONS(4654), [sym_public] = ACTIONS(4654), [sym_pure] = ACTIONS(4654), [sym_ref] = ACTIONS(4654), [sym_return] = ACTIONS(4654), [sym_scope] = ACTIONS(4654), [sym_shared] = ACTIONS(4654), [sym_static] = ACTIONS(4654), [sym_struct] = ACTIONS(4654), [sym_synchronized] = ACTIONS(4654), [sym_template] = ACTIONS(4654), [sym_typeof] = ACTIONS(4654), [sym_union] = ACTIONS(4654), [sym_unittest] = ACTIONS(4654), [sym_version] = ACTIONS(4654), [sym_while] = ACTIONS(4654), [sym_gshared] = ACTIONS(4654), [sym_traits] = ACTIONS(4654), [sym_vector] = ACTIONS(4654), [sym_void] = ACTIONS(4654), [sym_directive] = ACTIONS(3), }, [2909] = { [sym_identifier] = ACTIONS(4628), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4630), [anon_sym_DOT] = ACTIONS(4630), [anon_sym_SEMI] = ACTIONS(4630), [anon_sym_TILDE] = ACTIONS(4630), [anon_sym_AT] = ACTIONS(4630), [sym_bool] = ACTIONS(4628), [sym_byte] = ACTIONS(4628), [sym_ubyte] = ACTIONS(4628), [sym_char] = ACTIONS(4628), [sym_short] = ACTIONS(4628), [sym_ushort] = ACTIONS(4628), [sym_int] = ACTIONS(4628), [sym_uint] = ACTIONS(4628), [sym_long] = ACTIONS(4628), [sym_ulong] = ACTIONS(4628), [sym_cent] = ACTIONS(4628), [sym_ucent] = ACTIONS(4628), [sym_wchar] = ACTIONS(4628), [sym_dchar] = ACTIONS(4628), [sym_float] = ACTIONS(4628), [sym_double] = ACTIONS(4628), [sym_real] = ACTIONS(4628), [sym_ifloat] = ACTIONS(4628), [sym_idouble] = ACTIONS(4628), [sym_ireal] = ACTIONS(4628), [sym_cfloat] = ACTIONS(4628), [sym_cdouble] = ACTIONS(4628), [sym_creal] = ACTIONS(4628), [sym_size_t] = ACTIONS(4628), [sym_ptrdiff_t] = ACTIONS(4628), [sym_string] = ACTIONS(4628), [sym_cstring] = ACTIONS(4628), [sym_dstring] = ACTIONS(4628), [sym_wstring] = ACTIONS(4628), [sym_noreturn] = ACTIONS(4628), [sym_this] = ACTIONS(4628), [sym_abstract] = ACTIONS(4628), [sym_alias] = ACTIONS(4628), [sym_align] = ACTIONS(4628), [sym_auto] = ACTIONS(4628), [sym_class] = ACTIONS(4628), [sym_const] = ACTIONS(4628), [sym_debug] = ACTIONS(4628), [sym_deprecated] = ACTIONS(4628), [sym_else] = ACTIONS(4628), [sym_enum] = ACTIONS(4628), [sym_export] = ACTIONS(4628), [sym_extern] = ACTIONS(4628), [sym_final] = ACTIONS(4628), [sym_immutable] = ACTIONS(4628), [sym_import] = ACTIONS(4628), [sym_inout] = ACTIONS(4628), [sym_interface] = ACTIONS(4628), [sym_invariant] = ACTIONS(4628), [sym_mixin] = ACTIONS(4628), [sym_nothrow] = ACTIONS(4628), [sym_override] = ACTIONS(4628), [sym_package] = ACTIONS(4628), [sym_pragma] = ACTIONS(4628), [sym_private] = ACTIONS(4628), [sym_protected] = ACTIONS(4628), [sym_public] = ACTIONS(4628), [sym_pure] = ACTIONS(4628), [sym_ref] = ACTIONS(4628), [sym_return] = ACTIONS(4628), [sym_scope] = ACTIONS(4628), [sym_shared] = ACTIONS(4628), [sym_static] = ACTIONS(4628), [sym_struct] = ACTIONS(4628), [sym_synchronized] = ACTIONS(4628), [sym_template] = ACTIONS(4628), [sym_typeof] = ACTIONS(4628), [sym_union] = ACTIONS(4628), [sym_unittest] = ACTIONS(4628), [sym_version] = ACTIONS(4628), [sym_while] = ACTIONS(4628), [sym_gshared] = ACTIONS(4628), [sym_traits] = ACTIONS(4628), [sym_vector] = ACTIONS(4628), [sym_void] = ACTIONS(4628), [sym_directive] = ACTIONS(3), }, [2910] = { [sym_identifier] = ACTIONS(4636), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4638), [anon_sym_DOT] = ACTIONS(4638), [anon_sym_SEMI] = ACTIONS(4638), [anon_sym_TILDE] = ACTIONS(4638), [anon_sym_AT] = ACTIONS(4638), [sym_bool] = ACTIONS(4636), [sym_byte] = ACTIONS(4636), [sym_ubyte] = ACTIONS(4636), [sym_char] = ACTIONS(4636), [sym_short] = ACTIONS(4636), [sym_ushort] = ACTIONS(4636), [sym_int] = ACTIONS(4636), [sym_uint] = ACTIONS(4636), [sym_long] = ACTIONS(4636), [sym_ulong] = ACTIONS(4636), [sym_cent] = ACTIONS(4636), [sym_ucent] = ACTIONS(4636), [sym_wchar] = ACTIONS(4636), [sym_dchar] = ACTIONS(4636), [sym_float] = ACTIONS(4636), [sym_double] = ACTIONS(4636), [sym_real] = ACTIONS(4636), [sym_ifloat] = ACTIONS(4636), [sym_idouble] = ACTIONS(4636), [sym_ireal] = ACTIONS(4636), [sym_cfloat] = ACTIONS(4636), [sym_cdouble] = ACTIONS(4636), [sym_creal] = ACTIONS(4636), [sym_size_t] = ACTIONS(4636), [sym_ptrdiff_t] = ACTIONS(4636), [sym_string] = ACTIONS(4636), [sym_cstring] = ACTIONS(4636), [sym_dstring] = ACTIONS(4636), [sym_wstring] = ACTIONS(4636), [sym_noreturn] = ACTIONS(4636), [sym_this] = ACTIONS(4636), [sym_abstract] = ACTIONS(4636), [sym_alias] = ACTIONS(4636), [sym_align] = ACTIONS(4636), [sym_auto] = ACTIONS(4636), [sym_class] = ACTIONS(4636), [sym_const] = ACTIONS(4636), [sym_debug] = ACTIONS(4636), [sym_deprecated] = ACTIONS(4636), [sym_else] = ACTIONS(4636), [sym_enum] = ACTIONS(4636), [sym_export] = ACTIONS(4636), [sym_extern] = ACTIONS(4636), [sym_final] = ACTIONS(4636), [sym_immutable] = ACTIONS(4636), [sym_import] = ACTIONS(4636), [sym_inout] = ACTIONS(4636), [sym_interface] = ACTIONS(4636), [sym_invariant] = ACTIONS(4636), [sym_mixin] = ACTIONS(4636), [sym_nothrow] = ACTIONS(4636), [sym_override] = ACTIONS(4636), [sym_package] = ACTIONS(4636), [sym_pragma] = ACTIONS(4636), [sym_private] = ACTIONS(4636), [sym_protected] = ACTIONS(4636), [sym_public] = ACTIONS(4636), [sym_pure] = ACTIONS(4636), [sym_ref] = ACTIONS(4636), [sym_return] = ACTIONS(4636), [sym_scope] = ACTIONS(4636), [sym_shared] = ACTIONS(4636), [sym_static] = ACTIONS(4636), [sym_struct] = ACTIONS(4636), [sym_synchronized] = ACTIONS(4636), [sym_template] = ACTIONS(4636), [sym_typeof] = ACTIONS(4636), [sym_union] = ACTIONS(4636), [sym_unittest] = ACTIONS(4636), [sym_version] = ACTIONS(4636), [sym_while] = ACTIONS(4636), [sym_gshared] = ACTIONS(4636), [sym_traits] = ACTIONS(4636), [sym_vector] = ACTIONS(4636), [sym_void] = ACTIONS(4636), [sym_directive] = ACTIONS(3), }, [2911] = { [sym_identifier] = ACTIONS(4632), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(4634), [anon_sym_DOT] = ACTIONS(4634), [anon_sym_SEMI] = ACTIONS(4634), [anon_sym_TILDE] = ACTIONS(4634), [anon_sym_AT] = ACTIONS(4634), [sym_bool] = ACTIONS(4632), [sym_byte] = ACTIONS(4632), [sym_ubyte] = ACTIONS(4632), [sym_char] = ACTIONS(4632), [sym_short] = ACTIONS(4632), [sym_ushort] = ACTIONS(4632), [sym_int] = ACTIONS(4632), [sym_uint] = ACTIONS(4632), [sym_long] = ACTIONS(4632), [sym_ulong] = ACTIONS(4632), [sym_cent] = ACTIONS(4632), [sym_ucent] = ACTIONS(4632), [sym_wchar] = ACTIONS(4632), [sym_dchar] = ACTIONS(4632), [sym_float] = ACTIONS(4632), [sym_double] = ACTIONS(4632), [sym_real] = ACTIONS(4632), [sym_ifloat] = ACTIONS(4632), [sym_idouble] = ACTIONS(4632), [sym_ireal] = ACTIONS(4632), [sym_cfloat] = ACTIONS(4632), [sym_cdouble] = ACTIONS(4632), [sym_creal] = ACTIONS(4632), [sym_size_t] = ACTIONS(4632), [sym_ptrdiff_t] = ACTIONS(4632), [sym_string] = ACTIONS(4632), [sym_cstring] = ACTIONS(4632), [sym_dstring] = ACTIONS(4632), [sym_wstring] = ACTIONS(4632), [sym_noreturn] = ACTIONS(4632), [sym_this] = ACTIONS(4632), [sym_abstract] = ACTIONS(4632), [sym_alias] = ACTIONS(4632), [sym_align] = ACTIONS(4632), [sym_auto] = ACTIONS(4632), [sym_class] = ACTIONS(4632), [sym_const] = ACTIONS(4632), [sym_debug] = ACTIONS(4632), [sym_deprecated] = ACTIONS(4632), [sym_else] = ACTIONS(4632), [sym_enum] = ACTIONS(4632), [sym_export] = ACTIONS(4632), [sym_extern] = ACTIONS(4632), [sym_final] = ACTIONS(4632), [sym_immutable] = ACTIONS(4632), [sym_import] = ACTIONS(4632), [sym_inout] = ACTIONS(4632), [sym_interface] = ACTIONS(4632), [sym_invariant] = ACTIONS(4632), [sym_mixin] = ACTIONS(4632), [sym_nothrow] = ACTIONS(4632), [sym_override] = ACTIONS(4632), [sym_package] = ACTIONS(4632), [sym_pragma] = ACTIONS(4632), [sym_private] = ACTIONS(4632), [sym_protected] = ACTIONS(4632), [sym_public] = ACTIONS(4632), [sym_pure] = ACTIONS(4632), [sym_ref] = ACTIONS(4632), [sym_return] = ACTIONS(4632), [sym_scope] = ACTIONS(4632), [sym_shared] = ACTIONS(4632), [sym_static] = ACTIONS(4632), [sym_struct] = ACTIONS(4632), [sym_synchronized] = ACTIONS(4632), [sym_template] = ACTIONS(4632), [sym_typeof] = ACTIONS(4632), [sym_union] = ACTIONS(4632), [sym_unittest] = ACTIONS(4632), [sym_version] = ACTIONS(4632), [sym_while] = ACTIONS(4632), [sym_gshared] = ACTIONS(4632), [sym_traits] = ACTIONS(4632), [sym_vector] = ACTIONS(4632), [sym_void] = ACTIONS(4632), [sym_directive] = ACTIONS(3), }, [2912] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6825), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2913] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6828), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2914] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6830), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2915] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6833), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6835), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2916] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6837), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2917] = { [sym_identifier] = ACTIONS(5159), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5161), [anon_sym_DOT] = ACTIONS(5161), [anon_sym_SEMI] = ACTIONS(5161), [anon_sym_COLON] = ACTIONS(5161), [anon_sym_TILDE] = ACTIONS(5161), [anon_sym_AT] = ACTIONS(5161), [sym_bool] = ACTIONS(5159), [sym_byte] = ACTIONS(5159), [sym_ubyte] = ACTIONS(5159), [sym_char] = ACTIONS(5159), [sym_short] = ACTIONS(5159), [sym_ushort] = ACTIONS(5159), [sym_int] = ACTIONS(5159), [sym_uint] = ACTIONS(5159), [sym_long] = ACTIONS(5159), [sym_ulong] = ACTIONS(5159), [sym_cent] = ACTIONS(5159), [sym_ucent] = ACTIONS(5159), [sym_wchar] = ACTIONS(5159), [sym_dchar] = ACTIONS(5159), [sym_float] = ACTIONS(5159), [sym_double] = ACTIONS(5159), [sym_real] = ACTIONS(5159), [sym_ifloat] = ACTIONS(5159), [sym_idouble] = ACTIONS(5159), [sym_ireal] = ACTIONS(5159), [sym_cfloat] = ACTIONS(5159), [sym_cdouble] = ACTIONS(5159), [sym_creal] = ACTIONS(5159), [sym_size_t] = ACTIONS(5159), [sym_ptrdiff_t] = ACTIONS(5159), [sym_string] = ACTIONS(5159), [sym_cstring] = ACTIONS(5159), [sym_dstring] = ACTIONS(5159), [sym_wstring] = ACTIONS(5159), [sym_noreturn] = ACTIONS(5159), [sym_this] = ACTIONS(5159), [sym_abstract] = ACTIONS(5159), [sym_alias] = ACTIONS(5159), [sym_align] = ACTIONS(5159), [sym_auto] = ACTIONS(5159), [sym_class] = ACTIONS(5159), [sym_const] = ACTIONS(5159), [sym_debug] = ACTIONS(5159), [sym_deprecated] = ACTIONS(5159), [sym_enum] = ACTIONS(5159), [sym_export] = ACTIONS(5159), [sym_extern] = ACTIONS(5159), [sym_final] = ACTIONS(5159), [sym_immutable] = ACTIONS(5159), [sym_import] = ACTIONS(5159), [sym_inout] = ACTIONS(5159), [sym_interface] = ACTIONS(5159), [sym_invariant] = ACTIONS(5159), [sym_mixin] = ACTIONS(5159), [sym_nothrow] = ACTIONS(5159), [sym_override] = ACTIONS(5159), [sym_package] = ACTIONS(5159), [sym_pragma] = ACTIONS(5159), [sym_private] = ACTIONS(5159), [sym_protected] = ACTIONS(5159), [sym_public] = ACTIONS(5159), [sym_pure] = ACTIONS(5159), [sym_ref] = ACTIONS(5159), [sym_return] = ACTIONS(5159), [sym_scope] = ACTIONS(5159), [sym_shared] = ACTIONS(5159), [sym_static] = ACTIONS(5159), [sym_struct] = ACTIONS(5159), [sym_synchronized] = ACTIONS(5159), [sym_template] = ACTIONS(5159), [sym_typeof] = ACTIONS(5159), [sym_union] = ACTIONS(5159), [sym_unittest] = ACTIONS(5159), [sym_version] = ACTIONS(5159), [sym_gshared] = ACTIONS(5159), [sym_traits] = ACTIONS(5159), [sym_vector] = ACTIONS(5159), [sym_void] = ACTIONS(5159), [sym_directive] = ACTIONS(3), }, [2918] = { [sym_identifier] = ACTIONS(2960), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(686), [anon_sym_LPAREN] = ACTIONS(6839), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(686), [sym_bool] = ACTIONS(2960), [sym_byte] = ACTIONS(2960), [sym_ubyte] = ACTIONS(2960), [sym_char] = ACTIONS(2960), [sym_short] = ACTIONS(2960), [sym_ushort] = ACTIONS(2960), [sym_int] = ACTIONS(2960), [sym_uint] = ACTIONS(2960), [sym_long] = ACTIONS(2960), [sym_ulong] = ACTIONS(2960), [sym_cent] = ACTIONS(2960), [sym_ucent] = ACTIONS(2960), [sym_wchar] = ACTIONS(2960), [sym_dchar] = ACTIONS(2960), [sym_float] = ACTIONS(2960), [sym_double] = ACTIONS(2960), [sym_real] = ACTIONS(2960), [sym_ifloat] = ACTIONS(2960), [sym_idouble] = ACTIONS(2960), [sym_ireal] = ACTIONS(2960), [sym_cfloat] = ACTIONS(2960), [sym_cdouble] = ACTIONS(2960), [sym_creal] = ACTIONS(2960), [sym_size_t] = ACTIONS(2960), [sym_ptrdiff_t] = ACTIONS(2960), [sym_string] = ACTIONS(2960), [sym_cstring] = ACTIONS(2960), [sym_dstring] = ACTIONS(2960), [sym_wstring] = ACTIONS(2960), [sym_noreturn] = ACTIONS(2960), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_auto] = ACTIONS(2960), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2960), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(2960), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_immutable] = ACTIONS(2960), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(2960), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(2960), [sym_nothrow] = ACTIONS(2960), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2960), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2960), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(2960), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(2960), [sym_vector] = ACTIONS(2960), [sym_void] = ACTIONS(2960), [sym_directive] = ACTIONS(3), }, [2919] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6841), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6843), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2920] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6845), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6849), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_module] = ACTIONS(6853), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2921] = { [ts_builtin_sym_end] = ACTIONS(6855), [sym_identifier] = ACTIONS(6857), [sym_end_file] = ACTIONS(6857), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(6855), [anon_sym_SEMI] = ACTIONS(6855), [anon_sym_TILDE] = ACTIONS(6855), [anon_sym_AT] = ACTIONS(6855), [sym_bool] = ACTIONS(6857), [sym_byte] = ACTIONS(6857), [sym_ubyte] = ACTIONS(6857), [sym_char] = ACTIONS(6857), [sym_short] = ACTIONS(6857), [sym_ushort] = ACTIONS(6857), [sym_int] = ACTIONS(6857), [sym_uint] = ACTIONS(6857), [sym_long] = ACTIONS(6857), [sym_ulong] = ACTIONS(6857), [sym_cent] = ACTIONS(6857), [sym_ucent] = ACTIONS(6857), [sym_wchar] = ACTIONS(6857), [sym_dchar] = ACTIONS(6857), [sym_float] = ACTIONS(6857), [sym_double] = ACTIONS(6857), [sym_real] = ACTIONS(6857), [sym_ifloat] = ACTIONS(6857), [sym_idouble] = ACTIONS(6857), [sym_ireal] = ACTIONS(6857), [sym_cfloat] = ACTIONS(6857), [sym_cdouble] = ACTIONS(6857), [sym_creal] = ACTIONS(6857), [sym_size_t] = ACTIONS(6857), [sym_ptrdiff_t] = ACTIONS(6857), [sym_string] = ACTIONS(6857), [sym_cstring] = ACTIONS(6857), [sym_dstring] = ACTIONS(6857), [sym_wstring] = ACTIONS(6857), [sym_noreturn] = ACTIONS(6857), [sym_this] = ACTIONS(6857), [sym_abstract] = ACTIONS(6857), [sym_alias] = ACTIONS(6857), [sym_align] = ACTIONS(6857), [sym_auto] = ACTIONS(6857), [sym_class] = ACTIONS(6857), [sym_const] = ACTIONS(6857), [sym_debug] = ACTIONS(6857), [sym_deprecated] = ACTIONS(6857), [sym_enum] = ACTIONS(6857), [sym_export] = ACTIONS(6857), [sym_extern] = ACTIONS(6857), [sym_final] = ACTIONS(6857), [sym_immutable] = ACTIONS(6857), [sym_import] = ACTIONS(6857), [sym_inout] = ACTIONS(6857), [sym_interface] = ACTIONS(6857), [sym_invariant] = ACTIONS(6857), [sym_mixin] = ACTIONS(6857), [sym_nothrow] = ACTIONS(6857), [sym_override] = ACTIONS(6857), [sym_package] = ACTIONS(6857), [sym_pragma] = ACTIONS(6857), [sym_private] = ACTIONS(6857), [sym_protected] = ACTIONS(6857), [sym_public] = ACTIONS(6857), [sym_pure] = ACTIONS(6857), [sym_ref] = ACTIONS(6857), [sym_return] = ACTIONS(6857), [sym_scope] = ACTIONS(6857), [sym_shared] = ACTIONS(6857), [sym_static] = ACTIONS(6857), [sym_struct] = ACTIONS(6857), [sym_synchronized] = ACTIONS(6857), [sym_template] = ACTIONS(6857), [sym_typeof] = ACTIONS(6857), [sym_union] = ACTIONS(6857), [sym_unittest] = ACTIONS(6857), [sym_version] = ACTIONS(6857), [sym_gshared] = ACTIONS(6857), [sym_traits] = ACTIONS(6857), [sym_vector] = ACTIONS(6857), [sym_void] = ACTIONS(6857), [sym_directive] = ACTIONS(3), }, [2922] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6859), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2923] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6862), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2924] = { [sym_identifier] = ACTIONS(5151), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5153), [anon_sym_DOT] = ACTIONS(5153), [anon_sym_SEMI] = ACTIONS(5153), [anon_sym_COLON] = ACTIONS(5153), [anon_sym_TILDE] = ACTIONS(5153), [anon_sym_AT] = ACTIONS(5153), [sym_bool] = ACTIONS(5151), [sym_byte] = ACTIONS(5151), [sym_ubyte] = ACTIONS(5151), [sym_char] = ACTIONS(5151), [sym_short] = ACTIONS(5151), [sym_ushort] = ACTIONS(5151), [sym_int] = ACTIONS(5151), [sym_uint] = ACTIONS(5151), [sym_long] = ACTIONS(5151), [sym_ulong] = ACTIONS(5151), [sym_cent] = ACTIONS(5151), [sym_ucent] = ACTIONS(5151), [sym_wchar] = ACTIONS(5151), [sym_dchar] = ACTIONS(5151), [sym_float] = ACTIONS(5151), [sym_double] = ACTIONS(5151), [sym_real] = ACTIONS(5151), [sym_ifloat] = ACTIONS(5151), [sym_idouble] = ACTIONS(5151), [sym_ireal] = ACTIONS(5151), [sym_cfloat] = ACTIONS(5151), [sym_cdouble] = ACTIONS(5151), [sym_creal] = ACTIONS(5151), [sym_size_t] = ACTIONS(5151), [sym_ptrdiff_t] = ACTIONS(5151), [sym_string] = ACTIONS(5151), [sym_cstring] = ACTIONS(5151), [sym_dstring] = ACTIONS(5151), [sym_wstring] = ACTIONS(5151), [sym_noreturn] = ACTIONS(5151), [sym_this] = ACTIONS(5151), [sym_abstract] = ACTIONS(5151), [sym_alias] = ACTIONS(5151), [sym_align] = ACTIONS(5151), [sym_auto] = ACTIONS(5151), [sym_class] = ACTIONS(5151), [sym_const] = ACTIONS(5151), [sym_debug] = ACTIONS(5151), [sym_deprecated] = ACTIONS(5151), [sym_enum] = ACTIONS(5151), [sym_export] = ACTIONS(5151), [sym_extern] = ACTIONS(5151), [sym_final] = ACTIONS(5151), [sym_immutable] = ACTIONS(5151), [sym_import] = ACTIONS(5151), [sym_inout] = ACTIONS(5151), [sym_interface] = ACTIONS(5151), [sym_invariant] = ACTIONS(5151), [sym_mixin] = ACTIONS(5151), [sym_nothrow] = ACTIONS(5151), [sym_override] = ACTIONS(5151), [sym_package] = ACTIONS(5151), [sym_pragma] = ACTIONS(5151), [sym_private] = ACTIONS(5151), [sym_protected] = ACTIONS(5151), [sym_public] = ACTIONS(5151), [sym_pure] = ACTIONS(5151), [sym_ref] = ACTIONS(5151), [sym_return] = ACTIONS(5151), [sym_scope] = ACTIONS(5151), [sym_shared] = ACTIONS(5151), [sym_static] = ACTIONS(5151), [sym_struct] = ACTIONS(5151), [sym_synchronized] = ACTIONS(5151), [sym_template] = ACTIONS(5151), [sym_typeof] = ACTIONS(5151), [sym_union] = ACTIONS(5151), [sym_unittest] = ACTIONS(5151), [sym_version] = ACTIONS(5151), [sym_gshared] = ACTIONS(5151), [sym_traits] = ACTIONS(5151), [sym_vector] = ACTIONS(5151), [sym_void] = ACTIONS(5151), [sym_directive] = ACTIONS(3), }, [2925] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6864), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2926] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6867), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2927] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6869), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2928] = { [sym_identifier] = ACTIONS(5143), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5145), [anon_sym_DOT] = ACTIONS(5145), [anon_sym_SEMI] = ACTIONS(5145), [anon_sym_COLON] = ACTIONS(5145), [anon_sym_TILDE] = ACTIONS(5145), [anon_sym_AT] = ACTIONS(5145), [sym_bool] = ACTIONS(5143), [sym_byte] = ACTIONS(5143), [sym_ubyte] = ACTIONS(5143), [sym_char] = ACTIONS(5143), [sym_short] = ACTIONS(5143), [sym_ushort] = ACTIONS(5143), [sym_int] = ACTIONS(5143), [sym_uint] = ACTIONS(5143), [sym_long] = ACTIONS(5143), [sym_ulong] = ACTIONS(5143), [sym_cent] = ACTIONS(5143), [sym_ucent] = ACTIONS(5143), [sym_wchar] = ACTIONS(5143), [sym_dchar] = ACTIONS(5143), [sym_float] = ACTIONS(5143), [sym_double] = ACTIONS(5143), [sym_real] = ACTIONS(5143), [sym_ifloat] = ACTIONS(5143), [sym_idouble] = ACTIONS(5143), [sym_ireal] = ACTIONS(5143), [sym_cfloat] = ACTIONS(5143), [sym_cdouble] = ACTIONS(5143), [sym_creal] = ACTIONS(5143), [sym_size_t] = ACTIONS(5143), [sym_ptrdiff_t] = ACTIONS(5143), [sym_string] = ACTIONS(5143), [sym_cstring] = ACTIONS(5143), [sym_dstring] = ACTIONS(5143), [sym_wstring] = ACTIONS(5143), [sym_noreturn] = ACTIONS(5143), [sym_this] = ACTIONS(5143), [sym_abstract] = ACTIONS(5143), [sym_alias] = ACTIONS(5143), [sym_align] = ACTIONS(5143), [sym_auto] = ACTIONS(5143), [sym_class] = ACTIONS(5143), [sym_const] = ACTIONS(5143), [sym_debug] = ACTIONS(5143), [sym_deprecated] = ACTIONS(5143), [sym_enum] = ACTIONS(5143), [sym_export] = ACTIONS(5143), [sym_extern] = ACTIONS(5143), [sym_final] = ACTIONS(5143), [sym_immutable] = ACTIONS(5143), [sym_import] = ACTIONS(5143), [sym_inout] = ACTIONS(5143), [sym_interface] = ACTIONS(5143), [sym_invariant] = ACTIONS(5143), [sym_mixin] = ACTIONS(5143), [sym_nothrow] = ACTIONS(5143), [sym_override] = ACTIONS(5143), [sym_package] = ACTIONS(5143), [sym_pragma] = ACTIONS(5143), [sym_private] = ACTIONS(5143), [sym_protected] = ACTIONS(5143), [sym_public] = ACTIONS(5143), [sym_pure] = ACTIONS(5143), [sym_ref] = ACTIONS(5143), [sym_return] = ACTIONS(5143), [sym_scope] = ACTIONS(5143), [sym_shared] = ACTIONS(5143), [sym_static] = ACTIONS(5143), [sym_struct] = ACTIONS(5143), [sym_synchronized] = ACTIONS(5143), [sym_template] = ACTIONS(5143), [sym_typeof] = ACTIONS(5143), [sym_union] = ACTIONS(5143), [sym_unittest] = ACTIONS(5143), [sym_version] = ACTIONS(5143), [sym_gshared] = ACTIONS(5143), [sym_traits] = ACTIONS(5143), [sym_vector] = ACTIONS(5143), [sym_void] = ACTIONS(5143), [sym_directive] = ACTIONS(3), }, [2929] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6871), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2930] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6874), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2931] = { [sym_identifier] = ACTIONS(6877), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6881), [anon_sym_LPAREN] = ACTIONS(6885), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6877), [sym_byte] = ACTIONS(6877), [sym_ubyte] = ACTIONS(6877), [sym_char] = ACTIONS(6877), [sym_short] = ACTIONS(6877), [sym_ushort] = ACTIONS(6877), [sym_int] = ACTIONS(6877), [sym_uint] = ACTIONS(6877), [sym_long] = ACTIONS(6877), [sym_ulong] = ACTIONS(6877), [sym_cent] = ACTIONS(6877), [sym_ucent] = ACTIONS(6877), [sym_wchar] = ACTIONS(6877), [sym_dchar] = ACTIONS(6877), [sym_float] = ACTIONS(6877), [sym_double] = ACTIONS(6877), [sym_real] = ACTIONS(6877), [sym_ifloat] = ACTIONS(6877), [sym_idouble] = ACTIONS(6877), [sym_ireal] = ACTIONS(6877), [sym_cfloat] = ACTIONS(6877), [sym_cdouble] = ACTIONS(6877), [sym_creal] = ACTIONS(6877), [sym_size_t] = ACTIONS(6877), [sym_ptrdiff_t] = ACTIONS(6877), [sym_string] = ACTIONS(6877), [sym_cstring] = ACTIONS(6877), [sym_dstring] = ACTIONS(6877), [sym_wstring] = ACTIONS(6877), [sym_noreturn] = ACTIONS(6877), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6877), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6877), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6877), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6877), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6877), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6877), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6877), [sym_vector] = ACTIONS(6877), [sym_void] = ACTIONS(6877), [sym_directive] = ACTIONS(3), }, [2932] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6887), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2933] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6889), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2934] = { [ts_builtin_sym_end] = ACTIONS(6892), [sym_identifier] = ACTIONS(6894), [sym_end_file] = ACTIONS(6894), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(6892), [anon_sym_SEMI] = ACTIONS(6892), [anon_sym_TILDE] = ACTIONS(6892), [anon_sym_AT] = ACTIONS(6892), [sym_bool] = ACTIONS(6894), [sym_byte] = ACTIONS(6894), [sym_ubyte] = ACTIONS(6894), [sym_char] = ACTIONS(6894), [sym_short] = ACTIONS(6894), [sym_ushort] = ACTIONS(6894), [sym_int] = ACTIONS(6894), [sym_uint] = ACTIONS(6894), [sym_long] = ACTIONS(6894), [sym_ulong] = ACTIONS(6894), [sym_cent] = ACTIONS(6894), [sym_ucent] = ACTIONS(6894), [sym_wchar] = ACTIONS(6894), [sym_dchar] = ACTIONS(6894), [sym_float] = ACTIONS(6894), [sym_double] = ACTIONS(6894), [sym_real] = ACTIONS(6894), [sym_ifloat] = ACTIONS(6894), [sym_idouble] = ACTIONS(6894), [sym_ireal] = ACTIONS(6894), [sym_cfloat] = ACTIONS(6894), [sym_cdouble] = ACTIONS(6894), [sym_creal] = ACTIONS(6894), [sym_size_t] = ACTIONS(6894), [sym_ptrdiff_t] = ACTIONS(6894), [sym_string] = ACTIONS(6894), [sym_cstring] = ACTIONS(6894), [sym_dstring] = ACTIONS(6894), [sym_wstring] = ACTIONS(6894), [sym_noreturn] = ACTIONS(6894), [sym_this] = ACTIONS(6894), [sym_abstract] = ACTIONS(6894), [sym_alias] = ACTIONS(6894), [sym_align] = ACTIONS(6894), [sym_auto] = ACTIONS(6894), [sym_class] = ACTIONS(6894), [sym_const] = ACTIONS(6894), [sym_debug] = ACTIONS(6894), [sym_deprecated] = ACTIONS(6894), [sym_enum] = ACTIONS(6894), [sym_export] = ACTIONS(6894), [sym_extern] = ACTIONS(6894), [sym_final] = ACTIONS(6894), [sym_immutable] = ACTIONS(6894), [sym_import] = ACTIONS(6894), [sym_inout] = ACTIONS(6894), [sym_interface] = ACTIONS(6894), [sym_invariant] = ACTIONS(6894), [sym_mixin] = ACTIONS(6894), [sym_nothrow] = ACTIONS(6894), [sym_override] = ACTIONS(6894), [sym_package] = ACTIONS(6894), [sym_pragma] = ACTIONS(6894), [sym_private] = ACTIONS(6894), [sym_protected] = ACTIONS(6894), [sym_public] = ACTIONS(6894), [sym_pure] = ACTIONS(6894), [sym_ref] = ACTIONS(6894), [sym_return] = ACTIONS(6894), [sym_scope] = ACTIONS(6894), [sym_shared] = ACTIONS(6894), [sym_static] = ACTIONS(6894), [sym_struct] = ACTIONS(6894), [sym_synchronized] = ACTIONS(6894), [sym_template] = ACTIONS(6894), [sym_typeof] = ACTIONS(6894), [sym_union] = ACTIONS(6894), [sym_unittest] = ACTIONS(6894), [sym_version] = ACTIONS(6894), [sym_gshared] = ACTIONS(6894), [sym_traits] = ACTIONS(6894), [sym_vector] = ACTIONS(6894), [sym_void] = ACTIONS(6894), [sym_directive] = ACTIONS(3), }, [2935] = { [sym_identifier] = ACTIONS(2960), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(686), [anon_sym_LPAREN] = ACTIONS(6896), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(686), [sym_bool] = ACTIONS(2960), [sym_byte] = ACTIONS(2960), [sym_ubyte] = ACTIONS(2960), [sym_char] = ACTIONS(2960), [sym_short] = ACTIONS(2960), [sym_ushort] = ACTIONS(2960), [sym_int] = ACTIONS(2960), [sym_uint] = ACTIONS(2960), [sym_long] = ACTIONS(2960), [sym_ulong] = ACTIONS(2960), [sym_cent] = ACTIONS(2960), [sym_ucent] = ACTIONS(2960), [sym_wchar] = ACTIONS(2960), [sym_dchar] = ACTIONS(2960), [sym_float] = ACTIONS(2960), [sym_double] = ACTIONS(2960), [sym_real] = ACTIONS(2960), [sym_ifloat] = ACTIONS(2960), [sym_idouble] = ACTIONS(2960), [sym_ireal] = ACTIONS(2960), [sym_cfloat] = ACTIONS(2960), [sym_cdouble] = ACTIONS(2960), [sym_creal] = ACTIONS(2960), [sym_size_t] = ACTIONS(2960), [sym_ptrdiff_t] = ACTIONS(2960), [sym_string] = ACTIONS(2960), [sym_cstring] = ACTIONS(2960), [sym_dstring] = ACTIONS(2960), [sym_wstring] = ACTIONS(2960), [sym_noreturn] = ACTIONS(2960), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(2960), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(2960), [sym_auto] = ACTIONS(2960), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(2960), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(2960), [sym_enum] = ACTIONS(2960), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(2960), [sym_final] = ACTIONS(2960), [sym_immutable] = ACTIONS(2960), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(2960), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(2960), [sym_nothrow] = ACTIONS(2960), [sym_override] = ACTIONS(2960), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(2960), [sym_ref] = ACTIONS(2960), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(2960), [sym_shared] = ACTIONS(2960), [sym_static] = ACTIONS(2960), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(2960), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(2960), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(2960), [sym_traits] = ACTIONS(2960), [sym_vector] = ACTIONS(2960), [sym_void] = ACTIONS(2960), [sym_directive] = ACTIONS(3), }, [2936] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6898), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2937] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6901), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2938] = { [sym_identifier] = ACTIONS(5155), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5157), [anon_sym_DOT] = ACTIONS(5157), [anon_sym_SEMI] = ACTIONS(5157), [anon_sym_COLON] = ACTIONS(5157), [anon_sym_TILDE] = ACTIONS(5157), [anon_sym_AT] = ACTIONS(5157), [sym_bool] = ACTIONS(5155), [sym_byte] = ACTIONS(5155), [sym_ubyte] = ACTIONS(5155), [sym_char] = ACTIONS(5155), [sym_short] = ACTIONS(5155), [sym_ushort] = ACTIONS(5155), [sym_int] = ACTIONS(5155), [sym_uint] = ACTIONS(5155), [sym_long] = ACTIONS(5155), [sym_ulong] = ACTIONS(5155), [sym_cent] = ACTIONS(5155), [sym_ucent] = ACTIONS(5155), [sym_wchar] = ACTIONS(5155), [sym_dchar] = ACTIONS(5155), [sym_float] = ACTIONS(5155), [sym_double] = ACTIONS(5155), [sym_real] = ACTIONS(5155), [sym_ifloat] = ACTIONS(5155), [sym_idouble] = ACTIONS(5155), [sym_ireal] = ACTIONS(5155), [sym_cfloat] = ACTIONS(5155), [sym_cdouble] = ACTIONS(5155), [sym_creal] = ACTIONS(5155), [sym_size_t] = ACTIONS(5155), [sym_ptrdiff_t] = ACTIONS(5155), [sym_string] = ACTIONS(5155), [sym_cstring] = ACTIONS(5155), [sym_dstring] = ACTIONS(5155), [sym_wstring] = ACTIONS(5155), [sym_noreturn] = ACTIONS(5155), [sym_this] = ACTIONS(5155), [sym_abstract] = ACTIONS(5155), [sym_alias] = ACTIONS(5155), [sym_align] = ACTIONS(5155), [sym_auto] = ACTIONS(5155), [sym_class] = ACTIONS(5155), [sym_const] = ACTIONS(5155), [sym_debug] = ACTIONS(5155), [sym_deprecated] = ACTIONS(5155), [sym_enum] = ACTIONS(5155), [sym_export] = ACTIONS(5155), [sym_extern] = ACTIONS(5155), [sym_final] = ACTIONS(5155), [sym_immutable] = ACTIONS(5155), [sym_import] = ACTIONS(5155), [sym_inout] = ACTIONS(5155), [sym_interface] = ACTIONS(5155), [sym_invariant] = ACTIONS(5155), [sym_mixin] = ACTIONS(5155), [sym_nothrow] = ACTIONS(5155), [sym_override] = ACTIONS(5155), [sym_package] = ACTIONS(5155), [sym_pragma] = ACTIONS(5155), [sym_private] = ACTIONS(5155), [sym_protected] = ACTIONS(5155), [sym_public] = ACTIONS(5155), [sym_pure] = ACTIONS(5155), [sym_ref] = ACTIONS(5155), [sym_return] = ACTIONS(5155), [sym_scope] = ACTIONS(5155), [sym_shared] = ACTIONS(5155), [sym_static] = ACTIONS(5155), [sym_struct] = ACTIONS(5155), [sym_synchronized] = ACTIONS(5155), [sym_template] = ACTIONS(5155), [sym_typeof] = ACTIONS(5155), [sym_union] = ACTIONS(5155), [sym_unittest] = ACTIONS(5155), [sym_version] = ACTIONS(5155), [sym_gshared] = ACTIONS(5155), [sym_traits] = ACTIONS(5155), [sym_vector] = ACTIONS(5155), [sym_void] = ACTIONS(5155), [sym_directive] = ACTIONS(3), }, [2939] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(3060), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2940] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6903), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2941] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6905), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2942] = { [ts_builtin_sym_end] = ACTIONS(6908), [sym_identifier] = ACTIONS(6910), [sym_end_file] = ACTIONS(6910), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(6908), [anon_sym_SEMI] = ACTIONS(6908), [anon_sym_TILDE] = ACTIONS(6908), [anon_sym_AT] = ACTIONS(6908), [sym_bool] = ACTIONS(6910), [sym_byte] = ACTIONS(6910), [sym_ubyte] = ACTIONS(6910), [sym_char] = ACTIONS(6910), [sym_short] = ACTIONS(6910), [sym_ushort] = ACTIONS(6910), [sym_int] = ACTIONS(6910), [sym_uint] = ACTIONS(6910), [sym_long] = ACTIONS(6910), [sym_ulong] = ACTIONS(6910), [sym_cent] = ACTIONS(6910), [sym_ucent] = ACTIONS(6910), [sym_wchar] = ACTIONS(6910), [sym_dchar] = ACTIONS(6910), [sym_float] = ACTIONS(6910), [sym_double] = ACTIONS(6910), [sym_real] = ACTIONS(6910), [sym_ifloat] = ACTIONS(6910), [sym_idouble] = ACTIONS(6910), [sym_ireal] = ACTIONS(6910), [sym_cfloat] = ACTIONS(6910), [sym_cdouble] = ACTIONS(6910), [sym_creal] = ACTIONS(6910), [sym_size_t] = ACTIONS(6910), [sym_ptrdiff_t] = ACTIONS(6910), [sym_string] = ACTIONS(6910), [sym_cstring] = ACTIONS(6910), [sym_dstring] = ACTIONS(6910), [sym_wstring] = ACTIONS(6910), [sym_noreturn] = ACTIONS(6910), [sym_this] = ACTIONS(6910), [sym_abstract] = ACTIONS(6910), [sym_alias] = ACTIONS(6910), [sym_align] = ACTIONS(6910), [sym_auto] = ACTIONS(6910), [sym_class] = ACTIONS(6910), [sym_const] = ACTIONS(6910), [sym_debug] = ACTIONS(6910), [sym_deprecated] = ACTIONS(6910), [sym_enum] = ACTIONS(6910), [sym_export] = ACTIONS(6910), [sym_extern] = ACTIONS(6910), [sym_final] = ACTIONS(6910), [sym_immutable] = ACTIONS(6910), [sym_import] = ACTIONS(6910), [sym_inout] = ACTIONS(6910), [sym_interface] = ACTIONS(6910), [sym_invariant] = ACTIONS(6910), [sym_mixin] = ACTIONS(6910), [sym_nothrow] = ACTIONS(6910), [sym_override] = ACTIONS(6910), [sym_package] = ACTIONS(6910), [sym_pragma] = ACTIONS(6910), [sym_private] = ACTIONS(6910), [sym_protected] = ACTIONS(6910), [sym_public] = ACTIONS(6910), [sym_pure] = ACTIONS(6910), [sym_ref] = ACTIONS(6910), [sym_return] = ACTIONS(6910), [sym_scope] = ACTIONS(6910), [sym_shared] = ACTIONS(6910), [sym_static] = ACTIONS(6910), [sym_struct] = ACTIONS(6910), [sym_synchronized] = ACTIONS(6910), [sym_template] = ACTIONS(6910), [sym_typeof] = ACTIONS(6910), [sym_union] = ACTIONS(6910), [sym_unittest] = ACTIONS(6910), [sym_version] = ACTIONS(6910), [sym_gshared] = ACTIONS(6910), [sym_traits] = ACTIONS(6910), [sym_vector] = ACTIONS(6910), [sym_void] = ACTIONS(6910), [sym_directive] = ACTIONS(3), }, [2943] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6912), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2944] = { [sym_identifier] = ACTIONS(6914), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6916), [anon_sym_DOT] = ACTIONS(6916), [anon_sym_LPAREN] = ACTIONS(6918), [anon_sym_COLON] = ACTIONS(6916), [anon_sym_TILDE] = ACTIONS(6916), [anon_sym_AT] = ACTIONS(6916), [sym_bool] = ACTIONS(6914), [sym_byte] = ACTIONS(6914), [sym_ubyte] = ACTIONS(6914), [sym_char] = ACTIONS(6914), [sym_short] = ACTIONS(6914), [sym_ushort] = ACTIONS(6914), [sym_int] = ACTIONS(6914), [sym_uint] = ACTIONS(6914), [sym_long] = ACTIONS(6914), [sym_ulong] = ACTIONS(6914), [sym_cent] = ACTIONS(6914), [sym_ucent] = ACTIONS(6914), [sym_wchar] = ACTIONS(6914), [sym_dchar] = ACTIONS(6914), [sym_float] = ACTIONS(6914), [sym_double] = ACTIONS(6914), [sym_real] = ACTIONS(6914), [sym_ifloat] = ACTIONS(6914), [sym_idouble] = ACTIONS(6914), [sym_ireal] = ACTIONS(6914), [sym_cfloat] = ACTIONS(6914), [sym_cdouble] = ACTIONS(6914), [sym_creal] = ACTIONS(6914), [sym_size_t] = ACTIONS(6914), [sym_ptrdiff_t] = ACTIONS(6914), [sym_string] = ACTIONS(6914), [sym_cstring] = ACTIONS(6914), [sym_dstring] = ACTIONS(6914), [sym_wstring] = ACTIONS(6914), [sym_noreturn] = ACTIONS(6914), [sym_this] = ACTIONS(6914), [sym_abstract] = ACTIONS(6914), [sym_alias] = ACTIONS(6914), [sym_align] = ACTIONS(6914), [sym_auto] = ACTIONS(6914), [sym_class] = ACTIONS(6914), [sym_const] = ACTIONS(6914), [sym_debug] = ACTIONS(6914), [sym_deprecated] = ACTIONS(6914), [sym_enum] = ACTIONS(6914), [sym_export] = ACTIONS(6914), [sym_extern] = ACTIONS(6914), [sym_final] = ACTIONS(6914), [sym_immutable] = ACTIONS(6914), [sym_import] = ACTIONS(6914), [sym_inout] = ACTIONS(6914), [sym_interface] = ACTIONS(6914), [sym_invariant] = ACTIONS(6914), [sym_mixin] = ACTIONS(6914), [sym_nothrow] = ACTIONS(6914), [sym_override] = ACTIONS(6914), [sym_package] = ACTIONS(6914), [sym_pragma] = ACTIONS(6914), [sym_private] = ACTIONS(6914), [sym_protected] = ACTIONS(6914), [sym_public] = ACTIONS(6914), [sym_pure] = ACTIONS(6914), [sym_ref] = ACTIONS(6914), [sym_return] = ACTIONS(6914), [sym_scope] = ACTIONS(6914), [sym_shared] = ACTIONS(6914), [sym_static] = ACTIONS(6914), [sym_struct] = ACTIONS(6914), [sym_synchronized] = ACTIONS(6914), [sym_template] = ACTIONS(6914), [sym_typeof] = ACTIONS(6914), [sym_union] = ACTIONS(6914), [sym_unittest] = ACTIONS(6914), [sym_version] = ACTIONS(6914), [sym_gshared] = ACTIONS(6914), [sym_traits] = ACTIONS(6914), [sym_vector] = ACTIONS(6914), [sym_void] = ACTIONS(6914), [sym_directive] = ACTIONS(3), }, [2945] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6920), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2946] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6923), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2947] = { [sym_identifier] = ACTIONS(5147), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5149), [anon_sym_DOT] = ACTIONS(5149), [anon_sym_SEMI] = ACTIONS(5149), [anon_sym_COLON] = ACTIONS(5149), [anon_sym_TILDE] = ACTIONS(5149), [anon_sym_AT] = ACTIONS(5149), [sym_bool] = ACTIONS(5147), [sym_byte] = ACTIONS(5147), [sym_ubyte] = ACTIONS(5147), [sym_char] = ACTIONS(5147), [sym_short] = ACTIONS(5147), [sym_ushort] = ACTIONS(5147), [sym_int] = ACTIONS(5147), [sym_uint] = ACTIONS(5147), [sym_long] = ACTIONS(5147), [sym_ulong] = ACTIONS(5147), [sym_cent] = ACTIONS(5147), [sym_ucent] = ACTIONS(5147), [sym_wchar] = ACTIONS(5147), [sym_dchar] = ACTIONS(5147), [sym_float] = ACTIONS(5147), [sym_double] = ACTIONS(5147), [sym_real] = ACTIONS(5147), [sym_ifloat] = ACTIONS(5147), [sym_idouble] = ACTIONS(5147), [sym_ireal] = ACTIONS(5147), [sym_cfloat] = ACTIONS(5147), [sym_cdouble] = ACTIONS(5147), [sym_creal] = ACTIONS(5147), [sym_size_t] = ACTIONS(5147), [sym_ptrdiff_t] = ACTIONS(5147), [sym_string] = ACTIONS(5147), [sym_cstring] = ACTIONS(5147), [sym_dstring] = ACTIONS(5147), [sym_wstring] = ACTIONS(5147), [sym_noreturn] = ACTIONS(5147), [sym_this] = ACTIONS(5147), [sym_abstract] = ACTIONS(5147), [sym_alias] = ACTIONS(5147), [sym_align] = ACTIONS(5147), [sym_auto] = ACTIONS(5147), [sym_class] = ACTIONS(5147), [sym_const] = ACTIONS(5147), [sym_debug] = ACTIONS(5147), [sym_deprecated] = ACTIONS(5147), [sym_enum] = ACTIONS(5147), [sym_export] = ACTIONS(5147), [sym_extern] = ACTIONS(5147), [sym_final] = ACTIONS(5147), [sym_immutable] = ACTIONS(5147), [sym_import] = ACTIONS(5147), [sym_inout] = ACTIONS(5147), [sym_interface] = ACTIONS(5147), [sym_invariant] = ACTIONS(5147), [sym_mixin] = ACTIONS(5147), [sym_nothrow] = ACTIONS(5147), [sym_override] = ACTIONS(5147), [sym_package] = ACTIONS(5147), [sym_pragma] = ACTIONS(5147), [sym_private] = ACTIONS(5147), [sym_protected] = ACTIONS(5147), [sym_public] = ACTIONS(5147), [sym_pure] = ACTIONS(5147), [sym_ref] = ACTIONS(5147), [sym_return] = ACTIONS(5147), [sym_scope] = ACTIONS(5147), [sym_shared] = ACTIONS(5147), [sym_static] = ACTIONS(5147), [sym_struct] = ACTIONS(5147), [sym_synchronized] = ACTIONS(5147), [sym_template] = ACTIONS(5147), [sym_typeof] = ACTIONS(5147), [sym_union] = ACTIONS(5147), [sym_unittest] = ACTIONS(5147), [sym_version] = ACTIONS(5147), [sym_gshared] = ACTIONS(5147), [sym_traits] = ACTIONS(5147), [sym_vector] = ACTIONS(5147), [sym_void] = ACTIONS(5147), [sym_directive] = ACTIONS(3), }, [2948] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6925), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2949] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6928), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2950] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6931), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6933), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2951] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6935), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6937), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2952] = { [sym_identifier] = ACTIONS(6939), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6941), [anon_sym_DOT] = ACTIONS(6941), [anon_sym_COLON] = ACTIONS(6941), [anon_sym_TILDE] = ACTIONS(6941), [anon_sym_AT] = ACTIONS(6941), [sym_bool] = ACTIONS(6939), [sym_byte] = ACTIONS(6939), [sym_ubyte] = ACTIONS(6939), [sym_char] = ACTIONS(6939), [sym_short] = ACTIONS(6939), [sym_ushort] = ACTIONS(6939), [sym_int] = ACTIONS(6939), [sym_uint] = ACTIONS(6939), [sym_long] = ACTIONS(6939), [sym_ulong] = ACTIONS(6939), [sym_cent] = ACTIONS(6939), [sym_ucent] = ACTIONS(6939), [sym_wchar] = ACTIONS(6939), [sym_dchar] = ACTIONS(6939), [sym_float] = ACTIONS(6939), [sym_double] = ACTIONS(6939), [sym_real] = ACTIONS(6939), [sym_ifloat] = ACTIONS(6939), [sym_idouble] = ACTIONS(6939), [sym_ireal] = ACTIONS(6939), [sym_cfloat] = ACTIONS(6939), [sym_cdouble] = ACTIONS(6939), [sym_creal] = ACTIONS(6939), [sym_size_t] = ACTIONS(6939), [sym_ptrdiff_t] = ACTIONS(6939), [sym_string] = ACTIONS(6939), [sym_cstring] = ACTIONS(6939), [sym_dstring] = ACTIONS(6939), [sym_wstring] = ACTIONS(6939), [sym_noreturn] = ACTIONS(6939), [sym_this] = ACTIONS(6939), [sym_abstract] = ACTIONS(6939), [sym_alias] = ACTIONS(6939), [sym_align] = ACTIONS(6939), [sym_auto] = ACTIONS(6939), [sym_class] = ACTIONS(6939), [sym_const] = ACTIONS(6939), [sym_debug] = ACTIONS(6939), [sym_deprecated] = ACTIONS(6939), [sym_enum] = ACTIONS(6939), [sym_export] = ACTIONS(6939), [sym_extern] = ACTIONS(6939), [sym_final] = ACTIONS(6939), [sym_immutable] = ACTIONS(6939), [sym_import] = ACTIONS(6939), [sym_inout] = ACTIONS(6939), [sym_interface] = ACTIONS(6939), [sym_invariant] = ACTIONS(6939), [sym_mixin] = ACTIONS(6939), [sym_module] = ACTIONS(6939), [sym_nothrow] = ACTIONS(6939), [sym_override] = ACTIONS(6939), [sym_package] = ACTIONS(6939), [sym_pragma] = ACTIONS(6939), [sym_private] = ACTIONS(6939), [sym_protected] = ACTIONS(6939), [sym_public] = ACTIONS(6939), [sym_pure] = ACTIONS(6939), [sym_ref] = ACTIONS(6939), [sym_return] = ACTIONS(6939), [sym_scope] = ACTIONS(6939), [sym_shared] = ACTIONS(6939), [sym_static] = ACTIONS(6939), [sym_struct] = ACTIONS(6939), [sym_synchronized] = ACTIONS(6939), [sym_template] = ACTIONS(6939), [sym_typeof] = ACTIONS(6939), [sym_union] = ACTIONS(6939), [sym_unittest] = ACTIONS(6939), [sym_version] = ACTIONS(6939), [sym_gshared] = ACTIONS(6939), [sym_traits] = ACTIONS(6939), [sym_vector] = ACTIONS(6939), [sym_void] = ACTIONS(6939), [sym_directive] = ACTIONS(3), }, [2953] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6943), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6945), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2954] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6947), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2955] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6839), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2956] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6950), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2957] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6953), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2958] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_LPAREN] = ACTIONS(6955), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2959] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6957), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6959), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2960] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6961), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2961] = { [sym_identifier] = ACTIONS(5139), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(5141), [anon_sym_DOT] = ACTIONS(5141), [anon_sym_SEMI] = ACTIONS(5141), [anon_sym_COLON] = ACTIONS(5141), [anon_sym_TILDE] = ACTIONS(5141), [anon_sym_AT] = ACTIONS(5141), [sym_bool] = ACTIONS(5139), [sym_byte] = ACTIONS(5139), [sym_ubyte] = ACTIONS(5139), [sym_char] = ACTIONS(5139), [sym_short] = ACTIONS(5139), [sym_ushort] = ACTIONS(5139), [sym_int] = ACTIONS(5139), [sym_uint] = ACTIONS(5139), [sym_long] = ACTIONS(5139), [sym_ulong] = ACTIONS(5139), [sym_cent] = ACTIONS(5139), [sym_ucent] = ACTIONS(5139), [sym_wchar] = ACTIONS(5139), [sym_dchar] = ACTIONS(5139), [sym_float] = ACTIONS(5139), [sym_double] = ACTIONS(5139), [sym_real] = ACTIONS(5139), [sym_ifloat] = ACTIONS(5139), [sym_idouble] = ACTIONS(5139), [sym_ireal] = ACTIONS(5139), [sym_cfloat] = ACTIONS(5139), [sym_cdouble] = ACTIONS(5139), [sym_creal] = ACTIONS(5139), [sym_size_t] = ACTIONS(5139), [sym_ptrdiff_t] = ACTIONS(5139), [sym_string] = ACTIONS(5139), [sym_cstring] = ACTIONS(5139), [sym_dstring] = ACTIONS(5139), [sym_wstring] = ACTIONS(5139), [sym_noreturn] = ACTIONS(5139), [sym_this] = ACTIONS(5139), [sym_abstract] = ACTIONS(5139), [sym_alias] = ACTIONS(5139), [sym_align] = ACTIONS(5139), [sym_auto] = ACTIONS(5139), [sym_class] = ACTIONS(5139), [sym_const] = ACTIONS(5139), [sym_debug] = ACTIONS(5139), [sym_deprecated] = ACTIONS(5139), [sym_enum] = ACTIONS(5139), [sym_export] = ACTIONS(5139), [sym_extern] = ACTIONS(5139), [sym_final] = ACTIONS(5139), [sym_immutable] = ACTIONS(5139), [sym_import] = ACTIONS(5139), [sym_inout] = ACTIONS(5139), [sym_interface] = ACTIONS(5139), [sym_invariant] = ACTIONS(5139), [sym_mixin] = ACTIONS(5139), [sym_nothrow] = ACTIONS(5139), [sym_override] = ACTIONS(5139), [sym_package] = ACTIONS(5139), [sym_pragma] = ACTIONS(5139), [sym_private] = ACTIONS(5139), [sym_protected] = ACTIONS(5139), [sym_public] = ACTIONS(5139), [sym_pure] = ACTIONS(5139), [sym_ref] = ACTIONS(5139), [sym_return] = ACTIONS(5139), [sym_scope] = ACTIONS(5139), [sym_shared] = ACTIONS(5139), [sym_static] = ACTIONS(5139), [sym_struct] = ACTIONS(5139), [sym_synchronized] = ACTIONS(5139), [sym_template] = ACTIONS(5139), [sym_typeof] = ACTIONS(5139), [sym_union] = ACTIONS(5139), [sym_unittest] = ACTIONS(5139), [sym_version] = ACTIONS(5139), [sym_gshared] = ACTIONS(5139), [sym_traits] = ACTIONS(5139), [sym_vector] = ACTIONS(5139), [sym_void] = ACTIONS(5139), [sym_directive] = ACTIONS(3), }, [2962] = { [ts_builtin_sym_end] = ACTIONS(6964), [sym_identifier] = ACTIONS(6966), [sym_end_file] = ACTIONS(6966), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(6964), [anon_sym_SEMI] = ACTIONS(6964), [anon_sym_TILDE] = ACTIONS(6964), [anon_sym_AT] = ACTIONS(6964), [sym_bool] = ACTIONS(6966), [sym_byte] = ACTIONS(6966), [sym_ubyte] = ACTIONS(6966), [sym_char] = ACTIONS(6966), [sym_short] = ACTIONS(6966), [sym_ushort] = ACTIONS(6966), [sym_int] = ACTIONS(6966), [sym_uint] = ACTIONS(6966), [sym_long] = ACTIONS(6966), [sym_ulong] = ACTIONS(6966), [sym_cent] = ACTIONS(6966), [sym_ucent] = ACTIONS(6966), [sym_wchar] = ACTIONS(6966), [sym_dchar] = ACTIONS(6966), [sym_float] = ACTIONS(6966), [sym_double] = ACTIONS(6966), [sym_real] = ACTIONS(6966), [sym_ifloat] = ACTIONS(6966), [sym_idouble] = ACTIONS(6966), [sym_ireal] = ACTIONS(6966), [sym_cfloat] = ACTIONS(6966), [sym_cdouble] = ACTIONS(6966), [sym_creal] = ACTIONS(6966), [sym_size_t] = ACTIONS(6966), [sym_ptrdiff_t] = ACTIONS(6966), [sym_string] = ACTIONS(6966), [sym_cstring] = ACTIONS(6966), [sym_dstring] = ACTIONS(6966), [sym_wstring] = ACTIONS(6966), [sym_noreturn] = ACTIONS(6966), [sym_this] = ACTIONS(6966), [sym_abstract] = ACTIONS(6966), [sym_alias] = ACTIONS(6966), [sym_align] = ACTIONS(6966), [sym_auto] = ACTIONS(6966), [sym_class] = ACTIONS(6966), [sym_const] = ACTIONS(6966), [sym_debug] = ACTIONS(6966), [sym_deprecated] = ACTIONS(6966), [sym_enum] = ACTIONS(6966), [sym_export] = ACTIONS(6966), [sym_extern] = ACTIONS(6966), [sym_final] = ACTIONS(6966), [sym_immutable] = ACTIONS(6966), [sym_import] = ACTIONS(6966), [sym_inout] = ACTIONS(6966), [sym_interface] = ACTIONS(6966), [sym_invariant] = ACTIONS(6966), [sym_mixin] = ACTIONS(6966), [sym_nothrow] = ACTIONS(6966), [sym_override] = ACTIONS(6966), [sym_package] = ACTIONS(6966), [sym_pragma] = ACTIONS(6966), [sym_private] = ACTIONS(6966), [sym_protected] = ACTIONS(6966), [sym_public] = ACTIONS(6966), [sym_pure] = ACTIONS(6966), [sym_ref] = ACTIONS(6966), [sym_return] = ACTIONS(6966), [sym_scope] = ACTIONS(6966), [sym_shared] = ACTIONS(6966), [sym_static] = ACTIONS(6966), [sym_struct] = ACTIONS(6966), [sym_synchronized] = ACTIONS(6966), [sym_template] = ACTIONS(6966), [sym_typeof] = ACTIONS(6966), [sym_union] = ACTIONS(6966), [sym_unittest] = ACTIONS(6966), [sym_version] = ACTIONS(6966), [sym_gshared] = ACTIONS(6966), [sym_traits] = ACTIONS(6966), [sym_vector] = ACTIONS(6966), [sym_void] = ACTIONS(6966), [sym_directive] = ACTIONS(3), }, [2963] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6968), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6970), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2964] = { [sym_identifier] = ACTIONS(6877), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6881), [anon_sym_LPAREN] = ACTIONS(6972), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6877), [sym_byte] = ACTIONS(6877), [sym_ubyte] = ACTIONS(6877), [sym_char] = ACTIONS(6877), [sym_short] = ACTIONS(6877), [sym_ushort] = ACTIONS(6877), [sym_int] = ACTIONS(6877), [sym_uint] = ACTIONS(6877), [sym_long] = ACTIONS(6877), [sym_ulong] = ACTIONS(6877), [sym_cent] = ACTIONS(6877), [sym_ucent] = ACTIONS(6877), [sym_wchar] = ACTIONS(6877), [sym_dchar] = ACTIONS(6877), [sym_float] = ACTIONS(6877), [sym_double] = ACTIONS(6877), [sym_real] = ACTIONS(6877), [sym_ifloat] = ACTIONS(6877), [sym_idouble] = ACTIONS(6877), [sym_ireal] = ACTIONS(6877), [sym_cfloat] = ACTIONS(6877), [sym_cdouble] = ACTIONS(6877), [sym_creal] = ACTIONS(6877), [sym_size_t] = ACTIONS(6877), [sym_ptrdiff_t] = ACTIONS(6877), [sym_string] = ACTIONS(6877), [sym_cstring] = ACTIONS(6877), [sym_dstring] = ACTIONS(6877), [sym_wstring] = ACTIONS(6877), [sym_noreturn] = ACTIONS(6877), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6877), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6877), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6877), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6877), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6877), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6877), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6877), [sym_vector] = ACTIONS(6877), [sym_void] = ACTIONS(6877), [sym_directive] = ACTIONS(3), }, [2965] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(6974), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(6976), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_if] = ACTIONS(6757), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2966] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_COLON] = ACTIONS(3062), [anon_sym_TILDE] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_this] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_class] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_debug] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_export] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_import] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_interface] = ACTIONS(3060), [sym_invariant] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_package] = ACTIONS(3060), [sym_pragma] = ACTIONS(3060), [sym_private] = ACTIONS(3060), [sym_protected] = ACTIONS(3060), [sym_public] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(6978), [sym_struct] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_template] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_union] = ACTIONS(3060), [sym_unittest] = ACTIONS(3060), [sym_version] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [2967] = { [sym_identifier] = ACTIONS(6981), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6983), [anon_sym_DOT] = ACTIONS(6983), [anon_sym_COLON] = ACTIONS(6983), [anon_sym_TILDE] = ACTIONS(6983), [anon_sym_AT] = ACTIONS(6983), [sym_bool] = ACTIONS(6981), [sym_byte] = ACTIONS(6981), [sym_ubyte] = ACTIONS(6981), [sym_char] = ACTIONS(6981), [sym_short] = ACTIONS(6981), [sym_ushort] = ACTIONS(6981), [sym_int] = ACTIONS(6981), [sym_uint] = ACTIONS(6981), [sym_long] = ACTIONS(6981), [sym_ulong] = ACTIONS(6981), [sym_cent] = ACTIONS(6981), [sym_ucent] = ACTIONS(6981), [sym_wchar] = ACTIONS(6981), [sym_dchar] = ACTIONS(6981), [sym_float] = ACTIONS(6981), [sym_double] = ACTIONS(6981), [sym_real] = ACTIONS(6981), [sym_ifloat] = ACTIONS(6981), [sym_idouble] = ACTIONS(6981), [sym_ireal] = ACTIONS(6981), [sym_cfloat] = ACTIONS(6981), [sym_cdouble] = ACTIONS(6981), [sym_creal] = ACTIONS(6981), [sym_size_t] = ACTIONS(6981), [sym_ptrdiff_t] = ACTIONS(6981), [sym_string] = ACTIONS(6981), [sym_cstring] = ACTIONS(6981), [sym_dstring] = ACTIONS(6981), [sym_wstring] = ACTIONS(6981), [sym_noreturn] = ACTIONS(6981), [sym_this] = ACTIONS(6981), [sym_abstract] = ACTIONS(6981), [sym_alias] = ACTIONS(6981), [sym_align] = ACTIONS(6981), [sym_auto] = ACTIONS(6981), [sym_class] = ACTIONS(6981), [sym_const] = ACTIONS(6981), [sym_debug] = ACTIONS(6981), [sym_deprecated] = ACTIONS(6981), [sym_enum] = ACTIONS(6981), [sym_export] = ACTIONS(6981), [sym_extern] = ACTIONS(6981), [sym_final] = ACTIONS(6981), [sym_immutable] = ACTIONS(6981), [sym_import] = ACTIONS(6981), [sym_inout] = ACTIONS(6981), [sym_interface] = ACTIONS(6981), [sym_invariant] = ACTIONS(6981), [sym_mixin] = ACTIONS(6981), [sym_nothrow] = ACTIONS(6981), [sym_override] = ACTIONS(6981), [sym_package] = ACTIONS(6981), [sym_pragma] = ACTIONS(6981), [sym_private] = ACTIONS(6981), [sym_protected] = ACTIONS(6981), [sym_public] = ACTIONS(6981), [sym_pure] = ACTIONS(6981), [sym_ref] = ACTIONS(6981), [sym_return] = ACTIONS(6981), [sym_scope] = ACTIONS(6981), [sym_shared] = ACTIONS(6981), [sym_static] = ACTIONS(6981), [sym_struct] = ACTIONS(6981), [sym_synchronized] = ACTIONS(6981), [sym_template] = ACTIONS(6981), [sym_typeof] = ACTIONS(6981), [sym_union] = ACTIONS(6981), [sym_unittest] = ACTIONS(6981), [sym_version] = ACTIONS(6981), [sym_gshared] = ACTIONS(6981), [sym_traits] = ACTIONS(6981), [sym_vector] = ACTIONS(6981), [sym_void] = ACTIONS(6981), [sym_directive] = ACTIONS(3), }, [2968] = { [sym_identifier] = ACTIONS(6985), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6987), [anon_sym_DOT] = ACTIONS(6987), [anon_sym_COLON] = ACTIONS(6987), [anon_sym_TILDE] = ACTIONS(6987), [anon_sym_AT] = ACTIONS(6987), [sym_bool] = ACTIONS(6985), [sym_byte] = ACTIONS(6985), [sym_ubyte] = ACTIONS(6985), [sym_char] = ACTIONS(6985), [sym_short] = ACTIONS(6985), [sym_ushort] = ACTIONS(6985), [sym_int] = ACTIONS(6985), [sym_uint] = ACTIONS(6985), [sym_long] = ACTIONS(6985), [sym_ulong] = ACTIONS(6985), [sym_cent] = ACTIONS(6985), [sym_ucent] = ACTIONS(6985), [sym_wchar] = ACTIONS(6985), [sym_dchar] = ACTIONS(6985), [sym_float] = ACTIONS(6985), [sym_double] = ACTIONS(6985), [sym_real] = ACTIONS(6985), [sym_ifloat] = ACTIONS(6985), [sym_idouble] = ACTIONS(6985), [sym_ireal] = ACTIONS(6985), [sym_cfloat] = ACTIONS(6985), [sym_cdouble] = ACTIONS(6985), [sym_creal] = ACTIONS(6985), [sym_size_t] = ACTIONS(6985), [sym_ptrdiff_t] = ACTIONS(6985), [sym_string] = ACTIONS(6985), [sym_cstring] = ACTIONS(6985), [sym_dstring] = ACTIONS(6985), [sym_wstring] = ACTIONS(6985), [sym_noreturn] = ACTIONS(6985), [sym_this] = ACTIONS(6985), [sym_abstract] = ACTIONS(6985), [sym_alias] = ACTIONS(6985), [sym_align] = ACTIONS(6985), [sym_auto] = ACTIONS(6985), [sym_class] = ACTIONS(6985), [sym_const] = ACTIONS(6985), [sym_debug] = ACTIONS(6985), [sym_deprecated] = ACTIONS(6985), [sym_enum] = ACTIONS(6985), [sym_export] = ACTIONS(6985), [sym_extern] = ACTIONS(6985), [sym_final] = ACTIONS(6985), [sym_immutable] = ACTIONS(6985), [sym_import] = ACTIONS(6985), [sym_inout] = ACTIONS(6985), [sym_interface] = ACTIONS(6985), [sym_invariant] = ACTIONS(6985), [sym_mixin] = ACTIONS(6985), [sym_nothrow] = ACTIONS(6985), [sym_override] = ACTIONS(6985), [sym_package] = ACTIONS(6985), [sym_pragma] = ACTIONS(6985), [sym_private] = ACTIONS(6985), [sym_protected] = ACTIONS(6985), [sym_public] = ACTIONS(6985), [sym_pure] = ACTIONS(6985), [sym_ref] = ACTIONS(6985), [sym_return] = ACTIONS(6985), [sym_scope] = ACTIONS(6985), [sym_shared] = ACTIONS(6985), [sym_static] = ACTIONS(6985), [sym_struct] = ACTIONS(6985), [sym_synchronized] = ACTIONS(6985), [sym_template] = ACTIONS(6985), [sym_typeof] = ACTIONS(6985), [sym_union] = ACTIONS(6985), [sym_unittest] = ACTIONS(6985), [sym_version] = ACTIONS(6985), [sym_gshared] = ACTIONS(6985), [sym_traits] = ACTIONS(6985), [sym_vector] = ACTIONS(6985), [sym_void] = ACTIONS(6985), [sym_directive] = ACTIONS(3), }, [2969] = { [sym_identifier] = ACTIONS(6989), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6991), [anon_sym_DOT] = ACTIONS(6991), [anon_sym_COLON] = ACTIONS(6991), [anon_sym_TILDE] = ACTIONS(6991), [anon_sym_AT] = ACTIONS(6991), [sym_bool] = ACTIONS(6989), [sym_byte] = ACTIONS(6989), [sym_ubyte] = ACTIONS(6989), [sym_char] = ACTIONS(6989), [sym_short] = ACTIONS(6989), [sym_ushort] = ACTIONS(6989), [sym_int] = ACTIONS(6989), [sym_uint] = ACTIONS(6989), [sym_long] = ACTIONS(6989), [sym_ulong] = ACTIONS(6989), [sym_cent] = ACTIONS(6989), [sym_ucent] = ACTIONS(6989), [sym_wchar] = ACTIONS(6989), [sym_dchar] = ACTIONS(6989), [sym_float] = ACTIONS(6989), [sym_double] = ACTIONS(6989), [sym_real] = ACTIONS(6989), [sym_ifloat] = ACTIONS(6989), [sym_idouble] = ACTIONS(6989), [sym_ireal] = ACTIONS(6989), [sym_cfloat] = ACTIONS(6989), [sym_cdouble] = ACTIONS(6989), [sym_creal] = ACTIONS(6989), [sym_size_t] = ACTIONS(6989), [sym_ptrdiff_t] = ACTIONS(6989), [sym_string] = ACTIONS(6989), [sym_cstring] = ACTIONS(6989), [sym_dstring] = ACTIONS(6989), [sym_wstring] = ACTIONS(6989), [sym_noreturn] = ACTIONS(6989), [sym_this] = ACTIONS(6989), [sym_abstract] = ACTIONS(6989), [sym_alias] = ACTIONS(6989), [sym_align] = ACTIONS(6989), [sym_auto] = ACTIONS(6989), [sym_class] = ACTIONS(6989), [sym_const] = ACTIONS(6989), [sym_debug] = ACTIONS(6989), [sym_deprecated] = ACTIONS(6989), [sym_enum] = ACTIONS(6989), [sym_export] = ACTIONS(6989), [sym_extern] = ACTIONS(6989), [sym_final] = ACTIONS(6989), [sym_immutable] = ACTIONS(6989), [sym_import] = ACTIONS(6989), [sym_inout] = ACTIONS(6989), [sym_interface] = ACTIONS(6989), [sym_invariant] = ACTIONS(6989), [sym_mixin] = ACTIONS(6989), [sym_nothrow] = ACTIONS(6989), [sym_override] = ACTIONS(6989), [sym_package] = ACTIONS(6989), [sym_pragma] = ACTIONS(6989), [sym_private] = ACTIONS(6989), [sym_protected] = ACTIONS(6989), [sym_public] = ACTIONS(6989), [sym_pure] = ACTIONS(6989), [sym_ref] = ACTIONS(6989), [sym_return] = ACTIONS(6989), [sym_scope] = ACTIONS(6989), [sym_shared] = ACTIONS(6989), [sym_static] = ACTIONS(6989), [sym_struct] = ACTIONS(6989), [sym_synchronized] = ACTIONS(6989), [sym_template] = ACTIONS(6989), [sym_typeof] = ACTIONS(6989), [sym_union] = ACTIONS(6989), [sym_unittest] = ACTIONS(6989), [sym_version] = ACTIONS(6989), [sym_gshared] = ACTIONS(6989), [sym_traits] = ACTIONS(6989), [sym_vector] = ACTIONS(6989), [sym_void] = ACTIONS(6989), [sym_directive] = ACTIONS(3), }, [2970] = { [sym_identifier] = ACTIONS(6993), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6995), [anon_sym_DOT] = ACTIONS(6995), [anon_sym_COLON] = ACTIONS(6995), [anon_sym_TILDE] = ACTIONS(6995), [anon_sym_AT] = ACTIONS(6995), [sym_bool] = ACTIONS(6993), [sym_byte] = ACTIONS(6993), [sym_ubyte] = ACTIONS(6993), [sym_char] = ACTIONS(6993), [sym_short] = ACTIONS(6993), [sym_ushort] = ACTIONS(6993), [sym_int] = ACTIONS(6993), [sym_uint] = ACTIONS(6993), [sym_long] = ACTIONS(6993), [sym_ulong] = ACTIONS(6993), [sym_cent] = ACTIONS(6993), [sym_ucent] = ACTIONS(6993), [sym_wchar] = ACTIONS(6993), [sym_dchar] = ACTIONS(6993), [sym_float] = ACTIONS(6993), [sym_double] = ACTIONS(6993), [sym_real] = ACTIONS(6993), [sym_ifloat] = ACTIONS(6993), [sym_idouble] = ACTIONS(6993), [sym_ireal] = ACTIONS(6993), [sym_cfloat] = ACTIONS(6993), [sym_cdouble] = ACTIONS(6993), [sym_creal] = ACTIONS(6993), [sym_size_t] = ACTIONS(6993), [sym_ptrdiff_t] = ACTIONS(6993), [sym_string] = ACTIONS(6993), [sym_cstring] = ACTIONS(6993), [sym_dstring] = ACTIONS(6993), [sym_wstring] = ACTIONS(6993), [sym_noreturn] = ACTIONS(6993), [sym_this] = ACTIONS(6993), [sym_abstract] = ACTIONS(6993), [sym_alias] = ACTIONS(6993), [sym_align] = ACTIONS(6993), [sym_auto] = ACTIONS(6993), [sym_class] = ACTIONS(6993), [sym_const] = ACTIONS(6993), [sym_debug] = ACTIONS(6993), [sym_deprecated] = ACTIONS(6993), [sym_enum] = ACTIONS(6993), [sym_export] = ACTIONS(6993), [sym_extern] = ACTIONS(6993), [sym_final] = ACTIONS(6993), [sym_immutable] = ACTIONS(6993), [sym_import] = ACTIONS(6993), [sym_inout] = ACTIONS(6993), [sym_interface] = ACTIONS(6993), [sym_invariant] = ACTIONS(6993), [sym_mixin] = ACTIONS(6993), [sym_nothrow] = ACTIONS(6993), [sym_override] = ACTIONS(6993), [sym_package] = ACTIONS(6993), [sym_pragma] = ACTIONS(6993), [sym_private] = ACTIONS(6993), [sym_protected] = ACTIONS(6993), [sym_public] = ACTIONS(6993), [sym_pure] = ACTIONS(6993), [sym_ref] = ACTIONS(6993), [sym_return] = ACTIONS(6993), [sym_scope] = ACTIONS(6993), [sym_shared] = ACTIONS(6993), [sym_static] = ACTIONS(6993), [sym_struct] = ACTIONS(6993), [sym_synchronized] = ACTIONS(6993), [sym_template] = ACTIONS(6993), [sym_typeof] = ACTIONS(6993), [sym_union] = ACTIONS(6993), [sym_unittest] = ACTIONS(6993), [sym_version] = ACTIONS(6993), [sym_gshared] = ACTIONS(6993), [sym_traits] = ACTIONS(6993), [sym_vector] = ACTIONS(6993), [sym_void] = ACTIONS(6993), [sym_directive] = ACTIONS(3), }, [2971] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(6707), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2972] = { [sym_identifier] = ACTIONS(6997), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6999), [anon_sym_DOT] = ACTIONS(6999), [anon_sym_COLON] = ACTIONS(6999), [anon_sym_TILDE] = ACTIONS(6999), [anon_sym_AT] = ACTIONS(6999), [sym_bool] = ACTIONS(6997), [sym_byte] = ACTIONS(6997), [sym_ubyte] = ACTIONS(6997), [sym_char] = ACTIONS(6997), [sym_short] = ACTIONS(6997), [sym_ushort] = ACTIONS(6997), [sym_int] = ACTIONS(6997), [sym_uint] = ACTIONS(6997), [sym_long] = ACTIONS(6997), [sym_ulong] = ACTIONS(6997), [sym_cent] = ACTIONS(6997), [sym_ucent] = ACTIONS(6997), [sym_wchar] = ACTIONS(6997), [sym_dchar] = ACTIONS(6997), [sym_float] = ACTIONS(6997), [sym_double] = ACTIONS(6997), [sym_real] = ACTIONS(6997), [sym_ifloat] = ACTIONS(6997), [sym_idouble] = ACTIONS(6997), [sym_ireal] = ACTIONS(6997), [sym_cfloat] = ACTIONS(6997), [sym_cdouble] = ACTIONS(6997), [sym_creal] = ACTIONS(6997), [sym_size_t] = ACTIONS(6997), [sym_ptrdiff_t] = ACTIONS(6997), [sym_string] = ACTIONS(6997), [sym_cstring] = ACTIONS(6997), [sym_dstring] = ACTIONS(6997), [sym_wstring] = ACTIONS(6997), [sym_noreturn] = ACTIONS(6997), [sym_this] = ACTIONS(6997), [sym_abstract] = ACTIONS(6997), [sym_alias] = ACTIONS(6997), [sym_align] = ACTIONS(6997), [sym_auto] = ACTIONS(6997), [sym_class] = ACTIONS(6997), [sym_const] = ACTIONS(6997), [sym_debug] = ACTIONS(6997), [sym_deprecated] = ACTIONS(6997), [sym_enum] = ACTIONS(6997), [sym_export] = ACTIONS(6997), [sym_extern] = ACTIONS(6997), [sym_final] = ACTIONS(6997), [sym_immutable] = ACTIONS(6997), [sym_import] = ACTIONS(6997), [sym_inout] = ACTIONS(6997), [sym_interface] = ACTIONS(6997), [sym_invariant] = ACTIONS(6997), [sym_mixin] = ACTIONS(6997), [sym_nothrow] = ACTIONS(6997), [sym_override] = ACTIONS(6997), [sym_package] = ACTIONS(6997), [sym_pragma] = ACTIONS(6997), [sym_private] = ACTIONS(6997), [sym_protected] = ACTIONS(6997), [sym_public] = ACTIONS(6997), [sym_pure] = ACTIONS(6997), [sym_ref] = ACTIONS(6997), [sym_return] = ACTIONS(6997), [sym_scope] = ACTIONS(6997), [sym_shared] = ACTIONS(6997), [sym_static] = ACTIONS(6997), [sym_struct] = ACTIONS(6997), [sym_synchronized] = ACTIONS(6997), [sym_template] = ACTIONS(6997), [sym_typeof] = ACTIONS(6997), [sym_union] = ACTIONS(6997), [sym_unittest] = ACTIONS(6997), [sym_version] = ACTIONS(6997), [sym_gshared] = ACTIONS(6997), [sym_traits] = ACTIONS(6997), [sym_vector] = ACTIONS(6997), [sym_void] = ACTIONS(6997), [sym_directive] = ACTIONS(3), }, [2973] = { [sym_identifier] = ACTIONS(6707), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(686), [anon_sym_DOT] = ACTIONS(6710), [anon_sym_COLON] = ACTIONS(686), [anon_sym_TILDE] = ACTIONS(686), [anon_sym_AT] = ACTIONS(6710), [sym_bool] = ACTIONS(6707), [sym_byte] = ACTIONS(6707), [sym_ubyte] = ACTIONS(6707), [sym_char] = ACTIONS(6707), [sym_short] = ACTIONS(6707), [sym_ushort] = ACTIONS(6707), [sym_int] = ACTIONS(6707), [sym_uint] = ACTIONS(6707), [sym_long] = ACTIONS(6707), [sym_ulong] = ACTIONS(6707), [sym_cent] = ACTIONS(6707), [sym_ucent] = ACTIONS(6707), [sym_wchar] = ACTIONS(6707), [sym_dchar] = ACTIONS(6707), [sym_float] = ACTIONS(6707), [sym_double] = ACTIONS(6707), [sym_real] = ACTIONS(6707), [sym_ifloat] = ACTIONS(6707), [sym_idouble] = ACTIONS(6707), [sym_ireal] = ACTIONS(6707), [sym_cfloat] = ACTIONS(6707), [sym_cdouble] = ACTIONS(6707), [sym_creal] = ACTIONS(6707), [sym_size_t] = ACTIONS(6707), [sym_ptrdiff_t] = ACTIONS(6707), [sym_string] = ACTIONS(6707), [sym_cstring] = ACTIONS(6707), [sym_dstring] = ACTIONS(6707), [sym_wstring] = ACTIONS(6707), [sym_noreturn] = ACTIONS(6707), [sym_this] = ACTIONS(2960), [sym_abstract] = ACTIONS(6707), [sym_alias] = ACTIONS(2960), [sym_align] = ACTIONS(6707), [sym_auto] = ACTIONS(6707), [sym_class] = ACTIONS(2960), [sym_const] = ACTIONS(6707), [sym_debug] = ACTIONS(2960), [sym_deprecated] = ACTIONS(6707), [sym_enum] = ACTIONS(6707), [sym_export] = ACTIONS(2960), [sym_extern] = ACTIONS(6707), [sym_final] = ACTIONS(6707), [sym_immutable] = ACTIONS(6707), [sym_import] = ACTIONS(2960), [sym_inout] = ACTIONS(6707), [sym_interface] = ACTIONS(2960), [sym_invariant] = ACTIONS(2960), [sym_mixin] = ACTIONS(6707), [sym_nothrow] = ACTIONS(6707), [sym_override] = ACTIONS(6707), [sym_package] = ACTIONS(2960), [sym_pragma] = ACTIONS(2960), [sym_private] = ACTIONS(2960), [sym_protected] = ACTIONS(2960), [sym_public] = ACTIONS(2960), [sym_pure] = ACTIONS(6707), [sym_ref] = ACTIONS(7001), [sym_return] = ACTIONS(2960), [sym_scope] = ACTIONS(6707), [sym_shared] = ACTIONS(6707), [sym_static] = ACTIONS(6707), [sym_struct] = ACTIONS(2960), [sym_synchronized] = ACTIONS(6707), [sym_template] = ACTIONS(2960), [sym_typeof] = ACTIONS(6707), [sym_union] = ACTIONS(2960), [sym_unittest] = ACTIONS(2960), [sym_version] = ACTIONS(2960), [sym_gshared] = ACTIONS(6707), [sym_traits] = ACTIONS(6707), [sym_vector] = ACTIONS(6707), [sym_void] = ACTIONS(6707), [sym_directive] = ACTIONS(3), }, [2974] = { [sym_identifier] = ACTIONS(7005), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7007), [anon_sym_DOT] = ACTIONS(7007), [anon_sym_COLON] = ACTIONS(7007), [anon_sym_TILDE] = ACTIONS(7007), [anon_sym_AT] = ACTIONS(7007), [sym_bool] = ACTIONS(7005), [sym_byte] = ACTIONS(7005), [sym_ubyte] = ACTIONS(7005), [sym_char] = ACTIONS(7005), [sym_short] = ACTIONS(7005), [sym_ushort] = ACTIONS(7005), [sym_int] = ACTIONS(7005), [sym_uint] = ACTIONS(7005), [sym_long] = ACTIONS(7005), [sym_ulong] = ACTIONS(7005), [sym_cent] = ACTIONS(7005), [sym_ucent] = ACTIONS(7005), [sym_wchar] = ACTIONS(7005), [sym_dchar] = ACTIONS(7005), [sym_float] = ACTIONS(7005), [sym_double] = ACTIONS(7005), [sym_real] = ACTIONS(7005), [sym_ifloat] = ACTIONS(7005), [sym_idouble] = ACTIONS(7005), [sym_ireal] = ACTIONS(7005), [sym_cfloat] = ACTIONS(7005), [sym_cdouble] = ACTIONS(7005), [sym_creal] = ACTIONS(7005), [sym_size_t] = ACTIONS(7005), [sym_ptrdiff_t] = ACTIONS(7005), [sym_string] = ACTIONS(7005), [sym_cstring] = ACTIONS(7005), [sym_dstring] = ACTIONS(7005), [sym_wstring] = ACTIONS(7005), [sym_noreturn] = ACTIONS(7005), [sym_this] = ACTIONS(7005), [sym_abstract] = ACTIONS(7005), [sym_alias] = ACTIONS(7005), [sym_align] = ACTIONS(7005), [sym_auto] = ACTIONS(7005), [sym_class] = ACTIONS(7005), [sym_const] = ACTIONS(7005), [sym_debug] = ACTIONS(7005), [sym_deprecated] = ACTIONS(7005), [sym_enum] = ACTIONS(7005), [sym_export] = ACTIONS(7005), [sym_extern] = ACTIONS(7005), [sym_final] = ACTIONS(7005), [sym_immutable] = ACTIONS(7005), [sym_import] = ACTIONS(7005), [sym_inout] = ACTIONS(7005), [sym_interface] = ACTIONS(7005), [sym_invariant] = ACTIONS(7005), [sym_mixin] = ACTIONS(7005), [sym_nothrow] = ACTIONS(7005), [sym_override] = ACTIONS(7005), [sym_package] = ACTIONS(7005), [sym_pragma] = ACTIONS(7005), [sym_private] = ACTIONS(7005), [sym_protected] = ACTIONS(7005), [sym_public] = ACTIONS(7005), [sym_pure] = ACTIONS(7005), [sym_ref] = ACTIONS(7005), [sym_return] = ACTIONS(7005), [sym_scope] = ACTIONS(7005), [sym_shared] = ACTIONS(7005), [sym_static] = ACTIONS(7005), [sym_struct] = ACTIONS(7005), [sym_synchronized] = ACTIONS(7005), [sym_template] = ACTIONS(7005), [sym_typeof] = ACTIONS(7005), [sym_union] = ACTIONS(7005), [sym_unittest] = ACTIONS(7005), [sym_version] = ACTIONS(7005), [sym_gshared] = ACTIONS(7005), [sym_traits] = ACTIONS(7005), [sym_vector] = ACTIONS(7005), [sym_void] = ACTIONS(7005), [sym_directive] = ACTIONS(3), }, [2975] = { [sym_identifier] = ACTIONS(7009), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7011), [anon_sym_DOT] = ACTIONS(7011), [anon_sym_COLON] = ACTIONS(7011), [anon_sym_TILDE] = ACTIONS(7011), [anon_sym_AT] = ACTIONS(7011), [sym_bool] = ACTIONS(7009), [sym_byte] = ACTIONS(7009), [sym_ubyte] = ACTIONS(7009), [sym_char] = ACTIONS(7009), [sym_short] = ACTIONS(7009), [sym_ushort] = ACTIONS(7009), [sym_int] = ACTIONS(7009), [sym_uint] = ACTIONS(7009), [sym_long] = ACTIONS(7009), [sym_ulong] = ACTIONS(7009), [sym_cent] = ACTIONS(7009), [sym_ucent] = ACTIONS(7009), [sym_wchar] = ACTIONS(7009), [sym_dchar] = ACTIONS(7009), [sym_float] = ACTIONS(7009), [sym_double] = ACTIONS(7009), [sym_real] = ACTIONS(7009), [sym_ifloat] = ACTIONS(7009), [sym_idouble] = ACTIONS(7009), [sym_ireal] = ACTIONS(7009), [sym_cfloat] = ACTIONS(7009), [sym_cdouble] = ACTIONS(7009), [sym_creal] = ACTIONS(7009), [sym_size_t] = ACTIONS(7009), [sym_ptrdiff_t] = ACTIONS(7009), [sym_string] = ACTIONS(7009), [sym_cstring] = ACTIONS(7009), [sym_dstring] = ACTIONS(7009), [sym_wstring] = ACTIONS(7009), [sym_noreturn] = ACTIONS(7009), [sym_this] = ACTIONS(7009), [sym_abstract] = ACTIONS(7009), [sym_alias] = ACTIONS(7009), [sym_align] = ACTIONS(7009), [sym_auto] = ACTIONS(7009), [sym_class] = ACTIONS(7009), [sym_const] = ACTIONS(7009), [sym_debug] = ACTIONS(7009), [sym_deprecated] = ACTIONS(7009), [sym_enum] = ACTIONS(7009), [sym_export] = ACTIONS(7009), [sym_extern] = ACTIONS(7009), [sym_final] = ACTIONS(7009), [sym_immutable] = ACTIONS(7009), [sym_import] = ACTIONS(7009), [sym_inout] = ACTIONS(7009), [sym_interface] = ACTIONS(7009), [sym_invariant] = ACTIONS(7009), [sym_mixin] = ACTIONS(7009), [sym_nothrow] = ACTIONS(7009), [sym_override] = ACTIONS(7009), [sym_package] = ACTIONS(7009), [sym_pragma] = ACTIONS(7009), [sym_private] = ACTIONS(7009), [sym_protected] = ACTIONS(7009), [sym_public] = ACTIONS(7009), [sym_pure] = ACTIONS(7009), [sym_ref] = ACTIONS(7009), [sym_return] = ACTIONS(7009), [sym_scope] = ACTIONS(7009), [sym_shared] = ACTIONS(7009), [sym_static] = ACTIONS(7009), [sym_struct] = ACTIONS(7009), [sym_synchronized] = ACTIONS(7009), [sym_template] = ACTIONS(7009), [sym_typeof] = ACTIONS(7009), [sym_union] = ACTIONS(7009), [sym_unittest] = ACTIONS(7009), [sym_version] = ACTIONS(7009), [sym_gshared] = ACTIONS(7009), [sym_traits] = ACTIONS(7009), [sym_vector] = ACTIONS(7009), [sym_void] = ACTIONS(7009), [sym_directive] = ACTIONS(3), }, [2976] = { [sym_manifest_declarator] = STATE(6077), [sym_storage_class] = STATE(3029), [sym_type] = STATE(6800), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3029), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7013), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7015), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7017), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2977] = { [sym_manifest_declarator] = STATE(6320), [sym_storage_class] = STATE(3051), [sym_type] = STATE(6449), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3051), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7019), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7021), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7023), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2978] = { [sym_manifest_declarator] = STATE(6138), [sym_storage_class] = STATE(3019), [sym_type] = STATE(6851), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3019), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7025), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7027), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7029), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2979] = { [sym_manifest_declarator] = STATE(6394), [sym_storage_class] = STATE(3026), [sym_type] = STATE(6929), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3026), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7031), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7033), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7035), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2980] = { [sym_manifest_declarator] = STATE(5802), [sym_storage_class] = STATE(3027), [sym_type] = STATE(6698), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3027), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7037), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7039), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7041), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2981] = { [sym_manifest_declarator] = STATE(6200), [sym_storage_class] = STATE(3061), [sym_type] = STATE(6451), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3061), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7043), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7045), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7047), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2982] = { [sym_manifest_declarator] = STATE(6078), [sym_storage_class] = STATE(3050), [sym_type] = STATE(6421), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3050), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7049), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7051), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7053), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2983] = { [sym_manifest_declarator] = STATE(6030), [sym_storage_class] = STATE(3057), [sym_type] = STATE(6740), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3057), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7055), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7057), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7059), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2984] = { [sym_manifest_declarator] = STATE(5745), [sym_storage_class] = STATE(3031), [sym_type] = STATE(6855), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3031), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7061), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7063), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7065), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2985] = { [sym_manifest_declarator] = STATE(5929), [sym_storage_class] = STATE(3059), [sym_type] = STATE(6703), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3059), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7067), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7069), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7071), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2986] = { [sym_manifest_declarator] = STATE(6346), [sym_storage_class] = STATE(3023), [sym_type] = STATE(6910), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3023), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7073), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7075), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7077), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2987] = { [sym_manifest_declarator] = STATE(5744), [sym_storage_class] = STATE(3058), [sym_type] = STATE(6665), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3058), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7079), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7081), [anon_sym_DOT] = ACTIONS(13), [anon_sym_COLON] = ACTIONS(7083), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2988] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6370), [sym_type] = STATE(5724), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7085), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7087), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2989] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6132), [sym_type] = STATE(5729), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7089), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7091), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2990] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6025), [sym_type] = STATE(5609), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7093), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7095), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2991] = { [sym_storage_class] = STATE(3082), [sym_alias_initializer] = STATE(6378), [sym_type] = STATE(6975), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3082), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7097), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7099), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2992] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(5771), [sym_type] = STATE(5586), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7101), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7103), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2993] = { [sym_storage_class] = STATE(3099), [sym_alias_initializer] = STATE(6034), [sym_type] = STATE(7090), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3099), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7105), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7107), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2994] = { [sym_storage_class] = STATE(3084), [sym_alias_initializer] = STATE(5759), [sym_type] = STATE(7220), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3084), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7109), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7111), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2995] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(5770), [sym_type] = STATE(5645), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7113), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7115), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2996] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6174), [sym_type] = STATE(5608), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7117), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7119), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2997] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6372), [sym_type] = STATE(5710), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7121), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7123), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2998] = { [sym_storage_class] = STATE(3093), [sym_alias_initializer] = STATE(6340), [sym_type] = STATE(6995), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3093), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7125), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7127), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [2999] = { [sym_storage_class] = STATE(3081), [sym_alias_initializer] = STATE(5926), [sym_type] = STATE(7193), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3081), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7129), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7131), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3000] = { [sym_storage_class] = STATE(3076), [sym_alias_initializer] = STATE(6227), [sym_type] = STATE(7275), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3076), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7133), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7135), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3001] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6068), [sym_type] = STATE(5668), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7137), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7139), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3002] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6205), [sym_type] = STATE(5622), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7141), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7143), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3003] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6205), [sym_type] = STATE(5622), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7145), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7143), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3004] = { [sym_storage_class] = STATE(3071), [sym_alias_initializer] = STATE(6020), [sym_type] = STATE(7459), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3071), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7147), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7149), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3005] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(5974), [sym_type] = STATE(5713), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7151), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7153), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3006] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6114), [sym_type] = STATE(5694), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7155), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7157), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3007] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6114), [sym_type] = STATE(5694), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7159), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7157), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3008] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6017), [sym_type] = STATE(5619), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7161), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7163), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3009] = { [sym_storage_class] = STATE(3077), [sym_alias_initializer] = STATE(5809), [sym_type] = STATE(7190), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3077), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7165), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7167), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3010] = { [sym_storage_class] = STATE(3064), [sym_alias_initializer] = STATE(6063), [sym_type] = STATE(7155), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3064), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7169), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7171), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3011] = { [sym_storage_class] = STATE(3063), [sym_alias_initializer] = STATE(6211), [sym_type] = STATE(7526), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3063), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7173), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7175), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3012] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6025), [sym_type] = STATE(5609), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7177), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7095), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3013] = { [sym_storage_class] = STATE(3087), [sym_alias_initializer] = STATE(6305), [sym_type] = STATE(7911), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3087), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7179), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7181), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3014] = { [sym_storage_class] = STATE(3225), [sym__auto_assignment] = STATE(6132), [sym_type] = STATE(5729), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7183), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_enum] = ACTIONS(7091), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3015] = { [sym_storage_class] = STATE(3097), [sym_alias_initializer] = STATE(6140), [sym_type] = STATE(7056), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3097), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7185), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_this] = ACTIONS(7187), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3016] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7197), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3017] = { [sym_manifest_declarator] = STATE(6077), [sym_storage_class] = STATE(3029), [sym_type] = STATE(6800), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3029), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3018] = { [sym_manifest_declarator] = STATE(6314), [sym_storage_class] = STATE(3032), [sym_type] = STATE(6943), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3032), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3019] = { [sym_manifest_declarator] = STATE(6077), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6800), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3020] = { [sym_manifest_declarator] = STATE(6244), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6888), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3021] = { [sym_manifest_declarator] = STATE(5917), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6742), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3022] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7205), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3023] = { [sym_manifest_declarator] = STATE(6394), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6929), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3024] = { [sym_manifest_declarator] = STATE(6337), [sym_storage_class] = STATE(3020), [sym_type] = STATE(6644), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3020), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3025] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7207), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3026] = { [sym_manifest_declarator] = STATE(6337), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6644), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3027] = { [sym_manifest_declarator] = STATE(5744), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6665), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3028] = { [sym_manifest_declarator] = STATE(5986), [sym_storage_class] = STATE(3021), [sym_type] = STATE(6758), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3021), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3029] = { [sym_manifest_declarator] = STATE(5986), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6758), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3030] = { [sym_manifest_declarator] = STATE(6078), [sym_storage_class] = STATE(3050), [sym_type] = STATE(6421), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3050), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3031] = { [sym_manifest_declarator] = STATE(6314), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6943), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3032] = { [sym_manifest_declarator] = STATE(6055), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6722), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3033] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7209), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3034] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7211), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3035] = { [sym_manifest_declarator] = STATE(6222), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6819), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3036] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7213), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3037] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7215), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3038] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7217), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3039] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7219), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3040] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7221), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3041] = { [sym_manifest_declarator] = STATE(5744), [sym_storage_class] = STATE(3058), [sym_type] = STATE(6665), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3058), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3042] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7223), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3043] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7225), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3044] = { [sym_manifest_declarator] = STATE(5745), [sym_storage_class] = STATE(3031), [sym_type] = STATE(6855), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3031), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3045] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7227), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3046] = { [sym_manifest_declarator] = STATE(5876), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6590), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3047] = { [sym_manifest_declarator] = STATE(5777), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6545), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3048] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7229), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3049] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7231), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3050] = { [sym_manifest_declarator] = STATE(5894), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6509), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3051] = { [sym_manifest_declarator] = STATE(5745), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6855), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3052] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7233), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3053] = { [sym_manifest_declarator] = STATE(5894), [sym_storage_class] = STATE(3047), [sym_type] = STATE(6509), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3047), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3054] = { [sym_manifest_declarator] = STATE(6030), [sym_storage_class] = STATE(3057), [sym_type] = STATE(6740), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3057), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3055] = { [sym_manifest_declarator] = STATE(6394), [sym_storage_class] = STATE(3026), [sym_type] = STATE(6929), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3026), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3056] = { [sym_type] = STATE(5407), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_template_parameter] = STATE(6059), [sym__template_parameter_list] = STATE(7812), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7189), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7193), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_this] = ACTIONS(7235), [sym_alias] = ACTIONS(7199), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3057] = { [sym_manifest_declarator] = STATE(6126), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6796), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3058] = { [sym_manifest_declarator] = STATE(5805), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6624), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3059] = { [sym_manifest_declarator] = STATE(6030), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6740), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3060] = { [sym_manifest_declarator] = STATE(5805), [sym_storage_class] = STATE(3046), [sym_type] = STATE(6624), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3046), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3061] = { [sym_manifest_declarator] = STATE(6078), [sym_storage_class] = STATE(3225), [sym_type] = STATE(6421), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3062] = { [sym_manifest_declarator] = STATE(6126), [sym_storage_class] = STATE(3035), [sym_type] = STATE(6796), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3035), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7203), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3063] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7459), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3064] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7104), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3065] = { [sym_token_string] = STATE(3547), [sym__builtin_type] = STATE(3526), [sym_raw_string] = STATE(3547), [sym_hex_string] = STATE(3547), [sym_quoted_string] = STATE(3547), [sym_interpolated_raw_string] = STATE(3547), [sym_interpolated_quoted_string] = STATE(3547), [sym_interpolated_token_string] = STATE(3547), [sym_string_literal] = STATE(3526), [sym_char_literal] = STATE(3526), [sym_special_keyword] = STATE(3526), [sym__template_single_arg] = STATE(3526), [sym_identifier] = ACTIONS(7239), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3249), [anon_sym_LPAREN] = ACTIONS(7241), [sym_bool] = ACTIONS(7239), [sym_byte] = ACTIONS(7239), [sym_ubyte] = ACTIONS(7239), [sym_char] = ACTIONS(7239), [sym_short] = ACTIONS(7239), [sym_ushort] = ACTIONS(7239), [sym_int] = ACTIONS(7239), [sym_uint] = ACTIONS(7239), [sym_long] = ACTIONS(7239), [sym_ulong] = ACTIONS(7239), [sym_cent] = ACTIONS(7239), [sym_ucent] = ACTIONS(7239), [sym_wchar] = ACTIONS(7239), [sym_dchar] = ACTIONS(7239), [sym_float] = ACTIONS(7239), [sym_double] = ACTIONS(7239), [sym_real] = ACTIONS(7239), [sym_ifloat] = ACTIONS(7239), [sym_idouble] = ACTIONS(7239), [sym_ireal] = ACTIONS(7239), [sym_cfloat] = ACTIONS(7239), [sym_cdouble] = ACTIONS(7239), [sym_creal] = ACTIONS(7239), [sym_size_t] = ACTIONS(7239), [sym_ptrdiff_t] = ACTIONS(7239), [sym_string] = ACTIONS(7239), [sym_cstring] = ACTIONS(7239), [sym_dstring] = ACTIONS(7239), [sym_wstring] = ACTIONS(7239), [sym_noreturn] = ACTIONS(7239), [sym_true] = ACTIONS(7239), [sym_false] = ACTIONS(7239), [sym_null] = ACTIONS(7239), [sym_this] = ACTIONS(7239), [sym_void] = ACTIONS(7239), [anon_sym_BQUOTE] = ACTIONS(3305), [anon_sym_r_DQUOTE] = ACTIONS(3307), [anon_sym_x_DQUOTE] = ACTIONS(3309), [anon_sym_DQUOTE] = ACTIONS(3311), [anon_sym_i_BQUOTE] = ACTIONS(3313), [anon_sym_i_DQUOTE] = ACTIONS(3315), [anon_sym_iq_LBRACE] = ACTIONS(3317), [aux_sym_char_literal_token1] = ACTIONS(3319), [anon_sym_SQUOTE] = ACTIONS(3321), [anon_sym___DATE__] = ACTIONS(3323), [anon_sym___FILE__] = ACTIONS(3323), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3323), [anon_sym___FUNCTION__] = ACTIONS(3323), [anon_sym___LINE__] = ACTIONS(3323), [anon_sym___MODULE__] = ACTIONS(3323), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3323), [anon_sym___TIME__] = ACTIONS(3323), [anon_sym___TIMESTAMP__] = ACTIONS(3323), [anon_sym___VENDOR__] = ACTIONS(3323), [anon_sym___VERSION__] = ACTIONS(3323), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7243), [sym_float_literal] = ACTIONS(7243), [sym__string] = ACTIONS(3327), }, [3066] = { [sym_token_string] = STATE(4810), [sym__builtin_type] = STATE(4794), [sym_raw_string] = STATE(4810), [sym_hex_string] = STATE(4810), [sym_quoted_string] = STATE(4810), [sym_interpolated_raw_string] = STATE(4810), [sym_interpolated_quoted_string] = STATE(4810), [sym_interpolated_token_string] = STATE(4810), [sym_string_literal] = STATE(4794), [sym_char_literal] = STATE(4794), [sym_special_keyword] = STATE(4794), [sym__template_single_arg] = STATE(4794), [sym_identifier] = ACTIONS(7245), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7247), [anon_sym_LPAREN] = ACTIONS(7249), [sym_bool] = ACTIONS(7245), [sym_byte] = ACTIONS(7245), [sym_ubyte] = ACTIONS(7245), [sym_char] = ACTIONS(7245), [sym_short] = ACTIONS(7245), [sym_ushort] = ACTIONS(7245), [sym_int] = ACTIONS(7245), [sym_uint] = ACTIONS(7245), [sym_long] = ACTIONS(7245), [sym_ulong] = ACTIONS(7245), [sym_cent] = ACTIONS(7245), [sym_ucent] = ACTIONS(7245), [sym_wchar] = ACTIONS(7245), [sym_dchar] = ACTIONS(7245), [sym_float] = ACTIONS(7245), [sym_double] = ACTIONS(7245), [sym_real] = ACTIONS(7245), [sym_ifloat] = ACTIONS(7245), [sym_idouble] = ACTIONS(7245), [sym_ireal] = ACTIONS(7245), [sym_cfloat] = ACTIONS(7245), [sym_cdouble] = ACTIONS(7245), [sym_creal] = ACTIONS(7245), [sym_size_t] = ACTIONS(7245), [sym_ptrdiff_t] = ACTIONS(7245), [sym_string] = ACTIONS(7245), [sym_cstring] = ACTIONS(7245), [sym_dstring] = ACTIONS(7245), [sym_wstring] = ACTIONS(7245), [sym_noreturn] = ACTIONS(7245), [sym_true] = ACTIONS(7245), [sym_false] = ACTIONS(7245), [sym_null] = ACTIONS(7245), [sym_this] = ACTIONS(7245), [sym_void] = ACTIONS(7245), [anon_sym_BQUOTE] = ACTIONS(7251), [anon_sym_r_DQUOTE] = ACTIONS(7253), [anon_sym_x_DQUOTE] = ACTIONS(7255), [anon_sym_DQUOTE] = ACTIONS(7257), [anon_sym_i_BQUOTE] = ACTIONS(7259), [anon_sym_i_DQUOTE] = ACTIONS(7261), [anon_sym_iq_LBRACE] = ACTIONS(7263), [aux_sym_char_literal_token1] = ACTIONS(7265), [anon_sym_SQUOTE] = ACTIONS(7267), [anon_sym___DATE__] = ACTIONS(7269), [anon_sym___FILE__] = ACTIONS(7269), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7269), [anon_sym___FUNCTION__] = ACTIONS(7269), [anon_sym___LINE__] = ACTIONS(7269), [anon_sym___MODULE__] = ACTIONS(7269), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7269), [anon_sym___TIME__] = ACTIONS(7269), [anon_sym___TIMESTAMP__] = ACTIONS(7269), [anon_sym___VENDOR__] = ACTIONS(7269), [anon_sym___VERSION__] = ACTIONS(7269), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7271), [sym_float_literal] = ACTIONS(7271), [sym__string] = ACTIONS(7273), }, [3067] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6214), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3068] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5930), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3069] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5949), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3070] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6356), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3071] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7371), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3072] = { [sym_token_string] = STATE(4714), [sym__builtin_type] = STATE(4676), [sym_raw_string] = STATE(4714), [sym_hex_string] = STATE(4714), [sym_quoted_string] = STATE(4714), [sym_interpolated_raw_string] = STATE(4714), [sym_interpolated_quoted_string] = STATE(4714), [sym_interpolated_token_string] = STATE(4714), [sym_string_literal] = STATE(4676), [sym_char_literal] = STATE(4676), [sym_special_keyword] = STATE(4676), [sym__template_single_arg] = STATE(4676), [sym_identifier] = ACTIONS(7275), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7277), [anon_sym_LPAREN] = ACTIONS(7279), [sym_bool] = ACTIONS(7275), [sym_byte] = ACTIONS(7275), [sym_ubyte] = ACTIONS(7275), [sym_char] = ACTIONS(7275), [sym_short] = ACTIONS(7275), [sym_ushort] = ACTIONS(7275), [sym_int] = ACTIONS(7275), [sym_uint] = ACTIONS(7275), [sym_long] = ACTIONS(7275), [sym_ulong] = ACTIONS(7275), [sym_cent] = ACTIONS(7275), [sym_ucent] = ACTIONS(7275), [sym_wchar] = ACTIONS(7275), [sym_dchar] = ACTIONS(7275), [sym_float] = ACTIONS(7275), [sym_double] = ACTIONS(7275), [sym_real] = ACTIONS(7275), [sym_ifloat] = ACTIONS(7275), [sym_idouble] = ACTIONS(7275), [sym_ireal] = ACTIONS(7275), [sym_cfloat] = ACTIONS(7275), [sym_cdouble] = ACTIONS(7275), [sym_creal] = ACTIONS(7275), [sym_size_t] = ACTIONS(7275), [sym_ptrdiff_t] = ACTIONS(7275), [sym_string] = ACTIONS(7275), [sym_cstring] = ACTIONS(7275), [sym_dstring] = ACTIONS(7275), [sym_wstring] = ACTIONS(7275), [sym_noreturn] = ACTIONS(7275), [sym_true] = ACTIONS(7275), [sym_false] = ACTIONS(7275), [sym_null] = ACTIONS(7275), [sym_this] = ACTIONS(7275), [sym_void] = ACTIONS(7275), [anon_sym_BQUOTE] = ACTIONS(7281), [anon_sym_r_DQUOTE] = ACTIONS(7283), [anon_sym_x_DQUOTE] = ACTIONS(7285), [anon_sym_DQUOTE] = ACTIONS(7287), [anon_sym_i_BQUOTE] = ACTIONS(7289), [anon_sym_i_DQUOTE] = ACTIONS(7291), [anon_sym_iq_LBRACE] = ACTIONS(7293), [aux_sym_char_literal_token1] = ACTIONS(7295), [anon_sym_SQUOTE] = ACTIONS(7297), [anon_sym___DATE__] = ACTIONS(7299), [anon_sym___FILE__] = ACTIONS(7299), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7299), [anon_sym___FUNCTION__] = ACTIONS(7299), [anon_sym___LINE__] = ACTIONS(7299), [anon_sym___MODULE__] = ACTIONS(7299), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7299), [anon_sym___TIME__] = ACTIONS(7299), [anon_sym___TIMESTAMP__] = ACTIONS(7299), [anon_sym___VENDOR__] = ACTIONS(7299), [anon_sym___VERSION__] = ACTIONS(7299), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7301), [sym_float_literal] = ACTIONS(7301), [sym__string] = ACTIONS(7303), }, [3073] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6253), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3074] = { [sym_token_string] = STATE(2400), [sym__builtin_type] = STATE(2399), [sym_raw_string] = STATE(2400), [sym_hex_string] = STATE(2400), [sym_quoted_string] = STATE(2400), [sym_interpolated_raw_string] = STATE(2400), [sym_interpolated_quoted_string] = STATE(2400), [sym_interpolated_token_string] = STATE(2400), [sym_string_literal] = STATE(2399), [sym_char_literal] = STATE(2399), [sym_special_keyword] = STATE(2399), [sym__template_single_arg] = STATE(2399), [sym_identifier] = ACTIONS(7305), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7307), [anon_sym_LPAREN] = ACTIONS(7309), [sym_bool] = ACTIONS(7305), [sym_byte] = ACTIONS(7305), [sym_ubyte] = ACTIONS(7305), [sym_char] = ACTIONS(7305), [sym_short] = ACTIONS(7305), [sym_ushort] = ACTIONS(7305), [sym_int] = ACTIONS(7305), [sym_uint] = ACTIONS(7305), [sym_long] = ACTIONS(7305), [sym_ulong] = ACTIONS(7305), [sym_cent] = ACTIONS(7305), [sym_ucent] = ACTIONS(7305), [sym_wchar] = ACTIONS(7305), [sym_dchar] = ACTIONS(7305), [sym_float] = ACTIONS(7305), [sym_double] = ACTIONS(7305), [sym_real] = ACTIONS(7305), [sym_ifloat] = ACTIONS(7305), [sym_idouble] = ACTIONS(7305), [sym_ireal] = ACTIONS(7305), [sym_cfloat] = ACTIONS(7305), [sym_cdouble] = ACTIONS(7305), [sym_creal] = ACTIONS(7305), [sym_size_t] = ACTIONS(7305), [sym_ptrdiff_t] = ACTIONS(7305), [sym_string] = ACTIONS(7305), [sym_cstring] = ACTIONS(7305), [sym_dstring] = ACTIONS(7305), [sym_wstring] = ACTIONS(7305), [sym_noreturn] = ACTIONS(7305), [sym_true] = ACTIONS(7305), [sym_false] = ACTIONS(7305), [sym_null] = ACTIONS(7305), [sym_this] = ACTIONS(7305), [sym_void] = ACTIONS(7305), [anon_sym_BQUOTE] = ACTIONS(7311), [anon_sym_r_DQUOTE] = ACTIONS(7313), [anon_sym_x_DQUOTE] = ACTIONS(7315), [anon_sym_DQUOTE] = ACTIONS(7317), [anon_sym_i_BQUOTE] = ACTIONS(7319), [anon_sym_i_DQUOTE] = ACTIONS(7321), [anon_sym_iq_LBRACE] = ACTIONS(7323), [aux_sym_char_literal_token1] = ACTIONS(7325), [anon_sym_SQUOTE] = ACTIONS(7327), [anon_sym___DATE__] = ACTIONS(7329), [anon_sym___FILE__] = ACTIONS(7329), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7329), [anon_sym___FUNCTION__] = ACTIONS(7329), [anon_sym___LINE__] = ACTIONS(7329), [anon_sym___MODULE__] = ACTIONS(7329), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7329), [anon_sym___TIME__] = ACTIONS(7329), [anon_sym___TIMESTAMP__] = ACTIONS(7329), [anon_sym___VENDOR__] = ACTIONS(7329), [anon_sym___VERSION__] = ACTIONS(7329), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7331), [sym_float_literal] = ACTIONS(7331), [sym__string] = ACTIONS(7333), }, [3075] = { [sym_token_string] = STATE(2400), [sym__builtin_type] = STATE(2399), [sym_raw_string] = STATE(2400), [sym_hex_string] = STATE(2400), [sym_quoted_string] = STATE(2400), [sym_interpolated_raw_string] = STATE(2400), [sym_interpolated_quoted_string] = STATE(2400), [sym_interpolated_token_string] = STATE(2400), [sym_string_literal] = STATE(2399), [sym_char_literal] = STATE(2399), [sym_special_keyword] = STATE(2399), [sym__template_single_arg] = STATE(2399), [sym_identifier] = ACTIONS(7305), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7307), [anon_sym_LPAREN] = ACTIONS(7309), [sym_bool] = ACTIONS(7305), [sym_byte] = ACTIONS(7305), [sym_ubyte] = ACTIONS(7305), [sym_char] = ACTIONS(7305), [sym_short] = ACTIONS(7305), [sym_ushort] = ACTIONS(7305), [sym_int] = ACTIONS(7305), [sym_uint] = ACTIONS(7305), [sym_long] = ACTIONS(7305), [sym_ulong] = ACTIONS(7305), [sym_cent] = ACTIONS(7305), [sym_ucent] = ACTIONS(7305), [sym_wchar] = ACTIONS(7305), [sym_dchar] = ACTIONS(7305), [sym_float] = ACTIONS(7305), [sym_double] = ACTIONS(7305), [sym_real] = ACTIONS(7305), [sym_ifloat] = ACTIONS(7305), [sym_idouble] = ACTIONS(7305), [sym_ireal] = ACTIONS(7305), [sym_cfloat] = ACTIONS(7305), [sym_cdouble] = ACTIONS(7305), [sym_creal] = ACTIONS(7305), [sym_size_t] = ACTIONS(7305), [sym_ptrdiff_t] = ACTIONS(7305), [sym_string] = ACTIONS(7305), [sym_cstring] = ACTIONS(7305), [sym_dstring] = ACTIONS(7305), [sym_wstring] = ACTIONS(7305), [sym_noreturn] = ACTIONS(7305), [sym_true] = ACTIONS(7305), [sym_false] = ACTIONS(7305), [sym_null] = ACTIONS(7305), [sym_this] = ACTIONS(7305), [sym_void] = ACTIONS(7305), [anon_sym_BQUOTE] = ACTIONS(7311), [anon_sym_r_DQUOTE] = ACTIONS(7313), [anon_sym_x_DQUOTE] = ACTIONS(7315), [anon_sym_DQUOTE] = ACTIONS(7317), [anon_sym_i_BQUOTE] = ACTIONS(7319), [anon_sym_i_DQUOTE] = ACTIONS(7321), [anon_sym_iq_LBRACE] = ACTIONS(7323), [aux_sym_char_literal_token1] = ACTIONS(7325), [anon_sym_SQUOTE] = ACTIONS(7327), [anon_sym___DATE__] = ACTIONS(7329), [anon_sym___FILE__] = ACTIONS(7329), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7329), [anon_sym___FUNCTION__] = ACTIONS(7329), [anon_sym___LINE__] = ACTIONS(7329), [anon_sym___MODULE__] = ACTIONS(7329), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7329), [anon_sym___TIME__] = ACTIONS(7329), [anon_sym___TIMESTAMP__] = ACTIONS(7329), [anon_sym___VENDOR__] = ACTIONS(7329), [anon_sym___VERSION__] = ACTIONS(7329), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7331), [sym_float_literal] = ACTIONS(7331), [sym__string] = ACTIONS(7333), }, [3076] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7911), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3077] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7220), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3078] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5953), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3079] = { [sym_token_string] = STATE(3437), [sym__builtin_type] = STATE(3463), [sym_raw_string] = STATE(3437), [sym_hex_string] = STATE(3437), [sym_quoted_string] = STATE(3437), [sym_interpolated_raw_string] = STATE(3437), [sym_interpolated_quoted_string] = STATE(3437), [sym_interpolated_token_string] = STATE(3437), [sym_string_literal] = STATE(3463), [sym_char_literal] = STATE(3463), [sym_special_keyword] = STATE(3463), [sym__template_single_arg] = STATE(3463), [sym_identifier] = ACTIONS(7335), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(81), [anon_sym_LPAREN] = ACTIONS(7337), [sym_bool] = ACTIONS(7335), [sym_byte] = ACTIONS(7335), [sym_ubyte] = ACTIONS(7335), [sym_char] = ACTIONS(7335), [sym_short] = ACTIONS(7335), [sym_ushort] = ACTIONS(7335), [sym_int] = ACTIONS(7335), [sym_uint] = ACTIONS(7335), [sym_long] = ACTIONS(7335), [sym_ulong] = ACTIONS(7335), [sym_cent] = ACTIONS(7335), [sym_ucent] = ACTIONS(7335), [sym_wchar] = ACTIONS(7335), [sym_dchar] = ACTIONS(7335), [sym_float] = ACTIONS(7335), [sym_double] = ACTIONS(7335), [sym_real] = ACTIONS(7335), [sym_ifloat] = ACTIONS(7335), [sym_idouble] = ACTIONS(7335), [sym_ireal] = ACTIONS(7335), [sym_cfloat] = ACTIONS(7335), [sym_cdouble] = ACTIONS(7335), [sym_creal] = ACTIONS(7335), [sym_size_t] = ACTIONS(7335), [sym_ptrdiff_t] = ACTIONS(7335), [sym_string] = ACTIONS(7335), [sym_cstring] = ACTIONS(7335), [sym_dstring] = ACTIONS(7335), [sym_wstring] = ACTIONS(7335), [sym_noreturn] = ACTIONS(7335), [sym_true] = ACTIONS(7335), [sym_false] = ACTIONS(7335), [sym_null] = ACTIONS(7335), [sym_this] = ACTIONS(7335), [sym_void] = ACTIONS(7335), [anon_sym_BQUOTE] = ACTIONS(211), [anon_sym_r_DQUOTE] = ACTIONS(213), [anon_sym_x_DQUOTE] = ACTIONS(215), [anon_sym_DQUOTE] = ACTIONS(217), [anon_sym_i_BQUOTE] = ACTIONS(219), [anon_sym_i_DQUOTE] = ACTIONS(221), [anon_sym_iq_LBRACE] = ACTIONS(223), [aux_sym_char_literal_token1] = ACTIONS(225), [anon_sym_SQUOTE] = ACTIONS(227), [anon_sym___DATE__] = ACTIONS(229), [anon_sym___FILE__] = ACTIONS(229), [anon_sym___FILE_FULL_PATH__] = ACTIONS(229), [anon_sym___FUNCTION__] = ACTIONS(229), [anon_sym___LINE__] = ACTIONS(229), [anon_sym___MODULE__] = ACTIONS(229), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(229), [anon_sym___TIME__] = ACTIONS(229), [anon_sym___TIMESTAMP__] = ACTIONS(229), [anon_sym___VENDOR__] = ACTIONS(229), [anon_sym___VERSION__] = ACTIONS(229), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7339), [sym_float_literal] = ACTIONS(7339), [sym__string] = ACTIONS(233), }, [3080] = { [sym_token_string] = STATE(3527), [sym__builtin_type] = STATE(3572), [sym_raw_string] = STATE(3527), [sym_hex_string] = STATE(3527), [sym_quoted_string] = STATE(3527), [sym_interpolated_raw_string] = STATE(3527), [sym_interpolated_quoted_string] = STATE(3527), [sym_interpolated_token_string] = STATE(3527), [sym_string_literal] = STATE(3572), [sym_char_literal] = STATE(3572), [sym_special_keyword] = STATE(3572), [sym__template_single_arg] = STATE(3572), [sym_identifier] = ACTIONS(7341), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(3643), [anon_sym_LPAREN] = ACTIONS(7343), [sym_bool] = ACTIONS(7341), [sym_byte] = ACTIONS(7341), [sym_ubyte] = ACTIONS(7341), [sym_char] = ACTIONS(7341), [sym_short] = ACTIONS(7341), [sym_ushort] = ACTIONS(7341), [sym_int] = ACTIONS(7341), [sym_uint] = ACTIONS(7341), [sym_long] = ACTIONS(7341), [sym_ulong] = ACTIONS(7341), [sym_cent] = ACTIONS(7341), [sym_ucent] = ACTIONS(7341), [sym_wchar] = ACTIONS(7341), [sym_dchar] = ACTIONS(7341), [sym_float] = ACTIONS(7341), [sym_double] = ACTIONS(7341), [sym_real] = ACTIONS(7341), [sym_ifloat] = ACTIONS(7341), [sym_idouble] = ACTIONS(7341), [sym_ireal] = ACTIONS(7341), [sym_cfloat] = ACTIONS(7341), [sym_cdouble] = ACTIONS(7341), [sym_creal] = ACTIONS(7341), [sym_size_t] = ACTIONS(7341), [sym_ptrdiff_t] = ACTIONS(7341), [sym_string] = ACTIONS(7341), [sym_cstring] = ACTIONS(7341), [sym_dstring] = ACTIONS(7341), [sym_wstring] = ACTIONS(7341), [sym_noreturn] = ACTIONS(7341), [sym_true] = ACTIONS(7341), [sym_false] = ACTIONS(7341), [sym_null] = ACTIONS(7341), [sym_this] = ACTIONS(7341), [sym_void] = ACTIONS(7341), [anon_sym_BQUOTE] = ACTIONS(3691), [anon_sym_r_DQUOTE] = ACTIONS(3693), [anon_sym_x_DQUOTE] = ACTIONS(3695), [anon_sym_DQUOTE] = ACTIONS(3697), [anon_sym_i_BQUOTE] = ACTIONS(3699), [anon_sym_i_DQUOTE] = ACTIONS(3701), [anon_sym_iq_LBRACE] = ACTIONS(3703), [aux_sym_char_literal_token1] = ACTIONS(3705), [anon_sym_SQUOTE] = ACTIONS(3707), [anon_sym___DATE__] = ACTIONS(3709), [anon_sym___FILE__] = ACTIONS(3709), [anon_sym___FILE_FULL_PATH__] = ACTIONS(3709), [anon_sym___FUNCTION__] = ACTIONS(3709), [anon_sym___LINE__] = ACTIONS(3709), [anon_sym___MODULE__] = ACTIONS(3709), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(3709), [anon_sym___TIME__] = ACTIONS(3709), [anon_sym___TIMESTAMP__] = ACTIONS(3709), [anon_sym___VENDOR__] = ACTIONS(3709), [anon_sym___VERSION__] = ACTIONS(3709), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7345), [sym_float_literal] = ACTIONS(7345), [sym__string] = ACTIONS(3713), }, [3081] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7155), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3082] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6987), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3083] = { [sym_token_string] = STATE(3376), [sym__builtin_type] = STATE(3374), [sym_raw_string] = STATE(3376), [sym_hex_string] = STATE(3376), [sym_quoted_string] = STATE(3376), [sym_interpolated_raw_string] = STATE(3376), [sym_interpolated_quoted_string] = STATE(3376), [sym_interpolated_token_string] = STATE(3376), [sym_string_literal] = STATE(3374), [sym_char_literal] = STATE(3374), [sym_special_keyword] = STATE(3374), [sym__template_single_arg] = STATE(3374), [sym_identifier] = ACTIONS(7347), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7349), [anon_sym_LPAREN] = ACTIONS(7351), [sym_bool] = ACTIONS(7347), [sym_byte] = ACTIONS(7347), [sym_ubyte] = ACTIONS(7347), [sym_char] = ACTIONS(7347), [sym_short] = ACTIONS(7347), [sym_ushort] = ACTIONS(7347), [sym_int] = ACTIONS(7347), [sym_uint] = ACTIONS(7347), [sym_long] = ACTIONS(7347), [sym_ulong] = ACTIONS(7347), [sym_cent] = ACTIONS(7347), [sym_ucent] = ACTIONS(7347), [sym_wchar] = ACTIONS(7347), [sym_dchar] = ACTIONS(7347), [sym_float] = ACTIONS(7347), [sym_double] = ACTIONS(7347), [sym_real] = ACTIONS(7347), [sym_ifloat] = ACTIONS(7347), [sym_idouble] = ACTIONS(7347), [sym_ireal] = ACTIONS(7347), [sym_cfloat] = ACTIONS(7347), [sym_cdouble] = ACTIONS(7347), [sym_creal] = ACTIONS(7347), [sym_size_t] = ACTIONS(7347), [sym_ptrdiff_t] = ACTIONS(7347), [sym_string] = ACTIONS(7347), [sym_cstring] = ACTIONS(7347), [sym_dstring] = ACTIONS(7347), [sym_wstring] = ACTIONS(7347), [sym_noreturn] = ACTIONS(7347), [sym_true] = ACTIONS(7347), [sym_false] = ACTIONS(7347), [sym_null] = ACTIONS(7347), [sym_this] = ACTIONS(7347), [sym_void] = ACTIONS(7347), [anon_sym_BQUOTE] = ACTIONS(7353), [anon_sym_r_DQUOTE] = ACTIONS(7355), [anon_sym_x_DQUOTE] = ACTIONS(7357), [anon_sym_DQUOTE] = ACTIONS(7359), [anon_sym_i_BQUOTE] = ACTIONS(7361), [anon_sym_i_DQUOTE] = ACTIONS(7363), [anon_sym_iq_LBRACE] = ACTIONS(7365), [aux_sym_char_literal_token1] = ACTIONS(7367), [anon_sym_SQUOTE] = ACTIONS(7369), [anon_sym___DATE__] = ACTIONS(7371), [anon_sym___FILE__] = ACTIONS(7371), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7371), [anon_sym___FUNCTION__] = ACTIONS(7371), [anon_sym___LINE__] = ACTIONS(7371), [anon_sym___MODULE__] = ACTIONS(7371), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7371), [anon_sym___TIME__] = ACTIONS(7371), [anon_sym___TIMESTAMP__] = ACTIONS(7371), [anon_sym___VENDOR__] = ACTIONS(7371), [anon_sym___VERSION__] = ACTIONS(7371), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7373), [sym_float_literal] = ACTIONS(7373), [sym__string] = ACTIONS(7375), }, [3084] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7254), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3085] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5758), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3086] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6037), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3087] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(8038), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3088] = { [sym_token_string] = STATE(3252), [sym__builtin_type] = STATE(3257), [sym_raw_string] = STATE(3252), [sym_hex_string] = STATE(3252), [sym_quoted_string] = STATE(3252), [sym_interpolated_raw_string] = STATE(3252), [sym_interpolated_quoted_string] = STATE(3252), [sym_interpolated_token_string] = STATE(3252), [sym_string_literal] = STATE(3257), [sym_char_literal] = STATE(3257), [sym_special_keyword] = STATE(3257), [sym__template_single_arg] = STATE(3257), [sym_identifier] = ACTIONS(7377), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7379), [anon_sym_LPAREN] = ACTIONS(7381), [sym_bool] = ACTIONS(7377), [sym_byte] = ACTIONS(7377), [sym_ubyte] = ACTIONS(7377), [sym_char] = ACTIONS(7377), [sym_short] = ACTIONS(7377), [sym_ushort] = ACTIONS(7377), [sym_int] = ACTIONS(7377), [sym_uint] = ACTIONS(7377), [sym_long] = ACTIONS(7377), [sym_ulong] = ACTIONS(7377), [sym_cent] = ACTIONS(7377), [sym_ucent] = ACTIONS(7377), [sym_wchar] = ACTIONS(7377), [sym_dchar] = ACTIONS(7377), [sym_float] = ACTIONS(7377), [sym_double] = ACTIONS(7377), [sym_real] = ACTIONS(7377), [sym_ifloat] = ACTIONS(7377), [sym_idouble] = ACTIONS(7377), [sym_ireal] = ACTIONS(7377), [sym_cfloat] = ACTIONS(7377), [sym_cdouble] = ACTIONS(7377), [sym_creal] = ACTIONS(7377), [sym_size_t] = ACTIONS(7377), [sym_ptrdiff_t] = ACTIONS(7377), [sym_string] = ACTIONS(7377), [sym_cstring] = ACTIONS(7377), [sym_dstring] = ACTIONS(7377), [sym_wstring] = ACTIONS(7377), [sym_noreturn] = ACTIONS(7377), [sym_true] = ACTIONS(7377), [sym_false] = ACTIONS(7377), [sym_null] = ACTIONS(7377), [sym_this] = ACTIONS(7377), [sym_void] = ACTIONS(7377), [anon_sym_BQUOTE] = ACTIONS(7383), [anon_sym_r_DQUOTE] = ACTIONS(7385), [anon_sym_x_DQUOTE] = ACTIONS(7387), [anon_sym_DQUOTE] = ACTIONS(7389), [anon_sym_i_BQUOTE] = ACTIONS(7391), [anon_sym_i_DQUOTE] = ACTIONS(7393), [anon_sym_iq_LBRACE] = ACTIONS(7395), [aux_sym_char_literal_token1] = ACTIONS(7397), [anon_sym_SQUOTE] = ACTIONS(7399), [anon_sym___DATE__] = ACTIONS(7401), [anon_sym___FILE__] = ACTIONS(7401), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7401), [anon_sym___FUNCTION__] = ACTIONS(7401), [anon_sym___LINE__] = ACTIONS(7401), [anon_sym___MODULE__] = ACTIONS(7401), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7401), [anon_sym___TIME__] = ACTIONS(7401), [anon_sym___TIMESTAMP__] = ACTIONS(7401), [anon_sym___VENDOR__] = ACTIONS(7401), [anon_sym___VERSION__] = ACTIONS(7401), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7403), [sym_float_literal] = ACTIONS(7403), [sym__string] = ACTIONS(7405), }, [3089] = { [sym_token_string] = STATE(2400), [sym__builtin_type] = STATE(2399), [sym_raw_string] = STATE(2400), [sym_hex_string] = STATE(2400), [sym_quoted_string] = STATE(2400), [sym_interpolated_raw_string] = STATE(2400), [sym_interpolated_quoted_string] = STATE(2400), [sym_interpolated_token_string] = STATE(2400), [sym_string_literal] = STATE(2399), [sym_char_literal] = STATE(2399), [sym_special_keyword] = STATE(2399), [sym__template_single_arg] = STATE(2399), [sym_identifier] = ACTIONS(7305), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7307), [anon_sym_LPAREN] = ACTIONS(7309), [sym_bool] = ACTIONS(7305), [sym_byte] = ACTIONS(7305), [sym_ubyte] = ACTIONS(7305), [sym_char] = ACTIONS(7305), [sym_short] = ACTIONS(7305), [sym_ushort] = ACTIONS(7305), [sym_int] = ACTIONS(7305), [sym_uint] = ACTIONS(7305), [sym_long] = ACTIONS(7305), [sym_ulong] = ACTIONS(7305), [sym_cent] = ACTIONS(7305), [sym_ucent] = ACTIONS(7305), [sym_wchar] = ACTIONS(7305), [sym_dchar] = ACTIONS(7305), [sym_float] = ACTIONS(7305), [sym_double] = ACTIONS(7305), [sym_real] = ACTIONS(7305), [sym_ifloat] = ACTIONS(7305), [sym_idouble] = ACTIONS(7305), [sym_ireal] = ACTIONS(7305), [sym_cfloat] = ACTIONS(7305), [sym_cdouble] = ACTIONS(7305), [sym_creal] = ACTIONS(7305), [sym_size_t] = ACTIONS(7305), [sym_ptrdiff_t] = ACTIONS(7305), [sym_string] = ACTIONS(7305), [sym_cstring] = ACTIONS(7305), [sym_dstring] = ACTIONS(7305), [sym_wstring] = ACTIONS(7305), [sym_noreturn] = ACTIONS(7305), [sym_true] = ACTIONS(7305), [sym_false] = ACTIONS(7305), [sym_null] = ACTIONS(7305), [sym_this] = ACTIONS(7305), [sym_void] = ACTIONS(7305), [anon_sym_BQUOTE] = ACTIONS(7311), [anon_sym_r_DQUOTE] = ACTIONS(7313), [anon_sym_x_DQUOTE] = ACTIONS(7315), [anon_sym_DQUOTE] = ACTIONS(7317), [anon_sym_i_BQUOTE] = ACTIONS(7319), [anon_sym_i_DQUOTE] = ACTIONS(7321), [anon_sym_iq_LBRACE] = ACTIONS(7323), [aux_sym_char_literal_token1] = ACTIONS(7325), [anon_sym_SQUOTE] = ACTIONS(7327), [anon_sym___DATE__] = ACTIONS(7329), [anon_sym___FILE__] = ACTIONS(7329), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7329), [anon_sym___FUNCTION__] = ACTIONS(7329), [anon_sym___LINE__] = ACTIONS(7329), [anon_sym___MODULE__] = ACTIONS(7329), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7329), [anon_sym___TIME__] = ACTIONS(7329), [anon_sym___TIMESTAMP__] = ACTIONS(7329), [anon_sym___VENDOR__] = ACTIONS(7329), [anon_sym___VERSION__] = ACTIONS(7329), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7331), [sym_float_literal] = ACTIONS(7331), [sym__string] = ACTIONS(7333), }, [3090] = { [sym_token_string] = STATE(3125), [sym__builtin_type] = STATE(3101), [sym_raw_string] = STATE(3125), [sym_hex_string] = STATE(3125), [sym_quoted_string] = STATE(3125), [sym_interpolated_raw_string] = STATE(3125), [sym_interpolated_quoted_string] = STATE(3125), [sym_interpolated_token_string] = STATE(3125), [sym_string_literal] = STATE(3101), [sym_char_literal] = STATE(3101), [sym_special_keyword] = STATE(3101), [sym__template_single_arg] = STATE(3101), [sym_identifier] = ACTIONS(7407), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7409), [anon_sym_LPAREN] = ACTIONS(7411), [sym_bool] = ACTIONS(7407), [sym_byte] = ACTIONS(7407), [sym_ubyte] = ACTIONS(7407), [sym_char] = ACTIONS(7407), [sym_short] = ACTIONS(7407), [sym_ushort] = ACTIONS(7407), [sym_int] = ACTIONS(7407), [sym_uint] = ACTIONS(7407), [sym_long] = ACTIONS(7407), [sym_ulong] = ACTIONS(7407), [sym_cent] = ACTIONS(7407), [sym_ucent] = ACTIONS(7407), [sym_wchar] = ACTIONS(7407), [sym_dchar] = ACTIONS(7407), [sym_float] = ACTIONS(7407), [sym_double] = ACTIONS(7407), [sym_real] = ACTIONS(7407), [sym_ifloat] = ACTIONS(7407), [sym_idouble] = ACTIONS(7407), [sym_ireal] = ACTIONS(7407), [sym_cfloat] = ACTIONS(7407), [sym_cdouble] = ACTIONS(7407), [sym_creal] = ACTIONS(7407), [sym_size_t] = ACTIONS(7407), [sym_ptrdiff_t] = ACTIONS(7407), [sym_string] = ACTIONS(7407), [sym_cstring] = ACTIONS(7407), [sym_dstring] = ACTIONS(7407), [sym_wstring] = ACTIONS(7407), [sym_noreturn] = ACTIONS(7407), [sym_true] = ACTIONS(7407), [sym_false] = ACTIONS(7407), [sym_null] = ACTIONS(7407), [sym_this] = ACTIONS(7407), [sym_void] = ACTIONS(7407), [anon_sym_BQUOTE] = ACTIONS(7413), [anon_sym_r_DQUOTE] = ACTIONS(7415), [anon_sym_x_DQUOTE] = ACTIONS(7417), [anon_sym_DQUOTE] = ACTIONS(7419), [anon_sym_i_BQUOTE] = ACTIONS(7421), [anon_sym_i_DQUOTE] = ACTIONS(7423), [anon_sym_iq_LBRACE] = ACTIONS(7425), [aux_sym_char_literal_token1] = ACTIONS(7427), [anon_sym_SQUOTE] = ACTIONS(7429), [anon_sym___DATE__] = ACTIONS(7431), [anon_sym___FILE__] = ACTIONS(7431), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7431), [anon_sym___FUNCTION__] = ACTIONS(7431), [anon_sym___LINE__] = ACTIONS(7431), [anon_sym___MODULE__] = ACTIONS(7431), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7431), [anon_sym___TIME__] = ACTIONS(7431), [anon_sym___TIMESTAMP__] = ACTIONS(7431), [anon_sym___VENDOR__] = ACTIONS(7431), [anon_sym___VERSION__] = ACTIONS(7431), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7433), [sym_float_literal] = ACTIONS(7433), [sym__string] = ACTIONS(7435), }, [3091] = { [sym_token_string] = STATE(3320), [sym__builtin_type] = STATE(3312), [sym_raw_string] = STATE(3320), [sym_hex_string] = STATE(3320), [sym_quoted_string] = STATE(3320), [sym_interpolated_raw_string] = STATE(3320), [sym_interpolated_quoted_string] = STATE(3320), [sym_interpolated_token_string] = STATE(3320), [sym_string_literal] = STATE(3312), [sym_char_literal] = STATE(3312), [sym_special_keyword] = STATE(3312), [sym__template_single_arg] = STATE(3312), [sym_identifier] = ACTIONS(7437), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7439), [anon_sym_LPAREN] = ACTIONS(7441), [sym_bool] = ACTIONS(7437), [sym_byte] = ACTIONS(7437), [sym_ubyte] = ACTIONS(7437), [sym_char] = ACTIONS(7437), [sym_short] = ACTIONS(7437), [sym_ushort] = ACTIONS(7437), [sym_int] = ACTIONS(7437), [sym_uint] = ACTIONS(7437), [sym_long] = ACTIONS(7437), [sym_ulong] = ACTIONS(7437), [sym_cent] = ACTIONS(7437), [sym_ucent] = ACTIONS(7437), [sym_wchar] = ACTIONS(7437), [sym_dchar] = ACTIONS(7437), [sym_float] = ACTIONS(7437), [sym_double] = ACTIONS(7437), [sym_real] = ACTIONS(7437), [sym_ifloat] = ACTIONS(7437), [sym_idouble] = ACTIONS(7437), [sym_ireal] = ACTIONS(7437), [sym_cfloat] = ACTIONS(7437), [sym_cdouble] = ACTIONS(7437), [sym_creal] = ACTIONS(7437), [sym_size_t] = ACTIONS(7437), [sym_ptrdiff_t] = ACTIONS(7437), [sym_string] = ACTIONS(7437), [sym_cstring] = ACTIONS(7437), [sym_dstring] = ACTIONS(7437), [sym_wstring] = ACTIONS(7437), [sym_noreturn] = ACTIONS(7437), [sym_true] = ACTIONS(7437), [sym_false] = ACTIONS(7437), [sym_null] = ACTIONS(7437), [sym_this] = ACTIONS(7437), [sym_void] = ACTIONS(7437), [anon_sym_BQUOTE] = ACTIONS(7443), [anon_sym_r_DQUOTE] = ACTIONS(7445), [anon_sym_x_DQUOTE] = ACTIONS(7447), [anon_sym_DQUOTE] = ACTIONS(7449), [anon_sym_i_BQUOTE] = ACTIONS(7451), [anon_sym_i_DQUOTE] = ACTIONS(7453), [anon_sym_iq_LBRACE] = ACTIONS(7455), [aux_sym_char_literal_token1] = ACTIONS(7457), [anon_sym_SQUOTE] = ACTIONS(7459), [anon_sym___DATE__] = ACTIONS(7461), [anon_sym___FILE__] = ACTIONS(7461), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7461), [anon_sym___FUNCTION__] = ACTIONS(7461), [anon_sym___LINE__] = ACTIONS(7461), [anon_sym___MODULE__] = ACTIONS(7461), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7461), [anon_sym___TIME__] = ACTIONS(7461), [anon_sym___TIMESTAMP__] = ACTIONS(7461), [anon_sym___VENDOR__] = ACTIONS(7461), [anon_sym___VERSION__] = ACTIONS(7461), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7463), [sym_float_literal] = ACTIONS(7463), [sym__string] = ACTIONS(7465), }, [3092] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5787), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3093] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6975), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3094] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5869), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3095] = { [sym_token_string] = STATE(4606), [sym__builtin_type] = STATE(4619), [sym_raw_string] = STATE(4606), [sym_hex_string] = STATE(4606), [sym_quoted_string] = STATE(4606), [sym_interpolated_raw_string] = STATE(4606), [sym_interpolated_quoted_string] = STATE(4606), [sym_interpolated_token_string] = STATE(4606), [sym_string_literal] = STATE(4619), [sym_char_literal] = STATE(4619), [sym_special_keyword] = STATE(4619), [sym__template_single_arg] = STATE(4619), [sym_identifier] = ACTIONS(7467), [sym_comment] = ACTIONS(3), [anon_sym_q_LBRACE] = ACTIONS(7469), [anon_sym_LPAREN] = ACTIONS(7471), [sym_bool] = ACTIONS(7467), [sym_byte] = ACTIONS(7467), [sym_ubyte] = ACTIONS(7467), [sym_char] = ACTIONS(7467), [sym_short] = ACTIONS(7467), [sym_ushort] = ACTIONS(7467), [sym_int] = ACTIONS(7467), [sym_uint] = ACTIONS(7467), [sym_long] = ACTIONS(7467), [sym_ulong] = ACTIONS(7467), [sym_cent] = ACTIONS(7467), [sym_ucent] = ACTIONS(7467), [sym_wchar] = ACTIONS(7467), [sym_dchar] = ACTIONS(7467), [sym_float] = ACTIONS(7467), [sym_double] = ACTIONS(7467), [sym_real] = ACTIONS(7467), [sym_ifloat] = ACTIONS(7467), [sym_idouble] = ACTIONS(7467), [sym_ireal] = ACTIONS(7467), [sym_cfloat] = ACTIONS(7467), [sym_cdouble] = ACTIONS(7467), [sym_creal] = ACTIONS(7467), [sym_size_t] = ACTIONS(7467), [sym_ptrdiff_t] = ACTIONS(7467), [sym_string] = ACTIONS(7467), [sym_cstring] = ACTIONS(7467), [sym_dstring] = ACTIONS(7467), [sym_wstring] = ACTIONS(7467), [sym_noreturn] = ACTIONS(7467), [sym_true] = ACTIONS(7467), [sym_false] = ACTIONS(7467), [sym_null] = ACTIONS(7467), [sym_this] = ACTIONS(7467), [sym_void] = ACTIONS(7467), [anon_sym_BQUOTE] = ACTIONS(7473), [anon_sym_r_DQUOTE] = ACTIONS(7475), [anon_sym_x_DQUOTE] = ACTIONS(7477), [anon_sym_DQUOTE] = ACTIONS(7479), [anon_sym_i_BQUOTE] = ACTIONS(7481), [anon_sym_i_DQUOTE] = ACTIONS(7483), [anon_sym_iq_LBRACE] = ACTIONS(7485), [aux_sym_char_literal_token1] = ACTIONS(7487), [anon_sym_SQUOTE] = ACTIONS(7489), [anon_sym___DATE__] = ACTIONS(7491), [anon_sym___FILE__] = ACTIONS(7491), [anon_sym___FILE_FULL_PATH__] = ACTIONS(7491), [anon_sym___FUNCTION__] = ACTIONS(7491), [anon_sym___LINE__] = ACTIONS(7491), [anon_sym___MODULE__] = ACTIONS(7491), [anon_sym___PRETTY_FUNCTION__] = ACTIONS(7491), [anon_sym___TIME__] = ACTIONS(7491), [anon_sym___TIMESTAMP__] = ACTIONS(7491), [anon_sym___VENDOR__] = ACTIONS(7491), [anon_sym___VERSION__] = ACTIONS(7491), [sym_directive] = ACTIONS(3), [sym_int_literal] = ACTIONS(7493), [sym_float_literal] = ACTIONS(7493), [sym__string] = ACTIONS(7495), }, [3096] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(6094), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3097] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7090), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3098] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(5988), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3099] = { [sym_storage_class] = STATE(3225), [sym_type] = STATE(7127), [sym_type_ctor] = STATE(3423), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [sym_mixin_expression] = STATE(4997), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_variable_declaration_repeat1] = STATE(3225), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_abstract] = ACTIONS(6617), [sym_align] = ACTIONS(6619), [sym_auto] = ACTIONS(6617), [sym_const] = ACTIONS(2964), [sym_deprecated] = ACTIONS(6617), [sym_extern] = ACTIONS(6627), [sym_final] = ACTIONS(6617), [sym_immutable] = ACTIONS(2964), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_nothrow] = ACTIONS(6617), [sym_override] = ACTIONS(6617), [sym_pure] = ACTIONS(6617), [sym_ref] = ACTIONS(6617), [sym_scope] = ACTIONS(6617), [sym_shared] = ACTIONS(2964), [sym_static] = ACTIONS(6617), [sym_synchronized] = ACTIONS(6617), [sym_typeof] = ACTIONS(67), [sym_gshared] = ACTIONS(6617), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3100] = { [sym_arguments] = STATE(3121), [sym_identifier] = ACTIONS(6647), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6649), [anon_sym_LPAREN] = ACTIONS(7497), [anon_sym_RPAREN] = ACTIONS(6649), [anon_sym_LBRACK] = ACTIONS(6649), [anon_sym_COMMA] = ACTIONS(6649), [anon_sym_EQ] = ACTIONS(6649), [anon_sym_STAR] = ACTIONS(6649), [anon_sym_AT] = ACTIONS(6649), [sym_bool] = ACTIONS(6647), [sym_byte] = ACTIONS(6647), [sym_ubyte] = ACTIONS(6647), [sym_char] = ACTIONS(6647), [sym_short] = ACTIONS(6647), [sym_ushort] = ACTIONS(6647), [sym_int] = ACTIONS(6647), [sym_uint] = ACTIONS(6647), [sym_long] = ACTIONS(6647), [sym_ulong] = ACTIONS(6647), [sym_cent] = ACTIONS(6647), [sym_ucent] = ACTIONS(6647), [sym_wchar] = ACTIONS(6647), [sym_dchar] = ACTIONS(6647), [sym_float] = ACTIONS(6647), [sym_double] = ACTIONS(6647), [sym_real] = ACTIONS(6647), [sym_ifloat] = ACTIONS(6647), [sym_idouble] = ACTIONS(6647), [sym_ireal] = ACTIONS(6647), [sym_cfloat] = ACTIONS(6647), [sym_cdouble] = ACTIONS(6647), [sym_creal] = ACTIONS(6647), [sym_size_t] = ACTIONS(6647), [sym_ptrdiff_t] = ACTIONS(6647), [sym_string] = ACTIONS(6647), [sym_cstring] = ACTIONS(6647), [sym_dstring] = ACTIONS(6647), [sym_wstring] = ACTIONS(6647), [sym_noreturn] = ACTIONS(6647), [sym_abstract] = ACTIONS(6647), [sym_align] = ACTIONS(6647), [sym_auto] = ACTIONS(6647), [sym_const] = ACTIONS(6647), [sym_delegate] = ACTIONS(6647), [sym_deprecated] = ACTIONS(6647), [sym_do] = ACTIONS(6647), [sym_enum] = ACTIONS(6647), [sym_extern] = ACTIONS(6647), [sym_final] = ACTIONS(6647), [sym_function] = ACTIONS(6647), [sym_immutable] = ACTIONS(6647), [sym_in] = ACTIONS(6647), [sym_inout] = ACTIONS(6647), [sym_lazy] = ACTIONS(6647), [sym_mixin] = ACTIONS(6647), [sym_nothrow] = ACTIONS(6647), [sym_out] = ACTIONS(6647), [sym_override] = ACTIONS(6647), [sym_pure] = ACTIONS(6647), [sym_ref] = ACTIONS(6647), [sym_return] = ACTIONS(6647), [sym_scope] = ACTIONS(6647), [sym_shared] = ACTIONS(6647), [sym_static] = ACTIONS(6647), [sym_synchronized] = ACTIONS(6647), [sym_typeof] = ACTIONS(6647), [sym_gshared] = ACTIONS(6647), [sym_traits] = ACTIONS(6647), [sym_vector] = ACTIONS(6647), [sym_void] = ACTIONS(6647), [sym_directive] = ACTIONS(3), }, [3101] = { [sym_identifier] = ACTIONS(6639), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6641), [anon_sym_DOT] = ACTIONS(6641), [anon_sym_LPAREN] = ACTIONS(6641), [anon_sym_RPAREN] = ACTIONS(6641), [anon_sym_LBRACK] = ACTIONS(6641), [anon_sym_COMMA] = ACTIONS(6641), [anon_sym_EQ] = ACTIONS(6641), [anon_sym_STAR] = ACTIONS(6641), [anon_sym_AT] = ACTIONS(6641), [sym_bool] = ACTIONS(6639), [sym_byte] = ACTIONS(6639), [sym_ubyte] = ACTIONS(6639), [sym_char] = ACTIONS(6639), [sym_short] = ACTIONS(6639), [sym_ushort] = ACTIONS(6639), [sym_int] = ACTIONS(6639), [sym_uint] = ACTIONS(6639), [sym_long] = ACTIONS(6639), [sym_ulong] = ACTIONS(6639), [sym_cent] = ACTIONS(6639), [sym_ucent] = ACTIONS(6639), [sym_wchar] = ACTIONS(6639), [sym_dchar] = ACTIONS(6639), [sym_float] = ACTIONS(6639), [sym_double] = ACTIONS(6639), [sym_real] = ACTIONS(6639), [sym_ifloat] = ACTIONS(6639), [sym_idouble] = ACTIONS(6639), [sym_ireal] = ACTIONS(6639), [sym_cfloat] = ACTIONS(6639), [sym_cdouble] = ACTIONS(6639), [sym_creal] = ACTIONS(6639), [sym_size_t] = ACTIONS(6639), [sym_ptrdiff_t] = ACTIONS(6639), [sym_string] = ACTIONS(6639), [sym_cstring] = ACTIONS(6639), [sym_dstring] = ACTIONS(6639), [sym_wstring] = ACTIONS(6639), [sym_noreturn] = ACTIONS(6639), [sym_abstract] = ACTIONS(6639), [sym_align] = ACTIONS(6639), [sym_auto] = ACTIONS(6639), [sym_const] = ACTIONS(6639), [sym_delegate] = ACTIONS(6639), [sym_deprecated] = ACTIONS(6639), [sym_do] = ACTIONS(6639), [sym_enum] = ACTIONS(6639), [sym_extern] = ACTIONS(6639), [sym_final] = ACTIONS(6639), [sym_function] = ACTIONS(6639), [sym_immutable] = ACTIONS(6639), [sym_in] = ACTIONS(6639), [sym_inout] = ACTIONS(6639), [sym_lazy] = ACTIONS(6639), [sym_mixin] = ACTIONS(6639), [sym_nothrow] = ACTIONS(6639), [sym_out] = ACTIONS(6639), [sym_override] = ACTIONS(6639), [sym_pure] = ACTIONS(6639), [sym_ref] = ACTIONS(6639), [sym_return] = ACTIONS(6639), [sym_scope] = ACTIONS(6639), [sym_shared] = ACTIONS(6639), [sym_static] = ACTIONS(6639), [sym_synchronized] = ACTIONS(6639), [sym_typeof] = ACTIONS(6639), [sym_gshared] = ACTIONS(6639), [sym_traits] = ACTIONS(6639), [sym_vector] = ACTIONS(6639), [sym_void] = ACTIONS(6639), [sym_directive] = ACTIONS(3), }, [3102] = { [sym_identifier] = ACTIONS(3004), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3006), [anon_sym_DOT] = ACTIONS(3006), [anon_sym_LPAREN] = ACTIONS(3006), [anon_sym_RPAREN] = ACTIONS(3006), [anon_sym_LBRACK] = ACTIONS(3006), [anon_sym_COMMA] = ACTIONS(3006), [anon_sym_EQ] = ACTIONS(3006), [anon_sym_STAR] = ACTIONS(3006), [anon_sym_AT] = ACTIONS(3006), [sym_bool] = ACTIONS(3004), [sym_byte] = ACTIONS(3004), [sym_ubyte] = ACTIONS(3004), [sym_char] = ACTIONS(3004), [sym_short] = ACTIONS(3004), [sym_ushort] = ACTIONS(3004), [sym_int] = ACTIONS(3004), [sym_uint] = ACTIONS(3004), [sym_long] = ACTIONS(3004), [sym_ulong] = ACTIONS(3004), [sym_cent] = ACTIONS(3004), [sym_ucent] = ACTIONS(3004), [sym_wchar] = ACTIONS(3004), [sym_dchar] = ACTIONS(3004), [sym_float] = ACTIONS(3004), [sym_double] = ACTIONS(3004), [sym_real] = ACTIONS(3004), [sym_ifloat] = ACTIONS(3004), [sym_idouble] = ACTIONS(3004), [sym_ireal] = ACTIONS(3004), [sym_cfloat] = ACTIONS(3004), [sym_cdouble] = ACTIONS(3004), [sym_creal] = ACTIONS(3004), [sym_size_t] = ACTIONS(3004), [sym_ptrdiff_t] = ACTIONS(3004), [sym_string] = ACTIONS(3004), [sym_cstring] = ACTIONS(3004), [sym_dstring] = ACTIONS(3004), [sym_wstring] = ACTIONS(3004), [sym_noreturn] = ACTIONS(3004), [sym_abstract] = ACTIONS(3004), [sym_align] = ACTIONS(3004), [sym_auto] = ACTIONS(3004), [sym_const] = ACTIONS(3004), [sym_delegate] = ACTIONS(3004), [sym_deprecated] = ACTIONS(3004), [sym_do] = ACTIONS(3004), [sym_enum] = ACTIONS(3004), [sym_extern] = ACTIONS(3004), [sym_final] = ACTIONS(3004), [sym_function] = ACTIONS(3004), [sym_immutable] = ACTIONS(3004), [sym_in] = ACTIONS(3004), [sym_inout] = ACTIONS(3004), [sym_lazy] = ACTIONS(3004), [sym_mixin] = ACTIONS(3004), [sym_nothrow] = ACTIONS(3004), [sym_out] = ACTIONS(3004), [sym_override] = ACTIONS(3004), [sym_pure] = ACTIONS(3004), [sym_ref] = ACTIONS(3004), [sym_return] = ACTIONS(3004), [sym_scope] = ACTIONS(3004), [sym_shared] = ACTIONS(3004), [sym_static] = ACTIONS(3004), [sym_synchronized] = ACTIONS(3004), [sym_typeof] = ACTIONS(3004), [sym_gshared] = ACTIONS(3004), [sym_traits] = ACTIONS(3004), [sym_vector] = ACTIONS(3004), [sym_void] = ACTIONS(3004), [sym_directive] = ACTIONS(3), }, [3103] = { [sym_identifier] = ACTIONS(2984), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(2986), [anon_sym_DOT] = ACTIONS(2986), [anon_sym_LPAREN] = ACTIONS(2986), [anon_sym_RPAREN] = ACTIONS(2986), [anon_sym_LBRACK] = ACTIONS(2986), [anon_sym_COMMA] = ACTIONS(2986), [anon_sym_EQ] = ACTIONS(2986), [anon_sym_STAR] = ACTIONS(2986), [anon_sym_AT] = ACTIONS(2986), [sym_bool] = ACTIONS(2984), [sym_byte] = ACTIONS(2984), [sym_ubyte] = ACTIONS(2984), [sym_char] = ACTIONS(2984), [sym_short] = ACTIONS(2984), [sym_ushort] = ACTIONS(2984), [sym_int] = ACTIONS(2984), [sym_uint] = ACTIONS(2984), [sym_long] = ACTIONS(2984), [sym_ulong] = ACTIONS(2984), [sym_cent] = ACTIONS(2984), [sym_ucent] = ACTIONS(2984), [sym_wchar] = ACTIONS(2984), [sym_dchar] = ACTIONS(2984), [sym_float] = ACTIONS(2984), [sym_double] = ACTIONS(2984), [sym_real] = ACTIONS(2984), [sym_ifloat] = ACTIONS(2984), [sym_idouble] = ACTIONS(2984), [sym_ireal] = ACTIONS(2984), [sym_cfloat] = ACTIONS(2984), [sym_cdouble] = ACTIONS(2984), [sym_creal] = ACTIONS(2984), [sym_size_t] = ACTIONS(2984), [sym_ptrdiff_t] = ACTIONS(2984), [sym_string] = ACTIONS(2984), [sym_cstring] = ACTIONS(2984), [sym_dstring] = ACTIONS(2984), [sym_wstring] = ACTIONS(2984), [sym_noreturn] = ACTIONS(2984), [sym_abstract] = ACTIONS(2984), [sym_align] = ACTIONS(2984), [sym_auto] = ACTIONS(2984), [sym_const] = ACTIONS(2984), [sym_delegate] = ACTIONS(2984), [sym_deprecated] = ACTIONS(2984), [sym_do] = ACTIONS(2984), [sym_enum] = ACTIONS(2984), [sym_extern] = ACTIONS(2984), [sym_final] = ACTIONS(2984), [sym_function] = ACTIONS(2984), [sym_immutable] = ACTIONS(2984), [sym_in] = ACTIONS(2984), [sym_inout] = ACTIONS(2984), [sym_lazy] = ACTIONS(2984), [sym_mixin] = ACTIONS(2984), [sym_nothrow] = ACTIONS(2984), [sym_out] = ACTIONS(2984), [sym_override] = ACTIONS(2984), [sym_pure] = ACTIONS(2984), [sym_ref] = ACTIONS(2984), [sym_return] = ACTIONS(2984), [sym_scope] = ACTIONS(2984), [sym_shared] = ACTIONS(2984), [sym_static] = ACTIONS(2984), [sym_synchronized] = ACTIONS(2984), [sym_typeof] = ACTIONS(2984), [sym_gshared] = ACTIONS(2984), [sym_traits] = ACTIONS(2984), [sym_vector] = ACTIONS(2984), [sym_void] = ACTIONS(2984), [sym_directive] = ACTIONS(3), }, [3104] = { [sym_identifier] = ACTIONS(3016), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3018), [anon_sym_DOT] = ACTIONS(3018), [anon_sym_LPAREN] = ACTIONS(3018), [anon_sym_RPAREN] = ACTIONS(3018), [anon_sym_LBRACK] = ACTIONS(3018), [anon_sym_COMMA] = ACTIONS(3018), [anon_sym_EQ] = ACTIONS(3018), [anon_sym_STAR] = ACTIONS(3018), [anon_sym_AT] = ACTIONS(3018), [sym_bool] = ACTIONS(3016), [sym_byte] = ACTIONS(3016), [sym_ubyte] = ACTIONS(3016), [sym_char] = ACTIONS(3016), [sym_short] = ACTIONS(3016), [sym_ushort] = ACTIONS(3016), [sym_int] = ACTIONS(3016), [sym_uint] = ACTIONS(3016), [sym_long] = ACTIONS(3016), [sym_ulong] = ACTIONS(3016), [sym_cent] = ACTIONS(3016), [sym_ucent] = ACTIONS(3016), [sym_wchar] = ACTIONS(3016), [sym_dchar] = ACTIONS(3016), [sym_float] = ACTIONS(3016), [sym_double] = ACTIONS(3016), [sym_real] = ACTIONS(3016), [sym_ifloat] = ACTIONS(3016), [sym_idouble] = ACTIONS(3016), [sym_ireal] = ACTIONS(3016), [sym_cfloat] = ACTIONS(3016), [sym_cdouble] = ACTIONS(3016), [sym_creal] = ACTIONS(3016), [sym_size_t] = ACTIONS(3016), [sym_ptrdiff_t] = ACTIONS(3016), [sym_string] = ACTIONS(3016), [sym_cstring] = ACTIONS(3016), [sym_dstring] = ACTIONS(3016), [sym_wstring] = ACTIONS(3016), [sym_noreturn] = ACTIONS(3016), [sym_abstract] = ACTIONS(3016), [sym_align] = ACTIONS(3016), [sym_auto] = ACTIONS(3016), [sym_const] = ACTIONS(3016), [sym_delegate] = ACTIONS(3016), [sym_deprecated] = ACTIONS(3016), [sym_do] = ACTIONS(3016), [sym_enum] = ACTIONS(3016), [sym_extern] = ACTIONS(3016), [sym_final] = ACTIONS(3016), [sym_function] = ACTIONS(3016), [sym_immutable] = ACTIONS(3016), [sym_in] = ACTIONS(3016), [sym_inout] = ACTIONS(3016), [sym_lazy] = ACTIONS(3016), [sym_mixin] = ACTIONS(3016), [sym_nothrow] = ACTIONS(3016), [sym_out] = ACTIONS(3016), [sym_override] = ACTIONS(3016), [sym_pure] = ACTIONS(3016), [sym_ref] = ACTIONS(3016), [sym_return] = ACTIONS(3016), [sym_scope] = ACTIONS(3016), [sym_shared] = ACTIONS(3016), [sym_static] = ACTIONS(3016), [sym_synchronized] = ACTIONS(3016), [sym_typeof] = ACTIONS(3016), [sym_gshared] = ACTIONS(3016), [sym_traits] = ACTIONS(3016), [sym_vector] = ACTIONS(3016), [sym_void] = ACTIONS(3016), [sym_directive] = ACTIONS(3), }, [3105] = { [sym_identifier] = ACTIONS(3020), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3022), [anon_sym_DOT] = ACTIONS(3022), [anon_sym_LPAREN] = ACTIONS(3022), [anon_sym_RPAREN] = ACTIONS(3022), [anon_sym_LBRACK] = ACTIONS(3022), [anon_sym_COMMA] = ACTIONS(3022), [anon_sym_EQ] = ACTIONS(3022), [anon_sym_STAR] = ACTIONS(3022), [anon_sym_AT] = ACTIONS(3022), [sym_bool] = ACTIONS(3020), [sym_byte] = ACTIONS(3020), [sym_ubyte] = ACTIONS(3020), [sym_char] = ACTIONS(3020), [sym_short] = ACTIONS(3020), [sym_ushort] = ACTIONS(3020), [sym_int] = ACTIONS(3020), [sym_uint] = ACTIONS(3020), [sym_long] = ACTIONS(3020), [sym_ulong] = ACTIONS(3020), [sym_cent] = ACTIONS(3020), [sym_ucent] = ACTIONS(3020), [sym_wchar] = ACTIONS(3020), [sym_dchar] = ACTIONS(3020), [sym_float] = ACTIONS(3020), [sym_double] = ACTIONS(3020), [sym_real] = ACTIONS(3020), [sym_ifloat] = ACTIONS(3020), [sym_idouble] = ACTIONS(3020), [sym_ireal] = ACTIONS(3020), [sym_cfloat] = ACTIONS(3020), [sym_cdouble] = ACTIONS(3020), [sym_creal] = ACTIONS(3020), [sym_size_t] = ACTIONS(3020), [sym_ptrdiff_t] = ACTIONS(3020), [sym_string] = ACTIONS(3020), [sym_cstring] = ACTIONS(3020), [sym_dstring] = ACTIONS(3020), [sym_wstring] = ACTIONS(3020), [sym_noreturn] = ACTIONS(3020), [sym_abstract] = ACTIONS(3020), [sym_align] = ACTIONS(3020), [sym_auto] = ACTIONS(3020), [sym_const] = ACTIONS(3020), [sym_delegate] = ACTIONS(3020), [sym_deprecated] = ACTIONS(3020), [sym_do] = ACTIONS(3020), [sym_enum] = ACTIONS(3020), [sym_extern] = ACTIONS(3020), [sym_final] = ACTIONS(3020), [sym_function] = ACTIONS(3020), [sym_immutable] = ACTIONS(3020), [sym_in] = ACTIONS(3020), [sym_inout] = ACTIONS(3020), [sym_lazy] = ACTIONS(3020), [sym_mixin] = ACTIONS(3020), [sym_nothrow] = ACTIONS(3020), [sym_out] = ACTIONS(3020), [sym_override] = ACTIONS(3020), [sym_pure] = ACTIONS(3020), [sym_ref] = ACTIONS(3020), [sym_return] = ACTIONS(3020), [sym_scope] = ACTIONS(3020), [sym_shared] = ACTIONS(3020), [sym_static] = ACTIONS(3020), [sym_synchronized] = ACTIONS(3020), [sym_typeof] = ACTIONS(3020), [sym_gshared] = ACTIONS(3020), [sym_traits] = ACTIONS(3020), [sym_vector] = ACTIONS(3020), [sym_void] = ACTIONS(3020), [sym_directive] = ACTIONS(3), }, [3106] = { [sym_identifier] = ACTIONS(2992), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(2994), [anon_sym_DOT] = ACTIONS(2994), [anon_sym_LPAREN] = ACTIONS(2994), [anon_sym_RPAREN] = ACTIONS(2994), [anon_sym_LBRACK] = ACTIONS(2994), [anon_sym_COMMA] = ACTIONS(2994), [anon_sym_EQ] = ACTIONS(2994), [anon_sym_STAR] = ACTIONS(2994), [anon_sym_AT] = ACTIONS(2994), [sym_bool] = ACTIONS(2992), [sym_byte] = ACTIONS(2992), [sym_ubyte] = ACTIONS(2992), [sym_char] = ACTIONS(2992), [sym_short] = ACTIONS(2992), [sym_ushort] = ACTIONS(2992), [sym_int] = ACTIONS(2992), [sym_uint] = ACTIONS(2992), [sym_long] = ACTIONS(2992), [sym_ulong] = ACTIONS(2992), [sym_cent] = ACTIONS(2992), [sym_ucent] = ACTIONS(2992), [sym_wchar] = ACTIONS(2992), [sym_dchar] = ACTIONS(2992), [sym_float] = ACTIONS(2992), [sym_double] = ACTIONS(2992), [sym_real] = ACTIONS(2992), [sym_ifloat] = ACTIONS(2992), [sym_idouble] = ACTIONS(2992), [sym_ireal] = ACTIONS(2992), [sym_cfloat] = ACTIONS(2992), [sym_cdouble] = ACTIONS(2992), [sym_creal] = ACTIONS(2992), [sym_size_t] = ACTIONS(2992), [sym_ptrdiff_t] = ACTIONS(2992), [sym_string] = ACTIONS(2992), [sym_cstring] = ACTIONS(2992), [sym_dstring] = ACTIONS(2992), [sym_wstring] = ACTIONS(2992), [sym_noreturn] = ACTIONS(2992), [sym_abstract] = ACTIONS(2992), [sym_align] = ACTIONS(2992), [sym_auto] = ACTIONS(2992), [sym_const] = ACTIONS(2992), [sym_delegate] = ACTIONS(2992), [sym_deprecated] = ACTIONS(2992), [sym_do] = ACTIONS(2992), [sym_enum] = ACTIONS(2992), [sym_extern] = ACTIONS(2992), [sym_final] = ACTIONS(2992), [sym_function] = ACTIONS(2992), [sym_immutable] = ACTIONS(2992), [sym_in] = ACTIONS(2992), [sym_inout] = ACTIONS(2992), [sym_lazy] = ACTIONS(2992), [sym_mixin] = ACTIONS(2992), [sym_nothrow] = ACTIONS(2992), [sym_out] = ACTIONS(2992), [sym_override] = ACTIONS(2992), [sym_pure] = ACTIONS(2992), [sym_ref] = ACTIONS(2992), [sym_return] = ACTIONS(2992), [sym_scope] = ACTIONS(2992), [sym_shared] = ACTIONS(2992), [sym_static] = ACTIONS(2992), [sym_synchronized] = ACTIONS(2992), [sym_typeof] = ACTIONS(2992), [sym_gshared] = ACTIONS(2992), [sym_traits] = ACTIONS(2992), [sym_vector] = ACTIONS(2992), [sym_void] = ACTIONS(2992), [sym_directive] = ACTIONS(3), }, [3107] = { [sym_identifier] = ACTIONS(6643), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6645), [anon_sym_DOT] = ACTIONS(6645), [anon_sym_LPAREN] = ACTIONS(6645), [anon_sym_RPAREN] = ACTIONS(6645), [anon_sym_LBRACK] = ACTIONS(6645), [anon_sym_COMMA] = ACTIONS(6645), [anon_sym_EQ] = ACTIONS(6645), [anon_sym_STAR] = ACTIONS(6645), [anon_sym_AT] = ACTIONS(6645), [sym_bool] = ACTIONS(6643), [sym_byte] = ACTIONS(6643), [sym_ubyte] = ACTIONS(6643), [sym_char] = ACTIONS(6643), [sym_short] = ACTIONS(6643), [sym_ushort] = ACTIONS(6643), [sym_int] = ACTIONS(6643), [sym_uint] = ACTIONS(6643), [sym_long] = ACTIONS(6643), [sym_ulong] = ACTIONS(6643), [sym_cent] = ACTIONS(6643), [sym_ucent] = ACTIONS(6643), [sym_wchar] = ACTIONS(6643), [sym_dchar] = ACTIONS(6643), [sym_float] = ACTIONS(6643), [sym_double] = ACTIONS(6643), [sym_real] = ACTIONS(6643), [sym_ifloat] = ACTIONS(6643), [sym_idouble] = ACTIONS(6643), [sym_ireal] = ACTIONS(6643), [sym_cfloat] = ACTIONS(6643), [sym_cdouble] = ACTIONS(6643), [sym_creal] = ACTIONS(6643), [sym_size_t] = ACTIONS(6643), [sym_ptrdiff_t] = ACTIONS(6643), [sym_string] = ACTIONS(6643), [sym_cstring] = ACTIONS(6643), [sym_dstring] = ACTIONS(6643), [sym_wstring] = ACTIONS(6643), [sym_noreturn] = ACTIONS(6643), [sym_abstract] = ACTIONS(6643), [sym_align] = ACTIONS(6643), [sym_auto] = ACTIONS(6643), [sym_const] = ACTIONS(6643), [sym_delegate] = ACTIONS(6643), [sym_deprecated] = ACTIONS(6643), [sym_do] = ACTIONS(6643), [sym_enum] = ACTIONS(6643), [sym_extern] = ACTIONS(6643), [sym_final] = ACTIONS(6643), [sym_function] = ACTIONS(6643), [sym_immutable] = ACTIONS(6643), [sym_in] = ACTIONS(6643), [sym_inout] = ACTIONS(6643), [sym_lazy] = ACTIONS(6643), [sym_mixin] = ACTIONS(6643), [sym_nothrow] = ACTIONS(6643), [sym_out] = ACTIONS(6643), [sym_override] = ACTIONS(6643), [sym_pure] = ACTIONS(6643), [sym_ref] = ACTIONS(6643), [sym_return] = ACTIONS(6643), [sym_scope] = ACTIONS(6643), [sym_shared] = ACTIONS(6643), [sym_static] = ACTIONS(6643), [sym_synchronized] = ACTIONS(6643), [sym_typeof] = ACTIONS(6643), [sym_gshared] = ACTIONS(6643), [sym_traits] = ACTIONS(6643), [sym_vector] = ACTIONS(6643), [sym_void] = ACTIONS(6643), [sym_directive] = ACTIONS(3), }, [3108] = { [sym_type] = STATE(4759), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4832), [sym_block_statement] = STATE(4048), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(4048), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7507), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3673), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7509), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3109] = { [sym_type] = STATE(4779), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4963), [sym_block_statement] = STATE(3967), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3967), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7511), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7513), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3110] = { [sym_type] = STATE(4735), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4848), [sym_block_statement] = STATE(3804), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3804), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7515), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7517), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3111] = { [sym_identifier] = ACTIONS(6665), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6667), [anon_sym_DOT] = ACTIONS(6667), [anon_sym_LPAREN] = ACTIONS(6667), [anon_sym_RPAREN] = ACTIONS(6667), [anon_sym_LBRACK] = ACTIONS(6667), [anon_sym_COMMA] = ACTIONS(6667), [anon_sym_EQ] = ACTIONS(6667), [anon_sym_STAR] = ACTIONS(6667), [anon_sym_AT] = ACTIONS(6667), [sym_bool] = ACTIONS(6665), [sym_byte] = ACTIONS(6665), [sym_ubyte] = ACTIONS(6665), [sym_char] = ACTIONS(6665), [sym_short] = ACTIONS(6665), [sym_ushort] = ACTIONS(6665), [sym_int] = ACTIONS(6665), [sym_uint] = ACTIONS(6665), [sym_long] = ACTIONS(6665), [sym_ulong] = ACTIONS(6665), [sym_cent] = ACTIONS(6665), [sym_ucent] = ACTIONS(6665), [sym_wchar] = ACTIONS(6665), [sym_dchar] = ACTIONS(6665), [sym_float] = ACTIONS(6665), [sym_double] = ACTIONS(6665), [sym_real] = ACTIONS(6665), [sym_ifloat] = ACTIONS(6665), [sym_idouble] = ACTIONS(6665), [sym_ireal] = ACTIONS(6665), [sym_cfloat] = ACTIONS(6665), [sym_cdouble] = ACTIONS(6665), [sym_creal] = ACTIONS(6665), [sym_size_t] = ACTIONS(6665), [sym_ptrdiff_t] = ACTIONS(6665), [sym_string] = ACTIONS(6665), [sym_cstring] = ACTIONS(6665), [sym_dstring] = ACTIONS(6665), [sym_wstring] = ACTIONS(6665), [sym_noreturn] = ACTIONS(6665), [sym_abstract] = ACTIONS(6665), [sym_align] = ACTIONS(6665), [sym_auto] = ACTIONS(6665), [sym_const] = ACTIONS(6665), [sym_delegate] = ACTIONS(6665), [sym_deprecated] = ACTIONS(6665), [sym_do] = ACTIONS(6665), [sym_enum] = ACTIONS(6665), [sym_extern] = ACTIONS(6665), [sym_final] = ACTIONS(6665), [sym_function] = ACTIONS(6665), [sym_immutable] = ACTIONS(6665), [sym_in] = ACTIONS(6665), [sym_inout] = ACTIONS(6665), [sym_lazy] = ACTIONS(6665), [sym_mixin] = ACTIONS(6665), [sym_nothrow] = ACTIONS(6665), [sym_out] = ACTIONS(6665), [sym_override] = ACTIONS(6665), [sym_pure] = ACTIONS(6665), [sym_ref] = ACTIONS(6665), [sym_return] = ACTIONS(6665), [sym_scope] = ACTIONS(6665), [sym_shared] = ACTIONS(6665), [sym_static] = ACTIONS(6665), [sym_synchronized] = ACTIONS(6665), [sym_typeof] = ACTIONS(6665), [sym_gshared] = ACTIONS(6665), [sym_traits] = ACTIONS(6665), [sym_vector] = ACTIONS(6665), [sym_void] = ACTIONS(6665), [sym_directive] = ACTIONS(3), }, [3112] = { [sym_type] = STATE(4751), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4866), [sym_block_statement] = STATE(3967), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3967), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7519), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7521), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3113] = { [sym_identifier] = ACTIONS(3056), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3058), [anon_sym_DOT] = ACTIONS(3058), [anon_sym_LPAREN] = ACTIONS(3058), [anon_sym_RPAREN] = ACTIONS(3058), [anon_sym_LBRACK] = ACTIONS(3058), [anon_sym_COMMA] = ACTIONS(3058), [anon_sym_EQ] = ACTIONS(3058), [anon_sym_STAR] = ACTIONS(3058), [anon_sym_AT] = ACTIONS(3058), [sym_bool] = ACTIONS(3056), [sym_byte] = ACTIONS(3056), [sym_ubyte] = ACTIONS(3056), [sym_char] = ACTIONS(3056), [sym_short] = ACTIONS(3056), [sym_ushort] = ACTIONS(3056), [sym_int] = ACTIONS(3056), [sym_uint] = ACTIONS(3056), [sym_long] = ACTIONS(3056), [sym_ulong] = ACTIONS(3056), [sym_cent] = ACTIONS(3056), [sym_ucent] = ACTIONS(3056), [sym_wchar] = ACTIONS(3056), [sym_dchar] = ACTIONS(3056), [sym_float] = ACTIONS(3056), [sym_double] = ACTIONS(3056), [sym_real] = ACTIONS(3056), [sym_ifloat] = ACTIONS(3056), [sym_idouble] = ACTIONS(3056), [sym_ireal] = ACTIONS(3056), [sym_cfloat] = ACTIONS(3056), [sym_cdouble] = ACTIONS(3056), [sym_creal] = ACTIONS(3056), [sym_size_t] = ACTIONS(3056), [sym_ptrdiff_t] = ACTIONS(3056), [sym_string] = ACTIONS(3056), [sym_cstring] = ACTIONS(3056), [sym_dstring] = ACTIONS(3056), [sym_wstring] = ACTIONS(3056), [sym_noreturn] = ACTIONS(3056), [sym_abstract] = ACTIONS(3056), [sym_align] = ACTIONS(3056), [sym_auto] = ACTIONS(3056), [sym_const] = ACTIONS(3056), [sym_delegate] = ACTIONS(3056), [sym_deprecated] = ACTIONS(3056), [sym_do] = ACTIONS(3056), [sym_enum] = ACTIONS(3056), [sym_extern] = ACTIONS(3056), [sym_final] = ACTIONS(3056), [sym_function] = ACTIONS(3056), [sym_immutable] = ACTIONS(3056), [sym_in] = ACTIONS(3056), [sym_inout] = ACTIONS(3056), [sym_lazy] = ACTIONS(3056), [sym_mixin] = ACTIONS(3056), [sym_nothrow] = ACTIONS(3056), [sym_out] = ACTIONS(3056), [sym_override] = ACTIONS(3056), [sym_pure] = ACTIONS(3056), [sym_ref] = ACTIONS(3056), [sym_return] = ACTIONS(3056), [sym_scope] = ACTIONS(3056), [sym_shared] = ACTIONS(3056), [sym_static] = ACTIONS(3056), [sym_synchronized] = ACTIONS(3056), [sym_typeof] = ACTIONS(3056), [sym_gshared] = ACTIONS(3056), [sym_traits] = ACTIONS(3056), [sym_vector] = ACTIONS(3056), [sym_void] = ACTIONS(3056), [sym_directive] = ACTIONS(3), }, [3114] = { [sym_type] = STATE(4760), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4832), [sym_block_statement] = STATE(4048), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4048), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7523), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3673), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7525), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3115] = { [sym_type] = STATE(4756), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4866), [sym_block_statement] = STATE(3967), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3967), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7527), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7529), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3116] = { [sym_type] = STATE(4690), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4834), [sym_block_statement] = STATE(3804), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3804), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7531), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7533), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3117] = { [sym_identifier] = ACTIONS(2996), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(2998), [anon_sym_DOT] = ACTIONS(2998), [anon_sym_LPAREN] = ACTIONS(2998), [anon_sym_RPAREN] = ACTIONS(2998), [anon_sym_LBRACK] = ACTIONS(2998), [anon_sym_COMMA] = ACTIONS(2998), [anon_sym_EQ] = ACTIONS(2998), [anon_sym_STAR] = ACTIONS(2998), [anon_sym_AT] = ACTIONS(2998), [sym_bool] = ACTIONS(2996), [sym_byte] = ACTIONS(2996), [sym_ubyte] = ACTIONS(2996), [sym_char] = ACTIONS(2996), [sym_short] = ACTIONS(2996), [sym_ushort] = ACTIONS(2996), [sym_int] = ACTIONS(2996), [sym_uint] = ACTIONS(2996), [sym_long] = ACTIONS(2996), [sym_ulong] = ACTIONS(2996), [sym_cent] = ACTIONS(2996), [sym_ucent] = ACTIONS(2996), [sym_wchar] = ACTIONS(2996), [sym_dchar] = ACTIONS(2996), [sym_float] = ACTIONS(2996), [sym_double] = ACTIONS(2996), [sym_real] = ACTIONS(2996), [sym_ifloat] = ACTIONS(2996), [sym_idouble] = ACTIONS(2996), [sym_ireal] = ACTIONS(2996), [sym_cfloat] = ACTIONS(2996), [sym_cdouble] = ACTIONS(2996), [sym_creal] = ACTIONS(2996), [sym_size_t] = ACTIONS(2996), [sym_ptrdiff_t] = ACTIONS(2996), [sym_string] = ACTIONS(2996), [sym_cstring] = ACTIONS(2996), [sym_dstring] = ACTIONS(2996), [sym_wstring] = ACTIONS(2996), [sym_noreturn] = ACTIONS(2996), [sym_abstract] = ACTIONS(2996), [sym_align] = ACTIONS(2996), [sym_auto] = ACTIONS(2996), [sym_const] = ACTIONS(2996), [sym_delegate] = ACTIONS(2996), [sym_deprecated] = ACTIONS(2996), [sym_do] = ACTIONS(2996), [sym_enum] = ACTIONS(2996), [sym_extern] = ACTIONS(2996), [sym_final] = ACTIONS(2996), [sym_function] = ACTIONS(2996), [sym_immutable] = ACTIONS(2996), [sym_in] = ACTIONS(2996), [sym_inout] = ACTIONS(2996), [sym_lazy] = ACTIONS(2996), [sym_mixin] = ACTIONS(2996), [sym_nothrow] = ACTIONS(2996), [sym_out] = ACTIONS(2996), [sym_override] = ACTIONS(2996), [sym_pure] = ACTIONS(2996), [sym_ref] = ACTIONS(2996), [sym_return] = ACTIONS(2996), [sym_scope] = ACTIONS(2996), [sym_shared] = ACTIONS(2996), [sym_static] = ACTIONS(2996), [sym_synchronized] = ACTIONS(2996), [sym_typeof] = ACTIONS(2996), [sym_gshared] = ACTIONS(2996), [sym_traits] = ACTIONS(2996), [sym_vector] = ACTIONS(2996), [sym_void] = ACTIONS(2996), [sym_directive] = ACTIONS(3), }, [3118] = { [sym_identifier] = ACTIONS(3008), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3010), [anon_sym_DOT] = ACTIONS(3010), [anon_sym_LPAREN] = ACTIONS(3010), [anon_sym_RPAREN] = ACTIONS(3010), [anon_sym_LBRACK] = ACTIONS(3010), [anon_sym_COMMA] = ACTIONS(3010), [anon_sym_EQ] = ACTIONS(3010), [anon_sym_STAR] = ACTIONS(3010), [anon_sym_AT] = ACTIONS(3010), [sym_bool] = ACTIONS(3008), [sym_byte] = ACTIONS(3008), [sym_ubyte] = ACTIONS(3008), [sym_char] = ACTIONS(3008), [sym_short] = ACTIONS(3008), [sym_ushort] = ACTIONS(3008), [sym_int] = ACTIONS(3008), [sym_uint] = ACTIONS(3008), [sym_long] = ACTIONS(3008), [sym_ulong] = ACTIONS(3008), [sym_cent] = ACTIONS(3008), [sym_ucent] = ACTIONS(3008), [sym_wchar] = ACTIONS(3008), [sym_dchar] = ACTIONS(3008), [sym_float] = ACTIONS(3008), [sym_double] = ACTIONS(3008), [sym_real] = ACTIONS(3008), [sym_ifloat] = ACTIONS(3008), [sym_idouble] = ACTIONS(3008), [sym_ireal] = ACTIONS(3008), [sym_cfloat] = ACTIONS(3008), [sym_cdouble] = ACTIONS(3008), [sym_creal] = ACTIONS(3008), [sym_size_t] = ACTIONS(3008), [sym_ptrdiff_t] = ACTIONS(3008), [sym_string] = ACTIONS(3008), [sym_cstring] = ACTIONS(3008), [sym_dstring] = ACTIONS(3008), [sym_wstring] = ACTIONS(3008), [sym_noreturn] = ACTIONS(3008), [sym_abstract] = ACTIONS(3008), [sym_align] = ACTIONS(3008), [sym_auto] = ACTIONS(3008), [sym_const] = ACTIONS(3008), [sym_delegate] = ACTIONS(3008), [sym_deprecated] = ACTIONS(3008), [sym_do] = ACTIONS(3008), [sym_enum] = ACTIONS(3008), [sym_extern] = ACTIONS(3008), [sym_final] = ACTIONS(3008), [sym_function] = ACTIONS(3008), [sym_immutable] = ACTIONS(3008), [sym_in] = ACTIONS(3008), [sym_inout] = ACTIONS(3008), [sym_lazy] = ACTIONS(3008), [sym_mixin] = ACTIONS(3008), [sym_nothrow] = ACTIONS(3008), [sym_out] = ACTIONS(3008), [sym_override] = ACTIONS(3008), [sym_pure] = ACTIONS(3008), [sym_ref] = ACTIONS(3008), [sym_return] = ACTIONS(3008), [sym_scope] = ACTIONS(3008), [sym_shared] = ACTIONS(3008), [sym_static] = ACTIONS(3008), [sym_synchronized] = ACTIONS(3008), [sym_typeof] = ACTIONS(3008), [sym_gshared] = ACTIONS(3008), [sym_traits] = ACTIONS(3008), [sym_vector] = ACTIONS(3008), [sym_void] = ACTIONS(3008), [sym_directive] = ACTIONS(3), }, [3119] = { [sym_identifier] = ACTIONS(6675), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6677), [anon_sym_DOT] = ACTIONS(6677), [anon_sym_LPAREN] = ACTIONS(6677), [anon_sym_RPAREN] = ACTIONS(6677), [anon_sym_LBRACK] = ACTIONS(6677), [anon_sym_COMMA] = ACTIONS(6677), [anon_sym_EQ] = ACTIONS(6677), [anon_sym_STAR] = ACTIONS(6677), [anon_sym_AT] = ACTIONS(6677), [sym_bool] = ACTIONS(6675), [sym_byte] = ACTIONS(6675), [sym_ubyte] = ACTIONS(6675), [sym_char] = ACTIONS(6675), [sym_short] = ACTIONS(6675), [sym_ushort] = ACTIONS(6675), [sym_int] = ACTIONS(6675), [sym_uint] = ACTIONS(6675), [sym_long] = ACTIONS(6675), [sym_ulong] = ACTIONS(6675), [sym_cent] = ACTIONS(6675), [sym_ucent] = ACTIONS(6675), [sym_wchar] = ACTIONS(6675), [sym_dchar] = ACTIONS(6675), [sym_float] = ACTIONS(6675), [sym_double] = ACTIONS(6675), [sym_real] = ACTIONS(6675), [sym_ifloat] = ACTIONS(6675), [sym_idouble] = ACTIONS(6675), [sym_ireal] = ACTIONS(6675), [sym_cfloat] = ACTIONS(6675), [sym_cdouble] = ACTIONS(6675), [sym_creal] = ACTIONS(6675), [sym_size_t] = ACTIONS(6675), [sym_ptrdiff_t] = ACTIONS(6675), [sym_string] = ACTIONS(6675), [sym_cstring] = ACTIONS(6675), [sym_dstring] = ACTIONS(6675), [sym_wstring] = ACTIONS(6675), [sym_noreturn] = ACTIONS(6675), [sym_abstract] = ACTIONS(6675), [sym_align] = ACTIONS(6675), [sym_auto] = ACTIONS(6675), [sym_const] = ACTIONS(6675), [sym_delegate] = ACTIONS(6675), [sym_deprecated] = ACTIONS(6675), [sym_do] = ACTIONS(6675), [sym_enum] = ACTIONS(6675), [sym_extern] = ACTIONS(6675), [sym_final] = ACTIONS(6675), [sym_function] = ACTIONS(6675), [sym_immutable] = ACTIONS(6675), [sym_in] = ACTIONS(6675), [sym_inout] = ACTIONS(6675), [sym_lazy] = ACTIONS(6675), [sym_mixin] = ACTIONS(6675), [sym_nothrow] = ACTIONS(6675), [sym_out] = ACTIONS(6675), [sym_override] = ACTIONS(6675), [sym_pure] = ACTIONS(6675), [sym_ref] = ACTIONS(6675), [sym_return] = ACTIONS(6675), [sym_scope] = ACTIONS(6675), [sym_shared] = ACTIONS(6675), [sym_static] = ACTIONS(6675), [sym_synchronized] = ACTIONS(6675), [sym_typeof] = ACTIONS(6675), [sym_gshared] = ACTIONS(6675), [sym_traits] = ACTIONS(6675), [sym_vector] = ACTIONS(6675), [sym_void] = ACTIONS(6675), [sym_directive] = ACTIONS(3), }, [3120] = { [sym_type] = STATE(4687), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4834), [sym_block_statement] = STATE(3804), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3804), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7535), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7537), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3121] = { [sym_identifier] = ACTIONS(6669), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6671), [anon_sym_DOT] = ACTIONS(6671), [anon_sym_LPAREN] = ACTIONS(6671), [anon_sym_RPAREN] = ACTIONS(6671), [anon_sym_LBRACK] = ACTIONS(6671), [anon_sym_COMMA] = ACTIONS(6671), [anon_sym_EQ] = ACTIONS(6671), [anon_sym_STAR] = ACTIONS(6671), [anon_sym_AT] = ACTIONS(6671), [sym_bool] = ACTIONS(6669), [sym_byte] = ACTIONS(6669), [sym_ubyte] = ACTIONS(6669), [sym_char] = ACTIONS(6669), [sym_short] = ACTIONS(6669), [sym_ushort] = ACTIONS(6669), [sym_int] = ACTIONS(6669), [sym_uint] = ACTIONS(6669), [sym_long] = ACTIONS(6669), [sym_ulong] = ACTIONS(6669), [sym_cent] = ACTIONS(6669), [sym_ucent] = ACTIONS(6669), [sym_wchar] = ACTIONS(6669), [sym_dchar] = ACTIONS(6669), [sym_float] = ACTIONS(6669), [sym_double] = ACTIONS(6669), [sym_real] = ACTIONS(6669), [sym_ifloat] = ACTIONS(6669), [sym_idouble] = ACTIONS(6669), [sym_ireal] = ACTIONS(6669), [sym_cfloat] = ACTIONS(6669), [sym_cdouble] = ACTIONS(6669), [sym_creal] = ACTIONS(6669), [sym_size_t] = ACTIONS(6669), [sym_ptrdiff_t] = ACTIONS(6669), [sym_string] = ACTIONS(6669), [sym_cstring] = ACTIONS(6669), [sym_dstring] = ACTIONS(6669), [sym_wstring] = ACTIONS(6669), [sym_noreturn] = ACTIONS(6669), [sym_abstract] = ACTIONS(6669), [sym_align] = ACTIONS(6669), [sym_auto] = ACTIONS(6669), [sym_const] = ACTIONS(6669), [sym_delegate] = ACTIONS(6669), [sym_deprecated] = ACTIONS(6669), [sym_do] = ACTIONS(6669), [sym_enum] = ACTIONS(6669), [sym_extern] = ACTIONS(6669), [sym_final] = ACTIONS(6669), [sym_function] = ACTIONS(6669), [sym_immutable] = ACTIONS(6669), [sym_in] = ACTIONS(6669), [sym_inout] = ACTIONS(6669), [sym_lazy] = ACTIONS(6669), [sym_mixin] = ACTIONS(6669), [sym_nothrow] = ACTIONS(6669), [sym_out] = ACTIONS(6669), [sym_override] = ACTIONS(6669), [sym_pure] = ACTIONS(6669), [sym_ref] = ACTIONS(6669), [sym_return] = ACTIONS(6669), [sym_scope] = ACTIONS(6669), [sym_shared] = ACTIONS(6669), [sym_static] = ACTIONS(6669), [sym_synchronized] = ACTIONS(6669), [sym_typeof] = ACTIONS(6669), [sym_gshared] = ACTIONS(6669), [sym_traits] = ACTIONS(6669), [sym_vector] = ACTIONS(6669), [sym_void] = ACTIONS(6669), [sym_directive] = ACTIONS(3), }, [3122] = { [sym_identifier] = ACTIONS(6653), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6655), [anon_sym_DOT] = ACTIONS(6655), [anon_sym_LPAREN] = ACTIONS(6655), [anon_sym_RPAREN] = ACTIONS(6655), [anon_sym_LBRACK] = ACTIONS(6655), [anon_sym_COMMA] = ACTIONS(6655), [anon_sym_EQ] = ACTIONS(6655), [anon_sym_STAR] = ACTIONS(6655), [anon_sym_AT] = ACTIONS(6655), [sym_bool] = ACTIONS(6653), [sym_byte] = ACTIONS(6653), [sym_ubyte] = ACTIONS(6653), [sym_char] = ACTIONS(6653), [sym_short] = ACTIONS(6653), [sym_ushort] = ACTIONS(6653), [sym_int] = ACTIONS(6653), [sym_uint] = ACTIONS(6653), [sym_long] = ACTIONS(6653), [sym_ulong] = ACTIONS(6653), [sym_cent] = ACTIONS(6653), [sym_ucent] = ACTIONS(6653), [sym_wchar] = ACTIONS(6653), [sym_dchar] = ACTIONS(6653), [sym_float] = ACTIONS(6653), [sym_double] = ACTIONS(6653), [sym_real] = ACTIONS(6653), [sym_ifloat] = ACTIONS(6653), [sym_idouble] = ACTIONS(6653), [sym_ireal] = ACTIONS(6653), [sym_cfloat] = ACTIONS(6653), [sym_cdouble] = ACTIONS(6653), [sym_creal] = ACTIONS(6653), [sym_size_t] = ACTIONS(6653), [sym_ptrdiff_t] = ACTIONS(6653), [sym_string] = ACTIONS(6653), [sym_cstring] = ACTIONS(6653), [sym_dstring] = ACTIONS(6653), [sym_wstring] = ACTIONS(6653), [sym_noreturn] = ACTIONS(6653), [sym_abstract] = ACTIONS(6653), [sym_align] = ACTIONS(6653), [sym_auto] = ACTIONS(6653), [sym_const] = ACTIONS(6653), [sym_delegate] = ACTIONS(6653), [sym_deprecated] = ACTIONS(6653), [sym_do] = ACTIONS(6653), [sym_enum] = ACTIONS(6653), [sym_extern] = ACTIONS(6653), [sym_final] = ACTIONS(6653), [sym_function] = ACTIONS(6653), [sym_immutable] = ACTIONS(6653), [sym_in] = ACTIONS(6653), [sym_inout] = ACTIONS(6653), [sym_lazy] = ACTIONS(6653), [sym_mixin] = ACTIONS(6653), [sym_nothrow] = ACTIONS(6653), [sym_out] = ACTIONS(6653), [sym_override] = ACTIONS(6653), [sym_pure] = ACTIONS(6653), [sym_ref] = ACTIONS(6653), [sym_return] = ACTIONS(6653), [sym_scope] = ACTIONS(6653), [sym_shared] = ACTIONS(6653), [sym_static] = ACTIONS(6653), [sym_synchronized] = ACTIONS(6653), [sym_typeof] = ACTIONS(6653), [sym_gshared] = ACTIONS(6653), [sym_traits] = ACTIONS(6653), [sym_vector] = ACTIONS(6653), [sym_void] = ACTIONS(6653), [sym_directive] = ACTIONS(3), }, [3123] = { [sym_identifier] = ACTIONS(3048), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3050), [anon_sym_DOT] = ACTIONS(3050), [anon_sym_LPAREN] = ACTIONS(3050), [anon_sym_RPAREN] = ACTIONS(3050), [anon_sym_LBRACK] = ACTIONS(3050), [anon_sym_COMMA] = ACTIONS(3050), [anon_sym_EQ] = ACTIONS(3050), [anon_sym_STAR] = ACTIONS(3050), [anon_sym_AT] = ACTIONS(3050), [sym_bool] = ACTIONS(3048), [sym_byte] = ACTIONS(3048), [sym_ubyte] = ACTIONS(3048), [sym_char] = ACTIONS(3048), [sym_short] = ACTIONS(3048), [sym_ushort] = ACTIONS(3048), [sym_int] = ACTIONS(3048), [sym_uint] = ACTIONS(3048), [sym_long] = ACTIONS(3048), [sym_ulong] = ACTIONS(3048), [sym_cent] = ACTIONS(3048), [sym_ucent] = ACTIONS(3048), [sym_wchar] = ACTIONS(3048), [sym_dchar] = ACTIONS(3048), [sym_float] = ACTIONS(3048), [sym_double] = ACTIONS(3048), [sym_real] = ACTIONS(3048), [sym_ifloat] = ACTIONS(3048), [sym_idouble] = ACTIONS(3048), [sym_ireal] = ACTIONS(3048), [sym_cfloat] = ACTIONS(3048), [sym_cdouble] = ACTIONS(3048), [sym_creal] = ACTIONS(3048), [sym_size_t] = ACTIONS(3048), [sym_ptrdiff_t] = ACTIONS(3048), [sym_string] = ACTIONS(3048), [sym_cstring] = ACTIONS(3048), [sym_dstring] = ACTIONS(3048), [sym_wstring] = ACTIONS(3048), [sym_noreturn] = ACTIONS(3048), [sym_abstract] = ACTIONS(3048), [sym_align] = ACTIONS(3048), [sym_auto] = ACTIONS(3048), [sym_const] = ACTIONS(3048), [sym_delegate] = ACTIONS(3048), [sym_deprecated] = ACTIONS(3048), [sym_do] = ACTIONS(3048), [sym_enum] = ACTIONS(3048), [sym_extern] = ACTIONS(3048), [sym_final] = ACTIONS(3048), [sym_function] = ACTIONS(3048), [sym_immutable] = ACTIONS(3048), [sym_in] = ACTIONS(3048), [sym_inout] = ACTIONS(3048), [sym_lazy] = ACTIONS(3048), [sym_mixin] = ACTIONS(3048), [sym_nothrow] = ACTIONS(3048), [sym_out] = ACTIONS(3048), [sym_override] = ACTIONS(3048), [sym_pure] = ACTIONS(3048), [sym_ref] = ACTIONS(3048), [sym_return] = ACTIONS(3048), [sym_scope] = ACTIONS(3048), [sym_shared] = ACTIONS(3048), [sym_static] = ACTIONS(3048), [sym_synchronized] = ACTIONS(3048), [sym_typeof] = ACTIONS(3048), [sym_gshared] = ACTIONS(3048), [sym_traits] = ACTIONS(3048), [sym_vector] = ACTIONS(3048), [sym_void] = ACTIONS(3048), [sym_directive] = ACTIONS(3), }, [3124] = { [sym_identifier] = ACTIONS(3044), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3046), [anon_sym_DOT] = ACTIONS(3046), [anon_sym_LPAREN] = ACTIONS(3046), [anon_sym_RPAREN] = ACTIONS(3046), [anon_sym_LBRACK] = ACTIONS(3046), [anon_sym_COMMA] = ACTIONS(3046), [anon_sym_EQ] = ACTIONS(3046), [anon_sym_STAR] = ACTIONS(3046), [anon_sym_AT] = ACTIONS(3046), [sym_bool] = ACTIONS(3044), [sym_byte] = ACTIONS(3044), [sym_ubyte] = ACTIONS(3044), [sym_char] = ACTIONS(3044), [sym_short] = ACTIONS(3044), [sym_ushort] = ACTIONS(3044), [sym_int] = ACTIONS(3044), [sym_uint] = ACTIONS(3044), [sym_long] = ACTIONS(3044), [sym_ulong] = ACTIONS(3044), [sym_cent] = ACTIONS(3044), [sym_ucent] = ACTIONS(3044), [sym_wchar] = ACTIONS(3044), [sym_dchar] = ACTIONS(3044), [sym_float] = ACTIONS(3044), [sym_double] = ACTIONS(3044), [sym_real] = ACTIONS(3044), [sym_ifloat] = ACTIONS(3044), [sym_idouble] = ACTIONS(3044), [sym_ireal] = ACTIONS(3044), [sym_cfloat] = ACTIONS(3044), [sym_cdouble] = ACTIONS(3044), [sym_creal] = ACTIONS(3044), [sym_size_t] = ACTIONS(3044), [sym_ptrdiff_t] = ACTIONS(3044), [sym_string] = ACTIONS(3044), [sym_cstring] = ACTIONS(3044), [sym_dstring] = ACTIONS(3044), [sym_wstring] = ACTIONS(3044), [sym_noreturn] = ACTIONS(3044), [sym_abstract] = ACTIONS(3044), [sym_align] = ACTIONS(3044), [sym_auto] = ACTIONS(3044), [sym_const] = ACTIONS(3044), [sym_delegate] = ACTIONS(3044), [sym_deprecated] = ACTIONS(3044), [sym_do] = ACTIONS(3044), [sym_enum] = ACTIONS(3044), [sym_extern] = ACTIONS(3044), [sym_final] = ACTIONS(3044), [sym_function] = ACTIONS(3044), [sym_immutable] = ACTIONS(3044), [sym_in] = ACTIONS(3044), [sym_inout] = ACTIONS(3044), [sym_lazy] = ACTIONS(3044), [sym_mixin] = ACTIONS(3044), [sym_nothrow] = ACTIONS(3044), [sym_out] = ACTIONS(3044), [sym_override] = ACTIONS(3044), [sym_pure] = ACTIONS(3044), [sym_ref] = ACTIONS(3044), [sym_return] = ACTIONS(3044), [sym_scope] = ACTIONS(3044), [sym_shared] = ACTIONS(3044), [sym_static] = ACTIONS(3044), [sym_synchronized] = ACTIONS(3044), [sym_typeof] = ACTIONS(3044), [sym_gshared] = ACTIONS(3044), [sym_traits] = ACTIONS(3044), [sym_vector] = ACTIONS(3044), [sym_void] = ACTIONS(3044), [sym_directive] = ACTIONS(3), }, [3125] = { [sym_identifier] = ACTIONS(3036), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3038), [anon_sym_DOT] = ACTIONS(3038), [anon_sym_LPAREN] = ACTIONS(3038), [anon_sym_RPAREN] = ACTIONS(3038), [anon_sym_LBRACK] = ACTIONS(3038), [anon_sym_COMMA] = ACTIONS(3038), [anon_sym_EQ] = ACTIONS(3038), [anon_sym_STAR] = ACTIONS(3038), [anon_sym_AT] = ACTIONS(3038), [sym_bool] = ACTIONS(3036), [sym_byte] = ACTIONS(3036), [sym_ubyte] = ACTIONS(3036), [sym_char] = ACTIONS(3036), [sym_short] = ACTIONS(3036), [sym_ushort] = ACTIONS(3036), [sym_int] = ACTIONS(3036), [sym_uint] = ACTIONS(3036), [sym_long] = ACTIONS(3036), [sym_ulong] = ACTIONS(3036), [sym_cent] = ACTIONS(3036), [sym_ucent] = ACTIONS(3036), [sym_wchar] = ACTIONS(3036), [sym_dchar] = ACTIONS(3036), [sym_float] = ACTIONS(3036), [sym_double] = ACTIONS(3036), [sym_real] = ACTIONS(3036), [sym_ifloat] = ACTIONS(3036), [sym_idouble] = ACTIONS(3036), [sym_ireal] = ACTIONS(3036), [sym_cfloat] = ACTIONS(3036), [sym_cdouble] = ACTIONS(3036), [sym_creal] = ACTIONS(3036), [sym_size_t] = ACTIONS(3036), [sym_ptrdiff_t] = ACTIONS(3036), [sym_string] = ACTIONS(3036), [sym_cstring] = ACTIONS(3036), [sym_dstring] = ACTIONS(3036), [sym_wstring] = ACTIONS(3036), [sym_noreturn] = ACTIONS(3036), [sym_abstract] = ACTIONS(3036), [sym_align] = ACTIONS(3036), [sym_auto] = ACTIONS(3036), [sym_const] = ACTIONS(3036), [sym_delegate] = ACTIONS(3036), [sym_deprecated] = ACTIONS(3036), [sym_do] = ACTIONS(3036), [sym_enum] = ACTIONS(3036), [sym_extern] = ACTIONS(3036), [sym_final] = ACTIONS(3036), [sym_function] = ACTIONS(3036), [sym_immutable] = ACTIONS(3036), [sym_in] = ACTIONS(3036), [sym_inout] = ACTIONS(3036), [sym_lazy] = ACTIONS(3036), [sym_mixin] = ACTIONS(3036), [sym_nothrow] = ACTIONS(3036), [sym_out] = ACTIONS(3036), [sym_override] = ACTIONS(3036), [sym_pure] = ACTIONS(3036), [sym_ref] = ACTIONS(3036), [sym_return] = ACTIONS(3036), [sym_scope] = ACTIONS(3036), [sym_shared] = ACTIONS(3036), [sym_static] = ACTIONS(3036), [sym_synchronized] = ACTIONS(3036), [sym_typeof] = ACTIONS(3036), [sym_gshared] = ACTIONS(3036), [sym_traits] = ACTIONS(3036), [sym_vector] = ACTIONS(3036), [sym_void] = ACTIONS(3036), [sym_directive] = ACTIONS(3), }, [3126] = { [sym_identifier] = ACTIONS(3000), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3002), [anon_sym_DOT] = ACTIONS(3002), [anon_sym_LPAREN] = ACTIONS(3002), [anon_sym_RPAREN] = ACTIONS(3002), [anon_sym_LBRACK] = ACTIONS(3002), [anon_sym_COMMA] = ACTIONS(3002), [anon_sym_EQ] = ACTIONS(3002), [anon_sym_STAR] = ACTIONS(3002), [anon_sym_AT] = ACTIONS(3002), [sym_bool] = ACTIONS(3000), [sym_byte] = ACTIONS(3000), [sym_ubyte] = ACTIONS(3000), [sym_char] = ACTIONS(3000), [sym_short] = ACTIONS(3000), [sym_ushort] = ACTIONS(3000), [sym_int] = ACTIONS(3000), [sym_uint] = ACTIONS(3000), [sym_long] = ACTIONS(3000), [sym_ulong] = ACTIONS(3000), [sym_cent] = ACTIONS(3000), [sym_ucent] = ACTIONS(3000), [sym_wchar] = ACTIONS(3000), [sym_dchar] = ACTIONS(3000), [sym_float] = ACTIONS(3000), [sym_double] = ACTIONS(3000), [sym_real] = ACTIONS(3000), [sym_ifloat] = ACTIONS(3000), [sym_idouble] = ACTIONS(3000), [sym_ireal] = ACTIONS(3000), [sym_cfloat] = ACTIONS(3000), [sym_cdouble] = ACTIONS(3000), [sym_creal] = ACTIONS(3000), [sym_size_t] = ACTIONS(3000), [sym_ptrdiff_t] = ACTIONS(3000), [sym_string] = ACTIONS(3000), [sym_cstring] = ACTIONS(3000), [sym_dstring] = ACTIONS(3000), [sym_wstring] = ACTIONS(3000), [sym_noreturn] = ACTIONS(3000), [sym_abstract] = ACTIONS(3000), [sym_align] = ACTIONS(3000), [sym_auto] = ACTIONS(3000), [sym_const] = ACTIONS(3000), [sym_delegate] = ACTIONS(3000), [sym_deprecated] = ACTIONS(3000), [sym_do] = ACTIONS(3000), [sym_enum] = ACTIONS(3000), [sym_extern] = ACTIONS(3000), [sym_final] = ACTIONS(3000), [sym_function] = ACTIONS(3000), [sym_immutable] = ACTIONS(3000), [sym_in] = ACTIONS(3000), [sym_inout] = ACTIONS(3000), [sym_lazy] = ACTIONS(3000), [sym_mixin] = ACTIONS(3000), [sym_nothrow] = ACTIONS(3000), [sym_out] = ACTIONS(3000), [sym_override] = ACTIONS(3000), [sym_pure] = ACTIONS(3000), [sym_ref] = ACTIONS(3000), [sym_return] = ACTIONS(3000), [sym_scope] = ACTIONS(3000), [sym_shared] = ACTIONS(3000), [sym_static] = ACTIONS(3000), [sym_synchronized] = ACTIONS(3000), [sym_typeof] = ACTIONS(3000), [sym_gshared] = ACTIONS(3000), [sym_traits] = ACTIONS(3000), [sym_vector] = ACTIONS(3000), [sym_void] = ACTIONS(3000), [sym_directive] = ACTIONS(3), }, [3127] = { [sym_type] = STATE(4732), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4950), [sym_block_statement] = STATE(6675), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(6675), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7539), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(6625), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7541), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3128] = { [sym_type] = STATE(4739), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4950), [sym_block_statement] = STATE(6675), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6675), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7543), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(6625), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7545), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3129] = { [sym_identifier] = ACTIONS(6661), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6663), [anon_sym_DOT] = ACTIONS(6663), [anon_sym_LPAREN] = ACTIONS(6663), [anon_sym_RPAREN] = ACTIONS(6663), [anon_sym_LBRACK] = ACTIONS(6663), [anon_sym_COMMA] = ACTIONS(6663), [anon_sym_EQ] = ACTIONS(6663), [anon_sym_STAR] = ACTIONS(6663), [anon_sym_AT] = ACTIONS(6663), [sym_bool] = ACTIONS(6661), [sym_byte] = ACTIONS(6661), [sym_ubyte] = ACTIONS(6661), [sym_char] = ACTIONS(6661), [sym_short] = ACTIONS(6661), [sym_ushort] = ACTIONS(6661), [sym_int] = ACTIONS(6661), [sym_uint] = ACTIONS(6661), [sym_long] = ACTIONS(6661), [sym_ulong] = ACTIONS(6661), [sym_cent] = ACTIONS(6661), [sym_ucent] = ACTIONS(6661), [sym_wchar] = ACTIONS(6661), [sym_dchar] = ACTIONS(6661), [sym_float] = ACTIONS(6661), [sym_double] = ACTIONS(6661), [sym_real] = ACTIONS(6661), [sym_ifloat] = ACTIONS(6661), [sym_idouble] = ACTIONS(6661), [sym_ireal] = ACTIONS(6661), [sym_cfloat] = ACTIONS(6661), [sym_cdouble] = ACTIONS(6661), [sym_creal] = ACTIONS(6661), [sym_size_t] = ACTIONS(6661), [sym_ptrdiff_t] = ACTIONS(6661), [sym_string] = ACTIONS(6661), [sym_cstring] = ACTIONS(6661), [sym_dstring] = ACTIONS(6661), [sym_wstring] = ACTIONS(6661), [sym_noreturn] = ACTIONS(6661), [sym_abstract] = ACTIONS(6661), [sym_align] = ACTIONS(6661), [sym_auto] = ACTIONS(6661), [sym_const] = ACTIONS(6661), [sym_delegate] = ACTIONS(6661), [sym_deprecated] = ACTIONS(6661), [sym_do] = ACTIONS(6661), [sym_enum] = ACTIONS(6661), [sym_extern] = ACTIONS(6661), [sym_final] = ACTIONS(6661), [sym_function] = ACTIONS(6661), [sym_immutable] = ACTIONS(6661), [sym_in] = ACTIONS(6661), [sym_inout] = ACTIONS(6661), [sym_lazy] = ACTIONS(6661), [sym_mixin] = ACTIONS(6661), [sym_nothrow] = ACTIONS(6661), [sym_out] = ACTIONS(6661), [sym_override] = ACTIONS(6661), [sym_pure] = ACTIONS(6661), [sym_ref] = ACTIONS(6661), [sym_return] = ACTIONS(6661), [sym_scope] = ACTIONS(6661), [sym_shared] = ACTIONS(6661), [sym_static] = ACTIONS(6661), [sym_synchronized] = ACTIONS(6661), [sym_typeof] = ACTIONS(6661), [sym_gshared] = ACTIONS(6661), [sym_traits] = ACTIONS(6661), [sym_vector] = ACTIONS(6661), [sym_void] = ACTIONS(6661), [sym_directive] = ACTIONS(3), }, [3130] = { [sym_type] = STATE(4781), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4963), [sym_block_statement] = STATE(3967), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3967), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7547), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7549), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3131] = { [sym_identifier] = ACTIONS(3012), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3014), [anon_sym_DOT] = ACTIONS(3014), [anon_sym_LPAREN] = ACTIONS(3014), [anon_sym_RPAREN] = ACTIONS(3014), [anon_sym_LBRACK] = ACTIONS(3014), [anon_sym_COMMA] = ACTIONS(3014), [anon_sym_EQ] = ACTIONS(3014), [anon_sym_STAR] = ACTIONS(3014), [anon_sym_AT] = ACTIONS(3014), [sym_bool] = ACTIONS(3012), [sym_byte] = ACTIONS(3012), [sym_ubyte] = ACTIONS(3012), [sym_char] = ACTIONS(3012), [sym_short] = ACTIONS(3012), [sym_ushort] = ACTIONS(3012), [sym_int] = ACTIONS(3012), [sym_uint] = ACTIONS(3012), [sym_long] = ACTIONS(3012), [sym_ulong] = ACTIONS(3012), [sym_cent] = ACTIONS(3012), [sym_ucent] = ACTIONS(3012), [sym_wchar] = ACTIONS(3012), [sym_dchar] = ACTIONS(3012), [sym_float] = ACTIONS(3012), [sym_double] = ACTIONS(3012), [sym_real] = ACTIONS(3012), [sym_ifloat] = ACTIONS(3012), [sym_idouble] = ACTIONS(3012), [sym_ireal] = ACTIONS(3012), [sym_cfloat] = ACTIONS(3012), [sym_cdouble] = ACTIONS(3012), [sym_creal] = ACTIONS(3012), [sym_size_t] = ACTIONS(3012), [sym_ptrdiff_t] = ACTIONS(3012), [sym_string] = ACTIONS(3012), [sym_cstring] = ACTIONS(3012), [sym_dstring] = ACTIONS(3012), [sym_wstring] = ACTIONS(3012), [sym_noreturn] = ACTIONS(3012), [sym_abstract] = ACTIONS(3012), [sym_align] = ACTIONS(3012), [sym_auto] = ACTIONS(3012), [sym_const] = ACTIONS(3012), [sym_delegate] = ACTIONS(3012), [sym_deprecated] = ACTIONS(3012), [sym_do] = ACTIONS(3012), [sym_enum] = ACTIONS(3012), [sym_extern] = ACTIONS(3012), [sym_final] = ACTIONS(3012), [sym_function] = ACTIONS(3012), [sym_immutable] = ACTIONS(3012), [sym_in] = ACTIONS(3012), [sym_inout] = ACTIONS(3012), [sym_lazy] = ACTIONS(3012), [sym_mixin] = ACTIONS(3012), [sym_nothrow] = ACTIONS(3012), [sym_out] = ACTIONS(3012), [sym_override] = ACTIONS(3012), [sym_pure] = ACTIONS(3012), [sym_ref] = ACTIONS(3012), [sym_return] = ACTIONS(3012), [sym_scope] = ACTIONS(3012), [sym_shared] = ACTIONS(3012), [sym_static] = ACTIONS(3012), [sym_synchronized] = ACTIONS(3012), [sym_typeof] = ACTIONS(3012), [sym_gshared] = ACTIONS(3012), [sym_traits] = ACTIONS(3012), [sym_vector] = ACTIONS(3012), [sym_void] = ACTIONS(3012), [sym_directive] = ACTIONS(3), }, [3132] = { [sym_identifier] = ACTIONS(3024), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3026), [anon_sym_DOT] = ACTIONS(3026), [anon_sym_LPAREN] = ACTIONS(3026), [anon_sym_RPAREN] = ACTIONS(3026), [anon_sym_LBRACK] = ACTIONS(3026), [anon_sym_COMMA] = ACTIONS(3026), [anon_sym_EQ] = ACTIONS(3026), [anon_sym_STAR] = ACTIONS(3026), [anon_sym_AT] = ACTIONS(3026), [sym_bool] = ACTIONS(3024), [sym_byte] = ACTIONS(3024), [sym_ubyte] = ACTIONS(3024), [sym_char] = ACTIONS(3024), [sym_short] = ACTIONS(3024), [sym_ushort] = ACTIONS(3024), [sym_int] = ACTIONS(3024), [sym_uint] = ACTIONS(3024), [sym_long] = ACTIONS(3024), [sym_ulong] = ACTIONS(3024), [sym_cent] = ACTIONS(3024), [sym_ucent] = ACTIONS(3024), [sym_wchar] = ACTIONS(3024), [sym_dchar] = ACTIONS(3024), [sym_float] = ACTIONS(3024), [sym_double] = ACTIONS(3024), [sym_real] = ACTIONS(3024), [sym_ifloat] = ACTIONS(3024), [sym_idouble] = ACTIONS(3024), [sym_ireal] = ACTIONS(3024), [sym_cfloat] = ACTIONS(3024), [sym_cdouble] = ACTIONS(3024), [sym_creal] = ACTIONS(3024), [sym_size_t] = ACTIONS(3024), [sym_ptrdiff_t] = ACTIONS(3024), [sym_string] = ACTIONS(3024), [sym_cstring] = ACTIONS(3024), [sym_dstring] = ACTIONS(3024), [sym_wstring] = ACTIONS(3024), [sym_noreturn] = ACTIONS(3024), [sym_abstract] = ACTIONS(3024), [sym_align] = ACTIONS(3024), [sym_auto] = ACTIONS(3024), [sym_const] = ACTIONS(3024), [sym_delegate] = ACTIONS(3024), [sym_deprecated] = ACTIONS(3024), [sym_do] = ACTIONS(3024), [sym_enum] = ACTIONS(3024), [sym_extern] = ACTIONS(3024), [sym_final] = ACTIONS(3024), [sym_function] = ACTIONS(3024), [sym_immutable] = ACTIONS(3024), [sym_in] = ACTIONS(3024), [sym_inout] = ACTIONS(3024), [sym_lazy] = ACTIONS(3024), [sym_mixin] = ACTIONS(3024), [sym_nothrow] = ACTIONS(3024), [sym_out] = ACTIONS(3024), [sym_override] = ACTIONS(3024), [sym_pure] = ACTIONS(3024), [sym_ref] = ACTIONS(3024), [sym_return] = ACTIONS(3024), [sym_scope] = ACTIONS(3024), [sym_shared] = ACTIONS(3024), [sym_static] = ACTIONS(3024), [sym_synchronized] = ACTIONS(3024), [sym_typeof] = ACTIONS(3024), [sym_gshared] = ACTIONS(3024), [sym_traits] = ACTIONS(3024), [sym_vector] = ACTIONS(3024), [sym_void] = ACTIONS(3024), [sym_directive] = ACTIONS(3), }, [3133] = { [sym_identifier] = ACTIONS(3028), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3030), [anon_sym_DOT] = ACTIONS(3030), [anon_sym_LPAREN] = ACTIONS(3030), [anon_sym_RPAREN] = ACTIONS(3030), [anon_sym_LBRACK] = ACTIONS(3030), [anon_sym_COMMA] = ACTIONS(3030), [anon_sym_EQ] = ACTIONS(3030), [anon_sym_STAR] = ACTIONS(3030), [anon_sym_AT] = ACTIONS(3030), [sym_bool] = ACTIONS(3028), [sym_byte] = ACTIONS(3028), [sym_ubyte] = ACTIONS(3028), [sym_char] = ACTIONS(3028), [sym_short] = ACTIONS(3028), [sym_ushort] = ACTIONS(3028), [sym_int] = ACTIONS(3028), [sym_uint] = ACTIONS(3028), [sym_long] = ACTIONS(3028), [sym_ulong] = ACTIONS(3028), [sym_cent] = ACTIONS(3028), [sym_ucent] = ACTIONS(3028), [sym_wchar] = ACTIONS(3028), [sym_dchar] = ACTIONS(3028), [sym_float] = ACTIONS(3028), [sym_double] = ACTIONS(3028), [sym_real] = ACTIONS(3028), [sym_ifloat] = ACTIONS(3028), [sym_idouble] = ACTIONS(3028), [sym_ireal] = ACTIONS(3028), [sym_cfloat] = ACTIONS(3028), [sym_cdouble] = ACTIONS(3028), [sym_creal] = ACTIONS(3028), [sym_size_t] = ACTIONS(3028), [sym_ptrdiff_t] = ACTIONS(3028), [sym_string] = ACTIONS(3028), [sym_cstring] = ACTIONS(3028), [sym_dstring] = ACTIONS(3028), [sym_wstring] = ACTIONS(3028), [sym_noreturn] = ACTIONS(3028), [sym_abstract] = ACTIONS(3028), [sym_align] = ACTIONS(3028), [sym_auto] = ACTIONS(3028), [sym_const] = ACTIONS(3028), [sym_delegate] = ACTIONS(3028), [sym_deprecated] = ACTIONS(3028), [sym_do] = ACTIONS(3028), [sym_enum] = ACTIONS(3028), [sym_extern] = ACTIONS(3028), [sym_final] = ACTIONS(3028), [sym_function] = ACTIONS(3028), [sym_immutable] = ACTIONS(3028), [sym_in] = ACTIONS(3028), [sym_inout] = ACTIONS(3028), [sym_lazy] = ACTIONS(3028), [sym_mixin] = ACTIONS(3028), [sym_nothrow] = ACTIONS(3028), [sym_out] = ACTIONS(3028), [sym_override] = ACTIONS(3028), [sym_pure] = ACTIONS(3028), [sym_ref] = ACTIONS(3028), [sym_return] = ACTIONS(3028), [sym_scope] = ACTIONS(3028), [sym_shared] = ACTIONS(3028), [sym_static] = ACTIONS(3028), [sym_synchronized] = ACTIONS(3028), [sym_typeof] = ACTIONS(3028), [sym_gshared] = ACTIONS(3028), [sym_traits] = ACTIONS(3028), [sym_vector] = ACTIONS(3028), [sym_void] = ACTIONS(3028), [sym_directive] = ACTIONS(3), }, [3134] = { [sym_type] = STATE(4708), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4895), [sym_block_statement] = STATE(3804), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3804), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7551), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7553), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3135] = { [sym_type] = STATE(4698), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4895), [sym_block_statement] = STATE(3804), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3804), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7555), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7557), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3136] = { [sym_identifier] = ACTIONS(6657), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6659), [anon_sym_DOT] = ACTIONS(6659), [anon_sym_LPAREN] = ACTIONS(6659), [anon_sym_RPAREN] = ACTIONS(6659), [anon_sym_LBRACK] = ACTIONS(6659), [anon_sym_COMMA] = ACTIONS(6659), [anon_sym_EQ] = ACTIONS(6659), [anon_sym_STAR] = ACTIONS(6659), [anon_sym_AT] = ACTIONS(6659), [sym_bool] = ACTIONS(6657), [sym_byte] = ACTIONS(6657), [sym_ubyte] = ACTIONS(6657), [sym_char] = ACTIONS(6657), [sym_short] = ACTIONS(6657), [sym_ushort] = ACTIONS(6657), [sym_int] = ACTIONS(6657), [sym_uint] = ACTIONS(6657), [sym_long] = ACTIONS(6657), [sym_ulong] = ACTIONS(6657), [sym_cent] = ACTIONS(6657), [sym_ucent] = ACTIONS(6657), [sym_wchar] = ACTIONS(6657), [sym_dchar] = ACTIONS(6657), [sym_float] = ACTIONS(6657), [sym_double] = ACTIONS(6657), [sym_real] = ACTIONS(6657), [sym_ifloat] = ACTIONS(6657), [sym_idouble] = ACTIONS(6657), [sym_ireal] = ACTIONS(6657), [sym_cfloat] = ACTIONS(6657), [sym_cdouble] = ACTIONS(6657), [sym_creal] = ACTIONS(6657), [sym_size_t] = ACTIONS(6657), [sym_ptrdiff_t] = ACTIONS(6657), [sym_string] = ACTIONS(6657), [sym_cstring] = ACTIONS(6657), [sym_dstring] = ACTIONS(6657), [sym_wstring] = ACTIONS(6657), [sym_noreturn] = ACTIONS(6657), [sym_abstract] = ACTIONS(6657), [sym_align] = ACTIONS(6657), [sym_auto] = ACTIONS(6657), [sym_const] = ACTIONS(6657), [sym_delegate] = ACTIONS(6657), [sym_deprecated] = ACTIONS(6657), [sym_do] = ACTIONS(6657), [sym_enum] = ACTIONS(6657), [sym_extern] = ACTIONS(6657), [sym_final] = ACTIONS(6657), [sym_function] = ACTIONS(6657), [sym_immutable] = ACTIONS(6657), [sym_in] = ACTIONS(6657), [sym_inout] = ACTIONS(6657), [sym_lazy] = ACTIONS(6657), [sym_mixin] = ACTIONS(6657), [sym_nothrow] = ACTIONS(6657), [sym_out] = ACTIONS(6657), [sym_override] = ACTIONS(6657), [sym_pure] = ACTIONS(6657), [sym_ref] = ACTIONS(6657), [sym_return] = ACTIONS(6657), [sym_scope] = ACTIONS(6657), [sym_shared] = ACTIONS(6657), [sym_static] = ACTIONS(6657), [sym_synchronized] = ACTIONS(6657), [sym_typeof] = ACTIONS(6657), [sym_gshared] = ACTIONS(6657), [sym_traits] = ACTIONS(6657), [sym_vector] = ACTIONS(6657), [sym_void] = ACTIONS(6657), [sym_directive] = ACTIONS(3), }, [3137] = { [sym_identifier] = ACTIONS(3032), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3034), [anon_sym_DOT] = ACTIONS(3034), [anon_sym_LPAREN] = ACTIONS(3034), [anon_sym_RPAREN] = ACTIONS(3034), [anon_sym_LBRACK] = ACTIONS(3034), [anon_sym_COMMA] = ACTIONS(3034), [anon_sym_EQ] = ACTIONS(3034), [anon_sym_STAR] = ACTIONS(3034), [anon_sym_AT] = ACTIONS(3034), [sym_bool] = ACTIONS(3032), [sym_byte] = ACTIONS(3032), [sym_ubyte] = ACTIONS(3032), [sym_char] = ACTIONS(3032), [sym_short] = ACTIONS(3032), [sym_ushort] = ACTIONS(3032), [sym_int] = ACTIONS(3032), [sym_uint] = ACTIONS(3032), [sym_long] = ACTIONS(3032), [sym_ulong] = ACTIONS(3032), [sym_cent] = ACTIONS(3032), [sym_ucent] = ACTIONS(3032), [sym_wchar] = ACTIONS(3032), [sym_dchar] = ACTIONS(3032), [sym_float] = ACTIONS(3032), [sym_double] = ACTIONS(3032), [sym_real] = ACTIONS(3032), [sym_ifloat] = ACTIONS(3032), [sym_idouble] = ACTIONS(3032), [sym_ireal] = ACTIONS(3032), [sym_cfloat] = ACTIONS(3032), [sym_cdouble] = ACTIONS(3032), [sym_creal] = ACTIONS(3032), [sym_size_t] = ACTIONS(3032), [sym_ptrdiff_t] = ACTIONS(3032), [sym_string] = ACTIONS(3032), [sym_cstring] = ACTIONS(3032), [sym_dstring] = ACTIONS(3032), [sym_wstring] = ACTIONS(3032), [sym_noreturn] = ACTIONS(3032), [sym_abstract] = ACTIONS(3032), [sym_align] = ACTIONS(3032), [sym_auto] = ACTIONS(3032), [sym_const] = ACTIONS(3032), [sym_delegate] = ACTIONS(3032), [sym_deprecated] = ACTIONS(3032), [sym_do] = ACTIONS(3032), [sym_enum] = ACTIONS(3032), [sym_extern] = ACTIONS(3032), [sym_final] = ACTIONS(3032), [sym_function] = ACTIONS(3032), [sym_immutable] = ACTIONS(3032), [sym_in] = ACTIONS(3032), [sym_inout] = ACTIONS(3032), [sym_lazy] = ACTIONS(3032), [sym_mixin] = ACTIONS(3032), [sym_nothrow] = ACTIONS(3032), [sym_out] = ACTIONS(3032), [sym_override] = ACTIONS(3032), [sym_pure] = ACTIONS(3032), [sym_ref] = ACTIONS(3032), [sym_return] = ACTIONS(3032), [sym_scope] = ACTIONS(3032), [sym_shared] = ACTIONS(3032), [sym_static] = ACTIONS(3032), [sym_synchronized] = ACTIONS(3032), [sym_typeof] = ACTIONS(3032), [sym_gshared] = ACTIONS(3032), [sym_traits] = ACTIONS(3032), [sym_vector] = ACTIONS(3032), [sym_void] = ACTIONS(3032), [sym_directive] = ACTIONS(3), }, [3138] = { [sym_type] = STATE(4742), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4848), [sym_block_statement] = STATE(3804), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3804), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_auto] = ACTIONS(7559), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_ref] = ACTIONS(7561), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3139] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6172), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7737), [aux_sym__variadic_arguments_attributes] = STATE(5205), [sym_variadic_arguments_attribute] = STATE(5205), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7565), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3140] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7637), [aux_sym__variadic_arguments_attributes] = STATE(5173), [sym_variadic_arguments_attribute] = STATE(5173), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7567), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3141] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6016), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7119), [aux_sym__variadic_arguments_attributes] = STATE(5160), [sym_variadic_arguments_attribute] = STATE(5160), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7569), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3142] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7780), [aux_sym__variadic_arguments_attributes] = STATE(5147), [sym_variadic_arguments_attribute] = STATE(5147), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7571), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3143] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7165), [aux_sym__variadic_arguments_attributes] = STATE(5158), [sym_variadic_arguments_attribute] = STATE(5158), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7573), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3144] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7678), [aux_sym__variadic_arguments_attributes] = STATE(5204), [sym_variadic_arguments_attribute] = STATE(5204), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7575), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3145] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(6983), [aux_sym__variadic_arguments_attributes] = STATE(5185), [sym_variadic_arguments_attribute] = STATE(5185), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7577), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3146] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6107), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7784), [aux_sym__variadic_arguments_attributes] = STATE(5144), [sym_variadic_arguments_attribute] = STATE(5144), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7579), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3147] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(6978), [aux_sym__variadic_arguments_attributes] = STATE(5146), [sym_variadic_arguments_attribute] = STATE(5146), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7581), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3148] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6115), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7204), [aux_sym__variadic_arguments_attributes] = STATE(5191), [sym_variadic_arguments_attribute] = STATE(5191), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7583), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3149] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7943), [aux_sym__variadic_arguments_attributes] = STATE(5193), [sym_variadic_arguments_attribute] = STATE(5193), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7585), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3150] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7814), [aux_sym__variadic_arguments_attributes] = STATE(5152), [sym_variadic_arguments_attribute] = STATE(5152), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7587), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3151] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6397), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7455), [aux_sym__variadic_arguments_attributes] = STATE(5202), [sym_variadic_arguments_attribute] = STATE(5202), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7589), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3152] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7851), [aux_sym__variadic_arguments_attributes] = STATE(5199), [sym_variadic_arguments_attribute] = STATE(5199), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7591), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3153] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6096), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7791), [aux_sym__variadic_arguments_attributes] = STATE(5206), [sym_variadic_arguments_attribute] = STATE(5206), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7593), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3154] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7769), [aux_sym__variadic_arguments_attributes] = STATE(5187), [sym_variadic_arguments_attribute] = STATE(5187), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7595), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3155] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7754), [aux_sym__variadic_arguments_attributes] = STATE(5207), [sym_variadic_arguments_attribute] = STATE(5207), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7597), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3156] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7703), [aux_sym__variadic_arguments_attributes] = STATE(5181), [sym_variadic_arguments_attribute] = STATE(5181), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7599), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3157] = { [sym_storage_class] = STATE(3157), [sym_type_ctor] = STATE(3234), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [aux_sym_variable_declaration_repeat1] = STATE(3157), [sym_identifier] = ACTIONS(7601), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7603), [anon_sym_DOT] = ACTIONS(7603), [anon_sym_LPAREN] = ACTIONS(7603), [anon_sym_AT] = ACTIONS(7605), [sym_bool] = ACTIONS(7601), [sym_byte] = ACTIONS(7601), [sym_ubyte] = ACTIONS(7601), [sym_char] = ACTIONS(7601), [sym_short] = ACTIONS(7601), [sym_ushort] = ACTIONS(7601), [sym_int] = ACTIONS(7601), [sym_uint] = ACTIONS(7601), [sym_long] = ACTIONS(7601), [sym_ulong] = ACTIONS(7601), [sym_cent] = ACTIONS(7601), [sym_ucent] = ACTIONS(7601), [sym_wchar] = ACTIONS(7601), [sym_dchar] = ACTIONS(7601), [sym_float] = ACTIONS(7601), [sym_double] = ACTIONS(7601), [sym_real] = ACTIONS(7601), [sym_ifloat] = ACTIONS(7601), [sym_idouble] = ACTIONS(7601), [sym_ireal] = ACTIONS(7601), [sym_cfloat] = ACTIONS(7601), [sym_cdouble] = ACTIONS(7601), [sym_creal] = ACTIONS(7601), [sym_size_t] = ACTIONS(7601), [sym_ptrdiff_t] = ACTIONS(7601), [sym_string] = ACTIONS(7601), [sym_cstring] = ACTIONS(7601), [sym_dstring] = ACTIONS(7601), [sym_wstring] = ACTIONS(7601), [sym_noreturn] = ACTIONS(7601), [sym_abstract] = ACTIONS(7608), [sym_align] = ACTIONS(7611), [sym_auto] = ACTIONS(7608), [sym_const] = ACTIONS(7614), [sym_delegate] = ACTIONS(7601), [sym_deprecated] = ACTIONS(7608), [sym_do] = ACTIONS(7601), [sym_extern] = ACTIONS(7617), [sym_final] = ACTIONS(7608), [sym_function] = ACTIONS(7601), [sym_immutable] = ACTIONS(7614), [sym_in] = ACTIONS(7601), [sym_inout] = ACTIONS(7614), [sym_mixin] = ACTIONS(7601), [sym_nothrow] = ACTIONS(7608), [sym_out] = ACTIONS(7601), [sym_override] = ACTIONS(7608), [sym_pure] = ACTIONS(7608), [sym_ref] = ACTIONS(7608), [sym_scope] = ACTIONS(7608), [sym_shared] = ACTIONS(7614), [sym_static] = ACTIONS(7608), [sym_synchronized] = ACTIONS(7608), [sym_typeof] = ACTIONS(7601), [sym_gshared] = ACTIONS(7608), [sym_traits] = ACTIONS(7601), [sym_vector] = ACTIONS(7601), [sym_void] = ACTIONS(7601), [sym_directive] = ACTIONS(3), }, [3158] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6010), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7860), [aux_sym__variadic_arguments_attributes] = STATE(5163), [sym_variadic_arguments_attribute] = STATE(5163), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7620), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3159] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7761), [aux_sym__variadic_arguments_attributes] = STATE(5201), [sym_variadic_arguments_attribute] = STATE(5201), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7622), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3160] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7961), [aux_sym__variadic_arguments_attributes] = STATE(5175), [sym_variadic_arguments_attribute] = STATE(5175), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7624), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3161] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(5736), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(8058), [aux_sym__variadic_arguments_attributes] = STATE(5155), [sym_variadic_arguments_attribute] = STATE(5155), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7626), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3162] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7697), [aux_sym__variadic_arguments_attributes] = STATE(5153), [sym_variadic_arguments_attribute] = STATE(5153), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7628), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3163] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7945), [aux_sym__variadic_arguments_attributes] = STATE(5172), [sym_variadic_arguments_attribute] = STATE(5172), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7630), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3164] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6067), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7804), [aux_sym__variadic_arguments_attributes] = STATE(5179), [sym_variadic_arguments_attribute] = STATE(5179), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7632), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3165] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7286), [aux_sym__variadic_arguments_attributes] = STATE(5195), [sym_variadic_arguments_attribute] = STATE(5195), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7634), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3166] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_ellipses] = STATE(7940), [aux_sym__variadic_arguments_attributes] = STATE(5189), [sym_variadic_arguments_attribute] = STATE(5189), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7636), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3167] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7535), [aux_sym__variadic_arguments_attributes] = STATE(5196), [sym_variadic_arguments_attribute] = STATE(5196), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7638), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3168] = { [sym_type] = STATE(4734), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4906), [sym_block_statement] = STATE(4065), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4065), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3673), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3169] = { [sym_type] = STATE(4736), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4836), [sym_block_statement] = STATE(6412), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(6412), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(6625), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3170] = { [sym_type] = STATE(4766), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4836), [sym_block_statement] = STATE(6412), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6412), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(6625), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3171] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7654), [aux_sym__variadic_arguments_attributes] = STATE(5170), [sym_variadic_arguments_attribute] = STATE(5170), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7640), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3172] = { [sym_type] = STATE(4717), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4875), [sym_block_statement] = STATE(3987), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3987), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3173] = { [sym_type] = STATE(4691), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4938), [sym_block_statement] = STATE(3987), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3987), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3174] = { [sym_type] = STATE(4743), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4899), [sym_block_statement] = STATE(4070), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(4070), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3673), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3175] = { [sym_type] = STATE(4710), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4890), [sym_block_statement] = STATE(3797), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3797), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3176] = { [sym_type] = STATE(4780), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4970), [sym_block_statement] = STATE(3791), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3791), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3177] = { [sym_type] = STATE(4712), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4890), [sym_block_statement] = STATE(3797), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3797), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3178] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7560), [aux_sym__variadic_arguments_attributes] = STATE(5142), [sym_variadic_arguments_attribute] = STATE(5142), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7642), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3179] = { [sym_type] = STATE(4778), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4970), [sym_block_statement] = STATE(3791), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3791), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3180] = { [sym_type] = STATE(4745), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4899), [sym_block_statement] = STATE(4070), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(4070), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3673), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3181] = { [sym_type] = STATE(4688), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4819), [sym_block_statement] = STATE(3948), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3948), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3182] = { [sym_type] = STATE(4746), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4854), [sym_block_statement] = STATE(3797), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3797), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3183] = { [sym_arguments] = STATE(3121), [sym_template_arguments] = STATE(3136), [sym_identifier] = ACTIONS(6647), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6649), [anon_sym_BANG] = ACTIONS(7644), [anon_sym_LPAREN] = ACTIONS(7497), [anon_sym_AT] = ACTIONS(6649), [sym_bool] = ACTIONS(6647), [sym_byte] = ACTIONS(6647), [sym_ubyte] = ACTIONS(6647), [sym_char] = ACTIONS(6647), [sym_short] = ACTIONS(6647), [sym_ushort] = ACTIONS(6647), [sym_int] = ACTIONS(6647), [sym_uint] = ACTIONS(6647), [sym_long] = ACTIONS(6647), [sym_ulong] = ACTIONS(6647), [sym_cent] = ACTIONS(6647), [sym_ucent] = ACTIONS(6647), [sym_wchar] = ACTIONS(6647), [sym_dchar] = ACTIONS(6647), [sym_float] = ACTIONS(6647), [sym_double] = ACTIONS(6647), [sym_real] = ACTIONS(6647), [sym_ifloat] = ACTIONS(6647), [sym_idouble] = ACTIONS(6647), [sym_ireal] = ACTIONS(6647), [sym_cfloat] = ACTIONS(6647), [sym_cdouble] = ACTIONS(6647), [sym_creal] = ACTIONS(6647), [sym_size_t] = ACTIONS(6647), [sym_ptrdiff_t] = ACTIONS(6647), [sym_string] = ACTIONS(6647), [sym_cstring] = ACTIONS(6647), [sym_dstring] = ACTIONS(6647), [sym_wstring] = ACTIONS(6647), [sym_noreturn] = ACTIONS(6647), [sym_abstract] = ACTIONS(6647), [sym_align] = ACTIONS(6647), [sym_auto] = ACTIONS(6647), [sym_const] = ACTIONS(6647), [sym_delegate] = ACTIONS(6647), [sym_deprecated] = ACTIONS(6647), [sym_do] = ACTIONS(6647), [sym_enum] = ACTIONS(6647), [sym_extern] = ACTIONS(6647), [sym_final] = ACTIONS(6647), [sym_function] = ACTIONS(6647), [sym_immutable] = ACTIONS(6647), [sym_in] = ACTIONS(6647), [sym_inout] = ACTIONS(6647), [sym_lazy] = ACTIONS(6647), [sym_mixin] = ACTIONS(6647), [sym_nothrow] = ACTIONS(6647), [sym_out] = ACTIONS(6647), [sym_override] = ACTIONS(6647), [sym_pure] = ACTIONS(6647), [sym_ref] = ACTIONS(6647), [sym_return] = ACTIONS(6647), [sym_scope] = ACTIONS(6647), [sym_shared] = ACTIONS(6647), [sym_static] = ACTIONS(6647), [sym_synchronized] = ACTIONS(6647), [sym_typeof] = ACTIONS(6647), [sym_gshared] = ACTIONS(6647), [sym_traits] = ACTIONS(6647), [sym_vector] = ACTIONS(6647), [sym_void] = ACTIONS(6647), [sym_directive] = ACTIONS(3), }, [3184] = { [sym_type] = STATE(4693), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4867), [sym_block_statement] = STATE(6440), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(6440), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(6625), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3185] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7788), [aux_sym__variadic_arguments_attributes] = STATE(5168), [sym_variadic_arguments_attribute] = STATE(5168), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7646), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3186] = { [sym_type] = STATE(4741), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4819), [sym_block_statement] = STATE(3948), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3948), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3187] = { [sym_type] = STATE(4733), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4906), [sym_block_statement] = STATE(4065), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(4065), [sym__function_contract] = STATE(5010), [sym__in_out_contract_expression] = STATE(5010), [sym__in_out_statement] = STATE(5010), [sym_in_contract_expression] = STATE(5010), [sym_out_contract_expression] = STATE(5010), [sym_in_statement] = STATE(5010), [sym_out_statement] = STATE(5010), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5010), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3645), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3673), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3188] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7507), [aux_sym__variadic_arguments_attributes] = STATE(5166), [sym_variadic_arguments_attribute] = STATE(5166), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7648), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3189] = { [sym_type] = STATE(4728), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4855), [sym_block_statement] = STATE(3791), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3791), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3190] = { [sym_type] = STATE(4680), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4908), [sym_block_statement] = STATE(3797), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3797), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3191] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7492), [aux_sym__variadic_arguments_attributes] = STATE(5177), [sym_variadic_arguments_attribute] = STATE(5177), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7650), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3192] = { [sym_type] = STATE(4730), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4854), [sym_block_statement] = STATE(3797), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3797), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3193] = { [sym_type] = STATE(4697), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4867), [sym_block_statement] = STATE(6440), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(6440), [sym__function_contract] = STATE(5006), [sym__in_out_contract_expression] = STATE(5006), [sym__in_out_statement] = STATE(5006), [sym_in_contract_expression] = STATE(5006), [sym_out_contract_expression] = STATE(5006), [sym_in_statement] = STATE(5006), [sym_out_statement] = STATE(5006), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5006), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6613), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(6625), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3194] = { [sym_type] = STATE(4724), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4875), [sym_block_statement] = STATE(3987), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3987), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3195] = { [sym_type] = STATE(4719), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4818), [sym_block_statement] = STATE(3948), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3948), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3196] = { [sym_type] = STATE(4678), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4977), [sym_block_statement] = STATE(3791), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3791), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3197] = { [sym_type] = STATE(4694), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4938), [sym_block_statement] = STATE(3987), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3987), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3198] = { [sym_type] = STATE(4674), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4818), [sym_block_statement] = STATE(3948), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3948), [sym__function_contract] = STATE(5034), [sym__in_out_contract_expression] = STATE(5034), [sym__in_out_statement] = STATE(5034), [sym_in_contract_expression] = STATE(5034), [sym_out_contract_expression] = STATE(5034), [sym_in_statement] = STATE(5034), [sym_out_statement] = STATE(5034), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5034), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3251), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(3281), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3199] = { [sym_type] = STATE(4683), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4908), [sym_block_statement] = STATE(3797), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3797), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3200] = { [sym_type] = STATE(5323), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3230), [sym_ellipses] = STATE(7068), [aux_sym__variadic_arguments_attributes] = STATE(5149), [sym_variadic_arguments_attribute] = STATE(5149), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3230), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(3133), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3201] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_ellipses] = STATE(7496), [aux_sym__variadic_arguments_attributes] = STATE(5184), [sym_variadic_arguments_attribute] = STATE(5184), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7191), [anon_sym_DOT_DOT_DOT] = ACTIONS(3131), [anon_sym_RPAREN] = ACTIONS(7652), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(3141), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(3141), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3153), [sym_scope] = ACTIONS(3153), [sym_shared] = ACTIONS(3141), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3202] = { [sym_type] = STATE(4679), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_member_attributes] = STATE(4977), [sym_block_statement] = STATE(3791), [sym__parameters] = STATE(4651), [sym__specified_function_body] = STATE(3791), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(6615), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3203] = { [sym_type] = STATE(4726), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(5085), [sym_vector_type] = STATE(5085), [sym__builtin_type] = STATE(5085), [sym__qualified_id] = STATE(5085), [sym_typeof_expression] = STATE(5052), [sym_mixin_expression] = STATE(5085), [sym__parameter_with_attributes] = STATE(4855), [sym_block_statement] = STATE(3791), [sym_parameters] = STATE(5057), [sym__specified_function_body] = STATE(3791), [sym__function_contract] = STATE(5042), [sym__in_out_contract_expression] = STATE(5042), [sym__in_out_statement] = STATE(5042), [sym_in_contract_expression] = STATE(5042), [sym_out_contract_expression] = STATE(5042), [sym_in_statement] = STATE(5042), [sym_out_statement] = STATE(5042), [sym_template_instance] = STATE(5047), [sym_traits_expression] = STATE(5085), [aux_sym_type_repeat1] = STATE(3833), [aux_sym_function_body_repeat1] = STATE(5042), [sym_identifier] = ACTIONS(7499), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(1032), [anon_sym_DOT] = ACTIONS(7501), [anon_sym_LPAREN] = ACTIONS(7503), [sym_bool] = ACTIONS(7505), [sym_byte] = ACTIONS(7505), [sym_ubyte] = ACTIONS(7505), [sym_char] = ACTIONS(7505), [sym_short] = ACTIONS(7505), [sym_ushort] = ACTIONS(7505), [sym_int] = ACTIONS(7505), [sym_uint] = ACTIONS(7505), [sym_long] = ACTIONS(7505), [sym_ulong] = ACTIONS(7505), [sym_cent] = ACTIONS(7505), [sym_ucent] = ACTIONS(7505), [sym_wchar] = ACTIONS(7505), [sym_dchar] = ACTIONS(7505), [sym_float] = ACTIONS(7505), [sym_double] = ACTIONS(7505), [sym_real] = ACTIONS(7505), [sym_ifloat] = ACTIONS(7505), [sym_idouble] = ACTIONS(7505), [sym_ireal] = ACTIONS(7505), [sym_cfloat] = ACTIONS(7505), [sym_cdouble] = ACTIONS(7505), [sym_creal] = ACTIONS(7505), [sym_size_t] = ACTIONS(7505), [sym_ptrdiff_t] = ACTIONS(7505), [sym_string] = ACTIONS(7505), [sym_cstring] = ACTIONS(7505), [sym_dstring] = ACTIONS(7505), [sym_wstring] = ACTIONS(7505), [sym_noreturn] = ACTIONS(7505), [sym_const] = ACTIONS(2964), [sym_do] = ACTIONS(2966), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(155), [sym_inout] = ACTIONS(2964), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(167), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(67), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(77), [sym_void] = ACTIONS(7505), [sym_directive] = ACTIONS(3), }, [3204] = { [sym_identifier] = ACTIONS(3060), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(3062), [anon_sym_DOT] = ACTIONS(3062), [anon_sym_LPAREN] = ACTIONS(3062), [anon_sym_AT] = ACTIONS(3062), [sym_bool] = ACTIONS(3060), [sym_byte] = ACTIONS(3060), [sym_ubyte] = ACTIONS(3060), [sym_char] = ACTIONS(3060), [sym_short] = ACTIONS(3060), [sym_ushort] = ACTIONS(3060), [sym_int] = ACTIONS(3060), [sym_uint] = ACTIONS(3060), [sym_long] = ACTIONS(3060), [sym_ulong] = ACTIONS(3060), [sym_cent] = ACTIONS(3060), [sym_ucent] = ACTIONS(3060), [sym_wchar] = ACTIONS(3060), [sym_dchar] = ACTIONS(3060), [sym_float] = ACTIONS(3060), [sym_double] = ACTIONS(3060), [sym_real] = ACTIONS(3060), [sym_ifloat] = ACTIONS(3060), [sym_idouble] = ACTIONS(3060), [sym_ireal] = ACTIONS(3060), [sym_cfloat] = ACTIONS(3060), [sym_cdouble] = ACTIONS(3060), [sym_creal] = ACTIONS(3060), [sym_size_t] = ACTIONS(3060), [sym_ptrdiff_t] = ACTIONS(3060), [sym_string] = ACTIONS(3060), [sym_cstring] = ACTIONS(3060), [sym_dstring] = ACTIONS(3060), [sym_wstring] = ACTIONS(3060), [sym_noreturn] = ACTIONS(3060), [sym_abstract] = ACTIONS(3060), [sym_alias] = ACTIONS(3060), [sym_align] = ACTIONS(3060), [sym_auto] = ACTIONS(3060), [sym_const] = ACTIONS(3060), [sym_delegate] = ACTIONS(3060), [sym_deprecated] = ACTIONS(3060), [sym_do] = ACTIONS(3060), [sym_enum] = ACTIONS(3060), [sym_extern] = ACTIONS(3060), [sym_final] = ACTIONS(3060), [sym_function] = ACTIONS(3060), [sym_immutable] = ACTIONS(3060), [sym_in] = ACTIONS(3060), [sym_inout] = ACTIONS(3060), [sym_lazy] = ACTIONS(3060), [sym_mixin] = ACTIONS(3060), [sym_nothrow] = ACTIONS(3060), [sym_out] = ACTIONS(3060), [sym_override] = ACTIONS(3060), [sym_pure] = ACTIONS(3060), [sym_ref] = ACTIONS(3060), [sym_return] = ACTIONS(3060), [sym_scope] = ACTIONS(3060), [sym_shared] = ACTIONS(3060), [sym_static] = ACTIONS(3060), [sym_synchronized] = ACTIONS(3060), [sym_typeof] = ACTIONS(3060), [sym_gshared] = ACTIONS(3060), [sym_traits] = ACTIONS(3060), [sym_vector] = ACTIONS(3060), [sym_void] = ACTIONS(3060), [sym_directive] = ACTIONS(3), }, [3205] = { [sym_at_attribute] = STATE(3246), [sym__function_attribute_kwd] = STATE(3246), [sym__function_attribute] = STATE(3246), [sym_member_function_attribute] = STATE(3207), [aux_sym_alias_declaration_repeat2] = STATE(3207), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(7654), [anon_sym_SLASH] = ACTIONS(7656), [anon_sym_SLASH_EQ] = ACTIONS(7654), [anon_sym_DOT] = ACTIONS(7654), [anon_sym_AMP] = ACTIONS(7656), [anon_sym_AMP_EQ] = ACTIONS(7654), [anon_sym_AMP_AMP] = ACTIONS(7654), [anon_sym_PIPE] = ACTIONS(7656), [anon_sym_PIPE_EQ] = ACTIONS(7654), [anon_sym_PIPE_PIPE] = ACTIONS(7654), [anon_sym_DASH] = ACTIONS(7656), [anon_sym_DASH_EQ] = ACTIONS(7654), [anon_sym_DASH_DASH] = ACTIONS(7654), [anon_sym_PLUS] = ACTIONS(7656), [anon_sym_PLUS_EQ] = ACTIONS(7654), [anon_sym_PLUS_PLUS] = ACTIONS(7654), [anon_sym_LT] = ACTIONS(7656), [anon_sym_LT_EQ] = ACTIONS(7654), [anon_sym_LT_LT] = ACTIONS(7656), [anon_sym_LT_LT_EQ] = ACTIONS(7654), [anon_sym_GT] = ACTIONS(7656), [anon_sym_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT] = ACTIONS(7656), [anon_sym_GT_GT_GT] = ACTIONS(7656), [anon_sym_BANG_EQ] = ACTIONS(7654), [anon_sym_LPAREN] = ACTIONS(7654), [anon_sym_RPAREN] = ACTIONS(7654), [anon_sym_LBRACK] = ACTIONS(7654), [anon_sym_RBRACK] = ACTIONS(7654), [anon_sym_QMARK] = ACTIONS(7654), [anon_sym_COMMA] = ACTIONS(7654), [anon_sym_SEMI] = ACTIONS(7654), [anon_sym_COLON] = ACTIONS(7654), [anon_sym_EQ] = ACTIONS(7656), [anon_sym_EQ_EQ] = ACTIONS(7654), [anon_sym_STAR] = ACTIONS(7656), [anon_sym_STAR_EQ] = ACTIONS(7654), [anon_sym_PERCENT] = ACTIONS(7656), [anon_sym_PERCENT_EQ] = ACTIONS(7654), [anon_sym_CARET] = ACTIONS(7656), [anon_sym_CARET_EQ] = ACTIONS(7654), [anon_sym_CARET_CARET] = ACTIONS(7656), [anon_sym_CARET_CARET_EQ] = ACTIONS(7654), [anon_sym_TILDE] = ACTIONS(7656), [anon_sym_TILDE_EQ] = ACTIONS(7654), [anon_sym_AT] = ACTIONS(7658), [sym_const] = ACTIONS(7660), [sym_delegate] = ACTIONS(7654), [sym_function] = ACTIONS(7654), [sym_immutable] = ACTIONS(7660), [sym_in] = ACTIONS(7656), [sym_inout] = ACTIONS(7660), [sym_is] = ACTIONS(7654), [sym_nothrow] = ACTIONS(7660), [sym_pure] = ACTIONS(7660), [sym_return] = ACTIONS(7660), [sym_scope] = ACTIONS(7660), [sym_shared] = ACTIONS(7660), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7654), [sym_not_is] = ACTIONS(7654), }, [3206] = { [sym_at_attribute] = STATE(3246), [sym__function_attribute_kwd] = STATE(3246), [sym__function_attribute] = STATE(3246), [sym_member_function_attribute] = STATE(3206), [aux_sym_alias_declaration_repeat2] = STATE(3206), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(7662), [anon_sym_SLASH] = ACTIONS(7664), [anon_sym_SLASH_EQ] = ACTIONS(7662), [anon_sym_DOT] = ACTIONS(7662), [anon_sym_AMP] = ACTIONS(7664), [anon_sym_AMP_EQ] = ACTIONS(7662), [anon_sym_AMP_AMP] = ACTIONS(7662), [anon_sym_PIPE] = ACTIONS(7664), [anon_sym_PIPE_EQ] = ACTIONS(7662), [anon_sym_PIPE_PIPE] = ACTIONS(7662), [anon_sym_DASH] = ACTIONS(7664), [anon_sym_DASH_EQ] = ACTIONS(7662), [anon_sym_DASH_DASH] = ACTIONS(7662), [anon_sym_PLUS] = ACTIONS(7664), [anon_sym_PLUS_EQ] = ACTIONS(7662), [anon_sym_PLUS_PLUS] = ACTIONS(7662), [anon_sym_LT] = ACTIONS(7664), [anon_sym_LT_EQ] = ACTIONS(7662), [anon_sym_LT_LT] = ACTIONS(7664), [anon_sym_LT_LT_EQ] = ACTIONS(7662), [anon_sym_GT] = ACTIONS(7664), [anon_sym_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT] = ACTIONS(7664), [anon_sym_GT_GT_GT] = ACTIONS(7664), [anon_sym_BANG_EQ] = ACTIONS(7662), [anon_sym_LPAREN] = ACTIONS(7662), [anon_sym_RPAREN] = ACTIONS(7662), [anon_sym_LBRACK] = ACTIONS(7662), [anon_sym_RBRACK] = ACTIONS(7662), [anon_sym_QMARK] = ACTIONS(7662), [anon_sym_COMMA] = ACTIONS(7662), [anon_sym_SEMI] = ACTIONS(7662), [anon_sym_COLON] = ACTIONS(7662), [anon_sym_EQ] = ACTIONS(7664), [anon_sym_EQ_EQ] = ACTIONS(7662), [anon_sym_STAR] = ACTIONS(7664), [anon_sym_STAR_EQ] = ACTIONS(7662), [anon_sym_PERCENT] = ACTIONS(7664), [anon_sym_PERCENT_EQ] = ACTIONS(7662), [anon_sym_CARET] = ACTIONS(7664), [anon_sym_CARET_EQ] = ACTIONS(7662), [anon_sym_CARET_CARET] = ACTIONS(7664), [anon_sym_CARET_CARET_EQ] = ACTIONS(7662), [anon_sym_TILDE] = ACTIONS(7664), [anon_sym_TILDE_EQ] = ACTIONS(7662), [anon_sym_AT] = ACTIONS(7666), [sym_const] = ACTIONS(7669), [sym_delegate] = ACTIONS(7662), [sym_function] = ACTIONS(7662), [sym_immutable] = ACTIONS(7669), [sym_in] = ACTIONS(7664), [sym_inout] = ACTIONS(7669), [sym_is] = ACTIONS(7662), [sym_nothrow] = ACTIONS(7669), [sym_pure] = ACTIONS(7669), [sym_return] = ACTIONS(7669), [sym_scope] = ACTIONS(7669), [sym_shared] = ACTIONS(7669), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7662), [sym_not_is] = ACTIONS(7662), }, [3207] = { [sym_at_attribute] = STATE(3246), [sym__function_attribute_kwd] = STATE(3246), [sym__function_attribute] = STATE(3246), [sym_member_function_attribute] = STATE(3206), [aux_sym_alias_declaration_repeat2] = STATE(3206), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(7672), [anon_sym_SLASH] = ACTIONS(7674), [anon_sym_SLASH_EQ] = ACTIONS(7672), [anon_sym_DOT] = ACTIONS(7672), [anon_sym_AMP] = ACTIONS(7674), [anon_sym_AMP_EQ] = ACTIONS(7672), [anon_sym_AMP_AMP] = ACTIONS(7672), [anon_sym_PIPE] = ACTIONS(7674), [anon_sym_PIPE_EQ] = ACTIONS(7672), [anon_sym_PIPE_PIPE] = ACTIONS(7672), [anon_sym_DASH] = ACTIONS(7674), [anon_sym_DASH_EQ] = ACTIONS(7672), [anon_sym_DASH_DASH] = ACTIONS(7672), [anon_sym_PLUS] = ACTIONS(7674), [anon_sym_PLUS_EQ] = ACTIONS(7672), [anon_sym_PLUS_PLUS] = ACTIONS(7672), [anon_sym_LT] = ACTIONS(7674), [anon_sym_LT_EQ] = ACTIONS(7672), [anon_sym_LT_LT] = ACTIONS(7674), [anon_sym_LT_LT_EQ] = ACTIONS(7672), [anon_sym_GT] = ACTIONS(7674), [anon_sym_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT] = ACTIONS(7674), [anon_sym_GT_GT_GT] = ACTIONS(7674), [anon_sym_BANG_EQ] = ACTIONS(7672), [anon_sym_LPAREN] = ACTIONS(7672), [anon_sym_RPAREN] = ACTIONS(7672), [anon_sym_LBRACK] = ACTIONS(7672), [anon_sym_RBRACK] = ACTIONS(7672), [anon_sym_QMARK] = ACTIONS(7672), [anon_sym_COMMA] = ACTIONS(7672), [anon_sym_SEMI] = ACTIONS(7672), [anon_sym_COLON] = ACTIONS(7672), [anon_sym_EQ] = ACTIONS(7674), [anon_sym_EQ_EQ] = ACTIONS(7672), [anon_sym_STAR] = ACTIONS(7674), [anon_sym_STAR_EQ] = ACTIONS(7672), [anon_sym_PERCENT] = ACTIONS(7674), [anon_sym_PERCENT_EQ] = ACTIONS(7672), [anon_sym_CARET] = ACTIONS(7674), [anon_sym_CARET_EQ] = ACTIONS(7672), [anon_sym_CARET_CARET] = ACTIONS(7674), [anon_sym_CARET_CARET_EQ] = ACTIONS(7672), [anon_sym_TILDE] = ACTIONS(7674), [anon_sym_TILDE_EQ] = ACTIONS(7672), [anon_sym_AT] = ACTIONS(7658), [sym_const] = ACTIONS(7660), [sym_delegate] = ACTIONS(7672), [sym_function] = ACTIONS(7672), [sym_immutable] = ACTIONS(7660), [sym_in] = ACTIONS(7674), [sym_inout] = ACTIONS(7660), [sym_is] = ACTIONS(7672), [sym_nothrow] = ACTIONS(7660), [sym_pure] = ACTIONS(7660), [sym_return] = ACTIONS(7660), [sym_scope] = ACTIONS(7660), [sym_shared] = ACTIONS(7660), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7672), [sym_not_is] = ACTIONS(7672), }, [3208] = { [sym_type] = STATE(6542), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_mixin_expression] = STATE(4997), [sym_type_specialization] = STATE(6537), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_super] = ACTIONS(7676), [sym_class] = ACTIONS(7676), [sym_const] = ACTIONS(7678), [sym_delegate] = ACTIONS(7676), [sym_enum] = ACTIONS(7676), [sym_function] = ACTIONS(7676), [sym_immutable] = ACTIONS(7678), [sym_inout] = ACTIONS(7678), [sym_interface] = ACTIONS(7676), [sym_mixin] = ACTIONS(6631), [sym_module] = ACTIONS(7676), [sym_package] = ACTIONS(7676), [sym_return] = ACTIONS(7676), [sym_shared] = ACTIONS(7678), [sym_struct] = ACTIONS(7676), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(7676), [sym_parameters_] = ACTIONS(7676), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(7680), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3209] = { [sym_arguments] = STATE(3271), [sym_template_arguments] = STATE(3258), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6649), [anon_sym_SLASH] = ACTIONS(6647), [anon_sym_SLASH_EQ] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6649), [anon_sym_AMP] = ACTIONS(6647), [anon_sym_AMP_EQ] = ACTIONS(6649), [anon_sym_AMP_AMP] = ACTIONS(6649), [anon_sym_PIPE] = ACTIONS(6647), [anon_sym_PIPE_EQ] = ACTIONS(6649), [anon_sym_PIPE_PIPE] = ACTIONS(6649), [anon_sym_DASH] = ACTIONS(6647), [anon_sym_DASH_EQ] = ACTIONS(6649), [anon_sym_DASH_DASH] = ACTIONS(6649), [anon_sym_PLUS] = ACTIONS(6647), [anon_sym_PLUS_EQ] = ACTIONS(6649), [anon_sym_PLUS_PLUS] = ACTIONS(6649), [anon_sym_LT] = ACTIONS(6647), [anon_sym_LT_EQ] = ACTIONS(6649), [anon_sym_LT_LT] = ACTIONS(6647), [anon_sym_LT_LT_EQ] = ACTIONS(6649), [anon_sym_GT] = ACTIONS(6647), [anon_sym_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT] = ACTIONS(6647), [anon_sym_GT_GT_GT] = ACTIONS(6647), [anon_sym_BANG] = ACTIONS(7682), [anon_sym_BANG_EQ] = ACTIONS(6649), [anon_sym_LPAREN] = ACTIONS(7684), [anon_sym_RPAREN] = ACTIONS(6649), [anon_sym_LBRACK] = ACTIONS(6649), [anon_sym_RBRACK] = ACTIONS(6649), [anon_sym_QMARK] = ACTIONS(6649), [anon_sym_COMMA] = ACTIONS(6649), [anon_sym_SEMI] = ACTIONS(6649), [anon_sym_COLON] = ACTIONS(6649), [anon_sym_EQ] = ACTIONS(6647), [anon_sym_EQ_EQ] = ACTIONS(6649), [anon_sym_STAR] = ACTIONS(6647), [anon_sym_STAR_EQ] = ACTIONS(6649), [anon_sym_PERCENT] = ACTIONS(6647), [anon_sym_PERCENT_EQ] = ACTIONS(6649), [anon_sym_CARET] = ACTIONS(6647), [anon_sym_CARET_EQ] = ACTIONS(6649), [anon_sym_CARET_CARET] = ACTIONS(6647), [anon_sym_CARET_CARET_EQ] = ACTIONS(6649), [anon_sym_TILDE] = ACTIONS(6647), [anon_sym_TILDE_EQ] = ACTIONS(6649), [anon_sym_AT] = ACTIONS(6649), [sym_const] = ACTIONS(6649), [sym_delegate] = ACTIONS(6649), [sym_function] = ACTIONS(6649), [sym_immutable] = ACTIONS(6649), [sym_in] = ACTIONS(6647), [sym_inout] = ACTIONS(6649), [sym_is] = ACTIONS(6649), [sym_nothrow] = ACTIONS(6649), [sym_pure] = ACTIONS(6649), [sym_return] = ACTIONS(6649), [sym_scope] = ACTIONS(6649), [sym_shared] = ACTIONS(6649), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(6649), [sym_not_is] = ACTIONS(6649), }, [3210] = { [sym_type] = STATE(6542), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_mixin_expression] = STATE(4997), [sym_type_specialization] = STATE(6548), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_super] = ACTIONS(7676), [sym_class] = ACTIONS(7676), [sym_const] = ACTIONS(7678), [sym_delegate] = ACTIONS(7676), [sym_enum] = ACTIONS(7676), [sym_function] = ACTIONS(7676), [sym_immutable] = ACTIONS(7678), [sym_inout] = ACTIONS(7678), [sym_interface] = ACTIONS(7676), [sym_mixin] = ACTIONS(6631), [sym_module] = ACTIONS(7676), [sym_package] = ACTIONS(7676), [sym_return] = ACTIONS(7676), [sym_shared] = ACTIONS(7678), [sym_struct] = ACTIONS(7676), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(7676), [sym_parameters_] = ACTIONS(7676), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(7680), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3211] = { [sym_at_attribute] = STATE(3311), [sym__function_attribute_kwd] = STATE(3311), [sym__function_attribute] = STATE(3311), [sym_member_function_attribute] = STATE(3212), [aux_sym_alias_declaration_repeat2] = STATE(3212), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(7656), [anon_sym_SLASH_EQ] = ACTIONS(7654), [anon_sym_DOT] = ACTIONS(7656), [anon_sym_DOT_DOT] = ACTIONS(7654), [anon_sym_AMP] = ACTIONS(7656), [anon_sym_AMP_EQ] = ACTIONS(7654), [anon_sym_AMP_AMP] = ACTIONS(7654), [anon_sym_PIPE] = ACTIONS(7656), [anon_sym_PIPE_EQ] = ACTIONS(7654), [anon_sym_PIPE_PIPE] = ACTIONS(7654), [anon_sym_DASH] = ACTIONS(7656), [anon_sym_DASH_EQ] = ACTIONS(7654), [anon_sym_DASH_DASH] = ACTIONS(7654), [anon_sym_PLUS] = ACTIONS(7656), [anon_sym_PLUS_EQ] = ACTIONS(7654), [anon_sym_PLUS_PLUS] = ACTIONS(7654), [anon_sym_LT] = ACTIONS(7656), [anon_sym_LT_EQ] = ACTIONS(7654), [anon_sym_LT_LT] = ACTIONS(7656), [anon_sym_LT_LT_EQ] = ACTIONS(7654), [anon_sym_GT] = ACTIONS(7656), [anon_sym_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT] = ACTIONS(7656), [anon_sym_GT_GT_GT] = ACTIONS(7656), [anon_sym_BANG_EQ] = ACTIONS(7654), [anon_sym_LPAREN] = ACTIONS(7654), [anon_sym_RPAREN] = ACTIONS(7654), [anon_sym_LBRACK] = ACTIONS(7654), [anon_sym_RBRACK] = ACTIONS(7654), [anon_sym_QMARK] = ACTIONS(7654), [anon_sym_COMMA] = ACTIONS(7654), [anon_sym_EQ] = ACTIONS(7656), [anon_sym_EQ_EQ] = ACTIONS(7654), [anon_sym_STAR] = ACTIONS(7656), [anon_sym_STAR_EQ] = ACTIONS(7654), [anon_sym_PERCENT] = ACTIONS(7656), [anon_sym_PERCENT_EQ] = ACTIONS(7654), [anon_sym_CARET] = ACTIONS(7656), [anon_sym_CARET_EQ] = ACTIONS(7654), [anon_sym_CARET_CARET] = ACTIONS(7656), [anon_sym_CARET_CARET_EQ] = ACTIONS(7654), [anon_sym_TILDE] = ACTIONS(7656), [anon_sym_TILDE_EQ] = ACTIONS(7654), [anon_sym_AT] = ACTIONS(7686), [sym_const] = ACTIONS(7688), [sym_delegate] = ACTIONS(7654), [sym_function] = ACTIONS(7654), [sym_immutable] = ACTIONS(7688), [sym_in] = ACTIONS(7656), [sym_inout] = ACTIONS(7688), [sym_is] = ACTIONS(7654), [sym_nothrow] = ACTIONS(7688), [sym_pure] = ACTIONS(7688), [sym_return] = ACTIONS(7688), [sym_scope] = ACTIONS(7688), [sym_shared] = ACTIONS(7688), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7654), [sym_not_is] = ACTIONS(7654), }, [3212] = { [sym_at_attribute] = STATE(3311), [sym__function_attribute_kwd] = STATE(3311), [sym__function_attribute] = STATE(3311), [sym_member_function_attribute] = STATE(3216), [aux_sym_alias_declaration_repeat2] = STATE(3216), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(7674), [anon_sym_SLASH_EQ] = ACTIONS(7672), [anon_sym_DOT] = ACTIONS(7674), [anon_sym_DOT_DOT] = ACTIONS(7672), [anon_sym_AMP] = ACTIONS(7674), [anon_sym_AMP_EQ] = ACTIONS(7672), [anon_sym_AMP_AMP] = ACTIONS(7672), [anon_sym_PIPE] = ACTIONS(7674), [anon_sym_PIPE_EQ] = ACTIONS(7672), [anon_sym_PIPE_PIPE] = ACTIONS(7672), [anon_sym_DASH] = ACTIONS(7674), [anon_sym_DASH_EQ] = ACTIONS(7672), [anon_sym_DASH_DASH] = ACTIONS(7672), [anon_sym_PLUS] = ACTIONS(7674), [anon_sym_PLUS_EQ] = ACTIONS(7672), [anon_sym_PLUS_PLUS] = ACTIONS(7672), [anon_sym_LT] = ACTIONS(7674), [anon_sym_LT_EQ] = ACTIONS(7672), [anon_sym_LT_LT] = ACTIONS(7674), [anon_sym_LT_LT_EQ] = ACTIONS(7672), [anon_sym_GT] = ACTIONS(7674), [anon_sym_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT] = ACTIONS(7674), [anon_sym_GT_GT_GT] = ACTIONS(7674), [anon_sym_BANG_EQ] = ACTIONS(7672), [anon_sym_LPAREN] = ACTIONS(7672), [anon_sym_RPAREN] = ACTIONS(7672), [anon_sym_LBRACK] = ACTIONS(7672), [anon_sym_RBRACK] = ACTIONS(7672), [anon_sym_QMARK] = ACTIONS(7672), [anon_sym_COMMA] = ACTIONS(7672), [anon_sym_EQ] = ACTIONS(7674), [anon_sym_EQ_EQ] = ACTIONS(7672), [anon_sym_STAR] = ACTIONS(7674), [anon_sym_STAR_EQ] = ACTIONS(7672), [anon_sym_PERCENT] = ACTIONS(7674), [anon_sym_PERCENT_EQ] = ACTIONS(7672), [anon_sym_CARET] = ACTIONS(7674), [anon_sym_CARET_EQ] = ACTIONS(7672), [anon_sym_CARET_CARET] = ACTIONS(7674), [anon_sym_CARET_CARET_EQ] = ACTIONS(7672), [anon_sym_TILDE] = ACTIONS(7674), [anon_sym_TILDE_EQ] = ACTIONS(7672), [anon_sym_AT] = ACTIONS(7686), [sym_const] = ACTIONS(7688), [sym_delegate] = ACTIONS(7672), [sym_function] = ACTIONS(7672), [sym_immutable] = ACTIONS(7688), [sym_in] = ACTIONS(7674), [sym_inout] = ACTIONS(7688), [sym_is] = ACTIONS(7672), [sym_nothrow] = ACTIONS(7688), [sym_pure] = ACTIONS(7688), [sym_return] = ACTIONS(7688), [sym_scope] = ACTIONS(7688), [sym_shared] = ACTIONS(7688), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7672), [sym_not_is] = ACTIONS(7672), }, [3213] = { [sym__parameter_with_member_attributes] = STATE(4950), [sym__parameters] = STATE(4651), [sym_identifier] = ACTIONS(7690), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7692), [anon_sym_DOT] = ACTIONS(7692), [anon_sym_LPAREN] = ACTIONS(7694), [anon_sym_AT] = ACTIONS(7692), [sym_bool] = ACTIONS(7690), [sym_byte] = ACTIONS(7690), [sym_ubyte] = ACTIONS(7690), [sym_char] = ACTIONS(7690), [sym_short] = ACTIONS(7690), [sym_ushort] = ACTIONS(7690), [sym_int] = ACTIONS(7690), [sym_uint] = ACTIONS(7690), [sym_long] = ACTIONS(7690), [sym_ulong] = ACTIONS(7690), [sym_cent] = ACTIONS(7690), [sym_ucent] = ACTIONS(7690), [sym_wchar] = ACTIONS(7690), [sym_dchar] = ACTIONS(7690), [sym_float] = ACTIONS(7690), [sym_double] = ACTIONS(7690), [sym_real] = ACTIONS(7690), [sym_ifloat] = ACTIONS(7690), [sym_idouble] = ACTIONS(7690), [sym_ireal] = ACTIONS(7690), [sym_cfloat] = ACTIONS(7690), [sym_cdouble] = ACTIONS(7690), [sym_creal] = ACTIONS(7690), [sym_size_t] = ACTIONS(7690), [sym_ptrdiff_t] = ACTIONS(7690), [sym_string] = ACTIONS(7690), [sym_cstring] = ACTIONS(7690), [sym_dstring] = ACTIONS(7690), [sym_wstring] = ACTIONS(7690), [sym_noreturn] = ACTIONS(7690), [sym_abstract] = ACTIONS(7690), [sym_align] = ACTIONS(7690), [sym_auto] = ACTIONS(7690), [sym_const] = ACTIONS(7690), [sym_delegate] = ACTIONS(7690), [sym_deprecated] = ACTIONS(7690), [sym_do] = ACTIONS(7690), [sym_extern] = ACTIONS(7690), [sym_final] = ACTIONS(7690), [sym_function] = ACTIONS(7690), [sym_immutable] = ACTIONS(7690), [sym_in] = ACTIONS(7690), [sym_inout] = ACTIONS(7690), [sym_mixin] = ACTIONS(7690), [sym_nothrow] = ACTIONS(7690), [sym_out] = ACTIONS(7690), [sym_override] = ACTIONS(7690), [sym_pure] = ACTIONS(7690), [sym_ref] = ACTIONS(7690), [sym_scope] = ACTIONS(7690), [sym_shared] = ACTIONS(7690), [sym_static] = ACTIONS(7690), [sym_synchronized] = ACTIONS(7690), [sym_typeof] = ACTIONS(7690), [sym_gshared] = ACTIONS(7690), [sym_traits] = ACTIONS(7690), [sym_vector] = ACTIONS(7690), [sym_void] = ACTIONS(7690), [sym_directive] = ACTIONS(3), }, [3214] = { [sym_type] = STATE(6542), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_mixin_expression] = STATE(4997), [sym_type_specialization] = STATE(6875), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_super] = ACTIONS(7676), [sym_class] = ACTIONS(7676), [sym_const] = ACTIONS(7678), [sym_delegate] = ACTIONS(7676), [sym_enum] = ACTIONS(7676), [sym_function] = ACTIONS(7676), [sym_immutable] = ACTIONS(7678), [sym_inout] = ACTIONS(7678), [sym_interface] = ACTIONS(7676), [sym_mixin] = ACTIONS(6631), [sym_module] = ACTIONS(7676), [sym_package] = ACTIONS(7676), [sym_return] = ACTIONS(7676), [sym_shared] = ACTIONS(7678), [sym_struct] = ACTIONS(7676), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(7676), [sym_parameters_] = ACTIONS(7676), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(7680), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3215] = { [sym_type] = STATE(6542), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_mixin_expression] = STATE(4997), [sym_type_specialization] = STATE(6890), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_super] = ACTIONS(7676), [sym_class] = ACTIONS(7676), [sym_const] = ACTIONS(7678), [sym_delegate] = ACTIONS(7676), [sym_enum] = ACTIONS(7676), [sym_function] = ACTIONS(7676), [sym_immutable] = ACTIONS(7678), [sym_inout] = ACTIONS(7678), [sym_interface] = ACTIONS(7676), [sym_mixin] = ACTIONS(6631), [sym_module] = ACTIONS(7676), [sym_package] = ACTIONS(7676), [sym_return] = ACTIONS(7676), [sym_shared] = ACTIONS(7678), [sym_struct] = ACTIONS(7676), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(7676), [sym_parameters_] = ACTIONS(7676), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(7680), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3216] = { [sym_at_attribute] = STATE(3311), [sym__function_attribute_kwd] = STATE(3311), [sym__function_attribute] = STATE(3311), [sym_member_function_attribute] = STATE(3216), [aux_sym_alias_declaration_repeat2] = STATE(3216), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(7664), [anon_sym_SLASH_EQ] = ACTIONS(7662), [anon_sym_DOT] = ACTIONS(7664), [anon_sym_DOT_DOT] = ACTIONS(7662), [anon_sym_AMP] = ACTIONS(7664), [anon_sym_AMP_EQ] = ACTIONS(7662), [anon_sym_AMP_AMP] = ACTIONS(7662), [anon_sym_PIPE] = ACTIONS(7664), [anon_sym_PIPE_EQ] = ACTIONS(7662), [anon_sym_PIPE_PIPE] = ACTIONS(7662), [anon_sym_DASH] = ACTIONS(7664), [anon_sym_DASH_EQ] = ACTIONS(7662), [anon_sym_DASH_DASH] = ACTIONS(7662), [anon_sym_PLUS] = ACTIONS(7664), [anon_sym_PLUS_EQ] = ACTIONS(7662), [anon_sym_PLUS_PLUS] = ACTIONS(7662), [anon_sym_LT] = ACTIONS(7664), [anon_sym_LT_EQ] = ACTIONS(7662), [anon_sym_LT_LT] = ACTIONS(7664), [anon_sym_LT_LT_EQ] = ACTIONS(7662), [anon_sym_GT] = ACTIONS(7664), [anon_sym_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT] = ACTIONS(7664), [anon_sym_GT_GT_GT] = ACTIONS(7664), [anon_sym_BANG_EQ] = ACTIONS(7662), [anon_sym_LPAREN] = ACTIONS(7662), [anon_sym_RPAREN] = ACTIONS(7662), [anon_sym_LBRACK] = ACTIONS(7662), [anon_sym_RBRACK] = ACTIONS(7662), [anon_sym_QMARK] = ACTIONS(7662), [anon_sym_COMMA] = ACTIONS(7662), [anon_sym_EQ] = ACTIONS(7664), [anon_sym_EQ_EQ] = ACTIONS(7662), [anon_sym_STAR] = ACTIONS(7664), [anon_sym_STAR_EQ] = ACTIONS(7662), [anon_sym_PERCENT] = ACTIONS(7664), [anon_sym_PERCENT_EQ] = ACTIONS(7662), [anon_sym_CARET] = ACTIONS(7664), [anon_sym_CARET_EQ] = ACTIONS(7662), [anon_sym_CARET_CARET] = ACTIONS(7664), [anon_sym_CARET_CARET_EQ] = ACTIONS(7662), [anon_sym_TILDE] = ACTIONS(7664), [anon_sym_TILDE_EQ] = ACTIONS(7662), [anon_sym_AT] = ACTIONS(7697), [sym_const] = ACTIONS(7700), [sym_delegate] = ACTIONS(7662), [sym_function] = ACTIONS(7662), [sym_immutable] = ACTIONS(7700), [sym_in] = ACTIONS(7664), [sym_inout] = ACTIONS(7700), [sym_is] = ACTIONS(7662), [sym_nothrow] = ACTIONS(7700), [sym_pure] = ACTIONS(7700), [sym_return] = ACTIONS(7700), [sym_scope] = ACTIONS(7700), [sym_shared] = ACTIONS(7700), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7662), [sym_not_is] = ACTIONS(7662), }, [3217] = { [sym_type] = STATE(6542), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_mixin_expression] = STATE(4997), [sym_type_specialization] = STATE(6478), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_super] = ACTIONS(7676), [sym_class] = ACTIONS(7676), [sym_const] = ACTIONS(7678), [sym_delegate] = ACTIONS(7676), [sym_enum] = ACTIONS(7676), [sym_function] = ACTIONS(7676), [sym_immutable] = ACTIONS(7678), [sym_inout] = ACTIONS(7678), [sym_interface] = ACTIONS(7676), [sym_mixin] = ACTIONS(6631), [sym_module] = ACTIONS(7676), [sym_package] = ACTIONS(7676), [sym_return] = ACTIONS(7676), [sym_shared] = ACTIONS(7678), [sym_struct] = ACTIONS(7676), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(7676), [sym_parameters_] = ACTIONS(7676), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(7680), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3218] = { [sym_type] = STATE(6542), [sym_type_ctor] = STATE(4242), [sym__type2] = STATE(4997), [sym_vector_type] = STATE(4997), [sym__builtin_type] = STATE(4997), [sym__qualified_id] = STATE(4997), [sym_typeof_expression] = STATE(5007), [sym_mixin_expression] = STATE(4997), [sym_type_specialization] = STATE(6519), [sym_template_instance] = STATE(5035), [sym_traits_expression] = STATE(4997), [aux_sym_type_repeat1] = STATE(3799), [sym_identifier] = ACTIONS(7237), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(13), [sym_bool] = ACTIONS(21), [sym_byte] = ACTIONS(21), [sym_ubyte] = ACTIONS(21), [sym_char] = ACTIONS(21), [sym_short] = ACTIONS(21), [sym_ushort] = ACTIONS(21), [sym_int] = ACTIONS(21), [sym_uint] = ACTIONS(21), [sym_long] = ACTIONS(21), [sym_ulong] = ACTIONS(21), [sym_cent] = ACTIONS(21), [sym_ucent] = ACTIONS(21), [sym_wchar] = ACTIONS(21), [sym_dchar] = ACTIONS(21), [sym_float] = ACTIONS(21), [sym_double] = ACTIONS(21), [sym_real] = ACTIONS(21), [sym_ifloat] = ACTIONS(21), [sym_idouble] = ACTIONS(21), [sym_ireal] = ACTIONS(21), [sym_cfloat] = ACTIONS(21), [sym_cdouble] = ACTIONS(21), [sym_creal] = ACTIONS(21), [sym_size_t] = ACTIONS(21), [sym_ptrdiff_t] = ACTIONS(21), [sym_string] = ACTIONS(21), [sym_cstring] = ACTIONS(21), [sym_dstring] = ACTIONS(21), [sym_wstring] = ACTIONS(21), [sym_noreturn] = ACTIONS(21), [sym_super] = ACTIONS(7676), [sym_class] = ACTIONS(7676), [sym_const] = ACTIONS(7678), [sym_delegate] = ACTIONS(7676), [sym_enum] = ACTIONS(7676), [sym_function] = ACTIONS(7676), [sym_immutable] = ACTIONS(7678), [sym_inout] = ACTIONS(7678), [sym_interface] = ACTIONS(7676), [sym_mixin] = ACTIONS(6631), [sym_module] = ACTIONS(7676), [sym_package] = ACTIONS(7676), [sym_return] = ACTIONS(7676), [sym_shared] = ACTIONS(7678), [sym_struct] = ACTIONS(7676), [sym_typeof] = ACTIONS(67), [sym_union] = ACTIONS(7676), [sym_parameters_] = ACTIONS(7676), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(7680), [sym_void] = ACTIONS(21), [sym_directive] = ACTIONS(3), }, [3219] = { [sym_type] = STATE(5472), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter] = STATE(6833), [sym_parameter_attribute] = STATE(3220), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3220), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7703), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(2964), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3143), [sym_scope] = ACTIONS(3143), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3220] = { [sym_type] = STATE(5416), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3578), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3578), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7703), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(2964), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3143), [sym_scope] = ACTIONS(3143), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3221] = { [sym_identifier] = ACTIONS(6985), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6987), [anon_sym_DOT] = ACTIONS(6987), [anon_sym_LPAREN] = ACTIONS(6987), [anon_sym_AT] = ACTIONS(6987), [sym_bool] = ACTIONS(6985), [sym_byte] = ACTIONS(6985), [sym_ubyte] = ACTIONS(6985), [sym_char] = ACTIONS(6985), [sym_short] = ACTIONS(6985), [sym_ushort] = ACTIONS(6985), [sym_int] = ACTIONS(6985), [sym_uint] = ACTIONS(6985), [sym_long] = ACTIONS(6985), [sym_ulong] = ACTIONS(6985), [sym_cent] = ACTIONS(6985), [sym_ucent] = ACTIONS(6985), [sym_wchar] = ACTIONS(6985), [sym_dchar] = ACTIONS(6985), [sym_float] = ACTIONS(6985), [sym_double] = ACTIONS(6985), [sym_real] = ACTIONS(6985), [sym_ifloat] = ACTIONS(6985), [sym_idouble] = ACTIONS(6985), [sym_ireal] = ACTIONS(6985), [sym_cfloat] = ACTIONS(6985), [sym_cdouble] = ACTIONS(6985), [sym_creal] = ACTIONS(6985), [sym_size_t] = ACTIONS(6985), [sym_ptrdiff_t] = ACTIONS(6985), [sym_string] = ACTIONS(6985), [sym_cstring] = ACTIONS(6985), [sym_dstring] = ACTIONS(6985), [sym_wstring] = ACTIONS(6985), [sym_noreturn] = ACTIONS(6985), [sym_abstract] = ACTIONS(6985), [sym_align] = ACTIONS(6985), [sym_auto] = ACTIONS(6985), [sym_const] = ACTIONS(6985), [sym_delegate] = ACTIONS(6985), [sym_deprecated] = ACTIONS(6985), [sym_do] = ACTIONS(6985), [sym_enum] = ACTIONS(6985), [sym_extern] = ACTIONS(6985), [sym_final] = ACTIONS(6985), [sym_function] = ACTIONS(6985), [sym_immutable] = ACTIONS(6985), [sym_in] = ACTIONS(6985), [sym_inout] = ACTIONS(6985), [sym_mixin] = ACTIONS(6985), [sym_nothrow] = ACTIONS(6985), [sym_out] = ACTIONS(6985), [sym_override] = ACTIONS(6985), [sym_pure] = ACTIONS(6985), [sym_ref] = ACTIONS(6985), [sym_scope] = ACTIONS(6985), [sym_shared] = ACTIONS(6985), [sym_static] = ACTIONS(6985), [sym_synchronized] = ACTIONS(6985), [sym_typeof] = ACTIONS(6985), [sym_gshared] = ACTIONS(6985), [sym_traits] = ACTIONS(6985), [sym_vector] = ACTIONS(6985), [sym_void] = ACTIONS(6985), [sym_directive] = ACTIONS(3), }, [3222] = { [sym_identifier] = ACTIONS(6914), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6916), [anon_sym_DOT] = ACTIONS(6916), [anon_sym_LPAREN] = ACTIONS(7705), [anon_sym_AT] = ACTIONS(6916), [sym_bool] = ACTIONS(6914), [sym_byte] = ACTIONS(6914), [sym_ubyte] = ACTIONS(6914), [sym_char] = ACTIONS(6914), [sym_short] = ACTIONS(6914), [sym_ushort] = ACTIONS(6914), [sym_int] = ACTIONS(6914), [sym_uint] = ACTIONS(6914), [sym_long] = ACTIONS(6914), [sym_ulong] = ACTIONS(6914), [sym_cent] = ACTIONS(6914), [sym_ucent] = ACTIONS(6914), [sym_wchar] = ACTIONS(6914), [sym_dchar] = ACTIONS(6914), [sym_float] = ACTIONS(6914), [sym_double] = ACTIONS(6914), [sym_real] = ACTIONS(6914), [sym_ifloat] = ACTIONS(6914), [sym_idouble] = ACTIONS(6914), [sym_ireal] = ACTIONS(6914), [sym_cfloat] = ACTIONS(6914), [sym_cdouble] = ACTIONS(6914), [sym_creal] = ACTIONS(6914), [sym_size_t] = ACTIONS(6914), [sym_ptrdiff_t] = ACTIONS(6914), [sym_string] = ACTIONS(6914), [sym_cstring] = ACTIONS(6914), [sym_dstring] = ACTIONS(6914), [sym_wstring] = ACTIONS(6914), [sym_noreturn] = ACTIONS(6914), [sym_abstract] = ACTIONS(6914), [sym_align] = ACTIONS(6914), [sym_auto] = ACTIONS(6914), [sym_const] = ACTIONS(6914), [sym_delegate] = ACTIONS(6914), [sym_deprecated] = ACTIONS(6914), [sym_do] = ACTIONS(6914), [sym_enum] = ACTIONS(6914), [sym_extern] = ACTIONS(6914), [sym_final] = ACTIONS(6914), [sym_function] = ACTIONS(6914), [sym_immutable] = ACTIONS(6914), [sym_in] = ACTIONS(6914), [sym_inout] = ACTIONS(6914), [sym_mixin] = ACTIONS(6914), [sym_nothrow] = ACTIONS(6914), [sym_out] = ACTIONS(6914), [sym_override] = ACTIONS(6914), [sym_pure] = ACTIONS(6914), [sym_ref] = ACTIONS(6914), [sym_scope] = ACTIONS(6914), [sym_shared] = ACTIONS(6914), [sym_static] = ACTIONS(6914), [sym_synchronized] = ACTIONS(6914), [sym_typeof] = ACTIONS(6914), [sym_gshared] = ACTIONS(6914), [sym_traits] = ACTIONS(6914), [sym_vector] = ACTIONS(6914), [sym_void] = ACTIONS(6914), [sym_directive] = ACTIONS(3), }, [3223] = { [sym_identifier] = ACTIONS(6981), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6983), [anon_sym_DOT] = ACTIONS(6983), [anon_sym_LPAREN] = ACTIONS(6983), [anon_sym_AT] = ACTIONS(6983), [sym_bool] = ACTIONS(6981), [sym_byte] = ACTIONS(6981), [sym_ubyte] = ACTIONS(6981), [sym_char] = ACTIONS(6981), [sym_short] = ACTIONS(6981), [sym_ushort] = ACTIONS(6981), [sym_int] = ACTIONS(6981), [sym_uint] = ACTIONS(6981), [sym_long] = ACTIONS(6981), [sym_ulong] = ACTIONS(6981), [sym_cent] = ACTIONS(6981), [sym_ucent] = ACTIONS(6981), [sym_wchar] = ACTIONS(6981), [sym_dchar] = ACTIONS(6981), [sym_float] = ACTIONS(6981), [sym_double] = ACTIONS(6981), [sym_real] = ACTIONS(6981), [sym_ifloat] = ACTIONS(6981), [sym_idouble] = ACTIONS(6981), [sym_ireal] = ACTIONS(6981), [sym_cfloat] = ACTIONS(6981), [sym_cdouble] = ACTIONS(6981), [sym_creal] = ACTIONS(6981), [sym_size_t] = ACTIONS(6981), [sym_ptrdiff_t] = ACTIONS(6981), [sym_string] = ACTIONS(6981), [sym_cstring] = ACTIONS(6981), [sym_dstring] = ACTIONS(6981), [sym_wstring] = ACTIONS(6981), [sym_noreturn] = ACTIONS(6981), [sym_abstract] = ACTIONS(6981), [sym_align] = ACTIONS(6981), [sym_auto] = ACTIONS(6981), [sym_const] = ACTIONS(6981), [sym_delegate] = ACTIONS(6981), [sym_deprecated] = ACTIONS(6981), [sym_do] = ACTIONS(6981), [sym_enum] = ACTIONS(6981), [sym_extern] = ACTIONS(6981), [sym_final] = ACTIONS(6981), [sym_function] = ACTIONS(6981), [sym_immutable] = ACTIONS(6981), [sym_in] = ACTIONS(6981), [sym_inout] = ACTIONS(6981), [sym_mixin] = ACTIONS(6981), [sym_nothrow] = ACTIONS(6981), [sym_out] = ACTIONS(6981), [sym_override] = ACTIONS(6981), [sym_pure] = ACTIONS(6981), [sym_ref] = ACTIONS(6981), [sym_scope] = ACTIONS(6981), [sym_shared] = ACTIONS(6981), [sym_static] = ACTIONS(6981), [sym_synchronized] = ACTIONS(6981), [sym_typeof] = ACTIONS(6981), [sym_gshared] = ACTIONS(6981), [sym_traits] = ACTIONS(6981), [sym_vector] = ACTIONS(6981), [sym_void] = ACTIONS(6981), [sym_directive] = ACTIONS(3), }, [3224] = { [sym_type] = STATE(5338), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3578), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3578), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7703), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(2964), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3143), [sym_scope] = ACTIONS(3143), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3225] = { [sym_storage_class] = STATE(3225), [sym_type_ctor] = STATE(3234), [sym_align_attribute] = STATE(3234), [sym_at_attribute] = STATE(3234), [sym__function_attribute_kwd] = STATE(3234), [sym_linkage_attribute] = STATE(3234), [aux_sym_variable_declaration_repeat1] = STATE(3225), [sym_identifier] = ACTIONS(7601), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7603), [anon_sym_AT] = ACTIONS(7605), [sym_bool] = ACTIONS(7601), [sym_byte] = ACTIONS(7601), [sym_ubyte] = ACTIONS(7601), [sym_char] = ACTIONS(7601), [sym_short] = ACTIONS(7601), [sym_ushort] = ACTIONS(7601), [sym_int] = ACTIONS(7601), [sym_uint] = ACTIONS(7601), [sym_long] = ACTIONS(7601), [sym_ulong] = ACTIONS(7601), [sym_cent] = ACTIONS(7601), [sym_ucent] = ACTIONS(7601), [sym_wchar] = ACTIONS(7601), [sym_dchar] = ACTIONS(7601), [sym_float] = ACTIONS(7601), [sym_double] = ACTIONS(7601), [sym_real] = ACTIONS(7601), [sym_ifloat] = ACTIONS(7601), [sym_idouble] = ACTIONS(7601), [sym_ireal] = ACTIONS(7601), [sym_cfloat] = ACTIONS(7601), [sym_cdouble] = ACTIONS(7601), [sym_creal] = ACTIONS(7601), [sym_size_t] = ACTIONS(7601), [sym_ptrdiff_t] = ACTIONS(7601), [sym_string] = ACTIONS(7601), [sym_cstring] = ACTIONS(7601), [sym_dstring] = ACTIONS(7601), [sym_wstring] = ACTIONS(7601), [sym_noreturn] = ACTIONS(7601), [sym_abstract] = ACTIONS(7608), [sym_align] = ACTIONS(7611), [sym_auto] = ACTIONS(7608), [sym_const] = ACTIONS(7614), [sym_deprecated] = ACTIONS(7608), [sym_enum] = ACTIONS(7601), [sym_extern] = ACTIONS(7707), [sym_final] = ACTIONS(7608), [sym_immutable] = ACTIONS(7614), [sym_inout] = ACTIONS(7614), [sym_mixin] = ACTIONS(7601), [sym_nothrow] = ACTIONS(7608), [sym_override] = ACTIONS(7608), [sym_pure] = ACTIONS(7608), [sym_ref] = ACTIONS(7608), [sym_scope] = ACTIONS(7608), [sym_shared] = ACTIONS(7614), [sym_static] = ACTIONS(7608), [sym_synchronized] = ACTIONS(7608), [sym_typeof] = ACTIONS(7601), [sym_gshared] = ACTIONS(7608), [sym_traits] = ACTIONS(7601), [sym_vector] = ACTIONS(7601), [sym_void] = ACTIONS(7601), [sym_directive] = ACTIONS(3), }, [3226] = { [sym_identifier] = ACTIONS(7009), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7011), [anon_sym_DOT] = ACTIONS(7011), [anon_sym_LPAREN] = ACTIONS(7011), [anon_sym_AT] = ACTIONS(7011), [sym_bool] = ACTIONS(7009), [sym_byte] = ACTIONS(7009), [sym_ubyte] = ACTIONS(7009), [sym_char] = ACTIONS(7009), [sym_short] = ACTIONS(7009), [sym_ushort] = ACTIONS(7009), [sym_int] = ACTIONS(7009), [sym_uint] = ACTIONS(7009), [sym_long] = ACTIONS(7009), [sym_ulong] = ACTIONS(7009), [sym_cent] = ACTIONS(7009), [sym_ucent] = ACTIONS(7009), [sym_wchar] = ACTIONS(7009), [sym_dchar] = ACTIONS(7009), [sym_float] = ACTIONS(7009), [sym_double] = ACTIONS(7009), [sym_real] = ACTIONS(7009), [sym_ifloat] = ACTIONS(7009), [sym_idouble] = ACTIONS(7009), [sym_ireal] = ACTIONS(7009), [sym_cfloat] = ACTIONS(7009), [sym_cdouble] = ACTIONS(7009), [sym_creal] = ACTIONS(7009), [sym_size_t] = ACTIONS(7009), [sym_ptrdiff_t] = ACTIONS(7009), [sym_string] = ACTIONS(7009), [sym_cstring] = ACTIONS(7009), [sym_dstring] = ACTIONS(7009), [sym_wstring] = ACTIONS(7009), [sym_noreturn] = ACTIONS(7009), [sym_abstract] = ACTIONS(7009), [sym_align] = ACTIONS(7009), [sym_auto] = ACTIONS(7009), [sym_const] = ACTIONS(7009), [sym_delegate] = ACTIONS(7009), [sym_deprecated] = ACTIONS(7009), [sym_do] = ACTIONS(7009), [sym_enum] = ACTIONS(7009), [sym_extern] = ACTIONS(7009), [sym_final] = ACTIONS(7009), [sym_function] = ACTIONS(7009), [sym_immutable] = ACTIONS(7009), [sym_in] = ACTIONS(7009), [sym_inout] = ACTIONS(7009), [sym_mixin] = ACTIONS(7009), [sym_nothrow] = ACTIONS(7009), [sym_out] = ACTIONS(7009), [sym_override] = ACTIONS(7009), [sym_pure] = ACTIONS(7009), [sym_ref] = ACTIONS(7009), [sym_scope] = ACTIONS(7009), [sym_shared] = ACTIONS(7009), [sym_static] = ACTIONS(7009), [sym_synchronized] = ACTIONS(7009), [sym_typeof] = ACTIONS(7009), [sym_gshared] = ACTIONS(7009), [sym_traits] = ACTIONS(7009), [sym_vector] = ACTIONS(7009), [sym_void] = ACTIONS(7009), [sym_directive] = ACTIONS(3), }, [3227] = { [sym_identifier] = ACTIONS(6997), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6999), [anon_sym_DOT] = ACTIONS(6999), [anon_sym_LPAREN] = ACTIONS(6999), [anon_sym_AT] = ACTIONS(6999), [sym_bool] = ACTIONS(6997), [sym_byte] = ACTIONS(6997), [sym_ubyte] = ACTIONS(6997), [sym_char] = ACTIONS(6997), [sym_short] = ACTIONS(6997), [sym_ushort] = ACTIONS(6997), [sym_int] = ACTIONS(6997), [sym_uint] = ACTIONS(6997), [sym_long] = ACTIONS(6997), [sym_ulong] = ACTIONS(6997), [sym_cent] = ACTIONS(6997), [sym_ucent] = ACTIONS(6997), [sym_wchar] = ACTIONS(6997), [sym_dchar] = ACTIONS(6997), [sym_float] = ACTIONS(6997), [sym_double] = ACTIONS(6997), [sym_real] = ACTIONS(6997), [sym_ifloat] = ACTIONS(6997), [sym_idouble] = ACTIONS(6997), [sym_ireal] = ACTIONS(6997), [sym_cfloat] = ACTIONS(6997), [sym_cdouble] = ACTIONS(6997), [sym_creal] = ACTIONS(6997), [sym_size_t] = ACTIONS(6997), [sym_ptrdiff_t] = ACTIONS(6997), [sym_string] = ACTIONS(6997), [sym_cstring] = ACTIONS(6997), [sym_dstring] = ACTIONS(6997), [sym_wstring] = ACTIONS(6997), [sym_noreturn] = ACTIONS(6997), [sym_abstract] = ACTIONS(6997), [sym_align] = ACTIONS(6997), [sym_auto] = ACTIONS(6997), [sym_const] = ACTIONS(6997), [sym_delegate] = ACTIONS(6997), [sym_deprecated] = ACTIONS(6997), [sym_do] = ACTIONS(6997), [sym_enum] = ACTIONS(6997), [sym_extern] = ACTIONS(6997), [sym_final] = ACTIONS(6997), [sym_function] = ACTIONS(6997), [sym_immutable] = ACTIONS(6997), [sym_in] = ACTIONS(6997), [sym_inout] = ACTIONS(6997), [sym_mixin] = ACTIONS(6997), [sym_nothrow] = ACTIONS(6997), [sym_out] = ACTIONS(6997), [sym_override] = ACTIONS(6997), [sym_pure] = ACTIONS(6997), [sym_ref] = ACTIONS(6997), [sym_scope] = ACTIONS(6997), [sym_shared] = ACTIONS(6997), [sym_static] = ACTIONS(6997), [sym_synchronized] = ACTIONS(6997), [sym_typeof] = ACTIONS(6997), [sym_gshared] = ACTIONS(6997), [sym_traits] = ACTIONS(6997), [sym_vector] = ACTIONS(6997), [sym_void] = ACTIONS(6997), [sym_directive] = ACTIONS(3), }, [3228] = { [sym_at_attribute] = STATE(3382), [sym__function_attribute_kwd] = STATE(3382), [sym__function_attribute] = STATE(3382), [sym_member_function_attribute] = STATE(3232), [aux_sym_alias_declaration_repeat2] = STATE(3232), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(7656), [anon_sym_SLASH_EQ] = ACTIONS(7654), [anon_sym_DOT] = ACTIONS(7656), [anon_sym_DOT_DOT_DOT] = ACTIONS(7654), [anon_sym_AMP] = ACTIONS(7656), [anon_sym_AMP_EQ] = ACTIONS(7654), [anon_sym_AMP_AMP] = ACTIONS(7654), [anon_sym_PIPE] = ACTIONS(7656), [anon_sym_PIPE_EQ] = ACTIONS(7654), [anon_sym_PIPE_PIPE] = ACTIONS(7654), [anon_sym_DASH] = ACTIONS(7656), [anon_sym_DASH_EQ] = ACTIONS(7654), [anon_sym_DASH_DASH] = ACTIONS(7654), [anon_sym_PLUS] = ACTIONS(7656), [anon_sym_PLUS_EQ] = ACTIONS(7654), [anon_sym_PLUS_PLUS] = ACTIONS(7654), [anon_sym_LT] = ACTIONS(7656), [anon_sym_LT_EQ] = ACTIONS(7654), [anon_sym_LT_LT] = ACTIONS(7656), [anon_sym_LT_LT_EQ] = ACTIONS(7654), [anon_sym_GT] = ACTIONS(7656), [anon_sym_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7654), [anon_sym_GT_GT] = ACTIONS(7656), [anon_sym_GT_GT_GT] = ACTIONS(7656), [anon_sym_BANG_EQ] = ACTIONS(7654), [anon_sym_LPAREN] = ACTIONS(7654), [anon_sym_RPAREN] = ACTIONS(7654), [anon_sym_LBRACK] = ACTIONS(7654), [anon_sym_QMARK] = ACTIONS(7654), [anon_sym_COMMA] = ACTIONS(7654), [anon_sym_EQ] = ACTIONS(7656), [anon_sym_EQ_EQ] = ACTIONS(7654), [anon_sym_STAR] = ACTIONS(7656), [anon_sym_STAR_EQ] = ACTIONS(7654), [anon_sym_PERCENT] = ACTIONS(7656), [anon_sym_PERCENT_EQ] = ACTIONS(7654), [anon_sym_CARET] = ACTIONS(7656), [anon_sym_CARET_EQ] = ACTIONS(7654), [anon_sym_CARET_CARET] = ACTIONS(7656), [anon_sym_CARET_CARET_EQ] = ACTIONS(7654), [anon_sym_TILDE] = ACTIONS(7656), [anon_sym_TILDE_EQ] = ACTIONS(7654), [anon_sym_AT] = ACTIONS(7710), [sym_const] = ACTIONS(7712), [sym_delegate] = ACTIONS(7654), [sym_function] = ACTIONS(7654), [sym_immutable] = ACTIONS(7712), [sym_in] = ACTIONS(7656), [sym_inout] = ACTIONS(7712), [sym_is] = ACTIONS(7654), [sym_nothrow] = ACTIONS(7712), [sym_pure] = ACTIONS(7712), [sym_return] = ACTIONS(7712), [sym_scope] = ACTIONS(7712), [sym_shared] = ACTIONS(7712), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7654), [sym_not_is] = ACTIONS(7654), }, [3229] = { [sym_identifier] = ACTIONS(7005), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7007), [anon_sym_DOT] = ACTIONS(7007), [anon_sym_LPAREN] = ACTIONS(7007), [anon_sym_AT] = ACTIONS(7007), [sym_bool] = ACTIONS(7005), [sym_byte] = ACTIONS(7005), [sym_ubyte] = ACTIONS(7005), [sym_char] = ACTIONS(7005), [sym_short] = ACTIONS(7005), [sym_ushort] = ACTIONS(7005), [sym_int] = ACTIONS(7005), [sym_uint] = ACTIONS(7005), [sym_long] = ACTIONS(7005), [sym_ulong] = ACTIONS(7005), [sym_cent] = ACTIONS(7005), [sym_ucent] = ACTIONS(7005), [sym_wchar] = ACTIONS(7005), [sym_dchar] = ACTIONS(7005), [sym_float] = ACTIONS(7005), [sym_double] = ACTIONS(7005), [sym_real] = ACTIONS(7005), [sym_ifloat] = ACTIONS(7005), [sym_idouble] = ACTIONS(7005), [sym_ireal] = ACTIONS(7005), [sym_cfloat] = ACTIONS(7005), [sym_cdouble] = ACTIONS(7005), [sym_creal] = ACTIONS(7005), [sym_size_t] = ACTIONS(7005), [sym_ptrdiff_t] = ACTIONS(7005), [sym_string] = ACTIONS(7005), [sym_cstring] = ACTIONS(7005), [sym_dstring] = ACTIONS(7005), [sym_wstring] = ACTIONS(7005), [sym_noreturn] = ACTIONS(7005), [sym_abstract] = ACTIONS(7005), [sym_align] = ACTIONS(7005), [sym_auto] = ACTIONS(7005), [sym_const] = ACTIONS(7005), [sym_delegate] = ACTIONS(7005), [sym_deprecated] = ACTIONS(7005), [sym_do] = ACTIONS(7005), [sym_enum] = ACTIONS(7005), [sym_extern] = ACTIONS(7005), [sym_final] = ACTIONS(7005), [sym_function] = ACTIONS(7005), [sym_immutable] = ACTIONS(7005), [sym_in] = ACTIONS(7005), [sym_inout] = ACTIONS(7005), [sym_mixin] = ACTIONS(7005), [sym_nothrow] = ACTIONS(7005), [sym_out] = ACTIONS(7005), [sym_override] = ACTIONS(7005), [sym_pure] = ACTIONS(7005), [sym_ref] = ACTIONS(7005), [sym_scope] = ACTIONS(7005), [sym_shared] = ACTIONS(7005), [sym_static] = ACTIONS(7005), [sym_synchronized] = ACTIONS(7005), [sym_typeof] = ACTIONS(7005), [sym_gshared] = ACTIONS(7005), [sym_traits] = ACTIONS(7005), [sym_vector] = ACTIONS(7005), [sym_void] = ACTIONS(7005), [sym_directive] = ACTIONS(3), }, [3230] = { [sym_type] = STATE(5268), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3578), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3578), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7703), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(2964), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3143), [sym_scope] = ACTIONS(3143), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3231] = { [sym_at_attribute] = STATE(3382), [sym__function_attribute_kwd] = STATE(3382), [sym__function_attribute] = STATE(3382), [sym_member_function_attribute] = STATE(3231), [aux_sym_alias_declaration_repeat2] = STATE(3231), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(7664), [anon_sym_SLASH_EQ] = ACTIONS(7662), [anon_sym_DOT] = ACTIONS(7664), [anon_sym_DOT_DOT_DOT] = ACTIONS(7662), [anon_sym_AMP] = ACTIONS(7664), [anon_sym_AMP_EQ] = ACTIONS(7662), [anon_sym_AMP_AMP] = ACTIONS(7662), [anon_sym_PIPE] = ACTIONS(7664), [anon_sym_PIPE_EQ] = ACTIONS(7662), [anon_sym_PIPE_PIPE] = ACTIONS(7662), [anon_sym_DASH] = ACTIONS(7664), [anon_sym_DASH_EQ] = ACTIONS(7662), [anon_sym_DASH_DASH] = ACTIONS(7662), [anon_sym_PLUS] = ACTIONS(7664), [anon_sym_PLUS_EQ] = ACTIONS(7662), [anon_sym_PLUS_PLUS] = ACTIONS(7662), [anon_sym_LT] = ACTIONS(7664), [anon_sym_LT_EQ] = ACTIONS(7662), [anon_sym_LT_LT] = ACTIONS(7664), [anon_sym_LT_LT_EQ] = ACTIONS(7662), [anon_sym_GT] = ACTIONS(7664), [anon_sym_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7662), [anon_sym_GT_GT] = ACTIONS(7664), [anon_sym_GT_GT_GT] = ACTIONS(7664), [anon_sym_BANG_EQ] = ACTIONS(7662), [anon_sym_LPAREN] = ACTIONS(7662), [anon_sym_RPAREN] = ACTIONS(7662), [anon_sym_LBRACK] = ACTIONS(7662), [anon_sym_QMARK] = ACTIONS(7662), [anon_sym_COMMA] = ACTIONS(7662), [anon_sym_EQ] = ACTIONS(7664), [anon_sym_EQ_EQ] = ACTIONS(7662), [anon_sym_STAR] = ACTIONS(7664), [anon_sym_STAR_EQ] = ACTIONS(7662), [anon_sym_PERCENT] = ACTIONS(7664), [anon_sym_PERCENT_EQ] = ACTIONS(7662), [anon_sym_CARET] = ACTIONS(7664), [anon_sym_CARET_EQ] = ACTIONS(7662), [anon_sym_CARET_CARET] = ACTIONS(7664), [anon_sym_CARET_CARET_EQ] = ACTIONS(7662), [anon_sym_TILDE] = ACTIONS(7664), [anon_sym_TILDE_EQ] = ACTIONS(7662), [anon_sym_AT] = ACTIONS(7714), [sym_const] = ACTIONS(7717), [sym_delegate] = ACTIONS(7662), [sym_function] = ACTIONS(7662), [sym_immutable] = ACTIONS(7717), [sym_in] = ACTIONS(7664), [sym_inout] = ACTIONS(7717), [sym_is] = ACTIONS(7662), [sym_nothrow] = ACTIONS(7717), [sym_pure] = ACTIONS(7717), [sym_return] = ACTIONS(7717), [sym_scope] = ACTIONS(7717), [sym_shared] = ACTIONS(7717), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7662), [sym_not_is] = ACTIONS(7662), }, [3232] = { [sym_at_attribute] = STATE(3382), [sym__function_attribute_kwd] = STATE(3382), [sym__function_attribute] = STATE(3382), [sym_member_function_attribute] = STATE(3231), [aux_sym_alias_declaration_repeat2] = STATE(3231), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(7674), [anon_sym_SLASH_EQ] = ACTIONS(7672), [anon_sym_DOT] = ACTIONS(7674), [anon_sym_DOT_DOT_DOT] = ACTIONS(7672), [anon_sym_AMP] = ACTIONS(7674), [anon_sym_AMP_EQ] = ACTIONS(7672), [anon_sym_AMP_AMP] = ACTIONS(7672), [anon_sym_PIPE] = ACTIONS(7674), [anon_sym_PIPE_EQ] = ACTIONS(7672), [anon_sym_PIPE_PIPE] = ACTIONS(7672), [anon_sym_DASH] = ACTIONS(7674), [anon_sym_DASH_EQ] = ACTIONS(7672), [anon_sym_DASH_DASH] = ACTIONS(7672), [anon_sym_PLUS] = ACTIONS(7674), [anon_sym_PLUS_EQ] = ACTIONS(7672), [anon_sym_PLUS_PLUS] = ACTIONS(7672), [anon_sym_LT] = ACTIONS(7674), [anon_sym_LT_EQ] = ACTIONS(7672), [anon_sym_LT_LT] = ACTIONS(7674), [anon_sym_LT_LT_EQ] = ACTIONS(7672), [anon_sym_GT] = ACTIONS(7674), [anon_sym_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT_GT_EQ] = ACTIONS(7672), [anon_sym_GT_GT] = ACTIONS(7674), [anon_sym_GT_GT_GT] = ACTIONS(7674), [anon_sym_BANG_EQ] = ACTIONS(7672), [anon_sym_LPAREN] = ACTIONS(7672), [anon_sym_RPAREN] = ACTIONS(7672), [anon_sym_LBRACK] = ACTIONS(7672), [anon_sym_QMARK] = ACTIONS(7672), [anon_sym_COMMA] = ACTIONS(7672), [anon_sym_EQ] = ACTIONS(7674), [anon_sym_EQ_EQ] = ACTIONS(7672), [anon_sym_STAR] = ACTIONS(7674), [anon_sym_STAR_EQ] = ACTIONS(7672), [anon_sym_PERCENT] = ACTIONS(7674), [anon_sym_PERCENT_EQ] = ACTIONS(7672), [anon_sym_CARET] = ACTIONS(7674), [anon_sym_CARET_EQ] = ACTIONS(7672), [anon_sym_CARET_CARET] = ACTIONS(7674), [anon_sym_CARET_CARET_EQ] = ACTIONS(7672), [anon_sym_TILDE] = ACTIONS(7674), [anon_sym_TILDE_EQ] = ACTIONS(7672), [anon_sym_AT] = ACTIONS(7710), [sym_const] = ACTIONS(7712), [sym_delegate] = ACTIONS(7672), [sym_function] = ACTIONS(7672), [sym_immutable] = ACTIONS(7712), [sym_in] = ACTIONS(7674), [sym_inout] = ACTIONS(7712), [sym_is] = ACTIONS(7672), [sym_nothrow] = ACTIONS(7712), [sym_pure] = ACTIONS(7712), [sym_return] = ACTIONS(7712), [sym_scope] = ACTIONS(7712), [sym_shared] = ACTIONS(7712), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(7672), [sym_not_is] = ACTIONS(7672), }, [3233] = { [sym_type] = STATE(5389), [sym_type_ctor] = STATE(3792), [sym__type2] = STATE(5051), [sym_vector_type] = STATE(5051), [sym__builtin_type] = STATE(5051), [sym__qualified_id] = STATE(5051), [sym_typeof_expression] = STATE(5080), [sym_at_attribute] = STATE(3921), [sym_mixin_expression] = STATE(5051), [sym_parameter_attribute] = STATE(3224), [sym_template_instance] = STATE(5081), [sym_traits_expression] = STATE(5051), [aux_sym_type_repeat1] = STATE(3818), [aux_sym__parameter_repeat1] = STATE(3224), [sym_identifier] = ACTIONS(7563), [sym_comment] = ACTIONS(3), [anon_sym_DOT] = ACTIONS(7703), [anon_sym_AT] = ACTIONS(3135), [sym_bool] = ACTIONS(7195), [sym_byte] = ACTIONS(7195), [sym_ubyte] = ACTIONS(7195), [sym_char] = ACTIONS(7195), [sym_short] = ACTIONS(7195), [sym_ushort] = ACTIONS(7195), [sym_int] = ACTIONS(7195), [sym_uint] = ACTIONS(7195), [sym_long] = ACTIONS(7195), [sym_ulong] = ACTIONS(7195), [sym_cent] = ACTIONS(7195), [sym_ucent] = ACTIONS(7195), [sym_wchar] = ACTIONS(7195), [sym_dchar] = ACTIONS(7195), [sym_float] = ACTIONS(7195), [sym_double] = ACTIONS(7195), [sym_real] = ACTIONS(7195), [sym_ifloat] = ACTIONS(7195), [sym_idouble] = ACTIONS(7195), [sym_ireal] = ACTIONS(7195), [sym_cfloat] = ACTIONS(7195), [sym_cdouble] = ACTIONS(7195), [sym_creal] = ACTIONS(7195), [sym_size_t] = ACTIONS(7195), [sym_ptrdiff_t] = ACTIONS(7195), [sym_string] = ACTIONS(7195), [sym_cstring] = ACTIONS(7195), [sym_dstring] = ACTIONS(7195), [sym_wstring] = ACTIONS(7195), [sym_noreturn] = ACTIONS(7195), [sym_auto] = ACTIONS(3143), [sym_const] = ACTIONS(2964), [sym_final] = ACTIONS(3143), [sym_immutable] = ACTIONS(2964), [sym_in] = ACTIONS(3143), [sym_inout] = ACTIONS(2964), [sym_lazy] = ACTIONS(3143), [sym_mixin] = ACTIONS(6631), [sym_out] = ACTIONS(3143), [sym_ref] = ACTIONS(3143), [sym_return] = ACTIONS(3143), [sym_scope] = ACTIONS(3143), [sym_shared] = ACTIONS(2964), [sym_typeof] = ACTIONS(7201), [sym_traits] = ACTIONS(75), [sym_vector] = ACTIONS(3159), [sym_void] = ACTIONS(7195), [sym_directive] = ACTIONS(3), }, [3234] = { [sym_identifier] = ACTIONS(7690), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7692), [anon_sym_DOT] = ACTIONS(7692), [anon_sym_LPAREN] = ACTIONS(7692), [anon_sym_AT] = ACTIONS(7692), [sym_bool] = ACTIONS(7690), [sym_byte] = ACTIONS(7690), [sym_ubyte] = ACTIONS(7690), [sym_char] = ACTIONS(7690), [sym_short] = ACTIONS(7690), [sym_ushort] = ACTIONS(7690), [sym_int] = ACTIONS(7690), [sym_uint] = ACTIONS(7690), [sym_long] = ACTIONS(7690), [sym_ulong] = ACTIONS(7690), [sym_cent] = ACTIONS(7690), [sym_ucent] = ACTIONS(7690), [sym_wchar] = ACTIONS(7690), [sym_dchar] = ACTIONS(7690), [sym_float] = ACTIONS(7690), [sym_double] = ACTIONS(7690), [sym_real] = ACTIONS(7690), [sym_ifloat] = ACTIONS(7690), [sym_idouble] = ACTIONS(7690), [sym_ireal] = ACTIONS(7690), [sym_cfloat] = ACTIONS(7690), [sym_cdouble] = ACTIONS(7690), [sym_creal] = ACTIONS(7690), [sym_size_t] = ACTIONS(7690), [sym_ptrdiff_t] = ACTIONS(7690), [sym_string] = ACTIONS(7690), [sym_cstring] = ACTIONS(7690), [sym_dstring] = ACTIONS(7690), [sym_wstring] = ACTIONS(7690), [sym_noreturn] = ACTIONS(7690), [sym_abstract] = ACTIONS(7690), [sym_align] = ACTIONS(7690), [sym_auto] = ACTIONS(7690), [sym_const] = ACTIONS(7690), [sym_delegate] = ACTIONS(7690), [sym_deprecated] = ACTIONS(7690), [sym_do] = ACTIONS(7690), [sym_enum] = ACTIONS(7690), [sym_extern] = ACTIONS(7690), [sym_final] = ACTIONS(7690), [sym_function] = ACTIONS(7690), [sym_immutable] = ACTIONS(7690), [sym_in] = ACTIONS(7690), [sym_inout] = ACTIONS(7690), [sym_mixin] = ACTIONS(7690), [sym_nothrow] = ACTIONS(7690), [sym_out] = ACTIONS(7690), [sym_override] = ACTIONS(7690), [sym_pure] = ACTIONS(7690), [sym_ref] = ACTIONS(7690), [sym_scope] = ACTIONS(7690), [sym_shared] = ACTIONS(7690), [sym_static] = ACTIONS(7690), [sym_synchronized] = ACTIONS(7690), [sym_typeof] = ACTIONS(7690), [sym_gshared] = ACTIONS(7690), [sym_traits] = ACTIONS(7690), [sym_vector] = ACTIONS(7690), [sym_void] = ACTIONS(7690), [sym_directive] = ACTIONS(3), }, [3235] = { [sym_identifier] = ACTIONS(6989), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(6991), [anon_sym_DOT] = ACTIONS(6991), [anon_sym_LPAREN] = ACTIONS(6991), [anon_sym_AT] = ACTIONS(6991), [sym_bool] = ACTIONS(6989), [sym_byte] = ACTIONS(6989), [sym_ubyte] = ACTIONS(6989), [sym_char] = ACTIONS(6989), [sym_short] = ACTIONS(6989), [sym_ushort] = ACTIONS(6989), [sym_int] = ACTIONS(6989), [sym_uint] = ACTIONS(6989), [sym_long] = ACTIONS(6989), [sym_ulong] = ACTIONS(6989), [sym_cent] = ACTIONS(6989), [sym_ucent] = ACTIONS(6989), [sym_wchar] = ACTIONS(6989), [sym_dchar] = ACTIONS(6989), [sym_float] = ACTIONS(6989), [sym_double] = ACTIONS(6989), [sym_real] = ACTIONS(6989), [sym_ifloat] = ACTIONS(6989), [sym_idouble] = ACTIONS(6989), [sym_ireal] = ACTIONS(6989), [sym_cfloat] = ACTIONS(6989), [sym_cdouble] = ACTIONS(6989), [sym_creal] = ACTIONS(6989), [sym_size_t] = ACTIONS(6989), [sym_ptrdiff_t] = ACTIONS(6989), [sym_string] = ACTIONS(6989), [sym_cstring] = ACTIONS(6989), [sym_dstring] = ACTIONS(6989), [sym_wstring] = ACTIONS(6989), [sym_noreturn] = ACTIONS(6989), [sym_abstract] = ACTIONS(6989), [sym_align] = ACTIONS(6989), [sym_auto] = ACTIONS(6989), [sym_const] = ACTIONS(6989), [sym_delegate] = ACTIONS(6989), [sym_deprecated] = ACTIONS(6989), [sym_do] = ACTIONS(6989), [sym_enum] = ACTIONS(6989), [sym_extern] = ACTIONS(6989), [sym_final] = ACTIONS(6989), [sym_function] = ACTIONS(6989), [sym_immutable] = ACTIONS(6989), [sym_in] = ACTIONS(6989), [sym_inout] = ACTIONS(6989), [sym_mixin] = ACTIONS(6989), [sym_nothrow] = ACTIONS(6989), [sym_out] = ACTIONS(6989), [sym_override] = ACTIONS(6989), [sym_pure] = ACTIONS(6989), [sym_ref] = ACTIONS(6989), [sym_scope] = ACTIONS(6989), [sym_shared] = ACTIONS(6989), [sym_static] = ACTIONS(6989), [sym_synchronized] = ACTIONS(6989), [sym_typeof] = ACTIONS(6989), [sym_gshared] = ACTIONS(6989), [sym_traits] = ACTIONS(6989), [sym_vector] = ACTIONS(6989), [sym_void] = ACTIONS(6989), [sym_directive] = ACTIONS(3), }, [3236] = { [sym_identifier] = ACTIONS(7690), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7692), [anon_sym_DOT] = ACTIONS(7692), [anon_sym_LPAREN] = ACTIONS(7692), [anon_sym_AT] = ACTIONS(7692), [sym_bool] = ACTIONS(7690), [sym_byte] = ACTIONS(7690), [sym_ubyte] = ACTIONS(7690), [sym_char] = ACTIONS(7690), [sym_short] = ACTIONS(7690), [sym_ushort] = ACTIONS(7690), [sym_int] = ACTIONS(7690), [sym_uint] = ACTIONS(7690), [sym_long] = ACTIONS(7690), [sym_ulong] = ACTIONS(7690), [sym_cent] = ACTIONS(7690), [sym_ucent] = ACTIONS(7690), [sym_wchar] = ACTIONS(7690), [sym_dchar] = ACTIONS(7690), [sym_float] = ACTIONS(7690), [sym_double] = ACTIONS(7690), [sym_real] = ACTIONS(7690), [sym_ifloat] = ACTIONS(7690), [sym_idouble] = ACTIONS(7690), [sym_ireal] = ACTIONS(7690), [sym_cfloat] = ACTIONS(7690), [sym_cdouble] = ACTIONS(7690), [sym_creal] = ACTIONS(7690), [sym_size_t] = ACTIONS(7690), [sym_ptrdiff_t] = ACTIONS(7690), [sym_string] = ACTIONS(7690), [sym_cstring] = ACTIONS(7690), [sym_dstring] = ACTIONS(7690), [sym_wstring] = ACTIONS(7690), [sym_noreturn] = ACTIONS(7690), [sym_abstract] = ACTIONS(7690), [sym_align] = ACTIONS(7690), [sym_auto] = ACTIONS(7690), [sym_const] = ACTIONS(7690), [sym_delegate] = ACTIONS(7690), [sym_deprecated] = ACTIONS(7690), [sym_do] = ACTIONS(7690), [sym_extern] = ACTIONS(7690), [sym_final] = ACTIONS(7690), [sym_function] = ACTIONS(7690), [sym_immutable] = ACTIONS(7690), [sym_in] = ACTIONS(7690), [sym_inout] = ACTIONS(7690), [sym_mixin] = ACTIONS(7690), [sym_nothrow] = ACTIONS(7690), [sym_out] = ACTIONS(7690), [sym_override] = ACTIONS(7690), [sym_pure] = ACTIONS(7690), [sym_ref] = ACTIONS(7720), [sym_scope] = ACTIONS(7690), [sym_shared] = ACTIONS(7690), [sym_static] = ACTIONS(7690), [sym_synchronized] = ACTIONS(7690), [sym_typeof] = ACTIONS(7690), [sym_gshared] = ACTIONS(7690), [sym_traits] = ACTIONS(7690), [sym_vector] = ACTIONS(7690), [sym_void] = ACTIONS(7690), [sym_directive] = ACTIONS(3), }, [3237] = { [sym_arguments] = STATE(3308), [sym_template_arguments] = STATE(3353), [sym_comment] = ACTIONS(3), [anon_sym_SLASH] = ACTIONS(6647), [anon_sym_SLASH_EQ] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6647), [anon_sym_DOT_DOT] = ACTIONS(6649), [anon_sym_AMP] = ACTIONS(6647), [anon_sym_AMP_EQ] = ACTIONS(6649), [anon_sym_AMP_AMP] = ACTIONS(6649), [anon_sym_PIPE] = ACTIONS(6647), [anon_sym_PIPE_EQ] = ACTIONS(6649), [anon_sym_PIPE_PIPE] = ACTIONS(6649), [anon_sym_DASH] = ACTIONS(6647), [anon_sym_DASH_EQ] = ACTIONS(6649), [anon_sym_DASH_DASH] = ACTIONS(6649), [anon_sym_PLUS] = ACTIONS(6647), [anon_sym_PLUS_EQ] = ACTIONS(6649), [anon_sym_PLUS_PLUS] = ACTIONS(6649), [anon_sym_LT] = ACTIONS(6647), [anon_sym_LT_EQ] = ACTIONS(6649), [anon_sym_LT_LT] = ACTIONS(6647), [anon_sym_LT_LT_EQ] = ACTIONS(6649), [anon_sym_GT] = ACTIONS(6647), [anon_sym_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT] = ACTIONS(6647), [anon_sym_GT_GT_GT] = ACTIONS(6647), [anon_sym_BANG] = ACTIONS(7723), [anon_sym_BANG_EQ] = ACTIONS(6649), [anon_sym_LPAREN] = ACTIONS(7725), [anon_sym_RPAREN] = ACTIONS(6649), [anon_sym_LBRACK] = ACTIONS(6649), [anon_sym_RBRACK] = ACTIONS(6649), [anon_sym_QMARK] = ACTIONS(6649), [anon_sym_COMMA] = ACTIONS(6649), [anon_sym_EQ] = ACTIONS(6647), [anon_sym_EQ_EQ] = ACTIONS(6649), [anon_sym_STAR] = ACTIONS(6647), [anon_sym_STAR_EQ] = ACTIONS(6649), [anon_sym_PERCENT] = ACTIONS(6647), [anon_sym_PERCENT_EQ] = ACTIONS(6649), [anon_sym_CARET] = ACTIONS(6647), [anon_sym_CARET_EQ] = ACTIONS(6649), [anon_sym_CARET_CARET] = ACTIONS(6647), [anon_sym_CARET_CARET_EQ] = ACTIONS(6649), [anon_sym_TILDE] = ACTIONS(6647), [anon_sym_TILDE_EQ] = ACTIONS(6649), [anon_sym_AT] = ACTIONS(6649), [sym_const] = ACTIONS(6649), [sym_delegate] = ACTIONS(6649), [sym_function] = ACTIONS(6649), [sym_immutable] = ACTIONS(6649), [sym_in] = ACTIONS(6647), [sym_inout] = ACTIONS(6649), [sym_is] = ACTIONS(6649), [sym_nothrow] = ACTIONS(6649), [sym_pure] = ACTIONS(6649), [sym_return] = ACTIONS(6649), [sym_scope] = ACTIONS(6649), [sym_shared] = ACTIONS(6649), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(6649), [sym_not_is] = ACTIONS(6649), }, [3238] = { [sym_identifier] = ACTIONS(7690), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7692), [anon_sym_DOT] = ACTIONS(7692), [anon_sym_LPAREN] = ACTIONS(7727), [anon_sym_AT] = ACTIONS(7692), [sym_bool] = ACTIONS(7690), [sym_byte] = ACTIONS(7690), [sym_ubyte] = ACTIONS(7690), [sym_char] = ACTIONS(7690), [sym_short] = ACTIONS(7690), [sym_ushort] = ACTIONS(7690), [sym_int] = ACTIONS(7690), [sym_uint] = ACTIONS(7690), [sym_long] = ACTIONS(7690), [sym_ulong] = ACTIONS(7690), [sym_cent] = ACTIONS(7690), [sym_ucent] = ACTIONS(7690), [sym_wchar] = ACTIONS(7690), [sym_dchar] = ACTIONS(7690), [sym_float] = ACTIONS(7690), [sym_double] = ACTIONS(7690), [sym_real] = ACTIONS(7690), [sym_ifloat] = ACTIONS(7690), [sym_idouble] = ACTIONS(7690), [sym_ireal] = ACTIONS(7690), [sym_cfloat] = ACTIONS(7690), [sym_cdouble] = ACTIONS(7690), [sym_creal] = ACTIONS(7690), [sym_size_t] = ACTIONS(7690), [sym_ptrdiff_t] = ACTIONS(7690), [sym_string] = ACTIONS(7690), [sym_cstring] = ACTIONS(7690), [sym_dstring] = ACTIONS(7690), [sym_wstring] = ACTIONS(7690), [sym_noreturn] = ACTIONS(7690), [sym_abstract] = ACTIONS(7690), [sym_align] = ACTIONS(7690), [sym_auto] = ACTIONS(7690), [sym_const] = ACTIONS(7690), [sym_delegate] = ACTIONS(7690), [sym_deprecated] = ACTIONS(7690), [sym_do] = ACTIONS(7690), [sym_extern] = ACTIONS(7690), [sym_final] = ACTIONS(7690), [sym_function] = ACTIONS(7690), [sym_immutable] = ACTIONS(7690), [sym_in] = ACTIONS(7690), [sym_inout] = ACTIONS(7690), [sym_mixin] = ACTIONS(7690), [sym_nothrow] = ACTIONS(7690), [sym_out] = ACTIONS(7690), [sym_override] = ACTIONS(7690), [sym_pure] = ACTIONS(7690), [sym_ref] = ACTIONS(7690), [sym_scope] = ACTIONS(7690), [sym_shared] = ACTIONS(7690), [sym_static] = ACTIONS(7690), [sym_synchronized] = ACTIONS(7690), [sym_typeof] = ACTIONS(7690), [sym_gshared] = ACTIONS(7690), [sym_traits] = ACTIONS(7690), [sym_vector] = ACTIONS(7690), [sym_void] = ACTIONS(7690), [sym_directive] = ACTIONS(3), }, [3239] = { [sym_identifier] = ACTIONS(7730), [sym_comment] = ACTIONS(3), [anon_sym_LBRACE] = ACTIONS(7692), [anon_sym_DOT] = ACTIONS(7733), [anon_sym_LPAREN] = ACTIONS(7736), [anon_sym_AT] = ACTIONS(7692), [sym_bool] = ACTIONS(7730), [sym_byte] = ACTIONS(7730), [sym_ubyte] = ACTIONS(7730), [sym_char] = ACTIONS(7730), [sym_short] = ACTIONS(7730), [sym_ushort] = ACTIONS(7730), [sym_int] = ACTIONS(7730), [sym_uint] = ACTIONS(7730), [sym_long] = ACTIONS(7730), [sym_ulong] = ACTIONS(7730), [sym_cent] = ACTIONS(7730), [sym_ucent] = ACTIONS(7730), [sym_wchar] = ACTIONS(7730), [sym_dchar] = ACTIONS(7730), [sym_float] = ACTIONS(7730), [sym_double] = ACTIONS(7730), [sym_real] = ACTIONS(7730), [sym_ifloat] = ACTIONS(7730), [sym_idouble] = ACTIONS(7730), [sym_ireal] = ACTIONS(7730), [sym_cfloat] = ACTIONS(7730), [sym_cdouble] = ACTIONS(7730), [sym_creal] = ACTIONS(7730), [sym_size_t] = ACTIONS(7730), [sym_ptrdiff_t] = ACTIONS(7730), [sym_string] = ACTIONS(7730), [sym_cstring] = ACTIONS(7730), [sym_dstring] = ACTIONS(7730), [sym_wstring] = ACTIONS(7730), [sym_noreturn] = ACTIONS(7730), [sym_abstract] = ACTIONS(7690), [sym_align] = ACTIONS(7690), [sym_auto] = ACTIONS(7690), [sym_const] = ACTIONS(7730), [sym_delegate] = ACTIONS(7690), [sym_deprecated] = ACTIONS(7690), [sym_do] = ACTIONS(7690), [sym_extern] = ACTIONS(7690), [sym_final] = ACTIONS(7690), [sym_function] = ACTIONS(7690), [sym_immutable] = ACTIONS(7730), [sym_in] = ACTIONS(7690), [sym_inout] = ACTIONS(7730), [sym_mixin] = ACTIONS(7730), [sym_nothrow] = ACTIONS(7690), [sym_out] = ACTIONS(7690), [sym_override] = ACTIONS(7690), [sym_pure] = ACTIONS(7690), [sym_ref] = ACTIONS(7690), [sym_scope] = ACTIONS(7690), [sym_shared] = ACTIONS(7730), [sym_static] = ACTIONS(7690), [sym_synchronized] = ACTIONS(7690), [sym_typeof] = ACTIONS(7730), [sym_gshared] = ACTIONS(7690), [sym_traits] = ACTIONS(7730), [sym_vector] = ACTIONS(7730), [sym_void] = ACTIONS(7730), [sym_directive] = ACTIONS(3), }, [3240] = { [sym_arguments] = STATE(3271), [sym_comment] = ACTIONS(3), [anon_sym_RBRACE] = ACTIONS(6649), [anon_sym_SLASH] = ACTIONS(6647), [anon_sym_SLASH_EQ] = ACTIONS(6649), [anon_sym_DOT] = ACTIONS(6649), [anon_sym_AMP] = ACTIONS(6647), [anon_sym_AMP_EQ] = ACTIONS(6649), [anon_sym_AMP_AMP] = ACTIONS(6649), [anon_sym_PIPE] = ACTIONS(6647), [anon_sym_PIPE_EQ] = ACTIONS(6649), [anon_sym_PIPE_PIPE] = ACTIONS(6649), [anon_sym_DASH] = ACTIONS(6647), [anon_sym_DASH_EQ] = ACTIONS(6649), [anon_sym_DASH_DASH] = ACTIONS(6649), [anon_sym_PLUS] = ACTIONS(6647), [anon_sym_PLUS_EQ] = ACTIONS(6649), [anon_sym_PLUS_PLUS] = ACTIONS(6649), [anon_sym_LT] = ACTIONS(6647), [anon_sym_LT_EQ] = ACTIONS(6649), [anon_sym_LT_LT] = ACTIONS(6647), [anon_sym_LT_LT_EQ] = ACTIONS(6649), [anon_sym_GT] = ACTIONS(6647), [anon_sym_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT_GT_EQ] = ACTIONS(6649), [anon_sym_GT_GT] = ACTIONS(6647), [anon_sym_GT_GT_GT] = ACTIONS(6647), [anon_sym_BANG_EQ] = ACTIONS(6649), [anon_sym_LPAREN] = ACTIONS(7684), [anon_sym_RPAREN] = ACTIONS(6649), [anon_sym_LBRACK] = ACTIONS(6649), [anon_sym_RBRACK] = ACTIONS(6649), [anon_sym_QMARK] = ACTIONS(6649), [anon_sym_COMMA] = ACTIONS(6649), [anon_sym_SEMI] = ACTIONS(6649), [anon_sym_COLON] = ACTIONS(6649), [anon_sym_EQ] = ACTIONS(6647), [anon_sym_EQ_EQ] = ACTIONS(6649), [anon_sym_STAR] = ACTIONS(6647), [anon_sym_STAR_EQ] = ACTIONS(6649), [anon_sym_PERCENT] = ACTIONS(6647), [anon_sym_PERCENT_EQ] = ACTIONS(6649), [anon_sym_CARET] = ACTIONS(6647), [anon_sym_CARET_EQ] = ACTIONS(6649), [anon_sym_CARET_CARET] = ACTIONS(6647), [anon_sym_CARET_CARET_EQ] = ACTIONS(6649), [anon_sym_TILDE] = ACTIONS(6647), [anon_sym_TILDE_EQ] = ACTIONS(6649), [anon_sym_AT] = ACTIONS(6649), [sym_const] = ACTIONS(6649), [sym_delegate] = ACTIONS(6649), [sym_function] = ACTIONS(6649), [sym_immutable] = ACTIONS(6649), [sym_in] = ACTIONS(6647), [sym_inout] = ACTIONS(6649), [sym_is] = ACTIONS(6649), [sym_nothrow] = ACTIONS(6649), [sym_pure] = ACTIONS(6649), [sym_return] = ACTIONS(6649), [sym_scope] = ACTIONS(6649), [sym_shared] = ACTIONS(6649), [sym_directive] = ACTIONS(3), [sym_not_in] = ACTIONS(6649), [sym_not_is] = ACTIONS(6649), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3044), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3046), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [71] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3008), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3010), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [142] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7741), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7739), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [213] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6643), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6645), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [284] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7745), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7743), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [355] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7749), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7747), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [426] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6661), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6663), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [497] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6675), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6677), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [568] = 7, ACTIONS(7751), 1, anon_sym_BANG, ACTIONS(7753), 1, anon_sym_LPAREN, STATE(3372), 1, sym_template_arguments, STATE(3373), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6649), 40, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [647] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7757), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7755), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [718] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7761), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7759), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [789] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3036), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3038), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [860] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6653), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6655), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [931] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6665), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6667), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1002] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3004), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3006), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1073] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3048), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3050), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1144] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6639), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6641), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1215] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6657), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6659), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1286] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7765), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7763), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1357] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2984), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2986), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1428] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3016), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3018), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1499] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2996), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2998), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1570] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7769), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7767), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1641] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3056), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3058), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1712] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3000), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3002), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1783] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3012), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3014), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1854] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3024), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3026), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1925] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3028), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3030), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [1996] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2992), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2994), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [2067] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3032), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3034), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [2138] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6669), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6671), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [2209] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3020), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3022), 45, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [2280] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7773), 1, anon_sym_RBRACE, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [2384] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7777), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [2488] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7779), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [2592] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7781), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [2696] = 5, ACTIONS(7725), 1, anon_sym_LPAREN, STATE(3308), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6649), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [2770] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7783), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [2874] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7785), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [2978] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7787), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3082] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7789), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3186] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7791), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3290] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7793), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3394] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7795), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3498] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7797), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3602] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7799), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3706] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7801), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3810] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7803), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [3914] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7805), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4018] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7807), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4122] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7809), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4226] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7811), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4330] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7813), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4434] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7815), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4538] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7817), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4642] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7819), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4746] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7821), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4850] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7823), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [4954] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7825), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5058] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7827), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5162] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7829), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5266] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7831), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5370] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, ACTIONS(7833), 1, anon_sym_RBRACE, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5474] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3020), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3022), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [5543] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6675), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6677), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [5612] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6196), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5713] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6082), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5814] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6669), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6671), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [5883] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5912), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [5984] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7761), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7759), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [6053] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7749), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7747), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [6122] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6639), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6641), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [6191] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5868), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [6292] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5739), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [6393] = 6, ACTIONS(7835), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7837), 2, sym_nothrow, sym_pure, STATE(3318), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7656), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7654), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [6468] = 6, ACTIONS(7843), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7846), 2, sym_nothrow, sym_pure, STATE(3316), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7841), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7839), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [6543] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6263), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [6644] = 6, ACTIONS(7835), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7849), 2, sym_nothrow, sym_pure, STATE(3316), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7674), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7672), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [6719] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5742), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [6820] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3036), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3038), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [6889] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3044), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3046), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [6958] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6164), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [7059] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3048), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3050), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7128] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7769), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7767), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7197] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6391), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [7298] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3056), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3058), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7367] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2992), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2994), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7436] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3032), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3034), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7505] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5958), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [7606] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3028), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3030), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7675] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3024), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3026), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [7744] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5943), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [7845] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6237), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [7946] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6653), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6655), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8015] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7757), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7755), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8084] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5872), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [8185] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3012), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3014), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8254] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7765), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7763), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8323] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3000), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3002), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8392] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6207), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [8493] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6643), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6645), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8562] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2984), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2986), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8631] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6665), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6667), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8700] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6295), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [8801] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6092), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [8902] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7745), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7743), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [8971] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6808), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [9072] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5828), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [9173] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5816), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [9274] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3016), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3018), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [9343] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7741), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7739), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [9412] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5741), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [9513] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6657), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6659), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [9582] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6028), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [9683] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2996), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2998), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [9752] = 5, ACTIONS(7753), 1, anon_sym_LPAREN, STATE(3373), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6649), 40, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [9825] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5856), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [9926] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6661), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6663), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [9995] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6270), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [10096] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5810), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [10197] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7771), 1, sym_identifier, ACTIONS(7775), 1, sym_deprecated, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8019), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5965), 2, sym_enum_member, sym_anonymous_enum_member, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [10298] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3008), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3010), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10367] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3004), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3006), 42, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10436] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3048), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3050), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10504] = 6, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4950), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7692), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(7690), 54, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_abstract, sym_align, sym_auto, sym_const, sym_deprecated, sym_extern, sym_final, sym_immutable, sym_inout, sym_mixin, sym_nothrow, sym_override, sym_pure, sym_ref, sym_scope, sym_shared, sym_static, sym_synchronized, sym_typeof, sym_gshared, sym_traits, sym_vector, sym_void, [10578] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6665), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6667), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10646] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3028), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3030), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10714] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3032), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3034), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10782] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3020), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3022), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10850] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2992), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2994), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10918] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3056), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3058), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [10986] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6657), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6659), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11054] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6669), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6671), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11122] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6639), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6641), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11190] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3044), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3046), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11258] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3036), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3038), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11326] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6675), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6677), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11394] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6661), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6663), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11462] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3008), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3010), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11530] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6653), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6655), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11598] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3004), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3006), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11666] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7749), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7747), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11734] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2984), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2986), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11802] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3016), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3018), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [11870] = 7, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7853), 1, anon_sym_LPAREN, STATE(3443), 1, sym_template_arguments, STATE(3478), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6649), 39, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [11946] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7769), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7767), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12014] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7745), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7743), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12082] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2996), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(2998), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12150] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7757), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7755), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12218] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7761), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7759), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12286] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7765), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7763), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12354] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7741), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(7739), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12422] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3000), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3002), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12490] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3012), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3014), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12558] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3024), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(3026), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12626] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6643), 18, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, ACTIONS(6645), 41, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_is, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [12694] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6232), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [12791] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6613), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [12888] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5825), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [12985] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5843), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13082] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5900), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13179] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5927), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13276] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5903), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13373] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5973), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13470] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5842), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13567] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6288), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13664] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6290), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13761] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6360), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [13858] = 6, ACTIONS(7859), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7862), 2, sym_nothrow, sym_pure, STATE(3409), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7841), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7839), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [13931] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5951), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14028] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5950), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14125] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6061), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14222] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6116), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14319] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5972), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14416] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6141), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14513] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6084), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14610] = 6, ACTIONS(7865), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7867), 2, sym_nothrow, sym_pure, STATE(3420), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7656), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7654), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [14683] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5928), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14780] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6291), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [14877] = 6, ACTIONS(7865), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7869), 2, sym_nothrow, sym_pure, STATE(3409), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7674), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7672), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [14950] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5870), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15047] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6015), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15144] = 6, ACTIONS(6885), 1, anon_sym_LPAREN, ACTIONS(7692), 1, anon_sym_AT, ACTIONS(7733), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7690), 15, sym_abstract, sym_align, sym_auto, sym_deprecated, sym_enum, sym_extern, sym_final, sym_nothrow, sym_override, sym_pure, sym_ref, sym_scope, sym_static, sym_synchronized, sym_gshared, ACTIONS(7730), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [15217] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5852), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15314] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5853), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15411] = 4, ACTIONS(7871), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7692), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(7690), 55, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_abstract, sym_align, sym_auto, sym_const, sym_deprecated, sym_enum, sym_extern, sym_final, sym_immutable, sym_inout, sym_mixin, sym_nothrow, sym_override, sym_pure, sym_ref, sym_scope, sym_shared, sym_static, sym_synchronized, sym_typeof, sym_gshared, sym_traits, sym_vector, sym_void, [15480] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6365), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15577] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6184), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15674] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6201), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15771] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5866), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15868] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5831), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [15965] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6362), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [16062] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6008), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [16159] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6013), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [16256] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7855), 1, sym_identifier, STATE(3460), 1, aux_sym_foreach_type_repeat1, STATE(3799), 1, aux_sym_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6197), 1, sym_foreach_type, STATE(7688), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7857), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [16353] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3008), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3010), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16419] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3036), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3038), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16485] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3012), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3014), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16551] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6643), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6645), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16617] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2992), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(2994), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16683] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3056), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3058), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16749] = 6, ACTIONS(7873), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7875), 2, sym_nothrow, sym_pure, STATE(3446), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7656), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7654), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [16821] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6657), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6659), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16887] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3020), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3022), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [16953] = 6, ACTIONS(7877), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7880), 2, sym_nothrow, sym_pure, STATE(3445), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7841), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7839), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [17025] = 6, ACTIONS(7873), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7883), 2, sym_nothrow, sym_pure, STATE(3445), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7674), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7672), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [17097] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3024), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3026), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17163] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6653), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6655), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17229] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3032), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3034), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17295] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3028), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3030), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17361] = 5, ACTIONS(7853), 1, anon_sym_LPAREN, STATE(3478), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6649), 39, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [17431] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3000), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3002), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17497] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2996), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(2998), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17563] = 7, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(7887), 1, anon_sym_LPAREN, STATE(3520), 1, sym_template_arguments, STATE(3534), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6649), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [17637] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3016), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3018), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17703] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3044), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3046), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17769] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2984), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(2986), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [17835] = 20, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, ACTIONS(7891), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7335), 1, sym_type, STATE(7812), 1, sym__template_parameter_list, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [17935] = 12, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [18019] = 17, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7913), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4109), 1, aux_sym_foreach_type_repeat1, STATE(4139), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7832), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(7915), 4, sym_alias, sym_enum, sym_ref, sym_scope, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [18113] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3048), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3050), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [18179] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3004), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3006), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [18245] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6639), 23, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6641), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [18311] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7761), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7759), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [18376] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7031), 1, sym__template_parameter_list, STATE(7335), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [18473] = 14, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7917), 1, anon_sym_COLON, ACTIONS(7919), 1, anon_sym_EQ, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [18560] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(7497), 1, anon_sym_LPAREN, ACTIONS(7922), 1, anon_sym_LBRACE, STATE(3559), 1, sym_arguments, STATE(3985), 1, sym_aggregate_body, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6909), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [18657] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6661), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6663), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [18722] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7042), 1, sym__template_parameter_list, STATE(7335), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [18819] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7335), 1, sym_type, STATE(7392), 1, sym__template_parameter_list, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [18916] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7741), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7739), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [18981] = 11, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7930), 1, anon_sym_DOT, ACTIONS(7933), 1, anon_sym_LPAREN, ACTIONS(7936), 1, anon_sym_LBRACK, ACTIONS(7940), 1, anon_sym_COLON, ACTIONS(7942), 1, anon_sym_STAR, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7928), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [19062] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(7497), 1, anon_sym_LPAREN, ACTIONS(7945), 1, anon_sym_LBRACE, STATE(3554), 1, sym_arguments, STATE(3846), 1, sym_aggregate_body, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6897), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [19159] = 7, ACTIONS(7947), 1, anon_sym_BANG, ACTIONS(7949), 1, anon_sym_LPAREN, STATE(3552), 1, sym_template_arguments, STATE(3617), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6649), 35, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [19232] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7335), 1, sym_type, STATE(7437), 1, sym__template_parameter_list, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [19329] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(7497), 1, anon_sym_LPAREN, ACTIONS(7951), 1, anon_sym_LBRACE, STATE(3524), 1, sym_arguments, STATE(4015), 1, sym_aggregate_body, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6638), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [19426] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6675), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6677), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [19491] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6669), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6671), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [19556] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, ACTIONS(7953), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6831), 1, sym_template_parameter, STATE(7335), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [19653] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7745), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7743), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [19718] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7335), 1, sym_type, STATE(7499), 1, sym__template_parameter_list, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [19815] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7765), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7763), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [19880] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6059), 1, sym_template_parameter, STATE(7335), 1, sym_type, STATE(7522), 1, sym__template_parameter_list, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [19977] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6665), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6667), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [20042] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7769), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7767), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [20107] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, ACTIONS(7955), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6831), 1, sym_template_parameter, STATE(7335), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [20204] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7757), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7755), 40, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [20269] = 14, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7919), 1, anon_sym_EQ, ACTIONS(7957), 1, anon_sym_COLON, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [20355] = 5, ACTIONS(7887), 1, anon_sym_LPAREN, STATE(3534), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6649), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [20423] = 8, ACTIONS(7963), 1, anon_sym_LBRACK, ACTIONS(7965), 1, anon_sym_STAR, ACTIONS(7967), 1, sym_delegate, ACTIONS(7969), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3497), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7961), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7959), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [20497] = 8, ACTIONS(7963), 1, anon_sym_LBRACK, ACTIONS(7967), 1, sym_delegate, ACTIONS(7969), 1, sym_function, ACTIONS(7975), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3493), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7973), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7971), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [20571] = 14, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7957), 1, anon_sym_COLON, ACTIONS(7977), 1, anon_sym_EQ, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [20657] = 8, ACTIONS(7963), 1, anon_sym_LBRACK, ACTIONS(7965), 1, anon_sym_STAR, ACTIONS(7967), 1, sym_delegate, ACTIONS(7969), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3497), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7982), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7980), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [20731] = 8, ACTIONS(7963), 1, anon_sym_LBRACK, ACTIONS(7967), 1, sym_delegate, ACTIONS(7969), 1, sym_function, ACTIONS(7984), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3490), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7982), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7980), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [20805] = 18, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7199), 1, sym_alias, ACTIONS(7209), 1, sym_this, ACTIONS(7889), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6831), 1, sym_template_parameter, STATE(7335), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [20899] = 14, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7940), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7947), 1, anon_sym_BANG, ACTIONS(7986), 1, anon_sym_DOT, ACTIONS(7992), 1, anon_sym_LBRACK, STATE(3552), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7908), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7989), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 24, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [20985] = 8, ACTIONS(8000), 1, anon_sym_LBRACK, ACTIONS(8003), 1, anon_sym_STAR, ACTIONS(8006), 1, sym_delegate, ACTIONS(8009), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3497), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7998), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7996), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [21059] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3102), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3104), 39, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_catch, sym_else, sym_finally, sym_in, sym_is, sym_while, [21123] = 7, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(8012), 1, anon_sym_DOT, ACTIONS(8014), 1, anon_sym_LBRACK, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7940), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [21195] = 14, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7957), 1, anon_sym_COLON, ACTIONS(8016), 1, anon_sym_EQ, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [21281] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3098), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3100), 39, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_catch, sym_else, sym_finally, sym_in, sym_is, sym_while, [21345] = 14, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7957), 1, anon_sym_COLON, ACTIONS(8019), 1, anon_sym_EQ, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [21431] = 14, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(7957), 1, anon_sym_COLON, ACTIONS(8022), 1, anon_sym_EQ, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [21517] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 39, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_catch, sym_else, sym_finally, sym_in, sym_is, sym_while, [21581] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8025), 21, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8027), 33, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [21644] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3012), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3014), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [21707] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7769), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7767), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [21770] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7765), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7763), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [21833] = 13, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(8029), 1, anon_sym_COLON, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [21916] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3028), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3030), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [21979] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3024), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3026), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22042] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6643), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6645), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22105] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3012), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3014), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22168] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3032), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3034), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22231] = 8, ACTIONS(7930), 1, anon_sym_DOT, ACTIONS(7940), 1, anon_sym_COLON, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7933), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7928), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [22304] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3044), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3046), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22367] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6653), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6655), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [22430] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3020), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3022), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22493] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2992), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(2994), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22556] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6657), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6659), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22619] = 12, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7947), 1, anon_sym_BANG, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8036), 1, anon_sym_EQ_GT, STATE(3552), 1, sym_template_arguments, STATE(4005), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [22700] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3048), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3050), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22763] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6653), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6655), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22826] = 17, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(7951), 1, anon_sym_LBRACE, STATE(4054), 1, sym_aggregate_body, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6588), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [22917] = 5, ACTIONS(7949), 1, anon_sym_LPAREN, STATE(3617), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6649), 35, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [22984] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6639), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6641), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23047] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3036), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3038), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [23110] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3044), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3046), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [23173] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3048), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3050), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [23236] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7745), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7743), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23299] = 12, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8040), 1, anon_sym_EQ_GT, STATE(3520), 1, sym_template_arguments, STATE(3944), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [23380] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3000), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3002), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23443] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6675), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6677), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23506] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6669), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6671), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23569] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2996), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(2998), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23632] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3016), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3018), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23695] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2984), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(2986), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23758] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3004), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3006), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [23821] = 8, ACTIONS(8044), 1, anon_sym_DOT, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [23894] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3056), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3058), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [23957] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2992), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(2994), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [24020] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3020), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3022), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [24083] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3032), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3034), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [24146] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3028), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3030), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [24209] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7761), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7759), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [24272] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3008), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3010), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [24335] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3036), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3038), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [24398] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8055), 21, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8057), 33, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [24461] = 12, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8059), 1, anon_sym_EQ_GT, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [24542] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6665), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6667), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [24605] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8061), 21, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8063), 33, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [24668] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6657), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6659), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [24731] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8065), 21, sym_identifier, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8067), 33, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [24794] = 17, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(7945), 1, anon_sym_LBRACE, STATE(3861), 1, sym_aggregate_body, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6917), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [24885] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7757), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7755), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [24948] = 13, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(8069), 1, anon_sym_COLON, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [25031] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(8071), 1, anon_sym_RPAREN, ACTIONS(8075), 1, sym_immutable, ACTIONS(8077), 1, sym_shared, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7240), 1, sym_type, STATE(7241), 1, sym_cast_qualifier, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8073), 2, sym_const, sym_inout, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [25126] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(8075), 1, sym_immutable, ACTIONS(8077), 1, sym_shared, ACTIONS(8079), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7007), 1, sym_cast_qualifier, STATE(7008), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8073), 2, sym_const, sym_inout, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [25221] = 17, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(7922), 1, anon_sym_LBRACE, STATE(3961), 1, sym_aggregate_body, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6604), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [25312] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3024), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3026), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25375] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3056), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3058), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [25438] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(8075), 1, sym_immutable, ACTIONS(8077), 1, sym_shared, ACTIONS(8081), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7991), 1, sym_cast_qualifier, STATE(7993), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8073), 2, sym_const, sym_inout, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [25533] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3000), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3002), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25596] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2996), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(2998), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25659] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3016), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3018), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25722] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2984), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(2986), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25785] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3004), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3006), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25848] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3008), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(3010), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [25911] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7741), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7739), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [25974] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(8075), 1, sym_immutable, ACTIONS(8077), 1, sym_shared, ACTIONS(8083), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7897), 1, sym_type, STATE(7900), 1, sym_cast_qualifier, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8073), 2, sym_const, sym_inout, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [26069] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(8075), 1, sym_immutable, ACTIONS(8077), 1, sym_shared, ACTIONS(8085), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7968), 1, sym_cast_qualifier, STATE(7969), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8073), 2, sym_const, sym_inout, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [26164] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6639), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6641), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [26227] = 7, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [26298] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6661), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6663), 37, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [26361] = 19, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, ACTIONS(8075), 1, sym_immutable, ACTIONS(8077), 1, sym_shared, ACTIONS(8087), 1, anon_sym_RPAREN, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7631), 1, sym_type, STATE(7632), 1, sym_cast_qualifier, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8073), 2, sym_const, sym_inout, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [26456] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6643), 24, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, ACTIONS(6645), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, [26519] = 8, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7940), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7989), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [26592] = 8, ACTIONS(8091), 1, anon_sym_DOT, ACTIONS(8093), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3578), 2, sym_parameter_attribute, aux_sym__parameter_repeat1, STATE(3921), 2, sym_type_ctor, sym_at_attribute, ACTIONS(8099), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(8096), 8, sym_auto, sym_final, sym_in, sym_lazy, sym_out, sym_ref, sym_return, sym_scope, ACTIONS(8089), 36, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_mixin, sym_typeof, sym_traits, sym_vector, sym_void, [26665] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8102), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [26727] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8108), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8106), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [26789] = 11, ACTIONS(7940), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7947), 1, anon_sym_BANG, ACTIONS(8110), 1, anon_sym_DOT, ACTIONS(8113), 1, anon_sym_LBRACK, STATE(3552), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7942), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7933), 3, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7928), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7926), 24, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [26867] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7765), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7763), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [26929] = 16, ACTIONS(3147), 1, sym_mixin, ACTIONS(3155), 1, sym_typeof, ACTIONS(3157), 1, sym_traits, ACTIONS(8117), 1, sym_identifier, ACTIONS(8119), 1, anon_sym_DOT, ACTIONS(8123), 1, sym_class, ACTIONS(8125), 1, sym_vector, STATE(3768), 1, aux_sym_type_repeat1, STATE(3873), 1, sym_template_instance, STATE(3874), 1, sym_typeof_expression, STATE(3951), 1, sym_type, STATE(4266), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(3728), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8121), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [27017] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7741), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7739), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [27079] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7761), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7759), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [27141] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7656), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7654), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [27203] = 5, ACTIONS(7851), 1, anon_sym_BANG, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8130), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8127), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [27269] = 6, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(8139), 1, anon_sym_LPAREN, STATE(5169), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8137), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(8133), 48, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_const, sym_final, sym_immutable, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_ref, sym_return, sym_scope, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [27337] = 6, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(8141), 1, anon_sym_LPAREN, STATE(5198), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8137), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(8133), 48, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_const, sym_final, sym_immutable, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_ref, sym_return, sym_scope, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [27405] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8145), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8143), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [27467] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7757), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7755), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [27529] = 6, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4895), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8137), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(8133), 48, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_const, sym_final, sym_immutable, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_ref, sym_return, sym_scope, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [27597] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7745), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7743), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [27659] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7674), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7672), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [27721] = 8, ACTIONS(8147), 1, anon_sym_LBRACK, ACTIONS(8149), 1, anon_sym_STAR, ACTIONS(8151), 1, sym_delegate, ACTIONS(8153), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3604), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7982), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7980), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [27793] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7769), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7767), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [27855] = 16, ACTIONS(3289), 1, sym_mixin, ACTIONS(3299), 1, sym_typeof, ACTIONS(3301), 1, sym_traits, ACTIONS(8155), 1, sym_identifier, ACTIONS(8157), 1, anon_sym_DOT, ACTIONS(8161), 1, sym_class, ACTIONS(8163), 1, sym_vector, STATE(3808), 1, aux_sym_type_repeat1, STATE(3809), 1, sym_template_instance, STATE(3810), 1, sym_typeof_expression, STATE(3872), 1, sym_type, STATE(4245), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(3609), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8159), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [27943] = 8, ACTIONS(8147), 1, anon_sym_LBRACK, ACTIONS(8151), 1, sym_delegate, ACTIONS(8153), 1, sym_function, ACTIONS(8165), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3606), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7982), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7980), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28015] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8169), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8167), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [28077] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8173), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8171), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [28139] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6661), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6663), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [28201] = 5, ACTIONS(7851), 1, anon_sym_BANG, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8177), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8175), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28267] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6675), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6677), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [28329] = 8, ACTIONS(8179), 1, anon_sym_LBRACK, ACTIONS(8182), 1, anon_sym_STAR, ACTIONS(8185), 1, sym_delegate, ACTIONS(8188), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3604), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7998), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7996), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28401] = 4, ACTIONS(8195), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8191), 36, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [28465] = 8, ACTIONS(8147), 1, anon_sym_LBRACK, ACTIONS(8149), 1, anon_sym_STAR, ACTIONS(8151), 1, sym_delegate, ACTIONS(8153), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3604), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7961), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7959), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28537] = 13, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(8197), 1, anon_sym_DOT, ACTIONS(8200), 1, anon_sym_LBRACK, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7908), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7897), 14, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28619] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8191), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [28681] = 8, ACTIONS(8147), 1, anon_sym_LBRACK, ACTIONS(8151), 1, sym_delegate, ACTIONS(8153), 1, sym_function, ACTIONS(8204), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3595), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7973), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7971), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28753] = 4, ACTIONS(8012), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7940), 36, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [28817] = 7, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(8206), 1, anon_sym_DOT, ACTIONS(8208), 1, anon_sym_LBRACK, STATE(3520), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7940), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [28887] = 12, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8210), 1, anon_sym_EQ_GT, STATE(3520), 1, sym_template_arguments, STATE(3944), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [28967] = 13, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7911), 1, anon_sym_EQ_GT, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [29049] = 16, ACTIONS(195), 1, sym_typeof, ACTIONS(207), 1, sym_traits, ACTIONS(2970), 1, sym_mixin, ACTIONS(8212), 1, sym_identifier, ACTIONS(8214), 1, anon_sym_DOT, ACTIONS(8218), 1, sym_class, ACTIONS(8220), 1, sym_vector, STATE(3610), 1, sym_template_instance, STATE(3615), 1, sym_typeof_expression, STATE(3648), 1, sym_type, STATE(3788), 1, aux_sym_type_repeat1, STATE(4261), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(3491), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8216), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [29137] = 4, ACTIONS(8222), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8050), 36, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [29201] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8226), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8224), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [29263] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6669), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6671), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [29325] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6665), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(6667), 36, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, anon_sym_AT, sym_delegate, sym_function, sym_in, sym_is, sym_nothrow, sym_pure, [29387] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8230), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8228), 37, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [29449] = 13, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(7989), 1, anon_sym_RBRACK, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8040), 1, anon_sym_EQ_GT, STATE(3520), 1, sym_template_arguments, STATE(3944), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [29531] = 8, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(8236), 1, anon_sym_DOT, ACTIONS(8240), 1, anon_sym_LBRACK, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8238), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8234), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8232), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [29602] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5709), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [29687] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5711), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [29772] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5663), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [29857] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5577), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [29942] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6878), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30027] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5643), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30112] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6246), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30197] = 8, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(8236), 1, anon_sym_DOT, ACTIONS(8240), 1, anon_sym_LBRACK, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8238), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8244), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8242), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [30268] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8032), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30353] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5801), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30438] = 4, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8248), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8246), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [30501] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6912), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30586] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6915), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30671] = 10, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7930), 1, anon_sym_DOT, ACTIONS(7933), 1, anon_sym_LPAREN, ACTIONS(7936), 1, anon_sym_LBRACK, ACTIONS(7942), 1, anon_sym_STAR, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [30746] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7506), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30831] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6569), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [30916] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7512), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31001] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7674), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31086] = 7, ACTIONS(7947), 1, anon_sym_BANG, ACTIONS(8250), 1, anon_sym_DOT, ACTIONS(8252), 1, anon_sym_LBRACK, STATE(3552), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7940), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [31155] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7493), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31240] = 8, ACTIONS(8254), 1, anon_sym_LBRACK, ACTIONS(8256), 1, anon_sym_STAR, ACTIONS(8258), 1, sym_delegate, ACTIONS(8260), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3653), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7961), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7959), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [31311] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6790), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31396] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7528), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31481] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6889), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31566] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5699), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31651] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6825), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31736] = 4, STATE(3846), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8264), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8262), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [31799] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5921), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31884] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7154), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [31969] = 4, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8268), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8266), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [32032] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7532), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32117] = 8, ACTIONS(8270), 1, anon_sym_LBRACK, ACTIONS(8273), 1, anon_sym_STAR, ACTIONS(8276), 1, sym_delegate, ACTIONS(8279), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3653), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7998), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7996), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [32188] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6469), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32273] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6341), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32358] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7158), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32443] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5667), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32528] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5706), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32613] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6832), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32698] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6474), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32783] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5580), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32868] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5623), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [32953] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6925), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33038] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6842), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33123] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6520), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33208] = 8, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(8236), 1, anon_sym_DOT, ACTIONS(8240), 1, anon_sym_LBRACK, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8238), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8284), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8282), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [33279] = 8, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(8236), 1, anon_sym_DOT, ACTIONS(8240), 1, anon_sym_LBRACK, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8238), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8288), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8286), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [33350] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6464), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33435] = 10, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(7936), 1, anon_sym_LBRACK, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(8290), 1, anon_sym_DOT, STATE(3520), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7933), 2, anon_sym_LPAREN, anon_sym_RBRACK, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [33510] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6483), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33595] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5563), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33680] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6522), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33765] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6635), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33850] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5575), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [33935] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5774), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34020] = 8, ACTIONS(8254), 1, anon_sym_LBRACK, ACTIONS(8258), 1, sym_delegate, ACTIONS(8260), 1, sym_function, ACTIONS(8293), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3642), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7982), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7980), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [34091] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6931), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34176] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6606), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34261] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5573), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34346] = 4, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8297), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8295), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [34409] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5617), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34494] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6533), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34579] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7979), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34664] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(8022), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34749] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7600), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34834] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6637), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [34919] = 8, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(8236), 1, anon_sym_DOT, ACTIONS(8240), 1, anon_sym_LBRACK, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8238), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8301), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8299), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [34990] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7621), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35075] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5604), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35160] = 8, ACTIONS(8254), 1, anon_sym_LBRACK, ACTIONS(8256), 1, anon_sym_STAR, ACTIONS(8258), 1, sym_delegate, ACTIONS(8260), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3653), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7982), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7980), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [35231] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5568), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35316] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7995), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35401] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5626), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35486] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5641), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35571] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5660), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35656] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5702), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35741] = 8, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8303), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [35812] = 5, ACTIONS(8306), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3062), 2, anon_sym_LPAREN, anon_sym_AT, ACTIONS(8308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, ACTIONS(3060), 44, sym_identifier, anon_sym_DOT, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_final, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_ref, sym_typeof, sym_traits, sym_vector, sym_void, [35877] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6866), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [35962] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6991), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36047] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7623), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36132] = 8, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(8236), 1, anon_sym_DOT, ACTIONS(8240), 1, anon_sym_LBRACK, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8238), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8248), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8246), 30, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [36203] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5994), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36288] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5571), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36373] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6785), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36458] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(77), 1, sym_vector, ACTIONS(8311), 1, sym_identifier, ACTIONS(8313), 1, anon_sym_DOT, ACTIONS(8317), 1, sym_mixin, ACTIONS(8319), 1, sym_traits, STATE(3779), 1, aux_sym_type_repeat1, STATE(4270), 1, sym_type_ctor, STATE(5159), 1, sym_typeof_expression, STATE(5200), 1, sym_template_instance, STATE(5616), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5121), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8315), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36543] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6725), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36628] = 12, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(7904), 1, anon_sym_LBRACK, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8321), 1, anon_sym_EQ_GT, STATE(3443), 1, sym_template_arguments, STATE(3828), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [36707] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5874), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36792] = 10, ACTIONS(7933), 1, anon_sym_LPAREN, ACTIONS(7936), 1, anon_sym_LBRACK, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(7947), 1, anon_sym_BANG, ACTIONS(8290), 1, anon_sym_DOT, STATE(3552), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [36867] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5594), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [36952] = 10, ACTIONS(7885), 1, anon_sym_BANG, ACTIONS(7933), 1, anon_sym_LPAREN, ACTIONS(7936), 1, anon_sym_LBRACK, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(8290), 1, anon_sym_DOT, STATE(3520), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [37027] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6476), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37112] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5610), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37197] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6442), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37282] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(8323), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7234), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37367] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6596), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37452] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7658), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37537] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(77), 1, sym_vector, ACTIONS(8311), 1, sym_identifier, ACTIONS(8313), 1, anon_sym_DOT, ACTIONS(8317), 1, sym_mixin, ACTIONS(8319), 1, sym_traits, STATE(3779), 1, aux_sym_type_repeat1, STATE(4270), 1, sym_type_ctor, STATE(5159), 1, sym_typeof_expression, STATE(5200), 1, sym_template_instance, STATE(5644), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5121), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8315), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37622] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6862), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37707] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7822), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37792] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6852), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37877] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7467), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [37962] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7641), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38047] = 10, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(7930), 1, anon_sym_DOT, ACTIONS(7936), 1, anon_sym_LBRACK, ACTIONS(7942), 1, anon_sym_STAR, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7933), 3, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [38122] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5725), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38207] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7758), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38292] = 8, ACTIONS(8254), 1, anon_sym_LBRACK, ACTIONS(8258), 1, sym_delegate, ACTIONS(8260), 1, sym_function, ACTIONS(8325), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3690), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7973), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7971), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [38363] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6691), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38448] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6106), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38533] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6681), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38618] = 15, ACTIONS(75), 1, sym_traits, ACTIONS(3159), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(8327), 1, sym_identifier, ACTIONS(8329), 1, anon_sym_DOT, ACTIONS(8333), 1, sym_typeof, STATE(3783), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5190), 1, sym_template_instance, STATE(5197), 1, sym_typeof_expression, STATE(6136), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5108), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8331), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38703] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6670), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38788] = 15, ACTIONS(75), 1, sym_traits, ACTIONS(3159), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(8327), 1, sym_identifier, ACTIONS(8329), 1, anon_sym_DOT, ACTIONS(8333), 1, sym_typeof, STATE(3783), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5190), 1, sym_template_instance, STATE(5197), 1, sym_typeof_expression, STATE(5886), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5108), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8331), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38873] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7820), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [38958] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6491), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39043] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6820), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39128] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6839), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39213] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5670), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39298] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(77), 1, sym_vector, ACTIONS(8311), 1, sym_identifier, ACTIONS(8313), 1, anon_sym_DOT, ACTIONS(8317), 1, sym_mixin, ACTIONS(8319), 1, sym_traits, STATE(3779), 1, aux_sym_type_repeat1, STATE(4270), 1, sym_type_ctor, STATE(5159), 1, sym_typeof_expression, STATE(5200), 1, sym_template_instance, STATE(5718), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5121), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8315), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39383] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7744), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39468] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6844), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39553] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6591), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39638] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6572), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39723] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7718), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39808] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6869), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39893] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6730), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [39978] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5685), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40063] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(5931), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40148] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6818), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40233] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7138), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40318] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6042), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40403] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6879), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40488] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6751), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40573] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6309), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40658] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5570), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40743] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5686), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40828] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5625), 1, sym_base_class, STATE(5708), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40913] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6841), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [40998] = 15, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(5584), 1, sym__base_class_list, STATE(5625), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41083] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7129), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41168] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6605), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41253] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6220), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41338] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6278), 1, sym_base_class, STATE(6611), 1, sym__base_class_list, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41423] = 15, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(3799), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(7704), 1, sym_type, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4997), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(21), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41508] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8337), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8335), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [41568] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8341), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8339), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [41628] = 14, ACTIONS(3147), 1, sym_mixin, ACTIONS(3155), 1, sym_typeof, ACTIONS(3157), 1, sym_traits, ACTIONS(8117), 1, sym_identifier, ACTIONS(8119), 1, anon_sym_DOT, ACTIONS(8125), 1, sym_vector, STATE(3873), 1, sym_template_instance, STATE(3874), 1, sym_typeof_expression, STATE(4230), 1, aux_sym_type_repeat1, STATE(4266), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(3676), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8343), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41710] = 5, ACTIONS(8345), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3091), 3, sym_catch, sym_finally, sym_while, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [41774] = 14, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, STATE(6168), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [41856] = 8, ACTIONS(7940), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8110), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7942), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7933), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7928), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7926), 24, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [41926] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8065), 22, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8067), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [41986] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4480), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(4482), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [42046] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4598), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(4600), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [42106] = 8, ACTIONS(7940), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7986), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7908), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7989), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 24, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [42176] = 5, ACTIONS(7885), 1, anon_sym_BANG, STATE(3520), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8177), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8175), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [42240] = 7, ACTIONS(8050), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8052), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8047), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 24, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [42308] = 8, ACTIONS(8050), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8348), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8052), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8047), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 24, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [42378] = 14, ACTIONS(67), 1, sym_typeof, ACTIONS(77), 1, sym_vector, ACTIONS(8311), 1, sym_identifier, ACTIONS(8313), 1, anon_sym_DOT, ACTIONS(8317), 1, sym_mixin, ACTIONS(8319), 1, sym_traits, STATE(4230), 1, aux_sym_type_repeat1, STATE(4270), 1, sym_type_ctor, STATE(5159), 1, sym_typeof_expression, STATE(5200), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5103), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8351), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [42460] = 14, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, STATE(6168), 1, sym_base_class, STATE(7341), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(6294), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(7924), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [42542] = 14, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(8353), 1, sym_identifier, STATE(4230), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4990), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8355), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [42624] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8061), 22, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8063), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [42684] = 14, ACTIONS(75), 1, sym_traits, ACTIONS(3159), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(8327), 1, sym_identifier, ACTIONS(8329), 1, anon_sym_DOT, ACTIONS(8333), 1, sym_typeof, STATE(4230), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5190), 1, sym_template_instance, STATE(5197), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5104), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8357), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [42766] = 6, ACTIONS(8137), 1, anon_sym_AT, ACTIONS(8362), 1, anon_sym_DOT, ACTIONS(8365), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8133), 8, sym_auto, sym_final, sym_in, sym_lazy, sym_out, sym_ref, sym_return, sym_scope, ACTIONS(8359), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [42832] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8025), 22, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8027), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [42892] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8055), 22, sym_identifier, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_delegate, sym_function, sym_in, sym_is, ACTIONS(8057), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [42952] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3076), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(3078), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3080), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43014] = 14, ACTIONS(195), 1, sym_typeof, ACTIONS(207), 1, sym_traits, ACTIONS(2970), 1, sym_mixin, ACTIONS(8212), 1, sym_identifier, ACTIONS(8214), 1, anon_sym_DOT, ACTIONS(8220), 1, sym_vector, STATE(3610), 1, sym_template_instance, STATE(3615), 1, sym_typeof_expression, STATE(4230), 1, aux_sym_type_repeat1, STATE(4261), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(3494), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8367), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [43096] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8371), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8369), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43156] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8375), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8373), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43216] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8379), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8377), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43276] = 6, ACTIONS(6885), 1, anon_sym_LPAREN, ACTIONS(8137), 1, anon_sym_AT, ACTIONS(8362), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8133), 8, sym_auto, sym_final, sym_in, sym_lazy, sym_out, sym_ref, sym_return, sym_scope, ACTIONS(8359), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [43342] = 5, ACTIONS(8137), 1, anon_sym_AT, ACTIONS(8306), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8381), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, ACTIONS(8133), 44, sym_identifier, anon_sym_DOT, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_final, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_ref, sym_typeof, sym_traits, sym_vector, sym_void, [43406] = 8, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8384), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [43476] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8389), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8387), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43536] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8393), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8391), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43596] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8397), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8395), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43656] = 8, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8399), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [43726] = 14, ACTIONS(13), 1, anon_sym_DOT, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7237), 1, sym_identifier, STATE(4230), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5007), 1, sym_typeof_expression, STATE(5035), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4990), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8355), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [43808] = 5, ACTIONS(7885), 1, anon_sym_BANG, STATE(3520), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8130), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8127), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43872] = 4, ACTIONS(8402), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8191), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [43934] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8406), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8404), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [43994] = 10, ACTIONS(7851), 1, anon_sym_BANG, ACTIONS(8408), 1, anon_sym_DOT, ACTIONS(8411), 1, anon_sym_LBRACK, STATE(3443), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7942), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7933), 3, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7928), 14, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44068] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8417), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8415), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44128] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8421), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8419), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44188] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8425), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8423), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44248] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8429), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8427), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44308] = 14, ACTIONS(3289), 1, sym_mixin, ACTIONS(3299), 1, sym_typeof, ACTIONS(3301), 1, sym_traits, ACTIONS(8155), 1, sym_identifier, ACTIONS(8157), 1, anon_sym_DOT, ACTIONS(8163), 1, sym_vector, STATE(3809), 1, sym_template_instance, STATE(3810), 1, sym_typeof_expression, STATE(4230), 1, aux_sym_type_repeat1, STATE(4245), 1, sym_type_ctor, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(3598), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8431), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [44390] = 4, ACTIONS(8206), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7940), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [44452] = 4, ACTIONS(8433), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8050), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [44514] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3109), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44576] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8230), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8228), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [44636] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3121), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44698] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8437), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8435), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44758] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8061), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8063), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [44818] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8173), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8171), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [44878] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3115), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [44940] = 14, ACTIONS(75), 1, sym_traits, ACTIONS(3159), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7201), 1, sym_typeof, ACTIONS(7563), 1, sym_identifier, ACTIONS(7703), 1, anon_sym_DOT, STATE(4230), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5080), 1, sym_typeof_expression, STATE(5081), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5065), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8439), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [45022] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8226), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8224), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [45082] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8169), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8167), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [45142] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8443), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8441), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45202] = 5, ACTIONS(8445), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3091), 3, sym_catch, sym_finally, sym_while, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45266] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8130), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8127), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45326] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8451), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8449), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45386] = 8, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8453), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [45456] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7656), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7654), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [45516] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8145), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8143), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [45576] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45636] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8462), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8460), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45696] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8191), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [45756] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45816] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [45876] = 14, ACTIONS(67), 1, sym_typeof, ACTIONS(75), 1, sym_traits, ACTIONS(77), 1, sym_vector, ACTIONS(6631), 1, sym_mixin, ACTIONS(7499), 1, sym_identifier, ACTIONS(7501), 1, anon_sym_DOT, STATE(4230), 1, aux_sym_type_repeat1, STATE(4242), 1, sym_type_ctor, STATE(5047), 1, sym_template_instance, STATE(5052), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2964), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(5087), 6, sym__type2, sym_vector_type, sym__builtin_type, sym__qualified_id, sym_mixin_expression, sym_traits_expression, ACTIONS(8464), 31, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_void, [45958] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8468), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8466), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46018] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8472), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8470), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46078] = 8, ACTIONS(8050), 1, anon_sym_COLON, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8474), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7897), 17, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, sym_in, sym_is, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [46148] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8065), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8067), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [46208] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8025), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8027), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [46268] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8108), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8106), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [46328] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8102), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [46388] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7674), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7672), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [46448] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8479), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8477), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46508] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8483), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8481), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46568] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8487), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8485), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46628] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8491), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8489), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46688] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8495), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8493), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46748] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8055), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8057), 34, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [46808] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8177), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8175), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46868] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8499), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8497), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46928] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8503), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8501), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [46988] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3067), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47050] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8507), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8505), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47110] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8511), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8509), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47170] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8515), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8513), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47230] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8519), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8517), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47290] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8523), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8521), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47350] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8527), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8525), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47410] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8531), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8529), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47470] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8535), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8533), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47530] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8539), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8537), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47590] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8543), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8541), 35, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47650] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8191), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [47709] = 12, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 26, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [47786] = 7, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47853] = 6, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47918] = 7, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8567), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [47985] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3170), 4, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48046] = 8, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8570), 1, anon_sym_DOT, ACTIONS(8574), 1, anon_sym_LBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8572), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8248), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8246), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48115] = 4, ACTIONS(8576), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8191), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [48176] = 6, ACTIONS(8578), 1, anon_sym_LPAREN, STATE(4463), 1, sym_parameters, STATE(6615), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 31, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48241] = 4, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8268), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8266), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48302] = 4, STATE(3985), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8264), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8262), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48363] = 4, ACTIONS(8250), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7940), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [48424] = 4, ACTIONS(8581), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8050), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [48485] = 18, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8595), 1, anon_sym_EQ, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 10, anon_sym_RBRACE, anon_sym_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8585), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [48574] = 4, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8297), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8295), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48635] = 7, ACTIONS(7930), 1, anon_sym_DOT, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7933), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48702] = 7, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48769] = 6, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48834] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8173), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8171), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [48893] = 7, ACTIONS(8044), 1, anon_sym_DOT, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [48960] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8230), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8228), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [49019] = 7, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49086] = 7, ACTIONS(8044), 1, anon_sym_DOT, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(8047), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49153] = 6, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49218] = 6, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(8047), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49283] = 7, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49350] = 7, ACTIONS(7899), 1, anon_sym_DOT, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49417] = 5, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49480] = 7, ACTIONS(7930), 1, anon_sym_DOT, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7933), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49547] = 14, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 26, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [49628] = 13, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 26, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [49707] = 8, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8570), 1, anon_sym_DOT, ACTIONS(8574), 1, anon_sym_LBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8572), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8284), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8282), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [49776] = 15, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 25, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [49859] = 11, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8627), 26, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [49934] = 8, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8570), 1, anon_sym_DOT, ACTIONS(8574), 1, anon_sym_LBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8572), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8288), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8286), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50003] = 18, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8595), 1, anon_sym_EQ, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 10, anon_sym_RBRACE, anon_sym_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8585), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [50092] = 4, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50153] = 7, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 34, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50220] = 4, ACTIONS(8641), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8137), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(8133), 47, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_const, sym_final, sym_immutable, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_return, sym_scope, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [50281] = 8, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8570), 1, anon_sym_DOT, ACTIONS(8574), 1, anon_sym_LBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8572), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8244), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8242), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50350] = 7, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(8290), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7933), 3, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50417] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7674), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7672), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [50476] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8102), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [50535] = 17, ACTIONS(8397), 1, anon_sym_EQ, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8395), 23, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [50622] = 7, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8567), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(8047), 3, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50689] = 8, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8570), 1, anon_sym_DOT, ACTIONS(8574), 1, anon_sym_LBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8572), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8301), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8299), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50758] = 4, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8248), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8246), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50819] = 5, ACTIONS(7947), 1, anon_sym_BANG, STATE(3552), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8177), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8175), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50882] = 6, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(8047), 3, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [50947] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8108), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8106), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [51006] = 8, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(8570), 1, anon_sym_DOT, ACTIONS(8574), 1, anon_sym_LBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8572), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8234), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8232), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [51075] = 7, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(8290), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7933), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [51142] = 7, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 3, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 28, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [51209] = 7, ACTIONS(7942), 1, anon_sym_STAR, ACTIONS(8290), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7933), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7928), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [51276] = 17, ACTIONS(8379), 1, anon_sym_EQ, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8377), 23, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [51363] = 5, ACTIONS(7947), 1, anon_sym_BANG, STATE(3552), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8130), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8127), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [51426] = 17, ACTIONS(8375), 1, anon_sym_EQ, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8373), 23, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [51513] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8145), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8143), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [51572] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7656), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7654), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [51631] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8137), 2, anon_sym_DOT, anon_sym_AT, ACTIONS(8133), 48, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_auto, sym_const, sym_final, sym_immutable, sym_in, sym_inout, sym_lazy, sym_mixin, sym_out, sym_ref, sym_return, sym_scope, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [51690] = 7, ACTIONS(7908), 1, anon_sym_STAR, ACTIONS(8031), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [51757] = 17, ACTIONS(8371), 1, anon_sym_EQ, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8369), 23, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [51844] = 17, ACTIONS(8549), 1, anon_sym_AMP, ACTIONS(8563), 1, anon_sym_CARET_CARET, ACTIONS(8587), 1, anon_sym_AMP_AMP, ACTIONS(8589), 1, anon_sym_PIPE, ACTIONS(8591), 1, anon_sym_PIPE_PIPE, ACTIONS(8593), 1, anon_sym_QMARK, ACTIONS(8597), 1, anon_sym_CARET, ACTIONS(8646), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8555), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8557), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8561), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8547), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8553), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8559), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8565), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8644), 23, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [51931] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8226), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8224), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [51990] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8169), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8167), 33, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_delegate, sym_function, sym_in, sym_is, [52049] = 7, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(8567), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(7897), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52116] = 6, ACTIONS(8052), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8047), 2, anon_sym_LPAREN, anon_sym_LBRACK, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 29, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52181] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8337), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8335), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52239] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8527), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8525), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52297] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8437), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8435), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52355] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4598), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(4600), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52413] = 8, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8648), 1, anon_sym_DOT, ACTIONS(8652), 1, anon_sym_LBRACK, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8650), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8284), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8282), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52481] = 8, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8648), 1, anon_sym_DOT, ACTIONS(8652), 1, anon_sym_LBRACK, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8650), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8288), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8286), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52549] = 8, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8648), 1, anon_sym_DOT, ACTIONS(8652), 1, anon_sym_LBRACK, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8650), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8234), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8232), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52617] = 5, ACTIONS(3091), 1, sym_while, ACTIONS(8654), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52679] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8539), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8537), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52737] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8535), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8533), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52795] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4480), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(4482), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52853] = 6, ACTIONS(8658), 1, anon_sym_LPAREN, STATE(4416), 1, sym_parameters, STATE(6704), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52917] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8425), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8423), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [52975] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8130), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8127), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53033] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8443), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8441), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53091] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53149] = 4, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8268), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8266), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53209] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8503), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8501), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53267] = 6, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(8052), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(8047), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 14, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53331] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8379), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8377), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53389] = 4, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8248), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8246), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53449] = 7, ACTIONS(8197), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7908), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7989), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 14, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53515] = 4, STATE(4015), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8264), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8262), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53575] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8451), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8449), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53633] = 7, ACTIONS(8408), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, sym_delegate, sym_function, ACTIONS(7942), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(7933), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7928), 14, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7926), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53699] = 4, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8297), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8295), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53759] = 8, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8648), 1, anon_sym_DOT, ACTIONS(8652), 1, anon_sym_LBRACK, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8650), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8244), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8242), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53827] = 6, ACTIONS(8661), 1, anon_sym_LPAREN, STATE(4421), 1, sym_parameters, STATE(6458), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53891] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8375), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8373), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [53949] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8462), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8460), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54007] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8472), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8470), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54065] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8479), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8477), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54123] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8543), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8541), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54181] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8341), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8339), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54239] = 7, ACTIONS(8664), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 2, sym_delegate, sym_function, ACTIONS(8052), 2, anon_sym_EQ, anon_sym_STAR, ACTIONS(8047), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(7897), 14, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54305] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8371), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8369), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54363] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8523), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8521), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54421] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8483), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8481), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54479] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8417), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8415), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54537] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8389), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8387), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54595] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8406), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8404), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54653] = 5, ACTIONS(3091), 1, sym_while, ACTIONS(8667), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3070), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54715] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3098), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3100), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54773] = 5, ACTIONS(3076), 1, sym_while, ACTIONS(8404), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8670), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8673), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54835] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8519), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8517), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54893] = 6, ACTIONS(8676), 1, anon_sym_LPAREN, STATE(4465), 1, sym_parameters, STATE(6473), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [54957] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3102), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3104), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55015] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8393), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8391), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55073] = 8, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8648), 1, anon_sym_DOT, ACTIONS(8652), 1, anon_sym_LBRACK, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8650), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8301), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8299), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55141] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8499), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8497), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55199] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8177), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8175), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55257] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55315] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3070), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55373] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55431] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8429), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8427), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55489] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8531), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8529), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55547] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8495), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8493), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55605] = 6, ACTIONS(8679), 1, anon_sym_LPAREN, STATE(4538), 1, sym_parameters, STATE(6898), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55669] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8397), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8395), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55727] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8491), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8489), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55785] = 8, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(8648), 1, anon_sym_DOT, ACTIONS(8652), 1, anon_sym_LBRACK, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8650), 2, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, ACTIONS(8248), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8246), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55853] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8515), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8513), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55911] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8487), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8485), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [55969] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8511), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8509), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56027] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8468), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8466), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56085] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8507), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8505), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56143] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8421), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8419), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56201] = 17, ACTIONS(8646), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8644), 21, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [56286] = 19, ACTIONS(8714), 1, anon_sym_DOT, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8736), 1, anon_sym_EQ, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 7, anon_sym_DOT_DOT_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(8712), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [56375] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56432] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56489] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8468), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8466), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56546] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8393), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8391), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56603] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8389), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8387), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56660] = 4, ACTIONS(8744), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 31, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56719] = 17, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8379), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8377), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [56804] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8458), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8456), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56861] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8483), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8481), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56918] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8487), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8485), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [56975] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8515), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8513), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57032] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8337), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8335), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57089] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8511), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8509), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57146] = 19, ACTIONS(8751), 1, anon_sym_DOT, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8773), 1, anon_sym_EQ, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 7, anon_sym_DOT_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(8749), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [57235] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8507), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8505), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57292] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8491), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8489), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57349] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8421), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8419), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57406] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8495), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8493), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57463] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3070), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3072), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57520] = 7, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57585] = 7, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57650] = 4, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57709] = 7, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57774] = 19, ACTIONS(8714), 1, anon_sym_DOT, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8773), 1, anon_sym_EQ, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 7, anon_sym_DOT_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(8749), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [57863] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8479), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8477), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [57920] = 11, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8629), 5, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8627), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [57993] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8462), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8460), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58050] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8472), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8470), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58107] = 15, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8625), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 22, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [58188] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4598), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(4600), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58245] = 4, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58304] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8451), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8449), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58361] = 13, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8621), 3, anon_sym_DOT, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [58438] = 17, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8397), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8395), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [58523] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8130), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8127), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58580] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8503), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8501), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58637] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8531), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8529), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58694] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3102), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3104), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58751] = 14, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8617), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [58830] = 5, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 13, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58891] = 7, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [58956] = 19, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8736), 1, anon_sym_EQ, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(8751), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 7, anon_sym_DOT_DOT_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, ACTIONS(8712), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [59045] = 12, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8551), 4, anon_sym_DOT, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [59120] = 17, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8375), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8373), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [59205] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8425), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8423), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59262] = 17, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8379), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8377), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [59347] = 6, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 10, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59410] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8375), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8373), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59467] = 17, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8375), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8373), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [59552] = 7, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59617] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8417), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8415), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59674] = 12, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8551), 4, anon_sym_DOT, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [59749] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8406), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8404), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59806] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8437), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8435), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59863] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8341), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8339), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59920] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8177), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8175), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [59977] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8543), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8541), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60034] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8499), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8497), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60091] = 18, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(8783), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 8, anon_sym_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, ACTIONS(8781), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [60178] = 12, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 24, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [60253] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8539), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8537), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60310] = 7, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60375] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4480), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(4482), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60432] = 6, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60495] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8371), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8369), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60552] = 17, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8371), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8369), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [60637] = 17, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8646), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8644), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [60722] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8379), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8377), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60779] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8535), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8533), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60836] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3098), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(3100), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [60893] = 17, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8646), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8644), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [60978] = 7, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61043] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8397), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8395), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61100] = 17, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8718), 1, anon_sym_AMP_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8734), 1, anon_sym_QMARK, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8397), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8395), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61185] = 5, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61246] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 24, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61325] = 13, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 24, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61402] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8429), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8427), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61459] = 11, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8629), 5, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8627), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61532] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8527), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8525), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61589] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8523), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8521), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61646] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 23, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61727] = 11, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 24, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61800] = 18, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(8783), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 8, anon_sym_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, ACTIONS(8781), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [61887] = 7, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [61952] = 4, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [62011] = 7, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 32, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [62076] = 15, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8722), 1, anon_sym_PIPE_PIPE, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8625), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 22, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62157] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8519), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8517), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [62214] = 13, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8621), 3, anon_sym_DOT, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62291] = 17, ACTIONS(8371), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8369), 21, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62376] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8443), 17, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8441), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [62433] = 17, ACTIONS(8753), 1, anon_sym_AMP, ACTIONS(8755), 1, anon_sym_AMP_AMP, ACTIONS(8757), 1, anon_sym_PIPE, ACTIONS(8759), 1, anon_sym_PIPE_PIPE, ACTIONS(8771), 1, anon_sym_QMARK, ACTIONS(8775), 1, anon_sym_CARET, ACTIONS(8777), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8371), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8763), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8765), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8769), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8747), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8761), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8767), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8779), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8369), 20, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62518] = 17, ACTIONS(8375), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8373), 21, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62603] = 6, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 10, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [62666] = 17, ACTIONS(8379), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8377), 21, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62751] = 17, ACTIONS(8397), 1, anon_sym_EQ, ACTIONS(8684), 1, anon_sym_AMP, ACTIONS(8686), 1, anon_sym_AMP_AMP, ACTIONS(8688), 1, anon_sym_PIPE, ACTIONS(8690), 1, anon_sym_PIPE_PIPE, ACTIONS(8702), 1, anon_sym_QMARK, ACTIONS(8704), 1, anon_sym_CARET, ACTIONS(8706), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8694), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8696), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8700), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8682), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8692), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8698), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8708), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8395), 21, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62836] = 14, ACTIONS(8716), 1, anon_sym_AMP, ACTIONS(8720), 1, anon_sym_PIPE, ACTIONS(8738), 1, anon_sym_CARET, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8617), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8726), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8728), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8732), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8724), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8730), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8742), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 23, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [62915] = 5, ACTIONS(8740), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8710), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 13, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 31, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [62976] = 11, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8629), 5, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8627), 22, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [63048] = 4, ACTIONS(8801), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63106] = 7, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63170] = 5, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 13, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63230] = 7, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63294] = 17, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8379), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8377), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [63378] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8429), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8427), 31, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63434] = 6, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 10, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63496] = 17, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8375), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8373), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [63580] = 12, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8551), 4, anon_sym_DOT, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 22, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [63654] = 7, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 7, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63718] = 19, ACTIONS(8751), 1, anon_sym_DOT, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(8818), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 6, anon_sym_DOT_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, ACTIONS(8816), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [63806] = 6, ACTIONS(8822), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4109), 2, sym_type_ctor, aux_sym_foreach_type_repeat1, ACTIONS(8824), 4, sym_alias, sym_enum, sym_ref, sym_scope, ACTIONS(8827), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(8820), 36, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_mixin, sym_typeof, sym_traits, sym_vector, sym_void, [63868] = 4, ACTIONS(8830), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63926] = 4, ACTIONS(8833), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [63984] = 4, ACTIONS(8836), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7897), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(7895), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [64042] = 17, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8397), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8395), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64126] = 4, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 16, anon_sym_SLASH, anon_sym_DOT, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [64184] = 19, ACTIONS(8714), 1, anon_sym_DOT, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(8818), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 6, anon_sym_DOT_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, ACTIONS(8816), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64272] = 13, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8621), 3, anon_sym_DOT, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 22, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64348] = 15, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8625), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 21, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64428] = 14, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8617), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 22, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64506] = 17, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8371), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8369), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64590] = 17, ACTIONS(8797), 1, anon_sym_CARET_CARET, ACTIONS(8804), 1, anon_sym_AMP, ACTIONS(8806), 1, anon_sym_AMP_AMP, ACTIONS(8808), 1, anon_sym_PIPE, ACTIONS(8810), 1, anon_sym_PIPE_PIPE, ACTIONS(8812), 1, anon_sym_QMARK, ACTIONS(8814), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8646), 2, anon_sym_DOT, anon_sym_EQ, ACTIONS(8789), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8791), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8795), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8785), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8787), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8793), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8799), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8644), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64674] = 12, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 22, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64747] = 13, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 22, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64822] = 17, ACTIONS(8397), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8395), 19, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64905] = 17, ACTIONS(8379), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8377), 19, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [64988] = 17, ACTIONS(8375), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8373), 19, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65071] = 17, ACTIONS(8371), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8369), 19, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65154] = 17, ACTIONS(8646), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8644), 19, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65237] = 18, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(8869), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 6, anon_sym_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, ACTIONS(8867), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65322] = 7, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [65385] = 6, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [65446] = 7, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [65509] = 4, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [65566] = 7, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [65629] = 5, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 30, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [65688] = 18, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8859), 1, anon_sym_AMP_AMP, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(8865), 1, anon_sym_QMARK, ACTIONS(8869), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 6, anon_sym_DOT, anon_sym_DASH_DASH, anon_sym_PLUS_PLUS, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, ACTIONS(8867), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65773] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 22, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65850] = 11, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 22, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [65921] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(8841), 1, anon_sym_AMP, ACTIONS(8853), 1, anon_sym_CARET_CARET, ACTIONS(8857), 1, anon_sym_CARET, ACTIONS(8861), 1, anon_sym_PIPE, ACTIONS(8863), 1, anon_sym_PIPE_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8845), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8847), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8851), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8839), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8843), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8849), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8855), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 21, anon_sym_SLASH_EQ, anon_sym_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_DASH_DASH, anon_sym_PLUS_EQ, anon_sym_PLUS_PLUS, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66000] = 5, ACTIONS(6885), 1, anon_sym_LPAREN, ACTIONS(8874), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8877), 4, sym_alias, sym_enum, sym_ref, sym_scope, ACTIONS(8871), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [66059] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 21, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66135] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 20, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66213] = 6, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [66273] = 22, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7642), 1, anon_sym_RPAREN, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8927), 1, anon_sym_COMMA, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6329), 1, sym_ellipses, STATE(6330), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66365] = 22, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7640), 1, anon_sym_RPAREN, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(8937), 1, anon_sym_COMMA, STATE(6258), 1, aux_sym__parameters_repeat1, STATE(6266), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66457] = 13, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 21, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66531] = 22, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7638), 1, anon_sym_RPAREN, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(8939), 1, anon_sym_COMMA, STATE(6363), 1, aux_sym__parameters_repeat1, STATE(6368), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66623] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8583), 5, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66707] = 4, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [66763] = 12, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 21, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [66835] = 7, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [66897] = 7, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [66959] = 5, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [67017] = 11, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 21, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67087] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8631), 5, anon_sym_RBRACE, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67171] = 7, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 29, sym_not_in, sym_not_is, anon_sym_RBRACE, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [67233] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6516), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8949), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67320] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6459), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8952), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67407] = 20, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(8956), 1, anon_sym_SEMI, STATE(5572), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8954), 2, anon_sym_RBRACE, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67494] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6419), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8958), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67581] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6422), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8960), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67668] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6669), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8962), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67755] = 20, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(8964), 1, anon_sym_COMMA, STATE(5572), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8956), 2, anon_sym_RPAREN, anon_sym_SEMI, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67842] = 4, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3062), 2, anon_sym_DOT, anon_sym_LPAREN, ACTIONS(8966), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(3060), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [67897] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6516), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8968), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [67984] = 20, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, STATE(6472), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8970), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [68071] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8972), 4, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [68154] = 18, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8980), 1, anon_sym_AMP_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(8996), 1, anon_sym_QMARK, ACTIONS(8998), 1, anon_sym_EQ, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8583), 3, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8976), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [68236] = 13, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9020), 1, anon_sym_CARET, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [68308] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(1106), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9026), 1, sym_identifier, ACTIONS(9028), 1, anon_sym_DOT, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, STATE(2615), 1, sym_template_declaration, STATE(5352), 1, sym_template_instance, STATE(7696), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4310), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9034), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [68390] = 20, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(8964), 1, anon_sym_COMMA, ACTIONS(9038), 1, anon_sym_RPAREN, STATE(5572), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [68476] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(5303), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9041), 1, sym_identifier, ACTIONS(9043), 1, anon_sym_DOT, STATE(2850), 1, sym_template_declaration, STATE(5446), 1, sym_template_instance, STATE(7610), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4312), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9045), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [68558] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(796), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9047), 1, sym_identifier, ACTIONS(9049), 1, anon_sym_DOT, STATE(2355), 1, sym_template_declaration, STATE(5419), 1, sym_template_instance, STATE(7736), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4309), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9051), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [68640] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(187), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9053), 1, sym_identifier, ACTIONS(9055), 1, anon_sym_DOT, ACTIONS(9057), 1, anon_sym_LPAREN, STATE(1637), 1, sym_template_declaration, STATE(5386), 1, sym_template_instance, STATE(7474), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4313), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9059), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [68722] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(187), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9061), 1, sym_identifier, ACTIONS(9063), 1, anon_sym_DOT, STATE(1712), 1, sym_template_declaration, STATE(5384), 1, sym_template_instance, STATE(7510), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4313), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9059), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [68804] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(796), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9065), 1, sym_identifier, ACTIONS(9067), 1, anon_sym_DOT, STATE(2335), 1, sym_template_declaration, STATE(5397), 1, sym_template_instance, STATE(7748), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4309), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9051), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [68886] = 19, ACTIONS(8972), 1, anon_sym_COLON, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8980), 1, anon_sym_AMP_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(8996), 1, anon_sym_QMARK, ACTIONS(8998), 1, anon_sym_EQ, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9069), 2, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8976), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [68970] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(796), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9047), 1, sym_identifier, ACTIONS(9049), 1, anon_sym_DOT, ACTIONS(9057), 1, anon_sym_LPAREN, STATE(2355), 1, sym_template_declaration, STATE(5419), 1, sym_template_instance, STATE(7736), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4309), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9051), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [69052] = 18, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8583), 3, anon_sym_DOT_DOT_DOT, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [69134] = 5, ACTIONS(9071), 1, anon_sym_RPAREN, ACTIONS(9073), 1, sym_shared, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3062), 2, anon_sym_DOT, anon_sym_LPAREN, ACTIONS(3060), 39, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_typeof, sym_traits, sym_vector, sym_void, [69190] = 4, ACTIONS(9071), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3062), 2, anon_sym_DOT, anon_sym_LPAREN, ACTIONS(3060), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [69244] = 5, ACTIONS(9071), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3062), 2, anon_sym_DOT, anon_sym_LPAREN, ACTIONS(9073), 2, sym_const, sym_inout, ACTIONS(3060), 38, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_immutable, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [69300] = 7, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [69360] = 4, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [69414] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(1106), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9076), 1, sym_identifier, ACTIONS(9078), 1, anon_sym_DOT, STATE(2565), 1, sym_template_declaration, STATE(5411), 1, sym_template_instance, STATE(7708), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4310), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9034), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [69496] = 11, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [69564] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9020), 1, anon_sym_CARET, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(9080), 1, anon_sym_PIPE, ACTIONS(9082), 1, anon_sym_PIPE_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 18, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [69640] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(5303), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9084), 1, sym_identifier, ACTIONS(9086), 1, anon_sym_DOT, STATE(2766), 1, sym_template_declaration, STATE(5333), 1, sym_template_instance, STATE(7587), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4312), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9045), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [69722] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8429), 16, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_CARET_CARET, anon_sym_TILDE, ACTIONS(8427), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [69774] = 7, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [69834] = 18, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9020), 1, anon_sym_CARET, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(9080), 1, anon_sym_PIPE, ACTIONS(9082), 1, anon_sym_PIPE_PIPE, ACTIONS(9090), 1, anon_sym_AMP_AMP, ACTIONS(9092), 1, anon_sym_QMARK, ACTIONS(9094), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8972), 3, anon_sym_DOT_DOT, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9088), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [69916] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(187), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9053), 1, sym_identifier, ACTIONS(9055), 1, anon_sym_DOT, STATE(1637), 1, sym_template_declaration, STATE(5386), 1, sym_template_instance, STATE(7474), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4313), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9059), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [69998] = 4, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [70052] = 18, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8980), 1, anon_sym_AMP_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(8996), 1, anon_sym_QMARK, ACTIONS(8998), 1, anon_sym_EQ, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8631), 3, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_COLON, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8976), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [70134] = 11, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 19, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [70202] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 18, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [70278] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(1106), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9026), 1, sym_identifier, ACTIONS(9028), 1, anon_sym_DOT, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9057), 1, anon_sym_LPAREN, STATE(2615), 1, sym_template_declaration, STATE(5352), 1, sym_template_instance, STATE(7696), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4310), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9034), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [70360] = 13, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 19, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [70432] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 19, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [70506] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(313), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9096), 1, sym_identifier, ACTIONS(9098), 1, anon_sym_DOT, STATE(1419), 1, sym_template_declaration, STATE(5430), 1, sym_template_instance, STATE(7649), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4311), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9100), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [70588] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(65), 1, sym_template, ACTIONS(67), 1, sym_typeof, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9102), 1, sym_identifier, ACTIONS(9104), 1, anon_sym_DOT, STATE(2662), 1, sym_template_declaration, STATE(5391), 1, sym_template_instance, STATE(7565), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4308), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9106), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [70670] = 18, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9020), 1, anon_sym_CARET, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(9080), 1, anon_sym_PIPE, ACTIONS(9082), 1, anon_sym_PIPE_PIPE, ACTIONS(9090), 1, anon_sym_AMP_AMP, ACTIONS(9092), 1, anon_sym_QMARK, ACTIONS(9094), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8583), 3, anon_sym_DOT_DOT, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9088), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [70752] = 5, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [70808] = 7, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [70868] = 7, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [70928] = 4, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [70982] = 6, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [71040] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(313), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9057), 1, anon_sym_LPAREN, ACTIONS(9096), 1, sym_identifier, ACTIONS(9098), 1, anon_sym_DOT, STATE(1419), 1, sym_template_declaration, STATE(5430), 1, sym_template_instance, STATE(7649), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4311), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9100), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [71122] = 18, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8909), 1, anon_sym_AMP_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8925), 1, anon_sym_QMARK, ACTIONS(8929), 1, anon_sym_EQ, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8631), 3, anon_sym_DOT_DOT_DOT, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8905), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71204] = 11, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71272] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8913), 1, anon_sym_PIPE_PIPE, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 18, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71348] = 13, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71420] = 20, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8980), 1, anon_sym_AMP_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(8996), 1, anon_sym_QMARK, ACTIONS(8998), 1, anon_sym_EQ, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(9038), 1, anon_sym_COLON, ACTIONS(9108), 1, anon_sym_COMMA, STATE(5888), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8976), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71506] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8911), 1, anon_sym_PIPE, ACTIONS(8931), 1, anon_sym_CARET, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71580] = 5, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [71636] = 7, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [71696] = 6, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [71754] = 7, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [71814] = 12, ACTIONS(8907), 1, anon_sym_AMP, ACTIONS(8933), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8917), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8919), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8923), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8903), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8915), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8921), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8935), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71884] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9020), 1, anon_sym_CARET, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(9080), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [71958] = 7, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [72018] = 12, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 19, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [72088] = 7, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [72148] = 6, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [72206] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(67), 1, sym_typeof, ACTIONS(313), 1, sym_template, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9110), 1, sym_identifier, ACTIONS(9112), 1, anon_sym_DOT, STATE(1359), 1, sym_template_declaration, STATE(5413), 1, sym_template_instance, STATE(7664), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4311), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9100), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [72288] = 7, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [72348] = 12, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 19, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [72418] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8954), 3, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [72500] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(65), 1, sym_template, ACTIONS(67), 1, sym_typeof, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9057), 1, anon_sym_LPAREN, ACTIONS(9102), 1, sym_identifier, ACTIONS(9104), 1, anon_sym_DOT, STATE(2662), 1, sym_template_declaration, STATE(5391), 1, sym_template_instance, STATE(7565), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4308), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9106), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [72582] = 18, ACTIONS(29), 1, sym_align, ACTIONS(55), 1, sym_package, ACTIONS(57), 1, sym_pragma, ACTIONS(65), 1, sym_template, ACTIONS(67), 1, sym_typeof, ACTIONS(7775), 1, sym_deprecated, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9036), 1, sym_extern, ACTIONS(9114), 1, sym_identifier, ACTIONS(9116), 1, anon_sym_DOT, STATE(2738), 1, sym_template_declaration, STATE(5373), 1, sym_template_instance, STATE(7315), 1, sym_typeof_expression, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(33), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4308), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9106), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [72664] = 5, ACTIONS(9120), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4230), 2, sym_type_ctor, aux_sym_type_repeat1, ACTIONS(9122), 4, sym_const, sym_immutable, sym_inout, sym_shared, ACTIONS(9118), 36, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_mixin, sym_typeof, sym_traits, sym_vector, sym_void, [72720] = 18, ACTIONS(9008), 1, anon_sym_AMP, ACTIONS(9020), 1, anon_sym_CARET, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(9080), 1, anon_sym_PIPE, ACTIONS(9082), 1, anon_sym_PIPE_PIPE, ACTIONS(9090), 1, anon_sym_AMP_AMP, ACTIONS(9092), 1, anon_sym_QMARK, ACTIONS(9094), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9012), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9014), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9018), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8631), 3, anon_sym_DOT_DOT, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9010), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9016), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9024), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9088), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [72802] = 5, ACTIONS(9022), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9006), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 27, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RBRACK, anon_sym_QMARK, anon_sym_COMMA, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [72858] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9125), 3, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [72940] = 20, ACTIONS(8956), 1, anon_sym_COLON, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8980), 1, anon_sym_AMP_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(8996), 1, anon_sym_QMARK, ACTIONS(8998), 1, anon_sym_EQ, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(9108), 1, anon_sym_COMMA, STATE(5888), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8976), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73026] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8369), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73107] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8395), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73188] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9127), 2, anon_sym_RBRACE, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73269] = 13, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9143), 1, anon_sym_CARET, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 18, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73340] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9143), 1, anon_sym_CARET, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(9149), 1, anon_sym_PIPE, ACTIONS(9151), 1, anon_sym_PIPE_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 17, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73415] = 11, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 18, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73482] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(9155), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9153), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73563] = 4, ACTIONS(6885), 1, anon_sym_LPAREN, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [73616] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(9163), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73697] = 7, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [73756] = 4, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(9165), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [73809] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9167), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [73890] = 6, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [73947] = 18, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9143), 1, anon_sym_CARET, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(9149), 1, anon_sym_PIPE, ACTIONS(9151), 1, anon_sym_PIPE_PIPE, ACTIONS(9171), 1, anon_sym_AMP_AMP, ACTIONS(9173), 1, anon_sym_QMARK, ACTIONS(9175), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8972), 2, anon_sym_DOT_DOT, anon_sym_RPAREN, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9169), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74028] = 7, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [74087] = 12, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 18, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74156] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(9177), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74237] = 7, ACTIONS(6651), 1, anon_sym_LPAREN, ACTIONS(9179), 1, anon_sym_BANG, STATE(2416), 1, sym_template_arguments, STATE(2420), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 9, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, anon_sym_AT, ACTIONS(6647), 29, sym_identifier, sym_abstract, sym_align, sym_auto, sym_const, sym_delegate, sym_deprecated, sym_export, sym_extern, sym_final, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_override, sym_package, sym_pragma, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_shared, sym_static, sym_synchronized, sym_template, sym_gshared, [74296] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(9183), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9181), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74377] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8644), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74458] = 5, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [74513] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8377), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74594] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9185), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74675] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8954), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74756] = 7, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [74815] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9187), 2, anon_sym_RBRACE, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [74896] = 4, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(9189), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [74949] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9167), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75030] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9191), 2, anon_sym_RBRACE, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75111] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9153), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75192] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8373), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75273] = 4, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(9193), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [75326] = 18, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9143), 1, anon_sym_CARET, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(9149), 1, anon_sym_PIPE, ACTIONS(9151), 1, anon_sym_PIPE_PIPE, ACTIONS(9171), 1, anon_sym_AMP_AMP, ACTIONS(9173), 1, anon_sym_QMARK, ACTIONS(9175), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8631), 2, anon_sym_DOT_DOT, anon_sym_RPAREN, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9169), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75407] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9195), 2, anon_sym_RBRACK, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75488] = 4, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(9197), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [75541] = 4, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(9199), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [75594] = 4, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(9201), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [75647] = 4, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 26, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [75700] = 18, ACTIONS(8978), 1, anon_sym_AMP, ACTIONS(8980), 1, anon_sym_AMP_AMP, ACTIONS(8982), 1, anon_sym_PIPE, ACTIONS(8984), 1, anon_sym_PIPE_PIPE, ACTIONS(8996), 1, anon_sym_QMARK, ACTIONS(8998), 1, anon_sym_EQ, ACTIONS(9000), 1, anon_sym_CARET, ACTIONS(9002), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8988), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8990), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8994), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9125), 2, anon_sym_COMMA, anon_sym_COLON, ACTIONS(8974), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8986), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8992), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9004), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8976), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75781] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9185), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75862] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9203), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [75943] = 18, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9143), 1, anon_sym_CARET, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(9149), 1, anon_sym_PIPE, ACTIONS(9151), 1, anon_sym_PIPE_PIPE, ACTIONS(9171), 1, anon_sym_AMP_AMP, ACTIONS(9173), 1, anon_sym_QMARK, ACTIONS(9175), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8583), 2, anon_sym_DOT_DOT, anon_sym_RPAREN, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9169), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76024] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76105] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(9131), 1, anon_sym_AMP, ACTIONS(9143), 1, anon_sym_CARET, ACTIONS(9145), 1, anon_sym_CARET_CARET, ACTIONS(9149), 1, anon_sym_PIPE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9135), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9137), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9141), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9129), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9133), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9139), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9147), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 18, anon_sym_SLASH_EQ, anon_sym_DOT_DOT, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_RPAREN, anon_sym_QMARK, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76178] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9205), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76259] = 4, ACTIONS(6972), 1, anon_sym_LPAREN, ACTIONS(9159), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9157), 40, sym_identifier, sym_bool, sym_byte, sym_ubyte, sym_char, sym_short, sym_ushort, sym_int, sym_uint, sym_long, sym_ulong, sym_cent, sym_ucent, sym_wchar, sym_dchar, sym_float, sym_double, sym_real, sym_ifloat, sym_idouble, sym_ireal, sym_cfloat, sym_cdouble, sym_creal, sym_size_t, sym_ptrdiff_t, sym_string, sym_cstring, sym_dstring, sym_wstring, sym_noreturn, sym_const, sym_immutable, sym_inout, sym_mixin, sym_shared, sym_typeof, sym_traits, sym_vector, sym_void, [76312] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9207), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76392] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9209), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76472] = 15, ACTIONS(8625), 1, anon_sym_EQ, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9215), 1, anon_sym_PIPE, ACTIONS(9217), 1, anon_sym_PIPE_PIPE, ACTIONS(9229), 1, anon_sym_CARET, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8623), 16, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76546] = 18, ACTIONS(8972), 1, anon_sym_COLON, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9215), 1, anon_sym_PIPE, ACTIONS(9217), 1, anon_sym_PIPE_PIPE, ACTIONS(9229), 1, anon_sym_CARET, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(9237), 1, anon_sym_AMP_AMP, ACTIONS(9239), 1, anon_sym_QMARK, ACTIONS(9241), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9235), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76626] = 14, ACTIONS(8617), 1, anon_sym_EQ, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9215), 1, anon_sym_PIPE, ACTIONS(9229), 1, anon_sym_CARET, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8615), 17, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76698] = 13, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9229), 1, anon_sym_CARET, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8621), 2, anon_sym_PIPE, anon_sym_EQ, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8619), 17, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76768] = 11, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8629), 4, anon_sym_AMP, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8627), 17, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76834] = 18, ACTIONS(8631), 1, anon_sym_COLON, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9215), 1, anon_sym_PIPE, ACTIONS(9217), 1, anon_sym_PIPE_PIPE, ACTIONS(9229), 1, anon_sym_CARET, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(9237), 1, anon_sym_AMP_AMP, ACTIONS(9239), 1, anon_sym_QMARK, ACTIONS(9241), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9235), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [76914] = 4, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8635), 15, anon_sym_SLASH, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_STAR, anon_sym_PERCENT, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8633), 25, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [76966] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9243), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77046] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9245), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77126] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9247), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77206] = 7, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8609), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8607), 25, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [77264] = 7, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8639), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8637), 25, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [77322] = 6, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8605), 9, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8603), 25, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [77378] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9249), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77458] = 7, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8601), 6, anon_sym_AMP, anon_sym_PIPE, anon_sym_LT, anon_sym_GT, anon_sym_EQ, anon_sym_CARET, ACTIONS(8599), 25, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [77516] = 5, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8613), 12, anon_sym_AMP, anon_sym_PIPE, anon_sym_DASH, anon_sym_PLUS, anon_sym_LT, anon_sym_LT_LT, anon_sym_GT, anon_sym_GT_GT, anon_sym_GT_GT_GT, anon_sym_EQ, anon_sym_CARET, anon_sym_TILDE, ACTIONS(8611), 25, sym_not_in, sym_not_is, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_BANG_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, sym_in, sym_is, [77570] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9251), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77650] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9253), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77730] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9255), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77810] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9257), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77890] = 12, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8551), 3, anon_sym_PIPE, anon_sym_EQ, anon_sym_CARET, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8545), 17, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_EQ, anon_sym_PIPE_PIPE, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_QMARK, anon_sym_COLON, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [77958] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9259), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [78038] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9261), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [78118] = 18, ACTIONS(8583), 1, anon_sym_COLON, ACTIONS(9213), 1, anon_sym_AMP, ACTIONS(9215), 1, anon_sym_PIPE, ACTIONS(9217), 1, anon_sym_PIPE_PIPE, ACTIONS(9229), 1, anon_sym_CARET, ACTIONS(9231), 1, anon_sym_CARET_CARET, ACTIONS(9237), 1, anon_sym_AMP_AMP, ACTIONS(9239), 1, anon_sym_QMARK, ACTIONS(9241), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9221), 2, anon_sym_LT, anon_sym_GT, ACTIONS(9223), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(9227), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(9211), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(9219), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(9225), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(9233), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(9235), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [78198] = 18, ACTIONS(8881), 1, anon_sym_AMP, ACTIONS(8883), 1, anon_sym_PIPE, ACTIONS(8895), 1, anon_sym_CARET, ACTIONS(8897), 1, anon_sym_CARET_CARET, ACTIONS(8901), 1, anon_sym_PIPE_PIPE, ACTIONS(8943), 1, anon_sym_AMP_AMP, ACTIONS(8945), 1, anon_sym_QMARK, ACTIONS(8947), 1, anon_sym_EQ, ACTIONS(9263), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8887), 2, anon_sym_LT, anon_sym_GT, ACTIONS(8889), 2, anon_sym_LT_EQ, anon_sym_GT_EQ, ACTIONS(8893), 2, anon_sym_BANG_EQ, anon_sym_EQ_EQ, ACTIONS(8879), 3, anon_sym_SLASH, anon_sym_STAR, anon_sym_PERCENT, ACTIONS(8885), 3, anon_sym_DASH, anon_sym_PLUS, anon_sym_TILDE, ACTIONS(8891), 3, anon_sym_LT_LT, anon_sym_GT_GT, anon_sym_GT_GT_GT, ACTIONS(8899), 4, sym_not_in, sym_not_is, sym_in, sym_is, ACTIONS(8941), 13, anon_sym_SLASH_EQ, anon_sym_AMP_EQ, anon_sym_PIPE_EQ, anon_sym_DASH_EQ, anon_sym_PLUS_EQ, anon_sym_LT_LT_EQ, anon_sym_GT_GT_EQ, anon_sym_GT_GT_GT_EQ, anon_sym_STAR_EQ, anon_sym_PERCENT_EQ, anon_sym_CARET_EQ, anon_sym_CARET_CARET_EQ, anon_sym_TILDE_EQ, [78278] = 11, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9267), 1, sym_align, ACTIONS(9271), 1, sym_deprecated, ACTIONS(9273), 1, sym_extern, ACTIONS(9275), 1, sym_package, ACTIONS(9277), 1, sym_pragma, ACTIONS(9279), 1, sym_template, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9269), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9265), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78339] = 11, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9267), 1, sym_align, ACTIONS(9271), 1, sym_deprecated, ACTIONS(9273), 1, sym_extern, ACTIONS(9275), 1, sym_package, ACTIONS(9277), 1, sym_pragma, ACTIONS(9281), 1, sym_template, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9269), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9265), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78400] = 11, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9267), 1, sym_align, ACTIONS(9271), 1, sym_deprecated, ACTIONS(9273), 1, sym_extern, ACTIONS(9275), 1, sym_package, ACTIONS(9277), 1, sym_pragma, ACTIONS(9283), 1, sym_template, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9269), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9265), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78461] = 11, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9267), 1, sym_align, ACTIONS(9271), 1, sym_deprecated, ACTIONS(9273), 1, sym_extern, ACTIONS(9275), 1, sym_package, ACTIONS(9277), 1, sym_pragma, ACTIONS(9285), 1, sym_template, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9269), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9265), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78522] = 11, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9267), 1, sym_align, ACTIONS(9271), 1, sym_deprecated, ACTIONS(9273), 1, sym_extern, ACTIONS(9275), 1, sym_package, ACTIONS(9277), 1, sym_pragma, ACTIONS(9287), 1, sym_template, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9269), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9265), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78583] = 11, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9267), 1, sym_align, ACTIONS(9271), 1, sym_deprecated, ACTIONS(9273), 1, sym_extern, ACTIONS(9275), 1, sym_package, ACTIONS(9277), 1, sym_pragma, ACTIONS(9289), 1, sym_template, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9269), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9265), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78644] = 11, ACTIONS(6681), 1, sym_template, ACTIONS(9291), 1, anon_sym_AT, ACTIONS(9297), 1, sym_align, ACTIONS(9303), 1, sym_deprecated, ACTIONS(9306), 1, sym_extern, ACTIONS(9309), 1, sym_package, ACTIONS(9312), 1, sym_pragma, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9300), 4, sym_const, sym_immutable, sym_inout, sym_shared, STATE(4314), 9, sym_type_ctor, sym_align_attribute, sym_deprecated_attribute, sym__attribute, sym_at_attribute, sym__function_attribute_kwd, sym_linkage_attribute, sym_pragma_expression, aux_sym_import_declaration_repeat1, ACTIONS(9294), 16, sym_abstract, sym_auto, sym_export, sym_final, sym_nothrow, sym_override, sym_private, sym_protected, sym_public, sym_pure, sym_ref, sym_return, sym_scope, sym_static, sym_synchronized, sym_gshared, [78705] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1678), 1, sym_function_body, STATE(4713), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4348), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [78779] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2203), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4695), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4359), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [78853] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1398), 1, sym_function_body, STATE(4758), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4332), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [78927] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2870), 1, sym_function_body, STATE(4740), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79001] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2845), 1, sym_function_body, STATE(4752), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4339), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79075] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1362), 1, sym_function_body, STATE(4753), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79149] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2870), 1, sym_function_body, STATE(4740), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4341), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79223] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4765), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4345), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79297] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4765), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79371] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4723), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79445] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1398), 1, sym_function_body, STATE(4758), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79519] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2306), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4716), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4340), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79593] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2277), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4686), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79667] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2741), 1, sym_function_body, STATE(4682), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4349), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79741] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2899), 1, sym_function_body, STATE(4671), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4318), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79815] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4723), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4352), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79889] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2643), 1, sym_function_body, STATE(4776), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [79963] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1464), 1, sym_function_body, STATE(4748), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80037] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2598), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4755), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4323), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80111] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4769), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4331), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80185] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4782), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80259] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4769), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80333] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2741), 1, sym_function_body, STATE(4711), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4344), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80407] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1737), 1, sym_function_body, STATE(4783), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80481] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2783), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(4675), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80555] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2203), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4695), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80629] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2810), 1, sym_function_body, STATE(4706), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80703] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2598), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4703), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4324), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80777] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2783), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(4675), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4347), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80851] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4705), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80925] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(4704), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [80999] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4705), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4362), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81073] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2786), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(4727), 1, sym_constraint, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81147] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1641), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(4685), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81221] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4720), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81295] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2492), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4738), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4336), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81369] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1749), 1, sym_function_body, STATE(4764), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4338), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81443] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(4722), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81517] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2180), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4744), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4360), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81591] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2243), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4707), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4327), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81665] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1720), 1, sym_function_body, STATE(4668), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81739] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1678), 1, sym_function_body, STATE(4713), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81813] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4720), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4378), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81887] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4729), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [81961] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2231), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4709), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82035] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2243), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(4707), 1, sym_constraint, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82109] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2542), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4702), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4358), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82183] = 19, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2499), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4721), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82257] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2643), 1, sym_function_body, STATE(4747), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82331] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4757), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4363), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82405] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4750), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82479] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4757), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82553] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1413), 1, sym_function_body, STATE(4763), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4320), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82627] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1413), 1, sym_function_body, STATE(4763), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82701] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1742), 1, sym_function_body, STATE(4737), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4356), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82775] = 19, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9327), 1, sym_if, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1737), 1, sym_function_body, STATE(4783), 1, sym_constraint, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4355), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82849] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4768), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4365), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82923] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2542), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4785), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4375), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [82997] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2492), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4762), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4366), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83071] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1356), 1, sym_function_body, STATE(1357), 1, sym_block_statement, STATE(4761), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4325), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83145] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4768), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83219] = 19, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1435), 1, sym_function_body, STATE(4777), 1, sym_constraint, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4368), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83293] = 19, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(4729), 1, sym_constraint, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4335), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83367] = 19, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9327), 1, sym_if, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2499), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(4749), 1, sym_constraint, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83441] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1720), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83509] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1749), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83577] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2215), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4541), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83645] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2521), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83713] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2681), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4565), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83781] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2873), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4488), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83849] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2602), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83917] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2872), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4498), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [83985] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2212), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84053] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1737), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84121] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2217), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4387), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84189] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1356), 1, sym_function_body, STATE(1357), 1, sym_block_statement, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4534), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84257] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1413), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84325] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1742), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4497), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84393] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2501), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4509), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84461] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2870), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4577), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84529] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2845), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84597] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1356), 1, sym_function_body, STATE(1357), 1, sym_block_statement, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84665] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2302), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84733] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84801] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2870), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84869] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2485), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [84937] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1458), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85005] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2741), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4554), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85073] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2290), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85141] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1413), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4473), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85209] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2167), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85277] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2505), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85345] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2501), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85413] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2505), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4477), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85481] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1416), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4540), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85549] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2551), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85617] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1420), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4549), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85685] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2598), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4501), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85753] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2521), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4385), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85821] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2306), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4468), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85889] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2542), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [85957] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2588), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4415), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86025] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2250), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4511), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86093] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1648), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4419), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86161] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1723), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86229] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2306), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86297] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2716), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4556), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86365] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1435), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4391), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86433] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2231), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4528), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86501] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1722), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86569] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2212), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4529), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86637] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1470), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4396), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86705] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2891), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4395), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86773] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2231), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86841] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2501), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4410), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86909] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1435), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [86977] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2542), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87045] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2520), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4438), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87113] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2542), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4439), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87181] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2482), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4441), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87249] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2481), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4442), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87317] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2180), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4480), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87385] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4445), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87453] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2492), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87521] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87589] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2492), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4450), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87657] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2541), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87725] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2545), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87793] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4453), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87861] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2541), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4454), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87929] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [87997] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2520), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4520), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88065] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2740), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4584), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88133] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2545), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4456), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88201] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4535), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88269] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88337] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1742), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88405] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2638), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4460), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88473] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2640), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88541] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2638), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88609] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2670), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88677] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2646), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88745] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2542), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4539), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88813] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2640), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4462), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88881] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2658), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [88949] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2652), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89017] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2652), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4464), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89085] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2658), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89153] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1676), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4380), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89221] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2590), 1, sym_block_statement, STATE(2670), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89289] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1422), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4430), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89357] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2716), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4537), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89425] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2899), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4399), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89493] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2203), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89561] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2200), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4562), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89629] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2482), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4571), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89697] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2741), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89765] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1749), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4388), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89833] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1362), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89901] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2740), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4471), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [89969] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2652), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4455), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90037] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2481), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4574), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90105] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2521), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90173] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2485), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90241] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2652), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90309] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2243), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90377] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1426), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4401), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90445] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2646), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90513] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2795), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4492), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90581] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2781), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4517), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90649] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2274), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4397), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90717] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2505), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90785] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2501), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90853] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2819), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90921] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1720), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4521), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [90989] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1723), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4523), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91057] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1457), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4575), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91125] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2899), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91193] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1722), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4531), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91261] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91329] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1511), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91397] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9391), 1, sym_in, ACTIONS(9393), 1, sym_out, STATE(2588), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4431), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91465] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1678), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91533] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2813), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91601] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2505), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4382), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91669] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2840), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91737] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91805] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4560), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91873] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4585), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [91941] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1362), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4578), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92009] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1658), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4424), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92077] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2640), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4459), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92145] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2521), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4586), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92213] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2272), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4403), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92281] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2551), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92349] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2741), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4494), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92417] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2180), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92485] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1499), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4558), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92553] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2826), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92621] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2817), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4500), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92689] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2717), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4400), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92757] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2717), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92825] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2817), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92893] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1646), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4559), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [92961] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2638), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93029] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2492), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93097] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1643), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93165] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2598), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4398), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93233] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1646), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93301] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2640), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93369] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1499), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93437] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2590), 1, sym_block_statement, STATE(2638), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4479), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93505] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2290), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4405), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93573] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2274), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93641] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2272), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93709] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2681), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4516), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93777] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1634), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93845] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1643), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4553), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93913] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2719), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4406), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [93981] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1398), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94049] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94117] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4407), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94185] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2598), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94253] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2362), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4420), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94321] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94389] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1457), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94457] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2200), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94525] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2492), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4544), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94593] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2784), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4513), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94661] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94729] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2789), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94797] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2675), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4566), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94865] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1618), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4563), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [94933] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2781), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95001] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1426), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95069] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2784), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95137] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2813), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4545), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95205] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2810), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4550), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95273] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1607), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95341] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95409] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1568), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4451), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95477] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2598), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95545] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2717), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4478), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95613] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1541), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95681] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1618), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95749] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95817] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2203), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4428), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95885] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9341), 1, sym_in, ACTIONS(9343), 1, sym_out, STATE(2279), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [95953] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1582), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96021] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2719), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4486), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96089] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2717), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96157] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2719), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96225] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4487), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96293] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2545), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4482), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96361] = 17, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9329), 1, sym_in, ACTIONS(9331), 1, sym_out, STATE(1674), 1, sym_block_statement, STATE(1737), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4379), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96429] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1460), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4495), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96497] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2541), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96565] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2819), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4548), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96633] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2783), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96701] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2545), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96769] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1474), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96837] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2719), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96905] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2810), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [96973] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1460), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97041] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2675), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4576), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97109] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9365), 1, sym_in, ACTIONS(9367), 1, sym_out, STATE(2791), 1, sym_block_statement, STATE(2845), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4573), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97177] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4524), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97245] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2541), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4519), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97313] = 17, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9353), 1, sym_in, ACTIONS(9355), 1, sym_out, STATE(1357), 1, sym_block_statement, STATE(1458), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4525), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97381] = 17, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9375), 1, sym_in, ACTIONS(9377), 1, sym_out, STATE(2712), 1, sym_block_statement, STATE(2741), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97449] = 17, ACTIONS(155), 1, sym_in, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97517] = 17, ACTIONS(155), 1, sym_in, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, STATE(2602), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [97585] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7759), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7761), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97621] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7767), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7769), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97657] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7755), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7757), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97693] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7747), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7749), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97729] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7743), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7745), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97765] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7739), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7741), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97801] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7763), 12, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, ACTIONS(7765), 15, sym_identifier, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [97837] = 7, ACTIONS(9395), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7664), 3, sym_identifier, sym_delegate, sym_function, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9398), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, ACTIONS(7662), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [97880] = 7, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7674), 3, sym_identifier, sym_delegate, sym_function, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9401), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, ACTIONS(7672), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [97923] = 7, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4595), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7656), 3, sym_identifier, sym_delegate, sym_function, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9401), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, ACTIONS(7654), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [97966] = 7, ACTIONS(9403), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4599), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7656), 3, sym_identifier, sym_delegate, sym_function, STATE(4653), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7654), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, ACTIONS(9405), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98007] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3006), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3004), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98040] = 7, ACTIONS(9403), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4604), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7674), 3, sym_identifier, sym_delegate, sym_function, STATE(4653), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7672), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, ACTIONS(9405), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98081] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3050), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3048), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98114] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6645), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6643), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98147] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3058), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3056), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98180] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3046), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3044), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98213] = 7, ACTIONS(9407), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4604), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7664), 3, sym_identifier, sym_delegate, sym_function, STATE(4653), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7662), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, ACTIONS(9410), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98254] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3010), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3008), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98287] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3038), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3036), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98320] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3014), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3012), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98353] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2994), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(2992), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98386] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2986), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(2984), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98419] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3022), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3020), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98452] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3026), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3024), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98485] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3034), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3032), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98518] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3018), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3016), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98551] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2998), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(2996), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98584] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6657), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98617] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3002), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3000), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98650] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3030), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(3028), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98683] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6655), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6653), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98716] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6641), 9, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6639), 15, sym_identifier, anon_sym_DOT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_in, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98749] = 7, ACTIONS(7674), 1, sym_in, ACTIONS(9413), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4622), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7672), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_out, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98789] = 7, ACTIONS(7656), 1, sym_in, ACTIONS(9413), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4620), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7654), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_out, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98829] = 7, ACTIONS(7664), 1, sym_in, ACTIONS(9415), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4622), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7662), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_out, ACTIONS(9418), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98869] = 7, ACTIONS(9421), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4623), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7664), 3, sym_identifier, sym_delegate, sym_function, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7662), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, ACTIONS(9398), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98908] = 5, ACTIONS(6647), 1, sym_in, ACTIONS(9424), 1, anon_sym_LPAREN, STATE(4636), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 19, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_SEMI, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [98943] = 7, ACTIONS(19), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4629), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7656), 3, sym_identifier, sym_delegate, sym_function, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7654), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, ACTIONS(9401), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [98982] = 7, ACTIONS(9426), 1, anon_sym_BANG, ACTIONS(9428), 1, anon_sym_LPAREN, STATE(4615), 1, sym_template_arguments, STATE(4654), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 7, anon_sym_DOT_DOT_DOT, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6647), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99021] = 6, ACTIONS(9430), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4628), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4653), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7654), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, ACTIONS(9432), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99058] = 6, ACTIONS(9430), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4630), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4653), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7672), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, ACTIONS(9432), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99095] = 7, ACTIONS(19), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4623), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, ACTIONS(7674), 3, sym_identifier, sym_delegate, sym_function, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7672), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, ACTIONS(9401), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99134] = 6, ACTIONS(9434), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4630), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4653), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7662), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, ACTIONS(9437), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99171] = 3, ACTIONS(6661), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6663), 20, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_SEMI, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [99201] = 7, ACTIONS(6651), 1, anon_sym_LPAREN, ACTIONS(9440), 1, anon_sym_BANG, STATE(2416), 1, sym_template_arguments, STATE(2420), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6647), 7, sym_identifier, sym_delegate, sym_deprecated, sym_function, sym_module, sym_nothrow, sym_pure, ACTIONS(6649), 10, anon_sym_LBRACE, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, anon_sym_AT, [99239] = 7, ACTIONS(6647), 1, sym_in, ACTIONS(9424), 1, anon_sym_LPAREN, ACTIONS(9426), 1, anon_sym_BANG, STATE(4615), 1, sym_template_arguments, STATE(4636), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 16, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, sym_const, sym_delegate, sym_do, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [99277] = 3, ACTIONS(6675), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6677), 20, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_SEMI, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [99307] = 7, ACTIONS(7664), 1, sym_in, ACTIONS(9442), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(7662), 6, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_EQ_GT, sym_do, sym_if, sym_out, ACTIONS(9418), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99345] = 3, ACTIONS(6669), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6671), 20, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_SEMI, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [99375] = 3, ACTIONS(6665), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6667), 20, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_SEMI, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_delegate, sym_do, sym_function, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [99405] = 7, ACTIONS(6647), 1, sym_in, ACTIONS(9424), 1, anon_sym_LPAREN, ACTIONS(9445), 1, anon_sym_BANG, STATE(4636), 1, sym_arguments, STATE(4715), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 15, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [99442] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9447), 2, sym_nothrow, sym_pure, ACTIONS(7656), 3, sym_identifier, sym_delegate, sym_function, STATE(4641), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7654), 10, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [99477] = 5, ACTIONS(9428), 1, anon_sym_LPAREN, STATE(4654), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 7, anon_sym_DOT_DOT_DOT, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6647), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99510] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9449), 2, sym_nothrow, sym_pure, ACTIONS(7674), 3, sym_identifier, sym_delegate, sym_function, STATE(4643), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7672), 10, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [99545] = 6, ACTIONS(7497), 1, anon_sym_LPAREN, ACTIONS(9426), 1, anon_sym_BANG, STATE(3121), 1, sym_arguments, STATE(4615), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 16, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99580] = 6, ACTIONS(9451), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9454), 2, sym_nothrow, sym_pure, ACTIONS(7841), 3, sym_identifier, sym_delegate, sym_function, STATE(4643), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7839), 10, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [99615] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6677), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6675), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99643] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7763), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7765), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99671] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7755), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7757), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99699] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6667), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6665), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99727] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7743), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7745), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99755] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6663), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6661), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99783] = 7, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9459), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4635), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9457), 4, anon_sym_LBRACE, anon_sym_EQ_GT, sym_do, sym_out, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99819] = 7, ACTIONS(9319), 1, anon_sym_AT, ACTIONS(9463), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4650), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9461), 4, anon_sym_LBRACE, anon_sym_EQ_GT, sym_do, sym_out, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99855] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7759), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7761), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99883] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7747), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7749), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99911] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6671), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(6669), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99939] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7739), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7741), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99967] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7767), 8, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, anon_sym_AT, ACTIONS(7769), 11, sym_identifier, sym_const, sym_delegate, sym_function, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [99995] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8169), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8167), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100022] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8102), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100049] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8226), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8224), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100076] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8191), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100103] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8145), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8143), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100130] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8055), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8057), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100157] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8061), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8063), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100184] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8230), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8228), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100211] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8065), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8067), 11, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [100238] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8025), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8027), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100265] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8108), 7, sym_identifier, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, ACTIONS(8106), 11, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [100292] = 13, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, STATE(1643), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [100338] = 6, ACTIONS(9467), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9470), 2, sym_nothrow, sym_pure, ACTIONS(7841), 3, sym_identifier, sym_delegate, sym_function, STATE(4669), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7839), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [100370] = 3, ACTIONS(3004), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3006), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [100396] = 13, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, STATE(2791), 1, sym_block_statement, STATE(2870), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [100442] = 3, ACTIONS(3008), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3010), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [100468] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7674), 6, sym_identifier, sym_delegate, sym_do, sym_function, sym_in, sym_out, ACTIONS(7672), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [100494] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4904), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3957), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [100534] = 13, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, STATE(2786), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [100580] = 3, ACTIONS(6639), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6641), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [100606] = 3, ACTIONS(2984), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2986), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [100632] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4951), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [100672] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4951), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [100712] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4977), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [100752] = 3, ACTIONS(3016), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3018), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [100778] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [100824] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4977), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [100864] = 3, ACTIONS(2996), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2998), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [100890] = 13, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, STATE(1601), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [100936] = 13, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, STATE(2305), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [100982] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4908), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101022] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4651), 1, sym__parameters, STATE(4946), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3957), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101062] = 3, ACTIONS(3000), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3002), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [101088] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4908), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101128] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4819), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3948), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101168] = 5, ACTIONS(7741), 1, sym_in, ACTIONS(9483), 1, anon_sym_LPAREN, ACTIONS(9485), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7739), 14, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [101198] = 10, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4958), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6454), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101238] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4651), 1, sym__parameters, STATE(4819), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3948), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101278] = 13, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, STATE(2231), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101324] = 3, ACTIONS(6643), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6645), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [101350] = 10, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, STATE(4958), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6454), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101390] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4890), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101430] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8173), 6, sym_identifier, sym_delegate, sym_do, sym_function, sym_in, sym_out, ACTIONS(8171), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [101456] = 3, ACTIONS(3012), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3014), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [101482] = 3, ACTIONS(6653), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6655), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [101508] = 13, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101554] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101600] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, STATE(2501), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101646] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, STATE(2499), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101692] = 13, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, STATE(2784), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101738] = 13, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, STATE(2277), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101784] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4890), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101824] = 13, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, STATE(2274), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101870] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4970), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101910] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, STATE(2691), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [101956] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4970), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [101996] = 13, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, STATE(1641), 1, sym_function_body, STATE(1674), 1, sym_block_statement, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102042] = 3, ACTIONS(3036), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3038), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [102068] = 3, ACTIONS(6657), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [102094] = 13, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, STATE(2203), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102140] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4651), 1, sym__parameters, STATE(4818), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3948), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102180] = 3, ACTIONS(3044), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3046), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [102206] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4651), 1, sym__parameters, STATE(4904), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3957), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102246] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, STATE(2499), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102292] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, STATE(2555), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102338] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, STATE(2501), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102384] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102430] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4818), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3948), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102470] = 3, ACTIONS(3048), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3050), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [102496] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4856), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102536] = 13, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, STATE(2791), 1, sym_block_statement, STATE(2830), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102582] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4856), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102622] = 13, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102668] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4855), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102708] = 3, ACTIONS(3024), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3026), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [102734] = 10, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, STATE(4836), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6412), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102774] = 10, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, STATE(4847), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4045), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102814] = 10, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4847), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4045), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102854] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4854), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102894] = 10, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, STATE(4867), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6440), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [102934] = 13, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, STATE(1674), 1, sym_block_statement, STATE(1678), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [102980] = 13, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103026] = 10, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4836), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6412), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103066] = 13, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, STATE(2791), 1, sym_block_statement, STATE(2810), 1, sym_function_body, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103112] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4946), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3957), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103152] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4854), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103192] = 10, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, STATE(4906), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4065), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103232] = 13, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9335), 1, anon_sym_SEMI, ACTIONS(9337), 1, anon_sym_EQ_GT, ACTIONS(9339), 1, sym_do, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, STATE(2243), 1, sym_function_body, STATE(2363), 1, sym_block_statement, STATE(5264), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4985), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2361), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103278] = 10, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4906), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4065), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103318] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4855), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103358] = 13, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, STATE(2590), 1, sym_block_statement, STATE(2660), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103404] = 13, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, STATE(1357), 1, sym_block_statement, STATE(1514), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103450] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, STATE(2555), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5000), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103496] = 13, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, STATE(2590), 1, sym_block_statement, STATE(2640), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103542] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4875), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3987), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103582] = 13, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9359), 1, anon_sym_SEMI, ACTIONS(9361), 1, anon_sym_EQ_GT, ACTIONS(9363), 1, sym_do, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, STATE(2783), 1, sym_function_body, STATE(2791), 1, sym_block_statement, STATE(5298), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4982), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2460), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103628] = 13, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, STATE(1357), 1, sym_block_statement, STATE(1460), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103674] = 6, ACTIONS(9403), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9497), 2, sym_nothrow, sym_pure, ACTIONS(7656), 3, sym_identifier, sym_delegate, sym_function, STATE(4771), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7654), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [103706] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, STATE(2686), 1, sym_function_body, STATE(2712), 1, sym_block_statement, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103752] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4651), 1, sym__parameters, STATE(4875), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3987), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103792] = 13, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, STATE(2590), 1, sym_block_statement, STATE(2643), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103838] = 13, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, STATE(1357), 1, sym_block_statement, STATE(1464), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [103884] = 10, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, STATE(4899), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4070), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103924] = 10, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4899), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4070), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [103964] = 13, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, STATE(1357), 1, sym_block_statement, STATE(1398), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104010] = 13, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, STATE(2575), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104056] = 13, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, STATE(1357), 1, sym_block_statement, STATE(1362), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104102] = 13, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, STATE(1674), 1, sym_block_statement, STATE(1737), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104148] = 13, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9369), 1, anon_sym_SEMI, ACTIONS(9371), 1, anon_sym_EQ_GT, ACTIONS(9373), 1, sym_do, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, STATE(2712), 1, sym_block_statement, STATE(2714), 1, sym_function_body, STATE(5250), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4981), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2447), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104194] = 10, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4867), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6440), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [104234] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7656), 6, sym_identifier, sym_delegate, sym_do, sym_function, sym_in, sym_out, ACTIONS(7654), 11, anon_sym_LBRACE, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [104260] = 13, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, STATE(2547), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104306] = 13, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(2590), 1, sym_block_statement, STATE(2643), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104352] = 3, ACTIONS(3028), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3030), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [104378] = 6, ACTIONS(9403), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9499), 2, sym_nothrow, sym_pure, ACTIONS(7674), 3, sym_identifier, sym_delegate, sym_function, STATE(4669), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7672), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [104410] = 3, ACTIONS(3032), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3034), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [104436] = 3, ACTIONS(3020), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3022), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [104462] = 3, ACTIONS(2992), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2994), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [104488] = 3, ACTIONS(3056), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3058), 16, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_if, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [104514] = 13, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(2590), 1, sym_block_statement, STATE(2660), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104560] = 13, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9347), 1, anon_sym_SEMI, ACTIONS(9349), 1, anon_sym_EQ_GT, ACTIONS(9351), 1, sym_do, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, STATE(1357), 1, sym_block_statement, STATE(1413), 1, sym_function_body, STATE(5316), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4988), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1558), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104606] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4651), 1, sym__parameters, STATE(4826), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [104646] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(6615), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4651), 1, sym__parameters, STATE(4938), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3987), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [104686] = 10, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, STATE(4826), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [104726] = 10, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(7503), 1, anon_sym_LPAREN, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(4938), 1, sym__parameter_with_attributes, STATE(5057), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3987), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [104766] = 13, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9385), 1, sym_do, ACTIONS(9477), 1, sym_in, STATE(2590), 1, sym_block_statement, STATE(2640), 1, sym_function_body, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4986), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(5161), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104812] = 13, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9317), 1, anon_sym_SEMI, ACTIONS(9321), 1, anon_sym_EQ_GT, ACTIONS(9325), 1, sym_do, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, STATE(1674), 1, sym_block_statement, STATE(1720), 1, sym_function_body, STATE(5312), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4984), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(1677), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104858] = 5, ACTIONS(9501), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9504), 2, sym_nothrow, sym_pure, STATE(4784), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7839), 10, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_out, [104888] = 13, ACTIONS(9381), 1, anon_sym_SEMI, ACTIONS(9383), 1, anon_sym_EQ_GT, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9389), 1, sym_do, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, STATE(2478), 1, sym_function_body, STATE(2590), 1, sym_block_statement, STATE(5282), 1, aux_sym__in_out_contract_expressions, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4992), 2, sym__function_contract, aux_sym_function_body_repeat1, STATE(2429), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5449), 3, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [104934] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3050), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [104957] = 6, ACTIONS(9507), 1, anon_sym_BANG, ACTIONS(9509), 1, anon_sym_LPAREN, STATE(4793), 1, sym_template_arguments, STATE(5013), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 12, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [104988] = 5, ACTIONS(9511), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9513), 2, sym_nothrow, sym_pure, STATE(4784), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7672), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_in, sym_out, [105017] = 5, ACTIONS(9511), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9515), 2, sym_nothrow, sym_pure, STATE(4788), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7654), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_in, sym_out, [105046] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9517), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(4813), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105077] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2986), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105100] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3006), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105123] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105146] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6641), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105169] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9519), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105200] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6655), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105223] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6645), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105246] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9521), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(4795), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105277] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9521), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105308] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2994), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105331] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3018), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105354] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2998), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105377] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3002), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105400] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3014), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105423] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3026), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105446] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3030), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105469] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3046), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105492] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3034), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105515] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3022), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105538] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3038), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105561] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3010), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105584] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9523), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(4799), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105615] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9523), 2, anon_sym_COMMA, anon_sym_SEMI, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105646] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3058), 16, anon_sym_LBRACE, anon_sym_DOT, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_nothrow, sym_out, sym_pure, [105669] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9525), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105699] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9529), 1, sym_htmlentity, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9533), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9537), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4973), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [105733] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9539), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4843), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105763] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9541), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3957), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [105797] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9543), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3957), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [105831] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9547), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [105865] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9551), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105895] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9553), 1, anon_sym_LBRACE, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9561), 1, anon_sym_SEMI, ACTIONS(9563), 1, anon_sym_COLON, ACTIONS(9565), 1, anon_sym_EQ, STATE(1484), 1, sym__enum_body, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [105941] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9567), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4929), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [105971] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9569), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106001] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9571), 1, sym_htmlentity, ACTIONS(9573), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9575), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4846), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [106035] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9577), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3789), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106069] = 5, ACTIONS(9430), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9579), 2, sym_nothrow, sym_pure, STATE(4962), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7672), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [106097] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9569), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4960), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106127] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9581), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106157] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(8321), 1, anon_sym_EQ_GT, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3804), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106191] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9583), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4909), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106221] = 8, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, ACTIONS(9585), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4070), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106255] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9587), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106285] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9589), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106319] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9591), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4873), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106349] = 8, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, ACTIONS(9593), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6440), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106383] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9595), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4954), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106413] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9597), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [106447] = 4, ACTIONS(9601), 1, anon_sym_DOT, ACTIONS(9603), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9599), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [106473] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9605), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4959), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106503] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9607), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4912), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106533] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9609), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106563] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9611), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106593] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9581), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4865), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106623] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9613), 1, anon_sym_LBRACE, ACTIONS(9615), 1, anon_sym_SEMI, ACTIONS(9617), 1, anon_sym_COLON, STATE(2416), 1, sym_template_arguments, STATE(2508), 1, sym__enum_body, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [106669] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9619), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [106703] = 8, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, ACTIONS(9621), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4062), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106737] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9623), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106771] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9625), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106801] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9625), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4913), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106831] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9627), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4926), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [106861] = 4, ACTIONS(9603), 1, sym_in, ACTIONS(9629), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9599), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [106887] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9631), 1, anon_sym_LBRACE, ACTIONS(9633), 1, anon_sym_SEMI, ACTIONS(9635), 1, anon_sym_COLON, STATE(2416), 1, sym_template_arguments, STATE(2493), 1, sym__enum_body, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [106933] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9637), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [106967] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9639), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107001] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9641), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3789), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107035] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9643), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107065] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9645), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4922), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107095] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9647), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4833), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107125] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9649), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4871), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107155] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9651), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4824), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107185] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9653), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [107219] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9655), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107249] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(7911), 1, anon_sym_EQ_GT, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3804), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107283] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9657), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107313] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9659), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3987), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107347] = 8, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, ACTIONS(9661), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6454), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107381] = 8, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(8036), 1, anon_sym_EQ_GT, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4048), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107415] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9666), 1, sym_htmlentity, ACTIONS(9671), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9669), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9674), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9663), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [107449] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9677), 1, sym_htmlentity, ACTIONS(9679), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9681), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4888), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [107483] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9647), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107513] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9683), 1, sym_htmlentity, ACTIONS(9685), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9687), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4901), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [107547] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9689), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107577] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7940), 8, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [107609] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9691), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3948), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107643] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9693), 1, anon_sym_LBRACE, ACTIONS(9695), 1, anon_sym_SEMI, ACTIONS(9697), 1, anon_sym_COLON, STATE(2358), 1, sym__enum_body, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [107689] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9699), 1, sym_htmlentity, ACTIONS(9701), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9703), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4862), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [107723] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9705), 1, sym_htmlentity, ACTIONS(9707), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9709), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4838), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [107757] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9711), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4932), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107787] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(8040), 1, anon_sym_EQ_GT, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3967), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [107821] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9643), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4939), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107851] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9713), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4857), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107881] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9715), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4898), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107911] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9587), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4914), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107941] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9713), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [107971] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9717), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108005] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9719), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108035] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9721), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108069] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9723), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108099] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9725), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108133] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9727), 1, sym_htmlentity, ACTIONS(9729), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9731), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4886), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108167] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9733), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108197] = 8, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, ACTIONS(9735), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6675), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108231] = 4, ACTIONS(9603), 1, sym_in, ACTIONS(9737), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9599), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [108257] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9739), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3797), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108291] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9613), 1, anon_sym_LBRACE, ACTIONS(9741), 1, anon_sym_SEMI, ACTIONS(9743), 1, anon_sym_COLON, STATE(2416), 1, sym_template_arguments, STATE(2583), 1, sym__enum_body, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [108337] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9745), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4863), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108367] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9651), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108397] = 8, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, ACTIONS(9747), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4065), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108431] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9749), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108465] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9751), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108499] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9591), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108529] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9719), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4849), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108559] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9753), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3964), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108593] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(8210), 1, anon_sym_EQ_GT, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3967), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108627] = 8, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9491), 1, sym_do, ACTIONS(9755), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4045), 2, sym_block_statement, sym__specified_function_body, STATE(5010), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108661] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9757), 1, sym_htmlentity, ACTIONS(9759), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9761), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4900), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108695] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9763), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3791), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [108729] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9765), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108759] = 5, ACTIONS(9430), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9767), 2, sym_nothrow, sym_pure, STATE(4827), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7654), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [108787] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9765), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4902), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108817] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9769), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108847] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9771), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108877] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9773), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [108907] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9775), 1, anon_sym_LBRACE, ACTIONS(9777), 1, anon_sym_SEMI, ACTIONS(9779), 1, anon_sym_COLON, STATE(2416), 1, sym_template_arguments, STATE(2801), 1, sym__enum_body, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [108953] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9781), 1, sym_htmlentity, ACTIONS(9783), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9785), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4931), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [108987] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9771), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4965), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109017] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9787), 1, sym_htmlentity, ACTIONS(9789), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9791), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4948), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [109051] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9769), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4976), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109081] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9693), 1, anon_sym_LBRACE, ACTIONS(9793), 1, anon_sym_SEMI, ACTIONS(9795), 1, anon_sym_COLON, STATE(2213), 1, sym__enum_body, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [109127] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9797), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109157] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9799), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109187] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9801), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4892), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109217] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9799), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4974), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109247] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9551), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4967), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109277] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9801), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109307] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9803), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4829), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109337] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9723), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4842), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109367] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9805), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109397] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9803), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109427] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9807), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [109461] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9809), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109491] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9805), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4885), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109521] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9539), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109551] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9811), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4821), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109581] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9813), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4921), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109611] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9815), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109641] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9817), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3948), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [109675] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9819), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109705] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9631), 1, anon_sym_LBRACE, ACTIONS(9821), 1, anon_sym_SEMI, ACTIONS(9823), 1, anon_sym_COLON, STATE(2416), 1, sym_template_arguments, STATE(2701), 1, sym__enum_body, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [109751] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9809), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4934), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109781] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(8059), 1, anon_sym_EQ_GT, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3804), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [109815] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9811), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109845] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9825), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4943), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [109875] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9827), 1, anon_sym_LBRACE, ACTIONS(9829), 1, anon_sym_SEMI, ACTIONS(9831), 1, anon_sym_COLON, STATE(1682), 1, sym__enum_body, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [109921] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9833), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3964), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [109955] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9835), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [109989] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9837), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [110023] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9813), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110053] = 8, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, ACTIONS(9839), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6412), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [110087] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9841), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3789), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [110121] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9843), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4889), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110151] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9553), 1, anon_sym_LBRACE, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9845), 1, anon_sym_SEMI, ACTIONS(9847), 1, anon_sym_COLON, STATE(1475), 1, sym__enum_body, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [110197] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9843), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110227] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9849), 1, sym_htmlentity, ACTIONS(9851), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9853), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4820), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [110261] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9855), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4937), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110291] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9857), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4887), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110321] = 8, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9487), 1, sym_do, ACTIONS(9859), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6487), 2, sym_block_statement, sym__specified_function_body, STATE(5006), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [110355] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9861), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110385] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9863), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110415] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9861), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4930), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110445] = 5, ACTIONS(9865), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9868), 2, sym_nothrow, sym_pure, STATE(4962), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(7839), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [110473] = 8, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9475), 1, sym_do, ACTIONS(9477), 1, sym_in, ACTIONS(9871), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3987), 2, sym_block_statement, sym__specified_function_body, STATE(5034), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [110507] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9863), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4815), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110537] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9873), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110567] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9875), 1, sym_htmlentity, ACTIONS(9877), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9879), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4947), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [110601] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9881), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110631] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9883), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [110665] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9885), 1, sym_htmlentity, ACTIONS(9887), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9889), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4968), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [110699] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9891), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [110733] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9745), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110763] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9893), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4949), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110793] = 8, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(9535), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(9545), 1, sym_htmlentity, ACTIONS(9895), 2, anon_sym_DQUOTE, anon_sym_DOLLAR_DQUOTE, ACTIONS(9549), 3, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, STATE(4869), 3, sym_escape_sequence, sym_interpolation_expression, aux_sym_interpolated_quoted_string_repeat1, ACTIONS(9527), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [110827] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9893), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110857] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9733), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4971), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110887] = 6, ACTIONS(9032), 1, anon_sym_AT, ACTIONS(9855), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4594), 2, sym_member_function_attribute, aux_sym_alias_declaration_repeat2, STATE(4590), 3, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, ACTIONS(9323), 8, sym_const, sym_immutable, sym_inout, sym_nothrow, sym_pure, sym_return, sym_scope, sym_shared, [110917] = 8, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9479), 1, sym_do, ACTIONS(9897), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3790), 2, sym_block_statement, sym__specified_function_body, STATE(5042), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [110951] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9775), 1, anon_sym_LBRACE, ACTIONS(9899), 1, anon_sym_SEMI, ACTIONS(9901), 1, anon_sym_COLON, STATE(2416), 1, sym_template_arguments, STATE(2884), 1, sym__enum_body, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [110997] = 14, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, ACTIONS(9827), 1, anon_sym_LBRACE, ACTIONS(9903), 1, anon_sym_SEMI, ACTIONS(9905), 1, anon_sym_COLON, STATE(1619), 1, sym__enum_body, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [111043] = 3, ACTIONS(9909), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9907), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111066] = 9, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9377), 1, sym_out, ACTIONS(9489), 1, sym_in, ACTIONS(9911), 1, anon_sym_SEMI, ACTIONS(9913), 1, sym_do, STATE(2554), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(2457), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111101] = 9, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(9367), 1, sym_out, ACTIONS(9473), 1, sym_in, ACTIONS(9915), 1, anon_sym_SEMI, ACTIONS(9917), 1, sym_do, STATE(2898), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(2454), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111136] = 3, ACTIONS(9921), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9919), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111159] = 9, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(9331), 1, sym_out, ACTIONS(9465), 1, sym_in, ACTIONS(9923), 1, anon_sym_SEMI, ACTIONS(9925), 1, sym_do, STATE(1752), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(1747), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111194] = 9, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(9343), 1, sym_out, ACTIONS(9481), 1, sym_in, ACTIONS(9927), 1, anon_sym_SEMI, ACTIONS(9929), 1, sym_do, STATE(2315), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(2303), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111229] = 9, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9931), 1, anon_sym_SEMI, ACTIONS(9933), 1, sym_do, STATE(2544), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5154), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111264] = 3, ACTIONS(9603), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9599), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111287] = 9, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(9355), 1, sym_out, ACTIONS(9495), 1, sym_in, ACTIONS(9935), 1, anon_sym_SEMI, ACTIONS(9937), 1, sym_do, STATE(1434), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(1518), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111322] = 3, ACTIONS(9941), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9939), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111345] = 8, ACTIONS(7982), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(9945), 1, anon_sym_STAR, ACTIONS(9947), 1, sym_delegate, ACTIONS(9949), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5001), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 7, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [111378] = 3, ACTIONS(9953), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9951), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111401] = 9, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(9393), 1, sym_out, ACTIONS(9493), 1, sym_in, ACTIONS(9931), 1, anon_sym_SEMI, ACTIONS(9955), 1, sym_do, STATE(2544), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(2434), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111436] = 3, ACTIONS(9959), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9957), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111459] = 3, ACTIONS(9963), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9961), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111482] = 4, ACTIONS(9509), 1, anon_sym_LPAREN, STATE(5013), 1, sym_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6649), 12, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [111507] = 8, ACTIONS(7982), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(9947), 1, sym_delegate, ACTIONS(9949), 1, sym_function, ACTIONS(9965), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5004), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 7, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [111540] = 8, ACTIONS(7973), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(9947), 1, sym_delegate, ACTIONS(9949), 1, sym_function, ACTIONS(9967), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4996), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7971), 7, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [111573] = 3, ACTIONS(9971), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9969), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111596] = 3, ACTIONS(9975), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9973), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111619] = 9, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(9911), 1, anon_sym_SEMI, ACTIONS(9913), 1, sym_do, STATE(2554), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5154), 3, sym__in_out_statement, sym_in_statement, sym_out_statement, STATE(5022), 5, sym__function_contract, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, aux_sym_function_body_repeat1, [111654] = 8, ACTIONS(7961), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(9947), 1, sym_delegate, ACTIONS(9949), 1, sym_function, ACTIONS(9965), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5004), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7959), 7, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [111687] = 3, ACTIONS(9979), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9977), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111710] = 3, ACTIONS(9983), 1, sym_in, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9981), 13, anon_sym_LBRACE, anon_sym_AT, anon_sym_EQ_GT, sym_const, sym_do, sym_immutable, sym_inout, sym_nothrow, sym_out, sym_pure, sym_return, sym_scope, sym_shared, [111733] = 8, ACTIONS(7998), 1, sym_identifier, ACTIONS(9985), 1, anon_sym_LBRACK, ACTIONS(9988), 1, anon_sym_STAR, ACTIONS(9991), 1, sym_delegate, ACTIONS(9994), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5004), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7996), 7, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [111766] = 6, ACTIONS(9507), 1, anon_sym_BANG, ACTIONS(9997), 1, anon_sym_DOT, ACTIONS(9999), 1, anon_sym_LBRACK, STATE(4793), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 10, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, [111795] = 7, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(10001), 1, sym_do, STATE(6409), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5022), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [111825] = 4, ACTIONS(10003), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [111849] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7763), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [111869] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4390), 1, sym_parameters, STATE(6284), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [111907] = 7, ACTIONS(3645), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(10009), 1, sym_do, STATE(4050), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5022), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [111937] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7739), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [111957] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4580), 1, sym_parameters, STATE(6166), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [111995] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6671), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112015] = 4, ACTIONS(10011), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8191), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [112039] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7759), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112059] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7767), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112079] = 7, ACTIONS(9426), 1, anon_sym_BANG, ACTIONS(10013), 1, anon_sym_DOT, ACTIONS(10015), 1, anon_sym_LBRACK, STATE(4615), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7940), 6, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [112109] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4432), 1, sym_parameters, STATE(6027), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112147] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4402), 1, sym_parameters, STATE(5762), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112185] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6667), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112205] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4555), 1, sym_parameters, STATE(6014), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112243] = 5, ACTIONS(10019), 1, sym_in, ACTIONS(10022), 1, sym_out, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10017), 3, anon_sym_LBRACE, anon_sym_SEMI, sym_do, STATE(5022), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [112269] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4392), 1, sym_parameters, STATE(5858), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112307] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4510), 1, sym_parameters, STATE(6306), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112345] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7755), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112365] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4417), 1, sym_parameters, STATE(5772), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112403] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10025), 1, anon_sym_DOT, ACTIONS(10027), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10031), 1, anon_sym_COLON, ACTIONS(10033), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10029), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112441] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6663), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112461] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4542), 1, sym_parameters, STATE(5961), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112499] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4440), 1, sym_parameters, STATE(6053), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112537] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4427), 1, sym_parameters, STATE(6070), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112575] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4446), 1, sym_parameters, STATE(6024), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112613] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4426), 1, sym_parameters, STATE(6369), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112651] = 7, ACTIONS(3251), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(10035), 1, sym_do, STATE(3969), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5022), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [112681] = 4, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7940), 9, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, anon_sym_STAR, [112705] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4436), 1, sym_parameters, STATE(5837), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112743] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4447), 1, sym_parameters, STATE(6076), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112781] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7743), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112801] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9426), 1, anon_sym_BANG, ACTIONS(10013), 1, anon_sym_DOT, ACTIONS(10015), 1, anon_sym_LBRACK, ACTIONS(10027), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10031), 1, anon_sym_COLON, ACTIONS(10033), 1, anon_sym_EQ, STATE(4615), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10037), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112839] = 11, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(4474), 1, sym_parameters, STATE(6364), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112877] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6677), 13, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, anon_sym_AT, anon_sym_EQ_GT, sym_delegate, sym_do, sym_function, sym_in, sym_nothrow, sym_out, sym_pure, [112897] = 7, ACTIONS(1032), 1, anon_sym_LBRACE, ACTIONS(9379), 1, sym_out, ACTIONS(9477), 1, sym_in, ACTIONS(10040), 1, sym_do, STATE(3802), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5022), 8, sym__function_contract, sym__in_out_contract_expression, sym__in_out_statement, sym_in_contract_expression, sym_out_contract_expression, sym_in_statement, sym_out_statement, aux_sym_function_body_repeat1, [112927] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10044), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [112964] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10046), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113001] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10048), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113038] = 4, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10050), 6, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, sym_htmlentity, ACTIONS(10052), 6, anon_sym_DQUOTE, anon_sym_DOLLAR_LPAREN, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, anon_sym_DOLLAR_DQUOTE, [113061] = 3, ACTIONS(9997), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 11, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, [113082] = 3, ACTIONS(10054), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8191), 11, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, [113103] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10056), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113140] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10058), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113177] = 8, ACTIONS(7973), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10060), 1, anon_sym_STAR, ACTIONS(10062), 1, sym_delegate, ACTIONS(10064), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5053), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7971), 5, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [113208] = 3, ACTIONS(10066), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 11, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_STAR, sym_delegate, sym_do, sym_function, sym_if, sym_in, sym_out, [113229] = 8, ACTIONS(7982), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10062), 1, sym_delegate, ACTIONS(10064), 1, sym_function, ACTIONS(10068), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5056), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 5, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [113260] = 5, ACTIONS(9511), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9513), 2, sym_nothrow, sym_pure, STATE(4784), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(10070), 5, anon_sym_LBRACE, anon_sym_EQ_GT, sym_do, sym_in, sym_out, [113285] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10072), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113322] = 8, ACTIONS(7998), 1, sym_identifier, ACTIONS(9985), 1, anon_sym_LBRACK, ACTIONS(10074), 1, anon_sym_STAR, ACTIONS(10077), 1, sym_delegate, ACTIONS(10080), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5056), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7996), 5, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [113353] = 5, ACTIONS(9511), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10085), 2, sym_nothrow, sym_pure, STATE(5054), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, ACTIONS(10083), 5, anon_sym_LBRACE, anon_sym_EQ_GT, sym_do, sym_in, sym_out, [113378] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10087), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113415] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10089), 1, anon_sym_DOT, STATE(3832), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 6, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [113442] = 4, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(3052), 6, anon_sym_DQUOTE, anon_sym_DOLLAR_LPAREN, sym_interpolated_escape, aux_sym_interpolated_quoted_string_token1, aux_sym_interpolated_quoted_string_token2, anon_sym_DOLLAR_DQUOTE, ACTIONS(3054), 6, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, sym_htmlentity, [113465] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10091), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113502] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10093), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113539] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10095), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113576] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10097), 1, anon_sym_DOT, STATE(3832), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 6, anon_sym_DOT_DOT_DOT, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [113603] = 8, ACTIONS(7982), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10062), 1, sym_delegate, ACTIONS(10064), 1, sym_function, ACTIONS(10099), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5067), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 5, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [113634] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10101), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113671] = 8, ACTIONS(7961), 1, sym_identifier, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10062), 1, sym_delegate, ACTIONS(10064), 1, sym_function, ACTIONS(10068), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5056), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7959), 5, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [113702] = 11, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10042), 1, anon_sym_EQ, ACTIONS(10103), 1, sym_this, STATE(2416), 1, sym_template_arguments, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113739] = 10, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10107), 1, anon_sym_COLON, ACTIONS(10109), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10105), 2, anon_sym_RPAREN, anon_sym_COMMA, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [113774] = 4, ACTIONS(10097), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [113796] = 5, ACTIONS(10089), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8954), 3, anon_sym_RBRACE, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(8050), 4, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [113820] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8108), 4, sym_identifier, anon_sym_DOT, sym_delegate, sym_function, ACTIONS(8106), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [113840] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8065), 4, sym_identifier, anon_sym_DOT, sym_delegate, sym_function, ACTIONS(8067), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [113860] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10111), 1, anon_sym_DOT, ACTIONS(10113), 1, anon_sym_LBRACK, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7940), 4, anon_sym_RPAREN, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [113888] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10115), 1, anon_sym_STAR, ACTIONS(10117), 1, sym_delegate, ACTIONS(10119), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5079), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7959), 5, anon_sym_LBRACE, anon_sym_LPAREN, sym_do, sym_in, sym_out, [113916] = 6, ACTIONS(7644), 1, anon_sym_BANG, ACTIONS(10121), 1, anon_sym_DOT, ACTIONS(10123), 1, anon_sym_LBRACK, STATE(3136), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 7, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [113942] = 4, ACTIONS(10125), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8102), 7, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [113964] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10115), 1, anon_sym_STAR, ACTIONS(10117), 1, sym_delegate, ACTIONS(10119), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5079), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 5, anon_sym_LBRACE, anon_sym_LPAREN, sym_do, sym_in, sym_out, [113992] = 7, ACTIONS(9985), 1, anon_sym_LBRACK, ACTIONS(10127), 1, anon_sym_STAR, ACTIONS(10130), 1, sym_delegate, ACTIONS(10133), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5079), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7996), 5, anon_sym_LBRACE, anon_sym_LPAREN, sym_do, sym_in, sym_out, [114020] = 4, ACTIONS(10136), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [114042] = 4, ACTIONS(10013), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7940), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [114064] = 4, ACTIONS(10089), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 7, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_COLON, anon_sym_EQ, anon_sym_STAR, [114086] = 9, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10140), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10138), 2, anon_sym_RBRACE, anon_sym_COMMA, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114118] = 4, ACTIONS(10142), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8191), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [114140] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10117), 1, sym_delegate, ACTIONS(10119), 1, sym_function, ACTIONS(10144), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5078), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7971), 5, anon_sym_LBRACE, anon_sym_LPAREN, sym_do, sym_in, sym_out, [114168] = 10, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9565), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114202] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10117), 1, sym_delegate, ACTIONS(10119), 1, sym_function, ACTIONS(10146), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5075), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 5, anon_sym_LBRACE, anon_sym_LPAREN, sym_do, sym_in, sym_out, [114230] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(9735), 1, anon_sym_EQ_GT, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 6, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_SEMI, anon_sym_STAR, sym_delegate, sym_function, [114258] = 4, ACTIONS(10148), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8102), 7, anon_sym_DOT_DOT_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, [114280] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10154), 1, aux_sym_raw_string_token4, ACTIONS(10152), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5139), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114305] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10158), 1, aux_sym_raw_string_token4, ACTIONS(10156), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5129), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114330] = 8, ACTIONS(7961), 1, sym_identifier, ACTIONS(9949), 1, sym_function, ACTIONS(10160), 1, anon_sym_LBRACK, ACTIONS(10162), 1, anon_sym_STAR, ACTIONS(10164), 1, sym_delegate, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5095), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7959), 3, anon_sym_RPAREN, anon_sym_COLON, anon_sym_EQ_EQ, [114359] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10168), 1, aux_sym_raw_string_token4, ACTIONS(10166), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5114), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114384] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10172), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114409] = 8, ACTIONS(7998), 1, sym_identifier, ACTIONS(9994), 1, sym_function, ACTIONS(10174), 1, anon_sym_LBRACK, ACTIONS(10177), 1, anon_sym_STAR, ACTIONS(10180), 1, sym_delegate, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5095), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7996), 3, anon_sym_RPAREN, anon_sym_COLON, anon_sym_EQ_EQ, [114438] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10183), 1, anon_sym_STAR, ACTIONS(10185), 1, sym_delegate, ACTIONS(10187), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5102), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [114465] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10189), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114490] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10191), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114515] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10183), 1, anon_sym_STAR, ACTIONS(10185), 1, sym_delegate, ACTIONS(10187), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5102), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7959), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [114542] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10195), 1, aux_sym_raw_string_token4, ACTIONS(10193), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5098), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114567] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10199), 1, aux_sym_raw_string_token4, ACTIONS(10197), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5110), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114592] = 7, ACTIONS(9985), 1, anon_sym_LBRACK, ACTIONS(10201), 1, anon_sym_STAR, ACTIONS(10204), 1, sym_delegate, ACTIONS(10207), 1, sym_function, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5102), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7996), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [114619] = 8, ACTIONS(7982), 1, sym_identifier, ACTIONS(9949), 1, sym_function, ACTIONS(10160), 1, anon_sym_LBRACK, ACTIONS(10164), 1, sym_delegate, ACTIONS(10210), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5092), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 3, anon_sym_RPAREN, anon_sym_COLON, anon_sym_EQ_EQ, [114648] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10185), 1, sym_delegate, ACTIONS(10187), 1, sym_function, ACTIONS(10212), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5099), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [114675] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10214), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114700] = 8, ACTIONS(7982), 1, sym_identifier, ACTIONS(9949), 1, sym_function, ACTIONS(10160), 1, anon_sym_LBRACK, ACTIONS(10162), 1, anon_sym_STAR, ACTIONS(10164), 1, sym_delegate, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5095), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7980), 3, anon_sym_RPAREN, anon_sym_COLON, anon_sym_EQ_EQ, [114729] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10218), 1, aux_sym_raw_string_token4, ACTIONS(10216), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5097), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114754] = 7, ACTIONS(9943), 1, anon_sym_LBRACK, ACTIONS(10185), 1, sym_delegate, ACTIONS(10187), 1, sym_function, ACTIONS(10220), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5096), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7971), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_EQ, [114781] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10222), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114810] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10224), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114835] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10226), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114864] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10228), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114893] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10230), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114922] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10232), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [114947] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10234), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [114976] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10238), 1, aux_sym_raw_string_token4, ACTIONS(10236), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5123), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115001] = 8, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10240), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115030] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10242), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115055] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10244), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115084] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10246), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115109] = 8, ACTIONS(7973), 1, sym_identifier, ACTIONS(9949), 1, sym_function, ACTIONS(10160), 1, anon_sym_LBRACK, ACTIONS(10164), 1, sym_delegate, ACTIONS(10248), 1, anon_sym_STAR, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5106), 2, sym__type_suffix, aux_sym_type_repeat2, ACTIONS(7971), 3, anon_sym_RPAREN, anon_sym_COLON, anon_sym_EQ_EQ, [115138] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10250), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115167] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10252), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115192] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10254), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115221] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10258), 1, aux_sym_raw_string_token4, ACTIONS(10256), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5105), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115246] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10260), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_LPAREN, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115275] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10262), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115304] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10264), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115333] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10266), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115358] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10268), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115387] = 8, ACTIONS(7940), 1, anon_sym_STAR, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10270), 2, anon_sym_COMMA, anon_sym_SEMI, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115416] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10274), 1, aux_sym_raw_string_token4, ACTIONS(10272), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5118), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115441] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10282), 1, aux_sym_raw_string_token4, ACTIONS(10279), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10276), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115466] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10286), 1, aux_sym_raw_string_token4, ACTIONS(10284), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5138), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115491] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10290), 1, aux_sym_raw_string_token4, ACTIONS(10288), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5120), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115516] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10292), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115541] = 8, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(9555), 1, anon_sym_DOT, ACTIONS(9559), 1, anon_sym_LBRACK, ACTIONS(10294), 1, anon_sym_EQ, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 2, anon_sym_COLON, anon_sym_STAR, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, [115570] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10296), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115595] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10298), 1, aux_sym_raw_string_token4, ACTIONS(10170), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5133), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115620] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10302), 1, aux_sym_raw_string_token4, ACTIONS(10300), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5094), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115645] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10306), 1, aux_sym_raw_string_token4, ACTIONS(10304), 2, sym_htmlentity, aux_sym_quoted_string_token1, STATE(5136), 2, sym_escape_sequence, aux_sym_quoted_string_repeat1, ACTIONS(10150), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [115670] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7535), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115692] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10312), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [115718] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7773), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115740] = 10, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10314), 1, sym_identifier, ACTIONS(10316), 1, anon_sym_RPAREN, ACTIONS(10318), 1, anon_sym_COMMA, ACTIONS(10320), 1, anon_sym_EQ, STATE(3831), 1, sym_named_arguments, STATE(5792), 1, sym_ellipses, STATE(5794), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [115772] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7015), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115794] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7798), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115816] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10322), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [115842] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7997), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115864] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10324), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [115890] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8106), 9, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [115906] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7780), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115928] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7686), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115950] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4618), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(6721), 5, anon_sym_LBRACE, anon_sym_SEMI, sym_do, sym_in, sym_out, [115968] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(8006), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [115990] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10326), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116016] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10328), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116042] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7286), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116064] = 4, ACTIONS(10330), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [116084] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7200), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116106] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4299), 4, sym_catch, sym_else, sym_finally, sym_while, ACTIONS(6721), 5, anon_sym_LBRACE, anon_sym_SEMI, sym_do, sym_in, sym_out, [116124] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10332), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116150] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7821), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116172] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3104), 9, anon_sym_LBRACE, anon_sym_SEMI, sym_catch, sym_do, sym_else, sym_finally, sym_in, sym_out, sym_while, [116188] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10334), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116214] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7496), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116236] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3100), 9, anon_sym_LBRACE, anon_sym_SEMI, sym_catch, sym_do, sym_else, sym_finally, sym_in, sym_out, sym_while, [116252] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7654), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116274] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4954), 9, anon_sym_LBRACE, anon_sym_SEMI, sym_catch, sym_do, sym_else, sym_finally, sym_in, sym_out, sym_while, [116290] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7560), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116312] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10336), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116338] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7940), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116360] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7678), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116382] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10338), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116408] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7943), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116430] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10340), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116456] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7486), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116478] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8067), 9, anon_sym_DOT, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [116494] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7289), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116516] = 4, ACTIONS(10342), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8191), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [116536] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7697), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116558] = 3, ACTIONS(10344), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8191), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [116576] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4404), 9, anon_sym_LBRACE, anon_sym_SEMI, sym_catch, sym_do, sym_else, sym_finally, sym_in, sym_out, sym_while, [116592] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7492), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116614] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(6978), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116636] = 10, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10314), 1, sym_identifier, ACTIONS(10318), 1, anon_sym_COMMA, ACTIONS(10320), 1, anon_sym_EQ, ACTIONS(10346), 1, anon_sym_RPAREN, STATE(3831), 1, sym_named_arguments, STATE(5792), 1, sym_ellipses, STATE(5794), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [116668] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7761), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116690] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10348), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [116716] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7954), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116738] = 3, ACTIONS(10121), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7940), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [116756] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7088), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116778] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(3072), 9, anon_sym_LBRACE, anon_sym_SEMI, sym_catch, sym_do, sym_else, sym_finally, sym_in, sym_out, sym_while, [116794] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7929), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116816] = 10, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10314), 1, sym_identifier, ACTIONS(10318), 1, anon_sym_COMMA, ACTIONS(10320), 1, anon_sym_EQ, ACTIONS(10350), 1, anon_sym_RPAREN, STATE(3831), 1, sym_named_arguments, STATE(5792), 1, sym_ellipses, STATE(5794), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [116848] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7322), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116870] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7507), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116892] = 3, ACTIONS(10352), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 8, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_EQ, anon_sym_STAR, sym_delegate, sym_function, [116910] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4946), 9, anon_sym_LBRACE, anon_sym_SEMI, sym_catch, sym_do, sym_else, sym_finally, sym_in, sym_out, sym_while, [116926] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7754), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116948] = 4, ACTIONS(10111), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7893), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7940), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [116968] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7757), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [116990] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7547), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [117012] = 7, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, ACTIONS(10354), 1, anon_sym_RBRACE, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117038] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7695), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [117060] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7712), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [117082] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7870), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [117104] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, STATE(7601), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10308), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [117126] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8193), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8191), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117143] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10356), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10358), 2, sym_nothrow, sym_pure, STATE(4643), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117164] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8025), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8027), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117181] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10360), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10362), 2, sym_nothrow, sym_pure, STATE(5209), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117202] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10364), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10358), 2, sym_nothrow, sym_pure, STATE(4643), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117223] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7674), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7672), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117240] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(7656), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(7654), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117257] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8061), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8063), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117274] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(6643), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117297] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10366), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10368), 2, sym_nothrow, sym_pure, STATE(5236), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117318] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10370), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10372), 2, sym_nothrow, sym_pure, STATE(5234), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117339] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8145), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8143), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117356] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8055), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8057), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117373] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8226), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8224), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117390] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(6345), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117413] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10374), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10376), 2, sym_nothrow, sym_pure, STATE(5212), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117434] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8173), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8171), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117451] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(5995), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117474] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(6300), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117497] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8104), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8102), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117514] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(6103), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117537] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10050), 8, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, sym_htmlentity, aux_sym_raw_string_token4, aux_sym_quoted_string_token1, [117554] = 5, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(10378), 1, anon_sym_DOT, STATE(3982), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 5, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_STAR, sym_delegate, sym_function, [117575] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8169), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8167), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117592] = 3, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8230), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8228), 5, anon_sym_RPAREN, anon_sym_LBRACK, anon_sym_COLON, anon_sym_EQ_EQ, anon_sym_STAR, [117609] = 4, ACTIONS(10380), 1, anon_sym_DOT_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5233), 2, aux_sym__variadic_arguments_attributes, sym_variadic_arguments_attribute, ACTIONS(10382), 5, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [117628] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10385), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10358), 2, sym_nothrow, sym_pure, STATE(4643), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117649] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(5800), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117672] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(10387), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10358), 2, sym_nothrow, sym_pure, STATE(4643), 4, sym_at_attribute, sym__function_attribute_kwd, sym__function_attribute, aux_sym__type_suffix_repeat1, [117693] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10310), 1, sym_identifier, STATE(5932), 1, sym_enum_member, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5270), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [117716] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10389), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10393), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5308), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [117738] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10395), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [117760] = 6, ACTIONS(10399), 1, sym_catch, ACTIONS(10401), 1, sym_finally, STATE(5634), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4161), 2, sym_else, sym_while, STATE(5263), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [117782] = 4, ACTIONS(10403), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [117800] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4474), 1, sym_parameters, STATE(6379), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [117824] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4432), 1, sym_parameters, STATE(6021), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [117848] = 3, ACTIONS(10411), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8102), 6, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_STAR, sym_delegate, sym_function, [117864] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10413), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [117886] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10415), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10417), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5258), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [117908] = 4, ACTIONS(10419), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [117926] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10421), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [117948] = 4, ACTIONS(10425), 1, sym_htmlentity, STATE(7555), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [117966] = 5, ACTIONS(10427), 1, anon_sym_EQ_GT, ACTIONS(10429), 1, sym_in, ACTIONS(10431), 1, sym_out, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [117986] = 4, ACTIONS(10433), 1, sym_htmlentity, STATE(8012), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118004] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4580), 1, sym_parameters, STATE(6165), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118028] = 4, ACTIONS(10435), 1, sym_htmlentity, STATE(7775), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118046] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4440), 1, sym_parameters, STATE(6051), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118070] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4426), 1, sym_parameters, STATE(6390), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118094] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4542), 1, sym_parameters, STATE(5963), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118118] = 5, ACTIONS(10437), 1, sym_identifier, ACTIONS(10439), 1, anon_sym_AT, ACTIONS(10442), 1, sym_deprecated, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5257), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [118138] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10445), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118160] = 4, ACTIONS(10447), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [118178] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4417), 1, sym_parameters, STATE(5755), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118202] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4436), 1, sym_parameters, STATE(5833), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118226] = 4, ACTIONS(10449), 1, sym_htmlentity, STATE(7569), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118244] = 6, ACTIONS(10399), 1, sym_catch, ACTIONS(10401), 1, sym_finally, STATE(5651), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4151), 2, sym_else, sym_while, STATE(5396), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [118266] = 5, ACTIONS(10429), 1, sym_in, ACTIONS(10431), 1, sym_out, ACTIONS(10451), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [118286] = 4, ACTIONS(10453), 1, sym_htmlentity, STATE(7615), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118304] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10455), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118326] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10457), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10459), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5318), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118348] = 8, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7646), 1, anon_sym_RPAREN, ACTIONS(10461), 1, sym_identifier, ACTIONS(10463), 1, anon_sym_COMMA, ACTIONS(10465), 1, anon_sym_EQ, STATE(6087), 1, sym_ellipses, STATE(6088), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [118374] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10467), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118396] = 5, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(7775), 1, sym_deprecated, ACTIONS(10469), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5257), 4, sym_deprecated_attribute, sym_at_attribute, sym__enum_member_attribute, aux_sym_enum_member_repeat1, [118416] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10471), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118438] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10475), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10473), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10478), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118460] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10481), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10483), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5271), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118482] = 4, ACTIONS(10485), 1, sym_htmlentity, STATE(7107), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118500] = 4, ACTIONS(10487), 1, sym_htmlentity, STATE(7542), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118518] = 4, ACTIONS(10489), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [118536] = 4, ACTIONS(10491), 1, sym_htmlentity, STATE(7717), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118554] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10493), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10495), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5299), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118576] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4510), 1, sym_parameters, STATE(6307), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118600] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10497), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10499), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5269), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118622] = 4, ACTIONS(10501), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [118640] = 5, ACTIONS(10429), 1, sym_in, ACTIONS(10431), 1, sym_out, ACTIONS(10503), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [118660] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10505), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10507), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5266), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118682] = 5, ACTIONS(10509), 1, anon_sym_EQ_GT, ACTIONS(10511), 1, sym_in, ACTIONS(10514), 1, sym_out, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [118702] = 5, ACTIONS(8034), 1, anon_sym_LPAREN, ACTIONS(10517), 1, anon_sym_DOT, STATE(3999), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 4, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_function, [118722] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10519), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118744] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4390), 1, sym_parameters, STATE(6287), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118768] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4555), 1, sym_parameters, STATE(6043), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [118792] = 4, ACTIONS(10521), 1, sym_htmlentity, STATE(7073), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118810] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10523), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10525), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5239), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118832] = 4, ACTIONS(10527), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [118850] = 6, ACTIONS(10399), 1, sym_catch, ACTIONS(10529), 1, sym_finally, STATE(5651), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4151), 2, sym_else, sym_while, STATE(5396), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [118872] = 4, ACTIONS(10531), 1, sym_htmlentity, STATE(7549), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [118890] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10533), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10535), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5248), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118912] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10537), 7, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ_GT, sym_do, sym_in, sym_out, [118926] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10539), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10541), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5286), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118948] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10543), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10545), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5245), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [118970] = 5, ACTIONS(10429), 1, sym_in, ACTIONS(10431), 1, sym_out, ACTIONS(10547), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [118990] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10549), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119012] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10551), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119034] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4402), 1, sym_parameters, STATE(5753), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [119058] = 4, ACTIONS(10553), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [119076] = 4, ACTIONS(10555), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [119094] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4447), 1, sym_parameters, STATE(6327), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [119118] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10557), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10559), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5322), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119140] = 4, ACTIONS(10561), 1, sym_htmlentity, STATE(7827), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [119158] = 4, ACTIONS(10563), 1, sym_htmlentity, STATE(7185), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [119176] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10565), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119198] = 4, ACTIONS(10567), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [119216] = 4, ACTIONS(10569), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [119234] = 4, ACTIONS(10571), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [119252] = 5, ACTIONS(10429), 1, sym_in, ACTIONS(10431), 1, sym_out, ACTIONS(10573), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [119272] = 4, ACTIONS(10575), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8042), 3, sym_identifier, sym_delegate, sym_function, ACTIONS(8050), 3, anon_sym_LBRACK, anon_sym_COLON, anon_sym_STAR, [119290] = 6, ACTIONS(10399), 1, sym_catch, ACTIONS(10529), 1, sym_finally, STATE(5634), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4161), 2, sym_else, sym_while, STATE(5292), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [119312] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4392), 1, sym_parameters, STATE(5862), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [119336] = 5, ACTIONS(10429), 1, sym_in, ACTIONS(10431), 1, sym_out, ACTIONS(10577), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5284), 4, aux_sym__in_out_contract_expressions, sym__in_out_contract_expression, sym_in_contract_expression, sym_out_contract_expression, [119356] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4446), 1, sym_parameters, STATE(6045), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [119380] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10579), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119402] = 4, ACTIONS(10581), 1, sym_htmlentity, STATE(7857), 1, sym_escape_sequence, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10423), 5, aux_sym_escape_sequence_token1, aux_sym_escape_sequence_token2, aux_sym_escape_sequence_token3, aux_sym_escape_sequence_token4, aux_sym_escape_sequence_token5, [119420] = 3, ACTIONS(10378), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 6, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_STAR, sym_delegate, sym_function, [119436] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10583), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, ACTIONS(10585), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, STATE(5300), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119458] = 6, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(10391), 1, anon_sym_DOLLAR_LPAREN, ACTIONS(10397), 2, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, ACTIONS(10587), 2, anon_sym_BQUOTE, anon_sym_DOLLAR_BQUOTE, STATE(5272), 2, sym_interpolation_expression, aux_sym_interpolated_raw_string_repeat1, [119480] = 8, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10314), 1, sym_identifier, ACTIONS(10318), 1, anon_sym_COMMA, ACTIONS(10320), 1, anon_sym_EQ, ACTIONS(10589), 1, anon_sym_RPAREN, STATE(5792), 1, sym_ellipses, STATE(5794), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [119506] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(4427), 1, sym_parameters, STATE(6050), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [119530] = 3, ACTIONS(10591), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8102), 5, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_function, [119545] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10593), 1, sym_identifier, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10597), 1, anon_sym_SEMI, STATE(5363), 1, aux_sym_template_mixin_repeat1, STATE(5669), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119568] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10599), 1, sym_identifier, ACTIONS(10601), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6619), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119591] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10603), 1, sym_identifier, ACTIONS(10605), 1, anon_sym_SEMI, STATE(5450), 1, aux_sym_template_mixin_repeat1, STATE(5669), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119614] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10607), 6, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_EQ_GT, sym_do, sym_in, sym_out, [119627] = 6, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10612), 1, anon_sym_COLON, ACTIONS(10614), 1, anon_sym_EQ, STATE(6836), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10609), 2, anon_sym_RPAREN, anon_sym_COMMA, [119648] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10618), 1, anon_sym_SEMI, ACTIONS(10620), 1, anon_sym_COLON, STATE(1681), 1, sym_aggregate_body, STATE(5445), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [119671] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10622), 1, anon_sym_SEMI, ACTIONS(10624), 1, anon_sym_COLON, STATE(1672), 1, sym_aggregate_body, STATE(5535), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [119694] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10603), 1, sym_identifier, ACTIONS(10605), 1, anon_sym_SEMI, STATE(5450), 1, aux_sym_template_mixin_repeat1, STATE(6747), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119717] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10626), 1, sym_identifier, ACTIONS(10628), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6938), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119740] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8306), 6, anon_sym_DOT_DOT_DOT, sym_const, sym_immutable, sym_return, sym_scope, sym_shared, [119753] = 4, ACTIONS(10630), 1, anon_sym_DOT, STATE(5442), 1, aux_sym_module_fqn_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10632), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [119770] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10636), 1, anon_sym_SEMI, ACTIONS(10638), 1, anon_sym_COLON, STATE(2749), 1, sym_aggregate_body, STATE(5382), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [119793] = 6, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10640), 1, sym_identifier, ACTIONS(10644), 1, anon_sym_EQ, STATE(6479), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10642), 2, anon_sym_RPAREN, anon_sym_COMMA, [119814] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10646), 1, sym_identifier, ACTIONS(10648), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6446), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119837] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10650), 1, sym_identifier, ACTIONS(10652), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6817), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119860] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10654), 1, sym_identifier, ACTIONS(10656), 1, anon_sym_COLON, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6349), 2, sym_declarator, sym_bitfield_declarator, [119881] = 5, ACTIONS(10630), 1, anon_sym_DOT, ACTIONS(10660), 1, anon_sym_EQ, STATE(5336), 1, aux_sym_module_fqn_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10658), 3, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [119900] = 6, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(9271), 1, sym_deprecated, ACTIONS(10662), 1, sym_module, STATE(5565), 1, sym_deprecated_attribute, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5483), 2, sym_at_attribute, aux_sym_module_declaration_repeat1, [119921] = 6, ACTIONS(4151), 1, sym_while, ACTIONS(10664), 1, sym_catch, ACTIONS(10666), 1, sym_finally, STATE(5651), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5528), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [119942] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10668), 1, sym_identifier, ACTIONS(10670), 1, anon_sym_SEMI, STATE(5440), 1, aux_sym_template_mixin_repeat1, STATE(5705), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [119965] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, ACTIONS(10674), 1, anon_sym_SEMI, STATE(4851), 1, sym_parameters, STATE(5936), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6477), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [119988] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10678), 1, anon_sym_SEMI, ACTIONS(10680), 1, anon_sym_COLON, STATE(2584), 1, sym_aggregate_body, STATE(5395), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120011] = 3, ACTIONS(10517), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8050), 5, anon_sym_LPAREN, anon_sym_LBRACK, anon_sym_STAR, sym_delegate, sym_function, [120026] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10682), 1, anon_sym_SEMI, ACTIONS(10684), 1, anon_sym_COLON, STATE(2580), 1, sym_aggregate_body, STATE(5496), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120049] = 7, ACTIONS(9719), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4850), 1, sym_parameters, STATE(6236), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6490), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120072] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10686), 1, sym_identifier, ACTIONS(10688), 1, anon_sym_SEMI, STATE(5409), 1, aux_sym_template_mixin_repeat1, STATE(5669), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120095] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10686), 1, sym_identifier, ACTIONS(10688), 1, anon_sym_SEMI, STATE(5409), 1, aux_sym_template_mixin_repeat1, STATE(6726), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120118] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10668), 1, sym_identifier, ACTIONS(10670), 1, anon_sym_SEMI, STATE(5440), 1, aux_sym_template_mixin_repeat1, STATE(6859), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120141] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10690), 1, sym_identifier, ACTIONS(10692), 1, anon_sym_SEMI, STATE(5357), 1, aux_sym_template_mixin_repeat1, STATE(5705), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120164] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, ACTIONS(10694), 1, anon_sym_SEMI, STATE(4858), 1, sym_parameters, STATE(6350), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120187] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10690), 1, sym_identifier, ACTIONS(10692), 1, anon_sym_SEMI, STATE(5357), 1, aux_sym_template_mixin_repeat1, STATE(6616), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120210] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10696), 1, sym_identifier, ACTIONS(10698), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6481), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120233] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10702), 1, anon_sym_SEMI, ACTIONS(10704), 1, anon_sym_COLON, STATE(1438), 1, sym_aggregate_body, STATE(6347), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [120256] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10706), 1, anon_sym_SEMI, ACTIONS(10708), 1, anon_sym_COLON, STATE(2475), 1, sym_aggregate_body, STATE(5923), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [120279] = 7, ACTIONS(9605), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4961), 1, sym_parameters, STATE(6193), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6806), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120302] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10710), 1, anon_sym_SEMI, ACTIONS(10712), 1, anon_sym_COLON, STATE(2711), 1, sym_aggregate_body, STATE(5508), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120325] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10714), 1, anon_sym_SEMI, ACTIONS(10716), 1, anon_sym_COLON, STATE(1496), 1, sym_aggregate_body, STATE(5547), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120348] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10718), 1, sym_identifier, ACTIONS(10720), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6902), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120371] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10724), 1, anon_sym_SEMI, ACTIONS(10726), 1, anon_sym_COLON, STATE(2354), 1, sym_aggregate_body, STATE(5497), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120394] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10728), 1, sym_identifier, ACTIONS(10730), 1, anon_sym_SEMI, STATE(5471), 1, aux_sym_template_mixin_repeat1, STATE(6559), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120417] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10626), 1, sym_identifier, ACTIONS(10628), 1, anon_sym_SEMI, STATE(5479), 1, aux_sym_template_mixin_repeat1, STATE(5642), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120440] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10734), 1, anon_sym_SEMI, ACTIONS(10736), 1, anon_sym_COLON, STATE(2805), 1, sym_aggregate_body, STATE(5523), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120463] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10728), 1, sym_identifier, ACTIONS(10730), 1, anon_sym_SEMI, STATE(5471), 1, aux_sym_template_mixin_repeat1, STATE(5705), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120486] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10738), 1, anon_sym_SEMI, ACTIONS(10740), 1, anon_sym_COLON, STATE(1408), 1, sym_aggregate_body, STATE(6249), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [120509] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10626), 1, sym_identifier, ACTIONS(10628), 1, anon_sym_SEMI, STATE(5479), 1, aux_sym_template_mixin_repeat1, STATE(6938), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120532] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10742), 1, sym_identifier, ACTIONS(10744), 1, anon_sym_SEMI, STATE(5408), 1, aux_sym_template_mixin_repeat1, STATE(5669), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120555] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10646), 1, sym_identifier, ACTIONS(10648), 1, anon_sym_SEMI, STATE(5452), 1, aux_sym_template_mixin_repeat1, STATE(5621), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120578] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10646), 1, sym_identifier, ACTIONS(10648), 1, anon_sym_SEMI, STATE(5452), 1, aux_sym_template_mixin_repeat1, STATE(6446), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120601] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10746), 1, sym_identifier, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6267), 2, sym_declarator, sym_bitfield_declarator, [120622] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10748), 1, anon_sym_SEMI, ACTIONS(10750), 1, anon_sym_COLON, STATE(2297), 1, sym_aggregate_body, STATE(5455), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120645] = 7, ACTIONS(9715), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4861), 1, sym_parameters, STATE(5851), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6614), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120668] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10752), 1, anon_sym_SEMI, ACTIONS(10754), 1, anon_sym_COLON, STATE(2911), 1, sym_aggregate_body, STATE(5423), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120691] = 4, ACTIONS(10630), 1, anon_sym_DOT, STATE(5336), 1, aux_sym_module_fqn_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10658), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [120708] = 7, ACTIONS(9799), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4972), 1, sym_parameters, STATE(6209), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6880), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120731] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10756), 1, anon_sym_SEMI, ACTIONS(10758), 1, anon_sym_COLON, STATE(2333), 1, sym_aggregate_body, STATE(5417), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120754] = 7, ACTIONS(9805), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4882), 1, sym_parameters, STATE(5871), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6729), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [120777] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10760), 1, anon_sym_SEMI, ACTIONS(10762), 1, anon_sym_COLON, STATE(2596), 1, sym_aggregate_body, STATE(6297), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [120800] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10764), 1, sym_identifier, ACTIONS(10766), 1, anon_sym_SEMI, STATE(5327), 1, aux_sym_template_mixin_repeat1, STATE(6574), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120823] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10768), 1, sym_identifier, ACTIONS(10770), 1, anon_sym_SEMI, STATE(5334), 1, aux_sym_template_mixin_repeat1, STATE(6856), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120846] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10718), 1, sym_identifier, ACTIONS(10720), 1, anon_sym_SEMI, STATE(5433), 1, aux_sym_template_mixin_repeat1, STATE(5621), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120869] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10772), 1, sym_identifier, ACTIONS(10774), 1, anon_sym_SEMI, STATE(5390), 1, aux_sym_template_mixin_repeat1, STATE(6735), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120892] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10764), 1, sym_identifier, ACTIONS(10766), 1, anon_sym_SEMI, STATE(5327), 1, aux_sym_template_mixin_repeat1, STATE(5642), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120915] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10764), 1, sym_identifier, ACTIONS(10766), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6574), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120938] = 6, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10776), 1, sym_identifier, ACTIONS(10780), 1, anon_sym_EQ, STATE(6549), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10778), 2, anon_sym_RPAREN, anon_sym_COMMA, [120959] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10768), 1, sym_identifier, ACTIONS(10770), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6856), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [120982] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10782), 1, sym_identifier, ACTIONS(10784), 1, anon_sym_SEMI, STATE(5339), 1, aux_sym_template_mixin_repeat1, STATE(6654), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121005] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10728), 1, sym_identifier, ACTIONS(10730), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6559), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121028] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10786), 1, anon_sym_SEMI, ACTIONS(10788), 1, anon_sym_COLON, STATE(2798), 1, sym_aggregate_body, STATE(5460), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121051] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, ACTIONS(10790), 1, anon_sym_SEMI, STATE(4823), 1, sym_parameters, STATE(5998), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6777), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121074] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10792), 1, anon_sym_SEMI, ACTIONS(10794), 1, anon_sym_COLON, STATE(2536), 1, sym_aggregate_body, STATE(5996), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [121097] = 4, ACTIONS(10796), 1, sym_catch, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5396), 2, sym_catch_statement, aux_sym_try_statement_repeat1, ACTIONS(4171), 3, sym_else, sym_finally, sym_while, [121114] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10718), 1, sym_identifier, ACTIONS(10720), 1, anon_sym_SEMI, STATE(5433), 1, aux_sym_template_mixin_repeat1, STATE(6902), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121137] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10799), 1, sym_identifier, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6130), 2, sym_declarator, sym_bitfield_declarator, [121158] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10599), 1, sym_identifier, ACTIONS(10601), 1, anon_sym_SEMI, STATE(5475), 1, aux_sym_template_mixin_repeat1, STATE(5705), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121181] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10801), 6, anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, sym_if, [121194] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10803), 1, sym_identifier, ACTIONS(10805), 1, anon_sym_SEMI, STATE(5443), 1, aux_sym_template_mixin_repeat1, STATE(6900), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121217] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10803), 1, sym_identifier, ACTIONS(10805), 1, anon_sym_SEMI, STATE(5443), 1, aux_sym_template_mixin_repeat1, STATE(5705), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121240] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10599), 1, sym_identifier, ACTIONS(10601), 1, anon_sym_SEMI, STATE(5475), 1, aux_sym_template_mixin_repeat1, STATE(6619), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121263] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10807), 1, sym_identifier, ACTIONS(10809), 1, anon_sym_SEMI, STATE(5465), 1, aux_sym_template_mixin_repeat1, STATE(6773), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121286] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10811), 1, anon_sym_SEMI, ACTIONS(10813), 1, anon_sym_COLON, STATE(2281), 1, sym_aggregate_body, STATE(5526), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121309] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10815), 1, anon_sym_SEMI, ACTIONS(10817), 1, anon_sym_COLON, STATE(2703), 1, sym_aggregate_body, STATE(6040), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [121332] = 6, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10819), 1, sym_identifier, ACTIONS(10823), 1, anon_sym_EQ, STATE(6586), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10821), 2, anon_sym_RPAREN, anon_sym_COMMA, [121353] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10825), 1, sym_identifier, ACTIONS(10827), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6484), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121376] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10829), 1, sym_identifier, ACTIONS(10831), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6802), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121399] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10829), 1, sym_identifier, ACTIONS(10831), 1, anon_sym_SEMI, STATE(5437), 1, aux_sym_template_mixin_repeat1, STATE(5621), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121422] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10829), 1, sym_identifier, ACTIONS(10831), 1, anon_sym_SEMI, STATE(5437), 1, aux_sym_template_mixin_repeat1, STATE(6802), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121445] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10825), 1, sym_identifier, ACTIONS(10827), 1, anon_sym_SEMI, STATE(5388), 1, aux_sym_template_mixin_repeat1, STATE(5621), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121468] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10825), 1, sym_identifier, ACTIONS(10827), 1, anon_sym_SEMI, STATE(5388), 1, aux_sym_template_mixin_repeat1, STATE(6484), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121491] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10768), 1, sym_identifier, ACTIONS(10770), 1, anon_sym_SEMI, STATE(5334), 1, aux_sym_template_mixin_repeat1, STATE(5621), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121514] = 7, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7640), 1, anon_sym_RPAREN, ACTIONS(8937), 1, anon_sym_COMMA, ACTIONS(10833), 1, anon_sym_EQ, STATE(6258), 1, aux_sym__parameters_repeat1, STATE(6266), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, [121537] = 6, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10835), 1, sym_identifier, ACTIONS(10839), 1, anon_sym_EQ, STATE(6836), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10837), 2, anon_sym_RPAREN, anon_sym_COMMA, [121558] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10748), 1, anon_sym_SEMI, ACTIONS(10841), 1, anon_sym_COLON, STATE(2297), 1, sym_aggregate_body, STATE(5799), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [121581] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10782), 1, sym_identifier, ACTIONS(10784), 1, anon_sym_SEMI, STATE(5339), 1, aux_sym_template_mixin_repeat1, STATE(5669), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121604] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10593), 1, sym_identifier, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10597), 1, anon_sym_SEMI, STATE(5363), 1, aux_sym_template_mixin_repeat1, STATE(6939), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121627] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10760), 1, anon_sym_SEMI, ACTIONS(10843), 1, anon_sym_COLON, STATE(2596), 1, sym_aggregate_body, STATE(5406), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121650] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10845), 1, anon_sym_SEMI, ACTIONS(10847), 1, anon_sym_COLON, STATE(1725), 1, sym_aggregate_body, STATE(5429), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121673] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10849), 1, sym_identifier, ACTIONS(10851), 1, anon_sym_SEMI, STATE(5482), 1, aux_sym_template_mixin_repeat1, STATE(6814), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121696] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10853), 1, anon_sym_SEMI, ACTIONS(10855), 1, anon_sym_COLON, STATE(2868), 1, sym_aggregate_body, STATE(6216), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [121719] = 7, ACTIONS(9627), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4923), 1, sym_parameters, STATE(5735), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6526), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121742] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10857), 1, anon_sym_SEMI, ACTIONS(10859), 1, anon_sym_COLON, STATE(2679), 1, sym_aggregate_body, STATE(5534), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121765] = 7, ACTIONS(9645), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4924), 1, sym_parameters, STATE(6274), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6901), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121788] = 6, ACTIONS(4161), 1, sym_while, ACTIONS(10664), 1, sym_catch, ACTIONS(10666), 1, sym_finally, STATE(5634), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5344), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [121809] = 6, ACTIONS(4151), 1, sym_while, ACTIONS(10664), 1, sym_catch, ACTIONS(10861), 1, sym_finally, STATE(5651), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5528), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [121830] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10863), 1, anon_sym_SEMI, ACTIONS(10865), 1, anon_sym_COLON, STATE(1748), 1, sym_aggregate_body, STATE(5768), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [121853] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10742), 1, sym_identifier, ACTIONS(10744), 1, anon_sym_SEMI, STATE(5408), 1, aux_sym_template_mixin_repeat1, STATE(6416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121876] = 6, ACTIONS(4161), 1, sym_while, ACTIONS(10664), 1, sym_catch, ACTIONS(10861), 1, sym_finally, STATE(5634), 1, sym_finally_statement, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5428), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [121897] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10792), 1, anon_sym_SEMI, ACTIONS(10867), 1, anon_sym_COLON, STATE(2536), 1, sym_aggregate_body, STATE(5359), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121920] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10869), 1, sym_identifier, ACTIONS(10871), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6872), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121943] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10807), 1, sym_identifier, ACTIONS(10809), 1, anon_sym_SEMI, STATE(5465), 1, aux_sym_template_mixin_repeat1, STATE(5642), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [121966] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10873), 1, anon_sym_SEMI, ACTIONS(10875), 1, anon_sym_COLON, STATE(2532), 1, sym_aggregate_body, STATE(5503), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [121989] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10849), 1, sym_identifier, ACTIONS(10851), 1, anon_sym_SEMI, STATE(5482), 1, aux_sym_template_mixin_repeat1, STATE(5642), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122012] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10849), 1, sym_identifier, ACTIONS(10851), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6814), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122035] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, ACTIONS(10877), 1, anon_sym_SEMI, STATE(4957), 1, sym_parameters, STATE(6286), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6539), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122058] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10879), 1, sym_identifier, ACTIONS(10881), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6835), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122081] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10883), 1, sym_identifier, ACTIONS(10885), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6881), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122104] = 7, ACTIONS(9801), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4975), 1, sym_parameters, STATE(5814), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6558), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122127] = 4, ACTIONS(10887), 1, anon_sym_DOT, STATE(5442), 1, aux_sym_module_fqn_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10890), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [122144] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10892), 1, sym_identifier, ACTIONS(10894), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6877), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122167] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10896), 1, anon_sym_SEMI, ACTIONS(10898), 1, anon_sym_COLON, STATE(2903), 1, sym_aggregate_body, STATE(5491), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122190] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10845), 1, anon_sym_SEMI, ACTIONS(10900), 1, anon_sym_COLON, STATE(1725), 1, sym_aggregate_body, STATE(5935), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [122213] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10902), 1, sym_identifier, ACTIONS(10904), 1, anon_sym_SEMI, STATE(5474), 1, aux_sym_template_mixin_repeat1, STATE(6666), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122236] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10906), 1, anon_sym_SEMI, ACTIONS(10908), 1, anon_sym_COLON, STATE(1685), 1, sym_aggregate_body, STATE(5499), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122259] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10910), 6, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_EQ_GT, sym_do, sym_in, sym_out, [122272] = 4, ACTIONS(10912), 1, anon_sym_EQ_GT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10914), 2, sym_in, sym_out, ACTIONS(6721), 3, anon_sym_LBRACE, anon_sym_SEMI, sym_do, [122289] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10902), 1, sym_identifier, ACTIONS(10904), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6666), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122312] = 7, ACTIONS(9861), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4927), 1, sym_parameters, STATE(6262), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6829), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122335] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10807), 1, sym_identifier, ACTIONS(10809), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6773), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122358] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10702), 1, anon_sym_SEMI, ACTIONS(10917), 1, anon_sym_COLON, STATE(1438), 1, sym_aggregate_body, STATE(5369), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122381] = 7, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(7646), 1, anon_sym_RPAREN, ACTIONS(10463), 1, anon_sym_COMMA, ACTIONS(10465), 1, anon_sym_EQ, STATE(6087), 1, sym_ellipses, STATE(6088), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [122404] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10919), 1, anon_sym_SEMI, ACTIONS(10921), 1, anon_sym_COLON, STATE(2208), 1, sym_aggregate_body, STATE(5873), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [122427] = 7, ACTIONS(9651), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4828), 1, sym_parameters, STATE(5911), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6581), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122450] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10923), 1, anon_sym_SEMI, ACTIONS(10925), 1, anon_sym_COLON, STATE(1473), 1, sym_aggregate_body, STATE(5358), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122473] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, ACTIONS(10927), 1, anon_sym_SEMI, STATE(4840), 1, sym_parameters, STATE(6098), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6776), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122496] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10929), 1, sym_identifier, ACTIONS(10931), 1, anon_sym_SEMI, STATE(5392), 1, aux_sym_template_mixin_repeat1, STATE(6617), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122519] = 7, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10752), 1, anon_sym_SEMI, ACTIONS(10933), 1, anon_sym_COLON, STATE(2911), 1, sym_aggregate_body, STATE(6101), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [122542] = 7, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10935), 1, anon_sym_SEMI, ACTIONS(10937), 1, anon_sym_COLON, STATE(1453), 1, sym_aggregate_body, STATE(5550), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122565] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10879), 1, sym_identifier, ACTIONS(10881), 1, anon_sym_SEMI, STATE(5340), 1, aux_sym_template_mixin_repeat1, STATE(5705), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122588] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10869), 1, sym_identifier, ACTIONS(10871), 1, anon_sym_SEMI, STATE(5439), 1, aux_sym_template_mixin_repeat1, STATE(6872), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122611] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10939), 1, sym_identifier, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5789), 2, sym_declarator, sym_bitfield_declarator, [122632] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10690), 1, sym_identifier, ACTIONS(10692), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6616), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122655] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10772), 1, sym_identifier, ACTIONS(10774), 1, anon_sym_SEMI, STATE(5390), 1, aux_sym_template_mixin_repeat1, STATE(5669), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122678] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10902), 1, sym_identifier, ACTIONS(10904), 1, anon_sym_SEMI, STATE(5474), 1, aux_sym_template_mixin_repeat1, STATE(5621), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122701] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10879), 1, sym_identifier, ACTIONS(10881), 1, anon_sym_SEMI, STATE(5340), 1, aux_sym_template_mixin_repeat1, STATE(6835), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122724] = 7, ACTIONS(9567), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4933), 1, sym_parameters, STATE(5947), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6744), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122747] = 7, ACTIONS(9857), 1, anon_sym_SEMI, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, STATE(4903), 1, sym_parameters, STATE(5941), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6813), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122770] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10941), 1, sym_identifier, ACTIONS(10943), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6521), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122793] = 6, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10823), 1, anon_sym_EQ, ACTIONS(10945), 1, sym_identifier, STATE(6586), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10821), 2, anon_sym_RPAREN, anon_sym_COMMA, [122814] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10929), 1, sym_identifier, ACTIONS(10931), 1, anon_sym_SEMI, STATE(5392), 1, aux_sym_template_mixin_repeat1, STATE(5642), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122837] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10929), 1, sym_identifier, ACTIONS(10931), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6617), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122860] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10947), 1, sym_identifier, ACTIONS(10949), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6636), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122883] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10951), 6, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_EQ_GT, sym_do, sym_in, sym_out, [122896] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10407), 1, anon_sym_COLON, ACTIONS(10409), 1, anon_sym_EQ, STATE(8009), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10405), 2, anon_sym_COMMA, anon_sym_SEMI, [122917] = 7, ACTIONS(10005), 1, anon_sym_LPAREN, ACTIONS(10672), 1, anon_sym_COMMA, ACTIONS(10953), 1, anon_sym_SEMI, STATE(4883), 1, sym_parameters, STATE(5796), 1, aux_sym__declarator_identifier_list_repeat1, STATE(6634), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [122940] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10803), 1, sym_identifier, ACTIONS(10805), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6900), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [122963] = 6, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10955), 1, sym_identifier, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6199), 2, sym_declarator, sym_bitfield_declarator, [122984] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10869), 1, sym_identifier, ACTIONS(10871), 1, anon_sym_SEMI, STATE(5439), 1, aux_sym_template_mixin_repeat1, STATE(5642), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [123007] = 7, ACTIONS(9440), 1, anon_sym_BANG, ACTIONS(10595), 1, anon_sym_DOT, ACTIONS(10668), 1, sym_identifier, ACTIONS(10670), 1, anon_sym_SEMI, STATE(5542), 1, aux_sym_template_mixin_repeat1, STATE(6859), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [123030] = 4, ACTIONS(10957), 1, anon_sym_AT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10960), 2, sym_deprecated, sym_module, STATE(5483), 2, sym_at_attribute, aux_sym_module_declaration_repeat1, [123046] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10962), 1, anon_sym_SEMI, STATE(1361), 1, sym_aggregate_body, STATE(6231), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123066] = 6, ACTIONS(10964), 1, sym_identifier, ACTIONS(10966), 1, anon_sym_LPAREN, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7996), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [123086] = 5, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(10968), 1, anon_sym_EQ, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, [123104] = 6, ACTIONS(10964), 1, sym_identifier, ACTIONS(10966), 1, anon_sym_LPAREN, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7473), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [123124] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10970), 1, anon_sym_SEMI, STATE(2258), 1, sym_aggregate_body, STATE(5819), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123144] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10972), 1, anon_sym_SEMI, STATE(2524), 1, sym_aggregate_body, STATE(5506), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123164] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10974), 1, anon_sym_SEMI, STATE(2526), 1, sym_aggregate_body, STATE(5505), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123184] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10976), 1, anon_sym_COLON, STATE(2862), 1, sym_aggregate_body, STATE(6224), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123204] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10972), 1, anon_sym_SEMI, STATE(2524), 1, sym_aggregate_body, STATE(5970), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123224] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10978), 1, anon_sym_SEMI, STATE(2851), 1, sym_aggregate_body, STATE(6242), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123244] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10980), 1, anon_sym_SEMI, STATE(2256), 1, sym_aggregate_body, STATE(5821), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123264] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10974), 1, anon_sym_SEMI, STATE(2526), 1, sym_aggregate_body, STATE(5971), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123284] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10982), 1, anon_sym_COLON, STATE(2532), 1, sym_aggregate_body, STATE(5983), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123304] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10984), 1, anon_sym_COLON, STATE(2281), 1, sym_aggregate_body, STATE(5807), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123324] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10986), 1, anon_sym_SEMI, STATE(2847), 1, sym_aggregate_body, STATE(6243), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123344] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10988), 1, anon_sym_COLON, STATE(1672), 1, sym_aggregate_body, STATE(5893), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123364] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10970), 1, anon_sym_SEMI, STATE(2258), 1, sym_aggregate_body, STATE(5529), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123384] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10980), 1, anon_sym_SEMI, STATE(2256), 1, sym_aggregate_body, STATE(5532), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123404] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(3052), 5, anon_sym_BQUOTE, anon_sym_DOLLAR_LPAREN, aux_sym_interpolated_raw_string_token1, aux_sym_interpolated_raw_string_token2, anon_sym_DOLLAR_BQUOTE, [123418] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10990), 1, anon_sym_COLON, STATE(2614), 1, sym_aggregate_body, STATE(5914), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123438] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10992), 1, anon_sym_SEMI, STATE(2893), 1, sym_aggregate_body, STATE(5498), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123458] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10994), 1, anon_sym_SEMI, STATE(2488), 1, sym_aggregate_body, STATE(5908), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123478] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10996), 1, anon_sym_SEMI, STATE(2490), 1, sym_aggregate_body, STATE(5907), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123498] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10998), 1, anon_sym_SEMI, STATE(2900), 1, sym_aggregate_body, STATE(5493), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123518] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11000), 1, anon_sym_COLON, STATE(2730), 1, sym_aggregate_body, STATE(6057), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123538] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10992), 1, anon_sym_SEMI, STATE(2893), 1, sym_aggregate_body, STATE(6155), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123558] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11002), 1, anon_sym_SEMI, STATE(2574), 1, sym_aggregate_body, STATE(5492), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123578] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11004), 1, anon_sym_SEMI, STATE(2577), 1, sym_aggregate_body, STATE(5495), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123598] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11006), 1, anon_sym_SEMI, STATE(2745), 1, sym_aggregate_body, STATE(6058), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123618] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10998), 1, anon_sym_SEMI, STATE(2900), 1, sym_aggregate_body, STATE(6154), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123638] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11008), 1, anon_sym_SEMI, STATE(2742), 1, sym_aggregate_body, STATE(6064), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123658] = 6, ACTIONS(10964), 1, sym_identifier, ACTIONS(10966), 1, anon_sym_LPAREN, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7762), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [123678] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11010), 1, anon_sym_SEMI, STATE(2721), 1, sym_aggregate_body, STATE(5514), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123698] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10644), 1, anon_sym_EQ, STATE(6479), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10642), 2, anon_sym_RPAREN, anon_sym_COMMA, [123716] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11012), 1, anon_sym_SEMI, STATE(2348), 1, sym_aggregate_body, STATE(5494), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123736] = 4, ACTIONS(11016), 1, anon_sym_BANG, STATE(2416), 1, sym_template_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11014), 3, sym_identifier, anon_sym_DOT, anon_sym_SEMI, [123752] = 5, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(11019), 1, anon_sym_EQ, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9153), 2, anon_sym_RPAREN, anon_sym_COMMA, [123770] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11021), 1, anon_sym_SEMI, STATE(2350), 1, sym_aggregate_body, STATE(5488), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123790] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11023), 1, anon_sym_SEMI, STATE(2695), 1, sym_aggregate_body, STATE(5512), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123810] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11025), 1, anon_sym_COLON, STATE(2903), 1, sym_aggregate_body, STATE(6129), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123830] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10890), 5, anon_sym_DOT, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [123842] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(11027), 1, anon_sym_EQ, STATE(6459), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8952), 2, anon_sym_RPAREN, anon_sym_COMMA, [123860] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11029), 1, anon_sym_COLON, STATE(2170), 1, sym_aggregate_body, STATE(5878), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123880] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11031), 1, anon_sym_SEMI, STATE(1580), 1, sym_aggregate_body, STATE(5880), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123900] = 4, ACTIONS(11033), 1, sym_catch, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4171), 2, sym_finally, sym_while, STATE(5528), 2, sym_catch_statement, aux_sym_try_statement_repeat1, [123916] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11036), 1, anon_sym_SEMI, STATE(2175), 1, sym_aggregate_body, STATE(5883), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123936] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11038), 1, anon_sym_SEMI, STATE(2821), 1, sym_aggregate_body, STATE(5509), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [123956] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11023), 1, anon_sym_SEMI, STATE(2695), 1, sym_aggregate_body, STATE(6195), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123976] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11040), 1, anon_sym_SEMI, STATE(2177), 1, sym_aggregate_body, STATE(5884), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [123996] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11042), 1, anon_sym_SEMI, STATE(2814), 1, sym_aggregate_body, STATE(5513), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124016] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11044), 1, anon_sym_COLON, STATE(2711), 1, sym_aggregate_body, STATE(6317), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124036] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11046), 1, anon_sym_COLON, STATE(1754), 1, sym_aggregate_body, STATE(5782), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124056] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11048), 1, anon_sym_SEMI, STATE(1745), 1, sym_aggregate_body, STATE(5786), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124076] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11050), 1, anon_sym_SEMI, STATE(1743), 1, sym_aggregate_body, STATE(5791), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124096] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11052), 1, anon_sym_SEMI, STATE(1548), 1, sym_aggregate_body, STATE(5552), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124116] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11054), 1, anon_sym_SEMI, STATE(1547), 1, sym_aggregate_body, STATE(5558), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124136] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11056), 1, anon_sym_SEMI, STATE(1576), 1, sym_aggregate_body, STATE(5877), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124156] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11031), 1, anon_sym_SEMI, STATE(1580), 1, sym_aggregate_body, STATE(5536), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124176] = 4, ACTIONS(11058), 1, anon_sym_DOT, STATE(5542), 1, aux_sym_template_mixin_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11014), 3, sym_identifier, anon_sym_BANG, anon_sym_SEMI, [124192] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11010), 1, anon_sym_SEMI, STATE(2721), 1, sym_aggregate_body, STATE(6108), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124212] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11056), 1, anon_sym_SEMI, STATE(1576), 1, sym_aggregate_body, STATE(5537), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124232] = 4, ACTIONS(11061), 1, anon_sym_C, ACTIONS(11065), 1, anon_sym_Objective, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11063), 3, anon_sym_D, anon_sym_Windows, anon_sym_System, [124248] = 6, ACTIONS(10964), 1, sym_identifier, ACTIONS(10966), 1, anon_sym_LPAREN, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7406), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [124268] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11067), 1, anon_sym_COLON, STATE(1453), 1, sym_aggregate_body, STATE(6332), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124288] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11069), 1, anon_sym_SEMI, STATE(1367), 1, sym_aggregate_body, STATE(6233), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124308] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11071), 1, anon_sym_SEMI, STATE(2494), 1, sym_aggregate_body, STATE(5531), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124328] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11073), 1, anon_sym_COLON, STATE(1393), 1, sym_aggregate_body, STATE(6238), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124348] = 4, ACTIONS(11075), 1, anon_sym_C, ACTIONS(11079), 1, anon_sym_Objective, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11077), 3, anon_sym_D, anon_sym_Windows, anon_sym_System, [124364] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11081), 1, anon_sym_SEMI, STATE(1461), 1, sym_aggregate_body, STATE(6316), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124384] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9483), 5, anon_sym_LBRACE, anon_sym_SEMI, anon_sym_COLON, anon_sym_EQ, sym_if, [124396] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(11083), 1, anon_sym_EQ, STATE(6669), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8962), 2, anon_sym_RPAREN, anon_sym_COMMA, [124414] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11085), 1, anon_sym_SEMI, STATE(1695), 1, sym_aggregate_body, STATE(5527), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124434] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11087), 1, anon_sym_SEMI, STATE(1467), 1, sym_aggregate_body, STATE(5484), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124454] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11081), 1, anon_sym_SEMI, STATE(1461), 1, sym_aggregate_body, STATE(5548), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124474] = 6, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11087), 1, anon_sym_SEMI, STATE(1467), 1, sym_aggregate_body, STATE(6269), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124494] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11089), 1, anon_sym_SEMI, STATE(1697), 1, sym_aggregate_body, STATE(5540), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124514] = 5, ACTIONS(3131), 1, anon_sym_DOT_DOT_DOT, ACTIONS(10839), 1, anon_sym_EQ, STATE(6836), 1, sym_ellipses, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10837), 2, anon_sym_RPAREN, anon_sym_COMMA, [124532] = 6, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11091), 1, anon_sym_SEMI, STATE(2516), 1, sym_aggregate_body, STATE(5543), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [124552] = 6, ACTIONS(10964), 1, sym_identifier, ACTIONS(10966), 1, anon_sym_LPAREN, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7256), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [124572] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2233), 1, sym_aggregate_body, STATE(6849), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124589] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4968), 4, sym_catch, sym_else, sym_finally, sym_while, [124600] = 4, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(11093), 1, sym_module, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5648), 2, sym_at_attribute, aux_sym_module_declaration_repeat1, [124615] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11014), 4, sym_identifier, anon_sym_DOT, anon_sym_BANG, anon_sym_SEMI, [124626] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4428), 4, sym_catch, sym_else, sym_finally, sym_while, [124637] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2699), 1, sym_aggregate_body, STATE(6637), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124654] = 4, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(11093), 1, sym_module, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5483), 2, sym_at_attribute, aux_sym_module_declaration_repeat1, [124669] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2270), 1, sym_aggregate_body, STATE(6820), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124686] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1388), 1, sym_aggregate_body, STATE(6606), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124703] = 4, ACTIONS(8964), 1, anon_sym_COMMA, STATE(5628), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11095), 2, anon_sym_RPAREN, anon_sym_SEMI, [124718] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1368), 1, sym_aggregate_body, STATE(6603), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124735] = 3, ACTIONS(11099), 1, sym_int_literal, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11097), 3, sym_identifier, sym_assert, sym_unittest, [124748] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2708), 1, sym_aggregate_body, STATE(6648), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124765] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11101), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6210), 2, sym_declarator, sym_bitfield_declarator, [124780] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1630), 1, sym_aggregate_body, STATE(6868), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124797] = 3, ACTIONS(11103), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4368), 3, sym_catch, sym_finally, sym_while, [124810] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4812), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9517), 2, anon_sym_COMMA, anon_sym_SEMI, [124825] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2630), 1, sym_aggregate_body, STATE(6873), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124842] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4795), 4, sym_catch, sym_else, sym_finally, sym_while, [124853] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7077), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [124870] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11109), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6009), 2, sym_declarator, sym_bitfield_declarator, [124885] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2267), 1, sym_aggregate_body, STATE(6828), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [124902] = 4, ACTIONS(10612), 1, anon_sym_COLON, ACTIONS(11111), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10105), 2, anon_sym_RPAREN, anon_sym_COMMA, [124917] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5839), 2, sym_declarator, sym_bitfield_declarator, [124932] = 3, ACTIONS(11115), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4361), 3, sym_catch, sym_finally, sym_while, [124945] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6792), 2, sym_declarator, sym_bitfield_declarator, [124960] = 3, ACTIONS(11117), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4642), 3, sym_catch, sym_finally, sym_while, [124973] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4454), 4, sym_catch, sym_else, sym_finally, sym_while, [124984] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4444), 4, sym_catch, sym_else, sym_finally, sym_while, [124995] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4432), 4, sym_catch, sym_else, sym_finally, sym_while, [125006] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11119), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6018), 2, sym_declarator, sym_bitfield_declarator, [125021] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2635), 1, sym_aggregate_body, STATE(6879), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125038] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4424), 4, sym_catch, sym_else, sym_finally, sym_while, [125049] = 3, ACTIONS(11121), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2796), 3, sym_catch, sym_finally, sym_while, [125062] = 4, ACTIONS(11125), 1, anon_sym_COLON, ACTIONS(11127), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11123), 2, anon_sym_RPAREN, anon_sym_COMMA, [125077] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4412), 4, sym_catch, sym_else, sym_finally, sym_while, [125088] = 3, ACTIONS(11131), 1, sym_int_literal, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11129), 3, sym_identifier, sym_assert, sym_unittest, [125101] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4394), 4, sym_catch, sym_else, sym_finally, sym_while, [125112] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4384), 4, sym_catch, sym_else, sym_finally, sym_while, [125123] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4380), 4, sym_catch, sym_else, sym_finally, sym_while, [125134] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7120), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [125151] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2239), 1, sym_aggregate_body, STATE(6841), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125168] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4668), 4, sym_catch, sym_else, sym_finally, sym_while, [125179] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11133), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5767), 2, sym_declarator, sym_bitfield_declarator, [125194] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4376), 4, sym_catch, sym_else, sym_finally, sym_while, [125205] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6018), 2, sym_declarator, sym_bitfield_declarator, [125220] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5959), 2, sym_declarator, sym_bitfield_declarator, [125235] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2649), 1, sym_aggregate_body, STATE(6884), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125252] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10746), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6267), 2, sym_declarator, sym_bitfield_declarator, [125267] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, [125282] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4790), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11135), 2, anon_sym_COMMA, anon_sym_SEMI, [125297] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11137), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6026), 2, sym_declarator, sym_bitfield_declarator, [125312] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7333), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [125329] = 4, ACTIONS(11139), 1, sym_identifier, ACTIONS(11141), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11143), 2, anon_sym_COLON, anon_sym_EQ_EQ, [125344] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1448), 1, sym_aggregate_body, STATE(6623), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125361] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11145), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6210), 2, sym_declarator, sym_bitfield_declarator, [125376] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5844), 2, sym_declarator, sym_bitfield_declarator, [125391] = 3, ACTIONS(11147), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4448), 3, sym_catch, sym_finally, sym_while, [125404] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 4, sym_identifier, anon_sym_DOT, anon_sym_BANG, anon_sym_SEMI, [125415] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6210), 2, sym_declarator, sym_bitfield_declarator, [125430] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1452), 1, sym_aggregate_body, STATE(6635), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125447] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4287), 4, sym_catch, sym_else, sym_finally, sym_while, [125458] = 4, ACTIONS(11151), 1, anon_sym_COMMA, STATE(5700), 1, aux_sym__base_class_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11149), 2, anon_sym_LBRACE, sym_if, [125473] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2285), 1, sym_aggregate_body, STATE(6811), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125490] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4584), 4, sym_catch, sym_else, sym_finally, sym_while, [125501] = 4, ACTIONS(11153), 1, anon_sym_COMMA, STATE(5628), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9125), 2, anon_sym_RPAREN, anon_sym_SEMI, [125516] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4596), 4, sym_catch, sym_else, sym_finally, sym_while, [125527] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9185), 2, anon_sym_RPAREN, anon_sym_COMMA, [125542] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4604), 4, sym_catch, sym_else, sym_finally, sym_while, [125553] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4648), 4, sym_catch, sym_else, sym_finally, sym_while, [125564] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7762), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [125581] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4151), 4, sym_catch, sym_else, sym_finally, sym_while, [125592] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4842), 4, sym_catch, sym_else, sym_finally, sym_while, [125603] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7404), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [125620] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4440), 4, sym_catch, sym_else, sym_finally, sym_while, [125631] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9203), 2, anon_sym_RPAREN, anon_sym_COMMA, [125646] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11156), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6130), 2, sym_declarator, sym_bitfield_declarator, [125661] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10939), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5789), 2, sym_declarator, sym_bitfield_declarator, [125676] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2559), 1, sym_aggregate_body, STATE(6842), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125693] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 4, sym_identifier, anon_sym_DOT, anon_sym_BANG, anon_sym_SEMI, [125704] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1652), 1, sym_aggregate_body, STATE(6878), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125721] = 4, ACTIONS(11158), 1, sym_identifier, ACTIONS(11160), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11162), 2, anon_sym_COLON, anon_sym_EQ_EQ, [125736] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5767), 2, sym_declarator, sym_bitfield_declarator, [125751] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9167), 2, anon_sym_RPAREN, anon_sym_COMMA, [125766] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4976), 4, sym_catch, sym_else, sym_finally, sym_while, [125777] = 4, ACTIONS(6781), 1, anon_sym_AT, ACTIONS(11164), 1, sym_module, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5483), 2, sym_at_attribute, aux_sym_module_declaration_repeat1, [125792] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4998), 4, sym_catch, sym_else, sym_finally, sym_while, [125803] = 4, ACTIONS(165), 1, sym_new, ACTIONS(11166), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3848), 2, sym_new_expression, sym_template_instance, [125818] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5002), 4, sym_catch, sym_else, sym_finally, sym_while, [125829] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7406), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [125846] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5010), 4, sym_catch, sym_else, sym_finally, sym_while, [125857] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11168), 4, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, [125868] = 4, ACTIONS(3291), 1, sym_new, ACTIONS(11170), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(3979), 2, sym_new_expression, sym_template_instance, [125883] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(8021), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [125900] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5082), 4, sym_catch, sym_else, sym_finally, sym_while, [125911] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5078), 4, sym_catch, sym_else, sym_finally, sym_while, [125922] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5074), 4, sym_catch, sym_else, sym_finally, sym_while, [125933] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2806), 1, sym_aggregate_body, STATE(6500), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125950] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5066), 4, sym_catch, sym_else, sym_finally, sym_while, [125961] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5062), 4, sym_catch, sym_else, sym_finally, sym_while, [125972] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2550), 1, sym_aggregate_body, STATE(6838), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [125989] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5038), 4, sym_catch, sym_else, sym_finally, sym_while, [126000] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5026), 4, sym_catch, sym_else, sym_finally, sym_while, [126011] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5014), 4, sym_catch, sym_else, sym_finally, sym_while, [126022] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1490), 1, sym_aggregate_body, STATE(6647), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126039] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6171), 2, sym_declarator, sym_bitfield_declarator, [126054] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 4, sym_identifier, anon_sym_DOT, anon_sym_BANG, anon_sym_SEMI, [126065] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2762), 1, sym_aggregate_body, STATE(6522), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126082] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4958), 4, sym_catch, sym_else, sym_finally, sym_while, [126093] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4950), 4, sym_catch, sym_else, sym_finally, sym_while, [126104] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4942), 4, sym_catch, sym_else, sym_finally, sym_while, [126115] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11172), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6267), 2, sym_declarator, sym_bitfield_declarator, [126130] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4924), 4, sym_catch, sym_else, sym_finally, sym_while, [126141] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4910), 4, sym_catch, sym_else, sym_finally, sym_while, [126152] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4886), 4, sym_catch, sym_else, sym_finally, sym_while, [126163] = 4, ACTIONS(10654), 1, sym_identifier, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6349), 2, sym_declarator, sym_bitfield_declarator, [126178] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4882), 4, sym_catch, sym_else, sym_finally, sym_while, [126189] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10955), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6199), 2, sym_declarator, sym_bitfield_declarator, [126204] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4830), 4, sym_catch, sym_else, sym_finally, sym_while, [126215] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4353), 4, sym_catch, sym_else, sym_finally, sym_while, [126226] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4812), 4, sym_catch, sym_else, sym_finally, sym_while, [126237] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4808), 4, sym_catch, sym_else, sym_finally, sym_while, [126248] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2759), 1, sym_aggregate_body, STATE(6540), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126265] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2514), 1, sym_aggregate_body, STATE(6460), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126282] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4804), 4, sym_catch, sym_else, sym_finally, sym_while, [126293] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9153), 2, anon_sym_RPAREN, anon_sym_COMMA, [126308] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4785), 4, sym_catch, sym_else, sym_finally, sym_while, [126319] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11174), 4, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, [126330] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(5054), 4, sym_catch, sym_else, sym_finally, sym_while, [126341] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7829), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [126358] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11176), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6026), 2, sym_declarator, sym_bitfield_declarator, [126373] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6026), 2, sym_declarator, sym_bitfield_declarator, [126388] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4764), 4, sym_catch, sym_else, sym_finally, sym_while, [126399] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4743), 4, sym_catch, sym_else, sym_finally, sym_while, [126410] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4730), 4, sym_catch, sym_else, sym_finally, sym_while, [126421] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4701), 4, sym_catch, sym_else, sym_finally, sym_while, [126432] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1656), 1, sym_aggregate_body, STATE(6887), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126449] = 4, ACTIONS(11151), 1, anon_sym_COMMA, STATE(5701), 1, aux_sym__base_class_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11178), 2, anon_sym_LBRACE, sym_if, [126464] = 4, ACTIONS(11182), 1, anon_sym_COMMA, STATE(5701), 1, aux_sym__base_class_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11180), 2, anon_sym_LBRACE, sym_if, [126479] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1718), 1, sym_aggregate_body, STATE(6913), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126496] = 3, ACTIONS(11185), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2663), 3, sym_catch, sym_finally, sym_while, [126509] = 3, ACTIONS(11187), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4361), 3, sym_catch, sym_finally, sym_while, [126522] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(6659), 4, sym_identifier, anon_sym_DOT, anon_sym_BANG, anon_sym_SEMI, [126533] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2792), 1, sym_aggregate_body, STATE(6572), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126550] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(10799), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6130), 2, sym_declarator, sym_bitfield_declarator, [126565] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2800), 1, sym_aggregate_body, STATE(6579), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126582] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1703), 1, sym_aggregate_body, STATE(6889), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126599] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6282), 2, sym_declarator, sym_bitfield_declarator, [126614] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2570), 1, sym_aggregate_body, STATE(6483), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126631] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7473), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [126648] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6066), 2, sym_declarator, sym_bitfield_declarator, [126663] = 3, ACTIONS(11189), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4642), 3, sym_catch, sym_finally, sym_while, [126676] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11191), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6066), 2, sym_declarator, sym_bitfield_declarator, [126691] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7162), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [126708] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7421), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [126725] = 4, ACTIONS(11193), 1, sym_identifier, ACTIONS(11195), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11197), 2, anon_sym_COLON, anon_sym_EQ_EQ, [126740] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7996), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [126757] = 4, ACTIONS(3681), 1, sym_new, ACTIONS(11199), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(4053), 2, sym_new_expression, sym_template_instance, [126772] = 4, ACTIONS(11201), 1, anon_sym_COLON, ACTIONS(11203), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10105), 2, anon_sym_RPAREN, anon_sym_COMMA, [126787] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11205), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6374), 2, sym_declarator, sym_bitfield_declarator, [126802] = 3, ACTIONS(11207), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(4368), 3, sym_catch, sym_finally, sym_while, [126815] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(6374), 2, sym_declarator, sym_bitfield_declarator, [126830] = 5, ACTIONS(9327), 1, sym_if, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2620), 1, sym_aggregate_body, STATE(6514), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [126847] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11210), 4, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_SEMI, [126858] = 5, ACTIONS(10964), 1, sym_identifier, STATE(6273), 1, sym_imported, STATE(6383), 1, sym_module_fqn, STATE(7256), 1, sym__import_list, ACTIONS(3), 2, sym_directive, sym_comment, [126875] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4798), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9523), 2, anon_sym_COMMA, anon_sym_SEMI, [126890] = 4, ACTIONS(10656), 1, anon_sym_COLON, ACTIONS(11113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, STATE(5769), 2, sym_declarator, sym_bitfield_declarator, [126905] = 3, ACTIONS(11212), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(2782), 3, sym_catch, sym_finally, sym_while, [126918] = 4, ACTIONS(11214), 1, anon_sym_RPAREN, ACTIONS(11216), 1, anon_sym_COMMA, STATE(6208), 1, aux_sym__argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [126932] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11218), 1, sym_identifier, STATE(1697), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [126946] = 4, ACTIONS(11220), 1, sym_identifier, STATE(4664), 1, sym__qualified_id, STATE(5047), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [126960] = 4, ACTIONS(11222), 1, anon_sym_RBRACK, ACTIONS(11224), 1, anon_sym_COMMA, STATE(5798), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [126974] = 4, ACTIONS(9801), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [126988] = 4, ACTIONS(11226), 1, anon_sym_RPAREN, ACTIONS(11228), 1, anon_sym_COMMA, STATE(5790), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127002] = 4, ACTIONS(9857), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127016] = 4, ACTIONS(9627), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127030] = 4, ACTIONS(7799), 1, anon_sym_RBRACE, ACTIONS(11232), 1, anon_sym_COMMA, STATE(6046), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127044] = 4, ACTIONS(10953), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127058] = 4, ACTIONS(7813), 1, anon_sym_RBRACE, ACTIONS(11234), 1, anon_sym_COMMA, STATE(5806), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127072] = 4, ACTIONS(11236), 1, anon_sym_RBRACE, ACTIONS(11238), 1, anon_sym_COMMA, STATE(5803), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127086] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11242), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127100] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11242), 1, anon_sym_SEMI, STATE(5804), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127114] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11244), 1, anon_sym_SEMI, STATE(5899), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127128] = 4, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(9565), 1, anon_sym_EQ, STATE(7941), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127142] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11244), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127156] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11246), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127170] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4908), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [127184] = 4, ACTIONS(9125), 1, anon_sym_COLON, ACTIONS(11248), 1, anon_sym_COMMA, STATE(5750), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127198] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11251), 1, anon_sym_LBRACE, STATE(6982), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [127212] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11253), 1, anon_sym_LBRACE, STATE(7766), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [127226] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4346), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127240] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11259), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [127254] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4353), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127268] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11261), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [127282] = 4, ACTIONS(11263), 1, sym_identifier, STATE(4659), 1, sym__qualified_id, STATE(5190), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [127296] = 4, ACTIONS(9843), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4928), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127310] = 4, ACTIONS(10953), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(5826), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127324] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11265), 1, anon_sym_SEMI, STATE(4944), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127338] = 3, ACTIONS(11269), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11267), 2, sym_identifier, sym_default, [127350] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4346), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127364] = 4, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(11273), 1, anon_sym_LPAREN, STATE(2321), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [127378] = 4, ACTIONS(8139), 1, anon_sym_LPAREN, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2322), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [127392] = 4, ACTIONS(11275), 1, sym_identifier, STATE(3877), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [127406] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11279), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127420] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11261), 1, anon_sym_SEMI, STATE(5834), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [127434] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11281), 1, anon_sym_COLON, STATE(1718), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127448] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11259), 1, anon_sym_SEMI, STATE(6069), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [127462] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11283), 1, anon_sym_SEMI, STATE(5773), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127476] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11285), 1, anon_sym_SEMI, STATE(5838), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127490] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4353), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127504] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11287), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127518] = 4, ACTIONS(9827), 1, anon_sym_LBRACE, ACTIONS(11289), 1, anon_sym_SEMI, STATE(1670), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [127532] = 4, ACTIONS(7813), 1, anon_sym_RBRACE, ACTIONS(11234), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127546] = 4, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10007), 1, anon_sym_EQ, STATE(7799), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127560] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11246), 1, anon_sym_SEMI, STATE(5824), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127574] = 4, ACTIONS(11291), 1, anon_sym_COMMA, ACTIONS(11294), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127588] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11296), 1, sym_identifier, STATE(2348), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127602] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11298), 1, sym_identifier, STATE(2350), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127616] = 4, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(11300), 1, anon_sym_LPAREN, STATE(2337), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [127630] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11302), 1, anon_sym_COLON, STATE(1703), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127644] = 4, ACTIONS(3541), 1, anon_sym_RPAREN, ACTIONS(11304), 1, anon_sym_COMMA, STATE(6074), 1, aux_sym__template_argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127658] = 4, ACTIONS(11306), 1, anon_sym_LPAREN, STATE(4414), 1, sym_parameters, STATE(6934), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127672] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4832), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [127686] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11308), 1, anon_sym_SEMI, STATE(1666), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127700] = 4, ACTIONS(9825), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4935), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [127714] = 4, ACTIONS(11310), 1, anon_sym_RPAREN, ACTIONS(11312), 1, anon_sym_COMMA, STATE(6085), 1, aux_sym__named_argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127728] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11314), 1, anon_sym_SEMI, STATE(5756), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [127742] = 4, ACTIONS(7624), 1, anon_sym_RPAREN, ACTIONS(11316), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127756] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11318), 1, anon_sym_SEMI, STATE(1665), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127770] = 4, ACTIONS(7646), 1, anon_sym_RPAREN, ACTIONS(10463), 1, anon_sym_COMMA, STATE(6088), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127784] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11320), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [127798] = 4, ACTIONS(7646), 1, anon_sym_RPAREN, ACTIONS(10463), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127812] = 3, ACTIONS(11322), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11324), 2, anon_sym_COLON, anon_sym_EQ_EQ, [127824] = 4, ACTIONS(9715), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127838] = 4, ACTIONS(11326), 1, anon_sym_RBRACE, ACTIONS(11328), 1, anon_sym_COMMA, STATE(6100), 1, aux_sym_aggregate_initializer_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127852] = 4, ACTIONS(3335), 1, anon_sym_RBRACK, ACTIONS(11330), 1, anon_sym_COMMA, STATE(6302), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127866] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(10921), 1, anon_sym_COLON, STATE(2208), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127880] = 4, ACTIONS(11332), 1, anon_sym_RBRACE, ACTIONS(11334), 1, anon_sym_COMMA, STATE(5854), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127894] = 4, ACTIONS(9693), 1, anon_sym_LBRACE, ACTIONS(11336), 1, anon_sym_SEMI, STATE(2317), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [127908] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11338), 1, anon_sym_SEMI, STATE(5743), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127922] = 4, ACTIONS(7833), 1, anon_sym_RBRACE, ACTIONS(11340), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127936] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11342), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127950] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11342), 1, anon_sym_SEMI, STATE(5857), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127964] = 4, ACTIONS(7801), 1, anon_sym_RBRACE, ACTIONS(11344), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [127978] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11346), 1, anon_sym_COLON, STATE(2170), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [127992] = 4, ACTIONS(11348), 1, anon_sym_RBRACK, ACTIONS(11350), 1, anon_sym_COMMA, STATE(6117), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128006] = 4, ACTIONS(11230), 1, anon_sym_COMMA, ACTIONS(11352), 1, anon_sym_SEMI, STATE(5740), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128020] = 4, ACTIONS(11354), 1, anon_sym_RBRACE, ACTIONS(11356), 1, anon_sym_COMMA, STATE(6311), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128034] = 4, ACTIONS(10336), 1, anon_sym_RBRACE, ACTIONS(11358), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128048] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11360), 1, anon_sym_LBRACE, STATE(7011), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [128062] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(11362), 1, anon_sym_RPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [128076] = 4, ACTIONS(9733), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128090] = 4, ACTIONS(11263), 1, sym_identifier, STATE(4657), 1, sym__qualified_id, STATE(5190), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [128104] = 4, ACTIONS(7801), 1, anon_sym_RBRACE, ACTIONS(11344), 1, anon_sym_COMMA, STATE(5849), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128118] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(11364), 1, anon_sym_RPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [128132] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11368), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128146] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11036), 1, anon_sym_SEMI, STATE(2175), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128160] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11370), 1, sym_identifier, STATE(2365), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128174] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11040), 1, anon_sym_SEMI, STATE(2177), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128188] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11372), 1, sym_identifier, STATE(2359), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128202] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11374), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128216] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11376), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128230] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11378), 1, anon_sym_SEMI, STATE(5818), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128244] = 4, ACTIONS(9715), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128258] = 4, ACTIONS(9333), 1, anon_sym_LBRACE, ACTIONS(11380), 1, anon_sym_LPAREN, STATE(2352), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [128272] = 4, ACTIONS(7833), 1, anon_sym_RBRACE, ACTIONS(11340), 1, anon_sym_COMMA, STATE(5875), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128286] = 4, ACTIONS(11382), 1, sym_identifier, ACTIONS(11384), 1, anon_sym_LPAREN, STATE(4640), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [128300] = 4, ACTIONS(11386), 1, anon_sym_RBRACK, ACTIONS(11388), 1, anon_sym_COMMA, STATE(6117), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128314] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11390), 1, anon_sym_SEMI, STATE(5823), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128328] = 4, ACTIONS(11392), 1, sym_identifier, STATE(4664), 1, sym__qualified_id, STATE(5035), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [128342] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4354), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128356] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11394), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [128370] = 4, ACTIONS(11396), 1, anon_sym_LPAREN, STATE(4421), 1, sym_parameters, STATE(6458), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128384] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11376), 1, anon_sym_SEMI, STATE(5855), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128398] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4354), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128412] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11398), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128426] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11394), 1, anon_sym_SEMI, STATE(5885), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [128440] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11400), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128454] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11402), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128468] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11404), 1, anon_sym_SEMI, STATE(5840), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128482] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11406), 1, anon_sym_SEMI, STATE(5841), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128496] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11408), 1, anon_sym_SEMI, STATE(5793), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [128510] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11410), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128524] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11412), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128538] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11414), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128552] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11416), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128566] = 4, ACTIONS(7817), 1, anon_sym_RBRACE, ACTIONS(11418), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128580] = 4, ACTIONS(7803), 1, anon_sym_RBRACE, ACTIONS(11420), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128594] = 4, ACTIONS(9651), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128608] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11422), 1, anon_sym_SEMI, STATE(5845), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128622] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11424), 1, anon_sym_SEMI, STATE(5846), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128636] = 4, ACTIONS(10338), 1, anon_sym_RBRACE, ACTIONS(11426), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128650] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11428), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128664] = 4, ACTIONS(7781), 1, anon_sym_RBRACE, ACTIONS(11430), 1, anon_sym_COMMA, STATE(5896), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128678] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11432), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128692] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4315), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128706] = 3, ACTIONS(11434), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11436), 2, anon_sym_RBRACK, anon_sym_COMMA, [128718] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11408), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [128732] = 4, ACTIONS(11438), 1, anon_sym_RBRACK, ACTIONS(11440), 1, anon_sym_COMMA, STATE(6135), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128746] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4315), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128760] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11442), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128774] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11444), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128788] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11446), 1, anon_sym_SEMI, STATE(5847), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128802] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11448), 1, anon_sym_SEMI, STATE(5863), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128816] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11446), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128830] = 4, ACTIONS(7789), 1, anon_sym_RBRACE, ACTIONS(11450), 1, anon_sym_COMMA, STATE(5850), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128844] = 4, ACTIONS(9811), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4925), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128858] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11452), 1, anon_sym_SEMI, STATE(5864), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128872] = 4, ACTIONS(9713), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128886] = 4, ACTIONS(7807), 1, anon_sym_RBRACE, ACTIONS(11454), 1, anon_sym_COMMA, STATE(5775), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128900] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11456), 1, anon_sym_COLON, STATE(2233), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128914] = 4, ACTIONS(9693), 1, anon_sym_LBRACE, ACTIONS(11458), 1, anon_sym_SEMI, STATE(2245), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [128928] = 4, ACTIONS(7781), 1, anon_sym_RBRACE, ACTIONS(11430), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128942] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11432), 1, anon_sym_SEMI, STATE(5913), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [128956] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11050), 1, anon_sym_SEMI, STATE(1743), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128970] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11460), 1, anon_sym_COLON, STATE(2239), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [128984] = 4, ACTIONS(11462), 1, anon_sym_LPAREN, STATE(4465), 1, sym_parameters, STATE(6473), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [128998] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11048), 1, anon_sym_SEMI, STATE(1745), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129012] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4875), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [129026] = 4, ACTIONS(11464), 1, anon_sym_RPAREN, ACTIONS(11466), 1, anon_sym_COMMA, STATE(5882), 1, aux_sym__argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129040] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11469), 1, anon_sym_SEMI, STATE(2247), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129054] = 4, ACTIONS(10722), 1, anon_sym_LBRACE, ACTIONS(11471), 1, anon_sym_SEMI, STATE(2248), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129068] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11473), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [129082] = 3, ACTIONS(11475), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11123), 2, anon_sym_RPAREN, anon_sym_COMMA, [129094] = 4, ACTIONS(11477), 1, anon_sym_RBRACK, ACTIONS(11479), 1, anon_sym_COMMA, STATE(5808), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129108] = 4, ACTIONS(9108), 1, anon_sym_COMMA, ACTIONS(11095), 1, anon_sym_COLON, STATE(5750), 1, aux_sym_expression_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129122] = 4, ACTIONS(11481), 1, sym_identifier, STATE(3590), 1, sym__qualified_id, STATE(3610), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [129136] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11483), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129150] = 3, ACTIONS(11487), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11485), 2, sym_identifier, sym_default, [129162] = 4, ACTIONS(11481), 1, sym_identifier, STATE(3610), 1, sym_template_instance, STATE(3619), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [129176] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11489), 1, anon_sym_COLON, STATE(1754), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129190] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11491), 1, anon_sym_SEMI, STATE(5748), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129204] = 4, ACTIONS(7789), 1, anon_sym_RBRACE, ACTIONS(11450), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129218] = 4, ACTIONS(7793), 1, anon_sym_RBRACE, ACTIONS(11493), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129232] = 4, ACTIONS(11495), 1, anon_sym_COMMA, ACTIONS(11498), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [129246] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11500), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129260] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11502), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129274] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11504), 1, anon_sym_SEMI, STATE(5890), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129288] = 4, ACTIONS(11506), 1, sym_identifier, STATE(3809), 1, sym_template_instance, STATE(3819), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [129302] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11508), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [129316] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11510), 1, anon_sym_SEMI, STATE(5898), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129330] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11491), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129344] = 4, ACTIONS(11512), 1, sym_identifier, ACTIONS(11514), 1, anon_sym_LPAREN, STATE(2406), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [129358] = 4, ACTIONS(7807), 1, anon_sym_RBRACE, ACTIONS(11454), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129372] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11516), 1, anon_sym_SEMI, STATE(2619), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129386] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11518), 1, anon_sym_SEMI, STATE(2618), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129400] = 4, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(11520), 1, anon_sym_LPAREN, STATE(2765), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [129414] = 4, ACTIONS(11522), 1, anon_sym_RPAREN, ACTIONS(11524), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129428] = 4, ACTIONS(9569), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129442] = 4, ACTIONS(7793), 1, anon_sym_RBRACE, ACTIONS(11493), 1, anon_sym_COMMA, STATE(5934), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129456] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11527), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129470] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11529), 1, anon_sym_COLON, STATE(2559), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129484] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11531), 1, sym_identifier, STATE(2767), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129498] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11533), 1, sym_identifier, STATE(2809), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129512] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11535), 1, anon_sym_SEMI, STATE(5867), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129526] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11527), 1, anon_sym_SEMI, STATE(5939), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129540] = 4, ACTIONS(7811), 1, anon_sym_RBRACE, ACTIONS(11537), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129554] = 4, ACTIONS(11539), 1, anon_sym_RPAREN, ACTIONS(11541), 1, anon_sym_COMMA, STATE(5920), 1, aux_sym__template_parameter_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129568] = 4, ACTIONS(9613), 1, anon_sym_LBRACE, ACTIONS(11544), 1, anon_sym_SEMI, STATE(2607), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [129582] = 4, ACTIONS(11506), 1, sym_identifier, STATE(3809), 1, sym_template_instance, STATE(3820), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [129596] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11546), 1, anon_sym_COLON, STATE(2550), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129610] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11548), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129624] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11550), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129638] = 4, ACTIONS(11230), 1, anon_sym_COMMA, ACTIONS(11552), 1, anon_sym_SEMI, STATE(6019), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129652] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11554), 1, anon_sym_SEMI, STATE(5924), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129666] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11556), 1, anon_sym_SEMI, STATE(5925), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129680] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11558), 1, anon_sym_SEMI, STATE(6029), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129694] = 4, ACTIONS(9765), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4835), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [129708] = 4, ACTIONS(9827), 1, anon_sym_LBRACE, ACTIONS(11560), 1, anon_sym_SEMI, STATE(1757), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [129722] = 4, ACTIONS(11562), 1, anon_sym_RBRACE, ACTIONS(11564), 1, anon_sym_COMMA, STATE(5811), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129736] = 4, ACTIONS(11566), 1, anon_sym_COMMA, ACTIONS(11569), 1, anon_sym_SEMI, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129750] = 4, ACTIONS(7819), 1, anon_sym_RBRACE, ACTIONS(11571), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129764] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(10865), 1, anon_sym_COLON, STATE(1748), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [129778] = 4, ACTIONS(9627), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129792] = 4, ACTIONS(11573), 1, sym_identifier, STATE(5200), 1, sym_template_instance, STATE(5219), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [129806] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4963), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [129820] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11575), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129834] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11535), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129848] = 4, ACTIONS(9719), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129862] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11577), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129876] = 4, ACTIONS(7811), 1, anon_sym_RBRACE, ACTIONS(11537), 1, anon_sym_COMMA, STATE(5895), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129890] = 4, ACTIONS(10877), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129904] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11579), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129918] = 4, ACTIONS(10322), 1, anon_sym_RBRACE, ACTIONS(11581), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129932] = 4, ACTIONS(9805), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129946] = 4, ACTIONS(7577), 1, anon_sym_RPAREN, ACTIONS(11583), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129960] = 4, ACTIONS(9583), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4911), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [129974] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11585), 1, anon_sym_SEMI, STATE(5942), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [129988] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11587), 1, anon_sym_SEMI, STATE(5945), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130002] = 4, ACTIONS(11178), 1, anon_sym_LBRACE, ACTIONS(11589), 1, anon_sym_COMMA, STATE(6169), 1, aux_sym__base_class_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130016] = 4, ACTIONS(9595), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4952), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130030] = 4, ACTIONS(10328), 1, anon_sym_RBRACE, ACTIONS(11591), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130044] = 4, ACTIONS(11593), 1, anon_sym_LPAREN, STATE(4467), 1, sym_parameters, STATE(6731), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130058] = 4, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(11595), 1, anon_sym_LPAREN, STATE(2848), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [130072] = 4, ACTIONS(11597), 1, anon_sym_RBRACE, ACTIONS(11599), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130086] = 4, ACTIONS(7823), 1, anon_sym_RBRACE, ACTIONS(11602), 1, anon_sym_COMMA, STATE(6178), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130100] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11604), 1, anon_sym_SEMI, STATE(5902), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [130114] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11606), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130128] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4334), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130142] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11604), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [130156] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4334), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130170] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11608), 1, sym_identifier, STATE(2814), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [130184] = 4, ACTIONS(7815), 1, anon_sym_RBRACE, ACTIONS(11610), 1, anon_sym_COMMA, STATE(5919), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130198] = 4, ACTIONS(9567), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130212] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11612), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130226] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11614), 1, sym_identifier, STATE(2821), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [130240] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11616), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130254] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10996), 1, anon_sym_SEMI, STATE(2490), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [130268] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10994), 1, anon_sym_SEMI, STATE(2488), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [130282] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11618), 1, anon_sym_SEMI, STATE(5967), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130296] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11620), 1, anon_sym_SEMI, STATE(5969), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130310] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11622), 1, anon_sym_SEMI, STATE(6071), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130324] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11624), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130338] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11626), 1, anon_sym_LBRACE, STATE(7083), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [130352] = 4, ACTIONS(11628), 1, anon_sym_COMMA, ACTIONS(11630), 1, anon_sym_SEMI, STATE(6181), 1, aux_sym__import_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130366] = 4, ACTIONS(11632), 1, sym_identifier, STATE(3873), 1, sym_template_instance, STATE(3925), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [130380] = 4, ACTIONS(11634), 1, sym_identifier, ACTIONS(11636), 1, anon_sym_LPAREN, STATE(4624), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [130394] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11638), 1, anon_sym_LBRACE, STATE(7122), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [130408] = 4, ACTIONS(11640), 1, anon_sym_RBRACK, ACTIONS(11642), 1, anon_sym_COMMA, STATE(5830), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130422] = 4, ACTIONS(11632), 1, sym_identifier, STATE(3873), 1, sym_template_instance, STATE(3926), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [130436] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11644), 1, anon_sym_COLON, STATE(2614), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [130450] = 4, ACTIONS(11646), 1, sym_identifier, STATE(3890), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [130464] = 4, ACTIONS(11648), 1, anon_sym_RPAREN, ACTIONS(11650), 1, anon_sym_COMMA, STATE(5783), 1, aux_sym__template_argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130478] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11652), 1, anon_sym_SEMI, STATE(5940), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130492] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11652), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130506] = 4, ACTIONS(9649), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4859), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130520] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4899), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [130534] = 4, ACTIONS(7815), 1, anon_sym_RBRACE, ACTIONS(11610), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130548] = 4, ACTIONS(11654), 1, anon_sym_LPAREN, STATE(4433), 1, sym_parameters, STATE(6766), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130562] = 4, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(11656), 1, anon_sym_LPAREN, STATE(2567), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [130576] = 4, ACTIONS(8139), 1, anon_sym_LPAREN, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1622), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [130590] = 4, ACTIONS(9613), 1, anon_sym_LBRACE, ACTIONS(11658), 1, anon_sym_SEMI, STATE(2473), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [130604] = 4, ACTIONS(11660), 1, anon_sym_RBRACE, ACTIONS(11662), 1, anon_sym_COMMA, STATE(5946), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130618] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(10708), 1, anon_sym_COLON, STATE(2475), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [130632] = 4, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(11664), 1, anon_sym_LPAREN, STATE(1623), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [130646] = 4, ACTIONS(9567), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130660] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11666), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [130674] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11668), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [130684] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(11670), 1, sym_identifier, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [130698] = 4, ACTIONS(11672), 1, sym_identifier, STATE(3913), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [130712] = 4, ACTIONS(8139), 1, anon_sym_LPAREN, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2427), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [130726] = 4, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(11674), 1, anon_sym_LPAREN, STATE(2436), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [130740] = 4, ACTIONS(7630), 1, anon_sym_RPAREN, ACTIONS(11676), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130754] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11678), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130768] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11680), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130782] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11682), 1, anon_sym_SEMI, STATE(6006), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130796] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11684), 1, anon_sym_SEMI, STATE(6052), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [130810] = 4, ACTIONS(11686), 1, anon_sym_RPAREN, ACTIONS(11688), 1, anon_sym_COMMA, STATE(6041), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130824] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11690), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130838] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11692), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130852] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11694), 1, anon_sym_SEMI, STATE(6007), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130866] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4369), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130880] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11696), 1, anon_sym_SEMI, STATE(6011), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130894] = 4, ACTIONS(11698), 1, anon_sym_RPAREN, ACTIONS(11700), 1, anon_sym_COMMA, STATE(6095), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130908] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11702), 1, anon_sym_SEMI, STATE(5848), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130922] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11704), 1, anon_sym_SEMI, STATE(5860), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [130936] = 4, ACTIONS(10927), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130950] = 4, ACTIONS(10674), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(5738), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130964] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4373), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [130978] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11706), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [130992] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4890), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [131006] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4350), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131020] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11708), 1, anon_sym_SEMI, STATE(5960), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131034] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11710), 1, anon_sym_SEMI, STATE(5962), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [131048] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4373), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131062] = 4, ACTIONS(11712), 1, anon_sym_RBRACE, ACTIONS(11714), 1, anon_sym_COMMA, STATE(6113), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131076] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11716), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131090] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11716), 1, anon_sym_SEMI, STATE(6124), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131104] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11718), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131118] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11720), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [131132] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11722), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131146] = 4, ACTIONS(10790), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(5966), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131160] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11724), 1, anon_sym_LBRACE, STATE(7111), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [131174] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11704), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [131188] = 4, ACTIONS(9647), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4884), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131202] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11726), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [131216] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11728), 1, anon_sym_LBRACE, STATE(7151), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [131230] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11730), 1, anon_sym_COLON, STATE(2708), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [131244] = 4, ACTIONS(7587), 1, anon_sym_RPAREN, ACTIONS(11732), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131258] = 4, ACTIONS(9631), 1, anon_sym_LBRACE, ACTIONS(11734), 1, anon_sym_SEMI, STATE(2688), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [131272] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4369), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131286] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11710), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [131300] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4350), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131314] = 4, ACTIONS(7823), 1, anon_sym_RBRACE, ACTIONS(11602), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131328] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11736), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [131338] = 4, ACTIONS(11514), 1, anon_sym_LPAREN, ACTIONS(11738), 1, sym_identifier, STATE(2406), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [131352] = 3, ACTIONS(11742), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11740), 2, sym_identifier, sym_default, [131364] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4319), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131378] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4364), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131392] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11744), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [131406] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4364), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131420] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11746), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [131434] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11624), 1, anon_sym_SEMI, STATE(6240), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131448] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4834), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [131462] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11748), 1, anon_sym_COLON, STATE(2699), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [131476] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11750), 1, anon_sym_SEMI, STATE(2683), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [131490] = 4, ACTIONS(11752), 1, anon_sym_RPAREN, ACTIONS(11754), 1, anon_sym_COMMA, STATE(6256), 1, aux_sym__template_parameter_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131504] = 4, ACTIONS(11756), 1, anon_sym_LPAREN, STATE(4466), 1, sym_parameters, STATE(6639), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131518] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11758), 1, anon_sym_SEMI, STATE(6204), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131532] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11760), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [131542] = 4, ACTIONS(10927), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6163), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131556] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11762), 1, anon_sym_SEMI, STATE(2682), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [131570] = 4, ACTIONS(3509), 1, anon_sym_RPAREN, ACTIONS(11764), 1, anon_sym_COMMA, STATE(5882), 1, aux_sym__argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131584] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11744), 1, anon_sym_SEMI, STATE(6212), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [131598] = 4, ACTIONS(11766), 1, anon_sym_RPAREN, ACTIONS(11768), 1, anon_sym_COMMA, STATE(6252), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131612] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11770), 1, anon_sym_SEMI, STATE(6170), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131626] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11772), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [131640] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4319), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131654] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11774), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131668] = 4, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(8139), 1, anon_sym_LPAREN, STATE(2453), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [131682] = 4, ACTIONS(11776), 1, anon_sym_LPAREN, STATE(4496), 1, sym_parameters, STATE(6791), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131696] = 4, ACTIONS(11778), 1, anon_sym_RPAREN, ACTIONS(11780), 1, anon_sym_COMMA, STATE(6074), 1, aux_sym__template_argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131710] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11783), 1, anon_sym_SEMI, STATE(4879), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131724] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4337), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131738] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11785), 1, anon_sym_SEMI, STATE(5987), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131752] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11787), 1, anon_sym_SEMI, STATE(5904), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131766] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11789), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131780] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11785), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131794] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11787), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131808] = 4, ACTIONS(11791), 1, anon_sym_RBRACE, ACTIONS(11793), 1, anon_sym_COMMA, STATE(5990), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131822] = 4, ACTIONS(11795), 1, anon_sym_RPAREN, ACTIONS(11797), 1, anon_sym_COMMA, STATE(6065), 1, aux_sym__argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131836] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11799), 1, anon_sym_SEMI, STATE(6079), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131850] = 4, ACTIONS(3427), 1, anon_sym_RPAREN, ACTIONS(11801), 1, anon_sym_COMMA, STATE(6254), 1, aux_sym__named_argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131864] = 4, ACTIONS(11803), 1, anon_sym_RBRACK, ACTIONS(11805), 1, anon_sym_COMMA, STATE(6175), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131878] = 4, ACTIONS(7640), 1, anon_sym_RPAREN, ACTIONS(8937), 1, anon_sym_COMMA, STATE(6258), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131892] = 4, ACTIONS(7640), 1, anon_sym_RPAREN, ACTIONS(8937), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131906] = 4, ACTIONS(10790), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131920] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11807), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [131930] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11809), 1, anon_sym_SEMI, STATE(4860), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131944] = 4, ACTIONS(11811), 1, anon_sym_RBRACE, ACTIONS(11813), 1, anon_sym_COMMA, STATE(5906), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [131958] = 4, ACTIONS(11815), 1, sym_identifier, ACTIONS(11817), 1, anon_sym_LPAREN, STATE(3277), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [131972] = 4, ACTIONS(9711), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4941), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [131986] = 4, ACTIONS(7573), 1, anon_sym_RPAREN, ACTIONS(11819), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132000] = 4, ACTIONS(11821), 1, anon_sym_RPAREN, ACTIONS(11823), 1, anon_sym_COMMA, STATE(6005), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132014] = 4, ACTIONS(10674), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132028] = 4, ACTIONS(9605), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132042] = 4, ACTIONS(10778), 1, anon_sym_RPAREN, ACTIONS(11825), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132056] = 4, ACTIONS(3235), 1, anon_sym_RBRACE, ACTIONS(11828), 1, anon_sym_COMMA, STATE(6275), 1, aux_sym_aggregate_initializer_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132070] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10855), 1, anon_sym_COLON, STATE(2868), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132084] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11830), 1, anon_sym_SEMI, STATE(4831), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [132098] = 4, ACTIONS(11832), 1, anon_sym_RBRACE, ACTIONS(11834), 1, anon_sym_COMMA, STATE(6194), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132112] = 4, ACTIONS(11836), 1, sym_identifier, STATE(3953), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132126] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11838), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [132140] = 4, ACTIONS(9775), 1, anon_sym_LBRACE, ACTIONS(11840), 1, anon_sym_SEMI, STATE(2866), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [132154] = 4, ACTIONS(11842), 1, anon_sym_RPAREN, ACTIONS(11844), 1, anon_sym_COMMA, STATE(6127), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132168] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11008), 1, anon_sym_SEMI, STATE(2742), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132182] = 4, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(11846), 1, anon_sym_LPAREN, STATE(1522), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132196] = 4, ACTIONS(8139), 1, anon_sym_LPAREN, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1524), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132210] = 4, ACTIONS(11848), 1, sym_identifier, STATE(3771), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132224] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11850), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132238] = 4, ACTIONS(7795), 1, anon_sym_RBRACE, ACTIONS(11852), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132252] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11854), 1, anon_sym_SEMI, STATE(6022), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132266] = 4, ACTIONS(11856), 1, anon_sym_RPAREN, ACTIONS(11858), 1, anon_sym_COMMA, STATE(5948), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132280] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11860), 1, anon_sym_SEMI, STATE(6112), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132294] = 4, ACTIONS(11862), 1, anon_sym_RBRACK, ACTIONS(11864), 1, anon_sym_COMMA, STATE(6117), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132308] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11867), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [132318] = 4, ACTIONS(11392), 1, sym_identifier, STATE(4659), 1, sym__qualified_id, STATE(5035), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [132332] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11869), 1, sym_identifier, STATE(2574), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132346] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11871), 1, sym_identifier, STATE(2577), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132360] = 4, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(11873), 1, anon_sym_LPAREN, STATE(2567), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132374] = 4, ACTIONS(11875), 1, anon_sym_LPAREN, STATE(4457), 1, sym_parameters, STATE(6756), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [132388] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11877), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132402] = 4, ACTIONS(11879), 1, anon_sym_LPAREN, STATE(4463), 1, sym_parameters, STATE(6615), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [132416] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11877), 1, anon_sym_SEMI, STATE(6198), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132430] = 4, ACTIONS(7595), 1, anon_sym_RPAREN, ACTIONS(11881), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132444] = 3, ACTIONS(11883), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11885), 2, anon_sym_COLON, anon_sym_EQ_EQ, [132456] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(11887), 1, anon_sym_COLON, STATE(2862), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132470] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11889), 1, anon_sym_SEMI, STATE(6044), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [132484] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4848), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [132498] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11891), 1, anon_sym_SEMI, STATE(5766), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132512] = 4, ACTIONS(9387), 1, anon_sym_LBRACE, ACTIONS(11893), 1, anon_sym_LPAREN, STATE(2616), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132526] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11895), 1, anon_sym_SEMI, STATE(4837), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [132540] = 4, ACTIONS(3419), 1, anon_sym_RBRACK, ACTIONS(11897), 1, anon_sym_COMMA, STATE(6302), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132554] = 3, ACTIONS(11899), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, [132566] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11901), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132580] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11903), 1, anon_sym_SEMI, STATE(6080), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132594] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11905), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [132608] = 4, ACTIONS(11230), 1, anon_sym_COMMA, ACTIONS(11907), 1, anon_sym_SEMI, STATE(6089), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132622] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11909), 1, anon_sym_SEMI, STATE(6137), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132636] = 4, ACTIONS(7785), 1, anon_sym_RBRACE, ACTIONS(11911), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132650] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4866), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [132664] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(11913), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [132678] = 4, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(8141), 1, anon_sym_LPAREN, STATE(5198), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132692] = 4, ACTIONS(11573), 1, sym_identifier, STATE(5200), 1, sym_template_instance, STATE(5231), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132706] = 4, ACTIONS(11392), 1, sym_identifier, STATE(4657), 1, sym__qualified_id, STATE(5035), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [132720] = 4, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(8139), 1, anon_sym_LPAREN, STATE(5169), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132734] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11915), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [132744] = 4, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(11917), 1, anon_sym_LPAREN, STATE(2458), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132758] = 4, ACTIONS(11919), 1, sym_identifier, STATE(4659), 1, sym__qualified_id, STATE(5081), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [132772] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11921), 1, sym_identifier, STATE(2613), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132786] = 4, ACTIONS(10676), 1, anon_sym_LBRACE, ACTIONS(11923), 1, sym_identifier, STATE(2470), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132800] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10978), 1, anon_sym_SEMI, STATE(2851), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132814] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(10986), 1, anon_sym_SEMI, STATE(2847), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [132828] = 4, ACTIONS(8135), 1, anon_sym_LBRACE, ACTIONS(11925), 1, anon_sym_LPAREN, STATE(2616), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [132842] = 4, ACTIONS(11927), 1, sym_identifier, ACTIONS(11929), 1, anon_sym_LPAREN, STATE(4995), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [132856] = 4, ACTIONS(11931), 1, sym_identifier, STATE(3902), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132870] = 4, ACTIONS(11573), 1, sym_identifier, STATE(5200), 1, sym_template_instance, STATE(5221), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132884] = 4, ACTIONS(11632), 1, sym_identifier, STATE(3873), 1, sym_template_instance, STATE(3882), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132898] = 4, ACTIONS(11933), 1, sym_identifier, ACTIONS(11935), 1, anon_sym_LPAREN, STATE(3489), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [132912] = 4, ACTIONS(11632), 1, sym_identifier, STATE(3873), 1, sym_template_instance, STATE(3919), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [132926] = 4, ACTIONS(9605), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132940] = 4, ACTIONS(7795), 1, anon_sym_RBRACE, ACTIONS(11852), 1, anon_sym_COMMA, STATE(6221), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [132954] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4343), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [132968] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4343), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [132982] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(11937), 1, anon_sym_LBRACE, STATE(7251), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [132996] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11180), 3, anon_sym_LBRACE, anon_sym_COMMA, sym_if, [133006] = 4, ACTIONS(11180), 1, anon_sym_LBRACE, ACTIONS(11939), 1, anon_sym_COMMA, STATE(6169), 1, aux_sym__base_class_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133020] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11942), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133034] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11944), 1, anon_sym_SEMI, STATE(6247), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [133048] = 4, ACTIONS(11946), 1, anon_sym_RPAREN, ACTIONS(11948), 1, anon_sym_COMMA, STATE(6191), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133062] = 4, ACTIONS(11950), 1, sym_identifier, STATE(3515), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [133076] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(11952), 1, anon_sym_SEMI, STATE(6012), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133090] = 4, ACTIONS(11954), 1, anon_sym_RBRACK, ACTIONS(11956), 1, anon_sym_COMMA, STATE(6117), 1, aux_sym_array_literal_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133104] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(11958), 1, sym_identifier, STATE(1695), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133118] = 4, ACTIONS(11960), 1, anon_sym_RBRACE, ACTIONS(11962), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133132] = 4, ACTIONS(7825), 1, anon_sym_RBRACE, ACTIONS(11965), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133146] = 4, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(11967), 1, anon_sym_LPAREN, STATE(1711), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [133160] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4938), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [133174] = 4, ACTIONS(11969), 1, anon_sym_COMMA, ACTIONS(11972), 1, anon_sym_SEMI, STATE(6181), 1, aux_sym__import_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133188] = 4, ACTIONS(11974), 1, anon_sym_LPAREN, STATE(4472), 1, sym_parameters, STATE(6768), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [133202] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11976), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133216] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11978), 1, anon_sym_SEMI, STATE(6183), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133230] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11980), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133244] = 4, ACTIONS(7902), 1, anon_sym_LPAREN, ACTIONS(11982), 1, anon_sym_RPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [133258] = 4, ACTIONS(11220), 1, sym_identifier, STATE(4661), 1, sym__qualified_id, STATE(5047), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [133272] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11984), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [133282] = 4, ACTIONS(11573), 1, sym_identifier, STATE(5200), 1, sym_template_instance, STATE(5232), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [133296] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11986), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133310] = 4, ACTIONS(7599), 1, anon_sym_RPAREN, ACTIONS(11988), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133324] = 4, ACTIONS(11990), 1, anon_sym_RBRACK, ACTIONS(11992), 1, anon_sym_COMMA, STATE(6255), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133338] = 4, ACTIONS(9861), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133352] = 4, ACTIONS(10326), 1, anon_sym_RBRACE, ACTIONS(11994), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133366] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(11006), 1, anon_sym_SEMI, STATE(2745), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133380] = 4, ACTIONS(7821), 1, anon_sym_RBRACE, ACTIONS(11996), 1, anon_sym_COMMA, STATE(6257), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133394] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(11998), 1, anon_sym_SEMI, STATE(6315), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133408] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12000), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133422] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12002), 1, anon_sym_SEMI, STATE(6036), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [133436] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12004), 1, anon_sym_SEMI, STATE(6081), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133450] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12006), 1, anon_sym_SEMI, STATE(6031), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133464] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(12008), 1, anon_sym_LBRACE, STATE(7278), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [133478] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12010), 1, anon_sym_SEMI, STATE(6185), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133492] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12012), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133506] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(12014), 1, anon_sym_SEMI, STATE(6033), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133520] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12010), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133534] = 4, ACTIONS(7783), 1, anon_sym_RBRACE, ACTIONS(12016), 1, anon_sym_COMMA, STATE(6142), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133548] = 4, ACTIONS(3555), 1, anon_sym_RPAREN, ACTIONS(12018), 1, anon_sym_COMMA, STATE(5882), 1, aux_sym__argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133562] = 4, ACTIONS(9893), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133576] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12020), 1, anon_sym_SEMI, STATE(5754), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [133590] = 4, ACTIONS(11230), 1, anon_sym_COMMA, ACTIONS(12022), 1, anon_sym_SEMI, STATE(6097), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133604] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(11944), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [133618] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(12024), 1, anon_sym_LBRACE, STATE(7715), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [133632] = 4, ACTIONS(9809), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4817), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [133646] = 4, ACTIONS(11919), 1, sym_identifier, STATE(4657), 1, sym__qualified_id, STATE(5081), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [133660] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(12026), 1, anon_sym_COLON, STATE(2800), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133674] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(12028), 1, sym_identifier, STATE(2516), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133688] = 4, ACTIONS(12030), 1, anon_sym_COMMA, ACTIONS(12033), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133702] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(12035), 1, sym_identifier, STATE(2494), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133716] = 4, ACTIONS(9775), 1, anon_sym_LBRACE, ACTIONS(12037), 1, anon_sym_SEMI, STATE(2777), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [133730] = 4, ACTIONS(7821), 1, anon_sym_RBRACE, ACTIONS(11996), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133744] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12000), 1, anon_sym_SEMI, STATE(6264), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133758] = 4, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(12039), 1, anon_sym_LPAREN, STATE(2732), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [133772] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(12041), 1, anon_sym_COLON, STATE(2792), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133786] = 4, ACTIONS(12043), 1, sym_identifier, ACTIONS(12045), 1, anon_sym_LPAREN, STATE(3240), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [133800] = 4, ACTIONS(7783), 1, anon_sym_RBRACE, ACTIONS(12016), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133814] = 4, ACTIONS(11230), 1, anon_sym_COMMA, ACTIONS(12047), 1, anon_sym_SEMI, STATE(5944), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133828] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12049), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133842] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(12051), 1, sym_identifier, STATE(1639), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133856] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12053), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [133870] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12055), 1, anon_sym_SEMI, STATE(1406), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133884] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12057), 1, anon_sym_SEMI, STATE(6228), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133898] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12059), 1, anon_sym_SEMI, STATE(1403), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133912] = 4, ACTIONS(10616), 1, anon_sym_LBRACE, ACTIONS(12061), 1, sym_identifier, STATE(1638), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133926] = 4, ACTIONS(12063), 1, anon_sym_LPAREN, STATE(4522), 1, sym_parameters, STATE(6493), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [133940] = 4, ACTIONS(9625), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133954] = 4, ACTIONS(7825), 1, anon_sym_RBRACE, ACTIONS(11965), 1, anon_sym_COMMA, STATE(6322), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [133968] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12065), 1, anon_sym_COLON, STATE(1388), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [133982] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12067), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [133992] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12069), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134006] = 4, ACTIONS(9315), 1, anon_sym_LBRACE, ACTIONS(12071), 1, anon_sym_LPAREN, STATE(1636), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [134020] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(12073), 1, anon_sym_SEMI, STATE(2764), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [134034] = 4, ACTIONS(10732), 1, anon_sym_LBRACE, ACTIONS(12075), 1, anon_sym_SEMI, STATE(2769), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [134048] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11986), 1, anon_sym_SEMI, STATE(6206), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134062] = 4, ACTIONS(7787), 1, anon_sym_RBRACE, ACTIONS(12077), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134076] = 4, ACTIONS(9553), 1, anon_sym_LBRACE, ACTIONS(12079), 1, anon_sym_SEMI, STATE(1401), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [134090] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12081), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [134104] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12069), 1, anon_sym_SEMI, STATE(6328), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134118] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12083), 1, anon_sym_COLON, STATE(1368), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [134132] = 3, ACTIONS(12085), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12087), 2, anon_sym_COLON, anon_sym_EQ_EQ, [134144] = 4, ACTIONS(12089), 1, sym_identifier, ACTIONS(12091), 1, anon_sym_LPAREN, STATE(3100), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [134158] = 4, ACTIONS(7591), 1, anon_sym_RPAREN, ACTIONS(12093), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134172] = 4, ACTIONS(9769), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4956), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134186] = 4, ACTIONS(12095), 1, anon_sym_RPAREN, ACTIONS(12097), 1, anon_sym_COMMA, STATE(6254), 1, aux_sym__named_argument_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134200] = 4, ACTIONS(3455), 1, anon_sym_RBRACK, ACTIONS(12100), 1, anon_sym_COMMA, STATE(6302), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134214] = 4, ACTIONS(7955), 1, anon_sym_RPAREN, ACTIONS(12102), 1, anon_sym_COMMA, STATE(5920), 1, aux_sym__template_parameter_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134228] = 4, ACTIONS(7797), 1, anon_sym_RBRACE, ACTIONS(12104), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134242] = 4, ACTIONS(7642), 1, anon_sym_RPAREN, ACTIONS(8927), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134256] = 4, ACTIONS(12106), 1, anon_sym_LPAREN, STATE(4416), 1, sym_parameters, STATE(6704), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134270] = 4, ACTIONS(9557), 1, anon_sym_LPAREN, ACTIONS(10042), 1, anon_sym_EQ, STATE(7903), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134284] = 4, ACTIONS(11392), 1, sym_identifier, STATE(4661), 1, sym__qualified_id, STATE(5035), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [134298] = 4, ACTIONS(9803), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134312] = 4, ACTIONS(7797), 1, anon_sym_RBRACE, ACTIONS(12104), 1, anon_sym_COMMA, STATE(6318), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134326] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12108), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134340] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12108), 1, anon_sym_SEMI, STATE(6304), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134354] = 4, ACTIONS(7642), 1, anon_sym_RPAREN, ACTIONS(8927), 1, anon_sym_COMMA, STATE(6330), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134368] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12110), 1, anon_sym_SEMI, STATE(6401), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [134382] = 4, ACTIONS(12112), 1, anon_sym_COMMA, ACTIONS(12115), 1, anon_sym_SEMI, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134396] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10962), 1, anon_sym_SEMI, STATE(1361), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [134410] = 4, ACTIONS(7787), 1, anon_sym_RBRACE, ACTIONS(12077), 1, anon_sym_COMMA, STATE(6226), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134424] = 4, ACTIONS(10332), 1, anon_sym_RBRACE, ACTIONS(12117), 1, anon_sym_COMMA, STATE(6177), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134438] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4854), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [134452] = 4, ACTIONS(12119), 1, anon_sym_COMMA, ACTIONS(12121), 1, anon_sym_SEMI, ACTIONS(12123), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [134466] = 4, ACTIONS(9799), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134480] = 4, ACTIONS(12125), 1, anon_sym_RBRACE, ACTIONS(12127), 1, anon_sym_COMMA, STATE(6275), 1, aux_sym_aggregate_initializer_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134494] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12130), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134508] = 4, ACTIONS(12132), 1, sym_identifier, ACTIONS(12134), 1, anon_sym_LPAREN, STATE(3451), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [134522] = 4, ACTIONS(11149), 1, anon_sym_LBRACE, ACTIONS(11589), 1, anon_sym_COMMA, STATE(5952), 1, aux_sym__base_class_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134536] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12136), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134550] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(12138), 1, sym_identifier, STATE(2641), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [134564] = 3, ACTIONS(12140), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8966), 2, anon_sym_RPAREN, anon_sym_COMMA, [134576] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12142), 1, anon_sym_SEMI, STATE(6230), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [134590] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(12144), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134604] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4317), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134618] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12142), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [134632] = 4, ACTIONS(9857), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134646] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4317), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134660] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12146), 1, anon_sym_SEMI, STATE(6276), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134674] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12148), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134688] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12150), 1, anon_sym_SEMI, STATE(6279), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134702] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12152), 1, anon_sym_SEMI, STATE(6289), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134716] = 4, ACTIONS(6613), 1, anon_sym_LBRACE, ACTIONS(12154), 1, anon_sym_LPAREN, STATE(2664), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [134730] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12156), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [134740] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12158), 3, anon_sym_LBRACE, anon_sym_COMMA, sym_if, [134750] = 4, ACTIONS(7777), 1, anon_sym_RBRACE, ACTIONS(12160), 1, anon_sym_COMMA, STATE(6245), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134764] = 4, ACTIONS(9645), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134778] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(10817), 1, anon_sym_COLON, STATE(2703), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [134792] = 4, ACTIONS(11506), 1, sym_identifier, STATE(3809), 1, sym_template_instance, STATE(3812), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [134806] = 4, ACTIONS(12162), 1, anon_sym_LPAREN, STATE(4538), 1, sym_parameters, STATE(6898), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134820] = 4, ACTIONS(12164), 1, anon_sym_RBRACE, ACTIONS(12166), 1, anon_sym_COMMA, STATE(5954), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134834] = 3, ACTIONS(10140), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10138), 2, anon_sym_RBRACE, anon_sym_COMMA, [134846] = 4, ACTIONS(12168), 1, anon_sym_RBRACK, ACTIONS(12170), 1, anon_sym_COMMA, STATE(6302), 1, aux_sym_index_expression_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134860] = 4, ACTIONS(12091), 1, anon_sym_LPAREN, ACTIONS(12173), 1, sym_identifier, STATE(3100), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [134874] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12175), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134888] = 4, ACTIONS(10877), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(5737), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134902] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4357), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134916] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4357), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [134930] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(12177), 1, anon_sym_LBRACE, STATE(7323), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [134944] = 4, ACTIONS(9631), 1, anon_sym_LBRACE, ACTIONS(12179), 1, anon_sym_SEMI, STATE(2713), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [134958] = 4, ACTIONS(11506), 1, sym_identifier, STATE(3809), 1, sym_template_instance, STATE(3827), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [134972] = 4, ACTIONS(7799), 1, anon_sym_RBRACE, ACTIONS(11232), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [134986] = 3, ACTIONS(12183), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12181), 2, anon_sym_RBRACE, anon_sym_COMMA, [134998] = 4, ACTIONS(12185), 1, anon_sym_COMMA, ACTIONS(12188), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135012] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(11502), 1, anon_sym_SEMI, STATE(5975), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135026] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12190), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135040] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(11069), 1, anon_sym_SEMI, STATE(1367), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135054] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(12192), 1, anon_sym_COLON, STATE(2730), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135068] = 4, ACTIONS(7791), 1, anon_sym_RBRACE, ACTIONS(12194), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135082] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12196), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [135092] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12198), 1, anon_sym_SEMI, STATE(5747), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135106] = 4, ACTIONS(11263), 1, sym_identifier, STATE(4661), 1, sym__qualified_id, STATE(5190), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135120] = 4, ACTIONS(7829), 1, anon_sym_RBRACE, ACTIONS(12200), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135134] = 4, ACTIONS(12202), 1, sym_identifier, ACTIONS(12204), 1, anon_sym_LPAREN, STATE(3356), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135148] = 4, ACTIONS(11263), 1, sym_identifier, STATE(4664), 1, sym__qualified_id, STATE(5190), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135162] = 4, ACTIONS(11481), 1, sym_identifier, STATE(3610), 1, sym_template_instance, STATE(3616), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [135176] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12206), 3, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [135186] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4337), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135200] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12208), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135214] = 4, ACTIONS(7638), 1, anon_sym_RPAREN, ACTIONS(8939), 1, anon_sym_COMMA, STATE(6363), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135228] = 4, ACTIONS(7638), 1, anon_sym_RPAREN, ACTIONS(8939), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135242] = 4, ACTIONS(11636), 1, anon_sym_LPAREN, ACTIONS(12210), 1, sym_identifier, STATE(4624), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135256] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12212), 1, anon_sym_COLON, STATE(1393), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135270] = 4, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(12214), 1, anon_sym_LPAREN, STATE(1421), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [135284] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12216), 1, sym_identifier, STATE(1418), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135298] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12218), 1, sym_identifier, STATE(1417), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135312] = 4, ACTIONS(11481), 1, sym_identifier, STATE(3599), 1, sym__qualified_id, STATE(3610), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135326] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12220), 1, anon_sym_SEMI, STATE(6190), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135340] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12220), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135354] = 4, ACTIONS(7777), 1, anon_sym_RBRACE, ACTIONS(12160), 1, anon_sym_COMMA, STATE(5957), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135368] = 4, ACTIONS(11230), 1, anon_sym_COMMA, ACTIONS(12222), 1, anon_sym_SEMI, STATE(6388), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135382] = 4, ACTIONS(9553), 1, anon_sym_LBRACE, ACTIONS(12224), 1, anon_sym_SEMI, STATE(1404), 1, sym__enum_body, ACTIONS(3), 2, sym_directive, sym_comment, [135396] = 4, ACTIONS(12226), 1, sym_identifier, ACTIONS(12228), 1, anon_sym_LPAREN, STATE(3525), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135410] = 4, ACTIONS(11220), 1, sym_identifier, STATE(4659), 1, sym__qualified_id, STATE(5047), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135424] = 4, ACTIONS(12230), 1, anon_sym_LPAREN, STATE(4483), 1, sym_parameters, STATE(6827), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135438] = 4, ACTIONS(12232), 1, anon_sym_RBRACE, ACTIONS(12234), 1, anon_sym_COMMA, STATE(6271), 1, aux_sym__enum_body_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135452] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12236), 1, anon_sym_SEMI, STATE(6393), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135466] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(10740), 1, anon_sym_COLON, STATE(1408), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135480] = 3, ACTIONS(12240), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12238), 2, anon_sym_COMMA, anon_sym_SEMI, [135492] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12242), 1, anon_sym_SEMI, STATE(6387), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [135506] = 4, ACTIONS(9645), 1, anon_sym_SEMI, ACTIONS(10672), 1, anon_sym_COMMA, STATE(5933), 1, aux_sym__declarator_identifier_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135520] = 4, ACTIONS(12244), 1, anon_sym_LPAREN, STATE(4422), 1, sym_parameters, STATE(6443), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135534] = 4, ACTIONS(9345), 1, anon_sym_LBRACE, ACTIONS(12246), 1, anon_sym_LPAREN, STATE(1495), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [135548] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12248), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135562] = 4, ACTIONS(7567), 1, anon_sym_RPAREN, ACTIONS(12250), 1, anon_sym_COMMA, STATE(5910), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135576] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12252), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135590] = 4, ACTIONS(9607), 1, anon_sym_SEMI, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4919), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135604] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4836), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [135618] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12254), 1, sym_identifier, STATE(1548), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135632] = 4, ACTIONS(11220), 1, sym_identifier, STATE(4657), 1, sym__qualified_id, STATE(5047), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [135646] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12256), 1, anon_sym_SEMI, STATE(6353), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135660] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12258), 1, anon_sym_SEMI, STATE(6218), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135674] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12260), 1, anon_sym_SEMI, STATE(6355), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135688] = 4, ACTIONS(7648), 1, anon_sym_RPAREN, ACTIONS(12262), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135702] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4328), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135716] = 4, ACTIONS(11366), 1, anon_sym_COMMA, ACTIONS(12264), 1, anon_sym_SEMI, STATE(6361), 1, aux_sym_foreach_statement_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135730] = 4, ACTIONS(10700), 1, anon_sym_LBRACE, ACTIONS(12266), 1, sym_identifier, STATE(1547), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135744] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(12268), 1, anon_sym_SEMI, STATE(5778), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135758] = 4, ACTIONS(7648), 1, anon_sym_RPAREN, ACTIONS(12262), 1, anon_sym_COMMA, STATE(6392), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135772] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11271), 1, anon_sym_EQ, STATE(4374), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135786] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(12270), 1, anon_sym_SEMI, STATE(6367), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135800] = 4, ACTIONS(12272), 1, sym_identifier, STATE(3915), 1, sym_template_instance, STATE(4659), 1, sym__qualified_id, ACTIONS(3), 2, sym_directive, sym_comment, [135814] = 4, ACTIONS(11277), 1, anon_sym_COMMA, ACTIONS(12274), 1, anon_sym_SEMI, STATE(6283), 1, aux_sym_auto_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135828] = 4, ACTIONS(8139), 1, anon_sym_LPAREN, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2464), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [135842] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12276), 1, anon_sym_SEMI, STATE(6285), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [135856] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12278), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [135866] = 4, ACTIONS(9357), 1, anon_sym_LBRACE, ACTIONS(12280), 1, anon_sym_LPAREN, STATE(2449), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [135880] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(12282), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [135894] = 4, ACTIONS(10694), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6296), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [135908] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4328), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135922] = 4, ACTIONS(9327), 1, sym_if, ACTIONS(12284), 1, anon_sym_LBRACE, STATE(7380), 1, sym_constraint, ACTIONS(3), 2, sym_directive, sym_comment, [135936] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(12286), 1, anon_sym_SEMI, STATE(4841), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [135950] = 4, ACTIONS(10634), 1, anon_sym_LBRACE, ACTIONS(12288), 1, sym_identifier, STATE(2656), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [135964] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12290), 3, anon_sym_COMMA, anon_sym_SEMI, anon_sym_COLON, [135974] = 3, ACTIONS(12294), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12292), 2, sym_identifier, sym_default, [135986] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(12296), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [136000] = 4, ACTIONS(11628), 1, anon_sym_COMMA, ACTIONS(12298), 1, anon_sym_SEMI, STATE(5977), 1, aux_sym__import_list_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136014] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12276), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [136028] = 4, ACTIONS(10694), 1, anon_sym_SEMI, ACTIONS(11230), 1, anon_sym_COMMA, STATE(6268), 1, aux_sym_alias_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136042] = 4, ACTIONS(12300), 1, anon_sym_LPAREN, STATE(4412), 1, sym_parameters, STATE(6450), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136056] = 4, ACTIONS(11107), 1, anon_sym_LPAREN, ACTIONS(11255), 1, anon_sym_EQ, STATE(4374), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136070] = 4, ACTIONS(12302), 1, anon_sym_RBRACE, ACTIONS(12304), 1, anon_sym_COMMA, STATE(6339), 1, aux_sym_anonymous_enum_declaration_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136084] = 4, ACTIONS(7652), 1, anon_sym_RPAREN, ACTIONS(12306), 1, anon_sym_COMMA, STATE(6099), 1, aux_sym__parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136098] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12308), 1, anon_sym_SEMI, STATE(6313), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136112] = 4, ACTIONS(11240), 1, anon_sym_COMMA, ACTIONS(12308), 1, anon_sym_SEMI, STATE(6338), 1, aux_sym_manifest_constant_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136126] = 4, ACTIONS(11514), 1, anon_sym_LPAREN, ACTIONS(12310), 1, sym_identifier, STATE(2406), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [136140] = 4, ACTIONS(11919), 1, sym_identifier, STATE(4661), 1, sym__qualified_id, STATE(5081), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [136154] = 4, ACTIONS(12312), 1, anon_sym_RPAREN, ACTIONS(12314), 1, anon_sym_COMMA, STATE(6354), 1, aux_sym_parameters_repeat1, ACTIONS(3), 2, sym_directive, sym_comment, [136168] = 4, ACTIONS(11919), 1, sym_identifier, STATE(4664), 1, sym__qualified_id, STATE(5081), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [136182] = 4, ACTIONS(8038), 1, anon_sym_LPAREN, ACTIONS(12316), 1, anon_sym_RBRACK, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [136196] = 4, ACTIONS(6615), 1, anon_sym_LPAREN, STATE(4651), 1, sym__parameters, STATE(4895), 1, sym__parameter_with_member_attributes, ACTIONS(3), 2, sym_directive, sym_comment, [136210] = 4, ACTIONS(11257), 1, anon_sym_COMMA, ACTIONS(12020), 1, anon_sym_SEMI, STATE(5897), 1, aux_sym_variable_declaration_repeat2, ACTIONS(3), 2, sym_directive, sym_comment, [136224] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12318), 3, anon_sym_exit, anon_sym_success, anon_sym_failure, [136234] = 3, ACTIONS(6968), 1, anon_sym_TILDE, ACTIONS(12320), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [136245] = 3, ACTIONS(12322), 1, anon_sym_RPAREN, ACTIONS(12324), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [136256] = 3, ACTIONS(4368), 1, sym_while, ACTIONS(12326), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [136267] = 3, ACTIONS(4361), 1, sym_while, ACTIONS(12329), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [136278] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6380), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136289] = 3, ACTIONS(6833), 1, anon_sym_TILDE, ACTIONS(12331), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [136300] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8404), 2, anon_sym_COMMA, anon_sym_SEMI, [136309] = 3, ACTIONS(12333), 1, anon_sym_LPAREN, ACTIONS(12335), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [136320] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8423), 2, anon_sym_COMMA, anon_sym_SEMI, [136329] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8395), 2, anon_sym_COMMA, anon_sym_SEMI, [136338] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12339), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136349] = 3, ACTIONS(12316), 1, anon_sym_RBRACK, ACTIONS(12341), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [136360] = 3, ACTIONS(12343), 1, sym_identifier, ACTIONS(12345), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136371] = 3, ACTIONS(10825), 1, sym_identifier, ACTIONS(10827), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136382] = 3, ACTIONS(12347), 1, anon_sym_DOT_DOT, ACTIONS(12349), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [136393] = 3, ACTIONS(12351), 1, sym_identifier, ACTIONS(12353), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136404] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12355), 2, anon_sym_RPAREN, anon_sym_COMMA, [136413] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2612), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [136424] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5894), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [136435] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8958), 2, anon_sym_RPAREN, anon_sym_COMMA, [136444] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8391), 2, anon_sym_COMMA, anon_sym_SEMI, [136453] = 3, ACTIONS(4448), 1, sym_while, ACTIONS(12359), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [136464] = 3, ACTIONS(12361), 1, anon_sym_TILDE, ACTIONS(12363), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [136475] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1434), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [136486] = 3, ACTIONS(4642), 1, sym_while, ACTIONS(12365), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [136497] = 3, ACTIONS(12367), 1, anon_sym_DOT_DOT, ACTIONS(12369), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136508] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6308), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136519] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(478), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [136530] = 3, ACTIONS(12373), 1, anon_sym_DOT_DOT, ACTIONS(12375), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136541] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12377), 2, sym_int_literal, sym_identifier, [136550] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12379), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136561] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(277), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [136572] = 3, ACTIONS(12381), 1, anon_sym_COMMA, ACTIONS(12383), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [136583] = 3, ACTIONS(12385), 1, anon_sym_RPAREN, ACTIONS(12387), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136594] = 3, ACTIONS(12389), 1, anon_sym_RPAREN, ACTIONS(12391), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136605] = 3, ACTIONS(12296), 1, anon_sym_RBRACK, ACTIONS(12393), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [136616] = 3, ACTIONS(12395), 1, sym_identifier, STATE(5370), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [136627] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8377), 2, anon_sym_COMMA, anon_sym_SEMI, [136636] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(152), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [136647] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2730), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [136658] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4367), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136669] = 3, ACTIONS(12397), 1, anon_sym_DOT_DOT, ACTIONS(12399), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [136680] = 3, ACTIONS(12401), 1, sym_identifier, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136691] = 3, ACTIONS(10807), 1, sym_identifier, ACTIONS(10809), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136702] = 3, ACTIONS(2782), 1, sym_while, ACTIONS(12405), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [136713] = 3, ACTIONS(12407), 1, sym_identifier, STATE(5384), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [136724] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5745), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [136735] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4330), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136746] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6078), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [136757] = 3, ACTIONS(3645), 1, anon_sym_LBRACE, STATE(4050), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [136768] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12409), 2, sym_int_literal, sym_identifier, [136777] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8373), 2, anon_sym_COMMA, anon_sym_SEMI, [136786] = 3, ACTIONS(12411), 1, sym_identifier, STATE(7963), 1, sym_module_fqn, ACTIONS(3), 2, sym_directive, sym_comment, [136797] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12413), 2, sym_int_literal, sym_identifier, [136806] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1360), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [136817] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4342), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136828] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8960), 2, anon_sym_RPAREN, anon_sym_COMMA, [136837] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2594), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [136848] = 3, ACTIONS(3645), 1, anon_sym_LBRACE, STATE(4001), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [136859] = 3, ACTIONS(12415), 1, anon_sym_DOT_DOT, ACTIONS(12417), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136870] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1414), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [136881] = 3, ACTIONS(12419), 1, sym_identifier, ACTIONS(12421), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136892] = 3, ACTIONS(12423), 1, anon_sym_DOT_DOT, ACTIONS(12425), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136903] = 3, ACTIONS(12427), 1, anon_sym_LPAREN, STATE(3417), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136914] = 3, ACTIONS(12429), 1, anon_sym_LPAREN, STATE(3211), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136925] = 3, ACTIONS(12431), 1, anon_sym_DOT_DOT, ACTIONS(12433), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136936] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1408), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [136947] = 3, ACTIONS(12435), 1, anon_sym_RPAREN, ACTIONS(12437), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [136958] = 3, ACTIONS(12439), 1, anon_sym_DOT_DOT, ACTIONS(12441), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [136969] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12443), 2, anon_sym_RPAREN, anon_sym_COMMA, [136978] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4376), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [136989] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1393), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137000] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1415), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [137011] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9185), 2, anon_sym_RPAREN, anon_sym_COMMA, [137020] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4923), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137031] = 3, ACTIONS(12445), 1, anon_sym_RPAREN, ACTIONS(12447), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [137042] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8952), 2, anon_sym_RPAREN, anon_sym_COMMA, [137051] = 3, ACTIONS(12449), 1, sym_identifier, STATE(5373), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [137062] = 3, ACTIONS(12451), 1, sym_identifier, ACTIONS(12453), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137073] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(461), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137084] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2469), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137095] = 3, ACTIONS(10764), 1, sym_identifier, ACTIONS(10766), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137106] = 3, ACTIONS(12455), 1, anon_sym_COMMA, ACTIONS(12457), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [137117] = 3, ACTIONS(12459), 1, anon_sym_RPAREN, ACTIONS(12461), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137128] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8369), 2, anon_sym_COMMA, anon_sym_SEMI, [137137] = 3, ACTIONS(12411), 1, sym_identifier, STATE(7598), 1, sym_module_fqn, ACTIONS(3), 2, sym_directive, sym_comment, [137148] = 3, ACTIONS(12463), 1, anon_sym_DOT_DOT, ACTIONS(12465), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137159] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4917), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137170] = 3, ACTIONS(12467), 1, sym_identifier, ACTIONS(12469), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137181] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(463), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137192] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4322), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137203] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(189), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137214] = 3, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(12473), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [137225] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12188), 2, anon_sym_COMMA, anon_sym_SEMI, [137234] = 3, ACTIONS(6974), 1, anon_sym_TILDE, ACTIONS(12475), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [137245] = 3, ACTIONS(12477), 1, anon_sym_DOT_DOT, ACTIONS(12479), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137256] = 3, ACTIONS(12481), 1, anon_sym_DOT_DOT, ACTIONS(12483), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137267] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2837), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137278] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6035), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137289] = 3, ACTIONS(2663), 1, sym_while, ACTIONS(12485), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [137300] = 3, ACTIONS(12487), 1, anon_sym_RPAREN, ACTIONS(12489), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137311] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12491), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137322] = 3, ACTIONS(12411), 1, sym_identifier, STATE(7749), 1, sym_module_fqn, ACTIONS(3), 2, sym_directive, sym_comment, [137333] = 3, ACTIONS(12493), 1, anon_sym_RPAREN, ACTIONS(12495), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137344] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12497), 2, anon_sym_COMMA, anon_sym_SEMI, [137353] = 3, ACTIONS(12499), 1, anon_sym_DOT_DOT, ACTIONS(12501), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137364] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5777), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [137375] = 3, ACTIONS(12503), 1, anon_sym_RPAREN, ACTIONS(12505), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [137386] = 3, ACTIONS(12507), 1, anon_sym_DOT_DOT, ACTIONS(12509), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [137397] = 3, ACTIONS(12511), 1, sym_identifier, STATE(5401), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [137408] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(231), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137419] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2514), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137430] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12513), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137441] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8970), 2, anon_sym_RPAREN, anon_sym_COMMA, [137450] = 3, ACTIONS(6931), 1, anon_sym_TILDE, ACTIONS(12515), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [137461] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(346), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137472] = 3, ACTIONS(12517), 1, anon_sym_RPAREN, ACTIONS(12519), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [137483] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9153), 2, anon_sym_RPAREN, anon_sym_COMMA, [137492] = 3, ACTIONS(12521), 1, sym_identifier, ACTIONS(12523), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137503] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2825), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137514] = 3, ACTIONS(12525), 1, anon_sym_RPAREN, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137525] = 3, ACTIONS(12529), 1, anon_sym_TILDE, ACTIONS(12531), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [137536] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(5976), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137547] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4975), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137558] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12168), 2, anon_sym_RBRACK, anon_sym_COMMA, [137567] = 3, ACTIONS(12533), 1, anon_sym_DOT_DOT, ACTIONS(12535), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137578] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12537), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [137589] = 3, ACTIONS(12539), 1, anon_sym_DOT_DOT, ACTIONS(12541), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137600] = 3, ACTIONS(12543), 1, anon_sym_DOT_DOT, ACTIONS(12545), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137611] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12547), 2, anon_sym_RBRACK, anon_sym_COMMA, [137620] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2703), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137631] = 3, ACTIONS(12549), 1, anon_sym_RPAREN, ACTIONS(12551), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137642] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1384), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [137653] = 3, ACTIONS(12553), 1, anon_sym_RPAREN, ACTIONS(12555), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137664] = 3, ACTIONS(12557), 1, anon_sym_RPAREN, ACTIONS(12559), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [137675] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6213), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137686] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4903), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137697] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2806), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [137708] = 3, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(12561), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137719] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8966), 2, anon_sym_RPAREN, anon_sym_COMMA, [137728] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12125), 2, anon_sym_RBRACE, anon_sym_COMMA, [137737] = 3, ACTIONS(2796), 1, sym_while, ACTIONS(12563), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [137748] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5836), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [137759] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2637), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [137770] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12565), 2, anon_sym_RBRACE, anon_sym_COMMA, [137779] = 3, ACTIONS(12567), 1, anon_sym_RPAREN, ACTIONS(12569), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [137790] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10642), 2, anon_sym_RPAREN, anon_sym_COMMA, [137799] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(269), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137810] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4596), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137821] = 3, ACTIONS(12571), 1, anon_sym_RPAREN, ACTIONS(12573), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137832] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4639), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137843] = 3, ACTIONS(12575), 1, anon_sym_RPAREN, ACTIONS(12577), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137854] = 3, ACTIONS(12579), 1, anon_sym_RPAREN, ACTIONS(12581), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [137865] = 3, ACTIONS(12583), 1, anon_sym_DOT_DOT, ACTIONS(12585), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137876] = 3, ACTIONS(12587), 1, anon_sym_DOT_DOT, ACTIONS(12589), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [137887] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4897), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137898] = 3, ACTIONS(10941), 1, sym_identifier, ACTIONS(10943), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137909] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(352), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [137920] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12115), 2, anon_sym_COMMA, anon_sym_SEMI, [137929] = 3, ACTIONS(12411), 1, sym_identifier, STATE(7419), 1, sym_module_fqn, ACTIONS(3), 2, sym_directive, sym_comment, [137940] = 3, ACTIONS(12591), 1, anon_sym_TILDE, ACTIONS(12593), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [137951] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11135), 2, anon_sym_COMMA, anon_sym_SEMI, [137960] = 3, ACTIONS(12595), 1, anon_sym_RPAREN, ACTIONS(12597), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [137971] = 3, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(12599), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [137982] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(5752), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [137993] = 3, ACTIONS(12601), 1, anon_sym_RPAREN, ACTIONS(12603), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138004] = 3, ACTIONS(12605), 1, sym_identifier, ACTIONS(12607), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138015] = 3, ACTIONS(12609), 1, anon_sym_DOT_DOT, ACTIONS(12611), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138026] = 3, ACTIONS(12333), 1, anon_sym_LPAREN, ACTIONS(12599), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [138037] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2762), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138048] = 3, ACTIONS(12613), 1, anon_sym_DOT_DOT, ACTIONS(12615), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138059] = 3, ACTIONS(10599), 1, sym_identifier, ACTIONS(10601), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138070] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2685), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138081] = 3, ACTIONS(12617), 1, anon_sym_DOT_DOT, ACTIONS(12619), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138092] = 3, ACTIONS(6943), 1, anon_sym_TILDE, ACTIONS(12621), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [138103] = 3, ACTIONS(12623), 1, anon_sym_DOT_DOT, ACTIONS(12625), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138114] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2759), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138125] = 3, ACTIONS(4368), 1, sym_while, ACTIONS(12627), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [138136] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4964), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138147] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(5751), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138158] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12095), 2, anon_sym_RPAREN, anon_sym_COMMA, [138167] = 3, ACTIONS(12631), 1, anon_sym_RPAREN, ACTIONS(12633), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138178] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1603), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138189] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10837), 2, anon_sym_RPAREN, anon_sym_COMMA, [138198] = 3, ACTIONS(12635), 1, anon_sym_RPAREN, ACTIONS(12637), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138209] = 3, ACTIONS(7951), 1, anon_sym_LBRACE, STATE(4022), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138220] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12639), 2, anon_sym_RPAREN, anon_sym_COMMA, [138229] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5918), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [138240] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1368), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138251] = 3, ACTIONS(12641), 1, sym_identifier, STATE(4032), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [138262] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12643), 2, sym_int_literal, sym_identifier, [138271] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12645), 2, sym_int_literal, sym_identifier, [138280] = 3, ACTIONS(12647), 1, anon_sym_TILDE, ACTIONS(12649), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [138291] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1388), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138302] = 3, ACTIONS(4361), 1, sym_while, ACTIONS(12651), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [138313] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(5812), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138324] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12653), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [138335] = 3, ACTIONS(4642), 1, sym_while, ACTIONS(12655), 1, sym_else, ACTIONS(3), 2, sym_directive, sym_comment, [138346] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12657), 2, anon_sym_COMMA, anon_sym_SEMI, [138355] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2451), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138366] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1448), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138377] = 3, ACTIONS(7922), 1, anon_sym_LBRACE, STATE(3960), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138388] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2792), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138399] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1452), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138410] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1640), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138421] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12659), 2, anon_sym_COMMA, anon_sym_SEMI, [138430] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12661), 2, sym_int_literal, sym_identifier, [138439] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2748), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138450] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2800), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138461] = 3, ACTIONS(12663), 1, anon_sym_DOT_DOT, ACTIONS(12665), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138472] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12033), 2, anon_sym_COMMA, anon_sym_SEMI, [138481] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4828), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138492] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4351), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138503] = 3, ACTIONS(10696), 1, sym_identifier, ACTIONS(10698), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138514] = 3, ACTIONS(10728), 1, sym_identifier, ACTIONS(10730), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138525] = 3, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(12667), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138536] = 3, ACTIONS(10947), 1, sym_identifier, ACTIONS(10949), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138547] = 3, ACTIONS(12669), 1, anon_sym_DOT_DOT, ACTIONS(12671), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138558] = 3, ACTIONS(12333), 1, anon_sym_LPAREN, ACTIONS(12673), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [138569] = 3, ACTIONS(12675), 1, sym_identifier, STATE(5468), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [138580] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1490), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138591] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5876), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [138602] = 3, ACTIONS(6935), 1, anon_sym_TILDE, ACTIONS(12677), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [138613] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(5980), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138624] = 3, ACTIONS(12679), 1, anon_sym_RPAREN, ACTIONS(12681), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138635] = 3, ACTIONS(12683), 1, anon_sym_TILDE, ACTIONS(12685), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [138646] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6039), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138657] = 3, ACTIONS(12687), 1, anon_sym_LPAREN, STATE(4597), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138668] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12689), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [138679] = 3, ACTIONS(12347), 1, anon_sym_DOT_DOT, ACTIONS(12691), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [138690] = 3, ACTIONS(12693), 1, anon_sym_RPAREN, ACTIONS(12695), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138701] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4861), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138712] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1509), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138723] = 3, ACTIONS(12697), 1, sym_identifier, ACTIONS(12699), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138734] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2570), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138745] = 3, ACTIONS(7951), 1, anon_sym_LBRACE, STATE(4054), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138756] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4333), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138767] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11972), 2, anon_sym_COMMA, anon_sym_SEMI, [138776] = 3, ACTIONS(12701), 1, anon_sym_COMMA, ACTIONS(12703), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [138787] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12705), 2, anon_sym_COMMA, anon_sym_SEMI, [138796] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11960), 2, anon_sym_RBRACE, anon_sym_COMMA, [138805] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6244), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [138816] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1713), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138827] = 3, ACTIONS(12333), 1, anon_sym_LPAREN, ACTIONS(12707), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [138838] = 3, ACTIONS(10700), 1, anon_sym_LBRACE, STATE(1532), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138849] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2620), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [138860] = 3, ACTIONS(6957), 1, anon_sym_TILDE, ACTIONS(12709), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [138871] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6167), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [138882] = 3, ACTIONS(12711), 1, anon_sym_RPAREN, ACTIONS(12713), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [138893] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9523), 2, anon_sym_COMMA, anon_sym_SEMI, [138902] = 3, ACTIONS(12715), 1, sym_identifier, STATE(6926), 1, sym__auto_assignment, ACTIONS(3), 2, sym_directive, sym_comment, [138913] = 3, ACTIONS(10646), 1, sym_identifier, ACTIONS(10648), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [138924] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2861), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [138935] = 3, ACTIONS(12717), 1, sym_identifier, STATE(5404), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [138946] = 3, ACTIONS(12719), 1, anon_sym_TILDE, ACTIONS(12721), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [138957] = 3, ACTIONS(12723), 1, sym_identifier, STATE(5463), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [138968] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12725), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [138979] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(306), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [138990] = 3, ACTIONS(9557), 1, anon_sym_LPAREN, STATE(6202), 1, sym_template_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139001] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12727), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [139012] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(311), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [139023] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(6409), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139034] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5805), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [139045] = 3, ACTIONS(10929), 1, sym_identifier, ACTIONS(10931), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139056] = 3, ACTIONS(3251), 1, anon_sym_LBRACE, STATE(3969), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139067] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(2612), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139078] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8968), 2, anon_sym_RPAREN, anon_sym_COMMA, [139087] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9161), 2, anon_sym_RPAREN, anon_sym_COMMA, [139096] = 3, ACTIONS(12347), 1, anon_sym_DOT_DOT, ACTIONS(12729), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [139107] = 3, ACTIONS(5455), 1, ts_builtin_sym_end, ACTIONS(12731), 1, sym_end_file, ACTIONS(3), 2, sym_directive, sym_comment, [139118] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(5183), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139129] = 3, ACTIONS(12333), 1, anon_sym_LPAREN, ACTIONS(12733), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [139140] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8415), 2, anon_sym_COMMA, anon_sym_SEMI, [139149] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1355), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139160] = 3, ACTIONS(12687), 1, anon_sym_LPAREN, STATE(4754), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139171] = 3, ACTIONS(8038), 1, anon_sym_LPAREN, STATE(3980), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [139182] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12735), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139193] = 3, ACTIONS(12737), 1, anon_sym_LPAREN, STATE(3205), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139204] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2862), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [139215] = 3, ACTIONS(12739), 1, anon_sym_LPAREN, STATE(3315), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139226] = 3, ACTIONS(12741), 1, anon_sym_TILDE, ACTIONS(12743), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [139237] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12745), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [139248] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(2564), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139259] = 3, ACTIONS(12747), 1, sym_identifier, STATE(5566), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [139270] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12749), 2, anon_sym_RBRACK, anon_sym_COMMA, [139279] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1752), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139290] = 3, ACTIONS(12347), 1, anon_sym_DOT_DOT, ACTIONS(12751), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [139301] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9195), 2, anon_sym_RBRACK, anon_sym_COMMA, [139310] = 3, ACTIONS(10732), 1, anon_sym_LBRACE, STATE(2868), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [139321] = 3, ACTIONS(12335), 1, anon_sym_EQ, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139332] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12753), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139343] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2871), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139354] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12755), 2, sym_int_literal, sym_identifier, [139363] = 3, ACTIONS(12757), 1, sym_identifier, STATE(5397), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [139374] = 3, ACTIONS(12759), 1, sym_identifier, STATE(3942), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [139385] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5744), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [139396] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(2544), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139407] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12761), 2, sym_int_literal, sym_identifier, [139416] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12763), 2, sym_int_literal, sym_identifier, [139425] = 3, ACTIONS(1032), 1, anon_sym_LBRACE, STATE(3796), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139436] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6030), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [139447] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4361), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139458] = 3, ACTIONS(7902), 1, anon_sym_LPAREN, STATE(3831), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [139469] = 3, ACTIONS(12765), 1, sym_identifier, STATE(5446), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [139480] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12767), 2, anon_sym_RPAREN, anon_sym_COMMA, [139489] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12769), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139500] = 3, ACTIONS(12771), 1, anon_sym_RPAREN, ACTIONS(12773), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [139511] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12775), 2, sym_int_literal, sym_identifier, [139520] = 3, ACTIONS(12777), 1, anon_sym_PLUS_PLUS, ACTIONS(12779), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139531] = 3, ACTIONS(12781), 1, sym_identifier, ACTIONS(12783), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139542] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2626), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139553] = 3, ACTIONS(12785), 1, sym_identifier, ACTIONS(12787), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139564] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(193), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [139575] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(197), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [139586] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11778), 2, anon_sym_RPAREN, anon_sym_COMMA, [139595] = 3, ACTIONS(12789), 1, anon_sym_DOT_DOT, ACTIONS(12791), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139606] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12793), 2, anon_sym_COMMA, anon_sym_SEMI, [139615] = 3, ACTIONS(12795), 1, anon_sym_DOT_DOT, ACTIONS(12797), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139626] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(2530), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139637] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6248), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [139648] = 3, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(12673), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [139659] = 3, ACTIONS(12799), 1, anon_sym_DOT_DOT, ACTIONS(12801), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139670] = 3, ACTIONS(12803), 1, sym_identifier, ACTIONS(12805), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139681] = 3, ACTIONS(10829), 1, sym_identifier, ACTIONS(10831), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139692] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1615), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139703] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2430), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139714] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4881), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139725] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2699), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [139736] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4321), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139747] = 3, ACTIONS(11746), 1, anon_sym_RBRACK, ACTIONS(12807), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [139758] = 3, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(12707), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [139769] = 3, ACTIONS(12809), 1, anon_sym_RPAREN, ACTIONS(12811), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139780] = 3, ACTIONS(10768), 1, sym_identifier, ACTIONS(10770), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139791] = 3, ACTIONS(12813), 1, anon_sym_RPAREN, ACTIONS(12815), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139802] = 3, ACTIONS(12817), 1, anon_sym_RPAREN, ACTIONS(12819), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [139813] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2486), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139824] = 3, ACTIONS(12821), 1, anon_sym_RPAREN, ACTIONS(12823), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [139835] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6126), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [139846] = 3, ACTIONS(12825), 1, anon_sym_RPAREN, ACTIONS(12827), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [139857] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5865), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [139868] = 3, ACTIONS(12829), 1, anon_sym_RPAREN, ACTIONS(12831), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [139879] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4882), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [139890] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12833), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139901] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(460), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [139912] = 3, ACTIONS(10902), 1, sym_identifier, ACTIONS(10904), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [139923] = 3, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(12835), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [139934] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(459), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [139945] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2479), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [139956] = 3, ACTIONS(10634), 1, anon_sym_LBRACE, STATE(2708), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [139967] = 3, ACTIONS(12837), 1, sym_identifier, STATE(5459), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [139978] = 3, ACTIONS(12839), 1, sym_identifier, STATE(5353), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [139989] = 3, ACTIONS(11726), 1, anon_sym_RBRACK, ACTIONS(12841), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [140000] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2902), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140011] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4377), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140022] = 3, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(12733), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [140033] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5917), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [140044] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12843), 2, anon_sym_COMMA, anon_sym_SEMI, [140053] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(415), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [140064] = 3, ACTIONS(12845), 1, sym_identifier, ACTIONS(12847), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140075] = 3, ACTIONS(12849), 1, sym_identifier, ACTIONS(12851), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140086] = 3, ACTIONS(6841), 1, anon_sym_TILDE, ACTIONS(12853), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [140097] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4625), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140108] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2554), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140119] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4371), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140130] = 3, ACTIONS(11720), 1, anon_sym_RBRACK, ACTIONS(12855), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [140141] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4370), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140152] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10240), 2, anon_sym_COMMA, anon_sym_SEMI, [140161] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(457), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [140172] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2530), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140183] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2898), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140194] = 3, ACTIONS(10690), 1, sym_identifier, ACTIONS(10692), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140205] = 3, ACTIONS(12857), 1, anon_sym_TILDE, ACTIONS(12859), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [140216] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12861), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140227] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4961), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140238] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4933), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140249] = 3, ACTIONS(8034), 1, anon_sym_LPAREN, STATE(3998), 1, sym_named_arguments, ACTIONS(3), 2, sym_directive, sym_comment, [140260] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12863), 2, anon_sym_COMMA, anon_sym_SEMI, [140269] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2544), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140280] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12865), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140291] = 3, ACTIONS(12867), 1, anon_sym_DOT_DOT, ACTIONS(12869), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [140302] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(2479), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140313] = 3, ACTIONS(12871), 1, sym_identifier, ACTIONS(12873), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [140324] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2475), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140335] = 3, ACTIONS(9387), 1, anon_sym_LBRACE, STATE(2564), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140346] = 3, ACTIONS(12875), 1, anon_sym_LPAREN, STATE(3442), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140357] = 3, ACTIONS(12877), 1, anon_sym_LPAREN, STATE(3228), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140368] = 3, ACTIONS(1032), 1, anon_sym_LBRACE, STATE(3802), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140379] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2614), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140390] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4372), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140401] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11498), 2, anon_sym_COMMA, anon_sym_SEMI, [140410] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(160), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [140421] = 3, ACTIONS(12879), 1, sym_identifier, STATE(5422), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [140432] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(351), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [140443] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6222), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [140454] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(275), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [140465] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(10105), 2, anon_sym_RPAREN, anon_sym_COMMA, [140474] = 3, ACTIONS(12881), 1, sym_identifier, STATE(5365), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [140485] = 3, ACTIONS(12357), 1, sym_identifier, STATE(5986), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [140496] = 3, ACTIONS(12883), 1, sym_identifier, STATE(6640), 1, sym_import_bind, ACTIONS(3), 2, sym_directive, sym_comment, [140507] = 3, ACTIONS(10849), 1, sym_identifier, ACTIONS(10851), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140518] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2852), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140529] = 3, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(12885), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140540] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12887), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140551] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4927), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140562] = 3, ACTIONS(8135), 1, anon_sym_LBRACE, STATE(2486), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140573] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11597), 2, anon_sym_RBRACE, anon_sym_COMMA, [140582] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12889), 2, anon_sym_COMMA, anon_sym_SEMI, [140591] = 3, ACTIONS(12891), 1, sym_identifier, STATE(6561), 1, sym_alias_initializer, ACTIONS(3), 2, sym_directive, sym_comment, [140602] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2312), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140613] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1689), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140624] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4850), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140635] = 3, ACTIONS(10668), 1, sym_identifier, ACTIONS(10670), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140646] = 3, ACTIONS(7503), 1, anon_sym_LPAREN, STATE(4789), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140657] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4621), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140668] = 3, ACTIONS(12893), 1, sym_identifier, ACTIONS(12895), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140679] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1748), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140690] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6265), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [140701] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2301), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140712] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11569), 2, anon_sym_COMMA, anon_sym_SEMI, [140721] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9517), 2, anon_sym_COMMA, anon_sym_SEMI, [140730] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12897), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [140741] = 3, ACTIONS(12899), 1, anon_sym_RPAREN, ACTIONS(12901), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140752] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2550), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140763] = 3, ACTIONS(12903), 1, anon_sym_RPAREN, ACTIONS(12905), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140774] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4329), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140785] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2285), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140796] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4844), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [140807] = 3, ACTIONS(9357), 1, anon_sym_LBRACE, STATE(2771), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140818] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11539), 2, anon_sym_RPAREN, anon_sym_COMMA, [140827] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2559), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140838] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11522), 2, anon_sym_RPAREN, anon_sym_COMMA, [140847] = 3, ACTIONS(12907), 1, anon_sym_DOT_DOT, ACTIONS(12909), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140858] = 3, ACTIONS(10650), 1, sym_identifier, ACTIONS(10652), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [140869] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(8962), 2, anon_sym_RPAREN, anon_sym_COMMA, [140878] = 3, ACTIONS(9345), 1, anon_sym_LBRACE, STATE(1380), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [140889] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2630), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140900] = 3, ACTIONS(12911), 1, sym_identifier, ACTIONS(12913), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140911] = 3, ACTIONS(12915), 1, anon_sym_DOT_DOT, ACTIONS(12917), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140922] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2270), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140933] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2635), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140944] = 3, ACTIONS(12919), 1, anon_sym_RPAREN, ACTIONS(12921), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [140955] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1754), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [140966] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(199), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [140977] = 3, ACTIONS(12923), 1, anon_sym_DOT_DOT, ACTIONS(12925), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [140988] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12927), 2, sym_int_literal, sym_identifier, [140997] = 3, ACTIONS(12929), 1, anon_sym_COMMA, ACTIONS(12931), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [141008] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2267), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141019] = 3, ACTIONS(12933), 1, sym_identifier, STATE(5411), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [141030] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6077), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [141041] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11123), 2, anon_sym_RPAREN, anon_sym_COMMA, [141050] = 3, ACTIONS(3251), 1, anon_sym_LBRACE, STATE(3976), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141061] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(12935), 2, sym_int_literal, sym_identifier, [141070] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6314), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [141081] = 3, ACTIONS(10626), 1, sym_identifier, ACTIONS(10628), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141092] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2257), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141103] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(9069), 2, anon_sym_RBRACK, anon_sym_COMMA, [141112] = 3, ACTIONS(10883), 1, sym_identifier, ACTIONS(10885), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141123] = 3, ACTIONS(12937), 1, anon_sym_DOT_DOT, ACTIONS(12939), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141134] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(11464), 2, anon_sym_RPAREN, anon_sym_COMMA, [141143] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2239), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141154] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12941), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141165] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(6423), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141176] = 3, ACTIONS(12943), 1, anon_sym_DOT_DOT, ACTIONS(12945), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141187] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2233), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141198] = 3, ACTIONS(12947), 1, anon_sym_DOT_DOT, ACTIONS(12949), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141209] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1593), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141220] = 3, ACTIONS(12951), 1, sym_identifier, ACTIONS(12953), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141231] = 3, ACTIONS(9315), 1, anon_sym_LBRACE, STATE(1751), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141242] = 3, ACTIONS(12955), 1, anon_sym_DOT_DOT, ACTIONS(12957), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141253] = 3, ACTIONS(10879), 1, sym_identifier, ACTIONS(10881), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141264] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2649), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141275] = 3, ACTIONS(12959), 1, sym_identifier, ACTIONS(12961), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141286] = 3, ACTIONS(12963), 1, anon_sym_RPAREN, ACTIONS(12965), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [141297] = 3, ACTIONS(12967), 1, sym_identifier, ACTIONS(12969), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141308] = 3, ACTIONS(12971), 1, sym_identifier, ACTIONS(12973), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141319] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1610), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141330] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2657), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141341] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4936), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [141352] = 3, ACTIONS(12975), 1, sym_identifier, ACTIONS(12977), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141363] = 3, ACTIONS(12979), 1, anon_sym_DOT_DOT, ACTIONS(12981), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141374] = 3, ACTIONS(12983), 1, anon_sym_RPAREN, ACTIONS(12985), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141385] = 3, ACTIONS(10676), 1, anon_sym_LBRACE, STATE(2667), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141396] = 3, ACTIONS(12403), 1, anon_sym_SEMI, ACTIONS(12987), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [141407] = 3, ACTIONS(12989), 1, anon_sym_RPAREN, ACTIONS(12991), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141418] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1630), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141429] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6203), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [141440] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1652), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141451] = 3, ACTIONS(12993), 1, anon_sym_RPAREN, ACTIONS(12995), 1, anon_sym_COMMA, ACTIONS(3), 2, sym_directive, sym_comment, [141462] = 3, ACTIONS(12883), 1, sym_identifier, STATE(6386), 1, sym_import_bind, ACTIONS(3), 2, sym_directive, sym_comment, [141473] = 3, ACTIONS(12411), 1, sym_identifier, STATE(6326), 1, sym_module_fqn, ACTIONS(3), 2, sym_directive, sym_comment, [141484] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2171), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141495] = 3, ACTIONS(5171), 1, ts_builtin_sym_end, ACTIONS(12997), 1, sym_end_file, ACTIONS(3), 2, sym_directive, sym_comment, [141506] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(12999), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141517] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2366), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141528] = 3, ACTIONS(7945), 1, anon_sym_LBRACE, STATE(3861), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141539] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4326), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [141550] = 3, ACTIONS(13001), 1, anon_sym_DOT_DOT, ACTIONS(13003), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141561] = 3, ACTIONS(10892), 1, sym_identifier, ACTIONS(10894), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141572] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4972), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [141583] = 3, ACTIONS(10869), 1, sym_identifier, ACTIONS(10871), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141594] = 3, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(13005), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141605] = 3, ACTIONS(13007), 1, anon_sym_RPAREN, ACTIONS(13009), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141616] = 3, ACTIONS(13011), 1, anon_sym_RPAREN, ACTIONS(13013), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141627] = 3, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(13015), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141638] = 3, ACTIONS(13017), 1, sym_identifier, STATE(5403), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [141649] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(13019), 2, sym_int_literal, sym_identifier, [141658] = 3, ACTIONS(7922), 1, anon_sym_LBRACE, STATE(3961), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141669] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6394), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [141680] = 3, ACTIONS(13021), 1, sym_identifier, STATE(5413), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [141691] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2170), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141702] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1656), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141713] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(13023), 2, sym_int_literal, sym_identifier, [141722] = 3, ACTIONS(10722), 1, anon_sym_LBRACE, STATE(2208), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141733] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2461), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141744] = 3, ACTIONS(7945), 1, anon_sym_LBRACE, STATE(3842), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141755] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(13025), 2, anon_sym_RBRACE, anon_sym_COMMA, [141764] = 3, ACTIONS(13027), 1, sym_identifier, STATE(3823), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [141775] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2214), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141786] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(13029), 2, anon_sym_RPAREN, anon_sym_COMMA, [141795] = 3, ACTIONS(12687), 1, anon_sym_LPAREN, STATE(4627), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [141806] = 3, ACTIONS(12687), 1, anon_sym_LPAREN, STATE(4910), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [141817] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6496), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [141828] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1703), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141839] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(13031), 2, anon_sym_COMMA, anon_sym_SEMI, [141848] = 2, ACTIONS(3), 2, sym_directive, sym_comment, ACTIONS(13033), 2, anon_sym_COMMA, anon_sym_SEMI, [141857] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2330), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [141868] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6337), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [141879] = 3, ACTIONS(13035), 1, anon_sym_PLUS_PLUS, ACTIONS(13037), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [141890] = 3, ACTIONS(10616), 1, anon_sym_LBRACE, STATE(1718), 1, sym_aggregate_body, ACTIONS(3), 2, sym_directive, sym_comment, [141901] = 3, ACTIONS(13039), 1, anon_sym_DOT_DOT, ACTIONS(13041), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [141912] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(403), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [141923] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4316), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [141934] = 3, ACTIONS(12371), 1, anon_sym_LPAREN, STATE(402), 1, sym_if_condition, ACTIONS(3), 2, sym_directive, sym_comment, [141945] = 3, ACTIONS(13043), 1, sym_identifier, STATE(5383), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [141956] = 3, ACTIONS(13045), 1, sym_identifier, STATE(5356), 1, sym_template_instance, ACTIONS(3), 2, sym_directive, sym_comment, [141967] = 3, ACTIONS(10803), 1, sym_identifier, ACTIONS(10805), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141978] = 3, ACTIONS(10718), 1, sym_identifier, ACTIONS(10720), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [141989] = 3, ACTIONS(6613), 1, anon_sym_LBRACE, STATE(2751), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [142000] = 3, ACTIONS(11107), 1, anon_sym_LPAREN, STATE(4924), 1, sym_parameters, ACTIONS(3), 2, sym_directive, sym_comment, [142011] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2261), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [142022] = 3, ACTIONS(12357), 1, sym_identifier, STATE(6055), 1, sym_manifest_declarator, ACTIONS(3), 2, sym_directive, sym_comment, [142033] = 3, ACTIONS(9333), 1, anon_sym_LBRACE, STATE(2315), 1, sym_block_statement, ACTIONS(3), 2, sym_directive, sym_comment, [142044] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(13047), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142055] = 3, ACTIONS(12337), 1, sym_identifier, ACTIONS(13049), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142066] = 3, ACTIONS(12411), 1, sym_identifier, STATE(7825), 1, sym_module_fqn, ACTIONS(3), 2, sym_directive, sym_comment, [142077] = 2, ACTIONS(13051), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [142085] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13053), 1, aux_sym_raw_string_token3, [142095] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13055), 1, aux_sym_hex_string_token1, [142105] = 2, ACTIONS(13057), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142113] = 2, ACTIONS(13059), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [142121] = 2, ACTIONS(13061), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142129] = 2, ACTIONS(13063), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142137] = 2, ACTIONS(13065), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142145] = 2, ACTIONS(13067), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [142153] = 2, ACTIONS(13069), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142161] = 2, ACTIONS(13071), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142169] = 2, ACTIONS(13073), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142177] = 2, ACTIONS(13075), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142185] = 2, ACTIONS(13077), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142193] = 2, ACTIONS(13079), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142201] = 2, ACTIONS(10805), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142209] = 2, ACTIONS(13081), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142217] = 2, ACTIONS(13083), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142225] = 2, ACTIONS(13085), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142233] = 2, ACTIONS(13087), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142241] = 2, ACTIONS(13089), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142249] = 2, ACTIONS(13091), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142257] = 2, ACTIONS(13093), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [142265] = 2, ACTIONS(13095), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [142273] = 2, ACTIONS(13097), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142281] = 2, ACTIONS(13099), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [142289] = 2, ACTIONS(2802), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [142297] = 2, ACTIONS(13101), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142305] = 2, ACTIONS(3173), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142313] = 2, ACTIONS(13103), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142321] = 2, ACTIONS(13105), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142329] = 2, ACTIONS(13107), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142337] = 2, ACTIONS(13109), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142345] = 2, ACTIONS(13111), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142353] = 2, ACTIONS(11360), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [142361] = 2, ACTIONS(7581), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142369] = 2, ACTIONS(13113), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142377] = 2, ACTIONS(13115), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [142385] = 2, ACTIONS(13117), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142393] = 2, ACTIONS(13119), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142401] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13121), 1, aux_sym_raw_string_token1, [142411] = 2, ACTIONS(13123), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [142419] = 2, ACTIONS(9801), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142427] = 2, ACTIONS(13125), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142435] = 2, ACTIONS(13127), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142443] = 2, ACTIONS(13129), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142451] = 2, ACTIONS(13131), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142459] = 2, ACTIONS(13133), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142467] = 2, ACTIONS(11362), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142475] = 2, ACTIONS(13135), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [142483] = 2, ACTIONS(13137), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142491] = 2, ACTIONS(13139), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142499] = 2, ACTIONS(10894), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142507] = 2, ACTIONS(13141), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142515] = 2, ACTIONS(13143), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142523] = 2, ACTIONS(13145), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142531] = 2, ACTIONS(13147), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142539] = 2, ACTIONS(13149), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142547] = 2, ACTIONS(13151), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142555] = 2, ACTIONS(13153), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142563] = 2, ACTIONS(13155), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142571] = 2, ACTIONS(13157), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142579] = 2, ACTIONS(13159), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142587] = 2, ACTIONS(13161), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [142595] = 2, ACTIONS(13163), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142603] = 2, ACTIONS(13165), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142611] = 2, ACTIONS(13167), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142619] = 2, ACTIONS(13169), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142627] = 2, ACTIONS(13171), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [142635] = 2, ACTIONS(13173), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142643] = 2, ACTIONS(13175), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142651] = 2, ACTIONS(12973), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142659] = 2, ACTIONS(13177), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142667] = 2, ACTIONS(13179), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [142675] = 2, ACTIONS(13181), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142683] = 2, ACTIONS(13183), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142691] = 2, ACTIONS(13185), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142699] = 2, ACTIONS(13187), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142707] = 2, ACTIONS(13189), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142715] = 2, ACTIONS(13191), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142723] = 2, ACTIONS(13193), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142731] = 2, ACTIONS(13195), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142739] = 2, ACTIONS(13197), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142747] = 2, ACTIONS(13199), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142755] = 2, ACTIONS(13201), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142763] = 2, ACTIONS(13203), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142771] = 2, ACTIONS(13205), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142779] = 2, ACTIONS(13207), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142787] = 2, ACTIONS(13209), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142795] = 2, ACTIONS(13211), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142803] = 2, ACTIONS(13213), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142811] = 2, ACTIONS(13215), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142819] = 2, ACTIONS(9595), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142827] = 2, ACTIONS(13217), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142835] = 2, ACTIONS(13219), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142843] = 2, ACTIONS(13221), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142851] = 2, ACTIONS(13223), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142859] = 2, ACTIONS(13225), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142867] = 2, ACTIONS(13227), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142875] = 2, ACTIONS(13229), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142883] = 2, ACTIONS(13231), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142891] = 2, ACTIONS(13233), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142899] = 2, ACTIONS(13235), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [142907] = 2, ACTIONS(10628), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142915] = 2, ACTIONS(13237), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142923] = 2, ACTIONS(13239), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142931] = 2, ACTIONS(13241), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [142939] = 2, ACTIONS(13243), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142947] = 2, ACTIONS(13245), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [142955] = 2, ACTIONS(13247), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142963] = 2, ACTIONS(13249), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142971] = 2, ACTIONS(13251), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [142979] = 2, ACTIONS(3463), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142987] = 2, ACTIONS(13253), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [142995] = 2, ACTIONS(13255), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [143003] = 2, ACTIONS(13257), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143011] = 2, ACTIONS(13259), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143019] = 2, ACTIONS(13261), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143027] = 2, ACTIONS(13263), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143035] = 2, ACTIONS(13265), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143043] = 2, ACTIONS(10589), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143051] = 2, ACTIONS(13267), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143059] = 2, ACTIONS(13269), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143067] = 2, ACTIONS(13271), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143075] = 2, ACTIONS(13273), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143083] = 2, ACTIONS(13275), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [143091] = 2, ACTIONS(13277), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143099] = 2, ACTIONS(13279), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143107] = 2, ACTIONS(13281), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143115] = 2, ACTIONS(13283), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143123] = 2, ACTIONS(13285), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143131] = 2, ACTIONS(13139), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143139] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13287), 1, aux_sym_raw_string_token1, [143149] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13289), 1, aux_sym_raw_string_token3, [143159] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13291), 1, aux_sym_hex_string_token1, [143169] = 2, ACTIONS(13293), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [143177] = 2, ACTIONS(13295), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143185] = 2, ACTIONS(13297), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143193] = 2, ACTIONS(9627), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143201] = 2, ACTIONS(13299), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143209] = 2, ACTIONS(7577), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143217] = 2, ACTIONS(13301), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143225] = 2, ACTIONS(13303), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143233] = 2, ACTIONS(13305), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143241] = 2, ACTIONS(13307), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143249] = 2, ACTIONS(13309), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143257] = 2, ACTIONS(13311), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143265] = 2, ACTIONS(13313), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143273] = 2, ACTIONS(13315), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143281] = 2, ACTIONS(13317), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [143289] = 2, ACTIONS(13319), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143297] = 2, ACTIONS(13317), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [143305] = 2, ACTIONS(13321), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143313] = 2, ACTIONS(13323), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143321] = 2, ACTIONS(13325), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143329] = 2, ACTIONS(13327), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143337] = 2, ACTIONS(13329), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143345] = 2, ACTIONS(13327), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143353] = 2, ACTIONS(13331), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143361] = 2, ACTIONS(13333), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [143369] = 2, ACTIONS(13335), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [143377] = 2, ACTIONS(13337), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [143385] = 2, ACTIONS(13337), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [143393] = 2, ACTIONS(11626), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [143401] = 2, ACTIONS(13339), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [143409] = 2, ACTIONS(13341), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [143417] = 2, ACTIONS(13343), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143425] = 2, ACTIONS(13345), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143433] = 2, ACTIONS(11783), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143441] = 2, ACTIONS(13347), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143449] = 2, ACTIONS(13349), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143457] = 2, ACTIONS(11698), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143465] = 2, ACTIONS(13351), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143473] = 2, ACTIONS(13353), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143481] = 2, ACTIONS(11728), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [143489] = 2, ACTIONS(13355), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143497] = 2, ACTIONS(13357), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143505] = 2, ACTIONS(13359), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [143513] = 2, ACTIONS(13361), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143521] = 2, ACTIONS(13363), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143529] = 2, ACTIONS(13365), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [143537] = 2, ACTIONS(13367), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143545] = 2, ACTIONS(13369), 1, ts_builtin_sym_end, ACTIONS(3), 2, sym_directive, sym_comment, [143553] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13371), 1, aux_sym_hex_string_token1, [143563] = 2, ACTIONS(13373), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143571] = 2, ACTIONS(13375), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143579] = 2, ACTIONS(13377), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143587] = 2, ACTIONS(13379), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143595] = 2, ACTIONS(13381), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143603] = 2, ACTIONS(10904), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143611] = 2, ACTIONS(13383), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143619] = 2, ACTIONS(13385), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143627] = 2, ACTIONS(13387), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143635] = 2, ACTIONS(13389), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143643] = 2, ACTIONS(13391), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143651] = 2, ACTIONS(13393), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143659] = 2, ACTIONS(13395), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143667] = 2, ACTIONS(13397), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143675] = 2, ACTIONS(13399), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143683] = 2, ACTIONS(13401), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143691] = 2, ACTIONS(13403), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143699] = 2, ACTIONS(13405), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143707] = 2, ACTIONS(13407), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143715] = 2, ACTIONS(13409), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [143723] = 2, ACTIONS(13411), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143731] = 2, ACTIONS(13413), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143739] = 2, ACTIONS(13415), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143747] = 2, ACTIONS(13417), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143755] = 2, ACTIONS(13419), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143763] = 2, ACTIONS(13421), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143771] = 2, ACTIONS(13423), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143779] = 2, ACTIONS(10770), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143787] = 2, ACTIONS(13425), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143795] = 2, ACTIONS(13427), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143803] = 2, ACTIONS(13429), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143811] = 2, ACTIONS(13431), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143819] = 2, ACTIONS(13433), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [143827] = 2, ACTIONS(7634), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143835] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13435), 1, aux_sym_raw_string_token3, [143845] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13437), 1, aux_sym_raw_string_token1, [143855] = 2, ACTIONS(13439), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143863] = 2, ACTIONS(13441), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143871] = 2, ACTIONS(13443), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143879] = 2, ACTIONS(13445), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143887] = 2, ACTIONS(13447), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143895] = 2, ACTIONS(13449), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143903] = 2, ACTIONS(13451), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143911] = 2, ACTIONS(13453), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143919] = 2, ACTIONS(13455), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143927] = 2, ACTIONS(13457), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [143935] = 2, ACTIONS(13459), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143943] = 2, ACTIONS(13457), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [143951] = 2, ACTIONS(13461), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [143959] = 2, ACTIONS(13463), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143967] = 2, ACTIONS(13465), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [143975] = 2, ACTIONS(13467), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [143983] = 2, ACTIONS(12779), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [143991] = 2, ACTIONS(13469), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [143999] = 2, ACTIONS(13471), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144007] = 2, ACTIONS(13473), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144015] = 2, ACTIONS(13475), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144023] = 2, ACTIONS(13477), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144031] = 2, ACTIONS(13479), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144039] = 2, ACTIONS(13477), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144047] = 2, ACTIONS(13481), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144055] = 2, ACTIONS(13483), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144063] = 2, ACTIONS(13485), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144071] = 2, ACTIONS(13487), 1, ts_builtin_sym_end, ACTIONS(3), 2, sym_directive, sym_comment, [144079] = 2, ACTIONS(13489), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144087] = 2, ACTIONS(13491), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144095] = 2, ACTIONS(13493), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144103] = 2, ACTIONS(13495), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144111] = 2, ACTIONS(7573), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144119] = 2, ACTIONS(13497), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144127] = 2, ACTIONS(13499), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144135] = 2, ACTIONS(9605), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144143] = 2, ACTIONS(11856), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144151] = 2, ACTIONS(13501), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144159] = 2, ACTIONS(13503), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144167] = 2, ACTIONS(13505), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144175] = 2, ACTIONS(13507), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144183] = 2, ACTIONS(13509), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144191] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13511), 1, aux_sym_raw_string_token1, [144201] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13513), 1, aux_sym_raw_string_token3, [144211] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13515), 1, aux_sym_hex_string_token1, [144221] = 2, ACTIONS(13517), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144229] = 2, ACTIONS(13519), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144237] = 2, ACTIONS(13521), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144245] = 2, ACTIONS(11895), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144253] = 2, ACTIONS(3523), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144261] = 2, ACTIONS(13523), 1, sym__after_eof, ACTIONS(3), 2, sym_directive, sym_comment, [144269] = 2, ACTIONS(13525), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144277] = 2, ACTIONS(13527), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144285] = 2, ACTIONS(13529), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144293] = 2, ACTIONS(5455), 1, ts_builtin_sym_end, ACTIONS(3), 2, sym_directive, sym_comment, [144301] = 2, ACTIONS(13531), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144309] = 2, ACTIONS(10931), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144317] = 2, ACTIONS(13533), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144325] = 2, ACTIONS(13535), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144333] = 2, ACTIONS(13537), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144341] = 2, ACTIONS(13539), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144349] = 2, ACTIONS(9711), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144357] = 2, ACTIONS(13541), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144365] = 2, ACTIONS(13543), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144373] = 2, ACTIONS(13545), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144381] = 2, ACTIONS(13547), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144389] = 2, ACTIONS(13549), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144397] = 2, ACTIONS(13551), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144405] = 2, ACTIONS(13553), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144413] = 2, ACTIONS(13555), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [144421] = 2, ACTIONS(12140), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144429] = 2, ACTIONS(13557), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [144437] = 2, ACTIONS(13559), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144445] = 2, ACTIONS(13561), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144453] = 2, ACTIONS(13563), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [144461] = 2, ACTIONS(13565), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [144469] = 2, ACTIONS(13567), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144477] = 2, ACTIONS(13569), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [144485] = 2, ACTIONS(11982), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144493] = 2, ACTIONS(13571), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [144501] = 2, ACTIONS(13573), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [144509] = 2, ACTIONS(13575), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144517] = 2, ACTIONS(13577), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144525] = 2, ACTIONS(12008), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [144533] = 2, ACTIONS(13579), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144541] = 2, ACTIONS(13581), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144549] = 2, ACTIONS(13583), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144557] = 2, ACTIONS(13585), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144565] = 2, ACTIONS(13587), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144573] = 2, ACTIONS(2780), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [144581] = 2, ACTIONS(13589), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144589] = 2, ACTIONS(13591), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144597] = 2, ACTIONS(13593), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144605] = 2, ACTIONS(13595), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144613] = 2, ACTIONS(13597), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144621] = 2, ACTIONS(13599), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144629] = 2, ACTIONS(13601), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144637] = 2, ACTIONS(10730), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144645] = 2, ACTIONS(13603), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144653] = 2, ACTIONS(13605), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [144661] = 2, ACTIONS(9861), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144669] = 2, ACTIONS(13607), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144677] = 2, ACTIONS(13609), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144685] = 2, ACTIONS(13611), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144693] = 2, ACTIONS(13613), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144701] = 2, ACTIONS(13615), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144709] = 2, ACTIONS(13617), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [144717] = 2, ACTIONS(13619), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144725] = 2, ACTIONS(13621), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [144733] = 2, ACTIONS(13623), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144741] = 2, ACTIONS(13625), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [144749] = 2, ACTIONS(13627), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144757] = 2, ACTIONS(13629), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144765] = 2, ACTIONS(13631), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144773] = 2, ACTIONS(13633), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144781] = 2, ACTIONS(13635), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [144789] = 2, ACTIONS(13637), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144797] = 2, ACTIONS(13639), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144805] = 2, ACTIONS(13641), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144813] = 2, ACTIONS(13643), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144821] = 2, ACTIONS(13645), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144829] = 2, ACTIONS(7591), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144837] = 2, ACTIONS(13647), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144845] = 2, ACTIONS(8139), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144853] = 2, ACTIONS(13649), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144861] = 2, ACTIONS(13651), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144869] = 2, ACTIONS(13653), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144877] = 2, ACTIONS(13655), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144885] = 2, ACTIONS(13657), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [144893] = 2, ACTIONS(13659), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144901] = 2, ACTIONS(13661), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144909] = 2, ACTIONS(13663), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144917] = 2, ACTIONS(13665), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144925] = 2, ACTIONS(13667), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144933] = 2, ACTIONS(13669), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144941] = 2, ACTIONS(13671), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144949] = 2, ACTIONS(13673), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144957] = 2, ACTIONS(13675), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144965] = 2, ACTIONS(12337), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [144973] = 2, ACTIONS(13677), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [144981] = 2, ACTIONS(13679), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144989] = 2, ACTIONS(13681), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [144997] = 2, ACTIONS(9857), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145005] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13683), 1, aux_sym_raw_string_token1, [145015] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13685), 1, aux_sym_raw_string_token3, [145025] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13687), 1, aux_sym_hex_string_token1, [145035] = 2, ACTIONS(13689), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145043] = 2, ACTIONS(13691), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [145051] = 2, ACTIONS(13693), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145059] = 2, ACTIONS(10943), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145067] = 2, ACTIONS(13695), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145075] = 2, ACTIONS(13697), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145083] = 2, ACTIONS(13699), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145091] = 2, ACTIONS(13701), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [145099] = 2, ACTIONS(13703), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145107] = 2, ACTIONS(13705), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [145115] = 2, ACTIONS(13707), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145123] = 2, ACTIONS(13709), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145131] = 2, ACTIONS(13711), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145139] = 2, ACTIONS(13713), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145147] = 2, ACTIONS(13715), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145155] = 2, ACTIONS(13717), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145163] = 2, ACTIONS(13719), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145171] = 2, ACTIONS(13721), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145179] = 2, ACTIONS(13723), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145187] = 2, ACTIONS(13725), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145195] = 2, ACTIONS(13727), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145203] = 2, ACTIONS(13729), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [145211] = 2, ACTIONS(13731), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145219] = 2, ACTIONS(13733), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145227] = 2, ACTIONS(13735), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145235] = 2, ACTIONS(13737), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145243] = 2, ACTIONS(13739), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145251] = 2, ACTIONS(6885), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145259] = 2, ACTIONS(13741), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145267] = 2, ACTIONS(13743), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145275] = 2, ACTIONS(13745), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145283] = 2, ACTIONS(13747), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145291] = 2, ACTIONS(13749), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145299] = 2, ACTIONS(13751), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145307] = 2, ACTIONS(13753), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [145315] = 2, ACTIONS(13755), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145323] = 2, ACTIONS(13757), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145331] = 2, ACTIONS(13759), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145339] = 2, ACTIONS(13761), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145347] = 2, ACTIONS(12523), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145355] = 2, ACTIONS(13763), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145363] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13765), 1, aux_sym_raw_string_token1, [145373] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13767), 1, aux_sym_raw_string_token3, [145383] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13769), 1, aux_sym_hex_string_token1, [145393] = 2, ACTIONS(13771), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145401] = 2, ACTIONS(10050), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [145409] = 2, ACTIONS(13773), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [145417] = 2, ACTIONS(13775), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145425] = 2, ACTIONS(13777), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145433] = 2, ACTIONS(13779), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145441] = 2, ACTIONS(13781), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145449] = 2, ACTIONS(13783), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145457] = 2, ACTIONS(13785), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145465] = 2, ACTIONS(13787), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145473] = 2, ACTIONS(13789), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145481] = 2, ACTIONS(13791), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145489] = 2, ACTIONS(13793), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [145497] = 2, ACTIONS(13795), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [145505] = 2, ACTIONS(13797), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [145513] = 2, ACTIONS(13799), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145521] = 2, ACTIONS(13801), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [145529] = 2, ACTIONS(13803), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145537] = 2, ACTIONS(13805), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145545] = 2, ACTIONS(13807), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145553] = 2, ACTIONS(13809), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145561] = 2, ACTIONS(13811), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145569] = 2, ACTIONS(12177), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [145577] = 2, ACTIONS(13813), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145585] = 2, ACTIONS(13815), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145593] = 2, ACTIONS(13817), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145601] = 2, ACTIONS(13819), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145609] = 2, ACTIONS(13821), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145617] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13823), 1, aux_sym_raw_string_token1, [145627] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13825), 1, aux_sym_raw_string_token3, [145637] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13827), 1, aux_sym_hex_string_token1, [145647] = 2, ACTIONS(13829), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145655] = 2, ACTIONS(13831), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145663] = 2, ACTIONS(13833), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145671] = 2, ACTIONS(13835), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145679] = 2, ACTIONS(13837), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145687] = 2, ACTIONS(13839), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145695] = 2, ACTIONS(13841), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145703] = 2, ACTIONS(13843), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145711] = 2, ACTIONS(13845), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145719] = 2, ACTIONS(13847), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145727] = 2, ACTIONS(13849), 1, anon_sym_C, ACTIONS(3), 2, sym_directive, sym_comment, [145735] = 2, ACTIONS(9030), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145743] = 2, ACTIONS(13851), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145751] = 2, ACTIONS(13853), 1, anon_sym_C, ACTIONS(3), 2, sym_directive, sym_comment, [145759] = 2, ACTIONS(13855), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145767] = 2, ACTIONS(12298), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145775] = 2, ACTIONS(13857), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145783] = 2, ACTIONS(13859), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145791] = 2, ACTIONS(13861), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145799] = 2, ACTIONS(13863), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145807] = 2, ACTIONS(13865), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145815] = 2, ACTIONS(13867), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [145823] = 2, ACTIONS(13869), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145831] = 2, ACTIONS(13871), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145839] = 2, ACTIONS(13873), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145847] = 2, ACTIONS(13875), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145855] = 2, ACTIONS(13877), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [145863] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13879), 1, aux_sym_raw_string_token1, [145873] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13881), 1, aux_sym_raw_string_token3, [145883] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13883), 1, aux_sym_hex_string_token1, [145893] = 2, ACTIONS(13885), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145901] = 2, ACTIONS(13887), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145909] = 2, ACTIONS(13889), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145917] = 2, ACTIONS(13891), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145925] = 2, ACTIONS(13893), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145933] = 2, ACTIONS(13895), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145941] = 2, ACTIONS(13897), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145949] = 2, ACTIONS(13899), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145957] = 2, ACTIONS(13901), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145965] = 2, ACTIONS(13903), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145973] = 2, ACTIONS(12286), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [145981] = 2, ACTIONS(13905), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145989] = 2, ACTIONS(13907), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [145997] = 2, ACTIONS(13909), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146005] = 2, ACTIONS(13911), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [146013] = 2, ACTIONS(13913), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146021] = 2, ACTIONS(13915), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146029] = 2, ACTIONS(13917), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146037] = 2, ACTIONS(13919), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146045] = 2, ACTIONS(13921), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146053] = 2, ACTIONS(13923), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146061] = 2, ACTIONS(13925), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146069] = 2, ACTIONS(13927), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146077] = 2, ACTIONS(3591), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146085] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13929), 1, aux_sym_raw_string_token1, [146095] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13931), 1, aux_sym_raw_string_token3, [146105] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13933), 1, aux_sym_hex_string_token1, [146115] = 2, ACTIONS(13935), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146123] = 2, ACTIONS(13937), 1, sym_while, ACTIONS(3), 2, sym_directive, sym_comment, [146131] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13939), 1, aux_sym_raw_string_token1, [146141] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13941), 1, aux_sym_raw_string_token3, [146151] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13943), 1, aux_sym_hex_string_token1, [146161] = 2, ACTIONS(13945), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [146169] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13947), 1, aux_sym_raw_string_token1, [146179] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13949), 1, aux_sym_raw_string_token3, [146189] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13951), 1, aux_sym_hex_string_token1, [146199] = 2, ACTIONS(12312), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146207] = 2, ACTIONS(13953), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146215] = 2, ACTIONS(13955), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [146223] = 2, ACTIONS(13957), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146231] = 2, ACTIONS(13959), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146239] = 2, ACTIONS(13961), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146247] = 2, ACTIONS(13963), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146255] = 2, ACTIONS(13965), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146263] = 2, ACTIONS(13967), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146271] = 2, ACTIONS(13969), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146279] = 2, ACTIONS(13971), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146287] = 2, ACTIONS(13973), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146295] = 2, ACTIONS(13975), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146303] = 2, ACTIONS(13977), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146311] = 2, ACTIONS(13979), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146319] = 2, ACTIONS(13981), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146327] = 2, ACTIONS(13983), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [146335] = 2, ACTIONS(13985), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146343] = 2, ACTIONS(13987), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146351] = 2, ACTIONS(9063), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [146359] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13989), 1, aux_sym_hex_string_token1, [146369] = 2, ACTIONS(13991), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [146377] = 2, ACTIONS(13993), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146385] = 2, ACTIONS(13995), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146393] = 2, ACTIONS(13997), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146401] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(13999), 1, aux_sym_raw_string_token3, [146411] = 2, ACTIONS(14001), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146419] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(14003), 1, aux_sym_raw_string_token1, [146429] = 2, ACTIONS(14005), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146437] = 2, ACTIONS(10827), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146445] = 2, ACTIONS(14007), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146453] = 2, ACTIONS(14009), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146461] = 2, ACTIONS(14011), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [146469] = 2, ACTIONS(10966), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146477] = 2, ACTIONS(14013), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146485] = 2, ACTIONS(14015), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146493] = 2, ACTIONS(14017), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146501] = 2, ACTIONS(14019), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146509] = 2, ACTIONS(14021), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [146517] = 2, ACTIONS(14023), 1, anon_sym_DASH, ACTIONS(3), 2, sym_directive, sym_comment, [146525] = 2, ACTIONS(14025), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146533] = 2, ACTIONS(7650), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146541] = 2, ACTIONS(14027), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146549] = 2, ACTIONS(14029), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146557] = 2, ACTIONS(14031), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146565] = 2, ACTIONS(14033), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146573] = 2, ACTIONS(14035), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146581] = 2, ACTIONS(14037), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [146589] = 2, ACTIONS(14039), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146597] = 2, ACTIONS(14041), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146605] = 2, ACTIONS(14043), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146613] = 2, ACTIONS(14045), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146621] = 2, ACTIONS(7652), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146629] = 2, ACTIONS(14047), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [146637] = 2, ACTIONS(14049), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146645] = 2, ACTIONS(14051), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [146653] = 2, ACTIONS(14053), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146661] = 2, ACTIONS(14055), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146669] = 2, ACTIONS(14057), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146677] = 2, ACTIONS(14059), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146685] = 2, ACTIONS(14061), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [146693] = 2, ACTIONS(14063), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [146701] = 2, ACTIONS(14065), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146709] = 2, ACTIONS(10809), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146717] = 2, ACTIONS(14067), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146725] = 2, ACTIONS(14069), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146733] = 2, ACTIONS(14071), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146741] = 2, ACTIONS(14073), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146749] = 2, ACTIONS(14075), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146757] = 2, ACTIONS(14077), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146765] = 2, ACTIONS(14079), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146773] = 2, ACTIONS(14081), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [146781] = 2, ACTIONS(14083), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146789] = 2, ACTIONS(14085), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [146797] = 2, ACTIONS(14087), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [146805] = 2, ACTIONS(14089), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146813] = 2, ACTIONS(14091), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146821] = 2, ACTIONS(14093), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146829] = 2, ACTIONS(14095), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146837] = 2, ACTIONS(14097), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [146845] = 2, ACTIONS(7648), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146853] = 2, ACTIONS(14099), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146861] = 2, ACTIONS(14101), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146869] = 2, ACTIONS(14103), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, [146877] = 2, ACTIONS(14097), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [146885] = 2, ACTIONS(14105), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146893] = 2, ACTIONS(14107), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [146901] = 2, ACTIONS(14109), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [146909] = 2, ACTIONS(14111), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146917] = 2, ACTIONS(14113), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146925] = 2, ACTIONS(14115), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146933] = 2, ACTIONS(14117), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146941] = 2, ACTIONS(7567), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146949] = 2, ACTIONS(9645), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [146957] = 2, ACTIONS(14119), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [146965] = 2, ACTIONS(14121), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146973] = 2, ACTIONS(14123), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146981] = 2, ACTIONS(14125), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [146989] = 2, ACTIONS(14127), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [146997] = 2, ACTIONS(14129), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [147005] = 2, ACTIONS(14131), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [147013] = 2, ACTIONS(14133), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147021] = 2, ACTIONS(14135), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147029] = 2, ACTIONS(14135), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [147037] = 2, ACTIONS(14137), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147045] = 2, ACTIONS(7638), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147053] = 2, ACTIONS(14139), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147061] = 2, ACTIONS(3527), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147069] = 2, ACTIONS(14141), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147077] = 2, ACTIONS(14143), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147085] = 2, ACTIONS(9116), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [147093] = 2, ACTIONS(14145), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147101] = 2, ACTIONS(12453), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147109] = 2, ACTIONS(10766), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147117] = 2, ACTIONS(14147), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [147125] = 2, ACTIONS(14149), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147133] = 2, ACTIONS(14151), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147141] = 2, ACTIONS(14153), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147149] = 2, ACTIONS(14155), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147157] = 2, ACTIONS(14157), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147165] = 2, ACTIONS(14159), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147173] = 2, ACTIONS(14161), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147181] = 2, ACTIONS(14163), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147189] = 2, ACTIONS(14165), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147197] = 2, ACTIONS(14167), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147205] = 2, ACTIONS(14169), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147213] = 2, ACTIONS(11265), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147221] = 2, ACTIONS(14171), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147229] = 2, ACTIONS(14173), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147237] = 2, ACTIONS(14175), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [147245] = 2, ACTIONS(9057), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147253] = 2, ACTIONS(14177), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147261] = 2, ACTIONS(9043), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [147269] = 2, ACTIONS(13051), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [147277] = 2, ACTIONS(14179), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147285] = 2, ACTIONS(14181), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147293] = 2, ACTIONS(14183), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147301] = 2, ACTIONS(14185), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147309] = 2, ACTIONS(14187), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147317] = 2, ACTIONS(14189), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [147325] = 2, ACTIONS(14191), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147333] = 2, ACTIONS(14193), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147341] = 2, ACTIONS(14195), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147349] = 2, ACTIONS(14197), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147357] = 2, ACTIONS(14199), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [147365] = 2, ACTIONS(14201), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [147373] = 2, ACTIONS(14203), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147381] = 2, ACTIONS(9607), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147389] = 2, ACTIONS(14205), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147397] = 2, ACTIONS(14207), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147405] = 2, ACTIONS(14209), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147413] = 2, ACTIONS(14211), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147421] = 2, ACTIONS(14213), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147429] = 2, ACTIONS(14215), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [147437] = 2, ACTIONS(14217), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147445] = 2, ACTIONS(14219), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [147453] = 2, ACTIONS(14221), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [147461] = 2, ACTIONS(14223), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147469] = 2, ACTIONS(14225), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147477] = 2, ACTIONS(14227), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147485] = 2, ACTIONS(14229), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [147493] = 2, ACTIONS(14231), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147501] = 2, ACTIONS(14233), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [147509] = 2, ACTIONS(14235), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147517] = 2, ACTIONS(14237), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147525] = 2, ACTIONS(14239), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147533] = 2, ACTIONS(14241), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [147541] = 2, ACTIONS(14243), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147549] = 2, ACTIONS(14245), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147557] = 2, ACTIONS(14247), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147565] = 2, ACTIONS(14239), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [147573] = 2, ACTIONS(14249), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147581] = 2, ACTIONS(14251), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, [147589] = 2, ACTIONS(14253), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147597] = 2, ACTIONS(14255), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147605] = 2, ACTIONS(14257), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147613] = 2, ACTIONS(14259), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147621] = 2, ACTIONS(14261), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147629] = 2, ACTIONS(14263), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [147637] = 2, ACTIONS(14265), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147645] = 2, ACTIONS(14267), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [147653] = 2, ACTIONS(14269), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147661] = 2, ACTIONS(7575), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147669] = 2, ACTIONS(14271), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [147677] = 2, ACTIONS(2778), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [147685] = 2, ACTIONS(14273), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147693] = 2, ACTIONS(14275), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147701] = 2, ACTIONS(14277), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147709] = 2, ACTIONS(14279), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147717] = 2, ACTIONS(14281), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147725] = 2, ACTIONS(14283), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147733] = 2, ACTIONS(14285), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [147741] = 2, ACTIONS(14287), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147749] = 2, ACTIONS(14289), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147757] = 2, ACTIONS(9112), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [147765] = 2, ACTIONS(10601), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147773] = 2, ACTIONS(14291), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147781] = 2, ACTIONS(14293), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147789] = 2, ACTIONS(14295), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147797] = 2, ACTIONS(7642), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147805] = 2, ACTIONS(14297), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147813] = 2, ACTIONS(14299), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [147821] = 2, ACTIONS(14301), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [147829] = 2, ACTIONS(14303), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [147837] = 2, ACTIONS(14305), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [147845] = 2, ACTIONS(9799), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147853] = 2, ACTIONS(14307), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147861] = 2, ACTIONS(14309), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [147869] = 2, ACTIONS(14311), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147877] = 2, ACTIONS(14313), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [147885] = 2, ACTIONS(14315), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147893] = 2, ACTIONS(14317), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [147901] = 2, ACTIONS(14319), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147909] = 2, ACTIONS(14321), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [147917] = 2, ACTIONS(14321), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [147925] = 2, ACTIONS(14323), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147933] = 2, ACTIONS(14325), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [147941] = 2, ACTIONS(14327), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147949] = 2, ACTIONS(14329), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147957] = 2, ACTIONS(14331), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [147965] = 2, ACTIONS(14333), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [147973] = 2, ACTIONS(14335), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147981] = 2, ACTIONS(14337), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [147989] = 2, ACTIONS(14339), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [147997] = 2, ACTIONS(14341), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [148005] = 2, ACTIONS(14343), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148013] = 2, ACTIONS(14345), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [148021] = 2, ACTIONS(12471), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148029] = 2, ACTIONS(14347), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148037] = 2, ACTIONS(10698), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148045] = 2, ACTIONS(10949), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148053] = 2, ACTIONS(14349), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148061] = 2, ACTIONS(14351), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148069] = 2, ACTIONS(14353), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [148077] = 2, ACTIONS(14355), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148085] = 2, ACTIONS(14357), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148093] = 2, ACTIONS(14359), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148101] = 2, ACTIONS(14361), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148109] = 2, ACTIONS(14363), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [148117] = 2, ACTIONS(14365), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148125] = 2, ACTIONS(14367), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148133] = 2, ACTIONS(9078), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [148141] = 2, ACTIONS(14369), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148149] = 2, ACTIONS(14371), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148157] = 2, ACTIONS(14373), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148165] = 2, ACTIONS(12699), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148173] = 2, ACTIONS(10260), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [148181] = 2, ACTIONS(14375), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [148189] = 2, ACTIONS(7628), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148197] = 2, ACTIONS(14377), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148205] = 2, ACTIONS(14379), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148213] = 2, ACTIONS(14381), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [148221] = 2, ACTIONS(14383), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [148229] = 2, ACTIONS(14385), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [148237] = 2, ACTIONS(14387), 1, ts_builtin_sym_end, ACTIONS(3), 2, sym_directive, sym_comment, [148245] = 2, ACTIONS(14389), 1, sym__after_eof, ACTIONS(3), 2, sym_directive, sym_comment, [148253] = 2, ACTIONS(14391), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148261] = 2, ACTIONS(7599), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148269] = 2, ACTIONS(14393), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148277] = 2, ACTIONS(14395), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, [148285] = 2, ACTIONS(11253), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148293] = 2, ACTIONS(14397), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148301] = 2, ACTIONS(14399), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [148309] = 2, ACTIONS(14401), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148317] = 2, ACTIONS(14403), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148325] = 2, ACTIONS(14405), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148333] = 2, ACTIONS(14407), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [148341] = 2, ACTIONS(14409), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [148349] = 2, ACTIONS(14409), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [148357] = 2, ACTIONS(14411), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148365] = 2, ACTIONS(14413), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148373] = 2, ACTIONS(14415), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148381] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(14417), 1, aux_sym_raw_string_token1, [148391] = 2, ACTIONS(14419), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148399] = 2, ACTIONS(14421), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148407] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(14423), 1, aux_sym_raw_string_token3, [148417] = 2, ACTIONS(14425), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148425] = 3, ACTIONS(3), 1, sym_directive, ACTIONS(9531), 1, sym_comment, ACTIONS(14427), 1, aux_sym_hex_string_token1, [148435] = 2, ACTIONS(14429), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148443] = 2, ACTIONS(14431), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [148451] = 2, ACTIONS(14433), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148459] = 2, ACTIONS(9067), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [148467] = 2, ACTIONS(11946), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148475] = 2, ACTIONS(14435), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148483] = 2, ACTIONS(14437), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148491] = 2, ACTIONS(14439), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148499] = 2, ACTIONS(14441), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148507] = 2, ACTIONS(14443), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [148515] = 2, ACTIONS(14445), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148523] = 2, ACTIONS(14447), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148531] = 2, ACTIONS(14449), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148539] = 2, ACTIONS(14451), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [148547] = 2, ACTIONS(14453), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148555] = 2, ACTIONS(14455), 1, anon_sym_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [148563] = 2, ACTIONS(14457), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148571] = 2, ACTIONS(14459), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148579] = 2, ACTIONS(14461), 1, sym_ref, ACTIONS(3), 2, sym_directive, sym_comment, [148587] = 2, ACTIONS(12527), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148595] = 2, ACTIONS(14463), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148603] = 2, ACTIONS(14465), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148611] = 2, ACTIONS(14467), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148619] = 2, ACTIONS(14469), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148627] = 2, ACTIONS(14471), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148635] = 2, ACTIONS(14473), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148643] = 2, ACTIONS(14475), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148651] = 2, ACTIONS(14477), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148659] = 2, ACTIONS(14479), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148667] = 2, ACTIONS(14481), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148675] = 2, ACTIONS(14483), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148683] = 2, ACTIONS(14485), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148691] = 2, ACTIONS(14487), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [148699] = 2, ACTIONS(14489), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [148707] = 2, ACTIONS(14491), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148715] = 2, ACTIONS(14493), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148723] = 2, ACTIONS(7622), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148731] = 2, ACTIONS(14495), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148739] = 2, ACTIONS(14497), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [148747] = 2, ACTIONS(14499), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148755] = 2, ACTIONS(7595), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148763] = 2, ACTIONS(14501), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148771] = 2, ACTIONS(14503), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [148779] = 2, ACTIONS(14505), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [148787] = 2, ACTIONS(14507), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148795] = 2, ACTIONS(14509), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [148803] = 2, ACTIONS(14337), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [148811] = 2, ACTIONS(14511), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148819] = 2, ACTIONS(14513), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [148827] = 2, ACTIONS(14515), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148835] = 2, ACTIONS(10648), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148843] = 2, ACTIONS(11842), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148851] = 2, ACTIONS(14517), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148859] = 2, ACTIONS(11830), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148867] = 2, ACTIONS(14519), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148875] = 2, ACTIONS(7640), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148883] = 2, ACTIONS(14521), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148891] = 2, ACTIONS(14523), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148899] = 2, ACTIONS(11821), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148907] = 2, ACTIONS(11809), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148915] = 2, ACTIONS(14525), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148923] = 2, ACTIONS(14527), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148931] = 2, ACTIONS(14529), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148939] = 2, ACTIONS(14531), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148947] = 2, ACTIONS(14533), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148955] = 2, ACTIONS(14535), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148963] = 2, ACTIONS(11271), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [148971] = 2, ACTIONS(14537), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148979] = 2, ACTIONS(14539), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [148987] = 2, ACTIONS(10831), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [148995] = 2, ACTIONS(14541), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149003] = 2, ACTIONS(11766), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149011] = 2, ACTIONS(9567), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149019] = 2, ACTIONS(14543), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149027] = 2, ACTIONS(14545), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149035] = 2, ACTIONS(14547), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149043] = 2, ACTIONS(14549), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149051] = 2, ACTIONS(14551), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149059] = 2, ACTIONS(14553), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149067] = 2, ACTIONS(14555), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149075] = 2, ACTIONS(14557), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149083] = 2, ACTIONS(7571), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149091] = 2, ACTIONS(14559), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [149099] = 2, ACTIONS(14561), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149107] = 2, ACTIONS(14563), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149115] = 2, ACTIONS(14565), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149123] = 2, ACTIONS(14567), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [149131] = 2, ACTIONS(14569), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149139] = 2, ACTIONS(7587), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149147] = 2, ACTIONS(14571), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149155] = 2, ACTIONS(9719), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149163] = 2, ACTIONS(14573), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149171] = 2, ACTIONS(14575), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149179] = 2, ACTIONS(14577), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [149187] = 2, ACTIONS(14579), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [149195] = 2, ACTIONS(14581), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [149203] = 2, ACTIONS(14583), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149211] = 2, ACTIONS(14585), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149219] = 2, ACTIONS(14587), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149227] = 2, ACTIONS(14589), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149235] = 2, ACTIONS(14591), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [149243] = 2, ACTIONS(14593), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [149251] = 2, ACTIONS(14595), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [149259] = 2, ACTIONS(14593), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [149267] = 2, ACTIONS(14597), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149275] = 2, ACTIONS(8387), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149283] = 2, ACTIONS(14599), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149291] = 2, ACTIONS(14601), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149299] = 2, ACTIONS(14603), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149307] = 2, ACTIONS(14605), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149315] = 2, ACTIONS(14607), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149323] = 2, ACTIONS(14609), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149331] = 2, ACTIONS(14611), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [149339] = 2, ACTIONS(14613), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149347] = 2, ACTIONS(14615), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149355] = 2, ACTIONS(14617), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [149363] = 2, ACTIONS(10692), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149371] = 2, ACTIONS(14619), 1, sym_while, ACTIONS(3), 2, sym_directive, sym_comment, [149379] = 2, ACTIONS(7597), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149387] = 2, ACTIONS(14617), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [149395] = 2, ACTIONS(14621), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [149403] = 2, ACTIONS(14623), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [149411] = 2, ACTIONS(14625), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [149419] = 2, ACTIONS(14627), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149427] = 2, ACTIONS(14629), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [149435] = 2, ACTIONS(14631), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149443] = 2, ACTIONS(14633), 1, sym_case, ACTIONS(3), 2, sym_directive, sym_comment, [149451] = 2, ACTIONS(11686), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149459] = 2, ACTIONS(14635), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149467] = 2, ACTIONS(14637), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149475] = 2, ACTIONS(14639), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149483] = 2, ACTIONS(14641), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149491] = 2, ACTIONS(14643), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149499] = 2, ACTIONS(14645), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149507] = 2, ACTIONS(14647), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149515] = 2, ACTIONS(14649), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149523] = 2, ACTIONS(11670), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149531] = 2, ACTIONS(7630), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149539] = 2, ACTIONS(14651), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149547] = 2, ACTIONS(14653), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149555] = 2, ACTIONS(14655), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [149563] = 2, ACTIONS(14657), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149571] = 2, ACTIONS(14659), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [149579] = 2, ACTIONS(14661), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149587] = 2, ACTIONS(14663), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149595] = 2, ACTIONS(14665), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149603] = 2, ACTIONS(2788), 1, anon_sym_RBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [149611] = 2, ACTIONS(14667), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149619] = 2, ACTIONS(14669), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149627] = 2, ACTIONS(14671), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149635] = 2, ACTIONS(14673), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149643] = 2, ACTIONS(14675), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149651] = 2, ACTIONS(14677), 1, sym_while, ACTIONS(3), 2, sym_directive, sym_comment, [149659] = 2, ACTIONS(3177), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149667] = 2, ACTIONS(14679), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [149675] = 2, ACTIONS(14681), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149683] = 2, ACTIONS(14683), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149691] = 2, ACTIONS(10851), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149699] = 2, ACTIONS(14685), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149707] = 2, ACTIONS(14687), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149715] = 2, ACTIONS(9583), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149723] = 2, ACTIONS(14689), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149731] = 2, ACTIONS(14691), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149739] = 2, ACTIONS(14693), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149747] = 2, ACTIONS(14695), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149755] = 2, ACTIONS(14697), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149763] = 2, ACTIONS(14699), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149771] = 2, ACTIONS(14701), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149779] = 2, ACTIONS(14703), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149787] = 2, ACTIONS(14705), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149795] = 2, ACTIONS(14707), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [149803] = 2, ACTIONS(14709), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149811] = 2, ACTIONS(14711), 1, sym_while, ACTIONS(3), 2, sym_directive, sym_comment, [149819] = 2, ACTIONS(14713), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149827] = 2, ACTIONS(14715), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [149835] = 2, ACTIONS(14717), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [149843] = 2, ACTIONS(14719), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149851] = 2, ACTIONS(14721), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149859] = 2, ACTIONS(14723), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149867] = 2, ACTIONS(14725), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149875] = 2, ACTIONS(14727), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149883] = 2, ACTIONS(10670), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149891] = 2, ACTIONS(14729), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [149899] = 2, ACTIONS(14731), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149907] = 2, ACTIONS(14733), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149915] = 2, ACTIONS(14735), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149923] = 2, ACTIONS(14737), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149931] = 2, ACTIONS(14739), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149939] = 2, ACTIONS(14741), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [149947] = 2, ACTIONS(14743), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149955] = 2, ACTIONS(14745), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149963] = 2, ACTIONS(12895), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149971] = 2, ACTIONS(9805), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149979] = 2, ACTIONS(14747), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [149987] = 2, ACTIONS(14749), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [149995] = 2, ACTIONS(14751), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [150003] = 2, ACTIONS(14753), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150011] = 2, ACTIONS(14755), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150019] = 2, ACTIONS(14757), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [150027] = 2, ACTIONS(14759), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150035] = 2, ACTIONS(14761), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [150043] = 2, ACTIONS(14763), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150051] = 2, ACTIONS(14765), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150059] = 2, ACTIONS(10881), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150067] = 2, ACTIONS(14767), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150075] = 2, ACTIONS(10652), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150083] = 2, ACTIONS(14769), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150091] = 2, ACTIONS(14771), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150099] = 2, ACTIONS(14773), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [150107] = 2, ACTIONS(14775), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150115] = 2, ACTIONS(14777), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150123] = 2, ACTIONS(14779), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150131] = 2, ACTIONS(7636), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150139] = 2, ACTIONS(14781), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150147] = 2, ACTIONS(14783), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150155] = 2, ACTIONS(14785), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150163] = 2, ACTIONS(14787), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150171] = 2, ACTIONS(9651), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150179] = 2, ACTIONS(14789), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150187] = 2, ACTIONS(14791), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150195] = 2, ACTIONS(14793), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150203] = 2, ACTIONS(14795), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150211] = 2, ACTIONS(14797), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150219] = 2, ACTIONS(14799), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150227] = 2, ACTIONS(14801), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150235] = 2, ACTIONS(14803), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [150243] = 2, ACTIONS(12977), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150251] = 2, ACTIONS(14805), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150259] = 2, ACTIONS(7585), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150267] = 2, ACTIONS(14807), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150275] = 2, ACTIONS(14809), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150283] = 2, ACTIONS(14811), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150291] = 2, ACTIONS(14813), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150299] = 2, ACTIONS(14815), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150307] = 2, ACTIONS(14817), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [150315] = 2, ACTIONS(14819), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150323] = 2, ACTIONS(14821), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150331] = 2, ACTIONS(14823), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150339] = 2, ACTIONS(14825), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150347] = 2, ACTIONS(14827), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150355] = 2, ACTIONS(14829), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150363] = 2, ACTIONS(14831), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [150371] = 2, ACTIONS(10885), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150379] = 2, ACTIONS(14833), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150387] = 2, ACTIONS(9825), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150395] = 2, ACTIONS(14835), 1, anon_sym_RBRACK, ACTIONS(3), 2, sym_directive, sym_comment, [150403] = 2, ACTIONS(14837), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150411] = 2, ACTIONS(14839), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150419] = 2, ACTIONS(11364), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150427] = 2, ACTIONS(14841), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150435] = 2, ACTIONS(14843), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150443] = 2, ACTIONS(10871), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150451] = 2, ACTIONS(14845), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150459] = 2, ACTIONS(14847), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150467] = 2, ACTIONS(14849), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [150475] = 2, ACTIONS(14851), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150483] = 2, ACTIONS(14853), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150491] = 2, ACTIONS(14855), 1, anon_sym_DOT_DOT, ACTIONS(3), 2, sym_directive, sym_comment, [150499] = 2, ACTIONS(14857), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150507] = 2, ACTIONS(14859), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150515] = 2, ACTIONS(14861), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150523] = 2, ACTIONS(14863), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150531] = 2, ACTIONS(14865), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [150539] = 2, ACTIONS(14867), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150547] = 2, ACTIONS(7646), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150555] = 2, ACTIONS(14869), 1, anon_sym_DASH, ACTIONS(3), 2, sym_directive, sym_comment, [150563] = 2, ACTIONS(9715), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150571] = 2, ACTIONS(14871), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150579] = 2, ACTIONS(14873), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150587] = 2, ACTIONS(14875), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150595] = 2, ACTIONS(14877), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150603] = 2, ACTIONS(14879), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [150611] = 2, ACTIONS(14881), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150619] = 2, ACTIONS(7624), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150627] = 2, ACTIONS(14883), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150635] = 2, ACTIONS(14885), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150643] = 2, ACTIONS(11255), 1, anon_sym_EQ, ACTIONS(3), 2, sym_directive, sym_comment, [150651] = 2, ACTIONS(14887), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150659] = 2, ACTIONS(14889), 1, sym__after_eof, ACTIONS(3), 2, sym_directive, sym_comment, [150667] = 2, ACTIONS(14891), 1, anon_sym_SQUOTE, ACTIONS(3), 2, sym_directive, sym_comment, [150675] = 2, ACTIONS(14893), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [150683] = 2, ACTIONS(14895), 1, aux_sym_raw_string_token4, ACTIONS(3), 2, sym_directive, sym_comment, [150691] = 2, ACTIONS(14895), 1, aux_sym_raw_string_token2, ACTIONS(3), 2, sym_directive, sym_comment, [150699] = 2, ACTIONS(14897), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150707] = 2, ACTIONS(14899), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150715] = 2, ACTIONS(13037), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150723] = 2, ACTIONS(14901), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [150731] = 2, ACTIONS(14903), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150739] = 2, ACTIONS(14905), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150747] = 2, ACTIONS(14907), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150755] = 2, ACTIONS(14909), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150763] = 2, ACTIONS(14911), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150771] = 2, ACTIONS(14913), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150779] = 2, ACTIONS(14915), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150787] = 2, ACTIONS(14917), 1, sym_this, ACTIONS(3), 2, sym_directive, sym_comment, [150795] = 2, ACTIONS(14919), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150803] = 2, ACTIONS(14921), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150811] = 2, ACTIONS(14923), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150819] = 2, ACTIONS(10720), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150827] = 2, ACTIONS(14925), 1, anon_sym_LBRACE, ACTIONS(3), 2, sym_directive, sym_comment, [150835] = 2, ACTIONS(14927), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150843] = 2, ACTIONS(14929), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150851] = 2, ACTIONS(14931), 1, anon_sym_COLON, ACTIONS(3), 2, sym_directive, sym_comment, [150859] = 2, ACTIONS(14933), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150867] = 2, ACTIONS(14935), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [150875] = 2, ACTIONS(14937), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [150883] = 2, ACTIONS(14939), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150891] = 2, ACTIONS(14941), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150899] = 2, ACTIONS(14943), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150907] = 2, ACTIONS(14945), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150915] = 2, ACTIONS(14947), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150923] = 2, ACTIONS(14949), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150931] = 2, ACTIONS(14951), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150939] = 2, ACTIONS(14953), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150947] = 2, ACTIONS(14955), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150955] = 2, ACTIONS(14957), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150963] = 2, ACTIONS(14959), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150971] = 2, ACTIONS(14961), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150979] = 2, ACTIONS(14963), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150987] = 2, ACTIONS(14965), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [150995] = 2, ACTIONS(14967), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [151003] = 2, ACTIONS(14969), 1, anon_sym_LPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [151011] = 2, ACTIONS(14971), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [151019] = 2, ACTIONS(14973), 1, sym_identifier, ACTIONS(3), 2, sym_directive, sym_comment, [151027] = 2, ACTIONS(14975), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [151035] = 2, ACTIONS(11226), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, [151043] = 2, ACTIONS(9649), 1, anon_sym_SEMI, ACTIONS(3), 2, sym_directive, sym_comment, [151051] = 2, ACTIONS(14977), 1, anon_sym_RPAREN, ACTIONS(3), 2, sym_directive, sym_comment, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(3241)] = 0, [SMALL_STATE(3242)] = 71, [SMALL_STATE(3243)] = 142, [SMALL_STATE(3244)] = 213, [SMALL_STATE(3245)] = 284, [SMALL_STATE(3246)] = 355, [SMALL_STATE(3247)] = 426, [SMALL_STATE(3248)] = 497, [SMALL_STATE(3249)] = 568, [SMALL_STATE(3250)] = 647, [SMALL_STATE(3251)] = 718, [SMALL_STATE(3252)] = 789, [SMALL_STATE(3253)] = 860, [SMALL_STATE(3254)] = 931, [SMALL_STATE(3255)] = 1002, [SMALL_STATE(3256)] = 1073, [SMALL_STATE(3257)] = 1144, [SMALL_STATE(3258)] = 1215, [SMALL_STATE(3259)] = 1286, [SMALL_STATE(3260)] = 1357, [SMALL_STATE(3261)] = 1428, [SMALL_STATE(3262)] = 1499, [SMALL_STATE(3263)] = 1570, [SMALL_STATE(3264)] = 1641, [SMALL_STATE(3265)] = 1712, [SMALL_STATE(3266)] = 1783, [SMALL_STATE(3267)] = 1854, [SMALL_STATE(3268)] = 1925, [SMALL_STATE(3269)] = 1996, [SMALL_STATE(3270)] = 2067, [SMALL_STATE(3271)] = 2138, [SMALL_STATE(3272)] = 2209, [SMALL_STATE(3273)] = 2280, [SMALL_STATE(3274)] = 2384, [SMALL_STATE(3275)] = 2488, [SMALL_STATE(3276)] = 2592, [SMALL_STATE(3277)] = 2696, [SMALL_STATE(3278)] = 2770, [SMALL_STATE(3279)] = 2874, [SMALL_STATE(3280)] = 2978, [SMALL_STATE(3281)] = 3082, [SMALL_STATE(3282)] = 3186, [SMALL_STATE(3283)] = 3290, [SMALL_STATE(3284)] = 3394, [SMALL_STATE(3285)] = 3498, [SMALL_STATE(3286)] = 3602, [SMALL_STATE(3287)] = 3706, [SMALL_STATE(3288)] = 3810, [SMALL_STATE(3289)] = 3914, [SMALL_STATE(3290)] = 4018, [SMALL_STATE(3291)] = 4122, [SMALL_STATE(3292)] = 4226, [SMALL_STATE(3293)] = 4330, [SMALL_STATE(3294)] = 4434, [SMALL_STATE(3295)] = 4538, [SMALL_STATE(3296)] = 4642, [SMALL_STATE(3297)] = 4746, [SMALL_STATE(3298)] = 4850, [SMALL_STATE(3299)] = 4954, [SMALL_STATE(3300)] = 5058, [SMALL_STATE(3301)] = 5162, [SMALL_STATE(3302)] = 5266, [SMALL_STATE(3303)] = 5370, [SMALL_STATE(3304)] = 5474, [SMALL_STATE(3305)] = 5543, [SMALL_STATE(3306)] = 5612, [SMALL_STATE(3307)] = 5713, [SMALL_STATE(3308)] = 5814, [SMALL_STATE(3309)] = 5883, [SMALL_STATE(3310)] = 5984, [SMALL_STATE(3311)] = 6053, [SMALL_STATE(3312)] = 6122, [SMALL_STATE(3313)] = 6191, [SMALL_STATE(3314)] = 6292, [SMALL_STATE(3315)] = 6393, [SMALL_STATE(3316)] = 6468, [SMALL_STATE(3317)] = 6543, [SMALL_STATE(3318)] = 6644, [SMALL_STATE(3319)] = 6719, [SMALL_STATE(3320)] = 6820, [SMALL_STATE(3321)] = 6889, [SMALL_STATE(3322)] = 6958, [SMALL_STATE(3323)] = 7059, [SMALL_STATE(3324)] = 7128, [SMALL_STATE(3325)] = 7197, [SMALL_STATE(3326)] = 7298, [SMALL_STATE(3327)] = 7367, [SMALL_STATE(3328)] = 7436, [SMALL_STATE(3329)] = 7505, [SMALL_STATE(3330)] = 7606, [SMALL_STATE(3331)] = 7675, [SMALL_STATE(3332)] = 7744, [SMALL_STATE(3333)] = 7845, [SMALL_STATE(3334)] = 7946, [SMALL_STATE(3335)] = 8015, [SMALL_STATE(3336)] = 8084, [SMALL_STATE(3337)] = 8185, [SMALL_STATE(3338)] = 8254, [SMALL_STATE(3339)] = 8323, [SMALL_STATE(3340)] = 8392, [SMALL_STATE(3341)] = 8493, [SMALL_STATE(3342)] = 8562, [SMALL_STATE(3343)] = 8631, [SMALL_STATE(3344)] = 8700, [SMALL_STATE(3345)] = 8801, [SMALL_STATE(3346)] = 8902, [SMALL_STATE(3347)] = 8971, [SMALL_STATE(3348)] = 9072, [SMALL_STATE(3349)] = 9173, [SMALL_STATE(3350)] = 9274, [SMALL_STATE(3351)] = 9343, [SMALL_STATE(3352)] = 9412, [SMALL_STATE(3353)] = 9513, [SMALL_STATE(3354)] = 9582, [SMALL_STATE(3355)] = 9683, [SMALL_STATE(3356)] = 9752, [SMALL_STATE(3357)] = 9825, [SMALL_STATE(3358)] = 9926, [SMALL_STATE(3359)] = 9995, [SMALL_STATE(3360)] = 10096, [SMALL_STATE(3361)] = 10197, [SMALL_STATE(3362)] = 10298, [SMALL_STATE(3363)] = 10367, [SMALL_STATE(3364)] = 10436, [SMALL_STATE(3365)] = 10504, [SMALL_STATE(3366)] = 10578, [SMALL_STATE(3367)] = 10646, [SMALL_STATE(3368)] = 10714, [SMALL_STATE(3369)] = 10782, [SMALL_STATE(3370)] = 10850, [SMALL_STATE(3371)] = 10918, [SMALL_STATE(3372)] = 10986, [SMALL_STATE(3373)] = 11054, [SMALL_STATE(3374)] = 11122, [SMALL_STATE(3375)] = 11190, [SMALL_STATE(3376)] = 11258, [SMALL_STATE(3377)] = 11326, [SMALL_STATE(3378)] = 11394, [SMALL_STATE(3379)] = 11462, [SMALL_STATE(3380)] = 11530, [SMALL_STATE(3381)] = 11598, [SMALL_STATE(3382)] = 11666, [SMALL_STATE(3383)] = 11734, [SMALL_STATE(3384)] = 11802, [SMALL_STATE(3385)] = 11870, [SMALL_STATE(3386)] = 11946, [SMALL_STATE(3387)] = 12014, [SMALL_STATE(3388)] = 12082, [SMALL_STATE(3389)] = 12150, [SMALL_STATE(3390)] = 12218, [SMALL_STATE(3391)] = 12286, [SMALL_STATE(3392)] = 12354, [SMALL_STATE(3393)] = 12422, [SMALL_STATE(3394)] = 12490, [SMALL_STATE(3395)] = 12558, [SMALL_STATE(3396)] = 12626, [SMALL_STATE(3397)] = 12694, [SMALL_STATE(3398)] = 12791, [SMALL_STATE(3399)] = 12888, [SMALL_STATE(3400)] = 12985, [SMALL_STATE(3401)] = 13082, [SMALL_STATE(3402)] = 13179, [SMALL_STATE(3403)] = 13276, [SMALL_STATE(3404)] = 13373, [SMALL_STATE(3405)] = 13470, [SMALL_STATE(3406)] = 13567, [SMALL_STATE(3407)] = 13664, [SMALL_STATE(3408)] = 13761, [SMALL_STATE(3409)] = 13858, [SMALL_STATE(3410)] = 13931, [SMALL_STATE(3411)] = 14028, [SMALL_STATE(3412)] = 14125, [SMALL_STATE(3413)] = 14222, [SMALL_STATE(3414)] = 14319, [SMALL_STATE(3415)] = 14416, [SMALL_STATE(3416)] = 14513, [SMALL_STATE(3417)] = 14610, [SMALL_STATE(3418)] = 14683, [SMALL_STATE(3419)] = 14780, [SMALL_STATE(3420)] = 14877, [SMALL_STATE(3421)] = 14950, [SMALL_STATE(3422)] = 15047, [SMALL_STATE(3423)] = 15144, [SMALL_STATE(3424)] = 15217, [SMALL_STATE(3425)] = 15314, [SMALL_STATE(3426)] = 15411, [SMALL_STATE(3427)] = 15480, [SMALL_STATE(3428)] = 15577, [SMALL_STATE(3429)] = 15674, [SMALL_STATE(3430)] = 15771, [SMALL_STATE(3431)] = 15868, [SMALL_STATE(3432)] = 15965, [SMALL_STATE(3433)] = 16062, [SMALL_STATE(3434)] = 16159, [SMALL_STATE(3435)] = 16256, [SMALL_STATE(3436)] = 16353, [SMALL_STATE(3437)] = 16419, [SMALL_STATE(3438)] = 16485, [SMALL_STATE(3439)] = 16551, [SMALL_STATE(3440)] = 16617, [SMALL_STATE(3441)] = 16683, [SMALL_STATE(3442)] = 16749, [SMALL_STATE(3443)] = 16821, [SMALL_STATE(3444)] = 16887, [SMALL_STATE(3445)] = 16953, [SMALL_STATE(3446)] = 17025, [SMALL_STATE(3447)] = 17097, [SMALL_STATE(3448)] = 17163, [SMALL_STATE(3449)] = 17229, [SMALL_STATE(3450)] = 17295, [SMALL_STATE(3451)] = 17361, [SMALL_STATE(3452)] = 17431, [SMALL_STATE(3453)] = 17497, [SMALL_STATE(3454)] = 17563, [SMALL_STATE(3455)] = 17637, [SMALL_STATE(3456)] = 17703, [SMALL_STATE(3457)] = 17769, [SMALL_STATE(3458)] = 17835, [SMALL_STATE(3459)] = 17935, [SMALL_STATE(3460)] = 18019, [SMALL_STATE(3461)] = 18113, [SMALL_STATE(3462)] = 18179, [SMALL_STATE(3463)] = 18245, [SMALL_STATE(3464)] = 18311, [SMALL_STATE(3465)] = 18376, [SMALL_STATE(3466)] = 18473, [SMALL_STATE(3467)] = 18560, [SMALL_STATE(3468)] = 18657, [SMALL_STATE(3469)] = 18722, [SMALL_STATE(3470)] = 18819, [SMALL_STATE(3471)] = 18916, [SMALL_STATE(3472)] = 18981, [SMALL_STATE(3473)] = 19062, [SMALL_STATE(3474)] = 19159, [SMALL_STATE(3475)] = 19232, [SMALL_STATE(3476)] = 19329, [SMALL_STATE(3477)] = 19426, [SMALL_STATE(3478)] = 19491, [SMALL_STATE(3479)] = 19556, [SMALL_STATE(3480)] = 19653, [SMALL_STATE(3481)] = 19718, [SMALL_STATE(3482)] = 19815, [SMALL_STATE(3483)] = 19880, [SMALL_STATE(3484)] = 19977, [SMALL_STATE(3485)] = 20042, [SMALL_STATE(3486)] = 20107, [SMALL_STATE(3487)] = 20204, [SMALL_STATE(3488)] = 20269, [SMALL_STATE(3489)] = 20355, [SMALL_STATE(3490)] = 20423, [SMALL_STATE(3491)] = 20497, [SMALL_STATE(3492)] = 20571, [SMALL_STATE(3493)] = 20657, [SMALL_STATE(3494)] = 20731, [SMALL_STATE(3495)] = 20805, [SMALL_STATE(3496)] = 20899, [SMALL_STATE(3497)] = 20985, [SMALL_STATE(3498)] = 21059, [SMALL_STATE(3499)] = 21123, [SMALL_STATE(3500)] = 21195, [SMALL_STATE(3501)] = 21281, [SMALL_STATE(3502)] = 21345, [SMALL_STATE(3503)] = 21431, [SMALL_STATE(3504)] = 21517, [SMALL_STATE(3505)] = 21581, [SMALL_STATE(3506)] = 21644, [SMALL_STATE(3507)] = 21707, [SMALL_STATE(3508)] = 21770, [SMALL_STATE(3509)] = 21833, [SMALL_STATE(3510)] = 21916, [SMALL_STATE(3511)] = 21979, [SMALL_STATE(3512)] = 22042, [SMALL_STATE(3513)] = 22105, [SMALL_STATE(3514)] = 22168, [SMALL_STATE(3515)] = 22231, [SMALL_STATE(3516)] = 22304, [SMALL_STATE(3517)] = 22367, [SMALL_STATE(3518)] = 22430, [SMALL_STATE(3519)] = 22493, [SMALL_STATE(3520)] = 22556, [SMALL_STATE(3521)] = 22619, [SMALL_STATE(3522)] = 22700, [SMALL_STATE(3523)] = 22763, [SMALL_STATE(3524)] = 22826, [SMALL_STATE(3525)] = 22917, [SMALL_STATE(3526)] = 22984, [SMALL_STATE(3527)] = 23047, [SMALL_STATE(3528)] = 23110, [SMALL_STATE(3529)] = 23173, [SMALL_STATE(3530)] = 23236, [SMALL_STATE(3531)] = 23299, [SMALL_STATE(3532)] = 23380, [SMALL_STATE(3533)] = 23443, [SMALL_STATE(3534)] = 23506, [SMALL_STATE(3535)] = 23569, [SMALL_STATE(3536)] = 23632, [SMALL_STATE(3537)] = 23695, [SMALL_STATE(3538)] = 23758, [SMALL_STATE(3539)] = 23821, [SMALL_STATE(3540)] = 23894, [SMALL_STATE(3541)] = 23957, [SMALL_STATE(3542)] = 24020, [SMALL_STATE(3543)] = 24083, [SMALL_STATE(3544)] = 24146, [SMALL_STATE(3545)] = 24209, [SMALL_STATE(3546)] = 24272, [SMALL_STATE(3547)] = 24335, [SMALL_STATE(3548)] = 24398, [SMALL_STATE(3549)] = 24461, [SMALL_STATE(3550)] = 24542, [SMALL_STATE(3551)] = 24605, [SMALL_STATE(3552)] = 24668, [SMALL_STATE(3553)] = 24731, [SMALL_STATE(3554)] = 24794, [SMALL_STATE(3555)] = 24885, [SMALL_STATE(3556)] = 24948, [SMALL_STATE(3557)] = 25031, [SMALL_STATE(3558)] = 25126, [SMALL_STATE(3559)] = 25221, [SMALL_STATE(3560)] = 25312, [SMALL_STATE(3561)] = 25375, [SMALL_STATE(3562)] = 25438, [SMALL_STATE(3563)] = 25533, [SMALL_STATE(3564)] = 25596, [SMALL_STATE(3565)] = 25659, [SMALL_STATE(3566)] = 25722, [SMALL_STATE(3567)] = 25785, [SMALL_STATE(3568)] = 25848, [SMALL_STATE(3569)] = 25911, [SMALL_STATE(3570)] = 25974, [SMALL_STATE(3571)] = 26069, [SMALL_STATE(3572)] = 26164, [SMALL_STATE(3573)] = 26227, [SMALL_STATE(3574)] = 26298, [SMALL_STATE(3575)] = 26361, [SMALL_STATE(3576)] = 26456, [SMALL_STATE(3577)] = 26519, [SMALL_STATE(3578)] = 26592, [SMALL_STATE(3579)] = 26665, [SMALL_STATE(3580)] = 26727, [SMALL_STATE(3581)] = 26789, [SMALL_STATE(3582)] = 26867, [SMALL_STATE(3583)] = 26929, [SMALL_STATE(3584)] = 27017, [SMALL_STATE(3585)] = 27079, [SMALL_STATE(3586)] = 27141, [SMALL_STATE(3587)] = 27203, [SMALL_STATE(3588)] = 27269, [SMALL_STATE(3589)] = 27337, [SMALL_STATE(3590)] = 27405, [SMALL_STATE(3591)] = 27467, [SMALL_STATE(3592)] = 27529, [SMALL_STATE(3593)] = 27597, [SMALL_STATE(3594)] = 27659, [SMALL_STATE(3595)] = 27721, [SMALL_STATE(3596)] = 27793, [SMALL_STATE(3597)] = 27855, [SMALL_STATE(3598)] = 27943, [SMALL_STATE(3599)] = 28015, [SMALL_STATE(3600)] = 28077, [SMALL_STATE(3601)] = 28139, [SMALL_STATE(3602)] = 28201, [SMALL_STATE(3603)] = 28267, [SMALL_STATE(3604)] = 28329, [SMALL_STATE(3605)] = 28401, [SMALL_STATE(3606)] = 28465, [SMALL_STATE(3607)] = 28537, [SMALL_STATE(3608)] = 28619, [SMALL_STATE(3609)] = 28681, [SMALL_STATE(3610)] = 28753, [SMALL_STATE(3611)] = 28817, [SMALL_STATE(3612)] = 28887, [SMALL_STATE(3613)] = 28967, [SMALL_STATE(3614)] = 29049, [SMALL_STATE(3615)] = 29137, [SMALL_STATE(3616)] = 29201, [SMALL_STATE(3617)] = 29263, [SMALL_STATE(3618)] = 29325, [SMALL_STATE(3619)] = 29387, [SMALL_STATE(3620)] = 29449, [SMALL_STATE(3621)] = 29531, [SMALL_STATE(3622)] = 29602, [SMALL_STATE(3623)] = 29687, [SMALL_STATE(3624)] = 29772, [SMALL_STATE(3625)] = 29857, [SMALL_STATE(3626)] = 29942, [SMALL_STATE(3627)] = 30027, [SMALL_STATE(3628)] = 30112, [SMALL_STATE(3629)] = 30197, [SMALL_STATE(3630)] = 30268, [SMALL_STATE(3631)] = 30353, [SMALL_STATE(3632)] = 30438, [SMALL_STATE(3633)] = 30501, [SMALL_STATE(3634)] = 30586, [SMALL_STATE(3635)] = 30671, [SMALL_STATE(3636)] = 30746, [SMALL_STATE(3637)] = 30831, [SMALL_STATE(3638)] = 30916, [SMALL_STATE(3639)] = 31001, [SMALL_STATE(3640)] = 31086, [SMALL_STATE(3641)] = 31155, [SMALL_STATE(3642)] = 31240, [SMALL_STATE(3643)] = 31311, [SMALL_STATE(3644)] = 31396, [SMALL_STATE(3645)] = 31481, [SMALL_STATE(3646)] = 31566, [SMALL_STATE(3647)] = 31651, [SMALL_STATE(3648)] = 31736, [SMALL_STATE(3649)] = 31799, [SMALL_STATE(3650)] = 31884, [SMALL_STATE(3651)] = 31969, [SMALL_STATE(3652)] = 32032, [SMALL_STATE(3653)] = 32117, [SMALL_STATE(3654)] = 32188, [SMALL_STATE(3655)] = 32273, [SMALL_STATE(3656)] = 32358, [SMALL_STATE(3657)] = 32443, [SMALL_STATE(3658)] = 32528, [SMALL_STATE(3659)] = 32613, [SMALL_STATE(3660)] = 32698, [SMALL_STATE(3661)] = 32783, [SMALL_STATE(3662)] = 32868, [SMALL_STATE(3663)] = 32953, [SMALL_STATE(3664)] = 33038, [SMALL_STATE(3665)] = 33123, [SMALL_STATE(3666)] = 33208, [SMALL_STATE(3667)] = 33279, [SMALL_STATE(3668)] = 33350, [SMALL_STATE(3669)] = 33435, [SMALL_STATE(3670)] = 33510, [SMALL_STATE(3671)] = 33595, [SMALL_STATE(3672)] = 33680, [SMALL_STATE(3673)] = 33765, [SMALL_STATE(3674)] = 33850, [SMALL_STATE(3675)] = 33935, [SMALL_STATE(3676)] = 34020, [SMALL_STATE(3677)] = 34091, [SMALL_STATE(3678)] = 34176, [SMALL_STATE(3679)] = 34261, [SMALL_STATE(3680)] = 34346, [SMALL_STATE(3681)] = 34409, [SMALL_STATE(3682)] = 34494, [SMALL_STATE(3683)] = 34579, [SMALL_STATE(3684)] = 34664, [SMALL_STATE(3685)] = 34749, [SMALL_STATE(3686)] = 34834, [SMALL_STATE(3687)] = 34919, [SMALL_STATE(3688)] = 34990, [SMALL_STATE(3689)] = 35075, [SMALL_STATE(3690)] = 35160, [SMALL_STATE(3691)] = 35231, [SMALL_STATE(3692)] = 35316, [SMALL_STATE(3693)] = 35401, [SMALL_STATE(3694)] = 35486, [SMALL_STATE(3695)] = 35571, [SMALL_STATE(3696)] = 35656, [SMALL_STATE(3697)] = 35741, [SMALL_STATE(3698)] = 35812, [SMALL_STATE(3699)] = 35877, [SMALL_STATE(3700)] = 35962, [SMALL_STATE(3701)] = 36047, [SMALL_STATE(3702)] = 36132, [SMALL_STATE(3703)] = 36203, [SMALL_STATE(3704)] = 36288, [SMALL_STATE(3705)] = 36373, [SMALL_STATE(3706)] = 36458, [SMALL_STATE(3707)] = 36543, [SMALL_STATE(3708)] = 36628, [SMALL_STATE(3709)] = 36707, [SMALL_STATE(3710)] = 36792, [SMALL_STATE(3711)] = 36867, [SMALL_STATE(3712)] = 36952, [SMALL_STATE(3713)] = 37027, [SMALL_STATE(3714)] = 37112, [SMALL_STATE(3715)] = 37197, [SMALL_STATE(3716)] = 37282, [SMALL_STATE(3717)] = 37367, [SMALL_STATE(3718)] = 37452, [SMALL_STATE(3719)] = 37537, [SMALL_STATE(3720)] = 37622, [SMALL_STATE(3721)] = 37707, [SMALL_STATE(3722)] = 37792, [SMALL_STATE(3723)] = 37877, [SMALL_STATE(3724)] = 37962, [SMALL_STATE(3725)] = 38047, [SMALL_STATE(3726)] = 38122, [SMALL_STATE(3727)] = 38207, [SMALL_STATE(3728)] = 38292, [SMALL_STATE(3729)] = 38363, [SMALL_STATE(3730)] = 38448, [SMALL_STATE(3731)] = 38533, [SMALL_STATE(3732)] = 38618, [SMALL_STATE(3733)] = 38703, [SMALL_STATE(3734)] = 38788, [SMALL_STATE(3735)] = 38873, [SMALL_STATE(3736)] = 38958, [SMALL_STATE(3737)] = 39043, [SMALL_STATE(3738)] = 39128, [SMALL_STATE(3739)] = 39213, [SMALL_STATE(3740)] = 39298, [SMALL_STATE(3741)] = 39383, [SMALL_STATE(3742)] = 39468, [SMALL_STATE(3743)] = 39553, [SMALL_STATE(3744)] = 39638, [SMALL_STATE(3745)] = 39723, [SMALL_STATE(3746)] = 39808, [SMALL_STATE(3747)] = 39893, [SMALL_STATE(3748)] = 39978, [SMALL_STATE(3749)] = 40063, [SMALL_STATE(3750)] = 40148, [SMALL_STATE(3751)] = 40233, [SMALL_STATE(3752)] = 40318, [SMALL_STATE(3753)] = 40403, [SMALL_STATE(3754)] = 40488, [SMALL_STATE(3755)] = 40573, [SMALL_STATE(3756)] = 40658, [SMALL_STATE(3757)] = 40743, [SMALL_STATE(3758)] = 40828, [SMALL_STATE(3759)] = 40913, [SMALL_STATE(3760)] = 40998, [SMALL_STATE(3761)] = 41083, [SMALL_STATE(3762)] = 41168, [SMALL_STATE(3763)] = 41253, [SMALL_STATE(3764)] = 41338, [SMALL_STATE(3765)] = 41423, [SMALL_STATE(3766)] = 41508, [SMALL_STATE(3767)] = 41568, [SMALL_STATE(3768)] = 41628, [SMALL_STATE(3769)] = 41710, [SMALL_STATE(3770)] = 41774, [SMALL_STATE(3771)] = 41856, [SMALL_STATE(3772)] = 41926, [SMALL_STATE(3773)] = 41986, [SMALL_STATE(3774)] = 42046, [SMALL_STATE(3775)] = 42106, [SMALL_STATE(3776)] = 42176, [SMALL_STATE(3777)] = 42240, [SMALL_STATE(3778)] = 42308, [SMALL_STATE(3779)] = 42378, [SMALL_STATE(3780)] = 42460, [SMALL_STATE(3781)] = 42542, [SMALL_STATE(3782)] = 42624, [SMALL_STATE(3783)] = 42684, [SMALL_STATE(3784)] = 42766, [SMALL_STATE(3785)] = 42832, [SMALL_STATE(3786)] = 42892, [SMALL_STATE(3787)] = 42952, [SMALL_STATE(3788)] = 43014, [SMALL_STATE(3789)] = 43096, [SMALL_STATE(3790)] = 43156, [SMALL_STATE(3791)] = 43216, [SMALL_STATE(3792)] = 43276, [SMALL_STATE(3793)] = 43342, [SMALL_STATE(3794)] = 43406, [SMALL_STATE(3795)] = 43476, [SMALL_STATE(3796)] = 43536, [SMALL_STATE(3797)] = 43596, [SMALL_STATE(3798)] = 43656, [SMALL_STATE(3799)] = 43726, [SMALL_STATE(3800)] = 43808, [SMALL_STATE(3801)] = 43872, [SMALL_STATE(3802)] = 43934, [SMALL_STATE(3803)] = 43994, [SMALL_STATE(3804)] = 44068, [SMALL_STATE(3805)] = 44128, [SMALL_STATE(3806)] = 44188, [SMALL_STATE(3807)] = 44248, [SMALL_STATE(3808)] = 44308, [SMALL_STATE(3809)] = 44390, [SMALL_STATE(3810)] = 44452, [SMALL_STATE(3811)] = 44514, [SMALL_STATE(3812)] = 44576, [SMALL_STATE(3813)] = 44636, [SMALL_STATE(3814)] = 44698, [SMALL_STATE(3815)] = 44758, [SMALL_STATE(3816)] = 44818, [SMALL_STATE(3817)] = 44878, [SMALL_STATE(3818)] = 44940, [SMALL_STATE(3819)] = 45022, [SMALL_STATE(3820)] = 45082, [SMALL_STATE(3821)] = 45142, [SMALL_STATE(3822)] = 45202, [SMALL_STATE(3823)] = 45266, [SMALL_STATE(3824)] = 45326, [SMALL_STATE(3825)] = 45386, [SMALL_STATE(3826)] = 45456, [SMALL_STATE(3827)] = 45516, [SMALL_STATE(3828)] = 45576, [SMALL_STATE(3829)] = 45636, [SMALL_STATE(3830)] = 45696, [SMALL_STATE(3831)] = 45756, [SMALL_STATE(3832)] = 45816, [SMALL_STATE(3833)] = 45876, [SMALL_STATE(3834)] = 45958, [SMALL_STATE(3835)] = 46018, [SMALL_STATE(3836)] = 46078, [SMALL_STATE(3837)] = 46148, [SMALL_STATE(3838)] = 46208, [SMALL_STATE(3839)] = 46268, [SMALL_STATE(3840)] = 46328, [SMALL_STATE(3841)] = 46388, [SMALL_STATE(3842)] = 46448, [SMALL_STATE(3843)] = 46508, [SMALL_STATE(3844)] = 46568, [SMALL_STATE(3845)] = 46628, [SMALL_STATE(3846)] = 46688, [SMALL_STATE(3847)] = 46748, [SMALL_STATE(3848)] = 46808, [SMALL_STATE(3849)] = 46868, [SMALL_STATE(3850)] = 46928, [SMALL_STATE(3851)] = 46988, [SMALL_STATE(3852)] = 47050, [SMALL_STATE(3853)] = 47110, [SMALL_STATE(3854)] = 47170, [SMALL_STATE(3855)] = 47230, [SMALL_STATE(3856)] = 47290, [SMALL_STATE(3857)] = 47350, [SMALL_STATE(3858)] = 47410, [SMALL_STATE(3859)] = 47470, [SMALL_STATE(3860)] = 47530, [SMALL_STATE(3861)] = 47590, [SMALL_STATE(3862)] = 47650, [SMALL_STATE(3863)] = 47709, [SMALL_STATE(3864)] = 47786, [SMALL_STATE(3865)] = 47853, [SMALL_STATE(3866)] = 47918, [SMALL_STATE(3867)] = 47985, [SMALL_STATE(3868)] = 48046, [SMALL_STATE(3869)] = 48115, [SMALL_STATE(3870)] = 48176, [SMALL_STATE(3871)] = 48241, [SMALL_STATE(3872)] = 48302, [SMALL_STATE(3873)] = 48363, [SMALL_STATE(3874)] = 48424, [SMALL_STATE(3875)] = 48485, [SMALL_STATE(3876)] = 48574, [SMALL_STATE(3877)] = 48635, [SMALL_STATE(3878)] = 48702, [SMALL_STATE(3879)] = 48769, [SMALL_STATE(3880)] = 48834, [SMALL_STATE(3881)] = 48893, [SMALL_STATE(3882)] = 48960, [SMALL_STATE(3883)] = 49019, [SMALL_STATE(3884)] = 49086, [SMALL_STATE(3885)] = 49153, [SMALL_STATE(3886)] = 49218, [SMALL_STATE(3887)] = 49283, [SMALL_STATE(3888)] = 49350, [SMALL_STATE(3889)] = 49417, [SMALL_STATE(3890)] = 49480, [SMALL_STATE(3891)] = 49547, [SMALL_STATE(3892)] = 49628, [SMALL_STATE(3893)] = 49707, [SMALL_STATE(3894)] = 49776, [SMALL_STATE(3895)] = 49859, [SMALL_STATE(3896)] = 49934, [SMALL_STATE(3897)] = 50003, [SMALL_STATE(3898)] = 50092, [SMALL_STATE(3899)] = 50153, [SMALL_STATE(3900)] = 50220, [SMALL_STATE(3901)] = 50281, [SMALL_STATE(3902)] = 50350, [SMALL_STATE(3903)] = 50417, [SMALL_STATE(3904)] = 50476, [SMALL_STATE(3905)] = 50535, [SMALL_STATE(3906)] = 50622, [SMALL_STATE(3907)] = 50689, [SMALL_STATE(3908)] = 50758, [SMALL_STATE(3909)] = 50819, [SMALL_STATE(3910)] = 50882, [SMALL_STATE(3911)] = 50947, [SMALL_STATE(3912)] = 51006, [SMALL_STATE(3913)] = 51075, [SMALL_STATE(3914)] = 51142, [SMALL_STATE(3915)] = 51209, [SMALL_STATE(3916)] = 51276, [SMALL_STATE(3917)] = 51363, [SMALL_STATE(3918)] = 51426, [SMALL_STATE(3919)] = 51513, [SMALL_STATE(3920)] = 51572, [SMALL_STATE(3921)] = 51631, [SMALL_STATE(3922)] = 51690, [SMALL_STATE(3923)] = 51757, [SMALL_STATE(3924)] = 51844, [SMALL_STATE(3925)] = 51931, [SMALL_STATE(3926)] = 51990, [SMALL_STATE(3927)] = 52049, [SMALL_STATE(3928)] = 52116, [SMALL_STATE(3929)] = 52181, [SMALL_STATE(3930)] = 52239, [SMALL_STATE(3931)] = 52297, [SMALL_STATE(3932)] = 52355, [SMALL_STATE(3933)] = 52413, [SMALL_STATE(3934)] = 52481, [SMALL_STATE(3935)] = 52549, [SMALL_STATE(3936)] = 52617, [SMALL_STATE(3937)] = 52679, [SMALL_STATE(3938)] = 52737, [SMALL_STATE(3939)] = 52795, [SMALL_STATE(3940)] = 52853, [SMALL_STATE(3941)] = 52917, [SMALL_STATE(3942)] = 52975, [SMALL_STATE(3943)] = 53033, [SMALL_STATE(3944)] = 53091, [SMALL_STATE(3945)] = 53149, [SMALL_STATE(3946)] = 53209, [SMALL_STATE(3947)] = 53267, [SMALL_STATE(3948)] = 53331, [SMALL_STATE(3949)] = 53389, [SMALL_STATE(3950)] = 53449, [SMALL_STATE(3951)] = 53515, [SMALL_STATE(3952)] = 53575, [SMALL_STATE(3953)] = 53633, [SMALL_STATE(3954)] = 53699, [SMALL_STATE(3955)] = 53759, [SMALL_STATE(3956)] = 53827, [SMALL_STATE(3957)] = 53891, [SMALL_STATE(3958)] = 53949, [SMALL_STATE(3959)] = 54007, [SMALL_STATE(3960)] = 54065, [SMALL_STATE(3961)] = 54123, [SMALL_STATE(3962)] = 54181, [SMALL_STATE(3963)] = 54239, [SMALL_STATE(3964)] = 54305, [SMALL_STATE(3965)] = 54363, [SMALL_STATE(3966)] = 54421, [SMALL_STATE(3967)] = 54479, [SMALL_STATE(3968)] = 54537, [SMALL_STATE(3969)] = 54595, [SMALL_STATE(3970)] = 54653, [SMALL_STATE(3971)] = 54715, [SMALL_STATE(3972)] = 54773, [SMALL_STATE(3973)] = 54835, [SMALL_STATE(3974)] = 54893, [SMALL_STATE(3975)] = 54957, [SMALL_STATE(3976)] = 55015, [SMALL_STATE(3977)] = 55073, [SMALL_STATE(3978)] = 55141, [SMALL_STATE(3979)] = 55199, [SMALL_STATE(3980)] = 55257, [SMALL_STATE(3981)] = 55315, [SMALL_STATE(3982)] = 55373, [SMALL_STATE(3983)] = 55431, [SMALL_STATE(3984)] = 55489, [SMALL_STATE(3985)] = 55547, [SMALL_STATE(3986)] = 55605, [SMALL_STATE(3987)] = 55669, [SMALL_STATE(3988)] = 55727, [SMALL_STATE(3989)] = 55785, [SMALL_STATE(3990)] = 55853, [SMALL_STATE(3991)] = 55911, [SMALL_STATE(3992)] = 55969, [SMALL_STATE(3993)] = 56027, [SMALL_STATE(3994)] = 56085, [SMALL_STATE(3995)] = 56143, [SMALL_STATE(3996)] = 56201, [SMALL_STATE(3997)] = 56286, [SMALL_STATE(3998)] = 56375, [SMALL_STATE(3999)] = 56432, [SMALL_STATE(4000)] = 56489, [SMALL_STATE(4001)] = 56546, [SMALL_STATE(4002)] = 56603, [SMALL_STATE(4003)] = 56660, [SMALL_STATE(4004)] = 56719, [SMALL_STATE(4005)] = 56804, [SMALL_STATE(4006)] = 56861, [SMALL_STATE(4007)] = 56918, [SMALL_STATE(4008)] = 56975, [SMALL_STATE(4009)] = 57032, [SMALL_STATE(4010)] = 57089, [SMALL_STATE(4011)] = 57146, [SMALL_STATE(4012)] = 57235, [SMALL_STATE(4013)] = 57292, [SMALL_STATE(4014)] = 57349, [SMALL_STATE(4015)] = 57406, [SMALL_STATE(4016)] = 57463, [SMALL_STATE(4017)] = 57520, [SMALL_STATE(4018)] = 57585, [SMALL_STATE(4019)] = 57650, [SMALL_STATE(4020)] = 57709, [SMALL_STATE(4021)] = 57774, [SMALL_STATE(4022)] = 57863, [SMALL_STATE(4023)] = 57920, [SMALL_STATE(4024)] = 57993, [SMALL_STATE(4025)] = 58050, [SMALL_STATE(4026)] = 58107, [SMALL_STATE(4027)] = 58188, [SMALL_STATE(4028)] = 58245, [SMALL_STATE(4029)] = 58304, [SMALL_STATE(4030)] = 58361, [SMALL_STATE(4031)] = 58438, [SMALL_STATE(4032)] = 58523, [SMALL_STATE(4033)] = 58580, [SMALL_STATE(4034)] = 58637, [SMALL_STATE(4035)] = 58694, [SMALL_STATE(4036)] = 58751, [SMALL_STATE(4037)] = 58830, [SMALL_STATE(4038)] = 58891, [SMALL_STATE(4039)] = 58956, [SMALL_STATE(4040)] = 59045, [SMALL_STATE(4041)] = 59120, [SMALL_STATE(4042)] = 59205, [SMALL_STATE(4043)] = 59262, [SMALL_STATE(4044)] = 59347, [SMALL_STATE(4045)] = 59410, [SMALL_STATE(4046)] = 59467, [SMALL_STATE(4047)] = 59552, [SMALL_STATE(4048)] = 59617, [SMALL_STATE(4049)] = 59674, [SMALL_STATE(4050)] = 59749, [SMALL_STATE(4051)] = 59806, [SMALL_STATE(4052)] = 59863, [SMALL_STATE(4053)] = 59920, [SMALL_STATE(4054)] = 59977, [SMALL_STATE(4055)] = 60034, [SMALL_STATE(4056)] = 60091, [SMALL_STATE(4057)] = 60178, [SMALL_STATE(4058)] = 60253, [SMALL_STATE(4059)] = 60310, [SMALL_STATE(4060)] = 60375, [SMALL_STATE(4061)] = 60432, [SMALL_STATE(4062)] = 60495, [SMALL_STATE(4063)] = 60552, [SMALL_STATE(4064)] = 60637, [SMALL_STATE(4065)] = 60722, [SMALL_STATE(4066)] = 60779, [SMALL_STATE(4067)] = 60836, [SMALL_STATE(4068)] = 60893, [SMALL_STATE(4069)] = 60978, [SMALL_STATE(4070)] = 61043, [SMALL_STATE(4071)] = 61100, [SMALL_STATE(4072)] = 61185, [SMALL_STATE(4073)] = 61246, [SMALL_STATE(4074)] = 61325, [SMALL_STATE(4075)] = 61402, [SMALL_STATE(4076)] = 61459, [SMALL_STATE(4077)] = 61532, [SMALL_STATE(4078)] = 61589, [SMALL_STATE(4079)] = 61646, [SMALL_STATE(4080)] = 61727, [SMALL_STATE(4081)] = 61800, [SMALL_STATE(4082)] = 61887, [SMALL_STATE(4083)] = 61952, [SMALL_STATE(4084)] = 62011, [SMALL_STATE(4085)] = 62076, [SMALL_STATE(4086)] = 62157, [SMALL_STATE(4087)] = 62214, [SMALL_STATE(4088)] = 62291, [SMALL_STATE(4089)] = 62376, [SMALL_STATE(4090)] = 62433, [SMALL_STATE(4091)] = 62518, [SMALL_STATE(4092)] = 62603, [SMALL_STATE(4093)] = 62666, [SMALL_STATE(4094)] = 62751, [SMALL_STATE(4095)] = 62836, [SMALL_STATE(4096)] = 62915, [SMALL_STATE(4097)] = 62976, [SMALL_STATE(4098)] = 63048, [SMALL_STATE(4099)] = 63106, [SMALL_STATE(4100)] = 63170, [SMALL_STATE(4101)] = 63230, [SMALL_STATE(4102)] = 63294, [SMALL_STATE(4103)] = 63378, [SMALL_STATE(4104)] = 63434, [SMALL_STATE(4105)] = 63496, [SMALL_STATE(4106)] = 63580, [SMALL_STATE(4107)] = 63654, [SMALL_STATE(4108)] = 63718, [SMALL_STATE(4109)] = 63806, [SMALL_STATE(4110)] = 63868, [SMALL_STATE(4111)] = 63926, [SMALL_STATE(4112)] = 63984, [SMALL_STATE(4113)] = 64042, [SMALL_STATE(4114)] = 64126, [SMALL_STATE(4115)] = 64184, [SMALL_STATE(4116)] = 64272, [SMALL_STATE(4117)] = 64348, [SMALL_STATE(4118)] = 64428, [SMALL_STATE(4119)] = 64506, [SMALL_STATE(4120)] = 64590, [SMALL_STATE(4121)] = 64674, [SMALL_STATE(4122)] = 64747, [SMALL_STATE(4123)] = 64822, [SMALL_STATE(4124)] = 64905, [SMALL_STATE(4125)] = 64988, [SMALL_STATE(4126)] = 65071, [SMALL_STATE(4127)] = 65154, [SMALL_STATE(4128)] = 65237, [SMALL_STATE(4129)] = 65322, [SMALL_STATE(4130)] = 65385, [SMALL_STATE(4131)] = 65446, [SMALL_STATE(4132)] = 65509, [SMALL_STATE(4133)] = 65566, [SMALL_STATE(4134)] = 65629, [SMALL_STATE(4135)] = 65688, [SMALL_STATE(4136)] = 65773, [SMALL_STATE(4137)] = 65850, [SMALL_STATE(4138)] = 65921, [SMALL_STATE(4139)] = 66000, [SMALL_STATE(4140)] = 66059, [SMALL_STATE(4141)] = 66135, [SMALL_STATE(4142)] = 66213, [SMALL_STATE(4143)] = 66273, [SMALL_STATE(4144)] = 66365, [SMALL_STATE(4145)] = 66457, [SMALL_STATE(4146)] = 66531, [SMALL_STATE(4147)] = 66623, [SMALL_STATE(4148)] = 66707, [SMALL_STATE(4149)] = 66763, [SMALL_STATE(4150)] = 66835, [SMALL_STATE(4151)] = 66897, [SMALL_STATE(4152)] = 66959, [SMALL_STATE(4153)] = 67017, [SMALL_STATE(4154)] = 67087, [SMALL_STATE(4155)] = 67171, [SMALL_STATE(4156)] = 67233, [SMALL_STATE(4157)] = 67320, [SMALL_STATE(4158)] = 67407, [SMALL_STATE(4159)] = 67494, [SMALL_STATE(4160)] = 67581, [SMALL_STATE(4161)] = 67668, [SMALL_STATE(4162)] = 67755, [SMALL_STATE(4163)] = 67842, [SMALL_STATE(4164)] = 67897, [SMALL_STATE(4165)] = 67984, [SMALL_STATE(4166)] = 68071, [SMALL_STATE(4167)] = 68154, [SMALL_STATE(4168)] = 68236, [SMALL_STATE(4169)] = 68308, [SMALL_STATE(4170)] = 68390, [SMALL_STATE(4171)] = 68476, [SMALL_STATE(4172)] = 68558, [SMALL_STATE(4173)] = 68640, [SMALL_STATE(4174)] = 68722, [SMALL_STATE(4175)] = 68804, [SMALL_STATE(4176)] = 68886, [SMALL_STATE(4177)] = 68970, [SMALL_STATE(4178)] = 69052, [SMALL_STATE(4179)] = 69134, [SMALL_STATE(4180)] = 69190, [SMALL_STATE(4181)] = 69244, [SMALL_STATE(4182)] = 69300, [SMALL_STATE(4183)] = 69360, [SMALL_STATE(4184)] = 69414, [SMALL_STATE(4185)] = 69496, [SMALL_STATE(4186)] = 69564, [SMALL_STATE(4187)] = 69640, [SMALL_STATE(4188)] = 69722, [SMALL_STATE(4189)] = 69774, [SMALL_STATE(4190)] = 69834, [SMALL_STATE(4191)] = 69916, [SMALL_STATE(4192)] = 69998, [SMALL_STATE(4193)] = 70052, [SMALL_STATE(4194)] = 70134, [SMALL_STATE(4195)] = 70202, [SMALL_STATE(4196)] = 70278, [SMALL_STATE(4197)] = 70360, [SMALL_STATE(4198)] = 70432, [SMALL_STATE(4199)] = 70506, [SMALL_STATE(4200)] = 70588, [SMALL_STATE(4201)] = 70670, [SMALL_STATE(4202)] = 70752, [SMALL_STATE(4203)] = 70808, [SMALL_STATE(4204)] = 70868, [SMALL_STATE(4205)] = 70928, [SMALL_STATE(4206)] = 70982, [SMALL_STATE(4207)] = 71040, [SMALL_STATE(4208)] = 71122, [SMALL_STATE(4209)] = 71204, [SMALL_STATE(4210)] = 71272, [SMALL_STATE(4211)] = 71348, [SMALL_STATE(4212)] = 71420, [SMALL_STATE(4213)] = 71506, [SMALL_STATE(4214)] = 71580, [SMALL_STATE(4215)] = 71636, [SMALL_STATE(4216)] = 71696, [SMALL_STATE(4217)] = 71754, [SMALL_STATE(4218)] = 71814, [SMALL_STATE(4219)] = 71884, [SMALL_STATE(4220)] = 71958, [SMALL_STATE(4221)] = 72018, [SMALL_STATE(4222)] = 72088, [SMALL_STATE(4223)] = 72148, [SMALL_STATE(4224)] = 72206, [SMALL_STATE(4225)] = 72288, [SMALL_STATE(4226)] = 72348, [SMALL_STATE(4227)] = 72418, [SMALL_STATE(4228)] = 72500, [SMALL_STATE(4229)] = 72582, [SMALL_STATE(4230)] = 72664, [SMALL_STATE(4231)] = 72720, [SMALL_STATE(4232)] = 72802, [SMALL_STATE(4233)] = 72858, [SMALL_STATE(4234)] = 72940, [SMALL_STATE(4235)] = 73026, [SMALL_STATE(4236)] = 73107, [SMALL_STATE(4237)] = 73188, [SMALL_STATE(4238)] = 73269, [SMALL_STATE(4239)] = 73340, [SMALL_STATE(4240)] = 73415, [SMALL_STATE(4241)] = 73482, [SMALL_STATE(4242)] = 73563, [SMALL_STATE(4243)] = 73616, [SMALL_STATE(4244)] = 73697, [SMALL_STATE(4245)] = 73756, [SMALL_STATE(4246)] = 73809, [SMALL_STATE(4247)] = 73890, [SMALL_STATE(4248)] = 73947, [SMALL_STATE(4249)] = 74028, [SMALL_STATE(4250)] = 74087, [SMALL_STATE(4251)] = 74156, [SMALL_STATE(4252)] = 74237, [SMALL_STATE(4253)] = 74296, [SMALL_STATE(4254)] = 74377, [SMALL_STATE(4255)] = 74458, [SMALL_STATE(4256)] = 74513, [SMALL_STATE(4257)] = 74594, [SMALL_STATE(4258)] = 74675, [SMALL_STATE(4259)] = 74756, [SMALL_STATE(4260)] = 74815, [SMALL_STATE(4261)] = 74896, [SMALL_STATE(4262)] = 74949, [SMALL_STATE(4263)] = 75030, [SMALL_STATE(4264)] = 75111, [SMALL_STATE(4265)] = 75192, [SMALL_STATE(4266)] = 75273, [SMALL_STATE(4267)] = 75326, [SMALL_STATE(4268)] = 75407, [SMALL_STATE(4269)] = 75488, [SMALL_STATE(4270)] = 75541, [SMALL_STATE(4271)] = 75594, [SMALL_STATE(4272)] = 75647, [SMALL_STATE(4273)] = 75700, [SMALL_STATE(4274)] = 75781, [SMALL_STATE(4275)] = 75862, [SMALL_STATE(4276)] = 75943, [SMALL_STATE(4277)] = 76024, [SMALL_STATE(4278)] = 76105, [SMALL_STATE(4279)] = 76178, [SMALL_STATE(4280)] = 76259, [SMALL_STATE(4281)] = 76312, [SMALL_STATE(4282)] = 76392, [SMALL_STATE(4283)] = 76472, [SMALL_STATE(4284)] = 76546, [SMALL_STATE(4285)] = 76626, [SMALL_STATE(4286)] = 76698, [SMALL_STATE(4287)] = 76768, [SMALL_STATE(4288)] = 76834, [SMALL_STATE(4289)] = 76914, [SMALL_STATE(4290)] = 76966, [SMALL_STATE(4291)] = 77046, [SMALL_STATE(4292)] = 77126, [SMALL_STATE(4293)] = 77206, [SMALL_STATE(4294)] = 77264, [SMALL_STATE(4295)] = 77322, [SMALL_STATE(4296)] = 77378, [SMALL_STATE(4297)] = 77458, [SMALL_STATE(4298)] = 77516, [SMALL_STATE(4299)] = 77570, [SMALL_STATE(4300)] = 77650, [SMALL_STATE(4301)] = 77730, [SMALL_STATE(4302)] = 77810, [SMALL_STATE(4303)] = 77890, [SMALL_STATE(4304)] = 77958, [SMALL_STATE(4305)] = 78038, [SMALL_STATE(4306)] = 78118, [SMALL_STATE(4307)] = 78198, [SMALL_STATE(4308)] = 78278, [SMALL_STATE(4309)] = 78339, [SMALL_STATE(4310)] = 78400, [SMALL_STATE(4311)] = 78461, [SMALL_STATE(4312)] = 78522, [SMALL_STATE(4313)] = 78583, [SMALL_STATE(4314)] = 78644, [SMALL_STATE(4315)] = 78705, [SMALL_STATE(4316)] = 78779, [SMALL_STATE(4317)] = 78853, [SMALL_STATE(4318)] = 78927, [SMALL_STATE(4319)] = 79001, [SMALL_STATE(4320)] = 79075, [SMALL_STATE(4321)] = 79149, [SMALL_STATE(4322)] = 79223, [SMALL_STATE(4323)] = 79297, [SMALL_STATE(4324)] = 79371, [SMALL_STATE(4325)] = 79445, [SMALL_STATE(4326)] = 79519, [SMALL_STATE(4327)] = 79593, [SMALL_STATE(4328)] = 79667, [SMALL_STATE(4329)] = 79741, [SMALL_STATE(4330)] = 79815, [SMALL_STATE(4331)] = 79889, [SMALL_STATE(4332)] = 79963, [SMALL_STATE(4333)] = 80037, [SMALL_STATE(4334)] = 80111, [SMALL_STATE(4335)] = 80185, [SMALL_STATE(4336)] = 80259, [SMALL_STATE(4337)] = 80333, [SMALL_STATE(4338)] = 80407, [SMALL_STATE(4339)] = 80481, [SMALL_STATE(4340)] = 80555, [SMALL_STATE(4341)] = 80629, [SMALL_STATE(4342)] = 80703, [SMALL_STATE(4343)] = 80777, [SMALL_STATE(4344)] = 80851, [SMALL_STATE(4345)] = 80925, [SMALL_STATE(4346)] = 80999, [SMALL_STATE(4347)] = 81073, [SMALL_STATE(4348)] = 81147, [SMALL_STATE(4349)] = 81221, [SMALL_STATE(4350)] = 81295, [SMALL_STATE(4351)] = 81369, [SMALL_STATE(4352)] = 81443, [SMALL_STATE(4353)] = 81517, [SMALL_STATE(4354)] = 81591, [SMALL_STATE(4355)] = 81665, [SMALL_STATE(4356)] = 81739, [SMALL_STATE(4357)] = 81813, [SMALL_STATE(4358)] = 81887, [SMALL_STATE(4359)] = 81961, [SMALL_STATE(4360)] = 82035, [SMALL_STATE(4361)] = 82109, [SMALL_STATE(4362)] = 82183, [SMALL_STATE(4363)] = 82257, [SMALL_STATE(4364)] = 82331, [SMALL_STATE(4365)] = 82405, [SMALL_STATE(4366)] = 82479, [SMALL_STATE(4367)] = 82553, [SMALL_STATE(4368)] = 82627, [SMALL_STATE(4369)] = 82701, [SMALL_STATE(4370)] = 82775, [SMALL_STATE(4371)] = 82849, [SMALL_STATE(4372)] = 82923, [SMALL_STATE(4373)] = 82997, [SMALL_STATE(4374)] = 83071, [SMALL_STATE(4375)] = 83145, [SMALL_STATE(4376)] = 83219, [SMALL_STATE(4377)] = 83293, [SMALL_STATE(4378)] = 83367, [SMALL_STATE(4379)] = 83441, [SMALL_STATE(4380)] = 83509, [SMALL_STATE(4381)] = 83577, [SMALL_STATE(4382)] = 83645, [SMALL_STATE(4383)] = 83713, [SMALL_STATE(4384)] = 83781, [SMALL_STATE(4385)] = 83849, [SMALL_STATE(4386)] = 83917, [SMALL_STATE(4387)] = 83985, [SMALL_STATE(4388)] = 84053, [SMALL_STATE(4389)] = 84121, [SMALL_STATE(4390)] = 84189, [SMALL_STATE(4391)] = 84257, [SMALL_STATE(4392)] = 84325, [SMALL_STATE(4393)] = 84393, [SMALL_STATE(4394)] = 84461, [SMALL_STATE(4395)] = 84529, [SMALL_STATE(4396)] = 84597, [SMALL_STATE(4397)] = 84665, [SMALL_STATE(4398)] = 84733, [SMALL_STATE(4399)] = 84801, [SMALL_STATE(4400)] = 84869, [SMALL_STATE(4401)] = 84937, [SMALL_STATE(4402)] = 85005, [SMALL_STATE(4403)] = 85073, [SMALL_STATE(4404)] = 85141, [SMALL_STATE(4405)] = 85209, [SMALL_STATE(4406)] = 85277, [SMALL_STATE(4407)] = 85345, [SMALL_STATE(4408)] = 85413, [SMALL_STATE(4409)] = 85481, [SMALL_STATE(4410)] = 85549, [SMALL_STATE(4411)] = 85617, [SMALL_STATE(4412)] = 85685, [SMALL_STATE(4413)] = 85753, [SMALL_STATE(4414)] = 85821, [SMALL_STATE(4415)] = 85889, [SMALL_STATE(4416)] = 85957, [SMALL_STATE(4417)] = 86025, [SMALL_STATE(4418)] = 86093, [SMALL_STATE(4419)] = 86161, [SMALL_STATE(4420)] = 86229, [SMALL_STATE(4421)] = 86297, [SMALL_STATE(4422)] = 86365, [SMALL_STATE(4423)] = 86433, [SMALL_STATE(4424)] = 86501, [SMALL_STATE(4425)] = 86569, [SMALL_STATE(4426)] = 86637, [SMALL_STATE(4427)] = 86705, [SMALL_STATE(4428)] = 86773, [SMALL_STATE(4429)] = 86841, [SMALL_STATE(4430)] = 86909, [SMALL_STATE(4431)] = 86977, [SMALL_STATE(4432)] = 87045, [SMALL_STATE(4433)] = 87113, [SMALL_STATE(4434)] = 87181, [SMALL_STATE(4435)] = 87249, [SMALL_STATE(4436)] = 87317, [SMALL_STATE(4437)] = 87385, [SMALL_STATE(4438)] = 87453, [SMALL_STATE(4439)] = 87521, [SMALL_STATE(4440)] = 87589, [SMALL_STATE(4441)] = 87657, [SMALL_STATE(4442)] = 87725, [SMALL_STATE(4443)] = 87793, [SMALL_STATE(4444)] = 87861, [SMALL_STATE(4445)] = 87929, [SMALL_STATE(4446)] = 87997, [SMALL_STATE(4447)] = 88065, [SMALL_STATE(4448)] = 88133, [SMALL_STATE(4449)] = 88201, [SMALL_STATE(4450)] = 88269, [SMALL_STATE(4451)] = 88337, [SMALL_STATE(4452)] = 88405, [SMALL_STATE(4453)] = 88473, [SMALL_STATE(4454)] = 88541, [SMALL_STATE(4455)] = 88609, [SMALL_STATE(4456)] = 88677, [SMALL_STATE(4457)] = 88745, [SMALL_STATE(4458)] = 88813, [SMALL_STATE(4459)] = 88881, [SMALL_STATE(4460)] = 88949, [SMALL_STATE(4461)] = 89017, [SMALL_STATE(4462)] = 89085, [SMALL_STATE(4463)] = 89153, [SMALL_STATE(4464)] = 89221, [SMALL_STATE(4465)] = 89289, [SMALL_STATE(4466)] = 89357, [SMALL_STATE(4467)] = 89425, [SMALL_STATE(4468)] = 89493, [SMALL_STATE(4469)] = 89561, [SMALL_STATE(4470)] = 89629, [SMALL_STATE(4471)] = 89697, [SMALL_STATE(4472)] = 89765, [SMALL_STATE(4473)] = 89833, [SMALL_STATE(4474)] = 89901, [SMALL_STATE(4475)] = 89969, [SMALL_STATE(4476)] = 90037, [SMALL_STATE(4477)] = 90105, [SMALL_STATE(4478)] = 90173, [SMALL_STATE(4479)] = 90241, [SMALL_STATE(4480)] = 90309, [SMALL_STATE(4481)] = 90377, [SMALL_STATE(4482)] = 90445, [SMALL_STATE(4483)] = 90513, [SMALL_STATE(4484)] = 90581, [SMALL_STATE(4485)] = 90649, [SMALL_STATE(4486)] = 90717, [SMALL_STATE(4487)] = 90785, [SMALL_STATE(4488)] = 90853, [SMALL_STATE(4489)] = 90921, [SMALL_STATE(4490)] = 90989, [SMALL_STATE(4491)] = 91057, [SMALL_STATE(4492)] = 91125, [SMALL_STATE(4493)] = 91193, [SMALL_STATE(4494)] = 91261, [SMALL_STATE(4495)] = 91329, [SMALL_STATE(4496)] = 91397, [SMALL_STATE(4497)] = 91465, [SMALL_STATE(4498)] = 91533, [SMALL_STATE(4499)] = 91601, [SMALL_STATE(4500)] = 91669, [SMALL_STATE(4501)] = 91737, [SMALL_STATE(4502)] = 91805, [SMALL_STATE(4503)] = 91873, [SMALL_STATE(4504)] = 91941, [SMALL_STATE(4505)] = 92009, [SMALL_STATE(4506)] = 92077, [SMALL_STATE(4507)] = 92145, [SMALL_STATE(4508)] = 92213, [SMALL_STATE(4509)] = 92281, [SMALL_STATE(4510)] = 92349, [SMALL_STATE(4511)] = 92417, [SMALL_STATE(4512)] = 92485, [SMALL_STATE(4513)] = 92553, [SMALL_STATE(4514)] = 92621, [SMALL_STATE(4515)] = 92689, [SMALL_STATE(4516)] = 92757, [SMALL_STATE(4517)] = 92825, [SMALL_STATE(4518)] = 92893, [SMALL_STATE(4519)] = 92961, [SMALL_STATE(4520)] = 93029, [SMALL_STATE(4521)] = 93097, [SMALL_STATE(4522)] = 93165, [SMALL_STATE(4523)] = 93233, [SMALL_STATE(4524)] = 93301, [SMALL_STATE(4525)] = 93369, [SMALL_STATE(4526)] = 93437, [SMALL_STATE(4527)] = 93505, [SMALL_STATE(4528)] = 93573, [SMALL_STATE(4529)] = 93641, [SMALL_STATE(4530)] = 93709, [SMALL_STATE(4531)] = 93777, [SMALL_STATE(4532)] = 93845, [SMALL_STATE(4533)] = 93913, [SMALL_STATE(4534)] = 93981, [SMALL_STATE(4535)] = 94049, [SMALL_STATE(4536)] = 94117, [SMALL_STATE(4537)] = 94185, [SMALL_STATE(4538)] = 94253, [SMALL_STATE(4539)] = 94321, [SMALL_STATE(4540)] = 94389, [SMALL_STATE(4541)] = 94457, [SMALL_STATE(4542)] = 94525, [SMALL_STATE(4543)] = 94593, [SMALL_STATE(4544)] = 94661, [SMALL_STATE(4545)] = 94729, [SMALL_STATE(4546)] = 94797, [SMALL_STATE(4547)] = 94865, [SMALL_STATE(4548)] = 94933, [SMALL_STATE(4549)] = 95001, [SMALL_STATE(4550)] = 95069, [SMALL_STATE(4551)] = 95137, [SMALL_STATE(4552)] = 95205, [SMALL_STATE(4553)] = 95273, [SMALL_STATE(4554)] = 95341, [SMALL_STATE(4555)] = 95409, [SMALL_STATE(4556)] = 95477, [SMALL_STATE(4557)] = 95545, [SMALL_STATE(4558)] = 95613, [SMALL_STATE(4559)] = 95681, [SMALL_STATE(4560)] = 95749, [SMALL_STATE(4561)] = 95817, [SMALL_STATE(4562)] = 95885, [SMALL_STATE(4563)] = 95953, [SMALL_STATE(4564)] = 96021, [SMALL_STATE(4565)] = 96089, [SMALL_STATE(4566)] = 96157, [SMALL_STATE(4567)] = 96225, [SMALL_STATE(4568)] = 96293, [SMALL_STATE(4569)] = 96361, [SMALL_STATE(4570)] = 96429, [SMALL_STATE(4571)] = 96497, [SMALL_STATE(4572)] = 96565, [SMALL_STATE(4573)] = 96633, [SMALL_STATE(4574)] = 96701, [SMALL_STATE(4575)] = 96769, [SMALL_STATE(4576)] = 96837, [SMALL_STATE(4577)] = 96905, [SMALL_STATE(4578)] = 96973, [SMALL_STATE(4579)] = 97041, [SMALL_STATE(4580)] = 97109, [SMALL_STATE(4581)] = 97177, [SMALL_STATE(4582)] = 97245, [SMALL_STATE(4583)] = 97313, [SMALL_STATE(4584)] = 97381, [SMALL_STATE(4585)] = 97449, [SMALL_STATE(4586)] = 97517, [SMALL_STATE(4587)] = 97585, [SMALL_STATE(4588)] = 97621, [SMALL_STATE(4589)] = 97657, [SMALL_STATE(4590)] = 97693, [SMALL_STATE(4591)] = 97729, [SMALL_STATE(4592)] = 97765, [SMALL_STATE(4593)] = 97801, [SMALL_STATE(4594)] = 97837, [SMALL_STATE(4595)] = 97880, [SMALL_STATE(4596)] = 97923, [SMALL_STATE(4597)] = 97966, [SMALL_STATE(4598)] = 98007, [SMALL_STATE(4599)] = 98040, [SMALL_STATE(4600)] = 98081, [SMALL_STATE(4601)] = 98114, [SMALL_STATE(4602)] = 98147, [SMALL_STATE(4603)] = 98180, [SMALL_STATE(4604)] = 98213, [SMALL_STATE(4605)] = 98254, [SMALL_STATE(4606)] = 98287, [SMALL_STATE(4607)] = 98320, [SMALL_STATE(4608)] = 98353, [SMALL_STATE(4609)] = 98386, [SMALL_STATE(4610)] = 98419, [SMALL_STATE(4611)] = 98452, [SMALL_STATE(4612)] = 98485, [SMALL_STATE(4613)] = 98518, [SMALL_STATE(4614)] = 98551, [SMALL_STATE(4615)] = 98584, [SMALL_STATE(4616)] = 98617, [SMALL_STATE(4617)] = 98650, [SMALL_STATE(4618)] = 98683, [SMALL_STATE(4619)] = 98716, [SMALL_STATE(4620)] = 98749, [SMALL_STATE(4621)] = 98789, [SMALL_STATE(4622)] = 98829, [SMALL_STATE(4623)] = 98869, [SMALL_STATE(4624)] = 98908, [SMALL_STATE(4625)] = 98943, [SMALL_STATE(4626)] = 98982, [SMALL_STATE(4627)] = 99021, [SMALL_STATE(4628)] = 99058, [SMALL_STATE(4629)] = 99095, [SMALL_STATE(4630)] = 99134, [SMALL_STATE(4631)] = 99171, [SMALL_STATE(4632)] = 99201, [SMALL_STATE(4633)] = 99239, [SMALL_STATE(4634)] = 99277, [SMALL_STATE(4635)] = 99307, [SMALL_STATE(4636)] = 99345, [SMALL_STATE(4637)] = 99375, [SMALL_STATE(4638)] = 99405, [SMALL_STATE(4639)] = 99442, [SMALL_STATE(4640)] = 99477, [SMALL_STATE(4641)] = 99510, [SMALL_STATE(4642)] = 99545, [SMALL_STATE(4643)] = 99580, [SMALL_STATE(4644)] = 99615, [SMALL_STATE(4645)] = 99643, [SMALL_STATE(4646)] = 99671, [SMALL_STATE(4647)] = 99699, [SMALL_STATE(4648)] = 99727, [SMALL_STATE(4649)] = 99755, [SMALL_STATE(4650)] = 99783, [SMALL_STATE(4651)] = 99819, [SMALL_STATE(4652)] = 99855, [SMALL_STATE(4653)] = 99883, [SMALL_STATE(4654)] = 99911, [SMALL_STATE(4655)] = 99939, [SMALL_STATE(4656)] = 99967, [SMALL_STATE(4657)] = 99995, [SMALL_STATE(4658)] = 100022, [SMALL_STATE(4659)] = 100049, [SMALL_STATE(4660)] = 100076, [SMALL_STATE(4661)] = 100103, [SMALL_STATE(4662)] = 100130, [SMALL_STATE(4663)] = 100157, [SMALL_STATE(4664)] = 100184, [SMALL_STATE(4665)] = 100211, [SMALL_STATE(4666)] = 100238, [SMALL_STATE(4667)] = 100265, [SMALL_STATE(4668)] = 100292, [SMALL_STATE(4669)] = 100338, [SMALL_STATE(4670)] = 100370, [SMALL_STATE(4671)] = 100396, [SMALL_STATE(4672)] = 100442, [SMALL_STATE(4673)] = 100468, [SMALL_STATE(4674)] = 100494, [SMALL_STATE(4675)] = 100534, [SMALL_STATE(4676)] = 100580, [SMALL_STATE(4677)] = 100606, [SMALL_STATE(4678)] = 100632, [SMALL_STATE(4679)] = 100672, [SMALL_STATE(4680)] = 100712, [SMALL_STATE(4681)] = 100752, [SMALL_STATE(4682)] = 100778, [SMALL_STATE(4683)] = 100824, [SMALL_STATE(4684)] = 100864, [SMALL_STATE(4685)] = 100890, [SMALL_STATE(4686)] = 100936, [SMALL_STATE(4687)] = 100982, [SMALL_STATE(4688)] = 101022, [SMALL_STATE(4689)] = 101062, [SMALL_STATE(4690)] = 101088, [SMALL_STATE(4691)] = 101128, [SMALL_STATE(4692)] = 101168, [SMALL_STATE(4693)] = 101198, [SMALL_STATE(4694)] = 101238, [SMALL_STATE(4695)] = 101278, [SMALL_STATE(4696)] = 101324, [SMALL_STATE(4697)] = 101350, [SMALL_STATE(4698)] = 101390, [SMALL_STATE(4699)] = 101430, [SMALL_STATE(4700)] = 101456, [SMALL_STATE(4701)] = 101482, [SMALL_STATE(4702)] = 101508, [SMALL_STATE(4703)] = 101554, [SMALL_STATE(4704)] = 101600, [SMALL_STATE(4705)] = 101646, [SMALL_STATE(4706)] = 101692, [SMALL_STATE(4707)] = 101738, [SMALL_STATE(4708)] = 101784, [SMALL_STATE(4709)] = 101824, [SMALL_STATE(4710)] = 101870, [SMALL_STATE(4711)] = 101910, [SMALL_STATE(4712)] = 101956, [SMALL_STATE(4713)] = 101996, [SMALL_STATE(4714)] = 102042, [SMALL_STATE(4715)] = 102068, [SMALL_STATE(4716)] = 102094, [SMALL_STATE(4717)] = 102140, [SMALL_STATE(4718)] = 102180, [SMALL_STATE(4719)] = 102206, [SMALL_STATE(4720)] = 102246, [SMALL_STATE(4721)] = 102292, [SMALL_STATE(4722)] = 102338, [SMALL_STATE(4723)] = 102384, [SMALL_STATE(4724)] = 102430, [SMALL_STATE(4725)] = 102470, [SMALL_STATE(4726)] = 102496, [SMALL_STATE(4727)] = 102536, [SMALL_STATE(4728)] = 102582, [SMALL_STATE(4729)] = 102622, [SMALL_STATE(4730)] = 102668, [SMALL_STATE(4731)] = 102708, [SMALL_STATE(4732)] = 102734, [SMALL_STATE(4733)] = 102774, [SMALL_STATE(4734)] = 102814, [SMALL_STATE(4735)] = 102854, [SMALL_STATE(4736)] = 102894, [SMALL_STATE(4737)] = 102934, [SMALL_STATE(4738)] = 102980, [SMALL_STATE(4739)] = 103026, [SMALL_STATE(4740)] = 103066, [SMALL_STATE(4741)] = 103112, [SMALL_STATE(4742)] = 103152, [SMALL_STATE(4743)] = 103192, [SMALL_STATE(4744)] = 103232, [SMALL_STATE(4745)] = 103278, [SMALL_STATE(4746)] = 103318, [SMALL_STATE(4747)] = 103358, [SMALL_STATE(4748)] = 103404, [SMALL_STATE(4749)] = 103450, [SMALL_STATE(4750)] = 103496, [SMALL_STATE(4751)] = 103542, [SMALL_STATE(4752)] = 103582, [SMALL_STATE(4753)] = 103628, [SMALL_STATE(4754)] = 103674, [SMALL_STATE(4755)] = 103706, [SMALL_STATE(4756)] = 103752, [SMALL_STATE(4757)] = 103792, [SMALL_STATE(4758)] = 103838, [SMALL_STATE(4759)] = 103884, [SMALL_STATE(4760)] = 103924, [SMALL_STATE(4761)] = 103964, [SMALL_STATE(4762)] = 104010, [SMALL_STATE(4763)] = 104056, [SMALL_STATE(4764)] = 104102, [SMALL_STATE(4765)] = 104148, [SMALL_STATE(4766)] = 104194, [SMALL_STATE(4767)] = 104234, [SMALL_STATE(4768)] = 104260, [SMALL_STATE(4769)] = 104306, [SMALL_STATE(4770)] = 104352, [SMALL_STATE(4771)] = 104378, [SMALL_STATE(4772)] = 104410, [SMALL_STATE(4773)] = 104436, [SMALL_STATE(4774)] = 104462, [SMALL_STATE(4775)] = 104488, [SMALL_STATE(4776)] = 104514, [SMALL_STATE(4777)] = 104560, [SMALL_STATE(4778)] = 104606, [SMALL_STATE(4779)] = 104646, [SMALL_STATE(4780)] = 104686, [SMALL_STATE(4781)] = 104726, [SMALL_STATE(4782)] = 104766, [SMALL_STATE(4783)] = 104812, [SMALL_STATE(4784)] = 104858, [SMALL_STATE(4785)] = 104888, [SMALL_STATE(4786)] = 104934, [SMALL_STATE(4787)] = 104957, [SMALL_STATE(4788)] = 104988, [SMALL_STATE(4789)] = 105017, [SMALL_STATE(4790)] = 105046, [SMALL_STATE(4791)] = 105077, [SMALL_STATE(4792)] = 105100, [SMALL_STATE(4793)] = 105123, [SMALL_STATE(4794)] = 105146, [SMALL_STATE(4795)] = 105169, [SMALL_STATE(4796)] = 105200, [SMALL_STATE(4797)] = 105223, [SMALL_STATE(4798)] = 105246, [SMALL_STATE(4799)] = 105277, [SMALL_STATE(4800)] = 105308, [SMALL_STATE(4801)] = 105331, [SMALL_STATE(4802)] = 105354, [SMALL_STATE(4803)] = 105377, [SMALL_STATE(4804)] = 105400, [SMALL_STATE(4805)] = 105423, [SMALL_STATE(4806)] = 105446, [SMALL_STATE(4807)] = 105469, [SMALL_STATE(4808)] = 105492, [SMALL_STATE(4809)] = 105515, [SMALL_STATE(4810)] = 105538, [SMALL_STATE(4811)] = 105561, [SMALL_STATE(4812)] = 105584, [SMALL_STATE(4813)] = 105615, [SMALL_STATE(4814)] = 105646, [SMALL_STATE(4815)] = 105669, [SMALL_STATE(4816)] = 105699, [SMALL_STATE(4817)] = 105733, [SMALL_STATE(4818)] = 105763, [SMALL_STATE(4819)] = 105797, [SMALL_STATE(4820)] = 105831, [SMALL_STATE(4821)] = 105865, [SMALL_STATE(4822)] = 105895, [SMALL_STATE(4823)] = 105941, [SMALL_STATE(4824)] = 105971, [SMALL_STATE(4825)] = 106001, [SMALL_STATE(4826)] = 106035, [SMALL_STATE(4827)] = 106069, [SMALL_STATE(4828)] = 106097, [SMALL_STATE(4829)] = 106127, [SMALL_STATE(4830)] = 106157, [SMALL_STATE(4831)] = 106191, [SMALL_STATE(4832)] = 106221, [SMALL_STATE(4833)] = 106255, [SMALL_STATE(4834)] = 106285, [SMALL_STATE(4835)] = 106319, [SMALL_STATE(4836)] = 106349, [SMALL_STATE(4837)] = 106383, [SMALL_STATE(4838)] = 106413, [SMALL_STATE(4839)] = 106447, [SMALL_STATE(4840)] = 106473, [SMALL_STATE(4841)] = 106503, [SMALL_STATE(4842)] = 106533, [SMALL_STATE(4843)] = 106563, [SMALL_STATE(4844)] = 106593, [SMALL_STATE(4845)] = 106623, [SMALL_STATE(4846)] = 106669, [SMALL_STATE(4847)] = 106703, [SMALL_STATE(4848)] = 106737, [SMALL_STATE(4849)] = 106771, [SMALL_STATE(4850)] = 106801, [SMALL_STATE(4851)] = 106831, [SMALL_STATE(4852)] = 106861, [SMALL_STATE(4853)] = 106887, [SMALL_STATE(4854)] = 106933, [SMALL_STATE(4855)] = 106967, [SMALL_STATE(4856)] = 107001, [SMALL_STATE(4857)] = 107035, [SMALL_STATE(4858)] = 107065, [SMALL_STATE(4859)] = 107095, [SMALL_STATE(4860)] = 107125, [SMALL_STATE(4861)] = 107155, [SMALL_STATE(4862)] = 107185, [SMALL_STATE(4863)] = 107219, [SMALL_STATE(4864)] = 107249, [SMALL_STATE(4865)] = 107283, [SMALL_STATE(4866)] = 107313, [SMALL_STATE(4867)] = 107347, [SMALL_STATE(4868)] = 107381, [SMALL_STATE(4869)] = 107415, [SMALL_STATE(4870)] = 107449, [SMALL_STATE(4871)] = 107483, [SMALL_STATE(4872)] = 107513, [SMALL_STATE(4873)] = 107547, [SMALL_STATE(4874)] = 107577, [SMALL_STATE(4875)] = 107609, [SMALL_STATE(4876)] = 107643, [SMALL_STATE(4877)] = 107689, [SMALL_STATE(4878)] = 107723, [SMALL_STATE(4879)] = 107757, [SMALL_STATE(4880)] = 107787, [SMALL_STATE(4881)] = 107821, [SMALL_STATE(4882)] = 107851, [SMALL_STATE(4883)] = 107881, [SMALL_STATE(4884)] = 107911, [SMALL_STATE(4885)] = 107941, [SMALL_STATE(4886)] = 107971, [SMALL_STATE(4887)] = 108005, [SMALL_STATE(4888)] = 108035, [SMALL_STATE(4889)] = 108069, [SMALL_STATE(4890)] = 108099, [SMALL_STATE(4891)] = 108133, [SMALL_STATE(4892)] = 108167, [SMALL_STATE(4893)] = 108197, [SMALL_STATE(4894)] = 108231, [SMALL_STATE(4895)] = 108257, [SMALL_STATE(4896)] = 108291, [SMALL_STATE(4897)] = 108337, [SMALL_STATE(4898)] = 108367, [SMALL_STATE(4899)] = 108397, [SMALL_STATE(4900)] = 108431, [SMALL_STATE(4901)] = 108465, [SMALL_STATE(4902)] = 108499, [SMALL_STATE(4903)] = 108529, [SMALL_STATE(4904)] = 108559, [SMALL_STATE(4905)] = 108593, [SMALL_STATE(4906)] = 108627, [SMALL_STATE(4907)] = 108661, [SMALL_STATE(4908)] = 108695, [SMALL_STATE(4909)] = 108729, [SMALL_STATE(4910)] = 108759, [SMALL_STATE(4911)] = 108787, [SMALL_STATE(4912)] = 108817, [SMALL_STATE(4913)] = 108847, [SMALL_STATE(4914)] = 108877, [SMALL_STATE(4915)] = 108907, [SMALL_STATE(4916)] = 108953, [SMALL_STATE(4917)] = 108987, [SMALL_STATE(4918)] = 109017, [SMALL_STATE(4919)] = 109051, [SMALL_STATE(4920)] = 109081, [SMALL_STATE(4921)] = 109127, [SMALL_STATE(4922)] = 109157, [SMALL_STATE(4923)] = 109187, [SMALL_STATE(4924)] = 109217, [SMALL_STATE(4925)] = 109247, [SMALL_STATE(4926)] = 109277, [SMALL_STATE(4927)] = 109307, [SMALL_STATE(4928)] = 109337, [SMALL_STATE(4929)] = 109367, [SMALL_STATE(4930)] = 109397, [SMALL_STATE(4931)] = 109427, [SMALL_STATE(4932)] = 109461, [SMALL_STATE(4933)] = 109491, [SMALL_STATE(4934)] = 109521, [SMALL_STATE(4935)] = 109551, [SMALL_STATE(4936)] = 109581, [SMALL_STATE(4937)] = 109611, [SMALL_STATE(4938)] = 109641, [SMALL_STATE(4939)] = 109675, [SMALL_STATE(4940)] = 109705, [SMALL_STATE(4941)] = 109751, [SMALL_STATE(4942)] = 109781, [SMALL_STATE(4943)] = 109815, [SMALL_STATE(4944)] = 109845, [SMALL_STATE(4945)] = 109875, [SMALL_STATE(4946)] = 109921, [SMALL_STATE(4947)] = 109955, [SMALL_STATE(4948)] = 109989, [SMALL_STATE(4949)] = 110023, [SMALL_STATE(4950)] = 110053, [SMALL_STATE(4951)] = 110087, [SMALL_STATE(4952)] = 110121, [SMALL_STATE(4953)] = 110151, [SMALL_STATE(4954)] = 110197, [SMALL_STATE(4955)] = 110227, [SMALL_STATE(4956)] = 110261, [SMALL_STATE(4957)] = 110291, [SMALL_STATE(4958)] = 110321, [SMALL_STATE(4959)] = 110355, [SMALL_STATE(4960)] = 110385, [SMALL_STATE(4961)] = 110415, [SMALL_STATE(4962)] = 110445, [SMALL_STATE(4963)] = 110473, [SMALL_STATE(4964)] = 110507, [SMALL_STATE(4965)] = 110537, [SMALL_STATE(4966)] = 110567, [SMALL_STATE(4967)] = 110601, [SMALL_STATE(4968)] = 110631, [SMALL_STATE(4969)] = 110665, [SMALL_STATE(4970)] = 110699, [SMALL_STATE(4971)] = 110733, [SMALL_STATE(4972)] = 110763, [SMALL_STATE(4973)] = 110793, [SMALL_STATE(4974)] = 110827, [SMALL_STATE(4975)] = 110857, [SMALL_STATE(4976)] = 110887, [SMALL_STATE(4977)] = 110917, [SMALL_STATE(4978)] = 110951, [SMALL_STATE(4979)] = 110997, [SMALL_STATE(4980)] = 111043, [SMALL_STATE(4981)] = 111066, [SMALL_STATE(4982)] = 111101, [SMALL_STATE(4983)] = 111136, [SMALL_STATE(4984)] = 111159, [SMALL_STATE(4985)] = 111194, [SMALL_STATE(4986)] = 111229, [SMALL_STATE(4987)] = 111264, [SMALL_STATE(4988)] = 111287, [SMALL_STATE(4989)] = 111322, [SMALL_STATE(4990)] = 111345, [SMALL_STATE(4991)] = 111378, [SMALL_STATE(4992)] = 111401, [SMALL_STATE(4993)] = 111436, [SMALL_STATE(4994)] = 111459, [SMALL_STATE(4995)] = 111482, [SMALL_STATE(4996)] = 111507, [SMALL_STATE(4997)] = 111540, [SMALL_STATE(4998)] = 111573, [SMALL_STATE(4999)] = 111596, [SMALL_STATE(5000)] = 111619, [SMALL_STATE(5001)] = 111654, [SMALL_STATE(5002)] = 111687, [SMALL_STATE(5003)] = 111710, [SMALL_STATE(5004)] = 111733, [SMALL_STATE(5005)] = 111766, [SMALL_STATE(5006)] = 111795, [SMALL_STATE(5007)] = 111825, [SMALL_STATE(5008)] = 111849, [SMALL_STATE(5009)] = 111869, [SMALL_STATE(5010)] = 111907, [SMALL_STATE(5011)] = 111937, [SMALL_STATE(5012)] = 111957, [SMALL_STATE(5013)] = 111995, [SMALL_STATE(5014)] = 112015, [SMALL_STATE(5015)] = 112039, [SMALL_STATE(5016)] = 112059, [SMALL_STATE(5017)] = 112079, [SMALL_STATE(5018)] = 112109, [SMALL_STATE(5019)] = 112147, [SMALL_STATE(5020)] = 112185, [SMALL_STATE(5021)] = 112205, [SMALL_STATE(5022)] = 112243, [SMALL_STATE(5023)] = 112269, [SMALL_STATE(5024)] = 112307, [SMALL_STATE(5025)] = 112345, [SMALL_STATE(5026)] = 112365, [SMALL_STATE(5027)] = 112403, [SMALL_STATE(5028)] = 112441, [SMALL_STATE(5029)] = 112461, [SMALL_STATE(5030)] = 112499, [SMALL_STATE(5031)] = 112537, [SMALL_STATE(5032)] = 112575, [SMALL_STATE(5033)] = 112613, [SMALL_STATE(5034)] = 112651, [SMALL_STATE(5035)] = 112681, [SMALL_STATE(5036)] = 112705, [SMALL_STATE(5037)] = 112743, [SMALL_STATE(5038)] = 112781, [SMALL_STATE(5039)] = 112801, [SMALL_STATE(5040)] = 112839, [SMALL_STATE(5041)] = 112877, [SMALL_STATE(5042)] = 112897, [SMALL_STATE(5043)] = 112927, [SMALL_STATE(5044)] = 112964, [SMALL_STATE(5045)] = 113001, [SMALL_STATE(5046)] = 113038, [SMALL_STATE(5047)] = 113061, [SMALL_STATE(5048)] = 113082, [SMALL_STATE(5049)] = 113103, [SMALL_STATE(5050)] = 113140, [SMALL_STATE(5051)] = 113177, [SMALL_STATE(5052)] = 113208, [SMALL_STATE(5053)] = 113229, [SMALL_STATE(5054)] = 113260, [SMALL_STATE(5055)] = 113285, [SMALL_STATE(5056)] = 113322, [SMALL_STATE(5057)] = 113353, [SMALL_STATE(5058)] = 113378, [SMALL_STATE(5059)] = 113415, [SMALL_STATE(5060)] = 113442, [SMALL_STATE(5061)] = 113465, [SMALL_STATE(5062)] = 113502, [SMALL_STATE(5063)] = 113539, [SMALL_STATE(5064)] = 113576, [SMALL_STATE(5065)] = 113603, [SMALL_STATE(5066)] = 113634, [SMALL_STATE(5067)] = 113671, [SMALL_STATE(5068)] = 113702, [SMALL_STATE(5069)] = 113739, [SMALL_STATE(5070)] = 113774, [SMALL_STATE(5071)] = 113796, [SMALL_STATE(5072)] = 113820, [SMALL_STATE(5073)] = 113840, [SMALL_STATE(5074)] = 113860, [SMALL_STATE(5075)] = 113888, [SMALL_STATE(5076)] = 113916, [SMALL_STATE(5077)] = 113942, [SMALL_STATE(5078)] = 113964, [SMALL_STATE(5079)] = 113992, [SMALL_STATE(5080)] = 114020, [SMALL_STATE(5081)] = 114042, [SMALL_STATE(5082)] = 114064, [SMALL_STATE(5083)] = 114086, [SMALL_STATE(5084)] = 114118, [SMALL_STATE(5085)] = 114140, [SMALL_STATE(5086)] = 114168, [SMALL_STATE(5087)] = 114202, [SMALL_STATE(5088)] = 114230, [SMALL_STATE(5089)] = 114258, [SMALL_STATE(5090)] = 114280, [SMALL_STATE(5091)] = 114305, [SMALL_STATE(5092)] = 114330, [SMALL_STATE(5093)] = 114359, [SMALL_STATE(5094)] = 114384, [SMALL_STATE(5095)] = 114409, [SMALL_STATE(5096)] = 114438, [SMALL_STATE(5097)] = 114465, [SMALL_STATE(5098)] = 114490, [SMALL_STATE(5099)] = 114515, [SMALL_STATE(5100)] = 114542, [SMALL_STATE(5101)] = 114567, [SMALL_STATE(5102)] = 114592, [SMALL_STATE(5103)] = 114619, [SMALL_STATE(5104)] = 114648, [SMALL_STATE(5105)] = 114675, [SMALL_STATE(5106)] = 114700, [SMALL_STATE(5107)] = 114729, [SMALL_STATE(5108)] = 114754, [SMALL_STATE(5109)] = 114781, [SMALL_STATE(5110)] = 114810, [SMALL_STATE(5111)] = 114835, [SMALL_STATE(5112)] = 114864, [SMALL_STATE(5113)] = 114893, [SMALL_STATE(5114)] = 114922, [SMALL_STATE(5115)] = 114947, [SMALL_STATE(5116)] = 114976, [SMALL_STATE(5117)] = 115001, [SMALL_STATE(5118)] = 115030, [SMALL_STATE(5119)] = 115055, [SMALL_STATE(5120)] = 115084, [SMALL_STATE(5121)] = 115109, [SMALL_STATE(5122)] = 115138, [SMALL_STATE(5123)] = 115167, [SMALL_STATE(5124)] = 115192, [SMALL_STATE(5125)] = 115221, [SMALL_STATE(5126)] = 115246, [SMALL_STATE(5127)] = 115275, [SMALL_STATE(5128)] = 115304, [SMALL_STATE(5129)] = 115333, [SMALL_STATE(5130)] = 115358, [SMALL_STATE(5131)] = 115387, [SMALL_STATE(5132)] = 115416, [SMALL_STATE(5133)] = 115441, [SMALL_STATE(5134)] = 115466, [SMALL_STATE(5135)] = 115491, [SMALL_STATE(5136)] = 115516, [SMALL_STATE(5137)] = 115541, [SMALL_STATE(5138)] = 115570, [SMALL_STATE(5139)] = 115595, [SMALL_STATE(5140)] = 115620, [SMALL_STATE(5141)] = 115645, [SMALL_STATE(5142)] = 115670, [SMALL_STATE(5143)] = 115692, [SMALL_STATE(5144)] = 115718, [SMALL_STATE(5145)] = 115740, [SMALL_STATE(5146)] = 115772, [SMALL_STATE(5147)] = 115794, [SMALL_STATE(5148)] = 115816, [SMALL_STATE(5149)] = 115842, [SMALL_STATE(5150)] = 115864, [SMALL_STATE(5151)] = 115890, [SMALL_STATE(5152)] = 115906, [SMALL_STATE(5153)] = 115928, [SMALL_STATE(5154)] = 115950, [SMALL_STATE(5155)] = 115968, [SMALL_STATE(5156)] = 115990, [SMALL_STATE(5157)] = 116016, [SMALL_STATE(5158)] = 116042, [SMALL_STATE(5159)] = 116064, [SMALL_STATE(5160)] = 116084, [SMALL_STATE(5161)] = 116106, [SMALL_STATE(5162)] = 116124, [SMALL_STATE(5163)] = 116150, [SMALL_STATE(5164)] = 116172, [SMALL_STATE(5165)] = 116188, [SMALL_STATE(5166)] = 116214, [SMALL_STATE(5167)] = 116236, [SMALL_STATE(5168)] = 116252, [SMALL_STATE(5169)] = 116274, [SMALL_STATE(5170)] = 116290, [SMALL_STATE(5171)] = 116312, [SMALL_STATE(5172)] = 116338, [SMALL_STATE(5173)] = 116360, [SMALL_STATE(5174)] = 116382, [SMALL_STATE(5175)] = 116408, [SMALL_STATE(5176)] = 116430, [SMALL_STATE(5177)] = 116456, [SMALL_STATE(5178)] = 116478, [SMALL_STATE(5179)] = 116494, [SMALL_STATE(5180)] = 116516, [SMALL_STATE(5181)] = 116536, [SMALL_STATE(5182)] = 116558, [SMALL_STATE(5183)] = 116576, [SMALL_STATE(5184)] = 116592, [SMALL_STATE(5185)] = 116614, [SMALL_STATE(5186)] = 116636, [SMALL_STATE(5187)] = 116668, [SMALL_STATE(5188)] = 116690, [SMALL_STATE(5189)] = 116716, [SMALL_STATE(5190)] = 116738, [SMALL_STATE(5191)] = 116756, [SMALL_STATE(5192)] = 116778, [SMALL_STATE(5193)] = 116794, [SMALL_STATE(5194)] = 116816, [SMALL_STATE(5195)] = 116848, [SMALL_STATE(5196)] = 116870, [SMALL_STATE(5197)] = 116892, [SMALL_STATE(5198)] = 116910, [SMALL_STATE(5199)] = 116926, [SMALL_STATE(5200)] = 116948, [SMALL_STATE(5201)] = 116968, [SMALL_STATE(5202)] = 116990, [SMALL_STATE(5203)] = 117012, [SMALL_STATE(5204)] = 117038, [SMALL_STATE(5205)] = 117060, [SMALL_STATE(5206)] = 117082, [SMALL_STATE(5207)] = 117104, [SMALL_STATE(5208)] = 117126, [SMALL_STATE(5209)] = 117143, [SMALL_STATE(5210)] = 117164, [SMALL_STATE(5211)] = 117181, [SMALL_STATE(5212)] = 117202, [SMALL_STATE(5213)] = 117223, [SMALL_STATE(5214)] = 117240, [SMALL_STATE(5215)] = 117257, [SMALL_STATE(5216)] = 117274, [SMALL_STATE(5217)] = 117297, [SMALL_STATE(5218)] = 117318, [SMALL_STATE(5219)] = 117339, [SMALL_STATE(5220)] = 117356, [SMALL_STATE(5221)] = 117373, [SMALL_STATE(5222)] = 117390, [SMALL_STATE(5223)] = 117413, [SMALL_STATE(5224)] = 117434, [SMALL_STATE(5225)] = 117451, [SMALL_STATE(5226)] = 117474, [SMALL_STATE(5227)] = 117497, [SMALL_STATE(5228)] = 117514, [SMALL_STATE(5229)] = 117537, [SMALL_STATE(5230)] = 117554, [SMALL_STATE(5231)] = 117575, [SMALL_STATE(5232)] = 117592, [SMALL_STATE(5233)] = 117609, [SMALL_STATE(5234)] = 117628, [SMALL_STATE(5235)] = 117649, [SMALL_STATE(5236)] = 117672, [SMALL_STATE(5237)] = 117693, [SMALL_STATE(5238)] = 117716, [SMALL_STATE(5239)] = 117738, [SMALL_STATE(5240)] = 117760, [SMALL_STATE(5241)] = 117782, [SMALL_STATE(5242)] = 117800, [SMALL_STATE(5243)] = 117824, [SMALL_STATE(5244)] = 117848, [SMALL_STATE(5245)] = 117864, [SMALL_STATE(5246)] = 117886, [SMALL_STATE(5247)] = 117908, [SMALL_STATE(5248)] = 117926, [SMALL_STATE(5249)] = 117948, [SMALL_STATE(5250)] = 117966, [SMALL_STATE(5251)] = 117986, [SMALL_STATE(5252)] = 118004, [SMALL_STATE(5253)] = 118028, [SMALL_STATE(5254)] = 118046, [SMALL_STATE(5255)] = 118070, [SMALL_STATE(5256)] = 118094, [SMALL_STATE(5257)] = 118118, [SMALL_STATE(5258)] = 118138, [SMALL_STATE(5259)] = 118160, [SMALL_STATE(5260)] = 118178, [SMALL_STATE(5261)] = 118202, [SMALL_STATE(5262)] = 118226, [SMALL_STATE(5263)] = 118244, [SMALL_STATE(5264)] = 118266, [SMALL_STATE(5265)] = 118286, [SMALL_STATE(5266)] = 118304, [SMALL_STATE(5267)] = 118326, [SMALL_STATE(5268)] = 118348, [SMALL_STATE(5269)] = 118374, [SMALL_STATE(5270)] = 118396, [SMALL_STATE(5271)] = 118416, [SMALL_STATE(5272)] = 118438, [SMALL_STATE(5273)] = 118460, [SMALL_STATE(5274)] = 118482, [SMALL_STATE(5275)] = 118500, [SMALL_STATE(5276)] = 118518, [SMALL_STATE(5277)] = 118536, [SMALL_STATE(5278)] = 118554, [SMALL_STATE(5279)] = 118576, [SMALL_STATE(5280)] = 118600, [SMALL_STATE(5281)] = 118622, [SMALL_STATE(5282)] = 118640, [SMALL_STATE(5283)] = 118660, [SMALL_STATE(5284)] = 118682, [SMALL_STATE(5285)] = 118702, [SMALL_STATE(5286)] = 118722, [SMALL_STATE(5287)] = 118744, [SMALL_STATE(5288)] = 118768, [SMALL_STATE(5289)] = 118792, [SMALL_STATE(5290)] = 118810, [SMALL_STATE(5291)] = 118832, [SMALL_STATE(5292)] = 118850, [SMALL_STATE(5293)] = 118872, [SMALL_STATE(5294)] = 118890, [SMALL_STATE(5295)] = 118912, [SMALL_STATE(5296)] = 118926, [SMALL_STATE(5297)] = 118948, [SMALL_STATE(5298)] = 118970, [SMALL_STATE(5299)] = 118990, [SMALL_STATE(5300)] = 119012, [SMALL_STATE(5301)] = 119034, [SMALL_STATE(5302)] = 119058, [SMALL_STATE(5303)] = 119076, [SMALL_STATE(5304)] = 119094, [SMALL_STATE(5305)] = 119118, [SMALL_STATE(5306)] = 119140, [SMALL_STATE(5307)] = 119158, [SMALL_STATE(5308)] = 119176, [SMALL_STATE(5309)] = 119198, [SMALL_STATE(5310)] = 119216, [SMALL_STATE(5311)] = 119234, [SMALL_STATE(5312)] = 119252, [SMALL_STATE(5313)] = 119272, [SMALL_STATE(5314)] = 119290, [SMALL_STATE(5315)] = 119312, [SMALL_STATE(5316)] = 119336, [SMALL_STATE(5317)] = 119356, [SMALL_STATE(5318)] = 119380, [SMALL_STATE(5319)] = 119402, [SMALL_STATE(5320)] = 119420, [SMALL_STATE(5321)] = 119436, [SMALL_STATE(5322)] = 119458, [SMALL_STATE(5323)] = 119480, [SMALL_STATE(5324)] = 119506, [SMALL_STATE(5325)] = 119530, [SMALL_STATE(5326)] = 119545, [SMALL_STATE(5327)] = 119568, [SMALL_STATE(5328)] = 119591, [SMALL_STATE(5329)] = 119614, [SMALL_STATE(5330)] = 119627, [SMALL_STATE(5331)] = 119648, [SMALL_STATE(5332)] = 119671, [SMALL_STATE(5333)] = 119694, [SMALL_STATE(5334)] = 119717, [SMALL_STATE(5335)] = 119740, [SMALL_STATE(5336)] = 119753, [SMALL_STATE(5337)] = 119770, [SMALL_STATE(5338)] = 119793, [SMALL_STATE(5339)] = 119814, [SMALL_STATE(5340)] = 119837, [SMALL_STATE(5341)] = 119860, [SMALL_STATE(5342)] = 119881, [SMALL_STATE(5343)] = 119900, [SMALL_STATE(5344)] = 119921, [SMALL_STATE(5345)] = 119942, [SMALL_STATE(5346)] = 119965, [SMALL_STATE(5347)] = 119988, [SMALL_STATE(5348)] = 120011, [SMALL_STATE(5349)] = 120026, [SMALL_STATE(5350)] = 120049, [SMALL_STATE(5351)] = 120072, [SMALL_STATE(5352)] = 120095, [SMALL_STATE(5353)] = 120118, [SMALL_STATE(5354)] = 120141, [SMALL_STATE(5355)] = 120164, [SMALL_STATE(5356)] = 120187, [SMALL_STATE(5357)] = 120210, [SMALL_STATE(5358)] = 120233, [SMALL_STATE(5359)] = 120256, [SMALL_STATE(5360)] = 120279, [SMALL_STATE(5361)] = 120302, [SMALL_STATE(5362)] = 120325, [SMALL_STATE(5363)] = 120348, [SMALL_STATE(5364)] = 120371, [SMALL_STATE(5365)] = 120394, [SMALL_STATE(5366)] = 120417, [SMALL_STATE(5367)] = 120440, [SMALL_STATE(5368)] = 120463, [SMALL_STATE(5369)] = 120486, [SMALL_STATE(5370)] = 120509, [SMALL_STATE(5371)] = 120532, [SMALL_STATE(5372)] = 120555, [SMALL_STATE(5373)] = 120578, [SMALL_STATE(5374)] = 120601, [SMALL_STATE(5375)] = 120622, [SMALL_STATE(5376)] = 120645, [SMALL_STATE(5377)] = 120668, [SMALL_STATE(5378)] = 120691, [SMALL_STATE(5379)] = 120708, [SMALL_STATE(5380)] = 120731, [SMALL_STATE(5381)] = 120754, [SMALL_STATE(5382)] = 120777, [SMALL_STATE(5383)] = 120800, [SMALL_STATE(5384)] = 120823, [SMALL_STATE(5385)] = 120846, [SMALL_STATE(5386)] = 120869, [SMALL_STATE(5387)] = 120892, [SMALL_STATE(5388)] = 120915, [SMALL_STATE(5389)] = 120938, [SMALL_STATE(5390)] = 120959, [SMALL_STATE(5391)] = 120982, [SMALL_STATE(5392)] = 121005, [SMALL_STATE(5393)] = 121028, [SMALL_STATE(5394)] = 121051, [SMALL_STATE(5395)] = 121074, [SMALL_STATE(5396)] = 121097, [SMALL_STATE(5397)] = 121114, [SMALL_STATE(5398)] = 121137, [SMALL_STATE(5399)] = 121158, [SMALL_STATE(5400)] = 121181, [SMALL_STATE(5401)] = 121194, [SMALL_STATE(5402)] = 121217, [SMALL_STATE(5403)] = 121240, [SMALL_STATE(5404)] = 121263, [SMALL_STATE(5405)] = 121286, [SMALL_STATE(5406)] = 121309, [SMALL_STATE(5407)] = 121332, [SMALL_STATE(5408)] = 121353, [SMALL_STATE(5409)] = 121376, [SMALL_STATE(5410)] = 121399, [SMALL_STATE(5411)] = 121422, [SMALL_STATE(5412)] = 121445, [SMALL_STATE(5413)] = 121468, [SMALL_STATE(5414)] = 121491, [SMALL_STATE(5415)] = 121514, [SMALL_STATE(5416)] = 121537, [SMALL_STATE(5417)] = 121558, [SMALL_STATE(5418)] = 121581, [SMALL_STATE(5419)] = 121604, [SMALL_STATE(5420)] = 121627, [SMALL_STATE(5421)] = 121650, [SMALL_STATE(5422)] = 121673, [SMALL_STATE(5423)] = 121696, [SMALL_STATE(5424)] = 121719, [SMALL_STATE(5425)] = 121742, [SMALL_STATE(5426)] = 121765, [SMALL_STATE(5427)] = 121788, [SMALL_STATE(5428)] = 121809, [SMALL_STATE(5429)] = 121830, [SMALL_STATE(5430)] = 121853, [SMALL_STATE(5431)] = 121876, [SMALL_STATE(5432)] = 121897, [SMALL_STATE(5433)] = 121920, [SMALL_STATE(5434)] = 121943, [SMALL_STATE(5435)] = 121966, [SMALL_STATE(5436)] = 121989, [SMALL_STATE(5437)] = 122012, [SMALL_STATE(5438)] = 122035, [SMALL_STATE(5439)] = 122058, [SMALL_STATE(5440)] = 122081, [SMALL_STATE(5441)] = 122104, [SMALL_STATE(5442)] = 122127, [SMALL_STATE(5443)] = 122144, [SMALL_STATE(5444)] = 122167, [SMALL_STATE(5445)] = 122190, [SMALL_STATE(5446)] = 122213, [SMALL_STATE(5447)] = 122236, [SMALL_STATE(5448)] = 122259, [SMALL_STATE(5449)] = 122272, [SMALL_STATE(5450)] = 122289, [SMALL_STATE(5451)] = 122312, [SMALL_STATE(5452)] = 122335, [SMALL_STATE(5453)] = 122358, [SMALL_STATE(5454)] = 122381, [SMALL_STATE(5455)] = 122404, [SMALL_STATE(5456)] = 122427, [SMALL_STATE(5457)] = 122450, [SMALL_STATE(5458)] = 122473, [SMALL_STATE(5459)] = 122496, [SMALL_STATE(5460)] = 122519, [SMALL_STATE(5461)] = 122542, [SMALL_STATE(5462)] = 122565, [SMALL_STATE(5463)] = 122588, [SMALL_STATE(5464)] = 122611, [SMALL_STATE(5465)] = 122632, [SMALL_STATE(5466)] = 122655, [SMALL_STATE(5467)] = 122678, [SMALL_STATE(5468)] = 122701, [SMALL_STATE(5469)] = 122724, [SMALL_STATE(5470)] = 122747, [SMALL_STATE(5471)] = 122770, [SMALL_STATE(5472)] = 122793, [SMALL_STATE(5473)] = 122814, [SMALL_STATE(5474)] = 122837, [SMALL_STATE(5475)] = 122860, [SMALL_STATE(5476)] = 122883, [SMALL_STATE(5477)] = 122896, [SMALL_STATE(5478)] = 122917, [SMALL_STATE(5479)] = 122940, [SMALL_STATE(5480)] = 122963, [SMALL_STATE(5481)] = 122984, [SMALL_STATE(5482)] = 123007, [SMALL_STATE(5483)] = 123030, [SMALL_STATE(5484)] = 123046, [SMALL_STATE(5485)] = 123066, [SMALL_STATE(5486)] = 123086, [SMALL_STATE(5487)] = 123104, [SMALL_STATE(5488)] = 123124, [SMALL_STATE(5489)] = 123144, [SMALL_STATE(5490)] = 123164, [SMALL_STATE(5491)] = 123184, [SMALL_STATE(5492)] = 123204, [SMALL_STATE(5493)] = 123224, [SMALL_STATE(5494)] = 123244, [SMALL_STATE(5495)] = 123264, [SMALL_STATE(5496)] = 123284, [SMALL_STATE(5497)] = 123304, [SMALL_STATE(5498)] = 123324, [SMALL_STATE(5499)] = 123344, [SMALL_STATE(5500)] = 123364, [SMALL_STATE(5501)] = 123384, [SMALL_STATE(5502)] = 123404, [SMALL_STATE(5503)] = 123418, [SMALL_STATE(5504)] = 123438, [SMALL_STATE(5505)] = 123458, [SMALL_STATE(5506)] = 123478, [SMALL_STATE(5507)] = 123498, [SMALL_STATE(5508)] = 123518, [SMALL_STATE(5509)] = 123538, [SMALL_STATE(5510)] = 123558, [SMALL_STATE(5511)] = 123578, [SMALL_STATE(5512)] = 123598, [SMALL_STATE(5513)] = 123618, [SMALL_STATE(5514)] = 123638, [SMALL_STATE(5515)] = 123658, [SMALL_STATE(5516)] = 123678, [SMALL_STATE(5517)] = 123698, [SMALL_STATE(5518)] = 123716, [SMALL_STATE(5519)] = 123736, [SMALL_STATE(5520)] = 123752, [SMALL_STATE(5521)] = 123770, [SMALL_STATE(5522)] = 123790, [SMALL_STATE(5523)] = 123810, [SMALL_STATE(5524)] = 123830, [SMALL_STATE(5525)] = 123842, [SMALL_STATE(5526)] = 123860, [SMALL_STATE(5527)] = 123880, [SMALL_STATE(5528)] = 123900, [SMALL_STATE(5529)] = 123916, [SMALL_STATE(5530)] = 123936, [SMALL_STATE(5531)] = 123956, [SMALL_STATE(5532)] = 123976, [SMALL_STATE(5533)] = 123996, [SMALL_STATE(5534)] = 124016, [SMALL_STATE(5535)] = 124036, [SMALL_STATE(5536)] = 124056, [SMALL_STATE(5537)] = 124076, [SMALL_STATE(5538)] = 124096, [SMALL_STATE(5539)] = 124116, [SMALL_STATE(5540)] = 124136, [SMALL_STATE(5541)] = 124156, [SMALL_STATE(5542)] = 124176, [SMALL_STATE(5543)] = 124192, [SMALL_STATE(5544)] = 124212, [SMALL_STATE(5545)] = 124232, [SMALL_STATE(5546)] = 124248, [SMALL_STATE(5547)] = 124268, [SMALL_STATE(5548)] = 124288, [SMALL_STATE(5549)] = 124308, [SMALL_STATE(5550)] = 124328, [SMALL_STATE(5551)] = 124348, [SMALL_STATE(5552)] = 124364, [SMALL_STATE(5553)] = 124384, [SMALL_STATE(5554)] = 124396, [SMALL_STATE(5555)] = 124414, [SMALL_STATE(5556)] = 124434, [SMALL_STATE(5557)] = 124454, [SMALL_STATE(5558)] = 124474, [SMALL_STATE(5559)] = 124494, [SMALL_STATE(5560)] = 124514, [SMALL_STATE(5561)] = 124532, [SMALL_STATE(5562)] = 124552, [SMALL_STATE(5563)] = 124572, [SMALL_STATE(5564)] = 124589, [SMALL_STATE(5565)] = 124600, [SMALL_STATE(5566)] = 124615, [SMALL_STATE(5567)] = 124626, [SMALL_STATE(5568)] = 124637, [SMALL_STATE(5569)] = 124654, [SMALL_STATE(5570)] = 124669, [SMALL_STATE(5571)] = 124686, [SMALL_STATE(5572)] = 124703, [SMALL_STATE(5573)] = 124718, [SMALL_STATE(5574)] = 124735, [SMALL_STATE(5575)] = 124748, [SMALL_STATE(5576)] = 124765, [SMALL_STATE(5577)] = 124780, [SMALL_STATE(5578)] = 124797, [SMALL_STATE(5579)] = 124810, [SMALL_STATE(5580)] = 124825, [SMALL_STATE(5581)] = 124842, [SMALL_STATE(5582)] = 124853, [SMALL_STATE(5583)] = 124870, [SMALL_STATE(5584)] = 124885, [SMALL_STATE(5585)] = 124902, [SMALL_STATE(5586)] = 124917, [SMALL_STATE(5587)] = 124932, [SMALL_STATE(5588)] = 124945, [SMALL_STATE(5589)] = 124960, [SMALL_STATE(5590)] = 124973, [SMALL_STATE(5591)] = 124984, [SMALL_STATE(5592)] = 124995, [SMALL_STATE(5593)] = 125006, [SMALL_STATE(5594)] = 125021, [SMALL_STATE(5595)] = 125038, [SMALL_STATE(5596)] = 125049, [SMALL_STATE(5597)] = 125062, [SMALL_STATE(5598)] = 125077, [SMALL_STATE(5599)] = 125088, [SMALL_STATE(5600)] = 125101, [SMALL_STATE(5601)] = 125112, [SMALL_STATE(5602)] = 125123, [SMALL_STATE(5603)] = 125134, [SMALL_STATE(5604)] = 125151, [SMALL_STATE(5605)] = 125168, [SMALL_STATE(5606)] = 125179, [SMALL_STATE(5607)] = 125194, [SMALL_STATE(5608)] = 125205, [SMALL_STATE(5609)] = 125220, [SMALL_STATE(5610)] = 125235, [SMALL_STATE(5611)] = 125252, [SMALL_STATE(5612)] = 125267, [SMALL_STATE(5613)] = 125282, [SMALL_STATE(5614)] = 125297, [SMALL_STATE(5615)] = 125312, [SMALL_STATE(5616)] = 125329, [SMALL_STATE(5617)] = 125344, [SMALL_STATE(5618)] = 125361, [SMALL_STATE(5619)] = 125376, [SMALL_STATE(5620)] = 125391, [SMALL_STATE(5621)] = 125404, [SMALL_STATE(5622)] = 125415, [SMALL_STATE(5623)] = 125430, [SMALL_STATE(5624)] = 125447, [SMALL_STATE(5625)] = 125458, [SMALL_STATE(5626)] = 125473, [SMALL_STATE(5627)] = 125490, [SMALL_STATE(5628)] = 125501, [SMALL_STATE(5629)] = 125516, [SMALL_STATE(5630)] = 125527, [SMALL_STATE(5631)] = 125542, [SMALL_STATE(5632)] = 125553, [SMALL_STATE(5633)] = 125564, [SMALL_STATE(5634)] = 125581, [SMALL_STATE(5635)] = 125592, [SMALL_STATE(5636)] = 125603, [SMALL_STATE(5637)] = 125620, [SMALL_STATE(5638)] = 125631, [SMALL_STATE(5639)] = 125646, [SMALL_STATE(5640)] = 125661, [SMALL_STATE(5641)] = 125676, [SMALL_STATE(5642)] = 125693, [SMALL_STATE(5643)] = 125704, [SMALL_STATE(5644)] = 125721, [SMALL_STATE(5645)] = 125736, [SMALL_STATE(5646)] = 125751, [SMALL_STATE(5647)] = 125766, [SMALL_STATE(5648)] = 125777, [SMALL_STATE(5649)] = 125792, [SMALL_STATE(5650)] = 125803, [SMALL_STATE(5651)] = 125818, [SMALL_STATE(5652)] = 125829, [SMALL_STATE(5653)] = 125846, [SMALL_STATE(5654)] = 125857, [SMALL_STATE(5655)] = 125868, [SMALL_STATE(5656)] = 125883, [SMALL_STATE(5657)] = 125900, [SMALL_STATE(5658)] = 125911, [SMALL_STATE(5659)] = 125922, [SMALL_STATE(5660)] = 125933, [SMALL_STATE(5661)] = 125950, [SMALL_STATE(5662)] = 125961, [SMALL_STATE(5663)] = 125972, [SMALL_STATE(5664)] = 125989, [SMALL_STATE(5665)] = 126000, [SMALL_STATE(5666)] = 126011, [SMALL_STATE(5667)] = 126022, [SMALL_STATE(5668)] = 126039, [SMALL_STATE(5669)] = 126054, [SMALL_STATE(5670)] = 126065, [SMALL_STATE(5671)] = 126082, [SMALL_STATE(5672)] = 126093, [SMALL_STATE(5673)] = 126104, [SMALL_STATE(5674)] = 126115, [SMALL_STATE(5675)] = 126130, [SMALL_STATE(5676)] = 126141, [SMALL_STATE(5677)] = 126152, [SMALL_STATE(5678)] = 126163, [SMALL_STATE(5679)] = 126178, [SMALL_STATE(5680)] = 126189, [SMALL_STATE(5681)] = 126204, [SMALL_STATE(5682)] = 126215, [SMALL_STATE(5683)] = 126226, [SMALL_STATE(5684)] = 126237, [SMALL_STATE(5685)] = 126248, [SMALL_STATE(5686)] = 126265, [SMALL_STATE(5687)] = 126282, [SMALL_STATE(5688)] = 126293, [SMALL_STATE(5689)] = 126308, [SMALL_STATE(5690)] = 126319, [SMALL_STATE(5691)] = 126330, [SMALL_STATE(5692)] = 126341, [SMALL_STATE(5693)] = 126358, [SMALL_STATE(5694)] = 126373, [SMALL_STATE(5695)] = 126388, [SMALL_STATE(5696)] = 126399, [SMALL_STATE(5697)] = 126410, [SMALL_STATE(5698)] = 126421, [SMALL_STATE(5699)] = 126432, [SMALL_STATE(5700)] = 126449, [SMALL_STATE(5701)] = 126464, [SMALL_STATE(5702)] = 126479, [SMALL_STATE(5703)] = 126496, [SMALL_STATE(5704)] = 126509, [SMALL_STATE(5705)] = 126522, [SMALL_STATE(5706)] = 126533, [SMALL_STATE(5707)] = 126550, [SMALL_STATE(5708)] = 126565, [SMALL_STATE(5709)] = 126582, [SMALL_STATE(5710)] = 126599, [SMALL_STATE(5711)] = 126614, [SMALL_STATE(5712)] = 126631, [SMALL_STATE(5713)] = 126648, [SMALL_STATE(5714)] = 126663, [SMALL_STATE(5715)] = 126676, [SMALL_STATE(5716)] = 126691, [SMALL_STATE(5717)] = 126708, [SMALL_STATE(5718)] = 126725, [SMALL_STATE(5719)] = 126740, [SMALL_STATE(5720)] = 126757, [SMALL_STATE(5721)] = 126772, [SMALL_STATE(5722)] = 126787, [SMALL_STATE(5723)] = 126802, [SMALL_STATE(5724)] = 126815, [SMALL_STATE(5725)] = 126830, [SMALL_STATE(5726)] = 126847, [SMALL_STATE(5727)] = 126858, [SMALL_STATE(5728)] = 126875, [SMALL_STATE(5729)] = 126890, [SMALL_STATE(5730)] = 126905, [SMALL_STATE(5731)] = 126918, [SMALL_STATE(5732)] = 126932, [SMALL_STATE(5733)] = 126946, [SMALL_STATE(5734)] = 126960, [SMALL_STATE(5735)] = 126974, [SMALL_STATE(5736)] = 126988, [SMALL_STATE(5737)] = 127002, [SMALL_STATE(5738)] = 127016, [SMALL_STATE(5739)] = 127030, [SMALL_STATE(5740)] = 127044, [SMALL_STATE(5741)] = 127058, [SMALL_STATE(5742)] = 127072, [SMALL_STATE(5743)] = 127086, [SMALL_STATE(5744)] = 127100, [SMALL_STATE(5745)] = 127114, [SMALL_STATE(5746)] = 127128, [SMALL_STATE(5747)] = 127142, [SMALL_STATE(5748)] = 127156, [SMALL_STATE(5749)] = 127170, [SMALL_STATE(5750)] = 127184, [SMALL_STATE(5751)] = 127198, [SMALL_STATE(5752)] = 127212, [SMALL_STATE(5753)] = 127226, [SMALL_STATE(5754)] = 127240, [SMALL_STATE(5755)] = 127254, [SMALL_STATE(5756)] = 127268, [SMALL_STATE(5757)] = 127282, [SMALL_STATE(5758)] = 127296, [SMALL_STATE(5759)] = 127310, [SMALL_STATE(5760)] = 127324, [SMALL_STATE(5761)] = 127338, [SMALL_STATE(5762)] = 127350, [SMALL_STATE(5763)] = 127364, [SMALL_STATE(5764)] = 127378, [SMALL_STATE(5765)] = 127392, [SMALL_STATE(5766)] = 127406, [SMALL_STATE(5767)] = 127420, [SMALL_STATE(5768)] = 127434, [SMALL_STATE(5769)] = 127448, [SMALL_STATE(5770)] = 127462, [SMALL_STATE(5771)] = 127476, [SMALL_STATE(5772)] = 127490, [SMALL_STATE(5773)] = 127504, [SMALL_STATE(5774)] = 127518, [SMALL_STATE(5775)] = 127532, [SMALL_STATE(5776)] = 127546, [SMALL_STATE(5777)] = 127560, [SMALL_STATE(5778)] = 127574, [SMALL_STATE(5779)] = 127588, [SMALL_STATE(5780)] = 127602, [SMALL_STATE(5781)] = 127616, [SMALL_STATE(5782)] = 127630, [SMALL_STATE(5783)] = 127644, [SMALL_STATE(5784)] = 127658, [SMALL_STATE(5785)] = 127672, [SMALL_STATE(5786)] = 127686, [SMALL_STATE(5787)] = 127700, [SMALL_STATE(5788)] = 127714, [SMALL_STATE(5789)] = 127728, [SMALL_STATE(5790)] = 127742, [SMALL_STATE(5791)] = 127756, [SMALL_STATE(5792)] = 127770, [SMALL_STATE(5793)] = 127784, [SMALL_STATE(5794)] = 127798, [SMALL_STATE(5795)] = 127812, [SMALL_STATE(5796)] = 127824, [SMALL_STATE(5797)] = 127838, [SMALL_STATE(5798)] = 127852, [SMALL_STATE(5799)] = 127866, [SMALL_STATE(5800)] = 127880, [SMALL_STATE(5801)] = 127894, [SMALL_STATE(5802)] = 127908, [SMALL_STATE(5803)] = 127922, [SMALL_STATE(5804)] = 127936, [SMALL_STATE(5805)] = 127950, [SMALL_STATE(5806)] = 127964, [SMALL_STATE(5807)] = 127978, [SMALL_STATE(5808)] = 127992, [SMALL_STATE(5809)] = 128006, [SMALL_STATE(5810)] = 128020, [SMALL_STATE(5811)] = 128034, [SMALL_STATE(5812)] = 128048, [SMALL_STATE(5813)] = 128062, [SMALL_STATE(5814)] = 128076, [SMALL_STATE(5815)] = 128090, [SMALL_STATE(5816)] = 128104, [SMALL_STATE(5817)] = 128118, [SMALL_STATE(5818)] = 128132, [SMALL_STATE(5819)] = 128146, [SMALL_STATE(5820)] = 128160, [SMALL_STATE(5821)] = 128174, [SMALL_STATE(5822)] = 128188, [SMALL_STATE(5823)] = 128202, [SMALL_STATE(5824)] = 128216, [SMALL_STATE(5825)] = 128230, [SMALL_STATE(5826)] = 128244, [SMALL_STATE(5827)] = 128258, [SMALL_STATE(5828)] = 128272, [SMALL_STATE(5829)] = 128286, [SMALL_STATE(5830)] = 128300, [SMALL_STATE(5831)] = 128314, [SMALL_STATE(5832)] = 128328, [SMALL_STATE(5833)] = 128342, [SMALL_STATE(5834)] = 128356, [SMALL_STATE(5835)] = 128370, [SMALL_STATE(5836)] = 128384, [SMALL_STATE(5837)] = 128398, [SMALL_STATE(5838)] = 128412, [SMALL_STATE(5839)] = 128426, [SMALL_STATE(5840)] = 128440, [SMALL_STATE(5841)] = 128454, [SMALL_STATE(5842)] = 128468, [SMALL_STATE(5843)] = 128482, [SMALL_STATE(5844)] = 128496, [SMALL_STATE(5845)] = 128510, [SMALL_STATE(5846)] = 128524, [SMALL_STATE(5847)] = 128538, [SMALL_STATE(5848)] = 128552, [SMALL_STATE(5849)] = 128566, [SMALL_STATE(5850)] = 128580, [SMALL_STATE(5851)] = 128594, [SMALL_STATE(5852)] = 128608, [SMALL_STATE(5853)] = 128622, [SMALL_STATE(5854)] = 128636, [SMALL_STATE(5855)] = 128650, [SMALL_STATE(5856)] = 128664, [SMALL_STATE(5857)] = 128678, [SMALL_STATE(5858)] = 128692, [SMALL_STATE(5859)] = 128706, [SMALL_STATE(5860)] = 128718, [SMALL_STATE(5861)] = 128732, [SMALL_STATE(5862)] = 128746, [SMALL_STATE(5863)] = 128760, [SMALL_STATE(5864)] = 128774, [SMALL_STATE(5865)] = 128788, [SMALL_STATE(5866)] = 128802, [SMALL_STATE(5867)] = 128816, [SMALL_STATE(5868)] = 128830, [SMALL_STATE(5869)] = 128844, [SMALL_STATE(5870)] = 128858, [SMALL_STATE(5871)] = 128872, [SMALL_STATE(5872)] = 128886, [SMALL_STATE(5873)] = 128900, [SMALL_STATE(5874)] = 128914, [SMALL_STATE(5875)] = 128928, [SMALL_STATE(5876)] = 128942, [SMALL_STATE(5877)] = 128956, [SMALL_STATE(5878)] = 128970, [SMALL_STATE(5879)] = 128984, [SMALL_STATE(5880)] = 128998, [SMALL_STATE(5881)] = 129012, [SMALL_STATE(5882)] = 129026, [SMALL_STATE(5883)] = 129040, [SMALL_STATE(5884)] = 129054, [SMALL_STATE(5885)] = 129068, [SMALL_STATE(5886)] = 129082, [SMALL_STATE(5887)] = 129094, [SMALL_STATE(5888)] = 129108, [SMALL_STATE(5889)] = 129122, [SMALL_STATE(5890)] = 129136, [SMALL_STATE(5891)] = 129150, [SMALL_STATE(5892)] = 129162, [SMALL_STATE(5893)] = 129176, [SMALL_STATE(5894)] = 129190, [SMALL_STATE(5895)] = 129204, [SMALL_STATE(5896)] = 129218, [SMALL_STATE(5897)] = 129232, [SMALL_STATE(5898)] = 129246, [SMALL_STATE(5899)] = 129260, [SMALL_STATE(5900)] = 129274, [SMALL_STATE(5901)] = 129288, [SMALL_STATE(5902)] = 129302, [SMALL_STATE(5903)] = 129316, [SMALL_STATE(5904)] = 129330, [SMALL_STATE(5905)] = 129344, [SMALL_STATE(5906)] = 129358, [SMALL_STATE(5907)] = 129372, [SMALL_STATE(5908)] = 129386, [SMALL_STATE(5909)] = 129400, [SMALL_STATE(5910)] = 129414, [SMALL_STATE(5911)] = 129428, [SMALL_STATE(5912)] = 129442, [SMALL_STATE(5913)] = 129456, [SMALL_STATE(5914)] = 129470, [SMALL_STATE(5915)] = 129484, [SMALL_STATE(5916)] = 129498, [SMALL_STATE(5917)] = 129512, [SMALL_STATE(5918)] = 129526, [SMALL_STATE(5919)] = 129540, [SMALL_STATE(5920)] = 129554, [SMALL_STATE(5921)] = 129568, [SMALL_STATE(5922)] = 129582, [SMALL_STATE(5923)] = 129596, [SMALL_STATE(5924)] = 129610, [SMALL_STATE(5925)] = 129624, [SMALL_STATE(5926)] = 129638, [SMALL_STATE(5927)] = 129652, [SMALL_STATE(5928)] = 129666, [SMALL_STATE(5929)] = 129680, [SMALL_STATE(5930)] = 129694, [SMALL_STATE(5931)] = 129708, [SMALL_STATE(5932)] = 129722, [SMALL_STATE(5933)] = 129736, [SMALL_STATE(5934)] = 129750, [SMALL_STATE(5935)] = 129764, [SMALL_STATE(5936)] = 129778, [SMALL_STATE(5937)] = 129792, [SMALL_STATE(5938)] = 129806, [SMALL_STATE(5939)] = 129820, [SMALL_STATE(5940)] = 129834, [SMALL_STATE(5941)] = 129848, [SMALL_STATE(5942)] = 129862, [SMALL_STATE(5943)] = 129876, [SMALL_STATE(5944)] = 129890, [SMALL_STATE(5945)] = 129904, [SMALL_STATE(5946)] = 129918, [SMALL_STATE(5947)] = 129932, [SMALL_STATE(5948)] = 129946, [SMALL_STATE(5949)] = 129960, [SMALL_STATE(5950)] = 129974, [SMALL_STATE(5951)] = 129988, [SMALL_STATE(5952)] = 130002, [SMALL_STATE(5953)] = 130016, [SMALL_STATE(5954)] = 130030, [SMALL_STATE(5955)] = 130044, [SMALL_STATE(5956)] = 130058, [SMALL_STATE(5957)] = 130072, [SMALL_STATE(5958)] = 130086, [SMALL_STATE(5959)] = 130100, [SMALL_STATE(5960)] = 130114, [SMALL_STATE(5961)] = 130128, [SMALL_STATE(5962)] = 130142, [SMALL_STATE(5963)] = 130156, [SMALL_STATE(5964)] = 130170, [SMALL_STATE(5965)] = 130184, [SMALL_STATE(5966)] = 130198, [SMALL_STATE(5967)] = 130212, [SMALL_STATE(5968)] = 130226, [SMALL_STATE(5969)] = 130240, [SMALL_STATE(5970)] = 130254, [SMALL_STATE(5971)] = 130268, [SMALL_STATE(5972)] = 130282, [SMALL_STATE(5973)] = 130296, [SMALL_STATE(5974)] = 130310, [SMALL_STATE(5975)] = 130324, [SMALL_STATE(5976)] = 130338, [SMALL_STATE(5977)] = 130352, [SMALL_STATE(5978)] = 130366, [SMALL_STATE(5979)] = 130380, [SMALL_STATE(5980)] = 130394, [SMALL_STATE(5981)] = 130408, [SMALL_STATE(5982)] = 130422, [SMALL_STATE(5983)] = 130436, [SMALL_STATE(5984)] = 130450, [SMALL_STATE(5985)] = 130464, [SMALL_STATE(5986)] = 130478, [SMALL_STATE(5987)] = 130492, [SMALL_STATE(5988)] = 130506, [SMALL_STATE(5989)] = 130520, [SMALL_STATE(5990)] = 130534, [SMALL_STATE(5991)] = 130548, [SMALL_STATE(5992)] = 130562, [SMALL_STATE(5993)] = 130576, [SMALL_STATE(5994)] = 130590, [SMALL_STATE(5995)] = 130604, [SMALL_STATE(5996)] = 130618, [SMALL_STATE(5997)] = 130632, [SMALL_STATE(5998)] = 130646, [SMALL_STATE(5999)] = 130660, [SMALL_STATE(6000)] = 130674, [SMALL_STATE(6001)] = 130684, [SMALL_STATE(6002)] = 130698, [SMALL_STATE(6003)] = 130712, [SMALL_STATE(6004)] = 130726, [SMALL_STATE(6005)] = 130740, [SMALL_STATE(6006)] = 130754, [SMALL_STATE(6007)] = 130768, [SMALL_STATE(6008)] = 130782, [SMALL_STATE(6009)] = 130796, [SMALL_STATE(6010)] = 130810, [SMALL_STATE(6011)] = 130824, [SMALL_STATE(6012)] = 130838, [SMALL_STATE(6013)] = 130852, [SMALL_STATE(6014)] = 130866, [SMALL_STATE(6015)] = 130880, [SMALL_STATE(6016)] = 130894, [SMALL_STATE(6017)] = 130908, [SMALL_STATE(6018)] = 130922, [SMALL_STATE(6019)] = 130936, [SMALL_STATE(6020)] = 130950, [SMALL_STATE(6021)] = 130964, [SMALL_STATE(6022)] = 130978, [SMALL_STATE(6023)] = 130992, [SMALL_STATE(6024)] = 131006, [SMALL_STATE(6025)] = 131020, [SMALL_STATE(6026)] = 131034, [SMALL_STATE(6027)] = 131048, [SMALL_STATE(6028)] = 131062, [SMALL_STATE(6029)] = 131076, [SMALL_STATE(6030)] = 131090, [SMALL_STATE(6031)] = 131104, [SMALL_STATE(6032)] = 131118, [SMALL_STATE(6033)] = 131132, [SMALL_STATE(6034)] = 131146, [SMALL_STATE(6035)] = 131160, [SMALL_STATE(6036)] = 131174, [SMALL_STATE(6037)] = 131188, [SMALL_STATE(6038)] = 131202, [SMALL_STATE(6039)] = 131216, [SMALL_STATE(6040)] = 131230, [SMALL_STATE(6041)] = 131244, [SMALL_STATE(6042)] = 131258, [SMALL_STATE(6043)] = 131272, [SMALL_STATE(6044)] = 131286, [SMALL_STATE(6045)] = 131300, [SMALL_STATE(6046)] = 131314, [SMALL_STATE(6047)] = 131328, [SMALL_STATE(6048)] = 131338, [SMALL_STATE(6049)] = 131352, [SMALL_STATE(6050)] = 131364, [SMALL_STATE(6051)] = 131378, [SMALL_STATE(6052)] = 131392, [SMALL_STATE(6053)] = 131406, [SMALL_STATE(6054)] = 131420, [SMALL_STATE(6055)] = 131434, [SMALL_STATE(6056)] = 131448, [SMALL_STATE(6057)] = 131462, [SMALL_STATE(6058)] = 131476, [SMALL_STATE(6059)] = 131490, [SMALL_STATE(6060)] = 131504, [SMALL_STATE(6061)] = 131518, [SMALL_STATE(6062)] = 131532, [SMALL_STATE(6063)] = 131542, [SMALL_STATE(6064)] = 131556, [SMALL_STATE(6065)] = 131570, [SMALL_STATE(6066)] = 131584, [SMALL_STATE(6067)] = 131598, [SMALL_STATE(6068)] = 131612, [SMALL_STATE(6069)] = 131626, [SMALL_STATE(6070)] = 131640, [SMALL_STATE(6071)] = 131654, [SMALL_STATE(6072)] = 131668, [SMALL_STATE(6073)] = 131682, [SMALL_STATE(6074)] = 131696, [SMALL_STATE(6075)] = 131710, [SMALL_STATE(6076)] = 131724, [SMALL_STATE(6077)] = 131738, [SMALL_STATE(6078)] = 131752, [SMALL_STATE(6079)] = 131766, [SMALL_STATE(6080)] = 131780, [SMALL_STATE(6081)] = 131794, [SMALL_STATE(6082)] = 131808, [SMALL_STATE(6083)] = 131822, [SMALL_STATE(6084)] = 131836, [SMALL_STATE(6085)] = 131850, [SMALL_STATE(6086)] = 131864, [SMALL_STATE(6087)] = 131878, [SMALL_STATE(6088)] = 131892, [SMALL_STATE(6089)] = 131906, [SMALL_STATE(6090)] = 131920, [SMALL_STATE(6091)] = 131930, [SMALL_STATE(6092)] = 131944, [SMALL_STATE(6093)] = 131958, [SMALL_STATE(6094)] = 131972, [SMALL_STATE(6095)] = 131986, [SMALL_STATE(6096)] = 132000, [SMALL_STATE(6097)] = 132014, [SMALL_STATE(6098)] = 132028, [SMALL_STATE(6099)] = 132042, [SMALL_STATE(6100)] = 132056, [SMALL_STATE(6101)] = 132070, [SMALL_STATE(6102)] = 132084, [SMALL_STATE(6103)] = 132098, [SMALL_STATE(6104)] = 132112, [SMALL_STATE(6105)] = 132126, [SMALL_STATE(6106)] = 132140, [SMALL_STATE(6107)] = 132154, [SMALL_STATE(6108)] = 132168, [SMALL_STATE(6109)] = 132182, [SMALL_STATE(6110)] = 132196, [SMALL_STATE(6111)] = 132210, [SMALL_STATE(6112)] = 132224, [SMALL_STATE(6113)] = 132238, [SMALL_STATE(6114)] = 132252, [SMALL_STATE(6115)] = 132266, [SMALL_STATE(6116)] = 132280, [SMALL_STATE(6117)] = 132294, [SMALL_STATE(6118)] = 132308, [SMALL_STATE(6119)] = 132318, [SMALL_STATE(6120)] = 132332, [SMALL_STATE(6121)] = 132346, [SMALL_STATE(6122)] = 132360, [SMALL_STATE(6123)] = 132374, [SMALL_STATE(6124)] = 132388, [SMALL_STATE(6125)] = 132402, [SMALL_STATE(6126)] = 132416, [SMALL_STATE(6127)] = 132430, [SMALL_STATE(6128)] = 132444, [SMALL_STATE(6129)] = 132456, [SMALL_STATE(6130)] = 132470, [SMALL_STATE(6131)] = 132484, [SMALL_STATE(6132)] = 132498, [SMALL_STATE(6133)] = 132512, [SMALL_STATE(6134)] = 132526, [SMALL_STATE(6135)] = 132540, [SMALL_STATE(6136)] = 132554, [SMALL_STATE(6137)] = 132566, [SMALL_STATE(6138)] = 132580, [SMALL_STATE(6139)] = 132594, [SMALL_STATE(6140)] = 132608, [SMALL_STATE(6141)] = 132622, [SMALL_STATE(6142)] = 132636, [SMALL_STATE(6143)] = 132650, [SMALL_STATE(6144)] = 132664, [SMALL_STATE(6145)] = 132678, [SMALL_STATE(6146)] = 132692, [SMALL_STATE(6147)] = 132706, [SMALL_STATE(6148)] = 132720, [SMALL_STATE(6149)] = 132734, [SMALL_STATE(6150)] = 132744, [SMALL_STATE(6151)] = 132758, [SMALL_STATE(6152)] = 132772, [SMALL_STATE(6153)] = 132786, [SMALL_STATE(6154)] = 132800, [SMALL_STATE(6155)] = 132814, [SMALL_STATE(6156)] = 132828, [SMALL_STATE(6157)] = 132842, [SMALL_STATE(6158)] = 132856, [SMALL_STATE(6159)] = 132870, [SMALL_STATE(6160)] = 132884, [SMALL_STATE(6161)] = 132898, [SMALL_STATE(6162)] = 132912, [SMALL_STATE(6163)] = 132926, [SMALL_STATE(6164)] = 132940, [SMALL_STATE(6165)] = 132954, [SMALL_STATE(6166)] = 132968, [SMALL_STATE(6167)] = 132982, [SMALL_STATE(6168)] = 132996, [SMALL_STATE(6169)] = 133006, [SMALL_STATE(6170)] = 133020, [SMALL_STATE(6171)] = 133034, [SMALL_STATE(6172)] = 133048, [SMALL_STATE(6173)] = 133062, [SMALL_STATE(6174)] = 133076, [SMALL_STATE(6175)] = 133090, [SMALL_STATE(6176)] = 133104, [SMALL_STATE(6177)] = 133118, [SMALL_STATE(6178)] = 133132, [SMALL_STATE(6179)] = 133146, [SMALL_STATE(6180)] = 133160, [SMALL_STATE(6181)] = 133174, [SMALL_STATE(6182)] = 133188, [SMALL_STATE(6183)] = 133202, [SMALL_STATE(6184)] = 133216, [SMALL_STATE(6185)] = 133230, [SMALL_STATE(6186)] = 133244, [SMALL_STATE(6187)] = 133258, [SMALL_STATE(6188)] = 133272, [SMALL_STATE(6189)] = 133282, [SMALL_STATE(6190)] = 133296, [SMALL_STATE(6191)] = 133310, [SMALL_STATE(6192)] = 133324, [SMALL_STATE(6193)] = 133338, [SMALL_STATE(6194)] = 133352, [SMALL_STATE(6195)] = 133366, [SMALL_STATE(6196)] = 133380, [SMALL_STATE(6197)] = 133394, [SMALL_STATE(6198)] = 133408, [SMALL_STATE(6199)] = 133422, [SMALL_STATE(6200)] = 133436, [SMALL_STATE(6201)] = 133450, [SMALL_STATE(6202)] = 133464, [SMALL_STATE(6203)] = 133478, [SMALL_STATE(6204)] = 133492, [SMALL_STATE(6205)] = 133506, [SMALL_STATE(6206)] = 133520, [SMALL_STATE(6207)] = 133534, [SMALL_STATE(6208)] = 133548, [SMALL_STATE(6209)] = 133562, [SMALL_STATE(6210)] = 133576, [SMALL_STATE(6211)] = 133590, [SMALL_STATE(6212)] = 133604, [SMALL_STATE(6213)] = 133618, [SMALL_STATE(6214)] = 133632, [SMALL_STATE(6215)] = 133646, [SMALL_STATE(6216)] = 133660, [SMALL_STATE(6217)] = 133674, [SMALL_STATE(6218)] = 133688, [SMALL_STATE(6219)] = 133702, [SMALL_STATE(6220)] = 133716, [SMALL_STATE(6221)] = 133730, [SMALL_STATE(6222)] = 133744, [SMALL_STATE(6223)] = 133758, [SMALL_STATE(6224)] = 133772, [SMALL_STATE(6225)] = 133786, [SMALL_STATE(6226)] = 133800, [SMALL_STATE(6227)] = 133814, [SMALL_STATE(6228)] = 133828, [SMALL_STATE(6229)] = 133842, [SMALL_STATE(6230)] = 133856, [SMALL_STATE(6231)] = 133870, [SMALL_STATE(6232)] = 133884, [SMALL_STATE(6233)] = 133898, [SMALL_STATE(6234)] = 133912, [SMALL_STATE(6235)] = 133926, [SMALL_STATE(6236)] = 133940, [SMALL_STATE(6237)] = 133954, [SMALL_STATE(6238)] = 133968, [SMALL_STATE(6239)] = 133982, [SMALL_STATE(6240)] = 133992, [SMALL_STATE(6241)] = 134006, [SMALL_STATE(6242)] = 134020, [SMALL_STATE(6243)] = 134034, [SMALL_STATE(6244)] = 134048, [SMALL_STATE(6245)] = 134062, [SMALL_STATE(6246)] = 134076, [SMALL_STATE(6247)] = 134090, [SMALL_STATE(6248)] = 134104, [SMALL_STATE(6249)] = 134118, [SMALL_STATE(6250)] = 134132, [SMALL_STATE(6251)] = 134144, [SMALL_STATE(6252)] = 134158, [SMALL_STATE(6253)] = 134172, [SMALL_STATE(6254)] = 134186, [SMALL_STATE(6255)] = 134200, [SMALL_STATE(6256)] = 134214, [SMALL_STATE(6257)] = 134228, [SMALL_STATE(6258)] = 134242, [SMALL_STATE(6259)] = 134256, [SMALL_STATE(6260)] = 134270, [SMALL_STATE(6261)] = 134284, [SMALL_STATE(6262)] = 134298, [SMALL_STATE(6263)] = 134312, [SMALL_STATE(6264)] = 134326, [SMALL_STATE(6265)] = 134340, [SMALL_STATE(6266)] = 134354, [SMALL_STATE(6267)] = 134368, [SMALL_STATE(6268)] = 134382, [SMALL_STATE(6269)] = 134396, [SMALL_STATE(6270)] = 134410, [SMALL_STATE(6271)] = 134424, [SMALL_STATE(6272)] = 134438, [SMALL_STATE(6273)] = 134452, [SMALL_STATE(6274)] = 134466, [SMALL_STATE(6275)] = 134480, [SMALL_STATE(6276)] = 134494, [SMALL_STATE(6277)] = 134508, [SMALL_STATE(6278)] = 134522, [SMALL_STATE(6279)] = 134536, [SMALL_STATE(6280)] = 134550, [SMALL_STATE(6281)] = 134564, [SMALL_STATE(6282)] = 134576, [SMALL_STATE(6283)] = 134590, [SMALL_STATE(6284)] = 134604, [SMALL_STATE(6285)] = 134618, [SMALL_STATE(6286)] = 134632, [SMALL_STATE(6287)] = 134646, [SMALL_STATE(6288)] = 134660, [SMALL_STATE(6289)] = 134674, [SMALL_STATE(6290)] = 134688, [SMALL_STATE(6291)] = 134702, [SMALL_STATE(6292)] = 134716, [SMALL_STATE(6293)] = 134730, [SMALL_STATE(6294)] = 134740, [SMALL_STATE(6295)] = 134750, [SMALL_STATE(6296)] = 134764, [SMALL_STATE(6297)] = 134778, [SMALL_STATE(6298)] = 134792, [SMALL_STATE(6299)] = 134806, [SMALL_STATE(6300)] = 134820, [SMALL_STATE(6301)] = 134834, [SMALL_STATE(6302)] = 134846, [SMALL_STATE(6303)] = 134860, [SMALL_STATE(6304)] = 134874, [SMALL_STATE(6305)] = 134888, [SMALL_STATE(6306)] = 134902, [SMALL_STATE(6307)] = 134916, [SMALL_STATE(6308)] = 134930, [SMALL_STATE(6309)] = 134944, [SMALL_STATE(6310)] = 134958, [SMALL_STATE(6311)] = 134972, [SMALL_STATE(6312)] = 134986, [SMALL_STATE(6313)] = 134998, [SMALL_STATE(6314)] = 135012, [SMALL_STATE(6315)] = 135026, [SMALL_STATE(6316)] = 135040, [SMALL_STATE(6317)] = 135054, [SMALL_STATE(6318)] = 135068, [SMALL_STATE(6319)] = 135082, [SMALL_STATE(6320)] = 135092, [SMALL_STATE(6321)] = 135106, [SMALL_STATE(6322)] = 135120, [SMALL_STATE(6323)] = 135134, [SMALL_STATE(6324)] = 135148, [SMALL_STATE(6325)] = 135162, [SMALL_STATE(6326)] = 135176, [SMALL_STATE(6327)] = 135186, [SMALL_STATE(6328)] = 135200, [SMALL_STATE(6329)] = 135214, [SMALL_STATE(6330)] = 135228, [SMALL_STATE(6331)] = 135242, [SMALL_STATE(6332)] = 135256, [SMALL_STATE(6333)] = 135270, [SMALL_STATE(6334)] = 135284, [SMALL_STATE(6335)] = 135298, [SMALL_STATE(6336)] = 135312, [SMALL_STATE(6337)] = 135326, [SMALL_STATE(6338)] = 135340, [SMALL_STATE(6339)] = 135354, [SMALL_STATE(6340)] = 135368, [SMALL_STATE(6341)] = 135382, [SMALL_STATE(6342)] = 135396, [SMALL_STATE(6343)] = 135410, [SMALL_STATE(6344)] = 135424, [SMALL_STATE(6345)] = 135438, [SMALL_STATE(6346)] = 135452, [SMALL_STATE(6347)] = 135466, [SMALL_STATE(6348)] = 135480, [SMALL_STATE(6349)] = 135492, [SMALL_STATE(6350)] = 135506, [SMALL_STATE(6351)] = 135520, [SMALL_STATE(6352)] = 135534, [SMALL_STATE(6353)] = 135548, [SMALL_STATE(6354)] = 135562, [SMALL_STATE(6355)] = 135576, [SMALL_STATE(6356)] = 135590, [SMALL_STATE(6357)] = 135604, [SMALL_STATE(6358)] = 135618, [SMALL_STATE(6359)] = 135632, [SMALL_STATE(6360)] = 135646, [SMALL_STATE(6361)] = 135660, [SMALL_STATE(6362)] = 135674, [SMALL_STATE(6363)] = 135688, [SMALL_STATE(6364)] = 135702, [SMALL_STATE(6365)] = 135716, [SMALL_STATE(6366)] = 135730, [SMALL_STATE(6367)] = 135744, [SMALL_STATE(6368)] = 135758, [SMALL_STATE(6369)] = 135772, [SMALL_STATE(6370)] = 135786, [SMALL_STATE(6371)] = 135800, [SMALL_STATE(6372)] = 135814, [SMALL_STATE(6373)] = 135828, [SMALL_STATE(6374)] = 135842, [SMALL_STATE(6375)] = 135856, [SMALL_STATE(6376)] = 135866, [SMALL_STATE(6377)] = 135880, [SMALL_STATE(6378)] = 135894, [SMALL_STATE(6379)] = 135908, [SMALL_STATE(6380)] = 135922, [SMALL_STATE(6381)] = 135936, [SMALL_STATE(6382)] = 135950, [SMALL_STATE(6383)] = 135964, [SMALL_STATE(6384)] = 135974, [SMALL_STATE(6385)] = 135986, [SMALL_STATE(6386)] = 136000, [SMALL_STATE(6387)] = 136014, [SMALL_STATE(6388)] = 136028, [SMALL_STATE(6389)] = 136042, [SMALL_STATE(6390)] = 136056, [SMALL_STATE(6391)] = 136070, [SMALL_STATE(6392)] = 136084, [SMALL_STATE(6393)] = 136098, [SMALL_STATE(6394)] = 136112, [SMALL_STATE(6395)] = 136126, [SMALL_STATE(6396)] = 136140, [SMALL_STATE(6397)] = 136154, [SMALL_STATE(6398)] = 136168, [SMALL_STATE(6399)] = 136182, [SMALL_STATE(6400)] = 136196, [SMALL_STATE(6401)] = 136210, [SMALL_STATE(6402)] = 136224, [SMALL_STATE(6403)] = 136234, [SMALL_STATE(6404)] = 136245, [SMALL_STATE(6405)] = 136256, [SMALL_STATE(6406)] = 136267, [SMALL_STATE(6407)] = 136278, [SMALL_STATE(6408)] = 136289, [SMALL_STATE(6409)] = 136300, [SMALL_STATE(6410)] = 136309, [SMALL_STATE(6411)] = 136320, [SMALL_STATE(6412)] = 136329, [SMALL_STATE(6413)] = 136338, [SMALL_STATE(6414)] = 136349, [SMALL_STATE(6415)] = 136360, [SMALL_STATE(6416)] = 136371, [SMALL_STATE(6417)] = 136382, [SMALL_STATE(6418)] = 136393, [SMALL_STATE(6419)] = 136404, [SMALL_STATE(6420)] = 136413, [SMALL_STATE(6421)] = 136424, [SMALL_STATE(6422)] = 136435, [SMALL_STATE(6423)] = 136444, [SMALL_STATE(6424)] = 136453, [SMALL_STATE(6425)] = 136464, [SMALL_STATE(6426)] = 136475, [SMALL_STATE(6427)] = 136486, [SMALL_STATE(6428)] = 136497, [SMALL_STATE(6429)] = 136508, [SMALL_STATE(6430)] = 136519, [SMALL_STATE(6431)] = 136530, [SMALL_STATE(6432)] = 136541, [SMALL_STATE(6433)] = 136550, [SMALL_STATE(6434)] = 136561, [SMALL_STATE(6435)] = 136572, [SMALL_STATE(6436)] = 136583, [SMALL_STATE(6437)] = 136594, [SMALL_STATE(6438)] = 136605, [SMALL_STATE(6439)] = 136616, [SMALL_STATE(6440)] = 136627, [SMALL_STATE(6441)] = 136636, [SMALL_STATE(6442)] = 136647, [SMALL_STATE(6443)] = 136658, [SMALL_STATE(6444)] = 136669, [SMALL_STATE(6445)] = 136680, [SMALL_STATE(6446)] = 136691, [SMALL_STATE(6447)] = 136702, [SMALL_STATE(6448)] = 136713, [SMALL_STATE(6449)] = 136724, [SMALL_STATE(6450)] = 136735, [SMALL_STATE(6451)] = 136746, [SMALL_STATE(6452)] = 136757, [SMALL_STATE(6453)] = 136768, [SMALL_STATE(6454)] = 136777, [SMALL_STATE(6455)] = 136786, [SMALL_STATE(6456)] = 136797, [SMALL_STATE(6457)] = 136806, [SMALL_STATE(6458)] = 136817, [SMALL_STATE(6459)] = 136828, [SMALL_STATE(6460)] = 136837, [SMALL_STATE(6461)] = 136848, [SMALL_STATE(6462)] = 136859, [SMALL_STATE(6463)] = 136870, [SMALL_STATE(6464)] = 136881, [SMALL_STATE(6465)] = 136892, [SMALL_STATE(6466)] = 136903, [SMALL_STATE(6467)] = 136914, [SMALL_STATE(6468)] = 136925, [SMALL_STATE(6469)] = 136936, [SMALL_STATE(6470)] = 136947, [SMALL_STATE(6471)] = 136958, [SMALL_STATE(6472)] = 136969, [SMALL_STATE(6473)] = 136978, [SMALL_STATE(6474)] = 136989, [SMALL_STATE(6475)] = 137000, [SMALL_STATE(6476)] = 137011, [SMALL_STATE(6477)] = 137020, [SMALL_STATE(6478)] = 137031, [SMALL_STATE(6479)] = 137042, [SMALL_STATE(6480)] = 137051, [SMALL_STATE(6481)] = 137062, [SMALL_STATE(6482)] = 137073, [SMALL_STATE(6483)] = 137084, [SMALL_STATE(6484)] = 137095, [SMALL_STATE(6485)] = 137106, [SMALL_STATE(6486)] = 137117, [SMALL_STATE(6487)] = 137128, [SMALL_STATE(6488)] = 137137, [SMALL_STATE(6489)] = 137148, [SMALL_STATE(6490)] = 137159, [SMALL_STATE(6491)] = 137170, [SMALL_STATE(6492)] = 137181, [SMALL_STATE(6493)] = 137192, [SMALL_STATE(6494)] = 137203, [SMALL_STATE(6495)] = 137214, [SMALL_STATE(6496)] = 137225, [SMALL_STATE(6497)] = 137234, [SMALL_STATE(6498)] = 137245, [SMALL_STATE(6499)] = 137256, [SMALL_STATE(6500)] = 137267, [SMALL_STATE(6501)] = 137278, [SMALL_STATE(6502)] = 137289, [SMALL_STATE(6503)] = 137300, [SMALL_STATE(6504)] = 137311, [SMALL_STATE(6505)] = 137322, [SMALL_STATE(6506)] = 137333, [SMALL_STATE(6507)] = 137344, [SMALL_STATE(6508)] = 137353, [SMALL_STATE(6509)] = 137364, [SMALL_STATE(6510)] = 137375, [SMALL_STATE(6511)] = 137386, [SMALL_STATE(6512)] = 137397, [SMALL_STATE(6513)] = 137408, [SMALL_STATE(6514)] = 137419, [SMALL_STATE(6515)] = 137430, [SMALL_STATE(6516)] = 137441, [SMALL_STATE(6517)] = 137450, [SMALL_STATE(6518)] = 137461, [SMALL_STATE(6519)] = 137472, [SMALL_STATE(6520)] = 137483, [SMALL_STATE(6521)] = 137492, [SMALL_STATE(6522)] = 137503, [SMALL_STATE(6523)] = 137514, [SMALL_STATE(6524)] = 137525, [SMALL_STATE(6525)] = 137536, [SMALL_STATE(6526)] = 137547, [SMALL_STATE(6527)] = 137558, [SMALL_STATE(6528)] = 137567, [SMALL_STATE(6529)] = 137578, [SMALL_STATE(6530)] = 137589, [SMALL_STATE(6531)] = 137600, [SMALL_STATE(6532)] = 137611, [SMALL_STATE(6533)] = 137620, [SMALL_STATE(6534)] = 137631, [SMALL_STATE(6535)] = 137642, [SMALL_STATE(6536)] = 137653, [SMALL_STATE(6537)] = 137664, [SMALL_STATE(6538)] = 137675, [SMALL_STATE(6539)] = 137686, [SMALL_STATE(6540)] = 137697, [SMALL_STATE(6541)] = 137708, [SMALL_STATE(6542)] = 137719, [SMALL_STATE(6543)] = 137728, [SMALL_STATE(6544)] = 137737, [SMALL_STATE(6545)] = 137748, [SMALL_STATE(6546)] = 137759, [SMALL_STATE(6547)] = 137770, [SMALL_STATE(6548)] = 137779, [SMALL_STATE(6549)] = 137790, [SMALL_STATE(6550)] = 137799, [SMALL_STATE(6551)] = 137810, [SMALL_STATE(6552)] = 137821, [SMALL_STATE(6553)] = 137832, [SMALL_STATE(6554)] = 137843, [SMALL_STATE(6555)] = 137854, [SMALL_STATE(6556)] = 137865, [SMALL_STATE(6557)] = 137876, [SMALL_STATE(6558)] = 137887, [SMALL_STATE(6559)] = 137898, [SMALL_STATE(6560)] = 137909, [SMALL_STATE(6561)] = 137920, [SMALL_STATE(6562)] = 137929, [SMALL_STATE(6563)] = 137940, [SMALL_STATE(6564)] = 137951, [SMALL_STATE(6565)] = 137960, [SMALL_STATE(6566)] = 137971, [SMALL_STATE(6567)] = 137982, [SMALL_STATE(6568)] = 137993, [SMALL_STATE(6569)] = 138004, [SMALL_STATE(6570)] = 138015, [SMALL_STATE(6571)] = 138026, [SMALL_STATE(6572)] = 138037, [SMALL_STATE(6573)] = 138048, [SMALL_STATE(6574)] = 138059, [SMALL_STATE(6575)] = 138070, [SMALL_STATE(6576)] = 138081, [SMALL_STATE(6577)] = 138092, [SMALL_STATE(6578)] = 138103, [SMALL_STATE(6579)] = 138114, [SMALL_STATE(6580)] = 138125, [SMALL_STATE(6581)] = 138136, [SMALL_STATE(6582)] = 138147, [SMALL_STATE(6583)] = 138158, [SMALL_STATE(6584)] = 138167, [SMALL_STATE(6585)] = 138178, [SMALL_STATE(6586)] = 138189, [SMALL_STATE(6587)] = 138198, [SMALL_STATE(6588)] = 138209, [SMALL_STATE(6589)] = 138220, [SMALL_STATE(6590)] = 138229, [SMALL_STATE(6591)] = 138240, [SMALL_STATE(6592)] = 138251, [SMALL_STATE(6593)] = 138262, [SMALL_STATE(6594)] = 138271, [SMALL_STATE(6595)] = 138280, [SMALL_STATE(6596)] = 138291, [SMALL_STATE(6597)] = 138302, [SMALL_STATE(6598)] = 138313, [SMALL_STATE(6599)] = 138324, [SMALL_STATE(6600)] = 138335, [SMALL_STATE(6601)] = 138346, [SMALL_STATE(6602)] = 138355, [SMALL_STATE(6603)] = 138366, [SMALL_STATE(6604)] = 138377, [SMALL_STATE(6605)] = 138388, [SMALL_STATE(6606)] = 138399, [SMALL_STATE(6607)] = 138410, [SMALL_STATE(6608)] = 138421, [SMALL_STATE(6609)] = 138430, [SMALL_STATE(6610)] = 138439, [SMALL_STATE(6611)] = 138450, [SMALL_STATE(6612)] = 138461, [SMALL_STATE(6613)] = 138472, [SMALL_STATE(6614)] = 138481, [SMALL_STATE(6615)] = 138492, [SMALL_STATE(6616)] = 138503, [SMALL_STATE(6617)] = 138514, [SMALL_STATE(6618)] = 138525, [SMALL_STATE(6619)] = 138536, [SMALL_STATE(6620)] = 138547, [SMALL_STATE(6621)] = 138558, [SMALL_STATE(6622)] = 138569, [SMALL_STATE(6623)] = 138580, [SMALL_STATE(6624)] = 138591, [SMALL_STATE(6625)] = 138602, [SMALL_STATE(6626)] = 138613, [SMALL_STATE(6627)] = 138624, [SMALL_STATE(6628)] = 138635, [SMALL_STATE(6629)] = 138646, [SMALL_STATE(6630)] = 138657, [SMALL_STATE(6631)] = 138668, [SMALL_STATE(6632)] = 138679, [SMALL_STATE(6633)] = 138690, [SMALL_STATE(6634)] = 138701, [SMALL_STATE(6635)] = 138712, [SMALL_STATE(6636)] = 138723, [SMALL_STATE(6637)] = 138734, [SMALL_STATE(6638)] = 138745, [SMALL_STATE(6639)] = 138756, [SMALL_STATE(6640)] = 138767, [SMALL_STATE(6641)] = 138776, [SMALL_STATE(6642)] = 138787, [SMALL_STATE(6643)] = 138796, [SMALL_STATE(6644)] = 138805, [SMALL_STATE(6645)] = 138816, [SMALL_STATE(6646)] = 138827, [SMALL_STATE(6647)] = 138838, [SMALL_STATE(6648)] = 138849, [SMALL_STATE(6649)] = 138860, [SMALL_STATE(6650)] = 138871, [SMALL_STATE(6651)] = 138882, [SMALL_STATE(6652)] = 138893, [SMALL_STATE(6653)] = 138902, [SMALL_STATE(6654)] = 138913, [SMALL_STATE(6655)] = 138924, [SMALL_STATE(6656)] = 138935, [SMALL_STATE(6657)] = 138946, [SMALL_STATE(6658)] = 138957, [SMALL_STATE(6659)] = 138968, [SMALL_STATE(6660)] = 138979, [SMALL_STATE(6661)] = 138990, [SMALL_STATE(6662)] = 139001, [SMALL_STATE(6663)] = 139012, [SMALL_STATE(6664)] = 139023, [SMALL_STATE(6665)] = 139034, [SMALL_STATE(6666)] = 139045, [SMALL_STATE(6667)] = 139056, [SMALL_STATE(6668)] = 139067, [SMALL_STATE(6669)] = 139078, [SMALL_STATE(6670)] = 139087, [SMALL_STATE(6671)] = 139096, [SMALL_STATE(6672)] = 139107, [SMALL_STATE(6673)] = 139118, [SMALL_STATE(6674)] = 139129, [SMALL_STATE(6675)] = 139140, [SMALL_STATE(6676)] = 139149, [SMALL_STATE(6677)] = 139160, [SMALL_STATE(6678)] = 139171, [SMALL_STATE(6679)] = 139182, [SMALL_STATE(6680)] = 139193, [SMALL_STATE(6681)] = 139204, [SMALL_STATE(6682)] = 139215, [SMALL_STATE(6683)] = 139226, [SMALL_STATE(6684)] = 139237, [SMALL_STATE(6685)] = 139248, [SMALL_STATE(6686)] = 139259, [SMALL_STATE(6687)] = 139270, [SMALL_STATE(6688)] = 139279, [SMALL_STATE(6689)] = 139290, [SMALL_STATE(6690)] = 139301, [SMALL_STATE(6691)] = 139310, [SMALL_STATE(6692)] = 139321, [SMALL_STATE(6693)] = 139332, [SMALL_STATE(6694)] = 139343, [SMALL_STATE(6695)] = 139354, [SMALL_STATE(6696)] = 139363, [SMALL_STATE(6697)] = 139374, [SMALL_STATE(6698)] = 139385, [SMALL_STATE(6699)] = 139396, [SMALL_STATE(6700)] = 139407, [SMALL_STATE(6701)] = 139416, [SMALL_STATE(6702)] = 139425, [SMALL_STATE(6703)] = 139436, [SMALL_STATE(6704)] = 139447, [SMALL_STATE(6705)] = 139458, [SMALL_STATE(6706)] = 139469, [SMALL_STATE(6707)] = 139480, [SMALL_STATE(6708)] = 139489, [SMALL_STATE(6709)] = 139500, [SMALL_STATE(6710)] = 139511, [SMALL_STATE(6711)] = 139520, [SMALL_STATE(6712)] = 139531, [SMALL_STATE(6713)] = 139542, [SMALL_STATE(6714)] = 139553, [SMALL_STATE(6715)] = 139564, [SMALL_STATE(6716)] = 139575, [SMALL_STATE(6717)] = 139586, [SMALL_STATE(6718)] = 139595, [SMALL_STATE(6719)] = 139606, [SMALL_STATE(6720)] = 139615, [SMALL_STATE(6721)] = 139626, [SMALL_STATE(6722)] = 139637, [SMALL_STATE(6723)] = 139648, [SMALL_STATE(6724)] = 139659, [SMALL_STATE(6725)] = 139670, [SMALL_STATE(6726)] = 139681, [SMALL_STATE(6727)] = 139692, [SMALL_STATE(6728)] = 139703, [SMALL_STATE(6729)] = 139714, [SMALL_STATE(6730)] = 139725, [SMALL_STATE(6731)] = 139736, [SMALL_STATE(6732)] = 139747, [SMALL_STATE(6733)] = 139758, [SMALL_STATE(6734)] = 139769, [SMALL_STATE(6735)] = 139780, [SMALL_STATE(6736)] = 139791, [SMALL_STATE(6737)] = 139802, [SMALL_STATE(6738)] = 139813, [SMALL_STATE(6739)] = 139824, [SMALL_STATE(6740)] = 139835, [SMALL_STATE(6741)] = 139846, [SMALL_STATE(6742)] = 139857, [SMALL_STATE(6743)] = 139868, [SMALL_STATE(6744)] = 139879, [SMALL_STATE(6745)] = 139890, [SMALL_STATE(6746)] = 139901, [SMALL_STATE(6747)] = 139912, [SMALL_STATE(6748)] = 139923, [SMALL_STATE(6749)] = 139934, [SMALL_STATE(6750)] = 139945, [SMALL_STATE(6751)] = 139956, [SMALL_STATE(6752)] = 139967, [SMALL_STATE(6753)] = 139978, [SMALL_STATE(6754)] = 139989, [SMALL_STATE(6755)] = 140000, [SMALL_STATE(6756)] = 140011, [SMALL_STATE(6757)] = 140022, [SMALL_STATE(6758)] = 140033, [SMALL_STATE(6759)] = 140044, [SMALL_STATE(6760)] = 140053, [SMALL_STATE(6761)] = 140064, [SMALL_STATE(6762)] = 140075, [SMALL_STATE(6763)] = 140086, [SMALL_STATE(6764)] = 140097, [SMALL_STATE(6765)] = 140108, [SMALL_STATE(6766)] = 140119, [SMALL_STATE(6767)] = 140130, [SMALL_STATE(6768)] = 140141, [SMALL_STATE(6769)] = 140152, [SMALL_STATE(6770)] = 140161, [SMALL_STATE(6771)] = 140172, [SMALL_STATE(6772)] = 140183, [SMALL_STATE(6773)] = 140194, [SMALL_STATE(6774)] = 140205, [SMALL_STATE(6775)] = 140216, [SMALL_STATE(6776)] = 140227, [SMALL_STATE(6777)] = 140238, [SMALL_STATE(6778)] = 140249, [SMALL_STATE(6779)] = 140260, [SMALL_STATE(6780)] = 140269, [SMALL_STATE(6781)] = 140280, [SMALL_STATE(6782)] = 140291, [SMALL_STATE(6783)] = 140302, [SMALL_STATE(6784)] = 140313, [SMALL_STATE(6785)] = 140324, [SMALL_STATE(6786)] = 140335, [SMALL_STATE(6787)] = 140346, [SMALL_STATE(6788)] = 140357, [SMALL_STATE(6789)] = 140368, [SMALL_STATE(6790)] = 140379, [SMALL_STATE(6791)] = 140390, [SMALL_STATE(6792)] = 140401, [SMALL_STATE(6793)] = 140410, [SMALL_STATE(6794)] = 140421, [SMALL_STATE(6795)] = 140432, [SMALL_STATE(6796)] = 140443, [SMALL_STATE(6797)] = 140454, [SMALL_STATE(6798)] = 140465, [SMALL_STATE(6799)] = 140474, [SMALL_STATE(6800)] = 140485, [SMALL_STATE(6801)] = 140496, [SMALL_STATE(6802)] = 140507, [SMALL_STATE(6803)] = 140518, [SMALL_STATE(6804)] = 140529, [SMALL_STATE(6805)] = 140540, [SMALL_STATE(6806)] = 140551, [SMALL_STATE(6807)] = 140562, [SMALL_STATE(6808)] = 140573, [SMALL_STATE(6809)] = 140582, [SMALL_STATE(6810)] = 140591, [SMALL_STATE(6811)] = 140602, [SMALL_STATE(6812)] = 140613, [SMALL_STATE(6813)] = 140624, [SMALL_STATE(6814)] = 140635, [SMALL_STATE(6815)] = 140646, [SMALL_STATE(6816)] = 140657, [SMALL_STATE(6817)] = 140668, [SMALL_STATE(6818)] = 140679, [SMALL_STATE(6819)] = 140690, [SMALL_STATE(6820)] = 140701, [SMALL_STATE(6821)] = 140712, [SMALL_STATE(6822)] = 140721, [SMALL_STATE(6823)] = 140730, [SMALL_STATE(6824)] = 140741, [SMALL_STATE(6825)] = 140752, [SMALL_STATE(6826)] = 140763, [SMALL_STATE(6827)] = 140774, [SMALL_STATE(6828)] = 140785, [SMALL_STATE(6829)] = 140796, [SMALL_STATE(6830)] = 140807, [SMALL_STATE(6831)] = 140818, [SMALL_STATE(6832)] = 140827, [SMALL_STATE(6833)] = 140838, [SMALL_STATE(6834)] = 140847, [SMALL_STATE(6835)] = 140858, [SMALL_STATE(6836)] = 140869, [SMALL_STATE(6837)] = 140878, [SMALL_STATE(6838)] = 140889, [SMALL_STATE(6839)] = 140900, [SMALL_STATE(6840)] = 140911, [SMALL_STATE(6841)] = 140922, [SMALL_STATE(6842)] = 140933, [SMALL_STATE(6843)] = 140944, [SMALL_STATE(6844)] = 140955, [SMALL_STATE(6845)] = 140966, [SMALL_STATE(6846)] = 140977, [SMALL_STATE(6847)] = 140988, [SMALL_STATE(6848)] = 140997, [SMALL_STATE(6849)] = 141008, [SMALL_STATE(6850)] = 141019, [SMALL_STATE(6851)] = 141030, [SMALL_STATE(6852)] = 141041, [SMALL_STATE(6853)] = 141050, [SMALL_STATE(6854)] = 141061, [SMALL_STATE(6855)] = 141070, [SMALL_STATE(6856)] = 141081, [SMALL_STATE(6857)] = 141092, [SMALL_STATE(6858)] = 141103, [SMALL_STATE(6859)] = 141112, [SMALL_STATE(6860)] = 141123, [SMALL_STATE(6861)] = 141134, [SMALL_STATE(6862)] = 141143, [SMALL_STATE(6863)] = 141154, [SMALL_STATE(6864)] = 141165, [SMALL_STATE(6865)] = 141176, [SMALL_STATE(6866)] = 141187, [SMALL_STATE(6867)] = 141198, [SMALL_STATE(6868)] = 141209, [SMALL_STATE(6869)] = 141220, [SMALL_STATE(6870)] = 141231, [SMALL_STATE(6871)] = 141242, [SMALL_STATE(6872)] = 141253, [SMALL_STATE(6873)] = 141264, [SMALL_STATE(6874)] = 141275, [SMALL_STATE(6875)] = 141286, [SMALL_STATE(6876)] = 141297, [SMALL_STATE(6877)] = 141308, [SMALL_STATE(6878)] = 141319, [SMALL_STATE(6879)] = 141330, [SMALL_STATE(6880)] = 141341, [SMALL_STATE(6881)] = 141352, [SMALL_STATE(6882)] = 141363, [SMALL_STATE(6883)] = 141374, [SMALL_STATE(6884)] = 141385, [SMALL_STATE(6885)] = 141396, [SMALL_STATE(6886)] = 141407, [SMALL_STATE(6887)] = 141418, [SMALL_STATE(6888)] = 141429, [SMALL_STATE(6889)] = 141440, [SMALL_STATE(6890)] = 141451, [SMALL_STATE(6891)] = 141462, [SMALL_STATE(6892)] = 141473, [SMALL_STATE(6893)] = 141484, [SMALL_STATE(6894)] = 141495, [SMALL_STATE(6895)] = 141506, [SMALL_STATE(6896)] = 141517, [SMALL_STATE(6897)] = 141528, [SMALL_STATE(6898)] = 141539, [SMALL_STATE(6899)] = 141550, [SMALL_STATE(6900)] = 141561, [SMALL_STATE(6901)] = 141572, [SMALL_STATE(6902)] = 141583, [SMALL_STATE(6903)] = 141594, [SMALL_STATE(6904)] = 141605, [SMALL_STATE(6905)] = 141616, [SMALL_STATE(6906)] = 141627, [SMALL_STATE(6907)] = 141638, [SMALL_STATE(6908)] = 141649, [SMALL_STATE(6909)] = 141658, [SMALL_STATE(6910)] = 141669, [SMALL_STATE(6911)] = 141680, [SMALL_STATE(6912)] = 141691, [SMALL_STATE(6913)] = 141702, [SMALL_STATE(6914)] = 141713, [SMALL_STATE(6915)] = 141722, [SMALL_STATE(6916)] = 141733, [SMALL_STATE(6917)] = 141744, [SMALL_STATE(6918)] = 141755, [SMALL_STATE(6919)] = 141764, [SMALL_STATE(6920)] = 141775, [SMALL_STATE(6921)] = 141786, [SMALL_STATE(6922)] = 141795, [SMALL_STATE(6923)] = 141806, [SMALL_STATE(6924)] = 141817, [SMALL_STATE(6925)] = 141828, [SMALL_STATE(6926)] = 141839, [SMALL_STATE(6927)] = 141848, [SMALL_STATE(6928)] = 141857, [SMALL_STATE(6929)] = 141868, [SMALL_STATE(6930)] = 141879, [SMALL_STATE(6931)] = 141890, [SMALL_STATE(6932)] = 141901, [SMALL_STATE(6933)] = 141912, [SMALL_STATE(6934)] = 141923, [SMALL_STATE(6935)] = 141934, [SMALL_STATE(6936)] = 141945, [SMALL_STATE(6937)] = 141956, [SMALL_STATE(6938)] = 141967, [SMALL_STATE(6939)] = 141978, [SMALL_STATE(6940)] = 141989, [SMALL_STATE(6941)] = 142000, [SMALL_STATE(6942)] = 142011, [SMALL_STATE(6943)] = 142022, [SMALL_STATE(6944)] = 142033, [SMALL_STATE(6945)] = 142044, [SMALL_STATE(6946)] = 142055, [SMALL_STATE(6947)] = 142066, [SMALL_STATE(6948)] = 142077, [SMALL_STATE(6949)] = 142085, [SMALL_STATE(6950)] = 142095, [SMALL_STATE(6951)] = 142105, [SMALL_STATE(6952)] = 142113, [SMALL_STATE(6953)] = 142121, [SMALL_STATE(6954)] = 142129, [SMALL_STATE(6955)] = 142137, [SMALL_STATE(6956)] = 142145, [SMALL_STATE(6957)] = 142153, [SMALL_STATE(6958)] = 142161, [SMALL_STATE(6959)] = 142169, [SMALL_STATE(6960)] = 142177, [SMALL_STATE(6961)] = 142185, [SMALL_STATE(6962)] = 142193, [SMALL_STATE(6963)] = 142201, [SMALL_STATE(6964)] = 142209, [SMALL_STATE(6965)] = 142217, [SMALL_STATE(6966)] = 142225, [SMALL_STATE(6967)] = 142233, [SMALL_STATE(6968)] = 142241, [SMALL_STATE(6969)] = 142249, [SMALL_STATE(6970)] = 142257, [SMALL_STATE(6971)] = 142265, [SMALL_STATE(6972)] = 142273, [SMALL_STATE(6973)] = 142281, [SMALL_STATE(6974)] = 142289, [SMALL_STATE(6975)] = 142297, [SMALL_STATE(6976)] = 142305, [SMALL_STATE(6977)] = 142313, [SMALL_STATE(6978)] = 142321, [SMALL_STATE(6979)] = 142329, [SMALL_STATE(6980)] = 142337, [SMALL_STATE(6981)] = 142345, [SMALL_STATE(6982)] = 142353, [SMALL_STATE(6983)] = 142361, [SMALL_STATE(6984)] = 142369, [SMALL_STATE(6985)] = 142377, [SMALL_STATE(6986)] = 142385, [SMALL_STATE(6987)] = 142393, [SMALL_STATE(6988)] = 142401, [SMALL_STATE(6989)] = 142411, [SMALL_STATE(6990)] = 142419, [SMALL_STATE(6991)] = 142427, [SMALL_STATE(6992)] = 142435, [SMALL_STATE(6993)] = 142443, [SMALL_STATE(6994)] = 142451, [SMALL_STATE(6995)] = 142459, [SMALL_STATE(6996)] = 142467, [SMALL_STATE(6997)] = 142475, [SMALL_STATE(6998)] = 142483, [SMALL_STATE(6999)] = 142491, [SMALL_STATE(7000)] = 142499, [SMALL_STATE(7001)] = 142507, [SMALL_STATE(7002)] = 142515, [SMALL_STATE(7003)] = 142523, [SMALL_STATE(7004)] = 142531, [SMALL_STATE(7005)] = 142539, [SMALL_STATE(7006)] = 142547, [SMALL_STATE(7007)] = 142555, [SMALL_STATE(7008)] = 142563, [SMALL_STATE(7009)] = 142571, [SMALL_STATE(7010)] = 142579, [SMALL_STATE(7011)] = 142587, [SMALL_STATE(7012)] = 142595, [SMALL_STATE(7013)] = 142603, [SMALL_STATE(7014)] = 142611, [SMALL_STATE(7015)] = 142619, [SMALL_STATE(7016)] = 142627, [SMALL_STATE(7017)] = 142635, [SMALL_STATE(7018)] = 142643, [SMALL_STATE(7019)] = 142651, [SMALL_STATE(7020)] = 142659, [SMALL_STATE(7021)] = 142667, [SMALL_STATE(7022)] = 142675, [SMALL_STATE(7023)] = 142683, [SMALL_STATE(7024)] = 142691, [SMALL_STATE(7025)] = 142699, [SMALL_STATE(7026)] = 142707, [SMALL_STATE(7027)] = 142715, [SMALL_STATE(7028)] = 142723, [SMALL_STATE(7029)] = 142731, [SMALL_STATE(7030)] = 142739, [SMALL_STATE(7031)] = 142747, [SMALL_STATE(7032)] = 142755, [SMALL_STATE(7033)] = 142763, [SMALL_STATE(7034)] = 142771, [SMALL_STATE(7035)] = 142779, [SMALL_STATE(7036)] = 142787, [SMALL_STATE(7037)] = 142795, [SMALL_STATE(7038)] = 142803, [SMALL_STATE(7039)] = 142811, [SMALL_STATE(7040)] = 142819, [SMALL_STATE(7041)] = 142827, [SMALL_STATE(7042)] = 142835, [SMALL_STATE(7043)] = 142843, [SMALL_STATE(7044)] = 142851, [SMALL_STATE(7045)] = 142859, [SMALL_STATE(7046)] = 142867, [SMALL_STATE(7047)] = 142875, [SMALL_STATE(7048)] = 142883, [SMALL_STATE(7049)] = 142891, [SMALL_STATE(7050)] = 142899, [SMALL_STATE(7051)] = 142907, [SMALL_STATE(7052)] = 142915, [SMALL_STATE(7053)] = 142923, [SMALL_STATE(7054)] = 142931, [SMALL_STATE(7055)] = 142939, [SMALL_STATE(7056)] = 142947, [SMALL_STATE(7057)] = 142955, [SMALL_STATE(7058)] = 142963, [SMALL_STATE(7059)] = 142971, [SMALL_STATE(7060)] = 142979, [SMALL_STATE(7061)] = 142987, [SMALL_STATE(7062)] = 142995, [SMALL_STATE(7063)] = 143003, [SMALL_STATE(7064)] = 143011, [SMALL_STATE(7065)] = 143019, [SMALL_STATE(7066)] = 143027, [SMALL_STATE(7067)] = 143035, [SMALL_STATE(7068)] = 143043, [SMALL_STATE(7069)] = 143051, [SMALL_STATE(7070)] = 143059, [SMALL_STATE(7071)] = 143067, [SMALL_STATE(7072)] = 143075, [SMALL_STATE(7073)] = 143083, [SMALL_STATE(7074)] = 143091, [SMALL_STATE(7075)] = 143099, [SMALL_STATE(7076)] = 143107, [SMALL_STATE(7077)] = 143115, [SMALL_STATE(7078)] = 143123, [SMALL_STATE(7079)] = 143131, [SMALL_STATE(7080)] = 143139, [SMALL_STATE(7081)] = 143149, [SMALL_STATE(7082)] = 143159, [SMALL_STATE(7083)] = 143169, [SMALL_STATE(7084)] = 143177, [SMALL_STATE(7085)] = 143185, [SMALL_STATE(7086)] = 143193, [SMALL_STATE(7087)] = 143201, [SMALL_STATE(7088)] = 143209, [SMALL_STATE(7089)] = 143217, [SMALL_STATE(7090)] = 143225, [SMALL_STATE(7091)] = 143233, [SMALL_STATE(7092)] = 143241, [SMALL_STATE(7093)] = 143249, [SMALL_STATE(7094)] = 143257, [SMALL_STATE(7095)] = 143265, [SMALL_STATE(7096)] = 143273, [SMALL_STATE(7097)] = 143281, [SMALL_STATE(7098)] = 143289, [SMALL_STATE(7099)] = 143297, [SMALL_STATE(7100)] = 143305, [SMALL_STATE(7101)] = 143313, [SMALL_STATE(7102)] = 143321, [SMALL_STATE(7103)] = 143329, [SMALL_STATE(7104)] = 143337, [SMALL_STATE(7105)] = 143345, [SMALL_STATE(7106)] = 143353, [SMALL_STATE(7107)] = 143361, [SMALL_STATE(7108)] = 143369, [SMALL_STATE(7109)] = 143377, [SMALL_STATE(7110)] = 143385, [SMALL_STATE(7111)] = 143393, [SMALL_STATE(7112)] = 143401, [SMALL_STATE(7113)] = 143409, [SMALL_STATE(7114)] = 143417, [SMALL_STATE(7115)] = 143425, [SMALL_STATE(7116)] = 143433, [SMALL_STATE(7117)] = 143441, [SMALL_STATE(7118)] = 143449, [SMALL_STATE(7119)] = 143457, [SMALL_STATE(7120)] = 143465, [SMALL_STATE(7121)] = 143473, [SMALL_STATE(7122)] = 143481, [SMALL_STATE(7123)] = 143489, [SMALL_STATE(7124)] = 143497, [SMALL_STATE(7125)] = 143505, [SMALL_STATE(7126)] = 143513, [SMALL_STATE(7127)] = 143521, [SMALL_STATE(7128)] = 143529, [SMALL_STATE(7129)] = 143537, [SMALL_STATE(7130)] = 143545, [SMALL_STATE(7131)] = 143553, [SMALL_STATE(7132)] = 143563, [SMALL_STATE(7133)] = 143571, [SMALL_STATE(7134)] = 143579, [SMALL_STATE(7135)] = 143587, [SMALL_STATE(7136)] = 143595, [SMALL_STATE(7137)] = 143603, [SMALL_STATE(7138)] = 143611, [SMALL_STATE(7139)] = 143619, [SMALL_STATE(7140)] = 143627, [SMALL_STATE(7141)] = 143635, [SMALL_STATE(7142)] = 143643, [SMALL_STATE(7143)] = 143651, [SMALL_STATE(7144)] = 143659, [SMALL_STATE(7145)] = 143667, [SMALL_STATE(7146)] = 143675, [SMALL_STATE(7147)] = 143683, [SMALL_STATE(7148)] = 143691, [SMALL_STATE(7149)] = 143699, [SMALL_STATE(7150)] = 143707, [SMALL_STATE(7151)] = 143715, [SMALL_STATE(7152)] = 143723, [SMALL_STATE(7153)] = 143731, [SMALL_STATE(7154)] = 143739, [SMALL_STATE(7155)] = 143747, [SMALL_STATE(7156)] = 143755, [SMALL_STATE(7157)] = 143763, [SMALL_STATE(7158)] = 143771, [SMALL_STATE(7159)] = 143779, [SMALL_STATE(7160)] = 143787, [SMALL_STATE(7161)] = 143795, [SMALL_STATE(7162)] = 143803, [SMALL_STATE(7163)] = 143811, [SMALL_STATE(7164)] = 143819, [SMALL_STATE(7165)] = 143827, [SMALL_STATE(7166)] = 143835, [SMALL_STATE(7167)] = 143845, [SMALL_STATE(7168)] = 143855, [SMALL_STATE(7169)] = 143863, [SMALL_STATE(7170)] = 143871, [SMALL_STATE(7171)] = 143879, [SMALL_STATE(7172)] = 143887, [SMALL_STATE(7173)] = 143895, [SMALL_STATE(7174)] = 143903, [SMALL_STATE(7175)] = 143911, [SMALL_STATE(7176)] = 143919, [SMALL_STATE(7177)] = 143927, [SMALL_STATE(7178)] = 143935, [SMALL_STATE(7179)] = 143943, [SMALL_STATE(7180)] = 143951, [SMALL_STATE(7181)] = 143959, [SMALL_STATE(7182)] = 143967, [SMALL_STATE(7183)] = 143975, [SMALL_STATE(7184)] = 143983, [SMALL_STATE(7185)] = 143991, [SMALL_STATE(7186)] = 143999, [SMALL_STATE(7187)] = 144007, [SMALL_STATE(7188)] = 144015, [SMALL_STATE(7189)] = 144023, [SMALL_STATE(7190)] = 144031, [SMALL_STATE(7191)] = 144039, [SMALL_STATE(7192)] = 144047, [SMALL_STATE(7193)] = 144055, [SMALL_STATE(7194)] = 144063, [SMALL_STATE(7195)] = 144071, [SMALL_STATE(7196)] = 144079, [SMALL_STATE(7197)] = 144087, [SMALL_STATE(7198)] = 144095, [SMALL_STATE(7199)] = 144103, [SMALL_STATE(7200)] = 144111, [SMALL_STATE(7201)] = 144119, [SMALL_STATE(7202)] = 144127, [SMALL_STATE(7203)] = 144135, [SMALL_STATE(7204)] = 144143, [SMALL_STATE(7205)] = 144151, [SMALL_STATE(7206)] = 144159, [SMALL_STATE(7207)] = 144167, [SMALL_STATE(7208)] = 144175, [SMALL_STATE(7209)] = 144183, [SMALL_STATE(7210)] = 144191, [SMALL_STATE(7211)] = 144201, [SMALL_STATE(7212)] = 144211, [SMALL_STATE(7213)] = 144221, [SMALL_STATE(7214)] = 144229, [SMALL_STATE(7215)] = 144237, [SMALL_STATE(7216)] = 144245, [SMALL_STATE(7217)] = 144253, [SMALL_STATE(7218)] = 144261, [SMALL_STATE(7219)] = 144269, [SMALL_STATE(7220)] = 144277, [SMALL_STATE(7221)] = 144285, [SMALL_STATE(7222)] = 144293, [SMALL_STATE(7223)] = 144301, [SMALL_STATE(7224)] = 144309, [SMALL_STATE(7225)] = 144317, [SMALL_STATE(7226)] = 144325, [SMALL_STATE(7227)] = 144333, [SMALL_STATE(7228)] = 144341, [SMALL_STATE(7229)] = 144349, [SMALL_STATE(7230)] = 144357, [SMALL_STATE(7231)] = 144365, [SMALL_STATE(7232)] = 144373, [SMALL_STATE(7233)] = 144381, [SMALL_STATE(7234)] = 144389, [SMALL_STATE(7235)] = 144397, [SMALL_STATE(7236)] = 144405, [SMALL_STATE(7237)] = 144413, [SMALL_STATE(7238)] = 144421, [SMALL_STATE(7239)] = 144429, [SMALL_STATE(7240)] = 144437, [SMALL_STATE(7241)] = 144445, [SMALL_STATE(7242)] = 144453, [SMALL_STATE(7243)] = 144461, [SMALL_STATE(7244)] = 144469, [SMALL_STATE(7245)] = 144477, [SMALL_STATE(7246)] = 144485, [SMALL_STATE(7247)] = 144493, [SMALL_STATE(7248)] = 144501, [SMALL_STATE(7249)] = 144509, [SMALL_STATE(7250)] = 144517, [SMALL_STATE(7251)] = 144525, [SMALL_STATE(7252)] = 144533, [SMALL_STATE(7253)] = 144541, [SMALL_STATE(7254)] = 144549, [SMALL_STATE(7255)] = 144557, [SMALL_STATE(7256)] = 144565, [SMALL_STATE(7257)] = 144573, [SMALL_STATE(7258)] = 144581, [SMALL_STATE(7259)] = 144589, [SMALL_STATE(7260)] = 144597, [SMALL_STATE(7261)] = 144605, [SMALL_STATE(7262)] = 144613, [SMALL_STATE(7263)] = 144621, [SMALL_STATE(7264)] = 144629, [SMALL_STATE(7265)] = 144637, [SMALL_STATE(7266)] = 144645, [SMALL_STATE(7267)] = 144653, [SMALL_STATE(7268)] = 144661, [SMALL_STATE(7269)] = 144669, [SMALL_STATE(7270)] = 144677, [SMALL_STATE(7271)] = 144685, [SMALL_STATE(7272)] = 144693, [SMALL_STATE(7273)] = 144701, [SMALL_STATE(7274)] = 144709, [SMALL_STATE(7275)] = 144717, [SMALL_STATE(7276)] = 144725, [SMALL_STATE(7277)] = 144733, [SMALL_STATE(7278)] = 144741, [SMALL_STATE(7279)] = 144749, [SMALL_STATE(7280)] = 144757, [SMALL_STATE(7281)] = 144765, [SMALL_STATE(7282)] = 144773, [SMALL_STATE(7283)] = 144781, [SMALL_STATE(7284)] = 144789, [SMALL_STATE(7285)] = 144797, [SMALL_STATE(7286)] = 144805, [SMALL_STATE(7287)] = 144813, [SMALL_STATE(7288)] = 144821, [SMALL_STATE(7289)] = 144829, [SMALL_STATE(7290)] = 144837, [SMALL_STATE(7291)] = 144845, [SMALL_STATE(7292)] = 144853, [SMALL_STATE(7293)] = 144861, [SMALL_STATE(7294)] = 144869, [SMALL_STATE(7295)] = 144877, [SMALL_STATE(7296)] = 144885, [SMALL_STATE(7297)] = 144893, [SMALL_STATE(7298)] = 144901, [SMALL_STATE(7299)] = 144909, [SMALL_STATE(7300)] = 144917, [SMALL_STATE(7301)] = 144925, [SMALL_STATE(7302)] = 144933, [SMALL_STATE(7303)] = 144941, [SMALL_STATE(7304)] = 144949, [SMALL_STATE(7305)] = 144957, [SMALL_STATE(7306)] = 144965, [SMALL_STATE(7307)] = 144973, [SMALL_STATE(7308)] = 144981, [SMALL_STATE(7309)] = 144989, [SMALL_STATE(7310)] = 144997, [SMALL_STATE(7311)] = 145005, [SMALL_STATE(7312)] = 145015, [SMALL_STATE(7313)] = 145025, [SMALL_STATE(7314)] = 145035, [SMALL_STATE(7315)] = 145043, [SMALL_STATE(7316)] = 145051, [SMALL_STATE(7317)] = 145059, [SMALL_STATE(7318)] = 145067, [SMALL_STATE(7319)] = 145075, [SMALL_STATE(7320)] = 145083, [SMALL_STATE(7321)] = 145091, [SMALL_STATE(7322)] = 145099, [SMALL_STATE(7323)] = 145107, [SMALL_STATE(7324)] = 145115, [SMALL_STATE(7325)] = 145123, [SMALL_STATE(7326)] = 145131, [SMALL_STATE(7327)] = 145139, [SMALL_STATE(7328)] = 145147, [SMALL_STATE(7329)] = 145155, [SMALL_STATE(7330)] = 145163, [SMALL_STATE(7331)] = 145171, [SMALL_STATE(7332)] = 145179, [SMALL_STATE(7333)] = 145187, [SMALL_STATE(7334)] = 145195, [SMALL_STATE(7335)] = 145203, [SMALL_STATE(7336)] = 145211, [SMALL_STATE(7337)] = 145219, [SMALL_STATE(7338)] = 145227, [SMALL_STATE(7339)] = 145235, [SMALL_STATE(7340)] = 145243, [SMALL_STATE(7341)] = 145251, [SMALL_STATE(7342)] = 145259, [SMALL_STATE(7343)] = 145267, [SMALL_STATE(7344)] = 145275, [SMALL_STATE(7345)] = 145283, [SMALL_STATE(7346)] = 145291, [SMALL_STATE(7347)] = 145299, [SMALL_STATE(7348)] = 145307, [SMALL_STATE(7349)] = 145315, [SMALL_STATE(7350)] = 145323, [SMALL_STATE(7351)] = 145331, [SMALL_STATE(7352)] = 145339, [SMALL_STATE(7353)] = 145347, [SMALL_STATE(7354)] = 145355, [SMALL_STATE(7355)] = 145363, [SMALL_STATE(7356)] = 145373, [SMALL_STATE(7357)] = 145383, [SMALL_STATE(7358)] = 145393, [SMALL_STATE(7359)] = 145401, [SMALL_STATE(7360)] = 145409, [SMALL_STATE(7361)] = 145417, [SMALL_STATE(7362)] = 145425, [SMALL_STATE(7363)] = 145433, [SMALL_STATE(7364)] = 145441, [SMALL_STATE(7365)] = 145449, [SMALL_STATE(7366)] = 145457, [SMALL_STATE(7367)] = 145465, [SMALL_STATE(7368)] = 145473, [SMALL_STATE(7369)] = 145481, [SMALL_STATE(7370)] = 145489, [SMALL_STATE(7371)] = 145497, [SMALL_STATE(7372)] = 145505, [SMALL_STATE(7373)] = 145513, [SMALL_STATE(7374)] = 145521, [SMALL_STATE(7375)] = 145529, [SMALL_STATE(7376)] = 145537, [SMALL_STATE(7377)] = 145545, [SMALL_STATE(7378)] = 145553, [SMALL_STATE(7379)] = 145561, [SMALL_STATE(7380)] = 145569, [SMALL_STATE(7381)] = 145577, [SMALL_STATE(7382)] = 145585, [SMALL_STATE(7383)] = 145593, [SMALL_STATE(7384)] = 145601, [SMALL_STATE(7385)] = 145609, [SMALL_STATE(7386)] = 145617, [SMALL_STATE(7387)] = 145627, [SMALL_STATE(7388)] = 145637, [SMALL_STATE(7389)] = 145647, [SMALL_STATE(7390)] = 145655, [SMALL_STATE(7391)] = 145663, [SMALL_STATE(7392)] = 145671, [SMALL_STATE(7393)] = 145679, [SMALL_STATE(7394)] = 145687, [SMALL_STATE(7395)] = 145695, [SMALL_STATE(7396)] = 145703, [SMALL_STATE(7397)] = 145711, [SMALL_STATE(7398)] = 145719, [SMALL_STATE(7399)] = 145727, [SMALL_STATE(7400)] = 145735, [SMALL_STATE(7401)] = 145743, [SMALL_STATE(7402)] = 145751, [SMALL_STATE(7403)] = 145759, [SMALL_STATE(7404)] = 145767, [SMALL_STATE(7405)] = 145775, [SMALL_STATE(7406)] = 145783, [SMALL_STATE(7407)] = 145791, [SMALL_STATE(7408)] = 145799, [SMALL_STATE(7409)] = 145807, [SMALL_STATE(7410)] = 145815, [SMALL_STATE(7411)] = 145823, [SMALL_STATE(7412)] = 145831, [SMALL_STATE(7413)] = 145839, [SMALL_STATE(7414)] = 145847, [SMALL_STATE(7415)] = 145855, [SMALL_STATE(7416)] = 145863, [SMALL_STATE(7417)] = 145873, [SMALL_STATE(7418)] = 145883, [SMALL_STATE(7419)] = 145893, [SMALL_STATE(7420)] = 145901, [SMALL_STATE(7421)] = 145909, [SMALL_STATE(7422)] = 145917, [SMALL_STATE(7423)] = 145925, [SMALL_STATE(7424)] = 145933, [SMALL_STATE(7425)] = 145941, [SMALL_STATE(7426)] = 145949, [SMALL_STATE(7427)] = 145957, [SMALL_STATE(7428)] = 145965, [SMALL_STATE(7429)] = 145973, [SMALL_STATE(7430)] = 145981, [SMALL_STATE(7431)] = 145989, [SMALL_STATE(7432)] = 145997, [SMALL_STATE(7433)] = 146005, [SMALL_STATE(7434)] = 146013, [SMALL_STATE(7435)] = 146021, [SMALL_STATE(7436)] = 146029, [SMALL_STATE(7437)] = 146037, [SMALL_STATE(7438)] = 146045, [SMALL_STATE(7439)] = 146053, [SMALL_STATE(7440)] = 146061, [SMALL_STATE(7441)] = 146069, [SMALL_STATE(7442)] = 146077, [SMALL_STATE(7443)] = 146085, [SMALL_STATE(7444)] = 146095, [SMALL_STATE(7445)] = 146105, [SMALL_STATE(7446)] = 146115, [SMALL_STATE(7447)] = 146123, [SMALL_STATE(7448)] = 146131, [SMALL_STATE(7449)] = 146141, [SMALL_STATE(7450)] = 146151, [SMALL_STATE(7451)] = 146161, [SMALL_STATE(7452)] = 146169, [SMALL_STATE(7453)] = 146179, [SMALL_STATE(7454)] = 146189, [SMALL_STATE(7455)] = 146199, [SMALL_STATE(7456)] = 146207, [SMALL_STATE(7457)] = 146215, [SMALL_STATE(7458)] = 146223, [SMALL_STATE(7459)] = 146231, [SMALL_STATE(7460)] = 146239, [SMALL_STATE(7461)] = 146247, [SMALL_STATE(7462)] = 146255, [SMALL_STATE(7463)] = 146263, [SMALL_STATE(7464)] = 146271, [SMALL_STATE(7465)] = 146279, [SMALL_STATE(7466)] = 146287, [SMALL_STATE(7467)] = 146295, [SMALL_STATE(7468)] = 146303, [SMALL_STATE(7469)] = 146311, [SMALL_STATE(7470)] = 146319, [SMALL_STATE(7471)] = 146327, [SMALL_STATE(7472)] = 146335, [SMALL_STATE(7473)] = 146343, [SMALL_STATE(7474)] = 146351, [SMALL_STATE(7475)] = 146359, [SMALL_STATE(7476)] = 146369, [SMALL_STATE(7477)] = 146377, [SMALL_STATE(7478)] = 146385, [SMALL_STATE(7479)] = 146393, [SMALL_STATE(7480)] = 146401, [SMALL_STATE(7481)] = 146411, [SMALL_STATE(7482)] = 146419, [SMALL_STATE(7483)] = 146429, [SMALL_STATE(7484)] = 146437, [SMALL_STATE(7485)] = 146445, [SMALL_STATE(7486)] = 146453, [SMALL_STATE(7487)] = 146461, [SMALL_STATE(7488)] = 146469, [SMALL_STATE(7489)] = 146477, [SMALL_STATE(7490)] = 146485, [SMALL_STATE(7491)] = 146493, [SMALL_STATE(7492)] = 146501, [SMALL_STATE(7493)] = 146509, [SMALL_STATE(7494)] = 146517, [SMALL_STATE(7495)] = 146525, [SMALL_STATE(7496)] = 146533, [SMALL_STATE(7497)] = 146541, [SMALL_STATE(7498)] = 146549, [SMALL_STATE(7499)] = 146557, [SMALL_STATE(7500)] = 146565, [SMALL_STATE(7501)] = 146573, [SMALL_STATE(7502)] = 146581, [SMALL_STATE(7503)] = 146589, [SMALL_STATE(7504)] = 146597, [SMALL_STATE(7505)] = 146605, [SMALL_STATE(7506)] = 146613, [SMALL_STATE(7507)] = 146621, [SMALL_STATE(7508)] = 146629, [SMALL_STATE(7509)] = 146637, [SMALL_STATE(7510)] = 146645, [SMALL_STATE(7511)] = 146653, [SMALL_STATE(7512)] = 146661, [SMALL_STATE(7513)] = 146669, [SMALL_STATE(7514)] = 146677, [SMALL_STATE(7515)] = 146685, [SMALL_STATE(7516)] = 146693, [SMALL_STATE(7517)] = 146701, [SMALL_STATE(7518)] = 146709, [SMALL_STATE(7519)] = 146717, [SMALL_STATE(7520)] = 146725, [SMALL_STATE(7521)] = 146733, [SMALL_STATE(7522)] = 146741, [SMALL_STATE(7523)] = 146749, [SMALL_STATE(7524)] = 146757, [SMALL_STATE(7525)] = 146765, [SMALL_STATE(7526)] = 146773, [SMALL_STATE(7527)] = 146781, [SMALL_STATE(7528)] = 146789, [SMALL_STATE(7529)] = 146797, [SMALL_STATE(7530)] = 146805, [SMALL_STATE(7531)] = 146813, [SMALL_STATE(7532)] = 146821, [SMALL_STATE(7533)] = 146829, [SMALL_STATE(7534)] = 146837, [SMALL_STATE(7535)] = 146845, [SMALL_STATE(7536)] = 146853, [SMALL_STATE(7537)] = 146861, [SMALL_STATE(7538)] = 146869, [SMALL_STATE(7539)] = 146877, [SMALL_STATE(7540)] = 146885, [SMALL_STATE(7541)] = 146893, [SMALL_STATE(7542)] = 146901, [SMALL_STATE(7543)] = 146909, [SMALL_STATE(7544)] = 146917, [SMALL_STATE(7545)] = 146925, [SMALL_STATE(7546)] = 146933, [SMALL_STATE(7547)] = 146941, [SMALL_STATE(7548)] = 146949, [SMALL_STATE(7549)] = 146957, [SMALL_STATE(7550)] = 146965, [SMALL_STATE(7551)] = 146973, [SMALL_STATE(7552)] = 146981, [SMALL_STATE(7553)] = 146989, [SMALL_STATE(7554)] = 146997, [SMALL_STATE(7555)] = 147005, [SMALL_STATE(7556)] = 147013, [SMALL_STATE(7557)] = 147021, [SMALL_STATE(7558)] = 147029, [SMALL_STATE(7559)] = 147037, [SMALL_STATE(7560)] = 147045, [SMALL_STATE(7561)] = 147053, [SMALL_STATE(7562)] = 147061, [SMALL_STATE(7563)] = 147069, [SMALL_STATE(7564)] = 147077, [SMALL_STATE(7565)] = 147085, [SMALL_STATE(7566)] = 147093, [SMALL_STATE(7567)] = 147101, [SMALL_STATE(7568)] = 147109, [SMALL_STATE(7569)] = 147117, [SMALL_STATE(7570)] = 147125, [SMALL_STATE(7571)] = 147133, [SMALL_STATE(7572)] = 147141, [SMALL_STATE(7573)] = 147149, [SMALL_STATE(7574)] = 147157, [SMALL_STATE(7575)] = 147165, [SMALL_STATE(7576)] = 147173, [SMALL_STATE(7577)] = 147181, [SMALL_STATE(7578)] = 147189, [SMALL_STATE(7579)] = 147197, [SMALL_STATE(7580)] = 147205, [SMALL_STATE(7581)] = 147213, [SMALL_STATE(7582)] = 147221, [SMALL_STATE(7583)] = 147229, [SMALL_STATE(7584)] = 147237, [SMALL_STATE(7585)] = 147245, [SMALL_STATE(7586)] = 147253, [SMALL_STATE(7587)] = 147261, [SMALL_STATE(7588)] = 147269, [SMALL_STATE(7589)] = 147277, [SMALL_STATE(7590)] = 147285, [SMALL_STATE(7591)] = 147293, [SMALL_STATE(7592)] = 147301, [SMALL_STATE(7593)] = 147309, [SMALL_STATE(7594)] = 147317, [SMALL_STATE(7595)] = 147325, [SMALL_STATE(7596)] = 147333, [SMALL_STATE(7597)] = 147341, [SMALL_STATE(7598)] = 147349, [SMALL_STATE(7599)] = 147357, [SMALL_STATE(7600)] = 147365, [SMALL_STATE(7601)] = 147373, [SMALL_STATE(7602)] = 147381, [SMALL_STATE(7603)] = 147389, [SMALL_STATE(7604)] = 147397, [SMALL_STATE(7605)] = 147405, [SMALL_STATE(7606)] = 147413, [SMALL_STATE(7607)] = 147421, [SMALL_STATE(7608)] = 147429, [SMALL_STATE(7609)] = 147437, [SMALL_STATE(7610)] = 147445, [SMALL_STATE(7611)] = 147453, [SMALL_STATE(7612)] = 147461, [SMALL_STATE(7613)] = 147469, [SMALL_STATE(7614)] = 147477, [SMALL_STATE(7615)] = 147485, [SMALL_STATE(7616)] = 147493, [SMALL_STATE(7617)] = 147501, [SMALL_STATE(7618)] = 147509, [SMALL_STATE(7619)] = 147517, [SMALL_STATE(7620)] = 147525, [SMALL_STATE(7621)] = 147533, [SMALL_STATE(7622)] = 147541, [SMALL_STATE(7623)] = 147549, [SMALL_STATE(7624)] = 147557, [SMALL_STATE(7625)] = 147565, [SMALL_STATE(7626)] = 147573, [SMALL_STATE(7627)] = 147581, [SMALL_STATE(7628)] = 147589, [SMALL_STATE(7629)] = 147597, [SMALL_STATE(7630)] = 147605, [SMALL_STATE(7631)] = 147613, [SMALL_STATE(7632)] = 147621, [SMALL_STATE(7633)] = 147629, [SMALL_STATE(7634)] = 147637, [SMALL_STATE(7635)] = 147645, [SMALL_STATE(7636)] = 147653, [SMALL_STATE(7637)] = 147661, [SMALL_STATE(7638)] = 147669, [SMALL_STATE(7639)] = 147677, [SMALL_STATE(7640)] = 147685, [SMALL_STATE(7641)] = 147693, [SMALL_STATE(7642)] = 147701, [SMALL_STATE(7643)] = 147709, [SMALL_STATE(7644)] = 147717, [SMALL_STATE(7645)] = 147725, [SMALL_STATE(7646)] = 147733, [SMALL_STATE(7647)] = 147741, [SMALL_STATE(7648)] = 147749, [SMALL_STATE(7649)] = 147757, [SMALL_STATE(7650)] = 147765, [SMALL_STATE(7651)] = 147773, [SMALL_STATE(7652)] = 147781, [SMALL_STATE(7653)] = 147789, [SMALL_STATE(7654)] = 147797, [SMALL_STATE(7655)] = 147805, [SMALL_STATE(7656)] = 147813, [SMALL_STATE(7657)] = 147821, [SMALL_STATE(7658)] = 147829, [SMALL_STATE(7659)] = 147837, [SMALL_STATE(7660)] = 147845, [SMALL_STATE(7661)] = 147853, [SMALL_STATE(7662)] = 147861, [SMALL_STATE(7663)] = 147869, [SMALL_STATE(7664)] = 147877, [SMALL_STATE(7665)] = 147885, [SMALL_STATE(7666)] = 147893, [SMALL_STATE(7667)] = 147901, [SMALL_STATE(7668)] = 147909, [SMALL_STATE(7669)] = 147917, [SMALL_STATE(7670)] = 147925, [SMALL_STATE(7671)] = 147933, [SMALL_STATE(7672)] = 147941, [SMALL_STATE(7673)] = 147949, [SMALL_STATE(7674)] = 147957, [SMALL_STATE(7675)] = 147965, [SMALL_STATE(7676)] = 147973, [SMALL_STATE(7677)] = 147981, [SMALL_STATE(7678)] = 147989, [SMALL_STATE(7679)] = 147997, [SMALL_STATE(7680)] = 148005, [SMALL_STATE(7681)] = 148013, [SMALL_STATE(7682)] = 148021, [SMALL_STATE(7683)] = 148029, [SMALL_STATE(7684)] = 148037, [SMALL_STATE(7685)] = 148045, [SMALL_STATE(7686)] = 148053, [SMALL_STATE(7687)] = 148061, [SMALL_STATE(7688)] = 148069, [SMALL_STATE(7689)] = 148077, [SMALL_STATE(7690)] = 148085, [SMALL_STATE(7691)] = 148093, [SMALL_STATE(7692)] = 148101, [SMALL_STATE(7693)] = 148109, [SMALL_STATE(7694)] = 148117, [SMALL_STATE(7695)] = 148125, [SMALL_STATE(7696)] = 148133, [SMALL_STATE(7697)] = 148141, [SMALL_STATE(7698)] = 148149, [SMALL_STATE(7699)] = 148157, [SMALL_STATE(7700)] = 148165, [SMALL_STATE(7701)] = 148173, [SMALL_STATE(7702)] = 148181, [SMALL_STATE(7703)] = 148189, [SMALL_STATE(7704)] = 148197, [SMALL_STATE(7705)] = 148205, [SMALL_STATE(7706)] = 148213, [SMALL_STATE(7707)] = 148221, [SMALL_STATE(7708)] = 148229, [SMALL_STATE(7709)] = 148237, [SMALL_STATE(7710)] = 148245, [SMALL_STATE(7711)] = 148253, [SMALL_STATE(7712)] = 148261, [SMALL_STATE(7713)] = 148269, [SMALL_STATE(7714)] = 148277, [SMALL_STATE(7715)] = 148285, [SMALL_STATE(7716)] = 148293, [SMALL_STATE(7717)] = 148301, [SMALL_STATE(7718)] = 148309, [SMALL_STATE(7719)] = 148317, [SMALL_STATE(7720)] = 148325, [SMALL_STATE(7721)] = 148333, [SMALL_STATE(7722)] = 148341, [SMALL_STATE(7723)] = 148349, [SMALL_STATE(7724)] = 148357, [SMALL_STATE(7725)] = 148365, [SMALL_STATE(7726)] = 148373, [SMALL_STATE(7727)] = 148381, [SMALL_STATE(7728)] = 148391, [SMALL_STATE(7729)] = 148399, [SMALL_STATE(7730)] = 148407, [SMALL_STATE(7731)] = 148417, [SMALL_STATE(7732)] = 148425, [SMALL_STATE(7733)] = 148435, [SMALL_STATE(7734)] = 148443, [SMALL_STATE(7735)] = 148451, [SMALL_STATE(7736)] = 148459, [SMALL_STATE(7737)] = 148467, [SMALL_STATE(7738)] = 148475, [SMALL_STATE(7739)] = 148483, [SMALL_STATE(7740)] = 148491, [SMALL_STATE(7741)] = 148499, [SMALL_STATE(7742)] = 148507, [SMALL_STATE(7743)] = 148515, [SMALL_STATE(7744)] = 148523, [SMALL_STATE(7745)] = 148531, [SMALL_STATE(7746)] = 148539, [SMALL_STATE(7747)] = 148547, [SMALL_STATE(7748)] = 148555, [SMALL_STATE(7749)] = 148563, [SMALL_STATE(7750)] = 148571, [SMALL_STATE(7751)] = 148579, [SMALL_STATE(7752)] = 148587, [SMALL_STATE(7753)] = 148595, [SMALL_STATE(7754)] = 148603, [SMALL_STATE(7755)] = 148611, [SMALL_STATE(7756)] = 148619, [SMALL_STATE(7757)] = 148627, [SMALL_STATE(7758)] = 148635, [SMALL_STATE(7759)] = 148643, [SMALL_STATE(7760)] = 148651, [SMALL_STATE(7761)] = 148659, [SMALL_STATE(7762)] = 148667, [SMALL_STATE(7763)] = 148675, [SMALL_STATE(7764)] = 148683, [SMALL_STATE(7765)] = 148691, [SMALL_STATE(7766)] = 148699, [SMALL_STATE(7767)] = 148707, [SMALL_STATE(7768)] = 148715, [SMALL_STATE(7769)] = 148723, [SMALL_STATE(7770)] = 148731, [SMALL_STATE(7771)] = 148739, [SMALL_STATE(7772)] = 148747, [SMALL_STATE(7773)] = 148755, [SMALL_STATE(7774)] = 148763, [SMALL_STATE(7775)] = 148771, [SMALL_STATE(7776)] = 148779, [SMALL_STATE(7777)] = 148787, [SMALL_STATE(7778)] = 148795, [SMALL_STATE(7779)] = 148803, [SMALL_STATE(7780)] = 148811, [SMALL_STATE(7781)] = 148819, [SMALL_STATE(7782)] = 148827, [SMALL_STATE(7783)] = 148835, [SMALL_STATE(7784)] = 148843, [SMALL_STATE(7785)] = 148851, [SMALL_STATE(7786)] = 148859, [SMALL_STATE(7787)] = 148867, [SMALL_STATE(7788)] = 148875, [SMALL_STATE(7789)] = 148883, [SMALL_STATE(7790)] = 148891, [SMALL_STATE(7791)] = 148899, [SMALL_STATE(7792)] = 148907, [SMALL_STATE(7793)] = 148915, [SMALL_STATE(7794)] = 148923, [SMALL_STATE(7795)] = 148931, [SMALL_STATE(7796)] = 148939, [SMALL_STATE(7797)] = 148947, [SMALL_STATE(7798)] = 148955, [SMALL_STATE(7799)] = 148963, [SMALL_STATE(7800)] = 148971, [SMALL_STATE(7801)] = 148979, [SMALL_STATE(7802)] = 148987, [SMALL_STATE(7803)] = 148995, [SMALL_STATE(7804)] = 149003, [SMALL_STATE(7805)] = 149011, [SMALL_STATE(7806)] = 149019, [SMALL_STATE(7807)] = 149027, [SMALL_STATE(7808)] = 149035, [SMALL_STATE(7809)] = 149043, [SMALL_STATE(7810)] = 149051, [SMALL_STATE(7811)] = 149059, [SMALL_STATE(7812)] = 149067, [SMALL_STATE(7813)] = 149075, [SMALL_STATE(7814)] = 149083, [SMALL_STATE(7815)] = 149091, [SMALL_STATE(7816)] = 149099, [SMALL_STATE(7817)] = 149107, [SMALL_STATE(7818)] = 149115, [SMALL_STATE(7819)] = 149123, [SMALL_STATE(7820)] = 149131, [SMALL_STATE(7821)] = 149139, [SMALL_STATE(7822)] = 149147, [SMALL_STATE(7823)] = 149155, [SMALL_STATE(7824)] = 149163, [SMALL_STATE(7825)] = 149171, [SMALL_STATE(7826)] = 149179, [SMALL_STATE(7827)] = 149187, [SMALL_STATE(7828)] = 149195, [SMALL_STATE(7829)] = 149203, [SMALL_STATE(7830)] = 149211, [SMALL_STATE(7831)] = 149219, [SMALL_STATE(7832)] = 149227, [SMALL_STATE(7833)] = 149235, [SMALL_STATE(7834)] = 149243, [SMALL_STATE(7835)] = 149251, [SMALL_STATE(7836)] = 149259, [SMALL_STATE(7837)] = 149267, [SMALL_STATE(7838)] = 149275, [SMALL_STATE(7839)] = 149283, [SMALL_STATE(7840)] = 149291, [SMALL_STATE(7841)] = 149299, [SMALL_STATE(7842)] = 149307, [SMALL_STATE(7843)] = 149315, [SMALL_STATE(7844)] = 149323, [SMALL_STATE(7845)] = 149331, [SMALL_STATE(7846)] = 149339, [SMALL_STATE(7847)] = 149347, [SMALL_STATE(7848)] = 149355, [SMALL_STATE(7849)] = 149363, [SMALL_STATE(7850)] = 149371, [SMALL_STATE(7851)] = 149379, [SMALL_STATE(7852)] = 149387, [SMALL_STATE(7853)] = 149395, [SMALL_STATE(7854)] = 149403, [SMALL_STATE(7855)] = 149411, [SMALL_STATE(7856)] = 149419, [SMALL_STATE(7857)] = 149427, [SMALL_STATE(7858)] = 149435, [SMALL_STATE(7859)] = 149443, [SMALL_STATE(7860)] = 149451, [SMALL_STATE(7861)] = 149459, [SMALL_STATE(7862)] = 149467, [SMALL_STATE(7863)] = 149475, [SMALL_STATE(7864)] = 149483, [SMALL_STATE(7865)] = 149491, [SMALL_STATE(7866)] = 149499, [SMALL_STATE(7867)] = 149507, [SMALL_STATE(7868)] = 149515, [SMALL_STATE(7869)] = 149523, [SMALL_STATE(7870)] = 149531, [SMALL_STATE(7871)] = 149539, [SMALL_STATE(7872)] = 149547, [SMALL_STATE(7873)] = 149555, [SMALL_STATE(7874)] = 149563, [SMALL_STATE(7875)] = 149571, [SMALL_STATE(7876)] = 149579, [SMALL_STATE(7877)] = 149587, [SMALL_STATE(7878)] = 149595, [SMALL_STATE(7879)] = 149603, [SMALL_STATE(7880)] = 149611, [SMALL_STATE(7881)] = 149619, [SMALL_STATE(7882)] = 149627, [SMALL_STATE(7883)] = 149635, [SMALL_STATE(7884)] = 149643, [SMALL_STATE(7885)] = 149651, [SMALL_STATE(7886)] = 149659, [SMALL_STATE(7887)] = 149667, [SMALL_STATE(7888)] = 149675, [SMALL_STATE(7889)] = 149683, [SMALL_STATE(7890)] = 149691, [SMALL_STATE(7891)] = 149699, [SMALL_STATE(7892)] = 149707, [SMALL_STATE(7893)] = 149715, [SMALL_STATE(7894)] = 149723, [SMALL_STATE(7895)] = 149731, [SMALL_STATE(7896)] = 149739, [SMALL_STATE(7897)] = 149747, [SMALL_STATE(7898)] = 149755, [SMALL_STATE(7899)] = 149763, [SMALL_STATE(7900)] = 149771, [SMALL_STATE(7901)] = 149779, [SMALL_STATE(7902)] = 149787, [SMALL_STATE(7903)] = 149795, [SMALL_STATE(7904)] = 149803, [SMALL_STATE(7905)] = 149811, [SMALL_STATE(7906)] = 149819, [SMALL_STATE(7907)] = 149827, [SMALL_STATE(7908)] = 149835, [SMALL_STATE(7909)] = 149843, [SMALL_STATE(7910)] = 149851, [SMALL_STATE(7911)] = 149859, [SMALL_STATE(7912)] = 149867, [SMALL_STATE(7913)] = 149875, [SMALL_STATE(7914)] = 149883, [SMALL_STATE(7915)] = 149891, [SMALL_STATE(7916)] = 149899, [SMALL_STATE(7917)] = 149907, [SMALL_STATE(7918)] = 149915, [SMALL_STATE(7919)] = 149923, [SMALL_STATE(7920)] = 149931, [SMALL_STATE(7921)] = 149939, [SMALL_STATE(7922)] = 149947, [SMALL_STATE(7923)] = 149955, [SMALL_STATE(7924)] = 149963, [SMALL_STATE(7925)] = 149971, [SMALL_STATE(7926)] = 149979, [SMALL_STATE(7927)] = 149987, [SMALL_STATE(7928)] = 149995, [SMALL_STATE(7929)] = 150003, [SMALL_STATE(7930)] = 150011, [SMALL_STATE(7931)] = 150019, [SMALL_STATE(7932)] = 150027, [SMALL_STATE(7933)] = 150035, [SMALL_STATE(7934)] = 150043, [SMALL_STATE(7935)] = 150051, [SMALL_STATE(7936)] = 150059, [SMALL_STATE(7937)] = 150067, [SMALL_STATE(7938)] = 150075, [SMALL_STATE(7939)] = 150083, [SMALL_STATE(7940)] = 150091, [SMALL_STATE(7941)] = 150099, [SMALL_STATE(7942)] = 150107, [SMALL_STATE(7943)] = 150115, [SMALL_STATE(7944)] = 150123, [SMALL_STATE(7945)] = 150131, [SMALL_STATE(7946)] = 150139, [SMALL_STATE(7947)] = 150147, [SMALL_STATE(7948)] = 150155, [SMALL_STATE(7949)] = 150163, [SMALL_STATE(7950)] = 150171, [SMALL_STATE(7951)] = 150179, [SMALL_STATE(7952)] = 150187, [SMALL_STATE(7953)] = 150195, [SMALL_STATE(7954)] = 150203, [SMALL_STATE(7955)] = 150211, [SMALL_STATE(7956)] = 150219, [SMALL_STATE(7957)] = 150227, [SMALL_STATE(7958)] = 150235, [SMALL_STATE(7959)] = 150243, [SMALL_STATE(7960)] = 150251, [SMALL_STATE(7961)] = 150259, [SMALL_STATE(7962)] = 150267, [SMALL_STATE(7963)] = 150275, [SMALL_STATE(7964)] = 150283, [SMALL_STATE(7965)] = 150291, [SMALL_STATE(7966)] = 150299, [SMALL_STATE(7967)] = 150307, [SMALL_STATE(7968)] = 150315, [SMALL_STATE(7969)] = 150323, [SMALL_STATE(7970)] = 150331, [SMALL_STATE(7971)] = 150339, [SMALL_STATE(7972)] = 150347, [SMALL_STATE(7973)] = 150355, [SMALL_STATE(7974)] = 150363, [SMALL_STATE(7975)] = 150371, [SMALL_STATE(7976)] = 150379, [SMALL_STATE(7977)] = 150387, [SMALL_STATE(7978)] = 150395, [SMALL_STATE(7979)] = 150403, [SMALL_STATE(7980)] = 150411, [SMALL_STATE(7981)] = 150419, [SMALL_STATE(7982)] = 150427, [SMALL_STATE(7983)] = 150435, [SMALL_STATE(7984)] = 150443, [SMALL_STATE(7985)] = 150451, [SMALL_STATE(7986)] = 150459, [SMALL_STATE(7987)] = 150467, [SMALL_STATE(7988)] = 150475, [SMALL_STATE(7989)] = 150483, [SMALL_STATE(7990)] = 150491, [SMALL_STATE(7991)] = 150499, [SMALL_STATE(7992)] = 150507, [SMALL_STATE(7993)] = 150515, [SMALL_STATE(7994)] = 150523, [SMALL_STATE(7995)] = 150531, [SMALL_STATE(7996)] = 150539, [SMALL_STATE(7997)] = 150547, [SMALL_STATE(7998)] = 150555, [SMALL_STATE(7999)] = 150563, [SMALL_STATE(8000)] = 150571, [SMALL_STATE(8001)] = 150579, [SMALL_STATE(8002)] = 150587, [SMALL_STATE(8003)] = 150595, [SMALL_STATE(8004)] = 150603, [SMALL_STATE(8005)] = 150611, [SMALL_STATE(8006)] = 150619, [SMALL_STATE(8007)] = 150627, [SMALL_STATE(8008)] = 150635, [SMALL_STATE(8009)] = 150643, [SMALL_STATE(8010)] = 150651, [SMALL_STATE(8011)] = 150659, [SMALL_STATE(8012)] = 150667, [SMALL_STATE(8013)] = 150675, [SMALL_STATE(8014)] = 150683, [SMALL_STATE(8015)] = 150691, [SMALL_STATE(8016)] = 150699, [SMALL_STATE(8017)] = 150707, [SMALL_STATE(8018)] = 150715, [SMALL_STATE(8019)] = 150723, [SMALL_STATE(8020)] = 150731, [SMALL_STATE(8021)] = 150739, [SMALL_STATE(8022)] = 150747, [SMALL_STATE(8023)] = 150755, [SMALL_STATE(8024)] = 150763, [SMALL_STATE(8025)] = 150771, [SMALL_STATE(8026)] = 150779, [SMALL_STATE(8027)] = 150787, [SMALL_STATE(8028)] = 150795, [SMALL_STATE(8029)] = 150803, [SMALL_STATE(8030)] = 150811, [SMALL_STATE(8031)] = 150819, [SMALL_STATE(8032)] = 150827, [SMALL_STATE(8033)] = 150835, [SMALL_STATE(8034)] = 150843, [SMALL_STATE(8035)] = 150851, [SMALL_STATE(8036)] = 150859, [SMALL_STATE(8037)] = 150867, [SMALL_STATE(8038)] = 150875, [SMALL_STATE(8039)] = 150883, [SMALL_STATE(8040)] = 150891, [SMALL_STATE(8041)] = 150899, [SMALL_STATE(8042)] = 150907, [SMALL_STATE(8043)] = 150915, [SMALL_STATE(8044)] = 150923, [SMALL_STATE(8045)] = 150931, [SMALL_STATE(8046)] = 150939, [SMALL_STATE(8047)] = 150947, [SMALL_STATE(8048)] = 150955, [SMALL_STATE(8049)] = 150963, [SMALL_STATE(8050)] = 150971, [SMALL_STATE(8051)] = 150979, [SMALL_STATE(8052)] = 150987, [SMALL_STATE(8053)] = 150995, [SMALL_STATE(8054)] = 151003, [SMALL_STATE(8055)] = 151011, [SMALL_STATE(8056)] = 151019, [SMALL_STATE(8057)] = 151027, [SMALL_STATE(8058)] = 151035, [SMALL_STATE(8059)] = 151043, [SMALL_STATE(8060)] = 151051, }; 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(5137), [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1777), [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8011), [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6119), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1811), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7819), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6048), [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4997), [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6060), [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2971), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3000), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2944), [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7778), [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2939), [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2718), [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2804), [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2977), [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2153), [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2955), [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5712), [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7519), [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6292), [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4200), [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6488), [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2935), [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7523), [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2925), [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2463), [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6382), [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7269), [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7364), [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6280), [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6546), [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6566), [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7142), [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7238), [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3466), [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(565), [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3867), [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6173), [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1311), [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1311), [93] = {.entry = {.count = 1, .reusable = true}}, SHIFT(693), [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3821), [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5059), [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3687), [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3870), [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3011), [111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5217), [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7590), [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2973), [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6876), [119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(854), [121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7468), [123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7554), [125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6874), [127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1763), [129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7958), [131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3134), [133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1313), [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2981), [139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2158), [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2797), [143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7942), [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7800), [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3135), [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5891), [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6845), [153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5562), [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6148), [157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7524), [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6241), [161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7489), [163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4173), [165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3614), [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6145), [169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7461), [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2687), [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(618), [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2940), [177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2933), [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2431), [181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6234), [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7883), [185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7831), [189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1316), [191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(349), [193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7490), [195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7580), [197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6229), [199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6607), [201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6410), [203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6793), [205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7882), [207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7582), [209] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5071), [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7167), [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7166), [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7131), [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5135), [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5290), [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4872), [223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3456), [227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5307), [229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3461), [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3687), [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3437), [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), [239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3488), [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(661), [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1768), [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5082), [249] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3503), [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 3, 0, 0), [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1353), [259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3974), [261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2998), [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5211), [265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6762), [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 3, 0, 0), [269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7009), [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6761), [273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1766), [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(153), [277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2986), [279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2150), [281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2880), [283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7932), [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8045), [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6049), [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6797), [291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5546), [293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7002), [295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6333), [297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4207), [299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(619), [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2957), [303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2948), [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2443), [307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6334), [309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7934), [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), [313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7895), [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371), [317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6335), [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6475), [321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6621), [323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6660), [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7935), [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3817), [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3811), [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(681), [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3851), [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(687), [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3970), [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2122), [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(671), [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2145), [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3822), [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2118), [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676), [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(663), [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2144), [357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 2, 0, 0), [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), [361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 2, 0, 0), [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2110), [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3813), [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(669), [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(668), [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667), [377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 4, 0, 0), [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), [381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 4, 0, 0), [383] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3503), [386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(565), [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), [391] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(66), [394] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6173), [397] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1311), [400] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1311), [403] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(693), [406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(710), [409] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(31), [412] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3821), [415] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1353), [418] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6048), [421] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5059), [424] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3687), [427] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3974), [430] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2971), [433] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2998), [436] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2944), [439] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5211), [442] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7590), [445] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2973), [448] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6762), [451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), [453] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7468), [456] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7009), [459] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2939), [462] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6761), [465] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1766), [468] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3134), [471] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1313), [474] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2804), [477] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(153), [480] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2986), [483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2150), [486] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2955), [489] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2880), [492] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7932), [495] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(8045), [498] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3135), [501] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6049), [504] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6797), [507] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5546), [510] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6148), [513] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7002), [516] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6333), [519] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7489), [522] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(4207), [525] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3614), [528] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6145), [531] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2935), [534] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7461), [537] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2687), [540] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(619), [543] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2957), [546] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2948), [549] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2443), [552] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6334), [555] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7934), [558] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(71), [561] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7895), [564] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1316), [567] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(371), [570] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7490), [573] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7580), [576] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6335), [579] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6475), [582] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6621), [585] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6660), [588] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7935), [591] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7582), [594] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7238), [597] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5082), [600] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7167), [603] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7166), [606] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7131), [609] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5135), [612] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5290), [615] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(4872), [618] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(535), [621] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3456), [624] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5307), [627] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3461), [630] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3687), [633] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3437), [636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 5, 0, 0), [638] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 5, 0, 0), [640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 7, 0, 0), [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), [644] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 7, 0, 0), [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_statement, 8, 0, 0), [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_case_statement, 8, 0, 0), [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3936), [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3769), [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2116), [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2114), [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2131), [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1565), [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1651), [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2466), [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5192), [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), [672] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(3492), [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), [678] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(6173), [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685), [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2197), [686] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__attribute, 1, 0, 0), [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1317), [690] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(6048), [694] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(5059), [698] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3986), [700] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2971), [704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3009), [706] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2944), [710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5218), [712] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2973), [716] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6418), [718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), [720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7178), [722] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2939), [726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6415), [728] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1764), [730] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7180), [732] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2804), [736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(425), [738] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2980), [742] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2159), [744] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2955), [748] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2879), [752] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7953), [754] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8049), [756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5761), [758] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6560), [760] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5485), [762] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7181), [764] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5827), [766] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(4177), [770] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2687), [774] = {.entry = {.count = 1, .reusable = false}}, SHIFT(616), [776] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2932), [780] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2960), [784] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2440), [788] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5822), [790] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7955), [792] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(48), [796] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7928), [798] = {.entry = {.count = 1, .reusable = false}}, SHIFT(322), [800] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(7580), [804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5820), [806] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6896), [808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6674), [810] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6513), [812] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7956), [814] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(7582), [818] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(7238), [822] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(5082), [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1590), [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2107), [832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(785), [834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7451), [836] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2889), [838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7878), [840] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8039), [842] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6770), [844] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2946), [846] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2441), [848] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7880), [850] = {.entry = {.count = 1, .reusable = false}}, SHIFT(93), [852] = {.entry = {.count = 1, .reusable = false}}, SHIFT(357), [854] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6749), [856] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7881), [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5164), [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2425), [864] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3492), [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2380), [870] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2980), [872] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2161), [874] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2876), [876] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7962), [878] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8051), [880] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6518), [882] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4177), [884] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2923), [886] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2960), [888] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2435), [890] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7964), [892] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), [894] = {.entry = {.count = 1, .reusable = false}}, SHIFT(364), [896] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6494), [898] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7965), [900] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(3488), [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), [906] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2981), [910] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2797), [914] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(4173), [918] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2940), [922] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2933), [926] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2431), [930] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(55), [934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5167), [936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), [938] = {.entry = {.count = 1, .reusable = false}}, SHIFT(832), [940] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7245), [942] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2875), [946] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7970), [948] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8053), [950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6492), [952] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2927), [956] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2433), [960] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7972), [962] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(57), [966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(399), [968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6441), [970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7973), [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), [974] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2832), [976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7840), [978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8034), [980] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6430), [982] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2916), [984] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2437), [986] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7843), [988] = {.entry = {.count = 1, .reusable = false}}, SHIFT(92), [990] = {.entry = {.count = 1, .reusable = false}}, SHIFT(230), [992] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6434), [994] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7844), [996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(673), [998] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2876), [1002] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2923), [1006] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2435), [1010] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(59), [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1733), [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1650), [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), [1022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1450), [1024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2129), [1026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2124), [1028] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(3500), [1032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), [1034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(691), [1036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5637), [1038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1343), [1040] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3940), [1042] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3015), [1044] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5223), [1046] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6712), [1048] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7044), [1050] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6714), [1052] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1765), [1054] = {.entry = {.count = 1, .reusable = false}}, SHIFT(154), [1056] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2978), [1060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2157), [1062] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2878), [1066] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7944), [1068] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8047), [1070] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6384), [1072] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6663), [1074] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5515), [1076] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7047), [1078] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6156), [1080] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(4196), [1084] = {.entry = {.count = 1, .reusable = false}}, SHIFT(617), [1086] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2913), [1090] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2930), [1094] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2445), [1098] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6153), [1100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7946), [1102] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(65), [1106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7912), [1108] = {.entry = {.count = 1, .reusable = false}}, SHIFT(309), [1110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6152), [1112] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6668), [1114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6646), [1116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6550), [1118] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7947), [1120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(666), [1122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), [1124] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(67), [1127] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2832), [1130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7840), [1133] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(8034), [1136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6430), [1139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2916), [1142] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2437), [1145] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7843), [1148] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(92), [1151] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(230), [1154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6434), [1157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7844), [1160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665), [1162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3500), [1164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), [1166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5578), [1168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2134), [1170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2978), [1172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2878), [1174] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4196), [1176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2913), [1178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2930), [1180] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2445), [1182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), [1184] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(3503), [1188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(672), [1190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1389), [1192] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2986), [1196] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2880), [1200] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(4207), [1204] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2957), [1208] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2948), [1212] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2443), [1216] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(71), [1220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3971), [1222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), [1224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5723), [1226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692), [1228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), [1230] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2858), [1234] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7916), [1236] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8043), [1238] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6933), [1240] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2926), [1244] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2432), [1248] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7918), [1250] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(77), [1254] = {.entry = {.count = 1, .reusable = false}}, SHIFT(411), [1256] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6795), [1258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7919), [1260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), [1262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), [1264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3501), [1266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(664), [1268] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(3502), [1272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(684), [1274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1349), [1276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3956), [1278] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1762), [1280] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2977), [1284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2154), [1286] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2776), [1290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7603), [1292] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8003), [1294] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6482), [1296] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5487), [1298] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(4228), [1302] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2943), [1306] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2936), [1310] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2439), [1314] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7605), [1316] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(83), [1320] = {.entry = {.count = 1, .reusable = false}}, SHIFT(273), [1322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6571), [1324] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6760), [1326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7606), [1328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3981), [1330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), [1332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), [1334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2468), [1336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), [1338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), [1340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [1342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2308), [1344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2875), [1346] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2927), [1348] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2433), [1350] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), [1352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2455), [1354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), [1356] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2832), [1360] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2916), [1364] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2437), [1368] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(92), [1372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(675), [1374] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2889), [1378] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2946), [1382] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2441), [1386] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(93), [1390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), [1392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), [1394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1563), [1396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2442), [1398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4016), [1400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), [1402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2424), [1404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), [1406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4035), [1408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3498), [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2444), [1412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), [1414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2372), [1416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2438), [1418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), [1420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2234), [1422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), [1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4067), [1426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2251), [1428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674), [1430] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2768), [1434] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7899), [1436] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8041), [1438] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6746), [1440] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2937), [1444] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2446), [1448] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7901), [1450] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(112), [1454] = {.entry = {.count = 1, .reusable = false}}, SHIFT(470), [1456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6935), [1458] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7902), [1460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2426), [1462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2252), [1464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), [1466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3975), [1468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1510), [1470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2128), [1472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), [1474] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3488), [1477] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(565), [1480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), [1482] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(79), [1485] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6173), [1488] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(1311), [1491] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(1311), [1494] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(693), [1497] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(710), [1500] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(118), [1503] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3821), [1506] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(1318), [1509] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6048), [1512] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5059), [1515] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3687), [1518] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3870), [1521] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2971), [1524] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3011), [1527] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2944), [1530] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5217), [1533] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7590), [1536] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2973), [1539] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6876), [1542] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(854), [1545] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7468), [1548] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7554), [1551] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2939), [1554] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6874), [1557] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(1763), [1560] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7958), [1563] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3134), [1566] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(1313), [1569] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2804), [1572] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(337), [1575] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2981), [1578] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2158), [1581] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2955), [1584] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2797), [1587] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7942), [1590] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7800), [1593] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3135), [1596] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5891), [1599] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6845), [1602] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5562), [1605] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6148), [1608] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7524), [1611] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6241), [1614] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7489), [1617] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(4173), [1620] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3614), [1623] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6145), [1626] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2935), [1629] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7461), [1632] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2687), [1635] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(618), [1638] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2940), [1641] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2933), [1644] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(2431), [1647] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6234), [1650] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7883), [1653] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(55), [1656] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7831), [1659] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(1316), [1662] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(349), [1665] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7490), [1668] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7580), [1671] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6229), [1674] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6607), [1677] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6410), [1680] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(6793), [1683] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7882), [1686] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7582), [1689] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7238), [1692] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5082), [1695] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7167), [1698] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7166), [1701] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(7131), [1704] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5135), [1707] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5290), [1710] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(4872), [1713] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(535), [1716] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3456), [1719] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(5307), [1722] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3461), [1725] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3687), [1728] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarations_and_statements, 2, 0, 0), SHIFT_REPEAT(3437), [1731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1506), [1733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3502), [1735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), [1737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6405), [1739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2098), [1741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2776), [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4228), [1745] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2943), [1747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2936), [1749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2439), [1751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), [1753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), [1755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1373), [1757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(686), [1759] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2907), [1763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7498), [1765] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7985), [1767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6715), [1769] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2958), [1773] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(2428), [1777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7500), [1779] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(124), [1783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(465), [1785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6716), [1787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7501), [1789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1505), [1791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), [1793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2126), [1795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), [1797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2235), [1799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3504), [1801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6580), [1805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2907), [1807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2958), [1809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2428), [1811] = {.entry = {.count = 1, .reusable = false}}, SHIFT(124), [1813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2181), [1817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), [1819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2178), [1821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), [1823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), [1825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), [1827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2172), [1829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), [1831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [1833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1612), [1835] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3488), [1838] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(79), [1841] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(196), [1844] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1318), [1847] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3870), [1850] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3011), [1853] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5217), [1856] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6876), [1859] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7554), [1862] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6874), [1865] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(1763), [1868] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(337), [1871] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2981), [1874] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2158), [1877] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2889), [1880] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7878), [1883] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(8039), [1886] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5891), [1889] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6770), [1892] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(5562), [1895] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7524), [1898] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6241), [1901] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(4173), [1904] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(618), [1907] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2946), [1910] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2933), [1913] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2441), [1916] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6234), [1919] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7880), [1922] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(93), [1925] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7831), [1928] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(357), [1931] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6229), [1934] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6607), [1937] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6410), [1940] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6749), [1943] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7881), [1946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), [1948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1604), [1950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2879), [1952] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2932), [1954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2440), [1956] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), [1958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), [1960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5698), [1962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), [1964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5696), [1966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), [1968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5689), [1970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), [1972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1587), [1974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), [1976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1455), [1978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), [1980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1466), [1982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [1984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1476), [1986] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2768), [1988] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2937), [1990] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2446), [1992] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), [1994] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2858), [1996] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2926), [1998] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2432), [2000] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), [2002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), [2004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), [2006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), [2008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [2010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), [2012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), [2014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2192), [2018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), [2020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5600), [2022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), [2024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1688), [2026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), [2028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), [2030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1378), [2032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), [2034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [2036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), [2038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), [2040] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(507), [2043] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2797), [2046] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7942), [2049] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7800), [2052] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6845), [2055] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2940), [2058] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2431), [2061] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7883), [2064] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(55), [2067] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(349), [2070] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(6793), [2073] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_case_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7882), [2076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), [2078] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2165), [2080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), [2082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(765), [2084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(749), [2086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(750), [2088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(745), [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(719), [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(751), [2094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(773), [2096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(748), [2098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), [2100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(731), [2102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3459), [2105] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(565), [2108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), [2110] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(2), [2113] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(6173), [2116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(1311), [2119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(1311), [2122] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(693), [2125] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(710), [2128] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3821), [2131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(5059), [2134] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3687), [2137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), [2139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7590), [2142] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7487), [2145] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7468), [2148] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3204), [2151] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3134), [2154] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(1313), [2157] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(6789), [2160] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3135), [2163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7488), [2166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(6148), [2169] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7489), [2172] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7585), [2175] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3614), [2178] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(6145), [2181] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(6400), [2184] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(1316), [2187] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7490), [2190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7580), [2193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7582), [2196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7238), [2199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(5071), [2202] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7167), [2205] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7166), [2208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(7131), [2211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(5135), [2214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(5290), [2217] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(4872), [2220] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(535), [2223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3456), [2226] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(5307), [2229] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3461), [2232] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3687), [2235] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_label, 2, 0, 0), SHIFT(3437), [2238] = {.entry = {.count = 1, .reusable = false}}, SHIFT(550), [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), [2242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3567), [2244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), [2246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550), [2248] = {.entry = {.count = 1, .reusable = false}}, SHIFT(635), [2250] = {.entry = {.count = 1, .reusable = false}}, SHIFT(640), [2252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7080), [2254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7081), [2256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7082), [2258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5140), [2260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), [2262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5294), [2264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4878), [2266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(536), [2268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636), [2270] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5319), [2272] = {.entry = {.count = 1, .reusable = false}}, SHIFT(637), [2274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), [2276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3381), [2278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4598), [2280] = {.entry = {.count = 1, .reusable = false}}, SHIFT(526), [2282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3544), [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(526), [2286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(540), [2288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(656), [2290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(540), [2292] = {.entry = {.count = 1, .reusable = false}}, SHIFT(528), [2294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4617), [2296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(528), [2298] = {.entry = {.count = 1, .reusable = false}}, SHIFT(549), [2300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3510), [2302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), [2304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3462), [2306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(537), [2308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3133), [2310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(537), [2312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(533), [2314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3450), [2316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), [2318] = {.entry = {.count = 1, .reusable = false}}, SHIFT(539), [2320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), [2322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), [2324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3102), [2326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2407), [2328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), [2330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(644), [2332] = {.entry = {.count = 1, .reusable = false}}, SHIFT(538), [2334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2409), [2336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), [2338] = {.entry = {.count = 1, .reusable = false}}, SHIFT(545), [2340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4806), [2342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), [2344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(527), [2346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3367), [2348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(527), [2350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3255), [2352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4792), [2354] = {.entry = {.count = 1, .reusable = false}}, SHIFT(544), [2356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3268), [2358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544), [2360] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), [2362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3330), [2364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), [2366] = {.entry = {.count = 1, .reusable = false}}, SHIFT(552), [2368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4770), [2370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552), [2372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3538), [2374] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(550), [2377] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(580), [2380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), [2382] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(572), [2385] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(550), [2388] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(635), [2391] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(640), [2394] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(7080), [2397] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(7081), [2400] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(7082), [2403] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(5140), [2406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(967), [2409] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(5294), [2412] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(4878), [2415] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(536), [2418] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(636), [2421] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(5319), [2424] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(637), [2427] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__i_token_string_tokens, 2, 0, 0), SHIFT_REPEAT(634), [2430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3363), [2432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4670), [2434] = {.entry = {.count = 1, .reusable = false}}, SHIFT(575), [2436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), [2438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2398), [2440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), [2442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), [2444] = {.entry = {.count = 1, .reusable = false}}, SHIFT(648), [2446] = {.entry = {.count = 1, .reusable = false}}, SHIFT(641), [2448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6988), [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6949), [2452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6950), [2454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5091), [2456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5297), [2458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4955), [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530), [2462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), [2464] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5275), [2466] = {.entry = {.count = 1, .reusable = false}}, SHIFT(652), [2468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), [2470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(571), [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3561), [2474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), [2476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(566), [2478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645), [2480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), [2482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3395), [2484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), [2486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(556), [2488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3371), [2490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556), [2492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3267), [2494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(559), [2496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3264), [2498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3331), [2502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(561), [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3326), [2506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), [2508] = {.entry = {.count = 1, .reusable = false}}, SHIFT(570), [2510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4775), [2512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), [2514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4805), [2516] = {.entry = {.count = 1, .reusable = false}}, SHIFT(578), [2518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3441), [2520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(578), [2522] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(566), [2525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(582), [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), [2530] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(577), [2533] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(566), [2536] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(648), [2539] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(641), [2542] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(6988), [2545] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(6949), [2548] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(6950), [2551] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(5091), [2554] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(5297), [2557] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(4955), [2560] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(530), [2563] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(651), [2566] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(5275), [2569] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(652), [2572] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__token_string_tokens, 2, 0, 0), SHIFT_REPEAT(646), [2575] = {.entry = {.count = 1, .reusable = false}}, SHIFT(564), [2577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4814), [2579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), [2581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3132), [2583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(568), [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3113), [2587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4731), [2591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3511), [2593] = {.entry = {.count = 1, .reusable = false}}, SHIFT(557), [2595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), [2597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), [2599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(581), [2601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3540), [2603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(581), [2605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4611), [2607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2404), [2609] = {.entry = {.count = 1, .reusable = false}}, SHIFT(574), [2611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4602), [2613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), [2615] = {.entry = {.count = 1, .reusable = false}}, SHIFT(555), [2617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), [2619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), [2621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3447), [2623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), [2625] = {.entry = {.count = 1, .reusable = false}}, SHIFT(579), [2627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), [2629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), [2631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3560), [2633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(583), [2635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658), [2637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(583), [2639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), [2641] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5122), [2643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 6, 0, 0), [2645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 6, 0, 0), [2647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(600), [2649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7640), [2651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5879), [2653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2678), [2655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5652), [2657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4199), [2659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2462), [2661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6723), [2663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 4, 0, 0), [2665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 4, 0, 0), [2667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597), [2669] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5122), [2672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), [2674] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6119), [2677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), [2679] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(586), [2682] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7640), [2685] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6048), [2688] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(4997), [2691] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5879), [2694] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2971), [2697] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2998), [2700] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2944), [2703] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7009), [2706] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2939), [2709] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2678), [2712] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2804), [2715] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2986), [2718] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2150), [2721] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2955), [2724] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5652), [2727] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7002), [2730] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6333), [2733] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(4199), [2736] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2935), [2739] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7523), [2742] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2948), [2745] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2462), [2748] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6334), [2751] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7895), [2754] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7364), [2757] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6335), [2760] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6475), [2763] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6723), [2766] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7142), [2769] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7238), [2772] = {.entry = {.count = 1, .reusable = false}}, SHIFT(604), [2774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5624), [2776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604), [2778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2336), [2780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1528), [2782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 3, 0, 0), [2784] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 3, 0, 0), [2786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586), [2788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1560), [2790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2265), [2792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1354), [2794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1625), [2796] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 5, 0, 0), [2798] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 5, 0, 0), [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), [2802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5564), [2804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 7, 0, 0), [2806] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 7, 0, 0), [2808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), [2810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 8, 0, 0), [2812] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 8, 0, 0), [2814] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(603), [2817] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(582), [2820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), [2822] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(603), [2825] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(648), [2828] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(641), [2831] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(6988), [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(6949), [2837] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(6950), [2840] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(5091), [2843] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(5297), [2846] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(4955), [2849] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(530), [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(651), [2855] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(5275), [2858] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(652), [2861] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_asm_inline_repeat1, 2, 0, 0), SHIFT_REPEAT(646), [2864] = {.entry = {.count = 1, .reusable = false}}, SHIFT(603), [2866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_inline, 1, 0, 0), [2868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), [2870] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5111), [2872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), [2874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7578), [2876] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6125), [2878] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2527), [2880] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5727), [2882] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4191), [2884] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2452), [2886] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6692), [2888] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5111), [2891] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(606), [2894] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7578), [2897] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6125), [2900] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(3011), [2903] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7554), [2906] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2527), [2909] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2981), [2912] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2158), [2915] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5727), [2918] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7524), [2921] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6241), [2924] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(4191), [2927] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2933), [2930] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2452), [2933] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6234), [2936] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7831), [2939] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6229), [2942] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6607), [2945] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6692), [2948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), [2952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), [2954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), [2956] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3459), [2958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2195), [2960] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__attribute, 1, 0, 0), [2962] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7487), [2964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3204), [2966] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6789), [2968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7488), [2970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7585), [2972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6400), [2974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5567), [2976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1572), [2978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1386), [2980] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__token_string_token, 2, 0, 0), [2982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__token_string_token, 2, 0, 0), [2984] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolated_quoted_string, 3, 0, 0), [2986] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolated_quoted_string, 3, 0, 0), [2988] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__token_string_token, 3, 0, 0), [2990] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__token_string_token, 3, 0, 0), [2992] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_string, 2, 0, 0), [2994] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_string, 2, 0, 0), [2996] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_quoted_string, 3, 0, 0), [2998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_string, 3, 0, 0), [3000] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hex_string, 3, 0, 0), [3002] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hex_string, 3, 0, 0), [3004] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolated_token_string, 3, 0, 0), [3006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolated_token_string, 3, 0, 0), [3008] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_char_literal, 3, 0, 0), [3010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char_literal, 3, 0, 0), [3012] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_raw_string, 3, 0, 0), [3014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raw_string, 3, 0, 0), [3016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolated_raw_string, 3, 0, 0), [3018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolated_raw_string, 3, 0, 0), [3020] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolated_raw_string, 2, 0, 0), [3022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolated_raw_string, 2, 0, 0), [3024] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_token_string, 3, 0, 0), [3026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_token_string, 3, 0, 0), [3028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolated_token_string, 2, 0, 0), [3030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolated_token_string, 2, 0, 0), [3032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolated_quoted_string, 2, 0, 0), [3034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolated_quoted_string, 2, 0, 0), [3036] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 1, 0, 0), [3038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 1, 0, 0), [3040] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_keyword, 1, 0, 0), [3042] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword, 1, 0, 0), [3044] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_char_literal, 1, 0, 0), [3046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char_literal, 1, 0, 0), [3048] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_special_keyword, 1, 0, 0), [3050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_special_keyword, 1, 0, 0), [3052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation_expression, 3, 0, 0), [3054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation_expression, 3, 0, 0), [3056] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_token_string, 2, 0, 0), [3058] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_token_string, 2, 0, 0), [3060] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), [3062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_ctor, 1, 0, 0), [3064] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_pragma_declaration, 3, 0, 0), [3067] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_pragma_declaration, 3, 0, 0), [3070] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), [3072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), [3074] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement_no_case_no_default, 1, 0, 0), [3076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement_no_case_no_default, 1, 0, 0), [3078] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__specified_function_body, 1, 0, 0), [3080] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__specified_function_body, 1, 0, 0), [3082] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__statement_no_case_no_default, 1, 0, 0), REDUCE(sym__specified_function_body, 1, 0, 0), [3085] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__statement_no_case_no_default, 1, 0, 0), REDUCE(sym__specified_function_body, 1, 0, 0), [3088] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), [3091] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), [3094] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), SHIFT(1852), [3098] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 4, 0, 0), [3100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 4, 0, 0), [3102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 3, 0, 0), [3104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 3, 0, 0), [3106] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_static_foreach_declaration, 11, 0, 0), [3109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_static_foreach_declaration, 11, 0, 0), [3112] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_static_foreach_declaration, 10, 0, 0), [3115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_static_foreach_declaration, 10, 0, 0), [3118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_static_foreach_declaration, 9, 0, 0), [3121] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_static_foreach_declaration, 9, 0, 0), [3124] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), SHIFT(1852), [3127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3496), [3129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6111), [3131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6707), [3133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4999), [3135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6251), [3137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5064), [3139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3900), [3141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3698), [3143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3921), [3145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3588), [3147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7647), [3149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3589), [3151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3592), [3153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3793), [3155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7689), [3157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7644), [3159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7465), [3161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5070), [3163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), SHIFT(1822), [3166] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), SHIFT(1822), [3170] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_aggregate_initializer, 2, 0, 0), [3173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3229), [3175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6962), [3177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2974), [3179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7726), [3181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3549), [3183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), [3185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5765), [3187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), [3189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1302), [3191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3856), [3193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7594), [3195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7160), [3197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3116), [3199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1321), [3201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3120), [3203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6056), [3205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1340), [3207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3509), [3209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3966), [3211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4078), [3213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3824), [3215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3965), [3217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4029), [3219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3958), [3221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3843), [3223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3556), [3225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5654), [3227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4024), [3229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3829), [3231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4006), [3233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3952), [3235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5690), [3237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3613), [3239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5984), [3241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4796), [3243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3377), [3245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2422), [3247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3531), [3249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), [3251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), [3253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6371), [3255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1333), [3257] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1333), [3259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), [3261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(706), [3263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3852), [3265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3943), [3267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5230), [3269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3907), [3271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7478), [3273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7751), [3275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7753), [3277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3115), [3279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1329), [3281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6667), [3283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3112), [3285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7755), [3287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7756), [3289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7472), [3291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3597), [3293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6143), [3295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1323), [3297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7760), [3299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7462), [3301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7464), [3303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5320), [3305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7482), [3307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7480), [3309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7475), [3311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5116), [3313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5305), [3315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4966), [3317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), [3319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3516), [3321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5274), [3323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3522), [3325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3907), [3327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3547), [3329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3533), [3331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), [3333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790), [3335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3766), [3337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6713), [3339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6727), [3341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4701), [3343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6870), [3345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3448), [3347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), [3349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), [3351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6755), [3353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3334), [3355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6655), [3357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3253), [3359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448), [3361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), [3363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6676), [3365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6535), [3367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), [3369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), [3371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6721), [3373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6807), [3375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), [3377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(802), [3379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6942), [3381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6893), [3383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3994), [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3248), [3387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_argument_list, 3, 0, 0), [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), [3391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6771), [3395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6738), [3397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), [3399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), [3401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), [3403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(777), [3405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), [3407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(812), [3409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), [3411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(837), [3413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3305), [3415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2411), [3417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3849), [3419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3929), [3421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3978), [3423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3380), [3425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4644), [3427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_argument_list, 2, 0, 0), [3429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3523), [3431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3603), [3433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5041), [3435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3517), [3437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3119), [3439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), [3441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(839), [3443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4634), [3445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3122), [3447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3477), [3449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4618), [3451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4012), [3453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6940), [3455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4009), [3457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), [3459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), [3461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4055), [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5631), [3465] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3620), [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6158), [3469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5214), [3471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3820), [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4657), [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), [3479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), [3481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_arguments, 2, 0, 0), [3483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), [3485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4767), [3487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), [3489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__template_argument_list, 3, 0, 0), [3491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), [3493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), [3495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), [3497] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7683), [3499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), [3501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), [3503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3586), [3505] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7491), [3507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), [3509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__argument_list, 2, 0, 0), [3511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), [3513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), [3515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), [3517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), [3519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), [3521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), [3523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1430), [3525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), [3527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2288), [3529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), [3531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3826), [3533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), [3535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), [3537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), [3539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), [3541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__template_argument_list, 2, 0, 0), [3543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), [3545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), [3547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3599), [3549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), [3551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7813), [3553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), [3555] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_arguments, 4, 0, 0), [3557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__argument_list, 3, 0, 0), [3559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), [3561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_arguments, 5, 0, 0), [3563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3920), [3565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5231), [3567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3926), [3569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), [3571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), [3573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7152), [3575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), [3577] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7148), [3579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), [3581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), [3583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), [3585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), [3587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(435), [3589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8028), [3591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1579), [3593] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3708), [3595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1337), [3597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1337), [3599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7742), [3601] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7214), [3603] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3138), [3605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1335), [3607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3110), [3609] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6131), [3611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1334), [3613] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6784), [3615] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7869), [3617] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3612), [3619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1348), [3621] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1348), [3623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7702), [3625] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7084), [3627] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3109), [3629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1346), [3631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3130), [3633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5938), [3635] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1345), [3637] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4059), [3639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4059), [3641] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3521), [3643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(573), [3645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), [3647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6002), [3649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1322), [3651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1322), [3653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), [3655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), [3657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4089), [3659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5285), [3661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3977), [3663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7652), [3665] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7656), [3667] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6953), [3669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3114), [3671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1308), [3673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6452), [3675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3108), [3677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7595), [3679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7596), [3681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3583), [3683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5785), [3685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1303), [3687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7597), [3689] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5348), [3691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7311), [3693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7312), [3695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7313), [3697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5125), [3699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5246), [3701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4825), [3703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529), [3705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3528), [3707] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5306), [3709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3529), [3711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3977), [3713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3527), [3715] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4064), [3717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4064), [3719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4011), [3721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4011), [3723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4102), [3725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4102), [3727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4031), [3729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4031), [3731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3918), [3733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3918), [3735] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4120), [3737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4120), [3739] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4041), [3741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4041), [3743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3924), [3745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3924), [3747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3916), [3749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3916), [3751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3923), [3753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3923), [3755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4116), [3757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4116), [3759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4068), [3761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4068), [3763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4020), [3765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4020), [3767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4028), [3769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4028), [3771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3997), [3773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3997), [3775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4076), [3777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4076), [3779] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4085), [3781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4085), [3783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4087), [3785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4087), [3787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4095), [3789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4095), [3791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4096), [3793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4096), [3795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4131), [3797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4131), [3799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4063), [3801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4063), [3803] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4071), [3805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4071), [3807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4132), [3809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4132), [3811] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4135), [3813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4135), [3815] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4137), [3817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4137), [3819] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4138), [3821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4138), [3823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4017), [3825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4017), [3827] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4122), [3829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4122), [3831] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4019), [3833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4019), [3835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4136), [3837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4136), [3839] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4134), [3841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4134), [3843] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4133), [3845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4133), [3847] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4130), [3849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4130), [3851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4129), [3853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4129), [3855] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4046), [3857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4046), [3859] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4121), [3861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4121), [3863] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4021), [3865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4021), [3867] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4128), [3869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4128), [3871] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4119), [3873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4119), [3875] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4023), [3877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4023), [3879] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4118), [3881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4118), [3883] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4026), [3885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4026), [3887] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4104), [3889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4104), [3891] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4030), [3893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4030), [3895] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4018), [3897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4018), [3899] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4092), [3901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4092), [3903] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4036), [3905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4036), [3907] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4037), [3909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4037), [3911] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4038), [3913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4038), [3915] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3607), [3917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6104), [3919] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7692), [3921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4082), [3923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4082), [3925] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4040), [3927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4040), [3929] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4113), [3931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4113), [3933] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4044), [3935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4044), [3937] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4047), [3939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4047), [3941] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4123), [3943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4123), [3945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4084), [3947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4084), [3949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4083), [3951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4083), [3953] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4081), [3955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4081), [3957] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4049), [3959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4049), [3961] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4080), [3963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4080), [3965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4079), [3967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4079), [3969] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4074), [3971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4074), [3973] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4039), [3975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4039), [3977] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4073), [3979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4073), [3981] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4072), [3983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4072), [3985] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4069), [3987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4069), [3989] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4107), [3991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4107), [3993] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3905), [3995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3905), [3997] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4114), [3999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4114), [4001] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4115), [4003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4115), [4005] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4043), [4007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4043), [4009] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4061), [4011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4061), [4013] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4057), [4015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4057), [4017] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4090), [4019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4090), [4021] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4124), [4023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4124), [4025] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4125), [4027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4125), [4029] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4056), [4031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4056), [4033] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4126), [4035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4126), [4037] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4127), [4039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4127), [4041] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4004), [4043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4004), [4045] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4100), [4047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4100), [4049] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4106), [4051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4106), [4053] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4097), [4055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4097), [4057] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4094), [4059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4094), [4061] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3899), [4063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3899), [4065] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4099), [4067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4099), [4069] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4108), [4071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4108), [4073] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3898), [4075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3898), [4077] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3996), [4079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3996), [4081] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4117), [4083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4117), [4085] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3897), [4087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3897), [4089] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3895), [4091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3895), [4093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3894), [4095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3894), [4097] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3892), [4099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3892), [4101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4088), [4103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4088), [4105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4105), [4107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4105), [4109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3875), [4111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3875), [4113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4101), [4115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4101), [4117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3891), [4119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3891), [4121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3889), [4123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3889), [4125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4091), [4127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4091), [4129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3887), [4131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3887), [4133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4093), [4135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4093), [4137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3885), [4139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3885), [4141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3883), [4143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3883), [4145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3863), [4147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3863), [4149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 3, 0, 6), [4151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 3, 0, 6), [4153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7992), [4155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(303), [4157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(452), [4159] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 2, 0, 6), [4161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 2, 0, 6), [4163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7864), [4165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(162), [4167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(481), [4169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), [4171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), [4173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7992), [4176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3908), [4178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3908), [4180] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3896), [4182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3896), [4184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3629), [4186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3629), [4188] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3945), [4190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3945), [4192] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3667), [4194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3667), [4196] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3666), [4198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3666), [4200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3912), [4202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3912), [4204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3954), [4206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3954), [4208] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3933), [4210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3933), [4212] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3934), [4214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3934), [4216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7864), [4219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3680), [4221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3680), [4223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3868), [4225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3868), [4227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3651), [4229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3651), [4231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4110), [4233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4003), [4235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3621), [4237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3621), [4239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3702), [4241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3702), [4243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3955), [4245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3955), [4247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3871), [4249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3871), [4251] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3935), [4253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3935), [4255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3632), [4257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3632), [4259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3876), [4261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3876), [4263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3893), [4265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3893), [4267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3901), [4269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3901), [4271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4112), [4273] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4111), [4275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3989), [4277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3989), [4279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3949), [4281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3949), [4283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4098), [4285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asm_statement, 3, 0, 0), [4287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_statement, 3, 0, 0), [4289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_declaration, 4, 0, 0), [4291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_declaration, 4, 0, 0), [4293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 5, 0, 0), [4295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, 0, 0), [4297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 1, 0, 0), [4299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 1, 0, 0), [4301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 4, 0, 0), [4303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 4, 0, 0), [4305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mixin_template_declaration, 3, 0, 0), [4307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mixin_template_declaration, 3, 0, 0), [4309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unittest_declaration, 3, 0, 0), [4311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unittest_declaration, 3, 0, 0), [4313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_declaration, 5, 0, 0), [4315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_declaration, 5, 0, 0), [4317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor, 6, 0, 0), [4319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor, 6, 0, 0), [4321] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym_pragma_declaration, 3, 0, 0), [4324] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym_pragma_declaration, 3, 0, 0), [4327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_declaration, 5, 0, 0), [4329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_declaration, 5, 0, 0), [4331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 6, 0, 0), [4333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 6, 0, 0), [4335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mixin_declaration, 3, 0, 0), [4337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mixin_declaration, 3, 0, 0), [4339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 5, 0, 0), [4341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 5, 0, 0), [4343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 6, 0, 0), [4345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 6, 0, 0), [4347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_declaration, 2, 0, 0), [4349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_declaration, 2, 0, 0), [4351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_statement, 5, 0, 25), [4353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_statement, 5, 0, 25), [4355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_auto_declaration, 3, 0, 1), [4357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_auto_declaration, 3, 0, 1), [4359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_statement, 2, 0, 7), [4361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_statement, 2, 0, 7), [4363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(188), [4365] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), [4368] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), [4371] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), SHIFT(2003), [4374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_labeled_statement, 2, 0, 6), [4376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_labeled_statement, 2, 0, 6), [4378] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2, 0, 0), [4380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2, 0, 0), [4382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_statement, 2, 0, 0), [4384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_statement, 2, 0, 0), [4386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__enum_body, 4, 0, 0), [4388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__enum_body, 4, 0, 0), [4390] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym_pragma_declaration, 2, 0, 0), REDUCE(sym_pragma_statement, 2, 0, 0), [4394] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym_pragma_declaration, 2, 0, 0), REDUCE(sym_pragma_statement, 2, 0, 0), [4398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_enum_declaration, 6, 0, 0), [4400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_declaration, 6, 0, 0), [4402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_out_statement, 5, 0, 0), [4404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_out_statement, 5, 0, 0), [4406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_manifest_constant, 6, 0, 0), [4408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_constant, 6, 0, 0), [4410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_synchronized_statement, 2, 0, 0), [4412] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_synchronized_statement, 2, 0, 0), [4414] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 5, 0, 0), [4416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 5, 0, 0), [4418] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_declaration, 5, 0, 0), [4420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_declaration, 5, 0, 0), [4422] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_foreach_statement, 2, 0, 0), [4424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_foreach_statement, 2, 0, 0), [4426] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 2, 0, 0), [4428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0), [4430] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_final_switch_statement, 2, 0, 0), [4432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_final_switch_statement, 2, 0, 0), [4434] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 6, 0, 0), [4436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 6, 0, 0), [4438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scope_statement, 1, 0, 0), [4440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scope_statement, 1, 0, 0), [4442] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_statement, 2, 0, 0), [4444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 2, 0, 0), [4446] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 2, 0, 0), [4448] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 2, 0, 0), [4450] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2003), [4452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_statement, 2, 0, 0), [4454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 2, 0, 0), [4456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 5, 0, 0), [4458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 5, 0, 0), [4460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 6, 0, 0), [4462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 6, 0, 0), [4464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_manifest_constant, 5, 0, 0), [4466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_constant, 5, 0, 0), [4468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_declaration, 6, 0, 0), [4470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_declaration, 6, 0, 0), [4472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_enum_declaration, 5, 0, 0), [4474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_declaration, 5, 0, 0), [4476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 6, 0, 0), [4478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 6, 0, 0), [4480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_body, 3, 0, 0), [4482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_body, 3, 0, 0), [4484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 6, 0, 0), [4486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 6, 0, 0), [4488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_declaration, 6, 0, 0), [4490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_declaration, 6, 0, 0), [4492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 6, 0, 0), [4494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 6, 0, 0), [4496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 5, 0, 0), [4498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 5, 0, 0), [4500] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__enum_body, 3, 0, 0), [4502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__enum_body, 3, 0, 0), [4504] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_declaration, 6, 0, 0), [4506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_declaration, 6, 0, 0), [4508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mixin_declaration, 2, 0, 0), [4510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mixin_declaration, 2, 0, 0), [4512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 5, 0, 0), [4514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 5, 0, 0), [4516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_declaration, 2, 0, 0), [4518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_declaration, 2, 0, 0), [4520] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 5, 0, 0), [4522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 5, 0, 0), [4524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 6, 0, 0), [4526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 6, 0, 0), [4528] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym_pragma_declaration, 2, 0, 0), [4531] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym_pragma_declaration, 2, 0, 0), [4534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor, 5, 0, 0), [4536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor, 5, 0, 0), [4538] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 3, 0, 0), [4540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 3, 0, 0), [4542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unittest_declaration, 2, 0, 0), [4544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unittest_declaration, 2, 0, 0), [4546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postblit, 5, 0, 0), [4548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postblit, 5, 0, 0), [4550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_declaration, 2, 0, 0), [4552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_declaration, 2, 0, 0), [4554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 2, 0, 0), [4556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 2, 0, 0), [4558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mixin_template_declaration, 2, 0, 0), [4560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mixin_template_declaration, 2, 0, 0), [4562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_destructor, 5, 0, 0), [4564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_destructor, 5, 0, 0), [4566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_declaration, 2, 0, 0), [4568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_declaration, 2, 0, 0), [4570] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor, 3, 0, 0), [4572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor, 3, 0, 0), [4574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_reassign, 5, -1, 0), [4576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_reassign, 5, -1, 0), [4578] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 3, 0, 0), [4580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 3, 0, 0), [4582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_break_statement, 3, 0, 0), [4584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 3, 0, 0), [4586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_destructor, 6, 0, 0), [4588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_destructor, 6, 0, 0), [4590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_reassign, 6, -1, 0), [4592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_reassign, 6, -1, 0), [4594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_continue_statement, 3, 0, 0), [4596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 3, 0, 0), [4598] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aggregate_body, 2, 0, 0), [4600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_body, 2, 0, 0), [4602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_goto_statement, 3, 0, 0), [4604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goto_statement, 3, 0, 0), [4606] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_auto_declaration, 5, 0, 15), [4608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_auto_declaration, 5, 0, 15), [4610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_reassign, 4, -1, 0), [4612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_reassign, 4, -1, 0), [4614] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1880), [4616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_body, 2, 0, 0), [4618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 2, 0, 0), [4620] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor, 4, 0, 0), [4622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor, 4, 0, 0), [4624] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_this, 4, 0, 0), [4626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_this, 4, 0, 0), [4628] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 4, 0, 0), [4630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 4, 0, 0), [4632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 4, 0, 0), [4634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 4, 0, 0), [4636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_debug_specification, 4, 0, 0), [4638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_debug_specification, 4, 0, 0), [4640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 3, 0, 13), [4642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 3, 0, 13), [4644] = {.entry = {.count = 1, .reusable = false}}, SHIFT(200), [4646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0), [4648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0), [4650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_reassign, 7, -1, 0), [4652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_reassign, 7, -1, 0), [4654] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_enum_declaration, 4, 0, 0), [4656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_declaration, 4, 0, 0), [4658] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_manifest_constant, 4, 0, 0), [4660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_constant, 4, 0, 0), [4662] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 7, 0, 0), [4664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 7, 0, 0), [4666] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 3, 0, 14), [4668] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 3, 0, 14), [4670] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 7, 0, 0), [4672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 7, 0, 0), [4674] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__enum_body, 5, 0, 0), [4676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__enum_body, 5, 0, 0), [4678] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), SHIFT(2003), [4682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_enum_declaration, 7, 0, 0), [4684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_declaration, 7, 0, 0), [4686] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 7, 0, 0), [4688] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 7, 0, 0), [4690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 4, 0, 0), [4692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 4, 0, 0), [4694] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_declaration, 5, 0, 0), [4696] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_declaration, 5, 0, 0), [4698] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_static_foreach_declaration, 10, 0, 0), [4701] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_static_foreach_declaration, 10, 0, 0), [4704] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 7, 0, 0), [4706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 7, 0, 0), [4708] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postblit, 6, 0, 0), [4710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postblit, 6, 0, 0), [4712] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_destructor, 7, 0, 0), [4714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_destructor, 7, 0, 0), [4716] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 4, 0, 0), [4718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 4, 0, 0), [4720] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor, 7, 0, 0), [4722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor, 7, 0, 0), [4724] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 4, 0, 0), [4726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 4, 0, 0), [4728] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreach_statement, 9, 0, 41), [4730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach_statement, 9, 0, 41), [4732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_declaration, 7, 0, 0), [4734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_declaration, 7, 0, 0), [4736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 7, 0, 0), [4738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, 0, 0), [4740] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_static_foreach_declaration, 9, 0, 0), [4743] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_static_foreach_declaration, 9, 0, 0), [4746] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_declaration, 4, 0, 0), [4748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_declaration, 4, 0, 0), [4750] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_version_specification, 4, 0, 0), [4752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_version_specification, 4, 0, 0), [4754] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 5, 0, 0), [4756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 5, 0, 0), [4758] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 4, 0, 0), [4760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 4, 0, 0), [4762] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreach_statement, 8, 0, 40), [4764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach_statement, 8, 0, 40), [4766] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 3, 0, 0), [4768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 3, 0, 0), [4770] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 3, 0, 0), [4772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 3, 0, 0), [4774] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postblit, 7, 0, 0), [4776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postblit, 7, 0, 0), [4778] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 3, 0, 0), [4780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 3, 0, 0), [4782] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_static_foreach_declaration, 8, 0, 0), [4785] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_static_foreach_declaration, 8, 0, 0), [4788] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_manifest_constant, 7, 0, 0), [4790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_constant, 7, 0, 0), [4792] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym__statement_no_case_no_default, 1, 0, 0), [4795] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration2, 1, 0, 0), REDUCE(sym__statement_no_case_no_default, 1, 0, 0), [4798] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_manifest_constant, 3, 0, 0), [4800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_constant, 3, 0, 0), [4802] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 39), [4804] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 39), [4806] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 38), [4808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 38), [4810] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_foreach_statement, 7, 0, 37), [4812] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach_statement, 7, 0, 37), [4814] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_declaration, 4, 0, 0), [4816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_declaration, 4, 0, 0), [4818] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_declaration, 4, 0, 0), [4820] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_declaration, 4, 0, 0), [4822] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration, 4, 0, 0), [4824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration, 4, 0, 0), [4826] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1892), [4828] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 36), [4830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 36), [4832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 8, 0, 0), [4834] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 8, 0, 0), [4836] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 8, 0, 0), [4838] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 8, 0, 0), [4840] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 35), [4842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 35), [4844] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_enum_declaration, 8, 0, 0), [4846] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_declaration, 8, 0, 0), [4848] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_this, 5, 0, 0), [4850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_this, 5, 0, 0), [4852] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_declaration, 3, 0, 0), [4854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_declaration, 3, 0, 0), [4856] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_invariant_declaration, 3, 0, 0), [4858] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_invariant_declaration, 3, 0, 0), [4860] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 3, 0, 0), [4862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 3, 0, 0), [4864] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 8, 0, 0), [4866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 8, 0, 0), [4868] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_destructor, 8, 0, 0), [4870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_destructor, 8, 0, 0), [4872] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_foreach_declaration, 8, 0, 0), [4874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_foreach_declaration, 8, 0, 0), [4876] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration, 3, 0, 0), [4878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration, 3, 0, 0), [4880] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 34), [4882] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 34), [4884] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 33), [4886] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 33), [4888] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_reassign, 8, -1, 0), [4890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_reassign, 8, -1, 0), [4892] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_declaration, 4, 0, 0), [4894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_declaration, 4, 0, 0), [4896] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interface_declaration, 8, 0, 0), [4898] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interface_declaration, 8, 0, 0), [4900] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_constructor, 8, 0, 0), [4902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constructor, 8, 0, 0), [4904] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_declaration, 8, 0, 0), [4906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_declaration, 8, 0, 0), [4908] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 32), [4910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 32), [4912] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 8, 0, 0), [4914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 8, 0, 0), [4916] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1852), [4918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_manifest_constant, 8, 0, 0), [4920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_constant, 8, 0, 0), [4922] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 31), [4924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 31), [4926] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__function_contract, 1, 0, 0), REDUCE(sym_function_body, 2, 0, 0), [4929] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__function_contract, 1, 0, 0), REDUCE(sym_function_body, 2, 0, 0), [4932] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_declaration, 3, 0, 0), [4934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_declaration, 3, 0, 0), [4936] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 3, 0, 0), [4938] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 3, 0, 0), [4940] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 30), [4942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 30), [4944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_out_statement, 2, 0, 0), [4946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_out_statement, 2, 0, 0), [4948] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 29), [4950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 29), [4952] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_in_statement, 2, 0, 0), [4954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_in_statement, 2, 0, 0), [4956] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 6, 0, 28), [4958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 6, 0, 28), [4960] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 4, 0, 0), [4962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 4, 0, 0), [4964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(302), [4966] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asm_statement, 4, 0, 0), [4968] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_statement, 4, 0, 0), [4970] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_foreach_declaration, 9, 0, 0), [4972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_foreach_declaration, 9, 0, 0), [4974] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_goto_statement, 4, 0, 0), [4976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goto_statement, 4, 0, 0), [4978] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alias_declaration, 9, 0, 0), [4980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_declaration, 9, 0, 0), [4982] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_declaration, 9, 0, 0), [4984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_declaration, 9, 0, 0), [4986] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_enum_declaration, 9, 0, 0), [4988] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_declaration, 9, 0, 0), [4990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_mixin, 9, 0, 0), [4992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_mixin, 9, 0, 0), [4994] = {.entry = {.count = 1, .reusable = false}}, SHIFT(300), [4996] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_statement, 2, 0, 6), [4998] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_statement, 2, 0, 6), [5000] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 6), [5002] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 6), [5004] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_auto_declaration, 4, 0, 10), [5006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_auto_declaration, 4, 0, 10), [5008] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_statement, 4, 0, 21), [5010] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_statement, 4, 0, 21), [5012] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 0), [5014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 0), [5016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_destructor, 9, 0, 0), [5018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_destructor, 9, 0, 0), [5020] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional_declaration, 9, 0, 0), [5022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_declaration, 9, 0, 0), [5024] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_synchronized_statement, 5, 0, 0), [5026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_synchronized_statement, 5, 0, 0), [5028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_auto_declaration, 4, 0, 8), [5030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_auto_declaration, 4, 0, 8), [5032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_foreach_declaration, 10, 0, 0), [5034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_foreach_declaration, 10, 0, 0), [5036] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_switch_statement, 5, 0, 25), [5038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_switch_statement, 5, 0, 25), [5040] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_union_declaration, 3, 0, 0), [5042] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_declaration, 3, 0, 0), [5044] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_declaration, 3, 0, 0), [5046] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_declaration, 3, 0, 0), [5048] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_foreach_declaration, 11, 0, 0), [5050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_foreach_declaration, 11, 0, 0), [5052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_catch_statement, 6, 0, 29), [5054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_catch_statement, 6, 0, 29), [5056] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_assert, 3, 0, 0), [5058] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_assert, 3, 0, 0), [5060] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scope_guard_statement, 5, 0, 25), [5062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scope_guard_statement, 5, 0, 25), [5064] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 27), [5066] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 27), [5068] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_foreach_declaration, 12, 0, 0), [5070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_foreach_declaration, 12, 0, 0), [5072] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 26), [5074] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 26), [5076] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 25), [5078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 25), [5080] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_asm_statement, 5, 0, 0), [5082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_asm_statement, 5, 0, 0), [5084] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_function_body, 1, 0, 0), REDUCE(sym__function_contract, 1, 0, 0), [5087] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_function_body, 1, 0, 0), REDUCE(sym__function_contract, 1, 0, 0), [5090] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), SHIFT(1962), [5094] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1962), [5096] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), [5098] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1922), [5100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477), [5102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), SHIFT(1962), [5105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132), [5107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(451), [5109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1822), [5111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2001), [5113] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_debug_condition, 1, 0, 0), [5115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_debug_condition, 1, 0, 0), [5117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6456), [5119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6593), [5121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6453), [5123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6700), [5125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6854), [5127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6908), [5129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(aux_sym_source_file_repeat1, 1, 0, 0), [5132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), [5134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(aux_sym_source_file_repeat1, 1, 0, 0), [5137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), [5139] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_version_condition, 4, 0, 0), [5141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_version_condition, 4, 0, 0), [5143] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_if_condition, 5, 0, 0), [5145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_if_condition, 5, 0, 0), [5147] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_expression, 4, 0, 0), [5149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_expression, 4, 0, 0), [5151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_condition, 1, 0, 0), [5153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_condition, 1, 0, 0), [5155] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pragma_expression, 6, 0, 0), [5157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_expression, 6, 0, 0), [5159] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_debug_condition, 4, 0, 0), [5161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_debug_condition, 4, 0, 0), [5163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_condition, 6, 0, 0), [5165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_condition, 6, 0, 0), [5167] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_condition, 3, 0, 0), [5169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_condition, 3, 0, 0), [5171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), [5173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7218), [5175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1813), [5177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5130), [5179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1781), [5181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7687), [5183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6073), [5185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2694), [5187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2160), [5189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5633), [5191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6133), [5193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4169), [5195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2954), [5197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2456), [5199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6420), [5201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6733), [5203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1788), [5205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5130), [5208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1781), [5211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7687), [5214] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6073), [5217] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(3015), [5220] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7044), [5223] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2694), [5226] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2978), [5229] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2160), [5232] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5633), [5235] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7047), [5238] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6133), [5241] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(4169), [5244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2954), [5247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2456), [5250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6153), [5253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7912), [5256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6152), [5259] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6420), [5262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6733), [5265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1785), [5267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1779), [5269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1778), [5271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5112), [5273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1799), [5275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7457), [5277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6344), [5279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2999), [5281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7207), [5283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2697), [5285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2985), [5287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2155), [5289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5582), [5291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7206), [5293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5909), [5295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4187), [5297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2945), [5299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2459), [5301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5915), [5303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7874), [5305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5916), [5307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6830), [5309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6495), [5311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1809), [5313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1800), [5315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1807), [5317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1789), [5319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1806), [5321] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5112), [5324] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1799), [5327] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7457), [5330] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6344), [5333] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2999), [5336] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7207), [5339] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2697), [5342] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2985), [5345] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2155), [5348] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5582), [5351] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7206), [5354] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5909), [5357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(4187), [5360] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2945), [5363] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2459), [5366] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5915), [5369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7874), [5372] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5916), [5375] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6830), [5378] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6495), [5381] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5137), [5384] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(1800), [5387] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7819), [5390] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6060), [5393] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(3000), [5396] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7778), [5399] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2718), [5402] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2977), [5405] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2153), [5408] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(5712), [5411] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7519), [5414] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6292), [5417] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(4200), [5420] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2925), [5423] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(2463), [5426] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6382), [5429] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(7269), [5432] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6280), [5435] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6546), [5438] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(6566), [5441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1805), [5443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1808), [5445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1798), [5447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1796), [5449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_def, 1, 0, 0), [5451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_def, 1, 0, 0), [5453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1814), [5455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2, 0, 0), [5457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7710), [5459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_def, 2, 0, 0), [5461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_def, 2, 0, 0), [5463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2186), [5465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2014), [5467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1705), [5469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1829), [5471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2829), [5473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1888), [5475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1642), [5477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2076), [5479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2625), [5481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1549), [5483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1882), [5485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2729), [5487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2033), [5489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1740), [5491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605), [5493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4027), [5495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1921), [5497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2846), [5499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1955), [5501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2058), [5503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2818), [5505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1804), [5507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1696), [5509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2059), [5511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1577), [5513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1564), [5515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5119), [5517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2037), [5519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2244), [5521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), [5523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7767), [5525] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6299), [5527] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2707), [5529] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5719), [5531] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4172), [5533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2465), [5535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6757), [5537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2063), [5539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2779), [5541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1793), [5543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1709), [5545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1931), [5547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1736), [5549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3939), [5551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1937), [5553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2377), [5555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1581), [5557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2897), [5559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2041), [5561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1714), [5563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1983), [5565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2645), [5567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1787), [5569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7729), [5571] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6259), [5573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2450), [5575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1429), [5577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1945), [5579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2043), [5581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1980), [5583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2739), [5585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1794), [5587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7828), [5589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5835), [5591] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2467), [5593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2627), [5595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2015), [5597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6447), [5599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2130), [5601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1744), [5603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1993), [5605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571), [5607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1735), [5609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2770), [5611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1974), [5613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545), [5615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1827), [5617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2309), [5619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1953), [5621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2853), [5623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1948), [5625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2062), [5627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1497), [5629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), [5631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1574), [5633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1862), [5635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2726), [5637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1923), [5639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2070), [5641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1930), [5643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2370), [5645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1502), [5647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1879), [5649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1515), [5651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1873), [5653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1519), [5655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1872), [5657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2176), [5659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2007), [5661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2477), [5663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1821), [5665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3932), [5667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1834), [5669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2888), [5671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1900), [5673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2610), [5675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2788), [5677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1816), [5679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1567), [5681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1559), [5683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2079), [5685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2480), [5687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1573), [5689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1929), [5691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2495), [5693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1803), [5695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1508), [5697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1487), [5699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2304), [5701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2500), [5703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1926), [5705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1991), [5707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1860), [5709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1412), [5711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485), [5713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1958), [5715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1465), [5717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601), [5719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1889), [5721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2278), [5723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2448), [5725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1554), [5727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2024), [5729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2044), [5731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2066), [5733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1968), [5735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2319), [5737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2753), [5739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2295), [5741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1887), [5743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3774), [5745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2022), [5747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1859), [5749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1391), [5751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1913), [5753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1399), [5755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584), [5757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2018), [5759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2371), [5761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2121), [5763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2064), [5765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2571), [5767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2054), [5769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5730), [5771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2102), [5773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2569), [5775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2036), [5777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2736), [5779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2012), [5781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2568), [5783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2049), [5785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2349), [5787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2885), [5789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2782), [5791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1914), [5793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2028), [5795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1998), [5797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1566), [5799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2023), [5801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2589), [5803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1783), [5805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1883), [5807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), [5809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2069), [5811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1966), [5813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2528), [5815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1542), [5817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1529), [5819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1876), [5821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1995), [5823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5620), [5825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2692), [5827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1924), [5829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4060), [5831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1877), [5833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1673), [5835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2071), [5837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2075), [5839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2339), [5841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2552), [5843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1884), [5845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2113), [5847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2048), [5849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2329), [5851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2061), [5853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2346), [5855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2038), [5857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1608), [5859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1944), [5861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2367), [5863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1903), [5865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2010), [5867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2676), [5869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1985), [5871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), [5873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1987), [5875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2673), [5877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2227), [5879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2060), [5881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2887), [5883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1837), [5885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1936), [5887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6502), [5889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1400), [5891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1901), [5893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2606), [5895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1815), [5897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2230), [5899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), [5901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2857), [5903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2756), [5905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2095), [5907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2496), [5909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1782), [5911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2672), [5913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2320), [5915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2092), [5917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2511), [5919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1780), [5921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2093), [5923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1501), [5925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1915), [5927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1616), [5929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1836), [5931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1512), [5933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2086), [5935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1841), [5937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1595), [5939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1810), [5941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2053), [5943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2563), [5945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1870), [5947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585), [5949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1606), [5951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2202), [5953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1795), [5955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1939), [5957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1853), [5959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1463), [5961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1960), [5963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2671), [5965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2379), [5967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2491), [5969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2051), [5971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2340), [5973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2743), [5975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1918), [5977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2690), [5979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1910), [5981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2094), [5983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1706), [5985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2663), [5987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1952), [5989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2654), [5991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1975), [5993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2373), [5995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2841), [5997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2659), [5999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2828), [6001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1864), [6003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1679), [6005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1761), [6007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1828), [6009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2040), [6011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1818), [6013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1895), [6015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2844), [6017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1846), [6019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1364), [6021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1954), [6023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1959), [6025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), [6027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2835), [6029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1904), [6031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2004), [6033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1486), [6035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2085), [6037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1906), [6039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1801), [6041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2642), [6043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1989), [6045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2242), [6047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2031), [6049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2035), [6051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2815), [6053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1949), [6055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2735), [6057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2073), [6059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2497), [6061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2021), [6063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2822), [6065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1986), [6067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1976), [6069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2323), [6071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2096), [6073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2034), [6075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2109), [6077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2696), [6079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3773), [6081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1992), [6083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1454), [6085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2827), [6087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2342), [6089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2276), [6091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5596), [6093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1868), [6095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1905), [6097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2513), [6099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1941), [6101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2241), [6103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5703), [6105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1833), [6107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2011), [6109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2863), [6111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2106), [6113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1433), [6115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2592), [6117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1843), [6119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2632), [6121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2082), [6123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1969), [6125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2510), [6127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2849), [6129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1866), [6131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2341), [6133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2026), [6135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1874), [6137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2078), [6139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2032), [6141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2639), [6143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2785), [6145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2025), [6147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1896), [6149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1578), [6151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2228), [6153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2605), [6155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1984), [6157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2787), [6159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2030), [6161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1912), [6163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2854), [6165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1817), [6167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2896), [6169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2754), [6171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2834), [6173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6544), [6175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2055), [6177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2724), [6179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1894), [6181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2710), [6183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1977), [6185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2509), [6187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2008), [6189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1990), [6191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2894), [6193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1790), [6195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2634), [6197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1932), [6199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6424), [6201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2665), [6203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2056), [6205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2734), [6207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2017), [6209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2489), [6211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1898), [6213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2087), [6215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2089), [6217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1847), [6219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2027), [6221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2324), [6223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2046), [6225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2522), [6227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1802), [6229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1851), [6231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1824), [6233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1784), [6235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1994), [6237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1710), [6239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1856), [6241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1848), [6243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2778), [6245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1791), [6247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), [6249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2047), [6251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1792), [6253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1849), [6255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594), [6257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1820), [6259] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), SHIFT(1935), [6263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1850), [6265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2292), [6267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), [6269] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), SHIFT(1935), [6272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1972), [6274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1961), [6276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2019), [6278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), [6280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1797), [6282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1982), [6284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2653), [6286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1786), [6288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1971), [6290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1943), [6292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1965), [6294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1916), [6296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1500), [6298] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), SHIFT(2067), [6301] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), SHIFT(2067), [6305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7922), [6307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186), [6309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(149), [6311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5128), [6313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1858), [6315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1369), [6317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7651), [6319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6351), [6321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2991), [6323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6984), [6325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2859), [6327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2979), [6329] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2423), [6331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5717), [6333] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6964), [6335] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6352), [6337] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4224), [6339] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2966), [6341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2953), [6343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6358), [6345] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7898), [6347] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6366), [6349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6457), [6351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7682), [6353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7906), [6355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), [6357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7922), [6360] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5109), [6362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2077), [6364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2573), [6366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7609), [6368] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6235), [6370] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3013), [6372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7666), [6374] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2984), [6376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5615), [6378] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7679), [6380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6223), [6382] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4229), [6384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2956), [6386] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2950), [6388] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6219), [6390] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7681), [6392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6217), [6394] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6610), [6396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7835), [6398] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6389), [6400] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2941), [6402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2919), [6404] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5115), [6406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2002), [6408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2775), [6410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7589), [6412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5955), [6414] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3010), [6416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7182), [6418] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2983), [6420] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5716), [6422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7176), [6424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5956), [6426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4171), [6428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2912), [6430] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2965), [6432] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5964), [6434] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7877), [6436] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5968), [6438] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6803), [6440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(228), [6442] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5124), [6444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1902), [6446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2603), [6448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7698), [6450] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6123), [6452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2993), [6454] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7071), [6456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2976), [6458] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5692), [6460] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7074), [6462] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6122), [6464] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4184), [6466] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2929), [6468] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2951), [6470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6121), [6472] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7915), [6474] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6120), [6476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6685), [6478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5127), [6480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1832), [6482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1649), [6484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7476), [6486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6182), [6488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3004), [6490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7511), [6492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2982), [6494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5603), [6496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7505), [6498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6179), [6500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4174), [6502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2922), [6504] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2915), [6506] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6176), [6508] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7839), [6510] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5732), [6512] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6645), [6514] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5113), [6516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1940), [6518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2364), [6520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7738), [6522] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5784), [6524] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2994), [6526] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7202), [6528] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2987), [6530] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5656), [6532] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7205), [6534] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5781), [6536] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4175), [6538] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2949), [6540] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2959), [6542] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5780), [6544] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7931), [6546] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5779), [6548] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6928), [6550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7770), [6552] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5991), [6554] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5992), [6556] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2914), [6558] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2963), [6560] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6786), [6562] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7906), [6565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(227), [6567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), [6569] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), SHIFT(1967), [6573] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), SHIFT(1967), [6576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1967), [6578] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1935), [6580] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1897), [6582] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1881), [6584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), [6586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(146), [6588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2067), [6590] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), SHIFT(1947), [6594] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1830), [6596] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185), [6598] = {.entry = {.count = 1, .reusable = false}}, SHIFT(341), [6600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(183), [6602] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1947), [6604] = {.entry = {.count = 1, .reusable = false}}, SHIFT(343), [6606] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2045), [6608] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), SHIFT(1947), [6611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5088), [6613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), [6615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3200), [6617] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3234), [6619] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3222), [6621] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3236), [6623] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3128), [6625] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6664), [6627] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3426), [6629] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3127), [6631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7400), [6633] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3365), [6635] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3238), [6637] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3213), [6639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_arguments, 2, 0, 0), [6641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arguments, 2, 0, 0), [6643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_arguments, 4, 0, 0), [6645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arguments, 4, 0, 0), [6647] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_at_attribute, 2, 0, 0), [6649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_at_attribute, 2, 0, 0), [6651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), [6653] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_arguments, 3, 0, 0), [6655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_arguments, 3, 0, 0), [6657] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_instance, 2, 0, 0), [6659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_instance, 2, 0, 0), [6661] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 3, 0, 0), [6663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3, 0, 0), [6665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_at_attribute, 4, 0, 0), [6667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_at_attribute, 4, 0, 0), [6669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_at_attribute, 3, 0, 0), [6671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_at_attribute, 3, 0, 0), [6673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3089), [6675] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 2, 0, 0), [6677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2, 0, 0), [6679] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), [6681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), [6683] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(6048), [6686] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2423), [6689] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2944), [6692] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2939), [6695] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2905), [6698] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2918), [6701] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2935), [6704] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(7523), [6707] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), [6710] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), [6713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7477), [6715] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7613), [6717] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7988), [6719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7479), [6721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_contract, 1, 0, 0), [6723] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_contract, 1, 0, 0), [6725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7520), [6727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7481), [6729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7197), [6731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8044), [6733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8054), [6735] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8052), [6737] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6979), [6739] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8036), [6741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8005), [6743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8050), [6745] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8040), [6747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8046), [6749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7064), [6751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8048), [6753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8042), [6755] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8026), [6757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7616), [6759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8020), [6761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8000), [6763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7308), [6765] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8016), [6767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7188), [6769] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7980), [6771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8010), [6773] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7612), [6775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7629), [6777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8023), [6779] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8033), [6781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5905), [6783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6562), [6785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6594), [6787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1956), [6789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6701), [6791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1920), [6793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1934), [6795] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1951), [6797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1831), [6799] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2005), [6801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1871), [6803] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym_deprecated_attribute, 1, 0, 0), [6806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deprecated_attribute, 1, 0, 0), [6808] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym_deprecated_attribute, 1, 0, 0), [6811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), [6813] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deprecated_attribute, 1, 0, 0), [6815] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2081), [6817] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1997), [6819] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2090), [6821] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1970), [6823] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1825), [6825] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6524), [6828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6118), [6830] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6683), [6833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7502), [6835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7422), [6837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6375), [6839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5545), [6841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7845), [6843] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7503), [6845] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), REDUCE(aux_sym_module_declaration_repeat1, 1, 0, 0), [6849] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), REDUCE(aux_sym_module_declaration_repeat1, 1, 0, 0), [6853] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_module_declaration_repeat1, 1, 0, 0), [6855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 6, 0, 0), [6857] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_declaration, 6, 0, 0), [6859] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6425), [6862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6062), [6864] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6517), [6867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6188), [6869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6047), [6871] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6628), [6874] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6625), [6877] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), REDUCE(aux_sym_type_repeat1, 1, 0, 0), [6881] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), REDUCE(aux_sym_type_repeat1, 1, 0, 0), [6885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3723), [6887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6090), [6889] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6408), [6892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 5, 0, 0), [6894] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_declaration, 5, 0, 0), [6896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6505), [6898] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6763), [6901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6239), [6903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6402), [6905] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6774), [6908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 4, 0, 0), [6910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_declaration, 4, 0, 0), [6912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6000), [6914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attribute, 1, 0, 0), [6916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attribute, 1, 0, 0), [6918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1052), [6920] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6497), [6923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6293), [6925] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6577), [6928] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6657), [6931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7743), [6933] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7741), [6935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7705), [6937] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7100), [6939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deprecated_attribute, 4, 0, 0), [6941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deprecated_attribute, 4, 0, 0), [6943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7661), [6945] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6957), [6947] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6403), [6950] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6563), [6953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6149), [6955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6319), [6957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7745), [6959] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7230), [6961] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6649), [6964] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_declaration, 3, 0, 0), [6966] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_module_declaration, 3, 0, 0), [6968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7772), [6970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7318), [6972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3652), [6974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7607), [6976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7135), [6978] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(6595), [6981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_linkage_attribute, 7, 0, 24), [6983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_linkage_attribute, 7, 0, 24), [6985] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_linkage_attribute, 7, 0, 0), [6987] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_linkage_attribute, 7, 0, 0), [6989] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_linkage_attribute, 5, 0, 0), [6991] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_linkage_attribute, 5, 0, 0), [6993] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__attribute, 4, 0, 0), [6995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__attribute, 4, 0, 0), [6997] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_linkage_attribute, 4, 0, 0), [6999] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_linkage_attribute, 4, 0, 0), [7001] = {.entry = {.count = 3, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(sym__attribute, 1, 0, 0), SHIFT(6023), [7005] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_linkage_attribute, 6, 0, 0), [7007] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_linkage_attribute, 6, 0, 0), [7009] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_align_attribute, 4, 0, 0), [7011] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_align_attribute, 4, 0, 0), [7013] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4845), [7015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3361), [7017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3745), [7019] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4940), [7021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3360), [7023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3692), [7025] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4896), [7027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3307), [7029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3765), [7031] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4822), [7033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3344), [7035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3639), [7037] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4876), [7039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3319), [7041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3741), [7043] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4945), [7045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3345), [7047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3641), [7049] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4979), [7051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3336), [7053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3644), [7055] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4978), [7057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3322), [7059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3688), [7061] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4853), [7063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3314), [7065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3630), [7067] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4915), [7069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3354), [7071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3685), [7073] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4953), [7075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3325), [7077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3718), [7079] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4920), [7081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3348), [7083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3727), [7085] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5033), [7087] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3055), [7089] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5024), [7091] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3018), [7093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5030), [7095] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3028), [7097] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5063), [7099] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7662), [7101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5036), [7103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3060), [7105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5050), [7107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7706), [7109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5066), [7111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7746), [7113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5026), [7115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3041), [7117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5021), [7119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3030), [7121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5009), [7123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3024), [7125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5062), [7127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7646), [7129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5043), [7131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7584), [7133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5061), [7135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7274), [7137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5012), [7139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3062), [7141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5037), [7143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3044), [7145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5040), [7147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5049), [7149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7508), [7151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5031), [7153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3054), [7155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5032), [7157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3017), [7159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5018), [7161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5023), [7163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3053), [7165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5068), [7167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7734), [7169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5055), [7171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7608), [7173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5044), [7175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7471), [7177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5029), [7179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5045), [7181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7370), [7183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5019), [7185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5058), [7187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7693), [7189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5039), [7191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6151), [7193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4692), [7195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5051), [7197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6679), [7199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3716), [7201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7642), [7203] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5086), [7205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6433), [7207] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6945), [7209] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7306), [7211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6805), [7213] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6413), [7215] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6515), [7217] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6708), [7219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6693), [7221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6659), [7223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6781), [7225] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6863), [7227] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6504), [7229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6946), [7231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6775), [7233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6745), [7235] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6895), [7237] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4874), [7239] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3526), [7241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(760), [7243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3526), [7245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4794), [7247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(567), [7249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), [7251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7386), [7253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7387), [7255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7388), [7257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5107), [7259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5283), [7261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4916), [7263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), [7265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4807), [7267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5277), [7269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4786), [7271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4794), [7273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4810), [7275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4676), [7277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), [7279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(723), [7281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7416), [7283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7417), [7285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7418), [7287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5101), [7289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5280), [7291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4969), [7293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), [7295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4718), [7297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5293), [7299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4725), [7301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4676), [7303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4714), [7305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2399), [7307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), [7309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(753), [7311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7727), [7313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7730), [7315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7732), [7317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5100), [7319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5278), [7321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4918), [7323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), [7325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2413), [7327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5289), [7329] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2401), [7331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2399), [7333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2400), [7335] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3463), [7337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), [7339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3463), [7341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3572), [7343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(763), [7345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3572), [7347] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3374), [7349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), [7351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(757), [7353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7452), [7355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7453), [7357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7454), [7359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5132), [7361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5273), [7363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4877), [7365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), [7367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3375), [7369] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5249), [7371] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3364), [7373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3374), [7375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3376), [7377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3257), [7379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), [7381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730), [7383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7448), [7385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7449), [7387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7450), [7389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5141), [7391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5296), [7393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4891), [7395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), [7397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3241), [7399] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5262), [7401] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3256), [7403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3257), [7405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3252), [7407] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3101), [7409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(569), [7411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(767), [7413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7355), [7415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7356), [7417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7357), [7419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5134), [7421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5238), [7423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4870), [7425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(534), [7427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3124), [7429] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5253), [7431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3123), [7433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3101), [7435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3125), [7437] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3312), [7439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), [7441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(728), [7443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7443), [7445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7444), [7447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7445), [7449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5090), [7451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5321), [7453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4907), [7455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), [7457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3321), [7459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5265), [7461] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3323), [7463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3312), [7465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3320), [7467] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4619), [7469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), [7471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769), [7473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7210), [7475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7211), [7477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7212), [7479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5093), [7481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5267), [7483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4816), [7485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), [7487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4603), [7489] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5251), [7491] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4600), [7493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4619), [7495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4606), [7497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(764), [7499] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5005), [7501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6343), [7503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3148), [7505] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5085), [7507] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7113), [7509] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3174), [7511] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7515), [7513] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3197), [7515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7243), [7517] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3192), [7519] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7016), [7521] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3194), [7523] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7112), [7525] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3180), [7527] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7050), [7529] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3172), [7531] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6970), [7533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3199), [7535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6971), [7537] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3190), [7539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7410), [7541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3169), [7543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7415), [7545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3170), [7547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7516), [7549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3173), [7551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7128), [7553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3175), [7555] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7125), [7557] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3177), [7559] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7242), [7561] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3182), [7563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5017), [7565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3584), [7567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3338), [7569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4655), [7571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3487), [7573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4645), [7575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3335), [7577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5008), [7579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3392), [7581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5025), [7583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5011), [7585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3250), [7587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3482), [7589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3351), [7591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4593), [7593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3569), [7595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3391), [7597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4589), [7599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3582), [7601] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), [7603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), [7605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(6251), [7608] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(3234), [7611] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(3222), [7614] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(3204), [7617] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(3238), [7620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3471), [7622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3389), [7624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3259), [7626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3243), [7628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3591), [7630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3508), [7632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4592), [7634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4646), [7636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3555), [7638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4983), [7640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4980), [7642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5002), [7644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3090), [7646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4991), [7648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4989), [7650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4998), [7652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4993), [7654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_suffix, 2, 0, 0), [7656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_suffix, 2, 0, 0), [7658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6225), [7660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3246), [7662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), [7664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), [7666] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6225), [7669] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(3246), [7672] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_suffix, 3, 0, 0), [7674] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_suffix, 3, 0, 0), [7676] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6542), [7678] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4163), [7680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6281), [7682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3088), [7684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743), [7686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6093), [7688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3311), [7690] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), [7692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), [7694] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), SHIFT(3200), [7697] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6093), [7700] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(3311), [7703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6151), [7705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921), [7707] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_variable_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(3426), [7710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6323), [7712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3382), [7714] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6323), [7717] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(3382), [7720] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), SHIFT(6357), [7723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3091), [7725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(752), [7727] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), SHIFT(5551), [7730] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(aux_sym_type_repeat1, 1, 0, 0), [7733] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), REDUCE(aux_sym_type_repeat1, 1, 0, 0), [7736] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_storage_class, 1, 0, 0), SHIFT(3723), [7739] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0), [7741] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 2, 0, 0), [7743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6, 0, 0), [7745] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 6, 0, 0), [7747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_function_attribute, 1, 0, 0), [7749] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_function_attribute, 1, 0, 0), [7751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3083), [7753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), [7755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5, 0, 0), [7757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 5, 0, 0), [7759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0), [7761] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 3, 0, 0), [7763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4, 0, 0), [7765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 4, 0, 0), [7767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 7, 0, 0), [7769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 7, 0, 0), [7771] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5083), [7773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2668), [7775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2905), [7777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1397), [7779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1533), [7781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2237), [7783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1451), [7785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492), [7787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1379), [7789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2633), [7791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2807), [7793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2269), [7795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2865), [7797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2761), [7799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2722), [7801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1653), [7803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2650), [7805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1592), [7807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1756), [7809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2313), [7811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2557), [7813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1708), [7815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2472), [7817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1629), [7819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2286), [7821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2794), [7823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2705), [7825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2597), [7827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2595), [7829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2515), [7831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2838), [7833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2168), [7835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6277), [7837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3318), [7839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), [7841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), [7843] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(6277), [7846] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(3316), [7849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3316), [7851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3079), [7853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(768), [7855] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5131), [7857] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3460), [7859] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(6161), [7862] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(3409), [7865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6161), [7867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3420), [7869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3409), [7871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5551), [7873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6342), [7875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3446), [7877] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(6342), [7880] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(3445), [7883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3445), [7885] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3065), [7887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), [7889] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5027), [7891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5553), [7893] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__qualified_id, 1, 0, 0), [7895] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), [7897] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), [7899] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6147), [7902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), [7904] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(807), [7908] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), [7911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1238), [7913] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5117), [7915] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4109), [7917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(525), [7919] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2388), [7922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1863), [7924] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6294), [7926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_expr, 2, 0, 0), [7928] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__primary_expr, 2, 0, 0), [7930] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(6147), [7933] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 2, 0, 0), [7936] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(807), [7940] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), [7942] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 2, 0, 0), [7945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1890), [7947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3080), [7949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(761), [7951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1823), [7953] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__template_parameter_list, 3, 0, 0), [7955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__template_parameter_list, 2, 0, 0), [7957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1767), [7959] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 3, 0, 0), [7961] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 3, 0, 0), [7963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(803), [7965] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3497), [7967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6680), [7969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6682), [7971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0), [7973] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1, 0, 0), [7975] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3493), [7977] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2387), [7980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 2, 0, 0), [7982] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 2, 0, 0), [7984] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3490), [7986] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6215), [7989] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), [7992] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(848), [7996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), [7998] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), [8000] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(803), [8003] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(3497), [8006] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6680), [8009] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6682), [8012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6336), [8014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(843), [8016] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2383), [8019] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2384), [8022] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2392), [8025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_traits_expression, 4, 0, 0), [8027] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_traits_expression, 4, 0, 0), [8029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1011), [8031] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6147), [8034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(711), [8036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), [8038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(701), [8040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1073), [8042] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type2, 1, 0, 0), [8044] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6261), [8047] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__type2, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), [8050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type2, 1, 0, 0), [8052] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__type2, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), [8055] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mixin_expression, 4, 0, 0), [8057] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mixin_expression, 4, 0, 0), [8059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1268), [8061] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_traits_expression, 6, 0, 0), [8063] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_traits_expression, 6, 0, 0), [8065] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typeof_expression, 4, 0, 0), [8067] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typeof_expression, 4, 0, 0), [8069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), [8071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1319), [8073] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4179), [8075] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4180), [8077] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4181), [8079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1336), [8081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1344), [8083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1306), [8085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1327), [8087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1325), [8089] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__parameter_repeat1, 2, 0, 0), [8091] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameter_repeat1, 2, 0, 0), [8093] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameter_repeat1, 2, 0, 0), SHIFT_REPEAT(6251), [8096] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameter_repeat1, 2, 0, 0), SHIFT_REPEAT(3921), [8099] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameter_repeat1, 2, 0, 0), SHIFT_REPEAT(3204), [8102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type2, 4, 0, 0), [8104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type2, 4, 0, 0), [8106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_vector_type, 4, 0, 0), [8108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_vector_type, 4, 0, 0), [8110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(6215), [8113] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(848), [8117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3640), [8119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5978), [8121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3728), [8123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3476), [8125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7733), [8127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 5, 0, 0), REDUCE(sym_property_expression, 5, 0, 0), [8130] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 5, 0, 0), REDUCE(sym_property_expression, 5, 0, 0), [8133] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameter_attribute, 1, 0, 0), [8135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), [8137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_attribute, 1, 0, 0), [8139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(860), [8141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6885), [8143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type2, 3, 0, 0), [8145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type2, 3, 0, 0), [8147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826), [8149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3604), [8151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6467), [8153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6466), [8155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3611), [8157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5901), [8159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3609), [8161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3467), [8163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7583), [8165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3606), [8167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__qualified_id, 3, 0, 0), [8169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__qualified_id, 3, 0, 0), [8171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_suffix, 5, 0, 0), [8173] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type_suffix, 5, 0, 0), [8175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_property_expression, 3, 0, 0), [8177] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_property_expression, 3, 0, 0), [8179] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(826), [8182] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(3604), [8185] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6467), [8188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6466), [8191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__qualified_id, 4, 0, 0), [8193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__qualified_id, 4, 0, 0), [8195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5892), [8197] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(5815), [8200] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(864), [8204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3595), [8206] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5922), [8208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(778), [8210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1200), [8212] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3499), [8214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6325), [8216] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3491), [8218] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3473), [8220] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7645), [8222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5889), [8224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type2, 2, 0, 0), [8226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__type2, 2, 0, 0), [8228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__qualified_id, 6, 0, 0), [8230] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__qualified_id, 6, 0, 0), [8232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_expression, 4, 0, 20), [8234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast_expression, 4, 0, 20), [8236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5650), [8238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3834), [8240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(754), [8242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 2), [8244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 2), [8246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_power_expression, 3, 0, 4), [8248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_power_expression, 3, 0, 4), [8250] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5982), [8252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862), [8254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), [8256] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3653), [8258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6788), [8260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6787), [8262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 2, 0, 0), [8264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 2, 0, 0), [8266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_throw_expression, 2, 0, 0), [8268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_throw_expression, 2, 0, 0), [8270] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(859), [8273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(3653), [8276] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6788), [8279] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6787), [8282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_expression, 5, 0, 0), [8284] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast_expression, 5, 0, 0), [8286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_expression, 5, 0, 22), [8288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast_expression, 5, 0, 22), [8290] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(6147), [8293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3642), [8295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_expression, 2, 0, 0), [8297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_delete_expression, 2, 0, 0), [8299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1, 0, 0), [8301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expr, 1, 0, 0), [8303] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(1645), [8306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variadic_arguments_attribute, 1, 0, 0), [8308] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), REDUCE(sym_variadic_arguments_attribute, 1, 0, 0), [8311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5074), [8313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6159), [8315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5121), [8317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7694), [8319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7691), [8321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1218), [8323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5069), [8325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3690), [8327] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5076), [8329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5757), [8331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5108), [8333] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7731), [8335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 5, 0, 0), [8337] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 5, 0, 0), [8339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typeid_expression, 4, 0, 0), [8341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typeid_expression, 4, 0, 0), [8343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3676), [8345] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), SHIFT(1988), [8348] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6396), [8351] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5103), [8353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5126), [8355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4990), [8357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5104), [8359] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_parameter_attribute, 1, 0, 0), REDUCE(aux_sym_type_repeat1, 1, 0, 0), [8362] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_parameter_attribute, 1, 0, 0), REDUCE(aux_sym_type_repeat1, 1, 0, 0), [8365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3700), [8367] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3494), [8369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 6, 0, 0), [8371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 6, 0, 0), [8373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 5, 0, 0), [8375] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 5, 0, 0), [8377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 4, 0, 0), [8379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 4, 0, 0), [8381] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_parameter_attribute, 1, 0, 0), REDUCE(sym_variadic_arguments_attribute, 1, 0, 0), [8384] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2608), [8387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_expression, 4, 0, 0), [8389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assert_expression, 4, 0, 0), [8391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__specified_function_body, 3, 0, 0), [8393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__specified_function_body, 3, 0, 0), [8395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 3, 0, 0), [8397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 3, 0, 0), [8399] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(1407), [8402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6298), [8404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__specified_function_body, 2, 0, 0), [8406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__specified_function_body, 2, 0, 0), [8408] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(5815), [8411] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym__primary_expr, 2, 0, 0), SHIFT(864), [8415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 2, 0, 0), [8417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 2, 0, 0), [8419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 6, 0, 0), [8421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 6, 0, 0), [8423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 1, 0, 0), [8425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 1, 0, 0), [8427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 1, 0, 0), [8429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 1, 0, 0), [8431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3598), [8433] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6310), [8435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 4, 0, 0), [8437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 4, 0, 0), [8439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5065), [8441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dollar, 1, 0, 0), [8443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dollar, 1, 0, 0), [8445] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), SHIFT(1988), [8449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 5, 0, 18), [8451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 5, 0, 18), [8453] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2617), [8456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2, 0, 0), [8458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2, 0, 0), [8460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 2, 0, 0), [8462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 2, 0, 0), [8464] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5087), [8466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_postfix_expression, 2, 0, 4), [8468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_postfix_expression, 2, 0, 4), [8470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_is_expression, 5, 0, 0), [8472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_is_expression, 5, 0, 0), [8474] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(2368), [8477] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 5, 0, 0), [8479] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 5, 0, 0), [8481] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_arguments, 2, 0, 0), [8483] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_arguments, 2, 0, 0), [8485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 3, 0, 0), [8487] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 3, 0, 0), [8489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 3, 0, 12), [8491] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 3, 0, 12), [8493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 3, 0, 0), [8495] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 3, 0, 0), [8497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 3, 0, 0), [8499] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 3, 0, 0), [8501] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_is_expression, 6, 0, 0), [8503] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_is_expression, 6, 0, 0), [8505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 6, 0, 0), [8507] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 6, 0, 0), [8509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_is_expression, 7, 0, 0), [8511] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_is_expression, 7, 0, 0), [8513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_is_expression, 8, 0, 0), [8515] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_is_expression, 8, 0, 0), [8517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_arguments, 3, 0, 0), [8519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_arguments, 3, 0, 0), [8521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 4, 0, 12), [8523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 4, 0, 12), [8525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 4, 0, 18), [8527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 4, 0, 18), [8529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_is_expression, 9, 0, 0), [8531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_is_expression, 9, 0, 0), [8533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_expression, 4, 0, 0), [8535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_expression, 4, 0, 0), [8537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_is_expression, 4, 0, 0), [8539] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_is_expression, 4, 0, 0), [8541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new_expression, 4, 0, 0), [8543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new_expression, 4, 0, 0), [8545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_xor_expression, 3, 0, 4), [8547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1272), [8549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1276), [8551] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_xor_expression, 3, 0, 4), [8553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1284), [8555] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1286), [8557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1286), [8559] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1288), [8561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), [8563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1339), [8565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1269), [8567] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6261), [8570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5655), [8572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3993), [8574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(756), [8576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6160), [8578] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(3016), [8581] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6162), [8583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expression, 5, 0, 23), [8585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1275), [8587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1277), [8589] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1278), [8591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283), [8593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), [8595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1275), [8597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1290), [8599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_equal_expression, 3, 0, 4), [8601] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_equal_expression, 3, 0, 4), [8603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shift_expression, 3, 0, 4), [8605] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_shift_expression, 3, 0, 4), [8607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_rel_expression, 3, 0, 4), [8609] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_rel_expression, 3, 0, 4), [8611] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_add_expression, 3, 0, 4), [8613] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_add_expression, 3, 0, 4), [8615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_or_expression, 3, 0, 4), [8617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logical_or_expression, 3, 0, 4), [8619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_or_expression, 3, 0, 4), [8621] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_or_expression, 3, 0, 4), [8623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logical_and_expression, 3, 0, 4), [8625] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logical_and_expression, 3, 0, 4), [8627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_and_expression, 3, 0, 4), [8629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_and_expression, 3, 0, 4), [8631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, 0, 4), [8633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mul_expression, 3, 0, 4), [8635] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mul_expression, 3, 0, 4), [8637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identity_expression, 3, 0, 0), [8639] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identity_expression, 3, 0, 0), [8641] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_parameter_attribute, 1, 0, 0), SHIFT(6023), [8644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_literal, 7, 0, 0), [8646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_literal, 7, 0, 0), [8648] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5720), [8650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4000), [8652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774), [8654] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), REDUCE(sym_conditional_declaration, 3, 0, 0), SHIFT(1842), [8658] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(3039), [8661] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(3036), [8664] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(6321), [8667] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), SHIFT(1842), [8670] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__specified_function_body, 1, 0, 0), REDUCE(sym__specified_function_body, 2, 0, 0), [8673] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__specified_function_body, 1, 0, 0), REDUCE(sym__specified_function_body, 2, 0, 0), [8676] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(3022), [8679] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(3025), [8682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1221), [8684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1227), [8686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1228), [8688] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1229), [8690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1234), [8692] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1235), [8694] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1236), [8696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1236), [8698] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1242), [8700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1060), [8702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), [8704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1243), [8706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1342), [8708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1220), [8710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1100), [8712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1111), [8714] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, 0, 4), [8716] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1112), [8718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1113), [8720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1116), [8722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1117), [8724] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1118), [8726] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1185), [8728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1185), [8730] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1186), [8732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1197), [8734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1019), [8736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1111), [8738] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1199), [8740] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1352), [8742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1095), [8744] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(7213), [8747] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1137), [8749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1155), [8751] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ternary_expression, 5, 0, 23), [8753] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1166), [8755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1173), [8757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1183), [8759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1187), [8761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1188), [8763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1190), [8765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1190), [8767] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1202), [8769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1208), [8771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1032), [8773] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1155), [8775] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1223), [8777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1347), [8779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1132), [8781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1222), [8783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1222), [8785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1239), [8787] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1262), [8789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1282), [8791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1282), [8793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1175), [8795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1270), [8797] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1300), [8799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1237), [8801] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(7431), [8804] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1267), [8806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1274), [8808] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1087), [8810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), [8812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941), [8814] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1263), [8816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1240), [8818] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1240), [8820] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_foreach_type_repeat1, 2, 0, 0), [8822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_foreach_type_repeat1, 2, 0, 0), [8824] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_foreach_type_repeat1, 2, 0, 0), SHIFT_REPEAT(4109), [8827] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_foreach_type_repeat1, 2, 0, 0), SHIFT_REPEAT(3204), [8830] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(7957), [8833] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(7463), [8836] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__primary_expr, 1, 0, 0), SHIFT(7787), [8839] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1123), [8841] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1127), [8843] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1142), [8845] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1145), [8847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1145), [8849] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1147), [8851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), [8853] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1326), [8855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), [8857] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1153), [8859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1128), [8861] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1136), [8863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1140), [8865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), [8867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1125), [8869] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1125), [8871] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 1, 0, 0), REDUCE(aux_sym_foreach_type_repeat1, 1, 0, 0), [8874] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 1, 0, 0), REDUCE(aux_sym_foreach_type_repeat1, 1, 0, 0), [8877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_foreach_type_repeat1, 1, 0, 0), [8879] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1107), [8881] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1110), [8883] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1115), [8885] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1120), [8887] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1124), [8889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1124), [8891] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1154), [8893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1156), [8895] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1161), [8897] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1341), [8899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1106), [8901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), [8903] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1143), [8905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1144), [8907] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1146), [8909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), [8911] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1150), [8913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1151), [8915] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1164), [8917] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1169), [8919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), [8921] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1170), [8923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), [8925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1024), [8927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3167), [8929] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1144), [8931] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1172), [8933] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1350), [8935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1141), [8937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3178), [8939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3188), [8941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), [8943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), [8945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), [8947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1108), [8949] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_parameter, 4, 0, 0), REDUCE(sym_template_parameter, 4, 0, 0), [8952] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 4, 0, 0), [8954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__initializer, 1, 0, 0), [8956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 1, 0, 0), [8958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 6, 0, 0), [8960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 5, 0, 0), [8962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3, 0, 0), [8964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1075), [8966] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specialization, 1, 0, 0), [8968] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 4, 0, 0), [8970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 5, 0, 0), [8972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0), [8974] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1224), [8976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1219), [8978] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1216), [8980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1191), [8982] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1174), [8984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1163), [8986] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1160), [8988] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1159), [8990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1159), [8992] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1134), [8994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1099), [8996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1014), [8998] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1219), [9000] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1096), [9002] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1320), [9004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1232), [9006] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1069), [9008] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1088), [9010] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1093), [9012] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1098), [9014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1098), [9016] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1105), [9018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1157), [9020] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1259), [9022] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1314), [9024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1065), [9026] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5351), [9028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6850), [9030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(827), [9032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6395), [9034] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4310), [9036] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2918), [9038] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_expression_list, 1, 0, 0), REDUCE(sym_expression, 1, 0, 0), [9041] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5467), [9043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6752), [9045] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4312), [9047] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5326), [9049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6696), [9051] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4309), [9053] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5466), [9055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6448), [9057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), [9059] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4313), [9061] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5414), [9063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6439), [9065] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5385), [9067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6658), [9069] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__array_member_init, 1, 0, 3), [9071] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_qualifier, 1, 0, 0), [9073] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_type_ctor, 1, 0, 0), SHIFT(7777), [9076] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5410), [9078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6794), [9080] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1090), [9082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1092), [9084] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5328), [9086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6706), [9088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1189), [9090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1089), [9092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), [9094] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1189), [9096] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5371), [9098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6911), [9100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4311), [9102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5418), [9104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6480), [9106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4308), [9108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1265), [9110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5412), [9112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6936), [9114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5372), [9116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6656), [9118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2, 0, 0), [9120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2, 0, 0), [9122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2, 0, 0), SHIFT_REPEAT(3204), [9125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 0), [9127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_member, 3, 0, 0), [9129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1182), [9131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1179), [9133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1135), [9135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1133), [9137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), [9139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1131), [9141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1129), [9143] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1126), [9145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1324), [9147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1184), [9149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1139), [9151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), [9153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 5, 0, 0), [9155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1082), [9157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 1, 0, 0), [9159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 1, 0, 0), [9161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 4, 0, 0), [9163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1225), [9165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3761), [9167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 7, 0, 0), [9169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1180), [9171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1178), [9173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), [9175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1180), [9177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1215), [9179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3074), [9181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitfield_declarator, 3, 0, 0), [9183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(780), [9185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 6, 0, 0), [9187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_enum_member, 4, 0, 0), [9189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3656), [9191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_member, 4, 0, 0), [9193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3721), [9195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__array_member_init, 3, 0, 17), [9197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3701), [9199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3638), [9201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3683), [9203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_argument, 1, 0, 0), [9205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitfield_declarator, 2, 0, 0), [9207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1721), [9209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2214), [9211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1214), [9213] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1212), [9215] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1206), [9217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1205), [9219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1204), [9221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1201), [9223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1201), [9225] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1198), [9227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1196), [9229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1192), [9231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1351), [9233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1244), [9235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1213), [9237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1210), [9239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), [9241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1213), [9243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2479), [9245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2715), [9247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2225), [9249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), [9251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2685), [9253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1358), [9255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1776), [9257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2546), [9259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2871), [9261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2811), [9263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1689), [9265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4314), [9267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2944), [9269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2939), [9271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2905), [9273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2918), [9275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2935), [9277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7523), [9279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7681), [9281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7931), [9283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7915), [9285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7898), [9287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7877), [9289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7839), [9291] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(6395), [9294] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(4314), [9297] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2944), [9300] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2939), [9303] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2905), [9306] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2918), [9309] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(2935), [9312] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(7523), [9315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), [9317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), [9319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6331), [9321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1207), [9323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4590), [9325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6688), [9327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7303), [9329] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5993), [9331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5997), [9333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), [9335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2363), [9337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1177), [9339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6944), [9341] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5764), [9343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5763), [9345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), [9347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1357), [9349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), [9351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6426), [9353] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6110), [9355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6109), [9357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), [9359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2791), [9361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1101), [9363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6772), [9365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6373), [9367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6376), [9369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2712), [9371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1211), [9373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6765), [9375] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6072), [9377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6150), [9379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6145), [9381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2590), [9383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1233), [9385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6699), [9387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), [9389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6780), [9391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6003), [9393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6004), [9395] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6395), [9398] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(4590), [9401] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4590), [9403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5829), [9405] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4653), [9407] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(5829), [9410] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(4653), [9413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5979), [9415] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(5979), [9418] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(4590), [9421] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6048), [9424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(766), [9426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3095), [9428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(758), [9430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6303), [9432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4653), [9434] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6303), [9437] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(4653), [9440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3075), [9442] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(6331), [9445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3072), [9447] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4641), [9449] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4643), [9451] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(5905), [9454] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(4643), [9457] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_with_member_attributes, 2, 0, 0), [9459] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_with_member_attributes, 2, 0, 0), [9461] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_with_member_attributes, 1, 0, 0), [9463] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameter_with_member_attributes, 1, 0, 0), [9465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5993), [9467] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(5829), [9470] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(4669), [9473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6373), [9475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6667), [9477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6148), [9479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6789), [9481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5764), [9483] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameters, 2, 0, 0), [9485] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_template_parameters, 2, 0, 0), [9487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6664), [9489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6072), [9491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6452), [9493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6003), [9495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6110), [9497] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4771), [9499] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4669), [9501] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(6157), [9504] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(4784), [9507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3066), [9509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(762), [9511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6157), [9513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4784), [9515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4788), [9517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_initializer, 4, 0, 0), [9519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_initializer, 7, 0, 0), [9521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_initializer, 6, 0, 0), [9523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_initializer, 5, 0, 0), [9525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2311), [9527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5046), [9529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4973), [9531] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), [9533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4612), [9535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(904), [9537] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4973), [9539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2757), [9541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1245), [9543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1162), [9545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4869), [9547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(642), [9549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4869), [9551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2264), [9553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5222), [9555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6147), [9557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3458), [9559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), [9561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1484), [9563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3628), [9565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(815), [9567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2476), [9569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2266), [9571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4846), [9573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3543), [9575] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4846), [9577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1081), [9579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4962), [9581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2803), [9583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2483), [9585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1261), [9587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2624), [9589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1287), [9591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2628), [9593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1266), [9595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1631), [9597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(621), [9599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0), [9601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6697), [9603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 3, 0, 0), [9605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2869), [9607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1423), [9609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1614), [9611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2824), [9613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5225), [9615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2508), [9617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3649), [9619] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3566), [9621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1066), [9623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1246), [9625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2621), [9627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1746), [9629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6919), [9631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5226), [9633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2493), [9635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3752), [9637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1247), [9639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1251), [9641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1253), [9643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2648), [9645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1410), [9647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2720), [9649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2674), [9651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2232), [9653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3383), [9655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1594), [9657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2836), [9659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1241), [9661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), [9663] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpolated_quoted_string_repeat1, 2, 0, 0), SHIFT_REPEAT(5046), [9666] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpolated_quoted_string_repeat1, 2, 0, 0), SHIFT_REPEAT(4869), [9669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpolated_quoted_string_repeat1, 2, 0, 0), [9671] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_quoted_string_repeat1, 2, 0, 0), SHIFT_REPEAT(904), [9674] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_quoted_string_repeat1, 2, 0, 0), SHIFT_REPEAT(4869), [9677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4888), [9679] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3137), [9681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4888), [9683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4901), [9685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3449), [9687] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4901), [9689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2655), [9691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1152), [9693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5235), [9695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2358), [9697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3631), [9699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4862), [9701] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3368), [9703] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4862), [9705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4838), [9707] = {.entry = {.count = 1, .reusable = false}}, SHIFT(633), [9709] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4838), [9711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2874), [9713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2629), [9715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2211), [9717] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3260), [9719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2709), [9721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3103), [9723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1661), [9725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1076), [9727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4886), [9729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3270), [9731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4886), [9733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1660), [9735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1103), [9737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6592), [9739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1084), [9741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2583), [9743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3703), [9745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1632), [9747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), [9749] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3342), [9751] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3457), [9753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1091), [9755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1121), [9757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4900), [9759] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3328), [9761] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4900), [9763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1285), [9765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2539), [9767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4827), [9769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1427), [9771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2512), [9773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2531), [9775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5228), [9777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2801), [9779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3730), [9781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4931), [9783] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4808), [9785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4931), [9787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4948), [9789] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2414), [9791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4948), [9793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2213), [9795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3709), [9797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1531), [9799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1365), [9801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1719), [9803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2758), [9805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2548), [9807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4791), [9809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2820), [9811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2206), [9813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1489), [9815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1507), [9817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1280), [9819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2666), [9821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2701), [9823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3755), [9825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2218), [9827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5237), [9829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1682), [9831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3749), [9833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077), [9835] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3537), [9837] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2403), [9839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1258), [9841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1273), [9843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1724), [9845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1475), [9847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3655), [9849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4820), [9851] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657), [9853] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4820), [9855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1443), [9857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2689), [9859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1195), [9861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2808), [9863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2284), [9865] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(6303), [9868] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__type_suffix_repeat1, 2, 0, 0), SHIFT_REPEAT(4962), [9871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1071), [9873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2593), [9875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4947), [9877] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3514), [9879] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4947), [9881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2299), [9883] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4677), [9885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4968), [9887] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4772), [9889] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4968), [9891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1085), [9893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1446), [9895] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4609), [9897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1279), [9899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2884), [9901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3763), [9903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1619), [9905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3675), [9907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 5, 0, 0), [9909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 5, 0, 0), [9911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2554), [9913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6575), [9915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2898), [9917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6694), [9919] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 7, 0, 0), [9921] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 7, 0, 0), [9923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1752), [9925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6812), [9927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2315), [9929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6920), [9931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2544), [9933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6783), [9935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1434), [9937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6463), [9939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 8, 0, 0), [9941] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 8, 0, 0), [9943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(788), [9945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5001), [9947] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6551), [9949] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6553), [9951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 4, 0, 0), [9953] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 4, 0, 0), [9955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6750), [9957] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 9, 0, 0), [9959] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 9, 0, 0), [9961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 12, 0, 0), [9963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 12, 0, 0), [9965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5004), [9967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4996), [9969] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 10, 0, 0), [9971] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 10, 0, 0), [9973] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0), [9975] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 2, 0, 0), [9977] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 6, 0, 0), [9979] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 6, 0, 0), [9981] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 11, 0, 0), [9983] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__parameters, 11, 0, 0), [9985] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(788), [9988] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(5004), [9991] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6551), [9994] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6553), [9997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6359), [9999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), [10001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6864), [10003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6261), [10005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3033), [10007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), [10009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6461), [10011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5832), [10013] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6215), [10015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848), [10017] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_body_repeat1, 2, 0, 0), [10019] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_body_repeat1, 2, 0, 0), SHIFT_REPEAT(6148), [10022] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_body_repeat1, 2, 0, 0), SHIFT_REPEAT(6145), [10025] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6147), [10027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6798), [10029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 1, 0, 0), [10031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3734), [10033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3722), [10035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6853), [10037] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__qualified_id, 1, 0, 0), REDUCE(sym_template_parameter, 1, 0, 0), [10040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6702), [10042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2382), [10044] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7123), [10046] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7201), [10048] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8057), [10050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_escape_sequence, 1, 0, 0), [10052] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_escape_sequence, 1, 0, 0), [10054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5733), [10056] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7038), [10058] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7894), [10060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5053), [10062] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6630), [10064] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6677), [10066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6187), [10068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5056), [10070] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_with_attributes, 2, 0, 0), [10072] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7232), [10074] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(5056), [10077] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6630), [10080] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6677), [10083] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_with_attributes, 1, 0, 0), [10085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5054), [10087] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7858), [10089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7103), [10091] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7896), [10093] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7456), [10095] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7604), [10097] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7103), [10099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5067), [10101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7976), [10103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8055), [10105] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 2, 0, 0), [10107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1260), [10109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1252), [10111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6146), [10113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861), [10115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5079), [10117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6816), [10119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6815), [10121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5815), [10123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864), [10125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7072), [10127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(5079), [10130] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6816), [10133] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6815), [10136] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6396), [10138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_member, 1, 0, 0), [10140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1079), [10142] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6398), [10144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5078), [10146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5075), [10148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7072), [10150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5229), [10152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5139), [10154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3327), [10156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5129), [10158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(659), [10160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(776), [10162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5095), [10164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6764), [10166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5114), [10168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4608), [10170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5133), [10172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), [10174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(776), [10177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(5095), [10180] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6764), [10183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5102), [10185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6922), [10187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6923), [10189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4802), [10191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2417), [10193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5098), [10195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2410), [10197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5110), [10199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4774), [10201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(5102), [10204] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6922), [10207] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat2, 2, 0, 0), SHIFT_REPEAT(6923), [10210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5092), [10212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5099), [10214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3564), [10216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5097), [10218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4800), [10220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5096), [10222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2381), [10224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4684), [10226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2388), [10228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2390), [10230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2386), [10232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4614), [10234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2391), [10236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5123), [10238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3519), [10240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach_type, 2, 0, 0), [10242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3388), [10244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2387), [10246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3453), [10248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5106), [10250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2392), [10252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3535), [10254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2389), [10256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5105), [10258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3541), [10260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912), [10262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2394), [10264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2396), [10266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), [10268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2383), [10270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach_type, 1, 0, 0), [10272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5118), [10274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3370), [10276] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_string_repeat1, 2, 0, 0), SHIFT_REPEAT(5229), [10279] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_string_repeat1, 2, 0, 0), SHIFT_REPEAT(5133), [10282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_quoted_string_repeat1, 2, 0, 0), [10284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5138), [10286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3106), [10288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5120), [10290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3440), [10292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3262), [10294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2384), [10296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3117), [10298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3355), [10300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5094), [10302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), [10304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5136), [10306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3269), [10308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5335), [10310] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6301), [10312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2760), [10314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5454), [10316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4839), [10318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3185), [10320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1165), [10322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2553), [10324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1449), [10326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2799), [10328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2706), [10330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5937), [10332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1377), [10334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2268), [10336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1716), [10338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2236), [10340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2601), [10342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6189), [10344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6324), [10346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4894), [10348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1654), [10350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4852), [10352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6321), [10354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2631), [10356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), [10358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4643), [10360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), [10362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5209), [10364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), [10366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), [10368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5236), [10370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(592), [10372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5234), [10374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(587), [10376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5212), [10378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6999), [10380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variadic_arguments_attributes, 2, 0, 0), [10382] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__variadic_arguments_attributes, 2, 0, 0), SHIFT_REPEAT(5335), [10385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(588), [10387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591), [10389] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3105), [10391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1042), [10393] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5308), [10395] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3455), [10397] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5272), [10399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7889), [10401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), [10403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2543), [10405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declarator, 1, 0, 0), [10407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1080), [10409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821), [10411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7617), [10413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(647), [10415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3542), [10417] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5258), [10419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2855), [10421] = {.entry = {.count = 1, .reusable = false}}, SHIFT(629), [10423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7359), [10425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7555), [10427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1067), [10429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7291), [10431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7302), [10433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8012), [10435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7775), [10437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_enum_member_repeat1, 2, 0, 0), [10439] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_member_repeat1, 2, 0, 0), SHIFT_REPEAT(5905), [10442] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_enum_member_repeat1, 2, 0, 0), SHIFT_REPEAT(2905), [10445] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3565), [10447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1407), [10449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7569), [10451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1086), [10453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7615), [10455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4801), [10457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4610), [10459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5318), [10461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5415), [10463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3171), [10465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), [10467] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4681), [10469] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6312), [10471] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3384), [10473] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpolated_raw_string_repeat1, 2, 0, 0), [10475] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_raw_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1042), [10478] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_raw_string_repeat1, 2, 0, 0), SHIFT_REPEAT(5272), [10481] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3369), [10483] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5271), [10485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7107), [10487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7542), [10489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1366), [10491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7717), [10493] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2412), [10495] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5299), [10497] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4773), [10499] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5269), [10501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1645), [10503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1109), [10505] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4809), [10507] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5266), [10509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__in_out_contract_expressions, 2, 0, 0), [10511] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__in_out_contract_expressions, 2, 0, 0), SHIFT_REPEAT(7291), [10514] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__in_out_contract_expressions, 2, 0, 0), SHIFT_REPEAT(7302), [10517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7191), [10519] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3261), [10521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7073), [10523] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3444), [10525] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5239), [10527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1715), [10529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), [10531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7549), [10533] = {.entry = {.count = 1, .reusable = false}}, SHIFT(630), [10535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5248), [10537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constraint, 4, 0, 0), [10539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3272), [10541] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5286), [10543] = {.entry = {.count = 1, .reusable = false}}, SHIFT(660), [10545] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5245), [10547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), [10549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2402), [10551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3350), [10553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2562), [10555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2368), [10557] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3518), [10559] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5322), [10561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7827), [10563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7185), [10565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3104), [10567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2774), [10569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2327), [10571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2617), [10573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1264), [10575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2608), [10577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), [10579] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4613), [10581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7857), [10583] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3304), [10585] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5300), [10587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3536), [10589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4987), [10591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7321), [10593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8031), [10595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6686), [10597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2353), [10599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7685), [10601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1394), [10603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7137), [10605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2883), [10607] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_out_contract_expression, 5, 0, 0), [10609] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_parameter, 2, 0, 0), REDUCE(sym_template_parameter, 2, 0, 0), [10612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1250), [10614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1249), [10616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1826), [10618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681), [10620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3750), [10622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1672), [10624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3663), [10626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6963), [10628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1750), [10630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7974), [10632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_fqn, 2, 0, 0), [10634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2016), [10636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2749), [10638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3682), [10640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5525), [10642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 3, 0, 0), [10644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1094), [10646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7518), [10648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2587), [10650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7924), [10652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2271), [10654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5255), [10656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1063), [10658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module_fqn, 1, 0, 0), [10660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6892), [10662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6562), [10664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7856), [10666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), [10668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7975), [10670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2560), [10672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7305), [10674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1727), [10676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2084), [10678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2584), [10680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3705), [10682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2580), [10684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3643), [10686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7802), [10688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2579), [10690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7684), [10692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2693), [10694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1437), [10696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7567), [10698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2484), [10700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1840), [10702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1438), [10704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3679), [10706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2475), [10708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3661), [10710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2711), [10712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3747), [10714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1496), [10716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3660), [10718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7984), [10720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2260), [10722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1933), [10724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2354), [10726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3633), [10728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7317), [10730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2763), [10732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1942), [10734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2805), [10736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3731), [10738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1408), [10740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3681), [10742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7484), [10744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1424), [10746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5242), [10748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2297), [10750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3699), [10752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2911), [10754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3764), [10756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2333), [10758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3634), [10760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2596), [10762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3674), [10764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7650), [10766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1383), [10768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7051), [10770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1611), [10772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7159), [10774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1693), [10776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5517), [10778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), [10780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1257), [10782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7783), [10784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2677), [10786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2798), [10788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3729), [10790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2537), [10792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2536), [10794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3624), [10796] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7889), [10799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5317), [10801] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameters, 3, 0, 0), [10803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7000), [10805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1690), [10807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7849), [10809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2750), [10811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2281), [10813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3720), [10815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2703), [10817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3726), [10819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5330), [10821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), [10823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1097), [10825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7568), [10827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1459), [10829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7890), [10831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2529), [10833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1255), [10835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5554), [10837] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 2, 0, 0), [10839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1230), [10841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3671), [10843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3754), [10845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1725), [10847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3677), [10849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7914), [10851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2487), [10853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2868), [10855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3748), [10857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2679), [10859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3715), [10861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), [10863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1748), [10865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3646), [10867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3647), [10869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7936), [10871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2173), [10873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2532), [10875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3659), [10877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2744), [10879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7938), [10881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2240), [10883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7959), [10885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2636), [10887] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_fqn_repeat1, 2, 0, 0), SHIFT_REPEAT(7974), [10890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_fqn_repeat1, 2, 0, 0), [10892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7019), [10894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1647), [10896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2903), [10898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3762), [10900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3696), [10902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7224), [10904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2901), [10906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), [10908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3742), [10910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_out_contract_expression, 6, 0, 0), [10912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__in_out_contract_expressions, 1, 0, 0), [10914] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__function_contract, 1, 0, 0), REDUCE(aux_sym__in_out_contract_expressions, 1, 0, 0), [10917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3743), [10919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2208), [10921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3760), [10923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1473), [10925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3654), [10927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2909), [10929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7265), [10931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2860), [10933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3758), [10935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1453), [10937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3717), [10939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5260), [10941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7353), [10943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2780), [10945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5560), [10947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7700), [10949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1456), [10951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_in_contract_expression, 4, 0, 0), [10953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2298), [10955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5288), [10957] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(5905), [10960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_declaration_repeat1, 2, 0, 0), [10962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1361), [10964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5342), [10966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), [10968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1226), [10970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2258), [10972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2524), [10974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2526), [10976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3739), [10978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2851), [10980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2256), [10982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3694), [10984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3689), [10986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2847), [10988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3622), [10990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3711), [10992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2893), [10994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2488), [10996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2490), [10998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2900), [11000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3623), [11002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2574), [11004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2577), [11006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2745), [11008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2742), [11010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2721), [11012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2348), [11014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_mixin_repeat1, 2, 0, 0), [11016] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_mixin_repeat1, 2, 0, 0), SHIFT(3075), [11019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1083), [11021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2350), [11023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2695), [11025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3658), [11027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1064), [11029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3756), [11031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1580), [11033] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(7856), [11036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2175), [11038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2821), [11040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2177), [11042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2814), [11044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3691), [11046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3627), [11048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1745), [11050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1743), [11052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1548), [11054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1547), [11056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1576), [11058] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_mixin_repeat1, 2, 0, 0), SHIFT_REPEAT(6686), [11061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6930), [11063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8018), [11065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7998), [11067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3704), [11069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1367), [11071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2494), [11073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3662), [11075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6711), [11077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7184), [11079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7494), [11081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1461), [11083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1203), [11085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1695), [11087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1467), [11089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1697), [11091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2516), [11093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6455), [11095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 0), [11097] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7527), [11099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7527), [11101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5279), [11103] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), SHIFT(2074), [11107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3164), [11109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5324), [11111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1209), [11113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5477), [11115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), [11117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), [11119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5315), [11121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1839), [11123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_parameter, 3, 0, 0), [11125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1193), [11127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1194), [11129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7147), [11131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7147), [11133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5261), [11135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alias_initializer, 3, 0, 0), [11137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5254), [11139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5795), [11141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3860), [11143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3215), [11145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5301), [11147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2074), [11149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__base_class_list, 1, 0, 0), [11151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3770), [11153] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1075), [11156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5243), [11158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6128), [11160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3937), [11162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3208), [11164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6947), [11166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3602), [11168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_initializer, 5, 0, 0), [11170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3776), [11172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5304), [11174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_initializer, 4, 0, 0), [11176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5256), [11178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__base_class_list, 2, 0, 0), [11180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__base_class_list_repeat1, 2, 0, 0), [11182] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__base_class_list_repeat1, 2, 0, 0), SHIFT_REPEAT(3770), [11185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1909), [11187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), [11189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), [11191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5252), [11193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6250), [11195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4058), [11197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3210), [11199] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3909), [11201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3732), [11203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3733), [11205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5287), [11207] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), SHIFT(2074), [11210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aggregate_initializer, 3, 0, 0), [11212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1988), [11214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_arguments, 3, 0, 0), [11216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(850), [11218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5544), [11220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5005), [11222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3814), [11224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), [11226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3251), [11228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3160), [11230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6810), [11232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3298), [11234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3287), [11236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2294), [11238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3303), [11240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6924), [11242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2282), [11244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2737), [11246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1704), [11248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_expression_list_repeat1, 2, 0, 0), SHIFT_REPEAT(1265), [11251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1999), [11253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1919), [11255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(789), [11257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5588), [11259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2731), [11261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2249), [11263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5076), [11265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2316), [11267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7562), [11269] = {.entry = {.count = 1, .reusable = false}}, SHIFT(822), [11271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(831), [11273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6662), [11275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3635), [11277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6653), [11279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2727), [11281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3625), [11283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2326), [11285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2223), [11287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2221), [11289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1670), [11291] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_auto_declaration_repeat1, 2, 0, 11), SHIFT_REPEAT(6653), [11294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_auto_declaration_repeat1, 2, 0, 11), [11296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5501), [11298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5500), [11300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(740), [11302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3626), [11304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), [11306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3056), [11308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1666), [11310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_argument_list, 1, 0, 0), [11312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(759), [11314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2347), [11316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3149), [11318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1665), [11320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), [11322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3835), [11324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3214), [11326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5726), [11328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), [11330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(717), [11332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2207), [11334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5174), [11336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2317), [11338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2357), [11340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3276), [11342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2169), [11344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3295), [11346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3759), [11348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3930), [11350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), [11352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2360), [11354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2746), [11356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3286), [11358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5188), [11360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1938), [11362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3767), [11364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3962), [11366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3398), [11368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917), [11370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5518), [11372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5521), [11374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), [11376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1633), [11378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), [11380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739), [11382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4626), [11384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(858), [11386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3857), [11388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), [11390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1040), [11392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4874), [11394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2201), [11396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3036), [11398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2205), [11400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), [11402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1034), [11404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1033), [11406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1030), [11408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1738), [11410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1018), [11412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1017), [11414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2661), [11416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1734), [11418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3289), [11420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3273), [11422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1016), [11424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1015), [11426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5165), [11428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1600), [11430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3283), [11432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2238), [11434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(984), [11436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 1, 0, 0), [11438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3931), [11440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(755), [11442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1002), [11444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(999), [11446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2647), [11448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(997), [11450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3288), [11452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), [11454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3293), [11456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3693), [11458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2245), [11460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3737), [11462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3022), [11464] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__argument_list_repeat1, 2, 0, 0), [11466] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__argument_list_repeat1, 2, 0, 0), SHIFT_REPEAT(977), [11469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2247), [11471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2248), [11473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2255), [11475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3665), [11477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3988), [11479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(704), [11481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3499), [11483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), [11485] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7442), [11487] = {.entry = {.count = 1, .reusable = false}}, SHIFT(884), [11489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3645), [11491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1755), [11493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3296), [11495] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_repeat2, 2, 0, 0), SHIFT_REPEAT(5588), [11498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_repeat2, 2, 0, 0), [11500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), [11502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2725), [11504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), [11506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3611), [11508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2623), [11510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), [11512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4632), [11514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), [11516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2619), [11518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2618), [11520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), [11522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, 0, 0), [11524] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(3219), [11527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2280), [11529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3753), [11531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5533), [11533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5530), [11535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2558), [11537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3281), [11539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__template_parameter_list_repeat1, 2, 0, 0), [11541] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__template_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(3495), [11544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2607), [11546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3714), [11548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), [11550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), [11552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2796), [11554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(949), [11556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), [11558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2802), [11560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1757), [11562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1760), [11564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5171), [11566] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declarator_identifier_list_repeat1, 2, 0, 0), SHIFT_REPEAT(7305), [11569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declarator_identifier_list_repeat1, 2, 0, 0), [11571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3291), [11573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5074), [11575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2307), [11577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), [11579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), [11581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5203), [11583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3147), [11585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), [11587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), [11589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3780), [11591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5176), [11593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3040), [11595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), [11597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_anonymous_enum_declaration_repeat1, 2, 0, 0), [11599] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_anonymous_enum_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(3347), [11602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3299), [11604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2506), [11606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2525), [11608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5507), [11610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3292), [11612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), [11614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5504), [11616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(900), [11618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(897), [11620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(896), [11622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2856), [11624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2700), [11626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1885), [11628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6801), [11630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 4, 0, 0), [11632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3640), [11634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4633), [11636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), [11638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2091), [11640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3845), [11642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), [11644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3664), [11646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3725), [11648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__template_argument_list, 1, 0, 0), [11650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(838), [11652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2471), [11654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3052), [11656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), [11658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2473), [11660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2474), [11662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5148), [11664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6529), [11666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3608), [11668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7260), [11670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7701), [11672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3710), [11674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6684), [11676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3166), [11678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), [11680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), [11682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(968), [11684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2823), [11686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3464), [11688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3150), [11690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), [11692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1626), [11694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), [11696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(993), [11698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4652), [11700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3143), [11702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1624), [11704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1686), [11706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2503), [11708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2504), [11710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2517), [11712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2908), [11714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3284), [11716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2906), [11718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), [11720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3841), [11722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2604), [11724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2050), [11726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3903), [11728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1907), [11730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3757), [11732] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3142), [11734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2688), [11736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7423), [11738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2421), [11740] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7217), [11742] = {.entry = {.count = 1, .reusable = false}}, SHIFT(818), [11744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2890), [11746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3594), [11748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3670), [11750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2683), [11752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__template_parameter_list, 1, 0, 0), [11754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3486), [11756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3038), [11758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), [11760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7395), [11762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2682), [11764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), [11766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4587), [11768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3152), [11770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2882), [11772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2680), [11774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2881), [11776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3042), [11778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__template_argument_list_repeat1, 2, 0, 0), [11780] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__template_argument_list_repeat1, 2, 0, 0), SHIFT_REPEAT(907), [11783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2895), [11785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2533), [11787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), [11789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), [11791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2534), [11793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3294), [11795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__argument_list, 1, 0, 0), [11797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), [11799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), [11801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(744), [11803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4013), [11805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), [11807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7365), [11809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2702), [11811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1692), [11813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3290), [11815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3237), [11817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), [11819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3165), [11821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3545), [11823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3163), [11825] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(3233), [11828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), [11830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2549), [11832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2867), [11834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5156), [11836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3803), [11838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3862), [11840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2866), [11842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3390), [11844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3154), [11846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6631), [11848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3581), [11850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(906), [11852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3297), [11854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2561), [11856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5015), [11858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3145), [11860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1025), [11862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_literal_repeat1, 2, 0, 19), [11864] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_literal_repeat1, 2, 0, 19), SHIFT_REPEAT(742), [11867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7329), [11869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5489), [11871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5490), [11873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737), [11875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3034), [11877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2864), [11879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3016), [11881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3159), [11883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3959), [11885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3217), [11887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3744), [11889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2572), [11891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2591), [11893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(746), [11895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1758), [11897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(741), [11899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3713), [11901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(910), [11903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2582), [11905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4660), [11907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2585), [11909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(919), [11911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3275), [11913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3830), [11915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7270), [11917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6445), [11919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5017), [11921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5510), [11923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5511), [11925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(736), [11927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4787), [11929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), [11931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3669), [11933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3454), [11935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817), [11937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1861), [11939] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__base_class_list_repeat1, 2, 0, 0), SHIFT_REPEAT(3780), [11942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2833), [11944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2842), [11946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3585), [11948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3156), [11950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3472), [11952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1717), [11954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4077), [11956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(705), [11958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5541), [11960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__enum_body_repeat1, 2, 0, 0), [11962] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__enum_body_repeat1, 2, 0, 0), SHIFT_REPEAT(5216), [11965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3301), [11967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(724), [11969] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 0), SHIFT_REPEAT(6801), [11972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 0), [11974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3043), [11976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(992), [11978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(998), [11980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1516), [11982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4052), [11984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7143), [11986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1381), [11988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3162), [11990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4051), [11992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(772), [11994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5143), [11996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3285), [11998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(916), [12000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2793), [12002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1699), [12004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), [12006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), [12008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2009), [12010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1477), [12012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), [12014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2599), [12016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3279), [12018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(853), [12020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2728), [12022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1680), [12024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1979), [12026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3695), [12028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5516), [12030] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_foreach_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(3398), [12033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_foreach_statement_repeat1, 2, 0, 0), [12035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5522), [12037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2777), [12039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(771), [12041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3672), [12043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3209), [12045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(846), [12047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2747), [12049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890), [12051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5559), [12053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1411), [12055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1406), [12057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), [12059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1403), [12061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5555), [12063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3048), [12065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3673), [12067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7003), [12069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2586), [12071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), [12073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2764), [12075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2769), [12077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3278), [12079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1401), [12081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2755), [12083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3657), [12085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4025), [12087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3218), [12089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3183), [12091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(855), [12093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3155), [12095] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__named_argument_list_repeat1, 2, 0, 0), [12097] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__named_argument_list_repeat1, 2, 0, 0), SHIFT_REPEAT(840), [12100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(770), [12102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3479), [12104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3282), [12106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3039), [12108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2790), [12110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2698), [12112] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat1, 2, 0, 0), SHIFT_REPEAT(6810), [12115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_alias_declaration_repeat1, 2, 0, 0), [12117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5150), [12119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5636), [12121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 0), [12123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6891), [12125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_aggregate_initializer_repeat1, 2, 0, 0), [12127] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_aggregate_initializer_repeat1, 2, 0, 0), SHIFT_REPEAT(735), [12130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), [12132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3385), [12134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798), [12136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), [12138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5561), [12140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3724), [12142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1469), [12144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431), [12146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), [12148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(924), [12150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(938), [12152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1000), [12154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), [12156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7094), [12158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_class, 1, 0, 0), [12160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3280), [12162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3025), [12164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2704), [12166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5157), [12168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_index_expression_repeat1, 2, 0, 0), [12170] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_index_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(825), [12173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4642), [12175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2831), [12177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1996), [12179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2713), [12181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_member, 2, 0, 0), [12183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1168), [12185] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_manifest_constant_repeat1, 2, 0, 0), SHIFT_REPEAT(6924), [12188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_manifest_constant_repeat1, 2, 0, 0), [12190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), [12192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3686), [12194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3302), [12196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6968), [12198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2576), [12200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3300), [12202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3249), [12204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(836), [12206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_imported, 3, 0, 5), [12208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2556), [12210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4638), [12212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3678), [12214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(732), [12216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5538), [12218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5539), [12220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1395), [12222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1472), [12224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1404), [12226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3474), [12228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(856), [12230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3049), [12232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1405), [12234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5162), [12236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479), [12238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_bind, 1, 0, 0), [12240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7884), [12242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1520), [12244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3037), [12246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(733), [12248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1043), [12250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3144), [12252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), [12254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5557), [12256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1020), [12258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), [12260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), [12262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3201), [12264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), [12266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5556), [12268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), [12270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1371), [12272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3712), [12274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1544), [12276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1526), [12278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7344), [12280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6599), [12282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5208), [12284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1845), [12286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1432), [12288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5549), [12290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_imported, 1, 0, 0), [12292] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7060), [12294] = {.entry = {.count = 1, .reusable = false}}, SHIFT(775), [12296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5213), [12298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 0), [12300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3045), [12302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1444), [12304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3274), [12306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3191), [12308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1445), [12310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4252), [12312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3310), [12314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3140), [12316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4673), [12318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7867), [12320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7318), [12322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3785), [12324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(849), [12326] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), SHIFT(1869), [12329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), [12331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7422), [12333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5599), [12335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6432), [12337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5721), [12339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4383), [12341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1058), [12343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7561), [12345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2198), [12347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1006), [12349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5048), [12351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7559), [12353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2199), [12355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 7, 0, 0), [12357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5746), [12359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1869), [12361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7529), [12363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7362), [12365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), [12367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), [12369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), [12371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), [12373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1054), [12375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), [12377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7141), [12379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4409), [12381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7875), [12383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), [12385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), [12387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(847), [12389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), [12391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(844), [12393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), [12395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5366), [12397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1010), [12399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3605), [12401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6523), [12403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), [12405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1842), [12407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5414), [12409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7192), [12411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5378), [12413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7194), [12415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), [12417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), [12419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7551), [12421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), [12423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1036), [12425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), [12427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3153), [12429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3151), [12431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1049), [12433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), [12435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), [12437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816), [12439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(979), [12441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), [12443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 6, 0, 0), [12445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3992), [12447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3481), [12449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5372), [12451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7540), [12453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2519), [12455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7348), [12457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), [12459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), [12461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(813), [12463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972), [12465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2133), [12467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7545), [12469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), [12471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5574), [12473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6710), [12475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7135), [12477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), [12479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), [12481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1021), [12483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), [12485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2039), [12487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), [12489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), [12491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4515), [12493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), [12495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784), [12497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_declarator, 3, 0, 0), [12499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), [12501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), [12503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2969), [12505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(699), [12507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(955), [12509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5180), [12511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5402), [12513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4491), [12515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7741), [12517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4010), [12519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3475), [12521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7391), [12523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2816), [12525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6916), [12527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), [12529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7622), [12531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7095), [12533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1005), [12535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), [12537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6804), [12539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(945), [12541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), [12543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1004), [12545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), [12547] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3, 0, 0), [12549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), [12551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835), [12553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), [12555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(842), [12557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3946), [12559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3483), [12561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6728), [12563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1963), [12565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_initializer, 3, 0, 0), [12567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4033), [12569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3470), [12571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), [12573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), [12575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), [12577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(794), [12579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4666), [12581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(796), [12583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), [12585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2117), [12587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), [12589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2103), [12591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8027), [12593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8025), [12595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), [12597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(811), [12599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6609), [12601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), [12603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), [12605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7287), [12607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(310), [12609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(963), [12611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), [12613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), [12615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), [12617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(990), [12619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), [12621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6957), [12623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), [12625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), [12627] = {.entry = {.count = 3, .reusable = true}}, REDUCE(sym__declaration_or_statement, 1, 0, 0), REDUCE(sym_conditional_declaration, 2, 0, 0), SHIFT(1869), [12631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), [12633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(800), [12635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), [12637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(830), [12639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_argument, 3, 0, 0), [12641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3917), [12643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7927), [12645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7926), [12647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7675), [12649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6994), [12651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), [12653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6903), [12655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), [12657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bitfield_declarator, 5, 0, 0), [12659] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_foreach_type, 3, 0, 0), [12661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7648), [12663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908), [12665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2097), [12667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6857), [12669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), [12671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2143), [12673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6914), [12675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5462), [12677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7100), [12679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), [12681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(863), [12683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7719), [12685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7134), [12687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3141), [12689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6748), [12691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5014), [12693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), [12695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), [12697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7740), [12699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1498), [12701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7239), [12703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), [12705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_bind, 3, 0, 0), [12707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6847), [12709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7230), [12711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2947), [12713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(865), [12715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5776), [12717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5434), [12719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7759), [12721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7261), [12723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5481), [12725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4551), [12727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6618), [12729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5084), [12731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7710), [12733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6695), [12735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4505), [12737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3161), [12739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3158), [12741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7781), [12743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7325), [12745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6541), [12747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5519), [12749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_literal_repeat1, 2, 0, 12), [12751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5182), [12753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4476), [12755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8024), [12757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5385), [12759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3800), [12761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8037), [12763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7124), [12765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5467), [12767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ellipses, 1, 0, 0), [12769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4530), [12771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_arguments, 1, 0, 0), [12773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(786), [12775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7153), [12777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6843), [12779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3227), [12781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7065), [12783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5590), [12785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7061), [12787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5591), [12789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), [12791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), [12793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__auto_assignment, 4, 0, 16), [12795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), [12797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2142), [12799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), [12801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), [12803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7171), [12805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), [12807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), [12809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), [12811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(824), [12813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), [12815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820), [12817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5210), [12819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779), [12821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1771), [12823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(828), [12825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3505), [12827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(781), [12829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3838), [12831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823), [12833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4448), [12835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6837), [12837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5473), [12839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5345), [12841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1046), [12843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declarator, 4, 0, 0), [12845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7215), [12847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1390), [12849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7209), [12851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1392), [12853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7503), [12855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), [12857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7853), [12859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7530), [12861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4386), [12863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declarator, 3, 0, 0), [12865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4435), [12867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), [12869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3801), [12871] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7701), [12873] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6023), [12875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3139), [12877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3146), [12879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5436), [12881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5368), [12883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6348), [12885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6585), [12887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4568), [12889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_manifest_declarator, 4, 0, 0), [12891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6260), [12893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7909), [12895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2287), [12897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7752), [12899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), [12901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), [12903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), [12905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(852), [12907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1003), [12909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2120), [12911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7066), [12913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), [12915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), [12917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), [12919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3235), [12921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(698), [12923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903), [12925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), [12927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7816), [12929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6973), [12931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), [12933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5410), [12935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7794), [12937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), [12939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2135), [12941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4493), [12943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), [12945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), [12947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), [12949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), [12951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7032), [12953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), [12955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1057), [12957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), [12959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7446), [12961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1741), [12963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3853), [12965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3469), [12967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7428), [12969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), [12971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7028), [12973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1620), [12975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7971), [12977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2651), [12979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), [12981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), [12983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), [12985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), [12987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6906), [12989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), [12991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), [12993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3850), [12995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3465), [12997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7218), [12999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4469), [13001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1031), [13003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2105), [13005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6602), [13007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), [13009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), [13011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), [13013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(783), [13015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6673), [13017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5399), [13019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7458), [13021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5412), [13023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7495), [13025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_initializer, 1, 0, 0), [13027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3587), [13029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_argument, 1, 0, 0), [13031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_auto_declaration_repeat1, 2, 0, 1), [13033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__auto_assignment, 3, 0, 9), [13035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6510), [13037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2972), [13039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), [13041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3869), [13043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5387), [13045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5354), [13047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4381), [13049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4557), [13051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3266), [13053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7539), [13055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7541), [13057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4532), [13059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3816), [13061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3575), [13063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3815), [13065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7564), [13067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3842), [13069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7572), [13071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7573), [13073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4518), [13075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), [13077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1773), [13079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3221), [13081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5461), [13083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), [13085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), [13087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), [13089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), [13091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7548), [13093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3202), [13095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3196), [13097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5647), [13099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), [13101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5426), [13103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6404), [13105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5038), [13107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7591), [13109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3223), [13111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7653), [13113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5453), [13115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1254), [13117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7660), [13119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5379), [13121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7534), [13123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3812), [13125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5089), [13127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7671), [13129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5671), [13131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7672), [13133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5355), [13135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5657), [13137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7431), [13139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3991), [13141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3859), [13143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5362), [13145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), [13147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), [13149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), [13151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), [13153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1331), [13155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1330), [13157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5457), [13159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7690), [13161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1973), [13163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4547), [13165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3855), [13167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5060), [13169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5016), [13171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3198), [13173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), [13175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), [13177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2101), [13179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), [13181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), [13183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), [13185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), [13187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), [13189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), [13191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2099), [13193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1586), [13195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), [13197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), [13199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3854), [13201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), [13203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), [13205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375), [13207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), [13209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), [13211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1375), [13213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1739), [13215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), [13217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), [13219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3858), [13221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), [13223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5347), [13225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1770), [13227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3968), [13229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5349), [13231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4490), [13233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4489), [13235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3195), [13237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7868), [13239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1751), [13241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2415), [13243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5632), [13245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5394), [13247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(422), [13249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), [13251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), [13253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5629), [13255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), [13257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), [13259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7806), [13261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5627), [13263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), [13265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6737), [13267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), [13269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), [13271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5432), [13273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3805), [13275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2397), [13277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5435), [13279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), [13281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), [13283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2886), [13285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2812), [13287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7848), [13289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7852), [13291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7855), [13293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2057), [13295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3570), [13297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7320), [13299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), [13301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7805), [13303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5469), [13305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), [13307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3129), [13309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), [13311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), [13313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7279), [13315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7276), [13317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2408), [13319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7888), [13321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7891), [13323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7892), [13325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2405), [13327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3844), [13329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5451), [13331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7268), [13333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3546), [13335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3532), [13337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3513), [13339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3168), [13341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3187), [13343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3512), [13345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7358), [13347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4384), [13349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4637), [13351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1621), [13353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7917), [13355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2904), [13357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2910), [13359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3176), [13361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7925), [13363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5381), [13365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3179), [13367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3840), [13369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 4, 0, 0), [13371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7183), [13373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7876), [13375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7226), [13377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7937), [13379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7225), [13381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7223), [13383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5072), [13385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3548), [13387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4394), [13389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1575), [13391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7638), [13393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), [13395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), [13397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), [13399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), [13401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1769), [13403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3837), [13405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4569), [13407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7951), [13409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2006), [13411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3553), [13413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2892), [13415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3839), [13417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5360), [13419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7203), [13421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3847), [13423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3579), [13425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3557), [13427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), [13429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2877), [13431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), [13433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5602), [13435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7179), [13437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7177), [13439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), [13441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), [13443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3439), [13445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), [13447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), [13449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), [13451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), [13453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), [13455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5444), [13457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3438), [13459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5380), [13461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), [13463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5364), [13465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5377), [13467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3452), [13469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3436), [13471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7787), [13473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6741), [13475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7140), [13477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4007), [13479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5478), [13481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1698), [13483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5458), [13485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1774), [13487] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [13489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3574), [13491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8030), [13493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3226), [13495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7213), [13497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1728), [13499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5375), [13501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5405), [13503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5367), [13505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5393), [13507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3111), [13509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1425), [13511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8015), [13513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8014), [13515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8013), [13517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4418), [13519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3571), [13521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1428), [13523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7709), [13525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7999), [13527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5376), [13529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1441), [13531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2861), [13533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4552), [13535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4572), [13537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3795), [13539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7994), [13541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7983), [13543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7982), [13545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2843), [13547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7793), [13549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5597), [13551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), [13553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4086), [13555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), [13557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), [13559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1315), [13561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1307), [13563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3189), [13565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3203), [13567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4066), [13569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), [13571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3619), [13573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1068), [13575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), [13577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7952), [13579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1694), [13581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7950), [13583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5456), [13585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2418), [13587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1684), [13589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1530), [13591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7949), [13593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), [13595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7948), [13597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), [13599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), [13601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), [13603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3551), [13605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3600), [13607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6538), [13609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), [13611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), [13613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), [13615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), [13617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7904), [13619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5438), [13621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2772), [13623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7930), [13625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2052), [13627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4543), [13629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), [13631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), [13633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), [13635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4022), [13637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2111), [13639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), [13641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4648), [13643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), [13645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), [13647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), [13649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), [13651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2141), [13653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), [13655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), [13657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), [13659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), [13661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), [13663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), [13665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), [13667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2119), [13669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6823), [13671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), [13673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7957), [13675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6821), [13677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1557), [13679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7847), [13681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), [13683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7836), [13685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7834), [13687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7833), [13689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), [13691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6937), [13693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4507), [13695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7818), [13697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7817), [13699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4514), [13701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4014), [13703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4656), [13705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1886), [13707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7808), [13709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7807), [13711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4393), [13713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7012), [13715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1525), [13717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), [13719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), [13721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), [13723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), [13725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2498), [13727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7801), [13729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5585), [13731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4408), [13733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), [13735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), [13737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), [13739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), [13741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), [13743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), [13745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), [13747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), [13749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), [13751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), [13753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), [13755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), [13757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), [13759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), [13761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), [13763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2123), [13765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7677), [13767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7779), [13769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7776), [13771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4484), [13773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1070), [13775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), [13777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6951), [13779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6960), [13781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(799), [13783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), [13785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), [13787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), [13789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), [13791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488), [13793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8056), [13795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5441), [13797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6990), [13799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), [13801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1102), [13803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), [13805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), [13807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7048), [13809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), [13811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), [13813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), [13815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), [13817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), [13819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), [13821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4533), [13823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7723), [13825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7722), [13827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7721), [13829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4536), [13831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6959), [13833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2839), [13835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4008), [13837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), [13839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), [13841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), [13843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), [13845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), [13847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), [13849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7886), [13851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), [13853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6976), [13855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), [13857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), [13859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), [13861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1551), [13863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), [13865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), [13867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3193), [13869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), [13871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), [13873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), [13875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), [13877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3184), [13879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7669), [13881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7668), [13883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7667), [13885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2942), [13887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4449), [13889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1483), [13891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7049), [13893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), [13895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), [13897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), [13899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), [13901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7053), [13903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1609), [13905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), [13907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4411), [13909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), [13911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7873), [13913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5020), [13915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), [13917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), [13919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4034), [13921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), [13923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), [13925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), [13927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), [13929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7625), [13931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7620), [13933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7618), [13935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1596), [13937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7872), [13939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7588), [13941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6948), [13943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7576), [13945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479), [13947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7558), [13949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7557), [13951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7556), [13953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1436), [13955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7536), [13957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1439), [13959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5424), [13961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7086), [13963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7521), [13965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), [13967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4546), [13969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7517), [13971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3751), [13973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2190), [13975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4658), [13977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3558), [13979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7463), [13981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1569), [13983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7460), [13985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), [13987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2644), [13989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7108), [13991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7377), [13993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7420), [13995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), [13997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), [13999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7109), [14001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3435), [14003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7110), [14005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), [14007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3786), [14009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4994), [14011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6023), [14013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3706), [14015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909), [14017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5073), [14019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5003), [14021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3352), [14023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7402), [14025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1468), [14027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), [14029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(519), [14031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3984), [14033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(943), [14035] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), [14037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7390), [14039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7389), [14041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7385), [14043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5332), [14045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3580), [14047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7372), [14049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2751), [14051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6512), [14053] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5421), [14055] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5227), [14057] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), [14059] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1775), [14061] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3181), [14063] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3186), [14065] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6743), [14067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5425), [14069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7149), [14071] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6739), [14073] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3990), [14075] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7599), [14077] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5447), [14079] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7336), [14081] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5346), [14083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2961), [14085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3349), [14087] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7327), [14089] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7326), [14091] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4601), [14093] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5077), [14095] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), [14097] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), [14099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7117), [14101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7316), [14103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1001), [14105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2600), [14107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), [14109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), [14111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2108), [14113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), [14115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), [14117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3468), [14119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4672), [14121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), [14123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), [14125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), [14127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), [14129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5331), [14131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3379), [14133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3393), [14135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3394), [14137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2273), [14139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2283), [14141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2166), [14143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1384), [14145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2104), [14147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3242), [14149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2139), [14151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2140), [14153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4504), [14155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4481), [14157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4002), [14159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), [14161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3265), [14163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7842), [14165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7199), [14167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400), [14169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), [14171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7187), [14173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3650), [14175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7156), [14177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4567), [14179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7133), [14181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(829), [14183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4404), [14185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1669), [14187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4564), [14189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5749), [14191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(978), [14193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3740), [14195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1009), [14197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2962), [14199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6651), [14201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3306), [14203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4588), [14205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(521), [14207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1493), [14209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1055), [14211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), [14213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7115), [14215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7106), [14217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7728), [14219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6799), [14221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1158), [14223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7720), [14225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), [14227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3378), [14229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3362), [14231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), [14233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3995), [14235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3339), [14237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5448), [14239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3337), [14241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3317), [14243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7085), [14245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5325), [14247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), [14249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3396), [14251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), [14253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2540), [14255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3429), [14257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3618), [14259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1310), [14261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1309), [14263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5232), [14265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7838), [14267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), [14269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2928), [14271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6555), [14273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6998), [14275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4667), [14277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(805), [14279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2334), [14281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6977), [14283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3636), [14285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6969), [14287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801), [14289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2723), [14291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6958), [14293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(819), [14295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4583), [14297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3782), [14299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5989), [14301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5224), [14303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3359), [14305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1271), [14307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6981), [14309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6986), [14311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4413), [14313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6907), [14315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3247), [14317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5420), [14319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4689), [14321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4700), [14323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3244), [14325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1402), [14327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4570), [14329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3366), [14331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3340), [14333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7010), [14335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(887), [14337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3131), [14339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3346), [14341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5361), [14343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2325), [14345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6567), [14347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4665), [14349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3596), [14351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7052), [14353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6769), [14355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(845), [14357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4512), [14359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7067), [14361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3735), [14363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7089), [14365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), [14367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3324), [14369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3593), [14371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7101), [14373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2229), [14375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6180), [14377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3332), [14379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7121), [14381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7126), [14383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1181), [14385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6753), [14387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 3, 0, 0), [14389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7130), [14391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2112), [14393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3358), [14395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888), [14397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1627), [14399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4811), [14401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3313), [14403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7150), [14405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4502), [14407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4803), [14409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4804), [14411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3341), [14413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2967), [14415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2968), [14417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7099), [14419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7593), [14421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7186), [14423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7097), [14425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(882), [14427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7054), [14429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3684), [14431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7219), [14433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2115), [14435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7231), [14437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3484), [14439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1534), [14441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7586), [14443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6272), [14445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7577), [14447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3357), [14449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7250), [14451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7253), [14453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5295), [14455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6622), [14457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2970), [14459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4662), [14461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5881), [14463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3562), [14465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4591), [14467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), [14469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3719), [14471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3386), [14473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3309), [14475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7277), [14477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), [14479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3387), [14481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2581), [14483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5329), [14485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1617), [14487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3960), [14489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1875), [14491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7304), [14493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2578), [14495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7319), [14497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1231), [14499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7324), [14501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4649), [14503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3118), [14505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3126), [14507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_qualifier, 2, 0, 0), [14509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5337), [14511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3480), [14513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7334), [14515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4696), [14517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3254), [14519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4470), [14521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7509), [14523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4647), [14525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4579), [14527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2535), [14529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2132), [14531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2419), [14533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2136), [14535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3485), [14537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3412), [14539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4461), [14541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5220), [14543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4503), [14545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4458), [14547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4452), [14549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4429), [14551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7663), [14553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2684), [14555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5400), [14557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3772), [14559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1256), [14561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2523), [14563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4444), [14565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4443), [14567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7233), [14569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5151), [14571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3904), [14573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3601), [14575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2921), [14577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4699), [14579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3568), [14581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7469), [14583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2507), [14585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4663), [14587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6407), [14589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6608), [14591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3563), [14593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3506), [14595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7504), [14597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4797), [14599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6429), [14601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), [14603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3107), [14605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4499), [14607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1013), [14609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), [14611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7525), [14613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2938), [14615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4437), [14617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), [14619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7533), [14621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7537), [14623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7538), [14625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), [14627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3637), [14629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(627), [14631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2538), [14633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), [14635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), [14637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3550), [14639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4631), [14641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3736), [14643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), [14645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), [14647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), [14649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4434), [14651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1701), [14653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), [14655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7714), [14657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6501), [14659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), [14661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2611), [14663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6525), [14665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(524), [14667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), [14669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(895), [14671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), [14673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), [14675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6642), [14677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7624), [14679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7627), [14681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2486), [14683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3738), [14685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4581), [14687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4582), [14689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2502), [14691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6582), [14693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2752), [14695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328), [14697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6598), [14699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), [14701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1332), [14703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), [14705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), [14707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2393), [14709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7310), [14711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7676), [14713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3746), [14715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3882), [14717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1074), [14719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2314), [14721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2127), [14723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5470), [14725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6626), [14727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2975), [14729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6629), [14731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), [14733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4526), [14735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(944), [14737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(946), [14739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5215), [14741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3880), [14743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3707), [14745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2125), [14747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2917), [14749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2566), [14751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6650), [14753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3263), [14755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4527), [14757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6661), [14759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), [14761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1176), [14763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), [14765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), [14767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4506), [14769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2952), [14771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3530), [14773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814), [14775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), [14777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3245), [14779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), [14781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), [14783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), [14785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4485), [14787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2246), [14789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4475), [14791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4508), [14793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), [14795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3507), [14797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1007), [14799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1012), [14801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4389), [14803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), [14805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2137), [14807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), [14809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2934), [14811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), [14813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1029), [14815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2138), [14817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1248), [14819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1305), [14821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1304), [14823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), [14825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2669), [14827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1038), [14829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039), [14831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5524), [14833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2188), [14835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4664), [14837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5244), [14839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3427), [14841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4425), [14843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4423), [14845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3432), [14847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5476), [14849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7854), [14851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3408), [14853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3938), [14855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7859), [14857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1338), [14859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3668), [14861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), [14863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2171), [14865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3329), [14867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2356), [14869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7399), [14871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3419), [14873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2351), [14875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3973), [14877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3407), [14879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7887), [14881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3406), [14883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5502), [14885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5028), [14887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3397), [14889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7222), [14891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4605), [14893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4616), [14895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4607), [14897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3428), [14899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3576), [14901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7374), [14903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3415), [14905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2226), [14907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3911), [14909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3413), [14911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2253), [14913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7809), [14915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3416), [14917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7810), [14919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5178), [14921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7811), [14923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4561), [14925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3333), [14927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3422), [14929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3434), [14931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7990), [14933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3433), [14935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2296), [14937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5350), [14939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3404), [14941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3414), [14943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3410), [14945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3411), [14947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3418), [14949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3402), [14951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3403), [14953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3401), [14955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3421), [14957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3430), [14959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3425), [14961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3424), [14963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3400), [14965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3405), [14967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3431), [14969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3399), [14971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2300), [14973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7823), [14975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2733), [14977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3343), }; enum ts_external_scanner_symbol_identifiers { ts_external_token_directive = 0, ts_external_token_int_literal = 1, ts_external_token_float_literal = 2, ts_external_token__string = 3, ts_external_token_not_in = 4, ts_external_token_not_is = 5, ts_external_token__after_eof = 6, ts_external_token_error_sentinel = 7, }; static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { [ts_external_token_directive] = sym_directive, [ts_external_token_int_literal] = sym_int_literal, [ts_external_token_float_literal] = sym_float_literal, [ts_external_token__string] = sym__string, [ts_external_token_not_in] = sym_not_in, [ts_external_token_not_is] = sym_not_is, [ts_external_token__after_eof] = sym__after_eof, [ts_external_token_error_sentinel] = sym_error_sentinel, }; static const bool ts_external_scanner_states[8][EXTERNAL_TOKEN_COUNT] = { [1] = { [ts_external_token_directive] = true, [ts_external_token_int_literal] = true, [ts_external_token_float_literal] = true, [ts_external_token__string] = true, [ts_external_token_not_in] = true, [ts_external_token_not_is] = true, [ts_external_token__after_eof] = true, [ts_external_token_error_sentinel] = true, }, [2] = { [ts_external_token_directive] = true, }, [3] = { [ts_external_token_directive] = true, [ts_external_token_int_literal] = true, [ts_external_token_float_literal] = true, [ts_external_token__string] = true, }, [4] = { [ts_external_token_directive] = true, [ts_external_token_int_literal] = true, [ts_external_token_float_literal] = true, [ts_external_token__string] = true, [ts_external_token_not_in] = true, [ts_external_token_not_is] = true, }, [5] = { [ts_external_token_directive] = true, [ts_external_token_not_in] = true, [ts_external_token_not_is] = true, }, [6] = { [ts_external_token_directive] = true, [ts_external_token_int_literal] = true, }, [7] = { [ts_external_token_directive] = true, [ts_external_token__after_eof] = true, }, }; #ifdef __cplusplus extern "C" { #endif void *tree_sitter_d_external_scanner_create(void); void tree_sitter_d_external_scanner_destroy(void *); bool tree_sitter_d_external_scanner_scan(void *, TSLexer *, const bool *); unsigned tree_sitter_d_external_scanner_serialize(void *, char *); void tree_sitter_d_external_scanner_deserialize(void *, const char *, unsigned); #ifdef TREE_SITTER_HIDE_SYMBOLS #define TS_PUBLIC #elif defined(_WIN32) #define TS_PUBLIC __declspec(dllexport) #else #define TS_PUBLIC __attribute__((visibility("default"))) #endif TS_PUBLIC const TSLanguage *tree_sitter_d(void) { static const TSLanguage language = { .version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, .external_token_count = EXTERNAL_TOKEN_COUNT, .state_count = STATE_COUNT, .large_state_count = LARGE_STATE_COUNT, .production_id_count = PRODUCTION_ID_COUNT, .field_count = FIELD_COUNT, .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH, .parse_table = &ts_parse_table[0][0], .small_parse_table = ts_small_parse_table, .small_parse_table_map = ts_small_parse_table_map, .parse_actions = ts_parse_actions, .symbol_names = ts_symbol_names, .field_names = ts_field_names, .field_map_slices = ts_field_map_slices, .field_map_entries = ts_field_map_entries, .symbol_metadata = ts_symbol_metadata, .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], .lex_modes = ts_lex_modes, .lex_fn = ts_lex, .keyword_lex_fn = ts_lex_keywords, .keyword_capture_token = sym_identifier, .external_scanner = { &ts_external_scanner_states[0][0], ts_external_scanner_symbol_map, tree_sitter_d_external_scanner_create, tree_sitter_d_external_scanner_destroy, tree_sitter_d_external_scanner_scan, tree_sitter_d_external_scanner_serialize, tree_sitter_d_external_scanner_deserialize, }, .primary_state_ids = ts_primary_state_ids, }; return &language; } #ifdef __cplusplus } #endif